@xopcai/xopc 0.0.432 → 0.0.433
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/browser-ext/manifest.json +1 -1
- package/dist/extensions/feishu/src/adapters/cli-login.js +3 -3
- package/dist/extensions/feishu/src/outbound/media-load.js +1 -1
- package/dist/extensions/telegram/src/inbound-processor.js +2 -2
- package/dist/extensions/telegram/src/outbound-sender.js +1 -1
- package/dist/extensions/telegram/src/plugin.js +2 -2
- package/dist/extensions/telegram/xopc.extension.json +1 -1
- package/dist/extensions/weixin/src/api/api.js +2 -2
- package/dist/extensions/weixin/src/auth/accounts.js +12 -12
- package/dist/extensions/weixin/src/messaging/debug-mode.js +5 -5
- package/dist/extensions/weixin/src/messaging/inbound.js +11 -11
- package/dist/gateway/static/root/assets/{activity-store-iTw0JzOx.js → activity-store-BpYGrRXw.js} +1 -1
- package/dist/gateway/static/root/assets/{agent-avatar-dicebear-CXuMwQ4y.js → agent-avatar-dicebear-DTgOSv6G.js} +1 -1
- package/dist/gateway/static/root/assets/{agent-avatar-display-hRyDKdPJ.js → agent-avatar-display-BUH7ljEo.js} +2 -2
- package/dist/gateway/static/root/assets/{agent-defaults-settings-panel-BBRKBHLB.js → agent-defaults-settings-panel-B_FAikHA.js} +1 -1
- package/dist/gateway/static/root/assets/{agent-plugin-dialog-PoKk6j20.js → agent-plugin-dialog-DPabZaSE.js} +1 -1
- package/dist/gateway/static/root/assets/{agents--P5-QEHR.js → agents-BAPYP1Ka.js} +3 -3
- package/dist/gateway/static/root/assets/{agents-admin-api-DuYzWKP8.js → agents-admin-api-CXCAHNPj.js} +1 -1
- package/dist/gateway/static/root/assets/{api-BeNB3MkI.js → api-DMbimMEi.js} +1 -1
- package/dist/gateway/static/root/assets/{api-DT_Aly4B.js → api-oIK4hYkJ.js} +1 -1
- package/dist/gateway/static/root/assets/{app-management-settings-panel-C4JhA-Kz.js → app-management-settings-panel-BZ3Fy8ZR.js} +1 -1
- package/dist/gateway/static/root/assets/{appearance-settings-YM311zxY.js → appearance-settings-DsRTj1by.js} +1 -1
- package/dist/gateway/static/root/assets/{apps-page-BrnAMjXr.js → apps-page-D-n71lO1.js} +1 -1
- package/dist/gateway/static/root/assets/{archive-plugin-DoYjGZv1.js → archive-plugin-Bg1VTieK.js} +1 -1
- package/dist/gateway/static/root/assets/{automation-api-ZD1VY9jO.js → automation-api-CLPsgcQN.js} +1 -1
- package/dist/gateway/static/root/assets/{automation-result-state-BO5N3gMt.js → automation-result-state-CKVnR4KG.js} +1 -1
- package/dist/gateway/static/root/assets/{automation-task-card--K7uiKHL.js → automation-task-card-D27Mw66U.js} +1 -1
- package/dist/gateway/static/root/assets/{automations-page-Clcl5MI7.js → automations-page-DGNTJ8lN.js} +1 -1
- package/dist/gateway/static/root/assets/{automations-workspace-DM67xMcR.js → automations-workspace-DWDWy-SG.js} +2 -2
- package/dist/gateway/static/root/assets/{binary-plugins-B-dkI6-B.js → binary-plugins-CuwSdCG5.js} +1 -1
- package/dist/gateway/static/root/assets/{block-editor-CB6KruU-.js → block-editor-Dtl2BG3t.js} +1 -1
- package/dist/gateway/static/root/assets/{browser-automation-inputs-Bk_QFbzb.js → browser-automation-inputs-uGK086ag.js} +1 -1
- package/dist/gateway/static/root/assets/{browser-automations-page-54eckhYq.js → browser-automations-page-Da_edNNS.js} +1 -1
- package/dist/gateway/static/root/assets/{browser-control-api-B4T1KPPz.js → browser-control-api-k3OOX3bS.js} +1 -1
- package/dist/gateway/static/root/assets/{browser-settings-page-rOmS1-T8.js → browser-settings-page-C1bSw-Jq.js} +1 -1
- package/dist/gateway/static/root/assets/{capabilities-DBDeifNA.js → capabilities-CoeuLRt6.js} +1 -1
- package/dist/gateway/static/root/assets/{capabilities-D_Uqx5il.js → capabilities-DlHPLld_.js} +1 -1
- package/dist/gateway/static/root/assets/{capabilities-page-DOMoAom0.js → capabilities-page-IcwojmJK.js} +2 -2
- package/dist/gateway/static/root/assets/{capabilities-settings-panel-iQPbNO4A.js → capabilities-settings-panel-CtY-bGIi.js} +1 -1
- package/dist/gateway/static/root/assets/{channels-DsEP_hFB.js → channels-Cn1MWBL_.js} +1 -1
- package/dist/gateway/static/root/assets/{chat-agents-api-D5-xZdAt.js → chat-agents-api-BB0biwc7.js} +1 -1
- package/dist/gateway/static/root/assets/{chat-chart-block-B-ri4wfk.js → chat-chart-block-QSvjx4w6.js} +1 -1
- package/dist/gateway/static/root/assets/{chat-page-DQNLsOad.js → chat-page-CwP4OMdW.js} +11 -11
- package/dist/gateway/static/root/assets/{chat-terminal-dock-RcrdmYe8.js → chat-terminal-dock-Cd51G9eG.js} +1 -1
- package/dist/gateway/static/root/assets/{command-palette-api-DFd-zOz_.js → command-palette-api-CEG10uE-.js} +1 -1
- package/dist/gateway/static/root/assets/{composer-payload-handoff-hccuv1Lk.js → composer-payload-handoff-Bogdq9Hy.js} +1 -1
- package/dist/gateway/static/root/assets/{computer-settings-page-C-7YLU9l.js → computer-settings-page-DyAlOzqY.js} +1 -1
- package/dist/gateway/static/root/assets/{connected-providers-grid-DziNfbFz.js → connected-providers-grid-D0lXg22c.js} +1 -1
- package/dist/gateway/static/root/assets/{connector-service-page-C3ZhlR8V.js → connector-service-page-k2rjyjrp.js} +1 -1
- package/dist/gateway/static/root/assets/{connectors-api-D6CPY0Nu.js → connectors-api-DtvB9Cjm.js} +1 -1
- package/dist/gateway/static/root/assets/{connectors-page-CcG3V3OB.js → connectors-page-DI_Q0CKz.js} +1 -1
- package/dist/gateway/static/root/assets/{date-picker-D3bxeryy.js → date-picker-CAankdQw.js} +1 -1
- package/dist/gateway/static/root/assets/{desktop-pet-B7kSoCSo.js → desktop-pet-DjM73fir.js} +1 -1
- package/dist/gateway/static/root/assets/{desktop-pet-settings-3dEeKSHA.js → desktop-pet-settings-Rmh-GxHl.js} +1 -1
- package/dist/gateway/static/root/assets/{dev-view-store-Dk7ylv5S.js → dev-view-store-BgW2Riyk.js} +1 -1
- package/dist/gateway/static/root/assets/{device-pairing-wizard-CstPAnnj.js → device-pairing-wizard-UdzSpNa5.js} +1 -1
- package/dist/gateway/static/root/assets/{directory-picker-path-field-BUGqS-lm.js → directory-picker-path-field-Rkw3f7lG.js} +1 -1
- package/dist/gateway/static/root/assets/{discussion-annotation-sync-D9-wFJDS.js → discussion-annotation-sync-Dudoj_Fz.js} +1 -1
- package/dist/gateway/static/root/assets/{extension-debug-page-BDTA9XDE.js → extension-debug-page-DxIGAO23.js} +1 -1
- package/dist/gateway/static/root/assets/{extension-iframe-host-CPEaw2ZG.js → extension-iframe-host-63KpX6IP.js} +1 -1
- package/dist/gateway/static/root/assets/{extension-marketplace-api-edmEFM6F.js → extension-marketplace-api-yXNUkQDA.js} +1 -1
- package/dist/gateway/static/root/assets/{extension-page-Biz-65E8.js → extension-page-C811A_Ww.js} +1 -1
- package/dist/gateway/static/root/assets/{extension-provider-DCur0Xcb.js → extension-provider-C4jLFIgh.js} +1 -1
- package/dist/gateway/static/root/assets/{extension-settings-page-CvPK63oz.js → extension-settings-page-WJSw5MT0.js} +1 -1
- package/dist/gateway/static/root/assets/{file-preview-surface-BFs1sAID.js → file-preview-surface-zE9AcaHM.js} +1 -1
- package/dist/gateway/static/root/assets/{gateway-config-swr-C-fPl1hP.js → gateway-config-swr-D6cc6W6E.js} +1 -1
- package/dist/gateway/static/root/assets/{gateway-realtime-xZpX_HCq.js → gateway-realtime-BSRNLciy.js} +1 -1
- package/dist/gateway/static/root/assets/gateway-realtime-store-BFeFfApQ.js +1 -0
- package/dist/gateway/static/root/assets/{gateway-restart-BfozBI8f.js → gateway-restart-Unun5hRL.js} +1 -1
- package/dist/gateway/static/root/assets/{gateway-settings-A8BUKcfx.js → gateway-settings-DP-DV-e5.js} +1 -1
- package/dist/gateway/static/root/assets/{gateway-startup-retry-BRrkiv67.js → gateway-startup-retry-C8g666Ja.js} +1 -1
- package/dist/gateway/static/root/assets/{global-defaults-api-C9O_X0pj.js → global-defaults-api-BObi-1ww.js} +1 -1
- package/dist/gateway/static/root/assets/{home-page-CzS-ROXe.js → home-page-CIcs7Mzy.js} +2 -2
- package/dist/gateway/static/root/assets/{image-generation-api-ohquPPls.js → image-generation-api-C2SqYNyD.js} +1 -1
- package/dist/gateway/static/root/assets/{imports-page-DAebChWv.js → imports-page-C8ezUkOJ.js} +1 -1
- package/dist/gateway/static/root/assets/{index-BinHjymm.js → index-D1_PUrJf.js} +5 -5
- package/dist/gateway/static/root/assets/{install-connector-dialog-xHNBuSj0.js → install-connector-dialog-Cn4nRSyt.js} +1 -1
- package/dist/gateway/static/root/assets/{keyboard-shortcuts-settings-Bv4YJpTl.js → keyboard-shortcuts-settings-BRaY4-wA.js} +1 -1
- package/dist/gateway/static/root/assets/{local-app-workbench-page-OhV8UnzK.js → local-app-workbench-page-BZtVcjF3.js} +1 -1
- package/dist/gateway/static/root/assets/{local-apps-page-ADzWmh3T.js → local-apps-page-MqP4EnJm.js} +1 -1
- package/dist/gateway/static/root/assets/{local-session-drafts-DgtYzPiy.js → local-session-drafts-DTq9776a.js} +1 -1
- package/dist/gateway/static/root/assets/{locale-store-fGFrr4_4.js → locale-store-B6OrWgY1.js} +1 -1
- package/dist/gateway/static/root/assets/{logs-page-i0eD_bSC.js → logs-page-hkHBjblX.js} +1 -1
- package/dist/gateway/static/root/assets/{management-settings-C-JTxRjw.js → management-settings-DoX4eTM3.js} +1 -1
- package/dist/gateway/static/root/assets/{markdown-view-Cnt8oxNg.js → markdown-view-DrhYZSmg.js} +1 -1
- package/dist/gateway/static/root/assets/{mcp-conversation-setup-page-BQ_US_jP.js → mcp-conversation-setup-page-BEp5E6TD.js} +1 -1
- package/dist/gateway/static/root/assets/{media-plugins-cphVSfva.js → media-plugins-D987i9Gc.js} +1 -1
- package/dist/gateway/static/root/assets/messages-jwdBhfL9.js +3 -0
- package/dist/gateway/static/root/assets/{model-selector-Bv-anQ6O.js → model-selector-DXm4NS1_.js} +1 -1
- package/dist/gateway/static/root/assets/{models-hub-cache-BLYpN4bJ.js → models-hub-cache-BLcha5rx.js} +1 -1
- package/dist/gateway/static/root/assets/{note-detail-panel-B-pk3LYN.js → note-detail-panel-Cl851ivY.js} +3 -3
- package/dist/gateway/static/root/assets/note-image-lightbox-DGYRJS03.js +1 -0
- package/dist/gateway/static/root/assets/{notes-api-IIQgxlMj.js → notes-api-Ddsf7FVg.js} +1 -1
- package/dist/gateway/static/root/assets/{notes-page-C6l9zI17.js → notes-page-DSwA1MU1.js} +1 -1
- package/dist/gateway/static/root/assets/{oauth-api-BojfhqmL.js → oauth-api-CMmu4DzH.js} +1 -1
- package/dist/gateway/static/root/assets/{oauth-provider-connect-D_p1ez-o.js → oauth-provider-connect-BkhnftBq.js} +1 -1
- package/dist/gateway/static/root/assets/{page-context-capture-button-CiEaCz7v.js → page-context-capture-button-urhQBRaN.js} +1 -1
- package/dist/gateway/static/root/assets/{page-context-draft-BbGvUKjF.js → page-context-draft-BuNUerth.js} +1 -1
- package/dist/gateway/static/root/assets/page-header-store-CEn_kPsn.js +1 -0
- package/dist/gateway/static/root/assets/{personal-avatar-Cq0y6LEK.js → personal-avatar-B49ueeZO.js} +1 -1
- package/dist/gateway/static/root/assets/{personal-page-CDad-FDO.js → personal-page-f05ceuFn.js} +1 -1
- package/dist/gateway/static/root/assets/{personal-settings-panel-yVUzcKoo.js → personal-settings-panel-DLQxzPYr.js} +1 -1
- package/dist/gateway/static/root/assets/{phone-dependencies-card-CM2Mj4rH.js → phone-dependencies-card-DjmC1Z5j.js} +1 -1
- package/dist/gateway/static/root/assets/{phone-model-connection-kJYAiCgI.js → phone-model-connection-BRjHSgYn.js} +1 -1
- package/dist/gateway/static/root/assets/{phone-model-picker-sXs8PpFk.js → phone-model-picker-DgIiWLhR.js} +1 -1
- package/dist/gateway/static/root/assets/{phone-settings-page-ayCImqUb.js → phone-settings-page-DCZGCL_z.js} +1 -1
- package/dist/gateway/static/root/assets/{phone-workspace-store-DoTZvoDh.js → phone-workspace-store-DbqktZbO.js} +1 -1
- package/dist/gateway/static/root/assets/{plugin-details-dialog-B4qZ0obG.js → plugin-details-dialog-D4tGKip4.js} +1 -1
- package/dist/gateway/static/root/assets/{preference-select-fields-oZm_6PvN.js → preference-select-fields-BZWqG7pu.js} +1 -1
- package/dist/gateway/static/root/assets/{product-automation-feedback-Ddj5cmmF.js → product-automation-feedback-DDQUsag7.js} +1 -1
- package/dist/gateway/static/root/assets/{product-open-page-CTuqeUDh.js → product-open-page-BkRP_HmA.js} +1 -1
- package/dist/gateway/static/root/assets/{product-preview-content-Ci8eDZ2h.js → product-preview-content-o2Y3VNE7.js} +1 -1
- package/dist/gateway/static/root/assets/{product-preview-modal-J-9O-eQ2.js → product-preview-modal-7Ohx-7OR.js} +2 -2
- package/dist/gateway/static/root/assets/{project-detail-page-D8QlmMQp.js → project-detail-page-B2RsSHya.js} +1 -1
- package/dist/gateway/static/root/assets/{project-understanding-8DBS77KV.js → project-understanding-BIMouiYX.js} +1 -1
- package/dist/gateway/static/root/assets/{projects-page-CEyyFqca.js → projects-page-C9R5u3tF.js} +1 -1
- package/dist/gateway/static/root/assets/{providers-api-DyX07mht.js → providers-api-BOCkRZ7X.js} +1 -1
- package/dist/gateway/static/root/assets/{recording-upload-DOhMs_aU.js → recording-upload-C6muEHEO.js} +1 -1
- package/dist/gateway/static/root/assets/{registry-api-Bm7kut54.js → registry-api-Bl2guMRg.js} +1 -1
- package/dist/gateway/static/root/assets/{remote-access-hub-DfCkv8XR.js → remote-access-hub-BceSMbCs.js} +1 -1
- package/dist/gateway/static/root/assets/{resource-unavailable-jg8QV_tO.js → resource-unavailable-CUNbPkdj.js} +1 -1
- package/dist/gateway/static/root/assets/{route-preload-Uhpfz1Jz.js → route-preload-C1BKDjnu.js} +2 -2
- package/dist/gateway/static/root/assets/{runtime-tools-api-BpaZgv-a.js → runtime-tools-api-LopLjgvu.js} +1 -1
- package/dist/gateway/static/root/assets/{runtime-tools-settings-panel-CGnX0DY1.js → runtime-tools-settings-panel-9HIPerDP.js} +1 -1
- package/dist/gateway/static/root/assets/{service-recommendation-list-NdwoBa_O.js → service-recommendation-list-CoMI6MB1.js} +1 -1
- package/dist/gateway/static/root/assets/{session-api-BwcBcvzv.js → session-api-Bfmlmn9F.js} +1 -1
- package/dist/gateway/static/root/assets/session-manager-X4UHOjjO.js +25 -0
- package/dist/gateway/static/root/assets/{sessions-page-CAutHonI.js → sessions-page-BT0GdXdS.js} +1 -1
- package/dist/gateway/static/root/assets/settings-advanced-gate-Dk9c-Z5e.js +1 -0
- package/dist/gateway/static/root/assets/{settings-advanced-section-CICMnCwv.js → settings-advanced-section-CEorDLUp.js} +1 -1
- package/dist/gateway/static/root/assets/{settings-mode-store-DCnYgG87.js → settings-mode-store-C2LZqBES.js} +1 -1
- package/dist/gateway/static/root/assets/{settings-page-CZXi8Jro.js → settings-page-C_Np_6qZ.js} +1 -1
- package/dist/gateway/static/root/assets/{settings-page-header-DH1qb4vP.js → settings-page-header-BAN34UQi.js} +1 -1
- package/dist/gateway/static/root/assets/{settings-page-layout-B2G042F2.js → settings-page-layout-B5TVFBV2.js} +1 -1
- package/dist/gateway/static/root/assets/{setup-interaction-page-B-tpfd3l.js → setup-interaction-page-BYvTJW3_.js} +1 -1
- package/dist/gateway/static/root/assets/{setup-status-panel-DtA2Lb-A.js → setup-status-panel-UY2dH-sK.js} +1 -1
- package/dist/gateway/static/root/assets/{share-link-dialog-BjjkGRWn.js → share-link-dialog-BMcXyzr2.js} +1 -1
- package/dist/gateway/static/root/assets/{share-preview-page-BBaJCO3w.js → share-preview-page-UQ6eUM2_.js} +1 -1
- package/dist/gateway/static/root/assets/{shares-api-C1rliVTe.js → shares-api-DOeDN6Tm.js} +1 -1
- package/dist/gateway/static/root/assets/{shares-settings-BMctLz4y.js → shares-settings-W8XhuAoL.js} +1 -1
- package/dist/gateway/static/root/assets/{skill-api-fWp7oUet.js → skill-api-Do_c0d9n.js} +1 -1
- package/dist/gateway/static/root/assets/{skill-list-api-B-2Dod7G.js → skill-list-api-DpHaXI2l.js} +1 -1
- package/dist/gateway/static/root/assets/{skill-reload-api-Cejk-tbD.js → skill-reload-api-DDRd9IJ2.js} +1 -1
- package/dist/gateway/static/root/assets/{skills-page-D-dxO0Vc.js → skills-page-CaeJVKhO.js} +1 -1
- package/dist/gateway/static/root/assets/{system-settings-panel-D-gdBXlK.js → system-settings-panel-DYWlWPJL.js} +1 -1
- package/dist/gateway/static/root/assets/{task-detail-page-CIX4EckU.js → task-detail-page-De0qD7xw.js} +1 -1
- package/dist/gateway/static/root/assets/{task-result-evidence-Dp6gk3xn.js → task-result-evidence-CICR5K1t.js} +1 -1
- package/dist/gateway/static/root/assets/{terminal-panel-store-BDrza-7c.js → terminal-panel-store-BbWUcQe7.js} +1 -1
- package/dist/gateway/static/root/assets/{theme-store-De43hGnm.js → theme-store-TkG5mo0p.js} +1 -1
- package/dist/gateway/static/root/assets/{tracing-settings-page-DlQJAutq.js → tracing-settings-page-CYXEy4EG.js} +1 -1
- package/dist/gateway/static/root/assets/{tunnel-api-BSeDyRBI.js → tunnel-api-DquDm6U2.js} +1 -1
- package/dist/gateway/static/root/assets/{understanding-activity-store-CABSRtdN.js → understanding-activity-store-Ot3wZ3oQ.js} +1 -1
- package/dist/gateway/static/root/assets/{understanding-refresh-store-C5pXQtC9.js → understanding-refresh-store-C5KYFMaC.js} +1 -1
- package/dist/gateway/static/root/assets/{usage-page-Dd6gyHlm.js → usage-page-1xFO4smo.js} +1 -1
- package/dist/gateway/static/root/assets/{use-autosave-BhdMHxgz.js → use-autosave-HL8XRNR8.js} +1 -1
- package/dist/gateway/static/root/assets/{use-composer-attachments-Baw8AHhn.js → use-composer-attachments-XRlQBdNF.js} +1 -1
- package/dist/gateway/static/root/assets/{use-file-preview-expanded-B_cRX1Ih.js → use-file-preview-expanded-CW956CXS.js} +2 -2
- package/dist/gateway/static/root/assets/{use-personal-profile-DL5rDvwX.js → use-personal-profile-202s6tJt.js} +1 -1
- package/dist/gateway/static/root/assets/{use-workspace-tree-DONQqfmT.js → use-workspace-tree-CjydkmH1.js} +1 -1
- package/dist/gateway/static/root/assets/{user-model-page-u2vtyxcX.js → user-model-page-OGPXx3pe.js} +1 -1
- package/dist/gateway/static/root/assets/{voice-api-key-field-OChN73N1.js → voice-api-key-field-CxFu4MEA.js} +1 -1
- package/dist/gateway/static/root/assets/{voice-config-api-CziHHWRu.js → voice-config-api-MHe5Pn-A.js} +1 -1
- package/dist/gateway/static/root/assets/{voice-input-shortcut-events-CWSb-oJe.js → voice-input-shortcut-events-B9xc1oK8.js} +1 -1
- package/dist/gateway/static/root/assets/{voice-transcribe-api-CqEwxj11.js → voice-transcribe-api-CVEcB6Pe.js} +1 -1
- package/dist/gateway/static/root/assets/{work-discovery-overlay-BJT2mARb.js → work-discovery-overlay-C-JoAg2D.js} +1 -1
- package/dist/gateway/static/root/assets/{work-discovery-page-CkHMAnBc.js → work-discovery-page-B5Kx29Ru.js} +1 -1
- package/dist/gateway/static/root/assets/{working-directory-picker-modal-CpZEiO2a.js → working-directory-picker-modal-DGp9cNzH.js} +1 -1
- package/dist/gateway/static/root/assets/{workspace-api-Yi28Sl0C.js → workspace-api-HBXn8pL9.js} +2 -2
- package/dist/gateway/static/root/assets/workspace-editor-agent-store-msZa42fU.js +1 -0
- package/dist/gateway/static/root/assets/{workspace-file-preview-dialog-MLLldcHQ.js → workspace-file-preview-dialog-3cpwSG2w.js} +1 -1
- package/dist/gateway/static/root/assets/{workspace-open-location-menu-CjfDtW9T.js → workspace-open-location-menu-D0VOFvuP.js} +1 -1
- package/dist/gateway/static/root/assets/{xopc-cloud-account-card-FioKsLPf.js → xopc-cloud-account-card-BkdW2p3v.js} +1 -1
- package/dist/gateway/static/root/index.html +78 -78
- package/dist/package.js +1 -1
- package/dist/src/agent/agent-manager.js +18 -18
- package/dist/src/agent/agent-scope.js +2 -2
- package/dist/src/agent/background-review/prompts.js +1 -1
- package/dist/src/agent/background-review/run-background-review.js +12 -12
- package/dist/src/agent/child-agent-factory.js +2 -2
- package/dist/src/agent/context/coordinator.js +2 -2
- package/dist/src/agent/context/execution-context.js +4 -4
- package/dist/src/agent/context/project-context.js +3 -3
- package/dist/src/agent/data-acquisition/service.js +1 -1
- package/dist/src/agent/embedded/codemode-extension.js +1 -1
- package/dist/src/agent/embedded/execution-tool-policy.js +1 -1
- package/dist/src/agent/embedded/external-tool-discovery.js +1 -1
- package/dist/src/agent/embedded/run-for-session.js +6 -6
- package/dist/src/agent/embedded/run-turn.js +19 -19
- package/dist/src/agent/embedded/session-runner.js +4 -4
- package/dist/src/agent/embedded/session-tool-result-guard.js +1 -1
- package/dist/src/agent/embedded/xopc-tools-bridge.js +1 -1
- package/dist/src/agent/external-tools/cliProvider.js +4 -4
- package/dist/src/agent/external-tools/composio-provider.js +4 -4
- package/dist/src/agent/external-tools/endpoint-provider.js +6 -6
- package/dist/src/agent/external-tools/extension-provider.js +1 -1
- package/dist/src/agent/external-tools/gateway-tools.js +3 -3
- package/dist/src/agent/external-tools/memory-provider.js +1 -1
- package/dist/src/agent/image/generation/openai-images-provider.js +1 -1
- package/dist/src/agent/image/generation/runtime.js +1 -1
- package/dist/src/agent/image/index.js +1 -1
- package/dist/src/agent/inbound/attachment-pipeline.js +2 -2
- package/dist/src/agent/inbound/inbound-loop.js +2 -2
- package/dist/src/agent/independent-execution.js +2 -2
- package/dist/src/agent/index.js +3 -3
- package/dist/src/agent/mcp/connection-drafts.js +1 -1
- package/dist/src/agent/mcp/connection-setup.js +1 -1
- package/dist/src/agent/mcp/conversation-setup.js +1 -1
- package/dist/src/agent/mcp/discovery.js +2 -2
- package/dist/src/agent/mcp/transport.js +1 -1
- package/dist/src/agent/memory/index.js +1 -1
- package/dist/src/agent/orchestration/llm-turn-retry.js +1 -1
- package/dist/src/agent/prompt/response-language.js +1 -1
- package/dist/src/agent/prompt/service-prompt-builder.js +3 -3
- package/dist/src/agent/prompt/system-prompt-params.js +1 -1
- package/dist/src/agent/sandbox/exec-policy.js +1 -1
- package/dist/src/agent/service/direct-turn-helpers.js +6 -6
- package/dist/src/agent/service/process-direct-streaming.js +6 -6
- package/dist/src/agent/service/webchat-tts.js +2 -2
- package/dist/src/agent/service.js +22 -22
- package/dist/src/agent/session/session-config-service.js +2 -2
- package/dist/src/agent/session/session-hydrator.js +1 -1
- package/dist/src/agent/session/session-inspector.js +1 -1
- package/dist/src/agent/skills/filesystem-watcher.js +1 -1
- package/dist/src/agent/skills/hub-lock.js +1 -1
- package/dist/src/agent/skills/hub-pull.js +2 -2
- package/dist/src/agent/skills/index.js +1 -1
- package/dist/src/agent/skills/managed-store.js +1 -1
- package/dist/src/agent/skills/marketplace/adapters/store/adapter.js +1 -1
- package/dist/src/agent/skills/marketplace/adapters/store/store-api-client.js +1 -1
- package/dist/src/agent/skills/skill-manage-ops.js +1 -1
- package/dist/src/agent/skills/skill-manager.js +1 -1
- package/dist/src/agent/skills/skill-sources.js +1 -1
- package/dist/src/agent/source-context/index.js +1 -1
- package/dist/src/agent/tasks/task-judge-service.js +8 -8
- package/dist/src/agent/tools/create-share-tool.js +2 -2
- package/dist/src/agent/tools/delegate-tool.js +3 -3
- package/dist/src/agent/tools/exec-command.js +1 -1
- package/dist/src/agent/tools/executor.js +1 -1
- package/dist/src/agent/tools/factory.js +19 -19
- package/dist/src/agent/tools/fetch-text.js +1 -1
- package/dist/src/agent/tools/image-generate-tool.js +2 -2
- package/dist/src/agent/tools/index.js +4 -4
- package/dist/src/agent/tools/list-dir.js +1 -1
- package/dist/src/agent/tools/personal-attention-tool.js +2 -2
- package/dist/src/agent/tools/personal-read-tool.js +1 -1
- package/dist/src/agent/tools/personal-request-result-tool.js +1 -1
- package/dist/src/agent/tools/personal-request-tool.js +4 -4
- package/dist/src/agent/tools/personal-result-tool.js +1 -1
- package/dist/src/agent/tools/personal-task-tool.js +5 -5
- package/dist/src/agent/tools/phone-use-tool.js +1 -1
- package/dist/src/agent/tools/publish-artifacts.js +1 -1
- package/dist/src/agent/tools/read.js +1 -1
- package/dist/src/agent/tools/review-workspace.js +1 -1
- package/dist/src/agent/tools/send-media.js +1 -1
- package/dist/src/agent/tools/skill-manage-tool.js +1 -1
- package/dist/src/agent/tools/task-collaboration-tool.js +2 -2
- package/dist/src/agent/tools/tts-tool.js +1 -1
- package/dist/src/agent/tools/user-context-tool.js +2 -2
- package/dist/src/agent/tools/web.js +1 -1
- package/dist/src/agent/tools/write.js +1 -1
- package/dist/src/agent/tools/xopc-use-tool.js +12 -12
- package/dist/src/agent/transcript/index.js +2 -2
- package/dist/src/agent/transcript/transcript-hygiene.js +2 -2
- package/dist/src/agent-catalog/capabilities.js +2 -2
- package/dist/src/agent-catalog/repository.js +1 -1
- package/dist/src/agent-matching/delegation-service.js +1 -1
- package/dist/src/ai-assist/text-assist.js +1 -1
- package/dist/src/auth/credentials.js +1 -1
- package/dist/src/auth/oauth/openai.js +1 -1
- package/dist/src/auth/oauth/xopc-cloud.js +1 -1
- package/dist/src/auth/profiles/store.js +1 -1
- package/dist/src/automations/api/routes.js +2 -2
- package/dist/src/automations/capabilities/drafts.js +1 -1
- package/dist/src/automations/capabilities/write.js +1 -1
- package/dist/src/automations/configuration-conversation.js +1 -1
- package/dist/src/automations/delivery/delivery-router.js +1 -1
- package/dist/src/automations/domain/index.js +1 -1
- package/dist/src/automations/draft/automation-draft-service.js +1 -1
- package/dist/src/automations/index.js +2 -2
- package/dist/src/automations/service/action-executor.js +2 -2
- package/dist/src/automations/service/automation-service.js +2 -2
- package/dist/src/browser/native-messaging-host.js +1 -1
- package/dist/src/browser/providers/browser-ext-install.js +2 -2
- package/dist/src/capabilities/runtime/dispatcher.js +1 -1
- package/dist/src/capabilities/runtime/product.js +1 -1
- package/dist/src/capabilities/store-connector.js +2 -2
- package/dist/src/channels/attachments/voice-stt-webchat.js +1 -1
- package/dist/src/channels/index.js +1 -1
- package/dist/src/channels/outbound-sender.js +1 -1
- package/dist/src/channels/pairing/allow-from-file.js +9 -9
- package/dist/src/channels/pairing/pairing-store.js +6 -6
- package/dist/src/chat-commands/agent-edit.js +1 -1
- package/dist/src/chat-commands/builtins/config.js +2 -2
- package/dist/src/chat-commands/builtins/session.js +1 -1
- package/dist/src/chat-commands/builtins/thinking.js +1 -1
- package/dist/src/chat-commands/builtins/tts.js +1 -1
- package/dist/src/chat-commands/context.js +1 -1
- package/dist/src/chat-commands/index.js +3 -3
- package/dist/src/cli/commands/agent.js +7 -7
- package/dist/src/cli/commands/agents.js +1 -1
- package/dist/src/cli/commands/config.js +1 -1
- package/dist/src/cli/commands/connectors.js +1 -1
- package/dist/src/cli/commands/doctor/checks/channel-plugins.js +1 -1
- package/dist/src/cli/commands/doctor/checks/gateway-health.js +1 -1
- package/dist/src/cli/commands/extension-agent-plugin.js +1 -1
- package/dist/src/cli/commands/extension-dev.js +1 -1
- package/dist/src/cli/commands/extension.js +2 -2
- package/dist/src/cli/commands/image.js +1 -1
- package/dist/src/cli/commands/init.js +1 -1
- package/dist/src/cli/commands/models.js +3 -3
- package/dist/src/cli/commands/onboard/channels/registry.js +1 -1
- package/dist/src/cli/commands/onboard/model.js +1 -1
- package/dist/src/cli/commands/onboard.js +1 -1
- package/dist/src/cli/commands/project.js +1 -1
- package/dist/src/cli/commands/skills.js +2 -2
- package/dist/src/cli/commands/tunnel.js +4 -4
- package/dist/src/cli/extension-cli-register.js +5 -5
- package/dist/src/cli/utils/gateway-client.js +1 -1
- package/dist/src/cli/utils/init-workspace-core.js +3 -3
- package/dist/src/cli/utils/session.js +1 -1
- package/dist/src/computer/flows.js +1 -1
- package/dist/src/computer/model-adapter.js +1 -1
- package/dist/src/computer/runtime.js +4 -4
- package/dist/src/config/agent-profile.js +1 -1
- package/dist/src/config/index.js +3 -3
- package/dist/src/config/loader.js +1 -1
- package/dist/src/config/models-json.js +1 -1
- package/dist/src/connectors/cli/authorization.js +1 -1
- package/dist/src/connectors/composio-sessions.js +1 -1
- package/dist/src/connectors/composio.js +1 -1
- package/dist/src/connectors/connected-source-ingestion.js +2 -2
- package/dist/src/connectors/connected-source-understanding.js +5 -5
- package/dist/src/connectors/connection-recovery-service.js +4 -4
- package/dist/src/connectors/content-enrichment.js +1 -1
- package/dist/src/connectors/health.js +1 -1
- package/dist/src/connectors/instances.js +1 -1
- package/dist/src/connectors/runtime-adapter-registry.js +2 -2
- package/dist/src/discussions/live-worker.js +1 -1
- package/dist/src/discussions/sealer.js +1 -1
- package/dist/src/endpoint-tools/index.js +1 -1
- package/dist/src/endpoint-tools/runtime.js +2 -2
- package/dist/src/execution-environments/local-worktree-manager.js +1 -1
- package/dist/src/extensions/activation-context.js +3 -3
- package/dist/src/extensions/agent-plugins/auth.js +1 -1
- package/dist/src/extensions/agent-plugins/skill-catalog.js +3 -3
- package/dist/src/extensions/agent-plugins/source-http-fetch.js +1 -1
- package/dist/src/extensions/agent-plugins/validation.js +1 -1
- package/dist/src/extensions/api.js +3 -3
- package/dist/src/extensions/bundled-extension-activation.js +1 -1
- package/dist/src/extensions/index.js +3 -3
- package/dist/src/extensions/loader.js +2 -2
- package/dist/src/extensions/lockfile.js +1 -1
- package/dist/src/extensions/sdk/index.js +1 -1
- package/dist/src/extensions/sdk/media.js +1 -1
- package/dist/src/gateway/agents-admin.js +2 -2
- package/dist/src/gateway/device-routes.js +1 -1
- package/dist/src/gateway/file-path-classifier.js +1 -1
- package/dist/src/gateway/global-defaults-admin.js +1 -1
- package/dist/src/gateway/hono/app.js +2 -2
- package/dist/src/gateway/hono/lib/config-payload.js +2 -2
- package/dist/src/gateway/hono/oauth-async.js +1 -1
- package/dist/src/gateway/hono/routes/agent-plugins.js +1 -1
- package/dist/src/gateway/hono/routes/agents.js +1 -1
- package/dist/src/gateway/hono/routes/auth-registry-extensions.js +1 -1
- package/dist/src/gateway/hono/routes/commands-skills.js +4 -4
- package/dist/src/gateway/hono/routes/config-patch/gateway.js +1 -1
- package/dist/src/gateway/hono/routes/config-patch/misc.js +1 -1
- package/dist/src/gateway/hono/routes/connectors.js +1 -1
- package/dist/src/gateway/hono/routes/context-sources.js +1 -1
- package/dist/src/gateway/hono/routes/endpoint-tools.js +1 -1
- package/dist/src/gateway/hono/routes/home.js +1 -1
- package/dist/src/gateway/hono/routes/location-sharing.js +1 -1
- package/dist/src/gateway/hono/routes/mcp.js +1 -1
- package/dist/src/gateway/hono/routes/memory-learning.js +3 -3
- package/dist/src/gateway/hono/routes/models.js +4 -4
- package/dist/src/gateway/hono/routes/notes.js +3 -3
- package/dist/src/gateway/hono/routes/phone-dependencies.js +1 -1
- package/dist/src/gateway/hono/routes/phone-setup.js +2 -2
- package/dist/src/gateway/hono/routes/phone.js +2 -2
- package/dist/src/gateway/hono/routes/projects.js +5 -5
- package/dist/src/gateway/hono/routes/runtime-tools.js +1 -1
- package/dist/src/gateway/hono/routes/session-command-handler.js +2 -2
- package/dist/src/gateway/hono/routes/session-input-handler.js +5 -5
- package/dist/src/gateway/hono/routes/sessions.js +3 -3
- package/dist/src/gateway/hono/routes/shares.js +1 -1
- package/dist/src/gateway/hono/routes/side-chats.js +1 -1
- package/dist/src/gateway/hono/routes/tasks.js +2 -2
- package/dist/src/gateway/hono/routes/user-model.js +7 -7
- package/dist/src/gateway/hono/routes/voice.js +7 -7
- package/dist/src/gateway/image-generation-setup.js +1 -1
- package/dist/src/gateway/lock.js +11 -11
- package/dist/src/gateway/media-access.js +1 -1
- package/dist/src/gateway/mobile-privacy.js +2 -2
- package/dist/src/gateway/ports.js +6 -6
- package/dist/src/gateway/provider-model-setup.js +1 -1
- package/dist/src/gateway/server.js +1 -1
- package/dist/src/gateway/service/agent-runner.js +2 -2
- package/dist/src/gateway/service/config-coordinator.js +2 -2
- package/dist/src/gateway/service/marketplace-service.js +2 -2
- package/dist/src/gateway/service/run-gateway-agent.js +5 -5
- package/dist/src/gateway/service/session-command-service.js +2 -2
- package/dist/src/gateway/service/session-input-coordinator.js +1 -1
- package/dist/src/gateway/service.js +41 -41
- package/dist/src/gateway/session-context-summary.js +4 -4
- package/dist/src/gateway/session-reset-service.js +1 -1
- package/dist/src/gateway/workspace-editor-path.js +2 -2
- package/dist/src/gateway/xopc-cloud-capability-setup.js +2 -2
- package/dist/src/home-intelligence/generator.js +2 -2
- package/dist/src/imports/importService.js +1 -1
- package/dist/src/imports/inventory.js +2 -2
- package/dist/src/imports/productImport.js +1 -1
- package/dist/src/imports/runtime.js +1 -1
- package/dist/src/infra/gateway-processes.js +2 -2
- package/dist/src/infra/path-env.js +3 -3
- package/dist/src/infra/update-global.js +9 -9
- package/dist/src/knowledge/connected-knowledge-pipeline.js +1 -1
- package/dist/src/knowledge/index.js +1 -1
- package/dist/src/knowledge-memory/repository.js +1 -1
- package/dist/src/knowledge-memory/usage-policy.js +1 -1
- package/dist/src/local-apps/service.js +3 -3
- package/dist/src/mcp/gateway-http-client.js +1 -1
- package/dist/src/media-understanding/openai-compatible-audio.js +1 -1
- package/dist/src/memory-learning/source-learning.js +5 -5
- package/dist/src/memory-learning/task-receipts.js +1 -1
- package/dist/src/notes/agent-context.js +4 -4
- package/dist/src/notes/index.js +1 -1
- package/dist/src/notes/service.js +3 -3
- package/dist/src/personal-agent/capability-service.js +2 -2
- package/dist/src/personal-agent/proactivity/routes.js +1 -1
- package/dist/src/personal-agent/proactivity/service.js +7 -7
- package/dist/src/personal-agent/prompt-context.js +7 -7
- package/dist/src/personal-agent/prompts.js +2 -2
- package/dist/src/personal-agent/reply-composer.js +9 -9
- package/dist/src/personal-agent/request-delivery.js +2 -2
- package/dist/src/personal-agent/request-service.js +7 -7
- package/dist/src/personal-agent/result-reader.js +1 -1
- package/dist/src/personal-agent/service.js +2 -2
- package/dist/src/phone/model-adapter.js +1 -1
- package/dist/src/phone/repository.js +1 -1
- package/dist/src/phone/runtime.js +4 -4
- package/dist/src/projects/index.js +2 -2
- package/dist/src/projects/project-agent-suggestion.js +1 -1
- package/dist/src/projects/project-service.js +2 -2
- package/dist/src/projects/project-skill-service.js +2 -2
- package/dist/src/projects/workspace.js +1 -1
- package/dist/src/providers/model-reference-auditor.js +1 -1
- package/dist/src/realtime/runtime.js +1 -1
- package/dist/src/remote-access/exposure-manager.js +1 -1
- package/dist/src/runtime-tools/archive.js +1 -1
- package/dist/src/runtime-tools/phone-dependencies.js +2 -2
- package/dist/src/session/client-history.d.ts +2 -0
- package/dist/src/session/client-history.js +3 -0
- package/dist/src/session/compact-history.js +1 -0
- package/dist/src/session/index.js +2 -2
- package/dist/src/session/init-session-turn.js +1 -1
- package/dist/src/session/resolve-session.js +1 -1
- package/dist/src/session/store.js +5 -5
- package/dist/src/session/thinking-resolve.js +1 -1
- package/dist/src/share/hosted-session-share.js +2 -2
- package/dist/src/share/session-share-service.js +1 -1
- package/dist/src/share/share-store.js +1 -1
- package/dist/src/share/share-thumbnail.js +1 -1
- package/dist/src/share/site-proxy.js +1 -1
- package/dist/src/share/site-share-store.js +1 -1
- package/dist/src/storage/sqlite/connection.js +9 -9
- package/dist/src/tasks/capabilities/read.js +2 -2
- package/dist/src/tasks/capabilities/write.js +2 -2
- package/dist/src/tasks/home-query-service.js +1 -1
- package/dist/src/tasks/index.js +5 -5
- package/dist/src/tasks/task-allocation-service.js +5 -5
- package/dist/src/tasks/task-application-service.js +5 -5
- package/dist/src/tasks/task-collaboration-delivery.js +1 -1
- package/dist/src/tasks/task-context-assembler.js +2 -2
- package/dist/src/tasks/task-contract-planner.js +2 -2
- package/dist/src/tasks/task-handoff-service.js +1 -1
- package/dist/src/tasks/task-handoff.js +4 -4
- package/dist/src/tasks/task-main-update-decision-service.js +3 -3
- package/dist/src/tasks/task-model-call.js +1 -1
- package/dist/src/tasks/task-research-result.js +4 -4
- package/dist/src/tasks/task-result-delivery-repository.js +1 -1
- package/dist/src/tasks/task-result-delivery-service.js +2 -2
- package/dist/src/tasks/task-run-coordinator.js +3 -3
- package/dist/src/tasks/task-run-dispatcher.js +1 -1
- package/dist/src/tui/backends/embedded-backend.js +12 -12
- package/dist/src/tui/backends/gateway-realtime-backend.js +2 -2
- package/dist/src/tui/extension-host/load-extensions.js +1 -1
- package/dist/src/tui/tui-commands.js +5 -5
- package/dist/src/tui/tui-picker-overlay.js +1 -1
- package/dist/src/tui/tui-skills-autocomplete.js +1 -1
- package/dist/src/tui/tui-startup-resources.js +3 -3
- package/dist/src/tui/tui.js +4 -4
- package/dist/src/tunnel/gateway-lifecycle.js +1 -1
- package/dist/src/user-context/access-policy.js +2 -2
- package/dist/src/user-model/bootstrap.js +1 -1
- package/dist/src/user-model/capture/executor.js +1 -1
- package/dist/src/user-model/index.js +2 -2
- package/dist/src/user-model/usage-policy.js +1 -1
- package/dist/src/voice/realtime/memory-context.js +5 -5
- package/dist/src/voice/realtime/omniRoute.js +1 -1
- package/dist/src/voice/realtime/persona-context.js +1 -1
- package/dist/src/voice/realtime/runtime.js +4 -4
- package/dist/src/voice/stt/index.js +2 -2
- package/dist/src/voice/stt/preflight.js +1 -1
- package/dist/src/voice/stt/providers/alibaba-transcription.js +1 -1
- package/dist/src/voice/stt/providers/bailian-plan-transcription.js +1 -1
- package/dist/src/voice/stt/providers/xopc-cloud-transcription.js +1 -1
- package/dist/src/voice/stt/transcribe-core.js +1 -1
- package/dist/src/voice/tts/index.js +3 -3
- package/dist/src/voice/tts/merge-config.js +1 -1
- package/dist/src/voice/tts/payload.js +1 -1
- package/dist/src/voice/tts/providers/bailian-plan-speech.js +1 -1
- package/dist/src/voice/tts/providers/xopc-cloud-speech.js +1 -1
- package/dist/src/voice/tts/speak-core.js +1 -1
- package/dist/src/work-discovery/service.js +7 -7
- package/package.json +1 -1
- package/dist/gateway/static/root/assets/gateway-realtime-store-eEZgUEdH.js +0 -1
- package/dist/gateway/static/root/assets/messages-9OwWjlww.js +0 -3
- package/dist/gateway/static/root/assets/note-image-lightbox-DOG9mCzE.js +0 -1
- package/dist/gateway/static/root/assets/page-header-store-DBeD_mAA.js +0 -1
- package/dist/gateway/static/root/assets/session-manager-SASXxhrN.js +0 -23
- package/dist/gateway/static/root/assets/settings-advanced-gate-iUlbBMZI.js +0 -1
- package/dist/gateway/static/root/assets/workspace-editor-agent-store-Bz_M_rk3.js +0 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/mcp-conversation-setup-page-
|
|
2
|
-
import{i as e,n as t}from"./rolldown-runtime-aKtaBQYM.js";import{a as n,i as r,n as i,t as a}from"./vendor-react-BOUWij0V.js";import{t as o}from"./preload-helper-Czpn1I53.js";import{f as s,l as c,m as l,t as u,u as d}from"./chunk-KS7C4IRE-CiwuuyV8.js";import{a as f,i as p,l as m,n as h,o as g,p as _,u as v}from"./locale-store-fGFrr4_4.js";import{t as y}from"./messages-9OwWjlww.js";import{a as b,c as x,i as S,n as C,o as w,r as T,s as E,t as D}from"./dist-BGTk37IG.js";import{t as O}from"./createLucideIcon-DPHK1VkS.js";import{t as k}from"./app-window-DXFNqt_0.js";import{t as A}from"./archive-Dz0hferG.js";import{t as j}from"./arrow-left-D880xG-P.js";import{t as M}from"./arrow-up-D5ZtR1QT.js";import{a as N,c as P,d as F,f as I,l as L,s as R,t as z,u as B}from"./product-automation-feedback-Ddj5cmmF.js";import{t as ee}from"./book-open-CCGtrT3R.js";import{t as V}from"./bot-DjLkhyZL.js";import{t as H}from"./check-DUBLcKHA.js";import{t as te}from"./chevron-down-ccbiQQz_.js";import{t as U}from"./chevron-right-BweFrslA.js";import{i as W,r as ne,t as re}from"./working-directory-picker-modal-CpZEiO2a.js";import{a as ie,d as ae,n as oe,o as se,r as G,t as K}from"./popover-select-CEMWIrtY.js";import{t as ce}from"./circle-alert-BEjgurr2.js";import{i as le,r as q,t as ue}from"./new-chat-navigation-B6NPQ4h4.js";import{t as de}from"./circle-x-DFsCKeya.js";import{t as fe}from"./circle-BoO4YvTx.js";import{i as pe,n as me,r as he,t as ge}from"./file-tree-utils-DJs1faGv.js";import{t as _e}from"./copy-Dv6d4Dvw.js";import{t as ve}from"./database-CjjeZfRG.js";import{t as ye}from"./earth-BMhZtzcj.js";import{t as be}from"./ellipsis-0k4rZLoy.js";import{t as xe}from"./external-link-DjqjBmc3.js";import{n as Se,t as Ce}from"./file-BqMS_3DT.js";import{t as we}from"./file-image-CDUPkZvG.js";import{t as Te}from"./file-text-D12HbeVy.js";import{t as Ee}from"./folder-kanban-CpLlFI1o.js";import{t as De}from"./folder-open-CyzJ19I9.js";import{t as Oe}from"./folder-CN-pC3XL.js";import{i as ke,r as Ae,u as je,x as Me}from"./use-file-preview-expanded-B_cRX1Ih.js";import{t as Ne}from"./git-branch-Dh9uxTot.js";import{t as Pe}from"./globe-DSSGFWFn.js";import{t as Fe}from"./history-DXH_9jsE.js";import{F as Ie,I as Le,P as Re,c as ze,g as Be,o as Ve,t as He,v as Ue}from"./notes-api-IIQgxlMj.js";import{t as We}from"./key-round-DWbpyU2U.js";import{t as Ge}from"./laptop-CI3hBVrl.js";import{t as Ke}from"./link-2-D_ZKYUW7.js";import{t as qe}from"./list-checks-BbsExAoq.js";import{t as Je}from"./list-todo-CTVRto8O.js";import{t as Ye}from"./loader-circle-CifKLtgG.js";import{A as Xe,B as Ze,C as Qe,D as $e,F as et,P as tt,R as nt,S as rt,T as it,_ as at,b as ot,c as st,d as ct,f as lt,g as ut,h as dt,l as ft,m as pt,n as mt,p as ht,r as gt,u as _t,v as vt,w as yt,y as bt}from"./markdown-view-Cnt8oxNg.js";import{t as xt}from"./messages-square-BckAJrEW.js";import{t as St}from"./mic-CuUb7zc-.js";import{t as Ct}from"./monitor-Af5eAvF7.js";import{s as wt,t as Tt}from"./install-connector-dialog-xHNBuSj0.js";import{t as Et}from"./paperclip-f1HujQY1.js";import{t as Dt}from"./pause-DuPxgSxk.js";import{t as Ot}from"./pencil-DmIY3Oa-.js";import{t as kt}from"./play-kxZvpBg8.js";import{t as At}from"./plus-Q2yW6OE7.js";import{t as jt}from"./refresh-cw-BRlGaq2w.js";import{t as Mt}from"./rotate-ccw-JM1TBLpp.js";import{t as Nt}from"./save-DRDABU--.js";import{t as Pt}from"./search-DA7gz22f.js";import{t as Ft}from"./settings-2-D-csvaET.js";import{t as It}from"./settings-uiTATseT.js";import{t as Lt}from"./shield-check-BU58siTV.js";import{t as Rt}from"./smartphone-DSSsQFqA.js";import{t as zt}from"./sparkles-DHlfQFAF.js";import{t as Bt}from"./square-DMK_fB-3.js";import{t as Vt}from"./trash-2-DusmjVPV.js";import{t as Ht}from"./triangle-alert-2JXFNNKU.js";import{r as Ut,t as Wt}from"./share-link-dialog-BjjkGRWn.js";import{t as Gt}from"./wrench-DFb4r8bH.js";import{t as Kt}from"./x-B_N4OPjy.js";import{t as qt}from"./zap-dximCGjy.js";import{t as J}from"./cn-0WouolD0.js";import{t as Jt}from"./skeleton-BI5TyibZ.js";import{a as Yt,d as Xt,m as Zt,n as Qt,u as $t}from"./schemas-CCWMleym.js";import{t as en}from"./tasks-DRmd6sWt.js";import{i as tn,n as nn,o as rn,s as an,t as on}from"./product-delivery-DRyD9_Xq.js";import{a as sn}from"./local-apps-Ck6kACsY.js";import{a as cn,c as ln,d as un}from"./api-DT_Aly4B.js";import{a as dn,s as fn}from"./session-api-BwcBcvzv.js";import{$ as pn,A as mn,B as hn,C as gn,D as _n,E as vn,F as yn,G as bn,H as xn,I as Sn,J as Cn,L as wn,M as Tn,N as En,O as Dn,P as On,Q as kn,R as An,S as jn,T as Mn,U as Nn,V as Pn,W as Fn,X as In,Y as Ln,Z as Rn,_ as zn,_t as Bn,b as Vn,d as Hn,dt as Un,et as Wn,ft as Gn,g as Kn,gt as qn,h as Jn,ht as Yn,it as Xn,j as Zn,k as Qn,l as $n,lt as er,m as tr,mt as nr,nt as rr,o as ir,ot as ar,pt as or,q as sr,r as cr,st as lr,t as ur,tt as dr,u as fr,ut as pr,v as mr,vt as hr,w as gr,x as _r,y as vr,z as yr}from"./session-manager-SASXxhrN.js";import{a as br,d as xr,m as Sr,n as Cr,s as wr}from"./local-session-drafts-DgtYzPiy.js";import{t as Tr}from"./tool-activity-BtJkgjFf.js";import{a as Er,c as Dr,i as Or,l as kr,n as Ar,o as jr,r as Mr,s as Nr,t as Pr}from"./new-session-preferences-gb411vZP.js";import{a as Fr}from"./extension-provider-DCur0Xcb.js";import{n as Ir}from"./personal-proactivity-DaRnbB1f.js";import{i as Lr}from"./vendor-swr-CdRzEUwF.js";import{c as Rr,h as zr,i as Br,n as Vr,o as Hr,r as Ur,s as Wr,t as Gr,v as Kr}from"./use-composer-attachments-Baw8AHhn.js";import{a as qr}from"./gateway-config-swr-C-fPl1hP.js";import{t as Jr}from"./chat-agents-api-D5-xZdAt.js";import{a as Yr,c as Xr,i as Zr,r as Qr,s as $r}from"./attachment-utils-core-BIOUBrpT.js";import{n as ei}from"./gateway-realtime-xZpX_HCq.js";import{n as ti}from"./gateway-realtime-store-eEZgUEdH.js";import{n as ni,t as ri}from"./registry-api-Bm7kut54.js";import{a as ii}from"./agents-admin-api-DuYzWKP8.js";import{t as ai}from"./button-Cc4hUNTt.js";import{s as oi}from"./file-preview-surface-BFs1sAID.js";import{a as si,i as ci,o as li,r as ui,s as di}from"./dist-GJ8-1PAx.js";import{t as fi}from"./settings-shell-dialog-layer-BU3UuiJr.js";import{t as pi}from"./middleware-Pd0e8Igk.js";import{i as mi,r as hi}from"./app-link-DRy3-k7j.js";import{t as gi}from"./copy-to-clipboard-HOJ79TWv.js";import{a as _i,c as vi,d as yi,f as bi,g as xi,i as Si,m as Ci,n as wi,o as Ti,p as Ei,r as Di,s as Oi}from"./composer-payload-handoff-hccuv1Lk.js";import{C as ki,D as Ai,E as ji,T as Mi,_ as Ni,b as Pi,c as Fi,d as Ii,f as Li,g as Ri,h as zi,m as Bi,n as Vi,o as Hi,p as Ui,r as Wi,s as Gi,u as Ki,v as qi,w as Ji,x as Yi,y as Xi}from"./chunk-D32TOXHM-DQIy-Baq.js";import{i as Zi,n as Qi,r as $i,t as ea}from"./chat-chart-block-B-ri4wfk.js";import{n as ta}from"./interaction-BdhHBbYa.js";import{i as na,n as ra,r as ia,t as aa}from"./tool-friendly-title-DcCc6g7o.js";import{s as oa}from"./connectors-api-D6CPY0Nu.js";import{t as sa}from"./activity-store-iTw0JzOx.js";import{n as ca}from"./voice-call-context-BM2A4bLz.js";import{r as la}from"./app-chrome-BeB4KgOf.js";import{i as ua,n as da,r as fa}from"./form-field-width-DJw_jULe.js";import{n as pa}from"./electron-env-DHOGevH3.js";import{t as ma}from"./page-header-store-DBeD_mAA.js";import{t as ha}from"./use-async-resource-BHFGZCY2.js";import{t as ga}from"./loopi-CNtmi9FU.js";import{t as _a}from"./agent-avatar-display-hRyDKdPJ.js";import{n as va}from"./index.module-Cd9ENXfk.js";import{a as ya,n as ba,r as xa,t as Sa}from"./skill-wire-pattern-BPpeIcCi.js";import{n as Ca,t as wa}from"./use-directory-picker-C4p7AgWY.js";import{t as Ta}from"./confirm-dialog-D7dQJytv.js";import{a as Ea,c as Da,f as Oa,l as ka,s as Aa,u as ja}from"./workspace-api-Yi28Sl0C.js";import{a as Ma,i as Na,o as Pa,r as Fa,s as Ia}from"./copy-text-row-CpiRzq4G.js";import{_ as La,b as Ra,d as za,f as Ba,h as Va,i as Ha,n as Ua,p as Wa,s as Ga,u as Ka,y as qa}from"./shares-api-C1rliVTe.js";import{t as Ja}from"./workspace-editor-agent-store-Bz_M_rk3.js";import{l as Ya,m as Xa,o as Za,r as Qa,t as $a,u as eo}from"./dist-ZrL34Ps4.js";import{a as to,c as no,d as ro,f as io,h as ao,i as oo,l as so,m as co,p as lo,s as uo,t as fo,u as po}from"./command-palette-api-DFd-zOz_.js";import{r as mo,t as ho}from"./model-selector-Bv-anQ6O.js";import{n as go,o as _o,r as vo,s as yo}from"./voice-input-shortcut-events-CWSb-oJe.js";import{t as bo}from"./dev-view-store-Dk7ylv5S.js";import{t as xo}from"./extension-iframe-host-CPEaw2ZG.js";import{i as So,t as Co}from"./automation-task-card--K7uiKHL.js";import{i as wo,r as To}from"./api-BeNB3MkI.js";import{r as Eo,t as Do}from"./runtime-health-D2TDFLLq.js";import{r as Oo}from"./terminal-panel-store-BDrza-7c.js";import{n as ko}from"./agents-app-path-ciChvpCS.js";import{n as Ao,t as jo}from"./agent-display-names-Bje7vfSn.js";import{t as Mo}from"./oauth-provider-connect-D_p1ez-o.js";import{t as No}from"./use-media-query-ady-FgjK.js";import{n as Po,r as Fo,t as Io}from"./oauth-authorization-window-o6URRos4.js";import{n as Lo,t as Ro}from"./page-context-draft-BbGvUKjF.js";import{t as zo}from"./side-chat-shortcut-BIw-1TTD.js";var Bo=O(`arrow-down`,[[`path`,{d:`M12 5v14`,key:`s699le`}],[`path`,{d:`m19 12-7 7-7-7`,key:`1idqje`}]]),Vo=O(`ban`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M4.929 4.929 19.07 19.071`,key:`196cmz`}]]),Ho=O(`circle-question-mark`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3`,key:`1u773s`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]]),Uo=O(`corner-down-right`,[[`path`,{d:`m15 10 5 5-5 5`,key:`qqa56n`}],[`path`,{d:`M4 4v7a4 4 0 0 0 4 4h12`,key:`z08zvw`}]]),Wo=O(`file-headphone`,[[`path`,{d:`M4 6.835V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.706.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2h-.343`,key:`1vfytu`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M2 19a2 2 0 0 1 4 0v1a2 2 0 0 1-4 0v-4a6 6 0 0 1 12 0v4a2 2 0 0 1-4 0v-1a2 2 0 0 1 4 0`,key:`1etmh7`}]]),Go=O(`file-pen-line`,[[`path`,{d:`M14.364 13.634a2 2 0 0 0-.506.854l-.837 2.87a.5.5 0 0 0 .62.62l2.87-.837a2 2 0 0 0 .854-.506l4.013-4.009a1 1 0 0 0-3.004-3.004z`,key:`ukzhwg`}],[`path`,{d:`M14.487 7.858A1 1 0 0 1 14 7V2`,key:`1klhew`}],[`path`,{d:`M20 19.645V20a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l2.516 2.516`,key:`rxaxab`}],[`path`,{d:`M8 18h1`,key:`13wk12`}]]),Ko=O(`file-plus-corner`,[[`path`,{d:`M11.35 22H6a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.706.706l3.588 3.588A2.4 2.4 0 0 1 20 8v5.35`,key:`17jvcc`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M14 19h6`,key:`bvotb8`}],[`path`,{d:`M17 16v6`,key:`18yu1i`}]]),qo=O(`files`,[[`path`,{d:`M15 2h-4a2 2 0 0 0-2 2v11a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V8`,key:`14sh0y`}],[`path`,{d:`M16.706 2.706A2.4 2.4 0 0 0 15 2v5a1 1 0 0 0 1 1h5a2.4 2.4 0 0 0-.706-1.706z`,key:`1970lx`}],[`path`,{d:`M5 7a2 2 0 0 0-2 2v11a2 2 0 0 0 2 2h8a2 2 0 0 0 1.732-1`,key:`l4dndm`}]]),Jo=O(`git-commit-horizontal`,[[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}],[`line`,{x1:`3`,x2:`9`,y1:`12`,y2:`12`,key:`1dyftd`}],[`line`,{x1:`15`,x2:`21`,y1:`12`,y2:`12`,key:`oup4p8`}]]),Yo=O(`git-fork`,[[`circle`,{cx:`12`,cy:`18`,r:`3`,key:`1mpf1b`}],[`circle`,{cx:`6`,cy:`6`,r:`3`,key:`1lh9wr`}],[`circle`,{cx:`18`,cy:`6`,r:`3`,key:`1h7g24`}],[`path`,{d:`M18 9v2c0 .6-.4 1-1 1H7c-.6 0-1-.4-1-1V9`,key:`1uq4wg`}],[`path`,{d:`M12 12v3`,key:`158kv8`}]]),Xo=O(`grip-vertical`,[[`circle`,{cx:`9`,cy:`12`,r:`1`,key:`1vctgf`}],[`circle`,{cx:`9`,cy:`5`,r:`1`,key:`hp0tcf`}],[`circle`,{cx:`9`,cy:`19`,r:`1`,key:`fkjjf6`}],[`circle`,{cx:`15`,cy:`12`,r:`1`,key:`1tmaij`}],[`circle`,{cx:`15`,cy:`5`,r:`1`,key:`19l28e`}],[`circle`,{cx:`15`,cy:`19`,r:`1`,key:`f4zoj3`}]]),Zo=O(`layout-template`,[[`rect`,{width:`18`,height:`7`,x:`3`,y:`3`,rx:`1`,key:`f1a2em`}],[`rect`,{width:`9`,height:`7`,x:`3`,y:`14`,rx:`1`,key:`jqznyg`}],[`rect`,{width:`5`,height:`7`,x:`16`,y:`14`,rx:`1`,key:`q5h2i8`}]]),Qo=O(`list-plus`,[[`path`,{d:`M16 5H3`,key:`m91uny`}],[`path`,{d:`M11 12H3`,key:`51ecnj`}],[`path`,{d:`M16 19H3`,key:`zzsher`}],[`path`,{d:`M18 9v6`,key:`1twb98`}],[`path`,{d:`M21 12h-6`,key:`bt1uis`}]]),$o=O(`message-circle-more`,[[`path`,{d:`M2.992 16.342a2 2 0 0 1 .094 1.167l-1.065 3.29a1 1 0 0 0 1.236 1.168l3.413-.998a2 2 0 0 1 1.099.092 10 10 0 1 0-4.777-4.719`,key:`1sd12s`}],[`path`,{d:`M8 12h.01`,key:`czm47f`}],[`path`,{d:`M12 12h.01`,key:`1mp3jc`}],[`path`,{d:`M16 12h.01`,key:`1l6xoz`}]]),es=O(`message-circle-plus`,[[`path`,{d:`M2.992 16.342a2 2 0 0 1 .094 1.167l-1.065 3.29a1 1 0 0 0 1.236 1.168l3.413-.998a2 2 0 0 1 1.099.092 10 10 0 1 0-4.777-4.719`,key:`1sd12s`}],[`path`,{d:`M8 12h8`,key:`1wcyev`}],[`path`,{d:`M12 8v8`,key:`napkw2`}]]),ts=O(`message-square-share`,[[`path`,{d:`M12 3H4a2 2 0 0 0-2 2v16.286a.71.71 0 0 0 1.212.502l2.202-2.202A2 2 0 0 1 6.828 19H20a2 2 0 0 0 2-2v-4`,key:`11da1y`}],[`path`,{d:`M16 3h6v6`,key:`1bx56c`}],[`path`,{d:`m16 9 6-6`,key:`m4dnic`}]]),ns=O(`message-square-text`,[[`path`,{d:`M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z`,key:`18887p`}],[`path`,{d:`M7 11h10`,key:`1twpyw`}],[`path`,{d:`M7 15h6`,key:`d9of3u`}],[`path`,{d:`M7 7h8`,key:`af5zfr`}]]),rs=O(`notebook-pen`,[[`path`,{d:`M13.4 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-7.4`,key:`re6nr2`}],[`path`,{d:`M2 6h4`,key:`aawbzj`}],[`path`,{d:`M2 10h4`,key:`l0bgd4`}],[`path`,{d:`M2 14h4`,key:`1gsvsf`}],[`path`,{d:`M2 18h4`,key:`1bu2t1`}],[`path`,{d:`M21.378 5.626a1 1 0 1 0-3.004-3.004l-5.01 5.012a2 2 0 0 0-.506.854l-.837 2.87a.5.5 0 0 0 .62.62l2.87-.837a2 2 0 0 0 .854-.506z`,key:`pqwjuv`}]]),is=O(`shuffle`,[[`path`,{d:`m18 14 4 4-4 4`,key:`10pe0f`}],[`path`,{d:`m18 2 4 4-4 4`,key:`pucp1d`}],[`path`,{d:`M2 18h1.973a4 4 0 0 0 3.3-1.7l5.454-8.6a4 4 0 0 1 3.3-1.7H22`,key:`1ailkh`}],[`path`,{d:`M2 6h1.972a4 4 0 0 1 3.6 2.2`,key:`km57vx`}],[`path`,{d:`M22 18h-6.041a4 4 0 0 1-3.3-1.8l-.359-.45`,key:`os18l9`}]]),as=O(`square-plus`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M8 12h8`,key:`1wcyev`}],[`path`,{d:`M12 8v8`,key:`napkw2`}]]),os=O(`target`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`circle`,{cx:`12`,cy:`12`,r:`6`,key:`1vlfrh`}],[`circle`,{cx:`12`,cy:`12`,r:`2`,key:`1c9p78`}]]),ss=O(`wallet`,[[`path`,{d:`M19 7V4a1 1 0 0 0-1-1H5a2 2 0 0 0 0 4h15a1 1 0 0 1 1 1v4h-3a2 2 0 0 0 0 4h3a1 1 0 0 0 1-1v-2a1 1 0 0 0-1-1`,key:`18etb6`}],[`path`,{d:`M3 5v14a2 2 0 0 0 2 2h15a1 1 0 0 0 1-1v-4`,key:`xoc0q4`}]]);function cs(e,t){return e.replace(/\{\{(\w+)}}/g,(e,n)=>t[n]?.trim()??``).replace(/[ \t]{2,}/g,` `).trim()}function ls(e,t,n){return{id:e,title:cs(t.title,n),prompt:cs(t.prompt,n),reason:cs(t.reason,n)}}function us(e,t){let n={projectName:e.projectName,blockedReason:e.blockedReason,recentFailure:e.recentFailure,nextAction:e.recommendedAction};if(e.blockedReason?.trim())return ls(`project-blocked`,t.recommendations.projectBlocked,n);if(e.recentFailure?.trim())return ls(`project-failure`,t.recommendations.projectFailure,n);if(e.recommendedAction?.trim())return ls(`project-next-action`,t.recommendations.projectNextAction,n)}function ds(e,t){let n={taskTitle:e.taskTitle,attentionSummary:e.attentionSummary,recentFailure:e.recentFailure,nextAction:e.nextAction};if(e.attentionSummary?.trim())return ls(`task-attention`,t.recommendations.taskAttention,n);if(e.recentFailure?.trim())return ls(`task-failure`,t.recommendations.taskFailure,n);if(e.phase===`review`||e.operationalState===`verifying`)return ls(`task-review`,t.recommendations.taskReview,n);if(e.phase===`closed`)return ls(`task-closed`,t.recommendations.taskClosed,n);if(e.nextAction?.trim())return ls(`task-next-action`,t.recommendations.taskNextAction,n)}function fs(e,t){switch(e.kind){case`project`:return us(e,t);case`task`:return ds(e,t);default:return}}function ps(e,t,n={}){let r=n.contextStatus??`ready`;return{headline:e.kind===`project`&&t.projectHeadline?cs(t.projectHeadline,{projectName:e.projectName}):t.headline,contextKind:e.kind,contextStatus:r,recommendation:r===`ready`?fs(e,t):void 0}}var ms=Xt({id:Zt().uuid(),conversationId:Zt(),transcriptId:Zt(),sourceRunId:Zt(),inputRevision:$t().int().nonnegative(),transcriptCursor:$t().int().nonnegative(),agentId:Zt(),locale:Qt([`zh`,`en`]),prompt:Zt().min(1).max(160),expiresAt:$t()}),hs=Xt({status:Qt([`ready`,`pending`,`none`]),suggestion:ms.optional()});Xt({suggestionId:Zt().uuid(),impressionId:Zt().uuid(),event:Qt([`shown`,`accepted`,`dismissed`,`submitted`]),edited:Yt().optional()}).strict();function gs(e,t,n){for(let r of[n,t])if(e.options.includes(r))return r;return e.initialValue}function _s(e,t=`body`){return`result:${encodeURIComponent(e)}:${encodeURIComponent(t)}`}function vs(e){return`${e.taskRunId}:${e.assignmentEpoch}:${e.outcome.outcomeId}`}var ys=e(r(),1),Y=i(),X=a(),Z=e(n(),1);function bs(e,t){return e?[`task-detail`,e,t??``]:null}function xs(e,t){return t.source!==`user`||e===void 0||t.version>e}function Ss(e){let t=m(e=>e.conversationId),[n,r]=(0,Z.useState)(null),[i,a]=(0,Z.useState)(!1),[o,s]=(0,Z.useState)(null),c=(0,Z.useRef)(``),l=(0,Z.useRef)(void 0),u=Lr(bs(e,t),()=>Kr(e),{keepPreviousData:!1,revalidateOnFocus:!0,revalidateOnReconnect:!0,refreshInterval:e=>e&&[`allocating`,`queued`,`running`,`waiting`,`verifying`].includes(e.operationalState)?5e3:0});return l.current=u.data?.task.version,(0,Z.useEffect)(()=>{r(null),a(!1),s(null),c.current=``},[e]),(0,Z.useEffect)(()=>{let t=u.data;if(!t||t.conversation.activeConversationId||t.allocation&&t.allocation.status!==`assigned`)return;let n=`${e}:${t.task.version}`;c.current!==n&&(c.current=n,a(!0),s(null),zr(e).then(()=>c.current===n?u.mutate():void 0).catch(e=>{c.current===n&&s(e)}).finally(()=>{c.current===n&&a(!1)}))},[u.data,u.mutate,e]),(0,Z.useEffect)(()=>{let t,n=()=>{window.clearTimeout(t),t=window.setTimeout(()=>void u.mutate(),120)},i=t=>{let i=en.safeParse(t.detail);!i.success||i.data.taskId!==e||xs(l.current,i.data)&&(r(i.data),n())},a=()=>n();return window.addEventListener(`task-changed-v2`,i),window.addEventListener(`gateway-realtime-connected`,a),window.addEventListener(`realtime-gap`,a),()=>{window.clearTimeout(t),window.removeEventListener(`task-changed-v2`,i),window.removeEventListener(`gateway-realtime-connected`,a),window.removeEventListener(`realtime-gap`,a)}},[u.mutate,e]),{...u,lastChange:n,conversationLoading:i,conversationError:o}}var Cs=new Map,ws=new Set;function Ts(e,t){Cs.set(e,t);for(let e of ws)e();return()=>{Cs.get(e)===t&&Cs.delete(e)}}async function Es(e,t,n){await(Cs.get(e)??await new Promise((t,n)=>{let r=()=>{let n=Cs.get(e);n&&(clearTimeout(i),ws.delete(r),t(n))},i=setTimeout(()=>{ws.delete(r),n(Error(`Chat input is not ready. Please retry.`))},15e3);ws.add(r),r()}))(t,n)}var Ds=crypto.randomUUID(),Os=e=>e===`closed`;function ks(e,t){let n=e,r=n?.code??n?.body?.error?.code,i={PHONE_CONTROL_BUSY:`另一设备正在操作手机,请等待其结束控制。`,PHONE_DEVICE_BUSY:`手机正被其他聊天或人工操作占用,本次操作尚未开始。请查看当前任务,等待或明确停止后再试。`,PHONE_OBSERVE_ONLY:`此入口仅支持查看手机画面,请在来源聊天中操作或接管手机。`,PHONE_CONTROL_CHANGED:`手机控制权已变化,本次操作未继续。请查看最新状态后重新接管。`,PHONE_CONTROL_REQUIRED:`当前窗口没有手机操作权,请先接管手机。`,PHONE_CONTROL_STALE:`手机控制状态已更新,请等待状态刷新后再操作。`,PHONE_DISPATCH_UNKNOWN:`上一条手机输入的结果尚未确认,请先检查手机,避免重复执行。`,PHONE_FRAME_STALE:`手机画面已变化,请等待新画面后再操作。`,PHONE_APP_DENIED:`当前页面不在授权应用范围内,请返回授权应用。`,PHONE_SESSION_NOT_FOUND:`手机连接或来源聊天已变化,请刷新手机面板。`,PHONE_PAUSED:`手机任务已暂停,请检查手机状态并明确交回控制权后继续。`,PHONE_DEVICE_OFFLINE:`手机暂未连接,任务进度已保留。请连接手机后重试。`,PHONE_BINDING_CHANGED:`手机或 Agent 设置已变化,任务进度已保留。请检查设备和模型设置后重试。`,PHONE_ASSISTANCE_CHANGED:`待接管任务已更新,请刷新状态后操作。`};return t&&r&&i[r]?i[r]:n?.message??(t?`无法完成手机操作,请检查连接状态。`:`Phone operation failed. Check the connection.`)}var As=e=>`/api/phone/conversations/${encodeURIComponent(e)}`,js=new Map,Ms=()=>{let e=m.getState();return`${e.baseUrl}:${e.conversationId}`};function Ns(e,t,n=Ms()){let r=`${n}:${e}`,i=js.get(r);return t&&i&&t.report.sessionId===i.report.sessionId&&(t.report.revision??0)<(i.report.revision??0)?i:(t?(js.set(r,t),js.size>100&&js.delete(js.keys().next().value)):js.delete(r),t)}async function Ps(e,t=Ms()){let n=await f(p(e)),r=decodeURIComponent(e.split(`/conversations/`)[1]?.split(`?`)[0]??``);if(n.status===404)return Ns(r,null,t);if((n.status===401||n.status===403)&&Ns(r,null,t),!n.ok)throw Object.assign(Error(`Phone view unavailable (HTTP ${n.status})`),{status:n.status});return Ns(r,(await n.json()).payload,t)}function Fs(e,t){let n=(0,Y.c)(5),r=t===void 0||t,i=m(Rs),a;n[0]!==e||n[1]!==r||n[2]!==i?(a=r&&/^(?:device:)?[\da-f]{8}-[\da-f-]{27}$/i.test(e)?[`${As(e)}?clientId=${Ds}`,i]:null,n[0]=e,n[1]=r,n[2]=i,n[3]=a):a=n[3];let o;return n[4]===Symbol.for(`react.memo_cache_sentinel`)?(o={refreshInterval:1200,revalidateOnFocus:!0,shouldRetryOnError:Is,errorRetryCount:6,errorRetryInterval:2e3,refreshWhenHidden:!1},n[4]=o):o=n[4],Lr(a,Ls,o)}function Is(e){return e.status!==401&&e.status!==403}function Ls(e){let[t,n]=e;return Ps(t,n)}function Rs(e){return`${e.baseUrl}:${e.conversationId}`}async function zs(e,t,n,r={},i=!1){let a=Ms();return Ns(e,(await g(p(`${As(e)}/${t.report.sessionId}/control`),{method:`POST`,keepalive:i,body:JSON.stringify({expectedTranscriptId:t.report.transcriptId,clientId:Ds,assistanceId:t.report.assistanceId,assistanceVersion:t.report.assistanceVersion,operationId:crypto.randomUUID(),epoch:t.report.controlEpoch,op:n,...r})})).payload,a)}async function Bs(e,t,n){let r=await f(p(`${As(e)}/${t}/frame`),{signal:n});if(!r.ok){let e=await r.json().catch(()=>({}));throw Object.assign(Error(e.error?.message??`HTTP ${r.status}`),{status:r.status,code:e.error?.code})}return{blob:await r.blob(),seq:Number(r.headers.get(`X-Phone-Frame-Seq`)),capturedAt:Number(r.headers.get(`X-Phone-Captured-At`)),width:Number(r.headers.get(`X-Phone-Width`)),height:Number(r.headers.get(`X-Phone-Height`))}}function Vs(e,t,n,r,i){let a=Math.min(e.width/t,e.height/n),o=t*a,s=n*a,c=r-e.left-(e.width-o)/2,l=i-e.top-(e.height-s)/2;return!a||c<0||l<0||c>o||l>s?null:[Math.round(c/o*1e3),Math.round(l/s*1e3)]}async function Hs(e,t,n,r=!1){return(await g(p(`${As(e)}/${t.report.sessionId}/execution-mode`),{method:`POST`,body:JSON.stringify({executionMode:n,applyCurrent:r,epoch:t.report.controlEpoch,clientId:Ds})})).payload}function Us(e,t){if(!t.assistanceId||![`needs_user`,`paused`].includes(t.status))return null;let n=m.getState();return JSON.stringify([n.baseUrl,n.conversationId,e,t.transcriptId,t.assistanceId,t.assistanceVersion??1])}var Ws=_(pi(e=>({seen:[],markSeen:t=>e(e=>e.seen.includes(t)?e:{seen:[...e.seen.slice(-99),t]})}),{name:`xopc-phone-attention-v1`}));function Gs(e){let t=(0,Y.c)(15),{detail:n,language:r}=e,i;t[0]===n?i=t[1]:(i=xi(n),t[0]=n,t[1]=i);let a=i,o=r===`zh`,s=a.receipt?.status===`failed`?o?`最近一轮执行失败`:`Latest run failed`:a.receipt?.status===`cancelled`?o?`最近一轮执行已取消`:`Latest run canceled`:a.receipt?o?`最近一轮执行已结束`:`Latest run ended`:o?`尚无本版任务的执行结果`:`No run result for this task version`,c=o?`执行、验收与交付`:`Execution, acceptance and delivery`,l=n.task.phase===`closed`?``:o?`;任务仍未关闭`:`; task remains open`,u;t[2]!==s||t[3]!==l?(u=(0,X.jsxs)(`p`,{children:[s,l]}),t[2]=s,t[3]=l,t[4]=u):u=t[4];let d=o?`验收:${a.verified}/${a.criteria} 项通过`:`Acceptance: ${a.verified}/${a.criteria} criteria passed`,f=a.criteria===0?o?`,尚未定义验收标准`:`; criteria not defined`:``,p;t[5]!==d||t[6]!==f?(p=(0,X.jsxs)(`p`,{children:[d,f]}),t[5]=d,t[6]=f,t[7]=p):p=t[7];let m=a.deliverables>0?o?`已关联交付物:${a.deliverables} 项`:`Linked deliverables: ${a.deliverables}`:o?`尚无正式交付物`:`No formal deliverables linked`,h;t[8]===m?h=t[9]:(h=(0,X.jsx)(`p`,{children:m}),t[8]=m,t[9]=h);let g;return t[10]!==c||t[11]!==u||t[12]!==p||t[13]!==h?(g=(0,X.jsxs)(`div`,{className:`mt-3 space-y-1 border-t border-edge-subtle pt-3 text-xs leading-5 text-fg-muted`,"aria-label":c,children:[u,p,h]}),t[10]=c,t[11]=u,t[12]=p,t[13]=h,t[14]=g):g=t[14],g}var Ks=(0,Z.memo)(function(e){let t=(0,Y.c)(58),{taskId:n}=e,r=c(),i=h(qs),a;t[0]===i?a=t[1]:(a=yi(i),t[0]=i,t[1]=a);let o=a,{data:s}=Ss(n);if(!s)return null;let{task:l,operationalState:d}=s,f,p,m,g;if(t[2]!==o.noDecisionNeeded||t[3]!==s||t[4]!==d||t[5]!==l.phase){let e=bi(s);m=s.attention.length>0;let n;t[10]!==d||t[11]!==l.phase?(n=l.phase!==`closed`&&[`queued`,`running`,`verifying`].includes(d),t[10]=d,t[11]=l.phase,t[12]=n):n=t[12],p=n,f=m?s.attention[0]?.summary??e?.nextAction??e?.summary:l.phase===`closed`?e?.summary:e?.nextAction??e?.summary??o.noDecisionNeeded,g=e?.evidence.filter(Js).length??0,t[2]=o.noDecisionNeeded,t[3]=s,t[4]=d,t[5]=l.phase,t[6]=f,t[7]=p,t[8]=m,t[9]=g}else f=t[6],p=t[7],m=t[8],g=t[9];let _=g,v=o.taskProgress.title,y;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(y=(0,X.jsx)(os,{className:`size-4`,"aria-hidden":!0}),t[13]=y):y=t[13];let b;t[14]===p?b=t[15]:(b=p?(0,X.jsx)(`span`,{className:`absolute -right-0.5 -top-0.5 size-2.5 rounded-full border-2 border-surface-panel bg-accent motion-safe:animate-pulse`}):null,t[14]=p,t[15]=b);let x;t[16]===b?x=t[17]:(x=(0,X.jsxs)(`span`,{className:`relative mt-0.5 flex size-8 shrink-0 items-center justify-center rounded-full bg-accent-soft text-accent-fg`,children:[y,b]}),t[16]=b,t[17]=x);let S;t[18]===o.taskProgress.title?S=t[19]:(S=(0,X.jsx)(`span`,{className:`text-xs font-medium text-fg-muted`,children:o.taskProgress.title}),t[18]=o.taskProgress.title,t[19]=S);let C;t[20]===s?C=t[21]:(C=J(`rounded-full border px-1.5 py-0.5 text-[10px] font-medium`,Ci(Ei(s))),t[20]=s,t[21]=C);let w=o.detailStatuses[Ei(s)],T;t[22]!==C||t[23]!==w?(T=(0,X.jsx)(`span`,{className:C,children:w}),t[22]=C,t[23]=w,t[24]=T):T=t[24];let E;t[25]!==o.taskProgress.evidence||t[26]!==_?(E=_>0?(0,X.jsxs)(`span`,{className:`text-[11px] text-fg-muted`,children:[_,` `,o.taskProgress.evidence]}):null,t[25]=o.taskProgress.evidence,t[26]=_,t[27]=E):E=t[27];let D;t[28]!==T||t[29]!==E||t[30]!==S?(D=(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[S,T,E]}),t[28]=T,t[29]=E,t[30]=S,t[31]=D):D=t[31];let O;t[32]===l.title?O=t[33]:(O=(0,X.jsx)(`p`,{className:`mt-1 text-sm font-medium leading-5 text-fg`,children:l.title}),t[32]=l.title,t[33]=O);let k;t[34]===f?k=t[35]:(k=f?(0,X.jsx)(`p`,{className:`mt-1 line-clamp-2 text-xs leading-5 text-fg-muted`,children:f}):null,t[34]=f,t[35]=k);let A;t[36]!==D||t[37]!==O||t[38]!==k?(A=(0,X.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[D,O,k]}),t[36]=D,t[37]=O,t[38]=k,t[39]=A):A=t[39];let j=`${r.pathname}${r.search}`,M;t[40]!==j||t[41]!==l.id?(M=et(j,l.id),t[40]=j,t[41]=l.id,t[42]=M):M=t[42];let N=m?o.taskProgress.decide:o.taskProgress.open,P;t[43]===Symbol.for(`react.memo_cache_sentinel`)?(P=(0,X.jsx)(xe,{className:`size-3.5`,"aria-hidden":!0}),t[43]=P):P=t[43];let F;t[44]!==M||t[45]!==N?(F=(0,X.jsxs)(u,{to:M,className:`inline-flex shrink-0 items-center gap-1 rounded-md px-2 py-1.5 text-xs font-medium text-accent hover:bg-accent-soft focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,children:[N,P]}),t[44]=M,t[45]=N,t[46]=F):F=t[46];let I;t[47]!==A||t[48]!==F||t[49]!==x?(I=(0,X.jsxs)(`div`,{className:`flex items-start gap-3`,children:[x,A,F]}),t[47]=A,t[48]=F,t[49]=x,t[50]=I):I=t[50];let L;t[51]!==s||t[52]!==i?(L=(0,X.jsx)(Gs,{detail:s,language:i}),t[51]=s,t[52]=i,t[53]=L):L=t[53];let R;return t[54]!==o.taskProgress.title||t[55]!==I||t[56]!==L?(R=(0,X.jsxs)(`section`,{className:`mb-6 rounded-xl border border-edge bg-surface-panel px-3 py-3 sm:px-4`,"aria-label":v,"aria-live":`polite`,children:[I,L]}),t[54]=o.taskProgress.title,t[55]=I,t[56]=L,t[57]=R):R=t[57],R});function qs(e){return e.language}function Js(e){return e.strength===`verified`}function Ys(e){return e===-5||e===-4||e===-3?`
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/mcp-conversation-setup-page-BEp5E6TD.js","assets/rolldown-runtime-aKtaBQYM.js","assets/vendor-react-BOUWij0V.js","assets/chunk-KS7C4IRE-CiwuuyV8.js","assets/preload-helper-Czpn1I53.js","assets/locale-store-B6OrWgY1.js","assets/messages-jwdBhfL9.js","assets/dist-BGTk37IG.js","assets/es2015-DBLcMg5B.js","assets/dist-CxGUk8J-.js","assets/check-DUBLcKHA.js","assets/createLucideIcon-DPHK1VkS.js","assets/secret-input-Dryrns2s.js","assets/circle-check-C23XjkUj.js","assets/copy-Dv6d4Dvw.js","assets/eye-CABVeTq0.js","assets/loader-circle-CifKLtgG.js","assets/cn-0WouolD0.js","assets/bundle-mjs-rHxsej31.js","assets/copy-to-clipboard-HOJ79TWv.js","assets/interaction-BdhHBbYa.js","assets/form-field-width-DJw_jULe.js","assets/is-masked-secret-DOkL5b_X.js","assets/key-round-DWbpyU2U.js","assets/link-2-D_ZKYUW7.js","assets/lock-keyhole-DEK5kH0u.js","assets/x-B_N4OPjy.js","assets/skeleton-BI5TyibZ.js","assets/vendor-swr-CdRzEUwF.js","assets/button-Cc4hUNTt.js","assets/chat-terminal-dock-Cd51G9eG.js","assets/plus-Q2yW6OE7.js","assets/square-terminal-K87bylpZ.js","assets/session-api-Bfmlmn9F.js","assets/schemas-CCWMleym.js","assets/gateway-startup-retry-C8g666Ja.js","assets/session-manager-X4UHOjjO.js","assets/constants-DBtMsXdW.js","assets/local-session-drafts-DTq9776a.js","assets/tool-activity-BtJkgjFf.js","assets/personal-proactivity-DaRnbB1f.js","assets/attachment-utils-core-BIOUBrpT.js","assets/gateway-realtime-BSRNLciy.js","assets/gateway-realtime-store-BFeFfApQ.js","assets/registry-api-Bl2guMRg.js","assets/agents-admin-api-CXCAHNPj.js","assets/gateway-config-swr-D6cc6W6E.js","assets/sliding-tab-list-DuQyViqe.js","assets/sliding-indicator-hwz0sx3h.js","assets/terminal-panel-store-BbWUcQe7.js","assets/chat-terminal-dock-uQUnjRtf.css"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{i as e,n as t}from"./rolldown-runtime-aKtaBQYM.js";import{a as n,i as r,n as i,t as a}from"./vendor-react-BOUWij0V.js";import{t as o}from"./preload-helper-Czpn1I53.js";import{f as s,l as c,m as l,t as u,u as d}from"./chunk-KS7C4IRE-CiwuuyV8.js";import{a as f,i as p,l as m,n as h,o as g,p as _,u as v}from"./locale-store-B6OrWgY1.js";import{t as y}from"./messages-jwdBhfL9.js";import{a as b,c as x,i as S,n as C,o as w,r as T,s as E,t as D}from"./dist-BGTk37IG.js";import{t as O}from"./createLucideIcon-DPHK1VkS.js";import{t as k}from"./app-window-DXFNqt_0.js";import{t as A}from"./archive-Dz0hferG.js";import{t as j}from"./arrow-left-D880xG-P.js";import{t as M}from"./arrow-up-D5ZtR1QT.js";import{a as N,c as P,d as F,f as I,l as L,s as R,t as z,u as B}from"./product-automation-feedback-DDQUsag7.js";import{t as ee}from"./book-open-CCGtrT3R.js";import{t as V}from"./bot-DjLkhyZL.js";import{t as H}from"./check-DUBLcKHA.js";import{t as te}from"./chevron-down-ccbiQQz_.js";import{t as U}from"./chevron-right-BweFrslA.js";import{i as W,r as ne,t as re}from"./working-directory-picker-modal-DGp9cNzH.js";import{a as ie,d as ae,n as oe,o as se,r as G,t as K}from"./popover-select-CEMWIrtY.js";import{t as ce}from"./circle-alert-BEjgurr2.js";import{i as le,r as q,t as ue}from"./new-chat-navigation-B6NPQ4h4.js";import{t as de}from"./circle-x-DFsCKeya.js";import{t as fe}from"./circle-BoO4YvTx.js";import{i as pe,n as me,r as he,t as ge}from"./file-tree-utils-DJs1faGv.js";import{t as _e}from"./copy-Dv6d4Dvw.js";import{t as ve}from"./database-CjjeZfRG.js";import{t as ye}from"./earth-BMhZtzcj.js";import{t as be}from"./ellipsis-0k4rZLoy.js";import{t as xe}from"./external-link-DjqjBmc3.js";import{n as Se,t as Ce}from"./file-BqMS_3DT.js";import{t as we}from"./file-image-CDUPkZvG.js";import{t as Te}from"./file-text-D12HbeVy.js";import{t as Ee}from"./folder-kanban-CpLlFI1o.js";import{t as De}from"./folder-open-CyzJ19I9.js";import{t as Oe}from"./folder-CN-pC3XL.js";import{i as ke,r as Ae,u as je,x as Me}from"./use-file-preview-expanded-CW956CXS.js";import{t as Ne}from"./git-branch-Dh9uxTot.js";import{t as Pe}from"./globe-DSSGFWFn.js";import{t as Fe}from"./history-DXH_9jsE.js";import{F as Ie,I as Le,P as Re,c as ze,g as Be,o as Ve,t as He,v as Ue}from"./notes-api-Ddsf7FVg.js";import{t as We}from"./key-round-DWbpyU2U.js";import{t as Ge}from"./laptop-CI3hBVrl.js";import{t as Ke}from"./link-2-D_ZKYUW7.js";import{t as qe}from"./list-checks-BbsExAoq.js";import{t as Je}from"./list-todo-CTVRto8O.js";import{t as Ye}from"./loader-circle-CifKLtgG.js";import{A as Xe,B as Ze,C as Qe,D as $e,F as et,P as tt,R as nt,S as rt,T as it,_ as at,b as ot,c as st,d as ct,f as lt,g as ut,h as dt,l as ft,m as pt,n as mt,p as ht,r as gt,u as _t,v as vt,w as yt,y as bt}from"./markdown-view-DrhYZSmg.js";import{t as xt}from"./messages-square-BckAJrEW.js";import{t as St}from"./mic-CuUb7zc-.js";import{t as Ct}from"./monitor-Af5eAvF7.js";import{s as wt,t as Tt}from"./install-connector-dialog-Cn4nRSyt.js";import{t as Et}from"./paperclip-f1HujQY1.js";import{t as Dt}from"./pause-DuPxgSxk.js";import{t as Ot}from"./pencil-DmIY3Oa-.js";import{t as kt}from"./play-kxZvpBg8.js";import{t as At}from"./plus-Q2yW6OE7.js";import{t as jt}from"./refresh-cw-BRlGaq2w.js";import{t as Mt}from"./rotate-ccw-JM1TBLpp.js";import{t as Nt}from"./save-DRDABU--.js";import{t as Pt}from"./search-DA7gz22f.js";import{t as Ft}from"./settings-2-D-csvaET.js";import{t as It}from"./settings-uiTATseT.js";import{t as Lt}from"./shield-check-BU58siTV.js";import{t as Rt}from"./smartphone-DSSsQFqA.js";import{t as zt}from"./sparkles-DHlfQFAF.js";import{t as Bt}from"./square-DMK_fB-3.js";import{t as Vt}from"./trash-2-DusmjVPV.js";import{t as Ht}from"./triangle-alert-2JXFNNKU.js";import{r as Ut,t as Wt}from"./share-link-dialog-BMcXyzr2.js";import{t as Gt}from"./wrench-DFb4r8bH.js";import{t as Kt}from"./x-B_N4OPjy.js";import{t as qt}from"./zap-dximCGjy.js";import{t as J}from"./cn-0WouolD0.js";import{t as Jt}from"./skeleton-BI5TyibZ.js";import{a as Yt,d as Xt,m as Zt,n as Qt,u as $t}from"./schemas-CCWMleym.js";import{t as en}from"./tasks-DRmd6sWt.js";import{i as tn,n as nn,o as rn,s as an,t as on}from"./product-delivery-DRyD9_Xq.js";import{a as sn}from"./local-apps-Ck6kACsY.js";import{a as cn,c as ln,d as un}from"./api-oIK4hYkJ.js";import{a as dn,s as fn}from"./session-api-Bfmlmn9F.js";import{$ as pn,A as mn,B as hn,C as gn,D as _n,E as vn,F as yn,G as bn,H as xn,I as Sn,J as Cn,L as wn,M as Tn,N as En,O as Dn,P as On,Q as kn,R as An,S as jn,T as Mn,U as Nn,V as Pn,W as Fn,X as In,Y as Ln,Z as Rn,_ as zn,_t as Bn,b as Vn,d as Hn,dt as Un,et as Wn,ft as Gn,g as Kn,gt as qn,h as Jn,ht as Yn,it as Xn,j as Zn,k as Qn,l as $n,lt as er,m as tr,mt as nr,nt as rr,o as ir,ot as ar,pt as or,q as sr,r as cr,st as lr,t as ur,tt as dr,u as fr,ut as pr,v as mr,vt as hr,w as gr,x as _r,y as vr,z as yr}from"./session-manager-X4UHOjjO.js";import{a as br,d as xr,m as Sr,n as Cr,s as wr}from"./local-session-drafts-DTq9776a.js";import{t as Tr}from"./tool-activity-BtJkgjFf.js";import{a as Er,c as Dr,i as Or,l as kr,n as Ar,o as jr,r as Mr,s as Nr,t as Pr}from"./new-session-preferences-gb411vZP.js";import{a as Fr}from"./extension-provider-C4jLFIgh.js";import{n as Ir}from"./personal-proactivity-DaRnbB1f.js";import{i as Lr}from"./vendor-swr-CdRzEUwF.js";import{c as Rr,h as zr,i as Br,n as Vr,o as Hr,r as Ur,s as Wr,t as Gr,v as Kr}from"./use-composer-attachments-XRlQBdNF.js";import{a as qr}from"./gateway-config-swr-D6cc6W6E.js";import{t as Jr}from"./chat-agents-api-BB0biwc7.js";import{a as Yr,c as Xr,i as Zr,r as Qr,s as $r}from"./attachment-utils-core-BIOUBrpT.js";import{n as ei}from"./gateway-realtime-BSRNLciy.js";import{n as ti}from"./gateway-realtime-store-BFeFfApQ.js";import{n as ni,t as ri}from"./registry-api-Bl2guMRg.js";import{a as ii}from"./agents-admin-api-CXCAHNPj.js";import{t as ai}from"./button-Cc4hUNTt.js";import{s as oi}from"./file-preview-surface-zE9AcaHM.js";import{a as si,i as ci,o as li,r as ui,s as di}from"./dist-GJ8-1PAx.js";import{t as fi}from"./settings-shell-dialog-layer-BU3UuiJr.js";import{t as pi}from"./middleware-Pd0e8Igk.js";import{i as mi,r as hi}from"./app-link-DRy3-k7j.js";import{t as gi}from"./copy-to-clipboard-HOJ79TWv.js";import{a as _i,c as vi,d as yi,f as bi,g as xi,i as Si,m as Ci,n as wi,o as Ti,p as Ei,r as Di,s as Oi}from"./composer-payload-handoff-Bogdq9Hy.js";import{C as ki,D as Ai,E as ji,T as Mi,_ as Ni,b as Pi,c as Fi,d as Ii,f as Li,g as Ri,h as zi,m as Bi,n as Vi,o as Hi,p as Ui,r as Wi,s as Gi,u as Ki,v as qi,w as Ji,x as Yi,y as Xi}from"./chunk-D32TOXHM-DQIy-Baq.js";import{i as Zi,n as Qi,r as $i,t as ea}from"./chat-chart-block-QSvjx4w6.js";import{n as ta}from"./interaction-BdhHBbYa.js";import{i as na,n as ra,r as ia,t as aa}from"./tool-friendly-title-DcCc6g7o.js";import{s as oa}from"./connectors-api-DtvB9Cjm.js";import{t as sa}from"./activity-store-BpYGrRXw.js";import{n as ca}from"./voice-call-context-BM2A4bLz.js";import{r as la}from"./app-chrome-BeB4KgOf.js";import{i as ua,n as da,r as fa}from"./form-field-width-DJw_jULe.js";import{n as pa}from"./electron-env-DHOGevH3.js";import{t as ma}from"./page-header-store-CEn_kPsn.js";import{t as ha}from"./use-async-resource-BHFGZCY2.js";import{t as ga}from"./loopi-CNtmi9FU.js";import{t as _a}from"./agent-avatar-display-BUH7ljEo.js";import{n as va}from"./index.module-Cd9ENXfk.js";import{a as ya,n as ba,r as xa,t as Sa}from"./skill-wire-pattern-BPpeIcCi.js";import{n as Ca,t as wa}from"./use-directory-picker-C4p7AgWY.js";import{t as Ta}from"./confirm-dialog-D7dQJytv.js";import{a as Ea,c as Da,f as Oa,l as ka,s as Aa,u as ja}from"./workspace-api-HBXn8pL9.js";import{a as Ma,i as Na,o as Pa,r as Fa,s as Ia}from"./copy-text-row-CpiRzq4G.js";import{_ as La,b as Ra,d as za,f as Ba,h as Va,i as Ha,n as Ua,p as Wa,s as Ga,u as Ka,y as qa}from"./shares-api-DOeDN6Tm.js";import{t as Ja}from"./workspace-editor-agent-store-msZa42fU.js";import{l as Ya,m as Xa,o as Za,r as Qa,t as $a,u as eo}from"./dist-ZrL34Ps4.js";import{a as to,c as no,d as ro,f as io,h as ao,i as oo,l as so,m as co,p as lo,s as uo,t as fo,u as po}from"./command-palette-api-CEG10uE-.js";import{r as mo,t as ho}from"./model-selector-DXm4NS1_.js";import{n as go,o as _o,r as vo,s as yo}from"./voice-input-shortcut-events-B9xc1oK8.js";import{t as bo}from"./dev-view-store-BgW2Riyk.js";import{t as xo}from"./extension-iframe-host-63KpX6IP.js";import{i as So,t as Co}from"./automation-task-card-D27Mw66U.js";import{i as wo,r as To}from"./api-DMbimMEi.js";import{r as Eo,t as Do}from"./runtime-health-D2TDFLLq.js";import{r as Oo}from"./terminal-panel-store-BbWUcQe7.js";import{n as ko}from"./agents-app-path-ciChvpCS.js";import{n as Ao,t as jo}from"./agent-display-names-Bje7vfSn.js";import{t as Mo}from"./oauth-provider-connect-BkhnftBq.js";import{t as No}from"./use-media-query-ady-FgjK.js";import{n as Po,r as Fo,t as Io}from"./oauth-authorization-window-o6URRos4.js";import{n as Lo,t as Ro}from"./page-context-draft-BuNUerth.js";import{t as zo}from"./side-chat-shortcut-BIw-1TTD.js";var Bo=O(`arrow-down`,[[`path`,{d:`M12 5v14`,key:`s699le`}],[`path`,{d:`m19 12-7 7-7-7`,key:`1idqje`}]]),Vo=O(`ban`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M4.929 4.929 19.07 19.071`,key:`196cmz`}]]),Ho=O(`circle-question-mark`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3`,key:`1u773s`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]]),Uo=O(`corner-down-right`,[[`path`,{d:`m15 10 5 5-5 5`,key:`qqa56n`}],[`path`,{d:`M4 4v7a4 4 0 0 0 4 4h12`,key:`z08zvw`}]]),Wo=O(`file-headphone`,[[`path`,{d:`M4 6.835V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.706.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2h-.343`,key:`1vfytu`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M2 19a2 2 0 0 1 4 0v1a2 2 0 0 1-4 0v-4a6 6 0 0 1 12 0v4a2 2 0 0 1-4 0v-1a2 2 0 0 1 4 0`,key:`1etmh7`}]]),Go=O(`file-pen-line`,[[`path`,{d:`M14.364 13.634a2 2 0 0 0-.506.854l-.837 2.87a.5.5 0 0 0 .62.62l2.87-.837a2 2 0 0 0 .854-.506l4.013-4.009a1 1 0 0 0-3.004-3.004z`,key:`ukzhwg`}],[`path`,{d:`M14.487 7.858A1 1 0 0 1 14 7V2`,key:`1klhew`}],[`path`,{d:`M20 19.645V20a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l2.516 2.516`,key:`rxaxab`}],[`path`,{d:`M8 18h1`,key:`13wk12`}]]),Ko=O(`file-plus-corner`,[[`path`,{d:`M11.35 22H6a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.706.706l3.588 3.588A2.4 2.4 0 0 1 20 8v5.35`,key:`17jvcc`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M14 19h6`,key:`bvotb8`}],[`path`,{d:`M17 16v6`,key:`18yu1i`}]]),qo=O(`files`,[[`path`,{d:`M15 2h-4a2 2 0 0 0-2 2v11a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V8`,key:`14sh0y`}],[`path`,{d:`M16.706 2.706A2.4 2.4 0 0 0 15 2v5a1 1 0 0 0 1 1h5a2.4 2.4 0 0 0-.706-1.706z`,key:`1970lx`}],[`path`,{d:`M5 7a2 2 0 0 0-2 2v11a2 2 0 0 0 2 2h8a2 2 0 0 0 1.732-1`,key:`l4dndm`}]]),Jo=O(`git-commit-horizontal`,[[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}],[`line`,{x1:`3`,x2:`9`,y1:`12`,y2:`12`,key:`1dyftd`}],[`line`,{x1:`15`,x2:`21`,y1:`12`,y2:`12`,key:`oup4p8`}]]),Yo=O(`git-fork`,[[`circle`,{cx:`12`,cy:`18`,r:`3`,key:`1mpf1b`}],[`circle`,{cx:`6`,cy:`6`,r:`3`,key:`1lh9wr`}],[`circle`,{cx:`18`,cy:`6`,r:`3`,key:`1h7g24`}],[`path`,{d:`M18 9v2c0 .6-.4 1-1 1H7c-.6 0-1-.4-1-1V9`,key:`1uq4wg`}],[`path`,{d:`M12 12v3`,key:`158kv8`}]]),Xo=O(`grip-vertical`,[[`circle`,{cx:`9`,cy:`12`,r:`1`,key:`1vctgf`}],[`circle`,{cx:`9`,cy:`5`,r:`1`,key:`hp0tcf`}],[`circle`,{cx:`9`,cy:`19`,r:`1`,key:`fkjjf6`}],[`circle`,{cx:`15`,cy:`12`,r:`1`,key:`1tmaij`}],[`circle`,{cx:`15`,cy:`5`,r:`1`,key:`19l28e`}],[`circle`,{cx:`15`,cy:`19`,r:`1`,key:`f4zoj3`}]]),Zo=O(`layout-template`,[[`rect`,{width:`18`,height:`7`,x:`3`,y:`3`,rx:`1`,key:`f1a2em`}],[`rect`,{width:`9`,height:`7`,x:`3`,y:`14`,rx:`1`,key:`jqznyg`}],[`rect`,{width:`5`,height:`7`,x:`16`,y:`14`,rx:`1`,key:`q5h2i8`}]]),Qo=O(`list-plus`,[[`path`,{d:`M16 5H3`,key:`m91uny`}],[`path`,{d:`M11 12H3`,key:`51ecnj`}],[`path`,{d:`M16 19H3`,key:`zzsher`}],[`path`,{d:`M18 9v6`,key:`1twb98`}],[`path`,{d:`M21 12h-6`,key:`bt1uis`}]]),$o=O(`message-circle-more`,[[`path`,{d:`M2.992 16.342a2 2 0 0 1 .094 1.167l-1.065 3.29a1 1 0 0 0 1.236 1.168l3.413-.998a2 2 0 0 1 1.099.092 10 10 0 1 0-4.777-4.719`,key:`1sd12s`}],[`path`,{d:`M8 12h.01`,key:`czm47f`}],[`path`,{d:`M12 12h.01`,key:`1mp3jc`}],[`path`,{d:`M16 12h.01`,key:`1l6xoz`}]]),es=O(`message-circle-plus`,[[`path`,{d:`M2.992 16.342a2 2 0 0 1 .094 1.167l-1.065 3.29a1 1 0 0 0 1.236 1.168l3.413-.998a2 2 0 0 1 1.099.092 10 10 0 1 0-4.777-4.719`,key:`1sd12s`}],[`path`,{d:`M8 12h8`,key:`1wcyev`}],[`path`,{d:`M12 8v8`,key:`napkw2`}]]),ts=O(`message-square-share`,[[`path`,{d:`M12 3H4a2 2 0 0 0-2 2v16.286a.71.71 0 0 0 1.212.502l2.202-2.202A2 2 0 0 1 6.828 19H20a2 2 0 0 0 2-2v-4`,key:`11da1y`}],[`path`,{d:`M16 3h6v6`,key:`1bx56c`}],[`path`,{d:`m16 9 6-6`,key:`m4dnic`}]]),ns=O(`message-square-text`,[[`path`,{d:`M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z`,key:`18887p`}],[`path`,{d:`M7 11h10`,key:`1twpyw`}],[`path`,{d:`M7 15h6`,key:`d9of3u`}],[`path`,{d:`M7 7h8`,key:`af5zfr`}]]),rs=O(`notebook-pen`,[[`path`,{d:`M13.4 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-7.4`,key:`re6nr2`}],[`path`,{d:`M2 6h4`,key:`aawbzj`}],[`path`,{d:`M2 10h4`,key:`l0bgd4`}],[`path`,{d:`M2 14h4`,key:`1gsvsf`}],[`path`,{d:`M2 18h4`,key:`1bu2t1`}],[`path`,{d:`M21.378 5.626a1 1 0 1 0-3.004-3.004l-5.01 5.012a2 2 0 0 0-.506.854l-.837 2.87a.5.5 0 0 0 .62.62l2.87-.837a2 2 0 0 0 .854-.506z`,key:`pqwjuv`}]]),is=O(`shuffle`,[[`path`,{d:`m18 14 4 4-4 4`,key:`10pe0f`}],[`path`,{d:`m18 2 4 4-4 4`,key:`pucp1d`}],[`path`,{d:`M2 18h1.973a4 4 0 0 0 3.3-1.7l5.454-8.6a4 4 0 0 1 3.3-1.7H22`,key:`1ailkh`}],[`path`,{d:`M2 6h1.972a4 4 0 0 1 3.6 2.2`,key:`km57vx`}],[`path`,{d:`M22 18h-6.041a4 4 0 0 1-3.3-1.8l-.359-.45`,key:`os18l9`}]]),as=O(`square-plus`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M8 12h8`,key:`1wcyev`}],[`path`,{d:`M12 8v8`,key:`napkw2`}]]),os=O(`target`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`circle`,{cx:`12`,cy:`12`,r:`6`,key:`1vlfrh`}],[`circle`,{cx:`12`,cy:`12`,r:`2`,key:`1c9p78`}]]),ss=O(`wallet`,[[`path`,{d:`M19 7V4a1 1 0 0 0-1-1H5a2 2 0 0 0 0 4h15a1 1 0 0 1 1 1v4h-3a2 2 0 0 0 0 4h3a1 1 0 0 0 1-1v-2a1 1 0 0 0-1-1`,key:`18etb6`}],[`path`,{d:`M3 5v14a2 2 0 0 0 2 2h15a1 1 0 0 0 1-1v-4`,key:`xoc0q4`}]]);function cs(e,t){return e.replace(/\{\{(\w+)}}/g,(e,n)=>t[n]?.trim()??``).replace(/[ \t]{2,}/g,` `).trim()}function ls(e,t,n){return{id:e,title:cs(t.title,n),prompt:cs(t.prompt,n),reason:cs(t.reason,n)}}function us(e,t){let n={projectName:e.projectName,blockedReason:e.blockedReason,recentFailure:e.recentFailure,nextAction:e.recommendedAction};if(e.blockedReason?.trim())return ls(`project-blocked`,t.recommendations.projectBlocked,n);if(e.recentFailure?.trim())return ls(`project-failure`,t.recommendations.projectFailure,n);if(e.recommendedAction?.trim())return ls(`project-next-action`,t.recommendations.projectNextAction,n)}function ds(e,t){let n={taskTitle:e.taskTitle,attentionSummary:e.attentionSummary,recentFailure:e.recentFailure,nextAction:e.nextAction};if(e.attentionSummary?.trim())return ls(`task-attention`,t.recommendations.taskAttention,n);if(e.recentFailure?.trim())return ls(`task-failure`,t.recommendations.taskFailure,n);if(e.phase===`review`||e.operationalState===`verifying`)return ls(`task-review`,t.recommendations.taskReview,n);if(e.phase===`closed`)return ls(`task-closed`,t.recommendations.taskClosed,n);if(e.nextAction?.trim())return ls(`task-next-action`,t.recommendations.taskNextAction,n)}function fs(e,t){switch(e.kind){case`project`:return us(e,t);case`task`:return ds(e,t);default:return}}function ps(e,t,n={}){let r=n.contextStatus??`ready`;return{headline:e.kind===`project`&&t.projectHeadline?cs(t.projectHeadline,{projectName:e.projectName}):t.headline,contextKind:e.kind,contextStatus:r,recommendation:r===`ready`?fs(e,t):void 0}}var ms=Xt({id:Zt().uuid(),conversationId:Zt(),transcriptId:Zt(),sourceRunId:Zt(),inputRevision:$t().int().nonnegative(),transcriptCursor:$t().int().nonnegative(),agentId:Zt(),locale:Qt([`zh`,`en`]),prompt:Zt().min(1).max(160),expiresAt:$t()}),hs=Xt({status:Qt([`ready`,`pending`,`none`]),suggestion:ms.optional()});Xt({suggestionId:Zt().uuid(),impressionId:Zt().uuid(),event:Qt([`shown`,`accepted`,`dismissed`,`submitted`]),edited:Yt().optional()}).strict();function gs(e,t,n){for(let r of[n,t])if(e.options.includes(r))return r;return e.initialValue}function _s(e,t=`body`){return`result:${encodeURIComponent(e)}:${encodeURIComponent(t)}`}function vs(e){return`${e.taskRunId}:${e.assignmentEpoch}:${e.outcome.outcomeId}`}var ys=e(r(),1),Y=i(),X=a(),Z=e(n(),1);function bs(e,t){return e?[`task-detail`,e,t??``]:null}function xs(e,t){return t.source!==`user`||e===void 0||t.version>e}function Ss(e){let t=m(e=>e.conversationId),[n,r]=(0,Z.useState)(null),[i,a]=(0,Z.useState)(!1),[o,s]=(0,Z.useState)(null),c=(0,Z.useRef)(``),l=(0,Z.useRef)(void 0),u=Lr(bs(e,t),()=>Kr(e),{keepPreviousData:!1,revalidateOnFocus:!0,revalidateOnReconnect:!0,refreshInterval:e=>e&&[`allocating`,`queued`,`running`,`waiting`,`verifying`].includes(e.operationalState)?5e3:0});return l.current=u.data?.task.version,(0,Z.useEffect)(()=>{r(null),a(!1),s(null),c.current=``},[e]),(0,Z.useEffect)(()=>{let t=u.data;if(!t||t.conversation.activeConversationId||t.allocation&&t.allocation.status!==`assigned`)return;let n=`${e}:${t.task.version}`;c.current!==n&&(c.current=n,a(!0),s(null),zr(e).then(()=>c.current===n?u.mutate():void 0).catch(e=>{c.current===n&&s(e)}).finally(()=>{c.current===n&&a(!1)}))},[u.data,u.mutate,e]),(0,Z.useEffect)(()=>{let t,n=()=>{window.clearTimeout(t),t=window.setTimeout(()=>void u.mutate(),120)},i=t=>{let i=en.safeParse(t.detail);!i.success||i.data.taskId!==e||xs(l.current,i.data)&&(r(i.data),n())},a=()=>n();return window.addEventListener(`task-changed-v2`,i),window.addEventListener(`gateway-realtime-connected`,a),window.addEventListener(`realtime-gap`,a),()=>{window.clearTimeout(t),window.removeEventListener(`task-changed-v2`,i),window.removeEventListener(`gateway-realtime-connected`,a),window.removeEventListener(`realtime-gap`,a)}},[u.mutate,e]),{...u,lastChange:n,conversationLoading:i,conversationError:o}}var Cs=new Map,ws=new Set;function Ts(e,t){Cs.set(e,t);for(let e of ws)e();return()=>{Cs.get(e)===t&&Cs.delete(e)}}async function Es(e,t,n){await(Cs.get(e)??await new Promise((t,n)=>{let r=()=>{let n=Cs.get(e);n&&(clearTimeout(i),ws.delete(r),t(n))},i=setTimeout(()=>{ws.delete(r),n(Error(`Chat input is not ready. Please retry.`))},15e3);ws.add(r),r()}))(t,n)}var Ds=crypto.randomUUID(),Os=e=>e===`closed`;function ks(e,t){let n=e,r=n?.code??n?.body?.error?.code,i={PHONE_CONTROL_BUSY:`另一设备正在操作手机,请等待其结束控制。`,PHONE_DEVICE_BUSY:`手机正被其他聊天或人工操作占用,本次操作尚未开始。请查看当前任务,等待或明确停止后再试。`,PHONE_OBSERVE_ONLY:`此入口仅支持查看手机画面,请在来源聊天中操作或接管手机。`,PHONE_CONTROL_CHANGED:`手机控制权已变化,本次操作未继续。请查看最新状态后重新接管。`,PHONE_CONTROL_REQUIRED:`当前窗口没有手机操作权,请先接管手机。`,PHONE_CONTROL_STALE:`手机控制状态已更新,请等待状态刷新后再操作。`,PHONE_DISPATCH_UNKNOWN:`上一条手机输入的结果尚未确认,请先检查手机,避免重复执行。`,PHONE_FRAME_STALE:`手机画面已变化,请等待新画面后再操作。`,PHONE_APP_DENIED:`当前页面不在授权应用范围内,请返回授权应用。`,PHONE_SESSION_NOT_FOUND:`手机连接或来源聊天已变化,请刷新手机面板。`,PHONE_PAUSED:`手机任务已暂停,请检查手机状态并明确交回控制权后继续。`,PHONE_DEVICE_OFFLINE:`手机暂未连接,任务进度已保留。请连接手机后重试。`,PHONE_BINDING_CHANGED:`手机或 Agent 设置已变化,任务进度已保留。请检查设备和模型设置后重试。`,PHONE_ASSISTANCE_CHANGED:`待接管任务已更新,请刷新状态后操作。`};return t&&r&&i[r]?i[r]:n?.message??(t?`无法完成手机操作,请检查连接状态。`:`Phone operation failed. Check the connection.`)}var As=e=>`/api/phone/conversations/${encodeURIComponent(e)}`,js=new Map,Ms=()=>{let e=m.getState();return`${e.baseUrl}:${e.conversationId}`};function Ns(e,t,n=Ms()){let r=`${n}:${e}`,i=js.get(r);return t&&i&&t.report.sessionId===i.report.sessionId&&(t.report.revision??0)<(i.report.revision??0)?i:(t?(js.set(r,t),js.size>100&&js.delete(js.keys().next().value)):js.delete(r),t)}async function Ps(e,t=Ms()){let n=await f(p(e)),r=decodeURIComponent(e.split(`/conversations/`)[1]?.split(`?`)[0]??``);if(n.status===404)return Ns(r,null,t);if((n.status===401||n.status===403)&&Ns(r,null,t),!n.ok)throw Object.assign(Error(`Phone view unavailable (HTTP ${n.status})`),{status:n.status});return Ns(r,(await n.json()).payload,t)}function Fs(e,t){let n=(0,Y.c)(5),r=t===void 0||t,i=m(Rs),a;n[0]!==e||n[1]!==r||n[2]!==i?(a=r&&/^(?:device:)?[\da-f]{8}-[\da-f-]{27}$/i.test(e)?[`${As(e)}?clientId=${Ds}`,i]:null,n[0]=e,n[1]=r,n[2]=i,n[3]=a):a=n[3];let o;return n[4]===Symbol.for(`react.memo_cache_sentinel`)?(o={refreshInterval:1200,revalidateOnFocus:!0,shouldRetryOnError:Is,errorRetryCount:6,errorRetryInterval:2e3,refreshWhenHidden:!1},n[4]=o):o=n[4],Lr(a,Ls,o)}function Is(e){return e.status!==401&&e.status!==403}function Ls(e){let[t,n]=e;return Ps(t,n)}function Rs(e){return`${e.baseUrl}:${e.conversationId}`}async function zs(e,t,n,r={},i=!1){let a=Ms();return Ns(e,(await g(p(`${As(e)}/${t.report.sessionId}/control`),{method:`POST`,keepalive:i,body:JSON.stringify({expectedTranscriptId:t.report.transcriptId,clientId:Ds,assistanceId:t.report.assistanceId,assistanceVersion:t.report.assistanceVersion,operationId:crypto.randomUUID(),epoch:t.report.controlEpoch,op:n,...r})})).payload,a)}async function Bs(e,t,n){let r=await f(p(`${As(e)}/${t}/frame`),{signal:n});if(!r.ok){let e=await r.json().catch(()=>({}));throw Object.assign(Error(e.error?.message??`HTTP ${r.status}`),{status:r.status,code:e.error?.code})}return{blob:await r.blob(),seq:Number(r.headers.get(`X-Phone-Frame-Seq`)),capturedAt:Number(r.headers.get(`X-Phone-Captured-At`)),width:Number(r.headers.get(`X-Phone-Width`)),height:Number(r.headers.get(`X-Phone-Height`))}}function Vs(e,t,n,r,i){let a=Math.min(e.width/t,e.height/n),o=t*a,s=n*a,c=r-e.left-(e.width-o)/2,l=i-e.top-(e.height-s)/2;return!a||c<0||l<0||c>o||l>s?null:[Math.round(c/o*1e3),Math.round(l/s*1e3)]}async function Hs(e,t,n,r=!1){return(await g(p(`${As(e)}/${t.report.sessionId}/execution-mode`),{method:`POST`,body:JSON.stringify({executionMode:n,applyCurrent:r,epoch:t.report.controlEpoch,clientId:Ds})})).payload}function Us(e,t){if(!t.assistanceId||![`needs_user`,`paused`].includes(t.status))return null;let n=m.getState();return JSON.stringify([n.baseUrl,n.conversationId,e,t.transcriptId,t.assistanceId,t.assistanceVersion??1])}var Ws=_(pi(e=>({seen:[],markSeen:t=>e(e=>e.seen.includes(t)?e:{seen:[...e.seen.slice(-99),t]})}),{name:`xopc-phone-attention-v1`}));function Gs(e){let t=(0,Y.c)(15),{detail:n,language:r}=e,i;t[0]===n?i=t[1]:(i=xi(n),t[0]=n,t[1]=i);let a=i,o=r===`zh`,s=a.receipt?.status===`failed`?o?`最近一轮执行失败`:`Latest run failed`:a.receipt?.status===`cancelled`?o?`最近一轮执行已取消`:`Latest run canceled`:a.receipt?o?`最近一轮执行已结束`:`Latest run ended`:o?`尚无本版任务的执行结果`:`No run result for this task version`,c=o?`执行、验收与交付`:`Execution, acceptance and delivery`,l=n.task.phase===`closed`?``:o?`;任务仍未关闭`:`; task remains open`,u;t[2]!==s||t[3]!==l?(u=(0,X.jsxs)(`p`,{children:[s,l]}),t[2]=s,t[3]=l,t[4]=u):u=t[4];let d=o?`验收:${a.verified}/${a.criteria} 项通过`:`Acceptance: ${a.verified}/${a.criteria} criteria passed`,f=a.criteria===0?o?`,尚未定义验收标准`:`; criteria not defined`:``,p;t[5]!==d||t[6]!==f?(p=(0,X.jsxs)(`p`,{children:[d,f]}),t[5]=d,t[6]=f,t[7]=p):p=t[7];let m=a.deliverables>0?o?`已关联交付物:${a.deliverables} 项`:`Linked deliverables: ${a.deliverables}`:o?`尚无正式交付物`:`No formal deliverables linked`,h;t[8]===m?h=t[9]:(h=(0,X.jsx)(`p`,{children:m}),t[8]=m,t[9]=h);let g;return t[10]!==c||t[11]!==u||t[12]!==p||t[13]!==h?(g=(0,X.jsxs)(`div`,{className:`mt-3 space-y-1 border-t border-edge-subtle pt-3 text-xs leading-5 text-fg-muted`,"aria-label":c,children:[u,p,h]}),t[10]=c,t[11]=u,t[12]=p,t[13]=h,t[14]=g):g=t[14],g}var Ks=(0,Z.memo)(function(e){let t=(0,Y.c)(58),{taskId:n}=e,r=c(),i=h(qs),a;t[0]===i?a=t[1]:(a=yi(i),t[0]=i,t[1]=a);let o=a,{data:s}=Ss(n);if(!s)return null;let{task:l,operationalState:d}=s,f,p,m,g;if(t[2]!==o.noDecisionNeeded||t[3]!==s||t[4]!==d||t[5]!==l.phase){let e=bi(s);m=s.attention.length>0;let n;t[10]!==d||t[11]!==l.phase?(n=l.phase!==`closed`&&[`queued`,`running`,`verifying`].includes(d),t[10]=d,t[11]=l.phase,t[12]=n):n=t[12],p=n,f=m?s.attention[0]?.summary??e?.nextAction??e?.summary:l.phase===`closed`?e?.summary:e?.nextAction??e?.summary??o.noDecisionNeeded,g=e?.evidence.filter(Js).length??0,t[2]=o.noDecisionNeeded,t[3]=s,t[4]=d,t[5]=l.phase,t[6]=f,t[7]=p,t[8]=m,t[9]=g}else f=t[6],p=t[7],m=t[8],g=t[9];let _=g,v=o.taskProgress.title,y;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(y=(0,X.jsx)(os,{className:`size-4`,"aria-hidden":!0}),t[13]=y):y=t[13];let b;t[14]===p?b=t[15]:(b=p?(0,X.jsx)(`span`,{className:`absolute -right-0.5 -top-0.5 size-2.5 rounded-full border-2 border-surface-panel bg-accent motion-safe:animate-pulse`}):null,t[14]=p,t[15]=b);let x;t[16]===b?x=t[17]:(x=(0,X.jsxs)(`span`,{className:`relative mt-0.5 flex size-8 shrink-0 items-center justify-center rounded-full bg-accent-soft text-accent-fg`,children:[y,b]}),t[16]=b,t[17]=x);let S;t[18]===o.taskProgress.title?S=t[19]:(S=(0,X.jsx)(`span`,{className:`text-xs font-medium text-fg-muted`,children:o.taskProgress.title}),t[18]=o.taskProgress.title,t[19]=S);let C;t[20]===s?C=t[21]:(C=J(`rounded-full border px-1.5 py-0.5 text-[10px] font-medium`,Ci(Ei(s))),t[20]=s,t[21]=C);let w=o.detailStatuses[Ei(s)],T;t[22]!==C||t[23]!==w?(T=(0,X.jsx)(`span`,{className:C,children:w}),t[22]=C,t[23]=w,t[24]=T):T=t[24];let E;t[25]!==o.taskProgress.evidence||t[26]!==_?(E=_>0?(0,X.jsxs)(`span`,{className:`text-[11px] text-fg-muted`,children:[_,` `,o.taskProgress.evidence]}):null,t[25]=o.taskProgress.evidence,t[26]=_,t[27]=E):E=t[27];let D;t[28]!==T||t[29]!==E||t[30]!==S?(D=(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[S,T,E]}),t[28]=T,t[29]=E,t[30]=S,t[31]=D):D=t[31];let O;t[32]===l.title?O=t[33]:(O=(0,X.jsx)(`p`,{className:`mt-1 text-sm font-medium leading-5 text-fg`,children:l.title}),t[32]=l.title,t[33]=O);let k;t[34]===f?k=t[35]:(k=f?(0,X.jsx)(`p`,{className:`mt-1 line-clamp-2 text-xs leading-5 text-fg-muted`,children:f}):null,t[34]=f,t[35]=k);let A;t[36]!==D||t[37]!==O||t[38]!==k?(A=(0,X.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[D,O,k]}),t[36]=D,t[37]=O,t[38]=k,t[39]=A):A=t[39];let j=`${r.pathname}${r.search}`,M;t[40]!==j||t[41]!==l.id?(M=et(j,l.id),t[40]=j,t[41]=l.id,t[42]=M):M=t[42];let N=m?o.taskProgress.decide:o.taskProgress.open,P;t[43]===Symbol.for(`react.memo_cache_sentinel`)?(P=(0,X.jsx)(xe,{className:`size-3.5`,"aria-hidden":!0}),t[43]=P):P=t[43];let F;t[44]!==M||t[45]!==N?(F=(0,X.jsxs)(u,{to:M,className:`inline-flex shrink-0 items-center gap-1 rounded-md px-2 py-1.5 text-xs font-medium text-accent hover:bg-accent-soft focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,children:[N,P]}),t[44]=M,t[45]=N,t[46]=F):F=t[46];let I;t[47]!==A||t[48]!==F||t[49]!==x?(I=(0,X.jsxs)(`div`,{className:`flex items-start gap-3`,children:[x,A,F]}),t[47]=A,t[48]=F,t[49]=x,t[50]=I):I=t[50];let L;t[51]!==s||t[52]!==i?(L=(0,X.jsx)(Gs,{detail:s,language:i}),t[51]=s,t[52]=i,t[53]=L):L=t[53];let R;return t[54]!==o.taskProgress.title||t[55]!==I||t[56]!==L?(R=(0,X.jsxs)(`section`,{className:`mb-6 rounded-xl border border-edge bg-surface-panel px-3 py-3 sm:px-4`,"aria-label":v,"aria-live":`polite`,children:[I,L]}),t[54]=o.taskProgress.title,t[55]=I,t[56]=L,t[57]=R):R=t[57],R});function qs(e){return e.language}function Js(e){return e.strength===`verified`}function Ys(e){return e===-5||e===-4||e===-3?`
|
|
3
3
|
`:e<0?` `:String.fromCharCode(e)}var Xs={partial:!0,tokenize(e,t,n){let r=this;return i=>i===null?t(i):(e.enter(`lineEnding`),e.consume(i),e.exit(`lineEnding`),e=>r.parser.lazy[r.now().line]?n(e):t(e))}};function Zs(e){return function(t,n,r){let i=this,a=``,o=!1,s=!1,c=!1,l=e?`xopcMathFlow`:`xopcMathInline`;return u;function u(e){return t.enter(l),f(e)}function d(i){return(e?rt(a):Qe(a))?(c&&t.exit(`xopcMathValue`),t.exit(l),n(i)):r(i)}function f(n){if(n===null)return d(n);let l=Ys(n);if(l===`
|
|
4
4
|
`)return e&&i.interrupt||!e||o?d(n):(c&&t.exit(`xopcMathValue`),c=!1,t.attempt(Xs,e=>(a+=`
|
|
5
5
|
`,s=!1,f(e)),e=>d(e))(n));if(o){if(!e)return/\d/.test(l)&&a.startsWith(`$`)?r(n):d(n);if(l!==` `&&l!==` `)return r(n)}if(c||=(t.enter(`xopcMathValue`),!0),t.consume(n),a+=l,l===`
|
|
@@ -13,7 +13,7 @@ import{i as e,n as t}from"./rolldown-runtime-aKtaBQYM.js";import{a as n,i as r,n
|
|
|
13
13
|
|
|
14
14
|
`).trim()}function im(e){if(!e.trim())return``;let t=ut.parse(e,{gfm:!0,breaks:!1});return new DOMParser().parseFromString(`<div>${t}</div>`,`text/html`).body.textContent?.trim()??``}function am(e){let t=[],n=new Set(Fn(e,{includePending:!0}));for(let r of e)if(r.type===`text`){if(!n.has(r))continue;t.push(im(r.text))}else r.type===`image`&&t.push(`[image]`);return t.join(`
|
|
15
15
|
|
|
16
|
-
`).trim()}var om=new WeakMap,sm=new WeakMap,cm=new WeakMap,lm=new WeakMap;function um(e,t){if(!e)return;let n=e=>{let t=cm.get(e);return t||(t=new Map(e.content.flatMap(e=>{let t=rr(e);return t?[[t,e]]:[]})),cm.set(e,t)),t},r=e.streamingMsg&&n(e.streamingMsg).get(t);if(r)return r;let i=lm.get(e.messages);if(!i){i=new Map;for(let t of e.messages)for(let[e,r]of n(t))i.set(e,r);lm.set(e.messages,i)}return i.get(t)}function dm(e,t){return e===t?!0:!e||!t||e.content.length!==t.content.length||!e.content.every((e,n)=>{let r=t.content[n];return e===r||e.type===`text`&&r.type===`text`&&rr(e)===rr(r)&&e.segmentId===r.segmentId&&e.presentation===r.presentation&&!!e.text.trim()==!!r.text.trim()&&(e.text===r.text||![e.text,r.text].some(e=>{let t=e.trimStart();return t.startsWith(`NO_REPLY`)||t.length>0&&`NO_REPLY`.startsWith(t)}))})?!1:[...new Set([...Object.keys(e),...Object.keys(t)])].every(n=>n===`content`||e[n]===t[n])}function fm(){let e;return t=>(dm(e??null,t??null)||(e=t),e)}function pm(e,t){if(!e)return;let n=e.streamingMsg;if(n?.renderKey===t){let t=e.messages.at(-1);if(t?.role!==`assistant`)return n;let r=sm.get(n);if(r?.previous===t)return r.row;let i=Xn([t,n]).at(-1);return sm.set(n,{previous:t,row:i}),i}let r=om.get(e.messages);return r||(r=new Map(e.messages.filter(e=>e.renderKey).map(e=>[e.renderKey,e])),om.set(e.messages,r)),r.get(t)}function mm(){let e;return t=>{if(!t||!e)return e=t,t;let n=dm(e.streamingMsg,t.streamingMsg);return n&&Object.keys(t).every(n=>n===`streamingMsg`||e[n]===t[n])||(e=n?{...t,streamingMsg:e.streamingMsg}:t),e}}function hm(e){let t=(0,Y.c)(3),n;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(n=mm(),t[0]=n):n=t[0];let r=n,i;t[1]===e?i=t[2]:(i=()=>r(e?Mn.getState().sessions[e]:void 0),t[1]=e,t[2]=i);let a=i;return(0,Z.useSyncExternalStore)(Mn.subscribe,a,a)}function gm(e,t){let n=(0,Z.useMemo)(()=>{let n=t();return{read:()=>n,subscribe:r=>{let i=null,a=null,o=()=>{i!==null&&cancelAnimationFrame(i),a!==null&&clearTimeout(a),i=null,a=null},s=()=>{o();let e=t();n!==e&&(n=e,r())},c=Mn.subscribe((r,o)=>{if(t()===n)return;let c=e?r.sessions[e]:void 0,l=e?o.sessions[e]:void 0;if(c?.streaming!==l?.streaming||c?.messages!==l?.messages){s();return}i===null&&(i=requestAnimationFrame(s),a=setTimeout(s,50))});return s(),()=>{o(),c()}}}},[e,t]);return(0,Z.useSyncExternalStore)(n.subscribe,n.read,n.read)}function _m(e,t){let n=(0,Y.c)(4),r;n[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=fm(),n[0]=r):r=n[0];let i=r,a;return n[1]!==e||n[2]!==t?(a=()=>i(e&&t?pm(Mn.getState().sessions[e],t):void 0),n[1]=e,n[2]=t,n[3]=a):a=n[3],gm(e,a)}function vm(e,t){let n=(0,Y.c)(3),r;return n[0]!==e||n[1]!==t?(r=()=>e&&t?um(Mn.getState().sessions[e],t):void 0,n[0]=e,n[1]=t,n[2]=r):r=n[2],gm(e,r)}function ym(e,t){let n=(0,Y.c)(7),r;n[0]===t?r=n[1]:(r=t.join(`,`),n[0]=t,n[1]=r);let i=r,a;n[2]===i?a=n[3]:(a=i?i.split(`,`):[],n[2]=i,n[3]=a);let o=a,s;return n[4]!==e||n[5]!==o?(s=()=>{if(!e||!o.length)return;let t=Mn.getState().sessions[e],n=o.map(e=>um(t,e));if(!n.some(xm))return n.map(bm).join(``)},n[4]=e,n[5]=o,n[6]=s):s=n[6],gm(e,s)}function bm(e){return e?.type===`text`?e.text:``}function xm(e){return e?.type!==`text`}function Sm(e){let t=[];((n,r)=>{let i=new RegExp(n.source,n.flags),a;for(;(a=i.exec(e))!==null;)t.push({start:a.index,end:a.index+a[0].length,seg:r(a)})})(ya(),e=>({kind:`skill`,name:e[1]??``}));for(let n of po(e))t.push({start:n.start,end:n.end,seg:{kind:`command`,name:e.slice(n.start+1,n.end)}});t.sort((e,t)=>e.start===t.start?t.end-e.end:e.start-t.start);let n=[],r=0;for(let i of t)i.start<r||(i.start>r&&n.push({kind:`text`,text:e.slice(r,i.start)}),n.push(i.seg),r=i.end);return r<e.length&&n.push({kind:`text`,text:e.slice(r)}),n.length===0&&n.push({kind:`text`,text:e}),n}function Cm(e){return e.kind===`text`?`t:${e.text}`:e.kind===`skill`?`s:${e.name}`:e.kind===`context_ref`?`r:${e.refId}`:`c:${e.name}`}function wm(e,t){let n=e[t-1],r=e[t-2],i=e[t+1],a=n?.kind===`text`&&n.text.trim()===``&&r!==void 0&&r.kind!==`text`;return J(n?.kind===`text`&&/\s$/u.test(n.text)&&!a&&`ms-1`,i?.kind===`text`&&/^\s/u.test(i.text)&&`me-1`)}function Tm(e){let t=(0,Y.c)(6),{contextRef:n}=e;if(n?.kind===`file`&&n.fileKind===`directory`){let e;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,X.jsx)(Oe,{className:`size-3.5 shrink-0`,"aria-hidden":!0}),t[0]=e):e=t[0],e}if(n?.kind===`file`){let e;return t[1]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,X.jsx)(Te,{className:`size-3.5 shrink-0`,"aria-hidden":!0}),t[1]=e):e=t[1],e}if(n?.kind===`session`){let e;return t[2]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,X.jsx)(xt,{className:`size-3.5 shrink-0`,"aria-hidden":!0}),t[2]=e):e=t[2],e}if(n?.kind===`browser_tab`){let e;return t[3]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,X.jsx)(k,{className:`size-3.5 shrink-0`,"aria-hidden":!0}),t[3]=e):e=t[3],e}if(n?.kind===`mcp_resource`){let e;return t[4]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,X.jsx)(ve,{className:`size-3.5 shrink-0`,"aria-hidden":!0}),t[4]=e):e=t[4],e}let r;return t[5]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,X.jsx)(rs,{className:`size-3.5 shrink-0`,"aria-hidden":!0}),t[5]=r):r=t[5],r}var Em=(0,Z.memo)(function(e){let t=(0,Y.c)(24),{text:n,conversationId:r,document:i,contextRefs:a}=e,o=h(Dm),s;t[0]===o?s=t[1]:(s=y(o),t[0]=o,t[1]=s);let c=s.chat.referenceFallback,l;bb0:{if(!i){let e;t[2]===n?e=t[3]:(e=Sm(n),t[2]=n,t[3]=e),l=e;break bb0}let e;if(t[4]!==a||t[5]!==i.parts){let n=new Map(a?.flatMap(Om)??[]);e=i.parts.flatMap(e=>e.type===`text`?Sm(e.text):[{kind:`context_ref`,refId:e.refId,ref:n.get(e.refId)}]),t[4]=a,t[5]=i.parts,t[6]=e}else e=t[6];l=e}let u=l,d;if(t[7]!==u){let e=new Map;d=u.map(t=>{let n=Cm(t),r=e.get(n)??0;return e.set(n,r+1),{part:t,key:`${n}#${String(r)}`}}),t[7]=u,t[8]=d}else d=t[8];let f=d,p;t[9]===u?p=t[10]:(p=u.some(km),t[9]=u,t[10]=p);let m=bp(void 0,r,p);if(!u.some(Am)){let e;return t[11]===n?e=t[12]:(e=(0,X.jsx)(`div`,{className:`markdown-content min-w-0`,children:(0,X.jsx)(Ld,{content:n,compact:!0,breaks:!0})}),t[11]=n,t[12]=e),e}let g;if(t[13]!==u||t[14]!==f||t[15]!==c||t[16]!==m){let e;t[18]!==u||t[19]!==c||t[20]!==m?(e=(e,t)=>{let{part:n,key:r}=e;return n.kind===`skill`?(0,X.jsxs)(`span`,{className:`chat-skill-pill max-w-full shrink-0`,"data-skill":n.name,title:`/${n.name}`,children:[`/`,m(n.name)]},r):n.kind===`command`?(0,X.jsxs)(`span`,{className:`chat-command-pill max-w-full shrink-0`,"data-slash-command":n.name,children:[`/`,n.name]},r):n.kind===`context_ref`?(0,X.jsxs)(`span`,{className:J(`chat-context-ref-pill chat-context-ref-pill-message max-w-full shrink-0`,wm(u,t)),"data-context-ref-id":n.refId,"data-ref-kind":n.ref?.kind??``,"data-file-kind":n.ref?.fileKind??``,title:n.ref?.title,"aria-label":n.ref?.title??c,children:[(0,X.jsx)(Tm,{contextRef:n.ref}),(0,X.jsx)(`span`,{className:`min-w-0 truncate`,children:n.ref?.title??c})]},r):n.text?(0,X.jsx)(`div`,{className:`chat-user-message-segment markdown-content inline-block min-w-0 max-w-full align-baseline text-fg`,children:(0,X.jsx)(Ld,{content:n.text,compact:!0,breaks:!0})},r):null},t[18]=u,t[19]=c,t[20]=m,t[21]=e):e=t[21],g=f.map(e),t[13]=u,t[14]=f,t[15]=c,t[16]=m,t[17]=g}else g=t[17];let _;return t[22]===g?_=t[23]:(_=(0,X.jsx)(`span`,{className:`inline-flex max-w-full flex-wrap items-baseline gap-x-0 gap-y-1 [text-align:inherit]`,children:g}),t[22]=g,t[23]=_),_});function Dm(e){return e.language}function Om(e){return e.refId?[[e.refId,e]]:[]}function km(e){return e.kind===`skill`}function Am(e){return e.kind!==`text`}function jm(e,t){switch(e.code){case`provider_setup_required`:return{title:t.providerSetupRequiredTitle,body:t.providerSetupRequiredBody.replace(`{{provider}}`,e.provider??t.agentRunErrorUnknownProvider),cta:t.providerSetupRequiredCta,deepLink:`/settings/capabilities/models`};case`provider_auth_invalid`:return{title:t.agentRunErrorAuthInvalidTitle,body:t.agentRunErrorAuthInvalidBody.replace(`{{provider}}`,e.provider??t.agentRunErrorUnknownProvider),cta:t.agentRunErrorCtaProviders,deepLink:`/settings/capabilities/models`};case`rate_limit`:return{title:t.agentRunErrorRateLimitTitle,body:t.agentRunErrorRateLimitBody};case`timeout`:return{title:t.agentRunErrorTimeoutTitle,body:t.agentRunErrorTimeoutBody};case`billing`:return{title:t.agentRunErrorBillingTitle,body:t.agentRunErrorBillingBody};case`credit_budget_exhausted`:return{title:t.creditBudgetExhaustedTitle,body:t.creditBudgetExhaustedBody,cta:t.creditBudgetSettingsCta,deepLink:`/settings/agent-defaults?panel=runtime`};case`model_quota_exhausted`:return{title:t.xopcQuotaExhaustedTitle,body:t.xopcQuotaExhaustedBody};case`platform_token_limit_exceeded`:return{title:t.xopcPlatformLimitTitle,body:t.xopcPlatformLimitBody,cta:t.xopcPlatformLimitCta,deepLink:`/settings/capabilities/models?add=1`};case`send_failed`:return{title:t.agentRunErrorSendFailedTitle,body:t.agentRunErrorSendFailedBody};case`session_not_found`:return{title:t.sessionNotFoundTitle,body:t.sessionNotFoundBody,cta:t.sessionNotFoundCta,deepLink:`/chat/new`};default:return{title:t.agentRunErrorUnknownTitle,body:t.agentRunErrorUnknownBody}}}function Mm(e){let t=(0,Y.c)(4),{code:n}=e;switch(n){case`provider_setup_required`:case`provider_auth_invalid`:{let e;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,X.jsx)(We,{className:`size-4`,strokeWidth:1.75}),t[0]=e):e=t[0],e}case`rate_limit`:case`timeout`:{let e;return t[1]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,X.jsx)(pe,{className:`size-4`,strokeWidth:1.75}),t[1]=e):e=t[1],e}case`billing`:case`credit_budget_exhausted`:case`model_quota_exhausted`:case`platform_token_limit_exceeded`:{let e;return t[2]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,X.jsx)(ss,{className:`size-4`,strokeWidth:1.75}),t[2]=e):e=t[2],e}default:{let e;return t[3]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,X.jsx)(ce,{className:`size-4`,strokeWidth:1.75}),t[3]=e):e=t[3],e}}}function Nm(e){return e===`provider_setup_required`||e===`provider_auth_invalid`||e===`rate_limit`||e===`timeout`||e===`billing`||e===`model_quota_exhausted`||e===`platform_token_limit_exceeded`||e===`session_not_found`?`amber`:`red`}function Pm(e){let t=(0,Y.c)(46),{payload:n}=e,r=d(),i=h(Im),a,o;t[0]!==i||t[1]!==n?(a=y(i).chat,o=jm(n,a),t[0]=i,t[1]=n,t[2]=a,t[3]=o):(a=t[2],o=t[3]);let s=o,c=Nm(n.code),l=c===`amber`?`border-amber-300/60 bg-amber-50 dark:border-amber-500/30 dark:bg-amber-950`:`border-red-300/60 bg-red-50 dark:border-red-500/30 dark:bg-red-950`,u=c===`amber`?`bg-amber-100 text-amber-700 dark:bg-amber-500/20 dark:text-amber-300`:`bg-red-100 text-red-700 dark:bg-red-500/20 dark:text-red-300`,f=c===`amber`?`text-amber-900 dark:text-amber-100`:`text-red-900 dark:text-red-100`,p=c===`amber`?`text-amber-900/85 dark:text-amber-100/80`:`text-red-900/85 dark:text-red-100/80`,m=c===`amber`?`text-amber-800/80 hover:text-amber-900 dark:text-amber-200/80 dark:hover:text-amber-100`:`text-red-800/80 hover:text-red-900 dark:text-red-200/80 dark:hover:text-red-100`,g=c===`amber`?`bg-amber-100/60 text-amber-900 dark:bg-amber-500/15 dark:text-amber-100`:`bg-red-100/60 text-red-900 dark:bg-red-500/15 dark:text-red-100`,_=c===`amber`?`bg-amber-600 text-white hover:bg-amber-700 dark:bg-amber-500 dark:text-amber-950 dark:hover:bg-amber-400`:`bg-red-600 text-white hover:bg-red-700 dark:bg-red-500 dark:text-red-950 dark:hover:bg-red-400`,v=n.code===`model_quota_exhausted`,b=Fm,x;t[4]===l?x=t[5]:(x=J(`flex flex-col gap-2 rounded-xl border p-3`,l),t[4]=l,t[5]=x);let S;t[6]===u?S=t[7]:(S=J(`flex size-8 shrink-0 items-center justify-center rounded-lg`,u),t[6]=u,t[7]=S);let C;t[8]===n.code?C=t[9]:(C=(0,X.jsx)(Mm,{code:n.code}),t[8]=n.code,t[9]=C);let w;t[10]!==S||t[11]!==C?(w=(0,X.jsx)(`span`,{className:S,"aria-hidden":!0,children:C}),t[10]=S,t[11]=C,t[12]=w):w=t[12];let T;t[13]===f?T=t[14]:(T=J(`text-sm font-semibold`,f),t[13]=f,t[14]=T);let E;t[15]!==s.title||t[16]!==T?(E=(0,X.jsx)(`h3`,{className:T,children:s.title}),t[15]=s.title,t[16]=T,t[17]=E):E=t[17];let D;t[18]===p?D=t[19]:(D=J(`mt-1 text-xs leading-relaxed`,p),t[18]=p,t[19]=D);let O;t[20]!==s.body||t[21]!==D?(O=(0,X.jsx)(`p`,{className:D,children:s.body}),t[20]=s.body,t[21]=D,t[22]=O):O=t[22];let k;t[23]!==E||t[24]!==O?(k=(0,X.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[E,O]}),t[23]=E,t[24]=O,t[25]=k):k=t[25];let A;t[26]!==k||t[27]!==w?(A=(0,X.jsxs)(`div`,{className:`flex items-start gap-3`,children:[w,k]}),t[26]=k,t[27]=w,t[28]=A):A=t[28];let j;t[29]!==s.cta||t[30]!==s.deepLink||t[31]!==_||t[32]!==a||t[33]!==r||t[34]!==v?(j=v?(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center justify-end gap-2`,children:[(0,X.jsx)(`button`,{type:`button`,className:J(`inline-flex h-8 items-center rounded-lg px-3 py-1.5 text-xs font-medium transition-colors`,_),onClick:()=>b(`/models/credits/purchase`),children:a.xopcQuotaPurchaseCta}),(0,X.jsx)(`button`,{type:`button`,className:`inline-flex h-8 items-center rounded-lg border border-current px-3 py-1.5 text-xs font-medium transition-colors hover:bg-amber-500/10`,onClick:()=>b(`/models/credits/request`),children:a.xopcQuotaRequestCta}),(0,X.jsx)(`button`,{type:`button`,className:`inline-flex h-8 items-center rounded-lg border border-current px-3 py-1.5 text-xs font-medium transition-colors hover:bg-amber-500/10`,onClick:()=>r(`/settings/capabilities/models?add=1`),children:a.xopcQuotaOwnProviderCta})]}):s.cta&&s.deepLink?(0,X.jsx)(`div`,{className:`flex flex-wrap items-center justify-end gap-2`,children:(0,X.jsx)(`button`,{type:`button`,className:J(`inline-flex h-8 items-center rounded-lg px-3 py-1.5 text-xs font-medium transition-colors`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-amber-500/50`,_),onClick:()=>r(s.deepLink),children:s.cta})}):null,t[29]=s.cta,t[30]=s.deepLink,t[31]=_,t[32]=a,t[33]=r,t[34]=v,t[35]=j):j=t[35];let M;t[36]!==m||t[37]!==g||t[38]!==a||t[39]!==n.message?(M=n.message?(0,X.jsxs)(`details`,{className:`group min-w-0 text-xs`,children:[(0,X.jsx)(`summary`,{className:J(`cursor-pointer select-none underline-offset-2`,m),children:a.agentRunErrorDetailToggle}),(0,X.jsx)(`pre`,{className:J(`mt-2 max-h-40 w-full min-w-0 overflow-y-auto overflow-x-hidden whitespace-pre-wrap break-words rounded-md p-2 font-mono text-[11px] [overflow-wrap:anywhere]`,g),children:n.message})]}):null,t[36]=m,t[37]=g,t[38]=a,t[39]=n.message,t[40]=M):M=t[40];let N;return t[41]!==A||t[42]!==j||t[43]!==M||t[44]!==x?(N=(0,X.jsxs)(`section`,{role:`alert`,"aria-live":`polite`,className:x,children:[A,j,M]}),t[41]=A,t[42]=j,t[43]=M,t[44]=x,t[45]=N):N=t[45],N}function Fm(e){return window.open(`https://console.xopc.ai${e}`,`_blank`,`noopener,noreferrer`)}function Im(e){return e.language}function Lm(e){let t=(0,Y.c)(8),{errorText:n}=e,r;t[0]===n?r=t[1]:(r=zn(n),t[0]=n,t[1]=r);let i=r;if(!i)return null;let a;t[2]===i?a=t[3]:(a=mr(i),t[2]=i,t[3]=a);let o=a;if(o){let e;return t[4]===o?e=t[5]:(e=(0,X.jsx)(`div`,{className:`mb-4`,children:(0,X.jsx)(Rm,{payload:o})}),t[4]=o,t[5]=e),e}let s;return t[6]===i?s=t[7]:(s=(0,X.jsx)(`div`,{className:`mb-4`,children:(0,X.jsx)(Pm,{payload:i})}),t[6]=i,t[7]=s),s}function Rm(e){let t=(0,Y.c)(32),{payload:n}=e,r=d(),i=h(zm),a,o,s,c;t[0]!==i||t[1]!==n.kind||t[2]!==n.provider?(o=y(i).chat,a=n.kind===`provider_auth_invalid`,c=a?o.agentRunErrorAuthInvalidTitle:o.providerSetupRequiredTitle,s=(a?o.agentRunErrorAuthInvalidBody:o.providerSetupRequiredBody).replace(`{{provider}}`,n.provider),t[0]=i,t[1]=n.kind,t[2]=n.provider,t[3]=a,t[4]=o,t[5]=s,t[6]=c):(a=t[3],o=t[4],s=t[5],c=t[6]);let l=s,u=a?o.agentRunErrorCtaProviders:o.providerSetupRequiredCta,f=a?o.agentRunErrorDetailToggle:o.providerSetupRequiredDetailToggle,p=a?`alert`:`status`,m;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(m=J(`flex flex-col gap-2 rounded-xl border border-amber-300/60 bg-amber-50 p-3`,`dark:border-amber-500/30 dark:bg-amber-950`),t[7]=m):m=t[7];let g;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(g=J(`flex size-8 shrink-0 items-center justify-center rounded-lg`,`bg-amber-100 text-amber-700 dark:bg-amber-500/20 dark:text-amber-300`),t[8]=g):g=t[8];let _;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(_=(0,X.jsx)(`span`,{className:g,"aria-hidden":!0,children:(0,X.jsx)(We,{className:`size-4`,strokeWidth:1.75})}),t[9]=_):_=t[9];let v;t[10]===c?v=t[11]:(v=(0,X.jsx)(`h3`,{className:`text-sm font-semibold text-amber-900 dark:text-amber-100`,children:c}),t[10]=c,t[11]=v);let b;t[12]===l?b=t[13]:(b=(0,X.jsx)(`p`,{className:`mt-1 text-xs leading-relaxed text-amber-900/85 dark:text-amber-100/80`,children:l}),t[12]=l,t[13]=b);let x;t[14]!==v||t[15]!==b?(x=(0,X.jsxs)(`div`,{className:`flex items-start gap-3`,children:[_,(0,X.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[v,b]})]}),t[14]=v,t[15]=b,t[16]=x):x=t[16];let S;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(S=J(`inline-flex h-8 items-center rounded-lg px-3 py-1.5 text-xs font-medium`,`bg-amber-600 text-white hover:bg-amber-700`,`dark:bg-amber-500 dark:text-amber-950 dark:hover:bg-amber-400`,`transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-amber-500/50`),t[17]=S):S=t[17];let C;t[18]!==r||t[19]!==n.deepLink?(C=()=>r(n.deepLink),t[18]=r,t[19]=n.deepLink,t[20]=C):C=t[20];let w;t[21]!==u||t[22]!==C?(w=(0,X.jsx)(`div`,{className:`flex flex-wrap items-center justify-end gap-2`,children:(0,X.jsx)(`button`,{type:`button`,className:S,onClick:C,children:u})}),t[21]=u,t[22]=C,t[23]=w):w=t[23];let T;t[24]!==f||t[25]!==n.message?(T=n.message?(0,X.jsxs)(`details`,{className:`group min-w-0 text-xs`,children:[(0,X.jsx)(`summary`,{className:`cursor-pointer select-none text-amber-800/80 underline-offset-2 hover:text-amber-900 dark:text-amber-200/80 dark:hover:text-amber-100`,children:f}),(0,X.jsx)(`pre`,{className:`mt-2 max-h-40 w-full min-w-0 overflow-y-auto overflow-x-hidden whitespace-pre-wrap break-words rounded-md bg-amber-100/60 p-2 font-mono text-[11px] text-amber-900 dark:bg-amber-500/15 dark:text-amber-100 [overflow-wrap:anywhere]`,children:n.message})]}):null,t[24]=f,t[25]=n.message,t[26]=T):T=t[26];let E;return t[27]!==w||t[28]!==T||t[29]!==p||t[30]!==x?(E=(0,X.jsxs)(`section`,{role:p,"aria-live":`polite`,className:m,children:[x,w,T]}),t[27]=w,t[28]=T,t[29]=p,t[30]=x,t[31]=E):E=t[31],E}function zm(e){return e.language}var Bm=/^No API key found for (\S+)/i;function Vm(e){let t=e.trim();if(t.startsWith(`{`))try{let e=JSON.parse(t);return e.kind!==`provider_setup_required`||typeof e.provider!=`string`||!e.provider||typeof e.deepLink!=`string`||!e.deepLink.startsWith(`/settings/`)?null:{kind:`provider_setup_required`,provider:e.provider,deepLink:e.deepLink,message:typeof e.message==`string`?e.message:void 0}}catch{return null}let n=Bm.exec(t);return n?{kind:`provider_setup_required`,provider:n[1].replace(/[.,]$/,``),deepLink:`/settings/capabilities/models`,message:t}:null}var Hm=new WeakMap;function Um(e){let t=Hm.get(e),n=rr(e);return t??(n?[n]:[])}function Wm(e){let t=[];for(let n of e){let e=t[t.length-1];if(n.type===`text`&&e?.type===`text`&&n.segmentId===e.segmentId&&n.presentation===e.presentation){t[t.length-1]={...e,text:`${e.text??``}${n.text??``}`},dr(e,t[t.length-1]),Hm.set(t[t.length-1],[...Um(e),...Um(n)]);continue}t.push(n)}return t}var Gm=/^\s*\|?\s*:?-{3,}:?\s*(?:\|\s*:?-{3,}:?\s*)+\|?\s*$/m,Km=/^\s{0,3}(?:[-+*]|\d+[.)])\s+/m,qm=/^\s{0,3}```/gm;function Jm(e){return(e.match(qm)?.length??0)%2==1?`code`:Gm.test(e)?`table`:Km.test(e)?`list`:e.length>=4096?`long_text`:`plain`}var Ym={plain:50,long_text:50,list:50,table:72,code:64};function Xm({tailKind:e,latestParseMs:t}){let n=Ym[e];return!Number.isFinite(t)||t<=16?n:Math.min(120,Math.max(n,Math.ceil(t*2)))}var Zm=class{targetLength;lastArrivalAt=null;lastDrainAt=null;arrivalRate=40;outputRate=40;carry=0;constructor(e){this.targetLength=e}reset(e){this.targetLength=e,this.lastArrivalAt=null,this.lastDrainAt=null,this.arrivalRate=40,this.outputRate=40,this.carry=0}observe(e,t){let n=e-this.targetLength;if(n<=0)return;let r=this.lastArrivalAt===null?n:n*1e3/Math.max(10,t-this.lastArrivalAt);this.arrivalRate=Math.max(1,this.arrivalRate*.9+r*.1),this.targetLength=e,this.lastArrivalAt=t,this.lastDrainAt??=t}nextLength(e,t,n){let r=t.length-e;if(r<=0)return t.length;let i=Math.max(0,Math.min(120,n-(this.lastDrainAt??n)));this.lastDrainAt=n;let a=Math.max(20,this.arrivalRate,r/.6);this.outputRate+=(a-this.outputRate)*(1-Math.exp(-i/120));let o=this.carry+this.outputRate*i/1e3,s=ld(t,Math.min(t.length,e+Math.floor(o)));return this.carry=Math.max(0,o-(s-e)),s===t.length&&(this.lastDrainAt=null,this.carry=0),s}};function Qm(e,t,n,r=!1,i,a=!1){let[o,s]=(0,Z.useState)(()=>e),[c]=(0,Z.useState)(()=>new Zm(e.length)),l=(0,Z.useRef)(e),u=(0,Z.useRef)(o),d=(0,Z.useRef)(null),f=(0,Z.useRef)(null),p=(0,Z.useRef)(50),m=(0,Z.useRef)(t||r),h=(0,Z.useRef)(!1),g=(0,Z.useRef)(i);return g.current=i,(0,Z.useEffect)(()=>{let r=!e.startsWith(l.current);l.current=e;let i=()=>{d.current!==null&&window.clearTimeout(d.current),f.current!==null&&window.cancelAnimationFrame(f.current),d.current=null,f.current=null},o=()=>{i(),c.reset(e.length),u.current=e,s(e)},_=()=>{m.current&&!h.current&&(h.current=!0,m.current=!1,g.current?.())};if(t&&(m.current=!0,h.current=!1,ht(n,e.length)),r||!e.startsWith(u.current)||document.visibilityState===`hidden`||window.matchMedia?.(`(prefers-reduced-motion: reduce)`).matches||!t){o(),t||_();return}if(t&&a&&u.current.length===0){lt(n,e.length),o();return}if(c.observe(e.length,performance.now()),p.current=Xm({tailKind:Jm(e.slice(-8192)),latestParseMs:ct(n)}),e===u.current||d.current!==null||f.current!==null)return;let v=()=>{d.current=window.setTimeout(()=>{d.current=null;let e=()=>{f.current=null;let e=l.current,t=document.visibilityState===`hidden`?e.length:c.nextLength(u.current.length,e,performance.now()),r=e.slice(0,t);r!==u.current&&(u.current=r,lt(n,r.length),s(r)),r!==e&&v()};document.visibilityState===`hidden`?e():f.current=window.requestAnimationFrame(e)},p.current)};v()},[e,n,t,a,c]),(0,Z.useEffect)(()=>()=>{d.current!==null&&window.clearTimeout(d.current),f.current!==null&&window.cancelAnimationFrame(f.current),d.current=null,f.current=null},[]),!t||!e.startsWith(o)||t&&a&&!o?e:o}function $m(e){if(!e.filePath)return``;if(!e.lineStart)return e.filePath;let t=e.lineEnd&&e.lineEnd!==e.lineStart?`-${e.lineEnd}`:``;return`${e.filePath}:${e.lineStart}${t}`}function eh(e){let t=(0,Y.c)(33),{review:n}=e,r=h(nh),i,a,o,s,c,l,u,d,f;if(t[0]!==r||t[1]!==n.analysisMarkdown||t[2]!==n.errorMessage||t[3]!==n.overallCorrectness||t[4]!==n.source||t[5]!==n.status||t[6]!==n.target){o=y(r).chat.reviewCard,i=n.status===`preparing`||n.status===`reviewing`;let e=n.status===`preparing`;a=n.source===`local`&&n.overallCorrectness===`unknown`;let p=n.overallCorrectness===`patch is incorrect`?`border-red-500/30 bg-red-500/5 text-red-700 dark:text-red-300`:n.overallCorrectness===`patch is correct`?`border-emerald-500/30 bg-emerald-500/5 text-emerald-700 dark:text-emerald-300`:`border-edge bg-surface-inset text-fg-secondary`;s=`min-w-0 rounded-lg border border-edge bg-surface-inset p-3`;let m;t[16]===i?m=t[17]:(m=i?(0,X.jsx)(Ye,{className:`size-4 animate-spin text-accent`,"aria-hidden":!0}):null,t[16]=i,t[17]=m),c=(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[m,(0,X.jsx)(`div`,{className:`text-sm font-semibold text-fg-primary`,children:i?o.running:o.finished}),i?(0,X.jsx)(`div`,{className:`rounded-md border border-edge bg-surface-inset px-1.5 py-0.5 text-[11px] font-medium text-fg-secondary`,children:e?o.collecting:o.assistant}):(0,X.jsx)(`div`,{className:J(`rounded-md border px-1.5 py-0.5 text-[11px] font-medium`,p),children:o.correctness[n.overallCorrectness]})]}),l=(0,X.jsx)(`div`,{className:`mt-1 text-xs text-fg-tertiary`,children:o.basedOn.replace(`{{target}}`,n.target)}),u=i&&!n.analysisMarkdown?(0,X.jsx)(`div`,{className:`mt-3 text-sm text-fg-secondary`,children:e?o.preparing:o.checking}):null,d=n.analysisMarkdown?(0,X.jsxs)(`div`,{className:`mt-3 rounded-md border border-edge-subtle bg-surface px-2.5 py-2`,children:[(0,X.jsx)(`div`,{className:`mb-1 text-xs font-medium text-fg-secondary`,children:o.assistant}),(0,X.jsx)(Ld,{content:n.analysisMarkdown,compact:!0,streaming:i})]}):null,f=n.status===`error`&&n.errorMessage?(0,X.jsx)(`div`,{className:`mt-3 rounded-md border border-warning/30 bg-warning/5 px-2.5 py-2 text-sm text-warning`,children:o.error.replace(`{{error}}`,n.errorMessage)}):null,t[0]=r,t[1]=n.analysisMarkdown,t[2]=n.errorMessage,t[3]=n.overallCorrectness,t[4]=n.source,t[5]=n.status,t[6]=n.target,t[7]=i,t[8]=a,t[9]=o,t[10]=s,t[11]=c,t[12]=l,t[13]=u,t[14]=d,t[15]=f}else i=t[7],a=t[8],o=t[9],s=t[10],c=t[11],l=t[12],u=t[13],d=t[14],f=t[15];let p;t[18]!==i||t[19]!==a||t[20]!==n.findings||t[21]!==n.overallExplanation||t[22]!==n.summary||t[23]!==o?(p=i?null:(0,X.jsxs)(X.Fragment,{children:[n.summary?(0,X.jsx)(`div`,{className:`mt-3 text-sm text-fg-secondary`,children:n.summary}):null,(0,X.jsx)(`div`,{className:`mt-3 space-y-2`,children:n.findings.length===0?(0,X.jsx)(`div`,{className:`text-sm text-fg-secondary`,children:a?o.noModelFindings:o.noFindings}):n.findings.map(th)}),n.overallExplanation?(0,X.jsx)(`div`,{className:`mt-3 whitespace-pre-wrap text-sm text-fg-secondary`,children:n.overallExplanation}):null]}),t[18]=i,t[19]=a,t[20]=n.findings,t[21]=n.overallExplanation,t[22]=n.summary,t[23]=o,t[24]=p):p=t[24];let m;return t[25]!==s||t[26]!==c||t[27]!==l||t[28]!==u||t[29]!==d||t[30]!==f||t[31]!==p?(m=(0,X.jsxs)(`div`,{className:s,children:[c,l,u,d,f,p]}),t[25]=s,t[26]=c,t[27]=l,t[28]=u,t[29]=d,t[30]=f,t[31]=p,t[32]=m):m=t[32],m}function th(e,t){let n=$m(e);return(0,X.jsxs)(`div`,{className:`rounded-md border border-edge bg-surface p-2`,children:[(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,X.jsxs)(`span`,{className:`rounded border border-edge bg-surface-inset px-1.5 py-0.5 text-[11px] font-semibold text-fg-secondary`,children:[`P`,e.priority]}),(0,X.jsx)(`span`,{className:`min-w-0 text-sm font-medium text-fg-primary`,children:e.title})]}),n?(0,X.jsx)(`div`,{className:`mt-1 break-all text-xs text-fg-tertiary`,children:n}):null,e.body?(0,X.jsx)(`div`,{className:`mt-1 text-sm text-fg-secondary`,children:e.body}):null]},`${e.title}-${t}`)}function nh(e){return e.language}function rh({resolution:e,conversationId:t,onClose:n}){let r=h(e=>e.language),i=y(r).chat.fileReference,[a,o]=(0,Z.useState)(!1),[s,c]=(0,Z.useState)(``),[l,u]=(0,Z.useState)(!1),d=pa()&&!!window.electronAPI?.shell,f=e.target.path,p=e.status===`ready`?e.ref:null,m=p?.displayName??f.split(/[\\/]/).pop()??f,g=p?.absolutePath??p?.workspaceRelativePath??f,_=(0,Z.useCallback)(()=>{gi(g).then(e=>{e&&(o(!0),window.setTimeout(()=>o(!1),2e3))})},[g]),v=async e=>{let n=window.electronAPI?.shell;if(!(!p?.fileRefId||!d||!n||l)){c(``),u(!0);try{let r=await ka(p.fileRefId,e,{conversationId:t?.trim()||void 0});if(e===`openExternal`){let e=await n.openPath(r.absolutePath);e.ok||c(e.error)}else(await n.showItemInFolder(r.absolutePath)).success||c(i.resolveFailedDescription)}catch(e){c(e instanceof Error?e.message:String(e))}finally{u(!1)}}};return(0,X.jsxs)(`div`,{className:J(`mt-2 flex max-w-xl min-w-0 flex-col gap-1.5 rounded-lg border px-2.5 py-2 text-xs`,e.status===`ready`&&e.ref.exists&&e.ref.scope!==`missing`?`border-edge-subtle bg-surface-panel`:`border-warning/30 bg-warning/5`),children:[(0,X.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1.5`,children:[e.status===`loading`?(0,X.jsx)(Ye,{className:`size-3.5 shrink-0 animate-spin text-fg-muted`,strokeWidth:1.75,"aria-hidden":!0}):e.status===`error`||p?.scope===`missing`||p?.scope===`invalid`?(0,X.jsx)(ce,{className:`size-3.5 shrink-0 text-warning`,strokeWidth:1.75,"aria-hidden":!0}):(0,X.jsx)(Ce,{className:`size-3.5 shrink-0 text-accent`,strokeWidth:1.75,"aria-hidden":!0}),(0,X.jsx)(`span`,{className:`min-w-0 truncate font-medium`,children:m}),(0,X.jsx)(`button`,{type:`button`,onClick:n,className:J(`ml-auto inline-flex size-5 shrink-0 items-center justify-center rounded text-fg-muted hover:bg-surface-hover hover:text-fg`,ta.focusRingPanel),"aria-label":i.closeActions,children:(0,X.jsx)(Kt,{className:`size-3`,strokeWidth:1.75,"aria-hidden":!0})})]}),(0,X.jsx)(`p`,{className:`line-clamp-2 break-all text-[11px] leading-snug text-fg-muted`,children:e.status===`loading`?i.resolvingDescription:e.status===`error`?e.message:p?.scope===`missing`?i.missingDescription:p?.scope===`invalid`?i.invalidDescription:d?i.externalDescription:i.browserExternalDescription}),(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-1 pt-0.5`,children:[d&&p?.capabilities.includes(`openExternal`)?(0,X.jsxs)(`button`,{type:`button`,className:ih,disabled:l,onClick:()=>void v(`openExternal`),children:[(0,X.jsx)(xe,{className:`size-3`,"aria-hidden":!0}),(0,X.jsx)(`span`,{children:i.openExternal})]}):null,d&&p?.capabilities.includes(`revealInFolder`)?(0,X.jsxs)(`button`,{type:`button`,className:ih,disabled:l,onClick:()=>void v(`revealInFolder`),children:[(0,X.jsx)(De,{className:`size-3`,"aria-hidden":!0}),(0,X.jsx)(`span`,{children:i.revealInFolder})]}):null,p?.manageRoute?(0,X.jsxs)(`a`,{className:ih,href:`#${p.manageRoute}`,children:[(0,X.jsx)(It,{className:`size-3`,"aria-hidden":!0}),(0,X.jsx)(`span`,{children:y(r).nav.settings})]}):null,(0,X.jsxs)(`button`,{type:`button`,className:ih,onClick:_,children:[(0,X.jsx)(_e,{className:`size-3`,strokeWidth:1.75,"aria-hidden":!0}),(0,X.jsx)(`span`,{children:a?y(r).chat.messageCopied:i.copyPath})]})]}),s?(0,X.jsx)(`p`,{role:`alert`,className:`text-warning`,children:s}):null]})}var ih=J(`inline-flex items-center gap-1 rounded-md px-1.5 py-0.5 text-[11px] text-fg-muted transition-colors hover:bg-surface-hover hover:text-fg`,ta.focusRingPanel,ta.press);function ah({taskRunId:e,content:t,sourceConversationId:n,sourcePartIds:r=[],compact:i,conversationId:a,projectId:o,streaming:s=!1,animateInitialContent:c=!1,onProgressiveRenderComplete:l,responseRunId:u,immediateFirstCommit:d=!1}){let f=ym(n,r)??t,p=`assistant-markdown-${(0,Z.useId)()}`,m=Qm(f,s,p,c,l,d);(0,Z.useLayoutEffect)(()=>{if(!u||!m.trim())return;let e=window.requestAnimationFrame(()=>fr(u,m));return()=>window.cancelAnimationFrame(e)},[u,m,s]),(0,Z.useEffect)(()=>{if(s)return dt(p),()=>_t(p)},[p,s]);let g=Oi(e=>e.setPath),_=y(h(e=>e.language)).chat.fileReference,[v,b]=(0,Z.useState)(null),x=(0,Z.useRef)(0);(0,Z.useEffect)(()=>()=>{x.current++},[a,o,e]);let S=(0,Z.useCallback)(async t=>{try{return await Ea(t.path,{projectId:o?.trim()||void 0,conversationId:a?.trim()||void 0,taskRunId:e})}catch(n){if(e||o||!a)throw n;return Ea(t.path)}},[o,a,e]),C=(0,Z.useCallback)(t=>{let n=++x.current;if(t.kind===`workspace-relative`){b({status:`loading`,target:t}),(async()=>{let r=await ja(t.path,{projectId:o?.trim()||void 0,conversationId:a?.trim()||void 0,taskRunId:e});if(n!==x.current)return;if(r?.capabilities.includes(`preview`)&&(r.absolutePath||r.workspaceRelativePath)){g(r.absolutePath||r.workspaceRelativePath,t.line,o,a),b(null);return}let i=!e&&!o&&a?await ja(t.path):null;if(n===x.current){if(i?.capabilities.includes(`preview`)&&(i.absolutePath||i.workspaceRelativePath)){g(i.absolutePath||i.workspaceRelativePath,t.line),b(null);return}b(r?{status:`ready`,target:t,ref:r}:{status:`error`,target:t,message:_.resolveFailedDescription})}})().catch(e=>{n===x.current&&b({status:`error`,target:t,message:e instanceof Error?e.message:String(e)})});return}b({status:`loading`,target:t}),ja(t.path,{projectId:o?.trim()||void 0,conversationId:a?.trim()||void 0,taskRunId:e}).then(e=>{if(n===x.current){if(!e){b({status:`error`,target:t,message:_.resolveFailedDescription});return}if(e.capabilities.includes(`preview`)&&(e.absolutePath||e.workspaceRelativePath)){g(e.absolutePath||e.workspaceRelativePath,t.line,o,a),b(null);return}b({status:`ready`,target:t,ref:e})}}).catch(e=>{n===x.current&&b({status:`error`,target:t,message:e instanceof Error?e.message:String(e)})})},[_.resolveFailedDescription,o,a,e,g]),w=Vm(f);return(0,X.jsxs)(X.Fragment,{children:[w?(0,X.jsx)(Rm,{payload:w}):(0,X.jsx)(Ld,{content:m,streaming:s||m!==f,compact:i,onWorkspaceFileOpen:C,onWorkspaceImageLoad:S,renderMermaid:!0,mermaidActions:!0,streamingMetricsKey:p}),v?(0,X.jsx)(rh,{resolution:v,conversationId:a,onClose:()=>{x.current++,b(null)}}):null]})}function oh(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,g){if(e.type===`text`)return n?(0,X.jsx)(`div`,{className:`min-w-0`,children:(0,X.jsx)(Em,{text:lr(e.text??``),conversationId:s,document:f,contextRefs:p})},t):(0,X.jsx)(`div`,{className:`assistant-markdown-content markdown-content min-w-0`,children:(0,X.jsx)(ah,{content:e.text,sourcePartIds:Um(e),sourceConversationId:s,taskRunId:m,compact:!0,conversationId:c??s,projectId:l,streaming:r,animateInitialContent:u,onProgressiveRenderComplete:d,responseRunId:h,immediateFirstCommit:g})},t);if(e.type===`image`&&e.source?.data){let n=o??0;return a?(0,X.jsx)(`button`,{type:`button`,className:J(`inline-block max-w-full rounded-lg p-0 text-left`,ta.press,ta.focusRingPanel,`cursor-pointer`),onClick:()=>a(e,n),title:i,"aria-label":i,children:(0,X.jsx)(`img`,{src:e.source.data,className:`max-h-48 max-w-64 rounded-lg align-top object-contain`,alt:``})},t):(0,X.jsx)(`img`,{src:e.source.data,className:`max-h-48 max-w-64 rounded-lg object-contain`,alt:``},t)}return e.type===`review`?(0,X.jsx)(eh,{review:e},t):null}function sh(e){let t=(0,Y.c)(17),{taskRunId:n,content:r,isUser:i,isAssistantMessageStreaming:a,imagePreviewLabel:o,onImagePreview:s,conversationId:c,workspaceConversationId:l,projectId:u,progressiveRender:d,onProgressiveRenderComplete:f,userTurnDocument:p,contextRefs:m,responseRunId:h,immediateFirstCommit:g,renderActivity:_}=e,v=d!==void 0&&d,y=g!==void 0&&g,b;if(t[0]!==r||t[1]!==m||t[2]!==c||t[3]!==o||t[4]!==y||t[5]!==a||t[6]!==i||t[7]!==s||t[8]!==f||t[9]!==v||t[10]!==u||t[11]!==_||t[12]!==h||t[13]!==n||t[14]!==p||t[15]!==l){let e=i?r:Wm(r),d=e.findLastIndex(ch),g=e.at(-1),x=d<0&&g?.type===`text`&&g.presentation===void 0?e.length-1:-1,S=a?Math.max(d,x):-1,C=[],w=0,T=0;for(;w<e.length;){let t=e[w];if(t.type===`thinking`||t.type===`tool_use`){let n=w,r=[];for(;w<e.length;){let t=e[w];if(t.type!==`thinking`&&t.type!==`tool_use`)break;r.push(t),w++}_&&C.push((0,X.jsx)(`div`,{"data-assistant-activity":!0,children:_(r,w===e.length)},rr(t)??`activity-${n}`))}else{let e=t.type===`image`?T++:0,r=oh(t,rr(t)??`block-${w}`,i,w===S,o,s,t.type===`image`?e:w,c,l,u,v,f,i&&w===0?p:void 0,i&&w===0?m:void 0,n,h,y);r&&C.push(r),w++}}b=(0,X.jsx)(X.Fragment,{children:C}),t[0]=r,t[1]=m,t[2]=c,t[3]=o,t[4]=y,t[5]=a,t[6]=i,t[7]=s,t[8]=f,t[9]=v,t[10]=u,t[11]=_,t[12]=h,t[13]=n,t[14]=p,t[15]=l,t[16]=b}else b=t[16];return b}function ch(e){return e.type===`text`&&e.presentation===`pending`}var lh=[`readFile`,`editFile`,`writeFile`,`runCommand`,`memorySearch`,`codeSearch`,`webSearch`,`search`,`fetchUrl`,`openUrl`,`listDir`,`other`];function uh(e,t){return aa(e,t)}function dh(e){let t=new Map;for(let n of e){if(n.type!==`tool_use`)continue;let e=uh(n.name,n.activity),r=t.get(e)??{total:0,running:0};r.total+=1,(n.status===`running`||n.activity?.status===`running`)&&(r.running+=1),t.set(e,r)}return t}function fh(e,t){switch(e){case`webSearch`:return t.webSearch;case`memorySearch`:return t.memorySearch;case`codeSearch`:return t.codeSearch;case`search`:return t.search;case`readFile`:return t.readFile;case`editFile`:return t.editFile;case`writeFile`:return t.writeFile;case`runCommand`:return t.runCommand;case`listDir`:return t.listDir;case`openUrl`:return t.openUrl;case`fetchUrl`:return t.fetchUrl;case`other`:return t.other}}function ph(e,t,n){let r=dh(e),i=[];for(let e of lh){let t=r.get(e);t&&t.running>0&&i.push(e)}if(i.length===1){let r=[...e].reverse().find(e=>e.type===`tool_use`&&(e.status===`running`||e.activity?.status===`running`));return(r?n?.(r):null)||fh(i[0],t)}return i.length>1?t.mixed:e.some(e=>e.type===`thinking`&&e.streaming)?t.thinking:r.size>0?t.mixed:null}function mh(e){return e.filter(e=>e.type!==`thinking`||!!e.text?.trim()||!!e.streaming)}function hh(e,t,n){return ph(e,t,n)}function gh(e){return typeof e==`object`&&e&&!Array.isArray(e)?e:null}function _h(e){if(typeof e!=`string`)return e;try{return JSON.parse(e)}catch{return e}}function vh(e){let t=gh(_h(e));if(!t)return[];let n=gh(t.details)?.results??t.results;if(Array.isArray(n))return n.map(gh).filter(e=>e!==null);let r=Array.isArray(t.content)?t.content:[];for(let e of r){let t=gh(e)?.text,n=gh(_h(t));if(Array.isArray(n?.results))return n.results.map(gh).filter(e=>e!==null)}return[]}function yh(e,t){return e.replace(/\{\{count\}\}/g,String(t))}function bh(e,t){if(e.status===`running`||e.activity?.status===`running`)return{title:t.running,purpose:t.purpose};if(e.status===`error`||e.activity?.status===`failed`)return{title:t.failed,purpose:t.purpose};let n=vh(e.result),r=e.activity?.count??n.length;return{title:r===0?t.empty:yh(r===1?t.found_one:t.found_other,r),purpose:t.purpose}}function xh(e){if(e.scrollHeight<=e.clientHeight)return!1;let t=window.getComputedStyle(e).overflowY;return t===`auto`||t===`scroll`}function Sh(e,t,n){let r=[],i=e instanceof HTMLElement?e:t;for(;i&&i!==t;)xh(i)&&r.push(i),i=i.parentElement;return t.scrollHeight>t.clientHeight&&r.push(t),n!==t&&r.push(n),r}function Ch(e,t){let n=e;for(let e of t){let t=Math.max(0,e.scrollHeight-e.clientHeight),r=Math.min(t,Math.max(0,e.scrollTop+n)),i=r-e.scrollTop;if(i!==0&&(e.scrollTop=r),n-=i,Math.abs(n)<.01)break}}function wh(e,t){if(e.defaultPrevented||e.ctrlKey||e.deltaY===0||Math.abs(e.deltaY)<=Math.abs(e.deltaX))return;let n=t.closest(`.chat-messages`);if(!n)return;let r=t.clientHeight||n.clientHeight,i=e.deltaMode===WheelEvent.DOM_DELTA_LINE?16:e.deltaMode===WheelEvent.DOM_DELTA_PAGE?r:1,a=Sh(e.target,t,n);e.preventDefault(),Ch(e.deltaY*i,a)}function Th(e){if(e===void 0)return``;try{return JSON.stringify(JSON.parse(e),null,2)}catch{try{return JSON.stringify(e,null,2)}catch{return String(e)}}}function Eh(e){if(e==null)return null;try{return typeof e==`string`?JSON.parse(e):e}catch{return null}}function Dh(e){let t=Eh(e),n=t?.path??t?.file_path??t?.filepath??t?.file??t?.qualified_name??t?.function_name;return typeof n==`string`?n:``}function Oh(e){let t=Eh(e),n=t?.url??t?.href??t?.uri??t?.website;return typeof n==`string`?n:``}function kh(e){let t=Eh(e),n=t?.command??t?.cmd??t?.shell??t?.script;return typeof n==`string`?n:``}var Ah=120;function jh(e){if(e==null)return``;let t=Eh(e);if(!t)return typeof e==`string`?e.trim():``;let n=[t.command,t.cmd,t.shell,t.script,t.path,t.file_path,t.filepath,t.file,t.url,t.href,t.uri,t.website,t.query,t.q,t.query_string,t.search_term,t.searchQuery,t.qualified_name,t.function_name,t.name_pattern,t.qn_pattern,t.file_pattern];for(let e of n){if(typeof e==`string`&&e.trim()){let t=e.trim();return t.length>Ah?`${t.slice(0,Ah)}…`:t}if(typeof e==`number`&&Number.isFinite(e))return String(e)}return``}function Mh(e){return e.startsWith(`@@`)?`hunk`:e.startsWith(`+++`)||e.startsWith(`---`)||e.startsWith(`diff `)||e.startsWith(`index `)?`meta`:e.startsWith(`+`)?`add`:e.startsWith(`-`)?`del`:`context`}function Nh(e){let t=e.details?.diff;if(typeof t!=`string`||t.length===0)return null;let n=t.split(`
|
|
16
|
+
`).trim()}var om=new WeakMap,sm=new WeakMap,cm=new WeakMap,lm=new WeakMap;function um(e,t){if(!e)return;let n=e=>{let t=cm.get(e);return t||(t=new Map(e.content.flatMap(e=>{let t=rr(e);return t?[[t,e]]:[]})),cm.set(e,t)),t},r=e.streamingMsg&&n(e.streamingMsg).get(t);if(r)return r;let i=lm.get(e.messages);if(!i){i=new Map;for(let t of e.messages)for(let[e,r]of n(t))i.set(e,r);lm.set(e.messages,i)}return i.get(t)}function dm(e,t){return e===t?!0:!e||!t||e.content.length!==t.content.length||!e.content.every((e,n)=>{let r=t.content[n];return e===r||e.type===`text`&&r.type===`text`&&rr(e)===rr(r)&&e.segmentId===r.segmentId&&e.presentation===r.presentation&&!!e.text.trim()==!!r.text.trim()&&(e.text===r.text||![e.text,r.text].some(e=>{let t=e.trimStart();return t.startsWith(`NO_REPLY`)||t.length>0&&`NO_REPLY`.startsWith(t)}))})?!1:[...new Set([...Object.keys(e),...Object.keys(t)])].every(n=>n===`content`||e[n]===t[n])}function fm(){let e;return t=>(dm(e??null,t??null)||(e=t),e)}function pm(e,t){if(!e)return;let n=e.streamingMsg;if(n?.renderKey===t){let t=e.messages.at(-1);if(t?.role!==`assistant`)return n;let r=sm.get(n);if(r?.previous===t)return r.row;let i=Xn([t,n]).at(-1);return sm.set(n,{previous:t,row:i}),i}let r=om.get(e.messages);return r||(r=new Map(e.messages.filter(e=>e.renderKey).map(e=>[e.renderKey,e])),om.set(e.messages,r)),r.get(t)}function mm(){let e;return t=>{if(!t||!e)return e=t,t;let n=dm(e.streamingMsg,t.streamingMsg);return n&&Object.keys(t).every(n=>n===`streamingMsg`||e[n]===t[n])||(e=n?{...t,streamingMsg:e.streamingMsg}:t),e}}function hm(e){let t=(0,Y.c)(3),n;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(n=mm(),t[0]=n):n=t[0];let r=n,i;t[1]===e?i=t[2]:(i=()=>r(e?Mn.getState().sessions[e]:void 0),t[1]=e,t[2]=i);let a=i;return(0,Z.useSyncExternalStore)(Mn.subscribe,a,a)}function gm(e,t){let n=(0,Z.useMemo)(()=>{let n=t();return{read:()=>n,subscribe:r=>{let i=null,a=null,o=()=>{i!==null&&cancelAnimationFrame(i),a!==null&&clearTimeout(a),i=null,a=null},s=()=>{o();let e=t();n!==e&&(n=e,r())},c=Mn.subscribe((r,o)=>{if(t()===n)return;let c=e?r.sessions[e]:void 0,l=e?o.sessions[e]:void 0;if(c?.streaming!==l?.streaming||c?.messages!==l?.messages){s();return}i===null&&(i=requestAnimationFrame(s),a=setTimeout(s,50))});return s(),()=>{o(),c()}}}},[e,t]);return(0,Z.useSyncExternalStore)(n.subscribe,n.read,n.read)}function _m(e,t){let n=(0,Y.c)(4),r;n[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=fm(),n[0]=r):r=n[0];let i=r,a;return n[1]!==e||n[2]!==t?(a=()=>i(e&&t?pm(Mn.getState().sessions[e],t):void 0),n[1]=e,n[2]=t,n[3]=a):a=n[3],gm(e,a)}function vm(e,t){let n=(0,Y.c)(3),r;return n[0]!==e||n[1]!==t?(r=()=>e&&t?um(Mn.getState().sessions[e],t):void 0,n[0]=e,n[1]=t,n[2]=r):r=n[2],gm(e,r)}function ym(e,t){let n=(0,Y.c)(7),r;n[0]===t?r=n[1]:(r=t.join(`,`),n[0]=t,n[1]=r);let i=r,a;n[2]===i?a=n[3]:(a=i?i.split(`,`):[],n[2]=i,n[3]=a);let o=a,s;return n[4]!==e||n[5]!==o?(s=()=>{if(!e||!o.length)return;let t=Mn.getState().sessions[e],n=o.map(e=>um(t,e));if(!n.some(xm))return n.map(bm).join(``)},n[4]=e,n[5]=o,n[6]=s):s=n[6],gm(e,s)}function bm(e){return e?.type===`text`?e.text:``}function xm(e){return e?.type!==`text`}function Sm(e){let t=[];((n,r)=>{let i=new RegExp(n.source,n.flags),a;for(;(a=i.exec(e))!==null;)t.push({start:a.index,end:a.index+a[0].length,seg:r(a)})})(ya(),e=>({kind:`skill`,name:e[1]??``}));for(let n of po(e))t.push({start:n.start,end:n.end,seg:{kind:`command`,name:e.slice(n.start+1,n.end)}});t.sort((e,t)=>e.start===t.start?t.end-e.end:e.start-t.start);let n=[],r=0;for(let i of t)i.start<r||(i.start>r&&n.push({kind:`text`,text:e.slice(r,i.start)}),n.push(i.seg),r=i.end);return r<e.length&&n.push({kind:`text`,text:e.slice(r)}),n.length===0&&n.push({kind:`text`,text:e}),n}function Cm(e){return e.kind===`text`?`t:${e.text}`:e.kind===`skill`?`s:${e.name}`:e.kind===`context_ref`?`r:${e.refId}`:`c:${e.name}`}function wm(e,t){let n=e[t-1],r=e[t-2],i=e[t+1],a=n?.kind===`text`&&n.text.trim()===``&&r!==void 0&&r.kind!==`text`;return J(n?.kind===`text`&&/\s$/u.test(n.text)&&!a&&`ms-1`,i?.kind===`text`&&/^\s/u.test(i.text)&&`me-1`)}function Tm(e){let t=(0,Y.c)(6),{contextRef:n}=e;if(n?.kind===`file`&&n.fileKind===`directory`){let e;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,X.jsx)(Oe,{className:`size-3.5 shrink-0`,"aria-hidden":!0}),t[0]=e):e=t[0],e}if(n?.kind===`file`){let e;return t[1]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,X.jsx)(Te,{className:`size-3.5 shrink-0`,"aria-hidden":!0}),t[1]=e):e=t[1],e}if(n?.kind===`session`){let e;return t[2]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,X.jsx)(xt,{className:`size-3.5 shrink-0`,"aria-hidden":!0}),t[2]=e):e=t[2],e}if(n?.kind===`browser_tab`){let e;return t[3]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,X.jsx)(k,{className:`size-3.5 shrink-0`,"aria-hidden":!0}),t[3]=e):e=t[3],e}if(n?.kind===`mcp_resource`){let e;return t[4]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,X.jsx)(ve,{className:`size-3.5 shrink-0`,"aria-hidden":!0}),t[4]=e):e=t[4],e}let r;return t[5]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,X.jsx)(rs,{className:`size-3.5 shrink-0`,"aria-hidden":!0}),t[5]=r):r=t[5],r}var Em=(0,Z.memo)(function(e){let t=(0,Y.c)(24),{text:n,conversationId:r,document:i,contextRefs:a}=e,o=h(Dm),s;t[0]===o?s=t[1]:(s=y(o),t[0]=o,t[1]=s);let c=s.chat.referenceFallback,l;bb0:{if(!i){let e;t[2]===n?e=t[3]:(e=Sm(n),t[2]=n,t[3]=e),l=e;break bb0}let e;if(t[4]!==a||t[5]!==i.parts){let n=new Map(a?.flatMap(Om)??[]);e=i.parts.flatMap(e=>e.type===`text`?Sm(e.text):[{kind:`context_ref`,refId:e.refId,ref:n.get(e.refId)}]),t[4]=a,t[5]=i.parts,t[6]=e}else e=t[6];l=e}let u=l,d;if(t[7]!==u){let e=new Map;d=u.map(t=>{let n=Cm(t),r=e.get(n)??0;return e.set(n,r+1),{part:t,key:`${n}#${String(r)}`}}),t[7]=u,t[8]=d}else d=t[8];let f=d,p;t[9]===u?p=t[10]:(p=u.some(km),t[9]=u,t[10]=p);let m=bp(void 0,r,p);if(!u.some(Am)){let e;return t[11]===n?e=t[12]:(e=(0,X.jsx)(`div`,{className:`markdown-content min-w-0`,children:(0,X.jsx)(Ld,{content:n,compact:!0,breaks:!0})}),t[11]=n,t[12]=e),e}let g;if(t[13]!==u||t[14]!==f||t[15]!==c||t[16]!==m){let e;t[18]!==u||t[19]!==c||t[20]!==m?(e=(e,t)=>{let{part:n,key:r}=e;return n.kind===`skill`?(0,X.jsxs)(`span`,{className:`chat-skill-pill max-w-full shrink-0`,"data-skill":n.name,title:`/${n.name}`,children:[`/`,m(n.name)]},r):n.kind===`command`?(0,X.jsxs)(`span`,{className:`chat-command-pill max-w-full shrink-0`,"data-slash-command":n.name,children:[`/`,n.name]},r):n.kind===`context_ref`?(0,X.jsxs)(`span`,{className:J(`chat-context-ref-pill chat-context-ref-pill-message max-w-full shrink-0`,wm(u,t)),"data-context-ref-id":n.refId,"data-ref-kind":n.ref?.kind??``,"data-file-kind":n.ref?.fileKind??``,title:n.ref?.title,"aria-label":n.ref?.title??c,children:[(0,X.jsx)(Tm,{contextRef:n.ref}),(0,X.jsx)(`span`,{className:`min-w-0 truncate`,children:n.ref?.title??c})]},r):n.text?(0,X.jsx)(`div`,{className:`chat-user-message-segment markdown-content inline-block min-w-0 max-w-full align-baseline text-fg`,children:(0,X.jsx)(Ld,{content:n.text,compact:!0,breaks:!0})},r):null},t[18]=u,t[19]=c,t[20]=m,t[21]=e):e=t[21],g=f.map(e),t[13]=u,t[14]=f,t[15]=c,t[16]=m,t[17]=g}else g=t[17];let _;return t[22]===g?_=t[23]:(_=(0,X.jsx)(`span`,{className:`inline-flex max-w-full flex-wrap items-baseline gap-x-0 gap-y-1 [text-align:inherit]`,children:g}),t[22]=g,t[23]=_),_});function Dm(e){return e.language}function Om(e){return e.refId?[[e.refId,e]]:[]}function km(e){return e.kind===`skill`}function Am(e){return e.kind!==`text`}function jm(e,t){switch(e.code){case`provider_setup_required`:return{title:t.providerSetupRequiredTitle,body:t.providerSetupRequiredBody.replace(`{{provider}}`,e.provider??t.agentRunErrorUnknownProvider),cta:t.providerSetupRequiredCta,deepLink:`/settings/capabilities/models`};case`provider_auth_invalid`:return{title:t.agentRunErrorAuthInvalidTitle,body:t.agentRunErrorAuthInvalidBody.replace(`{{provider}}`,e.provider??t.agentRunErrorUnknownProvider),cta:t.agentRunErrorCtaProviders,deepLink:`/settings/capabilities/models`};case`rate_limit`:return{title:t.agentRunErrorRateLimitTitle,body:t.agentRunErrorRateLimitBody};case`timeout`:return{title:t.agentRunErrorTimeoutTitle,body:t.agentRunErrorTimeoutBody};case`billing`:return{title:t.agentRunErrorBillingTitle,body:t.agentRunErrorBillingBody};case`credit_budget_exhausted`:return{title:t.creditBudgetExhaustedTitle,body:t.creditBudgetExhaustedBody,cta:t.creditBudgetSettingsCta,deepLink:`/settings/agent-defaults?panel=runtime`};case`model_quota_exhausted`:return{title:t.xopcQuotaExhaustedTitle,body:t.xopcQuotaExhaustedBody};case`platform_token_limit_exceeded`:return{title:t.xopcPlatformLimitTitle,body:t.xopcPlatformLimitBody,cta:t.xopcPlatformLimitCta,deepLink:`/settings/capabilities/models?add=1`};case`send_failed`:return{title:t.agentRunErrorSendFailedTitle,body:t.agentRunErrorSendFailedBody};case`session_not_found`:return{title:t.sessionNotFoundTitle,body:t.sessionNotFoundBody,cta:t.sessionNotFoundCta,deepLink:`/chat/new`};default:return{title:t.agentRunErrorUnknownTitle,body:t.agentRunErrorUnknownBody}}}function Mm(e){let t=(0,Y.c)(4),{code:n}=e;switch(n){case`provider_setup_required`:case`provider_auth_invalid`:{let e;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,X.jsx)(We,{className:`size-4`,strokeWidth:1.75}),t[0]=e):e=t[0],e}case`rate_limit`:case`timeout`:{let e;return t[1]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,X.jsx)(pe,{className:`size-4`,strokeWidth:1.75}),t[1]=e):e=t[1],e}case`billing`:case`credit_budget_exhausted`:case`model_quota_exhausted`:case`platform_token_limit_exceeded`:{let e;return t[2]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,X.jsx)(ss,{className:`size-4`,strokeWidth:1.75}),t[2]=e):e=t[2],e}default:{let e;return t[3]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,X.jsx)(ce,{className:`size-4`,strokeWidth:1.75}),t[3]=e):e=t[3],e}}}function Nm(e){return e===`provider_setup_required`||e===`provider_auth_invalid`||e===`rate_limit`||e===`timeout`||e===`billing`||e===`model_quota_exhausted`||e===`platform_token_limit_exceeded`||e===`session_not_found`?`amber`:`red`}function Pm(e){let t=(0,Y.c)(46),{payload:n}=e,r=d(),i=h(Im),a,o;t[0]!==i||t[1]!==n?(a=y(i).chat,o=jm(n,a),t[0]=i,t[1]=n,t[2]=a,t[3]=o):(a=t[2],o=t[3]);let s=o,c=Nm(n.code),l=c===`amber`?`border-amber-300/60 bg-amber-50 dark:border-amber-500/30 dark:bg-amber-950`:`border-red-300/60 bg-red-50 dark:border-red-500/30 dark:bg-red-950`,u=c===`amber`?`bg-amber-100 text-amber-700 dark:bg-amber-500/20 dark:text-amber-300`:`bg-red-100 text-red-700 dark:bg-red-500/20 dark:text-red-300`,f=c===`amber`?`text-amber-900 dark:text-amber-100`:`text-red-900 dark:text-red-100`,p=c===`amber`?`text-amber-900/85 dark:text-amber-100/80`:`text-red-900/85 dark:text-red-100/80`,m=c===`amber`?`text-amber-800/80 hover:text-amber-900 dark:text-amber-200/80 dark:hover:text-amber-100`:`text-red-800/80 hover:text-red-900 dark:text-red-200/80 dark:hover:text-red-100`,g=c===`amber`?`bg-amber-100/60 text-amber-900 dark:bg-amber-500/15 dark:text-amber-100`:`bg-red-100/60 text-red-900 dark:bg-red-500/15 dark:text-red-100`,_=c===`amber`?`bg-amber-600 text-white hover:bg-amber-700 dark:bg-amber-500 dark:text-amber-950 dark:hover:bg-amber-400`:`bg-red-600 text-white hover:bg-red-700 dark:bg-red-500 dark:text-red-950 dark:hover:bg-red-400`,v=n.code===`model_quota_exhausted`,b=Fm,x;t[4]===l?x=t[5]:(x=J(`flex flex-col gap-2 rounded-xl border p-3`,l),t[4]=l,t[5]=x);let S;t[6]===u?S=t[7]:(S=J(`flex size-8 shrink-0 items-center justify-center rounded-lg`,u),t[6]=u,t[7]=S);let C;t[8]===n.code?C=t[9]:(C=(0,X.jsx)(Mm,{code:n.code}),t[8]=n.code,t[9]=C);let w;t[10]!==S||t[11]!==C?(w=(0,X.jsx)(`span`,{className:S,"aria-hidden":!0,children:C}),t[10]=S,t[11]=C,t[12]=w):w=t[12];let T;t[13]===f?T=t[14]:(T=J(`text-sm font-semibold`,f),t[13]=f,t[14]=T);let E;t[15]!==s.title||t[16]!==T?(E=(0,X.jsx)(`h3`,{className:T,children:s.title}),t[15]=s.title,t[16]=T,t[17]=E):E=t[17];let D;t[18]===p?D=t[19]:(D=J(`mt-1 text-xs leading-relaxed`,p),t[18]=p,t[19]=D);let O;t[20]!==s.body||t[21]!==D?(O=(0,X.jsx)(`p`,{className:D,children:s.body}),t[20]=s.body,t[21]=D,t[22]=O):O=t[22];let k;t[23]!==E||t[24]!==O?(k=(0,X.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[E,O]}),t[23]=E,t[24]=O,t[25]=k):k=t[25];let A;t[26]!==k||t[27]!==w?(A=(0,X.jsxs)(`div`,{className:`flex items-start gap-3`,children:[w,k]}),t[26]=k,t[27]=w,t[28]=A):A=t[28];let j;t[29]!==s.cta||t[30]!==s.deepLink||t[31]!==_||t[32]!==a||t[33]!==r||t[34]!==v?(j=v?(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center justify-end gap-2`,children:[(0,X.jsx)(`button`,{type:`button`,className:J(`inline-flex h-8 items-center rounded-lg px-3 py-1.5 text-xs font-medium transition-colors`,_),onClick:()=>b(`/models/credits/purchase`),children:a.xopcQuotaPurchaseCta}),(0,X.jsx)(`button`,{type:`button`,className:`inline-flex h-8 items-center rounded-lg border border-current px-3 py-1.5 text-xs font-medium transition-colors hover:bg-amber-500/10`,onClick:()=>b(`/models/credits/request`),children:a.xopcQuotaRequestCta}),(0,X.jsx)(`button`,{type:`button`,className:`inline-flex h-8 items-center rounded-lg border border-current px-3 py-1.5 text-xs font-medium transition-colors hover:bg-amber-500/10`,onClick:()=>r(`/settings/capabilities/models?add=1`),children:a.xopcQuotaOwnProviderCta})]}):s.cta&&s.deepLink?(0,X.jsx)(`div`,{className:`flex flex-wrap items-center justify-end gap-2`,children:(0,X.jsx)(`button`,{type:`button`,className:J(`inline-flex h-8 items-center rounded-lg px-3 py-1.5 text-xs font-medium transition-colors`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-amber-500/50`,_),onClick:()=>r(s.deepLink),children:s.cta})}):null,t[29]=s.cta,t[30]=s.deepLink,t[31]=_,t[32]=a,t[33]=r,t[34]=v,t[35]=j):j=t[35];let M;t[36]!==m||t[37]!==g||t[38]!==a||t[39]!==n.message?(M=n.message?(0,X.jsxs)(`details`,{className:`group min-w-0 text-xs`,children:[(0,X.jsx)(`summary`,{className:J(`cursor-pointer select-none underline-offset-2`,m),children:a.agentRunErrorDetailToggle}),(0,X.jsx)(`pre`,{className:J(`mt-2 max-h-40 w-full min-w-0 overflow-y-auto overflow-x-hidden whitespace-pre-wrap break-words rounded-md p-2 font-mono text-[11px] [overflow-wrap:anywhere]`,g),children:n.message})]}):null,t[36]=m,t[37]=g,t[38]=a,t[39]=n.message,t[40]=M):M=t[40];let N;return t[41]!==A||t[42]!==j||t[43]!==M||t[44]!==x?(N=(0,X.jsxs)(`section`,{role:`alert`,"aria-live":`polite`,className:x,children:[A,j,M]}),t[41]=A,t[42]=j,t[43]=M,t[44]=x,t[45]=N):N=t[45],N}function Fm(e){return window.open(`https://console.xopc.ai${e}`,`_blank`,`noopener,noreferrer`)}function Im(e){return e.language}function Lm(e){let t=(0,Y.c)(8),{errorText:n}=e,r;t[0]===n?r=t[1]:(r=zn(n),t[0]=n,t[1]=r);let i=r;if(!i)return null;let a;t[2]===i?a=t[3]:(a=mr(i),t[2]=i,t[3]=a);let o=a;if(o){let e;return t[4]===o?e=t[5]:(e=(0,X.jsx)(`div`,{className:`mb-4`,children:(0,X.jsx)(Rm,{payload:o})}),t[4]=o,t[5]=e),e}let s;return t[6]===i?s=t[7]:(s=(0,X.jsx)(`div`,{className:`mb-4`,children:(0,X.jsx)(Pm,{payload:i})}),t[6]=i,t[7]=s),s}function Rm(e){let t=(0,Y.c)(32),{payload:n}=e,r=d(),i=h(zm),a,o,s,c;t[0]!==i||t[1]!==n.kind||t[2]!==n.provider?(o=y(i).chat,a=n.kind===`provider_auth_invalid`,c=a?o.agentRunErrorAuthInvalidTitle:o.providerSetupRequiredTitle,s=(a?o.agentRunErrorAuthInvalidBody:o.providerSetupRequiredBody).replace(`{{provider}}`,n.provider),t[0]=i,t[1]=n.kind,t[2]=n.provider,t[3]=a,t[4]=o,t[5]=s,t[6]=c):(a=t[3],o=t[4],s=t[5],c=t[6]);let l=s,u=a?o.agentRunErrorCtaProviders:o.providerSetupRequiredCta,f=a?o.agentRunErrorDetailToggle:o.providerSetupRequiredDetailToggle,p=a?`alert`:`status`,m;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(m=J(`flex flex-col gap-2 rounded-xl border border-amber-300/60 bg-amber-50 p-3`,`dark:border-amber-500/30 dark:bg-amber-950`),t[7]=m):m=t[7];let g;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(g=J(`flex size-8 shrink-0 items-center justify-center rounded-lg`,`bg-amber-100 text-amber-700 dark:bg-amber-500/20 dark:text-amber-300`),t[8]=g):g=t[8];let _;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(_=(0,X.jsx)(`span`,{className:g,"aria-hidden":!0,children:(0,X.jsx)(We,{className:`size-4`,strokeWidth:1.75})}),t[9]=_):_=t[9];let v;t[10]===c?v=t[11]:(v=(0,X.jsx)(`h3`,{className:`text-sm font-semibold text-amber-900 dark:text-amber-100`,children:c}),t[10]=c,t[11]=v);let b;t[12]===l?b=t[13]:(b=(0,X.jsx)(`p`,{className:`mt-1 text-xs leading-relaxed text-amber-900/85 dark:text-amber-100/80`,children:l}),t[12]=l,t[13]=b);let x;t[14]!==v||t[15]!==b?(x=(0,X.jsxs)(`div`,{className:`flex items-start gap-3`,children:[_,(0,X.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[v,b]})]}),t[14]=v,t[15]=b,t[16]=x):x=t[16];let S;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(S=J(`inline-flex h-8 items-center rounded-lg px-3 py-1.5 text-xs font-medium`,`bg-amber-600 text-white hover:bg-amber-700`,`dark:bg-amber-500 dark:text-amber-950 dark:hover:bg-amber-400`,`transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-amber-500/50`),t[17]=S):S=t[17];let C;t[18]!==r||t[19]!==n.deepLink?(C=()=>r(n.deepLink),t[18]=r,t[19]=n.deepLink,t[20]=C):C=t[20];let w;t[21]!==u||t[22]!==C?(w=(0,X.jsx)(`div`,{className:`flex flex-wrap items-center justify-end gap-2`,children:(0,X.jsx)(`button`,{type:`button`,className:S,onClick:C,children:u})}),t[21]=u,t[22]=C,t[23]=w):w=t[23];let T;t[24]!==f||t[25]!==n.message?(T=n.message?(0,X.jsxs)(`details`,{className:`group min-w-0 text-xs`,children:[(0,X.jsx)(`summary`,{className:`cursor-pointer select-none text-amber-800/80 underline-offset-2 hover:text-amber-900 dark:text-amber-200/80 dark:hover:text-amber-100`,children:f}),(0,X.jsx)(`pre`,{className:`mt-2 max-h-40 w-full min-w-0 overflow-y-auto overflow-x-hidden whitespace-pre-wrap break-words rounded-md bg-amber-100/60 p-2 font-mono text-[11px] text-amber-900 dark:bg-amber-500/15 dark:text-amber-100 [overflow-wrap:anywhere]`,children:n.message})]}):null,t[24]=f,t[25]=n.message,t[26]=T):T=t[26];let E;return t[27]!==w||t[28]!==T||t[29]!==p||t[30]!==x?(E=(0,X.jsxs)(`section`,{role:p,"aria-live":`polite`,className:m,children:[x,w,T]}),t[27]=w,t[28]=T,t[29]=p,t[30]=x,t[31]=E):E=t[31],E}function zm(e){return e.language}var Bm=/^No API key found for (\S+)/i;function Vm(e){let t=e.trim();if(t.startsWith(`{`))try{let e=JSON.parse(t);return e.kind!==`provider_setup_required`||typeof e.provider!=`string`||!e.provider||typeof e.deepLink!=`string`||!e.deepLink.startsWith(`/settings/`)?null:{kind:`provider_setup_required`,provider:e.provider,deepLink:e.deepLink,message:typeof e.message==`string`?e.message:void 0}}catch{return null}let n=Bm.exec(t);return n?{kind:`provider_setup_required`,provider:n[1].replace(/[.,]$/,``),deepLink:`/settings/capabilities/models`,message:t}:null}var Hm=new WeakMap;function Um(e){let t=Hm.get(e),n=rr(e);return t??(n?[n]:[])}function Wm(e){let t=[];for(let n of e){let e=t[t.length-1];if(n.type===`text`&&e?.type===`text`&&n.segmentId===e.segmentId&&n.presentation===e.presentation){t[t.length-1]={...e,text:`${e.text??``}${n.text??``}`},dr(e,t[t.length-1]),Hm.set(t[t.length-1],[...Um(e),...Um(n)]);continue}t.push(n)}return t}var Gm=/^\s*\|?\s*:?-{3,}:?\s*(?:\|\s*:?-{3,}:?\s*)+\|?\s*$/m,Km=/^\s{0,3}(?:[-+*]|\d+[.)])\s+/m,qm=/^\s{0,3}```/gm;function Jm(e){return(e.match(qm)?.length??0)%2==1?`code`:Gm.test(e)?`table`:Km.test(e)?`list`:e.length>=4096?`long_text`:`plain`}var Ym={plain:50,long_text:50,list:50,table:72,code:64};function Xm({tailKind:e,latestParseMs:t}){let n=Ym[e];return!Number.isFinite(t)||t<=16?n:Math.min(120,Math.max(n,Math.ceil(t*2)))}var Zm=class{targetLength;lastArrivalAt=null;lastDrainAt=null;arrivalRate=40;outputRate=40;carry=0;constructor(e){this.targetLength=e}reset(e){this.targetLength=e,this.lastArrivalAt=null,this.lastDrainAt=null,this.arrivalRate=40,this.outputRate=40,this.carry=0}observe(e,t){let n=e-this.targetLength;if(n<=0)return;let r=this.lastArrivalAt===null?n:n*1e3/Math.max(10,t-this.lastArrivalAt);this.arrivalRate=Math.max(1,this.arrivalRate*.9+r*.1),this.targetLength=e,this.lastArrivalAt=t,this.lastDrainAt??=t}nextLength(e,t,n){let r=t.length-e;if(r<=0)return t.length;let i=Math.max(0,Math.min(120,n-(this.lastDrainAt??n)));this.lastDrainAt=n;let a=Math.max(20,this.arrivalRate,r/.6);this.outputRate+=(a-this.outputRate)*(1-Math.exp(-i/120));let o=this.carry+this.outputRate*i/1e3,s=ld(t,Math.min(t.length,e+Math.floor(o)));return this.carry=Math.max(0,o-(s-e)),s===t.length&&(this.lastDrainAt=null,this.carry=0),s}};function Qm(e,t,n,r=!1,i,a=!1){let[o,s]=(0,Z.useState)(()=>e),[c]=(0,Z.useState)(()=>new Zm(e.length)),l=(0,Z.useRef)(e),u=(0,Z.useRef)(o),d=(0,Z.useRef)(null),f=(0,Z.useRef)(null),p=(0,Z.useRef)(50),m=(0,Z.useRef)(t||r),h=(0,Z.useRef)(!1),g=(0,Z.useRef)(i);return g.current=i,(0,Z.useEffect)(()=>{let r=!e.startsWith(l.current);l.current=e;let i=()=>{d.current!==null&&window.clearTimeout(d.current),f.current!==null&&window.cancelAnimationFrame(f.current),d.current=null,f.current=null},o=()=>{i(),c.reset(e.length),u.current=e,s(e)},_=()=>{m.current&&!h.current&&(h.current=!0,m.current=!1,g.current?.())};if(t&&(m.current=!0,h.current=!1,ht(n,e.length)),r||!e.startsWith(u.current)||document.visibilityState===`hidden`||window.matchMedia?.(`(prefers-reduced-motion: reduce)`).matches||!t){o(),t||_();return}if(t&&a&&u.current.length===0){lt(n,e.length),o();return}if(c.observe(e.length,performance.now()),p.current=Xm({tailKind:Jm(e.slice(-8192)),latestParseMs:ct(n)}),e===u.current||d.current!==null||f.current!==null)return;let v=()=>{d.current=window.setTimeout(()=>{d.current=null;let e=()=>{f.current=null;let e=l.current,t=document.visibilityState===`hidden`?e.length:c.nextLength(u.current.length,e,performance.now()),r=e.slice(0,t);r!==u.current&&(u.current=r,lt(n,r.length),s(r)),r!==e&&v()};document.visibilityState===`hidden`?e():f.current=window.requestAnimationFrame(e)},p.current)};v()},[e,n,t,a,c]),(0,Z.useEffect)(()=>()=>{d.current!==null&&window.clearTimeout(d.current),f.current!==null&&window.cancelAnimationFrame(f.current),d.current=null,f.current=null},[]),!t||!e.startsWith(o)||t&&a&&!o?e:o}function $m(e){if(!e.filePath)return``;if(!e.lineStart)return e.filePath;let t=e.lineEnd&&e.lineEnd!==e.lineStart?`-${e.lineEnd}`:``;return`${e.filePath}:${e.lineStart}${t}`}function eh(e){let t=(0,Y.c)(33),{review:n}=e,r=h(nh),i,a,o,s,c,l,u,d,f;if(t[0]!==r||t[1]!==n.analysisMarkdown||t[2]!==n.errorMessage||t[3]!==n.overallCorrectness||t[4]!==n.source||t[5]!==n.status||t[6]!==n.target){o=y(r).chat.reviewCard,i=n.status===`preparing`||n.status===`reviewing`;let e=n.status===`preparing`;a=n.source===`local`&&n.overallCorrectness===`unknown`;let p=n.overallCorrectness===`patch is incorrect`?`border-red-500/30 bg-red-500/5 text-red-700 dark:text-red-300`:n.overallCorrectness===`patch is correct`?`border-emerald-500/30 bg-emerald-500/5 text-emerald-700 dark:text-emerald-300`:`border-edge bg-surface-inset text-fg-secondary`;s=`min-w-0 rounded-lg border border-edge bg-surface-inset p-3`;let m;t[16]===i?m=t[17]:(m=i?(0,X.jsx)(Ye,{className:`size-4 animate-spin text-accent`,"aria-hidden":!0}):null,t[16]=i,t[17]=m),c=(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[m,(0,X.jsx)(`div`,{className:`text-sm font-semibold text-fg-primary`,children:i?o.running:o.finished}),i?(0,X.jsx)(`div`,{className:`rounded-md border border-edge bg-surface-inset px-1.5 py-0.5 text-[11px] font-medium text-fg-secondary`,children:e?o.collecting:o.assistant}):(0,X.jsx)(`div`,{className:J(`rounded-md border px-1.5 py-0.5 text-[11px] font-medium`,p),children:o.correctness[n.overallCorrectness]})]}),l=(0,X.jsx)(`div`,{className:`mt-1 text-xs text-fg-tertiary`,children:o.basedOn.replace(`{{target}}`,n.target)}),u=i&&!n.analysisMarkdown?(0,X.jsx)(`div`,{className:`mt-3 text-sm text-fg-secondary`,children:e?o.preparing:o.checking}):null,d=n.analysisMarkdown?(0,X.jsxs)(`div`,{className:`mt-3 rounded-md border border-edge-subtle bg-surface px-2.5 py-2`,children:[(0,X.jsx)(`div`,{className:`mb-1 text-xs font-medium text-fg-secondary`,children:o.assistant}),(0,X.jsx)(Ld,{content:n.analysisMarkdown,compact:!0,streaming:i})]}):null,f=n.status===`error`&&n.errorMessage?(0,X.jsx)(`div`,{className:`mt-3 rounded-md border border-warning/30 bg-warning/5 px-2.5 py-2 text-sm text-warning`,children:o.error.replace(`{{error}}`,n.errorMessage)}):null,t[0]=r,t[1]=n.analysisMarkdown,t[2]=n.errorMessage,t[3]=n.overallCorrectness,t[4]=n.source,t[5]=n.status,t[6]=n.target,t[7]=i,t[8]=a,t[9]=o,t[10]=s,t[11]=c,t[12]=l,t[13]=u,t[14]=d,t[15]=f}else i=t[7],a=t[8],o=t[9],s=t[10],c=t[11],l=t[12],u=t[13],d=t[14],f=t[15];let p;t[18]!==i||t[19]!==a||t[20]!==n.findings||t[21]!==n.overallExplanation||t[22]!==n.summary||t[23]!==o?(p=i?null:(0,X.jsxs)(X.Fragment,{children:[n.summary?(0,X.jsx)(`div`,{className:`mt-3 text-sm text-fg-secondary`,children:n.summary}):null,(0,X.jsx)(`div`,{className:`mt-3 space-y-2`,children:n.findings.length===0?(0,X.jsx)(`div`,{className:`text-sm text-fg-secondary`,children:a?o.noModelFindings:o.noFindings}):n.findings.map(th)}),n.overallExplanation?(0,X.jsx)(`div`,{className:`mt-3 whitespace-pre-wrap text-sm text-fg-secondary`,children:n.overallExplanation}):null]}),t[18]=i,t[19]=a,t[20]=n.findings,t[21]=n.overallExplanation,t[22]=n.summary,t[23]=o,t[24]=p):p=t[24];let m;return t[25]!==s||t[26]!==c||t[27]!==l||t[28]!==u||t[29]!==d||t[30]!==f||t[31]!==p?(m=(0,X.jsxs)(`div`,{className:s,children:[c,l,u,d,f,p]}),t[25]=s,t[26]=c,t[27]=l,t[28]=u,t[29]=d,t[30]=f,t[31]=p,t[32]=m):m=t[32],m}function th(e,t){let n=$m(e);return(0,X.jsxs)(`div`,{className:`rounded-md border border-edge bg-surface p-2`,children:[(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,X.jsxs)(`span`,{className:`rounded border border-edge bg-surface-inset px-1.5 py-0.5 text-[11px] font-semibold text-fg-secondary`,children:[`P`,e.priority]}),(0,X.jsx)(`span`,{className:`min-w-0 text-sm font-medium text-fg-primary`,children:e.title})]}),n?(0,X.jsx)(`div`,{className:`mt-1 break-all text-xs text-fg-tertiary`,children:n}):null,e.body?(0,X.jsx)(`div`,{className:`mt-1 text-sm text-fg-secondary`,children:e.body}):null]},`${e.title}-${t}`)}function nh(e){return e.language}function rh({resolution:e,conversationId:t,onClose:n}){let r=h(e=>e.language),i=y(r).chat.fileReference,[a,o]=(0,Z.useState)(!1),[s,c]=(0,Z.useState)(``),[l,u]=(0,Z.useState)(!1),d=pa()&&!!window.electronAPI?.shell,f=e.target.path,p=e.status===`ready`?e.ref:null,m=p?.displayName??f.split(/[\\/]/).pop()??f,g=p?.absolutePath??p?.workspaceRelativePath??f,_=(0,Z.useCallback)(()=>{gi(g).then(e=>{e&&(o(!0),window.setTimeout(()=>o(!1),2e3))})},[g]),v=async e=>{let n=window.electronAPI?.shell;if(!(!p?.fileRefId||!d||!n||l)){c(``),u(!0);try{let r=await ka(p.fileRefId,e,{conversationId:t?.trim()||void 0});if(e===`openExternal`){let e=await n.openPath(r.absolutePath);e.ok||c(e.error)}else(await n.showItemInFolder(r.absolutePath)).success||c(i.resolveFailedDescription)}catch(e){c(e instanceof Error?e.message:String(e))}finally{u(!1)}}};return(0,X.jsxs)(`div`,{className:J(`mt-2 flex max-w-xl min-w-0 flex-col gap-1.5 rounded-lg border px-2.5 py-2 text-xs`,e.status===`ready`&&e.ref.exists&&e.ref.scope!==`missing`?`border-edge-subtle bg-surface-panel`:`border-warning/30 bg-warning/5`),children:[(0,X.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1.5`,children:[e.status===`loading`?(0,X.jsx)(Ye,{className:`size-3.5 shrink-0 animate-spin text-fg-muted`,strokeWidth:1.75,"aria-hidden":!0}):e.status===`error`||p?.scope===`missing`||p?.scope===`invalid`?(0,X.jsx)(ce,{className:`size-3.5 shrink-0 text-warning`,strokeWidth:1.75,"aria-hidden":!0}):(0,X.jsx)(Ce,{className:`size-3.5 shrink-0 text-accent`,strokeWidth:1.75,"aria-hidden":!0}),(0,X.jsx)(`span`,{className:`min-w-0 truncate font-medium`,children:m}),(0,X.jsx)(`button`,{type:`button`,onClick:n,className:J(`ml-auto inline-flex size-5 shrink-0 items-center justify-center rounded text-fg-muted hover:bg-surface-hover hover:text-fg`,ta.focusRingPanel),"aria-label":i.closeActions,children:(0,X.jsx)(Kt,{className:`size-3`,strokeWidth:1.75,"aria-hidden":!0})})]}),(0,X.jsx)(`p`,{className:`line-clamp-2 break-all text-[11px] leading-snug text-fg-muted`,children:e.status===`loading`?i.resolvingDescription:e.status===`error`?e.message:p?.scope===`missing`?i.missingDescription:p?.scope===`invalid`?i.invalidDescription:d?i.externalDescription:i.browserExternalDescription}),(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-1 pt-0.5`,children:[d&&p?.capabilities.includes(`openExternal`)?(0,X.jsxs)(`button`,{type:`button`,className:ih,disabled:l,onClick:()=>void v(`openExternal`),children:[(0,X.jsx)(xe,{className:`size-3`,"aria-hidden":!0}),(0,X.jsx)(`span`,{children:i.openExternal})]}):null,d&&p?.capabilities.includes(`revealInFolder`)?(0,X.jsxs)(`button`,{type:`button`,className:ih,disabled:l,onClick:()=>void v(`revealInFolder`),children:[(0,X.jsx)(De,{className:`size-3`,"aria-hidden":!0}),(0,X.jsx)(`span`,{children:i.revealInFolder})]}):null,p?.manageRoute?(0,X.jsxs)(`a`,{className:ih,href:`#${p.manageRoute}`,children:[(0,X.jsx)(It,{className:`size-3`,"aria-hidden":!0}),(0,X.jsx)(`span`,{children:y(r).nav.settings})]}):null,(0,X.jsxs)(`button`,{type:`button`,className:ih,onClick:_,children:[(0,X.jsx)(_e,{className:`size-3`,strokeWidth:1.75,"aria-hidden":!0}),(0,X.jsx)(`span`,{children:a?y(r).chat.messageCopied:i.copyPath})]})]}),s?(0,X.jsx)(`p`,{role:`alert`,className:`text-warning`,children:s}):null]})}var ih=J(`inline-flex items-center gap-1 rounded-md px-1.5 py-0.5 text-[11px] text-fg-muted transition-colors hover:bg-surface-hover hover:text-fg`,ta.focusRingPanel,ta.press);function ah({taskRunId:e,content:t,sourceConversationId:n,sourcePartIds:r=[],compact:i,conversationId:a,projectId:o,streaming:s=!1,animateInitialContent:c=!1,onProgressiveRenderComplete:l,responseRunId:u,immediateFirstCommit:d=!1}){let f=ym(n,r)??t,p=`assistant-markdown-${(0,Z.useId)()}`,m=Qm(f,s,p,c,l,d);(0,Z.useLayoutEffect)(()=>{if(!u||!m.trim())return;let e=window.requestAnimationFrame(()=>fr(u,m));return()=>window.cancelAnimationFrame(e)},[u,m,s]),(0,Z.useEffect)(()=>{if(s)return dt(p),()=>_t(p)},[p,s]);let g=Oi(e=>e.setPath),_=y(h(e=>e.language)).chat.fileReference,[v,b]=(0,Z.useState)(null),x=(0,Z.useRef)(0);(0,Z.useEffect)(()=>()=>{x.current++},[a,o,e]);let S=(0,Z.useCallback)(async t=>{try{return await Ea(t.path,{projectId:o?.trim()||void 0,conversationId:a?.trim()||void 0,taskRunId:e})}catch(n){if(e||o||!a)throw n;return Ea(t.path)}},[o,a,e]),C=(0,Z.useCallback)(t=>{let n=++x.current;if(t.kind===`workspace-relative`){b({status:`loading`,target:t}),(async()=>{let r=await ja(t.path,{projectId:o?.trim()||void 0,conversationId:a?.trim()||void 0,taskRunId:e});if(n!==x.current)return;if(r?.capabilities.includes(`preview`)&&(r.absolutePath||r.workspaceRelativePath)){g(r.absolutePath||r.workspaceRelativePath,t.line,o,a),b(null);return}let i=!e&&!o&&a?await ja(t.path):null;if(n===x.current){if(i?.capabilities.includes(`preview`)&&(i.absolutePath||i.workspaceRelativePath)){g(i.absolutePath||i.workspaceRelativePath,t.line),b(null);return}b(r?{status:`ready`,target:t,ref:r}:{status:`error`,target:t,message:_.resolveFailedDescription})}})().catch(e=>{n===x.current&&b({status:`error`,target:t,message:e instanceof Error?e.message:String(e)})});return}b({status:`loading`,target:t}),ja(t.path,{projectId:o?.trim()||void 0,conversationId:a?.trim()||void 0,taskRunId:e}).then(e=>{if(n===x.current){if(!e){b({status:`error`,target:t,message:_.resolveFailedDescription});return}if(e.capabilities.includes(`preview`)&&(e.absolutePath||e.workspaceRelativePath)){g(e.absolutePath||e.workspaceRelativePath,t.line,o,a),b(null);return}b({status:`ready`,target:t,ref:e})}}).catch(e=>{n===x.current&&b({status:`error`,target:t,message:e instanceof Error?e.message:String(e)})})},[_.resolveFailedDescription,o,a,e,g]),w=Vm(f);return(0,X.jsxs)(X.Fragment,{children:[w?(0,X.jsx)(Rm,{payload:w}):(0,X.jsx)(Ld,{content:m,streaming:s||m!==f,compact:i,onWorkspaceFileOpen:C,onWorkspaceImageLoad:S,renderMermaid:!0,mermaidActions:!0,streamingMetricsKey:p}),v?(0,X.jsx)(rh,{resolution:v,conversationId:a,onClose:()=>{x.current++,b(null)}}):null]})}function oh(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,g){if(e.type===`text`)return n?(0,X.jsx)(`div`,{className:`min-w-0`,children:(0,X.jsx)(Em,{text:lr(e.text??``),conversationId:s,document:f,contextRefs:p})},t):(0,X.jsx)(`div`,{className:`assistant-markdown-content markdown-content min-w-0`,children:(0,X.jsx)(ah,{content:e.text,sourcePartIds:Um(e),sourceConversationId:s,taskRunId:m,compact:!0,conversationId:c??s,projectId:l,streaming:r,animateInitialContent:u,onProgressiveRenderComplete:d,responseRunId:h,immediateFirstCommit:g})},t);if(e.type===`image`&&e.source?.data){let n=o??0;return a?(0,X.jsx)(`button`,{type:`button`,className:J(`inline-block max-w-full rounded-lg p-0 text-left`,ta.press,ta.focusRingPanel,`cursor-pointer`),onClick:()=>a(e,n),title:i,"aria-label":i,children:(0,X.jsx)(`img`,{src:e.source.data,className:`max-h-48 max-w-64 rounded-lg align-top object-contain`,alt:``})},t):(0,X.jsx)(`img`,{src:e.source.data,className:`max-h-48 max-w-64 rounded-lg object-contain`,alt:``},t)}return e.type===`review`?(0,X.jsx)(eh,{review:e},t):null}function sh(e){let t=(0,Y.c)(24),{taskRunId:n,content:r,isUser:i,isAssistantMessageStreaming:a,imagePreviewLabel:o,onImagePreview:s,conversationId:c,workspaceConversationId:l,projectId:u,progressiveRender:d,onProgressiveRenderComplete:f,userTurnDocument:p,contextRefs:m,responseRunId:h,immediateFirstCommit:g,renderActivity:_,processItems:v,processCollapsed:y}=e,b=d!==void 0&&d,x=g!==void 0&&g,S=y!==void 0&&y,C;if(t[0]!==r||t[1]!==m||t[2]!==c||t[3]!==o||t[4]!==x||t[5]!==a||t[6]!==i||t[7]!==s||t[8]!==f||t[9]!==S||t[10]!==v||t[11]!==b||t[12]!==u||t[13]!==_||t[14]!==h||t[15]!==n||t[16]!==p||t[17]!==l){let e=i?r:Wm(r),d;t[19]===v?d=t[20]:(d=new Set(v?[...v].map(rr).filter(Boolean):[]),t[19]=v,t[20]=d);let g=d,y;t[21]!==v||t[22]!==g?(y=e=>v?.has(e)||!!(rr(e)&&g.has(rr(e))),t[21]=v,t[22]=g,t[23]=y):y=t[23];let w=y,T=e.findLastIndex(ch),E=e.at(-1),D=T<0&&E?.type===`text`&&E.presentation===void 0?e.length-1:-1,O=a?Math.max(T,D):-1,k=[],A=0,j=0;for(;A<e.length;){let t=e[A];if(t.type===`thinking`||t.type===`tool_use`){let n=A,r=[];for(;A<e.length;){let t=e[A];if(t.type!==`thinking`&&t.type!==`tool_use`)break;r.push(t),A++}_&&k.push((0,X.jsx)(`div`,{"data-assistant-activity":!0,"data-assistant-process-item":v?!0:void 0,hidden:S,children:_(r,A===e.length)},rr(t)??`activity-${n}`))}else{let e=t.type===`image`?j++:0,r=oh(t,rr(t)??`block-${A}`,i,A===O,o,s,t.type===`image`?e:A,c,l,u,b,f,i&&A===0?p:void 0,i&&A===0?m:void 0,n,h,x);r&&k.push(v?(0,X.jsx)(`div`,{"data-assistant-process-item":w(t)||void 0,hidden:S&&w(t),children:r},rr(t)??`block-${A}`):r),A++}}C=(0,X.jsx)(X.Fragment,{children:k}),t[0]=r,t[1]=m,t[2]=c,t[3]=o,t[4]=x,t[5]=a,t[6]=i,t[7]=s,t[8]=f,t[9]=S,t[10]=v,t[11]=b,t[12]=u,t[13]=_,t[14]=h,t[15]=n,t[16]=p,t[17]=l,t[18]=C}else C=t[18];return C}function ch(e){return e.type===`text`&&e.presentation===`pending`}var lh=[`readFile`,`editFile`,`writeFile`,`runCommand`,`memorySearch`,`codeSearch`,`webSearch`,`search`,`fetchUrl`,`openUrl`,`listDir`,`other`];function uh(e,t){return aa(e,t)}function dh(e){let t=new Map;for(let n of e){if(n.type!==`tool_use`)continue;let e=uh(n.name,n.activity),r=t.get(e)??{total:0,running:0};r.total+=1,(n.status===`running`||n.activity?.status===`running`)&&(r.running+=1),t.set(e,r)}return t}function fh(e,t){switch(e){case`webSearch`:return t.webSearch;case`memorySearch`:return t.memorySearch;case`codeSearch`:return t.codeSearch;case`search`:return t.search;case`readFile`:return t.readFile;case`editFile`:return t.editFile;case`writeFile`:return t.writeFile;case`runCommand`:return t.runCommand;case`listDir`:return t.listDir;case`openUrl`:return t.openUrl;case`fetchUrl`:return t.fetchUrl;case`other`:return t.other}}function ph(e,t,n){let r=dh(e),i=[];for(let e of lh){let t=r.get(e);t&&t.running>0&&i.push(e)}if(i.length===1){let r=[...e].reverse().find(e=>e.type===`tool_use`&&(e.status===`running`||e.activity?.status===`running`));return(r?n?.(r):null)||fh(i[0],t)}return i.length>1?t.mixed:e.some(e=>e.type===`thinking`&&e.streaming)?t.thinking:r.size>0?t.mixed:null}function mh(e){return e.filter(e=>e.type!==`thinking`||!!e.text?.trim()||!!e.streaming)}function hh(e,t,n){return ph(e,t,n)}function gh(e){return typeof e==`object`&&e&&!Array.isArray(e)?e:null}function _h(e){if(typeof e!=`string`)return e;try{return JSON.parse(e)}catch{return e}}function vh(e){let t=gh(_h(e));if(!t)return[];let n=gh(t.details)?.results??t.results;if(Array.isArray(n))return n.map(gh).filter(e=>e!==null);let r=Array.isArray(t.content)?t.content:[];for(let e of r){let t=gh(e)?.text,n=gh(_h(t));if(Array.isArray(n?.results))return n.results.map(gh).filter(e=>e!==null)}return[]}function yh(e,t){return e.replace(/\{\{count\}\}/g,String(t))}function bh(e,t){if(e.status===`running`||e.activity?.status===`running`)return{title:t.running,purpose:t.purpose};if(e.status===`error`||e.activity?.status===`failed`)return{title:t.failed,purpose:t.purpose};let n=vh(e.result),r=e.activity?.count??n.length;return{title:r===0?t.empty:yh(r===1?t.found_one:t.found_other,r),purpose:t.purpose}}function xh(e){if(e.scrollHeight<=e.clientHeight)return!1;let t=window.getComputedStyle(e).overflowY;return t===`auto`||t===`scroll`}function Sh(e,t,n){let r=[],i=e instanceof HTMLElement?e:t;for(;i&&i!==t;)xh(i)&&r.push(i),i=i.parentElement;return t.scrollHeight>t.clientHeight&&r.push(t),n!==t&&r.push(n),r}function Ch(e,t){let n=e;for(let e of t){let t=Math.max(0,e.scrollHeight-e.clientHeight),r=Math.min(t,Math.max(0,e.scrollTop+n)),i=r-e.scrollTop;if(i!==0&&(e.scrollTop=r),n-=i,Math.abs(n)<.01)break}}function wh(e,t){if(e.defaultPrevented||e.ctrlKey||e.deltaY===0||Math.abs(e.deltaY)<=Math.abs(e.deltaX))return;let n=t.closest(`.chat-messages`);if(!n)return;let r=t.clientHeight||n.clientHeight,i=e.deltaMode===WheelEvent.DOM_DELTA_LINE?16:e.deltaMode===WheelEvent.DOM_DELTA_PAGE?r:1,a=Sh(e.target,t,n);e.preventDefault(),Ch(e.deltaY*i,a)}function Th(e){if(e===void 0)return``;try{return JSON.stringify(JSON.parse(e),null,2)}catch{try{return JSON.stringify(e,null,2)}catch{return String(e)}}}function Eh(e){if(e==null)return null;try{return typeof e==`string`?JSON.parse(e):e}catch{return null}}function Dh(e){let t=Eh(e),n=t?.path??t?.file_path??t?.filepath??t?.file??t?.qualified_name??t?.function_name;return typeof n==`string`?n:``}function Oh(e){let t=Eh(e),n=t?.url??t?.href??t?.uri??t?.website;return typeof n==`string`?n:``}function kh(e){let t=Eh(e),n=t?.command??t?.cmd??t?.shell??t?.script;return typeof n==`string`?n:``}var Ah=120;function jh(e){if(e==null)return``;let t=Eh(e);if(!t)return typeof e==`string`?e.trim():``;let n=[t.command,t.cmd,t.shell,t.script,t.path,t.file_path,t.filepath,t.file,t.url,t.href,t.uri,t.website,t.query,t.q,t.query_string,t.search_term,t.searchQuery,t.qualified_name,t.function_name,t.name_pattern,t.qn_pattern,t.file_pattern];for(let e of n){if(typeof e==`string`&&e.trim()){let t=e.trim();return t.length>Ah?`${t.slice(0,Ah)}…`:t}if(typeof e==`number`&&Number.isFinite(e))return String(e)}return``}function Mh(e){return e.startsWith(`@@`)?`hunk`:e.startsWith(`+++`)||e.startsWith(`---`)||e.startsWith(`diff `)||e.startsWith(`index `)?`meta`:e.startsWith(`+`)?`add`:e.startsWith(`-`)?`del`:`context`}function Nh(e){let t=e.details?.diff;if(typeof t!=`string`||t.length===0)return null;let n=t.split(`
|
|
17
17
|
`),r=[],i=0,a=0;for(let e of n){let t=Mh(e);t===`add`&&!e.startsWith(`+++`)&&i++,t===`del`&&!e.startsWith(`---`)&&a++,r.push({kind:t,text:e})}return{raw:t,lines:r,added:i,removed:a}}function Ph(e){return e&&typeof e==`object`&&!Array.isArray(e)?e:null}function Fh(e){if(typeof e==`string`)return e;if(!Array.isArray(e))return``;let t=[];for(let n of e){if(!n||typeof n!=`object`)continue;let e=n;e.type===`text`&&typeof e.text==`string`&&t.push(e.text)}return t.join(`
|
|
18
18
|
`)}function Ih(e){if(e==null)return{details:null,text:``,isStructured:!1};if(typeof e==`object`&&!Array.isArray(e)){let t=e;return`content`in t||`details`in t?{details:Ph(t.details),text:Fh(t.content),isStructured:!0}:{details:null,text:``,isStructured:!1}}if(typeof e==`string`){let t=e.trim();if(t.startsWith(`{`))try{let e=Ph(JSON.parse(t));if(e&&(`content`in e||`details`in e))return{details:Ph(e.details),text:Fh(e.content),isStructured:!0}}catch{}return{details:null,text:e,isStructured:!1}}return{details:null,text:String(e),isStructured:!1}}var Lh=`inline-flex max-w-full min-w-0 items-center gap-1 rounded-md bg-accent-soft/40 px-1.5 py-0.5 text-[11px] font-medium text-fg-muted [overflow-wrap:anywhere] dark:bg-accent-soft/25`,Rh=`inline-flex max-w-full min-w-0 items-center break-words rounded-md bg-surface-hover/60 px-1.5 py-0.5 font-mono text-xs text-fg [overflow-wrap:anywhere] dark:bg-surface-hover/35`,zh=`max-h-72 w-full min-w-0 max-w-full overflow-y-auto overflow-x-hidden whitespace-pre-wrap break-words rounded-md bg-surface-hover/60 p-2 font-mono text-xs text-fg-muted [overflow-wrap:anywhere] dark:bg-surface-hover/35`,Bh=`cursor-pointer select-none text-xs text-fg-subtle underline-offset-2 hover:text-fg-muted group-open:text-fg-muted`;function Vh(e){let t=(0,Y.c)(5),{children:n,tone:r}=e,i=r===void 0?`neutral`:r,a=i===`positive`?`bg-emerald-500/15 text-emerald-700 dark:text-emerald-300`:i===`negative`?`bg-red-500/15 text-red-700 dark:text-red-300`:i===`warning`?`bg-amber-500/15 text-amber-700 dark:text-amber-300`:i===`accent`?`bg-accent-soft/70 text-accent-fg dark:bg-accent-soft/50`:``,o;t[0]===a?o=t[1]:(o=J(Lh,a),t[0]=a,t[1]=o);let s;return t[2]!==n||t[3]!==o?(s=(0,X.jsx)(`span`,{className:o,children:n}),t[2]=n,t[3]=o,t[4]=s):s=t[4],s}function Hh(e){let t=(0,Y.c)(3),{children:n,title:r}=e,i;return t[0]!==n||t[1]!==r?(i=(0,X.jsx)(`code`,{className:Rh,title:r,children:n}),t[0]=n,t[1]=r,t[2]=i):i=t[2],i}var Uh=(0,Z.memo)(function(e){let t=(0,Y.c)(10),{text:n,label:r,copiedLabel:i}=e,[a,o]=(0,Z.useState)(!1),s;t[0]===n?s=t[1]:(s=async e=>{e.preventDefault(),e.stopPropagation(),await gi(n)&&(o(!0),window.setTimeout(()=>o(!1),1200))},t[0]=n,t[1]=s);let c;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(c=J(`content-block-action text-fg-muted`,`hover:bg-surface-hover hover:text-fg`,ta.transition,ta.focusRingPanel),t[2]=c):c=t[2];let l=a?i:r,u=a?i:r,d;t[3]===a?d=t[4]:(d=a?(0,X.jsx)(H,{className:`size-3.5`,"aria-hidden":!0}):(0,X.jsx)(_e,{className:`size-3.5`,"aria-hidden":!0}),t[3]=a,t[4]=d);let f;return t[5]!==s||t[6]!==l||t[7]!==u||t[8]!==d?(f=(0,X.jsx)(`button`,{type:`button`,onClick:s,className:c,"aria-label":l,title:u,children:d}),t[5]=s,t[6]=l,t[7]=u,t[8]=d,t[9]=f):f=t[9],f});function Wh(e){let t=(0,Y.c)(8),{summary:n,children:r,defaultOpen:i}=e,a=i!==void 0&&i,o;t[0]===n?o=t[1]:(o=(0,X.jsx)(`summary`,{className:Bh,children:n}),t[0]=n,t[1]=o);let s;t[2]===r?s=t[3]:(s=(0,X.jsx)(`div`,{className:`mt-1.5 min-w-0`,children:r}),t[2]=r,t[3]=s);let c;return t[4]!==a||t[5]!==o||t[6]!==s?(c=(0,X.jsxs)(`details`,{className:`group min-w-0 text-xs`,open:a,children:[o,s]}),t[4]=a,t[5]=o,t[6]=s,t[7]=c):c=t[7],c}function Gh(e){let t=(0,Y.c)(2),{children:n}=e,r;return t[0]===n?r=t[1]:(r=(0,X.jsx)(`pre`,{className:zh,children:n}),t[0]=n,t[1]=r),r}function Kh(e,t){return e.replace(/\{\{(\w+)\}\}/g,(e,n)=>{let r=t[n];return r==null?``:String(r)})}function qh(e){return e.details??{}}var Jh=/\[(\d+)\/(\d+) lines\]\s*$/;function Yh(e){let t=e.match(Jh);if(!t)return null;let n=Number(t[1]),r=Number(t[2]);return!Number.isFinite(n)||!Number.isFinite(r)?null:{shown:n,total:r}}function Xh(e){return e.replace(Jh,``).trimEnd()}var Zh=(0,Z.memo)(function(e){let t=(0,Y.c)(32),{block:n,labels:r}=e,i;t[0]===n.input?i=t[1]:(i=Dh(n.input),t[0]=n.input,t[1]=i);let a=i,o;t[2]===n.result?o=t[3]:(o=Ih(n.result),t[2]=n.result,t[3]=o);let s=o.text,c;t[4]===s?c=t[5]:(c=Yh(s),t[4]=s,t[5]=c);let l=c,u;t[6]===s?u=t[7]:(u=Xh(s),t[6]=s,t[7]=u);let d=u,f;bb0:{if(l){f=l.total;break bb0}if(!d){f=0;break bb0}let e;t[8]===d?e=t[9]:(e=d.split(`
|
|
19
19
|
`),t[8]=d,t[9]=e),f=e.length}let p=f,m;if(t[10]!==d){bb1:{if(!d){m=``;break bb1}let e=d.split(`
|
|
@@ -22,7 +22,7 @@ import{i as e,n as t}from"./rolldown-runtime-aKtaBQYM.js";import{a as n,i as r,n
|
|
|
22
22
|
`);return t.length<=rg?{preview:e,truncated:!1}:{preview:`${t.slice(0,rg).join(`
|
|
23
23
|
`)}\n…`,truncated:!0}}var ag=(0,Z.memo)(function(e){let t=(0,Y.c)(29),{block:n,labels:r}=e,i;t[0]===n.input?i=t[1]:(i=kh(n.input),t[0]=n.input,t[1]=i);let a=i,o;t[2]===n.result?o=t[3]:(o=Ih(n.result),t[2]=n.result,t[3]=o);let s=o,c=n.details&&typeof n.details==`object`&&!Array.isArray(n.details)?n.details:null,l;t[4]!==c||t[5]!==s?(l=c??qh(s),t[4]=c,t[5]=s,t[6]=l):l=t[6];let u=l,d=!!u.truncated,f=typeof u.aggregatedOutput==`string`&&u.aggregatedOutput.length>0?u.aggregatedOutput:s.text,p;t[7]===f?p=t[8]:(p=ig(f),t[7]=f,t[8]=p);let{preview:m}=p,h;t[9]===a?h=t[10]:(h=a?(0,X.jsxs)(Hh,{title:a,children:[(0,X.jsx)(`span`,{className:`mr-1 text-fg-disabled`,children:`$`}),a]}):null,t[9]=a,t[10]=h);let g;t[11]!==r||t[12]!==d?(g=d?(0,X.jsx)(Vh,{children:r.truncatedBadge}):null,t[11]=r,t[12]=d,t[13]=g):g=t[13];let _;t[14]!==a||t[15]!==r?(_=a?(0,X.jsx)(Uh,{text:a,label:r.copyCommand,copiedLabel:r.copied}):null,t[14]=a,t[15]=r,t[16]=_):_=t[16];let v;t[17]!==h||t[18]!==g||t[19]!==_?(v=(0,X.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-baseline gap-x-2 gap-y-1`,children:[h,g,_]}),t[17]=h,t[18]=g,t[19]=_,t[20]=v):v=t[20];let y;t[21]!==n.status||t[22]!==r||t[23]!==f||t[24]!==m?(y=f?(0,X.jsx)(Wh,{summary:r.viewOutput,children:(0,X.jsx)(Gh,{children:m})}):n.status===`running`?null:(0,X.jsx)(`p`,{className:`text-xs text-fg-disabled`,children:r.noOutput}),t[21]=n.status,t[22]=r,t[23]=f,t[24]=m,t[25]=y):y=t[25];let b;return t[26]!==v||t[27]!==y?(b=(0,X.jsxs)(`div`,{className:`content-block-action-scope space-y-1.5`,children:[v,y]}),t[26]=v,t[27]=y,t[28]=b):b=t[28],b}),og=(0,Z.memo)(function(e){let t=(0,Y.c)(27),{block:n,labels:r}=e,i;t[0]===n.input?i=t[1]:(i=Oh(n.input),t[0]=n.input,t[1]=i);let a=i,o;t[2]===n.result?o=t[3]:(o=Ih(n.result),t[2]=n.result,t[3]=o);let s=o,c,l,u,d,f;if(t[4]!==r||t[5]!==s||t[6]!==a){let e=qh(s),n=typeof e.extractedLength==`number`?e.extractedLength:null,i;if(t[12]!==s.text){bb0:{if(!s.text){i=``;break bb0}let e=s.text.split(`
|
|
24
24
|
`);if(e.length<=12){i=s.text;break bb0}i=`${e.slice(0,12).join(`
|
|
25
|
-
`)}\n…`}t[12]=s.text,t[13]=i}else i=t[13];c=i,f=`space-y-1.5`,l=`flex min-w-0 flex-wrap items-baseline gap-x-2 gap-y-1`,t[14]===a?u=t[15]:(u=a?(0,X.jsx)(`a`,{href:a,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex max-w-full min-w-0 items-center break-words rounded-md bg-surface-hover/60 px-1.5 py-0.5 font-mono text-xs text-accent-fg underline-offset-2 hover:underline [overflow-wrap:anywhere] dark:bg-surface-hover/35`,title:a,children:a}):null,t[14]=a,t[15]=u),d=n!=null&&n>0?(0,X.jsx)(Vh,{children:Kh(r.linesBadge,{count:n})}):null,t[4]=r,t[5]=s,t[6]=a,t[7]=c,t[8]=l,t[9]=u,t[10]=d,t[11]=f}else c=t[7],l=t[8],u=t[9],d=t[10],f=t[11];let p;t[16]!==l||t[17]!==u||t[18]!==d?(p=(0,X.jsxs)(`div`,{className:l,children:[u,d]}),t[16]=l,t[17]=u,t[18]=d,t[19]=p):p=t[19];let m;t[20]!==r||t[21]!==c?(m=c?(0,X.jsx)(Wh,{summary:r.viewContent,children:(0,X.jsx)(Gh,{children:c})}):null,t[20]=r,t[21]=c,t[22]=m):m=t[22];let h;return t[23]!==f||t[24]!==p||t[25]!==m?(h=(0,X.jsxs)(`div`,{className:f,children:[p,m]}),t[23]=f,t[24]=p,t[25]=m,t[26]=h):h=t[26],h}),sg=e=>e&&typeof e==`object`&&!Array.isArray(e)?e:void 0,cg=e=>typeof e==`string`&&/^[a-z0-9][a-z0-9_-]{0,63}$/.test(e)?e:void 0;function lg(e){let t={...Ih(e.result).details,...sg(e.details)},n=sg(t?.searchInfo)??t,r=Array.isArray(n?.attempts)?n.attempts.slice(0,24).flatMap(e=>{let t=sg(e),n=cg(t?.provider);return!n||![`success`,`empty`,`error`,`skipped`].includes(String(t?.outcome))?[]:[{provider:n,upstream:cg(t?.upstream),outcome:String(t?.outcome),reason:cg(t?.reason)}]}):[];return{provider:cg(n?.provider),upstream:cg(n?.upstream),cached:typeof n?.cached==`boolean`?n.cached:void 0,capturedAt:typeof n?.capturedAt==`number`&&Number.isSafeInteger(n.capturedAt)&&n.capturedAt>0?n.capturedAt:void 0,attemptCount:typeof n?.attemptCount==`number`&&Number.isSafeInteger(n.attemptCount)&&n.attemptCount>0&&n.attemptCount<=1e4?n.attemptCount:void 0,attempts:r}}function ug(e,t){return{deepseek:`DeepSeek`,"xopc-cloud":`XOPC Cloud`,tavily:`Tavily`,brave:`Brave`,bing:`Bing`,searxng:`SearXNG`,"bing-html":`Bing HTML`,"duckduckgo-html":`DuckDuckGo HTML`,html:`HTML`}[e??``]??t}function dg(e){let t=(0,Y.c)(25),{block:n,summary:r,labels:i,developer:a,language:o}=e,[s,c]=(0,Z.useState)(!1),l;if(t[0]!==n||t[1]!==a||t[2]!==i.attempts||t[3]!==i.cacheHint||t[4]!==i.cacheUnknown||t[5]!==i.cached||t[6]!==i.cachedRoute||t[7]!==i.capturedAt||t[8]!==i.fresh||t[9]!==i.incompleteRoute||t[10]!==i.outcomes||t[11]!==i.provider||t[12]!==i.reasons||t[13]!==i.route||t[14]!==i.unknown||t[15]!==i.upstreamUnknown||t[16]!==o||t[17]!==s||t[18]!==r){let e=lg(n),u;t[20]===i.unknown?u=t[21]:(u=e=>ug(e,i.unknown),t[20]=i.unknown,t[21]=u);let d=u,f=e.provider===`xopc-cloud`?`${d(e.provider)} · ${e.upstream?d(e.upstream):i.upstreamUnknown}`:d(e.provider),p;t[22]===Symbol.for(`react.memo_cache_sentinel`)?(p=e=>c(e.currentTarget.open),t[22]=p):p=t[22];let m;t[23]===r?m=t[24]:(m=(0,X.jsx)(`summary`,{className:`cursor-pointer hover:text-fg`,children:r}),t[23]=r,t[24]=m),l=(0,X.jsxs)(`details`,{className:`min-w-0 text-xs text-fg-muted`,onToggle:p,children:[m,s?(0,X.jsxs)(`div`,{className:`mt-2 space-y-2 rounded-md border border-edge px-3 py-2`,children:[(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-x-3 gap-y-1`,children:[(0,X.jsxs)(`span`,{children:[i.provider,`:`,f]}),(0,X.jsx)(`span`,{className:`text-fg-subtle`,children:e.cached===!0?i.cached:e.cached===!1?i.fresh:i.cacheUnknown})]}),e.cached===!0?(0,X.jsx)(`p`,{className:`text-fg-subtle`,children:i.cacheHint}):null,a?(0,X.jsxs)(`div`,{className:`space-y-1 border-t border-edge pt-2 text-fg-subtle`,children:[e.attemptCount===void 0?null:(0,X.jsxs)(`p`,{children:[i.attempts,`:`,e.attemptCount]}),e.capturedAt===void 0?null:(0,X.jsxs)(`p`,{children:[i.capturedAt,`:`,new Date(e.capturedAt).toLocaleString(o===`zh`?`zh-CN`:`en-US`)]}),e.attemptCount!==void 0&&e.attemptCount>e.attempts.length?(0,X.jsx)(`p`,{children:i.incompleteRoute}):null,e.attempts.length?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`p`,{children:e.cached===!0?i.cachedRoute:i.route}),(0,X.jsx)(`ol`,{className:`list-inside list-decimal space-y-1`,children:e.attempts.map((e,t)=>(0,X.jsxs)(`li`,{children:[d(e.provider),e.upstream?` · ${d(e.upstream)}`:``,` · `,i.outcomes[e.outcome]??i.unknown,e.reason?` · ${i.reasons[e.reason]??i.unknown}`:``]},t))})]}):null]}):null]}):null]}),t[0]=n,t[1]=a,t[2]=i.attempts,t[3]=i.cacheHint,t[4]=i.cacheUnknown,t[5]=i.cached,t[6]=i.cachedRoute,t[7]=i.capturedAt,t[8]=i.fresh,t[9]=i.incompleteRoute,t[10]=i.outcomes,t[11]=i.provider,t[12]=i.reasons,t[13]=i.route,t[14]=i.unknown,t[15]=i.upstreamUnknown,t[16]=o,t[17]=s,t[18]=r,t[19]=l}else l=t[19];return l}function fg(e,t){if(!Number.isFinite(e)||e<=0)return t===`zh`?`不到1秒`:`<1s`;let n=Math.floor(e/1e3);if(n===0)return t===`zh`?`不到1秒`:`<1s`;let r=Math.floor(n/60),i=n%60;return t===`zh`?r===0?`${i}秒`:i===0?`${r}分`:`${r}分${i}秒`:r===0?`${i}s`:i===0?`${r}m`:`${r}m ${i}s`}function pg(e){let t=(0,Y.c)(8),{extensionId:n,extensionName:r,entrypoint:i,title:a,toolResult:o,maxHeight:s,interactive:c,permissions:l}=e,u=s===void 0?400:s,d;return t[0]!==i||t[1]!==n||t[2]!==r||t[3]!==u||t[4]!==l||t[5]!==a||t[6]!==o?(d=(0,X.jsx)(`div`,{className:`mt-2 w-full min-w-0 overflow-hidden rounded-xl border border-edge bg-surface-base`,children:(0,X.jsx)(xo,{extensionId:n,extensionName:r,entrypoint:i,permissions:l,title:a,className:`w-full`,minHeight:80,maxHeight:u,initialData:o})}),t[0]=i,t[1]=n,t[2]=r,t[3]=u,t[4]=l,t[5]=a,t[6]=o,t[7]=d):d=t[7],d}function mg(e){let t=Fr();return(0,Z.useMemo)(()=>{for(let n of t){let t=n.ui?.contributions?.chatWidgets;if(t){for(let r of t)if(r.match.toolName&&r.match.toolName===e)return{...r,extensionId:n.id}}}return null},[t,e])}function hg(e,t){let n=new Set,r=[];for(let i of e){let e=i.type===`tool_use`?t?.(i):null,a=i.type===`text`&&i.presentation===`narration`?i:e?{type:`text`,text:e,presentation:`narration`,segmentId:`tool-progress:${i.type===`tool_use`?i.id:``}`}:null;if(!a)continue;let o=a.text.replace(/\s+/g,` `).trim();!o||/^(?:正在处理|正在执行操作|其他操作|处理中|working|processing|other operations?|running)[.。…\s]*$/i.test(o)||n.has(o)||(n.add(o),r.push(a))}return r}function gg(e){let t=[];for(let n of e){let e=t.at(-1);n.type===`tool_use`?e?.type===`tools`?e.tools.push(n):t.push({type:`tools`,tools:[n]}):t.push({type:`item`,item:n})}return t}function _g(e,t,n){let r=new Map,i=0;for(let n of e){if(n.status===`error`||n.activity?.status===`failed`){i++;continue}let e=t(n);r.set(e,(r.get(e)??0)+1)}let a=[...r],o=a.slice(0,2).map(([e,t])=>t===1?e:n.repeated.replace(`{{action}}`,e).replace(`{{count}}`,String(t))),s=a.slice(2).reduce((e,[,t])=>e+t,0);return s>0&&o.push(n.more.replace(`{{count}}`,String(s))),i>0&&o.push(n.failed.replace(`{{count}}`,String(i))),o.join(n.separator)}function vg({path:e,conversationId:t,label:n}){let[r,i]=(0,Z.useState)(!1),[a,o]=(0,Z.useState)(),s=Oi(e=>e.setPath),c=async()=>{i(!0),o(void 0);try{let n=await ja(e,{conversationId:t??void 0});if(!n?.capabilities.includes(`preview`))throw Error(`Output file is unavailable`);s(n.absolutePath??n.workspaceRelativePath??e,void 0,void 0,t)}catch(e){o(e instanceof Error?e.message:String(e))}finally{i(!1)}};return(0,X.jsxs)(`div`,{className:`mt-2`,children:[(0,X.jsx)(ai,{variant:`ghost`,disabled:r,onClick:()=>{c()},className:`text-accent`,children:n}),a?(0,X.jsx)(`p`,{className:`text-xs text-red-600`,children:a}):null]})}function yg(e){return/^Full Codemode output: (\.xopc\/codemode-output\/[a-f0-9-]{36}\.txt)(?:\r?\n|$)/.exec(e)?.[1]}function bg(e,t=0){return rr(e)??(e.type===`tool_use`?e.id:e.type===`text`?e.segmentId??`narration-${t}`:`thinking-${t}`)}var xg=(0,Z.memo)(function(e){let t=(0,Y.c)(15),{active:n,startedAt:r,frozenMs:i,language:a,className:o}=e,[,s]=(0,Z.useState)(0),c;t[0]!==n||t[1]!==s?(c=()=>{if(!n)return;let e=window.setInterval(()=>s(Yg),500);return()=>window.clearInterval(e)},t[0]=n,t[1]=s,t[2]=c):c=t[2];let l;t[3]===n?l=t[4]:(l=[n],t[3]=n,t[4]=l),(0,Z.useEffect)(c,l);let u=n&&r!=null?Math.max(0,Date.now()-r):0,d;t[5]!==n||t[6]!==u||t[7]!==i||t[8]!==a||t[9]!==r?(d=n&&r!=null?fg(u,a):i==null?null:fg(i,a),t[5]=n,t[6]=u,t[7]=i,t[8]=a,t[9]=r,t[10]=d):d=t[10];let f=d;if(!f)return null;let p=n||void 0,m;return t[11]!==o||t[12]!==p||t[13]!==f?(m=(0,X.jsx)(`span`,{className:o,"aria-hidden":p,children:f}),t[11]=o,t[12]=p,t[13]=f,t[14]=m):m=t[14],m});function Sg(e){let t=(0,Y.c)(218),{workLog:n,pendingStatus:r,toolLabels:i,stepLabels:a,clusterLabels:o,cardLabels:s,conversationId:c,simplified:l,personal:u,answerStarted:d,showThinking:f,surfacesOnly:p}=e,m=l===void 0||l,g=u!==void 0&&u,_=d!==void 0&&d,v=f!==void 0&&f,b=p!==void 0&&p,x=h(Ig),[S,C]=(0,Z.useState)(!1),w,T;t[0]===r?(w=t[1],T=t[2]):(w=()=>{if(C(!1),r!==`waiting`)return;let e=window.setTimeout(()=>C(!0),3e3);return()=>window.clearTimeout(e)},T=[r],t[0]=r,t[1]=w,t[2]=T),(0,Z.useEffect)(w,T);let E;t[3]===x?E=t[4]:(E=y(x),t[3]=x,t[4]=E);let D=E.chat,O=bo(Fg),k;if(t[5]!==O||t[6]!==v||t[7]!==n.items){let e;t[9]!==O||t[10]!==v?(e=e=>e.type!==`thinking`||O||v,t[9]=O,t[10]=v,t[11]=e):e=t[11],k=n.items.filter(e),t[5]=O,t[6]=v,t[7]=n.items,t[8]=k}else k=t[8];let A=k,j;t[12]===n.items?j=t[13]:(j=n.items.filter(Pg),t[12]=n.items,t[13]=j);let M=j,N=A.length,P=n.active,F=n.expandedByDefault&&P,[I,L]=(0,Z.useState)(null),R=I?.active===P?I.value:null,z=F,[B,ee]=(0,Z.useState)(!1),V=(0,Z.useRef)(null),[H,U]=(0,Z.useState)(!1),[W,ne]=(0,Z.useState)(!1),re,ie;t[14]!==P||t[15]!==H?(re=()=>{if(!P&&!H)return;let e=()=>{let e=window.getSelection();U(!!(e&&!e.isCollapsed&&V.current?.contains(e.anchorNode)))};return document.addEventListener(`selectionchange`,e),()=>document.removeEventListener(`selectionchange`,e)},ie=[P,H],t[14]=P,t[15]=H,t[16]=re,t[17]=ie):(re=t[16],ie=t[17]),(0,Z.useEffect)(re,ie);let ae=!n.compact&&A.length>0&&(R??(z||H)),oe,se;t[18]===ae?(oe=t[19],se=t[20]):(oe=()=>{let e=V.current;if(!ae||!e)return;let t=t=>wh(t,e);return e.addEventListener(`wheel`,t,{passive:!1}),()=>e.removeEventListener(`wheel`,t)},se=[ae],t[18]=ae,t[19]=oe,t[20]=se),(0,Z.useEffect)(oe,se);let G,K;t[21]!==ae||t[22]!==W?(G=()=>{if(ae){ne(!0);return}if(!W)return;let e=window.setTimeout(()=>ne(!1),200);return()=>window.clearTimeout(e)},K=[ae,W],t[21]=ae,t[22]=W,t[23]=G,t[24]=K):(G=t[23],K=t[24]),(0,Z.useEffect)(G,K);let ce;t[25]===A?ce=t[26]:(ce=A.every(Ng),t[25]=A,t[26]=ce);let le=ce,q,ue;if(t[27]!==P||t[28]!==B||t[29]!==O||t[30]!==le||t[31]!==A){let e=gg(A);q=le&&P&&!B&&!O?Math.max(0,e.length-3):0,ue=e.slice(q).flatMap(Mg),t[27]=P,t[28]=B,t[29]=O,t[30]=le,t[31]=A,t[32]=q,t[33]=ue}else q=t[32],ue=t[33];let de=ue,fe=n.startedAt??null,pe=n.durationMs??null,me;t[34]!==a.editFile||t[35]!==a.fetchUrl||t[36]!==a.listDirectory||t[37]!==a.openUrl||t[38]!==a.readFile||t[39]!==a.runCommand||t[40]!==a.searched||t[41]!==a.searchedCode||t[42]!==a.searchedMemory||t[43]!==a.searchedWeb||t[44]!==a.unknownTool||t[45]!==a.writeFile?(me={searchedWeb:a.searchedWeb,searchedMemory:a.searchedMemory,searchedCode:a.searchedCode,searched:a.searched,readFile:a.readFile,runCommand:a.runCommand,listDirectory:a.listDirectory,writeFile:a.writeFile,editFile:a.editFile,openUrl:a.openUrl,fetchUrl:a.fetchUrl,unknownTool:a.unknownTool},t[34]=a.editFile,t[35]=a.fetchUrl,t[36]=a.listDirectory,t[37]=a.openUrl,t[38]=a.readFile,t[39]=a.runCommand,t[40]=a.searched,t[41]=a.searchedCode,t[42]=a.searchedMemory,t[43]=a.searchedWeb,t[44]=a.unknownTool,t[45]=a.writeFile,t[46]=me):me=t[46];let he=me,ge;t[47]!==o.ing||t[48]!==he||t[49]!==a.toolActivity?(ge=(e,t)=>ia(e,t,a.toolActivity,he,o.ing),t[47]=o.ing,t[48]=he,t[49]=a.toolActivity,t[50]=ge):ge=t[50];let _e=ge,ve;bb0:{if(!P){ve=null;break bb0}let e;t[51]===M?e=t[52]:(e=M.filter(jg),t[51]=M,t[52]=e);let n=e.length;if(n>1){let e;t[53]!==D.activityParallel||t[54]!==n?(e=D.activityParallel.replace(`{{count}}`,String(n)),t[53]=D.activityParallel,t[54]=n,t[55]=e):e=t[55],ve=e;break bb0}let r;t[56]===_e?r=t[57]:(r=e=>_e(e,`running`),t[56]=_e,t[57]=r);let i;t[58]!==M||t[59]!==o.ing||t[60]!==r?(i=hh(M,o.ing,r),t[58]=M,t[59]=o.ing,t[60]=r,t[61]=i):i=t[61],ve=i}let ye=ve,be=r===`sending`?D.sendingLabel:r===`waiting`?S?D.waitingLongLabel:D.waitingLabel:null,xe;t[62]!==M||t[63]!==D.thinkingLabel||t[64]!==a.workLogRunning?(xe=M.some(Ag)?D.thinkingLabel:a.workLogRunning,t[62]=M,t[63]=D.thinkingLabel,t[64]=a.workLogRunning,t[65]=xe):xe=t[65];let Se=xe,Ce=r??(M.some(kg)?`tool`:M.some(Og)?`thinking`:M.length>0?`organizing`:`working`),we=ye??be??Se,Te;if(t[66]!==M||t[67]!==D.activityFailed||t[68]!==D.activityMore||t[69]!==D.activityRepeated||t[70]!==x||t[71]!==_e||t[72]!==v||t[73]!==a.thoughts){let e=M.filter(Dg);Te=v&&e.length>0?_g(e,e=>_e(e,`completed`),{repeated:D.activityRepeated,more:D.activityMore,failed:D.activityFailed,separator:x===`zh`?`、`:`, `}):v?a.thoughts:null,t[66]=M,t[67]=D.activityFailed,t[68]=D.activityMore,t[69]=D.activityRepeated,t[70]=x,t[71]=_e,t[72]=v,t[73]=a.thoughts,t[74]=Te}else Te=t[74];let Ee=Te;if(n.items.length===0&&!P)return null;let De;t[75]!==o.ing||t[76]!==a.editFile||t[77]!==a.fetchUrl||t[78]!==a.listDirectory||t[79]!==a.memoryActivity||t[80]!==a.openUrl||t[81]!==a.rawThinking||t[82]!==a.readFile||t[83]!==a.runCommand||t[84]!==a.searched||t[85]!==a.searchedCode||t[86]!==a.searchedMemory||t[87]!==a.searchedWeb||t[88]!==a.stepDetails||t[89]!==a.thoughts||t[90]!==a.thoughtsStreaming||t[91]!==a.toolActivity||t[92]!==a.toolError||t[93]!==a.unknownTool||t[94]!==a.writeFile?(De={thoughts:a.thoughts,thoughtsStreaming:a.thoughtsStreaming,searchedWeb:a.searchedWeb,searchedMemory:a.searchedMemory,searchedCode:a.searchedCode,searched:a.searched,readFile:a.readFile,stepDetails:a.stepDetails,runCommand:a.runCommand,listDirectory:a.listDirectory,writeFile:a.writeFile,editFile:a.editFile,openUrl:a.openUrl,fetchUrl:a.fetchUrl,unknownTool:a.unknownTool,rawThinking:a.rawThinking,toolError:a.toolError,toolActivity:a.toolActivity,runningActions:o.ing,memoryActivity:a.memoryActivity},t[75]=o.ing,t[76]=a.editFile,t[77]=a.fetchUrl,t[78]=a.listDirectory,t[79]=a.memoryActivity,t[80]=a.openUrl,t[81]=a.rawThinking,t[82]=a.readFile,t[83]=a.runCommand,t[84]=a.searched,t[85]=a.searchedCode,t[86]=a.searchedMemory,t[87]=a.searchedWeb,t[88]=a.stepDetails,t[89]=a.thoughts,t[90]=a.thoughtsStreaming,t[91]=a.toolActivity,t[92]=a.toolError,t[93]=a.unknownTool,t[94]=a.writeFile,t[95]=De):De=t[95];let Oe=De;if(g||b){let e;if(t[96]!==P||t[97]!==s||t[98]!==c||t[99]!==Oe||t[100]!==i||t[101]!==n.items){let r;t[103]!==P||t[104]!==s||t[105]!==c||t[106]!==Oe||t[107]!==i?(r=e=>(0,X.jsx)(Kg,{block:e,toolLabels:i,stepLabels:Oe,cardLabels:s,conversationId:c,surfaceOnly:!0,runActive:P},e.id),t[103]=P,t[104]=s,t[105]=c,t[106]=Oe,t[107]=i,t[108]=r):r=t[108],e=n.items.filter(Eg).map(r),t[96]=P,t[97]=s,t[98]=c,t[99]=Oe,t[100]=i,t[101]=n.items,t[102]=e}else e=t[102];let r;return t[109]===e?r=t[110]:(r=(0,X.jsx)(X.Fragment,{children:e}),t[109]=e,t[110]=r),r}let ke;t[111]!==we||t[112]!==P||t[113]!==pe||t[114]!==Ee||t[115]!==fe||t[116]!==x||t[117]!==Ce||t[118]!==a.workLogComplete||t[119]!==a.workLogFailed||t[120]!==a.workLogPartial||t[121]!==a.workLogTitle||t[122]!==n.status?(ke=P?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`span`,{className:`block min-w-0 flex-1 truncate whitespace-nowrap`,"data-status-phase":Ce,role:`status`,"aria-live":`polite`,"aria-atomic":`true`,children:(0,X.jsx)(`span`,{className:`assistant-activity-shimmer inline-block max-w-full truncate align-bottom`,children:we})}),(0,X.jsx)(xg,{active:P,startedAt:fe,frozenMs:null,language:x,className:`ml-1.5 w-[8ch] shrink-0 whitespace-nowrap text-right tabular-nums text-fg-muted`})]}):(0,X.jsx)(`span`,{className:`[overflow-wrap:anywhere]`,children:Ee??(n.status===`failed`?a.workLogFailed:n.status===`partial`?a.workLogPartial:pe==null?a.workLogTitle:a.workLogComplete)}),t[111]=we,t[112]=P,t[113]=pe,t[114]=Ee,t[115]=fe,t[116]=x,t[117]=Ce,t[118]=a.workLogComplete,t[119]=a.workLogFailed,t[120]=a.workLogPartial,t[121]=a.workLogTitle,t[122]=n.status,t[123]=ke):ke=t[123];let Ae=ke,je;t[124]!==P||t[125]!==pe||t[126]!==fe||t[127]!==x?(je=P?null:(0,X.jsx)(xg,{active:!1,startedAt:fe,frozenMs:pe,language:x,className:`mt-0.5 tabular-nums text-xs text-fg-muted`}),t[124]=P,t[125]=pe,t[126]=fe,t[127]=x,t[128]=je):je=t[128];let Me=je,Ne=!n.compact&&N>0;if(m&&!O){let e;t[129]!==_||t[130]!==P||t[131]!==n.items?(e=!P&&!_&&n.items.some(Tg),t[129]=_,t[130]=P,t[131]=n.items,t[132]=e):e=t[132];let r=e,o=n.status===`failed`||n.status===`partial`||r,l,u,d,f,p;if(t[133]!==_||t[134]!==P||t[135]!==s||t[136]!==c||t[137]!==o||t[138]!==_e||t[139]!==Oe||t[140]!==i||t[141]!==n.items||t[142]!==n.status){let e=P&&!_||o?hg(n.items,e=>e.status===`error`||e.activity?.status===`failed`||!na(e.name)&&uh(e.name,e.activity)===`other`?null:_e(e,P&&(e.status===`running`||e.activity?.status===`running`)?`running`:`completed`)):[];if(l=!0,u=n.status,d=`my-1 min-w-0 w-full text-left`,t[148]!==P||t[149]!==s||t[150]!==c||t[151]!==Oe||t[152]!==i||t[153]!==n.items){let e;t[155]!==P||t[156]!==s||t[157]!==c||t[158]!==Oe||t[159]!==i?(e=e=>(0,X.jsx)(Kg,{block:e,toolLabels:i,stepLabels:Oe,cardLabels:s,conversationId:c,surfaceOnly:!0,runActive:P},e.id),t[155]=P,t[156]=s,t[157]=c,t[158]=Oe,t[159]=i,t[160]=e):e=t[160],f=n.items.filter(wg).map(e),t[148]=P,t[149]=s,t[150]=c,t[151]=Oe,t[152]=i,t[153]=n.items,t[154]=f}else f=t[154];p=e.length>0?(0,X.jsx)(`div`,{"data-assistant-activity-flow":!0,className:`space-y-2.5 text-sm leading-relaxed text-fg-muted`,children:e.map((e,t)=>(0,X.jsx)(Kg,{block:e,toolLabels:i,stepLabels:Oe,cardLabels:s,conversationId:c,runActive:P},bg(e,t)))}):null,t[133]=_,t[134]=P,t[135]=s,t[136]=c,t[137]=o,t[138]=_e,t[139]=Oe,t[140]=i,t[141]=n.items,t[142]=n.status,t[143]=l,t[144]=u,t[145]=d,t[146]=f,t[147]=p}else l=t[143],u=t[144],d=t[145],f=t[146],p=t[147];let m;t[161]!==P||t[162]!==r||t[163]!==Ae||t[164]!==o||t[165]!==a.workLogFailed||t[166]!==a.workLogPartial||t[167]!==n.status?(m=P?(0,X.jsxs)(`div`,{className:`mt-2 flex h-11 w-full min-w-0 items-center gap-2 px-1 text-sm text-fg-muted`,"data-assistant-running":!0,children:[(0,X.jsx)(zt,{className:`assistant-activity-busy size-4 shrink-0`,"aria-hidden":!0}),(0,X.jsx)(`div`,{className:`flex h-6 min-w-0 flex-1 items-center`,children:Ae})]}):o?(0,X.jsx)(`p`,{className:`text-sm text-fg-muted`,children:r||n.status===`failed`?a.workLogFailed:a.workLogPartial}):null,t[161]=P,t[162]=r,t[163]=Ae,t[164]=o,t[165]=a.workLogFailed,t[166]=a.workLogPartial,t[167]=n.status,t[168]=m):m=t[168];let h;return t[169]!==l||t[170]!==u||t[171]!==d||t[172]!==f||t[173]!==p||t[174]!==m?(h=(0,X.jsxs)(`div`,{"data-assistant-work-log":l,"data-work-log-status":u,className:d,children:[f,p,m]}),t[169]=l,t[170]=u,t[171]=d,t[172]=f,t[173]=p,t[174]=m,t[175]=h):h=t[175],h}let Pe=n.status,Fe=P||ae?`w-full`:`w-fit max-w-full`,Ie;t[176]===Fe?Ie=t[177]:(Ie=J(`my-1 min-w-0`,Fe),t[176]=Fe,t[177]=Ie);let Le;t[178]!==P||t[179]!==ae||t[180]!==Me||t[181]!==Ae||t[182]!==Ne||t[183]!==n.compact||t[184]!==n.items.length?(Le=P||!n.compact&&n.items.length>0?(0,X.jsxs)(`button`,{type:`button`,disabled:!Ne,className:J(`flex max-w-full min-w-0 items-center gap-2 rounded-lg px-1 py-1.5 text-left text-sm text-fg-muted`,P?`h-11`:`min-h-11`,P?`w-full`:`w-fit`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent focus-visible:ring-offset-2 focus-visible:ring-offset-surface-panel`),onClick:Ne?()=>L({active:P,value:!ae}):void 0,"aria-expanded":Ne?ae:void 0,children:[(0,X.jsx)(zt,{className:J(`size-4 shrink-0`,P&&`assistant-activity-busy`),"aria-hidden":!0}),(0,X.jsx)(`div`,{className:`min-w-0 flex-1 overflow-hidden`,children:(0,X.jsx)(`span`,{className:`flex h-6 w-full min-w-0 items-center`,children:Ae})}),(0,X.jsx)(`span`,{className:`flex shrink-0 items-start justify-end`,children:Me}),Ne?(0,X.jsx)(te,{className:J(`size-4 shrink-0 text-fg-muted transition-transform motion-reduce:transition-none`,ae&&`rotate-180`),"aria-hidden":!0}):null]}):null,t[178]=P,t[179]=ae,t[180]=Me,t[181]=Ae,t[182]=Ne,t[183]=n.compact,t[184]=n.items.length,t[185]=Le):Le=t[185];let Re;if(t[186]!==P||t[187]!==s||t[188]!==c||t[189]!==Oe||t[190]!==i||t[191]!==n.items){let e;t[193]!==P||t[194]!==s||t[195]!==c||t[196]!==Oe||t[197]!==i?(e=e=>(0,X.jsx)(Kg,{block:e,toolLabels:i,stepLabels:Oe,cardLabels:s,conversationId:c,surfaceOnly:!0,runActive:P},e.id),t[193]=P,t[194]=s,t[195]=c,t[196]=Oe,t[197]=i,t[198]=e):e=t[198],Re=n.items.filter(Cg).map(e),t[186]=P,t[187]=s,t[188]=c,t[189]=Oe,t[190]=i,t[191]=n.items,t[192]=Re}else Re=t[192];let ze;t[199]!==P||t[200]!==s||t[201]!==D.activityEarlier||t[202]!==c||t[203]!==ae||t[204]!==W||t[205]!==q||t[206]!==B||t[207]!==v||t[208]!==de||t[209]!==Oe||t[210]!==i?(ze=ae||W?(0,X.jsx)(`div`,{className:`assistant-activity-disclosure`,"data-open":ae,"aria-hidden":!ae,inert:!ae,children:(0,X.jsx)(`div`,{className:`min-h-0 overflow-hidden`,children:(0,X.jsxs)(`div`,{ref:V,className:`assistant-activity-flow mt-1 max-h-[min(32rem,50dvh)] w-full min-w-0 overflow-x-hidden overflow-y-auto pb-1 pl-1 pr-2 [scrollbar-gutter:stable]`,"data-assistant-activity-flow":!0,onFocusCapture:()=>L({active:P,value:!0}),children:[q>0?(0,X.jsx)(`button`,{type:`button`,className:`mb-3 text-xs text-fg-muted hover:text-fg`,onClick:()=>ee(!0),children:D.activityEarlier}):null,(0,X.jsx)(Lg,{blocks:de,toolLabels:i,stepLabels:Oe,cardLabels:s,conversationId:c,animateNew:P&&ae&&!B,runActive:P,showThinking:v})]})})}):null,t[199]=P,t[200]=s,t[201]=D.activityEarlier,t[202]=c,t[203]=ae,t[204]=W,t[205]=q,t[206]=B,t[207]=v,t[208]=de,t[209]=Oe,t[210]=i,t[211]=ze):ze=t[211];let Be;return t[212]!==Ie||t[213]!==Le||t[214]!==Re||t[215]!==ze||t[216]!==n.status?(Be=(0,X.jsxs)(`div`,{"data-assistant-work-log":!0,"data-work-log-status":Pe,className:Ie,children:[Le,Re,ze]}),t[212]=Ie,t[213]=Le,t[214]=Re,t[215]=ze,t[216]=n.status,t[217]=Be):Be=t[217],Be}function Cg(e){return e.type===`tool_use`}function wg(e){return e.type===`tool_use`}function Tg(e){return e.type===`tool_use`&&(e.status===`error`||e.activity?.status===`failed`)}function Eg(e){return e.type===`tool_use`}function Dg(e){return e.type===`tool_use`}function Og(e){return e.type===`thinking`&&e.streaming}function kg(e){return e.type===`tool_use`&&e.status===`running`}function Ag(e){return e.type===`thinking`&&e.streaming}function jg(e){return e.type===`tool_use`&&(e.status===`running`||e.activity?.status===`running`)}function Mg(e){return e.type===`tools`?e.tools:[e.item]}function Ng(e){return rr(e)||e.type===`tool_use`||e.type===`text`&&e.segmentId}function Pg(e){return e.type!==`text`}function Fg(e){return e.showRawToolData}function Ig(e){return e.language}function Lg({blocks:e,toolLabels:t,stepLabels:n,cardLabels:r,className:i,conversationId:a,animateNew:o=!1,runActive:s,showThinking:c=!1}){let l=(0,Z.useRef)(new Set(e.map(bg))),u=bo(e=>e.showRawToolData),d=h(e=>e.language),f=u?e.map(e=>({type:`item`,item:e})):gg(e);return e.length>0?(0,X.jsx)(`div`,{className:J(`min-w-0 overflow-x-hidden`,i),children:(0,X.jsx)(`div`,{className:`min-w-0 space-y-2.5 pl-1`,children:f.map((e,i)=>{let f=e.type===`tools`?e.tools[0]:e.item,p=bg(f,i);return(0,X.jsx)(`div`,{className:J(o&&!l.current.has(p)&&f.type!==`text`&&`assistant-activity-enter`),children:e.type===`tools`?(0,X.jsx)(Rg,{tools:e.tools,runActive:s,labels:n,language:d,renderTool:e=>(0,X.jsx)(Kg,{block:e,toolLabels:t,stepLabels:n,cardLabels:r,conversationId:a,runActive:s},e.id)}):e.item.type===`thinking`&&c&&!u?(0,X.jsx)(`div`,{"data-assistant-thinking":!0,className:`text-sm leading-relaxed text-fg-muted`,children:(0,X.jsx)(Ld,{content:e.item.text,compact:!0,streaming:!!(s&&e.item.streaming)})}):(0,X.jsx)(Kg,{block:e.item,toolLabels:t,stepLabels:n,cardLabels:r,conversationId:a,runActive:s})},p)})})}):null}function Rg(e){let t=(0,Y.c)(40),{tools:n,runActive:r,labels:i,language:a,renderTool:o}=e,s;t[0]!==r||t[1]!==n?(s=r&&n.some(Bg),t[0]=r,t[1]=n,t[2]=s):s=t[2];let c=s,l;if(t[3]!==i||t[4]!==a||t[5]!==r||t[6]!==n){let e=y(a).chat,o;t[8]!==i||t[9]!==r?(o=e=>ia(e,r&&(e.status===`running`||e.activity?.status===`running`)?`running`:`completed`,i.toolActivity,i,i.runningActions),t[8]=i,t[9]=r,t[10]=o):o=t[10],l=_g(n,o,{repeated:e.activityRepeated,more:e.activityMore,failed:e.activityFailed,separator:a===`zh`?`、`:`, `}),t[3]=i,t[4]=a,t[5]=r,t[6]=n,t[7]=l}else l=t[7];let u=l,d,f,p,m,h;if(t[11]!==o||t[12]!==c||t[13]!==n){h=Symbol.for(`react.early_return_sentinel`);bb0:{if(d=c?[...n].reverse().find(zg):void 0,n.length===1){let e;t[19]!==o||t[20]!==n[0]?(e=o(n[0]),t[19]=o,t[20]=n[0],t[21]=e):e=t[21],h=e;break bb0}f=!0,p=`min-w-0 space-y-1.5`,m=d?o(d):null}t[11]=o,t[12]=c,t[13]=n,t[14]=d,t[15]=f,t[16]=p,t[17]=m,t[18]=h}else d=t[14],f=t[15],p=t[16],m=t[17],h=t[18];if(h!==Symbol.for(`react.early_return_sentinel`))return h;let g;t[22]===u?g=t[23]:(g=(0,X.jsx)(`summary`,{className:`cursor-pointer rounded-md py-1 hover:text-fg focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,children:(0,X.jsx)(`span`,{children:u})}),t[22]=u,t[23]=g);let _;if(t[24]!==d||t[25]!==o||t[26]!==n){let e;t[28]===d?e=t[29]:(e=e=>e!==d,t[28]=d,t[29]=e),_=n.filter(e).map(o),t[24]=d,t[25]=o,t[26]=n,t[27]=_}else _=t[27];let v;t[30]===_?v=t[31]:(v=(0,X.jsx)(`div`,{className:`mt-2 min-w-0 space-y-2.5 border-l border-edge-subtle pl-3`,children:_}),t[30]=_,t[31]=v);let b;t[32]!==g||t[33]!==v?(b=(0,X.jsxs)(`details`,{className:`min-w-0 text-[13px] text-fg-muted`,children:[g,v]}),t[32]=g,t[33]=v,t[34]=b):b=t[34];let x;return t[35]!==b||t[36]!==f||t[37]!==p||t[38]!==m?(x=(0,X.jsxs)(`div`,{"data-activity-group":f,className:p,children:[m,b]}),t[35]=b,t[36]=f,t[37]=p,t[38]=m,t[39]=x):x=t[39],x}function zg(e){return e.status===`running`||e.activity?.status===`running`}function Bg(e){return e.status===`running`||e.activity?.status===`running`}function Vg(e){let t=(0,Y.c)(15),{toolName:n,toolResult:r}=e,i=Fr(),a=mg(n);if(!a||i.length===0)return null;let o;if(t[0]!==i||t[1]!==a.extensionId){let e;t[3]===a.extensionId?e=t[4]:(e=e=>e.id===a.extensionId,t[3]=a.extensionId,t[4]=e),o=i.find(e),t[0]=i,t[1]=a.extensionId,t[2]=o}else o=t[2];let s=o,c=s?.name??a.extensionId,l=a.maxHeight??400,u=a.interactive??!1,d=s?.ui?.permissions,f;return t[5]!==c||t[6]!==l||t[7]!==u||t[8]!==d||t[9]!==r||t[10]!==a.entrypoint||t[11]!==a.extensionId||t[12]!==a.id||t[13]!==a.title?(f=(0,X.jsx)(pg,{extensionId:a.extensionId,extensionName:c,widgetId:a.id,entrypoint:a.entrypoint,title:a.title,toolResult:r,maxHeight:l,interactive:u,permissions:d}),t[5]=c,t[6]=l,t[7]=u,t[8]=d,t[9]=r,t[10]=a.entrypoint,t[11]=a.extensionId,t[12]=a.id,t[13]=a.title,t[14]=f):f=t[14],f}var Hg=new Set([`readFile`,`editFile`,`writeFile`,`runCommand`,`fetchUrl`]),Ug=240;function Wg(e){let t=e.split(`
|
|
25
|
+
`)}\n…`}t[12]=s.text,t[13]=i}else i=t[13];c=i,f=`space-y-1.5`,l=`flex min-w-0 flex-wrap items-baseline gap-x-2 gap-y-1`,t[14]===a?u=t[15]:(u=a?(0,X.jsx)(`a`,{href:a,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex max-w-full min-w-0 items-center break-words rounded-md bg-surface-hover/60 px-1.5 py-0.5 font-mono text-xs text-accent-fg underline-offset-2 hover:underline [overflow-wrap:anywhere] dark:bg-surface-hover/35`,title:a,children:a}):null,t[14]=a,t[15]=u),d=n!=null&&n>0?(0,X.jsx)(Vh,{children:Kh(r.linesBadge,{count:n})}):null,t[4]=r,t[5]=s,t[6]=a,t[7]=c,t[8]=l,t[9]=u,t[10]=d,t[11]=f}else c=t[7],l=t[8],u=t[9],d=t[10],f=t[11];let p;t[16]!==l||t[17]!==u||t[18]!==d?(p=(0,X.jsxs)(`div`,{className:l,children:[u,d]}),t[16]=l,t[17]=u,t[18]=d,t[19]=p):p=t[19];let m;t[20]!==r||t[21]!==c?(m=c?(0,X.jsx)(Wh,{summary:r.viewContent,children:(0,X.jsx)(Gh,{children:c})}):null,t[20]=r,t[21]=c,t[22]=m):m=t[22];let h;return t[23]!==f||t[24]!==p||t[25]!==m?(h=(0,X.jsxs)(`div`,{className:f,children:[p,m]}),t[23]=f,t[24]=p,t[25]=m,t[26]=h):h=t[26],h}),sg=e=>e&&typeof e==`object`&&!Array.isArray(e)?e:void 0,cg=e=>typeof e==`string`&&/^[a-z0-9][a-z0-9_-]{0,63}$/.test(e)?e:void 0;function lg(e){let t={...Ih(e.result).details,...sg(e.details)},n=sg(t?.searchInfo)??t,r=Array.isArray(n?.attempts)?n.attempts.slice(0,24).flatMap(e=>{let t=sg(e),n=cg(t?.provider);return!n||![`success`,`empty`,`error`,`skipped`].includes(String(t?.outcome))?[]:[{provider:n,upstream:cg(t?.upstream),outcome:String(t?.outcome),reason:cg(t?.reason)}]}):[];return{provider:cg(n?.provider),upstream:cg(n?.upstream),cached:typeof n?.cached==`boolean`?n.cached:void 0,capturedAt:typeof n?.capturedAt==`number`&&Number.isSafeInteger(n.capturedAt)&&n.capturedAt>0?n.capturedAt:void 0,attemptCount:typeof n?.attemptCount==`number`&&Number.isSafeInteger(n.attemptCount)&&n.attemptCount>0&&n.attemptCount<=1e4?n.attemptCount:void 0,attempts:r}}function ug(e,t){return{deepseek:`DeepSeek`,"xopc-cloud":`XOPC Cloud`,tavily:`Tavily`,brave:`Brave`,bing:`Bing`,searxng:`SearXNG`,"bing-html":`Bing HTML`,"duckduckgo-html":`DuckDuckGo HTML`,html:`HTML`}[e??``]??t}function dg(e){let t=(0,Y.c)(25),{block:n,summary:r,labels:i,developer:a,language:o}=e,[s,c]=(0,Z.useState)(!1),l;if(t[0]!==n||t[1]!==a||t[2]!==i.attempts||t[3]!==i.cacheHint||t[4]!==i.cacheUnknown||t[5]!==i.cached||t[6]!==i.cachedRoute||t[7]!==i.capturedAt||t[8]!==i.fresh||t[9]!==i.incompleteRoute||t[10]!==i.outcomes||t[11]!==i.provider||t[12]!==i.reasons||t[13]!==i.route||t[14]!==i.unknown||t[15]!==i.upstreamUnknown||t[16]!==o||t[17]!==s||t[18]!==r){let e=lg(n),u;t[20]===i.unknown?u=t[21]:(u=e=>ug(e,i.unknown),t[20]=i.unknown,t[21]=u);let d=u,f=e.provider===`xopc-cloud`?`${d(e.provider)} · ${e.upstream?d(e.upstream):i.upstreamUnknown}`:d(e.provider),p;t[22]===Symbol.for(`react.memo_cache_sentinel`)?(p=e=>c(e.currentTarget.open),t[22]=p):p=t[22];let m;t[23]===r?m=t[24]:(m=(0,X.jsx)(`summary`,{className:`cursor-pointer hover:text-fg`,children:r}),t[23]=r,t[24]=m),l=(0,X.jsxs)(`details`,{className:`min-w-0 text-xs text-fg-muted`,onToggle:p,children:[m,s?(0,X.jsxs)(`div`,{className:`mt-2 space-y-2 rounded-md border border-edge px-3 py-2`,children:[(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-x-3 gap-y-1`,children:[(0,X.jsxs)(`span`,{children:[i.provider,`:`,f]}),(0,X.jsx)(`span`,{className:`text-fg-subtle`,children:e.cached===!0?i.cached:e.cached===!1?i.fresh:i.cacheUnknown})]}),e.cached===!0?(0,X.jsx)(`p`,{className:`text-fg-subtle`,children:i.cacheHint}):null,a?(0,X.jsxs)(`div`,{className:`space-y-1 border-t border-edge pt-2 text-fg-subtle`,children:[e.attemptCount===void 0?null:(0,X.jsxs)(`p`,{children:[i.attempts,`:`,e.attemptCount]}),e.capturedAt===void 0?null:(0,X.jsxs)(`p`,{children:[i.capturedAt,`:`,new Date(e.capturedAt).toLocaleString(o===`zh`?`zh-CN`:`en-US`)]}),e.attemptCount!==void 0&&e.attemptCount>e.attempts.length?(0,X.jsx)(`p`,{children:i.incompleteRoute}):null,e.attempts.length?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`p`,{children:e.cached===!0?i.cachedRoute:i.route}),(0,X.jsx)(`ol`,{className:`list-inside list-decimal space-y-1`,children:e.attempts.map((e,t)=>(0,X.jsxs)(`li`,{children:[d(e.provider),e.upstream?` · ${d(e.upstream)}`:``,` · `,i.outcomes[e.outcome]??i.unknown,e.reason?` · ${i.reasons[e.reason]??i.unknown}`:``]},t))})]}):null]}):null]}):null]}),t[0]=n,t[1]=a,t[2]=i.attempts,t[3]=i.cacheHint,t[4]=i.cacheUnknown,t[5]=i.cached,t[6]=i.cachedRoute,t[7]=i.capturedAt,t[8]=i.fresh,t[9]=i.incompleteRoute,t[10]=i.outcomes,t[11]=i.provider,t[12]=i.reasons,t[13]=i.route,t[14]=i.unknown,t[15]=i.upstreamUnknown,t[16]=o,t[17]=s,t[18]=r,t[19]=l}else l=t[19];return l}function fg(e,t){if(!Number.isFinite(e)||e<=0)return t===`zh`?`不到1秒`:`<1s`;let n=Math.floor(e/1e3);if(n===0)return t===`zh`?`不到1秒`:`<1s`;let r=Math.floor(n/60),i=n%60;return t===`zh`?r===0?`${i}秒`:i===0?`${r}分`:`${r}分${i}秒`:r===0?`${i}s`:i===0?`${r}m`:`${r}m ${i}s`}function pg(e){let t=(0,Y.c)(8),{extensionId:n,extensionName:r,entrypoint:i,title:a,toolResult:o,maxHeight:s,interactive:c,permissions:l}=e,u=s===void 0?400:s,d;return t[0]!==i||t[1]!==n||t[2]!==r||t[3]!==u||t[4]!==l||t[5]!==a||t[6]!==o?(d=(0,X.jsx)(`div`,{className:`mt-2 w-full min-w-0 overflow-hidden rounded-xl border border-edge bg-surface-base`,children:(0,X.jsx)(xo,{extensionId:n,extensionName:r,entrypoint:i,permissions:l,title:a,className:`w-full`,minHeight:80,maxHeight:u,initialData:o})}),t[0]=i,t[1]=n,t[2]=r,t[3]=u,t[4]=l,t[5]=a,t[6]=o,t[7]=d):d=t[7],d}function mg(e){let t=Fr();return(0,Z.useMemo)(()=>{for(let n of t){let t=n.ui?.contributions?.chatWidgets;if(t){for(let r of t)if(r.match.toolName&&r.match.toolName===e)return{...r,extensionId:n.id}}}return null},[t,e])}function hg(e,t){let n=new Set,r=[];for(let i of e){let e=i.type===`tool_use`?t?.(i):null,a=i.type===`text`&&i.presentation===`narration`?i:e?{type:`text`,text:e,presentation:`narration`,segmentId:`tool-progress:${i.type===`tool_use`?i.id:``}`}:null;if(!a)continue;let o=a.text.replace(/\s+/g,` `).trim();!o||/^(?:正在处理|正在执行操作|其他操作|处理中|working|processing|other operations?|running)[.。…\s]*$/i.test(o)||n.has(o)||(n.add(o),r.push(a))}return r}function gg(e){let t=[];for(let n of e){let e=t.at(-1);n.type===`tool_use`?e?.type===`tools`?e.tools.push(n):t.push({type:`tools`,tools:[n]}):t.push({type:`item`,item:n})}return t}function _g(e,t,n){let r=new Map,i=0;for(let n of e){if(n.status===`error`||n.activity?.status===`failed`){i++;continue}let e=t(n);r.set(e,(r.get(e)??0)+1)}let a=[...r],o=a.slice(0,2).map(([e,t])=>t===1?e:n.repeated.replace(`{{action}}`,e).replace(`{{count}}`,String(t))),s=a.slice(2).reduce((e,[,t])=>e+t,0);return s>0&&o.push(n.more.replace(`{{count}}`,String(s))),i>0&&o.push(n.failed.replace(`{{count}}`,String(i))),o.join(n.separator)}function vg({path:e,conversationId:t,label:n}){let[r,i]=(0,Z.useState)(!1),[a,o]=(0,Z.useState)(),s=Oi(e=>e.setPath),c=async()=>{i(!0),o(void 0);try{let n=await ja(e,{conversationId:t??void 0});if(!n?.capabilities.includes(`preview`))throw Error(`Output file is unavailable`);s(n.absolutePath??n.workspaceRelativePath??e,void 0,void 0,t)}catch(e){o(e instanceof Error?e.message:String(e))}finally{i(!1)}};return(0,X.jsxs)(`div`,{className:`mt-2`,children:[(0,X.jsx)(ai,{variant:`ghost`,disabled:r,onClick:()=>{c()},className:`text-accent`,children:n}),a?(0,X.jsx)(`p`,{className:`text-xs text-red-600`,children:a}):null]})}function yg(e){return/^Full Codemode output: (\.xopc\/codemode-output\/[a-f0-9-]{36}\.txt)(?:\r?\n|$)/.exec(e)?.[1]}function bg(e,t=0){return rr(e)??(e.type===`tool_use`?e.id:e.type===`text`?e.segmentId??`narration-${t}`:`thinking-${t}`)}var xg=(0,Z.memo)(function(e){let t=(0,Y.c)(15),{active:n,startedAt:r,frozenMs:i,language:a,className:o}=e,[,s]=(0,Z.useState)(0),c;t[0]!==n||t[1]!==s?(c=()=>{if(!n)return;let e=window.setInterval(()=>s(Yg),500);return()=>window.clearInterval(e)},t[0]=n,t[1]=s,t[2]=c):c=t[2];let l;t[3]===n?l=t[4]:(l=[n],t[3]=n,t[4]=l),(0,Z.useEffect)(c,l);let u=n&&r!=null?Math.max(0,Date.now()-r):0,d;t[5]!==n||t[6]!==u||t[7]!==i||t[8]!==a||t[9]!==r?(d=n&&r!=null?fg(u,a):i==null?null:fg(i,a),t[5]=n,t[6]=u,t[7]=i,t[8]=a,t[9]=r,t[10]=d):d=t[10];let f=d;if(!f)return null;let p=n||void 0,m;return t[11]!==o||t[12]!==p||t[13]!==f?(m=(0,X.jsx)(`span`,{className:o,"aria-hidden":p,children:f}),t[11]=o,t[12]=p,t[13]=f,t[14]=m):m=t[14],m});function Sg(e){let t=(0,Y.c)(204),{workLog:n,pendingStatus:r,toolLabels:i,stepLabels:a,clusterLabels:o,cardLabels:s,conversationId:c,simplified:l,personal:u,answerStarted:d,showThinking:f,surfacesOnly:p,renderSurfaces:m}=e,g=l===void 0||l,_=u!==void 0&&u,v=d!==void 0&&d,b=f!==void 0&&f,x=p!==void 0&&p,S=m===void 0||m,C=h(Ig),[w,T]=(0,Z.useState)(!1),E,D;t[0]===r?(E=t[1],D=t[2]):(E=()=>{if(T(!1),r!==`waiting`)return;let e=window.setTimeout(()=>T(!0),3e3);return()=>window.clearTimeout(e)},D=[r],t[0]=r,t[1]=E,t[2]=D),(0,Z.useEffect)(E,D);let O;t[3]===C?O=t[4]:(O=y(C),t[3]=C,t[4]=O);let k=O.chat,A=bo(Fg),j;if(t[5]!==A||t[6]!==b||t[7]!==n.items){let e;t[9]!==A||t[10]!==b?(e=e=>e.type!==`thinking`||A||b,t[9]=A,t[10]=b,t[11]=e):e=t[11],j=n.items.filter(e),t[5]=A,t[6]=b,t[7]=n.items,t[8]=j}else j=t[8];let M=j,N;t[12]===n.items?N=t[13]:(N=n.items.filter(Pg),t[12]=n.items,t[13]=N);let P=N,F=M.length,I=n.active,L=n.expandedByDefault&&I,[R,z]=(0,Z.useState)(null),B=R?.active===I?R.value:null,ee=L,[V,H]=(0,Z.useState)(!1),U=(0,Z.useRef)(null),[W,ne]=(0,Z.useState)(!1),[re,ie]=(0,Z.useState)(!1),ae,oe;t[14]!==I||t[15]!==W?(ae=()=>{if(!I&&!W)return;let e=()=>{let e=window.getSelection();ne(!!(e&&!e.isCollapsed&&U.current?.contains(e.anchorNode)))};return document.addEventListener(`selectionchange`,e),()=>document.removeEventListener(`selectionchange`,e)},oe=[I,W],t[14]=I,t[15]=W,t[16]=ae,t[17]=oe):(ae=t[16],oe=t[17]),(0,Z.useEffect)(ae,oe);let se=!n.compact&&M.length>0&&(B??(ee||W)),G,K;t[18]===se?(G=t[19],K=t[20]):(G=()=>{let e=U.current;if(!se||!e)return;let t=t=>wh(t,e);return e.addEventListener(`wheel`,t,{passive:!1}),()=>e.removeEventListener(`wheel`,t)},K=[se],t[18]=se,t[19]=G,t[20]=K),(0,Z.useEffect)(G,K);let ce,le;t[21]!==se||t[22]!==re?(ce=()=>{if(se){ie(!0);return}if(!re)return;let e=window.setTimeout(()=>ie(!1),200);return()=>window.clearTimeout(e)},le=[se,re],t[21]=se,t[22]=re,t[23]=ce,t[24]=le):(ce=t[23],le=t[24]),(0,Z.useEffect)(ce,le);let q;t[25]===M?q=t[26]:(q=M.every(Ng),t[25]=M,t[26]=q);let ue=q,de,fe;if(t[27]!==I||t[28]!==V||t[29]!==A||t[30]!==ue||t[31]!==M){let e=gg(M);de=ue&&I&&!V&&!A?Math.max(0,e.length-3):0,fe=e.slice(de).flatMap(Mg),t[27]=I,t[28]=V,t[29]=A,t[30]=ue,t[31]=M,t[32]=de,t[33]=fe}else de=t[32],fe=t[33];let pe=fe,me=n.startedAt??null,he=n.durationMs??null,ge;t[34]!==a.editFile||t[35]!==a.fetchUrl||t[36]!==a.listDirectory||t[37]!==a.openUrl||t[38]!==a.readFile||t[39]!==a.runCommand||t[40]!==a.searched||t[41]!==a.searchedCode||t[42]!==a.searchedMemory||t[43]!==a.searchedWeb||t[44]!==a.unknownTool||t[45]!==a.writeFile?(ge={searchedWeb:a.searchedWeb,searchedMemory:a.searchedMemory,searchedCode:a.searchedCode,searched:a.searched,readFile:a.readFile,runCommand:a.runCommand,listDirectory:a.listDirectory,writeFile:a.writeFile,editFile:a.editFile,openUrl:a.openUrl,fetchUrl:a.fetchUrl,unknownTool:a.unknownTool},t[34]=a.editFile,t[35]=a.fetchUrl,t[36]=a.listDirectory,t[37]=a.openUrl,t[38]=a.readFile,t[39]=a.runCommand,t[40]=a.searched,t[41]=a.searchedCode,t[42]=a.searchedMemory,t[43]=a.searchedWeb,t[44]=a.unknownTool,t[45]=a.writeFile,t[46]=ge):ge=t[46];let _e=ge,ve;t[47]!==o.ing||t[48]!==_e||t[49]!==a.toolActivity?(ve=(e,t)=>ia(e,t,a.toolActivity,_e,o.ing),t[47]=o.ing,t[48]=_e,t[49]=a.toolActivity,t[50]=ve):ve=t[50];let ye=ve,be;bb0:{if(!I){be=null;break bb0}let e;t[51]===P?e=t[52]:(e=P.filter(jg),t[51]=P,t[52]=e);let n=e.length;if(n>1){let e;t[53]!==k.activityParallel||t[54]!==n?(e=k.activityParallel.replace(`{{count}}`,String(n)),t[53]=k.activityParallel,t[54]=n,t[55]=e):e=t[55],be=e;break bb0}let r;t[56]===ye?r=t[57]:(r=e=>ye(e,`running`),t[56]=ye,t[57]=r);let i;t[58]!==P||t[59]!==o.ing||t[60]!==r?(i=hh(P,o.ing,r),t[58]=P,t[59]=o.ing,t[60]=r,t[61]=i):i=t[61],be=i}let xe=be,Se=r===`sending`?k.sendingLabel:r===`waiting`?w?k.waitingLongLabel:k.waitingLabel:null,Ce;t[62]!==P||t[63]!==k.thinkingLabel||t[64]!==a.workLogRunning?(Ce=P.some(Ag)?k.thinkingLabel:a.workLogRunning,t[62]=P,t[63]=k.thinkingLabel,t[64]=a.workLogRunning,t[65]=Ce):Ce=t[65];let we=Ce,Te=r??(P.some(kg)?`tool`:P.some(Og)?`thinking`:P.length>0?`organizing`:`working`),Ee=xe??Se??we,De;if(t[66]!==P||t[67]!==k.activityFailed||t[68]!==k.activityMore||t[69]!==k.activityRepeated||t[70]!==C||t[71]!==ye||t[72]!==b||t[73]!==a.thoughts){let e=P.filter(Dg);De=b&&e.length>0?_g(e,e=>ye(e,`completed`),{repeated:k.activityRepeated,more:k.activityMore,failed:k.activityFailed,separator:C===`zh`?`、`:`, `}):b?a.thoughts:null,t[66]=P,t[67]=k.activityFailed,t[68]=k.activityMore,t[69]=k.activityRepeated,t[70]=C,t[71]=ye,t[72]=b,t[73]=a.thoughts,t[74]=De}else De=t[74];let Oe=De;if(n.items.length===0&&!I)return null;let ke;t[75]!==o.ing||t[76]!==a.editFile||t[77]!==a.fetchUrl||t[78]!==a.listDirectory||t[79]!==a.memoryActivity||t[80]!==a.openUrl||t[81]!==a.rawThinking||t[82]!==a.readFile||t[83]!==a.runCommand||t[84]!==a.searched||t[85]!==a.searchedCode||t[86]!==a.searchedMemory||t[87]!==a.searchedWeb||t[88]!==a.stepDetails||t[89]!==a.thoughts||t[90]!==a.thoughtsStreaming||t[91]!==a.toolActivity||t[92]!==a.toolError||t[93]!==a.unknownTool||t[94]!==a.writeFile?(ke={thoughts:a.thoughts,thoughtsStreaming:a.thoughtsStreaming,searchedWeb:a.searchedWeb,searchedMemory:a.searchedMemory,searchedCode:a.searchedCode,searched:a.searched,readFile:a.readFile,stepDetails:a.stepDetails,runCommand:a.runCommand,listDirectory:a.listDirectory,writeFile:a.writeFile,editFile:a.editFile,openUrl:a.openUrl,fetchUrl:a.fetchUrl,unknownTool:a.unknownTool,rawThinking:a.rawThinking,toolError:a.toolError,toolActivity:a.toolActivity,runningActions:o.ing,memoryActivity:a.memoryActivity},t[75]=o.ing,t[76]=a.editFile,t[77]=a.fetchUrl,t[78]=a.listDirectory,t[79]=a.memoryActivity,t[80]=a.openUrl,t[81]=a.rawThinking,t[82]=a.readFile,t[83]=a.runCommand,t[84]=a.searched,t[85]=a.searchedCode,t[86]=a.searchedMemory,t[87]=a.searchedWeb,t[88]=a.stepDetails,t[89]=a.thoughts,t[90]=a.thoughtsStreaming,t[91]=a.toolActivity,t[92]=a.toolError,t[93]=a.unknownTool,t[94]=a.writeFile,t[95]=ke):ke=t[95];let Ae=ke;if(_||x){let e;t[96]!==I||t[97]!==s||t[98]!==c||t[99]!==S||t[100]!==Ae||t[101]!==i||t[102]!==n.items?(e=S&&n.items.filter(Eg).map(e=>(0,X.jsx)(Kg,{block:e,toolLabels:i,stepLabels:Ae,cardLabels:s,conversationId:c,surfaceOnly:!0,runActive:I},e.id)),t[96]=I,t[97]=s,t[98]=c,t[99]=S,t[100]=Ae,t[101]=i,t[102]=n.items,t[103]=e):e=t[103];let r;return t[104]===e?r=t[105]:(r=(0,X.jsx)(X.Fragment,{children:e}),t[104]=e,t[105]=r),r}let je;t[106]!==Ee||t[107]!==I||t[108]!==he||t[109]!==Oe||t[110]!==me||t[111]!==C||t[112]!==Te||t[113]!==a.workLogComplete||t[114]!==a.workLogFailed||t[115]!==a.workLogPartial||t[116]!==a.workLogTitle||t[117]!==n.status?(je=I?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`span`,{className:`block min-w-0 flex-1 truncate whitespace-nowrap`,"data-status-phase":Te,role:`status`,"aria-live":`polite`,"aria-atomic":`true`,children:(0,X.jsx)(`span`,{className:`assistant-activity-shimmer inline-block max-w-full truncate align-bottom`,children:Ee})}),(0,X.jsx)(xg,{active:I,startedAt:me,frozenMs:null,language:C,className:`ml-1.5 w-[8ch] shrink-0 whitespace-nowrap text-right tabular-nums text-fg-muted`})]}):(0,X.jsx)(`span`,{className:`[overflow-wrap:anywhere]`,children:Oe??(n.status===`failed`?a.workLogFailed:n.status===`partial`?a.workLogPartial:he==null?a.workLogTitle:a.workLogComplete)}),t[106]=Ee,t[107]=I,t[108]=he,t[109]=Oe,t[110]=me,t[111]=C,t[112]=Te,t[113]=a.workLogComplete,t[114]=a.workLogFailed,t[115]=a.workLogPartial,t[116]=a.workLogTitle,t[117]=n.status,t[118]=je):je=t[118];let Me=je,Ne;t[119]!==I||t[120]!==he||t[121]!==me||t[122]!==C?(Ne=I?null:(0,X.jsx)(xg,{active:!1,startedAt:me,frozenMs:he,language:C,className:`mt-0.5 tabular-nums text-xs text-fg-muted`}),t[119]=I,t[120]=he,t[121]=me,t[122]=C,t[123]=Ne):Ne=t[123];let Pe=Ne,Fe=!n.compact&&F>0;if(g&&!A){let e;t[124]!==v||t[125]!==I||t[126]!==n.items?(e=!I&&!v&&n.items.some(Tg),t[124]=v,t[125]=I,t[126]=n.items,t[127]=e):e=t[127];let r=e,o=n.status===`failed`||n.status===`partial`||r,l,u,d,f,p;if(t[128]!==v||t[129]!==I||t[130]!==s||t[131]!==c||t[132]!==o||t[133]!==S||t[134]!==ye||t[135]!==Ae||t[136]!==i||t[137]!==n.items||t[138]!==n.status){let e=I&&!v||o?hg(n.items,e=>e.status===`error`||e.activity?.status===`failed`||!na(e.name)&&uh(e.name,e.activity)===`other`?null:ye(e,I&&(e.status===`running`||e.activity?.status===`running`)?`running`:`completed`)):[];l=!0,u=n.status,d=`my-1 min-w-0 w-full text-left`,t[144]!==I||t[145]!==s||t[146]!==c||t[147]!==S||t[148]!==Ae||t[149]!==i||t[150]!==n.items?(f=S&&n.items.filter(wg).map(e=>(0,X.jsx)(Kg,{block:e,toolLabels:i,stepLabels:Ae,cardLabels:s,conversationId:c,surfaceOnly:!0,runActive:I},e.id)),t[144]=I,t[145]=s,t[146]=c,t[147]=S,t[148]=Ae,t[149]=i,t[150]=n.items,t[151]=f):f=t[151],p=e.length>0?(0,X.jsx)(`div`,{"data-assistant-activity-flow":!0,className:`space-y-2.5 text-sm leading-relaxed text-fg-muted`,children:e.map((e,t)=>(0,X.jsx)(Kg,{block:e,toolLabels:i,stepLabels:Ae,cardLabels:s,conversationId:c,runActive:I},bg(e,t)))}):null,t[128]=v,t[129]=I,t[130]=s,t[131]=c,t[132]=o,t[133]=S,t[134]=ye,t[135]=Ae,t[136]=i,t[137]=n.items,t[138]=n.status,t[139]=l,t[140]=u,t[141]=d,t[142]=f,t[143]=p}else l=t[139],u=t[140],d=t[141],f=t[142],p=t[143];let m;t[152]!==I||t[153]!==r||t[154]!==Me||t[155]!==o||t[156]!==a.workLogFailed||t[157]!==a.workLogPartial||t[158]!==n.status?(m=I?(0,X.jsxs)(`div`,{className:`mt-2 flex h-11 w-full min-w-0 items-center gap-2 px-1 text-sm text-fg-muted`,"data-assistant-running":!0,children:[(0,X.jsx)(zt,{className:`assistant-activity-busy size-4 shrink-0`,"aria-hidden":!0}),(0,X.jsx)(`div`,{className:`flex h-6 min-w-0 flex-1 items-center`,children:Me})]}):o?(0,X.jsx)(`p`,{className:`text-sm text-fg-muted`,children:r||n.status===`failed`?a.workLogFailed:a.workLogPartial}):null,t[152]=I,t[153]=r,t[154]=Me,t[155]=o,t[156]=a.workLogFailed,t[157]=a.workLogPartial,t[158]=n.status,t[159]=m):m=t[159];let h;return t[160]!==l||t[161]!==u||t[162]!==d||t[163]!==f||t[164]!==p||t[165]!==m?(h=(0,X.jsxs)(`div`,{"data-assistant-work-log":l,"data-work-log-status":u,className:d,children:[f,p,m]}),t[160]=l,t[161]=u,t[162]=d,t[163]=f,t[164]=p,t[165]=m,t[166]=h):h=t[166],h}let Ie=n.status,Le=I||se?`w-full`:`w-fit max-w-full`,Re;t[167]===Le?Re=t[168]:(Re=J(`my-1 min-w-0`,Le),t[167]=Le,t[168]=Re);let ze;t[169]!==I||t[170]!==se||t[171]!==Pe||t[172]!==Me||t[173]!==Fe||t[174]!==n.compact||t[175]!==n.items.length?(ze=I||!n.compact&&n.items.length>0?(0,X.jsxs)(`button`,{type:`button`,disabled:!Fe,className:J(`flex max-w-full min-w-0 items-center gap-2 rounded-lg px-1 py-1.5 text-left text-sm text-fg-muted`,I?`h-11`:`min-h-11`,I?`w-full`:`w-fit`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent focus-visible:ring-offset-2 focus-visible:ring-offset-surface-panel`),onClick:Fe?()=>z({active:I,value:!se}):void 0,"aria-expanded":Fe?se:void 0,children:[(0,X.jsx)(zt,{className:J(`size-4 shrink-0`,I&&`assistant-activity-busy`),"aria-hidden":!0}),(0,X.jsx)(`div`,{className:`min-w-0 flex-1 overflow-hidden`,children:(0,X.jsx)(`span`,{className:`flex h-6 w-full min-w-0 items-center`,children:Me})}),(0,X.jsx)(`span`,{className:`flex shrink-0 items-start justify-end`,children:Pe}),Fe?(0,X.jsx)(te,{className:J(`size-4 shrink-0 text-fg-muted transition-transform motion-reduce:transition-none`,se&&`rotate-180`),"aria-hidden":!0}):null]}):null,t[169]=I,t[170]=se,t[171]=Pe,t[172]=Me,t[173]=Fe,t[174]=n.compact,t[175]=n.items.length,t[176]=ze):ze=t[176];let Be;t[177]!==I||t[178]!==s||t[179]!==c||t[180]!==S||t[181]!==Ae||t[182]!==i||t[183]!==n.items?(Be=S&&n.items.filter(Cg).map(e=>(0,X.jsx)(Kg,{block:e,toolLabels:i,stepLabels:Ae,cardLabels:s,conversationId:c,surfaceOnly:!0,runActive:I},e.id)),t[177]=I,t[178]=s,t[179]=c,t[180]=S,t[181]=Ae,t[182]=i,t[183]=n.items,t[184]=Be):Be=t[184];let Ve;t[185]!==I||t[186]!==s||t[187]!==k.activityEarlier||t[188]!==c||t[189]!==se||t[190]!==re||t[191]!==de||t[192]!==V||t[193]!==b||t[194]!==pe||t[195]!==Ae||t[196]!==i?(Ve=se||re?(0,X.jsx)(`div`,{className:`assistant-activity-disclosure`,"data-open":se,"aria-hidden":!se,inert:!se,children:(0,X.jsx)(`div`,{className:`min-h-0 overflow-hidden`,children:(0,X.jsxs)(`div`,{ref:U,className:`assistant-activity-flow mt-1 max-h-[min(32rem,50dvh)] w-full min-w-0 overflow-x-hidden overflow-y-auto pb-1 pl-1 pr-2 [scrollbar-gutter:stable]`,"data-assistant-activity-flow":!0,onFocusCapture:()=>z({active:I,value:!0}),children:[de>0?(0,X.jsx)(`button`,{type:`button`,className:`mb-3 text-xs text-fg-muted hover:text-fg`,onClick:()=>H(!0),children:k.activityEarlier}):null,(0,X.jsx)(Lg,{blocks:pe,toolLabels:i,stepLabels:Ae,cardLabels:s,conversationId:c,animateNew:I&&se&&!V,runActive:I,showThinking:b})]})})}):null,t[185]=I,t[186]=s,t[187]=k.activityEarlier,t[188]=c,t[189]=se,t[190]=re,t[191]=de,t[192]=V,t[193]=b,t[194]=pe,t[195]=Ae,t[196]=i,t[197]=Ve):Ve=t[197];let He;return t[198]!==Re||t[199]!==ze||t[200]!==Be||t[201]!==Ve||t[202]!==n.status?(He=(0,X.jsxs)(`div`,{"data-assistant-work-log":!0,"data-work-log-status":Ie,className:Re,children:[ze,Be,Ve]}),t[198]=Re,t[199]=ze,t[200]=Be,t[201]=Ve,t[202]=n.status,t[203]=He):He=t[203],He}function Cg(e){return e.type===`tool_use`}function wg(e){return e.type===`tool_use`}function Tg(e){return e.type===`tool_use`&&(e.status===`error`||e.activity?.status===`failed`)}function Eg(e){return e.type===`tool_use`}function Dg(e){return e.type===`tool_use`}function Og(e){return e.type===`thinking`&&e.streaming}function kg(e){return e.type===`tool_use`&&e.status===`running`}function Ag(e){return e.type===`thinking`&&e.streaming}function jg(e){return e.type===`tool_use`&&(e.status===`running`||e.activity?.status===`running`)}function Mg(e){return e.type===`tools`?e.tools:[e.item]}function Ng(e){return rr(e)||e.type===`tool_use`||e.type===`text`&&e.segmentId}function Pg(e){return e.type!==`text`}function Fg(e){return e.showRawToolData}function Ig(e){return e.language}function Lg({blocks:e,toolLabels:t,stepLabels:n,cardLabels:r,className:i,conversationId:a,animateNew:o=!1,runActive:s,showThinking:c=!1}){let l=(0,Z.useRef)(new Set(e.map(bg))),u=bo(e=>e.showRawToolData),d=h(e=>e.language),f=u?e.map(e=>({type:`item`,item:e})):gg(e);return e.length>0?(0,X.jsx)(`div`,{className:J(`min-w-0 overflow-x-hidden`,i),children:(0,X.jsx)(`div`,{className:`min-w-0 space-y-2.5 pl-1`,children:f.map((e,i)=>{let f=e.type===`tools`?e.tools[0]:e.item,p=bg(f,i);return(0,X.jsx)(`div`,{className:J(o&&!l.current.has(p)&&f.type!==`text`&&`assistant-activity-enter`),children:e.type===`tools`?(0,X.jsx)(Rg,{tools:e.tools,runActive:s,labels:n,language:d,renderTool:e=>(0,X.jsx)(Kg,{block:e,toolLabels:t,stepLabels:n,cardLabels:r,conversationId:a,runActive:s},e.id)}):e.item.type===`thinking`&&c&&!u?(0,X.jsx)(`div`,{"data-assistant-thinking":!0,className:`text-sm leading-relaxed text-fg-muted`,children:(0,X.jsx)(Ld,{content:e.item.text,compact:!0,streaming:!!(s&&e.item.streaming)})}):(0,X.jsx)(Kg,{block:e.item,toolLabels:t,stepLabels:n,cardLabels:r,conversationId:a,runActive:s})},p)})})}):null}function Rg(e){let t=(0,Y.c)(40),{tools:n,runActive:r,labels:i,language:a,renderTool:o}=e,s;t[0]!==r||t[1]!==n?(s=r&&n.some(Bg),t[0]=r,t[1]=n,t[2]=s):s=t[2];let c=s,l;if(t[3]!==i||t[4]!==a||t[5]!==r||t[6]!==n){let e=y(a).chat,o;t[8]!==i||t[9]!==r?(o=e=>ia(e,r&&(e.status===`running`||e.activity?.status===`running`)?`running`:`completed`,i.toolActivity,i,i.runningActions),t[8]=i,t[9]=r,t[10]=o):o=t[10],l=_g(n,o,{repeated:e.activityRepeated,more:e.activityMore,failed:e.activityFailed,separator:a===`zh`?`、`:`, `}),t[3]=i,t[4]=a,t[5]=r,t[6]=n,t[7]=l}else l=t[7];let u=l,d,f,p,m,h;if(t[11]!==o||t[12]!==c||t[13]!==n){h=Symbol.for(`react.early_return_sentinel`);bb0:{if(d=c?[...n].reverse().find(zg):void 0,n.length===1){let e;t[19]!==o||t[20]!==n[0]?(e=o(n[0]),t[19]=o,t[20]=n[0],t[21]=e):e=t[21],h=e;break bb0}f=!0,p=`min-w-0 space-y-1.5`,m=d?o(d):null}t[11]=o,t[12]=c,t[13]=n,t[14]=d,t[15]=f,t[16]=p,t[17]=m,t[18]=h}else d=t[14],f=t[15],p=t[16],m=t[17],h=t[18];if(h!==Symbol.for(`react.early_return_sentinel`))return h;let g;t[22]===u?g=t[23]:(g=(0,X.jsx)(`summary`,{className:`cursor-pointer rounded-md py-1 hover:text-fg focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,children:(0,X.jsx)(`span`,{children:u})}),t[22]=u,t[23]=g);let _;if(t[24]!==d||t[25]!==o||t[26]!==n){let e;t[28]===d?e=t[29]:(e=e=>e!==d,t[28]=d,t[29]=e),_=n.filter(e).map(o),t[24]=d,t[25]=o,t[26]=n,t[27]=_}else _=t[27];let v;t[30]===_?v=t[31]:(v=(0,X.jsx)(`div`,{className:`mt-2 min-w-0 space-y-2.5 border-l border-edge-subtle pl-3`,children:_}),t[30]=_,t[31]=v);let b;t[32]!==g||t[33]!==v?(b=(0,X.jsxs)(`details`,{className:`min-w-0 text-[13px] text-fg-muted`,children:[g,v]}),t[32]=g,t[33]=v,t[34]=b):b=t[34];let x;return t[35]!==b||t[36]!==f||t[37]!==p||t[38]!==m?(x=(0,X.jsxs)(`div`,{"data-activity-group":f,className:p,children:[m,b]}),t[35]=b,t[36]=f,t[37]=p,t[38]=m,t[39]=x):x=t[39],x}function zg(e){return e.status===`running`||e.activity?.status===`running`}function Bg(e){return e.status===`running`||e.activity?.status===`running`}function Vg(e){let t=(0,Y.c)(15),{toolName:n,toolResult:r}=e,i=Fr(),a=mg(n);if(!a||i.length===0)return null;let o;if(t[0]!==i||t[1]!==a.extensionId){let e;t[3]===a.extensionId?e=t[4]:(e=e=>e.id===a.extensionId,t[3]=a.extensionId,t[4]=e),o=i.find(e),t[0]=i,t[1]=a.extensionId,t[2]=o}else o=t[2];let s=o,c=s?.name??a.extensionId,l=a.maxHeight??400,u=a.interactive??!1,d=s?.ui?.permissions,f;return t[5]!==c||t[6]!==l||t[7]!==u||t[8]!==d||t[9]!==r||t[10]!==a.entrypoint||t[11]!==a.extensionId||t[12]!==a.id||t[13]!==a.title?(f=(0,X.jsx)(pg,{extensionId:a.extensionId,extensionName:c,widgetId:a.id,entrypoint:a.entrypoint,title:a.title,toolResult:r,maxHeight:l,interactive:u,permissions:d}),t[5]=c,t[6]=l,t[7]=u,t[8]=d,t[9]=r,t[10]=a.entrypoint,t[11]=a.extensionId,t[12]=a.id,t[13]=a.title,t[14]=f):f=t[14],f}var Hg=new Set([`readFile`,`editFile`,`writeFile`,`runCommand`,`fetchUrl`]),Ug=240;function Wg(e){let t=e.split(`
|
|
26
26
|
`).map(e=>e.trim()).find(Boolean)??``;return t.length<=Ug?t:`${t.slice(0,Ug)}…`}function Gg(e,t,n){let r=Ih(e.result),i=(e.details&&typeof e.details==`object`&&!Array.isArray(e.details)?e.details:null)??r.details;if(i?.timedOut===!0)return n.timedOut;if(typeof i?.exitCode==`number`&&i.exitCode!==0)return n.exitCodeNonZero.replace(/\{\{code\}\}/g,String(i.exitCode));for(let e of[`errorMessage`,`error`,`message`,`reason`]){let t=i?.[e];if(typeof t==`string`&&t.trim())return Wg(t)}return Wg(r.text)||t}function Kg(e){let t=(0,Y.c)(153),{block:n,toolLabels:r,stepLabels:i,cardLabels:a,conversationId:o,surfaceOnly:s,runActive:c}=e,l=s!==void 0&&s,d=c===void 0||c,f;t[0]===n?f=t[1]:(f=rr(n),t[0]=n,t[1]=f);let p=vm(o,f),m=p?.type===n.type?p:n,g=bo(Jg),_=h(qg),v;bb0:{if(m.type!==`tool_use`){v=``;break bb0}if(m.status===`running`){v=``;break bb0}let e=m.result;if(e==null){v=``;break bb0}if(typeof e==`string`){let n;t[2]===e?n=t[3]:(n=e.trim(),t[2]=e,t[3]=n),v=n;break bb0}try{let n;t[4]===e?n=t[5]:(n=JSON.stringify(e,null,2),t[4]=e,t[5]=n),v=n}catch{v=String(e)}}let b=v;if(m.type===`text`){let e;t[6]===m.text?e=t[7]:(e=m.text.trim(),t[6]=m.text,t[7]=e);let n=e;if(!n)return null;let r=m.presentation===`pending`,i;return t[8]!==r||t[9]!==n?(i=(0,X.jsx)(`div`,{className:`min-w-0 text-sm leading-relaxed text-fg-muted`,children:(0,X.jsx)(Ld,{content:n,compact:!0,streaming:r})}),t[8]=r,t[9]=n,t[10]=i):i=t[10],i}if(m.type===`thinking`){let e=!!m.streaming,n;t[11]===m.text?n=t[12]:(n=m.text?.trim()??``,t[11]=m.text,t[12]=n);let r=n;if(!g||!r)return null;let a=e?i.thoughtsStreaming:i.thoughts,o;t[13]===a?o=t[14]:(o=(0,X.jsx)(`span`,{className:`inline-flex max-w-full min-w-0 break-words text-[13px] text-fg-muted [overflow-wrap:anywhere]`,children:a}),t[13]=a,t[14]=o);let s;t[15]!==g||t[16]!==i.rawThinking||t[17]!==e||t[18]!==r?(s=g&&r?(0,X.jsxs)(`details`,{className:`group min-w-0 text-xs`,children:[(0,X.jsx)(`summary`,{className:`cursor-pointer select-none text-fg-subtle underline-offset-2 hover:text-fg-muted`,children:i.rawThinking}),(0,X.jsx)(`p`,{className:`mt-1 whitespace-pre-wrap break-words text-xs leading-relaxed text-fg-muted [overflow-wrap:anywhere]`,children:r})]}):e?(0,X.jsx)(`p`,{className:`text-xs text-fg-muted`,children:`…`}):null,t[15]=g,t[16]=i.rawThinking,t[17]=e,t[18]=r,t[19]=s):s=t[19];let c;return t[20]!==o||t[21]!==s?(c=(0,X.jsx)(`div`,{className:`min-w-0`,children:(0,X.jsxs)(`div`,{className:`min-w-0 space-y-1`,children:[o,s]})}),t[20]=o,t[21]=s,t[22]=c):c=t[22],c}let x=d&&(m.status===`running`||m.activity?.status===`running`),S=m.status===`error`||m.activity?.status===`failed`,C;t[23]!==m||t[24]!==a||t[25]!==S||t[26]!==i.toolError?(C=S?Gg(m,i.toolError,a):``,t[23]=m,t[24]=a,t[25]=S,t[26]=i.toolError,t[27]=C):C=t[27];let w=C,T=b,E;t[28]!==m.name||t[29]!==T?(E=m.name===`codemode`?yg(T??``):void 0,t[28]=m.name,t[29]=T,t[30]=E):E=t[30];let D=E,O=x&&m.details&&typeof m.details==`object`&&!Array.isArray(m.details)&&typeof m.details.text==`string`?m.details.text:``,k=T??``;if(k)try{let e;t[31]===k?e=t[32]:(e=JSON.stringify(JSON.parse(k),null,2),t[31]=k,t[32]=e),k=e}catch{}let A,j,M,N,P;if(t[33]!==m||t[34]!==S||t[35]!==x||t[36]!==i.editFile||t[37]!==i.fetchUrl||t[38]!==i.listDirectory||t[39]!==i.memoryActivity||t[40]!==i.openUrl||t[41]!==i.readFile||t[42]!==i.runCommand||t[43]!==i.runningActions||t[44]!==i.searched||t[45]!==i.searchedCode||t[46]!==i.searchedMemory||t[47]!==i.searchedWeb||t[48]!==i.toolActivity||t[49]!==i.toolError||t[50]!==i.unknownTool||t[51]!==i.writeFile){j=uh(m.name,m.activity),A=Hg.has(j),M=j===`memorySearch`?bh(m,i.memoryActivity):null;let e;if(t[57]!==m||t[58]!==S||t[59]!==x||t[60]!==M?.title||t[61]!==i.editFile||t[62]!==i.fetchUrl||t[63]!==i.listDirectory||t[64]!==i.openUrl||t[65]!==i.readFile||t[66]!==i.runCommand||t[67]!==i.runningActions||t[68]!==i.searched||t[69]!==i.searchedCode||t[70]!==i.searchedMemory||t[71]!==i.searchedWeb||t[72]!==i.toolActivity||t[73]!==i.toolError||t[74]!==i.unknownTool||t[75]!==i.writeFile){let n={searchedWeb:i.searchedWeb,searchedMemory:i.searchedMemory,searchedCode:i.searchedCode,searched:i.searched,readFile:i.readFile,runCommand:i.runCommand,listDirectory:i.listDirectory,writeFile:i.writeFile,editFile:i.editFile,openUrl:i.openUrl,fetchUrl:i.fetchUrl,unknownTool:i.unknownTool};e=S?i.toolError:M?.title??ia(m,x?`running`:`completed`,i.toolActivity,n,i.runningActions),t[57]=m,t[58]=S,t[59]=x,t[60]=M?.title,t[61]=i.editFile,t[62]=i.fetchUrl,t[63]=i.listDirectory,t[64]=i.openUrl,t[65]=i.readFile,t[66]=i.runCommand,t[67]=i.runningActions,t[68]=i.searched,t[69]=i.searchedCode,t[70]=i.searchedMemory,t[71]=i.searchedWeb,t[72]=i.toolActivity,t[73]=i.toolError,t[74]=i.unknownTool,t[75]=i.writeFile,t[76]=e}else e=t[76];P=e,N=S?Ht:j.includes(`Search`)||j===`search`?Pt:j===`readFile`?ee:j===`editFile`||j===`writeFile`?Go:j===`fetchUrl`||j===`openUrl`?Pe:fe,t[33]=m,t[34]=S,t[35]=x,t[36]=i.editFile,t[37]=i.fetchUrl,t[38]=i.listDirectory,t[39]=i.memoryActivity,t[40]=i.openUrl,t[41]=i.readFile,t[42]=i.runCommand,t[43]=i.runningActions,t[44]=i.searched,t[45]=i.searchedCode,t[46]=i.searchedMemory,t[47]=i.searchedWeb,t[48]=i.toolActivity,t[49]=i.toolError,t[50]=i.unknownTool,t[51]=i.writeFile,t[52]=A,t[53]=j,t[54]=M,t[55]=N,t[56]=P}else A=t[52],j=t[53],M=t[54],N=t[55],P=t[56];let F=N,I;t[77]!==m.input||t[78]!==M?(I=M?``:jh(m.input),t[77]=m.input,t[78]=M,t[79]=I):I=t[79];let L=I,R;t[80]===m.input?R=t[81]:(R=m.input===void 0?``:Th(m.input),t[80]=m.input,t[81]=R);let z=R,B;t[82]!==m||t[83]!==a||t[84]!==A||t[85]!==j?(B=A?j===`readFile`?(0,X.jsx)(Zh,{block:m,labels:a}):j===`editFile`?(0,X.jsx)(eg,{block:m,labels:a}):j===`writeFile`?(0,X.jsx)(ng,{block:m,labels:a}):j===`runCommand`?(0,X.jsx)(ag,{block:m,labels:a}):j===`fetchUrl`?(0,X.jsx)(og,{block:m,labels:a}):null:null,t[82]=m,t[83]=a,t[84]=A,t[85]=j,t[86]=B):B=t[86];let V=B;if(l){let e;t[87]!==m.name||t[88]!==m.result||t[89]!==S||t[90]!==x?(e=!x&&!S?(0,X.jsx)(Vg,{toolName:m.name,toolResult:m.result}):null,t[87]=m.name,t[88]=m.result,t[89]=S,t[90]=x,t[91]=e):e=t[91];let n;return t[92]===e?n=t[93]:(n=(0,X.jsx)(X.Fragment,{children:e}),t[92]=e,t[93]=n),n}let H=!x&&g,te=m.parentToolCallId?`ml-4 min-w-0 border-l border-edge pl-3`:`min-w-0`,U=S?`failed`:x?`running`:`completed`,W=x&&`assistant-activity-busy`,ne;t[94]===W?ne=t[95]:(ne=J(`mt-0.5 size-4 shrink-0 text-fg-subtle`,W),t[94]=W,t[95]=ne);let re;t[96]!==F||t[97]!==ne?(re=(0,X.jsx)(F,{className:ne,"aria-hidden":!0}),t[96]=F,t[97]=ne,t[98]=re):re=t[98];let ie;t[99]===P?ie=t[100]:(ie=(0,X.jsx)(`span`,{className:`inline-flex max-w-full min-w-0 break-words text-[13px] text-fg-muted [overflow-wrap:anywhere]`,children:P}),t[99]=P,t[100]=ie);let ae;t[101]!==U||t[102]!==re||t[103]!==ie?(ae=(0,X.jsxs)(`div`,{className:`flex min-w-0 items-start gap-2`,"data-activity-status":U,children:[re,ie]}),t[101]=U,t[102]=re,t[103]=ie,t[104]=ae):ae=t[104];let oe;t[105]!==V||t[106]!==i.stepDetails?(oe=V?(0,X.jsxs)(`details`,{className:`min-w-0 text-xs text-fg-muted`,children:[(0,X.jsx)(`summary`,{className:`cursor-pointer hover:text-fg`,children:i.stepDetails}),V]}):null,t[105]=V,t[106]=i.stepDetails,t[107]=oe):oe=t[107];let se;t[108]!==m||t[109]!==x||t[110]!==j||t[111]!==_||t[112]!==g||t[113]!==i.stepDetails?(se=j===`webSearch`&&!x?(0,X.jsx)(dg,{block:m,summary:i.stepDetails,labels:y(_).chat.searchDetails,developer:g,language:_}):null,t[108]=m,t[109]=x,t[110]=j,t[111]=_,t[112]=g,t[113]=i.stepDetails,t[114]=se):se=t[114];let G;t[115]!==M||t[116]!==i.memoryActivity?(G=M?(0,X.jsxs)(`div`,{className:`space-y-1 text-xs text-fg-muted`,children:[(0,X.jsx)(`p`,{children:M.purpose}),(0,X.jsxs)(`div`,{className:`flex flex-wrap gap-x-3 gap-y-1`,children:[(0,X.jsx)(u,{className:`font-medium text-accent-fg hover:underline`,to:`/user-model`,children:i.memoryActivity.manage}),(0,X.jsx)(u,{className:`font-medium text-accent-fg hover:underline`,to:`/user-model`,children:i.memoryActivity.privacy})]}),(0,X.jsxs)(`details`,{children:[(0,X.jsx)(`summary`,{className:`cursor-pointer select-none text-fg-subtle hover:text-fg-muted`,children:i.memoryActivity.why}),(0,X.jsx)(`div`,{className:`mt-1.5 rounded-md bg-surface-hover/60 px-2 py-1.5 dark:bg-surface-hover/35`,children:(0,X.jsx)(`p`,{children:i.memoryActivity.explanation})})]})]}):null,t[115]=M,t[116]=i.memoryActivity,t[117]=G):G=t[117];let K;t[118]!==w||t[119]!==g?(K=w&&g?(0,X.jsx)(`p`,{className:`text-xs leading-relaxed text-fg-subtle`,children:w}):null,t[118]=w,t[119]=g,t[120]=K):K=t[120];let ce;t[121]!==L||t[122]!==A||t[123]!==g?(ce=g&&!A&&L?(0,X.jsx)(`p`,{className:`min-w-0 break-words text-xs text-fg-muted [overflow-wrap:anywhere]`,children:L}):null,t[121]=L,t[122]=A,t[123]=g,t[124]=ce):ce=t[124];let le;t[125]!==O||t[126]!==g?(le=g&&O?(0,X.jsx)(`pre`,{className:`max-h-48 min-w-0 overflow-y-auto overflow-x-hidden rounded-md bg-surface-hover/60 p-2 whitespace-pre-wrap break-words font-mono text-xs leading-relaxed text-fg-muted [overflow-wrap:anywhere] dark:bg-surface-hover/35`,children:O}):null,t[125]=O,t[126]=g,t[127]=le):le=t[127];let q;t[128]!==o||t[129]!==_||t[130]!==D?(q=D?(0,X.jsx)(vg,{path:D,conversationId:o,label:_===`zh`?`查看完整输出`:`View full output`}):null,t[128]=o,t[129]=_,t[130]=D,t[131]=q):q=t[131];let ue;t[132]!==a||t[133]!==A||t[134]!==k||t[135]!==z||t[136]!==H||t[137]!==i.stepDetails||t[138]!==r?(ue=H?(0,X.jsxs)(`details`,{className:`group min-w-0 text-xs`,children:[(0,X.jsx)(`summary`,{className:`cursor-pointer select-none text-fg-subtle underline-offset-2 hover:text-fg-muted group-open:text-fg-muted`,children:A?a.rawDetails:i.stepDetails}),(0,X.jsxs)(`div`,{className:`mt-2 max-h-48 w-full min-w-0 max-w-full overflow-y-auto overflow-x-hidden rounded-md bg-surface-hover/60 p-2 font-mono dark:bg-surface-hover/35`,children:[z?(0,X.jsxs)(`div`,{className:`mb-2 min-w-0`,children:[(0,X.jsx)(`div`,{className:`mb-0.5 text-[10px] uppercase tracking-wide text-fg-disabled`,children:r.input}),(0,X.jsx)(`pre`,{className:`whitespace-pre-wrap break-words text-fg-muted [overflow-wrap:anywhere]`,children:z})]}):null,(0,X.jsxs)(`div`,{className:`min-w-0`,children:[(0,X.jsx)(`div`,{className:`mb-0.5 text-[10px] uppercase tracking-wide text-fg-disabled`,children:r.output}),(0,X.jsx)(`pre`,{className:`whitespace-pre-wrap break-words text-fg-muted [overflow-wrap:anywhere]`,children:k||r.noOutput})]})]})]}):null,t[132]=a,t[133]=A,t[134]=k,t[135]=z,t[136]=H,t[137]=i.stepDetails,t[138]=r,t[139]=ue):ue=t[139];let de;t[140]!==ae||t[141]!==oe||t[142]!==se||t[143]!==G||t[144]!==K||t[145]!==ce||t[146]!==le||t[147]!==q||t[148]!==ue?(de=(0,X.jsxs)(`div`,{className:`min-w-0 space-y-1.5`,children:[ae,oe,se,G,K,ce,le,q,ue]}),t[140]=ae,t[141]=oe,t[142]=se,t[143]=G,t[144]=K,t[145]=ce,t[146]=le,t[147]=q,t[148]=ue,t[149]=de):de=t[149];let pe;return t[150]!==te||t[151]!==de?(pe=(0,X.jsx)(`div`,{className:te,children:de}),t[150]=te,t[151]=de,t[152]=pe):pe=t[152],pe}function qg(e){return e.language}function Jg(e){return e.showRawToolData}function Yg(e){return e+1}function Xg(e){let t=(0,Y.c)(2),{children:n}=e,r;return t[0]===n?r=t[1]:(r=(0,X.jsx)(Ma,{delayDuration:300,skipDelayDuration:100,children:n}),t[0]=n,t[1]=r),r}function Zg(e){let t=(0,Y.c)(7),{label:n,children:r}=e,i;t[0]===r?i=t[1]:(i=(0,X.jsx)(Ia,{asChild:!0,children:r}),t[0]=r,t[1]=i);let a;t[2]===n?a=t[3]:(a=(0,X.jsx)(Na,{children:(0,X.jsx)(Fa,{side:`top`,sideOffset:7,collisionPadding:12,className:`z-[100] max-w-[min(18rem,90vw)] rounded-md border border-edge bg-surface-overlay px-2.5 py-1.5 text-xs text-fg shadow-popover`,children:n})}),t[2]=n,t[3]=a);let o;return t[4]!==i||t[5]!==a?(o=(0,X.jsxs)(Pa,{children:[i,a]}),t[4]=i,t[5]=a,t[6]=o):o=t[6],o}function Qg(e,t){let n=e.filter(e=>e.type===`tool_use`),r=n.map(e=>e.startedAt).filter(e=>Number.isFinite(e)),i=n.map(e=>e.completedAt).filter(e=>Number.isFinite(e)),a=r.length>0?Math.min(...r):void 0,o=[...i,...Number.isFinite(t)?[t]:[]],s=o.length>0?Math.max(...o):void 0;return{startedAt:a,completedAt:s,durationMs:a!=null&&s!=null?Math.max(0,s-a):void 0}}function $g(e){return e.filter(e=>e.type===`thinking`||e.type===`tool_use`)}function e_(e){let t=Tr(e,`running`);return t.category===`web`&&t.action===`search`}function t_(e){let t=[];for(let n of e)if(!(!e_(n.name)||n.result==null))try{let e=typeof n.result==`string`?JSON.parse(n.result):n.result,r=Array.isArray(e)?e:e?.results??[];for(let e of r)e.url&&t.push({url:e.url,title:e.title??e.url,snippet:e.snippet})}catch{}return t}function n_(e){return typeof e==`object`&&e&&!Array.isArray(e)?e:null}function r_(e){let t=n_(e);return t?i_(on(t.delivery)??on(n_(t.details)?.delivery)??on(e),t):null}function i_(e,t){let n=e?.primary;if(!e||n?.kind!==`automation`||n.runId||e.operation!==`started`)return e;let r=n_(t),i=n_((n_(r?.result)??r)?.run);return i?.automationId!==n.id||typeof i.id!=`string`||!i.id?e:{...e,primary:{...n,runId:i.id}}}function a_(e){let t=r_(e.details);if(t)return t;let n=Ih(e.result),r=r_(n.details);if(r)return r;let i=nn(n.text);if(i)try{return i_(i,JSON.parse(n.text.split(`
|
|
27
27
|
Open in xopc:`)[0]))}catch{return i}if(typeof e.result==`string`)try{return r_(JSON.parse(e.result))}catch{return null}return r_(e.result)}function o_(e){let t=e.indexOf(`.`);if(t<=0)return null;let n=e.slice(t+1);if(!/^[A-Za-z0-9_-]+$/.test(n))return null;try{let e=Uint8Array.from(atob(n.replace(/-/g,`+`).replace(/_/g,`/`)),e=>e.charCodeAt(0)),t=new TextDecoder(`utf-8`,{fatal:!0}).decode(e);return t&&!t.startsWith(`/`)&&!t.includes(`\\`)&&t.split(`/`).every(e=>e!==`.`&&e!==`..`&&e!==``)?t:null}catch{return null}}function s_(e){return e.normalize(`NFKC`).trim().replace(/\s+/g,` `).toLowerCase()}function c_(e){return e.operation!==`opened`||e.presentation?.kind===`diff`||e.presentation?.kind===`inline_app`||e.presentation?.kind===`inline_preview`}function l_(e){return e.flatMap(({key:e,delivery:t})=>t.presentation?.kind===`diff`?[{key:e,presentation:t.presentation}]:[])}function u_(e){return{truncated:e.flatMap(({delivery:e})=>e.presentation?.kind===`table`?[e.presentation]:[]).some(e=>e.truncated)}}function d_(e){let t=e.flatMap(({key:e,delivery:t})=>t.presentation?.kind===`inline_app`?[{key:e,delivery:t,presentation:t.presentation}]:[]);return[...new Map(t.map(e=>[`${e.presentation.reference.id}:${e.presentation.snapshot.sourceHash}`,e])).values()]}function f_(e){let t=e.flatMap(({key:e,delivery:t})=>t.presentation?.kind===`inline_preview`?[{key:e,delivery:t,presentation:t.presentation}]:[]);return[...new Map(t.map(e=>[`${e.presentation.reference.id}:${e.presentation.sourceHash}`,e])).values()]}function p_(e,t){let n=e.flatMap(({key:e,delivery:n})=>(n.presentation?.kind===`table`?n.presentation.items:n.presentation?[]:[n.primary,...n.related??[]]).flatMap((r,i)=>{if(!r)return[];let a=`${r.kind}:${r.id}${r.runId?`:${r.runId}`:``}`;return t?.has(a)?[]:[{key:`${e}:${i}:${a}`,delivery:n,reference:r}]})),r=[...new Map(n.map(e=>[`${e.reference.kind}:${e.reference.id}:${e.reference.runId??``}`,e])).values()],i=new Map;for(let e of r){if(e.reference.kind!==`task`)continue;let t=s_(e.reference.title);t&&i.set(t,e.reference.id)}return r.filter(e=>{if(e.reference.kind!==`task`)return!0;let t=s_(e.reference.title);return!t||i.get(t)===e.reference.id})}function m_(e){return c_(e)?e.presentation||e.related?.length?!0:e.primary?e.primary.kind!==`note`||e.operation===`created`||e.operation===`updated`:!1:!1}function h_({message:e,isStreaming:t,reasoningLevel:n}){let r=Fn(e.content??[],{includePending:!0}),i=new Set(r),a=mh($g(e.content??[])),o=(e.content??[]).filter(e=>e.type===`tool_use`?!0:e.type===`thinking`?n!==`off`&&(!!e.text?.trim()||!!e.streaming):e.type===`text`&&!i.has(e)&&!!e.text?.trim()),s=r.some(e=>e.type===`review`||e.type===`text`&&!!e.text?.trim()),c=a.filter(e=>e.type===`tool_use`),l=[...c].reverse().find(e=>e.status===`running`||e.activity?.status===`running`),u=new Map;for(let e of c){let t=a_(e);t&&m_(t)&&u.set(e.id,t)}let d=[...u].map(([e,t])=>({key:e,delivery:t})),f=Qg(a,t?void 0:e.completedAt??e.timestamp),p=[e.startedAt??e.timestamp,f.startedAt].filter(e=>Number.isFinite(e)),m=p.length>0?Math.min(...p):void 0,h=m!=null&&f.completedAt!=null?Math.max(0,f.completedAt-m):void 0,g=t?`running`:e.outcome?.status===`failed`?`failed`:e.outcome?.status===`partial`?`partial`:`completed`,_=(e.content??[]).filter(e=>e.type===`image`&&!!e.source?.data),v=e.outcome??e.taskResultDelivery?.outcome,y=new Set(v?.deliverables.map(e=>e.artifactId)),b=new Set(v?.deliverables.flatMap(e=>e.uri?[e.uri]:[])),x=[...nm(_),...e.attachments??[]].filter(e=>!(e.id&&y.has(e.id)||e.uri&&b.has(e.uri))),S;return S=t?l?`using_tool`:a.some(e=>e.type===`thinking`&&!!e.streaming)?`reasoning`:s?`answering`:`starting`:e.outcome?.status===`partial`||e.outcome?.status===`failed`?`partial`:`completed`,{answerContent:r,workLog:{items:o,active:t&&(o.length>0||!s),status:g,compact:n===`off`,expandedByDefault:n!==`off`&&t&&!s,startedAt:m,durationMs:h},answer:{started:s,showStreamingCursor:t&&s&&(o.length===0||S===`answering`)},lifecycle:{state:S,activeTool:S===`using_tool`?l:void 0},outcome:v,resultRevision:e.taskResultDelivery?.resultRevision,deliveries:d,attachments:x,sources:t_(c)}}function g_(e){let t=(0,Y.c)(10),{blocks:n,sources:r,className:i}=e,a=n===void 0?[]:n,o=i===void 0?`mt-6`:i,s=y(h(y_)),c=a.filter(v_),l=r??t_(c);if(l.length===0)return null;let u=s.chat.searchSourcesHeading.replace(`{{count}}`,String(l.length)),d;t[0]===u?d=t[1]:(d=(0,X.jsx)(`p`,{className:`mb-3 text-xs font-medium text-fg-muted`,children:u}),t[0]=u,t[1]=d);let f;t[2]===l?f=t[3]:(f=l.map(__),t[2]=l,t[3]=f);let p;t[4]===f?p=t[5]:(p=(0,X.jsx)(`ol`,{className:`space-y-3`,children:f}),t[4]=f,t[5]=p);let m;return t[6]!==o||t[7]!==d||t[8]!==p?(m=(0,X.jsxs)(`div`,{className:o,children:[d,p]}),t[6]=o,t[7]=d,t[8]=p,t[9]=m):m=t[9],m}function __(e,t){let n=(()=>{try{return new URL(e.url).hostname}catch{return``}})(),r=n?`https://www.google.com/s2/favicons?domain=${n}&sz=16`:void 0;return(0,X.jsxs)(`li`,{className:`flex min-w-0 gap-2.5`,children:[(0,X.jsxs)(`span`,{className:`mt-0.5 shrink-0 text-xs text-fg-disabled`,children:[t+1,`.`]}),(0,X.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,X.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-start gap-1.5`,children:[r?(0,X.jsx)(`img`,{src:r,alt:``,className:`mt-0.5 size-3.5 shrink-0 rounded-sm`,"aria-hidden":!0}):null,(0,X.jsx)(`a`,{href:e.url,target:`_blank`,rel:`noopener noreferrer`,className:`min-w-0 flex-1 break-words text-xs font-medium text-accent-fg [overflow-wrap:anywhere] hover:underline`,children:e.title})]}),e.snippet?(0,X.jsx)(`p`,{className:`mt-0.5 line-clamp-4 text-xs break-words text-fg-muted [overflow-wrap:anywhere]`,children:e.snippet}):null]})]},e.url)}function v_(e){return e.type===`tool_use`}function y_(e){return e.language}var b_=(0,Z.createContext)(!1);function x_(e){let t=(0,Y.c)(54),{entries:n,language:r,renderEntry:i}=e,[a,o]=(0,Z.useState)(!1),s=(0,Z.useRef)(null),l=(0,Z.useRef)(null),u=(0,Z.useRef)(0),d=(0,Z.useRef)(!1),f=c(),p;t[0]===f.search?p=t[1]:(p=new URLSearchParams(f.search).has(Xe),t[0]=f.search,t[1]=p);let m=p,h,g,_;t[2]!==n.length||t[3]!==r?(h=y(r).chat.productDelivery,_=h.relatedTaskCount.replace(`{{count}}`,String(n.length)),g=h.viewAllTasks.replace(`{{count}}`,String(n.length)),t[2]=n.length,t[3]=r,t[4]=h,t[5]=g,t[6]=_):(h=t[4],g=t[5],_=t[6]);let v=g,O;t[7]===_?O=t[8]:(O=(0,X.jsx)(`div`,{className:`px-3 pb-1 pt-2.5 text-xs font-medium text-fg-muted`,children:_}),t[7]=_,t[8]=O);let k;if(t[9]!==n||t[10]!==i){let e;t[12]===i?e=t[13]:(e=e=>i(e,!1),t[12]=i,t[13]=e),k=n.slice(0,3).map(e),t[9]=n,t[10]=i,t[11]=k}else k=t[11];let A;t[14]===k?A=t[15]:(A=(0,X.jsx)(`ul`,{className:`m-0 list-none divide-y divide-edge-subtle p-0`,children:k}),t[14]=k,t[15]=A);let j=a&&!m,M;t[16]===Symbol.for(`react.memo_cache_sentinel`)?(M=e=>{d.current=!e,o(e)},t[16]=M):M=t[16];let N;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(N=(0,X.jsx)(U,{className:`size-4 shrink-0`,"aria-hidden":!0}),t[17]=N):N=t[17];let P;t[18]===v?P=t[19]:(P=(0,X.jsx)(x,{asChild:!0,children:(0,X.jsxs)(`button`,{ref:s,type:`button`,className:`flex min-h-11 w-full items-center justify-between gap-3 border-t border-edge-subtle px-3 py-2 text-left text-sm text-accent-fg hover:bg-surface-hover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-accent`,children:[v,N]})}),t[18]=v,t[19]=P);let F;t[20]===Symbol.for(`react.memo_cache_sentinel`)?(F=(0,X.jsx)(b,{className:`fixed inset-0 z-[80] bg-scrim`}),t[20]=F):F=t[20];let I,L;t[21]===Symbol.for(`react.memo_cache_sentinel`)?(I=e=>{e.preventDefault(),l.current?.focus({preventScroll:!0})},L=e=>{e.preventDefault(),d.current&&s.current?.focus({preventScroll:!0})},t[21]=I,t[22]=L):(I=t[21],L=t[22]);let R;t[23]===_?R=t[24]:(R=(0,X.jsx)(E,{ref:l,tabIndex:-1,className:`min-w-0 flex-1 font-medium text-fg focus:outline-none`,children:_}),t[23]=_,t[24]=R);let z;t[25]===Symbol.for(`react.memo_cache_sentinel`)?(z=(0,X.jsx)(Kt,{className:`size-4`,"aria-hidden":!0}),t[25]=z):z=t[25];let B;t[26]===h.closeTaskList?B=t[27]:(B=(0,X.jsx)(C,{"aria-label":h.closeTaskList,className:`flex size-11 shrink-0 items-center justify-center rounded-lg text-fg-muted hover:bg-surface-hover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,children:z}),t[26]=h.closeTaskList,t[27]=B);let ee;t[28]!==R||t[29]!==B?(ee=(0,X.jsxs)(`header`,{className:`flex shrink-0 items-center gap-3 border-b border-edge px-4 py-3`,children:[R,B]}),t[28]=R,t[29]=B,t[30]=ee):ee=t[30];let V;t[31]===h.relatedTasksDescription?V=t[32]:(V=(0,X.jsx)(S,{className:`sr-only`,children:h.relatedTasksDescription}),t[31]=h.relatedTasksDescription,t[32]=V);let H,te;t[33]===Symbol.for(`react.memo_cache_sentinel`)?(H=e=>{e&&(e.scrollTop=u.current)},te=e=>{u.current=e.currentTarget.scrollTop},t[33]=H,t[34]=te):(H=t[33],te=t[34]);let W;if(t[35]!==n||t[36]!==i){let e;t[38]===i?e=t[39]:(e=e=>i(e,!0),t[38]=i,t[39]=e),W=n.map(e),t[35]=n,t[36]=i,t[37]=W}else W=t[37];let ne;t[40]===W?ne=t[41]:(ne=(0,X.jsx)(`div`,{"data-task-delivery-list":!0,className:`min-h-0 flex-1 overflow-y-auto overscroll-contain`,ref:H,onScroll:te,children:(0,X.jsx)(`ul`,{className:`m-0 list-none divide-y divide-edge-subtle p-0`,children:W})}),t[40]=W,t[41]=ne);let re;t[42]!==ee||t[43]!==V||t[44]!==ne?(re=(0,X.jsxs)(w,{children:[F,(0,X.jsxs)(T,{className:`fixed left-1/2 top-1/2 z-[90] flex h-[min(40rem,calc(100dvh-2rem))] w-[min(40rem,calc(100vw-2rem))] -translate-x-1/2 -translate-y-1/2 flex-col overflow-hidden rounded-2xl border border-edge bg-surface-overlay focus:outline-none`,onOpenAutoFocus:I,onCloseAutoFocus:L,children:[ee,V,ne]})]}),t[42]=ee,t[43]=V,t[44]=ne,t[45]=re):re=t[45];let ie;t[46]!==re||t[47]!==j||t[48]!==P?(ie=(0,X.jsxs)(D,{open:j,onOpenChange:M,children:[P,re]}),t[46]=re,t[47]=j,t[48]=P,t[49]=ie):ie=t[49];let ae;return t[50]!==ie||t[51]!==O||t[52]!==A?(ae=(0,X.jsxs)(`li`,{"data-product-task-group":!0,children:[O,A,ie]}),t[50]=ie,t[51]=O,t[52]=A,t[53]=ae):ae=t[53],ae}var S_={task:os,project:Ee,note:rs,automation:V,local_app:k,chat_preview:Zo,file:Te,session:ns,settings:It};function C_(e,t){let n=e?.trim();return n?y(t).chat.productDelivery.statuses[n.toLowerCase()]??n:null}function w_(e,t,n){let r=y(n).chat.productDelivery,i=r.kinds[t.kind],a=r.operations[e.operation],o=C_(t.status,n);return`${i} · ${o&&e.operation===`opened`?o:o&&o.toLowerCase()!==a.toLowerCase()?`${a} · ${o}`:o??a}`}function T_(e,t,n){let r=y(n).chat.productDelivery.taskStates;if(t.phase===`closed`)return t.resolution===`done`?r.completed:r.closed;if(t.attention?.length)return r.blocked;let i={allocating:r.allocating,queued:r.queued,running:r.running,verifying:r.verifying,waiting:r.waiting,blocked:r.blocked,completed:r.completed};return t.operationalState&&i[t.operationalState]||(e.operation===`completed`?r.completed:e.operation===`failed`?r.failed:e.operation===`started`?r.assigned:r.ready)}function E_(e,t){let n=y(t).chat.productDelivery;return n.continuePrompt.replace(/\{\{(kind|title|id)\}\}/g,(r,i)=>({kind:t===`en`?n.kinds[e.kind].toLowerCase():n.kinds[e.kind],title:e.title,id:e.id})[i])}function D_(e){let t=(0,Y.c)(102),{delivery:n,reference:r,language:i,conversationId:a,projectId:o,fullTitle:s,compactTask:l}=e,u=s!==void 0&&s,f=l!==void 0&&l,p=d(),h=c(),g=Oi(k_),_=S_[r.kind],v;t[0]===r?v=t[1]:(v=tn(r),t[0]=r,t[1]=v);let b=v,x;t[2]!==r.capabilities||t[3]!==r.id||t[4]!==r.kind?(x=r.kind===`file`&&r.capabilities.includes(`preview`)?o_(r.id):null,t[2]=r.capabilities,t[3]=r.id,t[4]=r.kind,t[5]=x):x=t[5];let S=x,C;t[6]!==a||t[7]!==S||t[8]!==o?(C=S&&(a?.trim()||o?.trim()),t[6]=a,t[7]=S,t[8]=o,t[9]=C):C=t[9];let w=!!C,T;t[10]!==w||t[11]!==r.capabilities||t[12]!==b?(T=w||!!(b&&r.capabilities.includes(`open`)),t[10]=w,t[11]=r.capabilities,t[12]=b,t[13]=T):T=t[13];let E=T,D;t[14]!==r.capabilities||t[15]!==r.kind?(D=r.kind!==`note`&&r.kind!==`task`&&r.capabilities.includes(`continue_in_chat`),t[14]=r.capabilities,t[15]=r.kind,t[16]=D):D=t[16];let O=D,k=n.operation===`failed`,A=m(O_),j;t[17]!==r.id||t[18]!==r.kind||t[19]!==A?(j=r.kind===`task`?[`task-delivery`,r.id,A]:null,t[17]=r.id,t[18]=r.kind,t[19]=A,t[20]=j):j=t[20];let M;t[21]===r.id?M=t[22]:(M=()=>Kr(r.id),t[21]=r.id,t[22]=M);let N;t[23]===Symbol.for(`react.memo_cache_sentinel`)?(N={revalidateOnFocus:!0},t[23]=N):N=t[23];let P=Lr(j,M,N),F;t[24]!==r.id||t[25]!==r.kind||t[26]!==P?(F=()=>{if(r.kind!==`task`)return;let e=e=>{let t=e.detail?.taskId;(!t||t===r.id)&&P.mutate()};return window.addEventListener(`task-changed-v2`,e),window.addEventListener(`gateway-realtime-connected`,e),()=>{window.removeEventListener(`task-changed-v2`,e),window.removeEventListener(`gateway-realtime-connected`,e)}},t[24]=r.id,t[25]=r.kind,t[26]=P,t[27]=F):F=t[27];let I;t[28]!==r.id||t[29]!==r.kind||t[30]!==P.mutate?(I=[r.kind,r.id,P.mutate],t[28]=r.id,t[29]=r.kind,t[30]=P.mutate,t[31]=I):I=t[31],(0,Z.useEffect)(F,I);let L;t[32]!==n||t[33]!==i||t[34]!==r||t[35]!==P.data?.attention||t[36]!==P.data?.operationalState||t[37]!==P.data?.task?(L=r.kind===`task`?T_(n,{phase:P.data?.task.phase,resolution:P.data?.task.resolution,operationalState:P.data?.operationalState??r.status,attention:P.data?.attention},i):[w_(n,r,i),r.summary?.trim()].filter(Boolean).join(` · `),t[32]=n,t[33]=i,t[34]=r,t[35]=P.data?.attention,t[36]=P.data?.operationalState,t[37]=P.data?.task,t[38]=L):L=t[38];let R=L;if(r.kind===`automation`&&n.operation!==`failed`){let e;return t[39]!==i||t[40]!==r.id||t[41]!==r.runId?(e=(0,X.jsx)(`li`,{className:`min-w-0`,children:(0,X.jsx)(So,{automationId:r.id,runId:r.runId,language:i})}),t[39]=i,t[40]=r.id,t[41]=r.runId,t[42]=e):e=t[42],e}let z;t[43]!==w||t[44]!==a||t[45]!==S||t[46]!==h||t[47]!==p||t[48]!==o||t[49]!==r.id||t[50]!==r.kind||t[51]!==r.projectId||t[52]!==r.revision||t[53]!==b||t[54]!==g?(z=()=>{if(S&&w){g(S,null,o,a);return}if(r.kind===`task`){p(tt(`${h.pathname}${h.search}`,r.id));return}if(r.kind===`note`){p(nt(`${h.pathname}${h.search}`,r.id));return}if(b){let e=new URL(b,`https://xopc.local`);r.projectId&&e.searchParams.set(`projectId`,r.projectId),r.kind===`local_app`&&r.revision&&/^[a-f0-9]{64}$/.test(r.revision)&&e.searchParams.set(`sourceHash`,r.revision),p(Ze($e(`${h.pathname}${h.search}`,`${e.pathname}${e.search}`),`${h.pathname}${h.search}`))}},t[43]=w,t[44]=a,t[45]=S,t[46]=h,t[47]=p,t[48]=o,t[49]=r.id,t[50]=r.kind,t[51]=r.projectId,t[52]=r.revision,t[53]=b,t[54]=g,t[55]=z):z=t[55];let B=z,ee=r.kind,V=E?B:void 0,H=!E,te=f?`min-h-11`:`min-h-14`,W=E&&`cursor-pointer hover:bg-surface-hover/65 active:bg-surface-active/70`,ne=!E&&`cursor-default`,re;t[56]!==te||t[57]!==W||t[58]!==ne?(re=J(`flex min-w-0 flex-1 items-center gap-3 px-3 py-2 text-left`,te,W,ta.transition,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-accent`,ne),t[56]=te,t[57]=W,t[58]=ne,t[59]=re):re=t[59];let ie=f?`size-5`:`size-8`,ae=k?`bg-danger-soft text-danger`:f?`text-fg-muted`:`bg-accent-soft/70 text-accent-fg`,oe;t[60]!==ie||t[61]!==ae?(oe=J(`flex shrink-0 items-center justify-center rounded-lg`,ie,ae),t[60]=ie,t[61]=ae,t[62]=oe):oe=t[62];let se;t[63]===_?se=t[64]:(se=(0,X.jsx)(_,{className:`size-4`,strokeWidth:1.75}),t[63]=_,t[64]=se);let G;t[65]!==oe||t[66]!==se?(G=(0,X.jsx)(`span`,{className:oe,"aria-hidden":!0,children:se}),t[65]=oe,t[66]=se,t[67]=G):G=t[67];let K=f&&`flex flex-wrap items-center gap-x-3 gap-y-0.5 sm:flex-nowrap`,ce;t[68]===K?ce=t[69]:(ce=J(`min-w-0 flex-1`,K),t[68]=K,t[69]=ce);let le=u?`break-words`:f?`line-clamp-2 sm:truncate`:`truncate`,q=f&&`min-w-0 flex-1`,ue;t[70]!==le||t[71]!==q?(ue=J(`block text-sm font-medium text-fg`,le,q),t[70]=le,t[71]=q,t[72]=ue):ue=t[72];let de;t[73]!==r.title||t[74]!==ue?(de=(0,X.jsx)(`span`,{className:ue,title:r.title,children:r.title}),t[73]=r.title,t[74]=ue,t[75]=de):de=t[75];let fe=f?`shrink-0`:`mt-0.5 truncate`,pe;t[76]===fe?pe=t[77]:(pe=J(`block text-xs leading-5 text-fg-muted`,fe),t[76]=fe,t[77]=pe);let me;t[78]!==R||t[79]!==pe?(me=(0,X.jsx)(`span`,{className:pe,title:R,children:R}),t[78]=R,t[79]=pe,t[80]=me):me=t[80];let he;t[81]!==ce||t[82]!==de||t[83]!==me?(he=(0,X.jsxs)(`span`,{className:ce,children:[de,me]}),t[81]=ce,t[82]=de,t[83]=me,t[84]=he):he=t[84];let ge;t[85]===E?ge=t[86]:(ge=E?(0,X.jsx)(U,{className:`size-4 shrink-0 text-fg-subtle`,strokeWidth:1.75,"aria-hidden":!0}):null,t[85]=E,t[86]=ge);let _e;t[87]!==V||t[88]!==H||t[89]!==re||t[90]!==G||t[91]!==he||t[92]!==ge?(_e=(0,X.jsxs)(`button`,{type:`button`,onClick:V,disabled:H,className:re,children:[G,he,ge]}),t[87]=V,t[88]=H,t[89]=re,t[90]=G,t[91]=he,t[92]=ge,t[93]=_e):_e=t[93];let ve;t[94]!==O||t[95]!==i||t[96]!==r?(ve=O?(0,X.jsx)(`button`,{type:`button`,className:J(`m-2 inline-flex min-h-11 shrink-0 cursor-pointer items-center rounded-lg px-2.5 text-xs font-medium text-accent-fg`,`hover:bg-accent-soft active:bg-accent-soft/70`,ta.transition,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-accent`),onClick:()=>yp(E_(r,i)),children:y(i).chat.productDelivery.continue}):null,t[94]=O,t[95]=i,t[96]=r,t[97]=ve):ve=t[97];let ye;return t[98]!==r.kind||t[99]!==_e||t[100]!==ve?(ye=(0,X.jsxs)(`li`,{className:`flex min-w-0 items-stretch`,"data-product-delivery":ee,children:[_e,ve]}),t[98]=r.kind,t[99]=_e,t[100]=ve,t[101]=ye):ye=t[101],ye}function O_(e){return e.conversationId}function k_(e){return e.setPath}function A_(e){let t=(0,Y.c)(24),{entries:n,language:r,conversationId:i,projectId:a}=e,o;t[0]!==n.length||t[1]!==r?(o=y(r).chat.turnOutcome.fileCount.replace(`{{count}}`,String(n.length)),t[0]=n.length,t[1]=r,t[2]=o):o=t[2];let s=o,c;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(c=J(`flex min-h-14 cursor-pointer list-none items-center gap-3 px-3 py-2 text-left`,`hover:bg-surface-hover/65 active:bg-surface-active/70`,ta.transition,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-accent`),t[3]=c):c=t[3];let l;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,X.jsx)(`span`,{className:`flex size-8 shrink-0 items-center justify-center rounded-lg bg-accent-soft/70 text-accent-fg`,"aria-hidden":!0,children:(0,X.jsx)(qo,{className:`size-4`,strokeWidth:1.75})}),t[4]=l):l=t[4];let u;t[5]===s?u=t[6]:(u=(0,X.jsx)(`span`,{className:`min-w-0 flex-1 text-sm font-medium text-fg`,children:s}),t[5]=s,t[6]=u);let d;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,X.jsx)(U,{className:`size-4 shrink-0 text-fg-subtle transition-transform duration-150 ease-out group-open:rotate-90 motion-reduce:transition-none`,strokeWidth:1.75,"aria-hidden":!0}),t[7]=d):d=t[7];let f;t[8]===u?f=t[9]:(f=(0,X.jsxs)(`summary`,{className:c,children:[l,u,d]}),t[8]=u,t[9]=f);let p;if(t[10]!==i||t[11]!==n||t[12]!==r||t[13]!==a){let e;t[15]!==i||t[16]!==r||t[17]!==a?(e=e=>{let{key:t,delivery:n,reference:o}=e;return(0,X.jsx)(D_,{delivery:n,reference:o,language:r,conversationId:i,projectId:a},t)},t[15]=i,t[16]=r,t[17]=a,t[18]=e):e=t[18],p=n.map(e),t[10]=i,t[11]=n,t[12]=r,t[13]=a,t[14]=p}else p=t[14];let m;t[19]===p?m=t[20]:(m=(0,X.jsx)(`ul`,{className:`m-0 list-none divide-y divide-edge-subtle border-t border-edge-subtle p-0`,children:p}),t[19]=p,t[20]=m);let h;return t[21]!==f||t[22]!==m?(h=(0,X.jsx)(`li`,{"data-product-file-group":!0,children:(0,X.jsxs)(`details`,{className:`group`,children:[f,m]})}),t[21]=f,t[22]=m,t[23]=h):h=t[23],h}function j_(e){let t=(0,Y.c)(9),{deliveries:n,language:r,excludedReferenceKeys:i,conversationId:a,projectId:o}=e,s,c;if(t[0]!==a||t[1]!==n||t[2]!==i||t[3]!==r||t[4]!==o){c=Symbol.for(`react.early_return_sentinel`);bb0:{let e=p_(n,i),t=e.filter(F_),l=e.findIndex(P_),u=e.filter(N_),d=e.findIndex(M_);if(e.length===0){c=null;break bb0}s=e.map((e,n)=>{let{key:i,delivery:s,reference:c}=e;return c.kind===`task`&&u.length>3?n===d?(0,X.jsx)(x_,{entries:u,language:r,renderEntry:(e,t)=>(0,X.jsx)(D_,{delivery:e.delivery,reference:e.reference,language:r,conversationId:a,projectId:o,fullTitle:t,compactTask:!0},e.key)},`task-delivery-group`):null:c.kind!==`file`||t.length===1?(0,X.jsx)(D_,{delivery:s,reference:c,language:r,conversationId:a,projectId:o,compactTask:c.kind===`task`&&u.length>1},i):n===l?(0,X.jsx)(A_,{entries:t,language:r,conversationId:a,projectId:o},`file-delivery-group`):null})}t[0]=a,t[1]=n,t[2]=i,t[3]=r,t[4]=o,t[5]=s,t[6]=c}else s=t[5],c=t[6];if(c!==Symbol.for(`react.early_return_sentinel`))return c;let l;return t[7]===s?l=t[8]:(l=(0,X.jsx)(X.Fragment,{children:s}),t[7]=s,t[8]=l),l}function M_(e){let{reference:t}=e;return t.kind===`task`}function N_(e){let{reference:t}=e;return t.kind===`task`}function P_(e){let{reference:t}=e;return t.kind===`file`}function F_(e){let{reference:t}=e;return t.kind===`file`}function I_(e){let t=(0,Y.c)(22),{presentation:n}=e,r=h(L_),i;t[0]===r?i=t[1]:(i=y(r),t[0]=r,t[1]=i);let a=i.chat.productDelivery,o=a.diffPreview,s;t[2]===a.proposedChanges?s=t[3]:(s=(0,X.jsx)(`h3`,{className:`text-sm font-medium text-fg`,children:a.proposedChanges}),t[2]=a.proposedChanges,t[3]=s);let c;t[4]===n.title?c=t[5]:(c=(0,X.jsx)(`p`,{className:`mt-1 whitespace-pre-wrap break-words text-sm text-fg-muted`,children:n.title}),t[4]=n.title,t[5]=c);let l;if(t[6]!==n.edits||t[7]!==a.replaceRange){let e;t[9]===a.replaceRange?e=t[10]:(e=(e,t)=>(0,X.jsxs)(`details`,{className:`rounded border border-edge-subtle p-2`,children:[(0,X.jsxs)(`summary`,{className:`cursor-pointer rounded text-xs text-fg focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,children:[a.replaceRange,` `,e.from,`–`,e.to]}),(0,X.jsx)(`pre`,{className:`mt-2 whitespace-pre-wrap [overflow-wrap:anywhere] font-mono text-xs text-fg`,children:e.text})]},t),t[9]=a.replaceRange,t[10]=e),l=n.edits.map(e),t[6]=n.edits,t[7]=a.replaceRange,t[8]=l}else l=t[8];let u;t[11]===l?u=t[12]:(u=(0,X.jsx)(`div`,{className:`mt-2 max-h-80 space-y-2 overflow-y-auto`,children:l}),t[11]=l,t[12]=u);let d;t[13]!==n.truncated||t[14]!==a.partialDiff?(d=n.truncated?(0,X.jsx)(`p`,{role:`status`,className:`mt-2 text-xs text-fg-muted`,children:a.partialDiff}):null,t[13]=n.truncated,t[14]=a.partialDiff,t[15]=d):d=t[15];let f;return t[16]!==a.diffPreview||t[17]!==s||t[18]!==c||t[19]!==u||t[20]!==d?(f=(0,X.jsxs)(`section`,{className:`mt-2 rounded-lg border border-edge bg-surface-panel p-3`,"aria-label":o,children:[s,c,u,d]}),t[16]=a.diffPreview,t[17]=s,t[18]=c,t[19]=u,t[20]=d,t[21]=f):f=t[21],f}function L_(e){return e.language}function R_({previewId:e,reference:t,sourceHash:n,preferredHeight:r,language:i}){let a=d(),o=c(),s=(0,Z.useRef)(null),[l,u]=(0,Z.useState)(0),[f,m]=(0,Z.useState)(`booting`),[h,g]=(0,Z.useState)(null),[_,v]=(0,Z.useState)([]),[b,x]=(0,Z.useState)(!1),[S,C]=(0,Z.useState)(null),w=Math.min(720,Math.max(240,r)),T=Zi(e),E=Lr(T.active?[`inline-local-app-snapshot`,t.id,n]:null,()=>wo(t.id,n),{revalidateOnFocus:!1,shouldRetryOnError:!1});(0,Z.useEffect)(()=>{let e=s.current;if(!e||!E.data?.previewUrl)return;m(`booting`),g(null),v([]);let t=window.setTimeout(()=>{m(e=>e===`booting`?`timeout`:e)},7e3),n=Eo(e,e=>{let t=sn(e);if(t){if(t.type===`ready`){m(`healthy`);return}if(t.type===`error`){g(t.detail),m(`failed`),v(e=>[...e,{phase:`runtime`,message:Do(t.detail),code:t.detail.kind}].slice(-20));return}if(t.type===`acceptance`&&t.detail.status===`failed`){m(`failed`),v(e=>[...e,...t.detail.checks.filter(e=>e.status===`failed`).map(e=>({phase:`acceptance`,code:e.id,message:e.message}))].slice(-20));return}t.type===`criteria`&&t.detail.status===`failed`&&(m(`failed`),v(e=>[...e,...t.detail.scenarios.filter(e=>e.status===`failed`).map(e=>({phase:e.failureKind===`runner`?`runner`:`acceptance`,code:e.id,message:`${e.name}: ${e.message}`}))].slice(-20)))}});return()=>{window.clearTimeout(t),n()}},[l,E.data?.previewUrl]);let D=()=>{let e=tn(t);e&&a($e(`${o.pathname}${o.search}`,`${e}&sourceHash=${encodeURIComponent(n)}`))};if(!T.active)return(0,X.jsxs)(`section`,{ref:T.containerRef,className:`content-block-action-scope mt-3 overflow-hidden rounded-2xl border border-edge bg-surface-panel`,"data-inline-local-app":t.id,children:[(0,X.jsxs)(`header`,{className:`flex min-w-0 flex-wrap items-center gap-3 border-b border-edge-subtle px-4 py-3`,children:[(0,X.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,X.jsx)(`h3`,{className:`truncate text-sm font-semibold text-fg`,title:t.title,children:t.title}),(0,X.jsx)(`p`,{className:`mt-0.5 text-xs text-fg-muted`,children:T.state===`queued`?i===`zh`?`正在等待预览资源`:`Waiting for a preview slot`:i===`zh`?`预览尚未加载`:`Preview not loaded`})]}),(0,X.jsx)(ai,{variant:`ghost`,className:`content-block-action`,onClick:D,title:i===`zh`?`查看预览`:`Preview`,"aria-label":i===`zh`?`查看预览`:`Preview`,children:(0,X.jsx)(xe,{className:`size-4`,"aria-hidden":!0})})]}),(0,X.jsx)(`div`,{className:`grid place-items-center bg-surface-base`,style:{height:w},children:(0,X.jsx)(ai,{variant:`secondary`,onClick:T.activate,children:i===`zh`?`加载交互预览`:`Load interactive preview`})})]});if(E.isLoading)return(0,X.jsxs)(`section`,{ref:T.containerRef,className:`mt-3 overflow-hidden rounded-2xl border border-edge bg-surface-panel`,"aria-label":y(i).chat.productDelivery.loadingAppPreview,children:[(0,X.jsxs)(`div`,{className:`flex items-center justify-between gap-3 border-b border-edge-subtle px-4 py-3`,children:[(0,X.jsx)(Jt,{className:`h-5 w-40`}),(0,X.jsx)(Jt,{className:`h-9 w-24`})]}),(0,X.jsx)(Jt,{className:`m-3 w-[calc(100%-1.5rem)]`,style:{height:w}})]});let O=E.data;if(!O){let e=E.error,t=e instanceof Error?e.message:i===`zh`?`无法加载应用预览`:`Unable to load app preview`;return(0,X.jsx)(`section`,{ref:T.containerRef,className:`mt-3 rounded-2xl border border-danger/30 bg-danger-soft p-4 text-sm text-danger`,role:`alert`,children:(0,X.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,X.jsx)(Ht,{className:`size-4`}),t]})})}let k=O.validation.issues.map(e=>({phase:`build`,code:e.code,message:e.message}))??[],A=f===`timeout`?[{phase:`boot`,code:`boot_timeout`,message:y(i).chat.productDelivery.previewTimeout}]:[],j=[...k,..._,...A],M=O.status===`invalid`||O.validation.status===`failed`,N=M||f===`failed`||f===`timeout`,P=M?i===`zh`?`校验失败`:`Validation failed`:f===`healthy`?i===`zh`?`运行正常`:`Running`:f===`booting`?i===`zh`?`正在启动`:`Starting`:f===`timeout`?i===`zh`?`启动超时`:`Start timed out`:i===`zh`?`运行错误`:`Runtime error`,F=()=>{C(null),u(e=>e+1)},I=async()=>{if(j.length){x(!0),C(null);try{yp((await To(t.id,{sourceHash:O.sourceHash,locale:i,diagnostics:j})).prompt)}catch(e){C(e instanceof Error?e.message:String(e))}finally{x(!1)}}};return(0,X.jsxs)(`section`,{ref:T.containerRef,className:`content-block-action-scope mt-3 overflow-hidden rounded-2xl border border-edge bg-surface-panel`,"data-inline-local-app":t.id,children:[(0,X.jsxs)(`header`,{className:`flex min-w-0 flex-wrap items-center gap-3 border-b border-edge-subtle px-4 py-3`,children:[(0,X.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,X.jsx)(`h3`,{className:`truncate text-sm font-semibold text-fg`,title:t.title,children:t.title}),(0,X.jsx)(`p`,{className:J(`mt-0.5 text-xs`,N?`text-danger`:`text-fg-muted`),"aria-live":`polite`,children:P})]}),(0,X.jsx)(ai,{variant:`ghost`,className:`content-block-action`,onClick:F,"data-action-visible":N,title:i===`zh`?`重新加载预览`:`Reload preview`,"aria-label":i===`zh`?`重新加载预览`:`Reload preview`,children:(0,X.jsx)(jt,{className:`size-4`,"aria-hidden":!0})}),(0,X.jsx)(ai,{variant:`ghost`,className:`content-block-action`,onClick:D,title:i===`zh`?`查看预览`:`Preview`,"aria-label":i===`zh`?`查看预览`:`Preview`,children:(0,X.jsx)(xe,{className:`size-4`,"aria-hidden":!0})})]}),(0,X.jsxs)(`div`,{className:`relative bg-surface-base`,style:{height:w},children:[O.previewUrl?(0,X.jsx)(`iframe`,{ref:s,title:i===`zh`?`${t.title} 交互预览`:`${t.title} interactive preview`,src:p(O.previewUrl),sandbox:`allow-scripts allow-forms`,className:`h-full w-full border-0 bg-white`},l):null,O.previewUrl&&f===`booting`?(0,X.jsx)(`div`,{className:`pointer-events-none absolute inset-0 grid place-items-center bg-surface-base/75`,children:(0,X.jsx)(Jt,{className:`h-10 w-40`})}):null]}),N?(0,X.jsxs)(`footer`,{className:`border-t border-danger/20 bg-danger-soft/60 px-4 py-3`,children:[(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-3`,children:[(0,X.jsx)(`p`,{className:`min-w-0 flex-1 text-xs text-danger`,children:h?.message??j[0]?.message??(i===`zh`?`预览校验失败`:`Preview validation failed`)}),(0,X.jsxs)(ai,{variant:`secondary`,className:`min-h-9 px-3 text-xs`,disabled:b||j.length===0,onClick:()=>void I(),children:[(0,X.jsx)(Gt,{className:`size-4`}),b?i===`zh`?`生成修复建议…`:`Preparing fix…`:i===`zh`?`让 Coder 修复`:`Ask Coder to fix`]})]}),S?(0,X.jsx)(`p`,{className:`mt-2 text-xs text-danger`,role:`alert`,children:S}):null]}):null]})}async function z_(e,t){return(await g(p(`/api/chat-previews/${encodeURIComponent(e)}/revisions/${encodeURIComponent(t)}`))).revision}async function B_(e,t){return(await g(p(`/api/chat-previews/${encodeURIComponent(e)}/fix-guidance`),{method:`POST`,body:JSON.stringify(t)})).guidance}async function V_(e,t){return(await g(p(`/api/chat-previews/${encodeURIComponent(e)}/promote`),{method:`POST`,body:JSON.stringify({sourceHash:t})})).app}function H_(e,t){return e.replace(RegExp(`</${t}`,`gi`),`<\\/${t}`)}function U_(e){let t=an.safeParse(e);return t.success?t.data:null}function W_(e,t){let n=`(() => {
|
|
28
28
|
const channel = ${JSON.stringify(t)};
|
|
@@ -56,17 +56,17 @@ Open in xopc:`)[0]))}catch{return i}if(typeof e.result==`string`)try{return r_(J
|
|
|
56
56
|
</head><body>${e.markup}
|
|
57
57
|
<script>${H_(n,`script`)}<\/script>
|
|
58
58
|
<script>${H_(e.script,`script`)}<\/script>
|
|
59
|
-
</body></html>`}function G_(e,t,n){let r=r=>{if(r.source!==e.contentWindow)return;let i=U_(r.data);!i||i.channel!==t||n(i)};return window.addEventListener(`message`,r),()=>window.removeEventListener(`message`,r)}function K_({leaseId:e,reference:t,sourceHash:n,preferredHeight:r,language:i}){let a=d(),o=c(),s=(0,Z.useRef)(null),[l,u]=(0,Z.useState)(0),[f,p]=(0,Z.useState)(`booting`),[m,h]=(0,Z.useState)([]),[g,_]=(0,Z.useState)(null),[v,y]=(0,Z.useState)(null),b=Zi(e),x=Math.min(720,Math.max(240,r)),S=(0,Z.useMemo)(()=>crypto.randomUUID(),[l,n]),C=Lr(b.active?[`chat-preview-revision`,t.id,n]:null,()=>z_(t.id,n),{revalidateOnFocus:!1,shouldRetryOnError:!1}),w=C.data?W_(C.data,S):void 0;(0,Z.useEffect)(()=>{let e=s.current;if(!e||!w)return;p(`booting`),h([]);let t=window.setTimeout(()=>{p(e=>e===`booting`?`timeout`:e)},7e3),n=G_(e,S,t=>{t.type===`ready`&&p(`healthy`),t.type===`resize`&&(e.style.height=`${Math.min(720,Math.max(240,t.height))}px`),t.type===`error`&&(p(`failed`),h(e=>[...e,t.diagnostic].slice(-20)))});return()=>{window.clearTimeout(t),n()}},[S,w]);let T=()=>{y(null),u(e=>e+1)},E=async()=>{if(m.length){_(`fix`),y(null);try{yp((await B_(t.id,{sourceHash:n,diagnostics:m,locale:i})).prompt)}catch(e){y(e instanceof Error?e.message:String(e))}finally{_(null)}}},D=async()=>{_(`promote`),y(null);try{let e=await V_(t.id,n);a($e(`${o.pathname}${o.search}`,`/local-apps/${encodeURIComponent(e.id)}`))}catch(e){y(e instanceof Error?e.message:String(e))}finally{_(null)}},O=`content-block-action-scope mt-3 overflow-hidden rounded-2xl border border-edge bg-surface-panel`;if(!b.active)return(0,X.jsxs)(`section`,{ref:b.containerRef,className:O,"data-inline-chat-preview":t.id,children:[(0,X.jsxs)(`header`,{className:`border-b border-edge-subtle px-4 py-3`,children:[(0,X.jsx)(`h3`,{className:`truncate text-sm font-semibold text-fg`,children:t.title}),(0,X.jsx)(`p`,{className:`mt-0.5 text-xs text-fg-muted`,children:b.state===`queued`?i===`zh`?`正在等待预览资源`:`Waiting for a preview slot`:i===`zh`?`预览尚未加载`:`Preview not loaded`})]}),(0,X.jsx)(`div`,{className:`grid place-items-center bg-surface-base`,style:{height:x},children:(0,X.jsx)(ai,{variant:`secondary`,className:`min-h-11`,onClick:b.activate,children:i===`zh`?`加载交互预览`:`Load interactive preview`})})]});if(C.isLoading)return(0,X.jsxs)(`section`,{ref:b.containerRef,className:O,"aria-busy":`true`,"aria-label":i===`zh`?`正在加载预览`:`Loading preview`,children:[(0,X.jsx)(`div`,{className:`border-b border-edge-subtle px-4 py-3`,children:(0,X.jsx)(Jt,{className:`h-5 w-40`})}),(0,X.jsx)(Jt,{className:`m-3 w-[calc(100%-1.5rem)]`,style:{height:x}})]});if(!C.data||!w){let e=C.error instanceof Error?C.error.message:i===`zh`?`无法加载预览`:`Unable to load preview`;return(0,X.jsx)(`section`,{ref:b.containerRef,className:`mt-3 rounded-2xl border border-danger/30 bg-danger-soft p-4 text-sm text-danger`,role:`alert`,children:(0,X.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,X.jsx)(Ht,{className:`size-4`}),e]})})}let k=f===`failed`||f===`timeout`,A=f===`healthy`?i===`zh`?`运行正常`:`Running`:f===`booting`?i===`zh`?`正在启动`:`Starting`:f===`timeout`?i===`zh`?`启动超时`:`Start timed out`:i===`zh`?`运行错误`:`Runtime error`;return(0,X.jsxs)(`section`,{ref:b.containerRef,className:O,"data-inline-chat-preview":t.id,children:[(0,X.jsxs)(`header`,{className:`flex min-w-0 flex-wrap items-center gap-2 border-b border-edge-subtle px-4 py-3`,children:[(0,X.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,X.jsx)(`h3`,{className:`truncate text-sm font-semibold text-fg`,children:t.title}),(0,X.jsx)(`p`,{className:J(`mt-0.5 text-xs`,k?`text-danger`:`text-fg-muted`),"aria-live":`polite`,children:A})]}),(0,X.jsx)(ai,{variant:`ghost`,className:`content-block-action`,onClick:T,"data-action-visible":k,title:i===`zh`?`重新加载预览`:`Reload preview`,"aria-label":i===`zh`?`重新加载预览`:`Reload preview`,children:(0,X.jsx)(jt,{className:`size-4`,"aria-hidden":!0})}),(0,X.jsx)(ai,{variant:`ghost`,className:`content-block-action`,disabled:g!==null,onClick:()=>void D(),"aria-busy":g===`promote`,title:g===`promote`?i===`zh`?`保存中…`:`Saving…`:i===`zh`?`保存为应用`:`Save as app`,"aria-label":g===`promote`?i===`zh`?`保存中…`:`Saving…`:i===`zh`?`保存为应用`:`Save as app`,children:(0,X.jsx)(Nt,{className:J(`size-4`,g===`promote`&&`motion-safe:animate-pulse`),"aria-hidden":!0})})]}),(0,X.jsxs)(`div`,{className:`relative bg-surface-base`,style:{minHeight:x},children:[(0,X.jsx)(`iframe`,{ref:s,title:i===`zh`?`${t.title} 交互预览`:`${t.title} interactive preview`,srcDoc:w,sandbox:`allow-scripts allow-forms`,className:`block w-full border-0 bg-white`,style:{height:x}},l),f===`booting`?(0,X.jsx)(`div`,{className:`pointer-events-none absolute inset-0 grid place-items-center bg-surface-base/75`,children:(0,X.jsx)(Jt,{className:`h-10 w-40`})}):null]}),k?(0,X.jsx)(`footer`,{className:`border-t border-danger/20 bg-danger-soft/60 px-4 py-3`,children:(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-3`,children:[(0,X.jsx)(`p`,{className:`min-w-0 flex-1 text-xs text-danger`,role:`alert`,children:m.at(-1)?.message??(i===`zh`?`预览未能正常启动`:`The preview did not start correctly`)}),(0,X.jsxs)(ai,{variant:`secondary`,className:`min-h-11 px-3 text-xs`,disabled:!m.length||g!==null,onClick:()=>void E(),children:[(0,X.jsx)(Gt,{className:`size-4`}),g===`fix`?i===`zh`?`生成中…`:`Preparing…`:i===`zh`?`让 AI 修复`:`Ask AI to fix`]})]})}):null,v?(0,X.jsx)(`p`,{className:`border-t border-danger/20 px-4 py-2 text-xs text-danger`,role:`alert`,children:v}):null]})}function q_(e){let t=(0,Y.c)(8),{children:n,label:r,className:i}=e,a;t[0]===i?a=t[1]:(a=J(`mt-2 w-full max-w-[28rem] self-start`,i),t[0]=i,t[1]=a);let o;t[2]===n?o=t[3]:(o=(0,X.jsx)(`div`,{className:`overflow-hidden rounded-xl border border-edge bg-surface-inset shadow-surface`,children:n}),t[2]=n,t[3]=o);let s;return t[4]!==r||t[5]!==a||t[6]!==o?(s=(0,X.jsx)(`section`,{className:a,"aria-label":r,"data-turn-tail":!0,children:o}),t[4]=r,t[5]=a,t[6]=o,t[7]=s):s=t[7],s}function J_(e){return{id:e.artifactId,name:e.title,type:e.kind,mimeType:e.mimeType,size:e.sizeBytes,uri:e.uri,workspaceRelativePath:e.workspaceRelativePath}}function Y_(e){let t=e.mimeType?.toLowerCase()??``,n=e.type?.toLowerCase()??``;return t.startsWith(`image/`)||n===`image`?we:t.startsWith(`audio/`)||n===`audio`||n===`voice`?Wo:t.startsWith(`video/`)||n===`video`?he:t.includes(`spreadsheet`)||[`spreadsheet`,`csv`,`xlsx`,`xls`].includes(n)?me:t.includes(`zip`)||[`archive`,`zip`].includes(n)?A:n===`site`?ye:Te}function X_(e,t,n){return!!(e.uri||Zr(e)||e.workspaceRelativePath?.trim()&&(t?.trim()||n?.trim()))}function Z_(e){let t=(0,Y.c)(49),{item:n,authToken:r,conversationId:i,projectId:a,onOpen:o}=e,s=h(Q_),c;t[0]===s?c=t[1]:(c=y(s),t[0]=s,t[1]=c);let l=c.chat.productDelivery.kinds.file,u;t[2]!==r||t[3]!==i?(u={authToken:r,conversationId:i},t[2]=r,t[3]=i,t[4]=u):u=t[4];let d=Bp(n.attachment,u),f;t[5]===n.attachment?f=t[6]:(f=Y_(n.attachment),t[5]=n.attachment,t[6]=f);let p=f,m,g,_;if(t[7]!==p||t[8]!==i||t[9]!==l||t[10]!==d.src||t[11]!==n.attachment||t[12]!==n.failed||t[13]!==n.href||t[14]!==n.meta||t[15]!==a){m=X_(n.attachment,i,a);let e=m||!!n.href,r;t[19]!==p||t[20]!==d.src||t[21]!==n.failed?(r=d.src?(0,X.jsx)(`img`,{src:d.src,alt:``,className:`size-8 shrink-0 rounded-lg object-cover`,decoding:`async`,loading:`lazy`}):(0,X.jsx)(`span`,{className:J(`flex size-8 shrink-0 items-center justify-center rounded-lg`,n.failed?`bg-danger-soft text-danger`:`bg-accent-soft/70 text-accent-fg`),"aria-hidden":!0,children:(0,X.jsx)(p,{className:`size-4`,strokeWidth:1.75})}),t[19]=p,t[20]=d.src,t[21]=n.failed,t[22]=r):r=t[22];let o=n.attachment.name??l,s=n.attachment.name??l,c;t[23]!==o||t[24]!==s?(c=(0,X.jsx)(`span`,{className:`block truncate text-sm font-medium text-fg`,title:o,children:s}),t[23]=o,t[24]=s,t[25]=c):c=t[25];let u;t[26]===n.meta?u=t[27]:(u=(0,X.jsx)(`span`,{className:`mt-0.5 block truncate text-xs leading-5 text-fg-muted`,title:n.meta,children:n.meta}),t[26]=n.meta,t[27]=u);let f;t[28]!==c||t[29]!==u?(f=(0,X.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[c,u]}),t[28]=c,t[29]=u,t[30]=f):f=t[30];let h=e?(0,X.jsx)(U,{className:`size-4 shrink-0 text-fg-subtle`,strokeWidth:1.75,"aria-hidden":!0}):null,v;t[31]!==f||t[32]!==h||t[33]!==r?(v=(0,X.jsxs)(X.Fragment,{children:[r,f,h]}),t[31]=f,t[32]=h,t[33]=r,t[34]=v):v=t[34],g=v,_=J(`flex min-h-14 w-full min-w-0 items-center gap-3 px-3 py-2 text-left`,e&&`cursor-pointer hover:bg-surface-hover/65 active:bg-surface-active/70`,ta.transition,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-accent`,!e&&`cursor-default`),t[7]=p,t[8]=i,t[9]=l,t[10]=d.src,t[11]=n.attachment,t[12]=n.failed,t[13]=n.href,t[14]=n.meta,t[15]=a,t[16]=m,t[17]=g,t[18]=_}else m=t[16],g=t[17],_=t[18];let v=_;if(!m&&n.href){let e;return t[35]!==v||t[36]!==g||t[37]!==n.href?(e=(0,X.jsx)(`li`,{"data-result-attachment":!0,children:(0,X.jsx)(`a`,{href:n.href,target:`_blank`,rel:`noreferrer`,className:v,children:g})}),t[35]=v,t[36]=g,t[37]=n.href,t[38]=e):e=t[38],e}if(!m){let e;return t[39]!==v||t[40]!==g?(e=(0,X.jsx)(`li`,{className:v,"data-result-attachment":!0,children:g}),t[39]=v,t[40]=g,t[41]=e):e=t[41],e}let b;t[42]!==n.attachment||t[43]!==o?(b=()=>o(n.attachment),t[42]=n.attachment,t[43]=o,t[44]=b):b=t[44];let x;return t[45]!==v||t[46]!==g||t[47]!==b?(x=(0,X.jsx)(`li`,{"data-result-attachment":!0,children:(0,X.jsx)(`button`,{type:`button`,className:v,onClick:b,children:g})}),t[45]=v,t[46]=g,t[47]=b,t[48]=x):x=t[48],x}function Q_(e){return e.language}function $_(e){let t=(0,Y.c)(26),{attachments:n,authToken:r,conversationId:i,projectId:a,onOpen:o,language:s}=e,c;t[0]!==n.length||t[1]!==s?(c=y(s).chat.turnOutcome.fileCount.replace(`{{count}}`,String(n.length)),t[0]=n.length,t[1]=s,t[2]=c):c=t[2];let l=c,u;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(u=J(`flex min-h-14 cursor-pointer list-none items-center gap-3 px-3 py-2 text-left`,`hover:bg-surface-hover/65 active:bg-surface-active/70`,ta.transition,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-accent`),t[3]=u):u=t[3];let d;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,X.jsx)(`span`,{className:`flex size-8 shrink-0 items-center justify-center rounded-lg bg-accent-soft/70 text-accent-fg`,"aria-hidden":!0,children:(0,X.jsx)(qo,{className:`size-4`,strokeWidth:1.75})}),t[4]=d):d=t[4];let f;t[5]===l?f=t[6]:(f=(0,X.jsx)(`span`,{className:`min-w-0 flex-1 text-sm font-medium text-fg`,children:l}),t[5]=l,t[6]=f);let p;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(p=(0,X.jsx)(U,{className:`size-4 shrink-0 text-fg-subtle transition-transform duration-150 ease-out group-open:rotate-90 motion-reduce:transition-none`,strokeWidth:1.75,"aria-hidden":!0}),t[7]=p):p=t[7];let m;t[8]===f?m=t[9]:(m=(0,X.jsxs)(`summary`,{className:u,children:[d,f,p]}),t[8]=f,t[9]=m);let h;if(t[10]!==n||t[11]!==r||t[12]!==i||t[13]!==o||t[14]!==a){let e;t[16]!==r||t[17]!==i||t[18]!==o||t[19]!==a?(e=e=>(0,X.jsx)(Z_,{item:e,authToken:r,conversationId:i,projectId:a,onOpen:o},e.key),t[16]=r,t[17]=i,t[18]=o,t[19]=a,t[20]=e):e=t[20],h=n.map(e),t[10]=n,t[11]=r,t[12]=i,t[13]=o,t[14]=a,t[15]=h}else h=t[15];let g;t[21]===h?g=t[22]:(g=(0,X.jsx)(`ul`,{className:`m-0 list-none divide-y divide-edge-subtle border-t border-edge-subtle p-0`,children:h}),t[21]=h,t[22]=g);let _;return t[23]!==m||t[24]!==g?(_=(0,X.jsx)(`li`,{"data-result-attachment-group":!0,children:(0,X.jsxs)(`details`,{className:`group`,children:[m,g]})}),t[23]=m,t[24]=g,t[25]=_):_=t[25],_}function ev(e,t){if(!e)return[];let n=y(t).chat.turnOutcome;return e.deliverables.map(e=>{let t=J_(e);return{key:`outcome:${e.artifactId}`,attachment:t,href:e.shareUrl,failed:e.availability===`failed`||e.availability===`missing`,meta:[n.availability[e.availability],e.sizeBytes===void 0?null:Qr(e.sizeBytes)].filter(Boolean).join(` · `)}})}function tv(e,t){let n=y(t).chat.turnOutcome;return(e??[]).map((e,t)=>({key:`attachment:${e.id??e.uri??e.name??t}`,attachment:e,meta:[n.generatedFile,e.mimeType,typeof e.size==`number`?Qr(e.size):null].filter(Boolean).join(` · `)}))}function nv(e){let t=new Set;for(let n of e?.deliverables??[])for(let e of[n.artifactId,n.sourceFileId,n.workspaceRelativePath]){let n=e?.trim();n&&t.add(`file:${n}`)}return t}function rv(e){let t=(0,Y.c)(46),{view:n,authToken:r,conversationId:i,projectId:a}=e,o=h(cv)===`zh`?`zh`:`en`,s;t[0]!==i||t[1]!==a?(s={layout:`assistant`,conversationId:i,projectId:a},t[0]=i,t[1]=a,t[2]=s):s=t[2];let c=Up(s),l=n.deliveries.filter(sv),u=l_(l),d=d_(l),f=f_(l),p=u_(l),m=(0,Z.useContext)(b_),g=new Set(nv(n.outcome));if(m)for(let{delivery:e,reference:t}of p_(l))t.kind===`automation`&&!t.runId&&e.operation!==`failed`&&g.add(`automation:${t.id}`);let _=p_(l,g).length,v,b,x,S;if(t[3]!==o||t[4]!==c||t[5]!==n.attachments||t[6]!==n.outcome||t[7]!==n.resultRevision){v=[...ev(n.outcome,o),...tv(n.attachments,o)];let e;t[12]!==n.outcome?.deliverables||t[13]!==n.resultRevision?(e=e=>!!(n.resultRevision&&n.outcome?.deliverables.some(t=>t.artifactId===e.id)),t[12]=n.outcome?.deliverables,t[13]=n.resultRevision,t[14]=e):e=t[14],b=e;let r;t[15]!==b||t[16]!==c||t[17]!==n.resultRevision?(r=e=>{c.openAttachment(e,b(e)?n.resultRevision:void 0)},t[15]=b,t[16]=c,t[17]=n.resultRevision,t[18]=r):r=t[18],x=r,S=v.filter(ov),t[3]=o,t[4]=c,t[5]=n.attachments,t[6]=n.outcome,t[7]=n.resultRevision,t[8]=v,t[9]=b,t[10]=x,t[11]=S}else v=t[8],b=t[9],x=t[10],S=t[11];let C=S,w;t[19]!==v||t[20]!==C?(w=v.filter(e=>!C.includes(e)),t[19]=v,t[20]=C,t[21]=w):w=t[21];let T=w,E=_>0||T.length>0;if(u.length===0&&d.length===0&&f.length===0&&!E&&!C.length)return null;let D;t[22]!==r||t[23]!==i||t[24]!==C?(D=C.length>0?(0,X.jsx)(Qp,{attachments:C.map(av),authToken:r,conversationId:i,workspaceConversationId:i,layout:`assistant`}):null,t[22]=r,t[23]=i,t[24]=C,t[25]=D):D=t[25];let O=u.map(iv),k;t[26]===o?k=t[27]:(k=e=>{let{key:t,presentation:n}=e;return(0,X.jsx)(R_,{previewId:`${t}:${n.reference.id}:${n.snapshot.sourceHash}`,reference:n.reference,sourceHash:n.snapshot.sourceHash,preferredHeight:n.preferredHeight,language:o},t)},t[26]=o,t[27]=k);let A=d.map(k),j;t[28]===o?j=t[29]:(j=e=>{let{key:t,presentation:n}=e;return(0,X.jsx)(K_,{leaseId:`${t}:${n.reference.id}:${n.sourceHash}`,reference:n.reference,sourceHash:n.sourceHash,preferredHeight:n.preferredHeight,language:o},t)},t[28]=o,t[29]=j);let M=f.map(j),N=E?(0,X.jsxs)(q_,{label:y(o).chat.productDelivery.heading,children:[(0,X.jsxs)(`ul`,{className:`m-0 list-none divide-y divide-edge-subtle p-0`,children:[(0,X.jsx)(j_,{deliveries:l,language:o,excludedReferenceKeys:g,conversationId:i,projectId:a}),T.length>1?(0,X.jsx)($_,{attachments:T,authToken:r,conversationId:i,projectId:a,onOpen:x,language:o}):T.map(e=>(0,X.jsx)(Z_,{item:e,authToken:r,conversationId:i,projectId:a,onOpen:x},e.key))]}),p.truncated?(0,X.jsx)(`p`,{role:`status`,className:`border-t border-edge-subtle px-3 py-2 text-xs text-fg-muted`,children:y(o).chat.productDelivery.partialResults}):null]}):null,P;t[30]!==T.length||t[31]!==r||t[32]!==i||t[33]!==b||t[34]!==c.active||t[35]!==c.closePreview||t[36]!==c.open||t[37]!==n.resultRevision?(P=T.length>0?(0,X.jsx)(Ur,{open:c.open,attachment:c.active,resultRevision:c.active&&b(c.active)?n.resultRevision:void 0,authToken:r,conversationId:i,onClose:c.closePreview}):null,t[30]=T.length,t[31]=r,t[32]=i,t[33]=b,t[34]=c.active,t[35]=c.closePreview,t[36]=c.open,t[37]=n.resultRevision,t[38]=P):P=t[38];let F;return t[39]!==N||t[40]!==P||t[41]!==D||t[42]!==O||t[43]!==A||t[44]!==M?(F=(0,X.jsxs)(X.Fragment,{children:[D,O,A,M,N,P]}),t[39]=N,t[40]=P,t[41]=D,t[42]=O,t[43]=A,t[44]=M,t[45]=F):F=t[45],F}function iv(e){let{key:t,presentation:n}=e;return(0,X.jsx)(I_,{presentation:n},t)}function av(e){return e.attachment}function ov(e){return!e.failed&&e.attachment.mimeType?.startsWith(`image/`)}function sv(e){let{delivery:t}=e;return c_(t)}function cv(e){return e.language}function lv(e){let t=(0,Y.c)(40),{outcome:n}=e,r=h(fv),i,a,o,s,c,l,u,d;if(t[0]!==r||t[1]!==n.changeSet||t[2]!==n.evidence||t[3]!==n.status||t[4]!==n.summary){d=Symbol.for(`react.early_return_sentinel`);bb0:{if(o=y(r).chat.turnOutcome,i=!!n.changeSet,a=n.evidence.length>0,!i&&!a){d=n.status===`failed`?(0,X.jsx)(`p`,{role:`alert`,className:`text-sm text-danger`,children:n.summary||o.statusFailed}):null;break bb0}let e=n.evidence.filter(dv).length,f=n.evidence.filter(uv).length,p=n.status===`succeeded`?o.statusSucceeded:n.status===`failed`?o.statusFailed:o.statusPartial,m=n.status===`succeeded`?H:n.status===`failed`?de:ce,h=[n.changeSet?o.changedFileCount.replace(`{{count}}`,String(n.changeSet.files.length)):null,e>0?o.passedCount.replace(`{{count}}`,String(e)):null,f>0?o.failedCount.replace(`{{count}}`,String(f)):null,a&&e===0&&f===0?o.evidenceCount.replace(`{{count}}`,String(n.evidence.length)):null].filter(Boolean).join(` · `);l=`group mt-2 max-w-[36rem] rounded-lg bg-surface-panel/15 text-sm`;let g=n.status===`succeeded`?`grid size-5 shrink-0 place-items-center rounded-full bg-success/10 text-success`:n.status===`failed`?`grid size-5 shrink-0 place-items-center rounded-full bg-danger/10 text-danger`:`grid size-5 shrink-0 place-items-center rounded-full bg-warning/10 text-warning`,_;t[13]===m?_=t[14]:(_=(0,X.jsx)(m,{className:`size-3.5`,strokeWidth:2,"aria-hidden":!0}),t[13]=m,t[14]=_);let v;t[15]!==g||t[16]!==_?(v=(0,X.jsx)(`span`,{className:g,children:_}),t[15]=g,t[16]=_,t[17]=v):v=t[17];let b;t[18]===h?b=t[19]:(b=(0,X.jsx)(`span`,{className:`block truncate text-xs text-fg-subtle`,children:h}),t[18]=h,t[19]=b);let x=(0,X.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[(0,X.jsx)(`span`,{className:`block text-xs font-medium text-fg`,children:p}),b]}),S;t[20]===Symbol.for(`react.memo_cache_sentinel`)?(S=(0,X.jsx)(U,{className:`size-4 shrink-0 transition-transform group-open:rotate-90 motion-reduce:transition-none`,strokeWidth:1.75,"aria-hidden":!0}),t[20]=S):S=t[20],t[21]!==x||t[22]!==v?(u=(0,X.jsxs)(`summary`,{className:`flex min-h-11 cursor-pointer list-none items-center gap-2 rounded-lg px-3 py-2 text-fg-muted transition-colors hover:bg-surface-hover/45 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-accent`,children:[v,x,S]}),t[21]=x,t[22]=v,t[23]=u):u=t[23],s=`border-t border-edge-subtle px-3 py-2.5`,c=n.changeSet?(0,X.jsxs)(`section`,{"aria-label":o.changes,children:[(0,X.jsxs)(`div`,{className:`flex items-baseline justify-between gap-3 text-xs`,children:[(0,X.jsx)(`span`,{className:`font-medium text-fg`,children:o.changeSetTitle}),(0,X.jsx)(`span`,{className:`shrink-0 text-fg-subtle`,children:o.changeStats.replace(`{{files}}`,String(n.changeSet.files.length)).replace(`{{added}}`,String(n.changeSet.added)).replace(`{{removed}}`,String(n.changeSet.removed))})]}),(0,X.jsxs)(`div`,{className:`mt-2 border-t border-edge-subtle/70 pt-2`,children:[n.changeSet.files.slice(0,8).map(e=>(0,X.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2 py-1 text-xs`,children:[(0,X.jsx)(`span`,{className:`w-14 shrink-0 text-fg-subtle`,children:o.fileStatus[e.status??`modified`]}),(0,X.jsx)(`code`,{className:`min-w-0 truncate text-fg-muted`,children:e.path})]},e.path)),n.changeSet.files.length>8?(0,X.jsx)(`div`,{className:`pt-1 text-xs text-fg-subtle`,children:o.moreFiles.replace(`{{count}}`,String(n.changeSet.files.length-8))}):null]}),n.changeSet.diff?(0,X.jsxs)(`details`,{className:`mt-2`,children:[(0,X.jsx)(`summary`,{className:`w-fit cursor-pointer rounded-md px-1.5 py-1 text-xs font-medium text-accent focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,children:o.viewDiff}),n.changeSet.diffTruncated?(0,X.jsx)(`p`,{className:`mt-2 text-xs text-warning`,children:o.diffTruncated}):null,(0,X.jsx)(`pre`,{className:`mt-2 max-h-72 overflow-auto rounded-lg bg-surface-inset p-3 text-xs leading-5 text-fg-muted`,children:(0,X.jsx)(`code`,{children:n.changeSet.diff})})]}):null]}):null}t[0]=r,t[1]=n.changeSet,t[2]=n.evidence,t[3]=n.status,t[4]=n.summary,t[5]=i,t[6]=a,t[7]=o,t[8]=s,t[9]=c,t[10]=l,t[11]=u,t[12]=d}else i=t[5],a=t[6],o=t[7],s=t[8],c=t[9],l=t[10],u=t[11],d=t[12];if(d!==Symbol.for(`react.early_return_sentinel`))return d;let f;t[24]!==i||t[25]!==a?(f=i&&a?(0,X.jsx)(`div`,{className:`my-2 border-t border-edge-subtle`}):null,t[24]=i,t[25]=a,t[26]=f):f=t[26];let p;t[27]!==a||t[28]!==n.evidence||t[29]!==o?(p=a?(0,X.jsxs)(`section`,{"aria-label":o.evidence,children:[(0,X.jsx)(`div`,{className:`mb-1 text-xs font-medium text-fg`,children:o.evidence}),n.evidence.map(e=>(0,X.jsxs)(`div`,{className:`flex min-h-10 items-center gap-2.5 border-b border-edge-subtle/60 py-1.5 last:border-b-0`,children:[(0,X.jsx)(qe,{className:e.status===`passed`?`size-4 shrink-0 text-success`:e.status===`failed`?`size-4 shrink-0 text-danger`:`size-4 shrink-0 text-warning`,strokeWidth:1.75,"aria-hidden":!0}),(0,X.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-xs text-fg-muted`,children:e.label}),(0,X.jsx)(`span`,{className:e.status===`passed`?`text-xs font-medium text-success`:e.status===`failed`?`text-xs font-medium text-danger`:`text-xs font-medium text-warning`,children:e.status===`passed`?o.passed:e.status===`failed`?o.failed:o.warning})]},e.evidenceId))]}):null,t[27]=a,t[28]=n.evidence,t[29]=o,t[30]=p):p=t[30];let m;t[31]!==s||t[32]!==c||t[33]!==f||t[34]!==p?(m=(0,X.jsxs)(`div`,{className:s,children:[c,f,p]}),t[31]=s,t[32]=c,t[33]=f,t[34]=p,t[35]=m):m=t[35];let g;return t[36]!==l||t[37]!==u||t[38]!==m?(g=(0,X.jsxs)(`details`,{className:l,children:[u,m]}),t[36]=l,t[37]=u,t[38]=m,t[39]=g):g=t[39],g}function uv(e){return e.status===`failed`}function dv(e){return e.status===`passed`}function fv(e){return e.language}function pv(e){let t=(0,Y.c)(14),{view:n,authToken:r,conversationId:i,projectId:a,sourcesLabel:o}=e,s;t[0]!==r||t[1]!==i||t[2]!==a||t[3]!==n?(s=(0,X.jsx)(rv,{view:n,authToken:r,conversationId:i,projectId:a}),t[0]=r,t[1]=i,t[2]=a,t[3]=n,t[4]=s):s=t[4];let c;t[5]===n.outcome?c=t[6]:(c=n.outcome?(0,X.jsx)(lv,{outcome:n.outcome}):null,t[5]=n.outcome,t[6]=c);let l;t[7]!==o||t[8]!==n.sources?(l=n.sources.length>0?(0,X.jsx)(`section`,{className:`rounded-lg bg-surface-panel/10 px-3 py-2.5`,"aria-label":o,children:(0,X.jsx)(g_,{sources:n.sources,className:``})}):null,t[7]=o,t[8]=n.sources,t[9]=l):l=t[9];let u;return t[10]!==s||t[11]!==c||t[12]!==l?(u=(0,X.jsxs)(X.Fragment,{children:[s,c,l]}),t[10]=s,t[11]=c,t[12]=l,t[13]=u):u=t[13],u}var mv=`NO_REPLY`;function hv(e,t){if(e.role!==`assistant`||!e.content?.length)return e;if(t?.hideSilentReply){let n=e.content.filter(e=>e.type!==`text`||e.text.trim()!==mv);if(n.length!==e.content.length)return hv({...e,content:n},t)}let n=e.content.findIndex(e=>e.type===`text`);if(n<0)return e;let r=e.content[n];if(r.type!==`text`)return e;let i=r.text.trimStart();if(t?.hideSilentReply&&(i===mv||t.streaming&&i.length>0&&mv.startsWith(i)))return{...e,content:e.content.filter((e,t)=>t!==n)};if(!i.startsWith(mv))return e;if(i.length===8)return e.content.slice(n+1).some(e=>e.type===`text`&&e.text.trim().length>0)?{...e,content:e.content.filter((e,t)=>t!==n)}:e;let a=i.slice(8).trimStart();if(!a)return e;let o=[...e.content];return o[n]={...r,text:a},{...e,content:o}}function gv(e,t){return t||e.workLog.items.some(e=>e.type===`tool_use`&&(e.status===`error`||e.activity?.status===`failed`))}function _v(e,t){if(e.role!==`assistant`||t.isStreaming||t.followUpTrigger)return!0;let n=h_({message:hv(e,{hideSilentReply:!0}),...t});return!!(n.answerContent.some(e=>e.type===`review`||e.type===`text`&&e.text.trim())||n.attachments?.length||n.deliveries.length||n.sources.length||n.outcome&&(n.outcome.status===`failed`||n.outcome.changeSet||n.outcome.evidence.length||n.outcome.deliverables.length)||e.taskResultDelivery||e.personalProvenance||gv(n,t.showAssistantWorkLog)&&n.workLog.items.some(e=>t.personal||!n.workLog.compact&&t.showAssistantWorkLog||e.type===`tool_use`&&(e.status===`error`||e.activity?.status===`failed`)))}function vv(e,t=!1){return t||e.textSurface===`conversation`}function yv(e){let t=e.trim().split(/[,,;;。\n]/,1)[0]?.trim()||e.trim(),n=Array.from(t);return n.length>32?`${n.slice(0,32).join(``)}…`:t}function bv(e){let t=(0,Y.c)(23),{trigger:n}=e,r=c(),i=h(xv),a;t[0]===i?a=t[1]:(a=y(i),t[0]=i,t[1]=a);let o=a.chat.taskTrigger,s=n.entryId,l;t[2]===o.about?l=t[3]:(l=(0,X.jsx)(`span`,{className:`shrink-0`,children:o.about}),t[2]=o.about,t[3]=l);let d=`${r.pathname}${r.search}`,f;t[4]!==d||t[5]!==n.taskId?(f=tt(d,n.taskId),t[4]=d,t[5]=n.taskId,t[6]=f):f=t[6];let p=n.taskTitle,m=`${o.openTask}:${n.taskTitle}`,g;t[7]===n.taskTitle?g=t[8]:(g=yv(n.taskTitle),t[7]=n.taskTitle,t[8]=g);let _;t[9]===g?_=t[10]:(_=(0,X.jsxs)(`span`,{className:`truncate`,children:[`「`,g,`」`]}),t[9]=g,t[10]=_);let v;t[11]!==f||t[12]!==m||t[13]!==_||t[14]!==n.taskTitle?(v=(0,X.jsx)(u,{className:`inline-flex min-w-0 max-w-[min(48vw,30rem)] font-medium text-fg hover:text-accent hover:underline`,to:f,title:p,"aria-label":m,children:_}),t[11]=f,t[12]=m,t[13]=_,t[14]=n.taskTitle,t[15]=v):v=t[15];let b=o[n.kind],x;t[16]===b?x=t[17]:(x=(0,X.jsxs)(`span`,{className:`shrink-0 whitespace-nowrap`,children:[`· `,b]}),t[16]=b,t[17]=x);let S;return t[18]!==v||t[19]!==x||t[20]!==l||t[21]!==n.entryId?(S=(0,X.jsxs)(`div`,{className:`mb-4 flex min-w-0 max-w-full items-center gap-1.5 border-t border-edge-subtle pt-5 text-sm text-fg-muted`,"data-task-trigger":s,children:[l,v,x]}),t[18]=v,t[19]=x,t[20]=l,t[21]=n.entryId,t[22]=S):S=t[22],S}function xv(e){return e.language}var Sv=3;function Cv(e){let t=(0,Y.c)(36),{refs:n,groupLabel:r,noteLabel:i,fileLabel:a,folderLabel:o,sessionLabel:s,browserTabLabel:c,mcpResourceLabel:l,truncatedLabel:u,showMoreLabel:d,showLessLabel:f,onOpen:p}=e,[m,h]=(0,Z.useState)(!1);if(n.length===0)return null;let g=n.length>Sv,_;t[0]!==m||t[1]!==n?(_=m?n:n.slice(0,Sv),t[0]=m,t[1]=n,t[2]=_):_=t[2];let v=_,y=n.length-Sv,b;if(t[3]!==c||t[4]!==a||t[5]!==o||t[6]!==r||t[7]!==l||t[8]!==i||t[9]!==p||t[10]!==s||t[11]!==u||t[12]!==v){let e;t[14]!==c||t[15]!==a||t[16]!==o||t[17]!==r||t[18]!==l||t[19]!==i||t[20]!==p||t[21]!==s||t[22]!==u?(e=e=>{let t=e.kind===`note`,n=t?`button`:`div`,d=e.kind===`result`?a:e.kind===`file`?e.fileKind===`directory`?o:a:e.kind===`session`?s:e.kind===`browser_tab`?c:e.kind===`mcp_resource`?l:i;return(0,X.jsxs)(n,{...t?{type:`button`,onClick:()=>p(e)}:{},className:J(`group inline-flex min-h-9 min-w-0 max-w-full items-center gap-2 rounded-lg border border-edge-subtle bg-surface-panel/80 px-2 py-1.5 text-left`,t&&`transition-colors hover:border-accent/40 hover:bg-surface-hover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`),...t?{"aria-label":`${r}: ${e.title}`}:{},title:e.truncated?u:e.title,children:[(0,X.jsx)(`span`,{className:`inline-flex size-7 shrink-0 items-center justify-center rounded-md bg-accent-soft text-accent-fg`,children:e.kind===`file`&&e.fileKind===`directory`?(0,X.jsx)(Oe,{className:`size-3.5`,"aria-hidden":!0}):e.kind===`file`||e.kind===`result`?(0,X.jsx)(Te,{className:`size-3.5`,"aria-hidden":!0}):e.kind===`session`?(0,X.jsx)(xt,{className:`size-3.5`,"aria-hidden":!0}):e.kind===`browser_tab`?(0,X.jsx)(k,{className:`size-3.5`,"aria-hidden":!0}):e.kind===`mcp_resource`?(0,X.jsx)(ve,{className:`size-3.5`,"aria-hidden":!0}):(0,X.jsx)(rs,{className:`size-3.5`,"aria-hidden":!0})}),(0,X.jsxs)(`span`,{className:`flex min-w-0 items-baseline gap-1.5`,children:[(0,X.jsx)(`span`,{className:`shrink-0 text-[11px] text-fg-muted`,children:d}),(0,X.jsx)(`span`,{className:`max-w-56 truncate text-xs font-medium text-fg sm:max-w-72`,children:e.title})]}),t?(0,X.jsx)(U,{className:`size-3.5 shrink-0 text-fg-disabled transition-transform group-hover:translate-x-0.5 group-hover:text-fg-muted`,"aria-hidden":!0}):null]},`${e.kind}:${e.sourceId}`)},t[14]=c,t[15]=a,t[16]=o,t[17]=r,t[18]=l,t[19]=i,t[20]=p,t[21]=s,t[22]=u,t[23]=e):e=t[23],b=v.map(e),t[3]=c,t[4]=a,t[5]=o,t[6]=r,t[7]=l,t[8]=i,t[9]=p,t[10]=s,t[11]=u,t[12]=v,t[13]=b}else b=t[13];let x;t[24]===b?x=t[25]:(x=(0,X.jsx)(`div`,{className:`flex min-w-0 flex-wrap gap-1.5`,children:b}),t[24]=b,t[25]=x);let S;t[26]!==g||t[27]!==m||t[28]!==y||t[29]!==f||t[30]!==d?(S=g?(0,X.jsxs)(`button`,{type:`button`,className:`inline-flex min-h-8 w-fit items-center gap-1 rounded-md px-2 text-xs text-fg-muted transition-colors hover:bg-surface-hover hover:text-fg focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,"aria-expanded":m,onClick:()=>h(wv),children:[m?(0,X.jsx)(W,{className:`size-3.5`,"aria-hidden":!0}):(0,X.jsx)(te,{className:`size-3.5`,"aria-hidden":!0}),m?f:d.replace(`{{count}}`,String(y))]}):null,t[26]=g,t[27]=m,t[28]=y,t[29]=f,t[30]=d,t[31]=S):S=t[31];let C;return t[32]!==r||t[33]!==x||t[34]!==S?(C=(0,X.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-1.5`,role:`group`,"aria-label":r,children:[x,S]}),t[32]=r,t[33]=x,t[34]=S,t[35]=C):C=t[35],C}function wv(e){return!e}function Tv(e,t){let n=new Map;for(let r of e){let e=r.sourceName.trim(),i=r.statement.trim().replace(/\s+/g,` `),a=r.origin===`connected_source`?`${r.origin}:${e}`:r.origin,o=r.origin===`connected_source`?t.connected_source.replace(`{{source}}`,e):t[r.origin],s=n.get(a);s?s.items.some(e=>e.statement.trim().replace(/\s+/g,` `)===i)||s.items.push(r):n.set(a,{id:a,label:o,items:[r]})}return Array.from(n.values())}function Ev(e){let t=(0,Y.c)(67),{open:n,onOpenChange:r,items:i,labels:a}=e,o;t[0]!==i||t[1]!==a.origins?(o=Tv(i,a.origins),t[0]=i,t[1]=a.origins,t[2]=o):o=t[2];let s=o,c=s.reduce(Av,0),l;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(l=new Set,t[3]=l):l=t[3];let[u,d]=(0,Z.useState)(l),f,p;t[4]!==c||t[5]!==s||t[6]!==n?(f=()=>{!n||s.length===0||d(new Set(c<=6?s.map(kv):[s[0].id]))},p=[c,s,n],t[4]=c,t[5]=s,t[6]=n,t[7]=f,t[8]=p):(f=t[7],p=t[8]),(0,Z.useEffect)(f,p);let m;t[9]!==u||t[10]!==s?(m=s.length>0&&s.every(e=>u.has(e.id)),t[9]=u,t[10]=s,t[11]=m):m=t[11];let h=m,g;t[12]!==h||t[13]!==s?(g=()=>{d(h?new Set:new Set(s.map(Ov)))},t[12]=h,t[13]=s,t[14]=g):g=t[14];let _=g,v;t[15]===Symbol.for(`react.memo_cache_sentinel`)?(v=e=>{d(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})},t[15]=v):v=t[15];let y=v,x;t[16]===Symbol.for(`react.memo_cache_sentinel`)?(x=(0,X.jsx)(b,{className:`xopc-dialog-overlay fixed inset-0 z-[80] bg-scrim/60 backdrop-blur-[1px]`}),t[16]=x):x=t[16];let O;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(O=J(`xopc-dialog-content fixed left-1/2 top-1/2 z-[90] flex h-[min(36rem,calc(100dvh-2rem))]`,`w-[min(42rem,calc(100vw-2rem))] -translate-x-1/2 -translate-y-1/2 flex-col overflow-hidden`,`rounded-2xl border border-edge bg-surface-overlay shadow-popover outline-none`),t[17]=O):O=t[17];let k;t[18]===Symbol.for(`react.memo_cache_sentinel`)?(k=(0,X.jsx)(`span`,{className:`mt-0.5 flex size-8 shrink-0 items-center justify-center rounded-lg bg-accent-soft text-accent-fg`,children:(0,X.jsx)(Ho,{className:`size-4`,strokeWidth:1.75,"aria-hidden":!0})}),t[18]=k):k=t[18];let A;t[19]===a.title?A=t[20]:(A=(0,X.jsx)(E,{className:`text-base font-semibold text-fg`,children:a.title}),t[19]=a.title,t[20]=A);let j;t[21]===a.hint?j=t[22]:(j=(0,X.jsx)(S,{className:`mt-1 text-sm leading-5 text-fg-muted`,children:a.hint}),t[21]=a.hint,t[22]=j);let M;t[23]!==c||t[24]!==a.itemsSummary?(M=a.itemsSummary.replace(`{{count}}`,String(c)),t[23]=c,t[24]=a.itemsSummary,t[25]=M):M=t[25];let N;t[26]===M?N=t[27]:(N=(0,X.jsx)(`p`,{className:`mt-2 text-xs font-medium text-fg-subtle`,children:M}),t[26]=M,t[27]=N);let P;t[28]!==A||t[29]!==j||t[30]!==N?(P=(0,X.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[A,j,N]}),t[28]=A,t[29]=j,t[30]=N,t[31]=P):P=t[31];let F;t[32]===Symbol.for(`react.memo_cache_sentinel`)?(F=(0,X.jsx)(Kt,{className:`size-4`,strokeWidth:1.75,"aria-hidden":!0}),t[32]=F):F=t[32];let I;t[33]===a.close?I=t[34]:(I=(0,X.jsx)(C,{asChild:!0,children:(0,X.jsx)(`button`,{type:`button`,className:`flex size-8 shrink-0 items-center justify-center rounded-lg text-fg-muted transition-colors duration-150 hover:bg-surface-hover hover:text-fg focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,"aria-label":a.close,title:a.close,children:F})}),t[33]=a.close,t[34]=I);let L;t[35]!==P||t[36]!==I?(L=(0,X.jsxs)(`header`,{className:`flex shrink-0 items-start gap-3 border-b border-edge-subtle px-4 py-4 sm:px-5`,children:[k,P,I]}),t[35]=P,t[36]=I,t[37]=L):L=t[37];let R;t[38]!==s.length||t[39]!==a.groupSummary?(R=a.groupSummary.replace(`{{count}}`,String(s.length)),t[38]=s.length,t[39]=a.groupSummary,t[40]=R):R=t[40];let z;t[41]===R?z=t[42]:(z=(0,X.jsx)(`span`,{className:`text-xs text-fg-subtle`,children:R}),t[41]=R,t[42]=z);let B;t[43]!==h||t[44]!==s.length||t[45]!==a.collapseAll||t[46]!==a.expandAll||t[47]!==_?(B=s.length>1?(0,X.jsx)(`button`,{type:`button`,className:`rounded-md px-2 py-1 text-xs font-medium text-accent-fg transition-colors duration-150 hover:bg-accent-soft focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,onClick:_,children:h?a.collapseAll:a.expandAll}):null,t[43]=h,t[44]=s.length,t[45]=a.collapseAll,t[46]=a.expandAll,t[47]=_,t[48]=B):B=t[48];let ee;t[49]!==z||t[50]!==B?(ee=(0,X.jsxs)(`div`,{className:`flex h-11 shrink-0 items-center justify-between gap-3 border-b border-edge-subtle px-4 sm:px-5`,children:[z,B]}),t[49]=z,t[50]=B,t[51]=ee):ee=t[51];let V;if(t[52]!==u||t[53]!==s){let e;t[55]===u?e=t[56]:(e=e=>{let t=u.has(e.id);return(0,X.jsxs)(`section`,{className:`overflow-hidden rounded-xl border border-edge-subtle bg-surface-panel`,children:[(0,X.jsxs)(`button`,{type:`button`,className:`flex min-h-12 w-full items-center gap-3 px-3.5 py-2.5 text-left transition-colors duration-150 hover:bg-surface-hover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-accent`,"aria-expanded":t,onClick:()=>y(e.id),children:[(0,X.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-sm font-medium text-fg`,children:e.label}),(0,X.jsx)(`span`,{className:`shrink-0 rounded-full bg-surface-hover px-2 py-0.5 text-[11px] tabular-nums text-fg-muted`,children:e.items.length}),(0,X.jsx)(te,{className:J(`size-4 shrink-0 text-fg-subtle transition-transform duration-200`,t&&`rotate-180`),strokeWidth:1.75,"aria-hidden":!0})]}),t?(0,X.jsx)(`div`,{className:`border-t border-edge-subtle px-3.5`,children:e.items.map(Dv)}):null]},e.id)},t[55]=u,t[56]=e),V=s.map(e),t[52]=u,t[53]=s,t[54]=V}else V=t[54];let H;t[57]===V?H=t[58]:(H=(0,X.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto overscroll-contain px-3 py-3 sm:px-4`,"data-testid":`response-context-scroll-region`,children:(0,X.jsx)(`div`,{className:`space-y-2`,children:V})}),t[57]=V,t[58]=H);let U;t[59]!==L||t[60]!==ee||t[61]!==H?(U=(0,X.jsxs)(w,{children:[x,(0,X.jsxs)(T,{className:O,children:[L,ee,H]})]}),t[59]=L,t[60]=ee,t[61]=H,t[62]=U):U=t[62];let W;return t[63]!==r||t[64]!==n||t[65]!==U?(W=(0,X.jsx)(D,{open:n,onOpenChange:r,children:U}),t[63]=r,t[64]=n,t[65]=U,t[66]=W):W=t[66],W}function Dv(e){return(0,X.jsx)(`p`,{className:`border-b border-edge-subtle py-3 text-sm leading-6 text-fg last:border-b-0`,children:e.statement},e.id)}function Ov(e){return e.id}function kv(e){return e.id}function Av(e,t){return e+t.items.length}var jv=J(`inline-flex size-11 shrink-0 items-center justify-center rounded-lg sm:size-9`,`text-fg-muted transition-colors transition-transform duration-150 ease-out`,`hover:bg-surface-hover hover:text-fg active:scale-95`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-accent`,ta.disabled),Mv=[`misunderstood_intent`,`incorrect`,`did_not_act`,`tone_mismatch`,`too_verbose`,`other`],Nv=J(`inline-flex h-8 shrink-0 items-center justify-center gap-1 rounded-md px-2 text-xs text-fg-muted transition-colors`,`hover:bg-surface-hover hover:text-fg active:scale-[0.98]`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-accent`,ta.disabled),Pv=700,Fv=120,Iv=(0,Z.memo)(function({message:e,personal:t=!1,followUpTrigger:n,authToken:r,conversationId:i,workspaceConversationId:a,projectId:o,isStreaming:s,progress:l,reasoningLevel:u=`on`,messageIndex:f,onDeleteRound:m,onRetryUserMessageRound:_,userMessageCanRetry:v=!1,deleteRoundDisabled:b=!1,onSaveAssistantAsNote:x,onSaveAssistantToSourceNote:S,onExtractAssistantTask:C,onForkAssistantTurn:w,readonly:T=!1,density:E=`normal`,suppressAssistantActions:D=!1,onEditUserMessage:O,userMessageCanEdit:k=!0,responseFeedbackEnabled:A=!0,showAssistantWorkLog:j=!0}){let M=(0,Z.useMemo)(()=>hv(e,{hideSilentReply:vv(e,t),streaming:s}),[e,t,s]),F=h(e=>e.language),I=y(F),z=d(),ee=c(),V=M.role===`user`,U=M.role===`assistant`,ne=(0,Z.useRef)(V&&M.deliveryStatus===`sending`).current,re=V&&M.deliveryStatus===`sending`,ie=V&&M.deliveryStatus===`failed`,[ae,oe]=(0,Z.useState)(!1),[se,G]=(0,Z.useState)(!1),[K,le]=(0,Z.useState)(()=>typeof navigator<`u`&&navigator.onLine===!1),q=V?I.chat.you:U?I.chat.assistant:I.chat.tool;(0,Z.useEffect)(()=>{if(!re||typeof window>`u`)return;let e=()=>le(window.navigator.onLine===!1);return window.addEventListener(`online`,e),window.addEventListener(`offline`,e),()=>{window.removeEventListener(`online`,e),window.removeEventListener(`offline`,e)}},[re]),(0,Z.useEffect)(()=>{if(re){if(ae)return;let e=window.setTimeout(()=>oe(!0),K?0:Pv);return()=>window.clearTimeout(e)}if(!ae)return;let e=0,t=window.requestAnimationFrame(()=>{G(!0),e=window.setTimeout(()=>{oe(!1),G(!1)},Fv)});return()=>{window.cancelAnimationFrame(t),window.clearTimeout(e)}},[re,K,ae]);let ue=ie||ae,de=ie?`failed`:`sending`,fe=(0,Z.useCallback)(e=>{let t=`${ee.pathname}${ee.search}`;z(nt(t,e))},[ee.pathname,ee.search,z]),pe=(0,Z.useMemo)(()=>({input:I.chat.toolInput,output:I.chat.toolOutput,noOutput:I.chat.noOutput}),[I.chat.toolInput,I.chat.toolOutput,I.chat.noOutput]),me=(0,Z.useMemo)(()=>({thoughts:I.chat.thoughts,thoughtsStreaming:I.chat.thoughtsStreaming,workLogTitle:I.chat.workLogTitle,workLogRunning:I.chat.workLogRunning,workLogComplete:I.chat.workLogComplete,workLogPartial:I.chat.workLogPartial,workLogFailed:I.chat.workLogFailed,searchedWeb:I.chat.stepSearchedWeb,searchedMemory:I.chat.stepSearchedMemory,searchedCode:I.chat.stepSearchedCode,searched:I.chat.stepSearched,readFile:I.chat.stepReadFile,stepDetails:I.chat.stepDetails,runCommand:I.chat.stepRunCommand,listDirectory:I.chat.stepListDirectory,writeFile:I.chat.stepWriteFile,editFile:I.chat.stepEditFile,openUrl:I.chat.stepOpenUrl,fetchUrl:I.chat.stepFetchUrl,unknownTool:I.chat.stepUnknownTool,rawThinking:I.chat.rawThinking,toolError:I.chat.toolError,toolActivity:I.chat.toolActivity,memoryActivity:I.chat.memoryActivity}),[I.chat.thoughts,I.chat.thoughtsStreaming,I.chat.workLogTitle,I.chat.workLogRunning,I.chat.workLogComplete,I.chat.workLogPartial,I.chat.workLogFailed,I.chat.stepSearchedWeb,I.chat.stepSearchedMemory,I.chat.stepSearchedCode,I.chat.stepSearched,I.chat.stepReadFile,I.chat.stepDetails,I.chat.stepRunCommand,I.chat.stepListDirectory,I.chat.stepWriteFile,I.chat.stepEditFile,I.chat.stepOpenUrl,I.chat.stepFetchUrl,I.chat.stepUnknownTool,I.chat.rawThinking,I.chat.toolError,I.chat.toolActivity,I.chat.memoryActivity]),he=(0,Z.useMemo)(()=>({ing:I.chat.stepsClusterIng}),[I.chat.stepsClusterIng]),ge=(0,Z.useMemo)(()=>I.chat.toolCard,[I.chat.toolCard]),ve=u===`off`,ye=(0,Z.useMemo)(()=>U?h_({message:M,isStreaming:s,reasoningLevel:u,personal:t}):null,[U,s,M,u,t]),xe=(0,Z.useMemo)(()=>{if(!ye)return(M.content??[]).filter(e=>e.type!==`image`);if(t)return ye.answerContent;if(!ve&&j)return(M.content??[]).filter(e=>e.type!==`image`);let e=new Set(ye.answerContent);return(M.content??[]).filter(t=>e.has(t)||t.type===`tool_use`&&(t.status===`error`||t.activity?.status===`failed`))},[ye,M.content,t,ve,j]),Ce=(0,Z.useMemo)(()=>ye?ye.attachments:M.attachments,[ye,M.attachments]),we=(0,Z.useMemo)(()=>{let e=new Set(M.userTurnDocument?.parts.flatMap(e=>e.type===`context_ref`?[e.refId]:[])??[]);return M.contextRefs?.filter(t=>!t.refId||!e.has(t.refId))},[M.contextRefs,M.userTurnDocument]),Ee=!!(ye?.workLog.active||ye?.workLog.items.length),De=!!ye?.answer.started,Oe=ve||U&&(Ee||De)?null:l,ke=!ve&&!!M.content?.some(e=>e.type===`thinking`&&e.streaming),Ae=U?!!ye?.answer.showStreamingCursor:s,je=t&&U&&s&&!ye?.answer.started&&!Ce?.length,Me=s&&!ke&&(!U||!Ee&&!De),Ne=!!Oe?.message||Me,Pe=U&&!T&&!s&&!D,Fe=U&&s&&!T&&!D&&De,Ie=(0,Z.useMemo)(()=>Pe?rm(M.content??[]):``,[Pe,M]),Le=(0,Z.useMemo)(()=>Pe&&Ie?am(M.content??[]):``,[Pe,Ie,M]),Re=(0,Z.useMemo)(()=>Pe&&Ie?R(Ie):``,[Pe,Ie]),ze=(0,Z.useMemo)(()=>({source:{type:`chat-message`,id:`${i??`chat`}:${M.timestamp??f??Ie.length}`,title:Re.split(`
|
|
60
|
-
`)[0]?.slice(0,48)||I.chat.messageReadAloudTitle,href:i?`#/chat/${encodeURIComponent(i)}`:void 0,targetId:f==null?void 0:`chat-message-${f}`},text:Re,language:P(Re,F)}),[Ie.length,F,I.chat.messageReadAloudTitle,M.timestamp,f,i,Re]),Be=(0,Z.useMemo)(()=>{if(!V)return``;if(M.userTurnDocument){let e=new Map(M.contextRefs?.flatMap(e=>e.refId?[[e.refId,e.title]]:[])??[]);return qn(M.userTurnDocument,t=>e.get(t))}return Ln(M.content)},[V,M.content,M.contextRefs,M.userTurnDocument]),[Ve,He]=(0,Z.useState)(null),[Ue,We]=(0,Z.useState)(!1),[Ge,Ke]=(0,Z.useState)(null),[qe,Ye]=(0,Z.useState)(null),[Xe,Ze]=(0,Z.useState)(!1),[Qe,$e]=(0,Z.useState)(null),[et,tt]=(0,Z.useState)(!1),[rt,it]=(0,Z.useState)(!1),[at,ot]=(0,Z.useState)(!1),[st,ct]=(0,Z.useState)(!1),[lt,ut]=(0,Z.useState)(null),[dt,ft]=(0,Z.useState)([]),[pt,mt]=(0,Z.useState)(!1),[ht,gt]=(0,Z.useState)(!1),[_t,vt]=(0,Z.useState)(null),[yt,bt]=(0,Z.useState)(!1),[xt,St]=(0,Z.useState)(!1),Ct=(0,Z.useRef)(null),wt=(0,Z.useCallback)((e,t)=>{let n=tm(e,t);n&&vt(n)},[]),Tt=(0,Z.useCallback)(()=>{!i||!M.renderKey||Mn.getState().completeProgressiveRender(i,M.renderKey)},[M.renderKey,i]),Et=(0,Z.useCallback)(()=>{Le&&gi(Le).then(e=>{e&&(He(`plain`),window.setTimeout(()=>He(e=>e===`plain`?null:e),2e3))})},[Le]),Dt=(0,Z.useCallback)(()=>{Ie&&gi(Ie).then(e=>{e&&(He(`markdown`),window.setTimeout(()=>He(e=>e===`markdown`?null:e),2e3))})},[Ie]),kt=(0,Z.useCallback)(()=>{!Ie||!x||qe||(Ye(`create-note`),Promise.resolve(x(Ie)).then(()=>{Ke(`create-note`),window.setTimeout(()=>Ke(e=>e===`create-note`?null:e),2e3)}).catch(()=>void 0).finally(()=>Ye(null)))},[qe,Ie,x]),At=(0,Z.useCallback)(()=>{!Ie||!S||qe||(Ye(`save-source-note`),Promise.resolve(S(Ie)).then(()=>{Ke(`save-source-note`),window.setTimeout(()=>Ke(e=>e===`save-source-note`?null:e),2e3)}).catch(()=>void 0).finally(()=>Ye(null)))},[qe,Ie,S]),Mt=(0,Z.useCallback)(()=>{!Le&&!Ie||!C||qe||(Ye(`extract-task`),Promise.resolve(C(Le||Ie)).then(()=>{Ke(`extract-task`),window.setTimeout(()=>Ke(e=>e===`extract-task`?null:e),2e3)}).catch(()=>void 0).finally(()=>Ye(null)))},[qe,Ie,Le,C]),Nt=(0,Z.useCallback)(()=>{Be&&gi(Be).then(e=>{e&&(He(`user`),window.setTimeout(()=>He(e=>e===`user`?null:e),2e3))})},[Be]),Pt=(0,Z.useCallback)(()=>{!M.turnId||!w||Xe||(Ze(!0),Promise.resolve(w(M.turnId)).catch(()=>void 0).finally(()=>Ze(!1)))},[Xe,M.turnId,w]),Ft=(0,Z.useCallback)((e,t)=>{!M.turnId||rt||(it(!0),tt(!0),ot(!1),g(p(`/api/turns/${encodeURIComponent(M.turnId)}/execution-context/feedback`),{method:`POST`,body:JSON.stringify({rating:e===`helpful`?`helpful`:`irrelevant`,reason:t})}).then(()=>{$e(e),ut(t??null),ct(!1)}).catch(()=>ot(!0)).finally(()=>it(!1)))},[M.turnId,rt]),It=(0,Z.useCallback)(()=>{lt&&yp(I.chat.messageFeedbackRepairPrompts[lt])},[I.chat.messageFeedbackRepairPrompts,lt]),Lt=(0,Z.useCallback)(()=>{!M.turnId||et||rt||(it(!0),g(p(`/api/turns/${encodeURIComponent(M.turnId)}/execution-context`)).then(e=>{ft(e.resolvedItems.filter(e=>e.included).map(e=>({id:`${e.objectType}:${e.objectId}`,statement:e.content,origin:e.origin,sourceName:e.sourceLabel})))}).catch(()=>void 0).finally(()=>{tt(!0),it(!1)}))},[M.turnId,rt,et]),Rt=(0,Z.useCallback)(()=>{f==null||!m||gt(!0)},[f,m]),zt=(0,Z.useCallback)(()=>{f==null||!m||(m(f),gt(!1))},[f,m]),Bt=(0,Z.useCallback)(()=>{gt(!1)},[]);(0,Z.useLayoutEffect)(()=>{if(!V)return;let e=Ct.current;if(!e)return;let t=()=>{let t=window.getComputedStyle(e),n=Number.parseFloat(t.lineHeight),r=Number.parseFloat(t.fontSize)||14,i=Number.isFinite(n)?n:r*1.625;St(e.scrollHeight>i*10+1)};if(t(),typeof ResizeObserver>`u`)return;let n=new ResizeObserver(t);return n.observe(e),()=>n.disconnect()},[V,xe,Be]),(0,Z.useLayoutEffect)(()=>{bt(!1)},[V,Be]);let Ht=b||!v,Ut=ye&&(t||ve||!j)&&gv(ye,j)&&(ye.workLog.active||ye.workLog.items.length>0)?(0,X.jsx)(Sg,{workLog:ye.workLog,pendingStatus:M.pendingResponseStatus,toolLabels:pe,stepLabels:me,clusterLabels:he,cardLabels:ge,conversationId:i,simplified:!t,personal:t,surfacesOnly:!t,answerStarted:ye.answer.started}):null;return(0,X.jsx)(Ku.Provider,{value:qu(ye?.deliveries??[]),children:(0,X.jsxs)(`article`,{className:J(`group/msg flex w-full min-w-0`,V?`justify-end`:`justify-start`,ne&&`xopc-chat-user-message-enter`),children:[(0,X.jsxs)(`div`,{className:J(`min-w-0`,V?`flex w-full max-w-[min(78%,var(--max-width-chat-user))] flex-col items-end`:`w-full max-w-[var(--max-width-chat-reading)]`,T&&`max-w-full`),children:[(0,X.jsx)(`span`,{className:`sr-only`,children:q}),n?(0,X.jsx)(bv,{trigger:n}):null,V&&Ne?(0,X.jsxs)(`div`,{className:`mb-2 flex w-full min-w-0 flex-wrap items-center justify-end gap-x-2 gap-y-0.5 text-xs`,children:[Oe?.message&&!Ee?(0,X.jsx)(`span`,{className:`text-fg-subtle`,title:Oe.detail??``,children:Oe.message}):null,Me&&!Oe?.message?(0,X.jsx)(`span`,{className:`text-fg-subtle`,children:I.chat.thinkingLabel}):null]}):null,!V&&Ne&&!je?(0,X.jsxs)(`div`,{className:`mb-2 flex flex-wrap items-baseline gap-x-2 gap-y-0.5 text-xs text-fg-disabled`,children:[Oe?.message&&!Ee?(0,X.jsx)(`span`,{className:`text-fg-subtle`,title:Oe.detail??``,children:Oe.message}):null,Me&&!Oe?.message?(0,X.jsx)(`span`,{className:`text-fg-subtle`,children:I.chat.thinkingLabel}):null]}):null,(0,X.jsx)(`div`,{dir:V?`auto`:void 0,className:J(`min-w-0 text-fg`,V&&`chat-user-message`,E===`compact`?`text-sm leading-relaxed`:V?`text-[0.9375rem] leading-[1.6667]`:`text-base leading-[1.6875]`,V&&`w-fit max-w-full rounded-2xl bg-surface-hover/80 px-4 py-3 text-left dark:bg-surface-hover/50`,je&&`bg-transparent p-0`),children:(0,X.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-2`,children:[je?(0,X.jsx)(`div`,{className:`xopc-personal-thinking`,role:`status`,"aria-label":I.chat.thinkingLabel,children:(0,X.jsxs)(`span`,{className:`xopc-personal-thinking-dots`,"aria-hidden":`true`,children:[(0,X.jsx)(`i`,{}),(0,X.jsx)(`i`,{}),(0,X.jsx)(`i`,{})]})}):null,Ut,(xe?.length??0)>0?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)(`div`,{ref:V?Ct:void 0,"data-chat-find-text":!0,className:J(`relative min-w-0`,`flex flex-col gap-3`,V&&!yt&&`overflow-hidden`),style:V&&!yt?{maxHeight:`calc(10lh)`}:void 0,children:[(0,X.jsx)(sh,{taskRunId:M.taskResultDelivery?.taskRunId,content:xe,isUser:V,isAssistantMessageStreaming:U&&s,imagePreviewLabel:I.chat.attachmentPreviewImage,onImagePreview:wt,conversationId:i,workspaceConversationId:a,projectId:o,progressiveRender:!!M.progressiveRender,onProgressiveRenderComplete:Tt,userTurnDocument:M.userTurnDocument,contextRefs:M.contextRefs,responseRunId:U?M.turnId:void 0,immediateFirstCommit:vv(M,t),renderActivity:!t&&ye?(e,t)=>{let n=s&&(t||e.some(e=>e.type===`tool_use`&&e.status===`running`)),r=Qg(e);return(0,X.jsx)(Sg,{workLog:{items:e,active:n,status:n?`running`:e.some(e=>e.type===`tool_use`&&(e.status===`error`||e.activity?.status===`failed`))?`failed`:`completed`,compact:!1,expandedByDefault:u===`stream`&&n,startedAt:r.startedAt,durationMs:r.durationMs},toolLabels:pe,stepLabels:me,clusterLabels:he,cardLabels:ge,conversationId:i,simplified:!1,showThinking:!0})}:void 0}),Ae?(0,X.jsx)(`span`,{"aria-hidden":!0,"data-chat-streaming-cursor":!0,className:`pointer-events-none absolute start-0 top-full mt-1 h-3 w-0.5 bg-accent opacity-60`}):null]}),V&&xt?(0,X.jsxs)(`button`,{type:`button`,className:`inline-flex w-fit items-center gap-1 rounded-md px-1.5 py-1 text-xs font-medium text-accent transition-colors hover:bg-accent/10 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-accent`,onClick:()=>bt(e=>!e),"aria-expanded":yt,children:[yt?(0,X.jsx)(W,{className:`size-3.5`,strokeWidth:1.75,"aria-hidden":!0}):(0,X.jsx)(te,{className:`size-3.5`,strokeWidth:1.75,"aria-hidden":!0}),(0,X.jsx)(`span`,{children:yt?I.chat.userMessageCollapse:I.chat.userMessageExpand})]}):null]}):null,!t&&ye&&!ye.answer.started&&s&&!xe.some(e=>e.type===`thinking`||e.type===`tool_use`)?(0,X.jsx)(Sg,{workLog:{items:[],active:!0,status:`running`,compact:!0,expandedByDefault:!1},pendingStatus:M.pendingResponseStatus,toolLabels:pe,stepLabels:me,clusterLabels:he,cardLabels:ge,conversationId:i}):null,!t&&!V&&M.taskResultDelivery&&i?(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,"data-result-follow-up":!0,children:[M.taskResultDelivery.resultRevision?(0,X.jsxs)(`span`,{className:`text-xs text-fg-muted`,"data-result-revision":!0,children:[F===`zh`?`成果版本`:`Result version`,` `,M.taskResultDelivery.resultRevision]}):null,[{sourceId:`body`,title:M.taskResultDelivery.taskTitle},...M.taskResultDelivery.outcome.deliverables.filter(e=>e.availability===`available`).map(e=>({sourceId:e.artifactId,title:e.title}))].map(e=>(0,X.jsxs)(`button`,{type:`button`,className:`max-w-64 truncate rounded-md border border-edge-subtle px-2 py-1 text-xs text-fg-muted hover:bg-surface-hover hover:text-fg`,onClick:()=>{let t=M.taskResultDelivery;window.dispatchEvent(new CustomEvent(`chat-result-reference`,{detail:{conversationId:i,reference:{kind:`result`,sourceId:_s(t.deliveryId.replace(/^reply:/,``),e.sourceId),expectedVersion:vs(t),title:e.title}}}))},children:[F===`zh`?`询问:`:`Ask about: `,e.title]},e.sourceId))]}):null,ye?(0,X.jsx)(pv,{view:ye,authToken:r,conversationId:a??i,projectId:o,sourcesLabel:I.chat.searchSourcesHeading.replace(`{{count}}`,String(ye.sources.length))}):null,V&&M.sourceDevice?(0,X.jsxs)(`p`,{className:`mt-1 text-xs text-fg-subtle`,children:[F===`zh`?`来自 `:`From `,M.sourceDevice.name]}):null,V&&we?.length?(0,X.jsx)(Cv,{refs:we,groupLabel:I.chat.commandPalette.contextLabel,noteLabel:I.chat.commandPalette.notesSection,fileLabel:I.chat.atMention.files,folderLabel:I.chat.atMention.folders,sessionLabel:I.chat.atMention.chats,browserTabLabel:I.chat.atMention.browserTabs,mcpResourceLabel:I.chat.atMention.mcpResources,truncatedLabel:I.chat.commandPalette.contextTruncated,showMoreLabel:I.chat.contextReferencesMore,showLessLabel:I.chat.contextReferencesLess,onOpen:e=>fe(e.sourceId)}):null,V&&Ce?.length?(0,X.jsx)(Qp,{attachments:Ce,authToken:r,conversationId:i,workspaceConversationId:a,layout:`user`,centerUserVoiceRow:Be.length===0}):null]})}),ue?(0,X.jsxs)(`div`,{"data-delivery-status":de,role:ie?`alert`:`status`,"aria-live":`polite`,"aria-hidden":se&&!ie?!0:void 0,className:J(`mt-1 flex min-h-5 items-center justify-end gap-1.5 pe-1 text-xs transition-opacity duration-[120ms] ease-out motion-reduce:transition-none`,ie?`text-danger`:`text-fg-subtle`,se&&!ie&&`opacity-0`),children:[ie?(0,X.jsx)(ce,{className:`size-3.5`,strokeWidth:1.75,"aria-hidden":!0}):null,(0,X.jsx)(`span`,{children:ie?I.chat.userMessageSendFailed:K&&re?I.chat.userMessageWaitingForNetwork:I.chat.userMessageSending}),ie&&_&&f!=null?(0,X.jsx)(`button`,{type:`button`,className:`rounded-md px-1.5 py-0.5 font-medium text-danger underline-offset-2 hover:bg-danger/10 hover:underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-danger/40`,onClick:()=>_(f),children:I.chat.userMessageRetry}):null]}):null,!V&&M.personalProvenance&&!s&&(0,X.jsx)(Rp,{provenance:M.personalProvenance}),V&&!s&&!T?(0,X.jsxs)(`div`,{"data-user-message-actions":!0,className:J(`mt-1 flex h-8 w-full min-w-0 shrink-0 items-center justify-end gap-0.5 sm:gap-2`,`pointer-events-none opacity-0 transition-opacity duration-150 ease-out`,`group-hover/msg:pointer-events-auto group-hover/msg:opacity-100`,`group-focus-within/msg:pointer-events-auto group-focus-within/msg:opacity-100`,`[@media(hover:none)_and_(pointer:coarse)]:pointer-events-auto [@media(hover:none)_and_(pointer:coarse)]:opacity-100`),children:[_&&f!=null&&M.deliveryStatus!==`failed`?(0,X.jsxs)(`button`,{type:`button`,className:J(Nv,Ht&&`opacity-40`),onClick:()=>_(f),disabled:Ht,title:b?I.chat.userMessageActionsWait:v?I.chat.userMessageRetry:I.chat.userMessageRetryDisabledHint,"aria-label":I.chat.userMessageRetry,children:[(0,X.jsx)(jt,{className:`size-3.5 shrink-0`,strokeWidth:1.75,"aria-hidden":!0}),(0,X.jsx)(`span`,{className:`max-w-[4.5rem] truncate sm:max-w-none`,children:I.chat.userMessageRetry})]}):null,(0,X.jsx)(`button`,{type:`button`,className:J(Nv,`size-8 px-0`),onClick:()=>{if(O&&f!=null){O(M,f);return}yp(Be,In(M.attachments))},disabled:!Be&&!M.attachments?.length&&!M.contextRefs?.length||!k,title:k?I.chat.userMessageEdit:I.chat.userMessageEditDisabledHint,"aria-label":I.chat.userMessageEdit,children:(0,X.jsx)(Ot,{className:`size-3.5`,strokeWidth:1.75,"aria-hidden":!0})}),(0,X.jsx)(`button`,{type:`button`,className:J(Nv,`size-8 px-0`),onClick:Nt,disabled:!Be,title:Ve===`user`?I.chat.messageCopied:I.chat.userMessageCopy,"aria-label":Ve===`user`?I.chat.messageCopied:I.chat.userMessageCopy,children:Ve===`user`?(0,X.jsx)(H,{className:`size-3.5 text-fg-muted`,strokeWidth:1.75,"aria-hidden":!0}):(0,X.jsx)(_e,{className:`size-3.5`,strokeWidth:1.75,"aria-hidden":!0})}),m&&f!=null&&!b?(0,X.jsx)(`button`,{type:`button`,className:J(Nv,`size-8 px-0 hover:text-red-500 dark:hover:text-red-400`),onClick:Rt,title:I.chat.userMessageDelete,"aria-label":I.chat.userMessageDelete,children:(0,X.jsx)(Vt,{className:`size-3.5`,strokeWidth:1.75,"aria-hidden":!0})}):null]}):null,Fe?(0,X.jsx)(`div`,{"data-assistant-actions-placeholder":!0,className:`mt-1 min-h-9 shrink-0`,"aria-hidden":`true`}):null,Pe&&Ie?(0,X.jsx)(Xg,{children:(0,X.jsxs)(`div`,{"data-assistant-message-actions":!0,className:J(`mt-1 flex min-h-9 shrink-0 items-center gap-1 overflow-visible transition-opacity duration-150 ease-out motion-reduce:transition-none`,`pointer-events-none opacity-0 group-hover/msg:pointer-events-auto group-hover/msg:opacity-100`,`group-focus-within/msg:pointer-events-auto group-focus-within/msg:opacity-100`,`[@media(hover:none)_and_(pointer:coarse)]:pointer-events-auto [@media(hover:none)_and_(pointer:coarse)]:opacity-100`,(Ue||st||at)&&`pointer-events-auto opacity-100`),children:[(0,X.jsx)(Zg,{label:Ve===`plain`?I.chat.messageCopied:I.chat.messageCopyPlainText,children:(0,X.jsx)(`button`,{type:`button`,className:jv,onClick:Et,disabled:!Le,"aria-label":Ve===`plain`?I.chat.messageCopied:I.chat.messageCopyPlainText,children:Ve===`plain`?(0,X.jsx)(H,{className:`size-4 text-fg-muted`,strokeWidth:1.75,"aria-hidden":!0}):(0,X.jsx)(_e,{className:`size-4`,strokeWidth:1.75,"aria-hidden":!0})})}),(0,X.jsx)(Zg,{label:I.chat.messageReadAloud,children:(0,X.jsx)(N,{input:ze,labels:{read:I.chat.messageReadAloud,preparing:I.chat.messageReadAloudPreparing,pause:I.chat.messageReadAloudPause,resume:I.chat.messageReadAloudResume,retry:I.chat.messageReadAloudRetry},hideNativeTitle:!0})}),(0,X.jsxs)(li,{open:Ue,onOpenChange:e=>{We(e),e&&Lt()},children:[(0,X.jsx)(Zg,{label:I.chat.messageMoreActions,children:(0,X.jsx)(di,{asChild:!0,children:(0,X.jsx)(`button`,{type:`button`,className:jv,"aria-label":I.chat.messageMoreActions,children:(0,X.jsx)(be,{className:`size-4`,strokeWidth:1.75,"aria-hidden":!0})})})}),(0,X.jsx)(si,{children:(0,X.jsxs)(ci,{side:`bottom`,align:`start`,sideOffset:6,className:`z-[70] w-56 rounded-xl border border-edge bg-surface-overlay p-1.5 shadow-popover outline-none`,children:[(0,X.jsx)(ui,{asChild:!0,children:(0,X.jsxs)(`button`,{type:`button`,className:`flex h-9 w-full items-center gap-2 rounded-lg px-2.5 text-left text-xs text-fg-muted hover:bg-surface-hover hover:text-fg`,onClick:Dt,children:[Ve===`markdown`?(0,X.jsx)(H,{className:`size-4`,strokeWidth:1.75,"aria-hidden":!0}):(0,X.jsx)(Se,{className:`size-4`,strokeWidth:1.75,"aria-hidden":!0}),Ve===`markdown`?I.chat.messageCopied:I.chat.messageCopyMarkdown]})}),w&&M.turnId?(0,X.jsx)(ui,{asChild:!0,children:(0,X.jsxs)(`button`,{type:`button`,className:`flex h-9 w-full items-center gap-2 rounded-lg px-2.5 text-left text-xs text-fg-muted hover:bg-surface-hover hover:text-fg`,onClick:Pt,disabled:Xe,children:[(0,X.jsx)(Yo,{className:`size-4`,strokeWidth:1.75,"aria-hidden":!0}),Xe?I.chat.messageForkCreating:I.chat.messageForkFromHere]})}):null,x?(0,X.jsx)(ui,{asChild:!0,children:(0,X.jsxs)(`button`,{type:`button`,className:`flex h-9 w-full items-center gap-2 rounded-lg px-2.5 text-left text-xs text-fg-muted hover:bg-surface-hover hover:text-fg`,onClick:kt,disabled:qe!==null,children:[Ge===`create-note`?(0,X.jsx)(H,{className:`size-4`,strokeWidth:1.75,"aria-hidden":!0}):(0,X.jsx)(Ko,{className:`size-4`,strokeWidth:1.75,"aria-hidden":!0}),Ge===`create-note`?I.chat.messageSavedToNote:I.chat.messageSaveToNote]})}):null,A&&i&&M.timestamp?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`div`,{className:`my-1 border-t border-edge-subtle`,role:`separator`}),(0,X.jsx)(ui,{asChild:!0,children:(0,X.jsxs)(`button`,{type:`button`,className:`flex h-9 w-full items-center gap-2 rounded-lg px-2.5 text-left text-xs text-fg-muted hover:bg-surface-hover hover:text-fg`,onClick:()=>Ft(`helpful`),disabled:rt,"aria-pressed":Qe===`helpful`,children:[(0,X.jsx)(L,{className:`size-4`,strokeWidth:1.75,"aria-hidden":!0}),I.chat.messageHelpful]})}),(0,X.jsx)(ui,{asChild:!0,children:(0,X.jsxs)(`button`,{type:`button`,className:`flex h-9 w-full items-center gap-2 rounded-lg px-2.5 text-left text-xs text-fg-muted hover:bg-surface-hover hover:text-fg`,onClick:()=>ct(e=>!e),disabled:rt,"aria-pressed":Qe===`not_helpful`,children:[(0,X.jsx)(B,{className:`size-4`,strokeWidth:1.75,"aria-hidden":!0}),I.chat.messageNotHelpful]})})]}):null,at?(0,X.jsx)(`p`,{className:`px-2.5 py-1 text-xs text-danger`,role:`status`,children:I.chat.messageFeedbackUnavailable}):null,dt.length>0?(0,X.jsx)(ui,{asChild:!0,children:(0,X.jsxs)(`button`,{type:`button`,className:`flex h-9 w-full items-center gap-2 rounded-lg px-2.5 text-left text-xs text-fg-muted hover:bg-surface-hover hover:text-fg`,onClick:()=>mt(e=>!e),children:[(0,X.jsx)(Ho,{className:`size-4`,strokeWidth:1.75,"aria-hidden":!0}),I.chat.messageWhyThisAnswer]})}):null,S?(0,X.jsx)(ui,{asChild:!0,children:(0,X.jsxs)(`button`,{type:`button`,className:`flex h-9 w-full items-center gap-2 rounded-lg px-2.5 text-left text-xs text-fg-muted hover:bg-surface-hover hover:text-fg disabled:opacity-40`,onClick:At,disabled:!Ie||qe!==null,children:[Ge===`save-source-note`?(0,X.jsx)(H,{className:`size-4`,strokeWidth:1.75,"aria-hidden":!0}):(0,X.jsx)(Te,{className:`size-4`,strokeWidth:1.75,"aria-hidden":!0}),Ge===`save-source-note`?I.chat.messageSavedToSourceNote:I.chat.messageSaveToSourceNote]})}):null,C?(0,X.jsx)(ui,{asChild:!0,children:(0,X.jsxs)(`button`,{type:`button`,className:`flex h-9 w-full items-center gap-2 rounded-lg px-2.5 text-left text-xs text-fg-muted hover:bg-surface-hover hover:text-fg disabled:opacity-40`,onClick:Mt,disabled:!Le&&!Ie||qe!==null,children:[Ge===`extract-task`?(0,X.jsx)(H,{className:`size-4`,strokeWidth:1.75,"aria-hidden":!0}):(0,X.jsx)(Je,{className:`size-4`,strokeWidth:1.75,"aria-hidden":!0}),Ge===`extract-task`?I.chat.messageTaskExtracted:I.chat.messageExtractTask]})}):null]})})]})]})}):null,Pe&&dt.length>0?(0,X.jsx)(Ev,{open:pt,onOpenChange:mt,items:dt,labels:{title:I.chat.messageWhyThisAnswer,hint:I.chat.messageWhyThisAnswerHint,close:I.chat.messageContextClose,itemsSummary:I.chat.messageContextItemsSummary,expandAll:I.chat.messageContextExpandAll,collapseAll:I.chat.messageContextCollapseAll,groupSummary:I.chat.messageContextGroupSummary,origins:I.chat.messageContextOrigins}}):null,Pe&&st?(0,X.jsxs)(`div`,{className:`mt-2 w-full max-w-xl rounded-xl border border-edge-subtle bg-surface-panel p-3`,children:[(0,X.jsx)(`p`,{className:`text-sm font-medium text-fg`,children:I.chat.messageFeedbackReasonTitle}),(0,X.jsx)(`p`,{className:`mt-0.5 text-xs text-fg-muted`,children:I.chat.messageFeedbackReasonHint}),(0,X.jsx)(`div`,{className:`mt-2 flex flex-wrap gap-2`,children:Mv.map(e=>(0,X.jsx)(`button`,{type:`button`,className:`rounded-lg border border-edge bg-surface-panel px-2.5 py-1.5 text-xs font-medium text-fg-muted transition-colors hover:bg-surface-hover hover:text-fg`,disabled:rt,onClick:()=>Ft(`not_helpful`,e),children:I.chat.messageFeedbackReasons[e]},e))})]}):null,Pe&&Qe===`not_helpful`&<?(0,X.jsxs)(`button`,{type:`button`,className:`mt-2 inline-flex w-fit items-center gap-1.5 rounded-lg bg-accent-soft px-3 py-1.5 text-xs font-medium text-accent-fg hover:bg-accent-soft/80`,onClick:It,children:[(0,X.jsx)(jt,{className:`size-3.5`,strokeWidth:1.75,"aria-hidden":!0}),I.chat.messageFeedbackRepair]}):null]}),V&&m&&f!=null&&!T?(0,X.jsx)(Ta,{open:ht,title:I.chat.userMessageDeleteConfirmTitle,description:I.chat.userMessageDeleteConfirm,confirmLabel:I.chat.userMessageDeleteOk,cancelLabel:I.chat.userMessageDeleteCancel,destructive:!0,onConfirm:zt,onCancel:Bt}):null,(0,X.jsx)(Ur,{open:_t!==null,attachment:_t,images:(M.content??[]).flatMap((e,t)=>{if(e.type!==`image`)return[];let n=tm(e,t);return n?[n]:[]}),onAttachmentChange:vt,authToken:r,conversationId:i,onClose:()=>vt(null)})]})})}),Lv=(0,Z.memo)(function(e){let t=(0,Y.c)(3),n=_m(e.conversationId,e.message.renderKey)??e.message,r;return t[0]!==n||t[1]!==e?(r=(0,X.jsx)(Iv,{...e,message:n}),t[0]=n,t[1]=e,t[2]=r):r=t[2],r});function Rv(e,t){return e.renderKey??`${e.timestamp??`n`}-${t}`}var zv=new Map;function Bv(e,t=`time`){let n=`${e??`default`}:${t}`,r=zv.get(n);return r||(r=new Intl.DateTimeFormat(e===`zh`?`zh-CN`:e,t===`time`?{hour:`2-digit`,minute:`2-digit`}:{month:`short`,day:`numeric`,year:t===`year`?`numeric`:void 0}),zv.set(n,r)),r}function Vv(e){return e?Bv().format(e):``}var Hv=1800*1e3;function Uv(e,t){return e.getFullYear()===t.getFullYear()&&e.getMonth()===t.getMonth()&&e.getDate()===t.getDate()}function Wv(e,t){return e?!t||!Uv(new Date(e),new Date(t))||e-t>=Hv:!1}function Gv(e,t,n){let r=new Date(e),i=new Date(t),a=new Date(i);return a.setDate(i.getDate()-1),`${Uv(r,i)?n===`zh`?`今天`:`Today`:Uv(r,a)?n===`zh`?`昨天`:`Yesterday`:Bv(n,r.getFullYear()===i.getFullYear()?`date`:`year`).format(r)} ${Bv(n).format(r)}`}var Kv=0,qv=1,Jv=2,Yv=4;function Xv(e){return()=>e}function Zv(e){e()}function Qv(e,t){return n=>e(t(n))}function $v(e,t){return()=>e(t)}function ey(e,t){return n=>e(t,n)}function ty(e){return e!==void 0}function ny(...e){return()=>{e.map(Zv)}}function ry(){}function iy(e,t){return t(e),e}function ay(e,t){return t(e)}function oy(...e){return e}function sy(e,t){return e(qv,t)}function cy(e,t){e(Kv,t)}function ly(e){e(Jv)}function uy(e){return e(Yv)}function dy(e,t){return sy(e,ey(t,Kv))}function fy(e,t){let n=e(qv,e=>{n(),t(e)});return n}function py(e){let t,n;return r=>i=>{t=i,n&&clearTimeout(n),n=setTimeout(()=>{r(t)},e)}}function my(e,t){return e===t}function hy(e=my){let t;return n=>r=>{e(t,r)||(t=r,n(r))}}function gy(e){return t=>n=>{e(n)&&t(n)}}function _y(e){return t=>Qv(t,e)}function vy(e){return t=>()=>{t(e)}}function Q(e,...t){let n=Cy(...t);return((t,r)=>{switch(t){case Jv:ly(e);return;case qv:return sy(e,n(r))}})}function yy(e,t){return n=>r=>{n(t=e(t,r))}}function by(e){return t=>n=>{e>0?e--:t(n)}}function xy(e){let t=null,n;return r=>i=>{t=i,!n&&(n=setTimeout(()=>{n=void 0,r(t)},e))}}function Sy(...e){let t=Array.from({length:e.length}),n=0,r=null,i=2**e.length-1;return e.forEach((e,a)=>{let o=2**a;sy(e,e=>{let s=n;n|=o,t[a]=e,s!==i&&n===i&&r&&(r(),r=null)})}),e=>a=>{let o=()=>{e([a].concat(t))};n===i?o():r=o}}function Cy(...e){return t=>e.reduceRight(ay,t)}function wy(e){let t,n,r=()=>t?.();return function(i,a){switch(i){case qv:return a?n===a?void 0:(r(),n=a,t=sy(e,a),t):(r(),ry);case Jv:r(),n=null;return}}}function $(e){let t=e,n=Ey();return((e,r)=>{switch(e){case Kv:t=r;break;case qv:r(t);break;case Yv:return t}return n(e,r)})}function Ty(e,t){return iy($(t),t=>dy(e,t))}function Ey(){let e=[];return((t,n)=>{switch(t){case Kv:e.slice().forEach(e=>{e(n)});return;case Jv:e.splice(0);return;case qv:return e.push(n),()=>{let t=e.indexOf(n);t>-1&&e.splice(t,1)}}})}function Dy(e){return iy(Ey(),t=>dy(e,t))}var Oy={singleton:!0};function ky(e,t=[],n=Oy){let{singleton:r}=n;return{constructor:e,dependencies:t,id:Ay(),singleton:r}}var Ay=()=>Symbol(`id`);function jy(e){let t=new Map,n=({constructor:e,dependencies:r,id:i,singleton:a})=>{if(a&&t.has(i))return t.get(i);let o=e(r.map(e=>n(e)));return a&&t.set(i,o),o};return n(e)}function My(...e){let t=Ey(),n=Array.from({length:e.length}),r=0,i=2**e.length-1;return e.forEach((e,a)=>{let o=2**a;sy(e,e=>{n[a]=e,r|=o,r===i&&cy(t,n)})}),function(e,a){switch(e){case Jv:ly(t);return;case qv:return r===i&&a(n),sy(t,a)}}}function Ny(e,t=my){return Q(e,hy(t))}function Py(...e){return function(t,n){switch(t){case Jv:return;case qv:return ny(...e.map(e=>sy(e,n)))}}}var Fy={DEBUG:0,INFO:1,WARN:2,ERROR:3},Iy={[Fy.DEBUG]:`debug`,[Fy.ERROR]:`error`,[Fy.INFO]:`log`,[Fy.WARN]:`warn`},Ly=()=>typeof globalThis>`u`?window:globalThis,Ry=ky(()=>{let e=$(Fy.ERROR);return{log:$((t,n,r=Fy.INFO)=>{r>=(Ly().VIRTUOSO_LOG_LEVEL??uy(e))&&console[Iy[r]](`%creact-virtuoso: %c%s %o`,`color: #0253b3; font-weight: bold`,`color: initial`,t,n)}),logLevel:e}},[],{singleton:!0});function zy(e){return`self`in e?e.document.documentElement:e}function By(e){let t=zy(e);return t.ownerDocument.defaultView.getComputedStyle(t).direction===`rtl`}function Vy(e,t){return By(e)?-t:t}function Hy(e,t){return By(e)?-t:t}function Uy(e,t,n){return Wy(e,t,n).callbackRef}function Wy(e,t,n){let r=Z.useRef(null),i=e=>{},a=Z.useMemo(()=>typeof ResizeObserver<`u`?new ResizeObserver(t=>{let r=()=>{let n=t[0].target;n.offsetParent!==null&&e(n)};n?r():requestAnimationFrame(r)}):null,[e,n]);return i=e=>{e&&t?(a?.observe(e),r.current=e):(r.current&&a?.unobserve(r.current),r.current=null)},{callbackRef:i,ref:r}}function Gy(e,t,n,r,i,a,o,s,c){return Wy(Z.useCallback(n=>{let c=Ky(n.children,t,s?`offsetWidth`:`offsetHeight`,i),l=n.parentElement;for(;l.dataset.virtuosoScroller===void 0;)l=l.parentElement;let u=l.lastElementChild?.dataset.viewportType===`window`,d;u&&(d=l.ownerDocument.defaultView);let f=o?s?o.scrollWidth:o.scrollHeight:u?s?d.document.documentElement.scrollWidth:d.document.documentElement.scrollHeight:s?l.scrollWidth:l.scrollHeight,p=o?s?o.offsetWidth:o.offsetHeight:u?s?d.innerWidth:d.innerHeight:s?l.offsetWidth:l.offsetHeight,m=o?s?Vy(o,o.scrollLeft):o.scrollTop:u?s?Vy(d,d.scrollX||d.document.documentElement.scrollLeft):d.scrollY||d.document.documentElement.scrollTop:s?Vy(l,l.scrollLeft):l.scrollTop;r({scrollHeight:f,scrollTop:Math.max(m,0),viewportHeight:p}),a?.(s?qy(`column-gap`,getComputedStyle(n).columnGap,i):qy(`row-gap`,getComputedStyle(n).rowGap,i)),c!==null&&e(c)},[e,t,i,a,o,r,s]),n,c)}function Ky(e,t,n,r){let i=e.length;if(i===0)return null;let a=[];for(let o=0;o<i;o++){let i=e.item(o);if(i.dataset.index===void 0)continue;let s=parseInt(i.dataset.index,10),c=parseFloat(i.dataset.knownSize),l=t(i,n);if(l===0&&r(`Zero-sized element, this should not happen`,{child:i},Fy.ERROR),l===c)continue;let u=a[a.length-1];a.length===0||u.size!==l||u.endIndex!==s-1?a.push({endIndex:s,size:l,startIndex:s}):a[a.length-1].endIndex++}return a}function qy(e,t,n){return t!==`normal`&&t?.endsWith(`px`)!==!0&&n(`${e} was not resolved to pixel value correctly`,t,Fy.WARN),t===`normal`?0:parseInt(t??`0`,10)}var Jy=typeof document>`u`?Z.useEffect:Z.useLayoutEffect;function Yy(e,t,n){let r=Z.useRef(null),i=Z.useCallback(n=>{if(!n?.offsetParent)return;let i=n.getBoundingClientRect(),a=i.width,s,c;if(t){let e=t.getBoundingClientRect(),n=i.top-e.top;c=e.height-Math.max(0,n),s=n+t.scrollTop}else{let e=o.current.ownerDocument.defaultView;c=e.innerHeight-Math.max(0,i.top),s=i.top+e.scrollY}r.current={listHeight:i.height,offsetTop:s,visibleHeight:c,visibleWidth:a},e(r.current)},[e,t]),{callbackRef:a,ref:o}=Wy(i,!0,n),s=Z.useCallback(()=>{i(o.current)},[i,o]);return Z.useEffect(()=>{if(t){t.addEventListener(`scroll`,s);let e=new ResizeObserver(()=>{requestAnimationFrame(s)});return e.observe(t),()=>{t.removeEventListener(`scroll`,s),e.unobserve(t)}}let e=o.current?.ownerDocument.defaultView;return e?.addEventListener(`scroll`,s),e?.addEventListener(`resize`,s),()=>{e?.removeEventListener(`scroll`,s),e?.removeEventListener(`resize`,s)}},[s,t,o]),a}var Xy=ky(()=>{let e=Ey(),t=Ey(),n=$(0),r=Ey(),i=Ey(),a=$(0),o=Ey(),s=Ey(),c=$(0),l=$(0),u=$(0),d=$(0),f=Ey(),p=Ey(),m=$(!1),h=$(!1),g=$(!1);return dy(Q(e,_y(({scrollTop:e})=>e)),t),dy(Q(e,_y(({scrollHeight:e})=>e)),s),dy(t,a),{deviation:n,deviationCommitted:r,fixedFooterHeight:u,fixedHeaderHeight:l,footerHeight:d,headerHeight:c,horizontalDirection:h,scrollBy:p,scrollContainerState:e,scrollHeight:s,scrollingInProgress:m,scrollTo:f,scrollTop:t,skipAnimationFrameInResizeObserver:g,smoothScrollTargetReached:i,statefulScrollTop:a,viewportHeight:o}},[],{singleton:!0}),Zy={lvl:0};function Qy(e,t){let n=e.length;if(n===0)return[];let{index:r,value:i}=t(e[0]),a=[];for(let o=1;o<n;o++){let{index:n,value:s}=t(e[o]);a.push({end:n-1,start:r,value:i}),r=n,i=s}return a.push({end:1/0,start:r,value:i}),a}function $y(e){return e===Zy}function eb(e,t){if(!$y(e))return t===e.k?e.v:t<e.k?eb(e.l,t):eb(e.r,t)}function tb(e,t,n=`k`){if($y(e))return[-1/0,void 0];if(Number(e[n])===t)return[e.k,e.v];if(Number(e[n])<t){let r=tb(e.r,t,n);return r[0]===-1/0?[e.k,e.v]:r}return tb(e.l,t,n)}function nb(e,t,n){return $y(e)?pb(t,n,1):t===e.k?lb(e,{k:t,v:n}):t<e.k?mb(lb(e,{l:nb(e.l,t,n)})):mb(lb(e,{r:nb(e.r,t,n)}))}function rb(){return Zy}function ib(e,t,n){if($y(e))return[];let r=tb(e,t)[0];return _b(sb(e,r,n))}function ab(e,t){if($y(e))return Zy;let{k:n,l:r,r:i}=e;if(t===n){if($y(r))return i;if($y(i))return r;let[t,n]=fb(r);return cb(lb(e,{k:t,l:ub(r),v:n}))}return cb(t<n?lb(e,{l:ab(r,t)}):lb(e,{r:ab(i,t)}))}function ob(e){return $y(e)?[]:[...ob(e.l),{k:e.k,v:e.v},...ob(e.r)]}function sb(e,t,n){if($y(e))return[];let{k:r,l:i,r:a,v:o}=e,s=[];return r>t&&(s=s.concat(sb(i,t,n))),r>=t&&r<=n&&s.push({k:r,v:o}),r<=n&&(s=s.concat(sb(a,t,n))),s}function cb(e){let{l:t,lvl:n,r}=e;if(r.lvl>=n-1&&t.lvl>=n-1)return e;if(n>r.lvl+1){if(db(t))return hb(lb(e,{lvl:n-1}));if(!$y(t)&&!$y(t.r))return lb(t.r,{l:lb(t,{r:t.r.l}),lvl:n,r:lb(e,{l:t.r.r,lvl:n-1})});throw Error(`Unexpected empty nodes`)}if(db(e))return gb(lb(e,{lvl:n-1}));if(!$y(r)&&!$y(r.l)){let t=r.l,i=db(t)?r.lvl-1:r.lvl;return lb(t,{l:lb(e,{lvl:n-1,r:t.l}),lvl:t.lvl+1,r:gb(lb(r,{l:t.r,lvl:i}))})}throw Error(`Unexpected empty nodes`)}function lb(e,t){return pb(t.k===void 0?e.k:t.k,t.v===void 0?e.v:t.v,t.lvl===void 0?e.lvl:t.lvl,t.l===void 0?e.l:t.l,t.r===void 0?e.r:t.r)}function ub(e){return $y(e.r)?e.l:cb(lb(e,{r:ub(e.r)}))}function db(e){return $y(e)||e.lvl>e.r.lvl}function fb(e){return $y(e.r)?[e.k,e.v]:fb(e.r)}function pb(e,t,n,r=Zy,i=Zy){return{k:e,l:r,lvl:n,r:i,v:t}}function mb(e){return gb(hb(e))}function hb(e){let{l:t}=e;return!$y(t)&&t.lvl===e.lvl?lb(t,{r:lb(e,{l:t.r})}):e}function gb(e){let{lvl:t,r:n}=e;return!$y(n)&&!$y(n.r)&&n.lvl===t&&n.r.lvl===t?lb(n,{l:lb(e,{r:n.l}),lvl:t+1}):e}function _b(e){return Qy(e,({k:e,v:t})=>({index:e,value:t}))}function vb(e,t){return!!(e&&e.startIndex===t.startIndex&&e.endIndex===t.endIndex)}function yb(e,t){return!!(e&&e[0]===t[0]&&e[1]===t[1])}var bb=ky(()=>({recalcInProgress:$(!1)}),[],{singleton:!0});function xb(e,t,n){return e[Sb(e,t,n)]}function Sb(e,t,n,r=0){let i=e.length-1;for(;r<=i;){let a=Math.floor((r+i)/2),o=e[a],s=n(o,t);if(s===0)return a;if(s===-1){if(i-r<2)return a-1;i=a-1}else{if(i===r)return a;r=a+1}}throw Error(`Failed binary finding record in array - ${e.join(`,`)}, searched for ${t}`)}function Cb(e,t,n,r){let i=Sb(e,t,r),a=Sb(e,n,r,i);return e.slice(i,a+1)}function wb(e,t){return Math.round(e.getBoundingClientRect()[t])}function Tb(e){return!$y(e.groupOffsetTree)}function Eb({index:e},t){return t===e?0:t<e?-1:1}function Db(){return{groupIndices:[],groupOffsetTree:rb(),lastIndex:0,lastOffset:0,lastSize:0,offsetTree:[],sizeTree:rb()}}function Ob(e,t){let n=$y(e)?0:1/0;for(let r of t){let{endIndex:t,size:i,startIndex:a}=r;if(n=Math.min(n,a),$y(e)){e=nb(e,0,i);continue}let o=ib(e,a-1,t+1);if(o.some(Bb(r)))continue;let s=!1,c=!1;for(let{end:n,start:r,value:a}of o)s?(t>=r||i===a)&&(e=ab(e,r)):(c=a!==i,s=!0),n>t&&t>=r&&a!==i&&(e=nb(e,t+1,a));c&&(e=nb(e,a,i))}return[e,n]}function kb(e){return e.groupIndex!==void 0}function Ab({offset:e},t){return t===e?0:t<e?-1:1}function jb(e,t,n){if(t.length===0)return 0;let{index:r,offset:i,size:a}=xb(t,e,Eb),o=e-r,s=a*o+(o-1)*n+i;return s>0?s+n:s}function Mb(e,t){if(!Tb(t))return e;let n=0;for(;t.groupIndices[n]<=e+n;)n++;return e+n}function Nb(e,t,n){if(kb(e))return t.groupIndices[e.groupIndex]+1;let r=Mb(e.index===`LAST`?n:e.index,t);return r=Math.max(0,Math.min(n,r)),r}function Pb(e,t,n,r=0){return r>0&&(t=Math.max(t,xb(e,r,Eb).offset)),Qy(Cb(e,t,n,Ab),zb)}function Fb(e,[t,n,r,i]){t.length>0&&r(`received item sizes`,t,Fy.DEBUG);let a=e.sizeTree,o=a,s=0;if(n.length>0&&$y(a)&&t.length===2){let e=t[0].size,r=t[1].size;o=n.reduce((t,n)=>nb(nb(t,n,e),n+1,r),o)}else[o,s]=Ob(o,t);if(o===a)return e;let{lastIndex:c,lastOffset:l,lastSize:u,offsetTree:d}=Rb(e.offsetTree,s,o,i);return{groupIndices:n,groupOffsetTree:n.reduce((e,t)=>nb(e,t,jb(t,d,i)),rb()),lastIndex:c,lastOffset:l,lastSize:u,offsetTree:d,sizeTree:o}}function Ib(e){return ob(e).map(({k:e,v:t},n,r)=>{let i=r[n+1];return{endIndex:i===void 0?1/0:i.k-1,size:t,startIndex:e}})}function Lb(e,t){let n=0,r=0;for(;n<e;)n+=t[r+1]-t[r]-1,r++;return r-(n===e?0:1)}function Rb(e,t,n,r){let i=e,a=0,o=0,s=0,c=0;if(t===0)i=[];else{c=Sb(i,t-1,Eb),s=i[c].offset;let e=tb(n,t-1);a=e[0],o=e[1],i.length&&i[c].size===tb(n,t)[1]&&--c,i=i.slice(0,c+1)}for(let{start:e,value:c}of ib(n,t,1/0)){let t=e-a,n=t*o+s+t*r;i.push({index:e,offset:n,size:c}),a=e,s=n,o=c}return{lastIndex:a,lastOffset:s,lastSize:o,offsetTree:i}}function zb(e){return{index:e.index,value:e}}function Bb(e){let{endIndex:t,size:n,startIndex:r}=e;return e=>e.start===r&&(e.end===t||e.end===1/0)&&e.value===n}var Vb={offsetHeight:`height`,offsetWidth:`width`},Hb=ky(([{log:e},{recalcInProgress:t}])=>{let n=Ey(),r=Ey(),i=Ty(r,0),a=Ey(),o=Ey(),s=$(0),c=$([]),l=$(void 0),u=$(void 0),d=$(void 0),f=$(void 0),p=$((e,t)=>wb(e,Vb[t])),m=$(void 0),h=$(0),g=Db(),_=Ty(Q(n,Sy(c,e,h),yy(Fb,g),hy()),g),v=Ty(Q(c,hy(),yy((e,t)=>({current:t,prev:e.current}),{current:[],prev:[]}),_y(({prev:e})=>e)),[]);dy(Q(c,gy(e=>e.length>0),Sy(_,h),_y(([e,t,n])=>{let r=e.reduce((e,r,i)=>nb(e,r,jb(r,t.offsetTree,n)||i),rb());return{...t,groupIndices:e,groupOffsetTree:r}})),_),dy(Q(r,Sy(_),gy(([e,{lastIndex:t}])=>e<t),_y(([e,{lastIndex:t,lastSize:n}])=>[{endIndex:t,size:n,startIndex:e}])),n),dy(l,u);let y=Ty(Q(l,_y(e=>e===void 0)),!0);dy(Q(u,gy(e=>e!==void 0&&$y(uy(_).sizeTree)),_y(e=>{let t=uy(d),n=uy(c).length>0;return t!==void 0&&t!==0?n?[{endIndex:0,size:t,startIndex:0},{endIndex:1,size:e,startIndex:1}]:[]:[{endIndex:0,size:e,startIndex:0}]})),n),dy(Q(f,gy(e=>e!==void 0&&e.length>0&&$y(uy(_).sizeTree)),_y(e=>{let t=[],n=e[0],r=0;for(let i=1;i<e.length;i++){let a=e[i];a!==n&&(t.push({endIndex:i-1,size:n,startIndex:r}),n=a,r=i)}return t.push({endIndex:e.length-1,size:n,startIndex:r}),t})),n),dy(Q(c,Sy(d,u),gy(([,e,t])=>e!==void 0&&t!==void 0),_y(([e,t,n])=>{let r=[];for(let i=0;i<e.length;i++){let a=e[i],o=e[i+1];r.push({startIndex:a,endIndex:a,size:t}),o!==void 0&&r.push({startIndex:a+1,endIndex:o-1,size:n})}return r})),n);let b=Dy(Q(n,Sy(_),yy(({sizes:e},[t,n])=>({changed:n!==e,sizes:n}),{changed:!1,sizes:g}),_y(e=>e.changed)));sy(Q(s,yy((e,t)=>({diff:e.prev-t,prev:t}),{diff:0,prev:0}),_y(e=>e.diff)),e=>{let{groupIndices:n}=uy(_);if(e>0)cy(t,!0),cy(a,e+Lb(e,n));else if(e<0){let t=uy(v);t.length>0&&(e-=Lb(-e,t)),cy(o,e)}}),sy(Q(s,Sy(e)),([e,t])=>{e<0&&t("`firstItemIndex` prop should not be set to less than zero. If you don't know the total count, just use a very high value",{firstItemIndex:s},Fy.ERROR)});let x=Dy(a);dy(Q(a,Sy(_),_y(([e,t])=>{let n=t.groupIndices.length>0,r=[],i=t.lastSize;if(n){let n=eb(t.sizeTree,0),a=0,o=0;for(;a<e;){let e=t.groupIndices[o],s=t.groupIndices.length===o+1?1/0:t.groupIndices[o+1]-e-1;r.push({endIndex:e,size:n,startIndex:e}),r.push({endIndex:e+1+s-1,size:i,startIndex:e+1}),o++,a+=s+1}let s=ob(t.sizeTree);return a!==e&&s.shift(),s.reduce((t,{k:n,v:r})=>{let i=t.ranges;return t.prevSize!==0&&(i=[...t.ranges,{endIndex:n+e-1,size:t.prevSize,startIndex:t.prevIndex}]),{prevIndex:n+e,prevSize:r,ranges:i}},{prevIndex:e,prevSize:0,ranges:r}).ranges}return ob(t.sizeTree).reduce((t,{k:n,v:r})=>({prevIndex:n+e,prevSize:r,ranges:[...t.ranges,{endIndex:n+e-1,size:t.prevSize,startIndex:t.prevIndex}]}),{prevIndex:0,prevSize:i,ranges:[]}).ranges})),n);let S=Dy(Q(o,Sy(_,h),_y(([e,{offsetTree:t},n])=>jb(-e,t,n))));return dy(Q(o,Sy(_,h),_y(([e,t,n])=>{if(t.groupIndices.length>0){if($y(t.sizeTree))return t;let r=rb(),i=uy(v),a=0,o=0,s=0;for(;a<-e;){s=i[o];let e=i[o+1]-s-1;o++,a+=e+1}if(r=ob(t.sizeTree).reduce((t,{k:n,v:r})=>nb(t,Math.max(0,n+e),r),r),a!==-e){let n=eb(t.sizeTree,s);r=nb(r,0,n);let i=tb(t.sizeTree,-e+1)[1];r=nb(r,1,i)}return{...t,sizeTree:r,...Rb(t.offsetTree,0,r,n)}}let r=ob(t.sizeTree).reduce((t,{k:n,v:r})=>nb(t,Math.max(0,n+e),r),rb());return{...t,sizeTree:r,...Rb(t.offsetTree,0,r,n)}})),_),{beforeUnshiftWith:x,data:m,defaultItemSize:u,firstItemIndex:s,fixedItemSize:l,fixedGroupSize:d,gap:h,groupIndices:c,heightEstimates:f,itemSize:p,listRefresh:b,shiftWith:o,shiftWithOffset:S,sizeRanges:n,sizes:_,statefulTotalCount:i,totalCount:r,trackItemSizes:y,unshiftWith:a}},oy(Ry,bb),{singleton:!0});function Ub(e){return e.reduce((e,t)=>(e.groupIndices.push(e.totalCount),e.totalCount+=t+1,e),{groupIndices:[],totalCount:0})}var Wb=ky(([{groupIndices:e,sizes:t,totalCount:n},{headerHeight:r,scrollTop:i}])=>{let a=Ey(),o=Ey(),s=Dy(Q(a,_y(Ub)));return dy(Q(s,_y(e=>e.totalCount)),n),dy(Q(s,_y(e=>e.groupIndices)),e),dy(Q(My(i,t,r),gy(([e,t])=>Tb(t)),_y(([e,t,n])=>tb(t.groupOffsetTree,Math.max(e-n,0),`v`)[0]),hy(),_y(e=>[e])),o),{groupCounts:a,topItemsIndexes:o}},oy(Hb,Xy)),Gb=ky(([{log:e}])=>{let t=$(!1),n=Dy(Q(t,gy(e=>e),hy()));return sy(t,t=>{t&&uy(e)(`props updated`,{},Fy.DEBUG)}),{didMount:n,propsReady:t}},oy(Ry),{singleton:!0}),Kb=typeof document<`u`&&`scrollBehavior`in document.documentElement.style;function qb(e){let t=typeof e==`number`?{index:e}:{...e};return t.align||=`start`,(!t.behavior||!Kb)&&(t.behavior=`auto`),t.offset===void 0&&(t.offset=0),t}var Jb=ky(([{gap:e,listRefresh:t,sizes:n,totalCount:r},{fixedFooterHeight:i,fixedHeaderHeight:a,footerHeight:o,headerHeight:s,scrollingInProgress:c,scrollTo:l,smoothScrollTargetReached:u,viewportHeight:d},{log:f}])=>{let p=Ey(),m=Ey(),h=$(0),g=null,_=null,v=null;function y(){g!==null&&(g(),g=null),v!==null&&(v(),v=null),_&&=(clearTimeout(_),null),cy(c,!1)}return dy(Q(p,Sy(n,d,r,h,s,o,f),Sy(e,a,i),_y(([[e,n,r,i,a,o,s,l],d,f,h])=>{let b=qb(e),{align:x,behavior:S,offset:C}=b,w=i-1,T=Nb(b,n,w),E=jb(T,n.offsetTree,d)+o;x===`end`?(E+=f+tb(n.sizeTree,T)[1]-r+h,T===w&&(E+=s)):x===`center`?E+=(f+tb(n.sizeTree,T)[1]-r+h)/2:E-=a,C!==void 0&&C!==0&&(E+=C);let D=t=>{y(),t?(l(`retrying to scroll to`,{location:e},Fy.DEBUG),cy(p,e)):(cy(m,!0),l(`list did not change, scroll successful`,{},Fy.DEBUG))};if(y(),S===`smooth`){let e=!1;v=sy(t,t=>{e||=t}),g=fy(u,()=>{D(e)})}else g=fy(Q(t,Yb(150)),D);return _=setTimeout(()=>{y()},1200),cy(c,!0),l(`scrolling from index to`,{behavior:S,index:T,top:E},Fy.DEBUG),{behavior:S,top:E}})),l),{scrollTargetReached:m,scrollToIndex:p,topListHeight:h}},oy(Hb,Xy,Ry),{singleton:!0});function Yb(e){return t=>{let n=setTimeout(()=>{t(!1)},e);return e=>{e&&(t(!0),clearTimeout(n))}}}function Xb(e,t){e===0?t():requestAnimationFrame(()=>{Xb(e-1,t)})}function Zb(e,t){if(e===void 0)return 0;let n=t-1,r=typeof e==`number`?e:e.index===`LAST`?n:e.index;return Math.max(0,Math.min(r,n))}function Qb(e){return e===void 0?!0:typeof e==`number`?e===0:e.index===0&&(e.align===void 0||e.align===`start`)&&(e.offset===void 0||e.offset===0)}var $b=ky(([{defaultItemSize:e,listRefresh:t,sizes:n},{scrollTop:r},{scrollTargetReached:i,scrollToIndex:a},{didMount:o}])=>{let s=$(!0),c=$(0),l=$(!0);return dy(Q(o,Sy(c),gy(([e,t])=>!Qb(t)),vy(!1)),s),dy(Q(o,Sy(c),gy(([e,t])=>!Qb(t)),vy(!1)),l),sy(Q(My(t,o),Sy(s,n,e,l),gy(([[,e],t,{sizeTree:n},r,i])=>e&&(!$y(n)||ty(r))&&!t&&!i),Sy(c)),([,e])=>{if(e===void 0){cy(s,!0),cy(l,!0);return}fy(i,()=>{cy(l,!0)}),Xb(4,()=>{fy(r,()=>{cy(s,!0)}),cy(a,e)})}),{initialItemFinalLocationReached:l,initialTopMostItemIndex:c,scrolledToInitialItem:s}},oy(Hb,Xy,Jb,Gb),{singleton:!0});function ex(e,t){return Math.abs(e-t)<1.01}var tx=`up`,nx=`down`,rx=`none`,ix={atBottom:!1,notAtBottomBecause:`NOT_SHOWING_LAST_ITEM`,state:{offsetBottom:0,scrollHeight:0,scrollTop:0,viewportHeight:0}},ax=0,ox=ky(([{footerHeight:e,headerHeight:t,scrollBy:n,scrollContainerState:r,scrollTop:i,viewportHeight:a}])=>{let o=$(!1),s=$(!0),c=Ey(),l=Ey(),u=$(4),d=$(ax),f=Ty(Q(Py(Q(Ny(i),by(1),vy(!0)),Q(Ny(i),by(1),vy(!1),py(100))),hy()),!1),p=Ty(Q(Py(Q(n,vy(!0)),Q(n,vy(!1),py(200))),hy()),!1);dy(Q(My(Ny(i),Ny(d)),_y(([e,t])=>e<=t),hy()),s),dy(Q(s,xy(50)),l);let m=Dy(Q(My(r,Ny(a),Ny(t),Ny(e),Ny(u)),yy((e,[{scrollHeight:t,scrollTop:n},r,i,a,o])=>{let s=n+r-t>-o,c={scrollHeight:t,scrollTop:n,viewportHeight:r};if(s){let t,r;return n>e.state.scrollTop?(t=`SCROLLED_DOWN`,r=e.state.scrollTop-n):(t=`SIZE_DECREASED`,r=e.state.scrollTop-n||e.scrollTopDelta),{atBottom:!0,atBottomBecause:t,scrollTopDelta:r,state:c}}let l;return l=c.scrollHeight>e.state.scrollHeight?`SIZE_INCREASED`:r<e.state.viewportHeight?`VIEWPORT_HEIGHT_DECREASING`:n<e.state.scrollTop?`SCROLLING_UPWARDS`:`NOT_FULLY_SCROLLED_TO_LAST_ITEM_BOTTOM`,{atBottom:!1,notAtBottomBecause:l,state:c}},ix),hy((e,t)=>e!==void 0&&e.atBottom===t.atBottom))),h=Ty(Q(r,yy((e,{scrollHeight:t,scrollTop:n,viewportHeight:r})=>{if(!ex(e.scrollHeight,t)){let i=t-(n+r)<1;return e.scrollTop!==n&&i?{changed:!0,jump:e.scrollTop-n,scrollHeight:t,scrollTop:n}:{changed:!0,jump:0,scrollHeight:t,scrollTop:n}}return{changed:!1,jump:0,scrollHeight:t,scrollTop:n}},{changed:!1,jump:0,scrollHeight:0,scrollTop:0}),gy(e=>e.changed),_y(e=>e.jump)),0);dy(Q(m,_y(e=>e.atBottom)),o),dy(Q(o,xy(50)),c);let g=$(nx);dy(Q(r,_y(({scrollTop:e})=>e),hy(),yy((e,t)=>uy(p)?{direction:e.direction,prevScrollTop:t}:{direction:t<e.prevScrollTop?tx:nx,prevScrollTop:t},{direction:nx,prevScrollTop:0}),_y(e=>e.direction)),g),dy(Q(r,xy(50),vy(rx)),g);let _=$(0);return dy(Q(f,gy(e=>!e),vy(0)),_),dy(Q(i,xy(100),Sy(f),gy(([e,t])=>t),yy(([e,t],[n])=>[t,n],[0,0]),_y(([e,t])=>t-e)),_),{atBottomState:m,atBottomStateChange:c,atBottomThreshold:u,atTopStateChange:l,atTopThreshold:d,isAtBottom:o,isAtTop:s,isScrolling:f,lastJumpDueToItemResize:h,scrollDirection:g,scrollVelocity:_}},oy(Xy)),sx=`top`,cx=`bottom`,lx=`none`;function ux(e,t,n){return typeof e==`number`?n===tx&&t===sx||n===nx&&t===cx?e:0:n===tx?t===sx?e.main:e.reverse:t===cx?e.main:e.reverse}function dx(e,t){return typeof e==`number`?e:e[t]??0}var fx=ky(([{deviation:e,fixedHeaderHeight:t,headerHeight:n,scrollTop:r,viewportHeight:i}])=>{let a=Ey(),o=$(0),s=$(0),c=$(0);return{increaseViewportBy:s,listBoundary:a,overscan:c,topListHeight:o,visibleRange:Ty(Q(My(Ny(r),Ny(i),Ny(n),Ny(a,yb),Ny(c),Ny(o),Ny(t),Ny(e),Ny(s)),_y(([e,t,n,[r,i],a,o,s,c,l])=>{let u=e-c,d=o+s,f=Math.max(n-u,0),p=lx,m=dx(l,sx),h=dx(l,cx);return r-=c,r+=n+s,i+=n+s,i-=c,r>e+d-m&&(p=tx),i<e-f+t+h&&(p=nx),p===lx?null:[Math.max(u-n-ux(a,sx,p)-m,0),u-f-s+t+ux(a,cx,p)+h]}),gy(e=>e!==null),hy(yb)),[0,0])}},oy(Xy),{singleton:!0});function px(e,t,n){if(Tb(t)){let r=Mb(e,t);return[{index:tb(t.groupOffsetTree,r)[0],offset:0,size:0},{data:n?.[0],index:r,offset:0,size:0}]}return[{data:n?.[0],index:e,offset:0,size:0}]}var mx={bottom:0,firstItemIndex:0,items:[],offsetBottom:0,offsetTop:0,top:0,topItems:[],topListHeight:0,totalCount:0};function hx(e,t,n,r,i,a){let{lastIndex:o,lastOffset:s,lastSize:c}=i,l=0,u=0;if(e.length>0){l=e[0].offset;let t=e[e.length-1];u=t.offset+t.size}let d=n-o,f=s+d*c+(d-1)*r,p=l,m=f-u;return{bottom:u,firstItemIndex:a,items:_x(e,i,a),offsetBottom:m,offsetTop:l,top:p,topItems:_x(t,i,a),topListHeight:t.reduce((e,t)=>t.size+e,0),totalCount:n}}function gx(e,t,n,r,i,a){let o=0;if(n.groupIndices.length>0)for(let t of n.groupIndices){if(t-o>=e)break;o++}let s=e+o,c=a!==void 0,l=a?.length??0,u=Zb(t,c?l:s),d=c?Math.max(0,Math.min(s,l-u)):s;return hx(Array.from({length:d}).map((e,t)=>({data:a?.[t+u],index:t+u,offset:0,size:0})),[],d,i,n,r)}function _x(e,t,n){if(e.length===0)return[];if(!Tb(t))return e.map(e=>({...e,index:e.index+n,originalIndex:e.index}));let r=e[0].index,i=e[e.length-1].index,a=[],o=ib(t.groupOffsetTree,r,i),s,c=0;for(let r of e){(!s||s.end<r.index)&&(s=o.shift(),c=t.groupIndices.indexOf(s.start));let e;e=r.index===s.start?{index:c,type:`group`}:{groupIndex:c,index:r.index-(c+1)+n},a.push({...e,data:r.data,offset:r.offset,originalIndex:r.index,size:r.size})}return a}function vx(e,t){return e===void 0?0:typeof e==`number`?e:e[t]??0}var yx=ky(([{data:e,firstItemIndex:t,gap:n,sizes:r,totalCount:i},a,{listBoundary:o,topListHeight:s,visibleRange:c},{initialTopMostItemIndex:l,scrolledToInitialItem:u},{topListHeight:d},f,{didMount:p},{recalcInProgress:m}])=>{let h=$([]),g=$(0),_=Ey(),v=$(0);dy(a.topItemsIndexes,h);let y=Ty(Q(My(p,m,Ny(c,yb),Ny(i),Ny(r),Ny(l),u,Ny(h),Ny(t),Ny(n),Ny(v),e,Ny(g)),gy(([e,t,,n,,,,,,,,r])=>{let i=r!==void 0&&r.length!==n;return e&&!t&&!i}),_y(([,,[e,t],n,r,i,a,o,s,c,l,u,d])=>{let f=r,{offsetTree:p,sizeTree:m}=f;if(n===0)return{...mx,totalCount:n};if(e===0&&t===0)return d===0?{...mx,totalCount:n}:gx(d,i,r,s,c,u);if($y(m))return d>0?null:hx(px(Zb(i,n),f,u),[],n,c,f,s);let h=[];if(o.length>0){let e=o[0],t=o[o.length-1],n=0;for(let r of ib(m,e,t)){let i=r.value,a=Math.max(r.start,e),o=Math.min(r.end,t);for(let e=a;e<=o;e++)h.push({data:u?.[e],index:e,offset:n,size:i}),n+=i}}if(!a)return hx([],h,n,c,f,s);let g=o.length>0?o[o.length-1]+1:0,_=Pb(p,e,t,g);if(_.length===0)return null;let v=n-1,y=iy([],n=>{for(let r of _){let i=r.value,a=i.offset,o=r.start,s=i.size;if(i.offset<e){o+=Math.floor((e-i.offset+c)/(s+c));let t=o-r.start;a+=t*s+t*c}o<g&&(a+=(g-o)*s,o=g);let l=Math.min(r.end,v);for(let e=o;e<=l&&!(a>=t);e++)n.push({data:u?.[e],index:e,offset:a,size:s}),a+=s+c}}),b=vx(l,sx),x=vx(l,cx);if(y.length>0&&(b>0||x>0)){let e=y[0],t=y[y.length-1];if(b>0&&e.index>g){let t=Math.min(b,e.index-g),n=[],r=e.offset;for(let i=e.index-1;i>=e.index-t;i--){let t=ib(m,i,i)[0]?.value??e.size;r-=t+c,n.unshift({data:u?.[i],index:i,offset:r,size:t})}y.unshift(...n)}if(x>0&&t.index<v){let e=Math.min(x,v-t.index),n=t.offset+t.size+c;for(let r=t.index+1;r<=t.index+e;r++){let e=ib(m,r,r)[0]?.value??t.size;y.push({data:u?.[r],index:r,offset:n,size:e}),n+=e+c}}}return hx(y,h,n,c,f,s)}),gy(e=>e!==null),hy()),mx);dy(Q(e,gy(ty),_y(e=>e?.length)),i),dy(Q(y,_y(e=>e.topListHeight)),d),dy(d,s),dy(Q(y,_y(e=>[e.top,e.bottom])),o),dy(Q(y,_y(e=>e.items)),_);let b=Dy(Q(y,gy(({items:e})=>e.length>0),Sy(i,e),gy(([{items:e},t])=>e[e.length-1].originalIndex===t-1),_y(([,e,t])=>[e-1,t]),hy(yb),_y(([e])=>e))),x=Dy(Q(y,xy(200),gy(({items:e,topItems:t})=>e.length>0&&e[0].originalIndex===t.length),_y(({items:e})=>e[0].index),hy()));return{endReached:b,initialItemCount:g,itemsRendered:_,listState:y,minOverscanItemCount:v,rangeChanged:Dy(Q(y,gy(({items:e})=>e.length>0),_y(({items:e})=>{let t=0,n=e.length-1;for(;e[t].type===`group`&&t<n;)t++;for(;e[n].type===`group`&&n>t;)n--;return{endIndex:e[n].index,startIndex:e[t].index}}),hy(vb))),startReached:x,topItemsIndexes:h,...f}},oy(Hb,Wb,fx,$b,Jb,ox,Gb,bb),{singleton:!0}),bx=ky(([{fixedFooterHeight:e,fixedHeaderHeight:t,footerHeight:n,headerHeight:r},{listState:i}])=>{let a=Ey(),o=Ty(Q(My(n,e,r,t,i),_y(([e,t,n,r,i])=>e+t+n+r+i.offsetBottom+i.bottom)),0);return dy(Ny(o),a),{totalListHeight:o,totalListHeightChanged:a}},oy(Xy,yx),{singleton:!0}),xx=ky(([{viewportHeight:e},{totalListHeight:t}])=>{let n=$(!1);return{alignToBottom:n,paddingTopAddition:Ty(Q(My(n,e,t),gy(([e])=>e),_y(([,e,t])=>Math.max(0,e-t)),xy(0),hy()),0)}},oy(Xy,bx),{singleton:!0}),Sx=ky(()=>({context:$(null)})),Cx=({itemBottom:e,itemTop:t,locationParams:{align:n,behavior:r,...i},viewportBottom:a,viewportTop:o})=>t<o?{...i,align:n??`start`,...r===void 0?{}:{behavior:r}}:e>a?{...i,align:n??`end`,...r===void 0?{}:{behavior:r}}:null,wx=ky(([{gap:e,sizes:t,totalCount:n},{fixedFooterHeight:r,fixedHeaderHeight:i,headerHeight:a,scrollingInProgress:o,scrollTop:s,viewportHeight:c},{scrollToIndex:l}])=>{let u=Ey();return dy(Q(u,Sy(t,c,n,a,i,r,s),Sy(e),_y(([[e,t,n,r,i,a,s,c],l])=>{let{calculateViewLocation:u=Cx,done:d,...f}=e,p=Nb(e,t,r-1),m=jb(p,t.offsetTree,l)+i+a,h=m+tb(t.sizeTree,p)[1],g=c+a,_=u({itemBottom:h,itemTop:m,locationParams:f,viewportBottom:c+n-s,viewportTop:g});return _===null?d?.():d&&fy(Q(o,gy(e=>!e),by(uy(o)?1:2)),d),_}),gy(e=>e!==null)),l),{scrollIntoView:u}},oy(Hb,Xy,Jb,yx,Ry),{singleton:!0});function Tx(e){return e===!1?!1:e===`smooth`?`smooth`:`auto`}var Ex=(e,t)=>typeof e==`function`?Tx(e(t)):t&&Tx(e),Dx=ky(([{listRefresh:e,totalCount:t,fixedItemSize:n,data:r},{atBottomState:i,isAtBottom:a},{scrollToIndex:o},{scrolledToInitialItem:s},{didMount:c,propsReady:l},{log:u},{scrollingInProgress:d},{context:f},{scrollIntoView:p}])=>{let m=$(!1),h=Ey(),g=null;function _(e){cy(o,{align:`end`,behavior:e,index:`LAST`})}sy(Q(My(Q(Ny(t),by(1)),c),Sy(Ny(m),a,s,d),_y(([[e,t],n,r,i,a])=>{let o=t&&i,s=`auto`;return o&&(s=Ex(n,r||a),o&&=s!==!1),{followOutputBehavior:s,shouldFollow:o,totalCount:e}}),gy(({shouldFollow:e})=>e)),({followOutputBehavior:t,totalCount:r})=>{g!==null&&(g(),g=null),uy(n)===void 0?g=fy(e,()=>{uy(u)(`following output to `,{totalCount:r},Fy.DEBUG),_(t),g=null}):requestAnimationFrame(()=>{uy(u)(`following output to `,{totalCount:r},Fy.DEBUG),_(t)})});function v(e){let t=fy(i,t=>{e&&!t.atBottom&&t.notAtBottomBecause===`SIZE_INCREASED`&&g===null&&(uy(u)(`scrolling to bottom due to increased size`,{},Fy.DEBUG),_(`auto`))});setTimeout(t,100)}sy(Q(My(Ny(m),t,l),gy(([e,,t])=>e!==!1&&t),yy(({value:e},[,t])=>({refreshed:e===t,value:t}),{refreshed:!1,value:0}),gy(({refreshed:e})=>e),Sy(m,t)),([,e])=>{uy(s)&&v(e!==!1)}),sy(h,()=>{v(uy(m)!==!1)}),sy(My(Ny(m),i),([e,t])=>{e!==!1&&!t.atBottom&&t.notAtBottomBecause===`VIEWPORT_HEIGHT_DECREASING`&&_(`auto`)});let y=$(null),b=Ey();return dy(Py(Q(Ny(r),_y(e=>e?.length??0)),Q(Ny(t))),b),sy(Q(My(Q(b,by(1)),c),Sy(Ny(y),s,d,f),_y(([[e,t],n,r,i,a])=>t&&r&&n?.({context:a,totalCount:e,scrollingInProgress:i})),gy(e=>!!e),xy(0)),t=>{g!==null&&(g(),g=null),uy(n)===void 0?g=fy(e,()=>{uy(u)(`scrolling into view`,{}),cy(p,t),g=null}):requestAnimationFrame(()=>{uy(u)(`scrolling into view`,{}),cy(p,t)})}),{autoscrollToBottom:h,followOutput:m,scrollIntoViewOnChange:y}},oy(Hb,ox,Jb,$b,Gb,Ry,Xy,Sx,wx)),Ox=ky(([{data:e,firstItemIndex:t,gap:n,sizes:r},{initialTopMostItemIndex:i},{initialItemCount:a,listState:o},{didMount:s}])=>(dy(Q(s,Sy(a),gy(([,e])=>e!==0),Sy(i,r,t,n,e),_y(([[,e],t,n,r,i,a])=>gx(e,t,n,r,i,a))),o),{}),oy(Hb,$b,yx,Gb),{singleton:!0}),kx=ky(([{didMount:e},{scrollTo:t},{listState:n}])=>{let r=$(0);return sy(Q(e,Sy(r),gy(([,e])=>e!==0),_y(([,e])=>({top:e}))),e=>{fy(Q(n,by(1),gy(e=>e.items.length>1)),()=>{requestAnimationFrame(()=>{cy(t,e)})})}),{initialScrollTop:r}},oy(Gb,Xy,yx),{singleton:!0}),Ax=ky(([{scrollVelocity:e}])=>{let t=$(!1),n=Ey(),r=$(!1);return dy(Q(e,Sy(r,t,n),gy(([e,t])=>t!==!1&&t!==void 0),_y(([e,t,n,r])=>{let{enter:i,exit:a}=t;if(n){if(a(e,r))return!1}else if(i(e,r))return!0;return n}),hy()),t),sy(Q(My(t,e,n),Sy(r)),([[e,t,n],r])=>{e&&r!==!1&&r!==void 0&&r.change&&r.change(t,n)}),{isSeeking:t,scrollSeekConfiguration:r,scrollSeekRangeChanged:n,scrollVelocity:e}},oy(ox),{singleton:!0}),jx=ky(([{scrollContainerState:e,scrollTo:t}])=>{let n=Ey(),r=Ey(),i=Ey(),a=$(!1),o=$(void 0);return dy(Q(My(n,r),_y(([{scrollTop:e,viewportHeight:t},{offsetTop:n,listHeight:r}])=>({scrollHeight:r,scrollTop:Math.max(0,e-n),viewportHeight:t}))),e),dy(Q(t,Sy(r),_y(([e,{offsetTop:t}])=>({...e,top:e.top+t}))),i),{customScrollParent:o,useWindowScroll:a,windowScrollContainerState:n,windowScrollTo:i,windowViewportRect:r}},oy(Xy)),Mx=ky(([{sizeRanges:e,sizes:t},{headerHeight:n,scrollTop:r},{initialTopMostItemIndex:i},{didMount:a},{useWindowScroll:o,windowScrollContainerState:s,windowViewportRect:c}])=>{let l=Ey(),u=$(void 0),d=$(null),f=$(null);return dy(s,d),dy(c,f),sy(Q(l,Sy(t,r,o,d,f,n)),([e,t,n,r,i,a,o])=>{let s=Ib(t.sizeTree);r&&i!==null&&a!==null&&(n=i.scrollTop-a.offsetTop),n-=o,e({ranges:s,scrollTop:n})}),dy(Q(u,gy(ty),_y(Nx)),i),dy(Q(a,Sy(u),gy(([,e])=>e!==void 0),hy(),_y(([,e])=>e.ranges)),e),{getState:l,restoreStateFrom:u}},oy(Hb,Xy,$b,Gb,jx));function Nx(e){return{align:`start`,index:0,offset:e.scrollTop}}var Px=ky(([{topItemsIndexes:e}])=>{let t=$(0);return dy(Q(t,gy(e=>e>=0),_y(e=>Array.from({length:e}).map((e,t)=>t))),e),{topItemCount:t}},oy(yx));function Fx(e){let t=!1,n;return(()=>(t||(t=!0,n=e()),n))}var Ix=Fx(()=>/iP(ad|od|hone)/i.test(navigator.userAgent)&&/WebKit/i.test(navigator.userAgent)),Lx=ky(([{data:e,defaultItemSize:t,firstItemIndex:n,fixedItemSize:r,fixedGroupSize:i,gap:a,groupIndices:o,heightEstimates:s,itemSize:c,sizeRanges:l,sizes:u,statefulTotalCount:d,totalCount:f,trackItemSizes:p},{initialItemFinalLocationReached:m,initialTopMostItemIndex:h,scrolledToInitialItem:g},_,v,y,b,{scrollToIndex:x},S,{topItemCount:C},{groupCounts:w},T])=>{let{listState:E,minOverscanItemCount:D,topItemsIndexes:O,rangeChanged:k,...A}=b;return dy(k,T.scrollSeekRangeChanged),dy(Q(My(T.windowViewportRect,_.headerHeight,_.fixedHeaderHeight),_y(([e,t,n])=>Math.max(t+n+1,e.visibleHeight))),_.viewportHeight),{data:e,defaultItemHeight:t,firstItemIndex:n,fixedItemHeight:r,fixedGroupHeight:i,gap:a,groupCounts:w,heightEstimates:s,initialItemFinalLocationReached:m,initialTopMostItemIndex:h,scrolledToInitialItem:g,sizeRanges:l,topItemCount:C,topItemsIndexes:O,totalCount:f,...y,groupIndices:o,itemSize:c,listState:E,minOverscanItemCount:D,scrollToIndex:x,statefulTotalCount:d,trackItemSizes:p,rangeChanged:k,...A,...T,..._,sizes:u,...v}},oy(Hb,$b,Xy,Mx,Dx,yx,Jb,ky(([{deviation:e,deviationCommitted:t,scrollBy:n,scrollingInProgress:r,scrollTop:i},{isAtBottom:a,isScrolling:o,lastJumpDueToItemResize:s,scrollDirection:c},{listState:l},{beforeUnshiftWith:u,gap:d,shiftWithOffset:f,sizes:p},{log:m},{recalcInProgress:h}])=>{let g=Dy(Q(l,Sy(s),yy(([,e,t,n],[{bottom:r,items:i,offsetBottom:a,totalCount:o},s])=>{let c=r+a,l=0;return t===o&&e.length>0&&i.length>0&&(i[0].originalIndex===0&&e[0].originalIndex===0||(l=c-n,l!==0&&(l+=s))),[l,i,o,c]},[0,[],0,0]),gy(([e])=>e!==0),Sy(i,c,r,a,m,h),gy(([,e,t,n,,,r])=>!r&&!n&&e!==0&&t===tx),_y(([[e],,,,,t])=>(t(`Upward scrolling compensation`,{amount:e},Fy.DEBUG),e))));function _(t){t>0?(cy(n,{behavior:`auto`,top:-t}),cy(e,0)):(cy(e,0),cy(n,{behavior:`auto`,top:-t}))}sy(Q(g,Sy(e,o)),([t,n,r])=>{r&&Ix()?cy(e,n-t):_(-t)}),sy(Q(My(Ty(o,!1),e,h),gy(([e,t,n])=>!e&&!n&&t!==0),_y(([e,t])=>t),xy(1)),_),dy(Q(f,_y(e=>({top:-e}))),n);let v=null;function y(){if(v===null)return;let{offset:t}=v;v=null,cy(n,{top:t}),requestAnimationFrame(()=>{cy(e,0),cy(h,!1)})}return sy(t,e=>{v===null||!v.acknowledgeable||e===v.offset&&y()}),sy(Q(u,Sy(p,d),_y(([e,{groupIndices:t,lastSize:n,sizeTree:r},i])=>{function a(e){return e*(n+i)}if(t.length===0)return a(e);let o=0,s=eb(r,0),c=0,l=0;for(;c<e;){c++,o+=s;let n=t.length===l+1?1/0:t[l+1]-t[l]-1;c+n>e&&(o-=s,n=e-c+1),c+=n,o+=a(n),l++}return o})),t=>{v={acknowledgeable:uy(e)!==t,offset:t},cy(e,t),requestAnimationFrame(y)}),{deviation:e}},oy(Xy,ox,yx,Hb,Ry,bb)),Px,Wb,ky(([e,t,n,r,i,a,o,s,c,l,u])=>({...e,...t,...n,...r,...i,...a,...o,...s,...c,...l,...u}),oy(fx,Ox,Gb,Ax,bx,kx,xx,jx,wx,Ry,Sx))));function Rx(e,t){let n={},r={},i=0,a=e.length;for(;i<a;)r[e[i]]=1,i+=1;for(let e in t)Object.hasOwn(r,e)||(n[e]=t[e]);return n}var zx=typeof document>`u`?Z.useEffect:Z.useLayoutEffect;function Bx(e,t,n){let r=Object.keys(t.required||{}),i=Object.keys(t.optional||{}),a=Object.keys(t.methods||{}),o=Object.keys(t.events||{}),s=Z.createContext({});function c(e,n){e.propsReady!==void 0&&cy(e.propsReady,!1);for(let i of r){let r=e[t.required[i]];cy(r,n[i])}for(let r of i)if(r in n){let i=e[t.optional[r]];cy(i,n[r])}e.propsReady!==void 0&&cy(e.propsReady,!0)}function l(e){return a.reduce((n,r)=>(n[r]=n=>{let i=e[t.methods[r]];cy(i,n)},n),{})}function u(e){return o.reduce((n,r)=>(n[r]=wy(e[t.events[r]]),n),{})}return{Component:Z.forwardRef(function(t,a){let{children:d,...f}=t,[p]=Z.useState(()=>iy(jy(e),e=>{c(e,f)})),[m]=Z.useState($v(u,p));zx(()=>{for(let e of o)e in f&&sy(m[e],f[e]);return()=>{Object.values(m).map(ly)}},[f,m,p]),zx(()=>{c(p,f)}),Z.useImperativeHandle(a,Xv(l(p)));let h=n;return(0,X.jsx)(s.Provider,{value:p,children:n===void 0?d:(0,X.jsx)(h,{...Rx([...r,...i,...o],f),children:d})})}),useEmitter:(e,t)=>{let n=Z.useContext(s)[e];zx(()=>sy(n,t),[t,n])},useEmitterValue:e=>{let t=Z.useContext(s)[e],n=Z.useCallback(e=>sy(t,e),[t]);return Z.useSyncExternalStore(n,()=>uy(t),()=>uy(t))},usePublisher:e=>{let t=Z.useContext(s);return Z.useCallback(n=>{cy(t[e],n)},[t,e])}}}var Vx=Z.createContext(void 0),Hx=Z.createContext(void 0),Ux=`-webkit-sticky`,Wx=`sticky`,Gx=Fx(()=>{if(typeof document>`u`)return Wx;let e=document.createElement(`div`);return e.style.position=Ux,e.style.position===Ux?Ux:Wx});function Kx(e){return`self`in e}function qx(e){return`body`in e}function Jx(e,t,n,r=ry,i,a){let o=Z.useRef(null),s=Z.useRef(null),c=Z.useRef(null),l=Z.useCallback(n=>{let r,i,o,l=n.target;if(qx(l)||Kx(l)){let e=Kx(l)?l:l.defaultView;o=a===!0?Vy(e,e.scrollX):e.scrollY,r=a===!0?e.document.documentElement.scrollWidth:e.document.documentElement.scrollHeight,i=a===!0?e.innerWidth:e.innerHeight}else o=a===!0?Vy(l,l.scrollLeft):l.scrollTop,r=a===!0?l.scrollWidth:l.scrollHeight,i=a===!0?l.offsetWidth:l.offsetHeight;let u=()=>{e({scrollHeight:r,scrollTop:Math.max(o,0),viewportHeight:i})};n.suppressFlushSync===!0?u():ys.flushSync(u),s.current!==null&&(o===s.current||o<=0||o===r-i)&&(s.current=null,t(!0),c.current&&=(clearTimeout(c.current),null))},[e,t,a]);Z.useEffect(()=>{let e=i??o.current;return r(i??o.current),l({suppressFlushSync:!0,target:e}),e.addEventListener(`scroll`,l,{passive:!0}),()=>{r(null),e.removeEventListener(`scroll`,l)}},[o,l,n,r,i]);function u(n){let r=o.current;if(!r||(a===!0?`offsetWidth`in r&&r.offsetWidth===0:`offsetHeight`in r&&r.offsetHeight===0))return;let i=n.behavior===`smooth`,l,u,d;Kx(r)?(u=Math.max(wb(r.document.documentElement,a===!0?`width`:`height`),a===!0?r.document.documentElement.scrollWidth:r.document.documentElement.scrollHeight),l=a===!0?r.innerWidth:r.innerHeight,d=a===!0?Vy(r,r.scrollX):r.scrollY):(u=r[a===!0?`scrollWidth`:`scrollHeight`],l=wb(r,a===!0?`width`:`height`),d=a===!0?Vy(r,r.scrollLeft):r.scrollTop);let f=u-l;if(n.top===void 0){r.scrollTo(n);return}let p=Math.ceil(Math.max(Math.min(f,n.top),0));if(n.top=p,ex(l,u)||p===d){e({scrollHeight:u,scrollTop:d,viewportHeight:l}),i&&t(!0);return}i?(s.current=p,c.current&&clearTimeout(c.current),c.current=setTimeout(()=>{c.current=null,s.current=null,t(!0)},1e3)):s.current=null,a===!0&&(n={...n.behavior===void 0?{}:{behavior:n.behavior},left:Hy(r,p)}),r.scrollTo(n)}return{scrollByCallback:Z.useCallback(e=>{a===!0&&(e={...e.behavior===void 0?{}:{behavior:e.behavior},...e.top===void 0?{}:{left:Hy(o.current,e.top)}}),o.current.scrollBy(e)},[a]),scrollerRef:o,scrollToCallback:u}}function Yx(e){return e}var Xx=ky(([e,t])=>({...e,...t}),oy(Lx,ky(()=>{let e=$(e=>`Item ${e}`),t=$(e=>`Group ${e}`),n=$({}),r=$(Yx),i=$(`div`),a=$(ry),o=(e,t=null)=>Ty(Q(n,_y(t=>t[e]),hy()),t);return{components:n,computeItemKey:r,EmptyPlaceholder:o(`EmptyPlaceholder`),FooterComponent:o(`Footer`),GroupComponent:o(`Group`,`div`),groupContent:t,HeaderComponent:o(`Header`),HeaderFooterTag:i,ItemComponent:o(`Item`,`div`),itemContent:e,ListComponent:o(`List`,`div`),ScrollerComponent:o(`Scroller`,`div`),scrollerRef:a,ScrollSeekPlaceholder:o(`ScrollSeekPlaceholder`),TopItemListComponent:o(`TopItemList`)}}))),Zx=({height:e})=>(0,X.jsx)(`div`,{style:{height:e}}),Qx={overflowAnchor:`none`,position:Gx(),zIndex:1},$x={overflowAnchor:`none`},eS={...$x,display:`inline-block`,height:`100%`},tS=Z.memo(function({showTopList:e=!1}){let t=vS(`listState`),n=yS(`sizeRanges`),r=vS(`useWindowScroll`),i=vS(`customScrollParent`),a=yS(`windowScrollContainerState`),o=yS(`scrollContainerState`),s=i||r?a:o,c=vS(`itemContent`),l=vS(`context`),u=vS(`groupContent`),d=vS(`trackItemSizes`),f=vS(`itemSize`),p=vS(`log`),m=yS(`gap`),h=vS(`horizontalDirection`),{callbackRef:g}=Gy(n,f,d,e?ry:s,p,m,i,h,vS(`skipAnimationFrameInResizeObserver`)),[_,v]=Z.useState(0);_S(`deviation`,e=>{_!==e&&v(e)});let y=yS(`deviationCommitted`);Jy(()=>{y(_)},[_,y]);let b=vS(`EmptyPlaceholder`),x=vS(`ScrollSeekPlaceholder`)??Zx,S=vS(`ListComponent`),C=vS(`ItemComponent`),w=vS(`GroupComponent`),T=vS(`computeItemKey`),E=vS(`isSeeking`),D=vS(`groupIndices`).length>0,O=vS(`alignToBottom`),k=vS(`initialItemFinalLocationReached`),A=e?{}:{boxSizing:`border-box`,...h?{display:`inline-block`,height:`100%`,marginInlineStart:_===0?O?`auto`:0:_,paddingInlineEnd:t.offsetBottom,paddingInlineStart:t.offsetTop,whiteSpace:`nowrap`}:{marginTop:_===0?O?`auto`:0:_,paddingBottom:t.offsetBottom,paddingTop:t.offsetTop},...k?{}:{visibility:`hidden`}};return!e&&t.totalCount===0&&b!=null?(0,X.jsx)(b,{...sS(b,l)}):(0,X.jsx)(S,{...sS(S,l),"data-testid":e?`virtuoso-top-item-list`:`virtuoso-item-list`,ref:g,style:A,children:(e?t.topItems:t.items).map(e=>{let n=e.originalIndex,r=T(n+t.firstItemIndex,e.data,l);return E?(0,Z.createElement)(x,{...sS(x,l),height:e.size,index:e.index,key:r,type:e.type||`item`,...e.type===`group`?{}:{groupIndex:e.groupIndex}}):e.type===`group`?(0,Z.createElement)(w,{...sS(w,l),"data-index":n,"data-item-index":e.index,"data-known-size":e.size,key:r,style:Qx},u(e.index,l)):(0,Z.createElement)(C,{...sS(C,l),...cS(C,e.data),"data-index":n,"data-item-group-index":e.groupIndex,"data-item-index":e.index,"data-known-size":e.size,key:r,style:h?eS:$x},D?c(e.index,e.groupIndex,e.data,l):c(e.index,e.data,l))})})}),nS={height:`100%`,outline:`none`,overflowY:`auto`,position:`relative`,WebkitOverflowScrolling:`touch`},rS={outline:`none`,overflowX:`auto`,position:`relative`},iS=e=>({height:`100%`,position:`absolute`,top:0,width:`100%`,...e?{display:`flex`,flexDirection:`column`}:void 0}),aS=(e,t,n=0)=>({...iS(e),position:t?`relative`:`absolute`,top:t?-n:0}),oS={position:Gx(),top:0,width:`100%`,zIndex:1};function sS(e,t){if(typeof e!=`string`)return{context:t}}function cS(e,t){return{item:typeof e==`string`?void 0:t}}var lS=Z.memo(function(){let e=vS(`HeaderComponent`),t=yS(`headerHeight`),n=vS(`HeaderFooterTag`),r=Uy(Z.useMemo(()=>e=>{t(wb(e,`height`))},[t]),!0,vS(`skipAnimationFrameInResizeObserver`)),i=vS(`context`);return e==null?null:(0,X.jsx)(n,{ref:r,children:(0,X.jsx)(e,{...sS(e,i)})})}),uS=Z.memo(function(){let e=vS(`FooterComponent`),t=yS(`footerHeight`),n=vS(`HeaderFooterTag`),r=Uy(Z.useMemo(()=>e=>{t(wb(e,`height`))},[t]),!0,vS(`skipAnimationFrameInResizeObserver`)),i=vS(`context`);return e==null?null:(0,X.jsx)(n,{ref:r,children:(0,X.jsx)(e,{...sS(e,i)})})});function dS({useEmitter:e,useEmitterValue:t,usePublisher:n}){return Z.memo(function({children:r,style:i,context:a,...o}){let s=n(`scrollContainerState`),c=t(`ScrollerComponent`),l=n(`smoothScrollTargetReached`),u=t(`scrollerRef`),d=t(`horizontalDirection`)||!1,{scrollByCallback:f,scrollerRef:p,scrollToCallback:m}=Jx(s,l,c,u,void 0,d);return e(`scrollTo`,m),e(`scrollBy`,f),(0,X.jsx)(c,{"data-testid":`virtuoso-scroller`,"data-virtuoso-scroller":!0,ref:p,style:{...d?rS:nS,...i},tabIndex:0,...o,...sS(c,a),children:r})})}function fS({useEmitter:e,useEmitterValue:t,usePublisher:n}){return Z.memo(function({children:r,style:i,context:a,...o}){let s=n(`windowScrollContainerState`),c=t(`ScrollerComponent`),l=n(`smoothScrollTargetReached`),u=t(`totalListHeight`),d=t(`deviation`),f=t(`customScrollParent`),p=Z.useRef(null),{scrollByCallback:m,scrollerRef:h,scrollToCallback:g}=Jx(s,l,c,t(`scrollerRef`),f);return Jy(()=>(h.current=f??p.current?.ownerDocument.defaultView,()=>{h.current=null}),[h,f]),e(`windowScrollTo`,g),e(`scrollBy`,m),(0,X.jsx)(c,{ref:p,"data-virtuoso-scroller":!0,style:{position:`relative`,...i,...u===0?void 0:{height:u+d}},...o,...sS(c,a),children:r})})}var pS=({children:e})=>{let t=Z.useContext(Vx),n=yS(`viewportHeight`),r=yS(`fixedItemHeight`),i=vS(`alignToBottom`),a=vS(`horizontalDirection`),o=Uy(Z.useMemo(()=>Qv(n,e=>wb(e,a?`width`:`height`)),[n,a]),!0,vS(`skipAnimationFrameInResizeObserver`));return Z.useEffect(()=>{t&&(n(t.viewportHeight),r(t.itemHeight))},[t,n,r]),(0,X.jsx)(`div`,{"data-viewport-type":`element`,ref:o,style:iS(i),children:e})},mS=({children:e})=>{let t=Z.useContext(Vx),n=yS(`windowViewportRect`),r=yS(`fixedItemHeight`),i=vS(`customScrollParent`),a=vS(`useWindowScroll`),o=vS(`topListHeight`),s=Yy(n,i,vS(`skipAnimationFrameInResizeObserver`)),c=vS(`alignToBottom`);return Z.useEffect(()=>{t&&(r(t.itemHeight),n({listHeight:0,offsetTop:0,visibleHeight:t.viewportHeight,visibleWidth:100}))},[t,n,r]),(0,X.jsx)(`div`,{"data-viewport-type":`window`,ref:s,style:aS(c,a,o),children:e})},hS=({children:e})=>{let t=vS(`TopItemListComponent`)??`div`,n=vS(`headerHeight`);return(0,X.jsx)(t,{style:{...oS,marginTop:`${n}px`},...sS(t,vS(`context`)),children:e})},{Component:gS,useEmitter:_S,useEmitterValue:vS,usePublisher:yS}=Bx(Xx,{optional:{restoreStateFrom:`restoreStateFrom`,context:`context`,followOutput:`followOutput`,scrollIntoViewOnChange:`scrollIntoViewOnChange`,itemContent:`itemContent`,groupContent:`groupContent`,overscan:`overscan`,increaseViewportBy:`increaseViewportBy`,minOverscanItemCount:`minOverscanItemCount`,totalCount:`totalCount`,groupCounts:`groupCounts`,topItemCount:`topItemCount`,firstItemIndex:`firstItemIndex`,initialTopMostItemIndex:`initialTopMostItemIndex`,components:`components`,atBottomThreshold:`atBottomThreshold`,atTopThreshold:`atTopThreshold`,computeItemKey:`computeItemKey`,defaultItemHeight:`defaultItemHeight`,fixedGroupHeight:`fixedGroupHeight`,fixedItemHeight:`fixedItemHeight`,heightEstimates:`heightEstimates`,itemSize:`itemSize`,scrollSeekConfiguration:`scrollSeekConfiguration`,headerFooterTag:`HeaderFooterTag`,data:`data`,initialItemCount:`initialItemCount`,initialScrollTop:`initialScrollTop`,alignToBottom:`alignToBottom`,useWindowScroll:`useWindowScroll`,customScrollParent:`customScrollParent`,scrollerRef:`scrollerRef`,logLevel:`logLevel`,horizontalDirection:`horizontalDirection`,skipAnimationFrameInResizeObserver:`skipAnimationFrameInResizeObserver`},methods:{scrollToIndex:`scrollToIndex`,scrollIntoView:`scrollIntoView`,scrollTo:`scrollTo`,scrollBy:`scrollBy`,autoscrollToBottom:`autoscrollToBottom`,getState:`getState`},events:{isScrolling:`isScrolling`,endReached:`endReached`,startReached:`startReached`,rangeChanged:`rangeChanged`,atBottomStateChange:`atBottomStateChange`,atTopStateChange:`atTopStateChange`,totalListHeightChanged:`totalListHeightChanged`,itemsRendered:`itemsRendered`,groupIndices:`groupIndices`}},Z.memo(function(e){let t=vS(`useWindowScroll`),n=vS(`topItemsIndexes`).length>0,r=vS(`customScrollParent`),i=vS(`context`);return(0,X.jsxs)(r||t?xS:bS,{...e,context:i,children:[n&&(0,X.jsx)(hS,{children:(0,X.jsx)(tS,{showTopList:!0})}),(0,X.jsxs)(r||t?mS:pS,{children:[(0,X.jsx)(lS,{}),(0,X.jsx)(tS,{}),(0,X.jsx)(uS,{})]})]})})),bS=dS({useEmitter:_S,useEmitterValue:vS,usePublisher:yS}),xS=fS({useEmitter:_S,useEmitterValue:vS,usePublisher:yS}),SS=gS,CS=ky(([e,t])=>({...e,...t}),oy(Lx,ky(()=>{let e=$(e=>(0,X.jsxs)(`td`,{children:[`Item $`,e]})),t=$(null),n=$(e=>(0,X.jsxs)(`td`,{colSpan:1e3,children:[`Group `,e]})),r=$(null),i=$(null),a=$({}),o=$(Yx),s=$(ry),c=(e,t=null)=>Ty(Q(a,_y(t=>t[e]),hy()),t);return{components:a,computeItemKey:o,context:t,EmptyPlaceholder:c(`EmptyPlaceholder`),FillerRow:c(`FillerRow`),fixedFooterContent:i,fixedHeaderContent:r,itemContent:e,groupContent:n,ScrollerComponent:c(`Scroller`,`div`),scrollerRef:s,ScrollSeekPlaceholder:c(`ScrollSeekPlaceholder`),TableBodyComponent:c(`TableBody`,`tbody`),TableComponent:c(`Table`,`table`),TableFooterComponent:c(`TableFoot`,`tfoot`),TableHeadComponent:c(`TableHead`,`thead`),TableRowComponent:c(`TableRow`,`tr`),GroupComponent:c(`Group`,`tr`)}}))),wS=({height:e})=>(0,X.jsx)(`tr`,{children:(0,X.jsx)(`td`,{style:{height:e}})}),TS=({height:e})=>(0,X.jsx)(`tr`,{children:(0,X.jsx)(`td`,{style:{border:0,height:e,padding:0}})}),ES={overflowAnchor:`none`},DS={position:Gx(),zIndex:2,overflowAnchor:`none`},OS=Z.memo(function({showTopList:e=!1}){let t=PS(`listState`),n=PS(`computeItemKey`),r=PS(`firstItemIndex`),i=PS(`context`),a=PS(`isSeeking`),o=PS(`fixedHeaderHeight`),s=PS(`groupIndices`).length>0,c=PS(`itemContent`),l=PS(`groupContent`),u=PS(`ScrollSeekPlaceholder`)??wS,d=PS(`GroupComponent`),f=PS(`TableRowComponent`),p=(e?t.topItems:[]).reduce((e,t,n)=>(n===0?e.push(t.size):e.push(e[n-1]+t.size),e),[]);return(e?t.topItems:t.items).map(t=>{let m=t.originalIndex,h=n(m+r,t.data,i),g=e?m===0?0:p[m-1]:0;return a?(0,Z.createElement)(u,{...sS(u,i),height:t.size,index:t.index,key:h,type:t.type||`item`}):t.type===`group`?(0,Z.createElement)(d,{...sS(d,i),"data-index":m,"data-item-index":t.index,"data-known-size":t.size,key:h,style:{...DS,top:o}},l(t.index,i)):(0,Z.createElement)(f,{...sS(f,i),...cS(f,t.data),"data-index":m,"data-item-index":t.index,"data-known-size":t.size,"data-item-group-index":t.groupIndex,key:h,style:e?{...DS,top:o+g}:ES},s?c(t.index,t.groupIndex,t.data,i):c(t.index,t.data,i))})}),kS=Z.memo(function(){let e=PS(`listState`),t=PS(`topItemsIndexes`).length>0,n=FS(`sizeRanges`),r=PS(`useWindowScroll`),i=PS(`customScrollParent`),a=FS(`windowScrollContainerState`),o=FS(`scrollContainerState`),s=i||r?a:o,c=PS(`trackItemSizes`),{callbackRef:l,ref:u}=Gy(n,PS(`itemSize`),c,s,PS(`log`),void 0,i,!1,PS(`skipAnimationFrameInResizeObserver`)),[d,f]=Z.useState(0);NS(`deviation`,e=>{d!==e&&(u.current.style.marginTop=`${e}px`,f(e))});let p=FS(`deviationCommitted`);Jy(()=>{p(d)},[d,p]);let m=PS(`EmptyPlaceholder`),h=PS(`FillerRow`)??TS,g=PS(`TableBodyComponent`),_=PS(`paddingTopAddition`),v=PS(`statefulTotalCount`),y=PS(`context`);if(v===0&&m!=null)return(0,X.jsx)(m,{...sS(m,y)});let b=(t?e.topItems:[]).reduce((e,t)=>e+t.size,0),x=e.offsetTop+_+d-b,S=e.offsetBottom,C=x>0?(0,X.jsx)(h,{context:y,height:x},`padding-top`):null,w=S>0?(0,X.jsx)(h,{context:y,height:S},`padding-bottom`):null;return(0,X.jsxs)(g,{"data-testid":`virtuoso-item-list`,ref:l,...sS(g,y),children:[C,t&&(0,X.jsx)(OS,{showTopList:!0}),(0,X.jsx)(OS,{}),w]})}),AS=({children:e})=>{let t=Z.useContext(Vx),n=FS(`viewportHeight`),r=FS(`fixedItemHeight`),i=Uy(Z.useMemo(()=>Qv(n,e=>wb(e,`height`)),[n]),!0,PS(`skipAnimationFrameInResizeObserver`));return Z.useEffect(()=>{t&&(n(t.viewportHeight),r(t.itemHeight))},[t,n,r]),(0,X.jsx)(`div`,{"data-viewport-type":`element`,ref:i,style:iS(!1),children:e})},jS=({children:e})=>{let t=Z.useContext(Vx),n=FS(`windowViewportRect`),r=FS(`fixedItemHeight`),i=PS(`customScrollParent`),a=PS(`useWindowScroll`),o=Yy(n,i,PS(`skipAnimationFrameInResizeObserver`));return Z.useEffect(()=>{t&&(r(t.itemHeight),n({listHeight:0,offsetTop:0,visibleHeight:t.viewportHeight,visibleWidth:100}))},[t,n,r]),(0,X.jsx)(`div`,{"data-viewport-type":`window`,ref:o,style:aS(!1,a),children:e})},{Component:MS,useEmitter:NS,useEmitterValue:PS,usePublisher:FS}=Bx(CS,{optional:{restoreStateFrom:`restoreStateFrom`,context:`context`,followOutput:`followOutput`,firstItemIndex:`firstItemIndex`,itemContent:`itemContent`,groupContent:`groupContent`,fixedHeaderContent:`fixedHeaderContent`,fixedFooterContent:`fixedFooterContent`,overscan:`overscan`,increaseViewportBy:`increaseViewportBy`,minOverscanItemCount:`minOverscanItemCount`,totalCount:`totalCount`,topItemCount:`topItemCount`,initialTopMostItemIndex:`initialTopMostItemIndex`,components:`components`,groupCounts:`groupCounts`,atBottomThreshold:`atBottomThreshold`,atTopThreshold:`atTopThreshold`,computeItemKey:`computeItemKey`,defaultItemHeight:`defaultItemHeight`,fixedGroupHeight:`fixedGroupHeight`,fixedItemHeight:`fixedItemHeight`,itemSize:`itemSize`,scrollSeekConfiguration:`scrollSeekConfiguration`,data:`data`,initialItemCount:`initialItemCount`,initialScrollTop:`initialScrollTop`,alignToBottom:`alignToBottom`,useWindowScroll:`useWindowScroll`,customScrollParent:`customScrollParent`,scrollerRef:`scrollerRef`,logLevel:`logLevel`,skipAnimationFrameInResizeObserver:`skipAnimationFrameInResizeObserver`},methods:{scrollToIndex:`scrollToIndex`,scrollIntoView:`scrollIntoView`,scrollTo:`scrollTo`,scrollBy:`scrollBy`,getState:`getState`},events:{isScrolling:`isScrolling`,endReached:`endReached`,startReached:`startReached`,rangeChanged:`rangeChanged`,atBottomStateChange:`atBottomStateChange`,atTopStateChange:`atTopStateChange`,totalListHeightChanged:`totalListHeightChanged`,itemsRendered:`itemsRendered`,groupIndices:`groupIndices`}},Z.memo(function(e){let t=PS(`useWindowScroll`),n=PS(`customScrollParent`),r=FS(`fixedHeaderHeight`),i=FS(`fixedFooterHeight`),a=PS(`fixedHeaderContent`),o=PS(`fixedFooterContent`),s=PS(`context`),c=Uy(Z.useMemo(()=>Qv(r,e=>wb(e,`height`)),[r]),!0,PS(`skipAnimationFrameInResizeObserver`)),l=Uy(Z.useMemo(()=>Qv(i,e=>wb(e,`height`)),[i]),!0,PS(`skipAnimationFrameInResizeObserver`)),u=n||t?LS:IS,d=n||t?jS:AS,f=PS(`TableComponent`),p=PS(`TableHeadComponent`),m=PS(`TableFooterComponent`),h=a?(0,X.jsx)(p,{ref:c,style:{position:`sticky`,top:0,zIndex:2},...sS(p,s),children:a()},`TableHead`):null,g=o?(0,X.jsx)(m,{ref:l,style:{bottom:0,position:`sticky`,zIndex:1},...sS(m,s),children:o()},`TableFoot`):null;return(0,X.jsx)(u,{...e,...sS(u,s),children:(0,X.jsx)(d,{children:(0,X.jsxs)(f,{style:{borderSpacing:0,overflowAnchor:`none`},...sS(f,s),children:[h,(0,X.jsx)(kS,{},`TableBody`),g]})})})})),IS=dS({useEmitter:NS,useEmitterValue:PS,usePublisher:FS}),LS=fS({useEmitter:NS,useEmitterValue:PS,usePublisher:FS}),RS={bottom:0,itemHeight:0,items:[],itemWidth:0,offsetBottom:0,offsetTop:0,top:0},zS={bottom:0,itemHeight:0,items:[{index:0}],itemWidth:0,offsetBottom:0,offsetTop:0,top:0},{ceil:BS,floor:VS,max:HS,min:US,round:WS}=Math;function GS(e,t,n){return Array.from({length:t-e+1}).map((t,r)=>({data:n===null?null:n[r+e],index:r+e}))}function KS(e){return{...zS,items:e}}function qS(e,t){return e!==void 0&&e.width===t.width&&e.height===t.height}function JS(e,t){return e!==void 0&&e.column===t.column&&e.row===t.row}var YS=ky(([{increaseViewportBy:e,listBoundary:t,overscan:n,visibleRange:r},{footerHeight:i,headerHeight:a,scrollBy:o,scrollContainerState:s,scrollTo:c,scrollTop:l,smoothScrollTargetReached:u,viewportHeight:d},f,p,{didMount:m,propsReady:h},{customScrollParent:g,useWindowScroll:_,windowScrollContainerState:v,windowScrollTo:y,windowViewportRect:b},x])=>{let S=$(0),C=$(0),w=$(RS),T=$({height:0,width:0}),E=$({height:0,width:0}),D=Ey(),O=Ey(),k=$(0),A=$(null),j=$({column:0,row:0}),M=Ey(),N=Ey(),P=$(!1),F=$(0),I=$(!0),L=$(!1),R=$(!1);sy(Q(m,Sy(F),gy(([e,t])=>!Qb(t))),()=>{cy(I,!1)}),sy(Q(My(m,I,E,T,F,L),gy(([e,t,n,r,,i])=>e&&!t&&n.height!==0&&r.height!==0&&!i)),([,,,,e])=>{if(e===void 0){cy(I,!0);return}cy(L,!0),Xb(1,()=>{cy(D,e)}),fy(Q(l),()=>{cy(t,[0,0]),cy(I,!0)})}),dy(Q(N,gy(e=>e!=null&&e.scrollTop>0),vy(0)),C),sy(Q(m,Sy(N),gy(([,e])=>e!=null)),([,e])=>{e&&(cy(T,e.viewport),cy(E,e.item),cy(j,e.gap),e.scrollTop>0&&(cy(P,!0),fy(Q(l,by(1)),e=>{cy(P,!1)}),cy(c,{top:e.scrollTop})))}),dy(Q(T,_y(({height:e})=>e)),d),dy(Q(My(Ny(T,qS),Ny(E,qS),Ny(j,(e,t)=>e!==void 0&&e.column===t.column&&e.row===t.row),Ny(l)),_y(([e,t,n,r])=>({gap:n,item:t,scrollTop:r,viewport:e}))),M),dy(Q(My(Ny(S),r,Ny(j,JS),Ny(E,qS),Ny(T,qS),Ny(A),Ny(C),Ny(P),Ny(I),Ny(F)),gy(([,,,,,,,e])=>!e),_y(([e,[t,n],r,i,a,o,s,,c,l])=>{let{column:u,row:d}=r,{height:f,width:p}=i,{width:m}=a;if(s===0&&(e===0||m===0))return RS;if(p===0){let t=Zb(l,e);return KS(GS(t,t+Math.max(s-1,0),o))}let h=XS(m,p,u),g,_;c?t===0&&n===0&&s>0?(g=0,_=s-1):(g=h*VS((t+d)/(f+d)),_=h*BS((n+d)/(f+d))-1,_=US(e-1,HS(_,h-1)),g=US(_,HS(0,g))):(g=0,_=-1);let v=GS(g,_,o),{bottom:y,top:b}=ZS(a,r,i,v),x=BS(e/h);return{bottom:y,itemHeight:f,items:v,itemWidth:p,offsetBottom:x*f+(x-1)*d-y,offsetTop:b,top:b}})),w),dy(Q(A,gy(e=>e!==null),_y(e=>e.length)),S),dy(Q(My(T,E,w,j),gy(([e,t,{items:n}])=>n.length>0&&t.height!==0&&e.height!==0),_y(([e,t,{items:n},r])=>{let{bottom:i,top:a}=ZS(e,r,t,n);return[a,i]}),hy(yb)),t);let z=$(!1);dy(Q(l,Sy(z),_y(([e,t])=>t||e!==0)),z);let B=Dy(Q(My(w,S),gy(([{items:e}])=>e.length>0),Sy(z),gy(([[e,t],n])=>{let r=e.items[e.items.length-1].index===t-1;return(n||e.bottom>0&&e.itemHeight>0&&e.offsetBottom===0&&e.items.length===t)&&r}),_y(([[,e]])=>e-1),hy())),ee=Dy(Q(Ny(w),gy(({items:e})=>e.length>0&&e[0].index===0),vy(0),hy())),V=Dy(Q(Ny(w),Sy(P),gy(([{items:e},t])=>e.length>0&&!t),_y(([{items:e}])=>({endIndex:e[e.length-1].index,startIndex:e[0].index})),hy(vb),xy(0)));dy(V,p.scrollSeekRangeChanged),dy(Q(D,Sy(T,E,S,j),_y(([e,t,n,r,i])=>{let a=qb(e),{align:o,behavior:s,offset:c}=a,l=a.index;l===`LAST`&&(l=r-1),l=HS(0,l,US(r-1,l));let u=QS(t,i,n,l);return o===`end`?u=WS(u-t.height+n.height):o===`center`&&(u=WS(u-t.height/2+n.height/2)),c!==void 0&&c!==0&&(u+=c),{behavior:s,top:u}})),c);let H=Ty(Q(w,_y(e=>e.offsetBottom+e.bottom)),0);return dy(Q(b,_y(e=>({height:e.visibleHeight,width:e.visibleWidth}))),T),{customScrollParent:g,data:A,deviation:k,footerHeight:i,gap:j,headerHeight:a,increaseViewportBy:e,initialItemCount:C,itemDimensions:E,overscan:n,restoreStateFrom:N,scrollBy:o,scrollContainerState:s,scrollHeight:O,scrollTo:c,scrollToIndex:D,scrollTop:l,smoothScrollTargetReached:u,totalCount:S,useWindowScroll:_,viewportDimensions:T,windowScrollContainerState:v,windowScrollTo:y,windowViewportRect:b,...p,gridState:w,horizontalDirection:R,initialTopMostItemIndex:F,totalListHeight:H,...f,endReached:B,propsReady:h,rangeChanged:V,startReached:ee,stateChanged:M,stateRestoreInProgress:P,...x}},oy(fx,Xy,ox,Ax,Gb,jx,Ry));function XS(e,t,n){return HS(1,VS((e+n)/(VS(t)+n)))}function ZS(e,t,n,r){let{height:i}=n;if(i===void 0||r.length===0)return{bottom:0,top:0};let a=QS(e,t,n,r[0].index);return{bottom:QS(e,t,n,r[r.length-1].index)+i,top:a}}function QS(e,t,n,r){let i=VS(r/XS(e.width,n.width,t.column)),a=i*n.height+HS(0,i-1)*t.row;return a>0?a+t.row:a}var $S=ky(([e,t])=>({...e,...t}),oy(YS,ky(()=>{let e=$(e=>`Item ${e}`),t=$({}),n=$(null),r=$(`virtuoso-grid-item`),i=$(`virtuoso-grid-list`),a=$(Yx),o=$(`div`),s=$(ry),c=(e,n=null)=>Ty(Q(t,_y(t=>t[e]),hy()),n),l=$(!1),u=$(!1);return dy(Ny(u),l),{components:t,computeItemKey:a,context:n,FooterComponent:c(`Footer`),HeaderComponent:c(`Header`),headerFooterTag:o,itemClassName:r,ItemComponent:c(`Item`,`div`),itemContent:e,listClassName:i,ListComponent:c(`List`,`div`),readyStateChanged:l,reportReadyState:u,ScrollerComponent:c(`Scroller`,`div`),scrollerRef:s,ScrollSeekPlaceholder:c(`ScrollSeekPlaceholder`,`div`)}}))),eC=Z.memo(function(){let e=sC(`gridState`),t=sC(`listClassName`),n=sC(`itemClassName`),r=sC(`itemContent`),i=sC(`computeItemKey`),a=sC(`isSeeking`),o=cC(`scrollHeight`),s=sC(`ItemComponent`),c=sC(`ListComponent`),l=sC(`ScrollSeekPlaceholder`),u=sC(`context`),d=cC(`itemDimensions`),f=cC(`gap`),p=sC(`log`),m=sC(`stateRestoreInProgress`),h=cC(`reportReadyState`),g=Uy(Z.useMemo(()=>e=>{let t=e.parentElement.parentElement.scrollHeight;o(t);let n=e.firstChild;if(n!==null){let{height:e,width:t}=n.getBoundingClientRect();d({height:e,width:t})}f({column:dC(`column-gap`,getComputedStyle(e).columnGap,p),row:dC(`row-gap`,getComputedStyle(e).rowGap,p)})},[o,d,f,p]),!0,!1);return Jy(()=>{e.itemHeight>0&&e.itemWidth>0&&h(!0)},[e]),m?null:(0,X.jsx)(c,{className:t,ref:g,...sS(c,u),"data-testid":`virtuoso-item-list`,style:{paddingBottom:e.offsetBottom,paddingTop:e.offsetTop},children:e.items.map(t=>{let o=i(t.index,t.data,u);return a?(0,X.jsx)(l,{...sS(l,u),height:e.itemHeight,index:t.index,width:e.itemWidth},o):(0,Z.createElement)(s,{...sS(s,u),className:n,"data-index":t.index,key:o},r(t.index,t.data,u))})})}),tC=Z.memo(function(){let e=sC(`HeaderComponent`),t=cC(`headerHeight`),n=sC(`headerFooterTag`),r=Uy(Z.useMemo(()=>e=>{t(wb(e,`height`))},[t]),!0,!1),i=sC(`context`);return e==null?null:(0,X.jsx)(n,{ref:r,children:(0,X.jsx)(e,{...sS(e,i)})})}),nC=Z.memo(function(){let e=sC(`FooterComponent`),t=cC(`footerHeight`),n=sC(`headerFooterTag`),r=Uy(Z.useMemo(()=>e=>{t(wb(e,`height`))},[t]),!0,!1),i=sC(`context`);return e==null?null:(0,X.jsx)(n,{ref:r,children:(0,X.jsx)(e,{...sS(e,i)})})}),rC=({children:e})=>{let t=Z.useContext(Hx),n=cC(`itemDimensions`),r=cC(`viewportDimensions`),i=Uy(Z.useMemo(()=>e=>{r(e.getBoundingClientRect())},[r]),!0,!1);return Z.useEffect(()=>{t&&(r({height:t.viewportHeight,width:t.viewportWidth}),n({height:t.itemHeight,width:t.itemWidth}))},[t,r,n]),(0,X.jsx)(`div`,{ref:i,style:iS(!1),children:e})},iC=({children:e})=>{let t=Z.useContext(Hx),n=cC(`windowViewportRect`),r=cC(`itemDimensions`),i=sC(`customScrollParent`),a=sC(`useWindowScroll`),o=Yy(n,i,!1);return Z.useEffect(()=>{t&&(r({height:t.itemHeight,width:t.itemWidth}),n({listHeight:0,offsetTop:0,visibleHeight:t.viewportHeight,visibleWidth:t.viewportWidth}))},[t,n,r]),(0,X.jsx)(`div`,{ref:o,style:aS(!1,a),children:e})},{Component:aC,useEmitter:oC,useEmitterValue:sC,usePublisher:cC}=Bx($S,{optional:{context:`context`,totalCount:`totalCount`,overscan:`overscan`,itemContent:`itemContent`,components:`components`,computeItemKey:`computeItemKey`,data:`data`,initialItemCount:`initialItemCount`,scrollSeekConfiguration:`scrollSeekConfiguration`,headerFooterTag:`headerFooterTag`,listClassName:`listClassName`,itemClassName:`itemClassName`,useWindowScroll:`useWindowScroll`,customScrollParent:`customScrollParent`,scrollerRef:`scrollerRef`,logLevel:`logLevel`,restoreStateFrom:`restoreStateFrom`,initialTopMostItemIndex:`initialTopMostItemIndex`,increaseViewportBy:`increaseViewportBy`},methods:{scrollTo:`scrollTo`,scrollBy:`scrollBy`,scrollToIndex:`scrollToIndex`},events:{isScrolling:`isScrolling`,endReached:`endReached`,startReached:`startReached`,rangeChanged:`rangeChanged`,atBottomStateChange:`atBottomStateChange`,atTopStateChange:`atTopStateChange`,stateChanged:`stateChanged`,readyStateChanged:`readyStateChanged`}},Z.memo(function({...e}){let t=sC(`useWindowScroll`),n=sC(`customScrollParent`),r=n||t?uC:lC,i=n||t?iC:rC,a=sC(`context`);return(0,X.jsx)(r,{...e,...sS(r,a),children:(0,X.jsxs)(i,{children:[(0,X.jsx)(tC,{}),(0,X.jsx)(eC,{}),(0,X.jsx)(nC,{})]})})})),lC=dS({useEmitter:oC,useEmitterValue:sC,usePublisher:cC}),uC=fS({useEmitter:oC,useEmitterValue:sC,usePublisher:cC});function dC(e,t,n){return t!==`normal`&&t?.endsWith(`px`)!==!0&&n(`${e} was not resolved to pixel value correctly`,t,Fy.WARN),t===`normal`?0:parseInt(t??`0`,10)}function fC(e){return e.scrollHeight-e.scrollTop-e.clientHeight}function pC(e,t=96){return fC(e)<=t}function mC(e){Math.abs(fC(e))>.5&&(e.scrollTop=e.scrollHeight)}function hC(e){let t=e.querySelectorAll(`[data-chat-message-index]`);if(!t.length)return 0;let n=e.getBoundingClientRect(),r=n.top+Math.min(180,n.height*.35),i=0,a=t.length-1;for(;i<a;){let e=Math.ceil((i+a)/2);t[e].getBoundingClientRect().top<=r?i=e:a=e-1}let o=Number.parseInt(t[i].dataset.chatMessageIndex??``,10);return Number.isFinite(o)?o:0}function gC(){return typeof window.matchMedia==`function`&&window.matchMedia(`(prefers-reduced-motion: reduce)`).matches?`auto`:`smooth`}var _C=new WeakMap;function vC(e,t){return _C.set(e,t),()=>{_C.get(e)===t&&_C.delete(e)}}function yC(e){return _C.get(e)}function bC(e){e.dispatchEvent(new Event(`chat-scroll-reading`))}function xC({context:e}){return e?.footer}var SC={Footer:xC},CC={top:800,bottom:800};function wC({rows:e,scrollRef:t,renderRow:n,footer:r}){let i=(0,Z.useRef)(null),[a,o]=(0,Z.useState)(),[s,c]=(0,Z.useState)(CC),[l,u]=(0,Z.useState)({rows:e,first:1e9});if(l.rows!==e){let t=l.rows[0]?.key,n=t?e.findIndex(e=>e.key===t):0;u({rows:e,first:l.first-Math.max(0,n)})}return(0,Z.useEffect)(()=>{o(t.current??void 0)},[t]),(0,Z.useLayoutEffect)(()=>{if(a)return vC(a,{reveal:t=>{let n=e.findIndex(e=>e.index===t||e.aliases.includes(t));return n<0?!1:(bC(a),i.current?.scrollToIndex({index:n,align:`start`,offset:-16,behavior:`auto`}),!0)},end:e=>i.current?.scrollToIndex({index:`LAST`,align:`end`,offset:(parseFloat(getComputedStyle(a).paddingBottom)||0)+(parseFloat(getComputedStyle(a.querySelector(`[data-chat-virtualized]`)??a).paddingBottom)||0),behavior:e&&gC()===`smooth`?`smooth`:`auto`})})},[a,e,l.first]),(0,Z.useLayoutEffect)(()=>{if(!a)return;let e=null,t=()=>{let t=window.getSelection();t&&!t.isCollapsed&&a.contains(t.anchorNode)?(e??={start:a.scrollTop,end:a.scrollTop},e.start=Math.min(e.start,a.scrollTop),e.end=Math.max(e.end,a.scrollTop)):e=null;let n=CC.top+(e?a.scrollTop-e.start:0),r=CC.bottom+(e?e.end-a.scrollTop:0);c(e=>e.top===n&&e.bottom===r?e:{top:n,bottom:r})},n=()=>{e!==null&&t()};return document.addEventListener(`selectionchange`,t),a.addEventListener(`scroll`,n,{passive:!0}),()=>{document.removeEventListener(`selectionchange`,t),a.removeEventListener(`scroll`,n)}},[a]),a?(0,X.jsx)(SS,{ref:i,customScrollParent:a,data:e,skipAnimationFrameInResizeObserver:!0,components:SC,context:{footer:r},firstItemIndex:l.first,initialTopMostItemIndex:{index:e.length-1,align:`end`},defaultItemHeight:160,increaseViewportBy:s,computeItemKey:(e,t)=>t.key,itemContent:(t,r)=>(0,X.jsx)(`div`,{className:r===e[0]?void 0:`pt-8`,children:n(r.index)})}):null}var TC=e=>{},EC=(0,Z.memo)(function(e){let t=(0,Y.c)(47),{messages:n,timelineEntries:r,personal:i,authToken:a,conversationId:o,workspaceConversationId:s,projectId:c,streaming:l,sending:u,progress:d,reasoningLevel:f,registerListContentRef:p,onPickWelcomePrompt:m,welcomeSpotlight:g,welcomeOverlay:_,compactWelcome:v,onDeleteRound:b,onRetryUserMessageRound:x,deleteRoundDisabled:S,onSaveAssistantAsNote:C,onSaveAssistantToSourceNote:w,onExtractAssistantTask:T,onForkAssistantTurn:E,onEditUserMessage:D,editLatestUserOnly:O,editRequiresTurnId:k,responseFeedbackEnabled:A,showAssistantWorkLog:j,hideAssistantActions:M,trailingContent:N,replySpaceRef:P,scrollRef:F}=e,I=r===void 0?[]:r,L=i!==void 0&&i,R=u!==void 0&&u,z=v!==void 0&&v,B=O!==void 0&&O,ee=k!==void 0&&k,V=j===void 0||j,H=M!==void 0&&M,te=h(DC),U;t[0]===te?U=t[1]:(U=y(te),t[0]=te,t[1]=U);let W=U,[ne]=(0,Z.useState)(!!(F&&n.length>=300));if(n.length===0&&I.length===0&&!l&&!R){if(_){let e;return t[2]===_?e=t[3]:(e=(0,X.jsx)(`div`,{className:`pb-1.5`,children:_}),t[2]=_,t[3]=e),e}let e;t[4]!==W||t[5]!==g?(e=g??{headline:W.chat.welcomeSpotlight.headline,contextKind:`empty`,contextStatus:`ready`},t[4]=W,t[5]=g,t[6]=e):e=t[6];let n=m??TC,r;return t[7]!==z||t[8]!==e||t[9]!==n?(r=(0,X.jsx)(`div`,{className:`pb-1.5`,children:(0,X.jsx)(Ip,{spotlight:e,onPickPrompt:n,compact:z})}),t[7]=z,t[8]=e,t[9]=n,t[10]=r):r=t[10],r}let re=Date.now(),ie;t[11]===n?ie=t[12]:(ie=n.findLastIndex(OC),t[11]=n,t[12]=ie);let ae=ie,oe;t[13]!==n.length||t[14]!==R||t[15]!==l?(oe=(e,t)=>!!((l||R||e.pendingResponseStatus)&&t===n.length-1&&e.role===`assistant`),t[13]=n.length,t[14]=R,t[15]=l,t[16]=oe):oe=t[16];let se=oe,G;t[17]===n?G=t[18]:(G=(e,t)=>e.role===`assistant`&&e.turnId&&n[t-1]?.role===`task`&&n[t-1]?.turnId===e.turnId?n[t-1].taskTrigger:void 0,t[17]=n,t[18]=G);let K=G,ce;t[19]!==K||t[20]!==se||t[21]!==n||t[22]!==L||t[23]!==f||t[24]!==V?(ce=(e,t)=>!_v(e,{personal:L,isStreaming:se(e,t),reasoningLevel:f,showAssistantWorkLog:V,followUpTrigger:K(e,t)})||e.role===`task`&&e.taskTrigger&&e.turnId&&n[t+1]?.role===`assistant`&&n[t+1]?.turnId===e.turnId?[]:[{key:Rv(e,t),index:t,aliases:e.role===`assistant`&&n[t-1]?.role===`task`&&e.turnId===n[t-1]?.turnId?[t-1]:[]}],t[19]=K,t[20]=se,t[21]=n,t[22]=L,t[23]=f,t[24]=V,t[25]=ce):ce=t[25];let le=n.flatMap(ce),q;t[26]===n.length?q=t[27]:(q=(e,t)=>({key:e.id,index:n.length+t,aliases:[]}),t[26]=n.length,t[27]=q),le.push(...I.map(q));let ue=0,de=n.map(e=>(ue=e.timestamp??ue,ue));I.length&&le.sort((e,t)=>{let r=e=>e<n.length?de[e]:I[e-n.length].timestamp;return r(e.index)-r(t.index)||e.index-t.index});let fe=new Map(le.map((e,t)=>[e.index,le[t-1]?.index])),pe=e=>{if(e>=n.length){let t=I[e-n.length];return(0,X.jsx)(`div`,{"data-chat-timeline-entry":t.id,children:t.content},t.id)}let t=n[e],r=se(t,e),i=e===ae,l=n[e-1],u=K(t,e),p=fe.get(e),m=p===void 0?void 0:n[p],h=m&&p!==void 0?K(m,p)?n[p-1]?.timestamp??m.timestamp:m.timestamp:void 0,g=Rv(t,e),_=u?l?.timestamp??t.timestamp:t.timestamp,v=Wv(_,h);return(0,X.jsxs)(`div`,{id:`chat-message-${e}`,className:J(`scroll-mt-4`,m&&(m.role===`user`||m.role===`task`)&&!u&&!v&&`-mt-5`),"data-chat-message-index":e,"data-chat-message-row":!0,"data-client-submission-id":t.clientSubmissionId,"data-message-render-key":t.renderKey,children:[u?(0,X.jsx)(`span`,{id:`chat-message-${e-1}`,className:`block h-0 scroll-mt-4`,"aria-hidden":!0}):null,v&&_?(0,X.jsx)(`div`,{className:`mb-8 flex justify-center`,"data-chat-time-separator":!0,children:(0,X.jsx)(`time`,{suppressHydrationWarning:!0,className:`rounded-md px-2 py-1 text-xs tabular-nums text-fg-disabled`,dateTime:new Date(_).toISOString(),children:Gv(_,re,te)})}):null,t.role===`task`&&t.taskTrigger?(0,X.jsx)(bv,{trigger:t.taskTrigger}):(0,X.jsx)(Lv,{message:t,personal:L,followUpTrigger:u,authToken:a,conversationId:o,workspaceConversationId:s,projectId:c,isStreaming:r,progress:r?d:null,reasoningLevel:f,messageIndex:e,onDeleteRound:b,onRetryUserMessageRound:x,userMessageCanRetry:!!x&&i,deleteRoundDisabled:!!(S&&i),onSaveAssistantAsNote:C,onSaveAssistantToSourceNote:w,onExtractAssistantTask:T,onForkAssistantTurn:E,suppressAssistantActions:H,onEditUserMessage:D,userMessageCanEdit:(!B||i)&&(!ee||!!t.turnId)&&t.deliveryStatus!==`sending`,responseFeedbackEnabled:A,showAssistantWorkLog:V})]},g)},me=ne?`pt-8`:`contents`,he;t[28]===me?he=t[29]:(he=J(me),t[28]=me,t[29]=he);let ge;t[30]!==P||t[31]!==ne?(ge=P&&(0,X.jsx)(`div`,{ref:P,className:J(!ne&&`-mt-8`,`shrink-0 transition-none`),"aria-hidden":!0,"data-chat-reply-space":!0}),t[30]=P,t[31]=ne,t[32]=ge):ge=t[32];let _e;t[33]!==he||t[34]!==ge||t[35]!==N?(_e=(0,X.jsxs)(`div`,{className:he,children:[N,ge]}),t[33]=he,t[34]=ge,t[35]=N,t[36]=_e):_e=t[36];let ve=_e,ye=$i,be=!ne&&`flex flex-col gap-8`,xe;t[37]===be?xe=t[38]:(xe=J(`w-full min-w-0 pb-8`,be),t[37]=be,t[38]=xe);let Se=ne||void 0,Ce=ne&&F?(0,X.jsx)(wC,{rows:le,scrollRef:F,renderRow:pe,footer:ve}):(0,X.jsxs)(X.Fragment,{children:[le.map(e=>pe(e.index)),ve]}),we;t[39]!==p||t[40]!==xe||t[41]!==Se||t[42]!==Ce?(we=(0,X.jsx)(`div`,{ref:p,className:xe,"data-chat-virtualized":Se,children:Ce}),t[39]=p,t[40]=xe,t[41]=Se,t[42]=Ce,t[43]=we):we=t[43];let Te;return t[44]!==ye||t[45]!==we?(Te=(0,X.jsx)(ye,{children:we}),t[44]=ye,t[45]=we,t[46]=Te):Te=t[46],Te});function DC(e){return e.language}function OC(e){return e.role===`user`}function kC(e){let t=(0,Y.c)(8),{alt:n,className:r,"aria-hidden":i}=e,a=n?.trim()?n:void 0,o=i??(!a||void 0),s;t[0]===r?s=t[1]:(s=J(`xopc-loop-logo relative inline-block shrink-0`,r),t[0]=r,t[1]=s);let c;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,X.jsxs)(`linearGradient`,{id:`xopc-onboarding-ai-glass`,x1:`198`,y1:`180`,x2:`826`,y2:`844`,gradientUnits:`userSpaceOnUse`,children:[(0,X.jsx)(`stop`,{stopColor:`var(--xopc-loop-ai-highlight)`}),(0,X.jsx)(`stop`,{offset:`0.46`,stopColor:`var(--xopc-loop-ai)`}),(0,X.jsx)(`stop`,{offset:`1`,stopColor:`var(--xopc-loop-ai-shadow)`})]}),t[2]=c):c=t[2];let l;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,X.jsxs)(`svg`,{className:`size-full overflow-visible`,viewBox:`0 0 1024 1024`,fill:`none`,"aria-hidden":`true`,children:[(0,X.jsxs)(`defs`,{children:[c,(0,X.jsxs)(`linearGradient`,{id:`xopc-onboarding-human-glass`,x1:`340`,y1:`224`,x2:`700`,y2:`816`,gradientUnits:`userSpaceOnUse`,children:[(0,X.jsx)(`stop`,{stopColor:`var(--xopc-loop-human-highlight)`}),(0,X.jsx)(`stop`,{offset:`0.52`,stopColor:`var(--xopc-loop-human)`}),(0,X.jsx)(`stop`,{offset:`1`,stopColor:`var(--xopc-loop-human-shadow)`})]})]}),(0,X.jsx)(`circle`,{className:`xopc-loop-logo__ambient`,cx:`512`,cy:`512`,r:`330`}),(0,X.jsx)(`circle`,{className:`xopc-loop-logo__origin`,cx:`512`,cy:`512`,r:`330`}),(0,X.jsx)(`circle`,{className:`xopc-loop-logo__ai-glow`,cx:`512`,cy:`512`,r:`330`,strokeDasharray:`1419.162121 654.289030`,transform:`rotate(11.8 512 512)`}),(0,X.jsx)(`circle`,{className:`xopc-loop-logo__ai`,cx:`512`,cy:`512`,r:`330`,stroke:`url(#xopc-onboarding-ai-glass)`,strokeDasharray:`1419.162121 654.289030`,transform:`rotate(11.8 512 512)`}),(0,X.jsx)(`circle`,{className:`xopc-loop-logo__human`,cx:`512`,cy:`512`,r:`330`,stroke:`url(#xopc-onboarding-human-glass)`,strokeDasharray:`354.790530 1718.660621`,transform:`rotate(284.2 512 512)`}),(0,X.jsx)(`circle`,{className:`xopc-loop-logo__liquid-front`,cx:`512`,cy:`512`,r:`330`,strokeDasharray:`58 2015.451151`,transform:`rotate(11.8 512 512)`})]}),t[3]=l):l=t[3];let u;return t[4]!==o||t[5]!==a||t[6]!==s?(u=(0,X.jsx)(`span`,{className:s,role:`img`,"aria-hidden":o,"aria-label":a,children:l}),t[4]=o,t[5]=a,t[6]=s,t[7]=u):u=t[7],u}var AC=(0,Z.memo)(function(e){let t=(0,Y.c)(19),{visible:n,onClick:r,edge:i,running:a}=e,o=i===void 0?`top`:i,s=a!==void 0&&a,c=h(jC),l;t[0]===c?l=t[1]:(l=y(c),t[0]=c,t[1]=l);let u=l,d=!n,f=o===`top`?`-top-2 -translate-y-full`:`bottom-2`,p=n?`opacity-100`:`opacity-0`,m;t[2]!==f||t[3]!==p?(m=J(`pointer-events-none absolute inset-x-0 z-20 flex items-center justify-center transition-opacity duration-150 ease-out motion-reduce:transition-none`,f,p),t[2]=f,t[3]=p,t[4]=m):m=t[4];let g=n?`scale-100 opacity-100`:`pointer-events-none translate-y-1 scale-95 opacity-0`,_;t[5]===g?_=t[6]:(_=J(`group relative pointer-events-auto flex size-11 sm:size-8 shrink-0 items-center justify-center rounded-full border border-edge-subtle bg-surface-overlay text-fg-muted shadow-surface`,`hover:border-edge-strong hover:text-fg`,ta.transition,ta.press,ta.focusRingPanel,g,`motion-reduce:translate-y-0 motion-reduce:scale-100`),t[5]=g,t[6]=_);let v=n?void 0:-1,b;t[7]===s?b=t[8]:(b=s?(0,X.jsx)(`span`,{"data-scroll-to-bottom-running-logo":!0,className:`flex size-5 items-center justify-center`,"aria-hidden":!0,children:(0,X.jsx)(kC,{className:`xopc-loop-logo--stream size-5`})}):(0,X.jsx)(Bo,{"data-scroll-to-bottom-arrow":!0,className:`size-4 transition-transform duration-150 ease-out group-hover:translate-y-0.5 motion-reduce:transition-none`,strokeWidth:1.8,"aria-hidden":!0}),t[7]=s,t[8]=b);let x;t[9]!==u.chat.scrollToBottom||t[10]!==r||t[11]!==v||t[12]!==b||t[13]!==_?(x=(0,X.jsx)(`button`,{type:`button`,className:_,tabIndex:v,onClick:r,title:u.chat.scrollToBottom,"aria-label":u.chat.scrollToBottom,children:b}),t[9]=u.chat.scrollToBottom,t[10]=r,t[11]=v,t[12]=b,t[13]=_,t[14]=x):x=t[14];let S;return t[15]!==x||t[16]!==d||t[17]!==m?(S=(0,X.jsx)(`div`,{"data-scroll-to-bottom-dock":!0,"aria-hidden":d,className:m,children:x}),t[15]=x,t[16]=d,t[17]=m,t[18]=S):S=t[18],S});function jC(e){return e.language}function MC(e){let t=e.getBoundingClientRect();for(let n of e.querySelectorAll(`[data-chat-message-row]`)){let e=n.getBoundingClientRect(),r=n.dataset.messageRenderKey??n.dataset.clientSubmissionId;if(r&&e.bottom>t.top&&e.top<t.bottom)return{rowId:r,offset:e.top-t.top}}return null}function NC(e,t){if(!t)return!1;let n=Array.from(e.querySelectorAll(`[data-chat-message-row]`)).find(e=>e.dataset.messageRenderKey===t.rowId||e.dataset.clientSubmissionId===t.rowId);if(!n)return!1;let r=n.getBoundingClientRect().top-e.getBoundingClientRect().top-t.offset;return Math.abs(r)>.5&&(e.scrollTop+=r),!0}function PC(e){return e.webkitDirectionInvertedFromDevice===!0?e.deltaY>0:e.deltaY<0}function FC(e,t){return!e||!t||e.role!==t.role?!1:e===t?!0:e.renderKey&&t.renderKey?e.renderKey===t.renderKey:e.clientSubmissionId&&t.clientSubmissionId?e.clientSubmissionId===t.clientSubmissionId:e.timestamp!=null&&e.timestamp===t.timestamp&&e.turnId===t.turnId}function IC(e){let t=(0,Y.c)(48),{hasToken:n,showSessionLoading:r,conversationId:i,chatMessages:a,streaming:o,hasMore:s,loadingMore:c,loadMoreMessages:l}=e,u=(0,Z.useRef)(null),d=(0,Z.useRef)(null),f=(0,Z.useRef)(null),p=(0,Z.useRef)(!0),m=(0,Z.useRef)(null),h=(0,Z.useRef)(null),g=(0,Z.useRef)(null),_=(0,Z.useRef)(null),v=(0,Z.useRef)(0),y=(0,Z.useRef)(0),b=(0,Z.useRef)(null),x=(0,Z.useRef)(null),S=(0,Z.useRef)(null),C=(0,Z.useRef)(null),w=(0,Z.useRef)(0),T=(0,Z.useRef)(0),[E,D]=(0,Z.useState)(!0),O=(0,Z.useRef)(!0),k=(0,Z.useRef)(0),A=(0,Z.useRef)(o),j;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(j={first:void 0,len:0,scrollHeight:0},t[0]=j):j=t[0];let M=(0,Z.useRef)(j),N;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(N=e=>{p.current=e,e&&(S.current=null)},t[1]=N):N=t[1];let P=N,F;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(F=e=>{let t=u.current;if(!t)return;let n=pC(t);P(n),D(n),_.current=n?e:null,n||(S.current=MC(t))},t[2]=F):F=t[2];let I=F,L;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(L=()=>{let e=u.current,t=m.current;if(!e||!t||!p.current||!_.current&&!h.current)return!1;let n=_.current??h.current;if(!n)return!1;let r=!_.current&&g.current?.isConnected?g.current:Array.from(e.querySelectorAll(`[data-chat-message-row]`)).find(e=>e.dataset.messageRenderKey===n||e.dataset.clientSubmissionId===n);if(!r)return!1;_.current&&(h.current=n,g.current=r,_.current=null,v.current=Math.min(64,Math.max(0,e.clientHeight)*.1),y.current=v.current);let i=parseFloat(getComputedStyle(t.parentElement).paddingTop)||0,a=Math.max(i,t.getBoundingClientRect().top-r.getBoundingClientRect().bottom),o=Math.max(y.current,a),s=Math.min(v.current,Math.min(64,Math.max(0,e.clientHeight)*.1)),c=Math.max(0,Math.min(s,o-a));return y.current=a+c,t.style.height===`${c}px`?!1:(t.style.height=`${c}px`,!0)},t[3]=L):L=t[3];let R=L,z;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(z=e=>{let t=u.current;if(!t||!e?.force&&!p.current)return;e?.force&&P(!0);let n=yC(t);if(n){n.end(!!e?.smooth),w.current=t.scrollHeight,T.current=t.clientHeight;return}if(e?.smooth){t.scrollTo({top:t.scrollHeight,behavior:gC()});return}mC(t),w.current=t.scrollHeight,T.current=t.clientHeight,D(pC(t))},t[4]=z):z=t[4];let B=z,ee;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(ee=()=>{let e=u.current;!e||e.scrollHeight<=e.clientHeight||(P(!1),D(pC(e)))},t[5]=ee):ee=t[5];let V=ee,H;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(H=()=>{let e=u.current;if(!e)return;!p.current&&!yC(e)&&NC(e,S.current);let t=R(),n=e.scrollHeight>w.current,r=e.clientHeight<T.current;w.current=e.scrollHeight,T.current=e.clientHeight,(n||r||t)&&B(),D(pC(e))},t[6]=H):H=t[6];let te=H,U;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(U=()=>{let e=u.current;e&&p.current&&(yC(e)?mC(e):e.scrollHeight>w.current&&B()),C.current===null&&(C.current=requestAnimationFrame(()=>{C.current=null,te()}))},t[7]=U):U=t[7];let W=U,ne;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(ne=e=>{if(f.current===e||(x.current?.disconnect(),b.current?.disconnect(),b.current=null,x.current=null,f.current=e,!e))return;let t=new ResizeObserver(W);t.observe(e),x.current=t;let n=new MutationObserver(e=>{let t=u.current;!t||!p.current||!yC(t)||(R()||e.some(LC))&&mC(t)});n.observe(e,{subtree:!0,childList:!0,characterData:!0,attributes:!0,attributeFilter:[`style`]}),b.current=n},t[8]=ne):ne=t[8];let re=ne,ie,ae;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(ie=()=>()=>{x.current?.disconnect(),b.current?.disconnect(),C.current!==null&&(cancelAnimationFrame(C.current),C.current=null)},ae=[],t[9]=ie,t[10]=ae):(ie=t[9],ae=t[10]),(0,Z.useEffect)(ie,ae);let oe;t[11]!==s||t[12]!==l||t[13]!==c?(oe=()=>{let e=u.current;if(!e)return;let t=pC(e),n=T.current>0&&(e.scrollHeight!==w.current||e.clientHeight!==T.current);if(!t&&p.current&&n){D(!1),W();return}P(t),t||(S.current=MC(e)),D(t),t&&R(),e.scrollTop<100&&!t&&s&&!c&&l()},t[11]=s,t[12]=l,t[13]=c,t[14]=oe):oe=t[14];let se=oe,G;t[15]===Symbol.for(`react.memo_cache_sentinel`)?(G=e=>{B({force:!0,smooth:e===void 0||e})},t[15]=G):G=t[15];let K=G,ce,le;t[16]!==n||t[17]!==r?(ce=()=>{if(n){if(r){O.current=!0;return}O.current===!0&&(O.current=!1,P(!0),B({force:!0}))}},le=[r,n,P,B],t[16]=n,t[17]=r,t[18]=ce,t[19]=le):(ce=t[18],le=t[19]),(0,Z.useLayoutEffect)(ce,le);let q;t[20]!==n||t[21]!==r?(q=()=>{!n||r||(M.current={first:void 0,len:0,scrollHeight:0},k.current=0,w.current=0,T.current=0,h.current=null,g.current=null,y.current=0,Array.from(u.current?.querySelectorAll(`[data-chat-message-row]`)??[]).some(e=>e.dataset.messageRenderKey===_.current||e.dataset.clientSubmissionId===_.current)||(_.current=null),m.current&&(m.current.style.height=`0px`),P(!0),B({force:!0}))},t[20]=n,t[21]=r,t[22]=q):q=t[22];let ue;t[23]!==i||t[24]!==n||t[25]!==r?(ue=[i,n,r,P,B],t[23]=i,t[24]=n,t[25]=r,t[26]=ue):ue=t[26],(0,Z.useLayoutEffect)(q,ue);let de,fe;t[27]!==a||t[28]!==r||t[29]!==o?(de=()=>{if(r)return;let e=A.current&&!o;A.current=o;let t=R(),n=a.length,i=k.current;k.current=n;let s=(u.current?.scrollHeight??0)>w.current;p.current&&(n>i||s||t||e)&&B()},fe=[a,o,r,B,R],t[27]=a,t[28]=r,t[29]=o,t[30]=de,t[31]=fe):(de=t[30],fe=t[31]),(0,Z.useLayoutEffect)(de,fe);let pe,me;t[32]!==a||t[33]!==r?(pe=()=>{let e=u.current;if(!e||r)return;let t=M.current,n=a[0],i=a.length,o=e.scrollHeight,s=i-t.len;s>0&&t.len>0&&!FC(n,t.first)&&FC(a[s],t.first)&&!yC(e)&&t.scrollHeight>0&&!NC(e,S.current)&&(e.scrollTop+=o-t.scrollHeight),M.current={first:n,len:i,scrollHeight:o}},me=[a,r],t[32]=a,t[33]=r,t[34]=pe,t[35]=me):(pe=t[34],me=t[35]),(0,Z.useLayoutEffect)(pe,me);let he,ge;t[36]!==n||t[37]!==r?(he=()=>{if(!n||r)return;let e=u.current;if(!e)return;let t=new ResizeObserver(W);t.observe(e);let i=e=>{Math.abs(e.deltaY)<Math.abs(e.deltaX)||Math.abs(e.deltaY)<.25||PC(e)&&V()},a=0,o=e=>{e.touches.length===1&&(a=e.touches[0].clientY)},s=e=>{if(e.touches.length!==1)return;let t=e.touches[0].clientY,n=t-a;a=t,n>2&&V()},c=t=>{if(t.button!==0)return;let n=e.offsetWidth-e.clientWidth;if(n<=0)return;let r=e.getBoundingClientRect();t.clientX>=r.right-n&&V()},l=()=>{let t=window.getSelection();!t||t.isCollapsed||!e.contains(t.anchorNode)||(V(),S.current=MC(e))},d=t=>{(t.target instanceof Element?t.target:null)?.closest(`button[aria-expanded="false"]:not([aria-haspopup]), summary`)&&(V(),S.current=MC(e))};return e.addEventListener(`chat-scroll-reading`,V),e.addEventListener(`wheel`,i,{passive:!0}),e.addEventListener(`pointerdown`,c),e.addEventListener(`touchstart`,o,{passive:!0}),e.addEventListener(`touchmove`,s,{passive:!0}),e.addEventListener(`click`,d,!0),document.addEventListener(`selectionchange`,l),()=>{t.disconnect(),e.removeEventListener(`chat-scroll-reading`,V),e.removeEventListener(`wheel`,i),e.removeEventListener(`pointerdown`,c),e.removeEventListener(`touchstart`,o),e.removeEventListener(`touchmove`,s),e.removeEventListener(`click`,d,!0),document.removeEventListener(`selectionchange`,l)}},ge=[n,r,V,W],t[36]=n,t[37]=r,t[38]=he,t[39]=ge):(he=t[38],ge=t[39]),(0,Z.useLayoutEffect)(he,ge);let _e;t[40]===n?_e=t[41]:(_e=()=>{if(!n)return;let e=u.current,t=d.current;if(!e||!t)return;let r=()=>{let n=`${t.getBoundingClientRect().height+16}px`;e.style.paddingBottom=n,e.style.scrollPaddingBottom=n,W()};r();let i=new ResizeObserver(r);return i.observe(t),()=>{i.disconnect(),e.style.removeProperty(`padding-bottom`),e.style.removeProperty(`scroll-padding-bottom`)}},t[40]=n,t[41]=_e);let ve;t[42]!==n||t[43]!==r?(ve=[n,r,W],t[42]=n,t[43]=r,t[44]=ve):ve=t[44],(0,Z.useLayoutEffect)(_e,ve);let ye;return t[45]!==E||t[46]!==se?(ye={scrollRef:u,composerDockRef:d,atBottom:E,registerListContentRef:re,scrollToBottom:K,onScroll:se,replySpaceRef:m,reserveReplySpace:I},t[45]=E,t[46]=se,t[47]=ye):ye=t[47],ye}function LC(e){return e.target instanceof HTMLElement&&e.target.hasAttribute(`data-virtuoso-scroller`)}var RC=256*1024,zC=new TextEncoder;function BC(e){return zC.encode(e).byteLength}function VC(e){return BC(e)<=262144?e:new TextDecoder().decode(zC.encode(e).subarray(0,RC),{stream:!0})}function HC(e){let t=512*1024,n=e.length>20,r=[];for(let i of e.slice(-20).reverse()){let e=i.content.filter(e=>e.type===`text`).map(e=>e.text).join(`
|
|
61
|
-
`);if((i.content.some(e=>e.type!==`text`)||i.attachments?.length)&&(n=!0),!e)continue;if(t<=256){n=!0;continue}let a=zC.encode(e),o=a.byteLength+256>t?new TextDecoder().decode(a.subarray(0,t-256),{stream:!0}):e;o!==e&&(n=!0);let s=BC(o)+256;t-=s,r.unshift({role:i.role,content:[{type:`text`,text:o}],timestamp:i.timestamp,renderKey:i.renderKey?.slice(0,128)})}return{messages:r,truncated:n,bytes:512*1024-t}}var UC=`xopc:side-chat-panes:v3`,WC={text:``,attachments:[]};function GC(e){return Math.min(760,Math.max(360,Math.round(e)))}function KC(){return{panes:{},tabs:[],widthPx:520}}function qC(){try{let e=JSON.parse(sessionStorage.getItem(UC)||`{}`),t=e.identity;if(t&&t!==m.getState().conversationId)return KC();let n=Array.isArray(e.tabs)?e.tabs.filter(e=>!!(e?.id&&e.parentConversationId)):[],r=e.panes&&typeof e.panes==`object`?e.panes:{},i=Object.fromEntries(Object.entries(r).map(([e,t])=>{let r=n.filter(t=>t.parentConversationId===e),i=typeof t?.activeId==`string`&&r.some(e=>e.id===t.activeId)?t.activeId:r.at(-1)?.id??null;return[e,{open:t?.open===!0&&r.length>0,activeId:i}]}));for(let e of n)i[e.parentConversationId]??={open:!1,activeId:e.id};return{panes:i,tabs:n,widthPx:GC(typeof e.widthPx==`number`?e.widthPx:520)}}catch{return KC()}}function JC(e){try{sessionStorage.setItem(UC,JSON.stringify({...e,identity:m.getState().conversationId}))}catch{}}var YC=qC(),XC=_((e,t)=>{let n=n=>{e(n),queueMicrotask(()=>{let e=t();JC({panes:e.panes,tabs:e.tabs,widthPx:e.widthPx})})},r=(e,r)=>{let i=t().panes[e]??{open:!1,activeId:null};n({panes:{...t().panes,[e]:{...i,...r}}})};return{...YC,drafts:{},readings:{},setDraftText:(n,r)=>e({drafts:{...t().drafts,[n]:{...t().drafts[n]??WC,text:r}}}),setDraftAttachments:(n,r)=>e({drafts:{...t().drafts,[n]:{...t().drafts[n]??WC,attachments:r}}}),rememberMessages:(n,r)=>{let i={...t().readings};delete i[n],i[n]=HC(r),i[n].truncated||=t().readings[n]?.truncated??!1;let a=Object.values(i).reduce((e,t)=>e+t.bytes,0);for(;Object.keys(i).length>5||a>2097152;){let e=Object.keys(i)[0];a-=i[e].bytes,delete i[e]}e({readings:i})},markEnded:(e,r)=>n({tabs:t().tabs.map(t=>t.id===e?{...t,ended:r,runId:void 0}:t)}),markPromoted:(e,r)=>n({tabs:t().tabs.map(t=>t.id===e?{...t,ended:`promoted`,promotedConversationId:r,runId:void 0}:t)}),replaceTab:(r,i)=>{oi.getState().replaceSideChat(r,i.id,i.parentConversationId);let a=t();if(!a.tabs.some(e=>e.id===r))return;let o={...a.drafts,[i.id]:a.drafts[r]??WC},s={...a.readings};delete o[r],delete s[r],e({drafts:o,readings:s}),n({tabs:a.tabs.map(e=>e.id===r?{...i,fresh:!0}:e),panes:{...a.panes,[i.parentConversationId]:{open:a.panes[i.parentConversationId]?.open??!1,activeId:a.panes[i.parentConversationId]?.activeId===r?i.id:a.panes[i.parentConversationId]?.activeId??i.id}}})},reset:()=>{oi.getState().reset(),e({drafts:{},readings:{},pendingCreate:null,creatingRequests:{}}),n({panes:{},tabs:[]})},pendingCreate:null,creatingRequests:{},requestCreate:(n,i=[])=>{oi.getState().setOpen(!0,n),!(t().creatingRequests[n]||t().pendingCreate?.parentConversationId===n)&&(e({pendingCreate:{requestId:crypto.randomUUID(),parentConversationId:n,selections:i}}),r(n,{open:!0}))},claimPendingCreate:(n,r)=>{let i=t().pendingCreate;return!i||i.parentConversationId!==n||i.requestId!==r?null:(e({pendingCreate:null,creatingRequests:{...t().creatingRequests,[n]:r}}),i)},finishCreate:(n,r)=>{if(t().creatingRequests[n]!==r)return;let i={...t().creatingRequests};delete i[n],e({creatingRequests:i})},addTab:(e,r=!0)=>{oi.getState().addSideChat(e.id,e.title,e.parentConversationId,r);let i=[...t().tabs.filter(t=>t.id!==e.id),{...e,lastSelectedAt:Date.now()}],a=t().panes[e.parentConversationId]??{open:!1,activeId:null};n({tabs:i,panes:{...t().panes,[e.parentConversationId]:{...a,activeId:e.id,open:!0}}})},removeTab:r=>{let i=t().tabs.find(e=>e.id===r);if(!i)return;oi.getState().remove(`side:${r}`,i.parentConversationId);let a={...t().drafts},o={...t().readings};delete a[r],delete o[r],e({drafts:a,readings:o});let s=t().tabs.filter(e=>e.id!==r),c=s.filter(e=>e.parentConversationId===i.parentConversationId),l=t().panes[i.parentConversationId]??{open:!1,activeId:null},u=l.activeId===r?c.at(-1)?.id??null:l.activeId;n({tabs:s,panes:{...t().panes,[i.parentConversationId]:{open:c.length>0&&l.open,activeId:u}}})},setActive:e=>{let i=t().tabs.find(t=>t.id===e);i&&(oi.getState().activate(`side:${e}`,i.parentConversationId),n({tabs:t().tabs.map(t=>t.id===e?{...t,lastSelectedAt:Date.now()}:t)}),r(i.parentConversationId,{activeId:e,open:!0}))},setTabStatus:(n,r)=>{let i=t().tabs.find(e=>e.id===n);i&&(i.waiting!==r.waiting||i.disconnected!==r.disconnected||i.unread!==r.unread)&&e({tabs:t().tabs.map(e=>e.id===n?{...e,...r}:e)})},setTabRunId:(e,r)=>n({tabs:t().tabs.map(t=>t.id===e?{...t,runId:r}:t)}),setOpen:(e,n)=>{if(oi.getState().setOpen(n,e),!n){r(e,{open:n});return}let i=t(),a=i.tabs.filter(t=>t.parentConversationId===e&&!t.ended&&!t.promotedConversationId),o=a.find(t=>t.id===i.panes[e]?.activeId)??a.reduce((e,t)=>!e||(t.lastSelectedAt??0)>=(e.lastSelectedAt??0)?t:e,void 0);r(e,{open:n,activeId:o?.id??null}),o&&oi.getState().activate(`side:${o.id}`,e),o||i.requestCreate(e)},setWidthPx:e=>n({widthPx:GC(e)})}});m.subscribe((e,t)=>{if(e.conversationId&&!t.conversationId&&e.baseUrl===t.baseUrl){let e=qC();XC.setState(e)}if(e.baseUrl!==t.baseUrl||t.conversationId!==void 0&&e.conversationId!==t.conversationId){XC.getState().reset();try{sessionStorage.removeItem(`xopc:side-chat-client-id`)}catch{}}});function ZC(e){return e.acceptsArgs?`/${e.name} `:`/${e.name}`}var QC=3e4,$C=null;function ew(e,t){return e.map(e=>({id:`file:${e.id}`,kind:`file`,name:e.name,description:e.path,relativePath:e.path,isDirectory:e.isDirectory,...t.has(e.path)?{isRecent:!0}:{},fileRef:{sourceId:e.id,expectedVersion:e.revision}}))}async function tw(e,t){let n=t.conversationId?.trim(),r=t.agentId?.trim(),i=t.limit??15,a=e.trim(),o=t.recentPaths??new Set;if(n&&a.length===0){let e=Date.now();if($C&&$C.key===n&&e-$C.at<QC)return $C.items.map(e=>({...e,...o.has(e.relativePath)?{isRecent:!0}:{isRecent:void 0}}))}let s={conversationId:n,agentId:r},c=ew(a.length===0?await Aa(``,s):await Oa(a,s,i),o);return n&&a.length===0&&($C={key:n,at:Date.now(),items:c}),c}async function nw(e,t){return Aa(e,{conversationId:t.conversationId,agentId:t.agentId})}function rw(e,...t){let n=e.trim().toLocaleLowerCase();return!n||t.some(e=>e?.toLocaleLowerCase().includes(n))}async function iw(e){let t=await f(p(e)),n=await t.json().catch(()=>({}));if(!t.ok||!n.payload)throw Error(typeof n.error==`string`?n.error:`HTTP ${t.status}`);return n.payload}var aw=[{kind:`file`,search:(e,t)=>tw(e,{conversationId:t.conversationId,agentId:t.currentAgentId,limit:10,recentPaths:t.recentPaths})},{kind:`note`,async search(e,t){return(await Be({...e.trim()?{search:e.trim()}:{},limit:5,sortBy:`updatedAt`,sortOrder:`desc`})).items.filter(e=>e.status!==`trashed`&&!t.selectedContextKeys.has(`note:${e.id}`)).map(e=>({id:`note:${e.id}`,kind:`note`,name:e.title?.trim()||e.snippet?.trim()||y(t.language).chat.commandPalette.untitledNote,description:e.snippet?.trim()||``,noteRef:{sourceId:e.id,expectedVersion:String(e.updatedAt)}}))}},{kind:`session`,async search(e,t){return(await fn({...e.trim()?{search:e.trim()}:{},limit:5,sortBy:`updatedAt`,sortOrder:`desc`})).items.filter(e=>e.key!==t.conversationId&&!t.selectedContextKeys.has(`session:${e.key}`)).map(e=>({id:`session:${e.key}`,kind:`session`,name:e.name?.trim()||e.key,description:`${e.messageCount} messages`,sessionRef:{sourceId:e.key,expectedVersion:e.updatedAt}}))}},{kind:`skill`,async search(e,t){return(await to(t.currentAgentId,t.conversationId)).skills.flatMap(n=>{if(!n.availableForCurrentAgent)return[];let r=so(n,t.language);return rw(e,n.name,r.displayName,r.description,...r.searchTerms)?[{id:`skill:${n.name}`,kind:`skill`,name:r.displayName,description:r.description,canonicalName:n.name}]:[]}).slice(0,5)}},{kind:`agent`,async search(e,t){let n=await Jr(),r=y(t.language).agentsSettings;return n.items.flatMap(t=>{let n=Ao(t,r),i=jo(t,r);return rw(e,t.id,n,i)?[{id:`agent:${t.id}`,kind:`agent`,name:n,description:i,agentId:t.id,...t.avatar?{avatar:t.avatar}:{}}]:[]}).slice(0,5)}},{kind:`browser_tab`,async search(e,t){return(await iw(`/api/browser/tabs?${new URLSearchParams({conversationId:t.conversationId})}`)).tabs.flatMap(n=>!rw(e,n.title,n.url)||t.selectedContextKeys.has(`browser_tab:${n.id}`)?[]:[{id:`browser-tab:${n.id}`,kind:`browser_tab`,name:n.title||n.url,description:n.url,url:n.url,tabRef:{sourceId:n.id,expectedVersion:n.documentId}}])}}],ow=(0,Z.createContext)({target:null,register:()=>()=>{}});function sw(e){let t=(0,Y.c)(9),{children:n}=e,r;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=[],t[0]=r):r=t[0];let[i,a]=(0,Z.useState)(r),o;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(o=e=>(a(t=>[...t,e]),()=>a(t=>t.filter(t=>t!==e))),t[1]=o):o=t[1];let s=o,c;t[2]===i?c=t[3]:(c=i.at(-1)??null,t[2]=i,t[3]=c);let l;t[4]===c?l=t[5]:(l={target:c,register:s},t[4]=c,t[5]=l);let u=l,d;return t[6]!==n||t[7]!==u?(d=(0,X.jsx)(ow,{value:u,children:n}),t[6]=n,t[7]=u,t[8]=d):d=t[8],d}function cw(){let e=(0,Y.c)(2),{register:t}=(0,Z.useContext)(ow),n;return e[0]===t?n=e[1]:(n=(0,X.jsx)(`div`,{ref:t,className:`min-w-0 shrink-0`}),e[0]=t,e[1]=n),n}function lw(){return(0,Z.useContext)(ow).target}function uw({conversationId:e,turnId:t,messages:n,ready:r,hasMore:i,loadingMore:a,loadMore:o,reveal:s,onLocated:c}){let l=(0,Z.useRef)({key:``,finished:!1,requestedLength:-1});(0,Z.useEffect)(()=>{let u=`${e??``}:${t??``}`;if(l.current.key!==u&&(l.current={key:u,finished:!1,requestedLength:-1}),!t||!r||l.current.finished)return;let d=l.current,f=n.findIndex(e=>e.turnId===t);if(f>=0){let e=0,t=!1,n=0,r=()=>{t||l.current===d&&(s(f)?(d.finished=!0,c?.(!0)):++n<3?e=requestAnimationFrame(r):(d.finished=!0,c?.(!1)))};return e=requestAnimationFrame(r),()=>{t=!0,cancelAnimationFrame(e)}}if(!a){if(!i||l.current.requestedLength===n.length){l.current.finished=!0,c?.(!1);return}l.current.requestedLength=n.length,o().catch(()=>{l.current===d&&(d.finished=!0,c?.(!1))})}},[e,t,n,r,i,a,o,s,c])}function dw(e){let t=(0,Y.c)(24),{sk:n,onPick:r,disabled:i}=e,a;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,X.jsx)(zt,{className:`size-4`,"aria-hidden":!0}),t[0]=a):a=t[0];let o;t[1]===n.findCapability?o=t[2]:(o=(0,X.jsxs)(`span`,{className:`inline-flex items-center gap-2 text-sm text-accent-fg`,children:[a,n.findCapability]}),t[1]=n.findCapability,t[2]=o);let s;t[3]===n.findWelcome?s=t[4]:(s=(0,X.jsx)(`h1`,{className:`text-xl font-semibold text-fg`,children:n.findWelcome}),t[3]=n.findWelcome,t[4]=s);let c;t[5]===n.findDescription?c=t[6]:(c=(0,X.jsx)(`p`,{className:`text-sm leading-relaxed text-fg-muted`,children:n.findDescription}),t[5]=n.findDescription,t[6]=c);let l;if(t[7]!==i||t[8]!==r||t[9]!==n.findExamples){let e;t[11]!==i||t[12]!==r?(e=e=>(0,X.jsx)(ai,{disabled:i,onClick:()=>r(e),children:e},e),t[11]=i,t[12]=r,t[13]=e):e=t[13],l=n.findExamples.map(e),t[7]=i,t[8]=r,t[9]=n.findExamples,t[10]=l}else l=t[10];let d;t[14]===l?d=t[15]:(d=(0,X.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:l}),t[14]=l,t[15]=d);let f;t[16]===n.findBack?f=t[17]:(f=(0,X.jsx)(u,{to:`/capabilities/skills`,className:`text-sm text-accent-fg hover:underline`,children:n.findBack}),t[16]=n.findBack,t[17]=f);let p;return t[18]!==o||t[19]!==s||t[20]!==c||t[21]!==d||t[22]!==f?(p=(0,X.jsxs)(`section`,{className:`mx-auto flex max-w-xl flex-col items-start gap-4 py-8 sm:py-12`,children:[o,s,c,d,f]}),t[18]=o,t[19]=s,t[20]=c,t[21]=d,t[22]=f,t[23]=p):p=t[23],p}function fw(e){let t=`/api/sessions/${encodeURIComponent(e)}/connection-wait`,n=Mn(t=>t.sessions[e]?.localDraft),{data:r,mutate:i,isLoading:a}=Lr(n?null:[t,n===!1?`persisted`:`unknown`],async()=>await br(e)?null:(await g(p(t))).payload,{refreshInterval:e=>e?.wait?5e3:0,revalidateOnFocus:!0}),o=(0,Z.useRef)(r);o.current=r;let s=(0,Z.useRef)(!1),c=(0,Z.useRef)(!1),l=(0,Z.useRef)(0),u=(0,Z.useRef)(null),[d,f]=(0,Z.useState)(!1),[m,_]=(0,Z.useState)(),[v,y]=(0,Z.useState)(),b=(0,Z.useCallback)(async(e,n,r,a,d)=>{let m=o.current,v=m?.wait;if(!v||(e===`cancel`?c.current:s.current||c.current))return!1;e===`cancel`?c.current=!0:s.current=!0,l.current+=1,f(!0),_(void 0),e===`cancel`&&y(void 0);let b=e===`connect`?Fo():null,x=JSON.stringify([v.id,v.objectiveRevision,e,n,r,a,d]);u.current?.signature!==x&&(u.current={signature:x,key:crypto.randomUUID()});let S=u.current.key,C=i=>g(p(`${t}/actions`),{method:`POST`,body:JSON.stringify({action:e,needKey:n,accountId:r,candidateRef:a,instanceId:d,waitId:v.id,expectedTranscriptId:i.transcriptId,expectedVersion:i.wait.version,...e===`cancel`?{expectedObjectiveRevision:v.objectiveRevision}:{},idempotencyKey:S})});try{let n;try{n=await C(m)}catch(r){if(e!==`cancel`||r.status!==409)throw r;let a=(await g(p(t))).payload;if(await i(e=>!e||e.transcriptId!==a.transcriptId||a.revision>=e.revision?a:e,!1),a.transcriptId!==m.transcriptId||a.wait?.id!==v.id||a.wait.objectiveRevision!==v.objectiveRevision)throw r;n=await C(a)}let r=n.payload.snapshot;if(await i(e=>!e||e.transcriptId!==r.transcriptId||r.revision>=e.revision?r:e,!1),n.payload.authorizationUrl){if(!await Po(n.payload.authorizationUrl,b))throw Error(`Unable to open the authorization window. Allow pop-ups, then retry.`)}else Io(b);return u.current?.signature===x&&(u.current=null),!0}catch(t){if(Io(b),t.status===409&&e===`cancel`){let e=h.getState().language===`zh`?`目标状态已变化,未能取消。请检查当前任务状态后再试。`:`The objective state changed and cancellation was not confirmed. Check its current status and try again.`;_(e),y(e)}else if(t.status!==409){let n=t instanceof Error?t.message:String(t);_(n),e===`cancel`&&y(n)}return await i(),!1}finally{e===`cancel`?c.current=!1:s.current=!1,--l.current,f(l.current>0)}},[t,i]);return(0,Z.useEffect)(()=>{let t=t=>{let n=t.detail;n?.conversationId===e&&(n.revision??1/0)>(o.current?.revision??0)&&i()};window.addEventListener(`session-connection-wait-changed`,t);let n=()=>{i()};return window.addEventListener(`gateway-realtime-connected`,n),()=>{window.removeEventListener(`session-connection-wait-changed`,t),window.removeEventListener(`gateway-realtime-connected`,n)}},[e,i]),{wait:r?.wait,isLoading:a,busy:d,error:m,cancellationError:v,act:b,dismissError:()=>{_(void 0),y(void 0)}}}function pw(e){let t=(0,Y.c)(39),{need:n,language:r,disabled:i,onSelect:a,onConnect:o}=e,s=(0,Z.useId)(),[c,l]=(0,Z.useState)(),u=r===`zh`,d;if(t[0]!==n.accounts||t[1]!==c){let e;t[3]===c?e=t[4]:(e=e=>e.id===c,t[3]=c,t[4]=e),d=n.accounts.some(e),t[0]=n.accounts,t[1]=c,t[2]=d}else d=t[2];let f=d,p=u?`这次使用哪个 ${n.label} 账号或工作区?`:`Which ${n.label} account or workspace should this request use?`,m;t[5]===p?m=t[6]:(m=(0,X.jsx)(`legend`,{className:`float-left mb-3 w-full text-sm font-medium text-fg`,children:p}),t[5]=p,t[6]=m);let h;if(t[7]!==s||t[8]!==n.accounts||t[9]!==c){let e;t[11]!==s||t[12]!==c?(e=e=>(0,X.jsxs)(`label`,{className:`flex min-h-11 cursor-pointer items-center gap-3 rounded-lg border px-3 py-2 text-sm text-fg hover:bg-surface-hover ${c===e.id?`border-accent bg-surface-hover`:`border-edge`}`,children:[(0,X.jsx)(`input`,{type:`radio`,name:s,value:e.id,checked:c===e.id,onChange:()=>l(e.id),className:`shrink-0 accent-accent focus-visible:outline-2 focus-visible:outline-accent`}),(0,X.jsx)(`span`,{className:`min-w-0 break-words`,children:e.label})]},e.id),t[11]=s,t[12]=c,t[13]=e):e=t[13],h=n.accounts.map(e),t[7]=s,t[8]=n.accounts,t[9]=c,t[10]=h}else h=t[10];let g;t[14]===h?g=t[15]:(g=(0,X.jsx)(`div`,{className:`clear-both grid max-h-48 gap-2 overflow-y-auto sm:grid-cols-2`,children:h}),t[14]=h,t[15]=g);let _=u?`选择仅用于本次目标,选定后会自动继续。`:`This choice applies to this objective only. It will continue after selection.`,v;t[16]===_?v=t[17]:(v=(0,X.jsx)(`p`,{className:`text-xs text-fg-muted`,children:_}),t[16]=_,t[17]=v);let y=i||!f,b;t[18]!==a||t[19]!==c||t[20]!==f?(b=()=>{f&&c&&a(c)},t[18]=a,t[19]=c,t[20]=f,t[21]=b):b=t[21];let x=u?`使用所选账号并继续`:`Use selected account and continue`,S;t[22]!==x||t[23]!==y||t[24]!==b?(S=(0,X.jsx)(`button`,{type:`button`,disabled:y,onClick:b,className:`min-h-11 rounded-lg bg-accent px-3 py-2 text-sm text-on-accent disabled:opacity-50`,children:x}),t[22]=x,t[23]=y,t[24]=b,t[25]=S):S=t[25];let C=u?`连接其他账号`:`Connect another account`,w;t[26]!==i||t[27]!==o||t[28]!==C?(w=(0,X.jsx)(`button`,{type:`button`,disabled:i,onClick:o,className:`min-h-11 rounded-lg px-3 py-2 text-sm text-accent hover:bg-surface-hover disabled:opacity-50`,children:C}),t[26]=i,t[27]=o,t[28]=C,t[29]=w):w=t[29];let T;t[30]!==S||t[31]!==w?(T=(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[S,w]}),t[30]=S,t[31]=w,t[32]=T):T=t[32];let E;return t[33]!==i||t[34]!==T||t[35]!==m||t[36]!==g||t[37]!==v?(E=(0,X.jsxs)(`fieldset`,{disabled:i,className:`mt-3 min-w-0 space-y-3 border-t border-edge-subtle pt-3`,children:[m,g,v,T]}),t[33]=i,t[34]=T,t[35]=m,t[36]=g,t[37]=v,t[38]=E):E=t[38],E}var mw=(0,Z.lazy)(()=>o(()=>import(`./mcp-conversation-setup-page-BQ_US_jP.js`).then(e=>({default:e.McpConversationSetupDialog})),__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])));function hw(e){let t=(0,Y.c)(35),{conversationId:n}=e,r=h(vw),[i,a]=l(),o;t[0]===i?o=t[1]:(o=i.get(`mcpSetup`),t[0]=i,t[1]=o);let s=o,c;t[2]!==i||t[3]!==a?(c=e=>{let t=new URLSearchParams(i);e?t.set(`mcpSetup`,e):t.delete(`mcpSetup`),a(t,{replace:!e})},t[2]=i,t[3]=a,t[4]=c):c=t[4];let d=c,f;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(f={refreshInterval:gw,shouldRetryOnError:!1},t[5]=f):f=t[5];let{data:p,mutate:m}=Lr(`/api/mcp/setup/conversations/${encodeURIComponent(n)}`,_w,f),g;t[6]!==n||t[7]!==p?.permitted||t[8]!==m?(g=()=>{if(p?.permitted===!1)return;let e=e=>{let t=e.detail;(t?.conversationId??t?.key)===n&&m()},t=()=>{m()};return window.addEventListener(`session-mcp-setup-changed`,e),window.addEventListener(`session-transcript-updated`,e),window.addEventListener(`gateway-realtime-connected`,t),()=>{window.removeEventListener(`session-mcp-setup-changed`,e),window.removeEventListener(`session-transcript-updated`,e),window.removeEventListener(`gateway-realtime-connected`,t)}},t[6]=n,t[7]=p?.permitted,t[8]=m,t[9]=g):g=t[9];let _=p?.permitted,v;t[10]!==n||t[11]!==m||t[12]!==_?(v=[n,m,_],t[10]=n,t[11]=m,t[12]=_,t[13]=v):v=t[13],(0,Z.useEffect)(g,v);let y;t[14]!==m||t[15]!==s||t[16]!==d?(y=s?(0,X.jsx)(Z.Suspense,{fallback:null,children:(0,X.jsx)(mw,{setupId:s,onClose:()=>{d(null),m()}})}):null,t[14]=m,t[15]=s,t[16]=d,t[17]=y):y=t[17];let b=y;if(!p?.setup)return b;let x=p.setup,S=r===`zh`?`服务连接`:`Service connection`,C=x.expired?r===`zh`?`连接请求已过期`:`Connection request expired`:r===`zh`?`连接`:`Connect`,w=x.displayName||x.serverId,T;t[18]!==w||t[19]!==C?(T=(0,X.jsxs)(`span`,{className:`min-w-0 flex-1 break-all text-sm text-fg`,role:`status`,children:[C,` `,w]}),t[18]=w,t[19]=C,t[20]=T):T=t[20];let E=`/mcp-setup/${encodeURIComponent(x.setupId)}`,D;t[21]!==d||t[22]!==x.setupId?(D=e=>{e.button!==0||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey||(e.preventDefault(),d(x.setupId))},t[21]=d,t[22]=x.setupId,t[23]=D):D=t[23];let O=r===`zh`?`完成连接`:`Complete connection`,k;t[24]!==E||t[25]!==D||t[26]!==O?(k=(0,X.jsx)(u,{className:`inline-flex min-h-11 items-center rounded-lg px-3 text-sm text-accent-fg hover:bg-surface-hover`,to:E,onClick:D,children:O}),t[24]=E,t[25]=D,t[26]=O,t[27]=k):k=t[27];let A;t[28]!==T||t[29]!==k||t[30]!==S?(A=(0,X.jsxs)(`section`,{className:`mb-2 flex flex-wrap items-center gap-3 rounded-xl border border-edge bg-surface-panel px-3 py-2`,"aria-label":S,children:[T,k]}),t[28]=T,t[29]=k,t[30]=S,t[31]=A):A=t[31];let j;return t[32]!==b||t[33]!==A?(j=(0,X.jsxs)(X.Fragment,{children:[A,b]}),t[32]=b,t[33]=A,t[34]=j):j=t[34],j}function gw(e){return e?.setup?5e3:0}async function _w(e){try{return{permitted:!0,...(await g(p(e))).payload}}catch(e){let t=e;if([403,404].includes(t.status??0))return{permitted:!1,setup:null};throw t}}function vw(e){return e.language}var yw={zh:{waiting:`等待连接`,install:`安装`,installing:`正在准备安装`,connect:`连接`,reconnect:`重新连接`,details:`查看详情`,skip:`跳过连接`,cancel:`取消这个目标`,ready:`已连接`,check:`我已完成授权`,authorizing:`等待完成授权`,queued:`已连接,等待继续`,queuedSkipped:`等待使用现有信息继续`,checkingConnection:`正在检查连接`,checkingTools:`已连接,正在验证工具`,queueHint:`目标已保存,正在等待当前执行结束。`,interruptedInputHint:`有条补充消息在重启时中断。请重新发送要求,或移除上方中断的消息后继续。`,checkFailed:`连接检查暂时失败,目标已保存`,interrupted:`恢复检查曾中断,目标已保存`,lastChecked:`最近检查`,scope:`确认后继续`,scopeHint:`这个目标已等待了一段时间。请确认仍要按下方原始要求继续;如需修改时间范围,请先在聊天中说明。未读等条件将以实际执行时为准。`,account:`选择账号`,all:`查看全部连接`,close:`关闭`,intro:`完成连接后,将自动恢复当前目标。你也可以继续发送消息。`,callbackHint:`远程 Gateway 无法接收本地回调时,粘贴浏览器地址栏中的完整回调 URL。`,callbackPlaceholder:`完整回调 URL`,callbackSubmit:`完成连接`,replace:`更换应用`,confirmReplace:`确认改用`,apps:`个应用需要连接`,preserved:`目标已保留`,retry:`重试检查`,toolsUnavailable:`应用工具暂不可用`,toolsHint:`账号已连接,当前无法使用任务所需工具。可以重试检查,无需重新授权。`},en:{waiting:`Waiting for connection`,install:`Install`,installing:`Preparing installation`,connect:`Connect`,reconnect:`Reconnect`,details:`Details`,skip:`Skip connection`,cancel:`Cancel this objective`,ready:`Connected`,check:`Check authorization`,authorizing:`Waiting for authorization`,queued:`Connected, waiting to continue`,queuedSkipped:`Waiting to continue with available information`,checkingConnection:`Checking connection`,checkingTools:`Connected, checking tools`,queueHint:`Your objective is saved. Waiting for the current execution to finish.`,interruptedInputHint:`A message was interrupted during restart. Resend the requirement or remove the interrupted message above before continuing.`,checkFailed:`Connection check failed; objective saved`,interrupted:`Recovery check interrupted; objective saved`,lastChecked:`Last checked`,scope:`Confirm and continue`,scopeHint:`This objective has been waiting for a while. Confirm the original request below, or send a message to change the time range first. Conditions such as unread status are evaluated at execution time.`,account:`Choose an account`,all:`View all connections`,close:`Close`,intro:`The current objective resumes automatically after connecting. You can keep sending messages.`,callbackHint:`If a remote Gateway cannot receive the local callback, paste the complete callback URL from the browser address bar.`,callbackPlaceholder:`Complete callback URL`,callbackSubmit:`Complete connection`,replace:`Change app`,confirmReplace:`Confirm switch to`,apps:`apps need connecting`,preserved:`Objective preserved`,retry:`Retry check`,toolsUnavailable:`App tools unavailable`,toolsHint:`The account is connected, but the tools needed for this task are unavailable. Retry the check without reconnecting.`}},bw=`rounded-lg border border-edge px-3 py-1.5 text-sm text-fg hover:bg-surface-hover disabled:opacity-50`,xw=`rounded-lg bg-accent px-3 py-1.5 text-sm text-on-accent disabled:opacity-50`;function Sw({conversationId:e}){let{wait:t,busy:n,error:r,cancellationError:i,act:a,dismissError:o}=fw(e),[s,c]=(0,Z.useState)(!1),[l,u]=(0,Z.useState)(),[d,f]=(0,Z.useState)(),[p,m]=(0,Z.useState)(),[g,_]=(0,Z.useState)(!1),[v,x]=(0,Z.useState)(),O=h(e=>e.language),k=yw[O];if(!t)return i?(0,X.jsxs)(`div`,{role:`alert`,className:`mb-2 flex items-center gap-2 rounded-xl border border-edge bg-surface-panel px-3 py-2 text-sm text-fg`,children:[(0,X.jsx)(`p`,{className:`min-w-0 flex-1`,children:i}),(0,X.jsx)(`button`,{type:`button`,onClick:o,className:bw,children:k.close})]}):(0,X.jsx)(hw,{conversationId:e});let A=t.needs[0],j=t.needs.length===1,M=t.phase===`queued`,N=t.recoveryStage===`checking_connection`||t.recoveryStage===`checking_tools`,P=t.needs.find(e=>e.phase===`choose_account`),F=t.needs.some(e=>e.capabilityError);if(t.phase===`ready`&&!N&&!t.recoveryError)return(0,X.jsx)(hw,{conversationId:e});let I=t.recoveryStage===`checking_connection`?k.checkingConnection:t.recoveryStage===`checking_tools`?k.checkingTools:M?t.resolution===`skipped`?k.queuedSkipped:k.queued:t.recoveryError===`check_failed`?k.checkFailed:t.recoveryError?k.interrupted:F?k.toolsUnavailable:P?k.account:j&&A.phase===`authorizing`?k.authorizing:k.waiting,L=M||N?k.details:t.recoveryError?k.retry:t.phase===`review_scope`?k.scope:j&&A.phase===`install`?g?k.installing:`${k.install} ${A.label}`:j&&A.phase===`connect`?O===`zh`?`连接 ${A.label}`:`Connect ${A.label}`:j&&A.phase===`reconnect`?k.reconnect:j&&A.phase===`authorizing`?k.check:k.details;async function R(e=A){if(e.target.type===`store-connector`){_(!0),x(void 0);try{let t=await oa(e.target.packageName,e.target.version);if(t.reviewHash!==e.target.reviewHash||t.definition.id!==e.target.connectorId||t.definition.provenance?.sha256!==e.target.sha256)throw Error(O===`zh`?`Connector 包在审查后发生了变化,请重新发起推荐。`:`The Connector package changed after review. Request a new recommendation.`);f(wt(t.definition,{packageName:t.packageName,version:t.version,reviewHash:t.reviewHash,permissions:t.permissions})),m(e.key)}catch(e){x(e instanceof Error?e.message:String(e))}finally{_(!1)}}}function z(){M||N?c(!0):t?.recoveryError?a(`check`):t?.phase===`review_scope`?c(!0):j&&A.phase===`install`?R():j&&[`connect`,`reconnect`].includes(A.phase)?a(`connect`,A.key):j&&A.phase===`authorizing`?a(`check`):c(!0)}return(0,X.jsxs)(`section`,{className:`mb-2 rounded-xl border border-edge bg-surface-panel px-3 py-2`,"aria-label":I,children:[(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,X.jsx)(Ke,{className:`size-4 shrink-0 text-accent`,"aria-hidden":!0}),(0,X.jsxs)(`button`,{type:`button`,className:`min-w-0 flex-1 text-left text-sm text-fg`,onClick:()=>c(!0),children:[(0,X.jsx)(`span`,{role:`status`,children:j?`${I} · ${A.label}`:`${I} · ${t.needs.length} ${k.apps}`}),(0,X.jsx)(U,{className:`ml-1 inline size-3`,"aria-hidden":!0})]}),(0,X.jsxs)(`button`,{type:`button`,className:P||M||N?bw:xw,disabled:n&&!N||g,onClick:z,children:[n&&(0,X.jsx)(Ye,{className:`mr-1 inline size-3 animate-spin`,"aria-hidden":!0}),L]}),!M&&!N&&(0,X.jsx)(`button`,{type:`button`,className:`text-xs text-fg-muted hover:text-fg`,disabled:n,onClick:()=>void a(`skip`),children:k.skip}),(0,X.jsx)(`button`,{type:`button`,className:`min-h-11 px-2 text-xs text-fg-muted hover:text-fg`,onClick:()=>void a(`cancel`),children:k.cancel})]}),t.queueBlocked&&(0,X.jsx)(`p`,{className:`mt-2 text-xs text-fg-muted`,children:t.blockedInputId?k.interruptedInputHint:k.queueHint}),t.lastCheckedAt&&(0,X.jsxs)(`p`,{className:`mt-2 text-xs text-fg-muted`,children:[k.lastChecked,`: `,new Date(t.lastCheckedAt).toLocaleTimeString(O===`zh`?`zh-CN`:`en-US`)]}),P&&!M&&(0,X.jsx)(`p`,{className:`mt-2 line-clamp-2 break-words text-sm text-fg-muted`,children:t.summary}),P&&!M&&(0,X.jsx)(pw,{need:P,language:O,disabled:n||N,onSelect:e=>void a(`select_account`,P.key,e),onConnect:()=>void a(`connect`,P.key)},`${t.id}:${t.objectiveRevision}:${P.key}`),(r||v)&&(0,X.jsxs)(`p`,{role:`alert`,className:`mt-2 text-xs text-fg-muted`,children:[r??v,` `,(0,X.jsx)(`button`,{type:`button`,className:`text-accent`,onClick:()=>void a(`check`),children:k.retry})]}),(0,X.jsx)(D,{open:s,onOpenChange:c,children:(0,X.jsxs)(w,{children:[(0,X.jsx)(b,{className:`xopc-dialog-overlay fixed inset-0 z-[60] bg-scrim backdrop-blur-[2px]`}),(0,X.jsxs)(T,{className:`xopc-dialog-content fixed left-1/2 top-1/2 z-[60] flex h-[min(90dvh,34rem)] w-[min(94vw,34rem)] -translate-x-1/2 -translate-y-1/2 flex-col overflow-hidden rounded-2xl border border-edge bg-surface-overlay shadow-popover outline-none`,children:[(0,X.jsxs)(`div`,{className:`flex shrink-0 items-center justify-between border-b border-edge px-5 py-4`,children:[(0,X.jsx)(E,{className:`font-medium text-fg`,children:k.preserved}),(0,X.jsx)(C,{"aria-label":k.close,children:(0,X.jsx)(Kt,{className:`size-4`})})]}),(0,X.jsxs)(`div`,{className:`min-h-0 flex-1 space-y-5 overflow-y-auto p-5`,children:[(0,X.jsx)(S,{className:`text-sm text-fg-muted`,children:F?k.toolsHint:t.phase===`review_scope`?k.scopeHint:k.intro}),(0,X.jsx)(`p`,{className:`whitespace-pre-wrap rounded-lg border border-edge p-3 text-sm text-fg`,children:t.summary}),(0,X.jsx)(`p`,{className:`text-xs text-fg-muted`,children:new Date(t.objectiveUpdatedAt).toLocaleString(O===`zh`?`zh-CN`:`en-US`)}),t.timeRange&&(0,X.jsxs)(`p`,{className:`text-xs text-fg-muted`,children:[new Date(t.timeRange.from).toLocaleString(O,{timeZone:t.timeRange.timezone}),` – `,new Date(t.timeRange.to).toLocaleString(O,{timeZone:t.timeRange.timezone}),` (`,t.timeRange.timezone,`)`]}),t.needs.map(e=>(0,X.jsxs)(`div`,{className:`space-y-2 rounded-xl border border-edge p-3`,children:[(0,X.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,X.jsxs)(`span`,{className:`text-sm font-medium text-fg`,children:[e.label,e.accountSelector?` · ${e.accountSelector}`:``]}),e.capabilityError?(0,X.jsx)(`button`,{type:`button`,disabled:n||M,className:bw,onClick:()=>void a(`check`),children:k.retry}):e.phase===`ready`?(0,X.jsxs)(`span`,{className:`text-xs text-fg-muted`,children:[(0,X.jsx)(H,{className:`mr-1 inline size-3`}),k.ready]}):e.phase===`authorizing`?(0,X.jsx)(`button`,{type:`button`,disabled:n,className:bw,onClick:()=>void a(`check`),children:k.check}):e.phase===`install`?(0,X.jsx)(`button`,{type:`button`,disabled:n||M||g,className:xw,onClick:()=>void R(e),children:k.install}):e.phase!==`blocked`&&e.phase!==`choose_account`?(0,X.jsx)(`button`,{type:`button`,disabled:n||M,className:xw,onClick:()=>void a(`connect`,e.key),children:e.phase===`reconnect`?k.reconnect:k.connect}):null]}),e.accountId&&(0,X.jsx)(`p`,{className:`break-words text-xs text-fg-muted`,children:e.accounts.find(t=>t.id===e.accountId)?.label??e.accountId}),e.alternatives?.length?(0,X.jsxs)(`div`,{className:`space-y-2`,children:[(0,X.jsx)(K,{value:l?.needKey===e.key?l.candidateRef:``,options:e.alternatives.map(e=>({value:e.candidateRef,label:e.label})),placeholder:k.replace,ariaLabel:`${e.label}: ${k.replace}`,disabled:n||M,allowEmpty:!1,onChange:t=>u({needKey:e.key,candidateRef:t,label:e.alternatives.find(e=>e.candidateRef===t).label})}),l?.needKey===e.key&&(0,X.jsxs)(`button`,{type:`button`,className:bw,disabled:n,onClick:()=>{a(`replace_source`,e.key,void 0,l.candidateRef),u(void 0)},children:[k.confirmReplace,` `,l.label]})]}):null,e.reason&&(0,X.jsx)(`p`,{className:`text-xs text-fg-muted`,children:e.reason}),e.phase===`authorizing`&&(0,X.jsxs)(`div`,{className:`flex items-center justify-between text-xs text-fg-muted`,children:[(0,X.jsx)(`span`,{children:k.authorizing}),(0,X.jsx)(`button`,{type:`button`,disabled:n,className:`text-accent`,onClick:()=>void a(`connect`,e.key),children:k.reconnect})]})]},e.key)),(0,X.jsx)(`a`,{href:`#/capabilities/connectors`,className:`text-sm text-accent`,onClick:()=>c(!1),children:k.all})]}),(0,X.jsxs)(`div`,{className:`flex shrink-0 items-center justify-between gap-2 border-t border-edge p-4`,children:[(0,X.jsx)(`button`,{type:`button`,className:`min-h-11 text-sm text-fg-muted`,onClick:()=>void a(`cancel`),children:k.cancel}),t.phase===`review_scope`?(0,X.jsx)(`button`,{type:`button`,disabled:n||M,className:xw,onClick:()=>void a(`confirm_scope`),children:k.scope}):null]})]})]})}),d?(0,X.jsx)(Tt,{draft:d,onChange:f,onClose:()=>{f(void 0),m(void 0)},onInstalled:async e=>{p&&await a(`install_complete`,p,void 0,void 0,e.instanceId)&&(f(void 0),m(void 0))},t:y(O).connectorsSettings}):null]})}var Cw=new Set([`button`,`checkbox`,`color`,`file`,`hidden`,`image`,`radio`,`range`,`reset`,`submit`]);function ww(e){if(!(e instanceof Element))return!1;if(e.closest(`textarea, select, [role="textbox"]`)||e instanceof HTMLElement&&e.isContentEditable)return!0;let t=e.closest(`input`);return t instanceof HTMLInputElement&&!Cw.has(t.type)}function Tw(){return!!document.querySelector(`dialog[open], [aria-modal="true"], [role="dialog"][data-state="open"], [role="alertdialog"][data-state="open"]`)}function Ew(e,t){return t.disabled||t.editorHidden||e.defaultPrevented||ww(e.target)||ww(document.activeElement)?!1:!Tw()}function Dw(e){for(let t=e.parentElement;t;t=t.parentElement)if(/(auto|scroll)/.test(getComputedStyle(t).overflowY))return t;return null}function Ow({items:e,disabled:t,onReorder:n}){let r=(0,Z.useRef)(null),i=(0,Z.useRef)(null),a=(0,Z.useRef)(0),o=(0,Z.useRef)(null),s=(0,Z.useRef)({items:e,onReorder:n});s.current={items:e,onReorder:n};let[c,l]=(0,Z.useState)(null),u=e.map(e=>`${e.id}:${e.version}:${e.status}`).join(`|`);function d(){let e=i.current;e&&(cancelAnimationFrame(e.frame),e.overlay?.remove(),e.row.hasPointerCapture?.(e.pointerId)&&e.row.releasePointerCapture(e.pointerId),e.overlay&&(a.current=Date.now()+250,document.body.style.cursor=e.cursor,document.body.style.userSelect=e.userSelect),i.current=null,o.current&&clearTimeout(o.current),o.current=null)}(0,Z.useEffect)(()=>(l(null),d),[u,t]);function f(e){let t=(e.scroller?.scrollTop??0)-e.initialScroll,n=e.y-e.offsetY+e.slots[e.from].height/2,r=e.slots.filter((r,i)=>i!==e.from&&n>r.top-t+r.height/2).length;e.to=r;let i=[...e.slots];i.splice(r,0,i.splice(e.from,1)[0]);let a={},o=0,s=e.allSlots[0].top;e.allSlots.forEach((t,n)=>{let r=t.sortable?i[o++]:t;a[r.id]=s-r.top,r.id===e.id&&(e.landingTop=s);let c=e.allSlots[n+1];s+=r.height+(c?c.top-t.top-t.height:0)}),l(t=>t?.id===e.id&&t.targetId===e.slots[r].id?t:{id:e.id,targetId:e.slots[r].id,shifts:a})}function p(e){if(i.current!==e||!e.overlay)return;let t=e.scroller;if(t){let n=t.getBoundingClientRect(),r=Math.min(32,n.height/4),i=e.y<n.top+r?-Math.min(8,(n.top+r-e.y)/4):e.y>n.bottom-r?Math.min(8,(e.y-n.bottom+r)/4):0;i&&(t.scrollTop+=i,f(e))}e.frame=requestAnimationFrame(()=>p(e))}function m(e,n){if(t||n.status!==`queued`||e.button!==0||i.current)return;let a=e.target;if(a.closest(`button, a, input`)&&!a.closest(`[data-follow-up-drag-surface]`)||e.pointerType===`touch`&&!a.closest(`[data-follow-up-drag-handle]`))return;let o=e.currentTarget,s=o.getBoundingClientRect(),c=Array.from(r.current?.querySelectorAll(`[data-follow-up-id]`)??[]).map(e=>{let t=e.getBoundingClientRect();return{id:e.dataset.followUpId,top:t.top,height:t.height,sortable:e.dataset.followUpSortable===`true`}}),l=c.filter(e=>e.sortable);if(l.length<2)return;let u=l.findIndex(e=>e.id===n.id);if(u<0)return;let d=Dw(o);i.current={pointerId:e.pointerId,id:n.id,row:o,startX:e.clientX,startY:e.clientY,x:e.clientX,y:e.clientY,left:s.left,top:s.top,offsetY:e.clientY-s.top,slots:l,allSlots:c,landingTop:s.top,from:u,to:u,scroller:d,initialScroll:d?.scrollTop??0,overlay:null,frame:0,cursor:document.body.style.cursor,userSelect:document.body.style.userSelect}}function h(e){let t=i.current;if(!(!t||t.pointerId!==e.pointerId||o.current)&&(t.x=e.clientX,t.y=e.clientY,!(!t.overlay&&Math.hypot(t.x-t.startX,t.y-t.startY)<5))){if(e.preventDefault(),!t.overlay){t.row.setPointerCapture?.(t.pointerId);let e=t.row.cloneNode(!0);e.removeAttribute(`data-follow-up-id`),e.removeAttribute(`data-follow-up-sortable`),e.setAttribute(`data-follow-up-drag-overlay`,``),e.setAttribute(`aria-hidden`,`true`),e.setAttribute(`inert`,``),e.querySelectorAll(`[id]`).forEach(e=>e.removeAttribute(`id`)),Object.assign(e.style,{position:`fixed`,left:`${t.left}px`,top:`${t.top}px`,width:`${t.row.getBoundingClientRect().width}px`,height:`${t.slots[t.from].height}px`,zIndex:`60`,pointerEvents:`none`,margin:`0`,opacity:`1`,background:`var(--color-surface-overlay)`,border:`1px solid var(--color-edge-strong)`,boxShadow:`var(--shadow-popover)`,willChange:`transform`,transition:`none`}),document.body.append(e),t.overlay=e,document.body.style.cursor=`grabbing`,document.body.style.userSelect=`none`,t.frame=requestAnimationFrame(()=>p(t))}t.overlay.style.transform=`translate3d(${t.x-t.startX}px, ${t.y-t.startY}px, 0) scale(1.015)`,f(t)}}function g(e){let t=i.current;if(!t||o.current)return;if(!t.overlay){d();return}a.current=Date.now()+250,cancelAnimationFrame(t.frame);let n=e?t.landingTop:t.top,r=(t.scroller?.scrollTop??0)-t.initialScroll,c=window.matchMedia?.(`(prefers-reduced-motion: reduce)`).matches;if(t.overlay.style.transition=c?`none`:`transform 160ms ease-out, opacity 160ms ease-out`,t.overlay.style.transform=`translate3d(0, ${n-r-t.top}px, 0) scale(1)`,o.current=setTimeout(()=>{d(),l(null)},c?0:170),e&&t.to!==t.from){let e=s.current.items.findIndex(e=>e.id===t.id),n=s.current.items.findIndex(e=>e.id===t.slots[t.to].id);e>=0&&n>=0&&s.current.onReorder(e,n)}}return(0,Z.useEffect)(()=>{let e=e=>{e.key===`Escape`&&i.current&&(e.preventDefault(),d(),l(null))},t=()=>{d(),l(null)},n=e=>h(e),r=e=>{e.pointerId===i.current?.pointerId&&g(!0)},a=e=>{e.pointerId===i.current?.pointerId&&g(!1)};return window.addEventListener(`pointermove`,n,{passive:!1}),window.addEventListener(`pointerup`,r),window.addEventListener(`pointercancel`,a),window.addEventListener(`keydown`,e),window.addEventListener(`blur`,t),window.addEventListener(`resize`,t),()=>{window.removeEventListener(`pointermove`,n),window.removeEventListener(`pointerup`,r),window.removeEventListener(`pointercancel`,a),window.removeEventListener(`keydown`,e),window.removeEventListener(`blur`,t),window.removeEventListener(`resize`,t)}},[]),{listRef:r,view:c,onPointerDown:m,onClickCapture:e=>{Date.now()<a.current&&(e.preventDefault(),e.stopPropagation())}}}function kw(e){return e.flatMap(e=>{if(!e||typeof e!=`object`)return[];let t=e;if(typeof t.id!=`string`||typeof t.clientMessageId!=`string`||typeof t.content!=`string`||typeof t.version!=`number`||t.effectiveDelivery!==`next`&&t.effectiveDelivery!==`steer`||t.status!==`queued`&&t.status!==`interrupted`)return[];let n=Array.isArray(t.contextRefs)?t.contextRefs.flatMap(e=>{if(!e||typeof e!=`object`)return[];let t=e;return t.kind!==`note`&&t.kind!==`file`&&t.kind!==`session`&&t.kind!==`browser_tab`||typeof t.sourceId!=`string`||typeof t.version!=`string`||typeof t.title!=`string`?[]:[{...typeof t.refId==`string`?{refId:t.refId}:{},kind:t.kind,sourceId:t.sourceId,expectedVersion:t.version,title:t.title,...t.kind===`file`&&(t.fileKind===`file`||t.fileKind===`directory`)?{fileKind:t.fileKind}:{}}]}):void 0;return[{id:t.id,clientMessageId:t.clientMessageId,text:t.content,attachments:Array.isArray(t.attachments)?t.attachments:void 0,thinkingLevel:typeof t.thinking==`string`?t.thinking:void 0,contextRefs:n?.length?n:void 0,version:t.version,delivery:t.effectiveDelivery,status:t.status}]})}function Aw(e){let t=kw(e.inputs);if(!e.activeRunId&&e.preparation?.state!==`preparation_failed`){let e=t.findIndex(e=>e.status===`queued`);e>=0&&t.splice(e,1)}return t}var jw=(0,Z.memo)(function({items:e,disabled:t,editingFollowUpId:n,onEditInComposer:r,onRemove:i,onMove:a,onReorder:o,onSteer:s,steeringBusyId:c,onOpenSideChat:l}){let u=y(h(e=>e.language)),d=(0,Z.useRef)(!1),f=e.filter(e=>e.status===`queued`),p=!!(t||c),m=Ow({items:e,disabled:p,onReorder:o}),g=J(`inline-flex h-8 shrink-0 items-center justify-center gap-1.5 rounded-lg px-2 text-fg-muted transition-colors hover:bg-surface-hover hover:text-fg disabled:pointer-events-none disabled:opacity-35`,ta.focusRingPanel),_=`flex cursor-pointer items-center gap-2 rounded-md px-3 py-2 text-sm text-fg outline-none focus:bg-surface-hover data-[disabled]:pointer-events-none data-[disabled]:opacity-35`;return e.length===0?null:(0,X.jsxs)(`div`,{ref:m.listRef,className:`space-y-1 px-2 py-2`,onClickCapture:m.onClickCapture,role:`list`,"aria-label":u.chat.followUpQueueAria,children:[(0,X.jsxs)(`div`,{className:`flex items-center justify-between gap-2 px-2 pb-1`,children:[(0,X.jsx)(`span`,{className:`text-xs font-medium text-fg-muted`,children:u.chat.followUpQueueHeading}),(0,X.jsxs)(`span`,{className:`tabular-nums text-[0.65rem] text-fg-muted`,children:[e.length,`/`,10]})]}),e.map(e=>{let t=e.status===`queued`,o=t||e.status===`interrupted`,h=f.findIndex(t=>t.id===e.id),v=o&&!e.attachments?.length&&!e.contextRefs?.length&&e.text.trim().length>0,y=c===e.id,b=e.status===`interrupted`?u.chat.followUpStatusInterrupted:null,x=Yn(e.text),S=new Map(e.contextRefs?.flatMap(e=>e.refId?[[e.refId,e.title]]:[])??[]),C=new Set(x?hr(x):[]),w=e.contextRefs?.filter(e=>!e.refId||!C.has(e.refId)),T=er(x?qn(x,e=>S.get(e)):e.text).trim();return!T&&e.attachments?.length&&(T=e.attachments[0]?.name?.trim()||u.chat.followUpQueueAttachmentOnly),T||=u.chat.followUpQueueEmptyPreview,(0,X.jsxs)(`div`,{role:`listitem`,"data-follow-up-id":e.id,"data-follow-up-sortable":!p&&t,onPointerDown:t=>m.onPointerDown(t,e),onDragStart:e=>e.preventDefault(),style:{transform:m.view?.shifts[e.id]?`translateY(${m.view.shifts[e.id]}px)`:void 0},className:J(`relative flex min-h-10 items-center gap-1 rounded-lg px-1.5 py-1 motion-safe:transition-transform motion-safe:duration-150`,!p&&t&&`cursor-grab`,m.view?.id===e.id&&`bg-surface-inset ring-1 ring-inset ring-edge-strong [&>*]:invisible`,n===e.id?`bg-accent-soft ring-1 ring-inset ring-accent/30`:`hover:bg-surface-hover/50`),children:[(0,X.jsx)(`div`,{"data-follow-up-drag-handle":!0,className:J(`flex shrink-0 touch-none cursor-grab items-center active:cursor-grabbing`,(p||!t)&&`cursor-not-allowed opacity-40`),title:u.chat.followUpQueueDrag,children:(0,X.jsx)(Xo,{className:`size-3.5 text-fg-muted`,"aria-hidden":!0})}),(0,X.jsx)(`button`,{type:`button`,"data-follow-up-drag-surface":!0,disabled:p||!t,title:u.chat.followUpQueueClickToEdit,"aria-label":u.chat.followUpQueueClickToEdit,className:J(`min-h-8 min-w-0 flex-1 cursor-grab rounded-md px-1.5 text-left text-sm text-fg`,ta.focusRingPanel,`disabled:pointer-events-none disabled:opacity-50`),onClick:()=>r(e.id),children:e.attachments?.length?(0,X.jsxs)(`span`,{className:`inline-flex max-w-full items-center gap-1`,children:[(0,X.jsx)(Ce,{className:`size-3 shrink-0 text-fg-muted`,"aria-hidden":!0}),(0,X.jsx)(`span`,{className:`truncate`,children:T})]}):(0,X.jsx)(`span`,{className:`line-clamp-2 break-words [overflow-wrap:anywhere]`,children:T})}),w?.length?(0,X.jsxs)(`span`,{className:`inline-flex shrink-0 items-center gap-0.5 rounded bg-accent-soft px-1.5 py-0.5 text-[0.625rem] text-accent-fg`,title:w.map(e=>e.title).join(`, `),children:[(0,X.jsx)(rs,{className:`size-3`,"aria-hidden":!0}),w.length]}):null,b?(0,X.jsx)(`span`,{className:`shrink-0 rounded bg-surface-panel px-1.5 py-0.5 text-[0.625rem] text-fg-muted`,children:b}):null,(0,X.jsxs)(`div`,{className:`flex shrink-0 items-center gap-0.5`,children:[(0,X.jsxs)(`button`,{type:`button`,className:g,disabled:p||!v,title:u.chat.followUpQueueSteerHint,"aria-label":u.chat.followUpQueueSteerNow,"aria-busy":y,onClick:()=>s(e.id),children:[(0,X.jsx)(Uo,{className:J(`size-4`,y&&`motion-safe:animate-pulse`),"aria-hidden":!0}),(0,X.jsx)(`span`,{className:`hidden text-xs sm:inline`,children:u.chat.followUpQueueSteerNow})]}),(0,X.jsx)(`button`,{type:`button`,className:J(g,`px-1.5 hover:text-danger`),disabled:p||!o,title:u.chat.followUpQueueRemove,"aria-label":u.chat.followUpQueueRemove,onClick:()=>i(e.id),children:(0,X.jsx)(Vt,{className:`size-4`,"aria-hidden":!0})}),(0,X.jsxs)(Ya,{modal:!1,children:[(0,X.jsx)(Xa,{asChild:!0,children:(0,X.jsx)(`button`,{type:`button`,className:J(g,`px-1.5`),disabled:p,title:u.chat.followUpQueueMore,"aria-label":u.chat.followUpQueueMore,children:(0,X.jsx)(be,{className:`size-4`,"aria-hidden":!0})})}),(0,X.jsx)(Za,{children:(0,X.jsxs)($a,{side:`top`,align:`end`,sideOffset:6,onCloseAutoFocus:e=>{d.current&&e.preventDefault(),d.current=!1},className:`z-50 min-w-52 max-w-[calc(100vw-2rem)] rounded-xl border border-edge bg-surface-overlay p-1 shadow-popover`,children:[(0,X.jsxs)(Qa,{className:_,disabled:!t,onSelect:()=>{d.current=!0,r(e.id)},children:[(0,X.jsx)(Ot,{className:`size-4`,"aria-hidden":!0}),u.chat.followUpQueueClickToEdit]}),l?(0,X.jsxs)(Qa,{className:_,disabled:!v,onSelect:()=>l(e,T),children:[(0,X.jsx)(es,{className:`size-4`,"aria-hidden":!0}),u.chat.followUpQueueOpenSideChat]}):null,f.length>1?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(eo,{className:`my-1 h-px bg-edge-subtle`}),(0,X.jsxs)(Qa,{className:_,disabled:!t||h===0,onSelect:()=>a(e.id,`up`),children:[(0,X.jsx)(W,{className:`size-4`,"aria-hidden":!0}),u.chat.followUpQueueMoveUp]}),(0,X.jsxs)(Qa,{className:_,disabled:!t||h>=f.length-1,onSelect:()=>a(e.id,`down`),children:[(0,X.jsx)(te,{className:`size-4`,"aria-hidden":!0}),u.chat.followUpQueueMoveDown]})]}):null]})})]})]})]},e.id)}),e.some(e=>e.attachments?.length||e.contextRefs?.length)?(0,X.jsx)(`p`,{className:`px-1 pt-0.5 text-[0.65rem] leading-tight text-fg-muted`,children:u.chat.followUpQueueAttachmentsNote}):null]})});function Mw({conversationId:e}){let t=m(e=>e.conversationId),n=h(e=>e.language).startsWith(`zh`),[r,i]=(0,Z.useState)(!1),[a,o]=(0,Z.useState)(``),s=Lr(e?[`session-preparation`,t,e]:null,async()=>{let t=await br(e);if(t&&!t.materialization)return null;let n=await g(p(`/api/sessions/${encodeURIComponent(e)}/input-state`));return n.payload.preparation?Sr.parse(n.payload.preparation):null},{refreshInterval:e=>e?.state===`preparing`?5e3:0,shouldRetryOnError:!1}),{mutate:c}=s;(0,Z.useEffect)(()=>{let t=t=>{t.detail?.conversationId===e&&c()};return window.addEventListener(`session-input-state`,t),()=>window.removeEventListener(`session-input-state`,t)},[e,c]);let l=s.data;if(!l||l.state===`ready`)return null;let u=async()=>{i(!0),o(``);try{let t=await f(p(`/api/sessions/${encodeURIComponent(e)}/preparation/retry`),{method:`POST`,body:JSON.stringify({operationId:l.operationId,expectedRevision:l.revision,idempotencyKey:`${l.operationId}:${l.revision}`})});if(!t.ok)throw Error(`HTTP ${t.status}`);await c()}catch(e){o(e instanceof Error?e.message:String(e))}finally{i(!1)}};return(0,X.jsxs)(`div`,{className:`border-b border-edge-subtle px-3 py-2 text-sm text-fg-muted`,role:`status`,children:[(0,X.jsx)(`span`,{children:l.state===`preparing`?n?`正在准备会话环境…`:`Preparing conversation environment…`:l.lastError??(n?`会话环境准备失败`:`Conversation environment preparation failed`)}),l.state===`preparation_failed`?(0,X.jsx)(`button`,{type:`button`,className:`ml-2 text-accent-fg`,disabled:r,onClick:()=>void u(),children:n?`重试准备`:`Retry preparation`}):null,a?(0,X.jsx)(`span`,{role:`alert`,className:`ml-2`,children:a}):null]})}function Nw(e){let t=(0,Y.c)(10),{refs:n,label:r,onRemove:i}=e;if(n.length===0)return null;let a;if(t[0]!==r||t[1]!==i||t[2]!==n){let e;t[4]!==r||t[5]!==i?(e=e=>(0,X.jsxs)(`span`,{className:`inline-flex h-7 min-w-0 max-w-56 items-center gap-1.5 rounded-md border border-edge-subtle bg-accent-soft/50 px-2 text-xs text-fg`,children:[e.kind===`file`&&e.fileKind===`directory`?(0,X.jsx)(Oe,{className:`size-3.5 shrink-0 text-accent-fg`,"aria-hidden":!0}):e.kind===`file`||e.kind===`result`?(0,X.jsx)(Te,{className:`size-3.5 shrink-0 text-accent-fg`,"aria-hidden":!0}):e.kind===`session`?(0,X.jsx)(xt,{className:`size-3.5 shrink-0 text-accent-fg`,"aria-hidden":!0}):e.kind===`browser_tab`?(0,X.jsx)(k,{className:`size-3.5 shrink-0 text-accent-fg`,"aria-hidden":!0}):(0,X.jsx)(rs,{className:`size-3.5 shrink-0 text-accent-fg`,"aria-hidden":!0}),(0,X.jsx)(`span`,{className:`truncate`,children:e.title}),(0,X.jsx)(`button`,{type:`button`,className:`-mr-1 inline-flex size-5 shrink-0 items-center justify-center rounded text-fg-muted hover:bg-surface-hover hover:text-fg`,"aria-label":`${r}: ${e.title}`,onClick:()=>i(e.sourceId),children:(0,X.jsx)(Kt,{className:`size-3`,"aria-hidden":!0})})]},e.sourceId),t[4]=r,t[5]=i,t[6]=e):e=t[6],a=n.map(e),t[0]=r,t[1]=i,t[2]=n,t[3]=a}else a=t[3];let o;return t[7]!==r||t[8]!==a?(o=(0,X.jsx)(`div`,{className:`flex flex-wrap gap-1.5 px-4 pt-2`,"aria-label":r,children:a}),t[7]=r,t[8]=a,t[9]=o):o=t[9],o}var Pw=`inline-flex h-8 min-w-0 shrink-0 items-center justify-center gap-1.5 rounded-full px-2.5 text-sm text-fg transition-[background-color,transform] hover:bg-surface-hover active:scale-95 disabled:pointer-events-none disabled:opacity-45 motion-reduce:transition-none motion-reduce:transform-none focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`;function Fw(e){let t=(0,Y.c)(96),{conversationId:n,project:r,workspacePath:i,canChangeWorkspace:a,disabled:o,environmentPicker:s,onProjectChange:c,onWorkspaceChange:l}=e,u=h(zw),d;t[0]===u?d=t[1]:(d=y(u),t[0]=u,t[1]=d);let f=d,p=f.chat.composerContext,g=m(Rw),_=m(Lw),[v,b]=(0,Z.useState)(``),[x]=va(v,200),S;t[2]!==_||t[3]!==x||t[4]!==g?(S=[`composer-projects`,_,g,x],t[2]=_,t[3]=x,t[4]=g,t[5]=S):S=t[5];let C;t[6]===x?C=t[7]:(C=()=>un({status:`active`,search:x,sortBy:`updatedAt`,sortOrder:`desc`,limit:50}),t[6]=x,t[7]=C);let w;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(w={keepPreviousData:!1,shouldRetryOnError:!1},t[8]=w):w=t[8];let T=Lr(S,C,w),E=Hd(n,!1),D=E.error?void 0:E.data?.environment,O;t[9]!==D?.rootPath||t[10]!==i?(O=i?.trim()||D?.rootPath||``,t[9]=D?.rootPath,t[10]=i,t[11]=O):O=t[11];let k=O,[A,j]=(0,Z.useState)(null),M;t[12]!==E||t[13]!==l?(M=async e=>{j(null);try{await l(e),await E.mutate()}catch(e){let t=e;j(t instanceof Error?t.message:String(t))}},t[12]=E,t[13]=l,t[14]=M):M=t[14];let N;t[15]!==k||t[16]!==M?(N={initialPath:k,onPicked:M},t[15]=k,t[16]=M,t[17]=N):N=t[17];let P=wa(N),F=a?`${p.chooseFolder}${k?`: ${k}`:``}`:r?p.projectFolder:p.lockedFolder,I;t[18]===D?I=t[19]:(I=D?.branch||(D?.detached?D.headSha?.slice(0,8):void 0),t[18]=D,t[19]=I);let L=I,R=p.label,z=r&&`bg-surface-hover`,B;t[20]===z?B=t[21]:(B=J(`flex min-w-0 max-w-full items-center rounded-full`,z),t[20]=z,t[21]=B);let ee;t[22]!==o||t[23]!==f.chat.scopeRemoveProject||t[24]!==c||t[25]!==r?(ee=r?(0,X.jsx)(`button`,{type:`button`,disabled:o,title:f.chat.scopeRemoveProject,"aria-label":f.chat.scopeRemoveProject,className:J(Pw,`size-7 shrink-0 px-0 ml-0.5 text-fg-muted`),onClick:()=>c(null),children:(0,X.jsx)(Kt,{className:`size-3.5`,"aria-hidden":!0})}):null,t[22]=o,t[23]=f.chat.scopeRemoveProject,t[24]=c,t[25]=r,t[26]=ee):ee=t[26];let V=r?.id??``,H=r?.name,te;t[27]!==T.data?.items||t[28]!==T.error?(te=T.error?[]:T.data?.items??[],t[27]=T.data?.items,t[28]=T.error,t[29]=te):te=t[29];let U;t[30]===te?U=t[31]:(U=te.map(Iw),t[30]=te,t[31]=U);let W=p.chooseProject,ne=p.changeProject,ie=p.changeProject,ae=p.noProject,oe=p.searchProjects,se=T.isLoading,G=T.error?p.projectsFailed:T.data?.items.length===0?p.noProjects:void 0,ce=r&&`pl-1`,le;t[32]===ce?le=t[33]:(le=J(Pw,`h-8 w-auto max-w-44 gap-1 border-0 bg-transparent pr-2.5 text-sm [&>svg]:hidden [&>span]:text-fg`,ce),t[32]=ce,t[33]=le);let q;t[34]!==c||t[35]!==r?.id?(q=e=>{e!==(r?.id??``)&&c(e||null)},t[34]=c,t[35]=r?.id,t[36]=q):q=t[36];let ue;t[37]!==p.changeProject||t[38]!==p.chooseProject||t[39]!==p.noProject||t[40]!==p.searchProjects||t[41]!==o||t[42]!==T.isLoading||t[43]!==v||t[44]!==V||t[45]!==H||t[46]!==U||t[47]!==G||t[48]!==le||t[49]!==q?(ue=(0,X.jsx)(K,{value:V,selectedLabel:H,options:U,placeholder:W,ariaLabel:ne,title:ie,emptyLabel:ae,disabled:o,side:`top`,align:`start`,searchPlaceholder:oe,searchValue:v,onSearchChange:b,loading:se,statusMessage:G,triggerClassName:le,contentClassName:`xopc-composer-config-popover w-max min-w-[min(12rem,calc(100vw-1.5rem))] max-w-[min(20rem,calc(100vw-1.5rem))] [&>input]:w-0 [&>input]:min-w-full`,onChange:q}),t[37]=p.changeProject,t[38]=p.chooseProject,t[39]=p.noProject,t[40]=p.searchProjects,t[41]=o,t[42]=T.isLoading,t[43]=v,t[44]=V,t[45]=H,t[46]=U,t[47]=G,t[48]=le,t[49]=q,t[50]=ue):ue=t[50];let de;t[51]!==B||t[52]!==ee||t[53]!==ue?(de=(0,X.jsxs)(`div`,{className:B,children:[ee,ue]}),t[51]=B,t[52]=ee,t[53]=ue,t[54]=de):de=t[54];let fe=r?s:null,pe;t[55]!==D||t[56]!==s||t[57]!==r?(pe=!s&&r&&D&&(D.headSha||D.branch)?(0,X.jsxs)(`span`,{className:`inline-flex h-8 min-w-0 items-center gap-1.5 rounded-full bg-surface-hover px-2.5 text-sm text-fg`,title:D.rootPath,children:[D.kind===`managed_worktree`?(0,X.jsx)(is,{className:`size-4 shrink-0`,strokeWidth:1.75,"aria-hidden":!0}):(0,X.jsx)(Ge,{className:`size-4 shrink-0`,strokeWidth:1.75,"aria-hidden":!0}),D.kind===`managed_worktree`?`Worktree`:`Local`]}):null,t[55]=D,t[56]=s,t[57]=r,t[58]=pe):pe=t[58];let me;t[59]!==p.retryProjects||t[60]!==T?(me=T.error?(0,X.jsx)(`button`,{type:`button`,className:J(Pw,`size-7 px-0`),"aria-label":p.retryProjects,onClick:()=>void T.mutate(),children:(0,X.jsx)(jt,{className:`size-3.5`,"aria-hidden":!0})}):null,t[59]=p.retryProjects,t[60]=T,t[61]=me):me=t[61];let he;t[62]!==a||t[63]!==E.isLoading||t[64]!==p.chooseFolder||t[65]!==o||t[66]!==P.pick||t[67]!==P.picking||t[68]!==r||t[69]!==k||t[70]!==F?(he=r?null:(0,X.jsxs)(`button`,{type:`button`,className:J(Pw,`max-w-52`),disabled:o||!a||P.picking,title:F,"aria-label":p.chooseFolder,onClick:P.pick,children:[(0,X.jsx)(De,{className:`size-4 shrink-0`,strokeWidth:1.75,"aria-hidden":!0}),k?(0,X.jsx)(`span`,{className:`truncate`,children:Ca(k)}):E.isLoading?(0,X.jsx)(Jt,{className:`h-4 w-16`}):(0,X.jsx)(`span`,{children:p.chooseFolder})]}),t[62]=a,t[63]=E.isLoading,t[64]=p.chooseFolder,t[65]=o,t[66]=P.pick,t[67]=P.picking,t[68]=r,t[69]=k,t[70]=F,t[71]=he):he=t[71];let ge;t[72]!==L||t[73]!==D?(ge=L?(0,X.jsxs)(`span`,{className:`inline-flex h-8 min-w-0 max-w-44 items-center gap-1.5 px-2 text-sm text-fg`,title:`${L}${D?.headSha?` · ${D.headSha.slice(0,8)}`:``}`,children:[(0,X.jsx)(Ne,{className:`size-4 shrink-0`,strokeWidth:1.75,"aria-hidden":!0}),(0,X.jsx)(`span`,{className:`truncate`,children:L})]}):null,t[72]=L,t[73]=D,t[74]=ge):ge=t[74];let _e;t[75]===A?_e=t[76]:(_e=A?(0,X.jsx)(`p`,{role:`alert`,className:`w-full px-2 py-1 text-xs text-danger`,children:A}):null,t[75]=A,t[76]=_e);let ve;t[77]!==p.label||t[78]!==de||t[79]!==fe||t[80]!==pe||t[81]!==me||t[82]!==he||t[83]!==ge||t[84]!==_e?(ve=(0,X.jsxs)(`div`,{className:`mx-3 -mb-3 flex min-w-0 shrink-0 flex-wrap items-center gap-x-1 gap-y-1 rounded-t-2xl bg-surface-base px-2 pb-4 pt-1.5 sm:mx-4`,"aria-label":R,children:[de,fe,pe,me,he,ge,_e]}),t[77]=p.label,t[78]=de,t[79]=fe,t[80]=pe,t[81]=me,t[82]=he,t[83]=ge,t[84]=_e,t[85]=ve):ve=t[85];let ye;t[86]!==f.chat.workingDirectory||t[87]!==P.confirmPick||t[88]!==P.hasNativePicker||t[89]!==P.modalOpen||t[90]!==P.setModalOpen||t[91]!==k?(ye=P.hasNativePicker?null:(0,X.jsx)(re,{open:P.modalOpen,onOpenChange:P.setModalOpen,initialAbsolutePath:k||void 0,onConfirm:P.confirmPick,wd:f.chat.workingDirectory}),t[86]=f.chat.workingDirectory,t[87]=P.confirmPick,t[88]=P.hasNativePicker,t[89]=P.modalOpen,t[90]=P.setModalOpen,t[91]=k,t[92]=ye):ye=t[92];let be;return t[93]!==ve||t[94]!==ye?(be=(0,X.jsxs)(X.Fragment,{children:[ve,ye]}),t[93]=ve,t[94]=ye,t[95]=be):be=t[95],be}function Iw(e){return{value:e.id,label:e.name}}function Lw(e){return e.baseUrl}function Rw(e){return e.conversationId}function zw(e){return e.language}var Bw=`flex size-11 shrink-0 items-center justify-center rounded-full text-fg-muted transition-colors hover:bg-surface-hover hover:text-fg focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent sm:size-10`;function Vw(e){let t=(0,Y.c)(10),{disabled:n,attachmentCount:r,maxAttachments:i,chat:a,onPickFiles:o}=e,s=r>=i,c;t[0]!==a.attachFile||t[1]!==a.maxAttachmentsReached||t[2]!==s||t[3]!==i?(c=s?jp(a.maxAttachmentsReached,{max:i}):a.attachFile,t[0]=a.attachFile,t[1]=a.maxAttachmentsReached,t[2]=s,t[3]=i,t[4]=c):c=t[4];let l=c,u=n||s,d;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,X.jsx)(At,{className:`size-5`,"aria-hidden":!0}),t[5]=d):d=t[5];let f;return t[6]!==l||t[7]!==o||t[8]!==u?(f=(0,X.jsx)(`button`,{type:`button`,className:Bw,disabled:u,"aria-label":l,title:l,onClick:o,children:d}),t[6]=l,t[7]=o,t[8]=u,t[9]=f):f=t[9],f}function Hw(e){let t=(0,Y.c)(33),{disabled:n,voiceActive:r,runBusy:i,hasDraft:a,chat:o,onStartVoiceInput:s,onSend:c,onQueue:l,onDefer:u,onAbort:d,onInterrupt:f}=e;if(r)return null;let p=i&&a&&!!l,m=i&&!a,h=m?o.abort:p?o.followUpQueueAdd:o.sendMessage,g;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(g=(0,X.jsx)(St,{className:`size-[1.125rem]`,"aria-hidden":!0}),t[0]=g):g=t[0];let _;t[1]!==o.voiceInput||t[2]!==n||t[3]!==s?(_=(0,X.jsx)(`button`,{type:`button`,className:Bw,disabled:n,title:o.voiceInput,"aria-label":o.voiceInput,onClick:s,children:g}),t[1]=o.voiceInput,t[2]=n,t[3]=s,t[4]=_):_=t[4];let v;t[5]!==p||t[6]!==o.abort||t[7]!==o.followUpQueueAdd||t[8]!==o.followUpQueueMore||t[9]!==o.steeringInterruptSend||t[10]!==n||t[11]!==d||t[12]!==u||t[13]!==f?(v=p&&(0,X.jsxs)(Ya,{modal:!1,children:[(0,X.jsx)(Xa,{asChild:!0,children:(0,X.jsx)(`button`,{type:`button`,className:Bw,disabled:n,"aria-label":o.followUpQueueMore,title:o.followUpQueueMore,children:(0,X.jsx)(be,{className:`size-5`,"aria-hidden":!0})})}),(0,X.jsx)(Za,{children:(0,X.jsxs)($a,{side:`top`,align:`end`,sideOffset:8,className:`z-50 min-w-44 rounded-xl border border-edge bg-surface-overlay p-1 shadow-popover`,children:[u&&(0,X.jsx)(Qa,{onSelect:()=>void u(),className:`cursor-pointer rounded-lg px-3 py-2 text-sm text-fg outline-none focus:bg-surface-hover`,children:o.followUpQueueAdd}),f&&(0,X.jsx)(Qa,{onSelect:f,className:`cursor-pointer rounded-lg px-3 py-2 text-sm text-fg outline-none focus:bg-surface-hover`,children:o.steeringInterruptSend}),(0,X.jsx)(Qa,{onSelect:d,className:`cursor-pointer rounded-lg px-3 py-2 text-sm text-fg outline-none focus:bg-surface-hover`,children:o.abort})]})})]}),t[5]=p,t[6]=o.abort,t[7]=o.followUpQueueAdd,t[8]=o.followUpQueueMore,t[9]=o.steeringInterruptSend,t[10]=n,t[11]=d,t[12]=u,t[13]=f,t[14]=v):v=t[14];let y;t[15]===Symbol.for(`react.memo_cache_sentinel`)?(y=J(Bw,`bg-accent text-on-accent hover:bg-accent-hover hover:text-on-accent disabled:bg-surface-hover disabled:text-fg-disabled`),t[15]=y):y=t[15];let b=!m&&(n||!a||i&&!l),x;t[16]!==p||t[17]!==d||t[18]!==l||t[19]!==c||t[20]!==m?(x=m?d:p?()=>void l?.():c,t[16]=p,t[17]=d,t[18]=l,t[19]=c,t[20]=m,t[21]=x):x=t[21];let S;t[22]===m?S=t[23]:(S=m?(0,X.jsx)(Bt,{className:`size-4 fill-current`,"aria-hidden":!0}):(0,X.jsx)(M,{className:`size-5`,"aria-hidden":!0}),t[22]=m,t[23]=S);let C;t[24]!==h||t[25]!==b||t[26]!==x||t[27]!==S?(C=(0,X.jsx)(`button`,{type:`button`,className:y,disabled:b,"aria-label":h,title:h,onClick:x,children:S}),t[24]=h,t[25]=b,t[26]=x,t[27]=S,t[28]=C):C=t[28];let w;return t[29]!==_||t[30]!==v||t[31]!==C?(w=(0,X.jsxs)(`div`,{className:`flex shrink-0 items-center gap-0.5`,children:[_,v,C]}),t[29]=_,t[30]=v,t[31]=C,t[32]=w):w=t[32],w}function Uw(e){return e.map(e=>({type:e.type===`voice`?`voice`:(e.mimeType??``).startsWith(`image/`)?`image`:`document`,mimeType:e.mimeType??`application/octet-stream`,content:e.data??``,name:e.name??`file`,size:e.size??0,uri:e.uri,...typeof e.durationSeconds==`number`&&Number.isFinite(e.durationSeconds)&&e.durationSeconds>0?{durationSeconds:e.durationSeconds}:{}}))}var Ww=100,Gw=400,Kw=900;function qw(e,t){switch(t.type){case`reset`:return{box:null,hoverPreview:null};case`set-box`:return{...e,box:t.box};case`set-hover`:return{...e,hoverPreview:t.hoverPreview}}}function Jw(e,t){let n=t.trim().toLowerCase();if(!n)return[];let r=e.toLowerCase(),i=[],a=0;for(let e=0;e<r.length&&a<n.length;e++)r[e]===n[a]&&(i.push([e,e+1]),a++);return i}function Yw(e){let t=(0,Y.c)(8),{name:n,query:r}=e,i;t[0]!==n||t[1]!==r?(i=Jw(n,r),t[0]=n,t[1]=r,t[2]=i):i=t[2];let a=i;if(a.length===0){let e;return t[3]===n?e=t[4]:(e=(0,X.jsx)(`span`,{className:`font-medium text-fg`,children:n}),t[3]=n,t[4]=e),e}let o;if(t[5]!==n||t[6]!==a){let e=[],r=0;a.forEach(t=>{let[i,a]=t;i>r&&e.push((0,X.jsx)(`span`,{className:`font-medium text-fg`,children:n.slice(r,i)},`pre-${i}`)),e.push((0,X.jsx)(`span`,{className:`font-semibold text-accent-fg`,children:n.slice(i,a)},`hl-${i}-${a}`)),r=a}),r<n.length&&e.push((0,X.jsx)(`span`,{className:`font-medium text-fg`,children:n.slice(r)},`tail`)),o=(0,X.jsx)(X.Fragment,{children:e}),t[5]=n,t[6]=a,t[7]=o}else o=t[7];return o}var Xw=(0,Z.memo)(function(e){let t=(0,Y.c)(42),{open:n,anchorRef:r,items:i,selectedIndex:a,loading:o,query:s,noResults:c,conversationId:l,recentLabel:u,sectionLabels:d,ariaLabel:f,onSelectItem:p}=e,m;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(m={box:null,hoverPreview:null},t[0]=m):m=t[0];let[h,g]=(0,Z.useReducer)(qw,m),_=h.box,v=h.hoverPreview,y=(0,Z.useRef)(null),b=(0,Z.useRef)(0),x=(0,Z.useRef)(null),S;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(S=()=>{y.current&&=(clearTimeout(y.current),null)},t[1]=S):S=t[1];let C=S,w;t[2]===l?w=t[3]:(w=(e,t,n)=>{C(),b.current+=1;let r=b.current;if(e.kind!==`file`){g({type:`set-hover`,hoverPreview:null});return}let i=e.relativePath;if(!l?.trim()||e.isDirectory||e.isBrowseUp||!i){g({type:`set-hover`,hoverPreview:null});return}y.current=setTimeout(()=>{y.current=null,r===b.current&&Da(i,{conversationId:l}).then(e=>{let{content:i}=e,a=i.length>Kw?`${i.slice(0,Kw)}…`:i;r===b.current&&g({type:`set-hover`,hoverPreview:{text:a,x:t,y:n}})}).catch(()=>{r===b.current&&g({type:`set-hover`,hoverPreview:null})})},420)},t[2]=l,t[3]=w);let T=w,E,D;t[4]!==r||t[5]!==n?(E=()=>{if(!n){g({type:`reset`}),C(),b.current+=1;return}let e=()=>{let e=r.current;if(!e)return;let t=e.getBoundingClientRect();g({type:`set-box`,box:{left:t.left,top:t.top,width:t.width}})};e();let t=r.current,i=t&&typeof ResizeObserver<`u`?new ResizeObserver(()=>{e()}):null;return t&&i&&i.observe(t),window.addEventListener(`resize`,e),window.addEventListener(`scroll`,e,!0),()=>{t&&i&&i.disconnect(),window.removeEventListener(`resize`,e),window.removeEventListener(`scroll`,e,!0)}},D=[n,r],t[4]=r,t[5]=n,t[6]=E,t[7]=D):(E=t[6],D=t[7]),(0,Z.useLayoutEffect)(E,D);let O,A;if(t[8]!==i.length||t[9]!==n||t[10]!==a?(O=()=>{!n||a<0||a>=i.length||(x.current?.querySelector(`#at-mention-${a}`))?.scrollIntoView({block:`nearest`})},A=[n,a,i.length],t[8]=i.length,t[9]=n,t[10]=a,t[11]=O,t[12]=A):(O=t[11],A=t[12]),(0,Z.useLayoutEffect)(O,A),!n||typeof document>`u`||_===null)return null;let j=i.length,M=Math.min(_.width,Gw),N;t[13]!==_.left||t[14]!==_.top||t[15]!==M?(N={position:`fixed`,left:_.left,top:_.top,width:M,transform:`translateY(calc(-100% - 8px))`,zIndex:Ww},t[13]=_.left,t[14]=_.top,t[15]=M,t[16]=N):N=t[16];let P=a>=0&&a<j?`at-mention-${a}`:void 0,F;t[17]!==o||t[18]!==j?(F=o&&j===0?(0,X.jsxs)(`div`,{className:`flex items-center gap-2 px-3 py-2.5 text-sm text-fg-muted`,children:[(0,X.jsx)(Ye,{className:`size-4 shrink-0 animate-spin`,"aria-hidden":!0}),(0,X.jsx)(`span`,{children:`…`})]}):null,t[17]=o,t[18]=j,t[19]=F):F=t[19];let I;t[20]!==i||t[21]!==o||t[22]!==c||t[23]!==p||t[24]!==s||t[25]!==u||t[26]!==T||t[27]!==d||t[28]!==a||t[29]!==j?(I=!o&&j===0?(0,X.jsx)(`div`,{className:`px-3 py-2 text-sm text-fg-muted`,children:c}):(0,X.jsxs)(X.Fragment,{children:[i.map((e,t)=>{let n=i[t-1]?.kind,r=d[e.kind],o=e.kind===`file`&&e.isRecent;return(0,X.jsxs)(Z.Fragment,{children:[n===e.kind?null:(0,X.jsx)(`div`,{className:`border-t border-edge-subtle px-3 pb-1 pt-2 text-[0.65rem] font-medium uppercase tracking-wide text-fg-muted first:border-t-0`,children:r}),(0,X.jsxs)(`div`,{id:`at-mention-${t}`,role:`option`,"aria-selected":a===t,tabIndex:-1,className:J(`flex cursor-pointer items-start gap-2 px-3 py-2 text-left text-sm`,a===t?`bg-surface-hover text-fg`:`text-fg-subtle hover:bg-surface-hover/80`,o&&`border-l-2 border-l-accent/60`),onPointerDown:t=>{t.pointerType===`mouse`&&t.button!==0||(t.preventDefault(),p(e))},onPointerEnter:t=>T(e,t.clientX,t.clientY),onPointerLeave:()=>{C(),b.current+=1,g({type:`set-hover`,hoverPreview:null})},children:[(0,X.jsx)(`span`,{className:`mt-0.5 shrink-0`,children:e.kind===`note`?(0,X.jsx)(rs,{className:`size-3.5 text-accent-fg`,"aria-hidden":!0}):e.kind===`session`?(0,X.jsx)(xt,{className:`size-3.5 text-violet-600 dark:text-violet-400`,"aria-hidden":!0}):e.kind===`skill`?(0,X.jsx)(zt,{className:`size-3.5 text-cyan-600 dark:text-cyan-400`,"aria-hidden":!0}):e.kind===`agent`?(0,X.jsx)(V,{className:`size-3.5 text-emerald-600 dark:text-emerald-400`,"aria-hidden":!0}):e.kind===`browser_tab`?(0,X.jsx)(k,{className:`size-3.5 text-blue-600 dark:text-blue-400`,"aria-hidden":!0}):e.isBrowseUp?(0,X.jsx)(Oe,{className:`size-3.5 text-fg-muted`,"aria-hidden":!0}):e.isDirectory?(0,X.jsx)(Oe,{className:`size-3.5 text-amber-600 dark:text-amber-400`,"aria-hidden":!0}):(0,X.jsx)(Te,{className:J(`size-3.5`,ge(e.name)),"aria-hidden":!0})}),(0,X.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-2 truncate`,children:[(0,X.jsx)(`span`,{className:`truncate`,children:(0,X.jsx)(Yw,{name:e.name,query:s})}),o?(0,X.jsx)(`span`,{className:`shrink-0 rounded bg-accent-soft px-1 py-0 text-[0.65rem] text-accent-fg`,children:u}):null]}),(0,X.jsx)(`div`,{className:`mt-0.5 truncate text-xs text-fg-muted`,children:e.description||r})]})]})]},e.id)}),o&&j>0?(0,X.jsxs)(`div`,{className:`flex items-center gap-2 border-t border-edge-subtle px-3 py-2 text-xs text-fg-muted`,children:[(0,X.jsx)(Ye,{className:`size-3.5 animate-spin`,"aria-hidden":!0}),(0,X.jsx)(`span`,{children:`…`})]}):null]}),t[20]=i,t[21]=o,t[22]=c,t[23]=p,t[24]=s,t[25]=u,t[26]=T,t[27]=d,t[28]=a,t[29]=j,t[30]=I):I=t[30];let L;t[31]!==f||t[32]!==F||t[33]!==I||t[34]!==P?(L=(0,X.jsxs)(`div`,{ref:x,className:`max-h-[min(26rem,54vh)] overflow-y-auto`,role:`listbox`,"aria-label":f,"aria-activedescendant":P,children:[F,I]}),t[31]=f,t[32]=F,t[33]=I,t[34]=P,t[35]=L):L=t[35];let R;t[36]===v?R=t[37]:(R=v?(0,X.jsx)(`div`,{className:`pointer-events-none fixed z-[200] max-h-48 max-w-sm overflow-auto rounded-md border border-edge bg-surface-overlay p-2 font-mono text-[0.7rem] text-fg shadow-lg`,style:{left:Math.min(v.x+12,window.innerWidth-320),top:Math.min(v.y+12,window.innerHeight-200)},children:v.text}):null,t[36]=v,t[37]=R);let z;return t[38]!==L||t[39]!==R||t[40]!==N?(z=(0,ys.createPortal)((0,X.jsxs)(`div`,{"data-composer-picker-panel":!0,className:`pointer-events-auto max-h-[min(28rem,60vh)] min-h-[2.5rem] overflow-hidden rounded-lg border border-edge bg-surface-overlay shadow-lg`,style:N,role:`presentation`,children:[L,R]}),document.body),t[38]=L,t[39]=R,t[40]=N,t[41]=z):z=t[41],z});function Zw(e,t){let n=e=>{e!==!1&&(e&&typeof e==`object`?t(e.conversationId):t())};e instanceof Promise?e.then(n).catch(e=>{Me(`error`,e instanceof Error?e.message:String(e))}):n(e)}var Qw=new Set([`abort`,`stop`,`cancel`]);function $w(e){if(e.kind!==`command`)return!1;if(Qw.has(e.name.toLowerCase()))return!0;for(let t of e.aliases??[])if(Qw.has(t.toLowerCase()))return!0;return!1}function eT(e,t,n,r){return e.slice(0,t)+r+e.slice(n)}var tT=(e,t)=>{let n=t.slashRange;if(!n)return;if(e.availability.status!==`available`){t.callbacks.onUnavailableSkill?.(e);return}let r=`/skill:${e.canonicalName} `,i=eT(t.editor.valueRef.current,n.start,n.end,r),a=n.start+r.length;t.editor.resetEditor({nextText:i,caretOffset:a,focus:!0})},nT=(e,t)=>{let n=t.slashRange;if(!n||n.start!==0)return;if(e.name.toLowerCase()===`review`&&t.callbacks.onReviewLauncher&&!t.runBusy&&t.pendingFollowUpsCount===0){let e=t.editor.valueRef.current,r=e.slice(0,n.start)+e.slice(n.end);t.editor.resetEditor({nextText:r,caretOffset:n.start,focus:!0}),t.callbacks.onReviewLauncher();return}if(e.acceptsArgs===!0){let r=`/${e.name} `,i=eT(t.editor.valueRef.current,n.start,n.end,r),a=n.start+r.length;t.editor.resetEditor({nextText:i,caretOffset:a,focus:!0});return}let r=`/${e.name}`;if(t.runBusy||t.pendingFollowUpsCount>0){if($w(e)){if(!t.callbacks.onAbort)return;t.callbacks.onAbort();let e=t.editor.valueRef.current,r=e.slice(0,n.start)+e.slice(n.end);t.editor.resetEditor({nextText:r,caretOffset:n.start});return}if(!t.callbacks.onAddPendingFollowUp||t.pendingFollowUpsCount>=t.maxPendingFollowUps)return;t.contextRefs.current.length?t.callbacks.onAddPendingFollowUp(r,void 0,t.contextRefs.current):t.callbacks.onAddPendingFollowUp(r,void 0),t.callbacks.onUserTextCommitted?.(r),t.attachments.clearAttachments(),t.contextRefs.clear(),t.editor.resetEditor();return}Zw(t.contextRefs.current.length?t.callbacks.onSend(r,void 0,t.thinkingLevel,t.contextRefs.current):t.callbacks.onSend(r,void 0,t.thinkingLevel),e=>{e===void 0?t.callbacks.onUserTextCommitted?.(r):t.callbacks.onUserTextCommitted?.(r,e),t.attachments.clearAttachments(),t.contextRefs.clear(),t.editor.resetEditor()})},rT=(e,t)=>{let n=t.slashRange;if(!n||n.start!==0||!t.callbacks.onChatAgentChange)return;let r=t.editor.valueRef.current,i=r.slice(n.end),a=r.slice(0,n.start)+(i.startsWith(` `)?i.slice(1):i);t.editor.resetEditor({nextText:a,caretOffset:n.start}),t.callbacks.onChatAgentChange(e.agentId)};function iT(e,t){switch(e.kind){case`skill`:tT(e,t);return;case`command`:nT(e,t);return;case`agent`:rT(e,t)}}var aT={new:10,help:11,list:12,clear:13,switch:14,models:15,usage:16,skills:17,settings:18,start:19,think:20,reasoning:21,verbose:22,status:23,tts:24},oT=new Set([`abort`,`archive`]);function sT(e){if(e.kind===`command`){let t=e.name.toLowerCase();if(aT[t]!==void 0)return 0;if(oT.has(t))return 2}return 1}function cT(e,t){let n=sT(e),r=sT(t);if(n!==r)return n-r;if(n===0){let n=aT[e.name.toLowerCase()]??999,r=aT[t.name.toLowerCase()]??999;if(n!==r)return n-r}let i=e.name.localeCompare(t.name);return i===0?e.id.localeCompare(t.id):i}function lT(e){if(e.kind!==`command`)return!1;if(Qw.has(e.name.toLowerCase()))return!0;for(let t of e.aliases??[])if(Qw.has(t.toLowerCase()))return!0;return!1}function uT(e,t){return e.kind!==`command`||e.acceptsArgs===!0||lT(e)||!(t.runBusy||t.pendingFollowUpsCount>0)?!1:t.pendingFollowUpsCount>=t.maxPendingFollowUps}function dT(e,t){return e.kind!==`command`||e.acceptsArgs===!0||lT(e)||!(t.runBusy||t.pendingFollowUpsCount>0)?!1:t.pendingFollowUpsCount<t.maxPendingFollowUps}function fT(e){return e.includes(`/`)||/^[A-Za-z]:/u.test(e)?!0:/^(Users|home|var|tmp|etc|opt|private|Volumes|System|Applications|Library|usr|dev|bin|sbin|proc|sys)(\/|$)/iu.test(e)}function pT(e,t){if(t===0)return!1;let n=e[t-1];if(n===void 0||n===`.`||n===`:`||n===`/`)return!0;let r=e.slice(0,t);return/[a-zA-Z0-9-]+\.[a-zA-Z0-9.-]+$/u.test(r)}function mT(e,t){let n=e.length,r=Math.min(Math.max(t,0),n);if(r<1&&e===`/`&&(r=1),r<1)return null;let i=e.slice(0,r).match(/\/[^\s]*$/);if(!i||i.index===void 0)return null;let a=i.index;if(pT(e,a))return null;let o=i[0],s=o.slice(1);return fT(s)||o.startsWith(`/skill:`)?null:{start:i.index,end:r,query:s}}function hT(e,t){let n=t.trim().toLowerCase();if(!n)return 0;let r=e.name.toLowerCase();if(r===n)return 0;for(let t of e.aliases??[])if(t.toLowerCase()===n)return 1;if(r.startsWith(n))return 2;for(let t of e.aliases??[])if(t.toLowerCase().startsWith(n))return 3;if(r.includes(n))return 4;for(let t of e.aliases??[])if(t.toLowerCase().includes(n))return 5;if(e.description.toLowerCase().includes(n))return 100;if(e.category.toLowerCase().includes(n))return 101;if(e.kind===`skill`&&(e.source??``).toLowerCase().includes(n))return 102;if(e.kind===`skill`){for(let t of e.searchTerms??[])if(t.toLowerCase().includes(n))return 103}return null}function gT(e,t){return t===0?0:Math.min(e,t-1)}function _T(e,t){let{query:n,value:r,commandsAllowed:i,agentsAllowed:a}=t,o=n.trim()===``,s=Jf(r),c=[];for(let r of e){if(r.kind===`command`&&!i||r.kind===`agent`&&!a||r.kind===`skill`&&t.skillsAllowed===!1||r.kind===`skill`&&s.has(r.canonicalName)||r.kind===`skill`&&o&&r.availability.status!==`available`)continue;let e=hT(r,n);e!==null&&c.push({item:r,rank:e})}c.sort((e,t)=>{let n=e.item.kind===`skill`&&e.item.availability.status!==`available`;return n===(t.item.kind===`skill`&&t.item.availability.status!==`available`)?e.rank===t.rank?cT(e.item,t.item):e.rank-t.rank:n?1:-1});let l=c.map(e=>e.item),u=[],d=l.filter(e=>e.kind===`skill`),f=l.filter(e=>e.kind===`command`),p=l.filter(e=>e.kind===`agent`);d.length>0&&u.push({kind:`skill`,items:d}),f.length>0&&u.push({kind:`command`,items:f}),p.length>0&&u.push({kind:`agent`,items:p});let m=[];for(let e of u)m.push(...e.items);return{sections:u,flatItems:m}}function vT(e,t,n){let r=(0,Y.c)(49),[i,a]=(0,Z.useState)(0),[o,s]=(0,Z.useState)(0),c=h(xT),l=n?.capabilities??kf,u=l.commands||l.skills||l.agentSwitch;n?.isComposing;let d;r[0]!==t||r[1]!==u||r[2]!==n?.isComposing||r[3]!==e?(d=!u||n?.isComposing?null:mT(e,t),r[0]=t,r[1]=u,r[2]=n?.isComposing,r[3]=e,r[4]=d):d=r[4];let f=d,p=!!(f&&!n?.suppress),m,g;r[5]===Symbol.for(`react.memo_cache_sentinel`)?(m=()=>{let e=e=>{let t=e.detail;t&&typeof t==`object`&&`section`in t&&(t.section===`skills`||t.section===`agents`)&&s(bT)};return window.addEventListener(`config-reload`,e),()=>window.removeEventListener(`config-reload`,e)},g=[],r[5]=m,r[6]=g):(m=r[5],g=r[6]),(0,Z.useEffect)(m,g);let _;r[7]!==c||r[8]!==n?.conversationId||r[9]!==n?.currentAgentId?(_=async()=>{let[e,t,r]=await Promise.allSettled([oo(),to(n?.currentAgentId,n?.conversationId),Jr()]),i=[];t.status===`rejected`&&i.push(`skill`),e.status===`rejected`&&i.push(`command`),r.status===`rejected`&&i.push(`agent`);let a=(e.status===`fulfilled`?e.value:[]).map(yT),o=(t.status===`fulfilled`?t.value.skills:[]).map(e=>{let t=so(e,c);return{kind:`skill`,id:`skill:${e.name}`,name:t.displayName,canonicalName:e.name,description:t.description,aliases:t.aliases,searchTerms:t.searchTerms,category:`skill`,source:e.source,availability:{status:e.availableForCurrentAgent?`available`:e.unavailableReason??`agent-denied`,reason:e.unavailableReason??void 0}}}),s=y(c).agentsSettings,l=r.status===`fulfilled`?r.value:null,u=l&&l.items.length>1?l.items.map(e=>({kind:`agent`,id:`agent:${e.id}`,agentId:e.id,name:Ao(e,s),description:jo(e,s),category:`agent`,...e.avatar?{avatar:e.avatar}:{},aliases:[e.id,...e.name?[e.name]:[]]})):[];return{items:[...o,...a,...u],failedKinds:i}},r[7]=c,r[8]=n?.conversationId,r[9]=n?.currentAgentId,r[10]=_):_=r[10];let v=n?.currentAgentId,b=n?.conversationId,x;r[11]!==c||r[12]!==o||r[13]!==v||r[14]!==b?(x=[c,v,b,o],r[11]=c,r[12]=o,r[13]=v,r[14]=b,r[15]=x):x=r[15];let S;r[16]===Symbol.for(`react.memo_cache_sentinel`)?(S=[],r[16]=S):S=r[16];let C;r[17]===Symbol.for(`react.memo_cache_sentinel`)?(C=[],r[17]=C):C=r[17];let w,T;r[18]===Symbol.for(`react.memo_cache_sentinel`)?(T={items:S,failedKinds:C},w=[],r[18]=w,r[19]=T):(w=r[18],T=r[19]);let E;r[20]===Symbol.for(`react.memo_cache_sentinel`)?(E=[],r[20]=E):E=r[20];let D;r[21]===Symbol.for(`react.memo_cache_sentinel`)?(D={items:w,failedKinds:E},r[21]=D):D=r[21];let O;r[22]===p?O=r[23]:(O={enabled:p,initial:T,errorData:D},r[22]=p,r[23]=O);let k=ha(_,x,O),A=k.data.items,j=k.error==null?null:k.error instanceof Error?k.error.message:String(k.error),M=f?.query??``,N=l.commands&&f!==null&&f.start===0,P=l.agentSwitch&&f!==null&&f.start===0,F;r[24]!==P||r[25]!==A||r[26]!==l.skills||r[27]!==N||r[28]!==M||r[29]!==e?(F=_T(A,{query:M,value:e,commandsAllowed:N,agentsAllowed:P,skillsAllowed:l.skills}),r[24]=P,r[25]=A,r[26]=l.skills,r[27]=N,r[28]=M,r[29]=e,r[30]=F):F=r[30];let{sections:I,flatItems:L}=F,R=f?M:``,z=(0,Z.useRef)(R);z.current!==R&&(z.current=R,i!==0&&a(0));let B;r[31]!==L.length||r[32]!==i?(B=gT(i,L.length),r[31]=L.length,r[32]=i,r[33]=B):B=r[33];let ee=B,V;r[34]===L.length?V=r[35]:(V=e=>{L.length!==0&&a(t=>e===`down`?(t+1)%L.length:(t-1+L.length)%L.length)},r[34]=L.length,r[35]=V);let H=V,te;return r[36]!==P||r[37]!==N||r[38]!==L||r[39]!==k.data.failedKinds||r[40]!==k.loading||r[41]!==j||r[42]!==H||r[43]!==p||r[44]!==M||r[45]!==ee||r[46]!==I||r[47]!==f?(te={open:p,slashRange:f,commandsAllowed:N,agentsAllowed:P,sections:I,flatItems:L,selectedIndex:ee,query:M,loading:k.loading,failedKinds:k.data.failedKinds,loadError:j,onNavigate:H,setSelectedIndex:a},r[36]=P,r[37]=N,r[38]=L,r[39]=k.data.failedKinds,r[40]=k.loading,r[41]=j,r[42]=H,r[43]=p,r[44]=M,r[45]=ee,r[46]=I,r[47]=f,r[48]=te):te=r[48],te}function yT(e){return{kind:`command`,id:`cmd:${e.id}`,name:e.name,description:e.description,category:e.category,aliases:e.aliases,acceptsArgs:e.acceptsArgs,acceptsContext:e.acceptsContext,examples:e.examples}}function bT(e){return e+1}function xT(e){return e.language}var ST=100,CT=560;function wT(e,t){let n=t.trim().toLowerCase();if(!n)return e;let r=e.toLowerCase().indexOf(n);if(r>=0)return(0,X.jsxs)(X.Fragment,{children:[e.slice(0,r),(0,X.jsx)(`span`,{className:`text-accent-fg`,children:e.slice(r,r+n.length)}),e.slice(r+n.length)]});let i=[],a=0,o=0;for(let t of e){let e=n[a],r=`${String(o)}-${t}`;e!==void 0&&t.toLowerCase()===e?(i.push((0,X.jsx)(`span`,{className:`text-accent-fg`,children:t},r)),a+=1):i.push((0,X.jsx)(Z.Fragment,{children:t},r)),o+=1}return(0,X.jsx)(X.Fragment,{children:i})}function TT(e,t){let n=t.trim().toLowerCase();if(!n)return e;let r=e.toLowerCase().indexOf(n);return r<0?e:(0,X.jsxs)(X.Fragment,{children:[e.slice(0,r),(0,X.jsx)(`span`,{className:`text-accent-fg`,children:e.slice(r,r+n.length)}),e.slice(r+n.length)]})}var ET=(0,Z.memo)(function(e){let t=(0,Y.c)(46),{item:n,index:r,selectedIndex:i,showHighlight:a,filterQuery:o,currentAgentId:s,currentBadgeLabel:c,runBusy:l,pendingFollowUpsCount:u,maxPendingFollowUps:d,queueBadgeLabel:f,queueFullBadgeLabel:p,queueFullTooltip:m,skillUnavailableLabel:h,skillAgentDeniedLabel:g,skillSourceLabels:_,onSelectItem:v}=e,y=n.kind===`skill`,b=n.kind===`agent`,x;t[0]!==b||t[1]!==y||t[2]!==n.agentId||t[3]!==n.avatar?(x=b?(0,X.jsx)(_a,{agentId:n.agentId,avatar:n.avatar,size:18,className:`size-[18px] shrink-0`}):y?(0,X.jsx)(zt,{className:`size-4 shrink-0 text-accent-fg`,"aria-hidden":!0}):(0,X.jsx)(qt,{className:`size-4 shrink-0 text-amber-600 dark:text-amber-400`,"aria-hidden":!0}),t[0]=b,t[1]=y,t[2]=n.agentId,t[3]=n.avatar,t[4]=x):x=t[4];let S=x,C;t[5]!==o||t[6]!==b||t[7]!==n.name||t[8]!==a?(C=b?a?(0,X.jsx)(X.Fragment,{children:wT(n.name,o)}):(0,X.jsx)(`span`,{className:`text-fg`,children:n.name}):a?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`span`,{className:`text-fg`,children:`/`}),wT(n.name,o)]}):(0,X.jsxs)(`span`,{className:`text-fg`,children:[`/`,n.name]}),t[5]=o,t[6]=b,t[7]=n.name,t[8]=a,t[9]=C):C=t[9];let w=C,T=b&&s!=null&&s.length>0&&n.agentId===s,E=y&&n.availability.status!==`available`,D,O;if(t[10]!==n||t[11]!==d||t[12]!==u||t[13]!==l){let e={runBusy:l,pendingFollowUpsCount:u,maxPendingFollowUps:d};O=dT(n,e),D=uT(n,e),t[10]=n,t[11]=d,t[12]=u,t[13]=l,t[14]=D,t[15]=O}else D=t[14],O=t[15];let k=D,A=null;if(T){let e;t[16]===c?e=t[17]:(e=(0,X.jsx)(`span`,{className:`ml-1 shrink-0 rounded bg-accent-soft px-1 py-px text-[0.6rem] font-medium leading-none text-accent-fg`,"aria-label":c,children:c}),t[16]=c,t[17]=e),A=e}else if(E){let e=n.availability.reason??`unavailable`,r=n.availability.status===`agent-denied`?g:h,i;t[18]!==e||t[19]!==r?(i=(0,X.jsx)(`span`,{className:`ml-1 shrink-0 rounded bg-surface-hover px-1 py-px text-[0.6rem] font-medium leading-none text-fg-muted`,"aria-label":e,children:r}),t[18]=e,t[19]=r,t[20]=i):i=t[20],A=i}else if(y&&n.source){let e=_[n.source]??n.source,r;t[21]===e?r=t[22]:(r=(0,X.jsx)(`span`,{className:`ml-2 shrink-0 text-[11px] font-normal text-fg-muted`,children:e}),t[21]=e,t[22]=r),A=r}else if(k){let e;t[23]===p?e=t[24]:(e=(0,X.jsx)(`span`,{className:`ml-1 shrink-0 rounded bg-red-100 px-1 py-px text-[0.6rem] font-medium leading-none text-red-700 dark:bg-red-900/40 dark:text-red-300`,"aria-label":p,children:p}),t[23]=p,t[24]=e),A=e}else if(O){let e;t[25]===f?e=t[26]:(e=(0,X.jsx)(`span`,{className:`ml-1 shrink-0 rounded bg-surface-hover px-1 py-px text-[0.6rem] font-medium leading-none text-fg-muted`,"aria-label":f,children:f}),t[25]=f,t[26]=e),A=e}let j=i===r,M=`palette-${r}`,N;t[27]!==o||t[28]!==n.description||t[29]!==a?(N=n.description?a?TT(n.description,o):n.description:null,t[27]=o,t[28]=n.description,t[29]=a,t[30]=N):N=t[30];let P=k?m:void 0,F;t[31]!==n||t[32]!==v?(F=()=>v(n),t[31]=n,t[32]=v,t[33]=F):F=t[33];let I;return t[34]!==S||t[35]!==k||t[36]!==n||t[37]!==w||t[38]!==a||t[39]!==j||t[40]!==M||t[41]!==N||t[42]!==P||t[43]!==F||t[44]!==A?(I=(0,X.jsx)(OT,{item:n,icon:S,selected:j,id:M,nameLine:w,descriptionLine:N,dimCategoryBadge:a,trailingBadge:A,disabled:k,disabledTooltip:P,onSelect:F}),t[34]=S,t[35]=k,t[36]=n,t[37]=w,t[38]=a,t[39]=j,t[40]=M,t[41]=N,t[42]=P,t[43]=F,t[44]=A,t[45]=I):I=t[45],I}),DT=(0,Z.memo)(function(e){let t=(0,Y.c)(53),{open:n,anchorRef:r,sections:i,flatItems:a,loading:o,failedKinds:s,selectedIndex:c,noResults:l,sectionLoadFailedLabel:u,query:d,skillsLabel:f,commandsLabel:p,agentsLabel:m,currentAgentId:h,currentBadgeLabel:g,runBusy:_,pendingFollowUpsCount:v,maxPendingFollowUps:y,queueBadgeLabel:b,queueFullBadgeLabel:x,queueFullTooltip:S,skillUnavailableLabel:C,skillAgentDeniedLabel:w,skillSourceLabels:T,onSelectItem:E,panelRef:D}=e,[O,k]=(0,Z.useState)(null),A,j;t[0]!==r||t[1]!==n?(A=()=>{if(!n){k(null);return}let e=()=>{let e=r.current;if(!e)return;let t=e.getBoundingClientRect();k({left:t.left,top:t.top,width:t.width})};e();let t=r.current,i=t&&typeof ResizeObserver<`u`?new ResizeObserver(()=>{e()}):null;return t&&i&&i.observe(t),window.addEventListener(`resize`,e),window.addEventListener(`scroll`,e,!0),()=>{t&&i&&i.disconnect(),window.removeEventListener(`resize`,e),window.removeEventListener(`scroll`,e,!0)}},j=[n,r],t[0]=r,t[1]=n,t[2]=A,t[3]=j):(A=t[2],j=t[3]),(0,Z.useLayoutEffect)(A,j);let M,N;if(t[4]!==a.length||t[5]!==n||t[6]!==c?(M=()=>{!n||a.length===0||document.getElementById(`palette-${c}`)?.scrollIntoView?.({block:`nearest`})},N=[a.length,n,c],t[4]=a.length,t[5]=n,t[6]=c,t[7]=M,t[8]=N):(M=t[7],N=t[8]),(0,Z.useEffect)(M,N),!n||typeof document>`u`||O===null)return null;let P=a.length,F=a[c],I=Math.min(O.width,CT),L;t[9]===d?L=t[10]:(L=d.trim(),t[9]=d,t[10]=L);let R=L,z=R.length>0,B;t[11]!==m||t[12]!==p||t[13]!==f?(B={skill:f,command:p,agent:m},t[11]=m,t[12]=p,t[13]=f,t[14]=B):B=t[14];let ee=B,V;t[15]!==h||t[16]!==g||t[17]!==R||t[18]!==y||t[19]!==E||t[20]!==v||t[21]!==b||t[22]!==x||t[23]!==S||t[24]!==_||t[25]!==c||t[26]!==z||t[27]!==w||t[28]!==T||t[29]!==C?(V={selectedIndex:c,showHighlight:z,filterQuery:R,currentAgentId:h,currentBadgeLabel:g,runBusy:_,pendingFollowUpsCount:v,maxPendingFollowUps:y,queueBadgeLabel:b,queueFullBadgeLabel:x,queueFullTooltip:S,skillUnavailableLabel:C,skillAgentDeniedLabel:w,skillSourceLabels:T,onSelectItem:E},t[15]=h,t[16]=g,t[17]=R,t[18]=y,t[19]=E,t[20]=v,t[21]=b,t[22]=x,t[23]=S,t[24]=_,t[25]=c,t[26]=z,t[27]=w,t[28]=T,t[29]=C,t[30]=V):V=t[30];let H=V,te;if(t[31]!==s||t[32]!==o||t[33]!==l||t[34]!==H||t[35]!==ee||t[36]!==u||t[37]!==i||t[38]!==P){let e=new Map(i.map(kT)),n=[`skill`,`command`,`agent`].filter(t=>e.has(t)||s.includes(t)),r=0;te=o&&P===0?(0,X.jsx)(`div`,{className:`space-y-2 p-2.5`,"aria-busy":`true`,children:Array.from({length:6},AT)}):P===0&&s.length===0?(0,X.jsx)(`div`,{className:`p-2.5 text-xs leading-normal text-fg-muted`,children:l}):n.map((t,n)=>{let i=e.get(t)?.items??[],a=r;r+=i.length;let o=`palette-section-${t}`;return(0,X.jsxs)(`div`,{role:`group`,"aria-labelledby":o,className:J(n>0&&`border-t border-edge-subtle`),children:[(0,X.jsxs)(`div`,{id:o,className:`sticky top-0 z-10 flex items-center justify-between bg-surface-overlay px-2.5 py-2 text-[0.65rem] font-medium uppercase leading-none tracking-wide text-fg-muted`,children:[(0,X.jsx)(`span`,{children:ee[t]}),(0,X.jsx)(`span`,{className:`tabular-nums`,"aria-hidden":!0,children:i.length})]}),s.includes(t)?(0,X.jsx)(`div`,{className:`px-2.5 pb-2 text-[11px] leading-relaxed text-fg-muted`,children:u}):i.map((e,t)=>(0,X.jsx)(ET,{item:e,index:a+t,...H},e.id))]},t)}),t[31]=s,t[32]=o,t[33]=l,t[34]=H,t[35]=ee,t[36]=u,t[37]=i,t[38]=P,t[39]=te}else te=t[39];let U=te,W;t[40]!==O.left||t[41]!==O.top||t[42]!==I?(W={position:`fixed`,left:O.left,top:O.top,width:I,transform:`translateY(calc(-100% - 8px))`,zIndex:ST},t[40]=O.left,t[41]=O.top,t[42]=I,t[43]=W):W=t[43];let ne=`${f}, ${p}, ${m}`,re=F?`${ee[F.kind]}: ${F.name}`:``,ie;t[44]===re?ie=t[45]:(ie=(0,X.jsx)(`span`,{className:`sr-only`,"aria-live":`polite`,children:re}),t[44]=re,t[45]=ie);let ae;return t[46]!==U||t[47]!==o||t[48]!==D||t[49]!==ne||t[50]!==ie||t[51]!==W?(ae=(0,ys.createPortal)((0,X.jsx)(Ma,{delayDuration:0,skipDelayDuration:0,disableHoverableContent:!1,children:(0,X.jsxs)(`div`,{ref:D,className:`pointer-events-auto max-h-[min(32rem,60vh)] min-h-8 overflow-y-auto rounded-md border border-edge bg-surface-overlay text-xs leading-4 shadow-lg`,style:W,role:`listbox`,"aria-label":ne,"aria-busy":o,children:[ie,U]})}),document.body),t[46]=U,t[47]=o,t[48]=D,t[49]=ne,t[50]=ie,t[51]=W,t[52]=ae):ae=t[52],ae}),OT=(0,Z.memo)(function(e){let t=(0,Y.c)(39),{item:n,icon:r,selected:i,id:a,nameLine:o,descriptionLine:s,dimCategoryBadge:c,trailingBadge:l,disabled:u,disabledTooltip:d,onSelect:f}=e,p;t[0]===n.description?p=t[1]:(p=n.description.trim(),t[0]=n.description,t[1]=p);let m=p,h=m.length>0&&s!=null,g=m.length>0,_=n.description,v=n.category&&n.kind!==`skill`&&!c&&!(n.kind===`agent`&&l),y;t[2]===o?y=t[3]:(y=(0,X.jsx)(`span`,{className:`min-w-0 max-w-[min(12rem,46%)] shrink-0 truncate font-semibold text-fg`,children:o}),t[2]=o,t[3]=y);let b;t[4]!==n.category||t[5]!==v?(b=v?(0,X.jsx)(`span`,{className:`shrink-0 rounded bg-surface-hover px-1 py-px text-[0.6rem] font-normal leading-none text-fg-muted`,children:n.category}):null,t[4]=n.category,t[5]=v,t[6]=b):b=t[6];let x;t[7]!==s||t[8]!==h?(x=h?(0,X.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-[11px] font-normal leading-tight text-fg-muted`,children:s}):null,t[7]=s,t[8]=h,t[9]=x):x=t[9];let S;t[10]!==y||t[11]!==b||t[12]!==x?(S=(0,X.jsxs)(`span`,{className:`flex min-w-0 flex-1 items-baseline gap-1`,children:[y,b,x]}),t[10]=y,t[11]=b,t[12]=x,t[13]=S):S=t[13];let C=S,w=u?`cursor-not-allowed opacity-50 text-fg-muted`:i?`cursor-pointer bg-surface-hover text-fg`:`cursor-pointer text-fg-subtle hover:bg-surface-hover/80`,T;t[14]===w?T=t[15]:(T=J(`flex min-h-11 w-full min-w-0 items-center gap-2 px-2.5 py-1.5 text-left text-sm leading-5 sm:min-h-9`,w),t[14]=w,t[15]=T);let E=T,D;t[16]!==u||t[17]!==f?(D=e=>{u||e.pointerType===`mouse`&&e.button!==0||(e.preventDefault(),f())},t[16]=u,t[17]=f,t[18]=D):D=t[18];let O=D,k;t[19]===r?k=t[20]:(k=(0,X.jsx)(`span`,{className:`shrink-0 [&_svg]:align-middle`,children:r}),t[19]=r,t[20]=k);let A;t[21]!==k||t[22]!==C||t[23]!==l?(A=(0,X.jsxs)(X.Fragment,{children:[k,C,l]}),t[21]=k,t[22]=C,t[23]=l,t[24]=A):A=t[24];let j=A,M=u&&d?d:g?_:null,N=u||void 0,P;t[25]!==a||t[26]!==O||t[27]!==E||t[28]!==j||t[29]!==i||t[30]!==N?(P=(0,X.jsx)(`div`,{id:a,role:`option`,"aria-selected":i,"aria-disabled":N,tabIndex:-1,className:E,onPointerDown:O,children:j}),t[25]=a,t[26]=O,t[27]=E,t[28]=j,t[29]=i,t[30]=N,t[31]=P):P=t[31];let F=P;if(M!==null){let e;t[32]===F?e=t[33]:(e=(0,X.jsx)(Ia,{asChild:!0,children:F}),t[32]=F,t[33]=e);let n;t[34]===M?n=t[35]:(n=(0,X.jsx)(Na,{children:(0,X.jsx)(Fa,{side:`right`,align:`start`,sideOffset:8,collisionPadding:12,className:`!z-[10000] max-h-[min(12rem,40vh)] max-w-sm overflow-y-auto rounded-md border border-edge bg-surface-overlay px-2 py-1.5 text-left text-[11px] leading-snug text-fg shadow-lg select-text [max-width:min(20rem,90vw)]`,"data-slash-palette-tooltip":``,children:(0,X.jsx)(`span`,{className:`whitespace-pre-wrap break-words`,children:M})})}),t[34]=M,t[35]=n);let r;return t[36]!==e||t[37]!==n?(r=(0,X.jsxs)(Pa,{delayDuration:0,children:[e,n]}),t[36]=e,t[37]=n,t[38]=r):r=t[38],r}return F});function kT(e){return[e.kind,e]}function AT(e,t){return(0,X.jsxs)(`div`,{className:`flex items-center gap-2 py-1`,children:[(0,X.jsx)(Jt,{className:`size-4 shrink-0`}),(0,X.jsx)(Jt,{className:`h-3 w-28`}),(0,X.jsx)(Jt,{className:`h-3 flex-1`})]},t)}var jT=new Map;function MT(e){let t=jT.get(e);return t||(t={items:[],loadPromise:null,loaded:!1,writeQueue:Promise.resolve(),mutationVersion:0,clearVersion:0},jT.set(e,t)),t}function NT(e,t){if(e.items[0]?.text===t.text){t.id>0&&(e.items[0]=t);return}e.items=[t,...e.items].slice(0,100)}function PT(e,t){if(e.items.some(e=>e.id===t.id))return;let n=e.items.findIndex(e=>e.id===0&&e.text===t.text);if(n>=0){e.items[n]=t;return}NT(e,t)}function FT(e){return MT(e).items.map(e=>e.text)}function IT(e,t=!1){let n=MT(e);if(n.loaded&&!t)return Promise.resolve();if(n.loadPromise)return n.loadPromise;let r=n.mutationVersion,i=!1;return n.loadPromise=n.writeQueue.then(()=>g(`/api/composer-history?conversationId=${encodeURIComponent(e)}`)).then(t=>{n.mutationVersion===r?(n.items=t.items.filter(t=>t.conversationId===e).slice(0,100),n.loaded=!0):i=!0}).catch(()=>{}).finally(()=>{n.loadPromise=null,i&&n.writeQueue.then(()=>IT(e,!0))}),n.loadPromise}function LT(e,t){let n=t.trim();if(!n)return;let r=MT(e),i=r.clearVersion;r.mutationVersion+=1,NT(r,{conversationId:e,id:0,text:n,createdAt:Date.now()}),r.writeQueue=r.writeQueue.then(async()=>{let t=await g(`/api/composer-history`,{method:`POST`,body:JSON.stringify({conversationId:e,text:n})});r.clearVersion===i&&t.item.conversationId===e&&PT(r,t.item)}).catch(()=>{})}function RT(e){if(!e||typeof e!=`object`)return null;let t=e;if(typeof t.conversationId!=`string`||!t.conversationId||typeof t.id!=`number`||typeof t.text!=`string`||typeof t.createdAt!=`number`)return null;let n=MT(t.conversationId);return n.mutationVersion+=1,PT(n,t),t.conversationId}function zT(e){if(!e||typeof e!=`object`||!(`conversationId`in e)||typeof e.conversationId!=`string`)return null;let t=MT(e.conversationId);return t.mutationVersion+=1,t.clearVersion+=1,t.items=[],e.conversationId}function BT(e){let{conversationId:t,editorRef:n,valueRef:r,resetEditor:i,onWireInput:a}=e,o=(0,Z.useRef)(t);o.current=t;let s=(0,Z.useRef)(null),c=(0,Z.useCallback)(()=>{s.current=null},[]);return(0,Z.useEffect)(()=>{c()},[t,c]),(0,Z.useEffect)(()=>{t&&IT(t,!0);let e=e=>{RT(e.detail)===t&&c()},n=e=>{zT(e.detail)===t&&c()},r=()=>{t&&IT(t,!0)};return window.addEventListener(`composer-history-appended`,e),window.addEventListener(`composer-history-cleared`,n),window.addEventListener(`gateway-realtime-connected`,r),()=>{window.removeEventListener(`composer-history-appended`,e),window.removeEventListener(`composer-history-cleared`,n),window.removeEventListener(`gateway-realtime-connected`,r)}},[t,c]),{onUserTextCommitted:(0,Z.useCallback)((e,n=t)=>{n&&!Yn(e)&<(n,e),n===o.current&&c()},[t,c]),onWireInputClearWalk:(0,Z.useCallback)((e,t)=>{s.current=null,a(e,t)},[a]),tryInputHistoryArrow:(0,Z.useCallback)(e=>{if(!t)return!1;let a=FT(t);if(a.length===0)return!1;let o=s.current,c=n.current,l=c?Yf(c):0,u=r.current;if(e===`up`){if(o==null){if(l!==0)return!1;s.current={index:0,stash:u};let e=a[0];return e?(i({nextText:e,caretOffset:e.length,focus:!0}),!0):!1}if(o.index>=a.length-1)return!0;o.index+=1;let e=a[o.index];return e?(i({nextText:e,caretOffset:e.length,focus:!0}),!0):!1}if(o==null)return!1;if(--o.index,o.index<0){let e=o.stash;return s.current=null,i({nextText:e,caretOffset:e.length,focus:!0}),!0}let d=a[o.index];return d?(i({nextText:d,caretOffset:d.length,focus:!0}),!0):!1},[t,n,r,i])}}function VT(e){if(e.voiceActive)return e.cancelVoiceInput(),null;let t=e.getTextValue(),n=e.getContextRefs();if(!t.trim()&&e.getAttachmentCount()===0&&n.length===0)return null;let r=e.wireAttachmentsPayload();return structuredClone({text:t,attachments:r,contextRefs:n})}function HT(e){let t=(0,Z.useRef)(e);t.current=e;let{chat:n,runBusy:r,voiceActive:i,cancelVoiceInput:a,editingFollowUpId:o,getTextValue:s,getAttachmentCount:c,wireAttachmentsPayload:l,getContextRefs:u,getThinkingLevel:d,onSend:f,onDispatched:p,onAddPendingFollowUp:m,onSteeringInterrupt:h,onCommitEditFollowUp:g,onPendingFollowUpRemove:_,pendingFollowUpsCount:v,resetEditor:y,clearAttachments:b,clearContextRefs:x,clearEditFollowUpRef:S,onUserTextCommitted:C}=e,w={getTextValue:s,getAttachmentCount:c,wireAttachmentsPayload:l,getContextRefs:u},T=(0,Z.useRef)(!1);return{send:(0,Z.useCallback)(()=>{if(r)return;let e=VT({voiceActive:i,cancelVoiceInput:a,...w});if(!e)return;let n=[e.text,e.attachments.length>0?e.attachments:void 0,d(),e.contextRefs.length>0?e.contextRefs:void 0,{onDispatched:t=>p?.(t,e)}];Zw(f(...n),n=>{C?.(e.text,n);let r=t.current;r.getTextValue()!==e.text||JSON.stringify(r.wireAttachmentsPayload())!==JSON.stringify(e.attachments)||JSON.stringify(r.getContextRefs())!==JSON.stringify(e.contextRefs)||(y(),b(),x())})},[r,i,a,f,p,d,C,y,b,x,s,c,l,u]),flushSteeringDraft:(0,Z.useCallback)(async(t=e.personal?!0:void 0)=>{if(!r&&v===0)return;let s=VT({voiceActive:i,cancelVoiceInput:a,...w});if(s){if(o){g(o,s.text,s.attachments.length>0?s.attachments:void 0,d(),s.contextRefs.length>0?s.contextRefs:void 0),C?.(s.text),S(),y(),b(),x();return}if(m&&!T.current){if(v>=10){Me(`warning`,n.followUpQueueMaxReached,{max:10});return}T.current=!0;try{let e=[s.text,s.attachments.length>0?s.attachments:void 0,s.contextRefs.length>0?s.contextRefs:void 0];t!==void 0&&e.push(t),await m(...e),C?.(s.text),y(),b(),x()}catch(e){Me(`error`,n.followUpQueueSubmitFailed,{message:e instanceof Error?e.message:String(e)})}finally{T.current=!1}}}},[r,i,a,o,v,m,g,d,e.personal,n.followUpQueueMaxReached,n.followUpQueueSubmitFailed,S,C,y,b,x,s,c,l,u]),interruptDraft:(0,Z.useCallback)(()=>{if(!r||!h)return;let e=VT({voiceActive:i,cancelVoiceInput:a,...w});e&&(h(e.text,e.attachments.length>0?e.attachments:void 0,e.contextRefs.length>0?e.contextRefs:void 0),C?.(e.text),o&&(S(),_(o)),y(),b(),x())},[r,i,a,o,_,h,C,S,y,b,x,s,c,l,u])}}var UT=(e,t)=>e.length===t.length&&e.every((e,n)=>e===t[n]);function WT(e,t,n,r,i){let a=m(e=>e.conversationId),o=a&&e?JSON.stringify([a,e]):``,s=(0,Z.useRef)({editor:t,attachments:n,refs:r,setRefs:i});s.current={editor:t,attachments:n,refs:r,setRefs:i};let c=(0,Z.useRef)(void 0),l=(0,Z.useRef)(``),[u,d]=(0,Z.useState)(0),f=(0,Z.useRef)(Promise.resolve());(0,Z.useLayoutEffect)(()=>{if(!o||!e){c.current=void 0;return}let t={receipts:[],scope:o,ready:!1,dirty:!1,observe:!1,snapshot:{text:s.current.editor.valueRef.current,attachments:s.current.attachments.attachmentsRef.current,refs:s.current.refs},storage:Cr(e)};c.current=t,l.current&&l.current!==o&&(s.current.editor.resetEditor(),s.current.attachments.clearAttachments(),s.current.setRefs([]),t.snapshot={text:``,attachments:[],refs:[]}),l.current=o;let n=!1;return t.storage.read().then(e=>{if(n=!0,c.current!==t)return;t.receipts=e?.intakeReceipts??[];let r=s.current;e&&!t.dirty&&!r.editor.valueRef.current&&!r.attachments.attachmentsRef.current.length&&!r.refs.length&&(r.editor.resetEditor({nextText:e.text}),r.attachments.setAttachments(e.attachments),r.setRefs(e.refs))}).catch(e=>{console.warn(`Composer draft restoration failed`,e)}).finally(()=>{c.current===t&&(t.ready=n,d(e=>e+1))}),()=>{c.current===t&&(c.current=void 0)}},[o,e]),(0,Z.useLayoutEffect)(()=>{let e=c.current;if(!e||e.scope!==o)return;if(!e.observe){e.observe=!0;return}let i={text:t.value,attachments:n.attachments,refs:r};(i.text!==e.snapshot.text||!UT(i.attachments,e.snapshot.attachments)||!UT(i.refs,e.snapshot.refs))&&(e.dirty=!0),e.snapshot=i},[o,t.value,n.attachments,r]),(0,Z.useEffect)(()=>{let e=c.current;if(!e||e.scope!==o||!e.ready&&!e.dirty)return;let i={text:t.value,attachments:n.attachments,refs:r},a=i.text||i.attachments.length||r.length?i:void 0;f.current=f.current.catch(()=>{}).then(()=>e.storage.write(a?{...a,intakeReceipts:e.receipts}:e.receipts.length?{text:``,attachments:[],refs:[],intakeReceipts:e.receipts}:void 0)).catch(e=>{console.warn(`Composer draft persistence failed`,e)})},[o,u,t.value,n.attachments,r]),(0,Z.useEffect)(()=>{let e=c.current;if(!(!e?.ready||!o))return Ts(o,async(t,n)=>{if(await f.current,c.current!==e)throw Error(`Conversation changed. Please retry.`);if(e.receipts.includes(t))return;let r=s.current,i=r.attachments.attachmentsRef.current,a=n.filter(e=>!i.some(t=>t.id===e.id));if(i.length+a.length>10)throw Error(`A message supports at most 10 attachments. Remove attachments or choose another conversation.`);r.attachments.setAttachments([...i,...a]),e.receipts.push(t);try{let t={text:r.editor.valueRef.current,attachments:r.attachments.attachmentsRef.current,refs:r.refs,intakeReceipts:e.receipts.slice()},n=f.current.catch(()=>{}).then(()=>e.storage.write(t));f.current=n,await n}catch(n){throw e.receipts=e.receipts.filter(e=>e!==t),n}})},[o,u])}function GT(e){let{conversationId:t,agentId:n,modelKey:r,locale:i,enabled:a,draftText:o,canShow:s}=e,c=m(e=>e.conversationId),[l,u]=(0,Z.useState)(null),[d,h]=(0,Z.useState)(null),g=(0,Z.useRef)(null),_=(0,Z.useRef)(o),v=(0,Z.useRef)(-1),y=(0,Z.useCallback)((e,t,n)=>{f(p(`/api/sessions/${encodeURIComponent(e.suggestion.conversationId)}/next-turn-suggestion-feedback`),{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({suggestionId:e.suggestion.id,impressionId:e.impressionId,event:t,...n===void 0?{}:{edited:n}})}).catch(()=>{})},[]);(0,Z.useEffect)(()=>{_.current.length>0&&o.length===0&&(g.current=null),_.current=o},[o]),(0,Z.useEffect)(()=>{g.current=null,v.current=-1,u(null),h(null)},[t,n,r,i,c]),(0,Z.useEffect)(()=>{if(u(null),!a||!t)return;let e=!1,r=0,o,s=0,c=new AbortController,l=async()=>{let a=++r;try{if(await br(t))return;let d=await f(p(`/api/sessions/${encodeURIComponent(t)}/next-turn-suggestion?locale=${i}`),{signal:c.signal});if(!d.ok)return;let m=hs.safeParse(await d.json());if(e||a!==r||!m.success)return;let h=m.data.suggestion;if(m.data.status===`ready`&&h&&h.conversationId===t&&h.locale===i&&(!n||h.agentId===n)&&h.inputRevision>=v.current&&h.expiresAt>Date.now()&&h.transcriptId===await wr(t)){if(e||a!==r)return;u(e=>e?.suggestion.id===h.id?e:{suggestion:h,impressionId:crypto.randomUUID()}),o=setTimeout(()=>{u(null)},Math.max(0,h.expiresAt-Date.now()))}else u(null),m.data.status===`pending`&&s++<7&&(o=setTimeout(()=>{l()},600))}catch{}},d=e=>{let n=e.detail;if(!(n?.conversationId!==t&&n?.key!==t)){if(typeof n.revision==`number`){if(n.revision<v.current)return;v.current=n.revision}r++,s=0,o&&clearTimeout(o),u(null),l()}},m=()=>{r++,s=0,o&&clearTimeout(o),u(null),l()},h=e=>{e.detail?.topic===`sessions`&&m()};l();let g=[`session-next-turn-suggestion-changed`,`session-input-state`,`session-updated`];return g.forEach(e=>window.addEventListener(e,d)),window.addEventListener(`gateway-realtime-connected`,m),window.addEventListener(`config-reload`,m),window.addEventListener(`realtime-gap`,h),()=>{e=!0,r++,c.abort(),o&&clearTimeout(o),g.forEach(e=>window.removeEventListener(e,d)),window.removeEventListener(`gateway-realtime-connected`,m),window.removeEventListener(`config-reload`,m),window.removeEventListener(`realtime-gap`,h)}},[t,n,r,i,c,a]);let b=a&&s&&o.length===0&&l?.suggestion.id!==d&&l?.suggestion.conversationId===t&&l.suggestion.expiresAt>Date.now()?l:null,x=(0,Z.useCallback)(()=>{b&&y(b,`shown`)},[b,y]),S=(0,Z.useCallback)(()=>b?(g.current=b,y(b,`accepted`),b.suggestion.prompt):null,[b,y]),C=(0,Z.useCallback)(()=>{b&&(h(b.suggestion.id),y(b,`dismissed`))},[b,y]),w=(0,Z.useCallback)(e=>{let n=g.current;!n||n.suggestion.conversationId!==t||(h(n.suggestion.id),y(n,`submitted`,e.trim()!==n.suggestion.prompt),g.current=null)},[t,y]);return{suggestion:b?.suggestion??null,shown:x,accept:S,dismiss:C,submitted:w}}function KT(e){let t=(0,Y.c)(6),{active:n,anchors:r,ignoreSelector:i,onDismiss:a}=e,o,s;t[0]!==n||t[1]!==r||t[2]!==i||t[3]!==a?(o=()=>{if(!n)return;let e=e=>{let t=e.target;if(t instanceof Node){for(let e of r){let n=e.current;if(n&&n.contains(t))return}i&&t instanceof Element&&t.closest(i)||a()}};return window.addEventListener(`pointerdown`,e,!0),()=>window.removeEventListener(`pointerdown`,e,!0)},s=[n,r,i,a],t[0]=n,t[1]=r,t[2]=i,t[3]=a,t[4]=o,t[5]=s):(o=t[4],s=t[5]),(0,Z.useEffect)(o,s)}var qT=20,JT=`xopc.atMention.recent:`;function YT(e){return`${JT}${e.trim()}`}function XT(e){let t=e?.trim();if(!t||typeof localStorage>`u`)return[];try{let e=localStorage.getItem(YT(t));if(!e)return[];let n=JSON.parse(e);return Array.isArray(n)?n.filter(e=>typeof e==`string`&&e.length>0).slice(0,qT):[]}catch{return[]}}function ZT(e,t){let n=e?.trim(),r=t.trim();if(!(!n||!r||typeof localStorage>`u`))try{let e=[r,...XT(n).filter(e=>e!==r)].slice(0,qT);localStorage.setItem(YT(n),JSON.stringify(e))}catch{}}var QT=150,$T=[`file`,`note`,`session`,`browser_tab`,`skill`,`agent`];function eE(e){let t={items:[],loading:e,error:null};return{file:{...t},note:{...t},session:{...t},skill:{...t},agent:{...t},browser_tab:{...t}}}function tE(e,t){let n=Math.min(Math.max(t,0),e.length);if(n<1)return null;let r=e.slice(0,n).match(/@((?:\\.|[^\s])*)$/);if(!r||r.index===void 0)return null;let i=r.index;return i>0&&/[a-zA-Z0-9_]/.test(e[i-1])?null:{start:i,end:n,query:(r[1]??``).replace(/\\([\\\s])/gu,`$1`)}}function nE(e){return e.replace(/[\\\s]/gu,e=>`\\${e}`)}function rE(e){let t=e.trim();return t.length>0&&t.endsWith(`/`)&&!/^https?:\/\//i.test(t)}function iE(e){return e.replace(/\/+$/,``).trim()}function aE(e){let t=e.replace(/\/+$/,``);if(!t)return``;let n=t.lastIndexOf(`/`);return n<=0?``:t.slice(0,n)}function oE(e,t){return t===0?0:Math.min(e,t-1)}function sE(e){return{id:`file:${e.id}`,kind:`file`,name:e.name,description:e.path,relativePath:e.path,isDirectory:e.isDirectory,fileRef:{sourceId:e.id,expectedVersion:e.revision}}}function cE(e,t,n){let r=(0,Y.c)(55),i=n.capabilities??kf,[a,o]=(0,Z.useState)(0),[s,c]=(0,Z.useState)(pE),l=(0,Z.useRef)(0),u=h(fE),d;bb0:{if(n.isComposing||n.slashPaletteOpen){d=null;break bb0}if(n.precomputedAtRange!==void 0){d=n.precomputedAtRange;break bb0}let i;r[0]!==t||r[1]!==e?(i=tE(e,t),r[0]=t,r[1]=e,r[2]=i):i=r[2],d=i}let f=d,p=f!==null,[m]=va(p?f.query:``,QT),g=p?m:``,_;r[3]===n.conversationId?_=r[4]:(_=n.conversationId?.trim()??``,r[3]=n.conversationId,r[4]=_);let v=_,y;r[5]===n.selectedContextKeys?y=r[6]:(y=[...n.selectedContextKeys??new Set].sort().join(`\0`),r[5]=n.selectedContextKeys,r[6]=y);let b=y,x;r[7]!==i.agentSwitch||r[8]!==i.skills||r[9]!==v||r[10]!==g||r[11]!==u||r[12]!==n||r[13]!==p||r[14]!==b?(x=()=>{let e=l.current+=1;if(!p){c(eE(!1));return}if(!v){c(eE(!!n.prepareSession)),n.prepareSession&&n.prepareSession().catch(()=>{l.current===e&&c(eE(!1))});return}let t={conversationId:v,currentAgentId:n.currentAgentId,language:u,selectedContextKeys:new Set(b?b.split(`\0`):[]),recentPaths:new Set(XT(v))};if(rE(g)){let t=eE(!1);t.file={items:[],loading:!0,error:null},c(t);let r=iE(g);nw(r,{conversationId:v,agentId:n.currentAgentId}).then(t=>{if(l.current!==e)return;let n={id:`browse-up:${r}`,kind:`file`,name:`..`,description:aE(r)||`/`,relativePath:``,isDirectory:!0,isBrowseUp:!0};c(e=>({...e,file:{items:[n,...t.map(sE)],loading:!1,error:null}}))}).catch(t=>{l.current===e&&c(e=>({...e,file:{items:[],loading:!1,error:t instanceof Error?t.message:String(t)}}))});return}c(eE(!0));for(let n of aw.filter(e=>(e.kind!==`skill`||i.skills)&&(e.kind!==`agent`||i.agentSwitch)))n.search(g,t).then(t=>{l.current===e&&c(e=>({...e,[n.kind]:{items:t,loading:!1,error:null}}))}).catch(t=>{l.current===e&&c(e=>({...e,[n.kind]:{items:[],loading:!1,error:t instanceof Error?t.message:String(t)}}))})},r[7]=i.agentSwitch,r[8]=i.skills,r[9]=v,r[10]=g,r[11]=u,r[12]=n,r[13]=p,r[14]=b,r[15]=x):x=r[15];let S;r[16]!==i.agentSwitch||r[17]!==i.skills||r[18]!==v||r[19]!==g||r[20]!==u||r[21]!==n.currentAgentId||r[22]!==n.prepareSession||r[23]!==p||r[24]!==b?(S=[p,v,g,u,n.currentAgentId,n.prepareSession,b,i.skills,i.agentSwitch],r[16]=i.agentSwitch,r[17]=i.skills,r[18]=v,r[19]=g,r[20]=u,r[21]=n.currentAgentId,r[22]=n.prepareSession,r[23]=p,r[24]=b,r[25]=S):S=r[25],(0,Z.useEffect)(x,S);let C;if(r[26]!==i.agentSwitch||r[27]!==i.skills||r[28]!==s){let e;r[30]!==i.agentSwitch||r[31]!==i.skills?(e=e=>(e!==`skill`||i.skills)&&(e!==`agent`||i.agentSwitch),r[30]=i.agentSwitch,r[31]=i.skills,r[32]=e):e=r[32];let t;r[33]===s?t=r[34]:(t=e=>({kind:e,...s[e]}),r[33]=s,r[34]=t),C=$T.filter(e).map(t),r[26]=i.agentSwitch,r[27]=i.skills,r[28]=s,r[29]=C}else C=r[29];let w=C,T=p?w.flatMap(dE):[],E;r[35]!==p||r[36]!==w?(E=p&&w.some(uE),r[35]=p,r[36]=w,r[37]=E):E=r[37];let D=E,O;r[38]===w?O=r[39]:(O=w.flatMap(lE),r[38]=w,r[39]=O);let k=O,A=!D&&T.length===0?k[0]??null:null,j=`${f?.start??``}:${f?.end??``}:${g}`,M;r[40]===Symbol.for(`react.memo_cache_sentinel`)?(M=()=>o(0),r[40]=M):M=r[40];let N;r[41]===j?N=r[42]:(N=[j],r[41]=j,r[42]=N),(0,Z.useEffect)(M,N);let P=oE(a,T.length),F;r[43]===T.length?F=r[44]:(F=e=>{T.length!==0&&o(t=>e===`down`?(t+1)%T.length:(t-1+T.length)%T.length)},r[43]=T.length,r[44]=F);let I=F,L=f?.query??``,R;return r[45]!==f||r[46]!==A||r[47]!==T||r[48]!==D||r[49]!==I||r[50]!==p||r[51]!==P||r[52]!==w||r[53]!==L?(R={open:p,atRange:f,sections:w,items:T,selectedIndex:P,query:L,loading:D,error:A,onNavigate:I,setSelectedIndex:o},r[45]=f,r[46]=A,r[47]=T,r[48]=D,r[49]=I,r[50]=p,r[51]=P,r[52]=w,r[53]=L,r[54]=R):R=r[54],R}function lE(e){return e.error?[e.error]:[]}function uE(e){return e.loading}function dE(e){return e.items}function fE(e){return e.language}function pE(){return eE(!1)}function mE(e){return e.kind===`note`?{refId:crypto.randomUUID(),kind:`note`,sourceId:e.noteRef.sourceId,expectedVersion:e.noteRef.expectedVersion,title:e.name}:e.kind===`file`&&!e.isBrowseUp&&e.fileRef?{refId:crypto.randomUUID(),kind:`file`,sourceId:e.fileRef.sourceId,expectedVersion:e.fileRef.expectedVersion,title:e.name,fileKind:e.isDirectory?`directory`:`file`}:e.kind===`session`?{refId:crypto.randomUUID(),kind:`session`,sourceId:e.sessionRef.sourceId,expectedVersion:e.sessionRef.expectedVersion,title:e.name}:e.kind===`browser_tab`?{refId:crypto.randomUUID(),kind:`browser_tab`,sourceId:e.tabRef.sourceId,expectedVersion:e.tabRef.expectedVersion,title:e.name}:null}function hE(e){let{conversationId:t,editorValue:n,editorCursor:r,isComposing:i,runBusy:a,thinkingLevel:o,editorRef:s,valueRef:c,resetEditor:l,clearAttachments:u,onSend:d,onUserTextCommitted:f,onChatAgentChange:p,currentAgentId:m,prepareSession:h,contextRefs:g,onAddContextRef:_,onUnavailableSkill:v,onReviewLauncher:y,onAddPendingFollowUp:b,onAbort:x,pendingFollowUpsCount:S,maxPendingFollowUps:C,clearContextRefs:w,commandPalettePanelRef:T}=e,E=e.capabilities??kf,D=(0,Z.useMemo)(()=>tE(n,r),[n,r]),O=vT(n,r,{suppress:D!=null,capabilities:E,isComposing:i,currentAgentId:m,conversationId:t}),k=cE(n,r,{conversationId:t,currentAgentId:m,slashPaletteOpen:O.open,capabilities:E,isComposing:i,precomputedAtRange:D,selectedContextKeys:new Set(g.map(e=>`${e.kind}:${e.sourceId}`)),prepareSession:h}),A=O.open||k.open||D!=null,j=(0,Z.useCallback)(()=>({slashRange:O.slashRange,runBusy:a,pendingFollowUpsCount:S,maxPendingFollowUps:C,thinkingLevel:o,editor:{valueRef:c,resetEditor:l},attachments:{clearAttachments:u},contextRefs:{current:g,clear:w},callbacks:{onSend:d,onUserTextCommitted:f,onChatAgentChange:p,onAddPendingFollowUp:b,onAbort:x,onUnavailableSkill:v,onReviewLauncher:y}}),[O.slashRange,a,S,C,o,c,l,u,g,w,d,f,p,b,x,v,y]),M=(0,Z.useCallback)(e=>{!E.commands&&e.kind===`command`||!E.skills&&e.kind===`skill`||!E.agentSwitch&&e.kind===`agent`||iT(e,j())},[j,E]),N=(0,Z.useCallback)(e=>{let n=k.atRange;if(!n)return;let r=mE(e);if(r){let i=_(r);if(!i?.refId)return;let a=`${or(i.refId)} `,o=eT(c.current,n.start,n.end,a);l({nextText:o,caretOffset:n.start+a.length,focus:!0}),t&&e.kind===`file`&&ZT(t,e.relativePath);return}if(e.kind===`skill`){if(!E.skills)return;let t=`/skill:${e.canonicalName} `,r=eT(c.current,n.start,n.end,t);l({nextText:r,caretOffset:n.start+t.length,focus:!0});return}if(e.kind===`agent`){if(!E.agentSwitch)return;let t=eT(c.current,n.start,n.end,``);l({nextText:t,caretOffset:n.start,focus:!0}),p?.(e.agentId);return}if(e.kind!==`file`||!e.isDirectory)return;let i=`@${nE(e.isBrowseUp?(()=>{let e=aE(iE(n.query));return e?`${e}/`:``})():`${e.relativePath.replace(/\/+$/,``)}/`)}`,a=eT(c.current,n.start,n.end,i),o=n.start+i.length;l({nextText:a,caretOffset:o,focus:!0})},[k.atRange,E,_,t,p,c,l]),P=(0,Z.useRef)(null);P.current=k.open?k.atRange:O.open?O.slashRange:null;let F=c,I=(0,Z.useCallback)(()=>{let e=P.current;if(!e)return;let t=F.current,n=t.slice(0,e.start)+t.slice(e.end);l({nextText:n,caretOffset:e.start})},[l,F]),L=(0,Z.useMemo)(()=>[s,T],[s,T]);KT({active:O.open||k.open,anchors:L,ignoreSelector:`[data-composer-picker-panel], [data-slash-palette-tooltip]`,onDismiss:I});let R=(0,Z.useRef)(k);R.current=k;let z=(0,Z.useRef)(O);z.current=O;let B=(0,Z.useRef)(i);B.current=i;let ee=(0,Z.useRef)(M);ee.current=M;let V=(0,Z.useRef)(N);V.current=N;let H=(0,Z.useRef)({runBusy:a,pendingFollowUpsCount:S,maxPendingFollowUps:C});H.current={runBusy:a,pendingFollowUpsCount:S,maxPendingFollowUps:C};let te=(0,Z.useMemo)(()=>({name:`at-mention`,isActive:()=>{let e=R.current;return e.open&&e.atRange!=null&&!B.current},handleKey:e=>{let t=R.current;if(!t.atRange)return!1;if(e.key===`Escape`){e.preventDefault();let n=t.atRange,r=F.current,i=eT(r,n.start,n.end,``);return l({nextText:i,caretOffset:n.start,focus:!0}),!0}if(t.items.length===0)return!1;if(e.key===`ArrowDown`)return e.preventDefault(),t.onNavigate(`down`),!0;if(e.key===`ArrowUp`)return e.preventDefault(),t.onNavigate(`up`),!0;if(e.key===`Enter`||e.key===`Tab`){e.preventDefault();let n=t.items[t.selectedIndex];return n&&V.current(n),!0}return!1}}),[l,F]),U=(0,Z.useMemo)(()=>({name:`slash-palette`,isActive:()=>z.current.open&&!B.current,handleKey:e=>{let t=z.current;if(t.flatItems.length>0){if(e.key===`ArrowDown`)return e.preventDefault(),t.onNavigate(`down`),!0;if(e.key===`ArrowUp`)return e.preventDefault(),t.onNavigate(`up`),!0;if((e.key===`Enter`||e.key===`Tab`)&&!e.shiftKey){e.preventDefault();let n=t.flatItems[t.selectedIndex];return!n||uT(n,H.current)||ee.current(n),!0}}if(e.key===`Escape`){e.preventDefault();let n=t.slashRange;if(n){let e=F.current,t=eT(e,n.start,n.end,``);l({nextText:t,caretOffset:n.start,focus:!0})}return!0}return!1}}),[l,F]);return{palette:O,atPicker:k,shouldSyncSelection:A,adapters:(0,Z.useMemo)(()=>[te,U],[te,U]),applyPalette:M,applyAtMention:N}}function gE(e){return/^[A-Za-z0-9._/@:-]+$/.test(e)?e:JSON.stringify(e)}function _E(e,t){let n=t?.trim();return n?`${e} --instructions ${gE(n)}`:e}function vE(e){if(e.preset===`base`){if(!e.baseBranch?.trim())throw Error(`Missing base branch.`);return _E(`/review --base ${gE(e.baseBranch.trim())}`,e.instructions)}if(e.preset===`commit`){if(!e.commitSha?.trim())throw Error(`Missing commit SHA.`);return _E(`/review --commit ${gE(e.commitSha.trim())}`,e.instructions)}return e.preset,_E(`/review --uncommitted`,e.instructions)}async function yE(e){let t=await f(p(`/api/review/context?${new URLSearchParams({conversationId:e}).toString()}`)),n=await t.json().catch(()=>({}));if(!t.ok||!n.ok||!n.payload)throw Error(v(t.status,t.statusText,n.error?.message));return n.payload}function bE(e,t){let n=e?.status;if(!n)return``;if(n.isClean)return t.statusClean;let r=[];return n.changedFiles>0&&r.push(t.statusChanged.replace(`{{count}}`,String(n.changedFiles))),n.untrackedFiles>0&&r.push(t.statusUntracked.replace(`{{count}}`,String(n.untrackedFiles))),r.join(`, `)}function xE(e,t){let n=t.trim().toLowerCase(),r=[...(e?.branches??[]).filter(e=>!e.current)].sort((t,n)=>t.name===e?.defaultBaseBranch&&n.name!==e.defaultBaseBranch?-1:n.name===e?.defaultBaseBranch&&t.name!==e.defaultBaseBranch?1:t.name.localeCompare(n.name));return n?r.filter(e=>e.name.toLowerCase().includes(n)):r}function SE(e,t){let n=t.trim().toLowerCase(),r=e?.commits??[];return n?r.filter(e=>`${e.sha} ${e.shortSha} ${e.subject}`.toLowerCase().includes(n)):r}function CE(e){let t=(0,Y.c)(15),{icon:n,title:r,description:i,disabled:a,onClick:o}=e,s;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(s=J(`flex min-h-16 w-full items-center gap-3 rounded-lg border border-edge bg-surface-panel px-3 py-2.5 text-left`,`hover:border-accent/45 hover:bg-surface-hover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,`disabled:cursor-not-allowed disabled:opacity-50`,ta.transition),t[0]=s):s=t[0];let c;t[1]===n?c=t[2]:(c=(0,X.jsx)(`span`,{className:`inline-flex size-8 shrink-0 items-center justify-center rounded-lg bg-surface-hover text-fg-muted`,children:n}),t[1]=n,t[2]=c);let l;t[3]===r?l=t[4]:(l=(0,X.jsx)(`span`,{className:`block truncate text-sm font-medium text-fg`,children:r}),t[3]=r,t[4]=l);let u;t[5]===i?u=t[6]:(u=(0,X.jsx)(`span`,{className:`mt-0.5 block truncate text-xs text-fg-muted`,children:i}),t[5]=i,t[6]=u);let d;t[7]!==l||t[8]!==u?(d=(0,X.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[l,u]}),t[7]=l,t[8]=u,t[9]=d):d=t[9];let f;return t[10]!==a||t[11]!==o||t[12]!==c||t[13]!==d?(f=(0,X.jsxs)(`button`,{type:`button`,disabled:a,className:s,onClick:o,children:[c,d]}),t[10]=a,t[11]=o,t[12]=c,t[13]=d,t[14]=f):f=t[14],f}function wE(e){let t=(0,Y.c)(89),{open:n,conversationId:r,disabled:i,chat:a,onClose:o,onSendCommand:s}=e,c=a.reviewLauncher,[l,u]=(0,Z.useState)(null),[d,f]=(0,Z.useState)(!1),[p,m]=(0,Z.useState)(null),[h,g]=(0,Z.useState)(`presets`),[_,v]=(0,Z.useState)(``),[y,x]=(0,Z.useState)(``),C;t[0]!==r||t[1]!==c.noSession?(C=()=>{if(!r){u(null),m(c.noSession);return}f(!0),m(null),yE(r).then(e=>u(e)).catch(e=>{u(null),m(e instanceof Error?e.message:String(e))}).finally(()=>f(!1))},t[0]=r,t[1]=c.noSession,t[2]=C):C=t[2];let O=C,k,A;t[3]!==O||t[4]!==n?(k=()=>{n&&(g(`presets`),v(``),x(``),O())},A=[O,n],t[3]=O,t[4]=n,t[5]=k,t[6]=A):(k=t[5],A=t[6]),(0,Z.useEffect)(k,A);let M;t[7]!==l||t[8]!==_?(M=xE(l,_),t[7]=l,t[8]=_,t[9]=M):M=t[9];let N=M,P;t[10]!==l||t[11]!==_?(P=SE(l,_),t[10]=l,t[11]=_,t[12]=P):P=t[12];let F=P,I;t[13]!==l||t[14]!==c?(I=bE(l,c),t[13]=l,t[14]=c,t[15]=I):I=t[15];let L=I,R;t[16]!==y||t[17]!==o||t[18]!==s?(R=(e,t)=>{let n=vE({preset:e,baseBranch:t?.branch,commitSha:t?.commit,instructions:y});s(n),o()},t[16]=y,t[17]=o,t[18]=s,t[19]=R):R=t[19];let z=R,B=h===`base`?c.baseTitle:h===`commit`?c.commitTitle:h===`custom`?c.customTitle:c.title,ee;t[20]===o?ee=t[21]:(ee=e=>!e&&o(),t[20]=o,t[21]=ee);let V;t[22]===Symbol.for(`react.memo_cache_sentinel`)?(V=(0,X.jsx)(b,{className:`xopc-dialog-overlay fixed inset-0 z-[120] bg-scrim backdrop-blur-[1px]`}),t[22]=V):V=t[22];let H;t[23]!==c.back||t[24]!==h?(H=h===`presets`?null:(0,X.jsx)(`button`,{type:`button`,className:`inline-flex size-8 items-center justify-center rounded-lg text-fg-muted hover:bg-surface-hover hover:text-fg focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,"aria-label":c.back,onClick:()=>{g(`presets`),v(``)},children:(0,X.jsx)(j,{className:`size-4`})}),t[23]=c.back,t[24]=h,t[25]=H):H=t[25];let te;t[26]===B?te=t[27]:(te=(0,X.jsx)(E,{className:`truncate text-sm font-semibold text-fg`,children:B}),t[26]=B,t[27]=te);let U=l?.cwd??c.description,W;t[28]===U?W=t[29]:(W=(0,X.jsx)(S,{className:`truncate text-xs text-fg-muted`,children:U}),t[28]=U,t[29]=W);let ne;t[30]!==te||t[31]!==W?(ne=(0,X.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[te,W]}),t[30]=te,t[31]=W,t[32]=ne):ne=t[32];let re;t[33]===Symbol.for(`react.memo_cache_sentinel`)?(re=(0,X.jsx)(Kt,{className:`size-4`}),t[33]=re):re=t[33];let ie;t[34]!==c.close||t[35]!==o?(ie=(0,X.jsx)(`button`,{type:`button`,className:`inline-flex size-8 items-center justify-center rounded-lg text-fg-muted hover:bg-surface-hover hover:text-fg focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,"aria-label":c.close,onClick:o,children:re}),t[34]=c.close,t[35]=o,t[36]=ie):ie=t[36];let ae;t[37]!==H||t[38]!==ne||t[39]!==ie?(ae=(0,X.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 border-b border-edge px-4 py-3`,children:[H,ne,ie]}),t[37]=H,t[38]=ne,t[39]=ie,t[40]=ae):ae=t[40];let oe;t[41]!==N||t[42]!==F||t[43]!==l||t[44]!==i||t[45]!==p||t[46]!==y||t[47]!==O||t[48]!==d||t[49]!==c.customDescription||t[50]!==c.customPlaceholder||t[51]!==c.defaultBadge||t[52]!==c.errorTitle||t[53]!==c.loading||t[54]!==c.localBadge||t[55]!==c.noBranches||t[56]!==c.noCommits||t[57]!==c.presetBase||t[58]!==c.presetBaseDescription||t[59]!==c.presetBaseDescriptionNoDefault||t[60]!==c.presetCommit||t[61]!==c.presetCommitDescription||t[62]!==c.presetCustom||t[63]!==c.presetCustomDescription||t[64]!==c.presetUncommitted||t[65]!==c.remoteBadge||t[66]!==c.retry||t[67]!==c.searchBranches||t[68]!==c.searchCommits||t[69]!==_||t[70]!==z||t[71]!==L||t[72]!==h?(oe=(0,X.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto p-4`,children:d?(0,X.jsxs)(`div`,{className:`flex h-full min-h-56 items-center justify-center text-sm text-fg-muted`,children:[(0,X.jsx)(jt,{className:`mr-2 size-4 animate-spin`}),c.loading]}):p?(0,X.jsxs)(`div`,{className:`rounded-lg border border-danger/30 bg-danger/5 p-4`,children:[(0,X.jsx)(`div`,{className:`text-sm font-medium text-fg`,children:c.errorTitle}),(0,X.jsx)(`div`,{className:`mt-1 text-sm text-fg-muted`,children:p}),(0,X.jsxs)(ai,{type:`button`,className:`mt-4 h-9 rounded-lg`,variant:`secondary`,onClick:O,children:[(0,X.jsx)(jt,{className:`size-4`}),c.retry]})]}):h===`presets`?(0,X.jsxs)(`div`,{className:`grid gap-2`,children:[(0,X.jsx)(CE,{icon:(0,X.jsx)(Ne,{className:`size-4`}),title:c.presetBase,description:l?.defaultBaseBranch?c.presetBaseDescription.replace(`{{branch}}`,l.defaultBaseBranch):c.presetBaseDescriptionNoDefault,disabled:i,onClick:()=>g(`base`)}),(0,X.jsx)(CE,{icon:(0,X.jsx)(qe,{className:`size-4`}),title:c.presetUncommitted,description:L,disabled:i,onClick:()=>z(`uncommitted`)}),(0,X.jsx)(CE,{icon:(0,X.jsx)(Jo,{className:`size-4`}),title:c.presetCommit,description:c.presetCommitDescription.replace(`{{count}}`,String(l?.commits.length??0)),disabled:i,onClick:()=>g(`commit`)}),(0,X.jsx)(CE,{icon:(0,X.jsx)(qe,{className:`size-4`}),title:c.presetCustom,description:c.presetCustomDescription,disabled:i,onClick:()=>g(`custom`)})]}):h===`base`?(0,X.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,X.jsx)(TE,{value:_,placeholder:c.searchBranches,onChange:v}),(0,X.jsx)(`div`,{className:`grid gap-1`,children:N.length===0?(0,X.jsx)(`div`,{className:`rounded-lg border border-edge-subtle px-3 py-6 text-center text-sm text-fg-muted`,children:c.noBranches}):N.map(e=>(0,X.jsxs)(`button`,{type:`button`,className:`flex items-center justify-between gap-3 rounded-lg px-3 py-2 text-left hover:bg-surface-hover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,disabled:i,onClick:()=>z(`base`,{branch:e.name}),children:[(0,X.jsx)(`span`,{className:`min-w-0 truncate text-sm text-fg`,children:e.name}),(0,X.jsx)(`span`,{className:`shrink-0 text-xs text-fg-muted`,children:e.name===l?.defaultBaseBranch?c.defaultBadge:e.remote?c.remoteBadge:c.localBadge})]},e.name))})]}):h===`commit`?(0,X.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,X.jsx)(TE,{value:_,placeholder:c.searchCommits,onChange:v}),(0,X.jsx)(`div`,{className:`grid gap-1`,children:F.length===0?(0,X.jsx)(`div`,{className:`rounded-lg border border-edge-subtle px-3 py-6 text-center text-sm text-fg-muted`,children:c.noCommits}):F.map(e=>(0,X.jsxs)(`button`,{type:`button`,className:`flex items-center gap-3 rounded-lg px-3 py-2 text-left hover:bg-surface-hover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,disabled:i,onClick:()=>z(`commit`,{commit:e.sha}),children:[(0,X.jsx)(`span`,{className:`font-mono text-xs text-fg-muted`,children:e.shortSha}),(0,X.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-sm text-fg`,children:e.subject}),e.date?(0,X.jsx)(`span`,{className:`shrink-0 text-xs text-fg-muted`,children:e.date.slice(0,10)}):null]},e.sha))})]}):(0,X.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,X.jsx)(`textarea`,{className:`h-40 resize-none rounded-lg border border-edge bg-surface-base px-3 py-2 text-sm text-fg outline-none placeholder:text-fg-disabled focus:border-accent focus:ring-2 focus:ring-accent/25`,value:y,placeholder:c.customPlaceholder,onChange:e=>x(e.target.value)}),(0,X.jsx)(`div`,{className:`text-xs text-fg-muted`,children:c.customDescription})]})}),t[41]=N,t[42]=F,t[43]=l,t[44]=i,t[45]=p,t[46]=y,t[47]=O,t[48]=d,t[49]=c.customDescription,t[50]=c.customPlaceholder,t[51]=c.defaultBadge,t[52]=c.errorTitle,t[53]=c.loading,t[54]=c.localBadge,t[55]=c.noBranches,t[56]=c.noCommits,t[57]=c.presetBase,t[58]=c.presetBaseDescription,t[59]=c.presetBaseDescriptionNoDefault,t[60]=c.presetCommit,t[61]=c.presetCommitDescription,t[62]=c.presetCustom,t[63]=c.presetCustomDescription,t[64]=c.presetUncommitted,t[65]=c.remoteBadge,t[66]=c.retry,t[67]=c.searchBranches,t[68]=c.searchCommits,t[69]=_,t[70]=z,t[71]=L,t[72]=h,t[73]=oe):oe=t[73];let se;t[74]!==i||t[75]!==c.cancel||t[76]!==c.runReview||t[77]!==o||t[78]!==z||t[79]!==h?(se=h===`custom`?(0,X.jsxs)(`div`,{className:`flex shrink-0 justify-end gap-2 border-t border-edge px-4 py-3`,children:[(0,X.jsx)(ai,{type:`button`,variant:`secondary`,className:`h-9 rounded-lg`,onClick:o,children:c.cancel}),(0,X.jsx)(ai,{type:`button`,variant:`primary`,className:`h-9 rounded-lg`,disabled:i,onClick:()=>z(`custom`),children:c.runReview})]}):null,t[74]=i,t[75]=c.cancel,t[76]=c.runReview,t[77]=o,t[78]=z,t[79]=h,t[80]=se):se=t[80];let G;t[81]!==ae||t[82]!==oe||t[83]!==se?(G=(0,X.jsxs)(w,{children:[V,(0,X.jsxs)(T,{className:`xopc-dialog-content fixed left-1/2 top-1/2 z-[121] flex h-[min(86vh,34rem)] w-[min(100vw-2rem,40rem)] -translate-x-1/2 -translate-y-1/2 flex-col overflow-hidden rounded-xl border border-edge bg-surface-overlay shadow-popover outline-none`,children:[ae,oe,se]})]}),t[81]=ae,t[82]=oe,t[83]=se,t[84]=G):G=t[84];let K;return t[85]!==n||t[86]!==G||t[87]!==ee?(K=(0,X.jsx)(D,{open:n,onOpenChange:ee,children:G}),t[85]=n,t[86]=G,t[87]=ee,t[88]=K):K=t[88],K}function TE(e){let t=(0,Y.c)(7),{value:n,placeholder:r,onChange:i}=e,a;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,X.jsx)(Pt,{className:`size-4 shrink-0 text-fg-muted`}),t[0]=a):a=t[0];let o;t[1]===i?o=t[2]:(o=e=>i(e.target.value),t[1]=i,t[2]=o);let s;return t[3]!==r||t[4]!==o||t[5]!==n?(s=(0,X.jsxs)(`label`,{className:`flex h-9 items-center gap-2 rounded-lg border border-edge bg-surface-base px-3 text-sm text-fg focus-within:border-accent focus-within:ring-2 focus-within:ring-accent/25`,children:[a,(0,X.jsx)(`input`,{className:`min-w-0 flex-1 bg-transparent outline-none placeholder:text-fg-disabled`,value:n,placeholder:r,onChange:o})]}),t[3]=r,t[4]=o,t[5]=n,t[6]=s):s=t[6],s}function EE(e){let t=e.mimeType||`application/octet-stream`,n=e.type===`voice`||t.startsWith(`audio/`)?`voice`:e.type===`pasted_text`?`pasted_text`:t.startsWith(`image/`)?`image`:`document`;return{id:e.id,type:n,name:e.name||`file`,mimeType:t,size:e.size??0,content:e.data??``,data:e.data,uri:e.uri,durationSeconds:e.durationSeconds}}var DE=(0,Z.memo)(function({personal:e=!1,placeholder:t,nextTurnSuggestionsEnabled:n=!1,disabled:r,sendDisabled:i=!1,sending:a,streaming:o,conversationId:s,composerContext:c,pageContextPreview:u,contextRefs:d,setContextRefs:f,onDraftAttachmentsChange:p,thinkingLevel:m,modelSupportsThinking:g,onThinkingChange:_,onSend:v,onPersonalSendDispatched:b,onAbort:x,onAddPendingFollowUp:S,onSteeringInterrupt:C,pendingFollowUps:w,editingFollowUpId:T,onBeginEditFollowUp:E,onCancelEditFollowUp:D,onCommitEditFollowUp:O,onPendingFollowUpRemove:k,onPendingFollowUpMove:A,onPendingFollowUpReorder:j,onPendingFollowUpSteer:M,steeringFollowUpId:N,welcomeDraftSeed:P,welcomeSuggestion:F,onAcceptWelcomeSuggestion:I,sessionModel:L,showModelSelector:R,onModelChange:z,modelDisabled:B,onChatAgentChange:ee,currentAgentId:V,voiceAgentName:H,voiceTaskId:te,voiceMode:U,prepareVoiceSession:W,prepareContextSession:ne,editingUserTurnId:re,onCancelUserMessageEdit:ie}){let ae=ca(),oe=(0,Z.useRef)(!1);r||=ae.conversationId===s&&ae.active;let se=h(e=>e.language),G=y(se),[K,ce]=l();(0,Z.useEffect)(()=>{oo()},[]);let le=(...e)=>{if(i)return!1;let t=v(...e);return t instanceof Promise?t.then(t=>(t!==!1&&Qe.submitted(e[0]),t)):(t!==!1&&Qe.submitted(e[0]),t)},q=(0,Z.useRef)(!1),ue=(0,Z.useRef)(null),de=(0,Z.useRef)(null),fe=(0,Z.useRef)(null),pe=(0,Z.useRef)(!1),[me,he]=(0,Z.useState)(!1),[ge,_e]=(0,Z.useState)(null),[ve,ye]=(0,Z.useState)(null),[be,xe]=(0,Z.useState)(!1),Se=(0,Z.useRef)(le),Ce=(0,Z.useRef)(m);Se.current=le,Ce.current=m,(0,Z.useEffect)(()=>{if(!s||ve===s){_e(null);return}let e=!1;return br(s).then(e=>e?null:uo(s)).then(t=>{e||_e(t&&t.required&&!t.trusted&&t.decision===null?t:null)}).catch(()=>{e||_e(null)}),()=>{e=!0}},[s,ve]);let we=(0,Z.useCallback)(()=>{!s||be||(xe(!0),no(s,!0).then(()=>{_e(null)}).catch(e=>{Me(`error`,G.chat.commandPalette.workspaceTrustFailed,{error:e instanceof Error?e.message:String(e)})}).finally(()=>xe(!1)))},[G.chat.commandPalette,s,be]),Te=Gr({conversationId:s??`new`,chat:G.chat,onAttachmentsChange:e=>p?.(e.map((e,t)=>({id:e.uri||e.id||`draft:${t}:${e.name}`,title:e.name})))}),Ee=(0,Z.useRef)(d);Ee.current=d;let De=(0,Z.useCallback)(e=>{let t=d.find(t=>t.refId===e);return t?{title:t.title,kind:t.kind,fileKind:t.fileKind}:void 0},[d]),Oe=(0,Z.useCallback)(e=>{let t=e?.contextRefs??[];if(Ee.current=t,f(t),e?.attachments){Te.setAttachments(e.attachments.map(EE));return}Te.clearAttachments()},[Te.clearAttachments,Te.setAttachments,f]),Ae=(0,Z.useCallback)(e=>{let t=Ee.current,n=t.find(t=>t.kind===e.kind&&t.sourceId===e.sourceId);if(n){if(n.refId)return n;let r={...n,refId:e.refId},i=t.map(e=>e===n?r:e);return Ee.current=i,f(i),r}if(t.length>=5)return Me(`warning`,G.chat.commandPalette.contextLimitReached,{max:5}),null;let r=[...t,e];return Ee.current=r,f(r),e},[G.chat.commandPalette.contextLimitReached,f]);(0,Z.useEffect)(()=>{let e=e=>{let t=e.detail;t?.conversationId!==s||t.reference.kind!==`result`||Ae(t.reference)};return window.addEventListener(`chat-result-reference`,e),()=>window.removeEventListener(`chat-result-reference`,e)},[s,Ae]);let je=(0,Z.useCallback)(e=>{let t=e.availability.status===`agent-denied`?G.chat.commandPalette.skillAgentDeniedReason:G.chat.commandPalette.skillDisabledReason,n=jp(G.chat.commandPalette.skillUnavailableMessage,{name:e.name,agent:V||`main`,reason:t});if(e.availability.status===`agent-denied`&&window.confirm(`${n}\n\n${G.chat.commandPalette.skillAddToAllowlistConfirm}`)){fo(V,e.canonicalName,s).catch(e=>{window.alert(e instanceof Error?e.message:String(e))});return}window.alert(n)},[V,G.chat.commandPalette,s]),Ne=Tp({capabilities:e?Af:kf,disabled:r,agentId:V,conversationId:s,autoFocusKey:s,welcomeDraftSeed:P,onExternalTextReplace:Oe,shouldSyncSelectionRef:q,resolveContextRef:De}),Pe=K.get(`attachmentHandoff`);WT(s,Ne,Te,d,f),(0,Z.useEffect)(()=>{if(!Pe)return;let e=ke(Pe);ce(e=>{let t=new URLSearchParams(e);return t.delete(`attachmentHandoff`),t},{replace:!0}),e&&Te.processFiles([e]).then(()=>Ne.editorRef.current?.focus({preventScroll:!0}))},[Pe,Te.processFiles,Ne.editorRef,s,ce]);let{onUserTextCommitted:Fe,onWireInputClearWalk:Ie,tryInputHistoryArrow:Le}=BT({conversationId:s,editorRef:Ne.editorRef,valueRef:Ne.valueRef,resetEditor:Ne.resetEditor,onWireInput:Ne.onWireInput}),Re=(0,Z.useCallback)((e,t)=>{Ie(e,t);let n=Yn(e),r=new Set(n?hr(n):[]),i=Ee.current,a=i.filter(e=>!e.refId||r.has(e.refId));a.length!==i.length&&(Ee.current=a,f(a))},[Ie,f]),ze=lf(s??``),Be=a||o||ze;pe.current=Be;let Ve=(0,Z.useCallback)(()=>{pe.current||he(!0)},[]),He=(0,Z.useCallback)(e=>{Zw(Se.current(e,void 0,Ce.current,d),t=>{Fe?.(e,t),f([])})},[d,Fe,f]),Ue=hE({capabilities:e?Af:kf,conversationId:s,editorValue:Ne.value,editorCursor:Ne.cursor,isComposing:Ne.isComposing,runBusy:Be,thinkingLevel:m,editorRef:Ne.editorRef,valueRef:Ne.valueRef,resetEditor:Ne.resetEditor,clearAttachments:Te.clearAttachments,onSend:le,onUserTextCommitted:Fe,onChatAgentChange:ee,currentAgentId:V,prepareSession:ne,contextRefs:d,onAddContextRef:Ae,onUnavailableSkill:je,onReviewLauncher:Ve,onAddPendingFollowUp:S,onAbort:x,pendingFollowUpsCount:w.length,maxPendingFollowUps:10,clearContextRefs:()=>f([]),commandPalettePanelRef:ue});q.current=Ue.shouldSyncSelection;let We=vi({disabled:r||ae.active,chat:G.chat,onTranscript:e=>{let t=Ne.valueRef.current,n=Si(t,e);Ne.resetEditor({nextText:n,caretOffset:n.length,focus:!0})}}),{phase:Ge,voiceActive:Ke,startVoiceInput:qe,cancelVoiceInput:Je,confirmVoiceInput:Ye}=We;(0,Z.useEffect)(()=>{let e=e=>{if(!Ew(e,{disabled:r,editorHidden:Ke&&Ge!==`error`}))return;let t=gp(e.clipboardData);t&&(e.preventDefault(),Ne.focusForExternalPaste(),_p(t,{processFiles:Te.processFiles,processPastedText:Te.processPastedText,insertText:e=>document.execCommand(`insertText`,!1,e),onUnsupportedFiles:()=>Me(`warning`,G.chat.clipboardFileTypeUnsupported)}))};return window.addEventListener(`paste`,e),()=>window.removeEventListener(`paste`,e)},[Te.processFiles,Te.processPastedText,r,Ne.focusForExternalPaste,G.chat.clipboardFileTypeUnsupported,Ke,Ge]),(0,Z.useEffect)(()=>{let e=e=>{let t=e?.detail?.target;if(!(t&&t!==`chat`)&&(e?.preventDefault(),!r)){if(Ge===`recording`){Ye();return}(Ge===`idle`||Ge===`error`)&&(Ne.editorRef.current?.focus({preventScroll:!0}),qe())}},t=e=>{let t=e.detail?.target;t&&t!==`chat`||!Ke||(e.preventDefault(),Je(),Ne.editorRef.current?.focus({preventScroll:!0}))};window.addEventListener(vo,e),window.addEventListener(go,t);let n=window.setTimeout(()=>{if(yo()){if(r){_o();return}e()}},0);return()=>{window.clearTimeout(n),window.removeEventListener(vo,e),window.removeEventListener(go,t)}},[Je,Ye,r,Ne.editorRef,qe,Ke,Ge]);let Xe=(0,Z.useCallback)(()=>{fe.current=null},[]),Ze=n&&!r&&!i&&!Be&&!T&&!re&&!We.voiceActive&&!Ne.isComposing&&Ne.value.length===0&&Te.attachments.length===0&&d.length===0&&w.length===0,Qe=GT({conversationId:s,agentId:V,modelKey:L,locale:se,enabled:n,draftText:Ne.value,canShow:Ze}),$e=()=>{if(!Ze||Ne.valueRef.current.length>0||Ee.current.length>0)return!1;let e=Qe.accept();return e?(Ne.resetEditor({nextText:e,focus:!0}),!0):!1};(0,Z.useEffect)(()=>{Ze&&Qe.suggestion&&!Ue.palette.open&&Qe.shown()},[Ze,Qe.suggestion,Qe.shown,Ue.palette.open]);let et=HT({personal:e,chat:G.chat,runBusy:Be,voiceActive:We.voiceActive,cancelVoiceInput:We.cancelVoiceInput,editingFollowUpId:T,getTextValue:()=>Ne.valueRef.current,getAttachmentCount:()=>Te.attachmentsRef.current.length,wireAttachmentsPayload:Te.wireAttachmentsPayload,getContextRefs:()=>d,getThinkingLevel:()=>Ce.current,onSend:le,onDispatched:e&&b?(e,t)=>{let n=Ne.editorRef.current?.getBoundingClientRect();n&&b(e,n,t)}:void 0,onAddPendingFollowUp:S,onSteeringInterrupt:C,onCommitEditFollowUp:O,onPendingFollowUpRemove:k,pendingFollowUpsCount:w.length,resetEditor:()=>{Ne.resetEditor()},clearAttachments:Te.clearAttachments,clearContextRefs:()=>f([]),clearEditFollowUpRef:Xe,onUserTextCommitted:Fe}),tt=(0,Z.useCallback)((e=!1)=>et.flushSteeringDraft(e),[et.flushSteeringDraft]),nt=(0,Z.useCallback)((e,t)=>{!s||s===`new`||XC.getState().requestCreate(s,[{id:e.id,type:`text`,text:t,label:G.chat.followUpQueueHeading}])},[s,G.chat.followUpQueueHeading]);(0,Z.useLayoutEffect)(()=>{if(!T){fe.current&&=(Te.clearAttachments(),f([]),Ne.resetEditor(),null);return}if(T===fe.current)return;let e=w.find(e=>e.id===T);if(!e){D();return}fe.current=T,e.thinkingLevel!=null&&g&&_(e.thinkingLevel),Te.setAttachments(Uw(e.attachments??[])),f(e.contextRefs??[]),Ne.resetEditor({nextText:e.text,focus:!0})},[Te.clearAttachments,Te.setAttachments,Ne.resetEditor,T,D,_,w,g,f]);let rt=(0,Z.useCallback)(e=>{E(e)},[E]),it=(0,Z.useRef)({});it.current={adapters:Ue.adapters,send:et.send,runBusy:Be,pendingFollowUpsCount:w.length,flushSteeringDraft:tt,interruptDraft:et.interruptDraft,editingFollowUpId:T,onCancelEditFollowUp:D,attachmentsLen:Te.attachments.length,contextRefsLen:d.length,isComposing:Ne.isComposing,valueRef:Ne.valueRef,adjustHeight:Ne.adjustHeight,editorRef:Ne.editorRef,tryInputHistoryArrow:Le,acceptEmptySuggestion:Qe.suggestion&&Ze?$e:!Be&&!r&&!i&&!re&&!We.voiceActive&&F&&I?()=>(I(F),!0):void 0,dismissEmptySuggestion:Qe.suggestion?Qe.dismiss:void 0};let at=Be,ot=!!Ne.value.trim()||Te.attachments.length>0||d.length>0,st=ot&&!!C,ct=No(`(hover: hover) and (pointer: fine)`),lt=!at&&!T&&F?`${F.prompt}${ct?` · ${G.chat.welcomeSpotlight.acceptSuggestionHint}`:``}`:null;return(0,X.jsxs)(`div`,{className:`relative flex min-h-0 w-full flex-col`,children:[s?(0,X.jsx)(Sw,{conversationId:s},s):null,c?(0,X.jsx)(Fw,{...c,conversationId:s,disabled:(c.disabled??r)||a||o}):null,(0,X.jsxs)(Op,{className:e?`rounded-[1.65rem]`:void 0,dragging:Te.isDragging,onDragOver:e=>{(e.dataTransfer?.types.includes(`Files`)||yf(e.dataTransfer))&&(e.preventDefault(),e.dataTransfer.dropEffect=`copy`,Te.setIsDragging(!0))},onDragLeave:e=>{e.relatedTarget===null&&Te.setIsDragging(!1)},onDrop:async e=>{e.preventDefault(),Te.setIsDragging(!1);let t=e.dataTransfer?.files;if(t?.length){await Te.processFiles(Array.from(t));return}let n=bf(e.dataTransfer);if(n)try{let e=await Ea(n.path,{conversationId:n.conversationId,agentId:n.agentId,projectId:n.projectId}),t=Yr(n.name),r=e.type&&e.type!==`application/octet-stream`?e.type:t;await Te.processFiles([new File([e],n.name,{type:r})])}catch{Me(`error`,G.chat.attachmentLoadFailed,{name:n.name})}},children:[Te.isDragging?(0,X.jsx)(`div`,{className:`pointer-events-none absolute inset-0 z-10 flex items-center justify-center rounded-xl bg-accent-soft/80 text-sm font-medium text-accent-fg backdrop-blur-[1px]`,children:G.chat.dropFiles}):null,re?(0,X.jsxs)(`div`,{className:`flex shrink-0 items-center justify-between gap-3 border-b border-edge-subtle bg-accent-soft/40 px-4 py-2 text-xs text-fg-muted`,children:[(0,X.jsx)(`span`,{children:G.chat.userMessageEditing}),(0,X.jsx)(`button`,{type:`button`,className:`font-medium text-accent-fg hover:underline`,onClick:ie,children:G.chat.userMessageEditCancel})]}):null,(0,X.jsx)(Mw,{conversationId:s}),w.length>0?(0,X.jsx)(`div`,{className:`max-h-[min(30vh,11rem)] shrink-0 overflow-y-auto overflow-x-hidden border-b border-edge-subtle/80 [scrollbar-gutter:stable] dark:border-edge-subtle/70`,children:(0,X.jsx)(jw,{items:w,disabled:r,editingFollowUpId:T,onEditInComposer:rt,onRemove:k,onMove:A,onReorder:j,onSteer:M,steeringBusyId:N,onOpenSideChat:s&&s!==`new`?nt:void 0})}):null,T?(0,X.jsxs)(`div`,{className:`flex items-center justify-between gap-3 px-4 py-2 text-xs text-fg-muted`,children:[(0,X.jsx)(`span`,{children:G.chat.inputPlaceholderSteeringEdit}),(0,X.jsx)(`button`,{type:`button`,onClick:D,className:`shrink-0 rounded px-1 text-accent-fg hover:underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,children:G.chat.userMessageEditCancel})]}):null,(0,X.jsx)(Vr,{attachments:Te.attachments,conversationId:s,topPadded:w.length>0,onRemove:Te.removeAttachment}),(0,X.jsx)(Nw,{refs:d.filter(e=>!e.refId),label:G.chat.commandPalette.contextLabel,onRemove:e=>f(t=>t.filter(t=>t.sourceId!==e))}),u,(0,X.jsxs)(`div`,{className:e?`flex min-h-0 shrink-0 items-end gap-1 px-1.5 py-1.5 sm:px-2`:`flex min-h-0 shrink-0 flex-col`,children:[(0,X.jsx)(`input`,{ref:de,type:`file`,multiple:!0,className:`hidden`,onChange:async e=>{let t=e.target.files;t&&await Te.processFiles(Array.from(t)),e.target.value=``}}),e&&!We.voiceActive&&(0,X.jsx)(Vw,{disabled:r||i,attachmentCount:Te.attachments.length,maxAttachments:10,chat:G.chat,onPickFiles:()=>de.current?.click()}),(0,X.jsxs)(`div`,{className:e?`relative min-w-0 flex-1 px-1`:J(`relative px-3 pb-0 pt-1 sm:px-4`,Te.attachments.length>0&&`pt-2`),children:[(0,X.jsx)(Xw,{open:Ue.atPicker.open,anchorRef:Ne.editorRef,items:Ue.atPicker.items,selectedIndex:Ue.atPicker.selectedIndex,loading:Ue.atPicker.loading,query:Ue.atPicker.query,noResults:Ue.atPicker.error??G.chat.atMention.noResults,conversationId:s,recentLabel:G.chat.atMention.recentBadge,sectionLabels:{file:G.chat.atMention.files,note:G.chat.atMention.notes,session:G.chat.atMention.chats,skill:G.chat.atMention.skills,agent:G.chat.atMention.agents,browser_tab:G.chat.atMention.browserTabs},ariaLabel:G.chat.atMention.placeholder,onSelectItem:Ue.applyAtMention}),(0,X.jsx)(DT,{open:Ue.palette.open,anchorRef:Ne.editorRef,panelRef:ue,sections:Ue.palette.loadError?[]:Ue.palette.sections,flatItems:Ue.palette.loadError?[]:Ue.palette.flatItems,loading:Ue.palette.loading,failedKinds:Ue.palette.failedKinds,selectedIndex:Ue.palette.selectedIndex,noResults:Ue.palette.loadError??G.chat.commandPalette.noResults,sectionLoadFailedLabel:G.chat.commandPalette.sectionLoadFailed,query:Ue.palette.query,skillsLabel:G.chat.commandPalette.skillsSection,commandsLabel:G.chat.commandPalette.commandsSection,agentsLabel:G.chat.commandPalette.agentsSection,currentAgentId:V,currentBadgeLabel:G.chat.commandPalette.currentBadge,runBusy:Be,pendingFollowUpsCount:w.length,maxPendingFollowUps:10,queueBadgeLabel:G.chat.commandPalette.queueBadge,queueFullBadgeLabel:G.chat.commandPalette.queueFullBadge,queueFullTooltip:G.chat.commandPalette.queueFullTooltip,skillUnavailableLabel:G.chat.commandPalette.skillUnavailableBadge,skillAgentDeniedLabel:G.chat.commandPalette.skillAgentDeniedBadge,skillSourceLabels:{builtin:G.chat.commandPalette.sourceBuiltin,workspace:G.chat.commandPalette.sourceWorkspace,global:G.chat.commandPalette.sourceGlobal,extra:G.chat.commandPalette.sourceExtra},onSelectItem:Ue.applyPalette}),We.voiceActive?(0,X.jsx)(Di,{phase:We.phase,elapsedLabel:We.elapsedLabel,recordedDictation:We.recordedDictation,audioLevel:We.audioLevel,partialTranscript:We.partialTranscript,finalTranscript:We.finalTranscript,error:We.error,settingsRequired:We.settingsRequired,disabled:r,chat:G.chat,onCancel:We.cancelVoiceInput,onConfirm:We.confirmVoiceInput,onRetry:We.retryVoiceInput}):null,(0,X.jsx)(Ep,{editorRef:Ne.editorRef,disabled:r,hidden:We.voiceActive&&We.phase!==`error`,compact:e,ariaLabel:t??G.chat.inputPlaceholder,placeholder:(Ze&&Qe.suggestion?`${Qe.suggestion.prompt}${ct?` · ${G.chat.welcomeSpotlight.acceptSuggestionHint}`:``}`:null)??t??lt??(at?T?G.chat.inputPlaceholderSteeringEdit:G.chat.inputPlaceholderSteering:G.chat.inputPlaceholder),onWireInput:Re,adjustHeight:Ne.adjustHeight,processFiles:Te.processFiles,processPastedText:Te.processPastedText,setIsComposing:Ne.setIsComposing,kbdRef:it,chatMessages:G.chat})]}),e?(0,X.jsx)(Hw,{disabled:r||i,voiceActive:We.voiceActive,runBusy:at,hasDraft:ot,chat:G.chat,onStartVoiceInput:We.startVoiceInput,onSend:et.send,onQueue:S?tt:void 0,onDefer:S?()=>et.flushSteeringDraft(!1):void 0,onAbort:x,onInterrupt:et.interruptDraft}):(0,X.jsx)(Fp,{disabled:r,sendDisabled:i,sending:a,streaming:o,runBusy:at,chat:G.chat,hasDraft:ot,showSteeringInterrupt:st,attachmentCount:Te.attachments.length,maxAttachments:10,onPickFiles:()=>de.current?.click(),thinkingLevel:m,onThinkingChange:_,voiceActive:We.voiceActive,onStartVoiceInput:We.startVoiceInput,voiceConversationEnabled:!!(s||W)&&!at,onStartVoiceConversation:()=>{if(!oe.current){if(s){ae.open({conversationId:s,name:H||V||`xopc`,taskId:te,mode:U});return}W&&(oe.current=!0,W().then(e=>ae.open({conversationId:e,name:H||V||`xopc`,taskId:te,mode:U})).catch(e=>Me(`error`,e instanceof Error?e.message:G.chat.callFailed)).finally(()=>{oe.current=!1}))}},onSend:et.send,onQueue:S?tt:void 0,onAbort:x,onInterrupt:et.interruptDraft,sessionModel:L,showModelSelector:R,onModelChange:z,modelDisabled:B})]}),(0,X.jsx)(wE,{open:me,conversationId:s,disabled:r||at,chat:G.chat,onClose:()=>he(!1),onSendCommand:He}),(0,X.jsx)(Ta,{open:ge!==null,title:G.chat.commandPalette.workspaceTrustTitle,description:jp(G.chat.commandPalette.workspaceTrustDescription,{path:ge?.workspacePath??``}),confirmLabel:be?G.chat.commandPalette.workspaceTrustSaving:G.chat.commandPalette.workspaceTrustConfirm,cancelLabel:G.chat.commandPalette.workspaceTrustCancel,onConfirm:we,onCancel:()=>{_e(null),ye(s)}})]})]})});function OE(e){let t=(0,Y.c)(42),{draft:n,onRemove:r,disabled:i,waiting:a}=e,o=i!==void 0&&i,s=a!==void 0&&a,c=h(AE),l;t[0]===c?l=t[1]:(l=y(c),t[0]=c,t[1]=l);let u=l.chat.pageContext,d=u.label,f;t[2]!==n.title||t[3]!==u.preview?(f=(0,X.jsxs)(`summary`,{className:`cursor-pointer break-words rounded text-sm text-fg focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,children:[u.preview,`: `,n.title]}),t[2]=n.title,t[3]=u.preview,t[4]=f):f=t[4];let p;t[5]===u.frozen?p=t[6]:(p=(0,X.jsx)(`p`,{className:`mt-2 text-xs text-fg-muted`,children:u.frozen}),t[5]=u.frozen,t[6]=p);let m;t[7]===n.envelope.resourceRefs?m=t[8]:(m=n.envelope.resourceRefs.map(kE).join(`, `),t[7]=n.envelope.resourceRefs,t[8]=m);let g;t[9]===m?g=t[10]:(g=(0,X.jsx)(`p`,{className:`mt-1 break-all text-xs text-fg-muted`,children:m}),t[9]=m,t[10]=g);let _;t[11]===n.preview?_=t[12]:(_=(0,X.jsx)(`pre`,{className:`mt-2 max-h-48 overflow-y-auto whitespace-pre-wrap break-words font-sans text-sm text-fg`,children:n.preview}),t[11]=n.preview,t[12]=_);let v;t[13]!==n.truncated||t[14]!==u.truncated?(v=n.truncated?(0,X.jsx)(`p`,{className:`mt-1 text-xs text-fg-muted`,children:u.truncated}):null,t[13]=n.truncated,t[14]=u.truncated,t[15]=v):v=t[15];let b;t[16]!==n.envelope.selection||t[17]!==u.draft||t[18]!==u.selection?(b=n.envelope.selection?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`p`,{className:`mt-2 text-xs font-medium text-fg`,children:n.envelope.selection.draft?u.draft:u.selection}),(0,X.jsx)(`pre`,{className:`mt-1 max-h-36 overflow-y-auto whitespace-pre-wrap break-words font-sans text-sm text-fg`,children:n.envelope.selection.text})]}):null,t[16]=n.envelope.selection,t[17]=u.draft,t[18]=u.selection,t[19]=b):b=t[19];let x;t[20]!==v||t[21]!==b||t[22]!==f||t[23]!==p||t[24]!==g||t[25]!==_?(x=(0,X.jsxs)(`details`,{className:`min-w-0 flex-1`,children:[f,p,g,_,v,b]}),t[20]=v,t[21]=b,t[22]=f,t[23]=p,t[24]=g,t[25]=_,t[26]=x):x=t[26];let S=`${u.remove}: ${n.title}`,C;t[27]===Symbol.for(`react.memo_cache_sentinel`)?(C=(0,X.jsx)(Kt,{className:`size-4`,"aria-hidden":!0}),t[27]=C):C=t[27];let w;t[28]!==o||t[29]!==r||t[30]!==S?(w=(0,X.jsx)(`button`,{type:`button`,onClick:r,disabled:o,"aria-label":S,className:`inline-flex size-8 shrink-0 items-center justify-center rounded text-fg-muted hover:bg-surface-hover hover:text-fg focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent disabled:opacity-50`,children:C}),t[28]=o,t[29]=r,t[30]=S,t[31]=w):w=t[31];let T;t[32]!==x||t[33]!==w?(T=(0,X.jsxs)(`div`,{className:`flex items-start gap-2`,children:[x,w]}),t[32]=x,t[33]=w,t[34]=T):T=t[34];let E;t[35]!==u.pending||t[36]!==s?(E=s?(0,X.jsx)(`p`,{className:`mt-2 text-xs text-fg-muted`,role:`status`,children:u.pending}):null,t[35]=u.pending,t[36]=s,t[37]=E):E=t[37];let D;return t[38]!==u.label||t[39]!==T||t[40]!==E?(D=(0,X.jsxs)(`section`,{className:`mx-4 mt-2 min-w-0 rounded-lg border border-edge bg-surface-hover p-3`,"aria-label":d,children:[T,E]}),t[38]=u.label,t[39]=T,t[40]=E,t[41]=D):D=t[41],D}function kE(e){return`${e.kind} · ${e.id} · v${e.revision}`}function AE(e){return e.language}function jE(e){let t=(0,Y.c)(30),{selection:n}=e,r=h(ME)===`zh`,{mode:i,options:a,checking:o,checkFailed:s,failure:c,busy:l,changeMode:u,retry:d}=n,f=s?r?`无法检查运行环境,请重试。`:`Could not check the environment. Retry.`:a?.worktreeUnavailableReason===`workspace_unavailable`?r?`项目目录不可用,请在项目设置中检查路径。`:`Project directory unavailable. Check its path in project settings.`:null;if(!s&&a?.worktreeUnavailableReason===`git_commit_required`){let e;return t[0]===c?e=t[1]:(e=c?(0,X.jsx)(`p`,{role:`alert`,className:`w-full px-2 py-1 text-xs text-danger`,children:c}):null,t[0]=c,t[1]=e),e}let p;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(p=(0,X.jsx)(Ge,{className:`size-4 shrink-0`,strokeWidth:1.75,"aria-hidden":!0}),t[2]=p):p=t[2];let m=p,g;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(g=(0,X.jsx)(is,{className:`size-4 shrink-0`,strokeWidth:1.75,"aria-hidden":!0}),t[3]=g):g=t[3];let _=g,v=r?`运行位置`:`Work in`,y;t[4]!==l||t[5]!==u||t[6]!==s||t[7]!==v||t[8]!==i||t[9]!==a||t[10]!==r?(y=!a&&!s?(0,X.jsx)(Jt,{className:`h-8 w-36 rounded-full`}):(0,X.jsx)(K,{ariaLabel:r?`新会话运行位置`:`New session environment`,placeholder:v,title:r?`Local 指 xopc Gateway 所在机器;首次发送时创建所选环境。`:`Local means the machine running xopc Gateway. The selected environment is created on first send.`,triggerIcon:l?(0,X.jsx)(Ye,{className:`size-4 shrink-0 animate-spin motion-reduce:animate-none`,"aria-hidden":!0}):i===`managed_worktree`?_:m,triggerClassName:`h-8 w-auto max-w-full justify-start gap-1.5 rounded-full border-0 bg-surface-hover px-2.5 hover:bg-surface-active [&>svg:last-child]:hidden`,contentClassName:`xopc-composer-config-popover w-max min-w-0 max-w-[calc(100vw-1.5rem)]`,side:`top`,allowEmpty:!1,value:i,disabled:l||s,options:[{value:`local_checkout`,label:`Local`,icon:m,group:v,disabled:!a?.localAvailable},{value:`managed_worktree`,label:`New local worktree`,icon:_,group:v,disabled:!a||!!a.worktreeUnavailableReason}],onChange:e=>u(e)}),t[4]=l,t[5]=u,t[6]=s,t[7]=v,t[8]=i,t[9]=a,t[10]=r,t[11]=y):y=t[11];let b;t[12]!==l||t[13]!==o||t[14]!==c||t[15]!==i||t[16]!==a?.worktreeUnavailableReason||t[17]!==f||t[18]!==d||t[19]!==r?(b=f||c||i===`managed_worktree`&&a?.worktreeUnavailableReason?(0,X.jsx)(ai,{variant:`ghost`,className:`size-8 rounded-full p-0`,disabled:l||o,onClick:d,"aria-label":r?`重新检查环境`:`Recheck environment`,children:(0,X.jsx)(jt,{className:`size-3.5 `+(o?`animate-spin motion-reduce:animate-none`:``),"aria-hidden":!0})}):null,t[12]=l,t[13]=o,t[14]=c,t[15]=i,t[16]=a?.worktreeUnavailableReason,t[17]=f,t[18]=d,t[19]=r,t[20]=b):b=t[20];let x;t[21]===f?x=t[22]:(x=f?(0,X.jsx)(`p`,{role:`status`,className:`w-full px-2 py-1 text-xs leading-5 text-fg-muted`,children:f}):null,t[21]=f,t[22]=x);let S;t[23]===c?S=t[24]:(S=c?(0,X.jsx)(`p`,{role:`alert`,className:`max-h-20 w-full overflow-y-auto break-words px-2 py-1 text-xs leading-5 text-danger`,children:c}):null,t[23]=c,t[24]=S);let C;return t[25]!==y||t[26]!==b||t[27]!==x||t[28]!==S?(C=(0,X.jsxs)(X.Fragment,{children:[y,b,x,S]}),t[25]=y,t[26]=b,t[27]=x,t[28]=S,t[29]=C):C=t[29],C}function ME(e){return e.language}function NE({preparation:e,conversationId:t,ready:n,onSend:r}){let i=m(e=>e.conversationId),a=m(e=>e.baseUrl),[o,s]=(0,Z.useState)(null),[c,l]=(0,Z.useState)(null),[u,d]=(0,Z.useState)(null),f=(0,Z.useRef)(null),h=(0,Z.useRef)(!1),_=(0,Z.useRef)(r);_.current=r;let v=(0,Z.useRef)(t);v.current=t;let{data:y,error:b,isValidating:x,mutate:S}=Lr(e?[`project-environment-options`,a,i,e.project.id]:null,async()=>(await g(p(`/api/projects/${encodeURIComponent(e.project.id)}/environment-options`))).options,{keepPreviousData:!1,revalidateOnFocus:!1,shouldRetryOnError:!1}),C=y?.localAvailable&&y.worktreeUnavailableReason!==`git_commit_required`&&y.worktreeUnavailableReason!==`workspace_unavailable`?o?.preparation===e?o.mode:e?jr(Pr(),e.project.id)??`local_checkout`:`local_checkout`:`local_checkout`,w=!!(!b&&y?.localAvailable&&(C===`local_checkout`||!y.worktreeUnavailableReason)),T=(0,Z.useCallback)(e=>{let t=f.current;f.current=null,d(null),t?.resolve(e?t.conversationId:null)},[]);(0,Z.useEffect)(()=>{if(u){if(u.baseUrl!==a||u.token!==i){T(!1);return}u.conversationId&&(t===u.conversationId?n&&T(!0):e!==u.preparation&&T(!1))}},[u,t,n,e,T,a,i]),(0,Z.useEffect)(()=>()=>{f.current?.resolve(null),f.current=null},[]);let E=(0,Z.useCallback)(async()=>{if(!e)return t;let n=f.current;if(n)return n.preparation===e?n.completion:null;if(!w||x)return null;l(null);let r,o=new Promise(e=>{r=e}),s={preparation:e,baseUrl:a,token:i,conversationId:null,completion:o,resolve:r};return f.current=s,d(s),Promise.resolve().then(()=>e.create(C)).then(t=>{if(f.current!==s)return;Or(e.project.id,C);let n={...s,conversationId:t};f.current=n,d(n)}).catch(t=>{f.current===s&&(l({preparation:e,message:t instanceof Error?t.message:String(t)}),S(),T(!1))}),o},[w,a,T,x,C,S,e,t,i]);return{mode:C,options:y,checking:x,checkFailed:!!b,allowed:w,busy:!!(u&&(u.preparation===e||u.conversationId&&u.conversationId===t)),failure:c?.preparation===e?c.message:null,changeMode:t=>{!e||f.current||(s({preparation:e,mode:t}),l(null))},retry:()=>void S(),prepareSession:E,send:async(...n)=>{let r=t;if(e){if(h.current)return!1;h.current=!0;try{let e=await E();if(!e)return!1;r=e,n[2]=void 0}finally{h.current=!1}}return!r||v.current!==r?!1:await _.current(...n)!==!1&&{conversationId:r}}}}function PE(e,t){let n=(0,Y.c)(12),r=m(IE),i=m(FE),a;n[0]===e?a=n[1]:(a=t=>e?t.sessions[e]?.localDraft:void 0,n[0]=e,n[1]=a);let o=Mn(a),s;n[2]!==i||n[3]!==e||n[4]!==t||n[5]!==o||n[6]!==r?(s=e||t?[`chat-project-scope`,i,r,e,t,o===!0?`draft`:o===!1?`persisted`:`unknown`]:null,n[2]=i,n[3]=e,n[4]=t,n[5]=o,n[6]=r,n[7]=s):s=n[7];let c;n[8]!==e||n[9]!==t?(c=async()=>{let n=e?await br(e):void 0,r=n?n.creation.projectId:e?(await dn(e)).projectId:t;return r?cn(r):null},n[8]=e,n[9]=t,n[10]=c):c=n[10];let l;n[11]===Symbol.for(`react.memo_cache_sentinel`)?(l={keepPreviousData:!1,shouldRetryOnError:!1},n[11]=l):l=n[11];let{data:u,error:d}=Lr(s,c,l);return d?null:u??null}function FE(e){return e.baseUrl}function IE(e){return e.conversationId}function LE(e,t){let n=Ao(e,t),r=jo(e,t);return`${e.id} ${n} ${r}`.toLowerCase()}function RE(e,t,n){let r=t.trim().toLowerCase();if(!r)return e;let i=r.split(/\s+/).filter(Boolean);return e.filter(e=>{let t=LE(e,n);return i.every(e=>t.includes(e))})}function zE(e){let t=(0,Y.c)(57),{items:n,value:r,disabled:i,placeholder:a,searchPlaceholder:o,noMatches:s,compact:c,contentSide:l,contentAlign:u,className:d,onChange:f}=e,p=l===void 0?`bottom`:l,m=u===void 0?`end`:u,g=h(VE),_;t[0]===g?_=t[1]:(_=y(g),t[0]=g,t[1]=_);let v=_.agentsSettings,[b,x]=(0,Z.useState)(!1),[S,C]=(0,Z.useState)(``),w;t[2]!==v||t[3]!==n||t[4]!==S?(w=RE(n,S,v),t[2]=v,t[3]=n,t[4]=S,t[5]=w):w=t[5];let T=w,E,D,O;if(t[6]!==v||t[7]!==n||t[8]!==a||t[9]!==r){let e;t[13]===r?e=t[14]:(e=e=>e.id===r,t[13]=r,t[14]=e),D=n.find(e),E=D?Ao(D,v):r||a,O=D?[Ao(D,v),jo(D,v)].filter(Boolean).join(` — `):void 0,t[6]=v,t[7]=n,t[8]=a,t[9]=r,t[10]=E,t[11]=D,t[12]=O}else E=t[10],D=t[11],O=t[12];let k=O??a,A=c&&`min-w-0 max-w-[min(calc(15ch+3rem),calc(100vw-8rem))] py-1.5 text-[13px]`,j;t[15]!==d||t[16]!==A?(j=J(da,`items-center gap-2 rounded-lg border border-edge-subtle bg-surface-panel px-2.5 py-2 text-left text-sm font-normal text-fg`,ta.transition,`hover:border-edge hover:bg-surface-hover/45`,fa,ua,`disabled:cursor-not-allowed disabled:opacity-50`,`dark:border-edge-subtle dark:hover:bg-surface-hover/55`,A,d),t[15]=d,t[16]=A,t[17]=j):j=t[17];let M;t[18]!==D?.avatar||t[19]!==r?(M=r?(0,X.jsx)(_a,{agentId:r,avatar:D?.avatar,size:28,className:`shrink-0`}):null,t[18]=D?.avatar,t[19]=r,t[20]=M):M=t[20];let N=c?`max-w-[15ch] shrink`:`flex-1`,P;t[21]===N?P=t[22]:(P=J(`min-w-0 truncate text-left`,N),t[21]=N,t[22]=P);let F;t[23]!==E||t[24]!==P?(F=(0,X.jsx)(`span`,{className:P,children:E}),t[23]=E,t[24]=P,t[25]=F):F=t[25];let I;t[26]===Symbol.for(`react.memo_cache_sentinel`)?(I=(0,X.jsx)(ae,{className:`size-4 shrink-0 text-fg-subtle opacity-70`,"aria-hidden":!0}),t[26]=I):I=t[26];let L;t[27]!==i||t[28]!==F||t[29]!==k||t[30]!==j||t[31]!==M?(L=(0,X.jsx)(di,{asChild:!0,children:(0,X.jsxs)(`button`,{type:`button`,disabled:i,title:k,className:j,children:[M,F,I]})}),t[27]=i,t[28]=F,t[29]=k,t[30]=j,t[31]=M,t[32]=L):L=t[32];let R;t[33]===Symbol.for(`react.memo_cache_sentinel`)?(R=J(ie,`z-50 w-[var(--radix-popover-trigger-width)] min-w-[12rem] rounded-lg border border-edge bg-surface-overlay shadow-md`,ta),t[33]=R):R=t[33];let z;t[34]===Symbol.for(`react.memo_cache_sentinel`)?(z=e=>C(e.target.value),t[34]=z):z=t[34];let B;t[35]===Symbol.for(`react.memo_cache_sentinel`)?(B=J(`w-full rounded-md border border-edge bg-surface-panel px-2.5 py-1.5 text-sm text-fg placeholder:text-fg-muted`,fa),t[35]=B):B=t[35];let ee;t[36]!==S||t[37]!==o?(ee=(0,X.jsx)(`div`,{className:`shrink-0 border-b border-edge p-2`,children:(0,X.jsx)(`input`,{type:`search`,value:S,onChange:z,placeholder:o,className:B,"aria-label":o})}),t[36]=S,t[37]=o,t[38]=ee):ee=t[38];let V;t[39]===Symbol.for(`react.memo_cache_sentinel`)?(V=J(se,`max-h-64 p-1`),t[39]=V):V=t[39];let te;t[40]!==v||t[41]!==T||t[42]!==s||t[43]!==f||t[44]!==r?(te=T.length===0?(0,X.jsx)(`li`,{className:`p-2 text-sm text-fg-muted`,children:s}):T.map(e=>{let t=e.id===r,n=Ao(e,v),i=jo(e,v),a=i.length>0?i:void 0;return(0,X.jsx)(`li`,{role:`option`,"aria-selected":t,children:(0,X.jsxs)(`button`,{type:`button`,className:J(`flex w-full items-center gap-2 rounded-md px-2 py-1.5 text-left text-sm text-fg`,t?`bg-surface-hover`:`hover:bg-surface-hover`),onClick:()=>{f(e.id),x(!1),C(``)},children:[(0,X.jsx)(_a,{agentId:e.id,avatar:e.avatar,size:32,className:`shrink-0`}),(0,X.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[(0,X.jsx)(`span`,{className:`block truncate font-medium leading-tight`,title:n,children:n}),i?(0,X.jsx)(`span`,{className:`mt-0.5 block truncate text-xs leading-tight text-fg-muted`,title:a,children:i}):null]}),(0,X.jsx)(H,{className:J(`size-4 shrink-0`,t?`opacity-100`:`opacity-0`),"aria-hidden":!0})]})},e.id)}),t[40]=v,t[41]=T,t[42]=s,t[43]=f,t[44]=r,t[45]=te):te=t[45];let U;t[46]===te?U=t[47]:(U=(0,X.jsx)(`ul`,{"data-select-scroll-region":!0,className:V,role:`listbox`,children:te}),t[46]=te,t[47]=U);let W;t[48]!==m||t[49]!==p||t[50]!==ee||t[51]!==U?(W=(0,X.jsx)(si,{children:(0,X.jsxs)(ci,{side:p,align:m,sideOffset:4,collisionPadding:8,className:R,onOpenAutoFocus:BE,children:[ee,U]})}),t[48]=m,t[49]=p,t[50]=ee,t[51]=U,t[52]=W):W=t[52];let ne;return t[53]!==b||t[54]!==L||t[55]!==W?(ne=(0,X.jsxs)(li,{open:b,onOpenChange:x,children:[L,W]}),t[53]=b,t[54]=L,t[55]=W,t[56]=ne):ne=t[56],ne}function BE(e){return e.preventDefault()}function VE(e){return e.language}function HE(e,t,n=[],r){let i=new Map;for(let t of e)i.set(`${t.kind}:${t.id}`,{...t,pending:!1});let a=(e,t,n,r)=>{let a=`${e}:${t}`,o=i.get(a);if(o){o.pending=!0;return}i.set(a,{kind:e,id:t,title:n,...r?{fileKind:r}:{},origins:[],pending:!0})};for(let e of t)a(e.kind,e.sourceId,e.title,e.fileKind);for(let e of n)a(`attachment`,e.id,e.title);return r&&a(`app_context`,r.id,r.title),[...i.values()]}function UE(e){return e===`zh`?{title:`会话信息`,work:`当前工作`,sources:`关联来源`,environment:`运行位置`,independent:`独立会话`,delegatedTasks:`派出任务`,expand:`显示更多`,collapse:`收起`,session:`会话关联`,task:`任务关联`,recent:`最近引用`,draft:`待发送`,untitled:`未命名 Note`,untitledSource:`未命名来源`,unavailable:`暂无法查看`,partialUnavailable:`部分信息暂无法查看`,refresh:`重试`,more:`仅显示前 20 项`,local:`本地目录`,worktree:`Worktree`,detached:`游离 HEAD`,unavailableEnvironment:`运行目录不可用`,newEnvironment:`在另一环境新建会话`,copyEnvironmentPath:`复制环境路径`,copied:`已复制`}:{title:`Session info`,work:`Current work`,sources:`Related sources`,environment:`Run location`,independent:`Independent chat`,delegatedTasks:`Delegated tasks`,expand:`Show more`,collapse:`Show less`,session:`Linked to chat`,task:`Linked to task`,recent:`Recently used`,draft:`Pending send`,untitled:`Untitled Note`,untitledSource:`Untitled source`,unavailable:`Temporarily unavailable`,partialUnavailable:`Some details are unavailable`,refresh:`Retry`,more:`Showing the first 20 items`,local:`Local directory`,worktree:`Worktree`,detached:`Detached HEAD`,unavailableEnvironment:`Run directory unavailable`,newEnvironment:`New chat in another environment`,copyEnvironmentPath:`Copy environment path`,copied:`Copied`}}var WE=`flex min-w-0 items-center gap-3 rounded-lg px-2 py-2 text-sm text-fg transition-colors hover:bg-surface-hover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,GE=`rounded-md px-2 py-1 text-xs text-fg-muted hover:bg-surface-hover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`;function KE({conversationId:e,draftRefs:t=[],draftAttachments:n=[],draftPage:r,project:i,...a}){let[o,s]=(0,Z.useState)(!1),[l,d]=(0,Z.useState)(!1),[f,p]=(0,Z.useState)(!1),[m,g]=(0,Z.useState)(!1),_=UE(h(e=>e.language)),v=c(),y=`${v.pathname}${v.search}`,{data:b,error:x,isLoading:S,isValidating:C,mutate:w}=Hd(e,o),T=x?void 0:b,E=T?.work.project??(!e&&i?{id:i.id,title:i.name}:void 0),D=T?.work.task,O=T?.work.delegatedTasks??[],A=HE(T?.sources??[],t,n,r),j=T?.environment,M=!!(E||D||O.length),N=!!T?.unavailableSections.includes(`work`),P=!!T?.unavailableSections.includes(`sources`),F=!!T?.unavailableSections.includes(`environment`),I=[E?.title,D?.title,A.length?`${_.sources} ${A.length}${T?.sourcesHasMore?`+`:``}`:null,j?.kind===`managed_worktree`?`Worktree`:null].filter(Boolean).join(` · `)||_.title,L=()=>s(!1),R=A.some(e=>e.kind===`note`&&!e.unavailable&&e.origins.some(e=>e.kind===`session`)),z=()=>{j?.rootPath&&gi(j.rootPath).then(e=>{e&&(g(!0),window.setTimeout(()=>g(!1),1200))})},B=()=>(0,X.jsx)(`button`,{type:`button`,className:GE,"aria-label":_.refresh,disabled:C,onClick:()=>void w(),children:(0,X.jsx)(jt,{className:`size-3.5 ${C?`animate-spin motion-reduce:animate-none`:``}`,"aria-hidden":!0})});return(0,X.jsxs)(li,{open:o,onOpenChange:s,children:[(0,X.jsx)(di,{asChild:!0,children:(0,X.jsx)(`button`,{type:`button`,"aria-label":_.title,title:I,className:`group inline-flex size-8 shrink-0 items-center justify-center rounded-lg text-fg-muted transition-[background-color,color,transform] duration-150 hover:bg-surface-hover hover:text-fg active:scale-95 data-[state=open]:bg-surface-hover data-[state=open]:text-fg motion-reduce:transition-none motion-reduce:transform-none focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,children:(0,X.jsx)(Je,{className:`size-4 transition-transform duration-200 group-data-[state=open]:scale-110 motion-reduce:transform-none motion-reduce:transition-none`,strokeWidth:1.75,"aria-hidden":!0})})}),(0,X.jsx)(si,{children:(0,X.jsxs)(ci,{align:`end`,sideOffset:8,collisionPadding:12,"aria-label":_.title,onCloseAutoFocus:e=>{document.activeElement?.closest(`[data-primary-chat-composer]`)&&e.preventDefault()},className:`xopc-session-context-popover z-50 max-h-[min(30rem,var(--radix-popover-content-available-height))] w-[min(23rem,calc(100vw-1.5rem))] overflow-y-auto rounded-xl border border-edge bg-surface-overlay p-3 shadow-popover`,children:[(0,X.jsx)(`h2`,{className:`mb-2 px-2 text-sm font-medium text-fg`,children:_.title}),S?(0,X.jsx)(`div`,{className:`space-y-2 px-2`,"aria-busy":`true`,children:[0,1,2].map(e=>(0,X.jsx)(Jt,{className:`h-8 w-full`},e))}):x?(0,X.jsxs)(`div`,{className:`flex items-center justify-between px-2 py-2 text-sm text-fg-muted`,children:[(0,X.jsx)(`span`,{children:_.unavailable}),B()]}):(0,X.jsxs)(`div`,{className:`space-y-3`,children:[(0,X.jsxs)(`section`,{"aria-label":_.work,children:[E?(0,X.jsxs)(u,{className:WE,to:$e(y,`/projects/${encodeURIComponent(E.id)}`),onClick:L,children:[(0,X.jsx)(Ee,{className:`size-4 shrink-0`,"aria-hidden":!0}),(0,X.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,title:E.title,children:E.title})]}):null,D?(0,X.jsxs)(u,{className:WE,to:et(y,D.id),onClick:L,children:[(0,X.jsx)(os,{className:`size-4 shrink-0`,"aria-hidden":!0}),(0,X.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,title:D.title,children:D.title}),(0,X.jsx)(`span`,{className:`shrink-0 text-xs text-fg-muted`,children:D.phase})]}):null,O.length?(0,X.jsxs)(X.Fragment,{children:[O.length>2?(0,X.jsxs)(`button`,{type:`button`,className:`${WE} w-full text-left`,onClick:()=>d(!l),"aria-expanded":l,children:[(0,X.jsx)(os,{className:`size-4 shrink-0`,"aria-hidden":!0}),(0,X.jsxs)(`span`,{className:`flex-1`,children:[_.delegatedTasks,` · `,T?.work.delegatedTaskCount??O.length]}),(0,X.jsx)(`span`,{className:`text-xs text-fg-muted`,children:l?_.collapse:_.expand})]}):(0,X.jsxs)(`p`,{className:`px-2 pt-2 text-xs text-fg-subtle`,children:[_.delegatedTasks,` · `,T?.work.delegatedTaskCount??O.length]}),(l?O:O.slice(0,2)).map(e=>(0,X.jsxs)(u,{className:`${WE} pl-9`,to:et(y,e.id),onClick:L,children:[(0,X.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,title:e.title,children:e.title}),(0,X.jsx)(`span`,{className:`shrink-0 text-xs text-fg-muted`,children:e.runStatus??e.phase})]},e.id))]}):null,M?null:(0,X.jsx)(`p`,{className:`px-2 py-2 text-sm text-fg-muted`,children:N?_.unavailable:_.independent}),N?(0,X.jsxs)(`div`,{className:`flex items-center justify-between px-2 text-xs text-fg-muted`,children:[M?_.partialUnavailable:null,B()]}):null,E&&a.onLeaveProject?(0,X.jsx)(`button`,{type:`button`,className:GE,onClick:()=>{L(),a.onLeaveProject?.()},children:a.leaveProjectLabel}):null]}),A.length||P?(0,X.jsxs)(`section`,{className:`border-t border-edge-subtle pt-3`,children:[(0,X.jsxs)(`div`,{className:`mb-1 flex items-center justify-between px-2`,children:[(0,X.jsxs)(`h3`,{className:`text-sm text-fg-subtle`,children:[_.sources,` `,A.length?`${A.length}${T?.sourcesHasMore?`+`:``}`:``]}),P?B():null]}),(f?A:A.slice(0,3)).map(e=>{let t=e.origins.some(e=>e.kind===`session`)?_.session:e.origins.some(e=>e.kind===`task`)?_.task:e.origins.some(e=>e.kind===`recent`)?_.recent:_.draft,n=e.pending&&e.origins.length?`${t} · ${_.draft}`:e.pending?_.draft:t,r=e.kind===`file`&&e.fileKind===`directory`?Oe:e.kind===`file`?Te:e.kind===`session`?xt:e.kind===`browser_tab`||e.kind===`browser_page`||e.kind===`app_context`?k:e.kind===`mcp_resource`?ve:e.kind===`attachment`?Et:Te,i=e.unavailable?_.unavailable:e.title||(e.kind===`note`?_.untitled:_.untitledSource),a=(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(r,{className:`size-4 shrink-0`,"aria-hidden":!0}),(0,X.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,title:e.unavailable?void 0:e.title,children:i}),(0,X.jsx)(`span`,{className:`shrink-0 text-xs text-fg-muted`,children:n})]}),o=e.kind===`note`?nt(y,e.id):e.kind===`session`?`/chat/${encodeURIComponent(e.id)}`:null,s=`${e.kind}:${e.id}`;return!e.unavailable&&o?(0,X.jsx)(u,{className:WE,to:o,onClick:L,children:a},s):(0,X.jsx)(`div`,{className:`flex min-w-0 items-center gap-3 px-2 py-2 text-sm text-fg-muted`,children:a},s)}),A.length?null:(0,X.jsx)(`p`,{className:`px-2 py-2 text-xs text-fg-muted`,children:_.unavailable}),A.length>0&&P?(0,X.jsx)(`p`,{className:`px-2 py-1 text-xs text-fg-muted`,children:_.partialUnavailable}):null,A.length>3?(0,X.jsx)(`button`,{type:`button`,className:GE,onClick:()=>p(!f),"aria-expanded":f,children:f?_.collapse:_.expand}):null,T?.sourcesHasMore?(0,X.jsx)(`p`,{className:`px-2 py-1 text-xs text-fg-muted`,children:_.more}):null,R&&a.onDraftSourceNote?(0,X.jsx)(`button`,{type:`button`,className:GE,onClick:()=>{L(),a.onDraftSourceNote?.()},children:a.draftSourceNoteLabel}):null]}):null,e&&(j||F)||a.environmentAction?(0,X.jsxs)(`section`,{className:`border-t border-edge-subtle pt-3`,children:[(0,X.jsxs)(`div`,{className:`mb-1 flex items-center justify-between px-2`,children:[(0,X.jsx)(`h3`,{className:`text-sm text-fg-subtle`,children:_.environment}),F?B():null]}),j?null:a.environmentAction,j?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)(`div`,{className:`flex min-w-0 items-center gap-3 px-2 py-2 text-sm text-fg`,children:[(0,X.jsx)(Ct,{className:`size-4 shrink-0`,strokeWidth:1.75,"aria-hidden":!0}),(0,X.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:j.kind===`managed_worktree`?_.worktree:_.local}),j.branch||j.headSha?(0,X.jsxs)(`span`,{className:`inline-flex min-w-0 max-w-40 items-center gap-1 text-xs text-fg-muted`,children:[(0,X.jsx)(Ne,{className:`size-3.5 shrink-0`,"aria-hidden":!0}),(0,X.jsx)(`span`,{className:`truncate`,children:j.branch||(j.detached?`${_.detached} · ${j.headSha?.slice(0,8)}`:j.headSha?.slice(0,8))})]}):null]}),(0,X.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2 pl-9 pr-1`,children:[(0,X.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-xs text-fg-muted`,title:j.rootPath,children:j.rootPath}),(0,X.jsx)(`button`,{type:`button`,className:GE,"aria-label":m?_.copied:_.copyEnvironmentPath,title:m?_.copied:_.copyEnvironmentPath,onClick:z,children:m?(0,X.jsx)(H,{className:`size-3.5`,"aria-hidden":!0}):(0,X.jsx)(_e,{className:`size-3.5`,"aria-hidden":!0})})]}),a.environmentAction,j.available?null:(0,X.jsx)(`p`,{className:`px-2 py-1 text-xs text-fg-muted`,children:_.unavailableEnvironment}),E&&i?.workspaceRoot?(0,X.jsx)(ue,{className:GE,to:Hr(E.id),state:{forceNewChat:!0,agentId:a.agentId,temporary:a.temporary},onClick:L,children:_.newEnvironment}):null]}):(0,X.jsx)(`p`,{className:`px-2 py-2 text-xs text-fg-muted`,children:_.unavailable})]}):null]})]})})]})}function qE(e){let t=(0,Y.c)(23),{conversationId:n}=e,{data:r}=Fs(n),i=h(YE)===`zh`,a=Ws(JE),o,s;if(t[0]!==n||t[1]!==r||t[2]!==a){let e=r?Us(n,r.report):null;o=Boolean,s=e&&!a.includes(e),t[0]=n,t[1]=r,t[2]=a,t[3]=o,t[4]=s}else o=t[3],s=t[4];let c=o(s);if(!r||Os(r.report.status))return null;let l=c?i?`手机需要你操作`:`Your help is needed on the phone`:i?`查看手机`:`View phone`,u=c?i?`手机需要你操作`:`Your help is needed on the phone`:i?`查看手机`:`View phone`,d;t[5]!==n||t[6]!==r.report.deviceId||t[7]!==r.report.deviceName||t[8]!==r.report.sessionId?(d=()=>oi.getState().openPhone(r.report.deviceId??r.report.sessionId,r.report.deviceName,n,!0),t[5]=n,t[6]=r.report.deviceId,t[7]=r.report.deviceName,t[8]=r.report.sessionId,t[9]=d):d=t[9];let f;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,X.jsx)(Rt,{className:`size-4`,"aria-hidden":!0}),t[10]=f):f=t[10];let p;t[11]===c?p=t[12]:(p=c&&(0,X.jsx)(`span`,{"aria-hidden":!0,className:`absolute -right-1 -top-1 size-1.5 rounded-full bg-accent`}),t[11]=c,t[12]=p);let m;t[13]===p?m=t[14]:(m=(0,X.jsxs)(`span`,{className:`relative`,children:[f,p]}),t[13]=p,t[14]=m);let g=i?`手机`:`Phone`,_;t[15]===g?_=t[16]:(_=(0,X.jsx)(`span`,{className:`text-xs`,children:g}),t[15]=g,t[16]=_);let v;return t[17]!==_||t[18]!==l||t[19]!==u||t[20]!==d||t[21]!==m?(v=(0,X.jsxs)(ai,{variant:`ghost`,className:`min-h-10 gap-1.5 px-2`,title:l,"aria-label":u,onClick:d,children:[m,_]}),t[17]=_,t[18]=l,t[19]=u,t[20]=d,t[21]=m,t[22]=v):v=t[22],v}function JE(e){return e.seen}function YE(e){return e.language}function XE(e){let t=(0,Y.c)(57),{conversationId:n,directoryOnly:r,workspacePath:i,canChangeWorkspace:a,disabled:o,available:s,onWorkspaceChange:c}=e,l=r!==void 0&&r,u=s===void 0||s,d=h(eD),f;t[0]===d?f=t[1]:(f=y(d),t[0]=d,t[1]=f);let p=f,m=Of($E),g;t[2]===n?g=t[3]:(g=e=>e.panes[n??`new`]?.open===!0,t[2]=n,t[3]=g);let _=oi(g),[v,x]=(0,Z.useState)(null),C,O;t[4]!==p.chat.workingDirectory.notSet||t[5]!==i?(C=i?.trim()??``,O=C?Ca(C):p.chat.workingDirectory.notSet,t[4]=p.chat.workingDirectory.notSet,t[5]=i,t[6]=C,t[7]=O):(C=t[6],O=t[7]);let k=O,A;t[8]===c?A=t[9]:(A=async e=>{try{await c(e)}catch(e){let t=e;x(t instanceof Error?t.message:String(t))}},t[8]=c,t[9]=A);let j=A,M;t[10]!==j||t[11]!==C?(M={initialPath:C,onPicked:j},t[10]=j,t[11]=C,t[12]=M):M=t[12];let N=wa(M),P=o||!u||N.picking,F;t[13]!==n||t[14]!==m?(F=()=>{let e=oi.getState(),t=n??`new`;e.setScope(t);let r=e.panes[t]?.tabs.find(QE);r?e.activate(r.id,t):e.openTools(t),m(n??``)},t[13]=n,t[14]=m,t[15]=F):F=t[15];let I=F,L;t[16]!==l||t[17]!==d||t[18]!==I||t[19]!==_?(L=l?null:(0,X.jsx)(`button`,{type:`button`,className:J(`inline-flex size-8 shrink-0 items-center justify-center rounded-lg text-fg-muted transition-colors`,`hover:bg-surface-hover hover:text-fg focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,_&&`bg-surface-hover text-fg`),title:d===`zh`?`打开工具`:`Open workspace tools`,"aria-label":d===`zh`?`打开工具`:`Open workspace tools`,"aria-pressed":_,"aria-controls":`app-workspace-panel`,"data-workspace-trigger":!0,onClick:I,children:(0,X.jsx)(as,{className:`size-4 shrink-0`,strokeWidth:1.75,"aria-hidden":!0})}),t[16]=l,t[17]=d,t[18]=I,t[19]=_,t[20]=L):L=t[20];let R;t[21]!==a||t[22]!==l||t[23]!==N||t[24]!==p.chat.workingDirectory.chooseFolder||t[25]!==C||t[26]!==P||t[27]!==k?(R=l&&a?(0,X.jsxs)(`button`,{type:`button`,disabled:P,className:J(`inline-flex h-8 max-w-full shrink-0 px-2 items-center justify-center rounded-lg text-fg-muted transition-colors`,`hover:bg-surface-hover hover:text-fg focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,P&&`cursor-not-allowed opacity-50`),title:`${p.chat.workingDirectory.chooseFolder}: ${C||k}`,"aria-label":p.chat.workingDirectory.chooseFolder,onClick:N.pick,children:[(0,X.jsx)(ne,{className:`mr-2 size-4`,strokeWidth:1.75,"aria-hidden":!0}),(0,X.jsx)(`span`,{className:`truncate text-xs`,children:p.chat.workingDirectory.chooseFolder})]}):null,t[21]=a,t[22]=l,t[23]=N,t[24]=p.chat.workingDirectory.chooseFolder,t[25]=C,t[26]=P,t[27]=k,t[28]=R):R=t[28];let z;t[29]!==R||t[30]!==L?(z=(0,X.jsxs)(`div`,{className:`flex min-w-0 items-center gap-0.5`,children:[L,R]}),t[29]=R,t[30]=L,t[31]=z):z=t[31];let B;t[32]!==l||t[33]!==N||t[34]!==p.chat.workingDirectory||t[35]!==C?(B=l&&!N.hasNativePicker?(0,X.jsx)(re,{open:N.modalOpen,onOpenChange:N.setModalOpen,initialAbsolutePath:C||void 0,onConfirm:N.confirmPick,wd:p.chat.workingDirectory}):null,t[32]=l,t[33]=N,t[34]=p.chat.workingDirectory,t[35]=C,t[36]=B):B=t[36];let ee=v!==null,V;t[37]===Symbol.for(`react.memo_cache_sentinel`)?(V=e=>{e||x(null)},t[37]=V):V=t[37];let H;t[38]===Symbol.for(`react.memo_cache_sentinel`)?(H=(0,X.jsx)(b,{className:`xopc-dialog-overlay fixed inset-0 z-[80] bg-scrim backdrop-blur-[2px]`}),t[38]=H):H=t[38];let te;t[39]===p.chat.workingDirectory.applyErrorTitle?te=t[40]:(te=(0,X.jsx)(E,{className:`text-base font-semibold text-fg`,children:p.chat.workingDirectory.applyErrorTitle}),t[39]=p.chat.workingDirectory.applyErrorTitle,t[40]=te);let U;t[41]===v?U=t[42]:(U=v?(0,X.jsx)(S,{className:`mt-2 whitespace-pre-wrap text-sm leading-relaxed text-fg-muted`,children:v}):null,t[41]=v,t[42]=U);let W;t[43]===Symbol.for(`react.memo_cache_sentinel`)?(W=()=>x(null),t[43]=W):W=t[43];let ie;t[44]===p.chat.workingDirectory.applyErrorClose?ie=t[45]:(ie=(0,X.jsx)(`div`,{className:`mt-4 flex justify-end border-t border-edge-subtle pt-3`,children:(0,X.jsx)(ai,{type:`button`,onClick:W,children:p.chat.workingDirectory.applyErrorClose})}),t[44]=p.chat.workingDirectory.applyErrorClose,t[45]=ie);let ae;t[46]!==te||t[47]!==U||t[48]!==ie?(ae=(0,X.jsxs)(w,{children:[H,(0,X.jsxs)(T,{className:`xopc-dialog-content fixed left-1/2 top-1/2 z-[81] w-[min(100%-2rem,26rem)] -translate-x-1/2 -translate-y-1/2 rounded-xl border border-edge bg-surface-overlay p-4 shadow-popover`,onOpenAutoFocus:ZE,children:[te,U,ie]})]}),t[46]=te,t[47]=U,t[48]=ie,t[49]=ae):ae=t[49];let oe;t[50]!==ee||t[51]!==ae?(oe=(0,X.jsx)(D,{open:ee,onOpenChange:V,children:ae}),t[50]=ee,t[51]=ae,t[52]=oe):oe=t[52];let se;return t[53]!==z||t[54]!==B||t[55]!==oe?(se=(0,X.jsxs)(X.Fragment,{children:[z,B,oe]}),t[53]=z,t[54]=B,t[55]=oe,t[56]=se):se=t[56],se}function ZE(e){return e.preventDefault()}function QE(e){return e.kind===`home`}function $E(e){return e.openForSession}function eD(e){return e.language}function tD(e,t){return e.repeat||e.altKey||e.shiftKey||e.key.toLowerCase()!==`j`?!1:t===`darwin`?e.metaKey&&!e.ctrlKey:e.ctrlKey&&!e.metaKey}function nD({conversationId:e,dialogOpen:t,onDialogOpenChange:n,hideTrigger:r=!1}){let i=h(e=>e.language),a=i===`zh`?iD:aD,[o,s]=(0,Z.useState)(!1),c=t??o,l=e=>{s(e),n?.(e)},[u,d]=(0,Z.useState)(null),[f,p]=(0,Z.useState)(null),[m,g]=(0,Z.useState)(!1),[_,v]=(0,Z.useState)(null),[y,O]=(0,Z.useState)(864e5),[k,A]=(0,Z.useState)(null),[j,M]=(0,Z.useState)(``),[N,P]=(0,Z.useState)(!1),[F,I]=(0,Z.useState)([]),[L,R]=(0,Z.useState)(`hosted`),[z,B]=(0,Z.useState)(!1),[ee,V]=(0,Z.useState)(!1);(0,Z.useEffect)(()=>{if(!c||u||f)return;let t=!1;return g(!0),v(null),Promise.all([Ba(e),Wa(e),za()]).then(async([n,r,i])=>{if(t)return;d(n),B(i);let a=i?await Ga().catch(()=>null):null;if(t)return;V(a?.publishing.allowed===!0);let o=i?await Ka(e).catch(()=>[]):[];if(t)return;let s=[...o,...r].find(e=>!e.revoked&&!e.expired);s&&p(s)}).catch(e=>{t||v(e instanceof Error?e.message:String(e))}).finally(()=>{t||g(!1)}),()=>{t=!0}},[c,u,f,e]);let H=()=>{d(null),p(null),v(null),g(!1),M(``),P(!1),I([]),V(!1)},te=async()=>{if(!(!u||m)){g(!0),v(null);try{p(await(L===`hosted`?Ua:Ha)(e,{expectedTranscriptId:u.transcriptId,expectedCutoffSeq:u.cutoffSeq,expectedMetadataUpdatedAt:u.metadataUpdatedAt,ttlMs:y,maxViews:k,description:j.trim()||void 0,includeToolActivities:N,attachmentIds:F}))}catch(e){v(e instanceof Error?e.message:String(e))}finally{g(!1)}}},U=async()=>{if(!(!f||m)){g(!0),v(null);try{let t=await Ba(e);d(t);let n=f.delivery===`hosted`?Va:La;p(await n(e,f.id,{expectedTranscriptId:t.transcriptId,expectedCutoffSeq:t.cutoffSeq,expectedMetadataUpdatedAt:t.metadataUpdatedAt}))}catch(e){v(e instanceof Error?e.message:String(e))}finally{g(!1)}}},W=async()=>{if(!(!f||m)){g(!0),v(null);try{f.delivery===`hosted`?await qa(e,f.id):await Ra(f.id),l(!1),H()}catch(e){v(e instanceof Error?e.message:String(e)),g(!1)}}};return(0,X.jsxs)(D,{open:c,onOpenChange:e=>{l(e),e||H()},children:[r?null:(0,X.jsx)(x,{asChild:!0,children:(0,X.jsx)(`button`,{type:`button`,className:`rounded-md p-2 text-fg-muted transition-colors hover:bg-surface-hover hover:text-fg`,title:a.share,"aria-label":a.share,children:(0,X.jsx)(ts,{className:`size-4`})})}),(0,X.jsxs)(w,{children:[(0,X.jsx)(b,{className:`xopc-dialog-overlay fixed inset-0 z-[70] bg-scrim backdrop-blur-[2px]`}),(0,X.jsxs)(T,{onCloseAutoFocus:e=>{r&&(e.preventDefault(),document.querySelector(`[data-chat-menu-trigger]`)?.focus())},className:J(`xopc-dialog-content fixed left-1/2 top-1/2 z-[71] flex h-[min(35rem,calc(100dvh-2rem))] w-[min(34rem,calc(100vw-2rem))] -translate-x-1/2 -translate-y-1/2 flex-col`,`overflow-hidden rounded-xl border border-edge bg-surface-overlay outline-none`),children:[(0,X.jsxs)(`div`,{className:`flex shrink-0 items-start justify-between gap-3 border-b border-edge px-4 py-3`,children:[(0,X.jsxs)(`div`,{children:[(0,X.jsx)(E,{className:`text-base font-semibold text-fg`,children:f?a.created:a.title}),(0,X.jsx)(S,{className:`mt-0.5 text-xs text-fg-muted`,children:f?a.createdHint:a.hint})]}),(0,X.jsx)(C,{asChild:!0,children:(0,X.jsx)(`button`,{type:`button`,className:`touch-target flex size-10 items-center justify-center rounded-lg text-fg-muted hover:bg-surface-hover hover:text-fg`,"aria-label":a.close,children:(0,X.jsx)(Kt,{className:`size-4`})})})]}),(0,X.jsxs)(`div`,{className:`min-h-0 flex-1 overflow-y-auto p-4`,children:[m&&!u&&!f?(0,X.jsxs)(`div`,{className:`flex items-center gap-2 text-sm text-fg-muted`,children:[(0,X.jsx)(Ye,{className:`size-4 animate-spin`}),a.loading]}):f?(0,X.jsxs)(`div`,{className:`space-y-4`,children:[(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`p`,{className:`text-sm font-medium text-fg`,children:f.fileName}),(0,X.jsx)(`p`,{className:`mt-1 text-xs text-fg-muted`,children:a.snapshotMessages.replace(`{{count}}`,String(f.messageCount))}),(0,X.jsxs)(`p`,{className:`mt-1 text-xs text-fg-subtle`,children:[f.delivery===`hosted`?a.hosted:a.local,` · `,a.revision.replace(`{{revision}}`,String(f.snapshotRevision)),` · `,a.sharedAttachments.replace(`{{count}}`,String(f.attachmentCount))]})]}),(0,X.jsx)(Ut,{shareUrl:f.shareUrl,lanUrl:f.lanUrl,reachability:f.reachability}),(0,X.jsx)(Wt,{reachability:f.reachability,reachabilityHint:f.reachabilityHint}),(0,X.jsxs)(`a`,{href:f.shareUrl,target:`_blank`,rel:`noreferrer`,className:`inline-flex items-center gap-1 text-sm font-medium text-accent hover:underline`,children:[a.open,(0,X.jsx)(xe,{className:`size-3.5`})]})]}):u?(0,X.jsxs)(`div`,{className:`space-y-4`,children:[(0,X.jsxs)(`div`,{className:`rounded-lg border border-edge bg-surface-inset p-3`,children:[(0,X.jsx)(`p`,{className:`truncate text-sm font-medium text-fg`,children:u.title}),(0,X.jsx)(`p`,{className:`mt-1 text-xs text-fg-muted`,children:a.snapshotMessages.replace(`{{count}}`,String(u.messageCount))}),(0,X.jsx)(`p`,{className:`mt-1 text-xs text-fg-subtle`,children:new Date(u.snapshotAt).toLocaleString(i===`zh`?`zh-CN`:`en-US`)})]}),(0,X.jsxs)(`details`,{className:`rounded-lg border border-edge`,children:[(0,X.jsx)(`summary`,{className:`touch-target cursor-pointer px-3 py-2.5 text-xs font-medium text-fg transition-colors hover:bg-surface-hover`,children:a.reviewContent}),(0,X.jsx)(`div`,{className:`max-h-64 space-y-3 overflow-y-auto border-t border-edge p-3`,children:u.messages.map(e=>(0,X.jsxs)(`div`,{className:`rounded-lg bg-surface-inset px-3 py-2`,children:[(0,X.jsx)(`p`,{className:`mb-1 text-[11px] font-semibold uppercase tracking-wide text-fg-subtle`,children:e.role===`user`?a.you:a.assistant}),(0,X.jsx)(`p`,{className:`whitespace-pre-wrap break-words text-sm leading-6 text-fg`,children:e.markdown})]},e.id))})]}),(0,X.jsxs)(`div`,{className:`flex gap-2 rounded-lg border border-accent/20 bg-accent-soft px-3 py-2.5 text-xs leading-5 text-fg-muted`,children:[(0,X.jsx)(Lt,{className:`mt-0.5 size-4 shrink-0 text-accent-fg`,"aria-hidden":`true`}),(0,X.jsx)(`span`,{children:a.scope})]}),(0,X.jsxs)(`label`,{className:`block space-y-1.5 text-xs font-medium text-fg`,children:[(0,X.jsx)(`span`,{children:a.delivery}),(0,X.jsxs)(oe,{value:L,disabled:m,onChange:e=>R(e.target.value),children:[(0,X.jsx)(G,{value:`hosted`,children:a.hosted}),(0,X.jsx)(G,{value:`local`,children:a.local})]})]}),L===`hosted`&&!z?(0,X.jsx)(Mo,{providerId:`xopc-share`,displayName:a.hosted,connected:!1,onConnected:()=>{B(!0),Ga().then(e=>V(e.publishing.allowed)).catch(()=>V(!1))}}):null,L===`hosted`&&z&&!ee?(0,X.jsx)(`p`,{className:`rounded-lg border border-warning/30 bg-warning-soft px-3 py-2 text-xs text-warning`,children:a.hostedDisabled}):null,u.toolActivities.length?(0,X.jsxs)(`label`,{className:`flex items-start gap-2 rounded-lg border border-edge bg-surface-inset px-3 py-2.5 text-sm text-fg`,children:[(0,X.jsx)(`input`,{type:`checkbox`,checked:N,disabled:m,onChange:e=>P(e.target.checked),className:`mt-0.5 size-4 rounded border-edge`}),(0,X.jsxs)(`span`,{children:[(0,X.jsx)(`span`,{className:`block font-medium`,children:a.includeTools.replace(`{{count}}`,String(u.toolActivities.length))}),(0,X.jsx)(`span`,{className:`mt-0.5 block text-xs text-fg-muted`,children:a.toolDisclosure})]})]}):null,u.attachmentCandidates.length?(0,X.jsxs)(`fieldset`,{className:`rounded-lg border border-edge bg-surface-inset px-3 py-2.5`,children:[(0,X.jsx)(`legend`,{className:`px-1 text-xs font-medium text-fg`,children:a.attachments}),(0,X.jsx)(`p`,{className:`mb-2 text-xs text-fg-muted`,children:a.attachmentDisclosure}),(0,X.jsx)(`div`,{className:`space-y-2`,children:u.attachmentCandidates.map(e=>(0,X.jsxs)(`label`,{className:`flex items-center gap-2 text-sm text-fg`,children:[(0,X.jsx)(`input`,{type:`checkbox`,checked:F.includes(e.id),disabled:m,onChange:t=>I(n=>t.target.checked?[...n,e.id]:n.filter(t=>t!==e.id)),className:`size-4 rounded border-edge`}),(0,X.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:e.fileName}),(0,X.jsx)(`span`,{className:`shrink-0 text-xs text-fg-subtle`,children:rD(e.size)})]},e.id))})]}):null,(0,X.jsxs)(`div`,{className:`grid gap-3 sm:grid-cols-2`,children:[(0,X.jsxs)(`label`,{className:`space-y-1.5 text-xs font-medium text-fg`,children:[(0,X.jsx)(`span`,{children:a.ttl}),(0,X.jsxs)(oe,{value:y,disabled:m,onChange:e=>O(Number(e.target.value)),children:[(0,X.jsx)(G,{value:36e5,children:a.oneHour}),(0,X.jsx)(G,{value:864e5,children:a.oneDay}),(0,X.jsx)(G,{value:6048e5,children:a.sevenDays}),(0,X.jsx)(G,{value:2592e6,children:a.thirtyDays})]})]}),(0,X.jsxs)(`label`,{className:`space-y-1.5 text-xs font-medium text-fg`,children:[(0,X.jsx)(`span`,{children:a.maxViews}),(0,X.jsxs)(oe,{value:k??`unlimited`,disabled:m,onChange:e=>A(e.target.value===`unlimited`?null:Number(e.target.value)),children:[(0,X.jsx)(G,{value:`unlimited`,children:a.unlimited}),(0,X.jsx)(G,{value:1,children:`1`}),(0,X.jsx)(G,{value:10,children:`10`}),(0,X.jsx)(G,{value:50,children:`50`})]})]})]}),(0,X.jsxs)(`label`,{className:`block space-y-1.5 text-xs font-medium text-fg`,children:[(0,X.jsx)(`span`,{children:a.description}),(0,X.jsx)(`input`,{value:j,disabled:m,onChange:e=>M(e.target.value),className:`h-10 w-full rounded-lg border border-edge bg-surface-inset px-3 text-sm font-normal text-fg outline-none focus-visible:border-accent/50 focus-visible:ring-2 focus-visible:ring-accent/20`})]}),(0,X.jsx)(`p`,{className:`text-xs text-amber-700 dark:text-amber-300`,children:a.publicWarning})]}):null,_?(0,X.jsx)(`p`,{className:`mt-3 text-sm text-red-600 dark:text-red-400`,children:_}):null]}),(0,X.jsx)(`div`,{className:`flex shrink-0 items-center justify-end gap-2 border-t border-edge bg-surface-overlay px-4 py-3`,children:f?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(ai,{type:`button`,variant:`ghost`,disabled:m,onClick:()=>p(null),children:a.newShare}),(0,X.jsxs)(ai,{type:`button`,variant:`ghost`,disabled:m,onClick:()=>void W(),children:[(0,X.jsx)(Vt,{className:`size-4`}),a.revoke]}),(0,X.jsxs)(ai,{type:`button`,disabled:m||f.delivery===`hosted`&&!ee,onClick:()=>void U(),children:[m?(0,X.jsx)(Ye,{className:`size-4 animate-spin`}):(0,X.jsx)(jt,{className:`size-4`}),a.refresh]})]}):(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(C,{asChild:!0,children:(0,X.jsx)(ai,{type:`button`,variant:`ghost`,children:a.cancel})}),(0,X.jsxs)(ai,{type:`button`,disabled:!u||m||u.messageCount===0||L===`hosted`&&(!z||!ee),onClick:()=>void te(),children:[m?(0,X.jsx)(Ye,{className:`size-4 animate-spin`}):null,a.create]})]})})]})]})]})}function rD(e){return e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:`${(e/(1024*1024)).toFixed(1)} MB`}var iD={share:`分享会话`,title:`分享会话`,hint:`创建当前会话的只读快照`,created:`分享已创建`,createdHint:`复制链接后即可发送给其他人`,close:`关闭`,loading:`正在准备预览…`,snapshotMessages:`当前快照包含 {{count}} 条公开消息`,scope:`默认仅包含用户与助手的可见文本;系统提示、推理、工具参数、命令文本、输出和路径始终不会公开。`,ttl:`有效期`,maxViews:`最大访问次数`,includeTools:`包含 {{count}} 条工具活动`,toolDisclosure:`只公开工具名称和成功/失败状态,不公开参数与结果。`,attachments:`附件`,attachmentDisclosure:`附件默认不公开,请逐个选择。`,oneHour:`1 小时`,oneDay:`24 小时`,sevenDays:`7 天`,thirtyDays:`30 天`,unlimited:`不限`,description:`说明(可选)`,publicWarning:`任何获得链接的人都可以查看这份快照。后续会话消息不会自动加入。`,cancel:`取消`,create:`创建分享`,revoke:`撤销分享`,refresh:`更新到当前会话`,open:`打开分享页面`,revision:`快照版本 {{revision}}`,sharedAttachments:`{{count}} 个附件`,newShare:`新建分享`,delivery:`分享方式`,hosted:`XOPC 托管分享`,local:`本机 Gateway 分享`,hostedDisabled:`管理员已暂停你的公网分享能力。已有托管链接当前不可访问,但仍可撤销。`,reviewContent:`检查将要公开的内容`,you:`你`,assistant:`助手`},aD={share:`Share conversation`,title:`Share conversation`,hint:`Create a read-only snapshot of this conversation`,created:`Share created`,createdHint:`Copy the link and send it to anyone`,close:`Close`,loading:`Preparing preview…`,snapshotMessages:`This snapshot contains {{count}} public messages`,scope:`Only visible user and assistant text is included by default. System prompts, reasoning, tool arguments, command text, output, and paths always stay private.`,ttl:`Expires after`,maxViews:`Maximum views`,includeTools:`Include {{count}} tool activities`,toolDisclosure:`Only tool names and success/failure states are shared; arguments and results stay private.`,attachments:`Attachments`,attachmentDisclosure:`Attachments stay private unless selected individually.`,oneHour:`1 hour`,oneDay:`24 hours`,sevenDays:`7 days`,thirtyDays:`30 days`,unlimited:`Unlimited`,description:`Description (optional)`,publicWarning:`Anyone with the link can view this snapshot. Later conversation messages are not added automatically.`,cancel:`Cancel`,create:`Create share`,revoke:`Revoke share`,refresh:`Update to current conversation`,open:`Open shared page`,revision:`Snapshot revision {{revision}}`,sharedAttachments:`{{count}} attachments`,newShare:`New share`,delivery:`Delivery`,hosted:`XOPC Hosted Share`,local:`Local Gateway Share`,hostedDisabled:`An administrator has paused public sharing for your account. Existing hosted links are unavailable, but can still be revoked.`,reviewContent:`Review the content to publish`,you:`You`,assistant:`Assistant`},oD=`(max-width: 767px)`,sD=(0,Z.memo)(function(e){let t=(0,Y.c)(137),{inline:n,chatHeadline:r,chatAgents:i,showChatAgentSelector:a,chatAgentId:o,onChatAgentChange:c,chatAgentDisabled:l,conversationId:u,hasMessages:d,workspacePath:f,userContextMode:p,canChangeWorkspace:m,workspaceDisabled:g,onWorkspaceChange:_,prepareTerminalSession:v,terminalDisabled:b,showContextControls:x,onFindOpen:S,projectId:C,context:w}=e,T=n!==void 0&&n,E=d!==void 0&&d,D=p===void 0?`enabled`:p,O=m!==void 0&&m,k=g!==void 0&&g,A=b!==void 0&&b,j=x===void 0||x,M=h(cD),{conversationId:N}=s(),P=N&&N!==`new`?decodeURIComponent(N):null,I;t[0]!==u||t[1]!==P?(I=u?.trim()||P,t[0]=u,t[1]=P,t[2]=I):I=t[2];let L=I,{data:R,error:z,mutate:B}=Hd(L??null,!1),ee=!z&&(!R||!!R.environment?.available),V;t[3]===L?V=t[4]:(V=e=>e.panes[L??`new`]?.open===!0,t[3]=L,t[4]=V);let H=oi(V),te;t[5]===M?te=t[6]:(te=y(M),t[5]=M,t[6]=te);let U=te,W=ef(lD),ne=XC(uD),re=Oo(dD),ie=Oo(fD),[ae,oe]=(0,Z.useState)(!1),se=(0,Z.useRef)(!1),[G,K]=(0,Z.useState)(!1),ce=tf(pD),le=ma(mD),q=ma(hD),de=window.electronAPI?.platform,fe=!!(j&&window.electronAPI?.terminal&&(L||v)),pe;t[7]!==L||t[8]!==ie||t[9]!==v||t[10]!==fe||t[11]!==A||t[12]!==G||t[13]!==re?(pe=()=>{if(!(!fe||A||G)){if(L){re(L);return}v&&(K(!0),v().then(e=>{e&&ie(e)}).finally(()=>K(!1)))}},t[7]=L,t[8]=ie,t[9]=v,t[10]=fe,t[11]=A,t[12]=G,t[13]=re,t[14]=pe):pe=t[14];let me=pe,he;t[15]!==L||t[16]!==E||t[17]!==ne?(he=()=>{if(!L||!E)return;let e=oi.getState().panes[L],t=XC.getState().pendingCreate?.parentConversationId===L||!!XC.getState().creatingRequests[L],n=e?.open===!0&&(e.activeId?.startsWith(`side:`)===!0||t);ne(L,!n)},t[15]=L,t[16]=E,t[17]=ne,t[18]=he):he=t[18];let ge=he,_e=No(oD),ve;t[19]!==ce||t[20]!==W?(ve=Kd({runtime:Gd(),sidebarCollapsed:W,mobileNavOpen:ce}),t[19]=ce,t[20]=W,t[21]=ve):ve=t[21];let ye=_e?!ce:ve.collapsedNewChatVisible,xe,Se;t[22]!==q||t[23]!==T?(xe=()=>{if(!T)return()=>q()},Se=[q,T],t[22]=q,t[23]=T,t[24]=xe,t[25]=Se):(xe=t[24],Se=t[25]),(0,Z.useLayoutEffect)(xe,Se);let Ce,we;t[26]!==me||t[27]!==fe?(Ce=()=>{if(!fe)return;let e=e=>{tD(e,de)&&(e.preventDefault(),me())};return window.addEventListener(`keydown`,e),window.addEventListener(`workspace-open-terminal`,me),()=>{window.removeEventListener(`keydown`,e),window.removeEventListener(`workspace-open-terminal`,me)}},we=[me,fe,de],t[26]=me,t[27]=fe,t[28]=Ce,t[29]=we):(Ce=t[28],we=t[29]),(0,Z.useEffect)(Ce,we);let Te,Ee;t[30]!==L||t[31]!==ge||t[32]!==E?(Te=()=>{if(!L||!E)return;let e=e=>{zo(e,de)&&(e.preventDefault(),ge())};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},Ee=[L,ge,E,de],t[30]=L,t[31]=ge,t[32]=E,t[33]=Te,t[34]=Ee):(Te=t[33],Ee=t[34]),(0,Z.useEffect)(Te,Ee);let De;t[35]!==o||t[36]!==U.sidebar.newTask||t[37]!==C||t[38]!==ye||t[39]!==D?(De=ye?(0,X.jsx)(ue,{to:Hr(C),state:{forceNewChat:!0,agentId:o,temporary:D===`temporary`},className:J(`inline-flex size-8 shrink-0 items-center justify-center rounded-lg bg-surface-panel text-sm font-medium leading-none text-fg transition-colors hover:bg-surface-hover`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent focus-visible:ring-offset-2 focus-visible:ring-offset-surface-panel`,la),title:U.sidebar.newTask,children:(0,X.jsx)(At,{className:`size-4 shrink-0 text-accent-fg`,strokeWidth:2,"aria-hidden":!0})}):null,t[35]=o,t[36]=U.sidebar.newTask,t[37]=C,t[38]=ye,t[39]=D,t[40]=De):De=t[40];let Oe=ye?`text-left md:text-center`:`text-left`,ke;t[41]===Oe?ke=t[42]:(ke=J(`min-w-0 flex-1 truncate text-[0.9375rem] font-semibold leading-5 tracking-tight text-fg`,Oe),t[41]=Oe,t[42]=ke);let Ae;t[43]!==r||t[44]!==ke?(Ae=(0,X.jsx)(`div`,{className:`flex w-full min-w-0 max-w-(--max-width-chat-frame) items-center gap-3 px-3 sm:px-5 xl:px-6`,children:(0,X.jsx)(`h1`,{className:ke,title:r,children:r})}),t[43]=r,t[44]=ke,t[45]=Ae):Ae=t[45];let je;t[46]===Symbol.for(`react.memo_cache_sentinel`)?(je=J(`flex min-w-0 max-w-[min(32rem,calc(100vw-8rem))] shrink-0 items-center justify-end gap-2`,la),t[46]=je):je=t[46];let Me;t[47]!==l||t[48]!==o||t[49]!==i||t[50]!==U.chat.agentNoMatches||t[51]!==U.chat.agentPlaceholder||t[52]!==U.chat.agentSearchPlaceholder||t[53]!==c||t[54]!==a?(Me=a?(0,X.jsx)(zE,{items:i,value:o,disabled:l,placeholder:U.chat.agentPlaceholder,searchPlaceholder:U.chat.agentSearchPlaceholder,noMatches:U.chat.agentNoMatches,compact:!0,contentSide:`bottom`,contentAlign:`end`,onChange:c}):null,t[47]=l,t[48]=o,t[49]=i,t[50]=U.chat.agentNoMatches,t[51]=U.chat.agentPlaceholder,t[52]=U.chat.agentSearchPlaceholder,t[53]=c,t[54]=a,t[55]=Me):Me=t[55];let Ne=M===`zh`?`聊天菜单`:`Chat menu`,Pe=M===`zh`?`聊天菜单`:`Chat menu`,Fe;t[56]===Symbol.for(`react.memo_cache_sentinel`)?(Fe=(0,X.jsx)(be,{className:`size-4`,"aria-hidden":!0}),t[56]=Fe):Fe=t[56];let Ie;t[57]!==Ne||t[58]!==Pe?(Ie=(0,X.jsx)(Xa,{asChild:!0,children:(0,X.jsx)(`button`,{type:`button`,"data-chat-menu-trigger":!0,"aria-label":Ne,title:Pe,className:`inline-flex size-8 shrink-0 items-center justify-center rounded-lg text-fg-muted transition-colors hover:bg-surface-hover data-[state=open]:bg-surface-hover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,children:Fe})}),t[57]=Ne,t[58]=Pe,t[59]=Ie):Ie=t[59];let Le;t[60]===S?Le=t[61]:(Le=e=>{se.current&&(e.preventDefault(),se.current=!1,document.querySelector(`[data-chat-menu-trigger]`)?.focus(),S?.())},t[60]=S,t[61]=Le);let Re=!E||!S,ze;t[62]===Symbol.for(`react.memo_cache_sentinel`)?(ze=()=>{se.current=!0},t[62]=ze):ze=t[62];let Be;t[63]===Symbol.for(`react.memo_cache_sentinel`)?(Be=(0,X.jsx)(Pt,{className:`size-4 text-fg-muted`,"aria-hidden":!0}),t[63]=Be):Be=t[63];let Ve;t[64]===U.chat.find.input?Ve=t[65]:(Ve=(0,X.jsx)(`span`,{className:`flex-1`,children:U.chat.find.input}),t[64]=U.chat.find.input,t[65]=Ve);let He;t[66]===Symbol.for(`react.memo_cache_sentinel`)?(He=(0,X.jsx)(`span`,{className:`text-xs text-fg-muted`,children:de===`darwin`?`⌘F`:`Ctrl+F`}),t[66]=He):He=t[66];let Ue;t[67]!==Re||t[68]!==Ve?(Ue=(0,X.jsxs)(Qa,{disabled:Re,onSelect:ze,className:`flex cursor-default items-center gap-3 rounded-lg px-3 py-2 text-fg outline-none data-[highlighted]:bg-surface-hover data-[disabled]:opacity-40`,children:[Be,Ve,He]}),t[67]=Re,t[68]=Ve,t[69]=Ue):Ue=t[69];let We=!L||!E,Ge;t[70]===Symbol.for(`react.memo_cache_sentinel`)?(Ge=()=>oe(!0),t[70]=Ge):Ge=t[70];let Ke;t[71]===Symbol.for(`react.memo_cache_sentinel`)?(Ke=(0,X.jsx)(F,{className:`size-4 text-fg-muted`,"aria-hidden":!0}),t[71]=Ke):Ke=t[71];let qe=M===`zh`?`分享对话`:`Share conversation`,Je;t[72]===qe?Je=t[73]:(Je=(0,X.jsx)(`span`,{children:qe}),t[72]=qe,t[73]=Je);let Ye;t[74]!==We||t[75]!==Je?(Ye=(0,X.jsxs)(Qa,{disabled:We,onSelect:Ge,className:`flex cursor-default items-center gap-3 rounded-lg px-3 py-2 text-fg outline-none data-[highlighted]:bg-surface-hover data-[disabled]:opacity-40`,children:[Ke,Je]}),t[74]=We,t[75]=Je,t[76]=Ye):Ye=t[76];let Xe;t[77]!==Le||t[78]!==Ue||t[79]!==Ye?(Xe=(0,X.jsx)(Za,{children:(0,X.jsxs)($a,{onCloseAutoFocus:Le,align:`end`,sideOffset:8,className:`workspace-menu z-[125] min-w-60 rounded-xl border border-edge bg-surface-overlay p-1.5 text-sm shadow-popover outline-none`,children:[Ue,Ye]})}),t[77]=Le,t[78]=Ue,t[79]=Ye,t[80]=Xe):Xe=t[80];let Ze;t[81]!==Ie||t[82]!==Xe?(Ze=(0,X.jsxs)(Ya,{modal:!1,children:[Ie,Xe]}),t[81]=Ie,t[82]=Xe,t[83]=Ze):Ze=t[83];let Qe;t[84]!==L||t[85]!==E||t[86]!==ae?(Qe=L&&E?(0,X.jsx)(nD,{conversationId:L,hideTrigger:!0,dialogOpen:ae,onDialogOpenChange:oe},`share:${L}`):null,t[84]=L,t[85]=E,t[86]=ae,t[87]=Qe):Qe=t[87];let $e;t[88]!==L||t[89]!==O||t[90]!==o||t[91]!==w||t[92]!==_||t[93]!==B||t[94]!==j||t[95]!==D||t[96]!==ee||t[97]!==k||t[98]!==f?($e=j?(0,X.jsx)(KE,{...w,agentId:o,environmentAction:O&&_?(0,X.jsx)(XE,{directoryOnly:!0,conversationId:L,workspacePath:L?f:w?.project?.workspaceRoot,available:ee,canChangeWorkspace:!0,disabled:k,onWorkspaceChange:async e=>{await _(e),await B()}}):null,temporary:D===`temporary`,conversationId:L??null},`context:${L??w?.project?.id??`new`}`):null,t[88]=L,t[89]=O,t[90]=o,t[91]=w,t[92]=_,t[93]=B,t[94]=j,t[95]=D,t[96]=ee,t[97]=k,t[98]=f,t[99]=$e):$e=t[99];let et;t[100]!==j||t[101]!==H?(et=j&&!H?(0,X.jsx)(`span`,{"aria-hidden":!0,className:`mx-0.5 h-6 w-px shrink-0 bg-edge-subtle`}):null,t[100]=j,t[101]=H,t[102]=et):et=t[102];let tt;t[103]===L?tt=t[104]:(tt=L?(0,X.jsx)(qE,{conversationId:L}):null,t[103]=L,t[104]=tt);let nt;t[105]!==L||t[106]!==w?.project?.workspaceRoot||t[107]!==_||t[108]!==C||t[109]!==B||t[110]!==j||t[111]!==ee||t[112]!==k||t[113]!==H||t[114]!==f?(nt=j&&!H?(0,X.jsx)(XE,{conversationId:L,workspacePath:L?f:w?.project?.workspaceRoot,available:ee,canChangeWorkspace:!1,disabled:k,onWorkspaceChange:async e=>{await _?.(e),await B()}},`workspace:${L??C}`):null,t[105]=L,t[106]=w?.project?.workspaceRoot,t[107]=_,t[108]=C,t[109]=B,t[110]=j,t[111]=ee,t[112]=k,t[113]=H,t[114]=f,t[115]=nt):nt=t[115];let rt;t[116]!==Me||t[117]!==Ze||t[118]!==Qe||t[119]!==$e||t[120]!==et||t[121]!==tt||t[122]!==nt?(rt=(0,X.jsxs)(`div`,{className:je,children:[Me,Ze,Qe,$e,et,tt,nt]}),t[116]=Me,t[117]=Ze,t[118]=Qe,t[119]=$e,t[120]=et,t[121]=tt,t[122]=nt,t[123]=rt):rt=t[123];let it;t[124]!==De||t[125]!==Ae||t[126]!==rt?(it={className:`bg-surface-panel`,startExtra:De,main:Ae,end:rt},t[124]=De,t[125]=Ae,t[126]=rt,t[127]=it):it=t[127];let at=it,ot,st;t[128]!==at||t[129]!==T||t[130]!==le?(ot=()=>{T||le(at)},st=[at,T,le],t[128]=at,t[129]=T,t[130]=le,t[131]=ot,t[132]=st):(ot=t[131],st=t[132]),(0,Z.useLayoutEffect)(ot,st);let ct;return t[133]!==at||t[134]!==T||t[135]!==M?(ct=T?(0,X.jsxs)(`header`,{"aria-label":M===`zh`?`聊天工具栏`:`Chat toolbar`,className:`flex min-h-14 shrink-0 items-center justify-between gap-2 border-b border-edge-subtle px-3 py-2`,children:[(0,X.jsx)(`div`,{className:`min-w-0 flex-1`,children:at.main}),at.end]}):null,t[133]=at,t[134]=T,t[135]=M,t[136]=ct):ct=t[136],ct});function cD(e){return e.language}function lD(e){return e.collapsed}function uD(e){return e.setOpen}function dD(e){return e.toggle}function fD(e){return e.open}function pD(e){return e.mobileNavOpen}function mD(e){return e.setPageHeader}function hD(e){return e.clearPageHeader}var gD=(0,Z.memo)(function(){let e=(0,Y.c)(13),t=h(_D),n;e[0]===t?n=e[1]:(n=y(t),e[0]=t,e[1]=n);let r=n,i=ti(vD),a=ti(yD);if(i===`idle`)return null;if(i===`error`&&a){let t;e[2]===a?t=e[3]:(t=(0,X.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:a}),e[2]=a,e[3]=t);let n;e[4]===Symbol.for(`react.memo_cache_sentinel`)?(n=J(`shrink-0 rounded-xl border border-red-200 bg-white px-2.5 py-1 text-xs font-medium text-red-700`,`hover:bg-red-50 dark:border-red-800 dark:bg-red-950/40 dark:text-red-300 dark:hover:bg-red-950/70`,ta.transition,ta.press,ta.focusRingPanel),e[4]=n):n=e[4];let i;e[5]===r.connection.reconnect?i=e[6]:(i=(0,X.jsx)(`button`,{type:`button`,className:n,onClick:bD,children:r.connection.reconnect}),e[5]=r.connection.reconnect,e[6]=i);let o;return e[7]!==t||e[8]!==i?(o=(0,X.jsxs)(`div`,{className:`flex items-center gap-2 border-b border-red-100 bg-red-50 px-4 py-2 text-sm text-red-600 dark:border-red-900/40 dark:bg-red-950/50 dark:text-red-400`,children:[t,i]}),e[7]=t,e[8]=i,e[9]=o):o=e[9],o}if(i===`connecting`||i===`reconnecting`){let t;e[10]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,X.jsx)(`span`,{className:`inline-block size-3 animate-spin rounded-full border-2 border-amber-500 border-t-transparent`,"aria-hidden":!0}),e[10]=t):t=e[10];let n=i===`reconnecting`?r.connection.reconnecting:r.connection.connecting,a;return e[11]===n?a=e[12]:(a=(0,X.jsxs)(`div`,{className:`flex items-center gap-2 border-b border-amber-100 bg-amber-50 px-4 py-2 text-sm text-amber-800 dark:border-amber-900/40 dark:bg-amber-950/50 dark:text-amber-200`,children:[t,(0,X.jsx)(`span`,{children:n})]}),e[11]=n,e[12]=a),a}return null});function _D(e){return e.language}function vD(e){return e.connectionState}function yD(e){return e.error}function bD(){return ei()}function xD(e,t){return Object.entries(t).reduce((e,[t,n])=>e.replaceAll(`{{${t}}}`,String(n)),e)}function SD(e){let t=(0,Y.c)(4),{status:n}=e;if(n===`completed`){let e;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,X.jsx)(`span`,{className:`mt-0.5 inline-flex size-4 shrink-0 items-center justify-center rounded-full bg-fg-muted text-surface-panel`,children:(0,X.jsx)(H,{className:`size-3`,strokeWidth:2.5,"aria-hidden":!0})}),t[0]=e):e=t[0],e}if(n===`in_progress`){let e;return t[1]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,X.jsx)(le,{className:`mt-0.5 size-4 shrink-0 text-accent`,strokeWidth:2,"aria-hidden":!0}),t[1]=e):e=t[1],e}if(n===`cancelled`){let e;return t[2]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,X.jsx)(Vo,{className:`mt-0.5 size-4 shrink-0 text-fg-disabled`,strokeWidth:1.75,"aria-hidden":!0}),t[2]=e):e=t[2],e}let r;return t[3]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,X.jsx)(fe,{className:`mt-0.5 size-4 shrink-0 text-fg-subtle`,strokeWidth:1.75,"aria-hidden":!0}),t[3]=r):r=t[3],r}function CD(e,t){return e?`${xD(e.files.length===1?t.filesChangedOne:t.filesChangedOther,{count:e.files.length})} · +${e.added} -${e.removed}`:null}function wD(e){let t=(0,Y.c)(61),{plan:n,changeSummary:r,isStreaming:i,labels:a}=e,o=n.currentIndex==null?void 0:n.items[n.currentIndex-1],s;t[0]===n.items?s=t[1]:(s=n.items.every(DD),t[0]=n.items,t[1]=s);let c=s,l=n.items.every(ED),u;t[2]!==a.completedProgress||t[3]!==n.completedCount||t[4]!==n.totalCount?(u=xD(a.completedProgress,{completed:n.completedCount,total:n.totalCount}),t[2]=a.completedProgress,t[3]=n.completedCount,t[4]=n.totalCount,t[5]=u):u=t[5];let d=u,f=a.ended;if(c)f=a.finished;else if(o){let e=n.currentIndex??1,r;t[6]!==a.stepProgress||t[7]!==n.totalCount||t[8]!==e?(r=xD(a.stepProgress,{current:e,total:n.totalCount}),t[6]=a.stepProgress,t[7]=n.totalCount,t[8]=e,t[9]=r):r=t[9],f=r}else!l&&i&&(f=a.planned);let p;t[10]!==r||t[11]!==a?(p=CD(r,a),t[10]=r,t[11]=a,t[12]=p):p=t[12];let m=p,h=o?.title,g;t[13]!==m||t[14]!==f||t[15]!==h?(g=[f,h,m].filter(Boolean),t[13]=m,t[14]=f,t[15]=h,t[16]=g):g=t[16];let _=g.join(` · `),v;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(v=J(`inline-flex min-h-9 min-w-0 max-w-full items-center gap-2 rounded-pill border border-edge-subtle bg-surface-overlay px-3 py-1.5 text-sm text-fg shadow-surface`,ta.transition,`hover:border-edge hover:text-accent-fg`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent focus-visible:ring-offset-2 focus-visible:ring-offset-surface-panel`),t[17]=v):v=t[17];let y=`${a.heading}: ${_}`,b;t[18]!==o||t[19]!==c?(b=c?(0,X.jsx)(H,{className:`size-4 shrink-0 text-fg-muted`,strokeWidth:2,"aria-hidden":!0}):o?(0,X.jsx)(le,{className:`size-4 shrink-0 text-accent`,strokeWidth:2,"aria-hidden":!0}):(0,X.jsx)(qe,{className:`size-4 shrink-0 text-fg-muted`,strokeWidth:1.75,"aria-hidden":!0}),t[18]=o,t[19]=c,t[20]=b):b=t[20];let x;t[21]===f?x=t[22]:(x=(0,X.jsx)(`span`,{className:`min-w-0 truncate`,children:f}),t[21]=f,t[22]=x);let S;t[23]===o?S=t[24]:(S=o?(0,X.jsxs)(`span`,{className:`min-w-0 truncate text-fg-muted`,children:[`· `,o.title]}):null,t[23]=o,t[24]=S);let C;t[25]===m?C=t[26]:(C=m?(0,X.jsxs)(`span`,{className:`hidden shrink-0 tabular-nums text-fg-subtle sm:inline`,children:[`· `,m]}):null,t[25]=m,t[26]=C);let w;t[27]===Symbol.for(`react.memo_cache_sentinel`)?(w=(0,X.jsx)(te,{className:`size-3.5 shrink-0 text-fg-subtle`,"aria-hidden":!0}),t[27]=w):w=t[27];let T;t[28]!==S||t[29]!==C||t[30]!==y||t[31]!==b||t[32]!==x?(T=(0,X.jsx)(di,{asChild:!0,children:(0,X.jsxs)(`button`,{type:`button`,className:v,"aria-label":y,children:[b,x,S,C,w]})}),t[28]=S,t[29]=C,t[30]=y,t[31]=b,t[32]=x,t[33]=T):T=t[33];let E;t[34]===Symbol.for(`react.memo_cache_sentinel`)?(E=(0,X.jsx)(qe,{className:`size-4 text-fg-muted`,strokeWidth:1.75,"aria-hidden":!0}),t[34]=E):E=t[34];let D;t[35]===a.heading?D=t[36]:(D=(0,X.jsxs)(`div`,{className:`flex items-center gap-2 text-sm font-medium text-fg`,children:[E,(0,X.jsx)(`span`,{children:a.heading})]}),t[35]=a.heading,t[36]=D);let O;t[37]===n.explanation?O=t[38]:(O=n.explanation?(0,X.jsx)(`p`,{className:`mt-1 line-clamp-2 text-xs leading-relaxed text-fg-muted`,children:n.explanation}):null,t[37]=n.explanation,t[38]=O);let k;t[39]!==D||t[40]!==O?(k=(0,X.jsxs)(`div`,{className:`min-w-0`,children:[D,O]}),t[39]=D,t[40]=O,t[41]=k):k=t[41];let A;t[42]===d?A=t[43]:(A=(0,X.jsx)(`span`,{className:`shrink-0 text-xs tabular-nums text-fg-subtle`,children:d}),t[42]=d,t[43]=A);let j;t[44]!==k||t[45]!==A?(j=(0,X.jsxs)(`div`,{className:`flex items-center justify-between gap-3 border-b border-edge-subtle px-4 py-3`,children:[k,A]}),t[44]=k,t[45]=A,t[46]=j):j=t[46];let M=a.heading,N;t[47]===n.items?N=t[48]:(N=n.items.map(TD),t[47]=n.items,t[48]=N);let P;t[49]!==a.heading||t[50]!==N?(P=(0,X.jsx)(`ol`,{className:`max-h-[min(22rem,55vh)] overflow-y-auto px-4 py-3`,"aria-label":M,children:N}),t[49]=a.heading,t[50]=N,t[51]=P):P=t[51];let F;t[52]===m?F=t[53]:(F=m?(0,X.jsx)(`div`,{className:`border-t border-edge-subtle px-4 py-2 text-right text-xs tabular-nums text-fg-subtle`,children:m}):null,t[52]=m,t[53]=F);let I;t[54]!==j||t[55]!==P||t[56]!==F?(I=(0,X.jsx)(si,{children:(0,X.jsxs)(ci,{side:`top`,align:`center`,sideOffset:8,collisionPadding:16,className:`z-[120] w-[min(28rem,calc(100vw-2rem))] overflow-hidden rounded-xl border border-edge bg-surface-overlay shadow-popover outline-none`,children:[j,P,F]})}),t[54]=j,t[55]=P,t[56]=F,t[57]=I):I=t[57];let L;return t[58]!==T||t[59]!==I?(L=(0,X.jsx)(`div`,{className:`mx-auto flex w-full max-w-80 justify-center pb-2 pt-1`,children:(0,X.jsxs)(li,{children:[T,I]})}),t[58]=T,t[59]=I,t[60]=L):L=t[60],L}function TD(e){return(0,X.jsxs)(`li`,{className:J(`flex gap-3 py-2 text-sm leading-relaxed text-fg-muted`,e.status===`in_progress`&&`font-medium text-fg`,e.status===`cancelled`&&`text-fg-disabled`),children:[(0,X.jsx)(SD,{status:e.status}),(0,X.jsx)(`span`,{className:`min-w-0 [overflow-wrap:anywhere]`,children:e.title})]},e.id)}function ED(e){return e.status===`completed`||e.status===`cancelled`}function DD(e){return e.status===`completed`}function OD(e){let t=PD(e.source,e.explanation,e.items.map(e=>({...e})));return t&&t.items.some(e=>e.status===`pending`||e.status===`in_progress`)?t:null}var kD=new Set([`pending`,`in_progress`,`completed`,`cancelled`]);function AD(e){return e&&typeof e==`object`&&!Array.isArray(e)?e:null}function jD(e){return e.trim().toLowerCase().replace(/-/g,`_`).split(`__`).at(-1)??``}function MD(e){let t=AD(e.details);return t&&Object.keys(t).length>0?t:Ih(e.result).details}function ND(e){let t=typeof e==`string`?e.trim():``;return kD.has(t)?t:null}function PD(e,t,n){if(n.length===0)return null;let r=n.findIndex(e=>e.status===`in_progress`);return{source:e,explanation:t,items:n,currentIndex:r>=0?r+1:void 0,completedCount:n.filter(e=>e.status===`completed`).length,totalCount:n.length}}function FD(e){if(!Array.isArray(e.plan))return null;let t=e.plan.flatMap((e,t)=>{let n=AD(e),r=typeof n?.id==`string`&&n.id.trim()?n.id.trim():`update-plan-${t}`,i=typeof n?.step==`string`?n.step.trim():``,a=ND(n?.status);return i&&a?[{id:r,title:i,status:a}]:[]});return PD(`update_plan`,typeof e.explanation==`string`&&e.explanation.trim()?e.explanation.trim():void 0,t)}function ID(e){return Array.isArray(e.items)?PD(`todo`,void 0,e.items.flatMap((e,t)=>{let n=AD(e),r=typeof n?.id==`string`&&n.id.trim()?n.id.trim():`todo-${t}`,i=typeof n?.content==`string`?n.content.trim():``,a=ND(n?.status);return i&&a?[{id:r,title:i,status:a}]:[]})):null}function LD(e){for(let t=e.length-1;t>=0;--t){let n=e[t];if(n.type!==`tool_use`||n.status===`error`)continue;let r=jD(n.name),i=MD(n);if(i){if(r===`update_plan`)return{found:!0,plan:FD(i)};if(r===`todo`)return{found:!0,plan:ID(i)}}}return{found:!1,plan:null}}function RD(e){return typeof e==`number`&&Number.isFinite(e)&&e>0?e:0}function zD(e){let t=new Set,n=0,r=0;for(let i of e){if(i.type!==`tool_use`||i.status===`error`||jD(i.name)!==`apply_patch`)continue;let e=MD(i);if(e){if(Array.isArray(e.files))for(let n of e.files)typeof n==`string`&&n.trim()&&t.add(n.trim());if(t.size===0&&Array.isArray(e.changes))for(let n of e.changes){let e=AD(n),r=typeof e?.moveTo==`string`?e.moveTo:typeof e?.path==`string`?e.path:``;r.trim()&&t.add(r.trim())}n+=RD(e.added),r+=RD(e.removed)}}return t.size>0||n>0||r>0?{files:[...t],added:n,removed:r}:null}function BD(e){for(let t=e.length-1;t>=0;--t){let n=e[t];if(n.role!==`assistant`)continue;let r=LD(n.content??[]);if(!r.found)continue;if(!r.plan||!r.plan.items.some(e=>e.status===`pending`||e.status===`in_progress`))return null;let i=e.slice(t).flatMap(e=>e.role===`assistant`?e.content??[]:[]);return{plan:r.plan,changeSummary:zD(i)}}return null}function VD(e,t){if(!t)return null;let n=-1;for(let t=e.length-1;t>=0;--t)if(e[t]?.role===`user`){n=t;break}return BD(e.slice(n+1))}function HD(e,t){return e.bottom>t.top&&e.top<t.bottom&&e.right>t.left&&e.left<t.right}function UD(e,t,n){let r=n.getBoundingClientRect(),i=t.getBoundingClientRect();if(!HD(e,{left:0,top:0,right:window.innerWidth,bottom:window.innerHeight})||!HD(i,r)||typeof t.animate!=`function`)return()=>{};let a=t.closest(`article`);a&&(a.style.animation=`none`);let o=t.getBoundingClientRect(),s=Math.max(-8,Math.min(8,e.left-o.left)),c=Math.max(-8,Math.min(8,e.top-o.top)),l;try{l=t.animate([{transform:`translate3d(${s}px, ${c}px, 0)`},{transform:`translate3d(0, 0, 0)`}],{duration:180,easing:`cubic-bezier(0.22, 1, 0.36, 1)`})}catch{return()=>{}}let u=!1,d,f=()=>{u||(u=!0,d!==void 0&&window.clearTimeout(d),n.removeEventListener(`scroll`,p),n.removeEventListener(`wheel`,f),n.removeEventListener(`touchstart`,f),window.removeEventListener(`resize`,f),l.cancel())},p=()=>{let e=t.getBoundingClientRect();(Math.abs(e.top-o.top)>1||Math.abs(e.left-o.left)>1)&&f()};return n.addEventListener(`scroll`,p,{passive:!0}),n.addEventListener(`wheel`,f,{passive:!0}),n.addEventListener(`touchstart`,f,{passive:!0}),window.addEventListener(`resize`,f),d=window.setTimeout(f,350),l.finished.then(f,f),f}function WD(e){let t=(0,Y.c)(12),{enabled:n,conversationId:r,messages:i,viewportRef:a}=e,o=(0,Z.useRef)(null),s=(0,Z.useRef)(null),c;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(c=()=>{o.current&&window.clearTimeout(o.current.timeout),o.current=null,s.current?.(),s.current=null},t[0]=c):c=t[0];let l=c,u;t[1]!==r||t[2]!==n?(u=(e,t,i)=>{if(l(),!n||!r||i.attachments.length>0||i.contextRefs.length>0||!i.text.trim()||document.visibilityState===`hidden`||window.matchMedia(`(prefers-reduced-motion: reduce)`).matches)return;let a={id:e.clientSubmissionId,source:{left:t.left,top:t.top,right:t.right,bottom:t.bottom},timeout:window.setTimeout(()=>{o.current===a&&(o.current=null)},500)};o.current=a},t[1]=r,t[2]=n,t[3]=u):u=t[3];let d=u,f,p;t[4]!==i||t[5]!==a?(f=()=>{let e=o.current,t=a.current;if(!e||!t||!i.some(t=>t.clientSubmissionId===e.id))return;window.clearTimeout(e.timeout),o.current=null;let n=t.querySelector(`[data-client-submission-id="${e.id}"]`)?.querySelector(`.chat-user-message`);n&&(s.current=UD(e.source,n,t))},p=[i,a],t[4]=i,t[5]=a,t[6]=f,t[7]=p):(f=t[6],p=t[7]),(0,Z.useLayoutEffect)(f,p);let m;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(m=()=>l,t[8]=m):m=t[8];let h;return t[9]!==r||t[10]!==n?(h=[l,r,n],t[9]=r,t[10]=n,t[11]=h):h=t[11],(0,Z.useEffect)(m,h),d}function GD(e){let t=(0,Y.c)(61),{open:n,query:r,activeIndex:i,resultCount:a,searching:o,truncated:s,limitedToLoaded:c,inputRef:l,labels:u,onQueryChange:d,onPrevious:f,onNext:p,onClose:m}=e,h=o!==void 0&&o,g=s!==void 0&&s,_=c!==void 0&&c;if(!n)return null;let v;t[0]===r?v=t[1]:(v=r.trim(),t[0]=r,t[1]=v);let y=!!v,b;t[2]!==i||t[3]!==y||t[4]!==u.noResults||t[5]!==u.resultCount||t[6]!==u.searching||t[7]!==a||t[8]!==h||t[9]!==g?(b=h?u.searching:y&&a===0?u.noResults:y?u.resultCount.replace(`{{current}}`,String(i+1)).replace(`{{total}}`,`${a}${g?`+`:``}`):``,t[2]=i,t[3]=y,t[4]=u.noResults,t[5]=u.resultCount,t[6]=u.searching,t[7]=a,t[8]=h,t[9]=g,t[10]=b):b=t[10];let x=b,S;t[11]!==x||t[12]!==y||t[13]!==u.loadedOnly||t[14]!==_?(S=_&&y?[x,u.loadedOnly].filter(Boolean).join(` · `):x,t[11]=x,t[12]=y,t[13]=u.loadedOnly,t[14]=_,t[15]=S):S=t[15];let C=S,w=h||a===0,T=u.input,E;t[16]===Symbol.for(`react.memo_cache_sentinel`)?(E=(0,X.jsx)(Pt,{className:`size-4 shrink-0 text-fg-muted`,strokeWidth:1.75,"aria-hidden":!0}),t[16]=E):E=t[16];let D;t[17]===d?D=t[18]:(D=e=>d(e.target.value),t[17]=d,t[18]=D);let O;t[19]!==p||t[20]!==f?(O=e=>{e.nativeEvent.isComposing||e.key===`Enter`&&(e.preventDefault(),e.shiftKey?f():p())},t[19]=p,t[20]=f,t[21]=O):O=t[21];let k;t[22]!==l||t[23]!==u.input||t[24]!==r||t[25]!==O||t[26]!==D?(k=(0,X.jsx)(`input`,{ref:l,value:r,type:`search`,autoComplete:`off`,spellCheck:!1,"aria-label":u.input,className:`h-12 min-w-0 flex-1 bg-transparent text-base text-fg outline-none placeholder:text-fg-subtle`,placeholder:u.input,onChange:D,onKeyDown:O}),t[22]=l,t[23]=u.input,t[24]=r,t[25]=O,t[26]=D,t[27]=k):k=t[27];let A;t[28]===h?A=t[29]:(A=h?(0,X.jsx)(Ye,{className:`size-4 shrink-0 animate-spin text-fg-muted`,"aria-hidden":!0}):null,t[28]=h,t[29]=A);let j;t[30]===Symbol.for(`react.memo_cache_sentinel`)?(j=J(`inline-flex size-11 shrink-0 items-center justify-center rounded-lg text-fg-muted hover:bg-surface-hover hover:text-fg`,ta.focusRingPanel,ta.press),t[30]=j):j=t[30];let M;t[31]===Symbol.for(`react.memo_cache_sentinel`)?(M=(0,X.jsx)(Kt,{className:`size-5`,strokeWidth:1.75,"aria-hidden":!0}),t[31]=M):M=t[31];let N;t[32]!==u.close||t[33]!==m?(N=(0,X.jsx)(`button`,{type:`button`,onClick:m,className:j,"aria-label":u.close,children:M}),t[32]=u.close,t[33]=m,t[34]=N):N=t[34];let P;t[35]!==k||t[36]!==A||t[37]!==N?(P=(0,X.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2 px-3`,children:[E,k,A,N]}),t[35]=k,t[36]=A,t[37]=N,t[38]=P):P=t[38];let F;t[39]===Symbol.for(`react.memo_cache_sentinel`)?(F=J(`inline-flex size-10 items-center justify-center rounded-lg text-fg-muted hover:bg-surface-hover hover:text-fg`,ta.focusRingPanel,ta.press,ta.disabled),t[39]=F):F=t[39];let I;t[40]===Symbol.for(`react.memo_cache_sentinel`)?(I=(0,X.jsx)(W,{className:`size-5`,strokeWidth:1.75,"aria-hidden":!0}),t[40]=I):I=t[40];let L;t[41]!==u.previous||t[42]!==w||t[43]!==f?(L=(0,X.jsx)(`button`,{type:`button`,disabled:w,onClick:f,className:F,"aria-label":u.previous,children:I}),t[41]=u.previous,t[42]=w,t[43]=f,t[44]=L):L=t[44];let R;t[45]===Symbol.for(`react.memo_cache_sentinel`)?(R=J(`inline-flex size-10 items-center justify-center rounded-lg text-fg-muted hover:bg-surface-hover hover:text-fg`,ta.focusRingPanel,ta.press,ta.disabled),t[45]=R):R=t[45];let z;t[46]===Symbol.for(`react.memo_cache_sentinel`)?(z=(0,X.jsx)(te,{className:`size-5`,strokeWidth:1.75,"aria-hidden":!0}),t[46]=z):z=t[46];let B;t[47]!==u.next||t[48]!==w||t[49]!==p?(B=(0,X.jsx)(`button`,{type:`button`,disabled:w,onClick:p,className:R,"aria-label":u.next,children:z}),t[47]=u.next,t[48]=w,t[49]=p,t[50]=B):B=t[50];let ee;t[51]===C?ee=t[52]:(ee=(0,X.jsx)(`span`,{className:`ml-auto px-2 text-sm tabular-nums text-fg-muted`,"aria-live":`polite`,"aria-atomic":`true`,children:C}),t[51]=C,t[52]=ee);let V;t[53]!==L||t[54]!==B||t[55]!==ee?(V=(0,X.jsxs)(`div`,{className:`flex h-11 items-center border-t border-edge-subtle px-1.5`,children:[L,B,ee]}),t[53]=L,t[54]=B,t[55]=ee,t[56]=V):V=t[56];let H;return t[57]!==u.input||t[58]!==P||t[59]!==V?(H=(0,X.jsxs)(`section`,{"data-chat-find-bar":!0,role:`search`,"aria-label":T,className:`absolute right-3 top-3 z-30 w-[min(25rem,calc(100%-1.5rem))] overflow-hidden rounded-xl border border-edge bg-surface-overlay shadow-popover`,children:[P,V]}),t[57]=u.input,t[58]=P,t[59]=V,t[60]=H):H=t[60],H}async function KD(e,t,n={}){let r=await f(p(`${n.taskId?`/api/tasks/${encodeURIComponent(n.taskId)}/conversation/find`:`/api/sessions/${encodeURIComponent(e)}/find`}?${new URLSearchParams({q:t,limit:`1000`})}`),{signal:n.signal});if(!r.ok)throw Error(`HTTP ${r.status}: ${r.statusText}`);let i=await r.json();if(i.ok!==!0||!Array.isArray(i.matches)||typeof i.total!=`number`)throw Error(`Invalid chat find response`);return{query:typeof i.query==`string`?i.query:t,total:i.total,truncated:i.truncated===!0,matches:i.matches.filter(e=>Number.isInteger(e?.displayIndex)&&e.displayIndex>=0&&Number.isInteger(e?.occurrence)&&e.occurrence>=0)}}var qD=`chat-find-match`,JD=`chat-find-active`,YD=`chat-find-highlight-styles`;function XD(){let e=globalThis.CSS,t=globalThis.Highlight;return!e?.highlights||!t?null:{registry:e.highlights,Highlight:t}}function ZD(){if(document.getElementById(YD))return;let e=document.createElement(`style`);e.id=YD,e.textContent=`
|
|
62
|
-
::highlight(${
|
|
59
|
+
</body></html>`}function G_(e,t,n){let r=r=>{if(r.source!==e.contentWindow)return;let i=U_(r.data);!i||i.channel!==t||n(i)};return window.addEventListener(`message`,r),()=>window.removeEventListener(`message`,r)}function K_({leaseId:e,reference:t,sourceHash:n,preferredHeight:r,language:i}){let a=d(),o=c(),s=(0,Z.useRef)(null),[l,u]=(0,Z.useState)(0),[f,p]=(0,Z.useState)(`booting`),[m,h]=(0,Z.useState)([]),[g,_]=(0,Z.useState)(null),[v,y]=(0,Z.useState)(null),b=Zi(e),x=Math.min(720,Math.max(240,r)),S=(0,Z.useMemo)(()=>crypto.randomUUID(),[l,n]),C=Lr(b.active?[`chat-preview-revision`,t.id,n]:null,()=>z_(t.id,n),{revalidateOnFocus:!1,shouldRetryOnError:!1}),w=C.data?W_(C.data,S):void 0;(0,Z.useEffect)(()=>{let e=s.current;if(!e||!w)return;p(`booting`),h([]);let t=window.setTimeout(()=>{p(e=>e===`booting`?`timeout`:e)},7e3),n=G_(e,S,t=>{t.type===`ready`&&p(`healthy`),t.type===`resize`&&(e.style.height=`${Math.min(720,Math.max(240,t.height))}px`),t.type===`error`&&(p(`failed`),h(e=>[...e,t.diagnostic].slice(-20)))});return()=>{window.clearTimeout(t),n()}},[S,w]);let T=()=>{y(null),u(e=>e+1)},E=async()=>{if(m.length){_(`fix`),y(null);try{yp((await B_(t.id,{sourceHash:n,diagnostics:m,locale:i})).prompt)}catch(e){y(e instanceof Error?e.message:String(e))}finally{_(null)}}},D=async()=>{_(`promote`),y(null);try{let e=await V_(t.id,n);a($e(`${o.pathname}${o.search}`,`/local-apps/${encodeURIComponent(e.id)}`))}catch(e){y(e instanceof Error?e.message:String(e))}finally{_(null)}},O=`content-block-action-scope mt-3 overflow-hidden rounded-2xl border border-edge bg-surface-panel`;if(!b.active)return(0,X.jsxs)(`section`,{ref:b.containerRef,className:O,"data-inline-chat-preview":t.id,children:[(0,X.jsxs)(`header`,{className:`border-b border-edge-subtle px-4 py-3`,children:[(0,X.jsx)(`h3`,{className:`truncate text-sm font-semibold text-fg`,children:t.title}),(0,X.jsx)(`p`,{className:`mt-0.5 text-xs text-fg-muted`,children:b.state===`queued`?i===`zh`?`正在等待预览资源`:`Waiting for a preview slot`:i===`zh`?`预览尚未加载`:`Preview not loaded`})]}),(0,X.jsx)(`div`,{className:`grid place-items-center bg-surface-base`,style:{height:x},children:(0,X.jsx)(ai,{variant:`secondary`,className:`min-h-11`,onClick:b.activate,children:i===`zh`?`加载交互预览`:`Load interactive preview`})})]});if(C.isLoading)return(0,X.jsxs)(`section`,{ref:b.containerRef,className:O,"aria-busy":`true`,"aria-label":i===`zh`?`正在加载预览`:`Loading preview`,children:[(0,X.jsx)(`div`,{className:`border-b border-edge-subtle px-4 py-3`,children:(0,X.jsx)(Jt,{className:`h-5 w-40`})}),(0,X.jsx)(Jt,{className:`m-3 w-[calc(100%-1.5rem)]`,style:{height:x}})]});if(!C.data||!w){let e=C.error instanceof Error?C.error.message:i===`zh`?`无法加载预览`:`Unable to load preview`;return(0,X.jsx)(`section`,{ref:b.containerRef,className:`mt-3 rounded-2xl border border-danger/30 bg-danger-soft p-4 text-sm text-danger`,role:`alert`,children:(0,X.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,X.jsx)(Ht,{className:`size-4`}),e]})})}let k=f===`failed`||f===`timeout`,A=f===`healthy`?i===`zh`?`运行正常`:`Running`:f===`booting`?i===`zh`?`正在启动`:`Starting`:f===`timeout`?i===`zh`?`启动超时`:`Start timed out`:i===`zh`?`运行错误`:`Runtime error`;return(0,X.jsxs)(`section`,{ref:b.containerRef,className:O,"data-inline-chat-preview":t.id,children:[(0,X.jsxs)(`header`,{className:`flex min-w-0 flex-wrap items-center gap-2 border-b border-edge-subtle px-4 py-3`,children:[(0,X.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,X.jsx)(`h3`,{className:`truncate text-sm font-semibold text-fg`,children:t.title}),(0,X.jsx)(`p`,{className:J(`mt-0.5 text-xs`,k?`text-danger`:`text-fg-muted`),"aria-live":`polite`,children:A})]}),(0,X.jsx)(ai,{variant:`ghost`,className:`content-block-action`,onClick:T,"data-action-visible":k,title:i===`zh`?`重新加载预览`:`Reload preview`,"aria-label":i===`zh`?`重新加载预览`:`Reload preview`,children:(0,X.jsx)(jt,{className:`size-4`,"aria-hidden":!0})}),(0,X.jsx)(ai,{variant:`ghost`,className:`content-block-action`,disabled:g!==null,onClick:()=>void D(),"aria-busy":g===`promote`,title:g===`promote`?i===`zh`?`保存中…`:`Saving…`:i===`zh`?`保存为应用`:`Save as app`,"aria-label":g===`promote`?i===`zh`?`保存中…`:`Saving…`:i===`zh`?`保存为应用`:`Save as app`,children:(0,X.jsx)(Nt,{className:J(`size-4`,g===`promote`&&`motion-safe:animate-pulse`),"aria-hidden":!0})})]}),(0,X.jsxs)(`div`,{className:`relative bg-surface-base`,style:{minHeight:x},children:[(0,X.jsx)(`iframe`,{ref:s,title:i===`zh`?`${t.title} 交互预览`:`${t.title} interactive preview`,srcDoc:w,sandbox:`allow-scripts allow-forms`,className:`block w-full border-0 bg-white`,style:{height:x}},l),f===`booting`?(0,X.jsx)(`div`,{className:`pointer-events-none absolute inset-0 grid place-items-center bg-surface-base/75`,children:(0,X.jsx)(Jt,{className:`h-10 w-40`})}):null]}),k?(0,X.jsx)(`footer`,{className:`border-t border-danger/20 bg-danger-soft/60 px-4 py-3`,children:(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-3`,children:[(0,X.jsx)(`p`,{className:`min-w-0 flex-1 text-xs text-danger`,role:`alert`,children:m.at(-1)?.message??(i===`zh`?`预览未能正常启动`:`The preview did not start correctly`)}),(0,X.jsxs)(ai,{variant:`secondary`,className:`min-h-11 px-3 text-xs`,disabled:!m.length||g!==null,onClick:()=>void E(),children:[(0,X.jsx)(Gt,{className:`size-4`}),g===`fix`?i===`zh`?`生成中…`:`Preparing…`:i===`zh`?`让 AI 修复`:`Ask AI to fix`]})]})}):null,v?(0,X.jsx)(`p`,{className:`border-t border-danger/20 px-4 py-2 text-xs text-danger`,role:`alert`,children:v}):null]})}function q_(e){let t=(0,Y.c)(8),{children:n,label:r,className:i}=e,a;t[0]===i?a=t[1]:(a=J(`mt-2 w-full max-w-[28rem] self-start`,i),t[0]=i,t[1]=a);let o;t[2]===n?o=t[3]:(o=(0,X.jsx)(`div`,{className:`overflow-hidden rounded-xl border border-edge bg-surface-inset shadow-surface`,children:n}),t[2]=n,t[3]=o);let s;return t[4]!==r||t[5]!==a||t[6]!==o?(s=(0,X.jsx)(`section`,{className:a,"aria-label":r,"data-turn-tail":!0,children:o}),t[4]=r,t[5]=a,t[6]=o,t[7]=s):s=t[7],s}function J_(e){return{id:e.artifactId,name:e.title,type:e.kind,mimeType:e.mimeType,size:e.sizeBytes,uri:e.uri,workspaceRelativePath:e.workspaceRelativePath}}function Y_(e){let t=e.mimeType?.toLowerCase()??``,n=e.type?.toLowerCase()??``;return t.startsWith(`image/`)||n===`image`?we:t.startsWith(`audio/`)||n===`audio`||n===`voice`?Wo:t.startsWith(`video/`)||n===`video`?he:t.includes(`spreadsheet`)||[`spreadsheet`,`csv`,`xlsx`,`xls`].includes(n)?me:t.includes(`zip`)||[`archive`,`zip`].includes(n)?A:n===`site`?ye:Te}function X_(e,t,n){return!!(e.uri||Zr(e)||e.workspaceRelativePath?.trim()&&(t?.trim()||n?.trim()))}function Z_(e){let t=(0,Y.c)(49),{item:n,authToken:r,conversationId:i,projectId:a,onOpen:o}=e,s=h(Q_),c;t[0]===s?c=t[1]:(c=y(s),t[0]=s,t[1]=c);let l=c.chat.productDelivery.kinds.file,u;t[2]!==r||t[3]!==i?(u={authToken:r,conversationId:i},t[2]=r,t[3]=i,t[4]=u):u=t[4];let d=Bp(n.attachment,u),f;t[5]===n.attachment?f=t[6]:(f=Y_(n.attachment),t[5]=n.attachment,t[6]=f);let p=f,m,g,_;if(t[7]!==p||t[8]!==i||t[9]!==l||t[10]!==d.src||t[11]!==n.attachment||t[12]!==n.failed||t[13]!==n.href||t[14]!==n.meta||t[15]!==a){m=X_(n.attachment,i,a);let e=m||!!n.href,r;t[19]!==p||t[20]!==d.src||t[21]!==n.failed?(r=d.src?(0,X.jsx)(`img`,{src:d.src,alt:``,className:`size-8 shrink-0 rounded-lg object-cover`,decoding:`async`,loading:`lazy`}):(0,X.jsx)(`span`,{className:J(`flex size-8 shrink-0 items-center justify-center rounded-lg`,n.failed?`bg-danger-soft text-danger`:`bg-accent-soft/70 text-accent-fg`),"aria-hidden":!0,children:(0,X.jsx)(p,{className:`size-4`,strokeWidth:1.75})}),t[19]=p,t[20]=d.src,t[21]=n.failed,t[22]=r):r=t[22];let o=n.attachment.name??l,s=n.attachment.name??l,c;t[23]!==o||t[24]!==s?(c=(0,X.jsx)(`span`,{className:`block truncate text-sm font-medium text-fg`,title:o,children:s}),t[23]=o,t[24]=s,t[25]=c):c=t[25];let u;t[26]===n.meta?u=t[27]:(u=(0,X.jsx)(`span`,{className:`mt-0.5 block truncate text-xs leading-5 text-fg-muted`,title:n.meta,children:n.meta}),t[26]=n.meta,t[27]=u);let f;t[28]!==c||t[29]!==u?(f=(0,X.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[c,u]}),t[28]=c,t[29]=u,t[30]=f):f=t[30];let h=e?(0,X.jsx)(U,{className:`size-4 shrink-0 text-fg-subtle`,strokeWidth:1.75,"aria-hidden":!0}):null,v;t[31]!==f||t[32]!==h||t[33]!==r?(v=(0,X.jsxs)(X.Fragment,{children:[r,f,h]}),t[31]=f,t[32]=h,t[33]=r,t[34]=v):v=t[34],g=v,_=J(`flex min-h-14 w-full min-w-0 items-center gap-3 px-3 py-2 text-left`,e&&`cursor-pointer hover:bg-surface-hover/65 active:bg-surface-active/70`,ta.transition,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-accent`,!e&&`cursor-default`),t[7]=p,t[8]=i,t[9]=l,t[10]=d.src,t[11]=n.attachment,t[12]=n.failed,t[13]=n.href,t[14]=n.meta,t[15]=a,t[16]=m,t[17]=g,t[18]=_}else m=t[16],g=t[17],_=t[18];let v=_;if(!m&&n.href){let e;return t[35]!==v||t[36]!==g||t[37]!==n.href?(e=(0,X.jsx)(`li`,{"data-result-attachment":!0,children:(0,X.jsx)(`a`,{href:n.href,target:`_blank`,rel:`noreferrer`,className:v,children:g})}),t[35]=v,t[36]=g,t[37]=n.href,t[38]=e):e=t[38],e}if(!m){let e;return t[39]!==v||t[40]!==g?(e=(0,X.jsx)(`li`,{className:v,"data-result-attachment":!0,children:g}),t[39]=v,t[40]=g,t[41]=e):e=t[41],e}let b;t[42]!==n.attachment||t[43]!==o?(b=()=>o(n.attachment),t[42]=n.attachment,t[43]=o,t[44]=b):b=t[44];let x;return t[45]!==v||t[46]!==g||t[47]!==b?(x=(0,X.jsx)(`li`,{"data-result-attachment":!0,children:(0,X.jsx)(`button`,{type:`button`,className:v,onClick:b,children:g})}),t[45]=v,t[46]=g,t[47]=b,t[48]=x):x=t[48],x}function Q_(e){return e.language}function $_(e){let t=(0,Y.c)(26),{attachments:n,authToken:r,conversationId:i,projectId:a,onOpen:o,language:s}=e,c;t[0]!==n.length||t[1]!==s?(c=y(s).chat.turnOutcome.fileCount.replace(`{{count}}`,String(n.length)),t[0]=n.length,t[1]=s,t[2]=c):c=t[2];let l=c,u;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(u=J(`flex min-h-14 cursor-pointer list-none items-center gap-3 px-3 py-2 text-left`,`hover:bg-surface-hover/65 active:bg-surface-active/70`,ta.transition,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-accent`),t[3]=u):u=t[3];let d;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,X.jsx)(`span`,{className:`flex size-8 shrink-0 items-center justify-center rounded-lg bg-accent-soft/70 text-accent-fg`,"aria-hidden":!0,children:(0,X.jsx)(qo,{className:`size-4`,strokeWidth:1.75})}),t[4]=d):d=t[4];let f;t[5]===l?f=t[6]:(f=(0,X.jsx)(`span`,{className:`min-w-0 flex-1 text-sm font-medium text-fg`,children:l}),t[5]=l,t[6]=f);let p;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(p=(0,X.jsx)(U,{className:`size-4 shrink-0 text-fg-subtle transition-transform duration-150 ease-out group-open:rotate-90 motion-reduce:transition-none`,strokeWidth:1.75,"aria-hidden":!0}),t[7]=p):p=t[7];let m;t[8]===f?m=t[9]:(m=(0,X.jsxs)(`summary`,{className:u,children:[d,f,p]}),t[8]=f,t[9]=m);let h;if(t[10]!==n||t[11]!==r||t[12]!==i||t[13]!==o||t[14]!==a){let e;t[16]!==r||t[17]!==i||t[18]!==o||t[19]!==a?(e=e=>(0,X.jsx)(Z_,{item:e,authToken:r,conversationId:i,projectId:a,onOpen:o},e.key),t[16]=r,t[17]=i,t[18]=o,t[19]=a,t[20]=e):e=t[20],h=n.map(e),t[10]=n,t[11]=r,t[12]=i,t[13]=o,t[14]=a,t[15]=h}else h=t[15];let g;t[21]===h?g=t[22]:(g=(0,X.jsx)(`ul`,{className:`m-0 list-none divide-y divide-edge-subtle border-t border-edge-subtle p-0`,children:h}),t[21]=h,t[22]=g);let _;return t[23]!==m||t[24]!==g?(_=(0,X.jsx)(`li`,{"data-result-attachment-group":!0,children:(0,X.jsxs)(`details`,{className:`group`,children:[m,g]})}),t[23]=m,t[24]=g,t[25]=_):_=t[25],_}function ev(e,t){if(!e)return[];let n=y(t).chat.turnOutcome;return e.deliverables.map(e=>{let t=J_(e);return{key:`outcome:${e.artifactId}`,attachment:t,href:e.shareUrl,failed:e.availability===`failed`||e.availability===`missing`,meta:[n.availability[e.availability],e.sizeBytes===void 0?null:Qr(e.sizeBytes)].filter(Boolean).join(` · `)}})}function tv(e,t){let n=y(t).chat.turnOutcome;return(e??[]).map((e,t)=>({key:`attachment:${e.id??e.uri??e.name??t}`,attachment:e,meta:[n.generatedFile,e.mimeType,typeof e.size==`number`?Qr(e.size):null].filter(Boolean).join(` · `)}))}function nv(e){let t=new Set;for(let n of e?.deliverables??[])for(let e of[n.artifactId,n.sourceFileId,n.workspaceRelativePath]){let n=e?.trim();n&&t.add(`file:${n}`)}return t}function rv(e){let t=(0,Y.c)(46),{view:n,authToken:r,conversationId:i,projectId:a}=e,o=h(cv)===`zh`?`zh`:`en`,s;t[0]!==i||t[1]!==a?(s={layout:`assistant`,conversationId:i,projectId:a},t[0]=i,t[1]=a,t[2]=s):s=t[2];let c=Up(s),l=n.deliveries.filter(sv),u=l_(l),d=d_(l),f=f_(l),p=u_(l),m=(0,Z.useContext)(b_),g=new Set(nv(n.outcome));if(m)for(let{delivery:e,reference:t}of p_(l))t.kind===`automation`&&!t.runId&&e.operation!==`failed`&&g.add(`automation:${t.id}`);let _=p_(l,g).length,v,b,x,S;if(t[3]!==o||t[4]!==c||t[5]!==n.attachments||t[6]!==n.outcome||t[7]!==n.resultRevision){v=[...ev(n.outcome,o),...tv(n.attachments,o)];let e;t[12]!==n.outcome?.deliverables||t[13]!==n.resultRevision?(e=e=>!!(n.resultRevision&&n.outcome?.deliverables.some(t=>t.artifactId===e.id)),t[12]=n.outcome?.deliverables,t[13]=n.resultRevision,t[14]=e):e=t[14],b=e;let r;t[15]!==b||t[16]!==c||t[17]!==n.resultRevision?(r=e=>{c.openAttachment(e,b(e)?n.resultRevision:void 0)},t[15]=b,t[16]=c,t[17]=n.resultRevision,t[18]=r):r=t[18],x=r,S=v.filter(ov),t[3]=o,t[4]=c,t[5]=n.attachments,t[6]=n.outcome,t[7]=n.resultRevision,t[8]=v,t[9]=b,t[10]=x,t[11]=S}else v=t[8],b=t[9],x=t[10],S=t[11];let C=S,w;t[19]!==v||t[20]!==C?(w=v.filter(e=>!C.includes(e)),t[19]=v,t[20]=C,t[21]=w):w=t[21];let T=w,E=_>0||T.length>0;if(u.length===0&&d.length===0&&f.length===0&&!E&&!C.length)return null;let D;t[22]!==r||t[23]!==i||t[24]!==C?(D=C.length>0?(0,X.jsx)(Qp,{attachments:C.map(av),authToken:r,conversationId:i,workspaceConversationId:i,layout:`assistant`}):null,t[22]=r,t[23]=i,t[24]=C,t[25]=D):D=t[25];let O=u.map(iv),k;t[26]===o?k=t[27]:(k=e=>{let{key:t,presentation:n}=e;return(0,X.jsx)(R_,{previewId:`${t}:${n.reference.id}:${n.snapshot.sourceHash}`,reference:n.reference,sourceHash:n.snapshot.sourceHash,preferredHeight:n.preferredHeight,language:o},t)},t[26]=o,t[27]=k);let A=d.map(k),j;t[28]===o?j=t[29]:(j=e=>{let{key:t,presentation:n}=e;return(0,X.jsx)(K_,{leaseId:`${t}:${n.reference.id}:${n.sourceHash}`,reference:n.reference,sourceHash:n.sourceHash,preferredHeight:n.preferredHeight,language:o},t)},t[28]=o,t[29]=j);let M=f.map(j),N=E?(0,X.jsxs)(q_,{label:y(o).chat.productDelivery.heading,children:[(0,X.jsxs)(`ul`,{className:`m-0 list-none divide-y divide-edge-subtle p-0`,children:[(0,X.jsx)(j_,{deliveries:l,language:o,excludedReferenceKeys:g,conversationId:i,projectId:a}),T.length>1?(0,X.jsx)($_,{attachments:T,authToken:r,conversationId:i,projectId:a,onOpen:x,language:o}):T.map(e=>(0,X.jsx)(Z_,{item:e,authToken:r,conversationId:i,projectId:a,onOpen:x},e.key))]}),p.truncated?(0,X.jsx)(`p`,{role:`status`,className:`border-t border-edge-subtle px-3 py-2 text-xs text-fg-muted`,children:y(o).chat.productDelivery.partialResults}):null]}):null,P;t[30]!==T.length||t[31]!==r||t[32]!==i||t[33]!==b||t[34]!==c.active||t[35]!==c.closePreview||t[36]!==c.open||t[37]!==n.resultRevision?(P=T.length>0?(0,X.jsx)(Ur,{open:c.open,attachment:c.active,resultRevision:c.active&&b(c.active)?n.resultRevision:void 0,authToken:r,conversationId:i,onClose:c.closePreview}):null,t[30]=T.length,t[31]=r,t[32]=i,t[33]=b,t[34]=c.active,t[35]=c.closePreview,t[36]=c.open,t[37]=n.resultRevision,t[38]=P):P=t[38];let F;return t[39]!==N||t[40]!==P||t[41]!==D||t[42]!==O||t[43]!==A||t[44]!==M?(F=(0,X.jsxs)(X.Fragment,{children:[D,O,A,M,N,P]}),t[39]=N,t[40]=P,t[41]=D,t[42]=O,t[43]=A,t[44]=M,t[45]=F):F=t[45],F}function iv(e){let{key:t,presentation:n}=e;return(0,X.jsx)(I_,{presentation:n},t)}function av(e){return e.attachment}function ov(e){return!e.failed&&e.attachment.mimeType?.startsWith(`image/`)}function sv(e){let{delivery:t}=e;return c_(t)}function cv(e){return e.language}function lv(e){let t=(0,Y.c)(40),{outcome:n}=e,r=h(fv),i,a,o,s,c,l,u,d;if(t[0]!==r||t[1]!==n.changeSet||t[2]!==n.evidence||t[3]!==n.status||t[4]!==n.summary){d=Symbol.for(`react.early_return_sentinel`);bb0:{if(o=y(r).chat.turnOutcome,i=!!n.changeSet,a=n.evidence.length>0,!i&&!a){d=n.status===`failed`?(0,X.jsx)(`p`,{role:`alert`,className:`text-sm text-danger`,children:n.summary||o.statusFailed}):null;break bb0}let e=n.evidence.filter(dv).length,f=n.evidence.filter(uv).length,p=n.status===`succeeded`?o.statusSucceeded:n.status===`failed`?o.statusFailed:o.statusPartial,m=n.status===`succeeded`?H:n.status===`failed`?de:ce,h=[n.changeSet?o.changedFileCount.replace(`{{count}}`,String(n.changeSet.files.length)):null,e>0?o.passedCount.replace(`{{count}}`,String(e)):null,f>0?o.failedCount.replace(`{{count}}`,String(f)):null,a&&e===0&&f===0?o.evidenceCount.replace(`{{count}}`,String(n.evidence.length)):null].filter(Boolean).join(` · `);l=`group mt-2 max-w-[36rem] rounded-lg bg-surface-panel/15 text-sm`;let g=n.status===`succeeded`?`grid size-5 shrink-0 place-items-center rounded-full bg-success/10 text-success`:n.status===`failed`?`grid size-5 shrink-0 place-items-center rounded-full bg-danger/10 text-danger`:`grid size-5 shrink-0 place-items-center rounded-full bg-warning/10 text-warning`,_;t[13]===m?_=t[14]:(_=(0,X.jsx)(m,{className:`size-3.5`,strokeWidth:2,"aria-hidden":!0}),t[13]=m,t[14]=_);let v;t[15]!==g||t[16]!==_?(v=(0,X.jsx)(`span`,{className:g,children:_}),t[15]=g,t[16]=_,t[17]=v):v=t[17];let b;t[18]===h?b=t[19]:(b=(0,X.jsx)(`span`,{className:`block truncate text-xs text-fg-subtle`,children:h}),t[18]=h,t[19]=b);let x=(0,X.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[(0,X.jsx)(`span`,{className:`block text-xs font-medium text-fg`,children:p}),b]}),S;t[20]===Symbol.for(`react.memo_cache_sentinel`)?(S=(0,X.jsx)(U,{className:`size-4 shrink-0 transition-transform group-open:rotate-90 motion-reduce:transition-none`,strokeWidth:1.75,"aria-hidden":!0}),t[20]=S):S=t[20],t[21]!==x||t[22]!==v?(u=(0,X.jsxs)(`summary`,{className:`flex min-h-11 cursor-pointer list-none items-center gap-2 rounded-lg px-3 py-2 text-fg-muted transition-colors hover:bg-surface-hover/45 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-accent`,children:[v,x,S]}),t[21]=x,t[22]=v,t[23]=u):u=t[23],s=`border-t border-edge-subtle px-3 py-2.5`,c=n.changeSet?(0,X.jsxs)(`section`,{"aria-label":o.changes,children:[(0,X.jsxs)(`div`,{className:`flex items-baseline justify-between gap-3 text-xs`,children:[(0,X.jsx)(`span`,{className:`font-medium text-fg`,children:o.changeSetTitle}),(0,X.jsx)(`span`,{className:`shrink-0 text-fg-subtle`,children:o.changeStats.replace(`{{files}}`,String(n.changeSet.files.length)).replace(`{{added}}`,String(n.changeSet.added)).replace(`{{removed}}`,String(n.changeSet.removed))})]}),(0,X.jsxs)(`div`,{className:`mt-2 border-t border-edge-subtle/70 pt-2`,children:[n.changeSet.files.slice(0,8).map(e=>(0,X.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2 py-1 text-xs`,children:[(0,X.jsx)(`span`,{className:`w-14 shrink-0 text-fg-subtle`,children:o.fileStatus[e.status??`modified`]}),(0,X.jsx)(`code`,{className:`min-w-0 truncate text-fg-muted`,children:e.path})]},e.path)),n.changeSet.files.length>8?(0,X.jsx)(`div`,{className:`pt-1 text-xs text-fg-subtle`,children:o.moreFiles.replace(`{{count}}`,String(n.changeSet.files.length-8))}):null]}),n.changeSet.diff?(0,X.jsxs)(`details`,{className:`mt-2`,children:[(0,X.jsx)(`summary`,{className:`w-fit cursor-pointer rounded-md px-1.5 py-1 text-xs font-medium text-accent focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,children:o.viewDiff}),n.changeSet.diffTruncated?(0,X.jsx)(`p`,{className:`mt-2 text-xs text-warning`,children:o.diffTruncated}):null,(0,X.jsx)(`pre`,{className:`mt-2 max-h-72 overflow-auto rounded-lg bg-surface-inset p-3 text-xs leading-5 text-fg-muted`,children:(0,X.jsx)(`code`,{children:n.changeSet.diff})})]}):null]}):null}t[0]=r,t[1]=n.changeSet,t[2]=n.evidence,t[3]=n.status,t[4]=n.summary,t[5]=i,t[6]=a,t[7]=o,t[8]=s,t[9]=c,t[10]=l,t[11]=u,t[12]=d}else i=t[5],a=t[6],o=t[7],s=t[8],c=t[9],l=t[10],u=t[11],d=t[12];if(d!==Symbol.for(`react.early_return_sentinel`))return d;let f;t[24]!==i||t[25]!==a?(f=i&&a?(0,X.jsx)(`div`,{className:`my-2 border-t border-edge-subtle`}):null,t[24]=i,t[25]=a,t[26]=f):f=t[26];let p;t[27]!==a||t[28]!==n.evidence||t[29]!==o?(p=a?(0,X.jsxs)(`section`,{"aria-label":o.evidence,children:[(0,X.jsx)(`div`,{className:`mb-1 text-xs font-medium text-fg`,children:o.evidence}),n.evidence.map(e=>(0,X.jsxs)(`div`,{className:`flex min-h-10 items-center gap-2.5 border-b border-edge-subtle/60 py-1.5 last:border-b-0`,children:[(0,X.jsx)(qe,{className:e.status===`passed`?`size-4 shrink-0 text-success`:e.status===`failed`?`size-4 shrink-0 text-danger`:`size-4 shrink-0 text-warning`,strokeWidth:1.75,"aria-hidden":!0}),(0,X.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-xs text-fg-muted`,children:e.label}),(0,X.jsx)(`span`,{className:e.status===`passed`?`text-xs font-medium text-success`:e.status===`failed`?`text-xs font-medium text-danger`:`text-xs font-medium text-warning`,children:e.status===`passed`?o.passed:e.status===`failed`?o.failed:o.warning})]},e.evidenceId))]}):null,t[27]=a,t[28]=n.evidence,t[29]=o,t[30]=p):p=t[30];let m;t[31]!==s||t[32]!==c||t[33]!==f||t[34]!==p?(m=(0,X.jsxs)(`div`,{className:s,children:[c,f,p]}),t[31]=s,t[32]=c,t[33]=f,t[34]=p,t[35]=m):m=t[35];let g;return t[36]!==l||t[37]!==u||t[38]!==m?(g=(0,X.jsxs)(`details`,{className:l,children:[u,m]}),t[36]=l,t[37]=u,t[38]=m,t[39]=g):g=t[39],g}function uv(e){return e.status===`failed`}function dv(e){return e.status===`passed`}function fv(e){return e.language}function pv(e){let t=(0,Y.c)(14),{view:n,authToken:r,conversationId:i,projectId:a,sourcesLabel:o}=e,s;t[0]!==r||t[1]!==i||t[2]!==a||t[3]!==n?(s=(0,X.jsx)(rv,{view:n,authToken:r,conversationId:i,projectId:a}),t[0]=r,t[1]=i,t[2]=a,t[3]=n,t[4]=s):s=t[4];let c;t[5]===n.outcome?c=t[6]:(c=n.outcome?(0,X.jsx)(lv,{outcome:n.outcome}):null,t[5]=n.outcome,t[6]=c);let l;t[7]!==o||t[8]!==n.sources?(l=n.sources.length>0?(0,X.jsx)(`section`,{className:`rounded-lg bg-surface-panel/10 px-3 py-2.5`,"aria-label":o,children:(0,X.jsx)(g_,{sources:n.sources,className:``})}):null,t[7]=o,t[8]=n.sources,t[9]=l):l=t[9];let u;return t[10]!==s||t[11]!==c||t[12]!==l?(u=(0,X.jsxs)(X.Fragment,{children:[s,c,l]}),t[10]=s,t[11]=c,t[12]=l,t[13]=u):u=t[13],u}var mv=`NO_REPLY`;function hv(e,t){if(e.role!==`assistant`||!e.content?.length)return e;if(t?.hideSilentReply){let n=e.content.filter(e=>e.type!==`text`||e.text.trim()!==mv);if(n.length!==e.content.length)return hv({...e,content:n},t)}let n=e.content.findIndex(e=>e.type===`text`);if(n<0)return e;let r=e.content[n];if(r.type!==`text`)return e;let i=r.text.trimStart();if(t?.hideSilentReply&&(i===mv||t.streaming&&i.length>0&&mv.startsWith(i)))return{...e,content:e.content.filter((e,t)=>t!==n)};if(!i.startsWith(mv))return e;if(i.length===8)return e.content.slice(n+1).some(e=>e.type===`text`&&e.text.trim().length>0)?{...e,content:e.content.filter((e,t)=>t!==n)}:e;let a=i.slice(8).trimStart();if(!a)return e;let o=[...e.content];return o[n]={...r,text:a},{...e,content:o}}function gv(e,t){return t||e.workLog.items.some(e=>e.type===`tool_use`&&(e.status===`error`||e.activity?.status===`failed`))}function _v(e,t){if(e.role!==`assistant`||t.isStreaming||t.followUpTrigger)return!0;let n=h_({message:hv(e,{hideSilentReply:!0}),...t});return!!(n.answerContent.some(e=>e.type===`review`||e.type===`text`&&e.text.trim())||n.attachments?.length||n.deliveries.length||n.sources.length||n.outcome&&(n.outcome.status===`failed`||n.outcome.changeSet||n.outcome.evidence.length||n.outcome.deliverables.length)||e.taskResultDelivery||e.personalProvenance||gv(n,t.showAssistantWorkLog)&&n.workLog.items.some(e=>t.personal||!n.workLog.compact&&t.showAssistantWorkLog||e.type===`tool_use`&&(e.status===`error`||e.activity?.status===`failed`)))}function vv(e,t){let n=Fn(e.content).some(e=>e.type===`review`&&(!e.status||e.status===`complete`)||e.type===`text`&&!!e.text.trim()),r=e.fromHistory&&n,i=e.outcome??e.taskResultDelivery?.outcome,a=!t&&e.runStatus!==`suspended`&&!!(e.runStatus||i||r),o=e.runStatus===`error`||e.runStatus===`cancelled`||i?.status===`failed`;return{settled:a,defaultCollapsed:a&&n&&!o,outcome:i}}function yv(e){let t=(0,Y.c)(17),{message:n,isStreaming:r,enabled:i,items:a,durationMs:o}=e,s=(0,Z.useRef)(null),[c,l]=(0,Z.useState)(!1),[u,d]=(0,Z.useState)(null),f=h(bv),p=y(f).chat,m;t[0]!==r||t[1]!==n?(m=vv(n,r),t[0]=r,t[1]=n,t[2]=m):m=t[2];let g=m,_=i&&g.settled&&a.length>0,v,b;t[3]===r?(v=t[4],b=t[5]):(v=()=>{r&&d(null)},b=[r],t[3]=r,t[4]=v,t[5]=b),(0,Z.useEffect)(v,b);let x,S;t[6]!==i||t[7]!==a.length?(x=()=>{if(!i||a.length===0)return;let e=()=>{let e=window.getSelection();l(!!(s.current&&[...s.current.querySelectorAll(`[data-assistant-process-item]`)].some(t=>e&&!e.isCollapsed&&e.containsNode(t,!0)||t.contains(document.activeElement))))};return e(),document.addEventListener(`selectionchange`,e),document.addEventListener(`focusin`,e),document.addEventListener(`focusout`,e),()=>{document.removeEventListener(`selectionchange`,e),document.removeEventListener(`focusin`,e),document.removeEventListener(`focusout`,e)}},S=[i,a.length],t[6]=i,t[7]=a.length,t[8]=x,t[9]=S):(x=t[8],S=t[9]),(0,Z.useEffect)(x,S);let C=u??(!g.defaultCollapsed||c),w=o==null?null:fg(o,f),T=n.runStatus===`cancelled`?p.processStopped:n.runStatus===`error`||g.outcome?.status===`failed`?p.processFailed:g.outcome?.status===`partial`?p.processPartial:null,E=T?`${T}${w?` · ${w}`:``}`:w?p.processWorkedFor.replace(`{{duration}}`,w):p.processView,D=_&&!C,O;t[10]!==C||t[11]!==E||t[12]!==_?(O=_?(0,X.jsxs)(`button`,{type:`button`,"data-assistant-process-toggle":!0,"aria-expanded":C,onClick:()=>d(!C),className:`flex min-h-11 w-full items-center gap-1.5 border-b border-edge-subtle py-2 text-left text-sm text-fg-muted hover:text-fg focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-accent`,children:[(0,X.jsx)(`span`,{children:E}),(0,X.jsx)(U,{"aria-hidden":!0,className:`size-4 shrink-0 transition-transform motion-reduce:transition-none ${C?`rotate-90`:``}`})]}):null,t[10]=C,t[11]=E,t[12]=_,t[13]=O):O=t[13];let k;return t[14]!==D||t[15]!==O?(k={contentRef:s,collapsed:D,summary:O},t[14]=D,t[15]=O,t[16]=k):k=t[16],k}function bv(e){return e.language}function xv(e,t=!1){return t||e.textSurface===`conversation`}function Sv(e){let t=e.trim().split(/[,,;;。\n]/,1)[0]?.trim()||e.trim(),n=Array.from(t);return n.length>32?`${n.slice(0,32).join(``)}…`:t}function Cv(e){let t=(0,Y.c)(23),{trigger:n}=e,r=c(),i=h(wv),a;t[0]===i?a=t[1]:(a=y(i),t[0]=i,t[1]=a);let o=a.chat.taskTrigger,s=n.entryId,l;t[2]===o.about?l=t[3]:(l=(0,X.jsx)(`span`,{className:`shrink-0`,children:o.about}),t[2]=o.about,t[3]=l);let d=`${r.pathname}${r.search}`,f;t[4]!==d||t[5]!==n.taskId?(f=tt(d,n.taskId),t[4]=d,t[5]=n.taskId,t[6]=f):f=t[6];let p=n.taskTitle,m=`${o.openTask}:${n.taskTitle}`,g;t[7]===n.taskTitle?g=t[8]:(g=Sv(n.taskTitle),t[7]=n.taskTitle,t[8]=g);let _;t[9]===g?_=t[10]:(_=(0,X.jsxs)(`span`,{className:`truncate`,children:[`「`,g,`」`]}),t[9]=g,t[10]=_);let v;t[11]!==f||t[12]!==m||t[13]!==_||t[14]!==n.taskTitle?(v=(0,X.jsx)(u,{className:`inline-flex min-w-0 max-w-[min(48vw,30rem)] font-medium text-fg hover:text-accent hover:underline`,to:f,title:p,"aria-label":m,children:_}),t[11]=f,t[12]=m,t[13]=_,t[14]=n.taskTitle,t[15]=v):v=t[15];let b=o[n.kind],x;t[16]===b?x=t[17]:(x=(0,X.jsxs)(`span`,{className:`shrink-0 whitespace-nowrap`,children:[`· `,b]}),t[16]=b,t[17]=x);let S;return t[18]!==v||t[19]!==x||t[20]!==l||t[21]!==n.entryId?(S=(0,X.jsxs)(`div`,{className:`mb-4 flex min-w-0 max-w-full items-center gap-1.5 border-t border-edge-subtle pt-5 text-sm text-fg-muted`,"data-task-trigger":s,children:[l,v,x]}),t[18]=v,t[19]=x,t[20]=l,t[21]=n.entryId,t[22]=S):S=t[22],S}function wv(e){return e.language}var Tv=3;function Ev(e){let t=(0,Y.c)(36),{refs:n,groupLabel:r,noteLabel:i,fileLabel:a,folderLabel:o,sessionLabel:s,browserTabLabel:c,mcpResourceLabel:l,truncatedLabel:u,showMoreLabel:d,showLessLabel:f,onOpen:p}=e,[m,h]=(0,Z.useState)(!1);if(n.length===0)return null;let g=n.length>Tv,_;t[0]!==m||t[1]!==n?(_=m?n:n.slice(0,Tv),t[0]=m,t[1]=n,t[2]=_):_=t[2];let v=_,y=n.length-Tv,b;if(t[3]!==c||t[4]!==a||t[5]!==o||t[6]!==r||t[7]!==l||t[8]!==i||t[9]!==p||t[10]!==s||t[11]!==u||t[12]!==v){let e;t[14]!==c||t[15]!==a||t[16]!==o||t[17]!==r||t[18]!==l||t[19]!==i||t[20]!==p||t[21]!==s||t[22]!==u?(e=e=>{let t=e.kind===`note`,n=t?`button`:`div`,d=e.kind===`result`?a:e.kind===`file`?e.fileKind===`directory`?o:a:e.kind===`session`?s:e.kind===`browser_tab`?c:e.kind===`mcp_resource`?l:i;return(0,X.jsxs)(n,{...t?{type:`button`,onClick:()=>p(e)}:{},className:J(`group inline-flex min-h-9 min-w-0 max-w-full items-center gap-2 rounded-lg border border-edge-subtle bg-surface-panel/80 px-2 py-1.5 text-left`,t&&`transition-colors hover:border-accent/40 hover:bg-surface-hover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`),...t?{"aria-label":`${r}: ${e.title}`}:{},title:e.truncated?u:e.title,children:[(0,X.jsx)(`span`,{className:`inline-flex size-7 shrink-0 items-center justify-center rounded-md bg-accent-soft text-accent-fg`,children:e.kind===`file`&&e.fileKind===`directory`?(0,X.jsx)(Oe,{className:`size-3.5`,"aria-hidden":!0}):e.kind===`file`||e.kind===`result`?(0,X.jsx)(Te,{className:`size-3.5`,"aria-hidden":!0}):e.kind===`session`?(0,X.jsx)(xt,{className:`size-3.5`,"aria-hidden":!0}):e.kind===`browser_tab`?(0,X.jsx)(k,{className:`size-3.5`,"aria-hidden":!0}):e.kind===`mcp_resource`?(0,X.jsx)(ve,{className:`size-3.5`,"aria-hidden":!0}):(0,X.jsx)(rs,{className:`size-3.5`,"aria-hidden":!0})}),(0,X.jsxs)(`span`,{className:`flex min-w-0 items-baseline gap-1.5`,children:[(0,X.jsx)(`span`,{className:`shrink-0 text-[11px] text-fg-muted`,children:d}),(0,X.jsx)(`span`,{className:`max-w-56 truncate text-xs font-medium text-fg sm:max-w-72`,children:e.title})]}),t?(0,X.jsx)(U,{className:`size-3.5 shrink-0 text-fg-disabled transition-transform group-hover:translate-x-0.5 group-hover:text-fg-muted`,"aria-hidden":!0}):null]},`${e.kind}:${e.sourceId}`)},t[14]=c,t[15]=a,t[16]=o,t[17]=r,t[18]=l,t[19]=i,t[20]=p,t[21]=s,t[22]=u,t[23]=e):e=t[23],b=v.map(e),t[3]=c,t[4]=a,t[5]=o,t[6]=r,t[7]=l,t[8]=i,t[9]=p,t[10]=s,t[11]=u,t[12]=v,t[13]=b}else b=t[13];let x;t[24]===b?x=t[25]:(x=(0,X.jsx)(`div`,{className:`flex min-w-0 flex-wrap gap-1.5`,children:b}),t[24]=b,t[25]=x);let S;t[26]!==g||t[27]!==m||t[28]!==y||t[29]!==f||t[30]!==d?(S=g?(0,X.jsxs)(`button`,{type:`button`,className:`inline-flex min-h-8 w-fit items-center gap-1 rounded-md px-2 text-xs text-fg-muted transition-colors hover:bg-surface-hover hover:text-fg focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,"aria-expanded":m,onClick:()=>h(Dv),children:[m?(0,X.jsx)(W,{className:`size-3.5`,"aria-hidden":!0}):(0,X.jsx)(te,{className:`size-3.5`,"aria-hidden":!0}),m?f:d.replace(`{{count}}`,String(y))]}):null,t[26]=g,t[27]=m,t[28]=y,t[29]=f,t[30]=d,t[31]=S):S=t[31];let C;return t[32]!==r||t[33]!==x||t[34]!==S?(C=(0,X.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-1.5`,role:`group`,"aria-label":r,children:[x,S]}),t[32]=r,t[33]=x,t[34]=S,t[35]=C):C=t[35],C}function Dv(e){return!e}function Ov(e,t){let n=new Map;for(let r of e){let e=r.sourceName.trim(),i=r.statement.trim().replace(/\s+/g,` `),a=r.origin===`connected_source`?`${r.origin}:${e}`:r.origin,o=r.origin===`connected_source`?t.connected_source.replace(`{{source}}`,e):t[r.origin],s=n.get(a);s?s.items.some(e=>e.statement.trim().replace(/\s+/g,` `)===i)||s.items.push(r):n.set(a,{id:a,label:o,items:[r]})}return Array.from(n.values())}function kv(e){let t=(0,Y.c)(67),{open:n,onOpenChange:r,items:i,labels:a}=e,o;t[0]!==i||t[1]!==a.origins?(o=Ov(i,a.origins),t[0]=i,t[1]=a.origins,t[2]=o):o=t[2];let s=o,c=s.reduce(Nv,0),l;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(l=new Set,t[3]=l):l=t[3];let[u,d]=(0,Z.useState)(l),f,p;t[4]!==c||t[5]!==s||t[6]!==n?(f=()=>{!n||s.length===0||d(new Set(c<=6?s.map(Mv):[s[0].id]))},p=[c,s,n],t[4]=c,t[5]=s,t[6]=n,t[7]=f,t[8]=p):(f=t[7],p=t[8]),(0,Z.useEffect)(f,p);let m;t[9]!==u||t[10]!==s?(m=s.length>0&&s.every(e=>u.has(e.id)),t[9]=u,t[10]=s,t[11]=m):m=t[11];let h=m,g;t[12]!==h||t[13]!==s?(g=()=>{d(h?new Set:new Set(s.map(jv)))},t[12]=h,t[13]=s,t[14]=g):g=t[14];let _=g,v;t[15]===Symbol.for(`react.memo_cache_sentinel`)?(v=e=>{d(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})},t[15]=v):v=t[15];let y=v,x;t[16]===Symbol.for(`react.memo_cache_sentinel`)?(x=(0,X.jsx)(b,{className:`xopc-dialog-overlay fixed inset-0 z-[80] bg-scrim/60 backdrop-blur-[1px]`}),t[16]=x):x=t[16];let O;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(O=J(`xopc-dialog-content fixed left-1/2 top-1/2 z-[90] flex h-[min(36rem,calc(100dvh-2rem))]`,`w-[min(42rem,calc(100vw-2rem))] -translate-x-1/2 -translate-y-1/2 flex-col overflow-hidden`,`rounded-2xl border border-edge bg-surface-overlay shadow-popover outline-none`),t[17]=O):O=t[17];let k;t[18]===Symbol.for(`react.memo_cache_sentinel`)?(k=(0,X.jsx)(`span`,{className:`mt-0.5 flex size-8 shrink-0 items-center justify-center rounded-lg bg-accent-soft text-accent-fg`,children:(0,X.jsx)(Ho,{className:`size-4`,strokeWidth:1.75,"aria-hidden":!0})}),t[18]=k):k=t[18];let A;t[19]===a.title?A=t[20]:(A=(0,X.jsx)(E,{className:`text-base font-semibold text-fg`,children:a.title}),t[19]=a.title,t[20]=A);let j;t[21]===a.hint?j=t[22]:(j=(0,X.jsx)(S,{className:`mt-1 text-sm leading-5 text-fg-muted`,children:a.hint}),t[21]=a.hint,t[22]=j);let M;t[23]!==c||t[24]!==a.itemsSummary?(M=a.itemsSummary.replace(`{{count}}`,String(c)),t[23]=c,t[24]=a.itemsSummary,t[25]=M):M=t[25];let N;t[26]===M?N=t[27]:(N=(0,X.jsx)(`p`,{className:`mt-2 text-xs font-medium text-fg-subtle`,children:M}),t[26]=M,t[27]=N);let P;t[28]!==A||t[29]!==j||t[30]!==N?(P=(0,X.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[A,j,N]}),t[28]=A,t[29]=j,t[30]=N,t[31]=P):P=t[31];let F;t[32]===Symbol.for(`react.memo_cache_sentinel`)?(F=(0,X.jsx)(Kt,{className:`size-4`,strokeWidth:1.75,"aria-hidden":!0}),t[32]=F):F=t[32];let I;t[33]===a.close?I=t[34]:(I=(0,X.jsx)(C,{asChild:!0,children:(0,X.jsx)(`button`,{type:`button`,className:`flex size-8 shrink-0 items-center justify-center rounded-lg text-fg-muted transition-colors duration-150 hover:bg-surface-hover hover:text-fg focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,"aria-label":a.close,title:a.close,children:F})}),t[33]=a.close,t[34]=I);let L;t[35]!==P||t[36]!==I?(L=(0,X.jsxs)(`header`,{className:`flex shrink-0 items-start gap-3 border-b border-edge-subtle px-4 py-4 sm:px-5`,children:[k,P,I]}),t[35]=P,t[36]=I,t[37]=L):L=t[37];let R;t[38]!==s.length||t[39]!==a.groupSummary?(R=a.groupSummary.replace(`{{count}}`,String(s.length)),t[38]=s.length,t[39]=a.groupSummary,t[40]=R):R=t[40];let z;t[41]===R?z=t[42]:(z=(0,X.jsx)(`span`,{className:`text-xs text-fg-subtle`,children:R}),t[41]=R,t[42]=z);let B;t[43]!==h||t[44]!==s.length||t[45]!==a.collapseAll||t[46]!==a.expandAll||t[47]!==_?(B=s.length>1?(0,X.jsx)(`button`,{type:`button`,className:`rounded-md px-2 py-1 text-xs font-medium text-accent-fg transition-colors duration-150 hover:bg-accent-soft focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,onClick:_,children:h?a.collapseAll:a.expandAll}):null,t[43]=h,t[44]=s.length,t[45]=a.collapseAll,t[46]=a.expandAll,t[47]=_,t[48]=B):B=t[48];let ee;t[49]!==z||t[50]!==B?(ee=(0,X.jsxs)(`div`,{className:`flex h-11 shrink-0 items-center justify-between gap-3 border-b border-edge-subtle px-4 sm:px-5`,children:[z,B]}),t[49]=z,t[50]=B,t[51]=ee):ee=t[51];let V;if(t[52]!==u||t[53]!==s){let e;t[55]===u?e=t[56]:(e=e=>{let t=u.has(e.id);return(0,X.jsxs)(`section`,{className:`overflow-hidden rounded-xl border border-edge-subtle bg-surface-panel`,children:[(0,X.jsxs)(`button`,{type:`button`,className:`flex min-h-12 w-full items-center gap-3 px-3.5 py-2.5 text-left transition-colors duration-150 hover:bg-surface-hover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-accent`,"aria-expanded":t,onClick:()=>y(e.id),children:[(0,X.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-sm font-medium text-fg`,children:e.label}),(0,X.jsx)(`span`,{className:`shrink-0 rounded-full bg-surface-hover px-2 py-0.5 text-[11px] tabular-nums text-fg-muted`,children:e.items.length}),(0,X.jsx)(te,{className:J(`size-4 shrink-0 text-fg-subtle transition-transform duration-200`,t&&`rotate-180`),strokeWidth:1.75,"aria-hidden":!0})]}),t?(0,X.jsx)(`div`,{className:`border-t border-edge-subtle px-3.5`,children:e.items.map(Av)}):null]},e.id)},t[55]=u,t[56]=e),V=s.map(e),t[52]=u,t[53]=s,t[54]=V}else V=t[54];let H;t[57]===V?H=t[58]:(H=(0,X.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto overscroll-contain px-3 py-3 sm:px-4`,"data-testid":`response-context-scroll-region`,children:(0,X.jsx)(`div`,{className:`space-y-2`,children:V})}),t[57]=V,t[58]=H);let U;t[59]!==L||t[60]!==ee||t[61]!==H?(U=(0,X.jsxs)(w,{children:[x,(0,X.jsxs)(T,{className:O,children:[L,ee,H]})]}),t[59]=L,t[60]=ee,t[61]=H,t[62]=U):U=t[62];let W;return t[63]!==r||t[64]!==n||t[65]!==U?(W=(0,X.jsx)(D,{open:n,onOpenChange:r,children:U}),t[63]=r,t[64]=n,t[65]=U,t[66]=W):W=t[66],W}function Av(e){return(0,X.jsx)(`p`,{className:`border-b border-edge-subtle py-3 text-sm leading-6 text-fg last:border-b-0`,children:e.statement},e.id)}function jv(e){return e.id}function Mv(e){return e.id}function Nv(e,t){return e+t.items.length}var Pv=J(`inline-flex size-11 shrink-0 items-center justify-center rounded-lg sm:size-9`,`text-fg-muted transition-colors transition-transform duration-150 ease-out`,`hover:bg-surface-hover hover:text-fg active:scale-95`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-accent`,ta.disabled),Fv=[`misunderstood_intent`,`incorrect`,`did_not_act`,`tone_mismatch`,`too_verbose`,`other`],Iv=J(`inline-flex h-8 shrink-0 items-center justify-center gap-1 rounded-md px-2 text-xs text-fg-muted transition-colors`,`hover:bg-surface-hover hover:text-fg active:scale-[0.98]`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-accent`,ta.disabled),Lv=700,Rv=120,zv=(0,Z.memo)(function({message:e,personal:t=!1,followUpTrigger:n,authToken:r,conversationId:i,workspaceConversationId:a,projectId:o,isStreaming:s,progress:l,reasoningLevel:u=`on`,messageIndex:f,onDeleteRound:m,onRetryUserMessageRound:_,userMessageCanRetry:v=!1,deleteRoundDisabled:b=!1,onSaveAssistantAsNote:x,onSaveAssistantToSourceNote:S,onExtractAssistantTask:C,onForkAssistantTurn:w,readonly:T=!1,density:E=`normal`,suppressAssistantActions:D=!1,onEditUserMessage:O,userMessageCanEdit:k=!0,responseFeedbackEnabled:A=!0,showAssistantWorkLog:j=!0}){let M=(0,Z.useMemo)(()=>hv(e,{hideSilentReply:xv(e,t),streaming:s}),[e,t,s]),F=h(e=>e.language),I=y(F),z=d(),ee=c(),V=M.role===`user`,U=M.role===`assistant`,ne=(0,Z.useRef)(V&&M.deliveryStatus===`sending`).current,re=V&&M.deliveryStatus===`sending`,ie=V&&M.deliveryStatus===`failed`,[ae,oe]=(0,Z.useState)(!1),[se,G]=(0,Z.useState)(!1),[K,le]=(0,Z.useState)(()=>typeof navigator<`u`&&navigator.onLine===!1),q=V?I.chat.you:U?I.chat.assistant:I.chat.tool;(0,Z.useEffect)(()=>{if(!re||typeof window>`u`)return;let e=()=>le(window.navigator.onLine===!1);return window.addEventListener(`online`,e),window.addEventListener(`offline`,e),()=>{window.removeEventListener(`online`,e),window.removeEventListener(`offline`,e)}},[re]),(0,Z.useEffect)(()=>{if(re){if(ae)return;let e=window.setTimeout(()=>oe(!0),K?0:Lv);return()=>window.clearTimeout(e)}if(!ae)return;let e=0,t=window.requestAnimationFrame(()=>{G(!0),e=window.setTimeout(()=>{oe(!1),G(!1)},Rv)});return()=>{window.cancelAnimationFrame(t),window.clearTimeout(e)}},[re,K,ae]);let ue=ie||ae,de=ie?`failed`:`sending`,fe=(0,Z.useCallback)(e=>{let t=`${ee.pathname}${ee.search}`;z(nt(t,e))},[ee.pathname,ee.search,z]),pe=(0,Z.useMemo)(()=>({input:I.chat.toolInput,output:I.chat.toolOutput,noOutput:I.chat.noOutput}),[I.chat.toolInput,I.chat.toolOutput,I.chat.noOutput]),me=(0,Z.useMemo)(()=>({thoughts:I.chat.thoughts,thoughtsStreaming:I.chat.thoughtsStreaming,workLogTitle:I.chat.workLogTitle,workLogRunning:I.chat.workLogRunning,workLogComplete:I.chat.workLogComplete,workLogPartial:I.chat.workLogPartial,workLogFailed:I.chat.workLogFailed,searchedWeb:I.chat.stepSearchedWeb,searchedMemory:I.chat.stepSearchedMemory,searchedCode:I.chat.stepSearchedCode,searched:I.chat.stepSearched,readFile:I.chat.stepReadFile,stepDetails:I.chat.stepDetails,runCommand:I.chat.stepRunCommand,listDirectory:I.chat.stepListDirectory,writeFile:I.chat.stepWriteFile,editFile:I.chat.stepEditFile,openUrl:I.chat.stepOpenUrl,fetchUrl:I.chat.stepFetchUrl,unknownTool:I.chat.stepUnknownTool,rawThinking:I.chat.rawThinking,toolError:I.chat.toolError,toolActivity:I.chat.toolActivity,memoryActivity:I.chat.memoryActivity}),[I.chat.thoughts,I.chat.thoughtsStreaming,I.chat.workLogTitle,I.chat.workLogRunning,I.chat.workLogComplete,I.chat.workLogPartial,I.chat.workLogFailed,I.chat.stepSearchedWeb,I.chat.stepSearchedMemory,I.chat.stepSearchedCode,I.chat.stepSearched,I.chat.stepReadFile,I.chat.stepDetails,I.chat.stepRunCommand,I.chat.stepListDirectory,I.chat.stepWriteFile,I.chat.stepEditFile,I.chat.stepOpenUrl,I.chat.stepFetchUrl,I.chat.stepUnknownTool,I.chat.rawThinking,I.chat.toolError,I.chat.toolActivity,I.chat.memoryActivity]),he=(0,Z.useMemo)(()=>({ing:I.chat.stepsClusterIng}),[I.chat.stepsClusterIng]),ge=(0,Z.useMemo)(()=>I.chat.toolCard,[I.chat.toolCard]),ve=u===`off`,ye=(0,Z.useMemo)(()=>U?h_({message:M,isStreaming:s,reasoningLevel:u,personal:t}):null,[U,s,M,u,t]),xe=(0,Z.useMemo)(()=>{if(!ye)return(M.content??[]).filter(e=>e.type!==`image`);if(t)return ye.answerContent;if(!ve&&j)return(M.content??[]).filter(e=>e.type!==`image`);let e=new Set(ye.answerContent);return(M.content??[]).filter(t=>e.has(t)||t.type===`tool_use`&&(t.status===`error`||t.activity?.status===`failed`))},[ye,M.content,t,ve,j]),Ce=(0,Z.useMemo)(()=>ye?ye.attachments:M.attachments,[ye,M.attachments]),we=U&&!t&&!ve&&j,Ee=yv({message:M,isStreaming:s,enabled:we,items:ye?.workLog.items??[],durationMs:M.completedAt==null?void 0:ye?.workLog.durationMs}),De=(0,Z.useMemo)(()=>we?new Set(ye?.workLog.items):void 0,[we,ye]),Oe=(0,Z.useMemo)(()=>{let e=new Set(M.userTurnDocument?.parts.flatMap(e=>e.type===`context_ref`?[e.refId]:[])??[]);return M.contextRefs?.filter(t=>!t.refId||!e.has(t.refId))},[M.contextRefs,M.userTurnDocument]),ke=!!(ye?.workLog.active||ye?.workLog.items.length),Ae=!!ye?.answer.started,je=ve||U&&(ke||Ae)?null:l,Me=!ve&&!!M.content?.some(e=>e.type===`thinking`&&e.streaming),Ne=U?!!ye?.answer.showStreamingCursor:s,Pe=t&&U&&s&&!ye?.answer.started&&!Ce?.length,Fe=s&&!Me&&(!U||!ke&&!Ae),Ie=!!je?.message||Fe,Le=U&&!T&&!s&&!D,Re=U&&s&&!T&&!D&&Ae,ze=(0,Z.useMemo)(()=>Le?rm(M.content??[]):``,[Le,M]),Be=(0,Z.useMemo)(()=>Le&&ze?am(M.content??[]):``,[Le,ze,M]),Ve=(0,Z.useMemo)(()=>Le&&ze?R(ze):``,[Le,ze]),He=(0,Z.useMemo)(()=>({source:{type:`chat-message`,id:`${i??`chat`}:${M.timestamp??f??ze.length}`,title:Ve.split(`
|
|
60
|
+
`)[0]?.slice(0,48)||I.chat.messageReadAloudTitle,href:i?`#/chat/${encodeURIComponent(i)}`:void 0,targetId:f==null?void 0:`chat-message-${f}`},text:Ve,language:P(Ve,F)}),[ze.length,F,I.chat.messageReadAloudTitle,M.timestamp,f,i,Ve]),Ue=(0,Z.useMemo)(()=>{if(!V)return``;if(M.userTurnDocument){let e=new Map(M.contextRefs?.flatMap(e=>e.refId?[[e.refId,e.title]]:[])??[]);return qn(M.userTurnDocument,t=>e.get(t))}return Ln(M.content)},[V,M.content,M.contextRefs,M.userTurnDocument]),[We,Ge]=(0,Z.useState)(null),[Ke,qe]=(0,Z.useState)(!1),[Ye,Xe]=(0,Z.useState)(null),[Ze,Qe]=(0,Z.useState)(null),[$e,et]=(0,Z.useState)(!1),[tt,rt]=(0,Z.useState)(null),[it,at]=(0,Z.useState)(!1),[ot,st]=(0,Z.useState)(!1),[ct,lt]=(0,Z.useState)(!1),[ut,dt]=(0,Z.useState)(!1),[ft,pt]=(0,Z.useState)(null),[mt,ht]=(0,Z.useState)([]),[gt,_t]=(0,Z.useState)(!1),[vt,yt]=(0,Z.useState)(!1),[bt,xt]=(0,Z.useState)(null),[St,Ct]=(0,Z.useState)(!1),[wt,Tt]=(0,Z.useState)(!1),Et=(0,Z.useRef)(null),Dt=(0,Z.useCallback)((e,t)=>{let n=tm(e,t);n&&xt(n)},[]),kt=(0,Z.useCallback)(()=>{!i||!M.renderKey||Mn.getState().completeProgressiveRender(i,M.renderKey)},[M.renderKey,i]),At=(0,Z.useCallback)(()=>{Be&&gi(Be).then(e=>{e&&(Ge(`plain`),window.setTimeout(()=>Ge(e=>e===`plain`?null:e),2e3))})},[Be]),Mt=(0,Z.useCallback)(()=>{ze&&gi(ze).then(e=>{e&&(Ge(`markdown`),window.setTimeout(()=>Ge(e=>e===`markdown`?null:e),2e3))})},[ze]),Nt=(0,Z.useCallback)(()=>{!ze||!x||Ze||(Qe(`create-note`),Promise.resolve(x(ze)).then(()=>{Xe(`create-note`),window.setTimeout(()=>Xe(e=>e===`create-note`?null:e),2e3)}).catch(()=>void 0).finally(()=>Qe(null)))},[Ze,ze,x]),Pt=(0,Z.useCallback)(()=>{!ze||!S||Ze||(Qe(`save-source-note`),Promise.resolve(S(ze)).then(()=>{Xe(`save-source-note`),window.setTimeout(()=>Xe(e=>e===`save-source-note`?null:e),2e3)}).catch(()=>void 0).finally(()=>Qe(null)))},[Ze,ze,S]),Ft=(0,Z.useCallback)(()=>{!Be&&!ze||!C||Ze||(Qe(`extract-task`),Promise.resolve(C(Be||ze)).then(()=>{Xe(`extract-task`),window.setTimeout(()=>Xe(e=>e===`extract-task`?null:e),2e3)}).catch(()=>void 0).finally(()=>Qe(null)))},[Ze,ze,Be,C]),It=(0,Z.useCallback)(()=>{Ue&&gi(Ue).then(e=>{e&&(Ge(`user`),window.setTimeout(()=>Ge(e=>e===`user`?null:e),2e3))})},[Ue]),Lt=(0,Z.useCallback)(()=>{!M.turnId||!w||$e||(et(!0),Promise.resolve(w(M.turnId)).catch(()=>void 0).finally(()=>et(!1)))},[$e,M.turnId,w]),Rt=(0,Z.useCallback)((e,t)=>{!M.turnId||ot||(st(!0),at(!0),lt(!1),g(p(`/api/turns/${encodeURIComponent(M.turnId)}/execution-context/feedback`),{method:`POST`,body:JSON.stringify({rating:e===`helpful`?`helpful`:`irrelevant`,reason:t})}).then(()=>{rt(e),pt(t??null),dt(!1)}).catch(()=>lt(!0)).finally(()=>st(!1)))},[M.turnId,ot]),zt=(0,Z.useCallback)(()=>{ft&&yp(I.chat.messageFeedbackRepairPrompts[ft])},[I.chat.messageFeedbackRepairPrompts,ft]),Bt=(0,Z.useCallback)(()=>{!M.turnId||it||ot||(st(!0),g(p(`/api/turns/${encodeURIComponent(M.turnId)}/execution-context`)).then(e=>{ht(e.resolvedItems.filter(e=>e.included).map(e=>({id:`${e.objectType}:${e.objectId}`,statement:e.content,origin:e.origin,sourceName:e.sourceLabel})))}).catch(()=>void 0).finally(()=>{at(!0),st(!1)}))},[M.turnId,ot,it]),Ht=(0,Z.useCallback)(()=>{f==null||!m||yt(!0)},[f,m]),Ut=(0,Z.useCallback)(()=>{f==null||!m||(m(f),yt(!1))},[f,m]),Wt=(0,Z.useCallback)(()=>{yt(!1)},[]);(0,Z.useLayoutEffect)(()=>{if(!V)return;let e=Et.current;if(!e)return;let t=()=>{let t=window.getComputedStyle(e),n=Number.parseFloat(t.lineHeight),r=Number.parseFloat(t.fontSize)||14,i=Number.isFinite(n)?n:r*1.625;Tt(e.scrollHeight>i*10+1)};if(t(),typeof ResizeObserver>`u`)return;let n=new ResizeObserver(t);return n.observe(e),()=>n.disconnect()},[V,xe,Ue]),(0,Z.useLayoutEffect)(()=>{Ct(!1)},[V,Ue]);let Gt=b||!v,Kt=ye&&gv(ye,j)&&(ye.workLog.active||ye.workLog.items.length>0)?(0,X.jsx)(Sg,{workLog:ye.workLog,pendingStatus:M.pendingResponseStatus,toolLabels:pe,stepLabels:me,clusterLabels:he,cardLabels:ge,conversationId:i,simplified:!t,personal:t,surfacesOnly:!t,answerStarted:ye.answer.started}):null;return(0,X.jsx)(Ku.Provider,{value:qu(ye?.deliveries??[]),children:(0,X.jsxs)(`article`,{className:J(`group/msg flex w-full min-w-0`,V?`justify-end`:`justify-start`,ne&&`xopc-chat-user-message-enter`),children:[(0,X.jsxs)(`div`,{className:J(`min-w-0`,V?`flex w-full max-w-[min(78%,var(--max-width-chat-user))] flex-col items-end`:`w-full max-w-[var(--max-width-chat-reading)]`,T&&`max-w-full`),children:[(0,X.jsx)(`span`,{className:`sr-only`,children:q}),n?(0,X.jsx)(Cv,{trigger:n}):null,V&&Ie?(0,X.jsxs)(`div`,{className:`mb-2 flex w-full min-w-0 flex-wrap items-center justify-end gap-x-2 gap-y-0.5 text-xs`,children:[je?.message&&!ke?(0,X.jsx)(`span`,{className:`text-fg-subtle`,title:je.detail??``,children:je.message}):null,Fe&&!je?.message?(0,X.jsx)(`span`,{className:`text-fg-subtle`,children:I.chat.thinkingLabel}):null]}):null,!V&&Ie&&!Pe?(0,X.jsxs)(`div`,{className:`mb-2 flex flex-wrap items-baseline gap-x-2 gap-y-0.5 text-xs text-fg-disabled`,children:[je?.message&&!ke?(0,X.jsx)(`span`,{className:`text-fg-subtle`,title:je.detail??``,children:je.message}):null,Fe&&!je?.message?(0,X.jsx)(`span`,{className:`text-fg-subtle`,children:I.chat.thinkingLabel}):null]}):null,(0,X.jsx)(`div`,{dir:V?`auto`:void 0,className:J(`min-w-0 text-fg`,V&&`chat-user-message`,E===`compact`?`text-sm leading-relaxed`:V?`text-[0.9375rem] leading-[1.6667]`:`text-base leading-[1.6875]`,V&&`w-fit max-w-full rounded-2xl bg-surface-hover/80 px-4 py-3 text-left dark:bg-surface-hover/50`,Pe&&`bg-transparent p-0`),children:(0,X.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-2`,children:[Pe?(0,X.jsx)(`div`,{className:`xopc-personal-thinking`,role:`status`,"aria-label":I.chat.thinkingLabel,children:(0,X.jsxs)(`span`,{className:`xopc-personal-thinking-dots`,"aria-hidden":`true`,children:[(0,X.jsx)(`i`,{}),(0,X.jsx)(`i`,{}),(0,X.jsx)(`i`,{})]})}):null,t?Kt:null,(xe?.length??0)>0?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)(`div`,{ref:V?Et:Ee.contentRef,"data-chat-find-text":!0,className:J(`relative min-w-0`,`flex flex-col gap-3`,V&&!St&&`overflow-hidden`),style:V&&!St?{maxHeight:`calc(10lh)`}:void 0,children:[Ee.summary,(0,X.jsx)(sh,{taskRunId:M.taskResultDelivery?.taskRunId,content:xe,isUser:V,isAssistantMessageStreaming:U&&s,imagePreviewLabel:I.chat.attachmentPreviewImage,onImagePreview:Dt,conversationId:i,workspaceConversationId:a,projectId:o,progressiveRender:!!M.progressiveRender,onProgressiveRenderComplete:kt,userTurnDocument:M.userTurnDocument,contextRefs:M.contextRefs,responseRunId:U?M.turnId:void 0,immediateFirstCommit:xv(M,t),processItems:De,processCollapsed:Ee.collapsed,renderActivity:!t&&ye?(e,t)=>{let n=s&&(t||e.some(e=>e.type===`tool_use`&&e.status===`running`)),r=Qg(e);return(0,X.jsx)(Sg,{workLog:{items:e,active:n,status:n?`running`:e.some(e=>e.type===`tool_use`&&(e.status===`error`||e.activity?.status===`failed`))?`failed`:`completed`,compact:!1,expandedByDefault:u===`stream`&&n,startedAt:r.startedAt,durationMs:r.durationMs},toolLabels:pe,stepLabels:me,clusterLabels:he,cardLabels:ge,conversationId:i,simplified:!1,showThinking:!0,renderSurfaces:!1})}:void 0}),Ne?(0,X.jsx)(`span`,{"aria-hidden":!0,"data-chat-streaming-cursor":!0,className:`pointer-events-none absolute start-0 top-full mt-1 h-3 w-0.5 bg-accent opacity-60`}):null]}),V&&wt?(0,X.jsxs)(`button`,{type:`button`,className:`inline-flex w-fit items-center gap-1 rounded-md px-1.5 py-1 text-xs font-medium text-accent transition-colors hover:bg-accent/10 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-accent`,onClick:()=>Ct(e=>!e),"aria-expanded":St,children:[St?(0,X.jsx)(W,{className:`size-3.5`,strokeWidth:1.75,"aria-hidden":!0}):(0,X.jsx)(te,{className:`size-3.5`,strokeWidth:1.75,"aria-hidden":!0}),(0,X.jsx)(`span`,{children:St?I.chat.userMessageCollapse:I.chat.userMessageExpand})]}):null]}):null,t?null:Kt,!t&&ye&&!ye.answer.started&&s&&!xe.some(e=>e.type===`thinking`||e.type===`tool_use`)?(0,X.jsx)(Sg,{workLog:{items:[],active:!0,status:`running`,compact:!0,expandedByDefault:!1},pendingStatus:M.pendingResponseStatus,toolLabels:pe,stepLabels:me,clusterLabels:he,cardLabels:ge,conversationId:i}):null,!t&&!V&&M.taskResultDelivery&&i?(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,"data-result-follow-up":!0,children:[M.taskResultDelivery.resultRevision?(0,X.jsxs)(`span`,{className:`text-xs text-fg-muted`,"data-result-revision":!0,children:[F===`zh`?`成果版本`:`Result version`,` `,M.taskResultDelivery.resultRevision]}):null,[{sourceId:`body`,title:M.taskResultDelivery.taskTitle},...M.taskResultDelivery.outcome.deliverables.filter(e=>e.availability===`available`).map(e=>({sourceId:e.artifactId,title:e.title}))].map(e=>(0,X.jsxs)(`button`,{type:`button`,className:`max-w-64 truncate rounded-md border border-edge-subtle px-2 py-1 text-xs text-fg-muted hover:bg-surface-hover hover:text-fg`,onClick:()=>{let t=M.taskResultDelivery;window.dispatchEvent(new CustomEvent(`chat-result-reference`,{detail:{conversationId:i,reference:{kind:`result`,sourceId:_s(t.deliveryId.replace(/^reply:/,``),e.sourceId),expectedVersion:vs(t),title:e.title}}}))},children:[F===`zh`?`询问:`:`Ask about: `,e.title]},e.sourceId))]}):null,ye?(0,X.jsx)(pv,{view:ye,authToken:r,conversationId:a??i,projectId:o,sourcesLabel:I.chat.searchSourcesHeading.replace(`{{count}}`,String(ye.sources.length))}):null,V&&M.sourceDevice?(0,X.jsxs)(`p`,{className:`mt-1 text-xs text-fg-subtle`,children:[F===`zh`?`来自 `:`From `,M.sourceDevice.name]}):null,V&&Oe?.length?(0,X.jsx)(Ev,{refs:Oe,groupLabel:I.chat.commandPalette.contextLabel,noteLabel:I.chat.commandPalette.notesSection,fileLabel:I.chat.atMention.files,folderLabel:I.chat.atMention.folders,sessionLabel:I.chat.atMention.chats,browserTabLabel:I.chat.atMention.browserTabs,mcpResourceLabel:I.chat.atMention.mcpResources,truncatedLabel:I.chat.commandPalette.contextTruncated,showMoreLabel:I.chat.contextReferencesMore,showLessLabel:I.chat.contextReferencesLess,onOpen:e=>fe(e.sourceId)}):null,V&&Ce?.length?(0,X.jsx)(Qp,{attachments:Ce,authToken:r,conversationId:i,workspaceConversationId:a,layout:`user`,centerUserVoiceRow:Ue.length===0}):null]})}),ue?(0,X.jsxs)(`div`,{"data-delivery-status":de,role:ie?`alert`:`status`,"aria-live":`polite`,"aria-hidden":se&&!ie?!0:void 0,className:J(`mt-1 flex min-h-5 items-center justify-end gap-1.5 pe-1 text-xs transition-opacity duration-[120ms] ease-out motion-reduce:transition-none`,ie?`text-danger`:`text-fg-subtle`,se&&!ie&&`opacity-0`),children:[ie?(0,X.jsx)(ce,{className:`size-3.5`,strokeWidth:1.75,"aria-hidden":!0}):null,(0,X.jsx)(`span`,{children:ie?I.chat.userMessageSendFailed:K&&re?I.chat.userMessageWaitingForNetwork:I.chat.userMessageSending}),ie&&_&&f!=null?(0,X.jsx)(`button`,{type:`button`,className:`rounded-md px-1.5 py-0.5 font-medium text-danger underline-offset-2 hover:bg-danger/10 hover:underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-danger/40`,onClick:()=>_(f),children:I.chat.userMessageRetry}):null]}):null,!V&&M.personalProvenance&&!s&&(0,X.jsx)(Rp,{provenance:M.personalProvenance}),V&&!s&&!T?(0,X.jsxs)(`div`,{"data-user-message-actions":!0,className:J(`mt-1 flex h-8 w-full min-w-0 shrink-0 items-center justify-end gap-0.5 sm:gap-2`,`pointer-events-none opacity-0 transition-opacity duration-150 ease-out`,`group-hover/msg:pointer-events-auto group-hover/msg:opacity-100`,`group-focus-within/msg:pointer-events-auto group-focus-within/msg:opacity-100`,`[@media(hover:none)_and_(pointer:coarse)]:pointer-events-auto [@media(hover:none)_and_(pointer:coarse)]:opacity-100`),children:[_&&f!=null&&M.deliveryStatus!==`failed`?(0,X.jsxs)(`button`,{type:`button`,className:J(Iv,Gt&&`opacity-40`),onClick:()=>_(f),disabled:Gt,title:b?I.chat.userMessageActionsWait:v?I.chat.userMessageRetry:I.chat.userMessageRetryDisabledHint,"aria-label":I.chat.userMessageRetry,children:[(0,X.jsx)(jt,{className:`size-3.5 shrink-0`,strokeWidth:1.75,"aria-hidden":!0}),(0,X.jsx)(`span`,{className:`max-w-[4.5rem] truncate sm:max-w-none`,children:I.chat.userMessageRetry})]}):null,(0,X.jsx)(`button`,{type:`button`,className:J(Iv,`size-8 px-0`),onClick:()=>{if(O&&f!=null){O(M,f);return}yp(Ue,In(M.attachments))},disabled:!Ue&&!M.attachments?.length&&!M.contextRefs?.length||!k,title:k?I.chat.userMessageEdit:I.chat.userMessageEditDisabledHint,"aria-label":I.chat.userMessageEdit,children:(0,X.jsx)(Ot,{className:`size-3.5`,strokeWidth:1.75,"aria-hidden":!0})}),(0,X.jsx)(`button`,{type:`button`,className:J(Iv,`size-8 px-0`),onClick:It,disabled:!Ue,title:We===`user`?I.chat.messageCopied:I.chat.userMessageCopy,"aria-label":We===`user`?I.chat.messageCopied:I.chat.userMessageCopy,children:We===`user`?(0,X.jsx)(H,{className:`size-3.5 text-fg-muted`,strokeWidth:1.75,"aria-hidden":!0}):(0,X.jsx)(_e,{className:`size-3.5`,strokeWidth:1.75,"aria-hidden":!0})}),m&&f!=null&&!b?(0,X.jsx)(`button`,{type:`button`,className:J(Iv,`size-8 px-0 hover:text-red-500 dark:hover:text-red-400`),onClick:Ht,title:I.chat.userMessageDelete,"aria-label":I.chat.userMessageDelete,children:(0,X.jsx)(Vt,{className:`size-3.5`,strokeWidth:1.75,"aria-hidden":!0})}):null]}):null,Re?(0,X.jsx)(`div`,{"data-assistant-actions-placeholder":!0,className:`mt-1 min-h-9 shrink-0`,"aria-hidden":`true`}):null,Le&&ze?(0,X.jsx)(Xg,{children:(0,X.jsxs)(`div`,{"data-assistant-message-actions":!0,className:J(`mt-1 flex min-h-9 shrink-0 items-center gap-1 overflow-visible transition-opacity duration-150 ease-out motion-reduce:transition-none`,`pointer-events-none opacity-0 group-hover/msg:pointer-events-auto group-hover/msg:opacity-100`,`group-focus-within/msg:pointer-events-auto group-focus-within/msg:opacity-100`,`[@media(hover:none)_and_(pointer:coarse)]:pointer-events-auto [@media(hover:none)_and_(pointer:coarse)]:opacity-100`,(Ke||ut||ct)&&`pointer-events-auto opacity-100`),children:[(0,X.jsx)(Zg,{label:We===`plain`?I.chat.messageCopied:I.chat.messageCopyPlainText,children:(0,X.jsx)(`button`,{type:`button`,className:Pv,onClick:At,disabled:!Be,"aria-label":We===`plain`?I.chat.messageCopied:I.chat.messageCopyPlainText,children:We===`plain`?(0,X.jsx)(H,{className:`size-4 text-fg-muted`,strokeWidth:1.75,"aria-hidden":!0}):(0,X.jsx)(_e,{className:`size-4`,strokeWidth:1.75,"aria-hidden":!0})})}),(0,X.jsx)(Zg,{label:I.chat.messageReadAloud,children:(0,X.jsx)(N,{input:He,labels:{read:I.chat.messageReadAloud,preparing:I.chat.messageReadAloudPreparing,pause:I.chat.messageReadAloudPause,resume:I.chat.messageReadAloudResume,retry:I.chat.messageReadAloudRetry},hideNativeTitle:!0})}),(0,X.jsxs)(li,{open:Ke,onOpenChange:e=>{qe(e),e&&Bt()},children:[(0,X.jsx)(Zg,{label:I.chat.messageMoreActions,children:(0,X.jsx)(di,{asChild:!0,children:(0,X.jsx)(`button`,{type:`button`,className:Pv,"aria-label":I.chat.messageMoreActions,children:(0,X.jsx)(be,{className:`size-4`,strokeWidth:1.75,"aria-hidden":!0})})})}),(0,X.jsx)(si,{children:(0,X.jsxs)(ci,{side:`bottom`,align:`start`,sideOffset:6,className:`z-[70] w-56 rounded-xl border border-edge bg-surface-overlay p-1.5 shadow-popover outline-none`,children:[(0,X.jsx)(ui,{asChild:!0,children:(0,X.jsxs)(`button`,{type:`button`,className:`flex h-9 w-full items-center gap-2 rounded-lg px-2.5 text-left text-xs text-fg-muted hover:bg-surface-hover hover:text-fg`,onClick:Mt,children:[We===`markdown`?(0,X.jsx)(H,{className:`size-4`,strokeWidth:1.75,"aria-hidden":!0}):(0,X.jsx)(Se,{className:`size-4`,strokeWidth:1.75,"aria-hidden":!0}),We===`markdown`?I.chat.messageCopied:I.chat.messageCopyMarkdown]})}),w&&M.turnId?(0,X.jsx)(ui,{asChild:!0,children:(0,X.jsxs)(`button`,{type:`button`,className:`flex h-9 w-full items-center gap-2 rounded-lg px-2.5 text-left text-xs text-fg-muted hover:bg-surface-hover hover:text-fg`,onClick:Lt,disabled:$e,children:[(0,X.jsx)(Yo,{className:`size-4`,strokeWidth:1.75,"aria-hidden":!0}),$e?I.chat.messageForkCreating:I.chat.messageForkFromHere]})}):null,x?(0,X.jsx)(ui,{asChild:!0,children:(0,X.jsxs)(`button`,{type:`button`,className:`flex h-9 w-full items-center gap-2 rounded-lg px-2.5 text-left text-xs text-fg-muted hover:bg-surface-hover hover:text-fg`,onClick:Nt,disabled:Ze!==null,children:[Ye===`create-note`?(0,X.jsx)(H,{className:`size-4`,strokeWidth:1.75,"aria-hidden":!0}):(0,X.jsx)(Ko,{className:`size-4`,strokeWidth:1.75,"aria-hidden":!0}),Ye===`create-note`?I.chat.messageSavedToNote:I.chat.messageSaveToNote]})}):null,A&&i&&M.timestamp?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`div`,{className:`my-1 border-t border-edge-subtle`,role:`separator`}),(0,X.jsx)(ui,{asChild:!0,children:(0,X.jsxs)(`button`,{type:`button`,className:`flex h-9 w-full items-center gap-2 rounded-lg px-2.5 text-left text-xs text-fg-muted hover:bg-surface-hover hover:text-fg`,onClick:()=>Rt(`helpful`),disabled:ot,"aria-pressed":tt===`helpful`,children:[(0,X.jsx)(L,{className:`size-4`,strokeWidth:1.75,"aria-hidden":!0}),I.chat.messageHelpful]})}),(0,X.jsx)(ui,{asChild:!0,children:(0,X.jsxs)(`button`,{type:`button`,className:`flex h-9 w-full items-center gap-2 rounded-lg px-2.5 text-left text-xs text-fg-muted hover:bg-surface-hover hover:text-fg`,onClick:()=>dt(e=>!e),disabled:ot,"aria-pressed":tt===`not_helpful`,children:[(0,X.jsx)(B,{className:`size-4`,strokeWidth:1.75,"aria-hidden":!0}),I.chat.messageNotHelpful]})})]}):null,ct?(0,X.jsx)(`p`,{className:`px-2.5 py-1 text-xs text-danger`,role:`status`,children:I.chat.messageFeedbackUnavailable}):null,mt.length>0?(0,X.jsx)(ui,{asChild:!0,children:(0,X.jsxs)(`button`,{type:`button`,className:`flex h-9 w-full items-center gap-2 rounded-lg px-2.5 text-left text-xs text-fg-muted hover:bg-surface-hover hover:text-fg`,onClick:()=>_t(e=>!e),children:[(0,X.jsx)(Ho,{className:`size-4`,strokeWidth:1.75,"aria-hidden":!0}),I.chat.messageWhyThisAnswer]})}):null,S?(0,X.jsx)(ui,{asChild:!0,children:(0,X.jsxs)(`button`,{type:`button`,className:`flex h-9 w-full items-center gap-2 rounded-lg px-2.5 text-left text-xs text-fg-muted hover:bg-surface-hover hover:text-fg disabled:opacity-40`,onClick:Pt,disabled:!ze||Ze!==null,children:[Ye===`save-source-note`?(0,X.jsx)(H,{className:`size-4`,strokeWidth:1.75,"aria-hidden":!0}):(0,X.jsx)(Te,{className:`size-4`,strokeWidth:1.75,"aria-hidden":!0}),Ye===`save-source-note`?I.chat.messageSavedToSourceNote:I.chat.messageSaveToSourceNote]})}):null,C?(0,X.jsx)(ui,{asChild:!0,children:(0,X.jsxs)(`button`,{type:`button`,className:`flex h-9 w-full items-center gap-2 rounded-lg px-2.5 text-left text-xs text-fg-muted hover:bg-surface-hover hover:text-fg disabled:opacity-40`,onClick:Ft,disabled:!Be&&!ze||Ze!==null,children:[Ye===`extract-task`?(0,X.jsx)(H,{className:`size-4`,strokeWidth:1.75,"aria-hidden":!0}):(0,X.jsx)(Je,{className:`size-4`,strokeWidth:1.75,"aria-hidden":!0}),Ye===`extract-task`?I.chat.messageTaskExtracted:I.chat.messageExtractTask]})}):null]})})]})]})}):null,Le&&mt.length>0?(0,X.jsx)(kv,{open:gt,onOpenChange:_t,items:mt,labels:{title:I.chat.messageWhyThisAnswer,hint:I.chat.messageWhyThisAnswerHint,close:I.chat.messageContextClose,itemsSummary:I.chat.messageContextItemsSummary,expandAll:I.chat.messageContextExpandAll,collapseAll:I.chat.messageContextCollapseAll,groupSummary:I.chat.messageContextGroupSummary,origins:I.chat.messageContextOrigins}}):null,Le&&ut?(0,X.jsxs)(`div`,{className:`mt-2 w-full max-w-xl rounded-xl border border-edge-subtle bg-surface-panel p-3`,children:[(0,X.jsx)(`p`,{className:`text-sm font-medium text-fg`,children:I.chat.messageFeedbackReasonTitle}),(0,X.jsx)(`p`,{className:`mt-0.5 text-xs text-fg-muted`,children:I.chat.messageFeedbackReasonHint}),(0,X.jsx)(`div`,{className:`mt-2 flex flex-wrap gap-2`,children:Fv.map(e=>(0,X.jsx)(`button`,{type:`button`,className:`rounded-lg border border-edge bg-surface-panel px-2.5 py-1.5 text-xs font-medium text-fg-muted transition-colors hover:bg-surface-hover hover:text-fg`,disabled:ot,onClick:()=>Rt(`not_helpful`,e),children:I.chat.messageFeedbackReasons[e]},e))})]}):null,Le&&tt===`not_helpful`&&ft?(0,X.jsxs)(`button`,{type:`button`,className:`mt-2 inline-flex w-fit items-center gap-1.5 rounded-lg bg-accent-soft px-3 py-1.5 text-xs font-medium text-accent-fg hover:bg-accent-soft/80`,onClick:zt,children:[(0,X.jsx)(jt,{className:`size-3.5`,strokeWidth:1.75,"aria-hidden":!0}),I.chat.messageFeedbackRepair]}):null]}),V&&m&&f!=null&&!T?(0,X.jsx)(Ta,{open:vt,title:I.chat.userMessageDeleteConfirmTitle,description:I.chat.userMessageDeleteConfirm,confirmLabel:I.chat.userMessageDeleteOk,cancelLabel:I.chat.userMessageDeleteCancel,destructive:!0,onConfirm:Ut,onCancel:Wt}):null,(0,X.jsx)(Ur,{open:bt!==null,attachment:bt,images:(M.content??[]).flatMap((e,t)=>{if(e.type!==`image`)return[];let n=tm(e,t);return n?[n]:[]}),onAttachmentChange:xt,authToken:r,conversationId:i,onClose:()=>xt(null)})]})})}),Bv=(0,Z.memo)(function(e){let t=(0,Y.c)(3),n=_m(e.conversationId,e.message.renderKey)??e.message,r;return t[0]!==n||t[1]!==e?(r=(0,X.jsx)(zv,{...e,message:n}),t[0]=n,t[1]=e,t[2]=r):r=t[2],r});function Vv(e,t){return e.renderKey??`${e.timestamp??`n`}-${t}`}var Hv=new Map;function Uv(e,t=`time`){let n=`${e??`default`}:${t}`,r=Hv.get(n);return r||(r=new Intl.DateTimeFormat(e===`zh`?`zh-CN`:e,t===`time`?{hour:`2-digit`,minute:`2-digit`}:{month:`short`,day:`numeric`,year:t===`year`?`numeric`:void 0}),Hv.set(n,r)),r}function Wv(e){return e?Uv().format(e):``}var Gv=1800*1e3;function Kv(e,t){return e.getFullYear()===t.getFullYear()&&e.getMonth()===t.getMonth()&&e.getDate()===t.getDate()}function qv(e,t){return e?!t||!Kv(new Date(e),new Date(t))||e-t>=Gv:!1}function Jv(e,t,n){let r=new Date(e),i=new Date(t),a=new Date(i);return a.setDate(i.getDate()-1),`${Kv(r,i)?n===`zh`?`今天`:`Today`:Kv(r,a)?n===`zh`?`昨天`:`Yesterday`:Uv(n,r.getFullYear()===i.getFullYear()?`date`:`year`).format(r)} ${Uv(n).format(r)}`}var Yv=0,Xv=1,Zv=2,Qv=4;function $v(e){return()=>e}function ey(e){e()}function ty(e,t){return n=>e(t(n))}function ny(e,t){return()=>e(t)}function ry(e,t){return n=>e(t,n)}function iy(e){return e!==void 0}function ay(...e){return()=>{e.map(ey)}}function oy(){}function sy(e,t){return t(e),e}function cy(e,t){return t(e)}function ly(...e){return e}function uy(e,t){return e(Xv,t)}function dy(e,t){e(Yv,t)}function fy(e){e(Zv)}function py(e){return e(Qv)}function my(e,t){return uy(e,ry(t,Yv))}function hy(e,t){let n=e(Xv,e=>{n(),t(e)});return n}function gy(e){let t,n;return r=>i=>{t=i,n&&clearTimeout(n),n=setTimeout(()=>{r(t)},e)}}function _y(e,t){return e===t}function vy(e=_y){let t;return n=>r=>{e(t,r)||(t=r,n(r))}}function yy(e){return t=>n=>{e(n)&&t(n)}}function by(e){return t=>ty(t,e)}function xy(e){return t=>()=>{t(e)}}function Q(e,...t){let n=Ey(...t);return((t,r)=>{switch(t){case Zv:fy(e);return;case Xv:return uy(e,n(r))}})}function Sy(e,t){return n=>r=>{n(t=e(t,r))}}function Cy(e){return t=>n=>{e>0?e--:t(n)}}function wy(e){let t=null,n;return r=>i=>{t=i,!n&&(n=setTimeout(()=>{n=void 0,r(t)},e))}}function Ty(...e){let t=Array.from({length:e.length}),n=0,r=null,i=2**e.length-1;return e.forEach((e,a)=>{let o=2**a;uy(e,e=>{let s=n;n|=o,t[a]=e,s!==i&&n===i&&r&&(r(),r=null)})}),e=>a=>{let o=()=>{e([a].concat(t))};n===i?o():r=o}}function Ey(...e){return t=>e.reduceRight(cy,t)}function Dy(e){let t,n,r=()=>t?.();return function(i,a){switch(i){case Xv:return a?n===a?void 0:(r(),n=a,t=uy(e,a),t):(r(),oy);case Zv:r(),n=null;return}}}function $(e){let t=e,n=ky();return((e,r)=>{switch(e){case Yv:t=r;break;case Xv:r(t);break;case Qv:return t}return n(e,r)})}function Oy(e,t){return sy($(t),t=>my(e,t))}function ky(){let e=[];return((t,n)=>{switch(t){case Yv:e.slice().forEach(e=>{e(n)});return;case Zv:e.splice(0);return;case Xv:return e.push(n),()=>{let t=e.indexOf(n);t>-1&&e.splice(t,1)}}})}function Ay(e){return sy(ky(),t=>my(e,t))}var jy={singleton:!0};function My(e,t=[],n=jy){let{singleton:r}=n;return{constructor:e,dependencies:t,id:Ny(),singleton:r}}var Ny=()=>Symbol(`id`);function Py(e){let t=new Map,n=({constructor:e,dependencies:r,id:i,singleton:a})=>{if(a&&t.has(i))return t.get(i);let o=e(r.map(e=>n(e)));return a&&t.set(i,o),o};return n(e)}function Fy(...e){let t=ky(),n=Array.from({length:e.length}),r=0,i=2**e.length-1;return e.forEach((e,a)=>{let o=2**a;uy(e,e=>{n[a]=e,r|=o,r===i&&dy(t,n)})}),function(e,a){switch(e){case Zv:fy(t);return;case Xv:return r===i&&a(n),uy(t,a)}}}function Iy(e,t=_y){return Q(e,vy(t))}function Ly(...e){return function(t,n){switch(t){case Zv:return;case Xv:return ay(...e.map(e=>uy(e,n)))}}}var Ry={DEBUG:0,INFO:1,WARN:2,ERROR:3},zy={[Ry.DEBUG]:`debug`,[Ry.ERROR]:`error`,[Ry.INFO]:`log`,[Ry.WARN]:`warn`},By=()=>typeof globalThis>`u`?window:globalThis,Vy=My(()=>{let e=$(Ry.ERROR);return{log:$((t,n,r=Ry.INFO)=>{r>=(By().VIRTUOSO_LOG_LEVEL??py(e))&&console[zy[r]](`%creact-virtuoso: %c%s %o`,`color: #0253b3; font-weight: bold`,`color: initial`,t,n)}),logLevel:e}},[],{singleton:!0});function Hy(e){return`self`in e?e.document.documentElement:e}function Uy(e){let t=Hy(e);return t.ownerDocument.defaultView.getComputedStyle(t).direction===`rtl`}function Wy(e,t){return Uy(e)?-t:t}function Gy(e,t){return Uy(e)?-t:t}function Ky(e,t,n){return qy(e,t,n).callbackRef}function qy(e,t,n){let r=Z.useRef(null),i=e=>{},a=Z.useMemo(()=>typeof ResizeObserver<`u`?new ResizeObserver(t=>{let r=()=>{let n=t[0].target;n.offsetParent!==null&&e(n)};n?r():requestAnimationFrame(r)}):null,[e,n]);return i=e=>{e&&t?(a?.observe(e),r.current=e):(r.current&&a?.unobserve(r.current),r.current=null)},{callbackRef:i,ref:r}}function Jy(e,t,n,r,i,a,o,s,c){return qy(Z.useCallback(n=>{let c=Yy(n.children,t,s?`offsetWidth`:`offsetHeight`,i),l=n.parentElement;for(;l.dataset.virtuosoScroller===void 0;)l=l.parentElement;let u=l.lastElementChild?.dataset.viewportType===`window`,d;u&&(d=l.ownerDocument.defaultView);let f=o?s?o.scrollWidth:o.scrollHeight:u?s?d.document.documentElement.scrollWidth:d.document.documentElement.scrollHeight:s?l.scrollWidth:l.scrollHeight,p=o?s?o.offsetWidth:o.offsetHeight:u?s?d.innerWidth:d.innerHeight:s?l.offsetWidth:l.offsetHeight,m=o?s?Wy(o,o.scrollLeft):o.scrollTop:u?s?Wy(d,d.scrollX||d.document.documentElement.scrollLeft):d.scrollY||d.document.documentElement.scrollTop:s?Wy(l,l.scrollLeft):l.scrollTop;r({scrollHeight:f,scrollTop:Math.max(m,0),viewportHeight:p}),a?.(s?Xy(`column-gap`,getComputedStyle(n).columnGap,i):Xy(`row-gap`,getComputedStyle(n).rowGap,i)),c!==null&&e(c)},[e,t,i,a,o,r,s]),n,c)}function Yy(e,t,n,r){let i=e.length;if(i===0)return null;let a=[];for(let o=0;o<i;o++){let i=e.item(o);if(i.dataset.index===void 0)continue;let s=parseInt(i.dataset.index,10),c=parseFloat(i.dataset.knownSize),l=t(i,n);if(l===0&&r(`Zero-sized element, this should not happen`,{child:i},Ry.ERROR),l===c)continue;let u=a[a.length-1];a.length===0||u.size!==l||u.endIndex!==s-1?a.push({endIndex:s,size:l,startIndex:s}):a[a.length-1].endIndex++}return a}function Xy(e,t,n){return t!==`normal`&&t?.endsWith(`px`)!==!0&&n(`${e} was not resolved to pixel value correctly`,t,Ry.WARN),t===`normal`?0:parseInt(t??`0`,10)}var Zy=typeof document>`u`?Z.useEffect:Z.useLayoutEffect;function Qy(e,t,n){let r=Z.useRef(null),i=Z.useCallback(n=>{if(!n?.offsetParent)return;let i=n.getBoundingClientRect(),a=i.width,s,c;if(t){let e=t.getBoundingClientRect(),n=i.top-e.top;c=e.height-Math.max(0,n),s=n+t.scrollTop}else{let e=o.current.ownerDocument.defaultView;c=e.innerHeight-Math.max(0,i.top),s=i.top+e.scrollY}r.current={listHeight:i.height,offsetTop:s,visibleHeight:c,visibleWidth:a},e(r.current)},[e,t]),{callbackRef:a,ref:o}=qy(i,!0,n),s=Z.useCallback(()=>{i(o.current)},[i,o]);return Z.useEffect(()=>{if(t){t.addEventListener(`scroll`,s);let e=new ResizeObserver(()=>{requestAnimationFrame(s)});return e.observe(t),()=>{t.removeEventListener(`scroll`,s),e.unobserve(t)}}let e=o.current?.ownerDocument.defaultView;return e?.addEventListener(`scroll`,s),e?.addEventListener(`resize`,s),()=>{e?.removeEventListener(`scroll`,s),e?.removeEventListener(`resize`,s)}},[s,t,o]),a}var $y=My(()=>{let e=ky(),t=ky(),n=$(0),r=ky(),i=ky(),a=$(0),o=ky(),s=ky(),c=$(0),l=$(0),u=$(0),d=$(0),f=ky(),p=ky(),m=$(!1),h=$(!1),g=$(!1);return my(Q(e,by(({scrollTop:e})=>e)),t),my(Q(e,by(({scrollHeight:e})=>e)),s),my(t,a),{deviation:n,deviationCommitted:r,fixedFooterHeight:u,fixedHeaderHeight:l,footerHeight:d,headerHeight:c,horizontalDirection:h,scrollBy:p,scrollContainerState:e,scrollHeight:s,scrollingInProgress:m,scrollTo:f,scrollTop:t,skipAnimationFrameInResizeObserver:g,smoothScrollTargetReached:i,statefulScrollTop:a,viewportHeight:o}},[],{singleton:!0}),eb={lvl:0};function tb(e,t){let n=e.length;if(n===0)return[];let{index:r,value:i}=t(e[0]),a=[];for(let o=1;o<n;o++){let{index:n,value:s}=t(e[o]);a.push({end:n-1,start:r,value:i}),r=n,i=s}return a.push({end:1/0,start:r,value:i}),a}function nb(e){return e===eb}function rb(e,t){if(!nb(e))return t===e.k?e.v:t<e.k?rb(e.l,t):rb(e.r,t)}function ib(e,t,n=`k`){if(nb(e))return[-1/0,void 0];if(Number(e[n])===t)return[e.k,e.v];if(Number(e[n])<t){let r=ib(e.r,t,n);return r[0]===-1/0?[e.k,e.v]:r}return ib(e.l,t,n)}function ab(e,t,n){return nb(e)?gb(t,n,1):t===e.k?fb(e,{k:t,v:n}):t<e.k?_b(fb(e,{l:ab(e.l,t,n)})):_b(fb(e,{r:ab(e.r,t,n)}))}function ob(){return eb}function sb(e,t,n){if(nb(e))return[];let r=ib(e,t)[0];return bb(ub(e,r,n))}function cb(e,t){if(nb(e))return eb;let{k:n,l:r,r:i}=e;if(t===n){if(nb(r))return i;if(nb(i))return r;let[t,n]=hb(r);return db(fb(e,{k:t,l:pb(r),v:n}))}return db(t<n?fb(e,{l:cb(r,t)}):fb(e,{r:cb(i,t)}))}function lb(e){return nb(e)?[]:[...lb(e.l),{k:e.k,v:e.v},...lb(e.r)]}function ub(e,t,n){if(nb(e))return[];let{k:r,l:i,r:a,v:o}=e,s=[];return r>t&&(s=s.concat(ub(i,t,n))),r>=t&&r<=n&&s.push({k:r,v:o}),r<=n&&(s=s.concat(ub(a,t,n))),s}function db(e){let{l:t,lvl:n,r}=e;if(r.lvl>=n-1&&t.lvl>=n-1)return e;if(n>r.lvl+1){if(mb(t))return vb(fb(e,{lvl:n-1}));if(!nb(t)&&!nb(t.r))return fb(t.r,{l:fb(t,{r:t.r.l}),lvl:n,r:fb(e,{l:t.r.r,lvl:n-1})});throw Error(`Unexpected empty nodes`)}if(mb(e))return yb(fb(e,{lvl:n-1}));if(!nb(r)&&!nb(r.l)){let t=r.l,i=mb(t)?r.lvl-1:r.lvl;return fb(t,{l:fb(e,{lvl:n-1,r:t.l}),lvl:t.lvl+1,r:yb(fb(r,{l:t.r,lvl:i}))})}throw Error(`Unexpected empty nodes`)}function fb(e,t){return gb(t.k===void 0?e.k:t.k,t.v===void 0?e.v:t.v,t.lvl===void 0?e.lvl:t.lvl,t.l===void 0?e.l:t.l,t.r===void 0?e.r:t.r)}function pb(e){return nb(e.r)?e.l:db(fb(e,{r:pb(e.r)}))}function mb(e){return nb(e)||e.lvl>e.r.lvl}function hb(e){return nb(e.r)?[e.k,e.v]:hb(e.r)}function gb(e,t,n,r=eb,i=eb){return{k:e,l:r,lvl:n,r:i,v:t}}function _b(e){return yb(vb(e))}function vb(e){let{l:t}=e;return!nb(t)&&t.lvl===e.lvl?fb(t,{r:fb(e,{l:t.r})}):e}function yb(e){let{lvl:t,r:n}=e;return!nb(n)&&!nb(n.r)&&n.lvl===t&&n.r.lvl===t?fb(n,{l:fb(e,{r:n.l}),lvl:t+1}):e}function bb(e){return tb(e,({k:e,v:t})=>({index:e,value:t}))}function xb(e,t){return!!(e&&e.startIndex===t.startIndex&&e.endIndex===t.endIndex)}function Sb(e,t){return!!(e&&e[0]===t[0]&&e[1]===t[1])}var Cb=My(()=>({recalcInProgress:$(!1)}),[],{singleton:!0});function wb(e,t,n){return e[Tb(e,t,n)]}function Tb(e,t,n,r=0){let i=e.length-1;for(;r<=i;){let a=Math.floor((r+i)/2),o=e[a],s=n(o,t);if(s===0)return a;if(s===-1){if(i-r<2)return a-1;i=a-1}else{if(i===r)return a;r=a+1}}throw Error(`Failed binary finding record in array - ${e.join(`,`)}, searched for ${t}`)}function Eb(e,t,n,r){let i=Tb(e,t,r),a=Tb(e,n,r,i);return e.slice(i,a+1)}function Db(e,t){return Math.round(e.getBoundingClientRect()[t])}function Ob(e){return!nb(e.groupOffsetTree)}function kb({index:e},t){return t===e?0:t<e?-1:1}function Ab(){return{groupIndices:[],groupOffsetTree:ob(),lastIndex:0,lastOffset:0,lastSize:0,offsetTree:[],sizeTree:ob()}}function jb(e,t){let n=nb(e)?0:1/0;for(let r of t){let{endIndex:t,size:i,startIndex:a}=r;if(n=Math.min(n,a),nb(e)){e=ab(e,0,i);continue}let o=sb(e,a-1,t+1);if(o.some(Ub(r)))continue;let s=!1,c=!1;for(let{end:n,start:r,value:a}of o)s?(t>=r||i===a)&&(e=cb(e,r)):(c=a!==i,s=!0),n>t&&t>=r&&a!==i&&(e=ab(e,t+1,a));c&&(e=ab(e,a,i))}return[e,n]}function Mb(e){return e.groupIndex!==void 0}function Nb({offset:e},t){return t===e?0:t<e?-1:1}function Pb(e,t,n){if(t.length===0)return 0;let{index:r,offset:i,size:a}=wb(t,e,kb),o=e-r,s=a*o+(o-1)*n+i;return s>0?s+n:s}function Fb(e,t){if(!Ob(t))return e;let n=0;for(;t.groupIndices[n]<=e+n;)n++;return e+n}function Ib(e,t,n){if(Mb(e))return t.groupIndices[e.groupIndex]+1;let r=Fb(e.index===`LAST`?n:e.index,t);return r=Math.max(0,Math.min(n,r)),r}function Lb(e,t,n,r=0){return r>0&&(t=Math.max(t,wb(e,r,kb).offset)),tb(Eb(e,t,n,Nb),Hb)}function Rb(e,[t,n,r,i]){t.length>0&&r(`received item sizes`,t,Ry.DEBUG);let a=e.sizeTree,o=a,s=0;if(n.length>0&&nb(a)&&t.length===2){let e=t[0].size,r=t[1].size;o=n.reduce((t,n)=>ab(ab(t,n,e),n+1,r),o)}else[o,s]=jb(o,t);if(o===a)return e;let{lastIndex:c,lastOffset:l,lastSize:u,offsetTree:d}=Vb(e.offsetTree,s,o,i);return{groupIndices:n,groupOffsetTree:n.reduce((e,t)=>ab(e,t,Pb(t,d,i)),ob()),lastIndex:c,lastOffset:l,lastSize:u,offsetTree:d,sizeTree:o}}function zb(e){return lb(e).map(({k:e,v:t},n,r)=>{let i=r[n+1];return{endIndex:i===void 0?1/0:i.k-1,size:t,startIndex:e}})}function Bb(e,t){let n=0,r=0;for(;n<e;)n+=t[r+1]-t[r]-1,r++;return r-(n===e?0:1)}function Vb(e,t,n,r){let i=e,a=0,o=0,s=0,c=0;if(t===0)i=[];else{c=Tb(i,t-1,kb),s=i[c].offset;let e=ib(n,t-1);a=e[0],o=e[1],i.length&&i[c].size===ib(n,t)[1]&&--c,i=i.slice(0,c+1)}for(let{start:e,value:c}of sb(n,t,1/0)){let t=e-a,n=t*o+s+t*r;i.push({index:e,offset:n,size:c}),a=e,s=n,o=c}return{lastIndex:a,lastOffset:s,lastSize:o,offsetTree:i}}function Hb(e){return{index:e.index,value:e}}function Ub(e){let{endIndex:t,size:n,startIndex:r}=e;return e=>e.start===r&&(e.end===t||e.end===1/0)&&e.value===n}var Wb={offsetHeight:`height`,offsetWidth:`width`},Gb=My(([{log:e},{recalcInProgress:t}])=>{let n=ky(),r=ky(),i=Oy(r,0),a=ky(),o=ky(),s=$(0),c=$([]),l=$(void 0),u=$(void 0),d=$(void 0),f=$(void 0),p=$((e,t)=>Db(e,Wb[t])),m=$(void 0),h=$(0),g=Ab(),_=Oy(Q(n,Ty(c,e,h),Sy(Rb,g),vy()),g),v=Oy(Q(c,vy(),Sy((e,t)=>({current:t,prev:e.current}),{current:[],prev:[]}),by(({prev:e})=>e)),[]);my(Q(c,yy(e=>e.length>0),Ty(_,h),by(([e,t,n])=>{let r=e.reduce((e,r,i)=>ab(e,r,Pb(r,t.offsetTree,n)||i),ob());return{...t,groupIndices:e,groupOffsetTree:r}})),_),my(Q(r,Ty(_),yy(([e,{lastIndex:t}])=>e<t),by(([e,{lastIndex:t,lastSize:n}])=>[{endIndex:t,size:n,startIndex:e}])),n),my(l,u);let y=Oy(Q(l,by(e=>e===void 0)),!0);my(Q(u,yy(e=>e!==void 0&&nb(py(_).sizeTree)),by(e=>{let t=py(d),n=py(c).length>0;return t!==void 0&&t!==0?n?[{endIndex:0,size:t,startIndex:0},{endIndex:1,size:e,startIndex:1}]:[]:[{endIndex:0,size:e,startIndex:0}]})),n),my(Q(f,yy(e=>e!==void 0&&e.length>0&&nb(py(_).sizeTree)),by(e=>{let t=[],n=e[0],r=0;for(let i=1;i<e.length;i++){let a=e[i];a!==n&&(t.push({endIndex:i-1,size:n,startIndex:r}),n=a,r=i)}return t.push({endIndex:e.length-1,size:n,startIndex:r}),t})),n),my(Q(c,Ty(d,u),yy(([,e,t])=>e!==void 0&&t!==void 0),by(([e,t,n])=>{let r=[];for(let i=0;i<e.length;i++){let a=e[i],o=e[i+1];r.push({startIndex:a,endIndex:a,size:t}),o!==void 0&&r.push({startIndex:a+1,endIndex:o-1,size:n})}return r})),n);let b=Ay(Q(n,Ty(_),Sy(({sizes:e},[t,n])=>({changed:n!==e,sizes:n}),{changed:!1,sizes:g}),by(e=>e.changed)));uy(Q(s,Sy((e,t)=>({diff:e.prev-t,prev:t}),{diff:0,prev:0}),by(e=>e.diff)),e=>{let{groupIndices:n}=py(_);if(e>0)dy(t,!0),dy(a,e+Bb(e,n));else if(e<0){let t=py(v);t.length>0&&(e-=Bb(-e,t)),dy(o,e)}}),uy(Q(s,Ty(e)),([e,t])=>{e<0&&t("`firstItemIndex` prop should not be set to less than zero. If you don't know the total count, just use a very high value",{firstItemIndex:s},Ry.ERROR)});let x=Ay(a);my(Q(a,Ty(_),by(([e,t])=>{let n=t.groupIndices.length>0,r=[],i=t.lastSize;if(n){let n=rb(t.sizeTree,0),a=0,o=0;for(;a<e;){let e=t.groupIndices[o],s=t.groupIndices.length===o+1?1/0:t.groupIndices[o+1]-e-1;r.push({endIndex:e,size:n,startIndex:e}),r.push({endIndex:e+1+s-1,size:i,startIndex:e+1}),o++,a+=s+1}let s=lb(t.sizeTree);return a!==e&&s.shift(),s.reduce((t,{k:n,v:r})=>{let i=t.ranges;return t.prevSize!==0&&(i=[...t.ranges,{endIndex:n+e-1,size:t.prevSize,startIndex:t.prevIndex}]),{prevIndex:n+e,prevSize:r,ranges:i}},{prevIndex:e,prevSize:0,ranges:r}).ranges}return lb(t.sizeTree).reduce((t,{k:n,v:r})=>({prevIndex:n+e,prevSize:r,ranges:[...t.ranges,{endIndex:n+e-1,size:t.prevSize,startIndex:t.prevIndex}]}),{prevIndex:0,prevSize:i,ranges:[]}).ranges})),n);let S=Ay(Q(o,Ty(_,h),by(([e,{offsetTree:t},n])=>Pb(-e,t,n))));return my(Q(o,Ty(_,h),by(([e,t,n])=>{if(t.groupIndices.length>0){if(nb(t.sizeTree))return t;let r=ob(),i=py(v),a=0,o=0,s=0;for(;a<-e;){s=i[o];let e=i[o+1]-s-1;o++,a+=e+1}if(r=lb(t.sizeTree).reduce((t,{k:n,v:r})=>ab(t,Math.max(0,n+e),r),r),a!==-e){let n=rb(t.sizeTree,s);r=ab(r,0,n);let i=ib(t.sizeTree,-e+1)[1];r=ab(r,1,i)}return{...t,sizeTree:r,...Vb(t.offsetTree,0,r,n)}}let r=lb(t.sizeTree).reduce((t,{k:n,v:r})=>ab(t,Math.max(0,n+e),r),ob());return{...t,sizeTree:r,...Vb(t.offsetTree,0,r,n)}})),_),{beforeUnshiftWith:x,data:m,defaultItemSize:u,firstItemIndex:s,fixedItemSize:l,fixedGroupSize:d,gap:h,groupIndices:c,heightEstimates:f,itemSize:p,listRefresh:b,shiftWith:o,shiftWithOffset:S,sizeRanges:n,sizes:_,statefulTotalCount:i,totalCount:r,trackItemSizes:y,unshiftWith:a}},ly(Vy,Cb),{singleton:!0});function Kb(e){return e.reduce((e,t)=>(e.groupIndices.push(e.totalCount),e.totalCount+=t+1,e),{groupIndices:[],totalCount:0})}var qb=My(([{groupIndices:e,sizes:t,totalCount:n},{headerHeight:r,scrollTop:i}])=>{let a=ky(),o=ky(),s=Ay(Q(a,by(Kb)));return my(Q(s,by(e=>e.totalCount)),n),my(Q(s,by(e=>e.groupIndices)),e),my(Q(Fy(i,t,r),yy(([e,t])=>Ob(t)),by(([e,t,n])=>ib(t.groupOffsetTree,Math.max(e-n,0),`v`)[0]),vy(),by(e=>[e])),o),{groupCounts:a,topItemsIndexes:o}},ly(Gb,$y)),Jb=My(([{log:e}])=>{let t=$(!1),n=Ay(Q(t,yy(e=>e),vy()));return uy(t,t=>{t&&py(e)(`props updated`,{},Ry.DEBUG)}),{didMount:n,propsReady:t}},ly(Vy),{singleton:!0}),Yb=typeof document<`u`&&`scrollBehavior`in document.documentElement.style;function Xb(e){let t=typeof e==`number`?{index:e}:{...e};return t.align||=`start`,(!t.behavior||!Yb)&&(t.behavior=`auto`),t.offset===void 0&&(t.offset=0),t}var Zb=My(([{gap:e,listRefresh:t,sizes:n,totalCount:r},{fixedFooterHeight:i,fixedHeaderHeight:a,footerHeight:o,headerHeight:s,scrollingInProgress:c,scrollTo:l,smoothScrollTargetReached:u,viewportHeight:d},{log:f}])=>{let p=ky(),m=ky(),h=$(0),g=null,_=null,v=null;function y(){g!==null&&(g(),g=null),v!==null&&(v(),v=null),_&&=(clearTimeout(_),null),dy(c,!1)}return my(Q(p,Ty(n,d,r,h,s,o,f),Ty(e,a,i),by(([[e,n,r,i,a,o,s,l],d,f,h])=>{let b=Xb(e),{align:x,behavior:S,offset:C}=b,w=i-1,T=Ib(b,n,w),E=Pb(T,n.offsetTree,d)+o;x===`end`?(E+=f+ib(n.sizeTree,T)[1]-r+h,T===w&&(E+=s)):x===`center`?E+=(f+ib(n.sizeTree,T)[1]-r+h)/2:E-=a,C!==void 0&&C!==0&&(E+=C);let D=t=>{y(),t?(l(`retrying to scroll to`,{location:e},Ry.DEBUG),dy(p,e)):(dy(m,!0),l(`list did not change, scroll successful`,{},Ry.DEBUG))};if(y(),S===`smooth`){let e=!1;v=uy(t,t=>{e||=t}),g=hy(u,()=>{D(e)})}else g=hy(Q(t,Qb(150)),D);return _=setTimeout(()=>{y()},1200),dy(c,!0),l(`scrolling from index to`,{behavior:S,index:T,top:E},Ry.DEBUG),{behavior:S,top:E}})),l),{scrollTargetReached:m,scrollToIndex:p,topListHeight:h}},ly(Gb,$y,Vy),{singleton:!0});function Qb(e){return t=>{let n=setTimeout(()=>{t(!1)},e);return e=>{e&&(t(!0),clearTimeout(n))}}}function $b(e,t){e===0?t():requestAnimationFrame(()=>{$b(e-1,t)})}function ex(e,t){if(e===void 0)return 0;let n=t-1,r=typeof e==`number`?e:e.index===`LAST`?n:e.index;return Math.max(0,Math.min(r,n))}function tx(e){return e===void 0?!0:typeof e==`number`?e===0:e.index===0&&(e.align===void 0||e.align===`start`)&&(e.offset===void 0||e.offset===0)}var nx=My(([{defaultItemSize:e,listRefresh:t,sizes:n},{scrollTop:r},{scrollTargetReached:i,scrollToIndex:a},{didMount:o}])=>{let s=$(!0),c=$(0),l=$(!0);return my(Q(o,Ty(c),yy(([e,t])=>!tx(t)),xy(!1)),s),my(Q(o,Ty(c),yy(([e,t])=>!tx(t)),xy(!1)),l),uy(Q(Fy(t,o),Ty(s,n,e,l),yy(([[,e],t,{sizeTree:n},r,i])=>e&&(!nb(n)||iy(r))&&!t&&!i),Ty(c)),([,e])=>{if(e===void 0){dy(s,!0),dy(l,!0);return}hy(i,()=>{dy(l,!0)}),$b(4,()=>{hy(r,()=>{dy(s,!0)}),dy(a,e)})}),{initialItemFinalLocationReached:l,initialTopMostItemIndex:c,scrolledToInitialItem:s}},ly(Gb,$y,Zb,Jb),{singleton:!0});function rx(e,t){return Math.abs(e-t)<1.01}var ix=`up`,ax=`down`,ox=`none`,sx={atBottom:!1,notAtBottomBecause:`NOT_SHOWING_LAST_ITEM`,state:{offsetBottom:0,scrollHeight:0,scrollTop:0,viewportHeight:0}},cx=0,lx=My(([{footerHeight:e,headerHeight:t,scrollBy:n,scrollContainerState:r,scrollTop:i,viewportHeight:a}])=>{let o=$(!1),s=$(!0),c=ky(),l=ky(),u=$(4),d=$(cx),f=Oy(Q(Ly(Q(Iy(i),Cy(1),xy(!0)),Q(Iy(i),Cy(1),xy(!1),gy(100))),vy()),!1),p=Oy(Q(Ly(Q(n,xy(!0)),Q(n,xy(!1),gy(200))),vy()),!1);my(Q(Fy(Iy(i),Iy(d)),by(([e,t])=>e<=t),vy()),s),my(Q(s,wy(50)),l);let m=Ay(Q(Fy(r,Iy(a),Iy(t),Iy(e),Iy(u)),Sy((e,[{scrollHeight:t,scrollTop:n},r,i,a,o])=>{let s=n+r-t>-o,c={scrollHeight:t,scrollTop:n,viewportHeight:r};if(s){let t,r;return n>e.state.scrollTop?(t=`SCROLLED_DOWN`,r=e.state.scrollTop-n):(t=`SIZE_DECREASED`,r=e.state.scrollTop-n||e.scrollTopDelta),{atBottom:!0,atBottomBecause:t,scrollTopDelta:r,state:c}}let l;return l=c.scrollHeight>e.state.scrollHeight?`SIZE_INCREASED`:r<e.state.viewportHeight?`VIEWPORT_HEIGHT_DECREASING`:n<e.state.scrollTop?`SCROLLING_UPWARDS`:`NOT_FULLY_SCROLLED_TO_LAST_ITEM_BOTTOM`,{atBottom:!1,notAtBottomBecause:l,state:c}},sx),vy((e,t)=>e!==void 0&&e.atBottom===t.atBottom))),h=Oy(Q(r,Sy((e,{scrollHeight:t,scrollTop:n,viewportHeight:r})=>{if(!rx(e.scrollHeight,t)){let i=t-(n+r)<1;return e.scrollTop!==n&&i?{changed:!0,jump:e.scrollTop-n,scrollHeight:t,scrollTop:n}:{changed:!0,jump:0,scrollHeight:t,scrollTop:n}}return{changed:!1,jump:0,scrollHeight:t,scrollTop:n}},{changed:!1,jump:0,scrollHeight:0,scrollTop:0}),yy(e=>e.changed),by(e=>e.jump)),0);my(Q(m,by(e=>e.atBottom)),o),my(Q(o,wy(50)),c);let g=$(ax);my(Q(r,by(({scrollTop:e})=>e),vy(),Sy((e,t)=>py(p)?{direction:e.direction,prevScrollTop:t}:{direction:t<e.prevScrollTop?ix:ax,prevScrollTop:t},{direction:ax,prevScrollTop:0}),by(e=>e.direction)),g),my(Q(r,wy(50),xy(ox)),g);let _=$(0);return my(Q(f,yy(e=>!e),xy(0)),_),my(Q(i,wy(100),Ty(f),yy(([e,t])=>t),Sy(([e,t],[n])=>[t,n],[0,0]),by(([e,t])=>t-e)),_),{atBottomState:m,atBottomStateChange:c,atBottomThreshold:u,atTopStateChange:l,atTopThreshold:d,isAtBottom:o,isAtTop:s,isScrolling:f,lastJumpDueToItemResize:h,scrollDirection:g,scrollVelocity:_}},ly($y)),ux=`top`,dx=`bottom`,fx=`none`;function px(e,t,n){return typeof e==`number`?n===ix&&t===ux||n===ax&&t===dx?e:0:n===ix?t===ux?e.main:e.reverse:t===dx?e.main:e.reverse}function mx(e,t){return typeof e==`number`?e:e[t]??0}var hx=My(([{deviation:e,fixedHeaderHeight:t,headerHeight:n,scrollTop:r,viewportHeight:i}])=>{let a=ky(),o=$(0),s=$(0),c=$(0);return{increaseViewportBy:s,listBoundary:a,overscan:c,topListHeight:o,visibleRange:Oy(Q(Fy(Iy(r),Iy(i),Iy(n),Iy(a,Sb),Iy(c),Iy(o),Iy(t),Iy(e),Iy(s)),by(([e,t,n,[r,i],a,o,s,c,l])=>{let u=e-c,d=o+s,f=Math.max(n-u,0),p=fx,m=mx(l,ux),h=mx(l,dx);return r-=c,r+=n+s,i+=n+s,i-=c,r>e+d-m&&(p=ix),i<e-f+t+h&&(p=ax),p===fx?null:[Math.max(u-n-px(a,ux,p)-m,0),u-f-s+t+px(a,dx,p)+h]}),yy(e=>e!==null),vy(Sb)),[0,0])}},ly($y),{singleton:!0});function gx(e,t,n){if(Ob(t)){let r=Fb(e,t);return[{index:ib(t.groupOffsetTree,r)[0],offset:0,size:0},{data:n?.[0],index:r,offset:0,size:0}]}return[{data:n?.[0],index:e,offset:0,size:0}]}var _x={bottom:0,firstItemIndex:0,items:[],offsetBottom:0,offsetTop:0,top:0,topItems:[],topListHeight:0,totalCount:0};function vx(e,t,n,r,i,a){let{lastIndex:o,lastOffset:s,lastSize:c}=i,l=0,u=0;if(e.length>0){l=e[0].offset;let t=e[e.length-1];u=t.offset+t.size}let d=n-o,f=s+d*c+(d-1)*r,p=l,m=f-u;return{bottom:u,firstItemIndex:a,items:bx(e,i,a),offsetBottom:m,offsetTop:l,top:p,topItems:bx(t,i,a),topListHeight:t.reduce((e,t)=>t.size+e,0),totalCount:n}}function yx(e,t,n,r,i,a){let o=0;if(n.groupIndices.length>0)for(let t of n.groupIndices){if(t-o>=e)break;o++}let s=e+o,c=a!==void 0,l=a?.length??0,u=ex(t,c?l:s),d=c?Math.max(0,Math.min(s,l-u)):s;return vx(Array.from({length:d}).map((e,t)=>({data:a?.[t+u],index:t+u,offset:0,size:0})),[],d,i,n,r)}function bx(e,t,n){if(e.length===0)return[];if(!Ob(t))return e.map(e=>({...e,index:e.index+n,originalIndex:e.index}));let r=e[0].index,i=e[e.length-1].index,a=[],o=sb(t.groupOffsetTree,r,i),s,c=0;for(let r of e){(!s||s.end<r.index)&&(s=o.shift(),c=t.groupIndices.indexOf(s.start));let e;e=r.index===s.start?{index:c,type:`group`}:{groupIndex:c,index:r.index-(c+1)+n},a.push({...e,data:r.data,offset:r.offset,originalIndex:r.index,size:r.size})}return a}function xx(e,t){return e===void 0?0:typeof e==`number`?e:e[t]??0}var Sx=My(([{data:e,firstItemIndex:t,gap:n,sizes:r,totalCount:i},a,{listBoundary:o,topListHeight:s,visibleRange:c},{initialTopMostItemIndex:l,scrolledToInitialItem:u},{topListHeight:d},f,{didMount:p},{recalcInProgress:m}])=>{let h=$([]),g=$(0),_=ky(),v=$(0);my(a.topItemsIndexes,h);let y=Oy(Q(Fy(p,m,Iy(c,Sb),Iy(i),Iy(r),Iy(l),u,Iy(h),Iy(t),Iy(n),Iy(v),e,Iy(g)),yy(([e,t,,n,,,,,,,,r])=>{let i=r!==void 0&&r.length!==n;return e&&!t&&!i}),by(([,,[e,t],n,r,i,a,o,s,c,l,u,d])=>{let f=r,{offsetTree:p,sizeTree:m}=f;if(n===0)return{..._x,totalCount:n};if(e===0&&t===0)return d===0?{..._x,totalCount:n}:yx(d,i,r,s,c,u);if(nb(m))return d>0?null:vx(gx(ex(i,n),f,u),[],n,c,f,s);let h=[];if(o.length>0){let e=o[0],t=o[o.length-1],n=0;for(let r of sb(m,e,t)){let i=r.value,a=Math.max(r.start,e),o=Math.min(r.end,t);for(let e=a;e<=o;e++)h.push({data:u?.[e],index:e,offset:n,size:i}),n+=i}}if(!a)return vx([],h,n,c,f,s);let g=o.length>0?o[o.length-1]+1:0,_=Lb(p,e,t,g);if(_.length===0)return null;let v=n-1,y=sy([],n=>{for(let r of _){let i=r.value,a=i.offset,o=r.start,s=i.size;if(i.offset<e){o+=Math.floor((e-i.offset+c)/(s+c));let t=o-r.start;a+=t*s+t*c}o<g&&(a+=(g-o)*s,o=g);let l=Math.min(r.end,v);for(let e=o;e<=l&&!(a>=t);e++)n.push({data:u?.[e],index:e,offset:a,size:s}),a+=s+c}}),b=xx(l,ux),x=xx(l,dx);if(y.length>0&&(b>0||x>0)){let e=y[0],t=y[y.length-1];if(b>0&&e.index>g){let t=Math.min(b,e.index-g),n=[],r=e.offset;for(let i=e.index-1;i>=e.index-t;i--){let t=sb(m,i,i)[0]?.value??e.size;r-=t+c,n.unshift({data:u?.[i],index:i,offset:r,size:t})}y.unshift(...n)}if(x>0&&t.index<v){let e=Math.min(x,v-t.index),n=t.offset+t.size+c;for(let r=t.index+1;r<=t.index+e;r++){let e=sb(m,r,r)[0]?.value??t.size;y.push({data:u?.[r],index:r,offset:n,size:e}),n+=e+c}}}return vx(y,h,n,c,f,s)}),yy(e=>e!==null),vy()),_x);my(Q(e,yy(iy),by(e=>e?.length)),i),my(Q(y,by(e=>e.topListHeight)),d),my(d,s),my(Q(y,by(e=>[e.top,e.bottom])),o),my(Q(y,by(e=>e.items)),_);let b=Ay(Q(y,yy(({items:e})=>e.length>0),Ty(i,e),yy(([{items:e},t])=>e[e.length-1].originalIndex===t-1),by(([,e,t])=>[e-1,t]),vy(Sb),by(([e])=>e))),x=Ay(Q(y,wy(200),yy(({items:e,topItems:t})=>e.length>0&&e[0].originalIndex===t.length),by(({items:e})=>e[0].index),vy()));return{endReached:b,initialItemCount:g,itemsRendered:_,listState:y,minOverscanItemCount:v,rangeChanged:Ay(Q(y,yy(({items:e})=>e.length>0),by(({items:e})=>{let t=0,n=e.length-1;for(;e[t].type===`group`&&t<n;)t++;for(;e[n].type===`group`&&n>t;)n--;return{endIndex:e[n].index,startIndex:e[t].index}}),vy(xb))),startReached:x,topItemsIndexes:h,...f}},ly(Gb,qb,hx,nx,Zb,lx,Jb,Cb),{singleton:!0}),Cx=My(([{fixedFooterHeight:e,fixedHeaderHeight:t,footerHeight:n,headerHeight:r},{listState:i}])=>{let a=ky(),o=Oy(Q(Fy(n,e,r,t,i),by(([e,t,n,r,i])=>e+t+n+r+i.offsetBottom+i.bottom)),0);return my(Iy(o),a),{totalListHeight:o,totalListHeightChanged:a}},ly($y,Sx),{singleton:!0}),wx=My(([{viewportHeight:e},{totalListHeight:t}])=>{let n=$(!1);return{alignToBottom:n,paddingTopAddition:Oy(Q(Fy(n,e,t),yy(([e])=>e),by(([,e,t])=>Math.max(0,e-t)),wy(0),vy()),0)}},ly($y,Cx),{singleton:!0}),Tx=My(()=>({context:$(null)})),Ex=({itemBottom:e,itemTop:t,locationParams:{align:n,behavior:r,...i},viewportBottom:a,viewportTop:o})=>t<o?{...i,align:n??`start`,...r===void 0?{}:{behavior:r}}:e>a?{...i,align:n??`end`,...r===void 0?{}:{behavior:r}}:null,Dx=My(([{gap:e,sizes:t,totalCount:n},{fixedFooterHeight:r,fixedHeaderHeight:i,headerHeight:a,scrollingInProgress:o,scrollTop:s,viewportHeight:c},{scrollToIndex:l}])=>{let u=ky();return my(Q(u,Ty(t,c,n,a,i,r,s),Ty(e),by(([[e,t,n,r,i,a,s,c],l])=>{let{calculateViewLocation:u=Ex,done:d,...f}=e,p=Ib(e,t,r-1),m=Pb(p,t.offsetTree,l)+i+a,h=m+ib(t.sizeTree,p)[1],g=c+a,_=u({itemBottom:h,itemTop:m,locationParams:f,viewportBottom:c+n-s,viewportTop:g});return _===null?d?.():d&&hy(Q(o,yy(e=>!e),Cy(py(o)?1:2)),d),_}),yy(e=>e!==null)),l),{scrollIntoView:u}},ly(Gb,$y,Zb,Sx,Vy),{singleton:!0});function Ox(e){return e===!1?!1:e===`smooth`?`smooth`:`auto`}var kx=(e,t)=>typeof e==`function`?Ox(e(t)):t&&Ox(e),Ax=My(([{listRefresh:e,totalCount:t,fixedItemSize:n,data:r},{atBottomState:i,isAtBottom:a},{scrollToIndex:o},{scrolledToInitialItem:s},{didMount:c,propsReady:l},{log:u},{scrollingInProgress:d},{context:f},{scrollIntoView:p}])=>{let m=$(!1),h=ky(),g=null;function _(e){dy(o,{align:`end`,behavior:e,index:`LAST`})}uy(Q(Fy(Q(Iy(t),Cy(1)),c),Ty(Iy(m),a,s,d),by(([[e,t],n,r,i,a])=>{let o=t&&i,s=`auto`;return o&&(s=kx(n,r||a),o&&=s!==!1),{followOutputBehavior:s,shouldFollow:o,totalCount:e}}),yy(({shouldFollow:e})=>e)),({followOutputBehavior:t,totalCount:r})=>{g!==null&&(g(),g=null),py(n)===void 0?g=hy(e,()=>{py(u)(`following output to `,{totalCount:r},Ry.DEBUG),_(t),g=null}):requestAnimationFrame(()=>{py(u)(`following output to `,{totalCount:r},Ry.DEBUG),_(t)})});function v(e){let t=hy(i,t=>{e&&!t.atBottom&&t.notAtBottomBecause===`SIZE_INCREASED`&&g===null&&(py(u)(`scrolling to bottom due to increased size`,{},Ry.DEBUG),_(`auto`))});setTimeout(t,100)}uy(Q(Fy(Iy(m),t,l),yy(([e,,t])=>e!==!1&&t),Sy(({value:e},[,t])=>({refreshed:e===t,value:t}),{refreshed:!1,value:0}),yy(({refreshed:e})=>e),Ty(m,t)),([,e])=>{py(s)&&v(e!==!1)}),uy(h,()=>{v(py(m)!==!1)}),uy(Fy(Iy(m),i),([e,t])=>{e!==!1&&!t.atBottom&&t.notAtBottomBecause===`VIEWPORT_HEIGHT_DECREASING`&&_(`auto`)});let y=$(null),b=ky();return my(Ly(Q(Iy(r),by(e=>e?.length??0)),Q(Iy(t))),b),uy(Q(Fy(Q(b,Cy(1)),c),Ty(Iy(y),s,d,f),by(([[e,t],n,r,i,a])=>t&&r&&n?.({context:a,totalCount:e,scrollingInProgress:i})),yy(e=>!!e),wy(0)),t=>{g!==null&&(g(),g=null),py(n)===void 0?g=hy(e,()=>{py(u)(`scrolling into view`,{}),dy(p,t),g=null}):requestAnimationFrame(()=>{py(u)(`scrolling into view`,{}),dy(p,t)})}),{autoscrollToBottom:h,followOutput:m,scrollIntoViewOnChange:y}},ly(Gb,lx,Zb,nx,Jb,Vy,$y,Tx,Dx)),jx=My(([{data:e,firstItemIndex:t,gap:n,sizes:r},{initialTopMostItemIndex:i},{initialItemCount:a,listState:o},{didMount:s}])=>(my(Q(s,Ty(a),yy(([,e])=>e!==0),Ty(i,r,t,n,e),by(([[,e],t,n,r,i,a])=>yx(e,t,n,r,i,a))),o),{}),ly(Gb,nx,Sx,Jb),{singleton:!0}),Mx=My(([{didMount:e},{scrollTo:t},{listState:n}])=>{let r=$(0);return uy(Q(e,Ty(r),yy(([,e])=>e!==0),by(([,e])=>({top:e}))),e=>{hy(Q(n,Cy(1),yy(e=>e.items.length>1)),()=>{requestAnimationFrame(()=>{dy(t,e)})})}),{initialScrollTop:r}},ly(Jb,$y,Sx),{singleton:!0}),Nx=My(([{scrollVelocity:e}])=>{let t=$(!1),n=ky(),r=$(!1);return my(Q(e,Ty(r,t,n),yy(([e,t])=>t!==!1&&t!==void 0),by(([e,t,n,r])=>{let{enter:i,exit:a}=t;if(n){if(a(e,r))return!1}else if(i(e,r))return!0;return n}),vy()),t),uy(Q(Fy(t,e,n),Ty(r)),([[e,t,n],r])=>{e&&r!==!1&&r!==void 0&&r.change&&r.change(t,n)}),{isSeeking:t,scrollSeekConfiguration:r,scrollSeekRangeChanged:n,scrollVelocity:e}},ly(lx),{singleton:!0}),Px=My(([{scrollContainerState:e,scrollTo:t}])=>{let n=ky(),r=ky(),i=ky(),a=$(!1),o=$(void 0);return my(Q(Fy(n,r),by(([{scrollTop:e,viewportHeight:t},{offsetTop:n,listHeight:r}])=>({scrollHeight:r,scrollTop:Math.max(0,e-n),viewportHeight:t}))),e),my(Q(t,Ty(r),by(([e,{offsetTop:t}])=>({...e,top:e.top+t}))),i),{customScrollParent:o,useWindowScroll:a,windowScrollContainerState:n,windowScrollTo:i,windowViewportRect:r}},ly($y)),Fx=My(([{sizeRanges:e,sizes:t},{headerHeight:n,scrollTop:r},{initialTopMostItemIndex:i},{didMount:a},{useWindowScroll:o,windowScrollContainerState:s,windowViewportRect:c}])=>{let l=ky(),u=$(void 0),d=$(null),f=$(null);return my(s,d),my(c,f),uy(Q(l,Ty(t,r,o,d,f,n)),([e,t,n,r,i,a,o])=>{let s=zb(t.sizeTree);r&&i!==null&&a!==null&&(n=i.scrollTop-a.offsetTop),n-=o,e({ranges:s,scrollTop:n})}),my(Q(u,yy(iy),by(Ix)),i),my(Q(a,Ty(u),yy(([,e])=>e!==void 0),vy(),by(([,e])=>e.ranges)),e),{getState:l,restoreStateFrom:u}},ly(Gb,$y,nx,Jb,Px));function Ix(e){return{align:`start`,index:0,offset:e.scrollTop}}var Lx=My(([{topItemsIndexes:e}])=>{let t=$(0);return my(Q(t,yy(e=>e>=0),by(e=>Array.from({length:e}).map((e,t)=>t))),e),{topItemCount:t}},ly(Sx));function Rx(e){let t=!1,n;return(()=>(t||(t=!0,n=e()),n))}var zx=Rx(()=>/iP(ad|od|hone)/i.test(navigator.userAgent)&&/WebKit/i.test(navigator.userAgent)),Bx=My(([{data:e,defaultItemSize:t,firstItemIndex:n,fixedItemSize:r,fixedGroupSize:i,gap:a,groupIndices:o,heightEstimates:s,itemSize:c,sizeRanges:l,sizes:u,statefulTotalCount:d,totalCount:f,trackItemSizes:p},{initialItemFinalLocationReached:m,initialTopMostItemIndex:h,scrolledToInitialItem:g},_,v,y,b,{scrollToIndex:x},S,{topItemCount:C},{groupCounts:w},T])=>{let{listState:E,minOverscanItemCount:D,topItemsIndexes:O,rangeChanged:k,...A}=b;return my(k,T.scrollSeekRangeChanged),my(Q(Fy(T.windowViewportRect,_.headerHeight,_.fixedHeaderHeight),by(([e,t,n])=>Math.max(t+n+1,e.visibleHeight))),_.viewportHeight),{data:e,defaultItemHeight:t,firstItemIndex:n,fixedItemHeight:r,fixedGroupHeight:i,gap:a,groupCounts:w,heightEstimates:s,initialItemFinalLocationReached:m,initialTopMostItemIndex:h,scrolledToInitialItem:g,sizeRanges:l,topItemCount:C,topItemsIndexes:O,totalCount:f,...y,groupIndices:o,itemSize:c,listState:E,minOverscanItemCount:D,scrollToIndex:x,statefulTotalCount:d,trackItemSizes:p,rangeChanged:k,...A,...T,..._,sizes:u,...v}},ly(Gb,nx,$y,Fx,Ax,Sx,Zb,My(([{deviation:e,deviationCommitted:t,scrollBy:n,scrollingInProgress:r,scrollTop:i},{isAtBottom:a,isScrolling:o,lastJumpDueToItemResize:s,scrollDirection:c},{listState:l},{beforeUnshiftWith:u,gap:d,shiftWithOffset:f,sizes:p},{log:m},{recalcInProgress:h}])=>{let g=Ay(Q(l,Ty(s),Sy(([,e,t,n],[{bottom:r,items:i,offsetBottom:a,totalCount:o},s])=>{let c=r+a,l=0;return t===o&&e.length>0&&i.length>0&&(i[0].originalIndex===0&&e[0].originalIndex===0||(l=c-n,l!==0&&(l+=s))),[l,i,o,c]},[0,[],0,0]),yy(([e])=>e!==0),Ty(i,c,r,a,m,h),yy(([,e,t,n,,,r])=>!r&&!n&&e!==0&&t===ix),by(([[e],,,,,t])=>(t(`Upward scrolling compensation`,{amount:e},Ry.DEBUG),e))));function _(t){t>0?(dy(n,{behavior:`auto`,top:-t}),dy(e,0)):(dy(e,0),dy(n,{behavior:`auto`,top:-t}))}uy(Q(g,Ty(e,o)),([t,n,r])=>{r&&zx()?dy(e,n-t):_(-t)}),uy(Q(Fy(Oy(o,!1),e,h),yy(([e,t,n])=>!e&&!n&&t!==0),by(([e,t])=>t),wy(1)),_),my(Q(f,by(e=>({top:-e}))),n);let v=null;function y(){if(v===null)return;let{offset:t}=v;v=null,dy(n,{top:t}),requestAnimationFrame(()=>{dy(e,0),dy(h,!1)})}return uy(t,e=>{v===null||!v.acknowledgeable||e===v.offset&&y()}),uy(Q(u,Ty(p,d),by(([e,{groupIndices:t,lastSize:n,sizeTree:r},i])=>{function a(e){return e*(n+i)}if(t.length===0)return a(e);let o=0,s=rb(r,0),c=0,l=0;for(;c<e;){c++,o+=s;let n=t.length===l+1?1/0:t[l+1]-t[l]-1;c+n>e&&(o-=s,n=e-c+1),c+=n,o+=a(n),l++}return o})),t=>{v={acknowledgeable:py(e)!==t,offset:t},dy(e,t),requestAnimationFrame(y)}),{deviation:e}},ly($y,lx,Sx,Gb,Vy,Cb)),Lx,qb,My(([e,t,n,r,i,a,o,s,c,l,u])=>({...e,...t,...n,...r,...i,...a,...o,...s,...c,...l,...u}),ly(hx,jx,Jb,Nx,Cx,Mx,wx,Px,Dx,Vy,Tx))));function Vx(e,t){let n={},r={},i=0,a=e.length;for(;i<a;)r[e[i]]=1,i+=1;for(let e in t)Object.hasOwn(r,e)||(n[e]=t[e]);return n}var Hx=typeof document>`u`?Z.useEffect:Z.useLayoutEffect;function Ux(e,t,n){let r=Object.keys(t.required||{}),i=Object.keys(t.optional||{}),a=Object.keys(t.methods||{}),o=Object.keys(t.events||{}),s=Z.createContext({});function c(e,n){e.propsReady!==void 0&&dy(e.propsReady,!1);for(let i of r){let r=e[t.required[i]];dy(r,n[i])}for(let r of i)if(r in n){let i=e[t.optional[r]];dy(i,n[r])}e.propsReady!==void 0&&dy(e.propsReady,!0)}function l(e){return a.reduce((n,r)=>(n[r]=n=>{let i=e[t.methods[r]];dy(i,n)},n),{})}function u(e){return o.reduce((n,r)=>(n[r]=Dy(e[t.events[r]]),n),{})}return{Component:Z.forwardRef(function(t,a){let{children:d,...f}=t,[p]=Z.useState(()=>sy(Py(e),e=>{c(e,f)})),[m]=Z.useState(ny(u,p));Hx(()=>{for(let e of o)e in f&&uy(m[e],f[e]);return()=>{Object.values(m).map(fy)}},[f,m,p]),Hx(()=>{c(p,f)}),Z.useImperativeHandle(a,$v(l(p)));let h=n;return(0,X.jsx)(s.Provider,{value:p,children:n===void 0?d:(0,X.jsx)(h,{...Vx([...r,...i,...o],f),children:d})})}),useEmitter:(e,t)=>{let n=Z.useContext(s)[e];Hx(()=>uy(n,t),[t,n])},useEmitterValue:e=>{let t=Z.useContext(s)[e],n=Z.useCallback(e=>uy(t,e),[t]);return Z.useSyncExternalStore(n,()=>py(t),()=>py(t))},usePublisher:e=>{let t=Z.useContext(s);return Z.useCallback(n=>{dy(t[e],n)},[t,e])}}}var Wx=Z.createContext(void 0),Gx=Z.createContext(void 0),Kx=`-webkit-sticky`,qx=`sticky`,Jx=Rx(()=>{if(typeof document>`u`)return qx;let e=document.createElement(`div`);return e.style.position=Kx,e.style.position===Kx?Kx:qx});function Yx(e){return`self`in e}function Xx(e){return`body`in e}function Zx(e,t,n,r=oy,i,a){let o=Z.useRef(null),s=Z.useRef(null),c=Z.useRef(null),l=Z.useCallback(n=>{let r,i,o,l=n.target;if(Xx(l)||Yx(l)){let e=Yx(l)?l:l.defaultView;o=a===!0?Wy(e,e.scrollX):e.scrollY,r=a===!0?e.document.documentElement.scrollWidth:e.document.documentElement.scrollHeight,i=a===!0?e.innerWidth:e.innerHeight}else o=a===!0?Wy(l,l.scrollLeft):l.scrollTop,r=a===!0?l.scrollWidth:l.scrollHeight,i=a===!0?l.offsetWidth:l.offsetHeight;let u=()=>{e({scrollHeight:r,scrollTop:Math.max(o,0),viewportHeight:i})};n.suppressFlushSync===!0?u():ys.flushSync(u),s.current!==null&&(o===s.current||o<=0||o===r-i)&&(s.current=null,t(!0),c.current&&=(clearTimeout(c.current),null))},[e,t,a]);Z.useEffect(()=>{let e=i??o.current;return r(i??o.current),l({suppressFlushSync:!0,target:e}),e.addEventListener(`scroll`,l,{passive:!0}),()=>{r(null),e.removeEventListener(`scroll`,l)}},[o,l,n,r,i]);function u(n){let r=o.current;if(!r||(a===!0?`offsetWidth`in r&&r.offsetWidth===0:`offsetHeight`in r&&r.offsetHeight===0))return;let i=n.behavior===`smooth`,l,u,d;Yx(r)?(u=Math.max(Db(r.document.documentElement,a===!0?`width`:`height`),a===!0?r.document.documentElement.scrollWidth:r.document.documentElement.scrollHeight),l=a===!0?r.innerWidth:r.innerHeight,d=a===!0?Wy(r,r.scrollX):r.scrollY):(u=r[a===!0?`scrollWidth`:`scrollHeight`],l=Db(r,a===!0?`width`:`height`),d=a===!0?Wy(r,r.scrollLeft):r.scrollTop);let f=u-l;if(n.top===void 0){r.scrollTo(n);return}let p=Math.ceil(Math.max(Math.min(f,n.top),0));if(n.top=p,rx(l,u)||p===d){e({scrollHeight:u,scrollTop:d,viewportHeight:l}),i&&t(!0);return}i?(s.current=p,c.current&&clearTimeout(c.current),c.current=setTimeout(()=>{c.current=null,s.current=null,t(!0)},1e3)):s.current=null,a===!0&&(n={...n.behavior===void 0?{}:{behavior:n.behavior},left:Gy(r,p)}),r.scrollTo(n)}return{scrollByCallback:Z.useCallback(e=>{a===!0&&(e={...e.behavior===void 0?{}:{behavior:e.behavior},...e.top===void 0?{}:{left:Gy(o.current,e.top)}}),o.current.scrollBy(e)},[a]),scrollerRef:o,scrollToCallback:u}}function Qx(e){return e}var $x=My(([e,t])=>({...e,...t}),ly(Bx,My(()=>{let e=$(e=>`Item ${e}`),t=$(e=>`Group ${e}`),n=$({}),r=$(Qx),i=$(`div`),a=$(oy),o=(e,t=null)=>Oy(Q(n,by(t=>t[e]),vy()),t);return{components:n,computeItemKey:r,EmptyPlaceholder:o(`EmptyPlaceholder`),FooterComponent:o(`Footer`),GroupComponent:o(`Group`,`div`),groupContent:t,HeaderComponent:o(`Header`),HeaderFooterTag:i,ItemComponent:o(`Item`,`div`),itemContent:e,ListComponent:o(`List`,`div`),ScrollerComponent:o(`Scroller`,`div`),scrollerRef:a,ScrollSeekPlaceholder:o(`ScrollSeekPlaceholder`),TopItemListComponent:o(`TopItemList`)}}))),eS=({height:e})=>(0,X.jsx)(`div`,{style:{height:e}}),tS={overflowAnchor:`none`,position:Jx(),zIndex:1},nS={overflowAnchor:`none`},rS={...nS,display:`inline-block`,height:`100%`},iS=Z.memo(function({showTopList:e=!1}){let t=xS(`listState`),n=SS(`sizeRanges`),r=xS(`useWindowScroll`),i=xS(`customScrollParent`),a=SS(`windowScrollContainerState`),o=SS(`scrollContainerState`),s=i||r?a:o,c=xS(`itemContent`),l=xS(`context`),u=xS(`groupContent`),d=xS(`trackItemSizes`),f=xS(`itemSize`),p=xS(`log`),m=SS(`gap`),h=xS(`horizontalDirection`),{callbackRef:g}=Jy(n,f,d,e?oy:s,p,m,i,h,xS(`skipAnimationFrameInResizeObserver`)),[_,v]=Z.useState(0);bS(`deviation`,e=>{_!==e&&v(e)});let y=SS(`deviationCommitted`);Zy(()=>{y(_)},[_,y]);let b=xS(`EmptyPlaceholder`),x=xS(`ScrollSeekPlaceholder`)??eS,S=xS(`ListComponent`),C=xS(`ItemComponent`),w=xS(`GroupComponent`),T=xS(`computeItemKey`),E=xS(`isSeeking`),D=xS(`groupIndices`).length>0,O=xS(`alignToBottom`),k=xS(`initialItemFinalLocationReached`),A=e?{}:{boxSizing:`border-box`,...h?{display:`inline-block`,height:`100%`,marginInlineStart:_===0?O?`auto`:0:_,paddingInlineEnd:t.offsetBottom,paddingInlineStart:t.offsetTop,whiteSpace:`nowrap`}:{marginTop:_===0?O?`auto`:0:_,paddingBottom:t.offsetBottom,paddingTop:t.offsetTop},...k?{}:{visibility:`hidden`}};return!e&&t.totalCount===0&&b!=null?(0,X.jsx)(b,{...uS(b,l)}):(0,X.jsx)(S,{...uS(S,l),"data-testid":e?`virtuoso-top-item-list`:`virtuoso-item-list`,ref:g,style:A,children:(e?t.topItems:t.items).map(e=>{let n=e.originalIndex,r=T(n+t.firstItemIndex,e.data,l);return E?(0,Z.createElement)(x,{...uS(x,l),height:e.size,index:e.index,key:r,type:e.type||`item`,...e.type===`group`?{}:{groupIndex:e.groupIndex}}):e.type===`group`?(0,Z.createElement)(w,{...uS(w,l),"data-index":n,"data-item-index":e.index,"data-known-size":e.size,key:r,style:tS},u(e.index,l)):(0,Z.createElement)(C,{...uS(C,l),...dS(C,e.data),"data-index":n,"data-item-group-index":e.groupIndex,"data-item-index":e.index,"data-known-size":e.size,key:r,style:h?rS:nS},D?c(e.index,e.groupIndex,e.data,l):c(e.index,e.data,l))})})}),aS={height:`100%`,outline:`none`,overflowY:`auto`,position:`relative`,WebkitOverflowScrolling:`touch`},oS={outline:`none`,overflowX:`auto`,position:`relative`},sS=e=>({height:`100%`,position:`absolute`,top:0,width:`100%`,...e?{display:`flex`,flexDirection:`column`}:void 0}),cS=(e,t,n=0)=>({...sS(e),position:t?`relative`:`absolute`,top:t?-n:0}),lS={position:Jx(),top:0,width:`100%`,zIndex:1};function uS(e,t){if(typeof e!=`string`)return{context:t}}function dS(e,t){return{item:typeof e==`string`?void 0:t}}var fS=Z.memo(function(){let e=xS(`HeaderComponent`),t=SS(`headerHeight`),n=xS(`HeaderFooterTag`),r=Ky(Z.useMemo(()=>e=>{t(Db(e,`height`))},[t]),!0,xS(`skipAnimationFrameInResizeObserver`)),i=xS(`context`);return e==null?null:(0,X.jsx)(n,{ref:r,children:(0,X.jsx)(e,{...uS(e,i)})})}),pS=Z.memo(function(){let e=xS(`FooterComponent`),t=SS(`footerHeight`),n=xS(`HeaderFooterTag`),r=Ky(Z.useMemo(()=>e=>{t(Db(e,`height`))},[t]),!0,xS(`skipAnimationFrameInResizeObserver`)),i=xS(`context`);return e==null?null:(0,X.jsx)(n,{ref:r,children:(0,X.jsx)(e,{...uS(e,i)})})});function mS({useEmitter:e,useEmitterValue:t,usePublisher:n}){return Z.memo(function({children:r,style:i,context:a,...o}){let s=n(`scrollContainerState`),c=t(`ScrollerComponent`),l=n(`smoothScrollTargetReached`),u=t(`scrollerRef`),d=t(`horizontalDirection`)||!1,{scrollByCallback:f,scrollerRef:p,scrollToCallback:m}=Zx(s,l,c,u,void 0,d);return e(`scrollTo`,m),e(`scrollBy`,f),(0,X.jsx)(c,{"data-testid":`virtuoso-scroller`,"data-virtuoso-scroller":!0,ref:p,style:{...d?oS:aS,...i},tabIndex:0,...o,...uS(c,a),children:r})})}function hS({useEmitter:e,useEmitterValue:t,usePublisher:n}){return Z.memo(function({children:r,style:i,context:a,...o}){let s=n(`windowScrollContainerState`),c=t(`ScrollerComponent`),l=n(`smoothScrollTargetReached`),u=t(`totalListHeight`),d=t(`deviation`),f=t(`customScrollParent`),p=Z.useRef(null),{scrollByCallback:m,scrollerRef:h,scrollToCallback:g}=Zx(s,l,c,t(`scrollerRef`),f);return Zy(()=>(h.current=f??p.current?.ownerDocument.defaultView,()=>{h.current=null}),[h,f]),e(`windowScrollTo`,g),e(`scrollBy`,m),(0,X.jsx)(c,{ref:p,"data-virtuoso-scroller":!0,style:{position:`relative`,...i,...u===0?void 0:{height:u+d}},...o,...uS(c,a),children:r})})}var gS=({children:e})=>{let t=Z.useContext(Wx),n=SS(`viewportHeight`),r=SS(`fixedItemHeight`),i=xS(`alignToBottom`),a=xS(`horizontalDirection`),o=Ky(Z.useMemo(()=>ty(n,e=>Db(e,a?`width`:`height`)),[n,a]),!0,xS(`skipAnimationFrameInResizeObserver`));return Z.useEffect(()=>{t&&(n(t.viewportHeight),r(t.itemHeight))},[t,n,r]),(0,X.jsx)(`div`,{"data-viewport-type":`element`,ref:o,style:sS(i),children:e})},_S=({children:e})=>{let t=Z.useContext(Wx),n=SS(`windowViewportRect`),r=SS(`fixedItemHeight`),i=xS(`customScrollParent`),a=xS(`useWindowScroll`),o=xS(`topListHeight`),s=Qy(n,i,xS(`skipAnimationFrameInResizeObserver`)),c=xS(`alignToBottom`);return Z.useEffect(()=>{t&&(r(t.itemHeight),n({listHeight:0,offsetTop:0,visibleHeight:t.viewportHeight,visibleWidth:100}))},[t,n,r]),(0,X.jsx)(`div`,{"data-viewport-type":`window`,ref:s,style:cS(c,a,o),children:e})},vS=({children:e})=>{let t=xS(`TopItemListComponent`)??`div`,n=xS(`headerHeight`);return(0,X.jsx)(t,{style:{...lS,marginTop:`${n}px`},...uS(t,xS(`context`)),children:e})},{Component:yS,useEmitter:bS,useEmitterValue:xS,usePublisher:SS}=Ux($x,{optional:{restoreStateFrom:`restoreStateFrom`,context:`context`,followOutput:`followOutput`,scrollIntoViewOnChange:`scrollIntoViewOnChange`,itemContent:`itemContent`,groupContent:`groupContent`,overscan:`overscan`,increaseViewportBy:`increaseViewportBy`,minOverscanItemCount:`minOverscanItemCount`,totalCount:`totalCount`,groupCounts:`groupCounts`,topItemCount:`topItemCount`,firstItemIndex:`firstItemIndex`,initialTopMostItemIndex:`initialTopMostItemIndex`,components:`components`,atBottomThreshold:`atBottomThreshold`,atTopThreshold:`atTopThreshold`,computeItemKey:`computeItemKey`,defaultItemHeight:`defaultItemHeight`,fixedGroupHeight:`fixedGroupHeight`,fixedItemHeight:`fixedItemHeight`,heightEstimates:`heightEstimates`,itemSize:`itemSize`,scrollSeekConfiguration:`scrollSeekConfiguration`,headerFooterTag:`HeaderFooterTag`,data:`data`,initialItemCount:`initialItemCount`,initialScrollTop:`initialScrollTop`,alignToBottom:`alignToBottom`,useWindowScroll:`useWindowScroll`,customScrollParent:`customScrollParent`,scrollerRef:`scrollerRef`,logLevel:`logLevel`,horizontalDirection:`horizontalDirection`,skipAnimationFrameInResizeObserver:`skipAnimationFrameInResizeObserver`},methods:{scrollToIndex:`scrollToIndex`,scrollIntoView:`scrollIntoView`,scrollTo:`scrollTo`,scrollBy:`scrollBy`,autoscrollToBottom:`autoscrollToBottom`,getState:`getState`},events:{isScrolling:`isScrolling`,endReached:`endReached`,startReached:`startReached`,rangeChanged:`rangeChanged`,atBottomStateChange:`atBottomStateChange`,atTopStateChange:`atTopStateChange`,totalListHeightChanged:`totalListHeightChanged`,itemsRendered:`itemsRendered`,groupIndices:`groupIndices`}},Z.memo(function(e){let t=xS(`useWindowScroll`),n=xS(`topItemsIndexes`).length>0,r=xS(`customScrollParent`),i=xS(`context`);return(0,X.jsxs)(r||t?wS:CS,{...e,context:i,children:[n&&(0,X.jsx)(vS,{children:(0,X.jsx)(iS,{showTopList:!0})}),(0,X.jsxs)(r||t?_S:gS,{children:[(0,X.jsx)(fS,{}),(0,X.jsx)(iS,{}),(0,X.jsx)(pS,{})]})]})})),CS=mS({useEmitter:bS,useEmitterValue:xS,usePublisher:SS}),wS=hS({useEmitter:bS,useEmitterValue:xS,usePublisher:SS}),TS=yS,ES=My(([e,t])=>({...e,...t}),ly(Bx,My(()=>{let e=$(e=>(0,X.jsxs)(`td`,{children:[`Item $`,e]})),t=$(null),n=$(e=>(0,X.jsxs)(`td`,{colSpan:1e3,children:[`Group `,e]})),r=$(null),i=$(null),a=$({}),o=$(Qx),s=$(oy),c=(e,t=null)=>Oy(Q(a,by(t=>t[e]),vy()),t);return{components:a,computeItemKey:o,context:t,EmptyPlaceholder:c(`EmptyPlaceholder`),FillerRow:c(`FillerRow`),fixedFooterContent:i,fixedHeaderContent:r,itemContent:e,groupContent:n,ScrollerComponent:c(`Scroller`,`div`),scrollerRef:s,ScrollSeekPlaceholder:c(`ScrollSeekPlaceholder`),TableBodyComponent:c(`TableBody`,`tbody`),TableComponent:c(`Table`,`table`),TableFooterComponent:c(`TableFoot`,`tfoot`),TableHeadComponent:c(`TableHead`,`thead`),TableRowComponent:c(`TableRow`,`tr`),GroupComponent:c(`Group`,`tr`)}}))),DS=({height:e})=>(0,X.jsx)(`tr`,{children:(0,X.jsx)(`td`,{style:{height:e}})}),OS=({height:e})=>(0,X.jsx)(`tr`,{children:(0,X.jsx)(`td`,{style:{border:0,height:e,padding:0}})}),kS={overflowAnchor:`none`},AS={position:Jx(),zIndex:2,overflowAnchor:`none`},jS=Z.memo(function({showTopList:e=!1}){let t=LS(`listState`),n=LS(`computeItemKey`),r=LS(`firstItemIndex`),i=LS(`context`),a=LS(`isSeeking`),o=LS(`fixedHeaderHeight`),s=LS(`groupIndices`).length>0,c=LS(`itemContent`),l=LS(`groupContent`),u=LS(`ScrollSeekPlaceholder`)??DS,d=LS(`GroupComponent`),f=LS(`TableRowComponent`),p=(e?t.topItems:[]).reduce((e,t,n)=>(n===0?e.push(t.size):e.push(e[n-1]+t.size),e),[]);return(e?t.topItems:t.items).map(t=>{let m=t.originalIndex,h=n(m+r,t.data,i),g=e?m===0?0:p[m-1]:0;return a?(0,Z.createElement)(u,{...uS(u,i),height:t.size,index:t.index,key:h,type:t.type||`item`}):t.type===`group`?(0,Z.createElement)(d,{...uS(d,i),"data-index":m,"data-item-index":t.index,"data-known-size":t.size,key:h,style:{...AS,top:o}},l(t.index,i)):(0,Z.createElement)(f,{...uS(f,i),...dS(f,t.data),"data-index":m,"data-item-index":t.index,"data-known-size":t.size,"data-item-group-index":t.groupIndex,key:h,style:e?{...AS,top:o+g}:kS},s?c(t.index,t.groupIndex,t.data,i):c(t.index,t.data,i))})}),MS=Z.memo(function(){let e=LS(`listState`),t=LS(`topItemsIndexes`).length>0,n=RS(`sizeRanges`),r=LS(`useWindowScroll`),i=LS(`customScrollParent`),a=RS(`windowScrollContainerState`),o=RS(`scrollContainerState`),s=i||r?a:o,c=LS(`trackItemSizes`),{callbackRef:l,ref:u}=Jy(n,LS(`itemSize`),c,s,LS(`log`),void 0,i,!1,LS(`skipAnimationFrameInResizeObserver`)),[d,f]=Z.useState(0);IS(`deviation`,e=>{d!==e&&(u.current.style.marginTop=`${e}px`,f(e))});let p=RS(`deviationCommitted`);Zy(()=>{p(d)},[d,p]);let m=LS(`EmptyPlaceholder`),h=LS(`FillerRow`)??OS,g=LS(`TableBodyComponent`),_=LS(`paddingTopAddition`),v=LS(`statefulTotalCount`),y=LS(`context`);if(v===0&&m!=null)return(0,X.jsx)(m,{...uS(m,y)});let b=(t?e.topItems:[]).reduce((e,t)=>e+t.size,0),x=e.offsetTop+_+d-b,S=e.offsetBottom,C=x>0?(0,X.jsx)(h,{context:y,height:x},`padding-top`):null,w=S>0?(0,X.jsx)(h,{context:y,height:S},`padding-bottom`):null;return(0,X.jsxs)(g,{"data-testid":`virtuoso-item-list`,ref:l,...uS(g,y),children:[C,t&&(0,X.jsx)(jS,{showTopList:!0}),(0,X.jsx)(jS,{}),w]})}),NS=({children:e})=>{let t=Z.useContext(Wx),n=RS(`viewportHeight`),r=RS(`fixedItemHeight`),i=Ky(Z.useMemo(()=>ty(n,e=>Db(e,`height`)),[n]),!0,LS(`skipAnimationFrameInResizeObserver`));return Z.useEffect(()=>{t&&(n(t.viewportHeight),r(t.itemHeight))},[t,n,r]),(0,X.jsx)(`div`,{"data-viewport-type":`element`,ref:i,style:sS(!1),children:e})},PS=({children:e})=>{let t=Z.useContext(Wx),n=RS(`windowViewportRect`),r=RS(`fixedItemHeight`),i=LS(`customScrollParent`),a=LS(`useWindowScroll`),o=Qy(n,i,LS(`skipAnimationFrameInResizeObserver`));return Z.useEffect(()=>{t&&(r(t.itemHeight),n({listHeight:0,offsetTop:0,visibleHeight:t.viewportHeight,visibleWidth:100}))},[t,n,r]),(0,X.jsx)(`div`,{"data-viewport-type":`window`,ref:o,style:cS(!1,a),children:e})},{Component:FS,useEmitter:IS,useEmitterValue:LS,usePublisher:RS}=Ux(ES,{optional:{restoreStateFrom:`restoreStateFrom`,context:`context`,followOutput:`followOutput`,firstItemIndex:`firstItemIndex`,itemContent:`itemContent`,groupContent:`groupContent`,fixedHeaderContent:`fixedHeaderContent`,fixedFooterContent:`fixedFooterContent`,overscan:`overscan`,increaseViewportBy:`increaseViewportBy`,minOverscanItemCount:`minOverscanItemCount`,totalCount:`totalCount`,topItemCount:`topItemCount`,initialTopMostItemIndex:`initialTopMostItemIndex`,components:`components`,groupCounts:`groupCounts`,atBottomThreshold:`atBottomThreshold`,atTopThreshold:`atTopThreshold`,computeItemKey:`computeItemKey`,defaultItemHeight:`defaultItemHeight`,fixedGroupHeight:`fixedGroupHeight`,fixedItemHeight:`fixedItemHeight`,itemSize:`itemSize`,scrollSeekConfiguration:`scrollSeekConfiguration`,data:`data`,initialItemCount:`initialItemCount`,initialScrollTop:`initialScrollTop`,alignToBottom:`alignToBottom`,useWindowScroll:`useWindowScroll`,customScrollParent:`customScrollParent`,scrollerRef:`scrollerRef`,logLevel:`logLevel`,skipAnimationFrameInResizeObserver:`skipAnimationFrameInResizeObserver`},methods:{scrollToIndex:`scrollToIndex`,scrollIntoView:`scrollIntoView`,scrollTo:`scrollTo`,scrollBy:`scrollBy`,getState:`getState`},events:{isScrolling:`isScrolling`,endReached:`endReached`,startReached:`startReached`,rangeChanged:`rangeChanged`,atBottomStateChange:`atBottomStateChange`,atTopStateChange:`atTopStateChange`,totalListHeightChanged:`totalListHeightChanged`,itemsRendered:`itemsRendered`,groupIndices:`groupIndices`}},Z.memo(function(e){let t=LS(`useWindowScroll`),n=LS(`customScrollParent`),r=RS(`fixedHeaderHeight`),i=RS(`fixedFooterHeight`),a=LS(`fixedHeaderContent`),o=LS(`fixedFooterContent`),s=LS(`context`),c=Ky(Z.useMemo(()=>ty(r,e=>Db(e,`height`)),[r]),!0,LS(`skipAnimationFrameInResizeObserver`)),l=Ky(Z.useMemo(()=>ty(i,e=>Db(e,`height`)),[i]),!0,LS(`skipAnimationFrameInResizeObserver`)),u=n||t?BS:zS,d=n||t?PS:NS,f=LS(`TableComponent`),p=LS(`TableHeadComponent`),m=LS(`TableFooterComponent`),h=a?(0,X.jsx)(p,{ref:c,style:{position:`sticky`,top:0,zIndex:2},...uS(p,s),children:a()},`TableHead`):null,g=o?(0,X.jsx)(m,{ref:l,style:{bottom:0,position:`sticky`,zIndex:1},...uS(m,s),children:o()},`TableFoot`):null;return(0,X.jsx)(u,{...e,...uS(u,s),children:(0,X.jsx)(d,{children:(0,X.jsxs)(f,{style:{borderSpacing:0,overflowAnchor:`none`},...uS(f,s),children:[h,(0,X.jsx)(MS,{},`TableBody`),g]})})})})),zS=mS({useEmitter:IS,useEmitterValue:LS,usePublisher:RS}),BS=hS({useEmitter:IS,useEmitterValue:LS,usePublisher:RS}),VS={bottom:0,itemHeight:0,items:[],itemWidth:0,offsetBottom:0,offsetTop:0,top:0},HS={bottom:0,itemHeight:0,items:[{index:0}],itemWidth:0,offsetBottom:0,offsetTop:0,top:0},{ceil:US,floor:WS,max:GS,min:KS,round:qS}=Math;function JS(e,t,n){return Array.from({length:t-e+1}).map((t,r)=>({data:n===null?null:n[r+e],index:r+e}))}function YS(e){return{...HS,items:e}}function XS(e,t){return e!==void 0&&e.width===t.width&&e.height===t.height}function ZS(e,t){return e!==void 0&&e.column===t.column&&e.row===t.row}var QS=My(([{increaseViewportBy:e,listBoundary:t,overscan:n,visibleRange:r},{footerHeight:i,headerHeight:a,scrollBy:o,scrollContainerState:s,scrollTo:c,scrollTop:l,smoothScrollTargetReached:u,viewportHeight:d},f,p,{didMount:m,propsReady:h},{customScrollParent:g,useWindowScroll:_,windowScrollContainerState:v,windowScrollTo:y,windowViewportRect:b},x])=>{let S=$(0),C=$(0),w=$(VS),T=$({height:0,width:0}),E=$({height:0,width:0}),D=ky(),O=ky(),k=$(0),A=$(null),j=$({column:0,row:0}),M=ky(),N=ky(),P=$(!1),F=$(0),I=$(!0),L=$(!1),R=$(!1);uy(Q(m,Ty(F),yy(([e,t])=>!tx(t))),()=>{dy(I,!1)}),uy(Q(Fy(m,I,E,T,F,L),yy(([e,t,n,r,,i])=>e&&!t&&n.height!==0&&r.height!==0&&!i)),([,,,,e])=>{if(e===void 0){dy(I,!0);return}dy(L,!0),$b(1,()=>{dy(D,e)}),hy(Q(l),()=>{dy(t,[0,0]),dy(I,!0)})}),my(Q(N,yy(e=>e!=null&&e.scrollTop>0),xy(0)),C),uy(Q(m,Ty(N),yy(([,e])=>e!=null)),([,e])=>{e&&(dy(T,e.viewport),dy(E,e.item),dy(j,e.gap),e.scrollTop>0&&(dy(P,!0),hy(Q(l,Cy(1)),e=>{dy(P,!1)}),dy(c,{top:e.scrollTop})))}),my(Q(T,by(({height:e})=>e)),d),my(Q(Fy(Iy(T,XS),Iy(E,XS),Iy(j,(e,t)=>e!==void 0&&e.column===t.column&&e.row===t.row),Iy(l)),by(([e,t,n,r])=>({gap:n,item:t,scrollTop:r,viewport:e}))),M),my(Q(Fy(Iy(S),r,Iy(j,ZS),Iy(E,XS),Iy(T,XS),Iy(A),Iy(C),Iy(P),Iy(I),Iy(F)),yy(([,,,,,,,e])=>!e),by(([e,[t,n],r,i,a,o,s,,c,l])=>{let{column:u,row:d}=r,{height:f,width:p}=i,{width:m}=a;if(s===0&&(e===0||m===0))return VS;if(p===0){let t=ex(l,e);return YS(JS(t,t+Math.max(s-1,0),o))}let h=$S(m,p,u),g,_;c?t===0&&n===0&&s>0?(g=0,_=s-1):(g=h*WS((t+d)/(f+d)),_=h*US((n+d)/(f+d))-1,_=KS(e-1,GS(_,h-1)),g=KS(_,GS(0,g))):(g=0,_=-1);let v=JS(g,_,o),{bottom:y,top:b}=eC(a,r,i,v),x=US(e/h);return{bottom:y,itemHeight:f,items:v,itemWidth:p,offsetBottom:x*f+(x-1)*d-y,offsetTop:b,top:b}})),w),my(Q(A,yy(e=>e!==null),by(e=>e.length)),S),my(Q(Fy(T,E,w,j),yy(([e,t,{items:n}])=>n.length>0&&t.height!==0&&e.height!==0),by(([e,t,{items:n},r])=>{let{bottom:i,top:a}=eC(e,r,t,n);return[a,i]}),vy(Sb)),t);let z=$(!1);my(Q(l,Ty(z),by(([e,t])=>t||e!==0)),z);let B=Ay(Q(Fy(w,S),yy(([{items:e}])=>e.length>0),Ty(z),yy(([[e,t],n])=>{let r=e.items[e.items.length-1].index===t-1;return(n||e.bottom>0&&e.itemHeight>0&&e.offsetBottom===0&&e.items.length===t)&&r}),by(([[,e]])=>e-1),vy())),ee=Ay(Q(Iy(w),yy(({items:e})=>e.length>0&&e[0].index===0),xy(0),vy())),V=Ay(Q(Iy(w),Ty(P),yy(([{items:e},t])=>e.length>0&&!t),by(([{items:e}])=>({endIndex:e[e.length-1].index,startIndex:e[0].index})),vy(xb),wy(0)));my(V,p.scrollSeekRangeChanged),my(Q(D,Ty(T,E,S,j),by(([e,t,n,r,i])=>{let a=Xb(e),{align:o,behavior:s,offset:c}=a,l=a.index;l===`LAST`&&(l=r-1),l=GS(0,l,KS(r-1,l));let u=tC(t,i,n,l);return o===`end`?u=qS(u-t.height+n.height):o===`center`&&(u=qS(u-t.height/2+n.height/2)),c!==void 0&&c!==0&&(u+=c),{behavior:s,top:u}})),c);let H=Oy(Q(w,by(e=>e.offsetBottom+e.bottom)),0);return my(Q(b,by(e=>({height:e.visibleHeight,width:e.visibleWidth}))),T),{customScrollParent:g,data:A,deviation:k,footerHeight:i,gap:j,headerHeight:a,increaseViewportBy:e,initialItemCount:C,itemDimensions:E,overscan:n,restoreStateFrom:N,scrollBy:o,scrollContainerState:s,scrollHeight:O,scrollTo:c,scrollToIndex:D,scrollTop:l,smoothScrollTargetReached:u,totalCount:S,useWindowScroll:_,viewportDimensions:T,windowScrollContainerState:v,windowScrollTo:y,windowViewportRect:b,...p,gridState:w,horizontalDirection:R,initialTopMostItemIndex:F,totalListHeight:H,...f,endReached:B,propsReady:h,rangeChanged:V,startReached:ee,stateChanged:M,stateRestoreInProgress:P,...x}},ly(hx,$y,lx,Nx,Jb,Px,Vy));function $S(e,t,n){return GS(1,WS((e+n)/(WS(t)+n)))}function eC(e,t,n,r){let{height:i}=n;if(i===void 0||r.length===0)return{bottom:0,top:0};let a=tC(e,t,n,r[0].index);return{bottom:tC(e,t,n,r[r.length-1].index)+i,top:a}}function tC(e,t,n,r){let i=WS(r/$S(e.width,n.width,t.column)),a=i*n.height+GS(0,i-1)*t.row;return a>0?a+t.row:a}var nC=My(([e,t])=>({...e,...t}),ly(QS,My(()=>{let e=$(e=>`Item ${e}`),t=$({}),n=$(null),r=$(`virtuoso-grid-item`),i=$(`virtuoso-grid-list`),a=$(Qx),o=$(`div`),s=$(oy),c=(e,n=null)=>Oy(Q(t,by(t=>t[e]),vy()),n),l=$(!1),u=$(!1);return my(Iy(u),l),{components:t,computeItemKey:a,context:n,FooterComponent:c(`Footer`),HeaderComponent:c(`Header`),headerFooterTag:o,itemClassName:r,ItemComponent:c(`Item`,`div`),itemContent:e,listClassName:i,ListComponent:c(`List`,`div`),readyStateChanged:l,reportReadyState:u,ScrollerComponent:c(`Scroller`,`div`),scrollerRef:s,ScrollSeekPlaceholder:c(`ScrollSeekPlaceholder`,`div`)}}))),rC=Z.memo(function(){let e=uC(`gridState`),t=uC(`listClassName`),n=uC(`itemClassName`),r=uC(`itemContent`),i=uC(`computeItemKey`),a=uC(`isSeeking`),o=dC(`scrollHeight`),s=uC(`ItemComponent`),c=uC(`ListComponent`),l=uC(`ScrollSeekPlaceholder`),u=uC(`context`),d=dC(`itemDimensions`),f=dC(`gap`),p=uC(`log`),m=uC(`stateRestoreInProgress`),h=dC(`reportReadyState`),g=Ky(Z.useMemo(()=>e=>{let t=e.parentElement.parentElement.scrollHeight;o(t);let n=e.firstChild;if(n!==null){let{height:e,width:t}=n.getBoundingClientRect();d({height:e,width:t})}f({column:mC(`column-gap`,getComputedStyle(e).columnGap,p),row:mC(`row-gap`,getComputedStyle(e).rowGap,p)})},[o,d,f,p]),!0,!1);return Zy(()=>{e.itemHeight>0&&e.itemWidth>0&&h(!0)},[e]),m?null:(0,X.jsx)(c,{className:t,ref:g,...uS(c,u),"data-testid":`virtuoso-item-list`,style:{paddingBottom:e.offsetBottom,paddingTop:e.offsetTop},children:e.items.map(t=>{let o=i(t.index,t.data,u);return a?(0,X.jsx)(l,{...uS(l,u),height:e.itemHeight,index:t.index,width:e.itemWidth},o):(0,Z.createElement)(s,{...uS(s,u),className:n,"data-index":t.index,key:o},r(t.index,t.data,u))})})}),iC=Z.memo(function(){let e=uC(`HeaderComponent`),t=dC(`headerHeight`),n=uC(`headerFooterTag`),r=Ky(Z.useMemo(()=>e=>{t(Db(e,`height`))},[t]),!0,!1),i=uC(`context`);return e==null?null:(0,X.jsx)(n,{ref:r,children:(0,X.jsx)(e,{...uS(e,i)})})}),aC=Z.memo(function(){let e=uC(`FooterComponent`),t=dC(`footerHeight`),n=uC(`headerFooterTag`),r=Ky(Z.useMemo(()=>e=>{t(Db(e,`height`))},[t]),!0,!1),i=uC(`context`);return e==null?null:(0,X.jsx)(n,{ref:r,children:(0,X.jsx)(e,{...uS(e,i)})})}),oC=({children:e})=>{let t=Z.useContext(Gx),n=dC(`itemDimensions`),r=dC(`viewportDimensions`),i=Ky(Z.useMemo(()=>e=>{r(e.getBoundingClientRect())},[r]),!0,!1);return Z.useEffect(()=>{t&&(r({height:t.viewportHeight,width:t.viewportWidth}),n({height:t.itemHeight,width:t.itemWidth}))},[t,r,n]),(0,X.jsx)(`div`,{ref:i,style:sS(!1),children:e})},sC=({children:e})=>{let t=Z.useContext(Gx),n=dC(`windowViewportRect`),r=dC(`itemDimensions`),i=uC(`customScrollParent`),a=uC(`useWindowScroll`),o=Qy(n,i,!1);return Z.useEffect(()=>{t&&(r({height:t.itemHeight,width:t.itemWidth}),n({listHeight:0,offsetTop:0,visibleHeight:t.viewportHeight,visibleWidth:t.viewportWidth}))},[t,n,r]),(0,X.jsx)(`div`,{ref:o,style:cS(!1,a),children:e})},{Component:cC,useEmitter:lC,useEmitterValue:uC,usePublisher:dC}=Ux(nC,{optional:{context:`context`,totalCount:`totalCount`,overscan:`overscan`,itemContent:`itemContent`,components:`components`,computeItemKey:`computeItemKey`,data:`data`,initialItemCount:`initialItemCount`,scrollSeekConfiguration:`scrollSeekConfiguration`,headerFooterTag:`headerFooterTag`,listClassName:`listClassName`,itemClassName:`itemClassName`,useWindowScroll:`useWindowScroll`,customScrollParent:`customScrollParent`,scrollerRef:`scrollerRef`,logLevel:`logLevel`,restoreStateFrom:`restoreStateFrom`,initialTopMostItemIndex:`initialTopMostItemIndex`,increaseViewportBy:`increaseViewportBy`},methods:{scrollTo:`scrollTo`,scrollBy:`scrollBy`,scrollToIndex:`scrollToIndex`},events:{isScrolling:`isScrolling`,endReached:`endReached`,startReached:`startReached`,rangeChanged:`rangeChanged`,atBottomStateChange:`atBottomStateChange`,atTopStateChange:`atTopStateChange`,stateChanged:`stateChanged`,readyStateChanged:`readyStateChanged`}},Z.memo(function({...e}){let t=uC(`useWindowScroll`),n=uC(`customScrollParent`),r=n||t?pC:fC,i=n||t?sC:oC,a=uC(`context`);return(0,X.jsx)(r,{...e,...uS(r,a),children:(0,X.jsxs)(i,{children:[(0,X.jsx)(iC,{}),(0,X.jsx)(rC,{}),(0,X.jsx)(aC,{})]})})})),fC=mS({useEmitter:lC,useEmitterValue:uC,usePublisher:dC}),pC=hS({useEmitter:lC,useEmitterValue:uC,usePublisher:dC});function mC(e,t,n){return t!==`normal`&&t?.endsWith(`px`)!==!0&&n(`${e} was not resolved to pixel value correctly`,t,Ry.WARN),t===`normal`?0:parseInt(t??`0`,10)}function hC(e){return e.scrollHeight-e.scrollTop-e.clientHeight}function gC(e,t=96){return hC(e)<=t}function _C(e){Math.abs(hC(e))>.5&&(e.scrollTop=e.scrollHeight)}function vC(e){let t=e.querySelectorAll(`[data-chat-message-index]`);if(!t.length)return 0;let n=e.getBoundingClientRect(),r=n.top+Math.min(180,n.height*.35),i=0,a=t.length-1;for(;i<a;){let e=Math.ceil((i+a)/2);t[e].getBoundingClientRect().top<=r?i=e:a=e-1}let o=Number.parseInt(t[i].dataset.chatMessageIndex??``,10);return Number.isFinite(o)?o:0}function yC(){return typeof window.matchMedia==`function`&&window.matchMedia(`(prefers-reduced-motion: reduce)`).matches?`auto`:`smooth`}var bC=new WeakMap;function xC(e,t){return bC.set(e,t),()=>{bC.get(e)===t&&bC.delete(e)}}function SC(e){return bC.get(e)}function CC(e){e.dispatchEvent(new Event(`chat-scroll-reading`))}function wC({context:e}){return e?.footer}var TC={Footer:wC},EC={top:800,bottom:800};function DC({rows:e,scrollRef:t,renderRow:n,footer:r}){let i=(0,Z.useRef)(null),[a,o]=(0,Z.useState)(),[s,c]=(0,Z.useState)(EC),[l,u]=(0,Z.useState)({rows:e,first:1e9});if(l.rows!==e){let t=l.rows[0]?.key,n=t?e.findIndex(e=>e.key===t):0;u({rows:e,first:l.first-Math.max(0,n)})}return(0,Z.useEffect)(()=>{o(t.current??void 0)},[t]),(0,Z.useLayoutEffect)(()=>{if(a)return xC(a,{reveal:t=>{let n=e.findIndex(e=>e.index===t||e.aliases.includes(t));return n<0?!1:(CC(a),i.current?.scrollToIndex({index:n,align:`start`,offset:-16,behavior:`auto`}),!0)},end:e=>i.current?.scrollToIndex({index:`LAST`,align:`end`,offset:(parseFloat(getComputedStyle(a).paddingBottom)||0)+(parseFloat(getComputedStyle(a.querySelector(`[data-chat-virtualized]`)??a).paddingBottom)||0),behavior:e&&yC()===`smooth`?`smooth`:`auto`})})},[a,e,l.first]),(0,Z.useLayoutEffect)(()=>{if(!a)return;let e=null,t=()=>{let t=window.getSelection();t&&!t.isCollapsed&&a.contains(t.anchorNode)?(e??={start:a.scrollTop,end:a.scrollTop},e.start=Math.min(e.start,a.scrollTop),e.end=Math.max(e.end,a.scrollTop)):e=null;let n=EC.top+(e?a.scrollTop-e.start:0),r=EC.bottom+(e?e.end-a.scrollTop:0);c(e=>e.top===n&&e.bottom===r?e:{top:n,bottom:r})},n=()=>{e!==null&&t()};return document.addEventListener(`selectionchange`,t),a.addEventListener(`scroll`,n,{passive:!0}),()=>{document.removeEventListener(`selectionchange`,t),a.removeEventListener(`scroll`,n)}},[a]),a?(0,X.jsx)(TS,{ref:i,customScrollParent:a,data:e,skipAnimationFrameInResizeObserver:!0,components:TC,context:{footer:r},firstItemIndex:l.first,initialTopMostItemIndex:{index:e.length-1,align:`end`},defaultItemHeight:160,increaseViewportBy:s,computeItemKey:(e,t)=>t.key,itemContent:(t,r)=>(0,X.jsx)(`div`,{className:r===e[0]?void 0:`pt-8`,children:n(r.index)})}):null}var OC=e=>{},kC=(0,Z.memo)(function(e){let t=(0,Y.c)(47),{messages:n,timelineEntries:r,personal:i,authToken:a,conversationId:o,workspaceConversationId:s,projectId:c,streaming:l,sending:u,progress:d,reasoningLevel:f,registerListContentRef:p,onPickWelcomePrompt:m,welcomeSpotlight:g,welcomeOverlay:_,compactWelcome:v,onDeleteRound:b,onRetryUserMessageRound:x,deleteRoundDisabled:S,onSaveAssistantAsNote:C,onSaveAssistantToSourceNote:w,onExtractAssistantTask:T,onForkAssistantTurn:E,onEditUserMessage:D,editLatestUserOnly:O,editRequiresTurnId:k,responseFeedbackEnabled:A,showAssistantWorkLog:j,hideAssistantActions:M,trailingContent:N,replySpaceRef:P,scrollRef:F}=e,I=r===void 0?[]:r,L=i!==void 0&&i,R=u!==void 0&&u,z=v!==void 0&&v,B=O!==void 0&&O,ee=k!==void 0&&k,V=j===void 0||j,H=M!==void 0&&M,te=h(AC),U;t[0]===te?U=t[1]:(U=y(te),t[0]=te,t[1]=U);let W=U,[ne]=(0,Z.useState)(!!(F&&n.length>=300));if(n.length===0&&I.length===0&&!l&&!R){if(_){let e;return t[2]===_?e=t[3]:(e=(0,X.jsx)(`div`,{className:`pb-1.5`,children:_}),t[2]=_,t[3]=e),e}let e;t[4]!==W||t[5]!==g?(e=g??{headline:W.chat.welcomeSpotlight.headline,contextKind:`empty`,contextStatus:`ready`},t[4]=W,t[5]=g,t[6]=e):e=t[6];let n=m??OC,r;return t[7]!==z||t[8]!==e||t[9]!==n?(r=(0,X.jsx)(`div`,{className:`pb-1.5`,children:(0,X.jsx)(Ip,{spotlight:e,onPickPrompt:n,compact:z})}),t[7]=z,t[8]=e,t[9]=n,t[10]=r):r=t[10],r}let re=Date.now(),ie;t[11]===n?ie=t[12]:(ie=n.findLastIndex(jC),t[11]=n,t[12]=ie);let ae=ie,oe;t[13]!==n.length||t[14]!==R||t[15]!==l?(oe=(e,t)=>!!((l||R||e.pendingResponseStatus)&&t===n.length-1&&e.role===`assistant`),t[13]=n.length,t[14]=R,t[15]=l,t[16]=oe):oe=t[16];let se=oe,G;t[17]===n?G=t[18]:(G=(e,t)=>e.role===`assistant`&&e.turnId&&n[t-1]?.role===`task`&&n[t-1]?.turnId===e.turnId?n[t-1].taskTrigger:void 0,t[17]=n,t[18]=G);let K=G,ce;t[19]!==K||t[20]!==se||t[21]!==n||t[22]!==L||t[23]!==f||t[24]!==V?(ce=(e,t)=>!_v(e,{personal:L,isStreaming:se(e,t),reasoningLevel:f,showAssistantWorkLog:V,followUpTrigger:K(e,t)})||e.role===`task`&&e.taskTrigger&&e.turnId&&n[t+1]?.role===`assistant`&&n[t+1]?.turnId===e.turnId?[]:[{key:Vv(e,t),index:t,aliases:e.role===`assistant`&&n[t-1]?.role===`task`&&e.turnId===n[t-1]?.turnId?[t-1]:[]}],t[19]=K,t[20]=se,t[21]=n,t[22]=L,t[23]=f,t[24]=V,t[25]=ce):ce=t[25];let le=n.flatMap(ce),q;t[26]===n.length?q=t[27]:(q=(e,t)=>({key:e.id,index:n.length+t,aliases:[]}),t[26]=n.length,t[27]=q),le.push(...I.map(q));let ue=0,de=n.map(e=>(ue=e.timestamp??ue,ue));I.length&&le.sort((e,t)=>{let r=e=>e<n.length?de[e]:I[e-n.length].timestamp;return r(e.index)-r(t.index)||e.index-t.index});let fe=new Map(le.map((e,t)=>[e.index,le[t-1]?.index])),pe=e=>{if(e>=n.length){let t=I[e-n.length];return(0,X.jsx)(`div`,{"data-chat-timeline-entry":t.id,children:t.content},t.id)}let t=n[e],r=se(t,e),i=e===ae,l=n[e-1],u=K(t,e),p=fe.get(e),m=p===void 0?void 0:n[p],h=m&&p!==void 0?K(m,p)?n[p-1]?.timestamp??m.timestamp:m.timestamp:void 0,g=Vv(t,e),_=u?l?.timestamp??t.timestamp:t.timestamp,v=qv(_,h);return(0,X.jsxs)(`div`,{id:`chat-message-${e}`,className:J(`scroll-mt-4`,m&&(m.role===`user`||m.role===`task`)&&!u&&!v&&`-mt-5`),"data-chat-message-index":e,"data-chat-message-row":!0,"data-client-submission-id":t.clientSubmissionId,"data-message-render-key":t.renderKey,children:[u?(0,X.jsx)(`span`,{id:`chat-message-${e-1}`,className:`block h-0 scroll-mt-4`,"aria-hidden":!0}):null,v&&_?(0,X.jsx)(`div`,{className:`mb-8 flex justify-center`,"data-chat-time-separator":!0,children:(0,X.jsx)(`time`,{suppressHydrationWarning:!0,className:`rounded-md px-2 py-1 text-xs tabular-nums text-fg-disabled`,dateTime:new Date(_).toISOString(),children:Jv(_,re,te)})}):null,t.role===`task`&&t.taskTrigger?(0,X.jsx)(Cv,{trigger:t.taskTrigger}):(0,X.jsx)(Bv,{message:t,personal:L,followUpTrigger:u,authToken:a,conversationId:o,workspaceConversationId:s,projectId:c,isStreaming:r,progress:r?d:null,reasoningLevel:f,messageIndex:e,onDeleteRound:b,onRetryUserMessageRound:x,userMessageCanRetry:!!x&&i,deleteRoundDisabled:!!(S&&i),onSaveAssistantAsNote:C,onSaveAssistantToSourceNote:w,onExtractAssistantTask:T,onForkAssistantTurn:E,suppressAssistantActions:H,onEditUserMessage:D,userMessageCanEdit:(!B||i)&&(!ee||!!t.turnId)&&t.deliveryStatus!==`sending`,responseFeedbackEnabled:A,showAssistantWorkLog:V})]},g)},me=ne?`pt-8`:`contents`,he;t[28]===me?he=t[29]:(he=J(me),t[28]=me,t[29]=he);let ge;t[30]!==P||t[31]!==ne?(ge=P&&(0,X.jsx)(`div`,{ref:P,className:J(!ne&&`-mt-8`,`shrink-0 transition-none`),"aria-hidden":!0,"data-chat-reply-space":!0}),t[30]=P,t[31]=ne,t[32]=ge):ge=t[32];let _e;t[33]!==he||t[34]!==ge||t[35]!==N?(_e=(0,X.jsxs)(`div`,{className:he,children:[N,ge]}),t[33]=he,t[34]=ge,t[35]=N,t[36]=_e):_e=t[36];let ve=_e,ye=$i,be=!ne&&`flex flex-col gap-8`,xe;t[37]===be?xe=t[38]:(xe=J(`w-full min-w-0 pb-8`,be),t[37]=be,t[38]=xe);let Se=ne||void 0,Ce=ne&&F?(0,X.jsx)(DC,{rows:le,scrollRef:F,renderRow:pe,footer:ve}):(0,X.jsxs)(X.Fragment,{children:[le.map(e=>pe(e.index)),ve]}),we;t[39]!==p||t[40]!==xe||t[41]!==Se||t[42]!==Ce?(we=(0,X.jsx)(`div`,{ref:p,className:xe,"data-chat-virtualized":Se,children:Ce}),t[39]=p,t[40]=xe,t[41]=Se,t[42]=Ce,t[43]=we):we=t[43];let Te;return t[44]!==ye||t[45]!==we?(Te=(0,X.jsx)(ye,{children:we}),t[44]=ye,t[45]=we,t[46]=Te):Te=t[46],Te});function AC(e){return e.language}function jC(e){return e.role===`user`}function MC(e){let t=(0,Y.c)(8),{alt:n,className:r,"aria-hidden":i}=e,a=n?.trim()?n:void 0,o=i??(!a||void 0),s;t[0]===r?s=t[1]:(s=J(`xopc-loop-logo relative inline-block shrink-0`,r),t[0]=r,t[1]=s);let c;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,X.jsxs)(`linearGradient`,{id:`xopc-onboarding-ai-glass`,x1:`198`,y1:`180`,x2:`826`,y2:`844`,gradientUnits:`userSpaceOnUse`,children:[(0,X.jsx)(`stop`,{stopColor:`var(--xopc-loop-ai-highlight)`}),(0,X.jsx)(`stop`,{offset:`0.46`,stopColor:`var(--xopc-loop-ai)`}),(0,X.jsx)(`stop`,{offset:`1`,stopColor:`var(--xopc-loop-ai-shadow)`})]}),t[2]=c):c=t[2];let l;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,X.jsxs)(`svg`,{className:`size-full overflow-visible`,viewBox:`0 0 1024 1024`,fill:`none`,"aria-hidden":`true`,children:[(0,X.jsxs)(`defs`,{children:[c,(0,X.jsxs)(`linearGradient`,{id:`xopc-onboarding-human-glass`,x1:`340`,y1:`224`,x2:`700`,y2:`816`,gradientUnits:`userSpaceOnUse`,children:[(0,X.jsx)(`stop`,{stopColor:`var(--xopc-loop-human-highlight)`}),(0,X.jsx)(`stop`,{offset:`0.52`,stopColor:`var(--xopc-loop-human)`}),(0,X.jsx)(`stop`,{offset:`1`,stopColor:`var(--xopc-loop-human-shadow)`})]})]}),(0,X.jsx)(`circle`,{className:`xopc-loop-logo__ambient`,cx:`512`,cy:`512`,r:`330`}),(0,X.jsx)(`circle`,{className:`xopc-loop-logo__origin`,cx:`512`,cy:`512`,r:`330`}),(0,X.jsx)(`circle`,{className:`xopc-loop-logo__ai-glow`,cx:`512`,cy:`512`,r:`330`,strokeDasharray:`1419.162121 654.289030`,transform:`rotate(11.8 512 512)`}),(0,X.jsx)(`circle`,{className:`xopc-loop-logo__ai`,cx:`512`,cy:`512`,r:`330`,stroke:`url(#xopc-onboarding-ai-glass)`,strokeDasharray:`1419.162121 654.289030`,transform:`rotate(11.8 512 512)`}),(0,X.jsx)(`circle`,{className:`xopc-loop-logo__human`,cx:`512`,cy:`512`,r:`330`,stroke:`url(#xopc-onboarding-human-glass)`,strokeDasharray:`354.790530 1718.660621`,transform:`rotate(284.2 512 512)`}),(0,X.jsx)(`circle`,{className:`xopc-loop-logo__liquid-front`,cx:`512`,cy:`512`,r:`330`,strokeDasharray:`58 2015.451151`,transform:`rotate(11.8 512 512)`})]}),t[3]=l):l=t[3];let u;return t[4]!==o||t[5]!==a||t[6]!==s?(u=(0,X.jsx)(`span`,{className:s,role:`img`,"aria-hidden":o,"aria-label":a,children:l}),t[4]=o,t[5]=a,t[6]=s,t[7]=u):u=t[7],u}var NC=(0,Z.memo)(function(e){let t=(0,Y.c)(19),{visible:n,onClick:r,edge:i,running:a}=e,o=i===void 0?`top`:i,s=a!==void 0&&a,c=h(PC),l;t[0]===c?l=t[1]:(l=y(c),t[0]=c,t[1]=l);let u=l,d=!n,f=o===`top`?`-top-2 -translate-y-full`:`bottom-2`,p=n?`opacity-100`:`opacity-0`,m;t[2]!==f||t[3]!==p?(m=J(`pointer-events-none absolute inset-x-0 z-20 flex items-center justify-center transition-opacity duration-150 ease-out motion-reduce:transition-none`,f,p),t[2]=f,t[3]=p,t[4]=m):m=t[4];let g=n?`scale-100 opacity-100`:`pointer-events-none translate-y-1 scale-95 opacity-0`,_;t[5]===g?_=t[6]:(_=J(`group relative pointer-events-auto flex size-11 sm:size-8 shrink-0 items-center justify-center rounded-full border border-edge-subtle bg-surface-overlay text-fg-muted shadow-surface`,`hover:border-edge-strong hover:text-fg`,ta.transition,ta.press,ta.focusRingPanel,g,`motion-reduce:translate-y-0 motion-reduce:scale-100`),t[5]=g,t[6]=_);let v=n?void 0:-1,b;t[7]===s?b=t[8]:(b=s?(0,X.jsx)(`span`,{"data-scroll-to-bottom-running-logo":!0,className:`flex size-5 items-center justify-center`,"aria-hidden":!0,children:(0,X.jsx)(MC,{className:`xopc-loop-logo--stream size-5`})}):(0,X.jsx)(Bo,{"data-scroll-to-bottom-arrow":!0,className:`size-4 transition-transform duration-150 ease-out group-hover:translate-y-0.5 motion-reduce:transition-none`,strokeWidth:1.8,"aria-hidden":!0}),t[7]=s,t[8]=b);let x;t[9]!==u.chat.scrollToBottom||t[10]!==r||t[11]!==v||t[12]!==b||t[13]!==_?(x=(0,X.jsx)(`button`,{type:`button`,className:_,tabIndex:v,onClick:r,title:u.chat.scrollToBottom,"aria-label":u.chat.scrollToBottom,children:b}),t[9]=u.chat.scrollToBottom,t[10]=r,t[11]=v,t[12]=b,t[13]=_,t[14]=x):x=t[14];let S;return t[15]!==x||t[16]!==d||t[17]!==m?(S=(0,X.jsx)(`div`,{"data-scroll-to-bottom-dock":!0,"aria-hidden":d,className:m,children:x}),t[15]=x,t[16]=d,t[17]=m,t[18]=S):S=t[18],S});function PC(e){return e.language}function FC(e){let t=e.getBoundingClientRect();for(let n of e.querySelectorAll(`[data-chat-message-row]`)){let e=n.getBoundingClientRect(),r=n.dataset.messageRenderKey??n.dataset.clientSubmissionId;if(r&&e.bottom>t.top&&e.top<t.bottom)return{rowId:r,offset:e.top-t.top}}return null}function IC(e,t){if(!t)return!1;let n=Array.from(e.querySelectorAll(`[data-chat-message-row]`)).find(e=>e.dataset.messageRenderKey===t.rowId||e.dataset.clientSubmissionId===t.rowId);if(!n)return!1;let r=n.getBoundingClientRect().top-e.getBoundingClientRect().top-t.offset;return Math.abs(r)>.5&&(e.scrollTop+=r),!0}function LC(e){return e.webkitDirectionInvertedFromDevice===!0?e.deltaY>0:e.deltaY<0}function RC(e,t){return!e||!t||e.role!==t.role?!1:e===t?!0:e.renderKey&&t.renderKey?e.renderKey===t.renderKey:e.clientSubmissionId&&t.clientSubmissionId?e.clientSubmissionId===t.clientSubmissionId:e.timestamp!=null&&e.timestamp===t.timestamp&&e.turnId===t.turnId}function zC(e){let t=(0,Y.c)(48),{hasToken:n,showSessionLoading:r,conversationId:i,chatMessages:a,streaming:o,hasMore:s,loadingMore:c,loadMoreMessages:l}=e,u=(0,Z.useRef)(null),d=(0,Z.useRef)(null),f=(0,Z.useRef)(null),p=(0,Z.useRef)(!0),m=(0,Z.useRef)(null),h=(0,Z.useRef)(null),g=(0,Z.useRef)(null),_=(0,Z.useRef)(null),v=(0,Z.useRef)(0),y=(0,Z.useRef)(0),b=(0,Z.useRef)(null),x=(0,Z.useRef)(null),S=(0,Z.useRef)(null),C=(0,Z.useRef)(null),w=(0,Z.useRef)(0),T=(0,Z.useRef)(0),[E,D]=(0,Z.useState)(!0),O=(0,Z.useRef)(!0),k=(0,Z.useRef)(0),A=(0,Z.useRef)(o),j;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(j={first:void 0,len:0,scrollHeight:0},t[0]=j):j=t[0];let M=(0,Z.useRef)(j),N;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(N=e=>{p.current=e,e&&(S.current=null)},t[1]=N):N=t[1];let P=N,F;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(F=e=>{let t=u.current;if(!t)return;let n=gC(t);P(n),D(n),_.current=n?e:null,n||(S.current=FC(t))},t[2]=F):F=t[2];let I=F,L;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(L=()=>{let e=u.current,t=m.current;if(!e||!t||!p.current||!_.current&&!h.current)return!1;let n=_.current??h.current;if(!n)return!1;let r=!_.current&&g.current?.isConnected?g.current:Array.from(e.querySelectorAll(`[data-chat-message-row]`)).find(e=>e.dataset.messageRenderKey===n||e.dataset.clientSubmissionId===n);if(!r)return!1;_.current&&(h.current=n,g.current=r,_.current=null,v.current=Math.min(64,Math.max(0,e.clientHeight)*.1),y.current=v.current);let i=parseFloat(getComputedStyle(t.parentElement).paddingTop)||0,a=Math.max(i,t.getBoundingClientRect().top-r.getBoundingClientRect().bottom),o=Math.max(y.current,a),s=Math.min(v.current,Math.min(64,Math.max(0,e.clientHeight)*.1)),c=Math.max(0,Math.min(s,o-a));return y.current=a+c,t.style.height===`${c}px`?!1:(t.style.height=`${c}px`,!0)},t[3]=L):L=t[3];let R=L,z;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(z=e=>{let t=u.current;if(!t||!e?.force&&!p.current)return;e?.force&&P(!0);let n=SC(t);if(n){n.end(!!e?.smooth),w.current=t.scrollHeight,T.current=t.clientHeight;return}if(e?.smooth){t.scrollTo({top:t.scrollHeight,behavior:yC()});return}_C(t),w.current=t.scrollHeight,T.current=t.clientHeight,D(gC(t))},t[4]=z):z=t[4];let B=z,ee;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(ee=()=>{let e=u.current;!e||e.scrollHeight<=e.clientHeight||(P(!1),D(gC(e)))},t[5]=ee):ee=t[5];let V=ee,H;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(H=()=>{let e=u.current;if(!e)return;!p.current&&!SC(e)&&IC(e,S.current);let t=R(),n=e.scrollHeight>w.current,r=e.clientHeight<T.current;w.current=e.scrollHeight,T.current=e.clientHeight,(n||r||t)&&B(),D(gC(e))},t[6]=H):H=t[6];let te=H,U;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(U=()=>{let e=u.current;e&&p.current&&(SC(e)?_C(e):e.scrollHeight>w.current&&B()),C.current===null&&(C.current=requestAnimationFrame(()=>{C.current=null,te()}))},t[7]=U):U=t[7];let W=U,ne;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(ne=e=>{if(f.current===e||(x.current?.disconnect(),b.current?.disconnect(),b.current=null,x.current=null,f.current=e,!e))return;let t=new ResizeObserver(W);t.observe(e),x.current=t;let n=new MutationObserver(e=>{let t=u.current;!t||!p.current||!SC(t)||(R()||e.some(BC))&&_C(t)});n.observe(e,{subtree:!0,childList:!0,characterData:!0,attributes:!0,attributeFilter:[`style`]}),b.current=n},t[8]=ne):ne=t[8];let re=ne,ie,ae;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(ie=()=>()=>{x.current?.disconnect(),b.current?.disconnect(),C.current!==null&&(cancelAnimationFrame(C.current),C.current=null)},ae=[],t[9]=ie,t[10]=ae):(ie=t[9],ae=t[10]),(0,Z.useEffect)(ie,ae);let oe;t[11]!==s||t[12]!==l||t[13]!==c?(oe=()=>{let e=u.current;if(!e)return;let t=gC(e),n=T.current>0&&(e.scrollHeight!==w.current||e.clientHeight!==T.current);if(!t&&p.current&&n){D(!1),W();return}P(t),t||(S.current=FC(e)),D(t),t&&R(),e.scrollTop<100&&!t&&s&&!c&&l()},t[11]=s,t[12]=l,t[13]=c,t[14]=oe):oe=t[14];let se=oe,G;t[15]===Symbol.for(`react.memo_cache_sentinel`)?(G=e=>{B({force:!0,smooth:e===void 0||e})},t[15]=G):G=t[15];let K=G,ce,le;t[16]!==n||t[17]!==r?(ce=()=>{if(n){if(r){O.current=!0;return}O.current===!0&&(O.current=!1,P(!0),B({force:!0}))}},le=[r,n,P,B],t[16]=n,t[17]=r,t[18]=ce,t[19]=le):(ce=t[18],le=t[19]),(0,Z.useLayoutEffect)(ce,le);let q;t[20]!==n||t[21]!==r?(q=()=>{!n||r||(M.current={first:void 0,len:0,scrollHeight:0},k.current=0,w.current=0,T.current=0,h.current=null,g.current=null,y.current=0,Array.from(u.current?.querySelectorAll(`[data-chat-message-row]`)??[]).some(e=>e.dataset.messageRenderKey===_.current||e.dataset.clientSubmissionId===_.current)||(_.current=null),m.current&&(m.current.style.height=`0px`),P(!0),B({force:!0}))},t[20]=n,t[21]=r,t[22]=q):q=t[22];let ue;t[23]!==i||t[24]!==n||t[25]!==r?(ue=[i,n,r,P,B],t[23]=i,t[24]=n,t[25]=r,t[26]=ue):ue=t[26],(0,Z.useLayoutEffect)(q,ue);let de,fe;t[27]!==a||t[28]!==r||t[29]!==o?(de=()=>{if(r)return;let e=A.current&&!o;A.current=o;let t=R(),n=a.length,i=k.current;k.current=n;let s=(u.current?.scrollHeight??0)>w.current;p.current&&(n>i||s||t||e)&&B()},fe=[a,o,r,B,R],t[27]=a,t[28]=r,t[29]=o,t[30]=de,t[31]=fe):(de=t[30],fe=t[31]),(0,Z.useLayoutEffect)(de,fe);let pe,me;t[32]!==a||t[33]!==r?(pe=()=>{let e=u.current;if(!e||r)return;let t=M.current,n=a[0],i=a.length,o=e.scrollHeight,s=i-t.len;s>0&&t.len>0&&!RC(n,t.first)&&RC(a[s],t.first)&&!SC(e)&&t.scrollHeight>0&&!IC(e,S.current)&&(e.scrollTop+=o-t.scrollHeight),M.current={first:n,len:i,scrollHeight:o}},me=[a,r],t[32]=a,t[33]=r,t[34]=pe,t[35]=me):(pe=t[34],me=t[35]),(0,Z.useLayoutEffect)(pe,me);let he,ge;t[36]!==n||t[37]!==r?(he=()=>{if(!n||r)return;let e=u.current;if(!e)return;let t=new ResizeObserver(W);t.observe(e);let i=e=>{Math.abs(e.deltaY)<Math.abs(e.deltaX)||Math.abs(e.deltaY)<.25||LC(e)&&V()},a=0,o=e=>{e.touches.length===1&&(a=e.touches[0].clientY)},s=e=>{if(e.touches.length!==1)return;let t=e.touches[0].clientY,n=t-a;a=t,n>2&&V()},c=t=>{if(t.button!==0)return;let n=e.offsetWidth-e.clientWidth;if(n<=0)return;let r=e.getBoundingClientRect();t.clientX>=r.right-n&&V()},l=()=>{let t=window.getSelection();!t||t.isCollapsed||!e.contains(t.anchorNode)||(V(),S.current=FC(e))},d=t=>{(t.target instanceof Element?t.target:null)?.closest(`button[aria-expanded="false"]:not([aria-haspopup]), summary`)&&(V(),S.current=FC(e))};return e.addEventListener(`chat-scroll-reading`,V),e.addEventListener(`wheel`,i,{passive:!0}),e.addEventListener(`pointerdown`,c),e.addEventListener(`touchstart`,o,{passive:!0}),e.addEventListener(`touchmove`,s,{passive:!0}),e.addEventListener(`click`,d,!0),document.addEventListener(`selectionchange`,l),()=>{t.disconnect(),e.removeEventListener(`chat-scroll-reading`,V),e.removeEventListener(`wheel`,i),e.removeEventListener(`pointerdown`,c),e.removeEventListener(`touchstart`,o),e.removeEventListener(`touchmove`,s),e.removeEventListener(`click`,d,!0),document.removeEventListener(`selectionchange`,l)}},ge=[n,r,V,W],t[36]=n,t[37]=r,t[38]=he,t[39]=ge):(he=t[38],ge=t[39]),(0,Z.useLayoutEffect)(he,ge);let _e;t[40]===n?_e=t[41]:(_e=()=>{if(!n)return;let e=u.current,t=d.current;if(!e||!t)return;let r=()=>{let n=`${t.getBoundingClientRect().height+16}px`;e.style.paddingBottom=n,e.style.scrollPaddingBottom=n,W()};r();let i=new ResizeObserver(r);return i.observe(t),()=>{i.disconnect(),e.style.removeProperty(`padding-bottom`),e.style.removeProperty(`scroll-padding-bottom`)}},t[40]=n,t[41]=_e);let ve;t[42]!==n||t[43]!==r?(ve=[n,r,W],t[42]=n,t[43]=r,t[44]=ve):ve=t[44],(0,Z.useLayoutEffect)(_e,ve);let ye;return t[45]!==E||t[46]!==se?(ye={scrollRef:u,composerDockRef:d,atBottom:E,registerListContentRef:re,scrollToBottom:K,onScroll:se,replySpaceRef:m,reserveReplySpace:I},t[45]=E,t[46]=se,t[47]=ye):ye=t[47],ye}function BC(e){return e.target instanceof HTMLElement&&e.target.hasAttribute(`data-virtuoso-scroller`)}var VC=256*1024,HC=new TextEncoder;function UC(e){return HC.encode(e).byteLength}function WC(e){return UC(e)<=262144?e:new TextDecoder().decode(HC.encode(e).subarray(0,VC),{stream:!0})}function GC(e){let t=512*1024,n=e.length>20,r=[];for(let i of e.slice(-20).reverse()){let e=i.content.filter(e=>e.type===`text`).map(e=>e.text).join(`
|
|
61
|
+
`);if((i.content.some(e=>e.type!==`text`)||i.attachments?.length)&&(n=!0),!e)continue;if(t<=256){n=!0;continue}let a=HC.encode(e),o=a.byteLength+256>t?new TextDecoder().decode(a.subarray(0,t-256),{stream:!0}):e;o!==e&&(n=!0);let s=UC(o)+256;t-=s,r.unshift({role:i.role,content:[{type:`text`,text:o}],timestamp:i.timestamp,renderKey:i.renderKey?.slice(0,128)})}return{messages:r,truncated:n,bytes:512*1024-t}}var KC=`xopc:side-chat-panes:v3`,qC={text:``,attachments:[]};function JC(e){return Math.min(760,Math.max(360,Math.round(e)))}function YC(){return{panes:{},tabs:[],widthPx:520}}function XC(){try{let e=JSON.parse(sessionStorage.getItem(KC)||`{}`),t=e.identity;if(t&&t!==m.getState().conversationId)return YC();let n=Array.isArray(e.tabs)?e.tabs.filter(e=>!!(e?.id&&e.parentConversationId)):[],r=e.panes&&typeof e.panes==`object`?e.panes:{},i=Object.fromEntries(Object.entries(r).map(([e,t])=>{let r=n.filter(t=>t.parentConversationId===e),i=typeof t?.activeId==`string`&&r.some(e=>e.id===t.activeId)?t.activeId:r.at(-1)?.id??null;return[e,{open:t?.open===!0&&r.length>0,activeId:i}]}));for(let e of n)i[e.parentConversationId]??={open:!1,activeId:e.id};return{panes:i,tabs:n,widthPx:JC(typeof e.widthPx==`number`?e.widthPx:520)}}catch{return YC()}}function ZC(e){try{sessionStorage.setItem(KC,JSON.stringify({...e,identity:m.getState().conversationId}))}catch{}}var QC=XC(),$C=_((e,t)=>{let n=n=>{e(n),queueMicrotask(()=>{let e=t();ZC({panes:e.panes,tabs:e.tabs,widthPx:e.widthPx})})},r=(e,r)=>{let i=t().panes[e]??{open:!1,activeId:null};n({panes:{...t().panes,[e]:{...i,...r}}})};return{...QC,drafts:{},readings:{},setDraftText:(n,r)=>e({drafts:{...t().drafts,[n]:{...t().drafts[n]??qC,text:r}}}),setDraftAttachments:(n,r)=>e({drafts:{...t().drafts,[n]:{...t().drafts[n]??qC,attachments:r}}}),rememberMessages:(n,r)=>{let i={...t().readings};delete i[n],i[n]=GC(r),i[n].truncated||=t().readings[n]?.truncated??!1;let a=Object.values(i).reduce((e,t)=>e+t.bytes,0);for(;Object.keys(i).length>5||a>2097152;){let e=Object.keys(i)[0];a-=i[e].bytes,delete i[e]}e({readings:i})},markEnded:(e,r)=>n({tabs:t().tabs.map(t=>t.id===e?{...t,ended:r,runId:void 0}:t)}),markPromoted:(e,r)=>n({tabs:t().tabs.map(t=>t.id===e?{...t,ended:`promoted`,promotedConversationId:r,runId:void 0}:t)}),replaceTab:(r,i)=>{oi.getState().replaceSideChat(r,i.id,i.parentConversationId);let a=t();if(!a.tabs.some(e=>e.id===r))return;let o={...a.drafts,[i.id]:a.drafts[r]??qC},s={...a.readings};delete o[r],delete s[r],e({drafts:o,readings:s}),n({tabs:a.tabs.map(e=>e.id===r?{...i,fresh:!0}:e),panes:{...a.panes,[i.parentConversationId]:{open:a.panes[i.parentConversationId]?.open??!1,activeId:a.panes[i.parentConversationId]?.activeId===r?i.id:a.panes[i.parentConversationId]?.activeId??i.id}}})},reset:()=>{oi.getState().reset(),e({drafts:{},readings:{},pendingCreate:null,creatingRequests:{}}),n({panes:{},tabs:[]})},pendingCreate:null,creatingRequests:{},requestCreate:(n,i=[])=>{oi.getState().setOpen(!0,n),!(t().creatingRequests[n]||t().pendingCreate?.parentConversationId===n)&&(e({pendingCreate:{requestId:crypto.randomUUID(),parentConversationId:n,selections:i}}),r(n,{open:!0}))},claimPendingCreate:(n,r)=>{let i=t().pendingCreate;return!i||i.parentConversationId!==n||i.requestId!==r?null:(e({pendingCreate:null,creatingRequests:{...t().creatingRequests,[n]:r}}),i)},finishCreate:(n,r)=>{if(t().creatingRequests[n]!==r)return;let i={...t().creatingRequests};delete i[n],e({creatingRequests:i})},addTab:(e,r=!0)=>{oi.getState().addSideChat(e.id,e.title,e.parentConversationId,r);let i=[...t().tabs.filter(t=>t.id!==e.id),{...e,lastSelectedAt:Date.now()}],a=t().panes[e.parentConversationId]??{open:!1,activeId:null};n({tabs:i,panes:{...t().panes,[e.parentConversationId]:{...a,activeId:e.id,open:!0}}})},removeTab:r=>{let i=t().tabs.find(e=>e.id===r);if(!i)return;oi.getState().remove(`side:${r}`,i.parentConversationId);let a={...t().drafts},o={...t().readings};delete a[r],delete o[r],e({drafts:a,readings:o});let s=t().tabs.filter(e=>e.id!==r),c=s.filter(e=>e.parentConversationId===i.parentConversationId),l=t().panes[i.parentConversationId]??{open:!1,activeId:null},u=l.activeId===r?c.at(-1)?.id??null:l.activeId;n({tabs:s,panes:{...t().panes,[i.parentConversationId]:{open:c.length>0&&l.open,activeId:u}}})},setActive:e=>{let i=t().tabs.find(t=>t.id===e);i&&(oi.getState().activate(`side:${e}`,i.parentConversationId),n({tabs:t().tabs.map(t=>t.id===e?{...t,lastSelectedAt:Date.now()}:t)}),r(i.parentConversationId,{activeId:e,open:!0}))},setTabStatus:(n,r)=>{let i=t().tabs.find(e=>e.id===n);i&&(i.waiting!==r.waiting||i.disconnected!==r.disconnected||i.unread!==r.unread)&&e({tabs:t().tabs.map(e=>e.id===n?{...e,...r}:e)})},setTabRunId:(e,r)=>n({tabs:t().tabs.map(t=>t.id===e?{...t,runId:r}:t)}),setOpen:(e,n)=>{if(oi.getState().setOpen(n,e),!n){r(e,{open:n});return}let i=t(),a=i.tabs.filter(t=>t.parentConversationId===e&&!t.ended&&!t.promotedConversationId),o=a.find(t=>t.id===i.panes[e]?.activeId)??a.reduce((e,t)=>!e||(t.lastSelectedAt??0)>=(e.lastSelectedAt??0)?t:e,void 0);r(e,{open:n,activeId:o?.id??null}),o&&oi.getState().activate(`side:${o.id}`,e),o||i.requestCreate(e)},setWidthPx:e=>n({widthPx:JC(e)})}});m.subscribe((e,t)=>{if(e.conversationId&&!t.conversationId&&e.baseUrl===t.baseUrl){let e=XC();$C.setState(e)}if(e.baseUrl!==t.baseUrl||t.conversationId!==void 0&&e.conversationId!==t.conversationId){$C.getState().reset();try{sessionStorage.removeItem(`xopc:side-chat-client-id`)}catch{}}});function ew(e){return e.acceptsArgs?`/${e.name} `:`/${e.name}`}var tw=3e4,nw=null;function rw(e,t){return e.map(e=>({id:`file:${e.id}`,kind:`file`,name:e.name,description:e.path,relativePath:e.path,isDirectory:e.isDirectory,...t.has(e.path)?{isRecent:!0}:{},fileRef:{sourceId:e.id,expectedVersion:e.revision}}))}async function iw(e,t){let n=t.conversationId?.trim(),r=t.agentId?.trim(),i=t.limit??15,a=e.trim(),o=t.recentPaths??new Set;if(n&&a.length===0){let e=Date.now();if(nw&&nw.key===n&&e-nw.at<tw)return nw.items.map(e=>({...e,...o.has(e.relativePath)?{isRecent:!0}:{isRecent:void 0}}))}let s={conversationId:n,agentId:r},c=rw(a.length===0?await Aa(``,s):await Oa(a,s,i),o);return n&&a.length===0&&(nw={key:n,at:Date.now(),items:c}),c}async function aw(e,t){return Aa(e,{conversationId:t.conversationId,agentId:t.agentId})}function ow(e,...t){let n=e.trim().toLocaleLowerCase();return!n||t.some(e=>e?.toLocaleLowerCase().includes(n))}async function sw(e){let t=await f(p(e)),n=await t.json().catch(()=>({}));if(!t.ok||!n.payload)throw Error(typeof n.error==`string`?n.error:`HTTP ${t.status}`);return n.payload}var cw=[{kind:`file`,search:(e,t)=>iw(e,{conversationId:t.conversationId,agentId:t.currentAgentId,limit:10,recentPaths:t.recentPaths})},{kind:`note`,async search(e,t){return(await Be({...e.trim()?{search:e.trim()}:{},limit:5,sortBy:`updatedAt`,sortOrder:`desc`})).items.filter(e=>e.status!==`trashed`&&!t.selectedContextKeys.has(`note:${e.id}`)).map(e=>({id:`note:${e.id}`,kind:`note`,name:e.title?.trim()||e.snippet?.trim()||y(t.language).chat.commandPalette.untitledNote,description:e.snippet?.trim()||``,noteRef:{sourceId:e.id,expectedVersion:String(e.updatedAt)}}))}},{kind:`session`,async search(e,t){return(await fn({...e.trim()?{search:e.trim()}:{},limit:5,sortBy:`updatedAt`,sortOrder:`desc`})).items.filter(e=>e.key!==t.conversationId&&!t.selectedContextKeys.has(`session:${e.key}`)).map(e=>({id:`session:${e.key}`,kind:`session`,name:e.name?.trim()||e.key,description:`${e.messageCount} messages`,sessionRef:{sourceId:e.key,expectedVersion:e.updatedAt}}))}},{kind:`skill`,async search(e,t){return(await to(t.currentAgentId,t.conversationId)).skills.flatMap(n=>{if(!n.availableForCurrentAgent)return[];let r=so(n,t.language);return ow(e,n.name,r.displayName,r.description,...r.searchTerms)?[{id:`skill:${n.name}`,kind:`skill`,name:r.displayName,description:r.description,canonicalName:n.name}]:[]}).slice(0,5)}},{kind:`agent`,async search(e,t){let n=await Jr(),r=y(t.language).agentsSettings;return n.items.flatMap(t=>{let n=Ao(t,r),i=jo(t,r);return ow(e,t.id,n,i)?[{id:`agent:${t.id}`,kind:`agent`,name:n,description:i,agentId:t.id,...t.avatar?{avatar:t.avatar}:{}}]:[]}).slice(0,5)}},{kind:`browser_tab`,async search(e,t){return(await sw(`/api/browser/tabs?${new URLSearchParams({conversationId:t.conversationId})}`)).tabs.flatMap(n=>!ow(e,n.title,n.url)||t.selectedContextKeys.has(`browser_tab:${n.id}`)?[]:[{id:`browser-tab:${n.id}`,kind:`browser_tab`,name:n.title||n.url,description:n.url,url:n.url,tabRef:{sourceId:n.id,expectedVersion:n.documentId}}])}}],lw=(0,Z.createContext)({target:null,register:()=>()=>{}});function uw(e){let t=(0,Y.c)(9),{children:n}=e,r;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=[],t[0]=r):r=t[0];let[i,a]=(0,Z.useState)(r),o;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(o=e=>(a(t=>[...t,e]),()=>a(t=>t.filter(t=>t!==e))),t[1]=o):o=t[1];let s=o,c;t[2]===i?c=t[3]:(c=i.at(-1)??null,t[2]=i,t[3]=c);let l;t[4]===c?l=t[5]:(l={target:c,register:s},t[4]=c,t[5]=l);let u=l,d;return t[6]!==n||t[7]!==u?(d=(0,X.jsx)(lw,{value:u,children:n}),t[6]=n,t[7]=u,t[8]=d):d=t[8],d}function dw(){let e=(0,Y.c)(2),{register:t}=(0,Z.useContext)(lw),n;return e[0]===t?n=e[1]:(n=(0,X.jsx)(`div`,{ref:t,className:`min-w-0 shrink-0`}),e[0]=t,e[1]=n),n}function fw(){return(0,Z.useContext)(lw).target}function pw({conversationId:e,turnId:t,messages:n,ready:r,hasMore:i,loadingMore:a,loadMore:o,reveal:s,onLocated:c}){let l=(0,Z.useRef)({key:``,finished:!1,requestedLength:-1});(0,Z.useEffect)(()=>{let u=`${e??``}:${t??``}`;if(l.current.key!==u&&(l.current={key:u,finished:!1,requestedLength:-1}),!t||!r||l.current.finished)return;let d=l.current,f=n.findIndex(e=>e.turnId===t);if(f>=0){let e=0,t=!1,n=0,r=()=>{t||l.current===d&&(s(f)?(d.finished=!0,c?.(!0)):++n<3?e=requestAnimationFrame(r):(d.finished=!0,c?.(!1)))};return e=requestAnimationFrame(r),()=>{t=!0,cancelAnimationFrame(e)}}if(!a){if(!i||l.current.requestedLength===n.length){l.current.finished=!0,c?.(!1);return}l.current.requestedLength=n.length,o().catch(()=>{l.current===d&&(d.finished=!0,c?.(!1))})}},[e,t,n,r,i,a,o,s,c])}function mw(e){let t=(0,Y.c)(24),{sk:n,onPick:r,disabled:i}=e,a;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,X.jsx)(zt,{className:`size-4`,"aria-hidden":!0}),t[0]=a):a=t[0];let o;t[1]===n.findCapability?o=t[2]:(o=(0,X.jsxs)(`span`,{className:`inline-flex items-center gap-2 text-sm text-accent-fg`,children:[a,n.findCapability]}),t[1]=n.findCapability,t[2]=o);let s;t[3]===n.findWelcome?s=t[4]:(s=(0,X.jsx)(`h1`,{className:`text-xl font-semibold text-fg`,children:n.findWelcome}),t[3]=n.findWelcome,t[4]=s);let c;t[5]===n.findDescription?c=t[6]:(c=(0,X.jsx)(`p`,{className:`text-sm leading-relaxed text-fg-muted`,children:n.findDescription}),t[5]=n.findDescription,t[6]=c);let l;if(t[7]!==i||t[8]!==r||t[9]!==n.findExamples){let e;t[11]!==i||t[12]!==r?(e=e=>(0,X.jsx)(ai,{disabled:i,onClick:()=>r(e),children:e},e),t[11]=i,t[12]=r,t[13]=e):e=t[13],l=n.findExamples.map(e),t[7]=i,t[8]=r,t[9]=n.findExamples,t[10]=l}else l=t[10];let d;t[14]===l?d=t[15]:(d=(0,X.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:l}),t[14]=l,t[15]=d);let f;t[16]===n.findBack?f=t[17]:(f=(0,X.jsx)(u,{to:`/capabilities/skills`,className:`text-sm text-accent-fg hover:underline`,children:n.findBack}),t[16]=n.findBack,t[17]=f);let p;return t[18]!==o||t[19]!==s||t[20]!==c||t[21]!==d||t[22]!==f?(p=(0,X.jsxs)(`section`,{className:`mx-auto flex max-w-xl flex-col items-start gap-4 py-8 sm:py-12`,children:[o,s,c,d,f]}),t[18]=o,t[19]=s,t[20]=c,t[21]=d,t[22]=f,t[23]=p):p=t[23],p}function hw(e){let t=`/api/sessions/${encodeURIComponent(e)}/connection-wait`,n=Mn(t=>t.sessions[e]?.localDraft),{data:r,mutate:i,isLoading:a}=Lr(n?null:[t,n===!1?`persisted`:`unknown`],async()=>await br(e)?null:(await g(p(t))).payload,{refreshInterval:e=>e?.wait?5e3:0,revalidateOnFocus:!0}),o=(0,Z.useRef)(r);o.current=r;let s=(0,Z.useRef)(!1),c=(0,Z.useRef)(!1),l=(0,Z.useRef)(0),u=(0,Z.useRef)(null),[d,f]=(0,Z.useState)(!1),[m,_]=(0,Z.useState)(),[v,y]=(0,Z.useState)(),b=(0,Z.useCallback)(async(e,n,r,a,d)=>{let m=o.current,v=m?.wait;if(!v||(e===`cancel`?c.current:s.current||c.current))return!1;e===`cancel`?c.current=!0:s.current=!0,l.current+=1,f(!0),_(void 0),e===`cancel`&&y(void 0);let b=e===`connect`?Fo():null,x=JSON.stringify([v.id,v.objectiveRevision,e,n,r,a,d]);u.current?.signature!==x&&(u.current={signature:x,key:crypto.randomUUID()});let S=u.current.key,C=i=>g(p(`${t}/actions`),{method:`POST`,body:JSON.stringify({action:e,needKey:n,accountId:r,candidateRef:a,instanceId:d,waitId:v.id,expectedTranscriptId:i.transcriptId,expectedVersion:i.wait.version,...e===`cancel`?{expectedObjectiveRevision:v.objectiveRevision}:{},idempotencyKey:S})});try{let n;try{n=await C(m)}catch(r){if(e!==`cancel`||r.status!==409)throw r;let a=(await g(p(t))).payload;if(await i(e=>!e||e.transcriptId!==a.transcriptId||a.revision>=e.revision?a:e,!1),a.transcriptId!==m.transcriptId||a.wait?.id!==v.id||a.wait.objectiveRevision!==v.objectiveRevision)throw r;n=await C(a)}let r=n.payload.snapshot;if(await i(e=>!e||e.transcriptId!==r.transcriptId||r.revision>=e.revision?r:e,!1),n.payload.authorizationUrl){if(!await Po(n.payload.authorizationUrl,b))throw Error(`Unable to open the authorization window. Allow pop-ups, then retry.`)}else Io(b);return u.current?.signature===x&&(u.current=null),!0}catch(t){if(Io(b),t.status===409&&e===`cancel`){let e=h.getState().language===`zh`?`目标状态已变化,未能取消。请检查当前任务状态后再试。`:`The objective state changed and cancellation was not confirmed. Check its current status and try again.`;_(e),y(e)}else if(t.status!==409){let n=t instanceof Error?t.message:String(t);_(n),e===`cancel`&&y(n)}return await i(),!1}finally{e===`cancel`?c.current=!1:s.current=!1,--l.current,f(l.current>0)}},[t,i]);return(0,Z.useEffect)(()=>{let t=t=>{let n=t.detail;n?.conversationId===e&&(n.revision??1/0)>(o.current?.revision??0)&&i()};window.addEventListener(`session-connection-wait-changed`,t);let n=()=>{i()};return window.addEventListener(`gateway-realtime-connected`,n),()=>{window.removeEventListener(`session-connection-wait-changed`,t),window.removeEventListener(`gateway-realtime-connected`,n)}},[e,i]),{wait:r?.wait,isLoading:a,busy:d,error:m,cancellationError:v,act:b,dismissError:()=>{_(void 0),y(void 0)}}}function gw(e){let t=(0,Y.c)(39),{need:n,language:r,disabled:i,onSelect:a,onConnect:o}=e,s=(0,Z.useId)(),[c,l]=(0,Z.useState)(),u=r===`zh`,d;if(t[0]!==n.accounts||t[1]!==c){let e;t[3]===c?e=t[4]:(e=e=>e.id===c,t[3]=c,t[4]=e),d=n.accounts.some(e),t[0]=n.accounts,t[1]=c,t[2]=d}else d=t[2];let f=d,p=u?`这次使用哪个 ${n.label} 账号或工作区?`:`Which ${n.label} account or workspace should this request use?`,m;t[5]===p?m=t[6]:(m=(0,X.jsx)(`legend`,{className:`float-left mb-3 w-full text-sm font-medium text-fg`,children:p}),t[5]=p,t[6]=m);let h;if(t[7]!==s||t[8]!==n.accounts||t[9]!==c){let e;t[11]!==s||t[12]!==c?(e=e=>(0,X.jsxs)(`label`,{className:`flex min-h-11 cursor-pointer items-center gap-3 rounded-lg border px-3 py-2 text-sm text-fg hover:bg-surface-hover ${c===e.id?`border-accent bg-surface-hover`:`border-edge`}`,children:[(0,X.jsx)(`input`,{type:`radio`,name:s,value:e.id,checked:c===e.id,onChange:()=>l(e.id),className:`shrink-0 accent-accent focus-visible:outline-2 focus-visible:outline-accent`}),(0,X.jsx)(`span`,{className:`min-w-0 break-words`,children:e.label})]},e.id),t[11]=s,t[12]=c,t[13]=e):e=t[13],h=n.accounts.map(e),t[7]=s,t[8]=n.accounts,t[9]=c,t[10]=h}else h=t[10];let g;t[14]===h?g=t[15]:(g=(0,X.jsx)(`div`,{className:`clear-both grid max-h-48 gap-2 overflow-y-auto sm:grid-cols-2`,children:h}),t[14]=h,t[15]=g);let _=u?`选择仅用于本次目标,选定后会自动继续。`:`This choice applies to this objective only. It will continue after selection.`,v;t[16]===_?v=t[17]:(v=(0,X.jsx)(`p`,{className:`text-xs text-fg-muted`,children:_}),t[16]=_,t[17]=v);let y=i||!f,b;t[18]!==a||t[19]!==c||t[20]!==f?(b=()=>{f&&c&&a(c)},t[18]=a,t[19]=c,t[20]=f,t[21]=b):b=t[21];let x=u?`使用所选账号并继续`:`Use selected account and continue`,S;t[22]!==x||t[23]!==y||t[24]!==b?(S=(0,X.jsx)(`button`,{type:`button`,disabled:y,onClick:b,className:`min-h-11 rounded-lg bg-accent px-3 py-2 text-sm text-on-accent disabled:opacity-50`,children:x}),t[22]=x,t[23]=y,t[24]=b,t[25]=S):S=t[25];let C=u?`连接其他账号`:`Connect another account`,w;t[26]!==i||t[27]!==o||t[28]!==C?(w=(0,X.jsx)(`button`,{type:`button`,disabled:i,onClick:o,className:`min-h-11 rounded-lg px-3 py-2 text-sm text-accent hover:bg-surface-hover disabled:opacity-50`,children:C}),t[26]=i,t[27]=o,t[28]=C,t[29]=w):w=t[29];let T;t[30]!==S||t[31]!==w?(T=(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[S,w]}),t[30]=S,t[31]=w,t[32]=T):T=t[32];let E;return t[33]!==i||t[34]!==T||t[35]!==m||t[36]!==g||t[37]!==v?(E=(0,X.jsxs)(`fieldset`,{disabled:i,className:`mt-3 min-w-0 space-y-3 border-t border-edge-subtle pt-3`,children:[m,g,v,T]}),t[33]=i,t[34]=T,t[35]=m,t[36]=g,t[37]=v,t[38]=E):E=t[38],E}var _w=(0,Z.lazy)(()=>o(()=>import(`./mcp-conversation-setup-page-BEp5E6TD.js`).then(e=>({default:e.McpConversationSetupDialog})),__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])));function vw(e){let t=(0,Y.c)(35),{conversationId:n}=e,r=h(xw),[i,a]=l(),o;t[0]===i?o=t[1]:(o=i.get(`mcpSetup`),t[0]=i,t[1]=o);let s=o,c;t[2]!==i||t[3]!==a?(c=e=>{let t=new URLSearchParams(i);e?t.set(`mcpSetup`,e):t.delete(`mcpSetup`),a(t,{replace:!e})},t[2]=i,t[3]=a,t[4]=c):c=t[4];let d=c,f;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(f={refreshInterval:yw,shouldRetryOnError:!1},t[5]=f):f=t[5];let{data:p,mutate:m}=Lr(`/api/mcp/setup/conversations/${encodeURIComponent(n)}`,bw,f),g;t[6]!==n||t[7]!==p?.permitted||t[8]!==m?(g=()=>{if(p?.permitted===!1)return;let e=e=>{let t=e.detail;(t?.conversationId??t?.key)===n&&m()},t=()=>{m()};return window.addEventListener(`session-mcp-setup-changed`,e),window.addEventListener(`session-transcript-updated`,e),window.addEventListener(`gateway-realtime-connected`,t),()=>{window.removeEventListener(`session-mcp-setup-changed`,e),window.removeEventListener(`session-transcript-updated`,e),window.removeEventListener(`gateway-realtime-connected`,t)}},t[6]=n,t[7]=p?.permitted,t[8]=m,t[9]=g):g=t[9];let _=p?.permitted,v;t[10]!==n||t[11]!==m||t[12]!==_?(v=[n,m,_],t[10]=n,t[11]=m,t[12]=_,t[13]=v):v=t[13],(0,Z.useEffect)(g,v);let y;t[14]!==m||t[15]!==s||t[16]!==d?(y=s?(0,X.jsx)(Z.Suspense,{fallback:null,children:(0,X.jsx)(_w,{setupId:s,onClose:()=>{d(null),m()}})}):null,t[14]=m,t[15]=s,t[16]=d,t[17]=y):y=t[17];let b=y;if(!p?.setup)return b;let x=p.setup,S=r===`zh`?`服务连接`:`Service connection`,C=x.expired?r===`zh`?`连接请求已过期`:`Connection request expired`:r===`zh`?`连接`:`Connect`,w=x.displayName||x.serverId,T;t[18]!==w||t[19]!==C?(T=(0,X.jsxs)(`span`,{className:`min-w-0 flex-1 break-all text-sm text-fg`,role:`status`,children:[C,` `,w]}),t[18]=w,t[19]=C,t[20]=T):T=t[20];let E=`/mcp-setup/${encodeURIComponent(x.setupId)}`,D;t[21]!==d||t[22]!==x.setupId?(D=e=>{e.button!==0||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey||(e.preventDefault(),d(x.setupId))},t[21]=d,t[22]=x.setupId,t[23]=D):D=t[23];let O=r===`zh`?`完成连接`:`Complete connection`,k;t[24]!==E||t[25]!==D||t[26]!==O?(k=(0,X.jsx)(u,{className:`inline-flex min-h-11 items-center rounded-lg px-3 text-sm text-accent-fg hover:bg-surface-hover`,to:E,onClick:D,children:O}),t[24]=E,t[25]=D,t[26]=O,t[27]=k):k=t[27];let A;t[28]!==T||t[29]!==k||t[30]!==S?(A=(0,X.jsxs)(`section`,{className:`mb-2 flex flex-wrap items-center gap-3 rounded-xl border border-edge bg-surface-panel px-3 py-2`,"aria-label":S,children:[T,k]}),t[28]=T,t[29]=k,t[30]=S,t[31]=A):A=t[31];let j;return t[32]!==b||t[33]!==A?(j=(0,X.jsxs)(X.Fragment,{children:[A,b]}),t[32]=b,t[33]=A,t[34]=j):j=t[34],j}function yw(e){return e?.setup?5e3:0}async function bw(e){try{return{permitted:!0,...(await g(p(e))).payload}}catch(e){let t=e;if([403,404].includes(t.status??0))return{permitted:!1,setup:null};throw t}}function xw(e){return e.language}var Sw={zh:{waiting:`等待连接`,install:`安装`,installing:`正在准备安装`,connect:`连接`,reconnect:`重新连接`,details:`查看详情`,skip:`跳过连接`,cancel:`取消这个目标`,ready:`已连接`,check:`我已完成授权`,authorizing:`等待完成授权`,queued:`已连接,等待继续`,queuedSkipped:`等待使用现有信息继续`,checkingConnection:`正在检查连接`,checkingTools:`已连接,正在验证工具`,queueHint:`目标已保存,正在等待当前执行结束。`,interruptedInputHint:`有条补充消息在重启时中断。请重新发送要求,或移除上方中断的消息后继续。`,checkFailed:`连接检查暂时失败,目标已保存`,interrupted:`恢复检查曾中断,目标已保存`,lastChecked:`最近检查`,scope:`确认后继续`,scopeHint:`这个目标已等待了一段时间。请确认仍要按下方原始要求继续;如需修改时间范围,请先在聊天中说明。未读等条件将以实际执行时为准。`,account:`选择账号`,all:`查看全部连接`,close:`关闭`,intro:`完成连接后,将自动恢复当前目标。你也可以继续发送消息。`,callbackHint:`远程 Gateway 无法接收本地回调时,粘贴浏览器地址栏中的完整回调 URL。`,callbackPlaceholder:`完整回调 URL`,callbackSubmit:`完成连接`,replace:`更换应用`,confirmReplace:`确认改用`,apps:`个应用需要连接`,preserved:`目标已保留`,retry:`重试检查`,toolsUnavailable:`应用工具暂不可用`,toolsHint:`账号已连接,当前无法使用任务所需工具。可以重试检查,无需重新授权。`},en:{waiting:`Waiting for connection`,install:`Install`,installing:`Preparing installation`,connect:`Connect`,reconnect:`Reconnect`,details:`Details`,skip:`Skip connection`,cancel:`Cancel this objective`,ready:`Connected`,check:`Check authorization`,authorizing:`Waiting for authorization`,queued:`Connected, waiting to continue`,queuedSkipped:`Waiting to continue with available information`,checkingConnection:`Checking connection`,checkingTools:`Connected, checking tools`,queueHint:`Your objective is saved. Waiting for the current execution to finish.`,interruptedInputHint:`A message was interrupted during restart. Resend the requirement or remove the interrupted message above before continuing.`,checkFailed:`Connection check failed; objective saved`,interrupted:`Recovery check interrupted; objective saved`,lastChecked:`Last checked`,scope:`Confirm and continue`,scopeHint:`This objective has been waiting for a while. Confirm the original request below, or send a message to change the time range first. Conditions such as unread status are evaluated at execution time.`,account:`Choose an account`,all:`View all connections`,close:`Close`,intro:`The current objective resumes automatically after connecting. You can keep sending messages.`,callbackHint:`If a remote Gateway cannot receive the local callback, paste the complete callback URL from the browser address bar.`,callbackPlaceholder:`Complete callback URL`,callbackSubmit:`Complete connection`,replace:`Change app`,confirmReplace:`Confirm switch to`,apps:`apps need connecting`,preserved:`Objective preserved`,retry:`Retry check`,toolsUnavailable:`App tools unavailable`,toolsHint:`The account is connected, but the tools needed for this task are unavailable. Retry the check without reconnecting.`}},Cw=`rounded-lg border border-edge px-3 py-1.5 text-sm text-fg hover:bg-surface-hover disabled:opacity-50`,ww=`rounded-lg bg-accent px-3 py-1.5 text-sm text-on-accent disabled:opacity-50`;function Tw({conversationId:e}){let{wait:t,busy:n,error:r,cancellationError:i,act:a,dismissError:o}=hw(e),[s,c]=(0,Z.useState)(!1),[l,u]=(0,Z.useState)(),[d,f]=(0,Z.useState)(),[p,m]=(0,Z.useState)(),[g,_]=(0,Z.useState)(!1),[v,x]=(0,Z.useState)(),O=h(e=>e.language),k=Sw[O];if(!t)return i?(0,X.jsxs)(`div`,{role:`alert`,className:`mb-2 flex items-center gap-2 rounded-xl border border-edge bg-surface-panel px-3 py-2 text-sm text-fg`,children:[(0,X.jsx)(`p`,{className:`min-w-0 flex-1`,children:i}),(0,X.jsx)(`button`,{type:`button`,onClick:o,className:Cw,children:k.close})]}):(0,X.jsx)(vw,{conversationId:e});let A=t.needs[0],j=t.needs.length===1,M=t.phase===`queued`,N=t.recoveryStage===`checking_connection`||t.recoveryStage===`checking_tools`,P=t.needs.find(e=>e.phase===`choose_account`),F=t.needs.some(e=>e.capabilityError);if(t.phase===`ready`&&!N&&!t.recoveryError)return(0,X.jsx)(vw,{conversationId:e});let I=t.recoveryStage===`checking_connection`?k.checkingConnection:t.recoveryStage===`checking_tools`?k.checkingTools:M?t.resolution===`skipped`?k.queuedSkipped:k.queued:t.recoveryError===`check_failed`?k.checkFailed:t.recoveryError?k.interrupted:F?k.toolsUnavailable:P?k.account:j&&A.phase===`authorizing`?k.authorizing:k.waiting,L=M||N?k.details:t.recoveryError?k.retry:t.phase===`review_scope`?k.scope:j&&A.phase===`install`?g?k.installing:`${k.install} ${A.label}`:j&&A.phase===`connect`?O===`zh`?`连接 ${A.label}`:`Connect ${A.label}`:j&&A.phase===`reconnect`?k.reconnect:j&&A.phase===`authorizing`?k.check:k.details;async function R(e=A){if(e.target.type===`store-connector`){_(!0),x(void 0);try{let t=await oa(e.target.packageName,e.target.version);if(t.reviewHash!==e.target.reviewHash||t.definition.id!==e.target.connectorId||t.definition.provenance?.sha256!==e.target.sha256)throw Error(O===`zh`?`Connector 包在审查后发生了变化,请重新发起推荐。`:`The Connector package changed after review. Request a new recommendation.`);f(wt(t.definition,{packageName:t.packageName,version:t.version,reviewHash:t.reviewHash,permissions:t.permissions})),m(e.key)}catch(e){x(e instanceof Error?e.message:String(e))}finally{_(!1)}}}function z(){M||N?c(!0):t?.recoveryError?a(`check`):t?.phase===`review_scope`?c(!0):j&&A.phase===`install`?R():j&&[`connect`,`reconnect`].includes(A.phase)?a(`connect`,A.key):j&&A.phase===`authorizing`?a(`check`):c(!0)}return(0,X.jsxs)(`section`,{className:`mb-2 rounded-xl border border-edge bg-surface-panel px-3 py-2`,"aria-label":I,children:[(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,X.jsx)(Ke,{className:`size-4 shrink-0 text-accent`,"aria-hidden":!0}),(0,X.jsxs)(`button`,{type:`button`,className:`min-w-0 flex-1 text-left text-sm text-fg`,onClick:()=>c(!0),children:[(0,X.jsx)(`span`,{role:`status`,children:j?`${I} · ${A.label}`:`${I} · ${t.needs.length} ${k.apps}`}),(0,X.jsx)(U,{className:`ml-1 inline size-3`,"aria-hidden":!0})]}),(0,X.jsxs)(`button`,{type:`button`,className:P||M||N?Cw:ww,disabled:n&&!N||g,onClick:z,children:[n&&(0,X.jsx)(Ye,{className:`mr-1 inline size-3 animate-spin`,"aria-hidden":!0}),L]}),!M&&!N&&(0,X.jsx)(`button`,{type:`button`,className:`text-xs text-fg-muted hover:text-fg`,disabled:n,onClick:()=>void a(`skip`),children:k.skip}),(0,X.jsx)(`button`,{type:`button`,className:`min-h-11 px-2 text-xs text-fg-muted hover:text-fg`,onClick:()=>void a(`cancel`),children:k.cancel})]}),t.queueBlocked&&(0,X.jsx)(`p`,{className:`mt-2 text-xs text-fg-muted`,children:t.blockedInputId?k.interruptedInputHint:k.queueHint}),t.lastCheckedAt&&(0,X.jsxs)(`p`,{className:`mt-2 text-xs text-fg-muted`,children:[k.lastChecked,`: `,new Date(t.lastCheckedAt).toLocaleTimeString(O===`zh`?`zh-CN`:`en-US`)]}),P&&!M&&(0,X.jsx)(`p`,{className:`mt-2 line-clamp-2 break-words text-sm text-fg-muted`,children:t.summary}),P&&!M&&(0,X.jsx)(gw,{need:P,language:O,disabled:n||N,onSelect:e=>void a(`select_account`,P.key,e),onConnect:()=>void a(`connect`,P.key)},`${t.id}:${t.objectiveRevision}:${P.key}`),(r||v)&&(0,X.jsxs)(`p`,{role:`alert`,className:`mt-2 text-xs text-fg-muted`,children:[r??v,` `,(0,X.jsx)(`button`,{type:`button`,className:`text-accent`,onClick:()=>void a(`check`),children:k.retry})]}),(0,X.jsx)(D,{open:s,onOpenChange:c,children:(0,X.jsxs)(w,{children:[(0,X.jsx)(b,{className:`xopc-dialog-overlay fixed inset-0 z-[60] bg-scrim backdrop-blur-[2px]`}),(0,X.jsxs)(T,{className:`xopc-dialog-content fixed left-1/2 top-1/2 z-[60] flex h-[min(90dvh,34rem)] w-[min(94vw,34rem)] -translate-x-1/2 -translate-y-1/2 flex-col overflow-hidden rounded-2xl border border-edge bg-surface-overlay shadow-popover outline-none`,children:[(0,X.jsxs)(`div`,{className:`flex shrink-0 items-center justify-between border-b border-edge px-5 py-4`,children:[(0,X.jsx)(E,{className:`font-medium text-fg`,children:k.preserved}),(0,X.jsx)(C,{"aria-label":k.close,children:(0,X.jsx)(Kt,{className:`size-4`})})]}),(0,X.jsxs)(`div`,{className:`min-h-0 flex-1 space-y-5 overflow-y-auto p-5`,children:[(0,X.jsx)(S,{className:`text-sm text-fg-muted`,children:F?k.toolsHint:t.phase===`review_scope`?k.scopeHint:k.intro}),(0,X.jsx)(`p`,{className:`whitespace-pre-wrap rounded-lg border border-edge p-3 text-sm text-fg`,children:t.summary}),(0,X.jsx)(`p`,{className:`text-xs text-fg-muted`,children:new Date(t.objectiveUpdatedAt).toLocaleString(O===`zh`?`zh-CN`:`en-US`)}),t.timeRange&&(0,X.jsxs)(`p`,{className:`text-xs text-fg-muted`,children:[new Date(t.timeRange.from).toLocaleString(O,{timeZone:t.timeRange.timezone}),` – `,new Date(t.timeRange.to).toLocaleString(O,{timeZone:t.timeRange.timezone}),` (`,t.timeRange.timezone,`)`]}),t.needs.map(e=>(0,X.jsxs)(`div`,{className:`space-y-2 rounded-xl border border-edge p-3`,children:[(0,X.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,X.jsxs)(`span`,{className:`text-sm font-medium text-fg`,children:[e.label,e.accountSelector?` · ${e.accountSelector}`:``]}),e.capabilityError?(0,X.jsx)(`button`,{type:`button`,disabled:n||M,className:Cw,onClick:()=>void a(`check`),children:k.retry}):e.phase===`ready`?(0,X.jsxs)(`span`,{className:`text-xs text-fg-muted`,children:[(0,X.jsx)(H,{className:`mr-1 inline size-3`}),k.ready]}):e.phase===`authorizing`?(0,X.jsx)(`button`,{type:`button`,disabled:n,className:Cw,onClick:()=>void a(`check`),children:k.check}):e.phase===`install`?(0,X.jsx)(`button`,{type:`button`,disabled:n||M||g,className:ww,onClick:()=>void R(e),children:k.install}):e.phase!==`blocked`&&e.phase!==`choose_account`?(0,X.jsx)(`button`,{type:`button`,disabled:n||M,className:ww,onClick:()=>void a(`connect`,e.key),children:e.phase===`reconnect`?k.reconnect:k.connect}):null]}),e.accountId&&(0,X.jsx)(`p`,{className:`break-words text-xs text-fg-muted`,children:e.accounts.find(t=>t.id===e.accountId)?.label??e.accountId}),e.alternatives?.length?(0,X.jsxs)(`div`,{className:`space-y-2`,children:[(0,X.jsx)(K,{value:l?.needKey===e.key?l.candidateRef:``,options:e.alternatives.map(e=>({value:e.candidateRef,label:e.label})),placeholder:k.replace,ariaLabel:`${e.label}: ${k.replace}`,disabled:n||M,allowEmpty:!1,onChange:t=>u({needKey:e.key,candidateRef:t,label:e.alternatives.find(e=>e.candidateRef===t).label})}),l?.needKey===e.key&&(0,X.jsxs)(`button`,{type:`button`,className:Cw,disabled:n,onClick:()=>{a(`replace_source`,e.key,void 0,l.candidateRef),u(void 0)},children:[k.confirmReplace,` `,l.label]})]}):null,e.reason&&(0,X.jsx)(`p`,{className:`text-xs text-fg-muted`,children:e.reason}),e.phase===`authorizing`&&(0,X.jsxs)(`div`,{className:`flex items-center justify-between text-xs text-fg-muted`,children:[(0,X.jsx)(`span`,{children:k.authorizing}),(0,X.jsx)(`button`,{type:`button`,disabled:n,className:`text-accent`,onClick:()=>void a(`connect`,e.key),children:k.reconnect})]})]},e.key)),(0,X.jsx)(`a`,{href:`#/capabilities/connectors`,className:`text-sm text-accent`,onClick:()=>c(!1),children:k.all})]}),(0,X.jsxs)(`div`,{className:`flex shrink-0 items-center justify-between gap-2 border-t border-edge p-4`,children:[(0,X.jsx)(`button`,{type:`button`,className:`min-h-11 text-sm text-fg-muted`,onClick:()=>void a(`cancel`),children:k.cancel}),t.phase===`review_scope`?(0,X.jsx)(`button`,{type:`button`,disabled:n||M,className:ww,onClick:()=>void a(`confirm_scope`),children:k.scope}):null]})]})]})}),d?(0,X.jsx)(Tt,{draft:d,onChange:f,onClose:()=>{f(void 0),m(void 0)},onInstalled:async e=>{p&&await a(`install_complete`,p,void 0,void 0,e.instanceId)&&(f(void 0),m(void 0))},t:y(O).connectorsSettings}):null]})}var Ew=new Set([`button`,`checkbox`,`color`,`file`,`hidden`,`image`,`radio`,`range`,`reset`,`submit`]);function Dw(e){if(!(e instanceof Element))return!1;if(e.closest(`textarea, select, [role="textbox"]`)||e instanceof HTMLElement&&e.isContentEditable)return!0;let t=e.closest(`input`);return t instanceof HTMLInputElement&&!Ew.has(t.type)}function Ow(){return!!document.querySelector(`dialog[open], [aria-modal="true"], [role="dialog"][data-state="open"], [role="alertdialog"][data-state="open"]`)}function kw(e,t){return t.disabled||t.editorHidden||e.defaultPrevented||Dw(e.target)||Dw(document.activeElement)?!1:!Ow()}function Aw(e){for(let t=e.parentElement;t;t=t.parentElement)if(/(auto|scroll)/.test(getComputedStyle(t).overflowY))return t;return null}function jw({items:e,disabled:t,onReorder:n}){let r=(0,Z.useRef)(null),i=(0,Z.useRef)(null),a=(0,Z.useRef)(0),o=(0,Z.useRef)(null),s=(0,Z.useRef)({items:e,onReorder:n});s.current={items:e,onReorder:n};let[c,l]=(0,Z.useState)(null),u=e.map(e=>`${e.id}:${e.version}:${e.status}`).join(`|`);function d(){let e=i.current;e&&(cancelAnimationFrame(e.frame),e.overlay?.remove(),e.row.hasPointerCapture?.(e.pointerId)&&e.row.releasePointerCapture(e.pointerId),e.overlay&&(a.current=Date.now()+250,document.body.style.cursor=e.cursor,document.body.style.userSelect=e.userSelect),i.current=null,o.current&&clearTimeout(o.current),o.current=null)}(0,Z.useEffect)(()=>(l(null),d),[u,t]);function f(e){let t=(e.scroller?.scrollTop??0)-e.initialScroll,n=e.y-e.offsetY+e.slots[e.from].height/2,r=e.slots.filter((r,i)=>i!==e.from&&n>r.top-t+r.height/2).length;e.to=r;let i=[...e.slots];i.splice(r,0,i.splice(e.from,1)[0]);let a={},o=0,s=e.allSlots[0].top;e.allSlots.forEach((t,n)=>{let r=t.sortable?i[o++]:t;a[r.id]=s-r.top,r.id===e.id&&(e.landingTop=s);let c=e.allSlots[n+1];s+=r.height+(c?c.top-t.top-t.height:0)}),l(t=>t?.id===e.id&&t.targetId===e.slots[r].id?t:{id:e.id,targetId:e.slots[r].id,shifts:a})}function p(e){if(i.current!==e||!e.overlay)return;let t=e.scroller;if(t){let n=t.getBoundingClientRect(),r=Math.min(32,n.height/4),i=e.y<n.top+r?-Math.min(8,(n.top+r-e.y)/4):e.y>n.bottom-r?Math.min(8,(e.y-n.bottom+r)/4):0;i&&(t.scrollTop+=i,f(e))}e.frame=requestAnimationFrame(()=>p(e))}function m(e,n){if(t||n.status!==`queued`||e.button!==0||i.current)return;let a=e.target;if(a.closest(`button, a, input`)&&!a.closest(`[data-follow-up-drag-surface]`)||e.pointerType===`touch`&&!a.closest(`[data-follow-up-drag-handle]`))return;let o=e.currentTarget,s=o.getBoundingClientRect(),c=Array.from(r.current?.querySelectorAll(`[data-follow-up-id]`)??[]).map(e=>{let t=e.getBoundingClientRect();return{id:e.dataset.followUpId,top:t.top,height:t.height,sortable:e.dataset.followUpSortable===`true`}}),l=c.filter(e=>e.sortable);if(l.length<2)return;let u=l.findIndex(e=>e.id===n.id);if(u<0)return;let d=Aw(o);i.current={pointerId:e.pointerId,id:n.id,row:o,startX:e.clientX,startY:e.clientY,x:e.clientX,y:e.clientY,left:s.left,top:s.top,offsetY:e.clientY-s.top,slots:l,allSlots:c,landingTop:s.top,from:u,to:u,scroller:d,initialScroll:d?.scrollTop??0,overlay:null,frame:0,cursor:document.body.style.cursor,userSelect:document.body.style.userSelect}}function h(e){let t=i.current;if(!(!t||t.pointerId!==e.pointerId||o.current)&&(t.x=e.clientX,t.y=e.clientY,!(!t.overlay&&Math.hypot(t.x-t.startX,t.y-t.startY)<5))){if(e.preventDefault(),!t.overlay){t.row.setPointerCapture?.(t.pointerId);let e=t.row.cloneNode(!0);e.removeAttribute(`data-follow-up-id`),e.removeAttribute(`data-follow-up-sortable`),e.setAttribute(`data-follow-up-drag-overlay`,``),e.setAttribute(`aria-hidden`,`true`),e.setAttribute(`inert`,``),e.querySelectorAll(`[id]`).forEach(e=>e.removeAttribute(`id`)),Object.assign(e.style,{position:`fixed`,left:`${t.left}px`,top:`${t.top}px`,width:`${t.row.getBoundingClientRect().width}px`,height:`${t.slots[t.from].height}px`,zIndex:`60`,pointerEvents:`none`,margin:`0`,opacity:`1`,background:`var(--color-surface-overlay)`,border:`1px solid var(--color-edge-strong)`,boxShadow:`var(--shadow-popover)`,willChange:`transform`,transition:`none`}),document.body.append(e),t.overlay=e,document.body.style.cursor=`grabbing`,document.body.style.userSelect=`none`,t.frame=requestAnimationFrame(()=>p(t))}t.overlay.style.transform=`translate3d(${t.x-t.startX}px, ${t.y-t.startY}px, 0) scale(1.015)`,f(t)}}function g(e){let t=i.current;if(!t||o.current)return;if(!t.overlay){d();return}a.current=Date.now()+250,cancelAnimationFrame(t.frame);let n=e?t.landingTop:t.top,r=(t.scroller?.scrollTop??0)-t.initialScroll,c=window.matchMedia?.(`(prefers-reduced-motion: reduce)`).matches;if(t.overlay.style.transition=c?`none`:`transform 160ms ease-out, opacity 160ms ease-out`,t.overlay.style.transform=`translate3d(0, ${n-r-t.top}px, 0) scale(1)`,o.current=setTimeout(()=>{d(),l(null)},c?0:170),e&&t.to!==t.from){let e=s.current.items.findIndex(e=>e.id===t.id),n=s.current.items.findIndex(e=>e.id===t.slots[t.to].id);e>=0&&n>=0&&s.current.onReorder(e,n)}}return(0,Z.useEffect)(()=>{let e=e=>{e.key===`Escape`&&i.current&&(e.preventDefault(),d(),l(null))},t=()=>{d(),l(null)},n=e=>h(e),r=e=>{e.pointerId===i.current?.pointerId&&g(!0)},a=e=>{e.pointerId===i.current?.pointerId&&g(!1)};return window.addEventListener(`pointermove`,n,{passive:!1}),window.addEventListener(`pointerup`,r),window.addEventListener(`pointercancel`,a),window.addEventListener(`keydown`,e),window.addEventListener(`blur`,t),window.addEventListener(`resize`,t),()=>{window.removeEventListener(`pointermove`,n),window.removeEventListener(`pointerup`,r),window.removeEventListener(`pointercancel`,a),window.removeEventListener(`keydown`,e),window.removeEventListener(`blur`,t),window.removeEventListener(`resize`,t)}},[]),{listRef:r,view:c,onPointerDown:m,onClickCapture:e=>{Date.now()<a.current&&(e.preventDefault(),e.stopPropagation())}}}function Mw(e){return e.flatMap(e=>{if(!e||typeof e!=`object`)return[];let t=e;if(typeof t.id!=`string`||typeof t.clientMessageId!=`string`||typeof t.content!=`string`||typeof t.version!=`number`||t.effectiveDelivery!==`next`&&t.effectiveDelivery!==`steer`||t.status!==`queued`&&t.status!==`interrupted`)return[];let n=Array.isArray(t.contextRefs)?t.contextRefs.flatMap(e=>{if(!e||typeof e!=`object`)return[];let t=e;return t.kind!==`note`&&t.kind!==`file`&&t.kind!==`session`&&t.kind!==`browser_tab`||typeof t.sourceId!=`string`||typeof t.version!=`string`||typeof t.title!=`string`?[]:[{...typeof t.refId==`string`?{refId:t.refId}:{},kind:t.kind,sourceId:t.sourceId,expectedVersion:t.version,title:t.title,...t.kind===`file`&&(t.fileKind===`file`||t.fileKind===`directory`)?{fileKind:t.fileKind}:{}}]}):void 0;return[{id:t.id,clientMessageId:t.clientMessageId,text:t.content,attachments:Array.isArray(t.attachments)?t.attachments:void 0,thinkingLevel:typeof t.thinking==`string`?t.thinking:void 0,contextRefs:n?.length?n:void 0,version:t.version,delivery:t.effectiveDelivery,status:t.status}]})}function Nw(e){let t=Mw(e.inputs);if(!e.activeRunId&&e.preparation?.state!==`preparation_failed`){let e=t.findIndex(e=>e.status===`queued`);e>=0&&t.splice(e,1)}return t}var Pw=(0,Z.memo)(function({items:e,disabled:t,editingFollowUpId:n,onEditInComposer:r,onRemove:i,onMove:a,onReorder:o,onSteer:s,steeringBusyId:c,onOpenSideChat:l}){let u=y(h(e=>e.language)),d=(0,Z.useRef)(!1),f=e.filter(e=>e.status===`queued`),p=!!(t||c),m=jw({items:e,disabled:p,onReorder:o}),g=J(`inline-flex h-8 shrink-0 items-center justify-center gap-1.5 rounded-lg px-2 text-fg-muted transition-colors hover:bg-surface-hover hover:text-fg disabled:pointer-events-none disabled:opacity-35`,ta.focusRingPanel),_=`flex cursor-pointer items-center gap-2 rounded-md px-3 py-2 text-sm text-fg outline-none focus:bg-surface-hover data-[disabled]:pointer-events-none data-[disabled]:opacity-35`;return e.length===0?null:(0,X.jsxs)(`div`,{ref:m.listRef,className:`space-y-1 px-2 py-2`,onClickCapture:m.onClickCapture,role:`list`,"aria-label":u.chat.followUpQueueAria,children:[(0,X.jsxs)(`div`,{className:`flex items-center justify-between gap-2 px-2 pb-1`,children:[(0,X.jsx)(`span`,{className:`text-xs font-medium text-fg-muted`,children:u.chat.followUpQueueHeading}),(0,X.jsxs)(`span`,{className:`tabular-nums text-[0.65rem] text-fg-muted`,children:[e.length,`/`,10]})]}),e.map(e=>{let t=e.status===`queued`,o=t||e.status===`interrupted`,h=f.findIndex(t=>t.id===e.id),v=o&&!e.attachments?.length&&!e.contextRefs?.length&&e.text.trim().length>0,y=c===e.id,b=e.status===`interrupted`?u.chat.followUpStatusInterrupted:null,x=Yn(e.text),S=new Map(e.contextRefs?.flatMap(e=>e.refId?[[e.refId,e.title]]:[])??[]),C=new Set(x?hr(x):[]),w=e.contextRefs?.filter(e=>!e.refId||!C.has(e.refId)),T=er(x?qn(x,e=>S.get(e)):e.text).trim();return!T&&e.attachments?.length&&(T=e.attachments[0]?.name?.trim()||u.chat.followUpQueueAttachmentOnly),T||=u.chat.followUpQueueEmptyPreview,(0,X.jsxs)(`div`,{role:`listitem`,"data-follow-up-id":e.id,"data-follow-up-sortable":!p&&t,onPointerDown:t=>m.onPointerDown(t,e),onDragStart:e=>e.preventDefault(),style:{transform:m.view?.shifts[e.id]?`translateY(${m.view.shifts[e.id]}px)`:void 0},className:J(`relative flex min-h-10 items-center gap-1 rounded-lg px-1.5 py-1 motion-safe:transition-transform motion-safe:duration-150`,!p&&t&&`cursor-grab`,m.view?.id===e.id&&`bg-surface-inset ring-1 ring-inset ring-edge-strong [&>*]:invisible`,n===e.id?`bg-accent-soft ring-1 ring-inset ring-accent/30`:`hover:bg-surface-hover/50`),children:[(0,X.jsx)(`div`,{"data-follow-up-drag-handle":!0,className:J(`flex shrink-0 touch-none cursor-grab items-center active:cursor-grabbing`,(p||!t)&&`cursor-not-allowed opacity-40`),title:u.chat.followUpQueueDrag,children:(0,X.jsx)(Xo,{className:`size-3.5 text-fg-muted`,"aria-hidden":!0})}),(0,X.jsx)(`button`,{type:`button`,"data-follow-up-drag-surface":!0,disabled:p||!t,title:u.chat.followUpQueueClickToEdit,"aria-label":u.chat.followUpQueueClickToEdit,className:J(`min-h-8 min-w-0 flex-1 cursor-grab rounded-md px-1.5 text-left text-sm text-fg`,ta.focusRingPanel,`disabled:pointer-events-none disabled:opacity-50`),onClick:()=>r(e.id),children:e.attachments?.length?(0,X.jsxs)(`span`,{className:`inline-flex max-w-full items-center gap-1`,children:[(0,X.jsx)(Ce,{className:`size-3 shrink-0 text-fg-muted`,"aria-hidden":!0}),(0,X.jsx)(`span`,{className:`truncate`,children:T})]}):(0,X.jsx)(`span`,{className:`line-clamp-2 break-words [overflow-wrap:anywhere]`,children:T})}),w?.length?(0,X.jsxs)(`span`,{className:`inline-flex shrink-0 items-center gap-0.5 rounded bg-accent-soft px-1.5 py-0.5 text-[0.625rem] text-accent-fg`,title:w.map(e=>e.title).join(`, `),children:[(0,X.jsx)(rs,{className:`size-3`,"aria-hidden":!0}),w.length]}):null,b?(0,X.jsx)(`span`,{className:`shrink-0 rounded bg-surface-panel px-1.5 py-0.5 text-[0.625rem] text-fg-muted`,children:b}):null,(0,X.jsxs)(`div`,{className:`flex shrink-0 items-center gap-0.5`,children:[(0,X.jsxs)(`button`,{type:`button`,className:g,disabled:p||!v,title:u.chat.followUpQueueSteerHint,"aria-label":u.chat.followUpQueueSteerNow,"aria-busy":y,onClick:()=>s(e.id),children:[(0,X.jsx)(Uo,{className:J(`size-4`,y&&`motion-safe:animate-pulse`),"aria-hidden":!0}),(0,X.jsx)(`span`,{className:`hidden text-xs sm:inline`,children:u.chat.followUpQueueSteerNow})]}),(0,X.jsx)(`button`,{type:`button`,className:J(g,`px-1.5 hover:text-danger`),disabled:p||!o,title:u.chat.followUpQueueRemove,"aria-label":u.chat.followUpQueueRemove,onClick:()=>i(e.id),children:(0,X.jsx)(Vt,{className:`size-4`,"aria-hidden":!0})}),(0,X.jsxs)(Ya,{modal:!1,children:[(0,X.jsx)(Xa,{asChild:!0,children:(0,X.jsx)(`button`,{type:`button`,className:J(g,`px-1.5`),disabled:p,title:u.chat.followUpQueueMore,"aria-label":u.chat.followUpQueueMore,children:(0,X.jsx)(be,{className:`size-4`,"aria-hidden":!0})})}),(0,X.jsx)(Za,{children:(0,X.jsxs)($a,{side:`top`,align:`end`,sideOffset:6,onCloseAutoFocus:e=>{d.current&&e.preventDefault(),d.current=!1},className:`z-50 min-w-52 max-w-[calc(100vw-2rem)] rounded-xl border border-edge bg-surface-overlay p-1 shadow-popover`,children:[(0,X.jsxs)(Qa,{className:_,disabled:!t,onSelect:()=>{d.current=!0,r(e.id)},children:[(0,X.jsx)(Ot,{className:`size-4`,"aria-hidden":!0}),u.chat.followUpQueueClickToEdit]}),l?(0,X.jsxs)(Qa,{className:_,disabled:!v,onSelect:()=>l(e,T),children:[(0,X.jsx)(es,{className:`size-4`,"aria-hidden":!0}),u.chat.followUpQueueOpenSideChat]}):null,f.length>1?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(eo,{className:`my-1 h-px bg-edge-subtle`}),(0,X.jsxs)(Qa,{className:_,disabled:!t||h===0,onSelect:()=>a(e.id,`up`),children:[(0,X.jsx)(W,{className:`size-4`,"aria-hidden":!0}),u.chat.followUpQueueMoveUp]}),(0,X.jsxs)(Qa,{className:_,disabled:!t||h>=f.length-1,onSelect:()=>a(e.id,`down`),children:[(0,X.jsx)(te,{className:`size-4`,"aria-hidden":!0}),u.chat.followUpQueueMoveDown]})]}):null]})})]})]})]},e.id)}),e.some(e=>e.attachments?.length||e.contextRefs?.length)?(0,X.jsx)(`p`,{className:`px-1 pt-0.5 text-[0.65rem] leading-tight text-fg-muted`,children:u.chat.followUpQueueAttachmentsNote}):null]})});function Fw({conversationId:e}){let t=m(e=>e.conversationId),n=h(e=>e.language).startsWith(`zh`),[r,i]=(0,Z.useState)(!1),[a,o]=(0,Z.useState)(``),s=Lr(e?[`session-preparation`,t,e]:null,async()=>{let t=await br(e);if(t&&!t.materialization)return null;let n=await g(p(`/api/sessions/${encodeURIComponent(e)}/input-state`));return n.payload.preparation?Sr.parse(n.payload.preparation):null},{refreshInterval:e=>e?.state===`preparing`?5e3:0,shouldRetryOnError:!1}),{mutate:c}=s;(0,Z.useEffect)(()=>{let t=t=>{t.detail?.conversationId===e&&c()};return window.addEventListener(`session-input-state`,t),()=>window.removeEventListener(`session-input-state`,t)},[e,c]);let l=s.data;if(!l||l.state===`ready`)return null;let u=async()=>{i(!0),o(``);try{let t=await f(p(`/api/sessions/${encodeURIComponent(e)}/preparation/retry`),{method:`POST`,body:JSON.stringify({operationId:l.operationId,expectedRevision:l.revision,idempotencyKey:`${l.operationId}:${l.revision}`})});if(!t.ok)throw Error(`HTTP ${t.status}`);await c()}catch(e){o(e instanceof Error?e.message:String(e))}finally{i(!1)}};return(0,X.jsxs)(`div`,{className:`border-b border-edge-subtle px-3 py-2 text-sm text-fg-muted`,role:`status`,children:[(0,X.jsx)(`span`,{children:l.state===`preparing`?n?`正在准备会话环境…`:`Preparing conversation environment…`:l.lastError??(n?`会话环境准备失败`:`Conversation environment preparation failed`)}),l.state===`preparation_failed`?(0,X.jsx)(`button`,{type:`button`,className:`ml-2 text-accent-fg`,disabled:r,onClick:()=>void u(),children:n?`重试准备`:`Retry preparation`}):null,a?(0,X.jsx)(`span`,{role:`alert`,className:`ml-2`,children:a}):null]})}function Iw(e){let t=(0,Y.c)(10),{refs:n,label:r,onRemove:i}=e;if(n.length===0)return null;let a;if(t[0]!==r||t[1]!==i||t[2]!==n){let e;t[4]!==r||t[5]!==i?(e=e=>(0,X.jsxs)(`span`,{className:`inline-flex h-7 min-w-0 max-w-56 items-center gap-1.5 rounded-md border border-edge-subtle bg-accent-soft/50 px-2 text-xs text-fg`,children:[e.kind===`file`&&e.fileKind===`directory`?(0,X.jsx)(Oe,{className:`size-3.5 shrink-0 text-accent-fg`,"aria-hidden":!0}):e.kind===`file`||e.kind===`result`?(0,X.jsx)(Te,{className:`size-3.5 shrink-0 text-accent-fg`,"aria-hidden":!0}):e.kind===`session`?(0,X.jsx)(xt,{className:`size-3.5 shrink-0 text-accent-fg`,"aria-hidden":!0}):e.kind===`browser_tab`?(0,X.jsx)(k,{className:`size-3.5 shrink-0 text-accent-fg`,"aria-hidden":!0}):(0,X.jsx)(rs,{className:`size-3.5 shrink-0 text-accent-fg`,"aria-hidden":!0}),(0,X.jsx)(`span`,{className:`truncate`,children:e.title}),(0,X.jsx)(`button`,{type:`button`,className:`-mr-1 inline-flex size-5 shrink-0 items-center justify-center rounded text-fg-muted hover:bg-surface-hover hover:text-fg`,"aria-label":`${r}: ${e.title}`,onClick:()=>i(e.sourceId),children:(0,X.jsx)(Kt,{className:`size-3`,"aria-hidden":!0})})]},e.sourceId),t[4]=r,t[5]=i,t[6]=e):e=t[6],a=n.map(e),t[0]=r,t[1]=i,t[2]=n,t[3]=a}else a=t[3];let o;return t[7]!==r||t[8]!==a?(o=(0,X.jsx)(`div`,{className:`flex flex-wrap gap-1.5 px-4 pt-2`,"aria-label":r,children:a}),t[7]=r,t[8]=a,t[9]=o):o=t[9],o}var Lw=`inline-flex h-8 min-w-0 shrink-0 items-center justify-center gap-1.5 rounded-full px-2.5 text-sm text-fg transition-[background-color,transform] hover:bg-surface-hover active:scale-95 disabled:pointer-events-none disabled:opacity-45 motion-reduce:transition-none motion-reduce:transform-none focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`;function Rw(e){let t=(0,Y.c)(96),{conversationId:n,project:r,workspacePath:i,canChangeWorkspace:a,disabled:o,environmentPicker:s,onProjectChange:c,onWorkspaceChange:l}=e,u=h(Hw),d;t[0]===u?d=t[1]:(d=y(u),t[0]=u,t[1]=d);let f=d,p=f.chat.composerContext,g=m(Vw),_=m(Bw),[v,b]=(0,Z.useState)(``),[x]=va(v,200),S;t[2]!==_||t[3]!==x||t[4]!==g?(S=[`composer-projects`,_,g,x],t[2]=_,t[3]=x,t[4]=g,t[5]=S):S=t[5];let C;t[6]===x?C=t[7]:(C=()=>un({status:`active`,search:x,sortBy:`updatedAt`,sortOrder:`desc`,limit:50}),t[6]=x,t[7]=C);let w;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(w={keepPreviousData:!1,shouldRetryOnError:!1},t[8]=w):w=t[8];let T=Lr(S,C,w),E=Hd(n,!1),D=E.error?void 0:E.data?.environment,O;t[9]!==D?.rootPath||t[10]!==i?(O=i?.trim()||D?.rootPath||``,t[9]=D?.rootPath,t[10]=i,t[11]=O):O=t[11];let k=O,[A,j]=(0,Z.useState)(null),M;t[12]!==E||t[13]!==l?(M=async e=>{j(null);try{await l(e),await E.mutate()}catch(e){let t=e;j(t instanceof Error?t.message:String(t))}},t[12]=E,t[13]=l,t[14]=M):M=t[14];let N;t[15]!==k||t[16]!==M?(N={initialPath:k,onPicked:M},t[15]=k,t[16]=M,t[17]=N):N=t[17];let P=wa(N),F=a?`${p.chooseFolder}${k?`: ${k}`:``}`:r?p.projectFolder:p.lockedFolder,I;t[18]===D?I=t[19]:(I=D?.branch||(D?.detached?D.headSha?.slice(0,8):void 0),t[18]=D,t[19]=I);let L=I,R=p.label,z=r&&`bg-surface-hover`,B;t[20]===z?B=t[21]:(B=J(`flex min-w-0 max-w-full items-center rounded-full`,z),t[20]=z,t[21]=B);let ee;t[22]!==o||t[23]!==f.chat.scopeRemoveProject||t[24]!==c||t[25]!==r?(ee=r?(0,X.jsx)(`button`,{type:`button`,disabled:o,title:f.chat.scopeRemoveProject,"aria-label":f.chat.scopeRemoveProject,className:J(Lw,`size-7 shrink-0 px-0 ml-0.5 text-fg-muted`),onClick:()=>c(null),children:(0,X.jsx)(Kt,{className:`size-3.5`,"aria-hidden":!0})}):null,t[22]=o,t[23]=f.chat.scopeRemoveProject,t[24]=c,t[25]=r,t[26]=ee):ee=t[26];let V=r?.id??``,H=r?.name,te;t[27]!==T.data?.items||t[28]!==T.error?(te=T.error?[]:T.data?.items??[],t[27]=T.data?.items,t[28]=T.error,t[29]=te):te=t[29];let U;t[30]===te?U=t[31]:(U=te.map(zw),t[30]=te,t[31]=U);let W=p.chooseProject,ne=p.changeProject,ie=p.changeProject,ae=p.noProject,oe=p.searchProjects,se=T.isLoading,G=T.error?p.projectsFailed:T.data?.items.length===0?p.noProjects:void 0,ce=r&&`pl-1`,le;t[32]===ce?le=t[33]:(le=J(Lw,`h-8 w-auto max-w-44 gap-1 border-0 bg-transparent pr-2.5 text-sm [&>svg]:hidden [&>span]:text-fg`,ce),t[32]=ce,t[33]=le);let q;t[34]!==c||t[35]!==r?.id?(q=e=>{e!==(r?.id??``)&&c(e||null)},t[34]=c,t[35]=r?.id,t[36]=q):q=t[36];let ue;t[37]!==p.changeProject||t[38]!==p.chooseProject||t[39]!==p.noProject||t[40]!==p.searchProjects||t[41]!==o||t[42]!==T.isLoading||t[43]!==v||t[44]!==V||t[45]!==H||t[46]!==U||t[47]!==G||t[48]!==le||t[49]!==q?(ue=(0,X.jsx)(K,{value:V,selectedLabel:H,options:U,placeholder:W,ariaLabel:ne,title:ie,emptyLabel:ae,disabled:o,side:`top`,align:`start`,searchPlaceholder:oe,searchValue:v,onSearchChange:b,loading:se,statusMessage:G,triggerClassName:le,contentClassName:`xopc-composer-config-popover w-max min-w-[min(12rem,calc(100vw-1.5rem))] max-w-[min(20rem,calc(100vw-1.5rem))] [&>input]:w-0 [&>input]:min-w-full`,onChange:q}),t[37]=p.changeProject,t[38]=p.chooseProject,t[39]=p.noProject,t[40]=p.searchProjects,t[41]=o,t[42]=T.isLoading,t[43]=v,t[44]=V,t[45]=H,t[46]=U,t[47]=G,t[48]=le,t[49]=q,t[50]=ue):ue=t[50];let de;t[51]!==B||t[52]!==ee||t[53]!==ue?(de=(0,X.jsxs)(`div`,{className:B,children:[ee,ue]}),t[51]=B,t[52]=ee,t[53]=ue,t[54]=de):de=t[54];let fe=r?s:null,pe;t[55]!==D||t[56]!==s||t[57]!==r?(pe=!s&&r&&D&&(D.headSha||D.branch)?(0,X.jsxs)(`span`,{className:`inline-flex h-8 min-w-0 items-center gap-1.5 rounded-full bg-surface-hover px-2.5 text-sm text-fg`,title:D.rootPath,children:[D.kind===`managed_worktree`?(0,X.jsx)(is,{className:`size-4 shrink-0`,strokeWidth:1.75,"aria-hidden":!0}):(0,X.jsx)(Ge,{className:`size-4 shrink-0`,strokeWidth:1.75,"aria-hidden":!0}),D.kind===`managed_worktree`?`Worktree`:`Local`]}):null,t[55]=D,t[56]=s,t[57]=r,t[58]=pe):pe=t[58];let me;t[59]!==p.retryProjects||t[60]!==T?(me=T.error?(0,X.jsx)(`button`,{type:`button`,className:J(Lw,`size-7 px-0`),"aria-label":p.retryProjects,onClick:()=>void T.mutate(),children:(0,X.jsx)(jt,{className:`size-3.5`,"aria-hidden":!0})}):null,t[59]=p.retryProjects,t[60]=T,t[61]=me):me=t[61];let he;t[62]!==a||t[63]!==E.isLoading||t[64]!==p.chooseFolder||t[65]!==o||t[66]!==P.pick||t[67]!==P.picking||t[68]!==r||t[69]!==k||t[70]!==F?(he=r?null:(0,X.jsxs)(`button`,{type:`button`,className:J(Lw,`max-w-52`),disabled:o||!a||P.picking,title:F,"aria-label":p.chooseFolder,onClick:P.pick,children:[(0,X.jsx)(De,{className:`size-4 shrink-0`,strokeWidth:1.75,"aria-hidden":!0}),k?(0,X.jsx)(`span`,{className:`truncate`,children:Ca(k)}):E.isLoading?(0,X.jsx)(Jt,{className:`h-4 w-16`}):(0,X.jsx)(`span`,{children:p.chooseFolder})]}),t[62]=a,t[63]=E.isLoading,t[64]=p.chooseFolder,t[65]=o,t[66]=P.pick,t[67]=P.picking,t[68]=r,t[69]=k,t[70]=F,t[71]=he):he=t[71];let ge;t[72]!==L||t[73]!==D?(ge=L?(0,X.jsxs)(`span`,{className:`inline-flex h-8 min-w-0 max-w-44 items-center gap-1.5 px-2 text-sm text-fg`,title:`${L}${D?.headSha?` · ${D.headSha.slice(0,8)}`:``}`,children:[(0,X.jsx)(Ne,{className:`size-4 shrink-0`,strokeWidth:1.75,"aria-hidden":!0}),(0,X.jsx)(`span`,{className:`truncate`,children:L})]}):null,t[72]=L,t[73]=D,t[74]=ge):ge=t[74];let _e;t[75]===A?_e=t[76]:(_e=A?(0,X.jsx)(`p`,{role:`alert`,className:`w-full px-2 py-1 text-xs text-danger`,children:A}):null,t[75]=A,t[76]=_e);let ve;t[77]!==p.label||t[78]!==de||t[79]!==fe||t[80]!==pe||t[81]!==me||t[82]!==he||t[83]!==ge||t[84]!==_e?(ve=(0,X.jsxs)(`div`,{className:`mx-3 -mb-3 flex min-w-0 shrink-0 flex-wrap items-center gap-x-1 gap-y-1 rounded-t-2xl bg-surface-base px-2 pb-4 pt-1.5 sm:mx-4`,"aria-label":R,children:[de,fe,pe,me,he,ge,_e]}),t[77]=p.label,t[78]=de,t[79]=fe,t[80]=pe,t[81]=me,t[82]=he,t[83]=ge,t[84]=_e,t[85]=ve):ve=t[85];let ye;t[86]!==f.chat.workingDirectory||t[87]!==P.confirmPick||t[88]!==P.hasNativePicker||t[89]!==P.modalOpen||t[90]!==P.setModalOpen||t[91]!==k?(ye=P.hasNativePicker?null:(0,X.jsx)(re,{open:P.modalOpen,onOpenChange:P.setModalOpen,initialAbsolutePath:k||void 0,onConfirm:P.confirmPick,wd:f.chat.workingDirectory}),t[86]=f.chat.workingDirectory,t[87]=P.confirmPick,t[88]=P.hasNativePicker,t[89]=P.modalOpen,t[90]=P.setModalOpen,t[91]=k,t[92]=ye):ye=t[92];let be;return t[93]!==ve||t[94]!==ye?(be=(0,X.jsxs)(X.Fragment,{children:[ve,ye]}),t[93]=ve,t[94]=ye,t[95]=be):be=t[95],be}function zw(e){return{value:e.id,label:e.name}}function Bw(e){return e.baseUrl}function Vw(e){return e.conversationId}function Hw(e){return e.language}var Uw=`flex size-11 shrink-0 items-center justify-center rounded-full text-fg-muted transition-colors hover:bg-surface-hover hover:text-fg focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent sm:size-10`;function Ww(e){let t=(0,Y.c)(10),{disabled:n,attachmentCount:r,maxAttachments:i,chat:a,onPickFiles:o}=e,s=r>=i,c;t[0]!==a.attachFile||t[1]!==a.maxAttachmentsReached||t[2]!==s||t[3]!==i?(c=s?jp(a.maxAttachmentsReached,{max:i}):a.attachFile,t[0]=a.attachFile,t[1]=a.maxAttachmentsReached,t[2]=s,t[3]=i,t[4]=c):c=t[4];let l=c,u=n||s,d;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,X.jsx)(At,{className:`size-5`,"aria-hidden":!0}),t[5]=d):d=t[5];let f;return t[6]!==l||t[7]!==o||t[8]!==u?(f=(0,X.jsx)(`button`,{type:`button`,className:Uw,disabled:u,"aria-label":l,title:l,onClick:o,children:d}),t[6]=l,t[7]=o,t[8]=u,t[9]=f):f=t[9],f}function Gw(e){let t=(0,Y.c)(33),{disabled:n,voiceActive:r,runBusy:i,hasDraft:a,chat:o,onStartVoiceInput:s,onSend:c,onQueue:l,onDefer:u,onAbort:d,onInterrupt:f}=e;if(r)return null;let p=i&&a&&!!l,m=i&&!a,h=m?o.abort:p?o.followUpQueueAdd:o.sendMessage,g;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(g=(0,X.jsx)(St,{className:`size-[1.125rem]`,"aria-hidden":!0}),t[0]=g):g=t[0];let _;t[1]!==o.voiceInput||t[2]!==n||t[3]!==s?(_=(0,X.jsx)(`button`,{type:`button`,className:Uw,disabled:n,title:o.voiceInput,"aria-label":o.voiceInput,onClick:s,children:g}),t[1]=o.voiceInput,t[2]=n,t[3]=s,t[4]=_):_=t[4];let v;t[5]!==p||t[6]!==o.abort||t[7]!==o.followUpQueueAdd||t[8]!==o.followUpQueueMore||t[9]!==o.steeringInterruptSend||t[10]!==n||t[11]!==d||t[12]!==u||t[13]!==f?(v=p&&(0,X.jsxs)(Ya,{modal:!1,children:[(0,X.jsx)(Xa,{asChild:!0,children:(0,X.jsx)(`button`,{type:`button`,className:Uw,disabled:n,"aria-label":o.followUpQueueMore,title:o.followUpQueueMore,children:(0,X.jsx)(be,{className:`size-5`,"aria-hidden":!0})})}),(0,X.jsx)(Za,{children:(0,X.jsxs)($a,{side:`top`,align:`end`,sideOffset:8,className:`z-50 min-w-44 rounded-xl border border-edge bg-surface-overlay p-1 shadow-popover`,children:[u&&(0,X.jsx)(Qa,{onSelect:()=>void u(),className:`cursor-pointer rounded-lg px-3 py-2 text-sm text-fg outline-none focus:bg-surface-hover`,children:o.followUpQueueAdd}),f&&(0,X.jsx)(Qa,{onSelect:f,className:`cursor-pointer rounded-lg px-3 py-2 text-sm text-fg outline-none focus:bg-surface-hover`,children:o.steeringInterruptSend}),(0,X.jsx)(Qa,{onSelect:d,className:`cursor-pointer rounded-lg px-3 py-2 text-sm text-fg outline-none focus:bg-surface-hover`,children:o.abort})]})})]}),t[5]=p,t[6]=o.abort,t[7]=o.followUpQueueAdd,t[8]=o.followUpQueueMore,t[9]=o.steeringInterruptSend,t[10]=n,t[11]=d,t[12]=u,t[13]=f,t[14]=v):v=t[14];let y;t[15]===Symbol.for(`react.memo_cache_sentinel`)?(y=J(Uw,`bg-accent text-on-accent hover:bg-accent-hover hover:text-on-accent disabled:bg-surface-hover disabled:text-fg-disabled`),t[15]=y):y=t[15];let b=!m&&(n||!a||i&&!l),x;t[16]!==p||t[17]!==d||t[18]!==l||t[19]!==c||t[20]!==m?(x=m?d:p?()=>void l?.():c,t[16]=p,t[17]=d,t[18]=l,t[19]=c,t[20]=m,t[21]=x):x=t[21];let S;t[22]===m?S=t[23]:(S=m?(0,X.jsx)(Bt,{className:`size-4 fill-current`,"aria-hidden":!0}):(0,X.jsx)(M,{className:`size-5`,"aria-hidden":!0}),t[22]=m,t[23]=S);let C;t[24]!==h||t[25]!==b||t[26]!==x||t[27]!==S?(C=(0,X.jsx)(`button`,{type:`button`,className:y,disabled:b,"aria-label":h,title:h,onClick:x,children:S}),t[24]=h,t[25]=b,t[26]=x,t[27]=S,t[28]=C):C=t[28];let w;return t[29]!==_||t[30]!==v||t[31]!==C?(w=(0,X.jsxs)(`div`,{className:`flex shrink-0 items-center gap-0.5`,children:[_,v,C]}),t[29]=_,t[30]=v,t[31]=C,t[32]=w):w=t[32],w}function Kw(e){return e.map(e=>({type:e.type===`voice`?`voice`:(e.mimeType??``).startsWith(`image/`)?`image`:`document`,mimeType:e.mimeType??`application/octet-stream`,content:e.data??``,name:e.name??`file`,size:e.size??0,uri:e.uri,...typeof e.durationSeconds==`number`&&Number.isFinite(e.durationSeconds)&&e.durationSeconds>0?{durationSeconds:e.durationSeconds}:{}}))}var qw=100,Jw=400,Yw=900;function Xw(e,t){switch(t.type){case`reset`:return{box:null,hoverPreview:null};case`set-box`:return{...e,box:t.box};case`set-hover`:return{...e,hoverPreview:t.hoverPreview}}}function Zw(e,t){let n=t.trim().toLowerCase();if(!n)return[];let r=e.toLowerCase(),i=[],a=0;for(let e=0;e<r.length&&a<n.length;e++)r[e]===n[a]&&(i.push([e,e+1]),a++);return i}function Qw(e){let t=(0,Y.c)(8),{name:n,query:r}=e,i;t[0]!==n||t[1]!==r?(i=Zw(n,r),t[0]=n,t[1]=r,t[2]=i):i=t[2];let a=i;if(a.length===0){let e;return t[3]===n?e=t[4]:(e=(0,X.jsx)(`span`,{className:`font-medium text-fg`,children:n}),t[3]=n,t[4]=e),e}let o;if(t[5]!==n||t[6]!==a){let e=[],r=0;a.forEach(t=>{let[i,a]=t;i>r&&e.push((0,X.jsx)(`span`,{className:`font-medium text-fg`,children:n.slice(r,i)},`pre-${i}`)),e.push((0,X.jsx)(`span`,{className:`font-semibold text-accent-fg`,children:n.slice(i,a)},`hl-${i}-${a}`)),r=a}),r<n.length&&e.push((0,X.jsx)(`span`,{className:`font-medium text-fg`,children:n.slice(r)},`tail`)),o=(0,X.jsx)(X.Fragment,{children:e}),t[5]=n,t[6]=a,t[7]=o}else o=t[7];return o}var $w=(0,Z.memo)(function(e){let t=(0,Y.c)(42),{open:n,anchorRef:r,items:i,selectedIndex:a,loading:o,query:s,noResults:c,conversationId:l,recentLabel:u,sectionLabels:d,ariaLabel:f,onSelectItem:p}=e,m;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(m={box:null,hoverPreview:null},t[0]=m):m=t[0];let[h,g]=(0,Z.useReducer)(Xw,m),_=h.box,v=h.hoverPreview,y=(0,Z.useRef)(null),b=(0,Z.useRef)(0),x=(0,Z.useRef)(null),S;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(S=()=>{y.current&&=(clearTimeout(y.current),null)},t[1]=S):S=t[1];let C=S,w;t[2]===l?w=t[3]:(w=(e,t,n)=>{C(),b.current+=1;let r=b.current;if(e.kind!==`file`){g({type:`set-hover`,hoverPreview:null});return}let i=e.relativePath;if(!l?.trim()||e.isDirectory||e.isBrowseUp||!i){g({type:`set-hover`,hoverPreview:null});return}y.current=setTimeout(()=>{y.current=null,r===b.current&&Da(i,{conversationId:l}).then(e=>{let{content:i}=e,a=i.length>Yw?`${i.slice(0,Yw)}…`:i;r===b.current&&g({type:`set-hover`,hoverPreview:{text:a,x:t,y:n}})}).catch(()=>{r===b.current&&g({type:`set-hover`,hoverPreview:null})})},420)},t[2]=l,t[3]=w);let T=w,E,D;t[4]!==r||t[5]!==n?(E=()=>{if(!n){g({type:`reset`}),C(),b.current+=1;return}let e=()=>{let e=r.current;if(!e)return;let t=e.getBoundingClientRect();g({type:`set-box`,box:{left:t.left,top:t.top,width:t.width}})};e();let t=r.current,i=t&&typeof ResizeObserver<`u`?new ResizeObserver(()=>{e()}):null;return t&&i&&i.observe(t),window.addEventListener(`resize`,e),window.addEventListener(`scroll`,e,!0),()=>{t&&i&&i.disconnect(),window.removeEventListener(`resize`,e),window.removeEventListener(`scroll`,e,!0)}},D=[n,r],t[4]=r,t[5]=n,t[6]=E,t[7]=D):(E=t[6],D=t[7]),(0,Z.useLayoutEffect)(E,D);let O,A;if(t[8]!==i.length||t[9]!==n||t[10]!==a?(O=()=>{!n||a<0||a>=i.length||(x.current?.querySelector(`#at-mention-${a}`))?.scrollIntoView({block:`nearest`})},A=[n,a,i.length],t[8]=i.length,t[9]=n,t[10]=a,t[11]=O,t[12]=A):(O=t[11],A=t[12]),(0,Z.useLayoutEffect)(O,A),!n||typeof document>`u`||_===null)return null;let j=i.length,M=Math.min(_.width,Jw),N;t[13]!==_.left||t[14]!==_.top||t[15]!==M?(N={position:`fixed`,left:_.left,top:_.top,width:M,transform:`translateY(calc(-100% - 8px))`,zIndex:qw},t[13]=_.left,t[14]=_.top,t[15]=M,t[16]=N):N=t[16];let P=a>=0&&a<j?`at-mention-${a}`:void 0,F;t[17]!==o||t[18]!==j?(F=o&&j===0?(0,X.jsxs)(`div`,{className:`flex items-center gap-2 px-3 py-2.5 text-sm text-fg-muted`,children:[(0,X.jsx)(Ye,{className:`size-4 shrink-0 animate-spin`,"aria-hidden":!0}),(0,X.jsx)(`span`,{children:`…`})]}):null,t[17]=o,t[18]=j,t[19]=F):F=t[19];let I;t[20]!==i||t[21]!==o||t[22]!==c||t[23]!==p||t[24]!==s||t[25]!==u||t[26]!==T||t[27]!==d||t[28]!==a||t[29]!==j?(I=!o&&j===0?(0,X.jsx)(`div`,{className:`px-3 py-2 text-sm text-fg-muted`,children:c}):(0,X.jsxs)(X.Fragment,{children:[i.map((e,t)=>{let n=i[t-1]?.kind,r=d[e.kind],o=e.kind===`file`&&e.isRecent;return(0,X.jsxs)(Z.Fragment,{children:[n===e.kind?null:(0,X.jsx)(`div`,{className:`border-t border-edge-subtle px-3 pb-1 pt-2 text-[0.65rem] font-medium uppercase tracking-wide text-fg-muted first:border-t-0`,children:r}),(0,X.jsxs)(`div`,{id:`at-mention-${t}`,role:`option`,"aria-selected":a===t,tabIndex:-1,className:J(`flex cursor-pointer items-start gap-2 px-3 py-2 text-left text-sm`,a===t?`bg-surface-hover text-fg`:`text-fg-subtle hover:bg-surface-hover/80`,o&&`border-l-2 border-l-accent/60`),onPointerDown:t=>{t.pointerType===`mouse`&&t.button!==0||(t.preventDefault(),p(e))},onPointerEnter:t=>T(e,t.clientX,t.clientY),onPointerLeave:()=>{C(),b.current+=1,g({type:`set-hover`,hoverPreview:null})},children:[(0,X.jsx)(`span`,{className:`mt-0.5 shrink-0`,children:e.kind===`note`?(0,X.jsx)(rs,{className:`size-3.5 text-accent-fg`,"aria-hidden":!0}):e.kind===`session`?(0,X.jsx)(xt,{className:`size-3.5 text-violet-600 dark:text-violet-400`,"aria-hidden":!0}):e.kind===`skill`?(0,X.jsx)(zt,{className:`size-3.5 text-cyan-600 dark:text-cyan-400`,"aria-hidden":!0}):e.kind===`agent`?(0,X.jsx)(V,{className:`size-3.5 text-emerald-600 dark:text-emerald-400`,"aria-hidden":!0}):e.kind===`browser_tab`?(0,X.jsx)(k,{className:`size-3.5 text-blue-600 dark:text-blue-400`,"aria-hidden":!0}):e.isBrowseUp?(0,X.jsx)(Oe,{className:`size-3.5 text-fg-muted`,"aria-hidden":!0}):e.isDirectory?(0,X.jsx)(Oe,{className:`size-3.5 text-amber-600 dark:text-amber-400`,"aria-hidden":!0}):(0,X.jsx)(Te,{className:J(`size-3.5`,ge(e.name)),"aria-hidden":!0})}),(0,X.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-2 truncate`,children:[(0,X.jsx)(`span`,{className:`truncate`,children:(0,X.jsx)(Qw,{name:e.name,query:s})}),o?(0,X.jsx)(`span`,{className:`shrink-0 rounded bg-accent-soft px-1 py-0 text-[0.65rem] text-accent-fg`,children:u}):null]}),(0,X.jsx)(`div`,{className:`mt-0.5 truncate text-xs text-fg-muted`,children:e.description||r})]})]})]},e.id)}),o&&j>0?(0,X.jsxs)(`div`,{className:`flex items-center gap-2 border-t border-edge-subtle px-3 py-2 text-xs text-fg-muted`,children:[(0,X.jsx)(Ye,{className:`size-3.5 animate-spin`,"aria-hidden":!0}),(0,X.jsx)(`span`,{children:`…`})]}):null]}),t[20]=i,t[21]=o,t[22]=c,t[23]=p,t[24]=s,t[25]=u,t[26]=T,t[27]=d,t[28]=a,t[29]=j,t[30]=I):I=t[30];let L;t[31]!==f||t[32]!==F||t[33]!==I||t[34]!==P?(L=(0,X.jsxs)(`div`,{ref:x,className:`max-h-[min(26rem,54vh)] overflow-y-auto`,role:`listbox`,"aria-label":f,"aria-activedescendant":P,children:[F,I]}),t[31]=f,t[32]=F,t[33]=I,t[34]=P,t[35]=L):L=t[35];let R;t[36]===v?R=t[37]:(R=v?(0,X.jsx)(`div`,{className:`pointer-events-none fixed z-[200] max-h-48 max-w-sm overflow-auto rounded-md border border-edge bg-surface-overlay p-2 font-mono text-[0.7rem] text-fg shadow-lg`,style:{left:Math.min(v.x+12,window.innerWidth-320),top:Math.min(v.y+12,window.innerHeight-200)},children:v.text}):null,t[36]=v,t[37]=R);let z;return t[38]!==L||t[39]!==R||t[40]!==N?(z=(0,ys.createPortal)((0,X.jsxs)(`div`,{"data-composer-picker-panel":!0,className:`pointer-events-auto max-h-[min(28rem,60vh)] min-h-[2.5rem] overflow-hidden rounded-lg border border-edge bg-surface-overlay shadow-lg`,style:N,role:`presentation`,children:[L,R]}),document.body),t[38]=L,t[39]=R,t[40]=N,t[41]=z):z=t[41],z});function eT(e,t){let n=e=>{e!==!1&&(e&&typeof e==`object`?t(e.conversationId):t())};e instanceof Promise?e.then(n).catch(e=>{Me(`error`,e instanceof Error?e.message:String(e))}):n(e)}var tT=new Set([`abort`,`stop`,`cancel`]);function nT(e){if(e.kind!==`command`)return!1;if(tT.has(e.name.toLowerCase()))return!0;for(let t of e.aliases??[])if(tT.has(t.toLowerCase()))return!0;return!1}function rT(e,t,n,r){return e.slice(0,t)+r+e.slice(n)}var iT=(e,t)=>{let n=t.slashRange;if(!n)return;if(e.availability.status!==`available`){t.callbacks.onUnavailableSkill?.(e);return}let r=`/skill:${e.canonicalName} `,i=rT(t.editor.valueRef.current,n.start,n.end,r),a=n.start+r.length;t.editor.resetEditor({nextText:i,caretOffset:a,focus:!0})},aT=(e,t)=>{let n=t.slashRange;if(!n||n.start!==0)return;if(e.name.toLowerCase()===`review`&&t.callbacks.onReviewLauncher&&!t.runBusy&&t.pendingFollowUpsCount===0){let e=t.editor.valueRef.current,r=e.slice(0,n.start)+e.slice(n.end);t.editor.resetEditor({nextText:r,caretOffset:n.start,focus:!0}),t.callbacks.onReviewLauncher();return}if(e.acceptsArgs===!0){let r=`/${e.name} `,i=rT(t.editor.valueRef.current,n.start,n.end,r),a=n.start+r.length;t.editor.resetEditor({nextText:i,caretOffset:a,focus:!0});return}let r=`/${e.name}`;if(t.runBusy||t.pendingFollowUpsCount>0){if(nT(e)){if(!t.callbacks.onAbort)return;t.callbacks.onAbort();let e=t.editor.valueRef.current,r=e.slice(0,n.start)+e.slice(n.end);t.editor.resetEditor({nextText:r,caretOffset:n.start});return}if(!t.callbacks.onAddPendingFollowUp||t.pendingFollowUpsCount>=t.maxPendingFollowUps)return;t.contextRefs.current.length?t.callbacks.onAddPendingFollowUp(r,void 0,t.contextRefs.current):t.callbacks.onAddPendingFollowUp(r,void 0),t.callbacks.onUserTextCommitted?.(r),t.attachments.clearAttachments(),t.contextRefs.clear(),t.editor.resetEditor();return}eT(t.contextRefs.current.length?t.callbacks.onSend(r,void 0,t.thinkingLevel,t.contextRefs.current):t.callbacks.onSend(r,void 0,t.thinkingLevel),e=>{e===void 0?t.callbacks.onUserTextCommitted?.(r):t.callbacks.onUserTextCommitted?.(r,e),t.attachments.clearAttachments(),t.contextRefs.clear(),t.editor.resetEditor()})},oT=(e,t)=>{let n=t.slashRange;if(!n||n.start!==0||!t.callbacks.onChatAgentChange)return;let r=t.editor.valueRef.current,i=r.slice(n.end),a=r.slice(0,n.start)+(i.startsWith(` `)?i.slice(1):i);t.editor.resetEditor({nextText:a,caretOffset:n.start}),t.callbacks.onChatAgentChange(e.agentId)};function sT(e,t){switch(e.kind){case`skill`:iT(e,t);return;case`command`:aT(e,t);return;case`agent`:oT(e,t)}}var cT={new:10,help:11,list:12,clear:13,switch:14,models:15,usage:16,skills:17,settings:18,start:19,think:20,reasoning:21,verbose:22,status:23,tts:24},lT=new Set([`abort`,`archive`]);function uT(e){if(e.kind===`command`){let t=e.name.toLowerCase();if(cT[t]!==void 0)return 0;if(lT.has(t))return 2}return 1}function dT(e,t){let n=uT(e),r=uT(t);if(n!==r)return n-r;if(n===0){let n=cT[e.name.toLowerCase()]??999,r=cT[t.name.toLowerCase()]??999;if(n!==r)return n-r}let i=e.name.localeCompare(t.name);return i===0?e.id.localeCompare(t.id):i}function fT(e){if(e.kind!==`command`)return!1;if(tT.has(e.name.toLowerCase()))return!0;for(let t of e.aliases??[])if(tT.has(t.toLowerCase()))return!0;return!1}function pT(e,t){return e.kind!==`command`||e.acceptsArgs===!0||fT(e)||!(t.runBusy||t.pendingFollowUpsCount>0)?!1:t.pendingFollowUpsCount>=t.maxPendingFollowUps}function mT(e,t){return e.kind!==`command`||e.acceptsArgs===!0||fT(e)||!(t.runBusy||t.pendingFollowUpsCount>0)?!1:t.pendingFollowUpsCount<t.maxPendingFollowUps}function hT(e){return e.includes(`/`)||/^[A-Za-z]:/u.test(e)?!0:/^(Users|home|var|tmp|etc|opt|private|Volumes|System|Applications|Library|usr|dev|bin|sbin|proc|sys)(\/|$)/iu.test(e)}function gT(e,t){if(t===0)return!1;let n=e[t-1];if(n===void 0||n===`.`||n===`:`||n===`/`)return!0;let r=e.slice(0,t);return/[a-zA-Z0-9-]+\.[a-zA-Z0-9.-]+$/u.test(r)}function _T(e,t){let n=e.length,r=Math.min(Math.max(t,0),n);if(r<1&&e===`/`&&(r=1),r<1)return null;let i=e.slice(0,r).match(/\/[^\s]*$/);if(!i||i.index===void 0)return null;let a=i.index;if(gT(e,a))return null;let o=i[0],s=o.slice(1);return hT(s)||o.startsWith(`/skill:`)?null:{start:i.index,end:r,query:s}}function vT(e,t){let n=t.trim().toLowerCase();if(!n)return 0;let r=e.name.toLowerCase();if(r===n)return 0;for(let t of e.aliases??[])if(t.toLowerCase()===n)return 1;if(r.startsWith(n))return 2;for(let t of e.aliases??[])if(t.toLowerCase().startsWith(n))return 3;if(r.includes(n))return 4;for(let t of e.aliases??[])if(t.toLowerCase().includes(n))return 5;if(e.description.toLowerCase().includes(n))return 100;if(e.category.toLowerCase().includes(n))return 101;if(e.kind===`skill`&&(e.source??``).toLowerCase().includes(n))return 102;if(e.kind===`skill`){for(let t of e.searchTerms??[])if(t.toLowerCase().includes(n))return 103}return null}function yT(e,t){return t===0?0:Math.min(e,t-1)}function bT(e,t){let{query:n,value:r,commandsAllowed:i,agentsAllowed:a}=t,o=n.trim()===``,s=Jf(r),c=[];for(let r of e){if(r.kind===`command`&&!i||r.kind===`agent`&&!a||r.kind===`skill`&&t.skillsAllowed===!1||r.kind===`skill`&&s.has(r.canonicalName)||r.kind===`skill`&&o&&r.availability.status!==`available`)continue;let e=vT(r,n);e!==null&&c.push({item:r,rank:e})}c.sort((e,t)=>{let n=e.item.kind===`skill`&&e.item.availability.status!==`available`;return n===(t.item.kind===`skill`&&t.item.availability.status!==`available`)?e.rank===t.rank?dT(e.item,t.item):e.rank-t.rank:n?1:-1});let l=c.map(e=>e.item),u=[],d=l.filter(e=>e.kind===`skill`),f=l.filter(e=>e.kind===`command`),p=l.filter(e=>e.kind===`agent`);d.length>0&&u.push({kind:`skill`,items:d}),f.length>0&&u.push({kind:`command`,items:f}),p.length>0&&u.push({kind:`agent`,items:p});let m=[];for(let e of u)m.push(...e.items);return{sections:u,flatItems:m}}function xT(e,t,n){let r=(0,Y.c)(49),[i,a]=(0,Z.useState)(0),[o,s]=(0,Z.useState)(0),c=h(wT),l=n?.capabilities??kf,u=l.commands||l.skills||l.agentSwitch;n?.isComposing;let d;r[0]!==t||r[1]!==u||r[2]!==n?.isComposing||r[3]!==e?(d=!u||n?.isComposing?null:_T(e,t),r[0]=t,r[1]=u,r[2]=n?.isComposing,r[3]=e,r[4]=d):d=r[4];let f=d,p=!!(f&&!n?.suppress),m,g;r[5]===Symbol.for(`react.memo_cache_sentinel`)?(m=()=>{let e=e=>{let t=e.detail;t&&typeof t==`object`&&`section`in t&&(t.section===`skills`||t.section===`agents`)&&s(CT)};return window.addEventListener(`config-reload`,e),()=>window.removeEventListener(`config-reload`,e)},g=[],r[5]=m,r[6]=g):(m=r[5],g=r[6]),(0,Z.useEffect)(m,g);let _;r[7]!==c||r[8]!==n?.conversationId||r[9]!==n?.currentAgentId?(_=async()=>{let[e,t,r]=await Promise.allSettled([oo(),to(n?.currentAgentId,n?.conversationId),Jr()]),i=[];t.status===`rejected`&&i.push(`skill`),e.status===`rejected`&&i.push(`command`),r.status===`rejected`&&i.push(`agent`);let a=(e.status===`fulfilled`?e.value:[]).map(ST),o=(t.status===`fulfilled`?t.value.skills:[]).map(e=>{let t=so(e,c);return{kind:`skill`,id:`skill:${e.name}`,name:t.displayName,canonicalName:e.name,description:t.description,aliases:t.aliases,searchTerms:t.searchTerms,category:`skill`,source:e.source,availability:{status:e.availableForCurrentAgent?`available`:e.unavailableReason??`agent-denied`,reason:e.unavailableReason??void 0}}}),s=y(c).agentsSettings,l=r.status===`fulfilled`?r.value:null,u=l&&l.items.length>1?l.items.map(e=>({kind:`agent`,id:`agent:${e.id}`,agentId:e.id,name:Ao(e,s),description:jo(e,s),category:`agent`,...e.avatar?{avatar:e.avatar}:{},aliases:[e.id,...e.name?[e.name]:[]]})):[];return{items:[...o,...a,...u],failedKinds:i}},r[7]=c,r[8]=n?.conversationId,r[9]=n?.currentAgentId,r[10]=_):_=r[10];let v=n?.currentAgentId,b=n?.conversationId,x;r[11]!==c||r[12]!==o||r[13]!==v||r[14]!==b?(x=[c,v,b,o],r[11]=c,r[12]=o,r[13]=v,r[14]=b,r[15]=x):x=r[15];let S;r[16]===Symbol.for(`react.memo_cache_sentinel`)?(S=[],r[16]=S):S=r[16];let C;r[17]===Symbol.for(`react.memo_cache_sentinel`)?(C=[],r[17]=C):C=r[17];let w,T;r[18]===Symbol.for(`react.memo_cache_sentinel`)?(T={items:S,failedKinds:C},w=[],r[18]=w,r[19]=T):(w=r[18],T=r[19]);let E;r[20]===Symbol.for(`react.memo_cache_sentinel`)?(E=[],r[20]=E):E=r[20];let D;r[21]===Symbol.for(`react.memo_cache_sentinel`)?(D={items:w,failedKinds:E},r[21]=D):D=r[21];let O;r[22]===p?O=r[23]:(O={enabled:p,initial:T,errorData:D},r[22]=p,r[23]=O);let k=ha(_,x,O),A=k.data.items,j=k.error==null?null:k.error instanceof Error?k.error.message:String(k.error),M=f?.query??``,N=l.commands&&f!==null&&f.start===0,P=l.agentSwitch&&f!==null&&f.start===0,F;r[24]!==P||r[25]!==A||r[26]!==l.skills||r[27]!==N||r[28]!==M||r[29]!==e?(F=bT(A,{query:M,value:e,commandsAllowed:N,agentsAllowed:P,skillsAllowed:l.skills}),r[24]=P,r[25]=A,r[26]=l.skills,r[27]=N,r[28]=M,r[29]=e,r[30]=F):F=r[30];let{sections:I,flatItems:L}=F,R=f?M:``,z=(0,Z.useRef)(R);z.current!==R&&(z.current=R,i!==0&&a(0));let B;r[31]!==L.length||r[32]!==i?(B=yT(i,L.length),r[31]=L.length,r[32]=i,r[33]=B):B=r[33];let ee=B,V;r[34]===L.length?V=r[35]:(V=e=>{L.length!==0&&a(t=>e===`down`?(t+1)%L.length:(t-1+L.length)%L.length)},r[34]=L.length,r[35]=V);let H=V,te;return r[36]!==P||r[37]!==N||r[38]!==L||r[39]!==k.data.failedKinds||r[40]!==k.loading||r[41]!==j||r[42]!==H||r[43]!==p||r[44]!==M||r[45]!==ee||r[46]!==I||r[47]!==f?(te={open:p,slashRange:f,commandsAllowed:N,agentsAllowed:P,sections:I,flatItems:L,selectedIndex:ee,query:M,loading:k.loading,failedKinds:k.data.failedKinds,loadError:j,onNavigate:H,setSelectedIndex:a},r[36]=P,r[37]=N,r[38]=L,r[39]=k.data.failedKinds,r[40]=k.loading,r[41]=j,r[42]=H,r[43]=p,r[44]=M,r[45]=ee,r[46]=I,r[47]=f,r[48]=te):te=r[48],te}function ST(e){return{kind:`command`,id:`cmd:${e.id}`,name:e.name,description:e.description,category:e.category,aliases:e.aliases,acceptsArgs:e.acceptsArgs,acceptsContext:e.acceptsContext,examples:e.examples}}function CT(e){return e+1}function wT(e){return e.language}var TT=100,ET=560;function DT(e,t){let n=t.trim().toLowerCase();if(!n)return e;let r=e.toLowerCase().indexOf(n);if(r>=0)return(0,X.jsxs)(X.Fragment,{children:[e.slice(0,r),(0,X.jsx)(`span`,{className:`text-accent-fg`,children:e.slice(r,r+n.length)}),e.slice(r+n.length)]});let i=[],a=0,o=0;for(let t of e){let e=n[a],r=`${String(o)}-${t}`;e!==void 0&&t.toLowerCase()===e?(i.push((0,X.jsx)(`span`,{className:`text-accent-fg`,children:t},r)),a+=1):i.push((0,X.jsx)(Z.Fragment,{children:t},r)),o+=1}return(0,X.jsx)(X.Fragment,{children:i})}function OT(e,t){let n=t.trim().toLowerCase();if(!n)return e;let r=e.toLowerCase().indexOf(n);return r<0?e:(0,X.jsxs)(X.Fragment,{children:[e.slice(0,r),(0,X.jsx)(`span`,{className:`text-accent-fg`,children:e.slice(r,r+n.length)}),e.slice(r+n.length)]})}var kT=(0,Z.memo)(function(e){let t=(0,Y.c)(46),{item:n,index:r,selectedIndex:i,showHighlight:a,filterQuery:o,currentAgentId:s,currentBadgeLabel:c,runBusy:l,pendingFollowUpsCount:u,maxPendingFollowUps:d,queueBadgeLabel:f,queueFullBadgeLabel:p,queueFullTooltip:m,skillUnavailableLabel:h,skillAgentDeniedLabel:g,skillSourceLabels:_,onSelectItem:v}=e,y=n.kind===`skill`,b=n.kind===`agent`,x;t[0]!==b||t[1]!==y||t[2]!==n.agentId||t[3]!==n.avatar?(x=b?(0,X.jsx)(_a,{agentId:n.agentId,avatar:n.avatar,size:18,className:`size-[18px] shrink-0`}):y?(0,X.jsx)(zt,{className:`size-4 shrink-0 text-accent-fg`,"aria-hidden":!0}):(0,X.jsx)(qt,{className:`size-4 shrink-0 text-amber-600 dark:text-amber-400`,"aria-hidden":!0}),t[0]=b,t[1]=y,t[2]=n.agentId,t[3]=n.avatar,t[4]=x):x=t[4];let S=x,C;t[5]!==o||t[6]!==b||t[7]!==n.name||t[8]!==a?(C=b?a?(0,X.jsx)(X.Fragment,{children:DT(n.name,o)}):(0,X.jsx)(`span`,{className:`text-fg`,children:n.name}):a?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`span`,{className:`text-fg`,children:`/`}),DT(n.name,o)]}):(0,X.jsxs)(`span`,{className:`text-fg`,children:[`/`,n.name]}),t[5]=o,t[6]=b,t[7]=n.name,t[8]=a,t[9]=C):C=t[9];let w=C,T=b&&s!=null&&s.length>0&&n.agentId===s,E=y&&n.availability.status!==`available`,D,O;if(t[10]!==n||t[11]!==d||t[12]!==u||t[13]!==l){let e={runBusy:l,pendingFollowUpsCount:u,maxPendingFollowUps:d};O=mT(n,e),D=pT(n,e),t[10]=n,t[11]=d,t[12]=u,t[13]=l,t[14]=D,t[15]=O}else D=t[14],O=t[15];let k=D,A=null;if(T){let e;t[16]===c?e=t[17]:(e=(0,X.jsx)(`span`,{className:`ml-1 shrink-0 rounded bg-accent-soft px-1 py-px text-[0.6rem] font-medium leading-none text-accent-fg`,"aria-label":c,children:c}),t[16]=c,t[17]=e),A=e}else if(E){let e=n.availability.reason??`unavailable`,r=n.availability.status===`agent-denied`?g:h,i;t[18]!==e||t[19]!==r?(i=(0,X.jsx)(`span`,{className:`ml-1 shrink-0 rounded bg-surface-hover px-1 py-px text-[0.6rem] font-medium leading-none text-fg-muted`,"aria-label":e,children:r}),t[18]=e,t[19]=r,t[20]=i):i=t[20],A=i}else if(y&&n.source){let e=_[n.source]??n.source,r;t[21]===e?r=t[22]:(r=(0,X.jsx)(`span`,{className:`ml-2 shrink-0 text-[11px] font-normal text-fg-muted`,children:e}),t[21]=e,t[22]=r),A=r}else if(k){let e;t[23]===p?e=t[24]:(e=(0,X.jsx)(`span`,{className:`ml-1 shrink-0 rounded bg-red-100 px-1 py-px text-[0.6rem] font-medium leading-none text-red-700 dark:bg-red-900/40 dark:text-red-300`,"aria-label":p,children:p}),t[23]=p,t[24]=e),A=e}else if(O){let e;t[25]===f?e=t[26]:(e=(0,X.jsx)(`span`,{className:`ml-1 shrink-0 rounded bg-surface-hover px-1 py-px text-[0.6rem] font-medium leading-none text-fg-muted`,"aria-label":f,children:f}),t[25]=f,t[26]=e),A=e}let j=i===r,M=`palette-${r}`,N;t[27]!==o||t[28]!==n.description||t[29]!==a?(N=n.description?a?OT(n.description,o):n.description:null,t[27]=o,t[28]=n.description,t[29]=a,t[30]=N):N=t[30];let P=k?m:void 0,F;t[31]!==n||t[32]!==v?(F=()=>v(n),t[31]=n,t[32]=v,t[33]=F):F=t[33];let I;return t[34]!==S||t[35]!==k||t[36]!==n||t[37]!==w||t[38]!==a||t[39]!==j||t[40]!==M||t[41]!==N||t[42]!==P||t[43]!==F||t[44]!==A?(I=(0,X.jsx)(jT,{item:n,icon:S,selected:j,id:M,nameLine:w,descriptionLine:N,dimCategoryBadge:a,trailingBadge:A,disabled:k,disabledTooltip:P,onSelect:F}),t[34]=S,t[35]=k,t[36]=n,t[37]=w,t[38]=a,t[39]=j,t[40]=M,t[41]=N,t[42]=P,t[43]=F,t[44]=A,t[45]=I):I=t[45],I}),AT=(0,Z.memo)(function(e){let t=(0,Y.c)(53),{open:n,anchorRef:r,sections:i,flatItems:a,loading:o,failedKinds:s,selectedIndex:c,noResults:l,sectionLoadFailedLabel:u,query:d,skillsLabel:f,commandsLabel:p,agentsLabel:m,currentAgentId:h,currentBadgeLabel:g,runBusy:_,pendingFollowUpsCount:v,maxPendingFollowUps:y,queueBadgeLabel:b,queueFullBadgeLabel:x,queueFullTooltip:S,skillUnavailableLabel:C,skillAgentDeniedLabel:w,skillSourceLabels:T,onSelectItem:E,panelRef:D}=e,[O,k]=(0,Z.useState)(null),A,j;t[0]!==r||t[1]!==n?(A=()=>{if(!n){k(null);return}let e=()=>{let e=r.current;if(!e)return;let t=e.getBoundingClientRect();k({left:t.left,top:t.top,width:t.width})};e();let t=r.current,i=t&&typeof ResizeObserver<`u`?new ResizeObserver(()=>{e()}):null;return t&&i&&i.observe(t),window.addEventListener(`resize`,e),window.addEventListener(`scroll`,e,!0),()=>{t&&i&&i.disconnect(),window.removeEventListener(`resize`,e),window.removeEventListener(`scroll`,e,!0)}},j=[n,r],t[0]=r,t[1]=n,t[2]=A,t[3]=j):(A=t[2],j=t[3]),(0,Z.useLayoutEffect)(A,j);let M,N;if(t[4]!==a.length||t[5]!==n||t[6]!==c?(M=()=>{!n||a.length===0||document.getElementById(`palette-${c}`)?.scrollIntoView?.({block:`nearest`})},N=[a.length,n,c],t[4]=a.length,t[5]=n,t[6]=c,t[7]=M,t[8]=N):(M=t[7],N=t[8]),(0,Z.useEffect)(M,N),!n||typeof document>`u`||O===null)return null;let P=a.length,F=a[c],I=Math.min(O.width,ET),L;t[9]===d?L=t[10]:(L=d.trim(),t[9]=d,t[10]=L);let R=L,z=R.length>0,B;t[11]!==m||t[12]!==p||t[13]!==f?(B={skill:f,command:p,agent:m},t[11]=m,t[12]=p,t[13]=f,t[14]=B):B=t[14];let ee=B,V;t[15]!==h||t[16]!==g||t[17]!==R||t[18]!==y||t[19]!==E||t[20]!==v||t[21]!==b||t[22]!==x||t[23]!==S||t[24]!==_||t[25]!==c||t[26]!==z||t[27]!==w||t[28]!==T||t[29]!==C?(V={selectedIndex:c,showHighlight:z,filterQuery:R,currentAgentId:h,currentBadgeLabel:g,runBusy:_,pendingFollowUpsCount:v,maxPendingFollowUps:y,queueBadgeLabel:b,queueFullBadgeLabel:x,queueFullTooltip:S,skillUnavailableLabel:C,skillAgentDeniedLabel:w,skillSourceLabels:T,onSelectItem:E},t[15]=h,t[16]=g,t[17]=R,t[18]=y,t[19]=E,t[20]=v,t[21]=b,t[22]=x,t[23]=S,t[24]=_,t[25]=c,t[26]=z,t[27]=w,t[28]=T,t[29]=C,t[30]=V):V=t[30];let H=V,te;if(t[31]!==s||t[32]!==o||t[33]!==l||t[34]!==H||t[35]!==ee||t[36]!==u||t[37]!==i||t[38]!==P){let e=new Map(i.map(MT)),n=[`skill`,`command`,`agent`].filter(t=>e.has(t)||s.includes(t)),r=0;te=o&&P===0?(0,X.jsx)(`div`,{className:`space-y-2 p-2.5`,"aria-busy":`true`,children:Array.from({length:6},NT)}):P===0&&s.length===0?(0,X.jsx)(`div`,{className:`p-2.5 text-xs leading-normal text-fg-muted`,children:l}):n.map((t,n)=>{let i=e.get(t)?.items??[],a=r;r+=i.length;let o=`palette-section-${t}`;return(0,X.jsxs)(`div`,{role:`group`,"aria-labelledby":o,className:J(n>0&&`border-t border-edge-subtle`),children:[(0,X.jsxs)(`div`,{id:o,className:`sticky top-0 z-10 flex items-center justify-between bg-surface-overlay px-2.5 py-2 text-[0.65rem] font-medium uppercase leading-none tracking-wide text-fg-muted`,children:[(0,X.jsx)(`span`,{children:ee[t]}),(0,X.jsx)(`span`,{className:`tabular-nums`,"aria-hidden":!0,children:i.length})]}),s.includes(t)?(0,X.jsx)(`div`,{className:`px-2.5 pb-2 text-[11px] leading-relaxed text-fg-muted`,children:u}):i.map((e,t)=>(0,X.jsx)(kT,{item:e,index:a+t,...H},e.id))]},t)}),t[31]=s,t[32]=o,t[33]=l,t[34]=H,t[35]=ee,t[36]=u,t[37]=i,t[38]=P,t[39]=te}else te=t[39];let U=te,W;t[40]!==O.left||t[41]!==O.top||t[42]!==I?(W={position:`fixed`,left:O.left,top:O.top,width:I,transform:`translateY(calc(-100% - 8px))`,zIndex:TT},t[40]=O.left,t[41]=O.top,t[42]=I,t[43]=W):W=t[43];let ne=`${f}, ${p}, ${m}`,re=F?`${ee[F.kind]}: ${F.name}`:``,ie;t[44]===re?ie=t[45]:(ie=(0,X.jsx)(`span`,{className:`sr-only`,"aria-live":`polite`,children:re}),t[44]=re,t[45]=ie);let ae;return t[46]!==U||t[47]!==o||t[48]!==D||t[49]!==ne||t[50]!==ie||t[51]!==W?(ae=(0,ys.createPortal)((0,X.jsx)(Ma,{delayDuration:0,skipDelayDuration:0,disableHoverableContent:!1,children:(0,X.jsxs)(`div`,{ref:D,className:`pointer-events-auto max-h-[min(32rem,60vh)] min-h-8 overflow-y-auto rounded-md border border-edge bg-surface-overlay text-xs leading-4 shadow-lg`,style:W,role:`listbox`,"aria-label":ne,"aria-busy":o,children:[ie,U]})}),document.body),t[46]=U,t[47]=o,t[48]=D,t[49]=ne,t[50]=ie,t[51]=W,t[52]=ae):ae=t[52],ae}),jT=(0,Z.memo)(function(e){let t=(0,Y.c)(39),{item:n,icon:r,selected:i,id:a,nameLine:o,descriptionLine:s,dimCategoryBadge:c,trailingBadge:l,disabled:u,disabledTooltip:d,onSelect:f}=e,p;t[0]===n.description?p=t[1]:(p=n.description.trim(),t[0]=n.description,t[1]=p);let m=p,h=m.length>0&&s!=null,g=m.length>0,_=n.description,v=n.category&&n.kind!==`skill`&&!c&&!(n.kind===`agent`&&l),y;t[2]===o?y=t[3]:(y=(0,X.jsx)(`span`,{className:`min-w-0 max-w-[min(12rem,46%)] shrink-0 truncate font-semibold text-fg`,children:o}),t[2]=o,t[3]=y);let b;t[4]!==n.category||t[5]!==v?(b=v?(0,X.jsx)(`span`,{className:`shrink-0 rounded bg-surface-hover px-1 py-px text-[0.6rem] font-normal leading-none text-fg-muted`,children:n.category}):null,t[4]=n.category,t[5]=v,t[6]=b):b=t[6];let x;t[7]!==s||t[8]!==h?(x=h?(0,X.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-[11px] font-normal leading-tight text-fg-muted`,children:s}):null,t[7]=s,t[8]=h,t[9]=x):x=t[9];let S;t[10]!==y||t[11]!==b||t[12]!==x?(S=(0,X.jsxs)(`span`,{className:`flex min-w-0 flex-1 items-baseline gap-1`,children:[y,b,x]}),t[10]=y,t[11]=b,t[12]=x,t[13]=S):S=t[13];let C=S,w=u?`cursor-not-allowed opacity-50 text-fg-muted`:i?`cursor-pointer bg-surface-hover text-fg`:`cursor-pointer text-fg-subtle hover:bg-surface-hover/80`,T;t[14]===w?T=t[15]:(T=J(`flex min-h-11 w-full min-w-0 items-center gap-2 px-2.5 py-1.5 text-left text-sm leading-5 sm:min-h-9`,w),t[14]=w,t[15]=T);let E=T,D;t[16]!==u||t[17]!==f?(D=e=>{u||e.pointerType===`mouse`&&e.button!==0||(e.preventDefault(),f())},t[16]=u,t[17]=f,t[18]=D):D=t[18];let O=D,k;t[19]===r?k=t[20]:(k=(0,X.jsx)(`span`,{className:`shrink-0 [&_svg]:align-middle`,children:r}),t[19]=r,t[20]=k);let A;t[21]!==k||t[22]!==C||t[23]!==l?(A=(0,X.jsxs)(X.Fragment,{children:[k,C,l]}),t[21]=k,t[22]=C,t[23]=l,t[24]=A):A=t[24];let j=A,M=u&&d?d:g?_:null,N=u||void 0,P;t[25]!==a||t[26]!==O||t[27]!==E||t[28]!==j||t[29]!==i||t[30]!==N?(P=(0,X.jsx)(`div`,{id:a,role:`option`,"aria-selected":i,"aria-disabled":N,tabIndex:-1,className:E,onPointerDown:O,children:j}),t[25]=a,t[26]=O,t[27]=E,t[28]=j,t[29]=i,t[30]=N,t[31]=P):P=t[31];let F=P;if(M!==null){let e;t[32]===F?e=t[33]:(e=(0,X.jsx)(Ia,{asChild:!0,children:F}),t[32]=F,t[33]=e);let n;t[34]===M?n=t[35]:(n=(0,X.jsx)(Na,{children:(0,X.jsx)(Fa,{side:`right`,align:`start`,sideOffset:8,collisionPadding:12,className:`!z-[10000] max-h-[min(12rem,40vh)] max-w-sm overflow-y-auto rounded-md border border-edge bg-surface-overlay px-2 py-1.5 text-left text-[11px] leading-snug text-fg shadow-lg select-text [max-width:min(20rem,90vw)]`,"data-slash-palette-tooltip":``,children:(0,X.jsx)(`span`,{className:`whitespace-pre-wrap break-words`,children:M})})}),t[34]=M,t[35]=n);let r;return t[36]!==e||t[37]!==n?(r=(0,X.jsxs)(Pa,{delayDuration:0,children:[e,n]}),t[36]=e,t[37]=n,t[38]=r):r=t[38],r}return F});function MT(e){return[e.kind,e]}function NT(e,t){return(0,X.jsxs)(`div`,{className:`flex items-center gap-2 py-1`,children:[(0,X.jsx)(Jt,{className:`size-4 shrink-0`}),(0,X.jsx)(Jt,{className:`h-3 w-28`}),(0,X.jsx)(Jt,{className:`h-3 flex-1`})]},t)}var PT=new Map;function FT(e){let t=PT.get(e);return t||(t={items:[],loadPromise:null,loaded:!1,writeQueue:Promise.resolve(),mutationVersion:0,clearVersion:0},PT.set(e,t)),t}function IT(e,t){if(e.items[0]?.text===t.text){t.id>0&&(e.items[0]=t);return}e.items=[t,...e.items].slice(0,100)}function LT(e,t){if(e.items.some(e=>e.id===t.id))return;let n=e.items.findIndex(e=>e.id===0&&e.text===t.text);if(n>=0){e.items[n]=t;return}IT(e,t)}function RT(e){return FT(e).items.map(e=>e.text)}function zT(e,t=!1){let n=FT(e);if(n.loaded&&!t)return Promise.resolve();if(n.loadPromise)return n.loadPromise;let r=n.mutationVersion,i=!1;return n.loadPromise=n.writeQueue.then(()=>g(`/api/composer-history?conversationId=${encodeURIComponent(e)}`)).then(t=>{n.mutationVersion===r?(n.items=t.items.filter(t=>t.conversationId===e).slice(0,100),n.loaded=!0):i=!0}).catch(()=>{}).finally(()=>{n.loadPromise=null,i&&n.writeQueue.then(()=>zT(e,!0))}),n.loadPromise}function BT(e,t){let n=t.trim();if(!n)return;let r=FT(e),i=r.clearVersion;r.mutationVersion+=1,IT(r,{conversationId:e,id:0,text:n,createdAt:Date.now()}),r.writeQueue=r.writeQueue.then(async()=>{let t=await g(`/api/composer-history`,{method:`POST`,body:JSON.stringify({conversationId:e,text:n})});r.clearVersion===i&&t.item.conversationId===e&<(r,t.item)}).catch(()=>{})}function VT(e){if(!e||typeof e!=`object`)return null;let t=e;if(typeof t.conversationId!=`string`||!t.conversationId||typeof t.id!=`number`||typeof t.text!=`string`||typeof t.createdAt!=`number`)return null;let n=FT(t.conversationId);return n.mutationVersion+=1,LT(n,t),t.conversationId}function HT(e){if(!e||typeof e!=`object`||!(`conversationId`in e)||typeof e.conversationId!=`string`)return null;let t=FT(e.conversationId);return t.mutationVersion+=1,t.clearVersion+=1,t.items=[],e.conversationId}function UT(e){let{conversationId:t,editorRef:n,valueRef:r,resetEditor:i,onWireInput:a}=e,o=(0,Z.useRef)(t);o.current=t;let s=(0,Z.useRef)(null),c=(0,Z.useCallback)(()=>{s.current=null},[]);return(0,Z.useEffect)(()=>{c()},[t,c]),(0,Z.useEffect)(()=>{t&&zT(t,!0);let e=e=>{VT(e.detail)===t&&c()},n=e=>{HT(e.detail)===t&&c()},r=()=>{t&&zT(t,!0)};return window.addEventListener(`composer-history-appended`,e),window.addEventListener(`composer-history-cleared`,n),window.addEventListener(`gateway-realtime-connected`,r),()=>{window.removeEventListener(`composer-history-appended`,e),window.removeEventListener(`composer-history-cleared`,n),window.removeEventListener(`gateway-realtime-connected`,r)}},[t,c]),{onUserTextCommitted:(0,Z.useCallback)((e,n=t)=>{n&&!Yn(e)&&BT(n,e),n===o.current&&c()},[t,c]),onWireInputClearWalk:(0,Z.useCallback)((e,t)=>{s.current=null,a(e,t)},[a]),tryInputHistoryArrow:(0,Z.useCallback)(e=>{if(!t)return!1;let a=RT(t);if(a.length===0)return!1;let o=s.current,c=n.current,l=c?Yf(c):0,u=r.current;if(e===`up`){if(o==null){if(l!==0)return!1;s.current={index:0,stash:u};let e=a[0];return e?(i({nextText:e,caretOffset:e.length,focus:!0}),!0):!1}if(o.index>=a.length-1)return!0;o.index+=1;let e=a[o.index];return e?(i({nextText:e,caretOffset:e.length,focus:!0}),!0):!1}if(o==null)return!1;if(--o.index,o.index<0){let e=o.stash;return s.current=null,i({nextText:e,caretOffset:e.length,focus:!0}),!0}let d=a[o.index];return d?(i({nextText:d,caretOffset:d.length,focus:!0}),!0):!1},[t,n,r,i])}}function WT(e){if(e.voiceActive)return e.cancelVoiceInput(),null;let t=e.getTextValue(),n=e.getContextRefs();if(!t.trim()&&e.getAttachmentCount()===0&&n.length===0)return null;let r=e.wireAttachmentsPayload();return structuredClone({text:t,attachments:r,contextRefs:n})}function GT(e){let t=(0,Z.useRef)(e);t.current=e;let{chat:n,runBusy:r,voiceActive:i,cancelVoiceInput:a,editingFollowUpId:o,getTextValue:s,getAttachmentCount:c,wireAttachmentsPayload:l,getContextRefs:u,getThinkingLevel:d,onSend:f,onDispatched:p,onAddPendingFollowUp:m,onSteeringInterrupt:h,onCommitEditFollowUp:g,onPendingFollowUpRemove:_,pendingFollowUpsCount:v,resetEditor:y,clearAttachments:b,clearContextRefs:x,clearEditFollowUpRef:S,onUserTextCommitted:C}=e,w={getTextValue:s,getAttachmentCount:c,wireAttachmentsPayload:l,getContextRefs:u},T=(0,Z.useRef)(!1);return{send:(0,Z.useCallback)(()=>{if(r)return;let e=WT({voiceActive:i,cancelVoiceInput:a,...w});if(!e)return;let n=[e.text,e.attachments.length>0?e.attachments:void 0,d(),e.contextRefs.length>0?e.contextRefs:void 0,{onDispatched:t=>p?.(t,e)}];eT(f(...n),n=>{C?.(e.text,n);let r=t.current;r.getTextValue()!==e.text||JSON.stringify(r.wireAttachmentsPayload())!==JSON.stringify(e.attachments)||JSON.stringify(r.getContextRefs())!==JSON.stringify(e.contextRefs)||(y(),b(),x())})},[r,i,a,f,p,d,C,y,b,x,s,c,l,u]),flushSteeringDraft:(0,Z.useCallback)(async(t=e.personal?!0:void 0)=>{if(!r&&v===0)return;let s=WT({voiceActive:i,cancelVoiceInput:a,...w});if(s){if(o){g(o,s.text,s.attachments.length>0?s.attachments:void 0,d(),s.contextRefs.length>0?s.contextRefs:void 0),C?.(s.text),S(),y(),b(),x();return}if(m&&!T.current){if(v>=10){Me(`warning`,n.followUpQueueMaxReached,{max:10});return}T.current=!0;try{let e=[s.text,s.attachments.length>0?s.attachments:void 0,s.contextRefs.length>0?s.contextRefs:void 0];t!==void 0&&e.push(t),await m(...e),C?.(s.text),y(),b(),x()}catch(e){Me(`error`,n.followUpQueueSubmitFailed,{message:e instanceof Error?e.message:String(e)})}finally{T.current=!1}}}},[r,i,a,o,v,m,g,d,e.personal,n.followUpQueueMaxReached,n.followUpQueueSubmitFailed,S,C,y,b,x,s,c,l,u]),interruptDraft:(0,Z.useCallback)(()=>{if(!r||!h)return;let e=WT({voiceActive:i,cancelVoiceInput:a,...w});e&&(h(e.text,e.attachments.length>0?e.attachments:void 0,e.contextRefs.length>0?e.contextRefs:void 0),C?.(e.text),o&&(S(),_(o)),y(),b(),x())},[r,i,a,o,_,h,C,S,y,b,x,s,c,l,u])}}var KT=(e,t)=>e.length===t.length&&e.every((e,n)=>e===t[n]);function qT(e,t,n,r,i){let a=m(e=>e.conversationId),o=a&&e?JSON.stringify([a,e]):``,s=(0,Z.useRef)({editor:t,attachments:n,refs:r,setRefs:i});s.current={editor:t,attachments:n,refs:r,setRefs:i};let c=(0,Z.useRef)(void 0),l=(0,Z.useRef)(``),[u,d]=(0,Z.useState)(0),f=(0,Z.useRef)(Promise.resolve());(0,Z.useLayoutEffect)(()=>{if(!o||!e){c.current=void 0;return}let t={receipts:[],scope:o,ready:!1,dirty:!1,observe:!1,snapshot:{text:s.current.editor.valueRef.current,attachments:s.current.attachments.attachmentsRef.current,refs:s.current.refs},storage:Cr(e)};c.current=t,l.current&&l.current!==o&&(s.current.editor.resetEditor(),s.current.attachments.clearAttachments(),s.current.setRefs([]),t.snapshot={text:``,attachments:[],refs:[]}),l.current=o;let n=!1;return t.storage.read().then(e=>{if(n=!0,c.current!==t)return;t.receipts=e?.intakeReceipts??[];let r=s.current;e&&!t.dirty&&!r.editor.valueRef.current&&!r.attachments.attachmentsRef.current.length&&!r.refs.length&&(r.editor.resetEditor({nextText:e.text}),r.attachments.setAttachments(e.attachments),r.setRefs(e.refs))}).catch(e=>{console.warn(`Composer draft restoration failed`,e)}).finally(()=>{c.current===t&&(t.ready=n,d(e=>e+1))}),()=>{c.current===t&&(c.current=void 0)}},[o,e]),(0,Z.useLayoutEffect)(()=>{let e=c.current;if(!e||e.scope!==o)return;if(!e.observe){e.observe=!0;return}let i={text:t.value,attachments:n.attachments,refs:r};(i.text!==e.snapshot.text||!KT(i.attachments,e.snapshot.attachments)||!KT(i.refs,e.snapshot.refs))&&(e.dirty=!0),e.snapshot=i},[o,t.value,n.attachments,r]),(0,Z.useEffect)(()=>{let e=c.current;if(!e||e.scope!==o||!e.ready&&!e.dirty)return;let i={text:t.value,attachments:n.attachments,refs:r},a=i.text||i.attachments.length||r.length?i:void 0;f.current=f.current.catch(()=>{}).then(()=>e.storage.write(a?{...a,intakeReceipts:e.receipts}:e.receipts.length?{text:``,attachments:[],refs:[],intakeReceipts:e.receipts}:void 0)).catch(e=>{console.warn(`Composer draft persistence failed`,e)})},[o,u,t.value,n.attachments,r]),(0,Z.useEffect)(()=>{let e=c.current;if(!(!e?.ready||!o))return Ts(o,async(t,n)=>{if(await f.current,c.current!==e)throw Error(`Conversation changed. Please retry.`);if(e.receipts.includes(t))return;let r=s.current,i=r.attachments.attachmentsRef.current,a=n.filter(e=>!i.some(t=>t.id===e.id));if(i.length+a.length>10)throw Error(`A message supports at most 10 attachments. Remove attachments or choose another conversation.`);r.attachments.setAttachments([...i,...a]),e.receipts.push(t);try{let t={text:r.editor.valueRef.current,attachments:r.attachments.attachmentsRef.current,refs:r.refs,intakeReceipts:e.receipts.slice()},n=f.current.catch(()=>{}).then(()=>e.storage.write(t));f.current=n,await n}catch(n){throw e.receipts=e.receipts.filter(e=>e!==t),n}})},[o,u])}function JT(e){let{conversationId:t,agentId:n,modelKey:r,locale:i,enabled:a,draftText:o,canShow:s}=e,c=m(e=>e.conversationId),[l,u]=(0,Z.useState)(null),[d,h]=(0,Z.useState)(null),g=(0,Z.useRef)(null),_=(0,Z.useRef)(o),v=(0,Z.useRef)(-1),y=(0,Z.useCallback)((e,t,n)=>{f(p(`/api/sessions/${encodeURIComponent(e.suggestion.conversationId)}/next-turn-suggestion-feedback`),{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({suggestionId:e.suggestion.id,impressionId:e.impressionId,event:t,...n===void 0?{}:{edited:n}})}).catch(()=>{})},[]);(0,Z.useEffect)(()=>{_.current.length>0&&o.length===0&&(g.current=null),_.current=o},[o]),(0,Z.useEffect)(()=>{g.current=null,v.current=-1,u(null),h(null)},[t,n,r,i,c]),(0,Z.useEffect)(()=>{if(u(null),!a||!t)return;let e=!1,r=0,o,s=0,c=new AbortController,l=async()=>{let a=++r;try{if(await br(t))return;let d=await f(p(`/api/sessions/${encodeURIComponent(t)}/next-turn-suggestion?locale=${i}`),{signal:c.signal});if(!d.ok)return;let m=hs.safeParse(await d.json());if(e||a!==r||!m.success)return;let h=m.data.suggestion;if(m.data.status===`ready`&&h&&h.conversationId===t&&h.locale===i&&(!n||h.agentId===n)&&h.inputRevision>=v.current&&h.expiresAt>Date.now()&&h.transcriptId===await wr(t)){if(e||a!==r)return;u(e=>e?.suggestion.id===h.id?e:{suggestion:h,impressionId:crypto.randomUUID()}),o=setTimeout(()=>{u(null)},Math.max(0,h.expiresAt-Date.now()))}else u(null),m.data.status===`pending`&&s++<7&&(o=setTimeout(()=>{l()},600))}catch{}},d=e=>{let n=e.detail;if(!(n?.conversationId!==t&&n?.key!==t)){if(typeof n.revision==`number`){if(n.revision<v.current)return;v.current=n.revision}r++,s=0,o&&clearTimeout(o),u(null),l()}},m=()=>{r++,s=0,o&&clearTimeout(o),u(null),l()},h=e=>{e.detail?.topic===`sessions`&&m()};l();let g=[`session-next-turn-suggestion-changed`,`session-input-state`,`session-updated`];return g.forEach(e=>window.addEventListener(e,d)),window.addEventListener(`gateway-realtime-connected`,m),window.addEventListener(`config-reload`,m),window.addEventListener(`realtime-gap`,h),()=>{e=!0,r++,c.abort(),o&&clearTimeout(o),g.forEach(e=>window.removeEventListener(e,d)),window.removeEventListener(`gateway-realtime-connected`,m),window.removeEventListener(`config-reload`,m),window.removeEventListener(`realtime-gap`,h)}},[t,n,r,i,c,a]);let b=a&&s&&o.length===0&&l?.suggestion.id!==d&&l?.suggestion.conversationId===t&&l.suggestion.expiresAt>Date.now()?l:null,x=(0,Z.useCallback)(()=>{b&&y(b,`shown`)},[b,y]),S=(0,Z.useCallback)(()=>b?(g.current=b,y(b,`accepted`),b.suggestion.prompt):null,[b,y]),C=(0,Z.useCallback)(()=>{b&&(h(b.suggestion.id),y(b,`dismissed`))},[b,y]),w=(0,Z.useCallback)(e=>{let n=g.current;!n||n.suggestion.conversationId!==t||(h(n.suggestion.id),y(n,`submitted`,e.trim()!==n.suggestion.prompt),g.current=null)},[t,y]);return{suggestion:b?.suggestion??null,shown:x,accept:S,dismiss:C,submitted:w}}function YT(e){let t=(0,Y.c)(6),{active:n,anchors:r,ignoreSelector:i,onDismiss:a}=e,o,s;t[0]!==n||t[1]!==r||t[2]!==i||t[3]!==a?(o=()=>{if(!n)return;let e=e=>{let t=e.target;if(t instanceof Node){for(let e of r){let n=e.current;if(n&&n.contains(t))return}i&&t instanceof Element&&t.closest(i)||a()}};return window.addEventListener(`pointerdown`,e,!0),()=>window.removeEventListener(`pointerdown`,e,!0)},s=[n,r,i,a],t[0]=n,t[1]=r,t[2]=i,t[3]=a,t[4]=o,t[5]=s):(o=t[4],s=t[5]),(0,Z.useEffect)(o,s)}var XT=20,ZT=`xopc.atMention.recent:`;function QT(e){return`${ZT}${e.trim()}`}function $T(e){let t=e?.trim();if(!t||typeof localStorage>`u`)return[];try{let e=localStorage.getItem(QT(t));if(!e)return[];let n=JSON.parse(e);return Array.isArray(n)?n.filter(e=>typeof e==`string`&&e.length>0).slice(0,XT):[]}catch{return[]}}function eE(e,t){let n=e?.trim(),r=t.trim();if(!(!n||!r||typeof localStorage>`u`))try{let e=[r,...$T(n).filter(e=>e!==r)].slice(0,XT);localStorage.setItem(QT(n),JSON.stringify(e))}catch{}}var tE=150,nE=[`file`,`note`,`session`,`browser_tab`,`skill`,`agent`];function rE(e){let t={items:[],loading:e,error:null};return{file:{...t},note:{...t},session:{...t},skill:{...t},agent:{...t},browser_tab:{...t}}}function iE(e,t){let n=Math.min(Math.max(t,0),e.length);if(n<1)return null;let r=e.slice(0,n).match(/@((?:\\.|[^\s])*)$/);if(!r||r.index===void 0)return null;let i=r.index;return i>0&&/[a-zA-Z0-9_]/.test(e[i-1])?null:{start:i,end:n,query:(r[1]??``).replace(/\\([\\\s])/gu,`$1`)}}function aE(e){return e.replace(/[\\\s]/gu,e=>`\\${e}`)}function oE(e){let t=e.trim();return t.length>0&&t.endsWith(`/`)&&!/^https?:\/\//i.test(t)}function sE(e){return e.replace(/\/+$/,``).trim()}function cE(e){let t=e.replace(/\/+$/,``);if(!t)return``;let n=t.lastIndexOf(`/`);return n<=0?``:t.slice(0,n)}function lE(e,t){return t===0?0:Math.min(e,t-1)}function uE(e){return{id:`file:${e.id}`,kind:`file`,name:e.name,description:e.path,relativePath:e.path,isDirectory:e.isDirectory,fileRef:{sourceId:e.id,expectedVersion:e.revision}}}function dE(e,t,n){let r=(0,Y.c)(55),i=n.capabilities??kf,[a,o]=(0,Z.useState)(0),[s,c]=(0,Z.useState)(gE),l=(0,Z.useRef)(0),u=h(hE),d;bb0:{if(n.isComposing||n.slashPaletteOpen){d=null;break bb0}if(n.precomputedAtRange!==void 0){d=n.precomputedAtRange;break bb0}let i;r[0]!==t||r[1]!==e?(i=iE(e,t),r[0]=t,r[1]=e,r[2]=i):i=r[2],d=i}let f=d,p=f!==null,[m]=va(p?f.query:``,tE),g=p?m:``,_;r[3]===n.conversationId?_=r[4]:(_=n.conversationId?.trim()??``,r[3]=n.conversationId,r[4]=_);let v=_,y;r[5]===n.selectedContextKeys?y=r[6]:(y=[...n.selectedContextKeys??new Set].sort().join(`\0`),r[5]=n.selectedContextKeys,r[6]=y);let b=y,x;r[7]!==i.agentSwitch||r[8]!==i.skills||r[9]!==v||r[10]!==g||r[11]!==u||r[12]!==n||r[13]!==p||r[14]!==b?(x=()=>{let e=l.current+=1;if(!p){c(rE(!1));return}if(!v){c(rE(!!n.prepareSession)),n.prepareSession&&n.prepareSession().catch(()=>{l.current===e&&c(rE(!1))});return}let t={conversationId:v,currentAgentId:n.currentAgentId,language:u,selectedContextKeys:new Set(b?b.split(`\0`):[]),recentPaths:new Set($T(v))};if(oE(g)){let t=rE(!1);t.file={items:[],loading:!0,error:null},c(t);let r=sE(g);aw(r,{conversationId:v,agentId:n.currentAgentId}).then(t=>{if(l.current!==e)return;let n={id:`browse-up:${r}`,kind:`file`,name:`..`,description:cE(r)||`/`,relativePath:``,isDirectory:!0,isBrowseUp:!0};c(e=>({...e,file:{items:[n,...t.map(uE)],loading:!1,error:null}}))}).catch(t=>{l.current===e&&c(e=>({...e,file:{items:[],loading:!1,error:t instanceof Error?t.message:String(t)}}))});return}c(rE(!0));for(let n of cw.filter(e=>(e.kind!==`skill`||i.skills)&&(e.kind!==`agent`||i.agentSwitch)))n.search(g,t).then(t=>{l.current===e&&c(e=>({...e,[n.kind]:{items:t,loading:!1,error:null}}))}).catch(t=>{l.current===e&&c(e=>({...e,[n.kind]:{items:[],loading:!1,error:t instanceof Error?t.message:String(t)}}))})},r[7]=i.agentSwitch,r[8]=i.skills,r[9]=v,r[10]=g,r[11]=u,r[12]=n,r[13]=p,r[14]=b,r[15]=x):x=r[15];let S;r[16]!==i.agentSwitch||r[17]!==i.skills||r[18]!==v||r[19]!==g||r[20]!==u||r[21]!==n.currentAgentId||r[22]!==n.prepareSession||r[23]!==p||r[24]!==b?(S=[p,v,g,u,n.currentAgentId,n.prepareSession,b,i.skills,i.agentSwitch],r[16]=i.agentSwitch,r[17]=i.skills,r[18]=v,r[19]=g,r[20]=u,r[21]=n.currentAgentId,r[22]=n.prepareSession,r[23]=p,r[24]=b,r[25]=S):S=r[25],(0,Z.useEffect)(x,S);let C;if(r[26]!==i.agentSwitch||r[27]!==i.skills||r[28]!==s){let e;r[30]!==i.agentSwitch||r[31]!==i.skills?(e=e=>(e!==`skill`||i.skills)&&(e!==`agent`||i.agentSwitch),r[30]=i.agentSwitch,r[31]=i.skills,r[32]=e):e=r[32];let t;r[33]===s?t=r[34]:(t=e=>({kind:e,...s[e]}),r[33]=s,r[34]=t),C=nE.filter(e).map(t),r[26]=i.agentSwitch,r[27]=i.skills,r[28]=s,r[29]=C}else C=r[29];let w=C,T=p?w.flatMap(mE):[],E;r[35]!==p||r[36]!==w?(E=p&&w.some(pE),r[35]=p,r[36]=w,r[37]=E):E=r[37];let D=E,O;r[38]===w?O=r[39]:(O=w.flatMap(fE),r[38]=w,r[39]=O);let k=O,A=!D&&T.length===0?k[0]??null:null,j=`${f?.start??``}:${f?.end??``}:${g}`,M;r[40]===Symbol.for(`react.memo_cache_sentinel`)?(M=()=>o(0),r[40]=M):M=r[40];let N;r[41]===j?N=r[42]:(N=[j],r[41]=j,r[42]=N),(0,Z.useEffect)(M,N);let P=lE(a,T.length),F;r[43]===T.length?F=r[44]:(F=e=>{T.length!==0&&o(t=>e===`down`?(t+1)%T.length:(t-1+T.length)%T.length)},r[43]=T.length,r[44]=F);let I=F,L=f?.query??``,R;return r[45]!==f||r[46]!==A||r[47]!==T||r[48]!==D||r[49]!==I||r[50]!==p||r[51]!==P||r[52]!==w||r[53]!==L?(R={open:p,atRange:f,sections:w,items:T,selectedIndex:P,query:L,loading:D,error:A,onNavigate:I,setSelectedIndex:o},r[45]=f,r[46]=A,r[47]=T,r[48]=D,r[49]=I,r[50]=p,r[51]=P,r[52]=w,r[53]=L,r[54]=R):R=r[54],R}function fE(e){return e.error?[e.error]:[]}function pE(e){return e.loading}function mE(e){return e.items}function hE(e){return e.language}function gE(){return rE(!1)}function _E(e){return e.kind===`note`?{refId:crypto.randomUUID(),kind:`note`,sourceId:e.noteRef.sourceId,expectedVersion:e.noteRef.expectedVersion,title:e.name}:e.kind===`file`&&!e.isBrowseUp&&e.fileRef?{refId:crypto.randomUUID(),kind:`file`,sourceId:e.fileRef.sourceId,expectedVersion:e.fileRef.expectedVersion,title:e.name,fileKind:e.isDirectory?`directory`:`file`}:e.kind===`session`?{refId:crypto.randomUUID(),kind:`session`,sourceId:e.sessionRef.sourceId,expectedVersion:e.sessionRef.expectedVersion,title:e.name}:e.kind===`browser_tab`?{refId:crypto.randomUUID(),kind:`browser_tab`,sourceId:e.tabRef.sourceId,expectedVersion:e.tabRef.expectedVersion,title:e.name}:null}function vE(e){let{conversationId:t,editorValue:n,editorCursor:r,isComposing:i,runBusy:a,thinkingLevel:o,editorRef:s,valueRef:c,resetEditor:l,clearAttachments:u,onSend:d,onUserTextCommitted:f,onChatAgentChange:p,currentAgentId:m,prepareSession:h,contextRefs:g,onAddContextRef:_,onUnavailableSkill:v,onReviewLauncher:y,onAddPendingFollowUp:b,onAbort:x,pendingFollowUpsCount:S,maxPendingFollowUps:C,clearContextRefs:w,commandPalettePanelRef:T}=e,E=e.capabilities??kf,D=(0,Z.useMemo)(()=>iE(n,r),[n,r]),O=xT(n,r,{suppress:D!=null,capabilities:E,isComposing:i,currentAgentId:m,conversationId:t}),k=dE(n,r,{conversationId:t,currentAgentId:m,slashPaletteOpen:O.open,capabilities:E,isComposing:i,precomputedAtRange:D,selectedContextKeys:new Set(g.map(e=>`${e.kind}:${e.sourceId}`)),prepareSession:h}),A=O.open||k.open||D!=null,j=(0,Z.useCallback)(()=>({slashRange:O.slashRange,runBusy:a,pendingFollowUpsCount:S,maxPendingFollowUps:C,thinkingLevel:o,editor:{valueRef:c,resetEditor:l},attachments:{clearAttachments:u},contextRefs:{current:g,clear:w},callbacks:{onSend:d,onUserTextCommitted:f,onChatAgentChange:p,onAddPendingFollowUp:b,onAbort:x,onUnavailableSkill:v,onReviewLauncher:y}}),[O.slashRange,a,S,C,o,c,l,u,g,w,d,f,p,b,x,v,y]),M=(0,Z.useCallback)(e=>{!E.commands&&e.kind===`command`||!E.skills&&e.kind===`skill`||!E.agentSwitch&&e.kind===`agent`||sT(e,j())},[j,E]),N=(0,Z.useCallback)(e=>{let n=k.atRange;if(!n)return;let r=_E(e);if(r){let i=_(r);if(!i?.refId)return;let a=`${or(i.refId)} `,o=rT(c.current,n.start,n.end,a);l({nextText:o,caretOffset:n.start+a.length,focus:!0}),t&&e.kind===`file`&&eE(t,e.relativePath);return}if(e.kind===`skill`){if(!E.skills)return;let t=`/skill:${e.canonicalName} `,r=rT(c.current,n.start,n.end,t);l({nextText:r,caretOffset:n.start+t.length,focus:!0});return}if(e.kind===`agent`){if(!E.agentSwitch)return;let t=rT(c.current,n.start,n.end,``);l({nextText:t,caretOffset:n.start,focus:!0}),p?.(e.agentId);return}if(e.kind!==`file`||!e.isDirectory)return;let i=`@${aE(e.isBrowseUp?(()=>{let e=cE(sE(n.query));return e?`${e}/`:``})():`${e.relativePath.replace(/\/+$/,``)}/`)}`,a=rT(c.current,n.start,n.end,i),o=n.start+i.length;l({nextText:a,caretOffset:o,focus:!0})},[k.atRange,E,_,t,p,c,l]),P=(0,Z.useRef)(null);P.current=k.open?k.atRange:O.open?O.slashRange:null;let F=c,I=(0,Z.useCallback)(()=>{let e=P.current;if(!e)return;let t=F.current,n=t.slice(0,e.start)+t.slice(e.end);l({nextText:n,caretOffset:e.start})},[l,F]),L=(0,Z.useMemo)(()=>[s,T],[s,T]);YT({active:O.open||k.open,anchors:L,ignoreSelector:`[data-composer-picker-panel], [data-slash-palette-tooltip]`,onDismiss:I});let R=(0,Z.useRef)(k);R.current=k;let z=(0,Z.useRef)(O);z.current=O;let B=(0,Z.useRef)(i);B.current=i;let ee=(0,Z.useRef)(M);ee.current=M;let V=(0,Z.useRef)(N);V.current=N;let H=(0,Z.useRef)({runBusy:a,pendingFollowUpsCount:S,maxPendingFollowUps:C});H.current={runBusy:a,pendingFollowUpsCount:S,maxPendingFollowUps:C};let te=(0,Z.useMemo)(()=>({name:`at-mention`,isActive:()=>{let e=R.current;return e.open&&e.atRange!=null&&!B.current},handleKey:e=>{let t=R.current;if(!t.atRange)return!1;if(e.key===`Escape`){e.preventDefault();let n=t.atRange,r=F.current,i=rT(r,n.start,n.end,``);return l({nextText:i,caretOffset:n.start,focus:!0}),!0}if(t.items.length===0)return!1;if(e.key===`ArrowDown`)return e.preventDefault(),t.onNavigate(`down`),!0;if(e.key===`ArrowUp`)return e.preventDefault(),t.onNavigate(`up`),!0;if(e.key===`Enter`||e.key===`Tab`){e.preventDefault();let n=t.items[t.selectedIndex];return n&&V.current(n),!0}return!1}}),[l,F]),U=(0,Z.useMemo)(()=>({name:`slash-palette`,isActive:()=>z.current.open&&!B.current,handleKey:e=>{let t=z.current;if(t.flatItems.length>0){if(e.key===`ArrowDown`)return e.preventDefault(),t.onNavigate(`down`),!0;if(e.key===`ArrowUp`)return e.preventDefault(),t.onNavigate(`up`),!0;if((e.key===`Enter`||e.key===`Tab`)&&!e.shiftKey){e.preventDefault();let n=t.flatItems[t.selectedIndex];return!n||pT(n,H.current)||ee.current(n),!0}}if(e.key===`Escape`){e.preventDefault();let n=t.slashRange;if(n){let e=F.current,t=rT(e,n.start,n.end,``);l({nextText:t,caretOffset:n.start,focus:!0})}return!0}return!1}}),[l,F]);return{palette:O,atPicker:k,shouldSyncSelection:A,adapters:(0,Z.useMemo)(()=>[te,U],[te,U]),applyPalette:M,applyAtMention:N}}function yE(e){return/^[A-Za-z0-9._/@:-]+$/.test(e)?e:JSON.stringify(e)}function bE(e,t){let n=t?.trim();return n?`${e} --instructions ${yE(n)}`:e}function xE(e){if(e.preset===`base`){if(!e.baseBranch?.trim())throw Error(`Missing base branch.`);return bE(`/review --base ${yE(e.baseBranch.trim())}`,e.instructions)}if(e.preset===`commit`){if(!e.commitSha?.trim())throw Error(`Missing commit SHA.`);return bE(`/review --commit ${yE(e.commitSha.trim())}`,e.instructions)}return e.preset,bE(`/review --uncommitted`,e.instructions)}async function SE(e){let t=await f(p(`/api/review/context?${new URLSearchParams({conversationId:e}).toString()}`)),n=await t.json().catch(()=>({}));if(!t.ok||!n.ok||!n.payload)throw Error(v(t.status,t.statusText,n.error?.message));return n.payload}function CE(e,t){let n=e?.status;if(!n)return``;if(n.isClean)return t.statusClean;let r=[];return n.changedFiles>0&&r.push(t.statusChanged.replace(`{{count}}`,String(n.changedFiles))),n.untrackedFiles>0&&r.push(t.statusUntracked.replace(`{{count}}`,String(n.untrackedFiles))),r.join(`, `)}function wE(e,t){let n=t.trim().toLowerCase(),r=[...(e?.branches??[]).filter(e=>!e.current)].sort((t,n)=>t.name===e?.defaultBaseBranch&&n.name!==e.defaultBaseBranch?-1:n.name===e?.defaultBaseBranch&&t.name!==e.defaultBaseBranch?1:t.name.localeCompare(n.name));return n?r.filter(e=>e.name.toLowerCase().includes(n)):r}function TE(e,t){let n=t.trim().toLowerCase(),r=e?.commits??[];return n?r.filter(e=>`${e.sha} ${e.shortSha} ${e.subject}`.toLowerCase().includes(n)):r}function EE(e){let t=(0,Y.c)(15),{icon:n,title:r,description:i,disabled:a,onClick:o}=e,s;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(s=J(`flex min-h-16 w-full items-center gap-3 rounded-lg border border-edge bg-surface-panel px-3 py-2.5 text-left`,`hover:border-accent/45 hover:bg-surface-hover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,`disabled:cursor-not-allowed disabled:opacity-50`,ta.transition),t[0]=s):s=t[0];let c;t[1]===n?c=t[2]:(c=(0,X.jsx)(`span`,{className:`inline-flex size-8 shrink-0 items-center justify-center rounded-lg bg-surface-hover text-fg-muted`,children:n}),t[1]=n,t[2]=c);let l;t[3]===r?l=t[4]:(l=(0,X.jsx)(`span`,{className:`block truncate text-sm font-medium text-fg`,children:r}),t[3]=r,t[4]=l);let u;t[5]===i?u=t[6]:(u=(0,X.jsx)(`span`,{className:`mt-0.5 block truncate text-xs text-fg-muted`,children:i}),t[5]=i,t[6]=u);let d;t[7]!==l||t[8]!==u?(d=(0,X.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[l,u]}),t[7]=l,t[8]=u,t[9]=d):d=t[9];let f;return t[10]!==a||t[11]!==o||t[12]!==c||t[13]!==d?(f=(0,X.jsxs)(`button`,{type:`button`,disabled:a,className:s,onClick:o,children:[c,d]}),t[10]=a,t[11]=o,t[12]=c,t[13]=d,t[14]=f):f=t[14],f}function DE(e){let t=(0,Y.c)(89),{open:n,conversationId:r,disabled:i,chat:a,onClose:o,onSendCommand:s}=e,c=a.reviewLauncher,[l,u]=(0,Z.useState)(null),[d,f]=(0,Z.useState)(!1),[p,m]=(0,Z.useState)(null),[h,g]=(0,Z.useState)(`presets`),[_,v]=(0,Z.useState)(``),[y,x]=(0,Z.useState)(``),C;t[0]!==r||t[1]!==c.noSession?(C=()=>{if(!r){u(null),m(c.noSession);return}f(!0),m(null),SE(r).then(e=>u(e)).catch(e=>{u(null),m(e instanceof Error?e.message:String(e))}).finally(()=>f(!1))},t[0]=r,t[1]=c.noSession,t[2]=C):C=t[2];let O=C,k,A;t[3]!==O||t[4]!==n?(k=()=>{n&&(g(`presets`),v(``),x(``),O())},A=[O,n],t[3]=O,t[4]=n,t[5]=k,t[6]=A):(k=t[5],A=t[6]),(0,Z.useEffect)(k,A);let M;t[7]!==l||t[8]!==_?(M=wE(l,_),t[7]=l,t[8]=_,t[9]=M):M=t[9];let N=M,P;t[10]!==l||t[11]!==_?(P=TE(l,_),t[10]=l,t[11]=_,t[12]=P):P=t[12];let F=P,I;t[13]!==l||t[14]!==c?(I=CE(l,c),t[13]=l,t[14]=c,t[15]=I):I=t[15];let L=I,R;t[16]!==y||t[17]!==o||t[18]!==s?(R=(e,t)=>{let n=xE({preset:e,baseBranch:t?.branch,commitSha:t?.commit,instructions:y});s(n),o()},t[16]=y,t[17]=o,t[18]=s,t[19]=R):R=t[19];let z=R,B=h===`base`?c.baseTitle:h===`commit`?c.commitTitle:h===`custom`?c.customTitle:c.title,ee;t[20]===o?ee=t[21]:(ee=e=>!e&&o(),t[20]=o,t[21]=ee);let V;t[22]===Symbol.for(`react.memo_cache_sentinel`)?(V=(0,X.jsx)(b,{className:`xopc-dialog-overlay fixed inset-0 z-[120] bg-scrim backdrop-blur-[1px]`}),t[22]=V):V=t[22];let H;t[23]!==c.back||t[24]!==h?(H=h===`presets`?null:(0,X.jsx)(`button`,{type:`button`,className:`inline-flex size-8 items-center justify-center rounded-lg text-fg-muted hover:bg-surface-hover hover:text-fg focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,"aria-label":c.back,onClick:()=>{g(`presets`),v(``)},children:(0,X.jsx)(j,{className:`size-4`})}),t[23]=c.back,t[24]=h,t[25]=H):H=t[25];let te;t[26]===B?te=t[27]:(te=(0,X.jsx)(E,{className:`truncate text-sm font-semibold text-fg`,children:B}),t[26]=B,t[27]=te);let U=l?.cwd??c.description,W;t[28]===U?W=t[29]:(W=(0,X.jsx)(S,{className:`truncate text-xs text-fg-muted`,children:U}),t[28]=U,t[29]=W);let ne;t[30]!==te||t[31]!==W?(ne=(0,X.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[te,W]}),t[30]=te,t[31]=W,t[32]=ne):ne=t[32];let re;t[33]===Symbol.for(`react.memo_cache_sentinel`)?(re=(0,X.jsx)(Kt,{className:`size-4`}),t[33]=re):re=t[33];let ie;t[34]!==c.close||t[35]!==o?(ie=(0,X.jsx)(`button`,{type:`button`,className:`inline-flex size-8 items-center justify-center rounded-lg text-fg-muted hover:bg-surface-hover hover:text-fg focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,"aria-label":c.close,onClick:o,children:re}),t[34]=c.close,t[35]=o,t[36]=ie):ie=t[36];let ae;t[37]!==H||t[38]!==ne||t[39]!==ie?(ae=(0,X.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 border-b border-edge px-4 py-3`,children:[H,ne,ie]}),t[37]=H,t[38]=ne,t[39]=ie,t[40]=ae):ae=t[40];let oe;t[41]!==N||t[42]!==F||t[43]!==l||t[44]!==i||t[45]!==p||t[46]!==y||t[47]!==O||t[48]!==d||t[49]!==c.customDescription||t[50]!==c.customPlaceholder||t[51]!==c.defaultBadge||t[52]!==c.errorTitle||t[53]!==c.loading||t[54]!==c.localBadge||t[55]!==c.noBranches||t[56]!==c.noCommits||t[57]!==c.presetBase||t[58]!==c.presetBaseDescription||t[59]!==c.presetBaseDescriptionNoDefault||t[60]!==c.presetCommit||t[61]!==c.presetCommitDescription||t[62]!==c.presetCustom||t[63]!==c.presetCustomDescription||t[64]!==c.presetUncommitted||t[65]!==c.remoteBadge||t[66]!==c.retry||t[67]!==c.searchBranches||t[68]!==c.searchCommits||t[69]!==_||t[70]!==z||t[71]!==L||t[72]!==h?(oe=(0,X.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto p-4`,children:d?(0,X.jsxs)(`div`,{className:`flex h-full min-h-56 items-center justify-center text-sm text-fg-muted`,children:[(0,X.jsx)(jt,{className:`mr-2 size-4 animate-spin`}),c.loading]}):p?(0,X.jsxs)(`div`,{className:`rounded-lg border border-danger/30 bg-danger/5 p-4`,children:[(0,X.jsx)(`div`,{className:`text-sm font-medium text-fg`,children:c.errorTitle}),(0,X.jsx)(`div`,{className:`mt-1 text-sm text-fg-muted`,children:p}),(0,X.jsxs)(ai,{type:`button`,className:`mt-4 h-9 rounded-lg`,variant:`secondary`,onClick:O,children:[(0,X.jsx)(jt,{className:`size-4`}),c.retry]})]}):h===`presets`?(0,X.jsxs)(`div`,{className:`grid gap-2`,children:[(0,X.jsx)(EE,{icon:(0,X.jsx)(Ne,{className:`size-4`}),title:c.presetBase,description:l?.defaultBaseBranch?c.presetBaseDescription.replace(`{{branch}}`,l.defaultBaseBranch):c.presetBaseDescriptionNoDefault,disabled:i,onClick:()=>g(`base`)}),(0,X.jsx)(EE,{icon:(0,X.jsx)(qe,{className:`size-4`}),title:c.presetUncommitted,description:L,disabled:i,onClick:()=>z(`uncommitted`)}),(0,X.jsx)(EE,{icon:(0,X.jsx)(Jo,{className:`size-4`}),title:c.presetCommit,description:c.presetCommitDescription.replace(`{{count}}`,String(l?.commits.length??0)),disabled:i,onClick:()=>g(`commit`)}),(0,X.jsx)(EE,{icon:(0,X.jsx)(qe,{className:`size-4`}),title:c.presetCustom,description:c.presetCustomDescription,disabled:i,onClick:()=>g(`custom`)})]}):h===`base`?(0,X.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,X.jsx)(OE,{value:_,placeholder:c.searchBranches,onChange:v}),(0,X.jsx)(`div`,{className:`grid gap-1`,children:N.length===0?(0,X.jsx)(`div`,{className:`rounded-lg border border-edge-subtle px-3 py-6 text-center text-sm text-fg-muted`,children:c.noBranches}):N.map(e=>(0,X.jsxs)(`button`,{type:`button`,className:`flex items-center justify-between gap-3 rounded-lg px-3 py-2 text-left hover:bg-surface-hover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,disabled:i,onClick:()=>z(`base`,{branch:e.name}),children:[(0,X.jsx)(`span`,{className:`min-w-0 truncate text-sm text-fg`,children:e.name}),(0,X.jsx)(`span`,{className:`shrink-0 text-xs text-fg-muted`,children:e.name===l?.defaultBaseBranch?c.defaultBadge:e.remote?c.remoteBadge:c.localBadge})]},e.name))})]}):h===`commit`?(0,X.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,X.jsx)(OE,{value:_,placeholder:c.searchCommits,onChange:v}),(0,X.jsx)(`div`,{className:`grid gap-1`,children:F.length===0?(0,X.jsx)(`div`,{className:`rounded-lg border border-edge-subtle px-3 py-6 text-center text-sm text-fg-muted`,children:c.noCommits}):F.map(e=>(0,X.jsxs)(`button`,{type:`button`,className:`flex items-center gap-3 rounded-lg px-3 py-2 text-left hover:bg-surface-hover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,disabled:i,onClick:()=>z(`commit`,{commit:e.sha}),children:[(0,X.jsx)(`span`,{className:`font-mono text-xs text-fg-muted`,children:e.shortSha}),(0,X.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-sm text-fg`,children:e.subject}),e.date?(0,X.jsx)(`span`,{className:`shrink-0 text-xs text-fg-muted`,children:e.date.slice(0,10)}):null]},e.sha))})]}):(0,X.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,X.jsx)(`textarea`,{className:`h-40 resize-none rounded-lg border border-edge bg-surface-base px-3 py-2 text-sm text-fg outline-none placeholder:text-fg-disabled focus:border-accent focus:ring-2 focus:ring-accent/25`,value:y,placeholder:c.customPlaceholder,onChange:e=>x(e.target.value)}),(0,X.jsx)(`div`,{className:`text-xs text-fg-muted`,children:c.customDescription})]})}),t[41]=N,t[42]=F,t[43]=l,t[44]=i,t[45]=p,t[46]=y,t[47]=O,t[48]=d,t[49]=c.customDescription,t[50]=c.customPlaceholder,t[51]=c.defaultBadge,t[52]=c.errorTitle,t[53]=c.loading,t[54]=c.localBadge,t[55]=c.noBranches,t[56]=c.noCommits,t[57]=c.presetBase,t[58]=c.presetBaseDescription,t[59]=c.presetBaseDescriptionNoDefault,t[60]=c.presetCommit,t[61]=c.presetCommitDescription,t[62]=c.presetCustom,t[63]=c.presetCustomDescription,t[64]=c.presetUncommitted,t[65]=c.remoteBadge,t[66]=c.retry,t[67]=c.searchBranches,t[68]=c.searchCommits,t[69]=_,t[70]=z,t[71]=L,t[72]=h,t[73]=oe):oe=t[73];let se;t[74]!==i||t[75]!==c.cancel||t[76]!==c.runReview||t[77]!==o||t[78]!==z||t[79]!==h?(se=h===`custom`?(0,X.jsxs)(`div`,{className:`flex shrink-0 justify-end gap-2 border-t border-edge px-4 py-3`,children:[(0,X.jsx)(ai,{type:`button`,variant:`secondary`,className:`h-9 rounded-lg`,onClick:o,children:c.cancel}),(0,X.jsx)(ai,{type:`button`,variant:`primary`,className:`h-9 rounded-lg`,disabled:i,onClick:()=>z(`custom`),children:c.runReview})]}):null,t[74]=i,t[75]=c.cancel,t[76]=c.runReview,t[77]=o,t[78]=z,t[79]=h,t[80]=se):se=t[80];let G;t[81]!==ae||t[82]!==oe||t[83]!==se?(G=(0,X.jsxs)(w,{children:[V,(0,X.jsxs)(T,{className:`xopc-dialog-content fixed left-1/2 top-1/2 z-[121] flex h-[min(86vh,34rem)] w-[min(100vw-2rem,40rem)] -translate-x-1/2 -translate-y-1/2 flex-col overflow-hidden rounded-xl border border-edge bg-surface-overlay shadow-popover outline-none`,children:[ae,oe,se]})]}),t[81]=ae,t[82]=oe,t[83]=se,t[84]=G):G=t[84];let K;return t[85]!==n||t[86]!==G||t[87]!==ee?(K=(0,X.jsx)(D,{open:n,onOpenChange:ee,children:G}),t[85]=n,t[86]=G,t[87]=ee,t[88]=K):K=t[88],K}function OE(e){let t=(0,Y.c)(7),{value:n,placeholder:r,onChange:i}=e,a;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,X.jsx)(Pt,{className:`size-4 shrink-0 text-fg-muted`}),t[0]=a):a=t[0];let o;t[1]===i?o=t[2]:(o=e=>i(e.target.value),t[1]=i,t[2]=o);let s;return t[3]!==r||t[4]!==o||t[5]!==n?(s=(0,X.jsxs)(`label`,{className:`flex h-9 items-center gap-2 rounded-lg border border-edge bg-surface-base px-3 text-sm text-fg focus-within:border-accent focus-within:ring-2 focus-within:ring-accent/25`,children:[a,(0,X.jsx)(`input`,{className:`min-w-0 flex-1 bg-transparent outline-none placeholder:text-fg-disabled`,value:n,placeholder:r,onChange:o})]}),t[3]=r,t[4]=o,t[5]=n,t[6]=s):s=t[6],s}function kE(e){let t=e.mimeType||`application/octet-stream`,n=e.type===`voice`||t.startsWith(`audio/`)?`voice`:e.type===`pasted_text`?`pasted_text`:t.startsWith(`image/`)?`image`:`document`;return{id:e.id,type:n,name:e.name||`file`,mimeType:t,size:e.size??0,content:e.data??``,data:e.data,uri:e.uri,durationSeconds:e.durationSeconds}}var AE=(0,Z.memo)(function({personal:e=!1,placeholder:t,nextTurnSuggestionsEnabled:n=!1,disabled:r,sendDisabled:i=!1,sending:a,streaming:o,conversationId:s,composerContext:c,pageContextPreview:u,contextRefs:d,setContextRefs:f,onDraftAttachmentsChange:p,thinkingLevel:m,modelSupportsThinking:g,onThinkingChange:_,onSend:v,onPersonalSendDispatched:b,onAbort:x,onAddPendingFollowUp:S,onSteeringInterrupt:C,pendingFollowUps:w,editingFollowUpId:T,onBeginEditFollowUp:E,onCancelEditFollowUp:D,onCommitEditFollowUp:O,onPendingFollowUpRemove:k,onPendingFollowUpMove:A,onPendingFollowUpReorder:j,onPendingFollowUpSteer:M,steeringFollowUpId:N,welcomeDraftSeed:P,welcomeSuggestion:F,onAcceptWelcomeSuggestion:I,sessionModel:L,showModelSelector:R,onModelChange:z,modelDisabled:B,onChatAgentChange:ee,currentAgentId:V,voiceAgentName:H,voiceTaskId:te,voiceMode:U,prepareVoiceSession:W,prepareContextSession:ne,editingUserTurnId:re,onCancelUserMessageEdit:ie}){let ae=ca(),oe=(0,Z.useRef)(!1);r||=ae.conversationId===s&&ae.active;let se=h(e=>e.language),G=y(se),[K,ce]=l();(0,Z.useEffect)(()=>{oo()},[]);let le=(...e)=>{if(i)return!1;let t=v(...e);return t instanceof Promise?t.then(t=>(t!==!1&&Qe.submitted(e[0]),t)):(t!==!1&&Qe.submitted(e[0]),t)},q=(0,Z.useRef)(!1),ue=(0,Z.useRef)(null),de=(0,Z.useRef)(null),fe=(0,Z.useRef)(null),pe=(0,Z.useRef)(!1),[me,he]=(0,Z.useState)(!1),[ge,_e]=(0,Z.useState)(null),[ve,ye]=(0,Z.useState)(null),[be,xe]=(0,Z.useState)(!1),Se=(0,Z.useRef)(le),Ce=(0,Z.useRef)(m);Se.current=le,Ce.current=m,(0,Z.useEffect)(()=>{if(!s||ve===s){_e(null);return}let e=!1;return br(s).then(e=>e?null:uo(s)).then(t=>{e||_e(t&&t.required&&!t.trusted&&t.decision===null?t:null)}).catch(()=>{e||_e(null)}),()=>{e=!0}},[s,ve]);let we=(0,Z.useCallback)(()=>{!s||be||(xe(!0),no(s,!0).then(()=>{_e(null)}).catch(e=>{Me(`error`,G.chat.commandPalette.workspaceTrustFailed,{error:e instanceof Error?e.message:String(e)})}).finally(()=>xe(!1)))},[G.chat.commandPalette,s,be]),Te=Gr({conversationId:s??`new`,chat:G.chat,onAttachmentsChange:e=>p?.(e.map((e,t)=>({id:e.uri||e.id||`draft:${t}:${e.name}`,title:e.name})))}),Ee=(0,Z.useRef)(d);Ee.current=d;let De=(0,Z.useCallback)(e=>{let t=d.find(t=>t.refId===e);return t?{title:t.title,kind:t.kind,fileKind:t.fileKind}:void 0},[d]),Oe=(0,Z.useCallback)(e=>{let t=e?.contextRefs??[];if(Ee.current=t,f(t),e?.attachments){Te.setAttachments(e.attachments.map(kE));return}Te.clearAttachments()},[Te.clearAttachments,Te.setAttachments,f]),Ae=(0,Z.useCallback)(e=>{let t=Ee.current,n=t.find(t=>t.kind===e.kind&&t.sourceId===e.sourceId);if(n){if(n.refId)return n;let r={...n,refId:e.refId},i=t.map(e=>e===n?r:e);return Ee.current=i,f(i),r}if(t.length>=5)return Me(`warning`,G.chat.commandPalette.contextLimitReached,{max:5}),null;let r=[...t,e];return Ee.current=r,f(r),e},[G.chat.commandPalette.contextLimitReached,f]);(0,Z.useEffect)(()=>{let e=e=>{let t=e.detail;t?.conversationId!==s||t.reference.kind!==`result`||Ae(t.reference)};return window.addEventListener(`chat-result-reference`,e),()=>window.removeEventListener(`chat-result-reference`,e)},[s,Ae]);let je=(0,Z.useCallback)(e=>{let t=e.availability.status===`agent-denied`?G.chat.commandPalette.skillAgentDeniedReason:G.chat.commandPalette.skillDisabledReason,n=jp(G.chat.commandPalette.skillUnavailableMessage,{name:e.name,agent:V||`main`,reason:t});if(e.availability.status===`agent-denied`&&window.confirm(`${n}\n\n${G.chat.commandPalette.skillAddToAllowlistConfirm}`)){fo(V,e.canonicalName,s).catch(e=>{window.alert(e instanceof Error?e.message:String(e))});return}window.alert(n)},[V,G.chat.commandPalette,s]),Ne=Tp({capabilities:e?Af:kf,disabled:r,agentId:V,conversationId:s,autoFocusKey:s,welcomeDraftSeed:P,onExternalTextReplace:Oe,shouldSyncSelectionRef:q,resolveContextRef:De}),Pe=K.get(`attachmentHandoff`);qT(s,Ne,Te,d,f),(0,Z.useEffect)(()=>{if(!Pe)return;let e=ke(Pe);ce(e=>{let t=new URLSearchParams(e);return t.delete(`attachmentHandoff`),t},{replace:!0}),e&&Te.processFiles([e]).then(()=>Ne.editorRef.current?.focus({preventScroll:!0}))},[Pe,Te.processFiles,Ne.editorRef,s,ce]);let{onUserTextCommitted:Fe,onWireInputClearWalk:Ie,tryInputHistoryArrow:Le}=UT({conversationId:s,editorRef:Ne.editorRef,valueRef:Ne.valueRef,resetEditor:Ne.resetEditor,onWireInput:Ne.onWireInput}),Re=(0,Z.useCallback)((e,t)=>{Ie(e,t);let n=Yn(e),r=new Set(n?hr(n):[]),i=Ee.current,a=i.filter(e=>!e.refId||r.has(e.refId));a.length!==i.length&&(Ee.current=a,f(a))},[Ie,f]),ze=lf(s??``),Be=a||o||ze;pe.current=Be;let Ve=(0,Z.useCallback)(()=>{pe.current||he(!0)},[]),He=(0,Z.useCallback)(e=>{eT(Se.current(e,void 0,Ce.current,d),t=>{Fe?.(e,t),f([])})},[d,Fe,f]),Ue=vE({capabilities:e?Af:kf,conversationId:s,editorValue:Ne.value,editorCursor:Ne.cursor,isComposing:Ne.isComposing,runBusy:Be,thinkingLevel:m,editorRef:Ne.editorRef,valueRef:Ne.valueRef,resetEditor:Ne.resetEditor,clearAttachments:Te.clearAttachments,onSend:le,onUserTextCommitted:Fe,onChatAgentChange:ee,currentAgentId:V,prepareSession:ne,contextRefs:d,onAddContextRef:Ae,onUnavailableSkill:je,onReviewLauncher:Ve,onAddPendingFollowUp:S,onAbort:x,pendingFollowUpsCount:w.length,maxPendingFollowUps:10,clearContextRefs:()=>f([]),commandPalettePanelRef:ue});q.current=Ue.shouldSyncSelection;let We=vi({disabled:r||ae.active,chat:G.chat,onTranscript:e=>{let t=Ne.valueRef.current,n=Si(t,e);Ne.resetEditor({nextText:n,caretOffset:n.length,focus:!0})}}),{phase:Ge,voiceActive:Ke,startVoiceInput:qe,cancelVoiceInput:Je,confirmVoiceInput:Ye}=We;(0,Z.useEffect)(()=>{let e=e=>{if(!kw(e,{disabled:r,editorHidden:Ke&&Ge!==`error`}))return;let t=gp(e.clipboardData);t&&(e.preventDefault(),Ne.focusForExternalPaste(),_p(t,{processFiles:Te.processFiles,processPastedText:Te.processPastedText,insertText:e=>document.execCommand(`insertText`,!1,e),onUnsupportedFiles:()=>Me(`warning`,G.chat.clipboardFileTypeUnsupported)}))};return window.addEventListener(`paste`,e),()=>window.removeEventListener(`paste`,e)},[Te.processFiles,Te.processPastedText,r,Ne.focusForExternalPaste,G.chat.clipboardFileTypeUnsupported,Ke,Ge]),(0,Z.useEffect)(()=>{let e=e=>{let t=e?.detail?.target;if(!(t&&t!==`chat`)&&(e?.preventDefault(),!r)){if(Ge===`recording`){Ye();return}(Ge===`idle`||Ge===`error`)&&(Ne.editorRef.current?.focus({preventScroll:!0}),qe())}},t=e=>{let t=e.detail?.target;t&&t!==`chat`||!Ke||(e.preventDefault(),Je(),Ne.editorRef.current?.focus({preventScroll:!0}))};window.addEventListener(vo,e),window.addEventListener(go,t);let n=window.setTimeout(()=>{if(yo()){if(r){_o();return}e()}},0);return()=>{window.clearTimeout(n),window.removeEventListener(vo,e),window.removeEventListener(go,t)}},[Je,Ye,r,Ne.editorRef,qe,Ke,Ge]);let Xe=(0,Z.useCallback)(()=>{fe.current=null},[]),Ze=n&&!r&&!i&&!Be&&!T&&!re&&!We.voiceActive&&!Ne.isComposing&&Ne.value.length===0&&Te.attachments.length===0&&d.length===0&&w.length===0,Qe=JT({conversationId:s,agentId:V,modelKey:L,locale:se,enabled:n,draftText:Ne.value,canShow:Ze}),$e=()=>{if(!Ze||Ne.valueRef.current.length>0||Ee.current.length>0)return!1;let e=Qe.accept();return e?(Ne.resetEditor({nextText:e,focus:!0}),!0):!1};(0,Z.useEffect)(()=>{Ze&&Qe.suggestion&&!Ue.palette.open&&Qe.shown()},[Ze,Qe.suggestion,Qe.shown,Ue.palette.open]);let et=GT({personal:e,chat:G.chat,runBusy:Be,voiceActive:We.voiceActive,cancelVoiceInput:We.cancelVoiceInput,editingFollowUpId:T,getTextValue:()=>Ne.valueRef.current,getAttachmentCount:()=>Te.attachmentsRef.current.length,wireAttachmentsPayload:Te.wireAttachmentsPayload,getContextRefs:()=>d,getThinkingLevel:()=>Ce.current,onSend:le,onDispatched:e&&b?(e,t)=>{let n=Ne.editorRef.current?.getBoundingClientRect();n&&b(e,n,t)}:void 0,onAddPendingFollowUp:S,onSteeringInterrupt:C,onCommitEditFollowUp:O,onPendingFollowUpRemove:k,pendingFollowUpsCount:w.length,resetEditor:()=>{Ne.resetEditor()},clearAttachments:Te.clearAttachments,clearContextRefs:()=>f([]),clearEditFollowUpRef:Xe,onUserTextCommitted:Fe}),tt=(0,Z.useCallback)((e=!1)=>et.flushSteeringDraft(e),[et.flushSteeringDraft]),nt=(0,Z.useCallback)((e,t)=>{!s||s===`new`||$C.getState().requestCreate(s,[{id:e.id,type:`text`,text:t,label:G.chat.followUpQueueHeading}])},[s,G.chat.followUpQueueHeading]);(0,Z.useLayoutEffect)(()=>{if(!T){fe.current&&=(Te.clearAttachments(),f([]),Ne.resetEditor(),null);return}if(T===fe.current)return;let e=w.find(e=>e.id===T);if(!e){D();return}fe.current=T,e.thinkingLevel!=null&&g&&_(e.thinkingLevel),Te.setAttachments(Kw(e.attachments??[])),f(e.contextRefs??[]),Ne.resetEditor({nextText:e.text,focus:!0})},[Te.clearAttachments,Te.setAttachments,Ne.resetEditor,T,D,_,w,g,f]);let rt=(0,Z.useCallback)(e=>{E(e)},[E]),it=(0,Z.useRef)({});it.current={adapters:Ue.adapters,send:et.send,runBusy:Be,pendingFollowUpsCount:w.length,flushSteeringDraft:tt,interruptDraft:et.interruptDraft,editingFollowUpId:T,onCancelEditFollowUp:D,attachmentsLen:Te.attachments.length,contextRefsLen:d.length,isComposing:Ne.isComposing,valueRef:Ne.valueRef,adjustHeight:Ne.adjustHeight,editorRef:Ne.editorRef,tryInputHistoryArrow:Le,acceptEmptySuggestion:Qe.suggestion&&Ze?$e:!Be&&!r&&!i&&!re&&!We.voiceActive&&F&&I?()=>(I(F),!0):void 0,dismissEmptySuggestion:Qe.suggestion?Qe.dismiss:void 0};let at=Be,ot=!!Ne.value.trim()||Te.attachments.length>0||d.length>0,st=ot&&!!C,ct=No(`(hover: hover) and (pointer: fine)`),lt=!at&&!T&&F?`${F.prompt}${ct?` · ${G.chat.welcomeSpotlight.acceptSuggestionHint}`:``}`:null;return(0,X.jsxs)(`div`,{className:`relative flex min-h-0 w-full flex-col`,children:[s?(0,X.jsx)(Tw,{conversationId:s},s):null,c?(0,X.jsx)(Rw,{...c,conversationId:s,disabled:(c.disabled??r)||a||o}):null,(0,X.jsxs)(Op,{className:e?`rounded-[1.65rem]`:void 0,dragging:Te.isDragging,onDragOver:e=>{(e.dataTransfer?.types.includes(`Files`)||yf(e.dataTransfer))&&(e.preventDefault(),e.dataTransfer.dropEffect=`copy`,Te.setIsDragging(!0))},onDragLeave:e=>{e.relatedTarget===null&&Te.setIsDragging(!1)},onDrop:async e=>{e.preventDefault(),Te.setIsDragging(!1);let t=e.dataTransfer?.files;if(t?.length){await Te.processFiles(Array.from(t));return}let n=bf(e.dataTransfer);if(n)try{let e=await Ea(n.path,{conversationId:n.conversationId,agentId:n.agentId,projectId:n.projectId}),t=Yr(n.name),r=e.type&&e.type!==`application/octet-stream`?e.type:t;await Te.processFiles([new File([e],n.name,{type:r})])}catch{Me(`error`,G.chat.attachmentLoadFailed,{name:n.name})}},children:[Te.isDragging?(0,X.jsx)(`div`,{className:`pointer-events-none absolute inset-0 z-10 flex items-center justify-center rounded-xl bg-accent-soft/80 text-sm font-medium text-accent-fg backdrop-blur-[1px]`,children:G.chat.dropFiles}):null,re?(0,X.jsxs)(`div`,{className:`flex shrink-0 items-center justify-between gap-3 border-b border-edge-subtle bg-accent-soft/40 px-4 py-2 text-xs text-fg-muted`,children:[(0,X.jsx)(`span`,{children:G.chat.userMessageEditing}),(0,X.jsx)(`button`,{type:`button`,className:`font-medium text-accent-fg hover:underline`,onClick:ie,children:G.chat.userMessageEditCancel})]}):null,(0,X.jsx)(Fw,{conversationId:s}),w.length>0?(0,X.jsx)(`div`,{className:`max-h-[min(30vh,11rem)] shrink-0 overflow-y-auto overflow-x-hidden border-b border-edge-subtle/80 [scrollbar-gutter:stable] dark:border-edge-subtle/70`,children:(0,X.jsx)(Pw,{items:w,disabled:r,editingFollowUpId:T,onEditInComposer:rt,onRemove:k,onMove:A,onReorder:j,onSteer:M,steeringBusyId:N,onOpenSideChat:s&&s!==`new`?nt:void 0})}):null,T?(0,X.jsxs)(`div`,{className:`flex items-center justify-between gap-3 px-4 py-2 text-xs text-fg-muted`,children:[(0,X.jsx)(`span`,{children:G.chat.inputPlaceholderSteeringEdit}),(0,X.jsx)(`button`,{type:`button`,onClick:D,className:`shrink-0 rounded px-1 text-accent-fg hover:underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,children:G.chat.userMessageEditCancel})]}):null,(0,X.jsx)(Vr,{attachments:Te.attachments,conversationId:s,topPadded:w.length>0,onRemove:Te.removeAttachment}),(0,X.jsx)(Iw,{refs:d.filter(e=>!e.refId),label:G.chat.commandPalette.contextLabel,onRemove:e=>f(t=>t.filter(t=>t.sourceId!==e))}),u,(0,X.jsxs)(`div`,{className:e?`flex min-h-0 shrink-0 items-end gap-1 px-1.5 py-1.5 sm:px-2`:`flex min-h-0 shrink-0 flex-col`,children:[(0,X.jsx)(`input`,{ref:de,type:`file`,multiple:!0,className:`hidden`,onChange:async e=>{let t=e.target.files;t&&await Te.processFiles(Array.from(t)),e.target.value=``}}),e&&!We.voiceActive&&(0,X.jsx)(Ww,{disabled:r||i,attachmentCount:Te.attachments.length,maxAttachments:10,chat:G.chat,onPickFiles:()=>de.current?.click()}),(0,X.jsxs)(`div`,{className:e?`relative min-w-0 flex-1 px-1`:J(`relative px-3 pb-0 pt-1 sm:px-4`,Te.attachments.length>0&&`pt-2`),children:[(0,X.jsx)($w,{open:Ue.atPicker.open,anchorRef:Ne.editorRef,items:Ue.atPicker.items,selectedIndex:Ue.atPicker.selectedIndex,loading:Ue.atPicker.loading,query:Ue.atPicker.query,noResults:Ue.atPicker.error??G.chat.atMention.noResults,conversationId:s,recentLabel:G.chat.atMention.recentBadge,sectionLabels:{file:G.chat.atMention.files,note:G.chat.atMention.notes,session:G.chat.atMention.chats,skill:G.chat.atMention.skills,agent:G.chat.atMention.agents,browser_tab:G.chat.atMention.browserTabs},ariaLabel:G.chat.atMention.placeholder,onSelectItem:Ue.applyAtMention}),(0,X.jsx)(AT,{open:Ue.palette.open,anchorRef:Ne.editorRef,panelRef:ue,sections:Ue.palette.loadError?[]:Ue.palette.sections,flatItems:Ue.palette.loadError?[]:Ue.palette.flatItems,loading:Ue.palette.loading,failedKinds:Ue.palette.failedKinds,selectedIndex:Ue.palette.selectedIndex,noResults:Ue.palette.loadError??G.chat.commandPalette.noResults,sectionLoadFailedLabel:G.chat.commandPalette.sectionLoadFailed,query:Ue.palette.query,skillsLabel:G.chat.commandPalette.skillsSection,commandsLabel:G.chat.commandPalette.commandsSection,agentsLabel:G.chat.commandPalette.agentsSection,currentAgentId:V,currentBadgeLabel:G.chat.commandPalette.currentBadge,runBusy:Be,pendingFollowUpsCount:w.length,maxPendingFollowUps:10,queueBadgeLabel:G.chat.commandPalette.queueBadge,queueFullBadgeLabel:G.chat.commandPalette.queueFullBadge,queueFullTooltip:G.chat.commandPalette.queueFullTooltip,skillUnavailableLabel:G.chat.commandPalette.skillUnavailableBadge,skillAgentDeniedLabel:G.chat.commandPalette.skillAgentDeniedBadge,skillSourceLabels:{builtin:G.chat.commandPalette.sourceBuiltin,workspace:G.chat.commandPalette.sourceWorkspace,global:G.chat.commandPalette.sourceGlobal,extra:G.chat.commandPalette.sourceExtra},onSelectItem:Ue.applyPalette}),We.voiceActive?(0,X.jsx)(Di,{phase:We.phase,elapsedLabel:We.elapsedLabel,recordedDictation:We.recordedDictation,audioLevel:We.audioLevel,partialTranscript:We.partialTranscript,finalTranscript:We.finalTranscript,error:We.error,settingsRequired:We.settingsRequired,disabled:r,chat:G.chat,onCancel:We.cancelVoiceInput,onConfirm:We.confirmVoiceInput,onRetry:We.retryVoiceInput}):null,(0,X.jsx)(Ep,{editorRef:Ne.editorRef,disabled:r,hidden:We.voiceActive&&We.phase!==`error`,compact:e,ariaLabel:t??G.chat.inputPlaceholder,placeholder:(Ze&&Qe.suggestion?`${Qe.suggestion.prompt}${ct?` · ${G.chat.welcomeSpotlight.acceptSuggestionHint}`:``}`:null)??t??lt??(at?T?G.chat.inputPlaceholderSteeringEdit:G.chat.inputPlaceholderSteering:G.chat.inputPlaceholder),onWireInput:Re,adjustHeight:Ne.adjustHeight,processFiles:Te.processFiles,processPastedText:Te.processPastedText,setIsComposing:Ne.setIsComposing,kbdRef:it,chatMessages:G.chat})]}),e?(0,X.jsx)(Gw,{disabled:r||i,voiceActive:We.voiceActive,runBusy:at,hasDraft:ot,chat:G.chat,onStartVoiceInput:We.startVoiceInput,onSend:et.send,onQueue:S?tt:void 0,onDefer:S?()=>et.flushSteeringDraft(!1):void 0,onAbort:x,onInterrupt:et.interruptDraft}):(0,X.jsx)(Fp,{disabled:r,sendDisabled:i,sending:a,streaming:o,runBusy:at,chat:G.chat,hasDraft:ot,showSteeringInterrupt:st,attachmentCount:Te.attachments.length,maxAttachments:10,onPickFiles:()=>de.current?.click(),thinkingLevel:m,onThinkingChange:_,voiceActive:We.voiceActive,onStartVoiceInput:We.startVoiceInput,voiceConversationEnabled:!!(s||W)&&!at,onStartVoiceConversation:()=>{if(!oe.current){if(s){ae.open({conversationId:s,name:H||V||`xopc`,taskId:te,mode:U});return}W&&(oe.current=!0,W().then(e=>ae.open({conversationId:e,name:H||V||`xopc`,taskId:te,mode:U})).catch(e=>Me(`error`,e instanceof Error?e.message:G.chat.callFailed)).finally(()=>{oe.current=!1}))}},onSend:et.send,onQueue:S?tt:void 0,onAbort:x,onInterrupt:et.interruptDraft,sessionModel:L,showModelSelector:R,onModelChange:z,modelDisabled:B})]}),(0,X.jsx)(DE,{open:me,conversationId:s,disabled:r||at,chat:G.chat,onClose:()=>he(!1),onSendCommand:He}),(0,X.jsx)(Ta,{open:ge!==null,title:G.chat.commandPalette.workspaceTrustTitle,description:jp(G.chat.commandPalette.workspaceTrustDescription,{path:ge?.workspacePath??``}),confirmLabel:be?G.chat.commandPalette.workspaceTrustSaving:G.chat.commandPalette.workspaceTrustConfirm,cancelLabel:G.chat.commandPalette.workspaceTrustCancel,onConfirm:we,onCancel:()=>{_e(null),ye(s)}})]})]})});function jE(e){let t=(0,Y.c)(42),{draft:n,onRemove:r,disabled:i,waiting:a}=e,o=i!==void 0&&i,s=a!==void 0&&a,c=h(NE),l;t[0]===c?l=t[1]:(l=y(c),t[0]=c,t[1]=l);let u=l.chat.pageContext,d=u.label,f;t[2]!==n.title||t[3]!==u.preview?(f=(0,X.jsxs)(`summary`,{className:`cursor-pointer break-words rounded text-sm text-fg focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,children:[u.preview,`: `,n.title]}),t[2]=n.title,t[3]=u.preview,t[4]=f):f=t[4];let p;t[5]===u.frozen?p=t[6]:(p=(0,X.jsx)(`p`,{className:`mt-2 text-xs text-fg-muted`,children:u.frozen}),t[5]=u.frozen,t[6]=p);let m;t[7]===n.envelope.resourceRefs?m=t[8]:(m=n.envelope.resourceRefs.map(ME).join(`, `),t[7]=n.envelope.resourceRefs,t[8]=m);let g;t[9]===m?g=t[10]:(g=(0,X.jsx)(`p`,{className:`mt-1 break-all text-xs text-fg-muted`,children:m}),t[9]=m,t[10]=g);let _;t[11]===n.preview?_=t[12]:(_=(0,X.jsx)(`pre`,{className:`mt-2 max-h-48 overflow-y-auto whitespace-pre-wrap break-words font-sans text-sm text-fg`,children:n.preview}),t[11]=n.preview,t[12]=_);let v;t[13]!==n.truncated||t[14]!==u.truncated?(v=n.truncated?(0,X.jsx)(`p`,{className:`mt-1 text-xs text-fg-muted`,children:u.truncated}):null,t[13]=n.truncated,t[14]=u.truncated,t[15]=v):v=t[15];let b;t[16]!==n.envelope.selection||t[17]!==u.draft||t[18]!==u.selection?(b=n.envelope.selection?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`p`,{className:`mt-2 text-xs font-medium text-fg`,children:n.envelope.selection.draft?u.draft:u.selection}),(0,X.jsx)(`pre`,{className:`mt-1 max-h-36 overflow-y-auto whitespace-pre-wrap break-words font-sans text-sm text-fg`,children:n.envelope.selection.text})]}):null,t[16]=n.envelope.selection,t[17]=u.draft,t[18]=u.selection,t[19]=b):b=t[19];let x;t[20]!==v||t[21]!==b||t[22]!==f||t[23]!==p||t[24]!==g||t[25]!==_?(x=(0,X.jsxs)(`details`,{className:`min-w-0 flex-1`,children:[f,p,g,_,v,b]}),t[20]=v,t[21]=b,t[22]=f,t[23]=p,t[24]=g,t[25]=_,t[26]=x):x=t[26];let S=`${u.remove}: ${n.title}`,C;t[27]===Symbol.for(`react.memo_cache_sentinel`)?(C=(0,X.jsx)(Kt,{className:`size-4`,"aria-hidden":!0}),t[27]=C):C=t[27];let w;t[28]!==o||t[29]!==r||t[30]!==S?(w=(0,X.jsx)(`button`,{type:`button`,onClick:r,disabled:o,"aria-label":S,className:`inline-flex size-8 shrink-0 items-center justify-center rounded text-fg-muted hover:bg-surface-hover hover:text-fg focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent disabled:opacity-50`,children:C}),t[28]=o,t[29]=r,t[30]=S,t[31]=w):w=t[31];let T;t[32]!==x||t[33]!==w?(T=(0,X.jsxs)(`div`,{className:`flex items-start gap-2`,children:[x,w]}),t[32]=x,t[33]=w,t[34]=T):T=t[34];let E;t[35]!==u.pending||t[36]!==s?(E=s?(0,X.jsx)(`p`,{className:`mt-2 text-xs text-fg-muted`,role:`status`,children:u.pending}):null,t[35]=u.pending,t[36]=s,t[37]=E):E=t[37];let D;return t[38]!==u.label||t[39]!==T||t[40]!==E?(D=(0,X.jsxs)(`section`,{className:`mx-4 mt-2 min-w-0 rounded-lg border border-edge bg-surface-hover p-3`,"aria-label":d,children:[T,E]}),t[38]=u.label,t[39]=T,t[40]=E,t[41]=D):D=t[41],D}function ME(e){return`${e.kind} · ${e.id} · v${e.revision}`}function NE(e){return e.language}function PE(e){let t=(0,Y.c)(30),{selection:n}=e,r=h(FE)===`zh`,{mode:i,options:a,checking:o,checkFailed:s,failure:c,busy:l,changeMode:u,retry:d}=n,f=s?r?`无法检查运行环境,请重试。`:`Could not check the environment. Retry.`:a?.worktreeUnavailableReason===`workspace_unavailable`?r?`项目目录不可用,请在项目设置中检查路径。`:`Project directory unavailable. Check its path in project settings.`:null;if(!s&&a?.worktreeUnavailableReason===`git_commit_required`){let e;return t[0]===c?e=t[1]:(e=c?(0,X.jsx)(`p`,{role:`alert`,className:`w-full px-2 py-1 text-xs text-danger`,children:c}):null,t[0]=c,t[1]=e),e}let p;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(p=(0,X.jsx)(Ge,{className:`size-4 shrink-0`,strokeWidth:1.75,"aria-hidden":!0}),t[2]=p):p=t[2];let m=p,g;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(g=(0,X.jsx)(is,{className:`size-4 shrink-0`,strokeWidth:1.75,"aria-hidden":!0}),t[3]=g):g=t[3];let _=g,v=r?`运行位置`:`Work in`,y;t[4]!==l||t[5]!==u||t[6]!==s||t[7]!==v||t[8]!==i||t[9]!==a||t[10]!==r?(y=!a&&!s?(0,X.jsx)(Jt,{className:`h-8 w-36 rounded-full`}):(0,X.jsx)(K,{ariaLabel:r?`新会话运行位置`:`New session environment`,placeholder:v,title:r?`Local 指 xopc Gateway 所在机器;首次发送时创建所选环境。`:`Local means the machine running xopc Gateway. The selected environment is created on first send.`,triggerIcon:l?(0,X.jsx)(Ye,{className:`size-4 shrink-0 animate-spin motion-reduce:animate-none`,"aria-hidden":!0}):i===`managed_worktree`?_:m,triggerClassName:`h-8 w-auto max-w-full justify-start gap-1.5 rounded-full border-0 bg-surface-hover px-2.5 hover:bg-surface-active [&>svg:last-child]:hidden`,contentClassName:`xopc-composer-config-popover w-max min-w-0 max-w-[calc(100vw-1.5rem)]`,side:`top`,allowEmpty:!1,value:i,disabled:l||s,options:[{value:`local_checkout`,label:`Local`,icon:m,group:v,disabled:!a?.localAvailable},{value:`managed_worktree`,label:`New local worktree`,icon:_,group:v,disabled:!a||!!a.worktreeUnavailableReason}],onChange:e=>u(e)}),t[4]=l,t[5]=u,t[6]=s,t[7]=v,t[8]=i,t[9]=a,t[10]=r,t[11]=y):y=t[11];let b;t[12]!==l||t[13]!==o||t[14]!==c||t[15]!==i||t[16]!==a?.worktreeUnavailableReason||t[17]!==f||t[18]!==d||t[19]!==r?(b=f||c||i===`managed_worktree`&&a?.worktreeUnavailableReason?(0,X.jsx)(ai,{variant:`ghost`,className:`size-8 rounded-full p-0`,disabled:l||o,onClick:d,"aria-label":r?`重新检查环境`:`Recheck environment`,children:(0,X.jsx)(jt,{className:`size-3.5 `+(o?`animate-spin motion-reduce:animate-none`:``),"aria-hidden":!0})}):null,t[12]=l,t[13]=o,t[14]=c,t[15]=i,t[16]=a?.worktreeUnavailableReason,t[17]=f,t[18]=d,t[19]=r,t[20]=b):b=t[20];let x;t[21]===f?x=t[22]:(x=f?(0,X.jsx)(`p`,{role:`status`,className:`w-full px-2 py-1 text-xs leading-5 text-fg-muted`,children:f}):null,t[21]=f,t[22]=x);let S;t[23]===c?S=t[24]:(S=c?(0,X.jsx)(`p`,{role:`alert`,className:`max-h-20 w-full overflow-y-auto break-words px-2 py-1 text-xs leading-5 text-danger`,children:c}):null,t[23]=c,t[24]=S);let C;return t[25]!==y||t[26]!==b||t[27]!==x||t[28]!==S?(C=(0,X.jsxs)(X.Fragment,{children:[y,b,x,S]}),t[25]=y,t[26]=b,t[27]=x,t[28]=S,t[29]=C):C=t[29],C}function FE(e){return e.language}function IE({preparation:e,conversationId:t,ready:n,onSend:r}){let i=m(e=>e.conversationId),a=m(e=>e.baseUrl),[o,s]=(0,Z.useState)(null),[c,l]=(0,Z.useState)(null),[u,d]=(0,Z.useState)(null),f=(0,Z.useRef)(null),h=(0,Z.useRef)(!1),_=(0,Z.useRef)(r);_.current=r;let v=(0,Z.useRef)(t);v.current=t;let{data:y,error:b,isValidating:x,mutate:S}=Lr(e?[`project-environment-options`,a,i,e.project.id]:null,async()=>(await g(p(`/api/projects/${encodeURIComponent(e.project.id)}/environment-options`))).options,{keepPreviousData:!1,revalidateOnFocus:!1,shouldRetryOnError:!1}),C=y?.localAvailable&&y.worktreeUnavailableReason!==`git_commit_required`&&y.worktreeUnavailableReason!==`workspace_unavailable`?o?.preparation===e?o.mode:e?jr(Pr(),e.project.id)??`local_checkout`:`local_checkout`:`local_checkout`,w=!!(!b&&y?.localAvailable&&(C===`local_checkout`||!y.worktreeUnavailableReason)),T=(0,Z.useCallback)(e=>{let t=f.current;f.current=null,d(null),t?.resolve(e?t.conversationId:null)},[]);(0,Z.useEffect)(()=>{if(u){if(u.baseUrl!==a||u.token!==i){T(!1);return}u.conversationId&&(t===u.conversationId?n&&T(!0):e!==u.preparation&&T(!1))}},[u,t,n,e,T,a,i]),(0,Z.useEffect)(()=>()=>{f.current?.resolve(null),f.current=null},[]);let E=(0,Z.useCallback)(async()=>{if(!e)return t;let n=f.current;if(n)return n.preparation===e?n.completion:null;if(!w||x)return null;l(null);let r,o=new Promise(e=>{r=e}),s={preparation:e,baseUrl:a,token:i,conversationId:null,completion:o,resolve:r};return f.current=s,d(s),Promise.resolve().then(()=>e.create(C)).then(t=>{if(f.current!==s)return;Or(e.project.id,C);let n={...s,conversationId:t};f.current=n,d(n)}).catch(t=>{f.current===s&&(l({preparation:e,message:t instanceof Error?t.message:String(t)}),S(),T(!1))}),o},[w,a,T,x,C,S,e,t,i]);return{mode:C,options:y,checking:x,checkFailed:!!b,allowed:w,busy:!!(u&&(u.preparation===e||u.conversationId&&u.conversationId===t)),failure:c?.preparation===e?c.message:null,changeMode:t=>{!e||f.current||(s({preparation:e,mode:t}),l(null))},retry:()=>void S(),prepareSession:E,send:async(...n)=>{let r=t;if(e){if(h.current)return!1;h.current=!0;try{let e=await E();if(!e)return!1;r=e,n[2]=void 0}finally{h.current=!1}}return!r||v.current!==r?!1:await _.current(...n)!==!1&&{conversationId:r}}}}function LE(e,t){let n=(0,Y.c)(12),r=m(zE),i=m(RE),a;n[0]===e?a=n[1]:(a=t=>e?t.sessions[e]?.localDraft:void 0,n[0]=e,n[1]=a);let o=Mn(a),s;n[2]!==i||n[3]!==e||n[4]!==t||n[5]!==o||n[6]!==r?(s=e||t?[`chat-project-scope`,i,r,e,t,o===!0?`draft`:o===!1?`persisted`:`unknown`]:null,n[2]=i,n[3]=e,n[4]=t,n[5]=o,n[6]=r,n[7]=s):s=n[7];let c;n[8]!==e||n[9]!==t?(c=async()=>{let n=e?await br(e):void 0,r=n?n.creation.projectId:e?(await dn(e)).projectId:t;return r?cn(r):null},n[8]=e,n[9]=t,n[10]=c):c=n[10];let l;n[11]===Symbol.for(`react.memo_cache_sentinel`)?(l={keepPreviousData:!1,shouldRetryOnError:!1},n[11]=l):l=n[11];let{data:u,error:d}=Lr(s,c,l);return d?null:u??null}function RE(e){return e.baseUrl}function zE(e){return e.conversationId}function BE(e,t){let n=Ao(e,t),r=jo(e,t);return`${e.id} ${n} ${r}`.toLowerCase()}function VE(e,t,n){let r=t.trim().toLowerCase();if(!r)return e;let i=r.split(/\s+/).filter(Boolean);return e.filter(e=>{let t=BE(e,n);return i.every(e=>t.includes(e))})}function HE(e){let t=(0,Y.c)(57),{items:n,value:r,disabled:i,placeholder:a,searchPlaceholder:o,noMatches:s,compact:c,contentSide:l,contentAlign:u,className:d,onChange:f}=e,p=l===void 0?`bottom`:l,m=u===void 0?`end`:u,g=h(WE),_;t[0]===g?_=t[1]:(_=y(g),t[0]=g,t[1]=_);let v=_.agentsSettings,[b,x]=(0,Z.useState)(!1),[S,C]=(0,Z.useState)(``),w;t[2]!==v||t[3]!==n||t[4]!==S?(w=VE(n,S,v),t[2]=v,t[3]=n,t[4]=S,t[5]=w):w=t[5];let T=w,E,D,O;if(t[6]!==v||t[7]!==n||t[8]!==a||t[9]!==r){let e;t[13]===r?e=t[14]:(e=e=>e.id===r,t[13]=r,t[14]=e),D=n.find(e),E=D?Ao(D,v):r||a,O=D?[Ao(D,v),jo(D,v)].filter(Boolean).join(` — `):void 0,t[6]=v,t[7]=n,t[8]=a,t[9]=r,t[10]=E,t[11]=D,t[12]=O}else E=t[10],D=t[11],O=t[12];let k=O??a,A=c&&`min-w-0 max-w-[min(calc(15ch+3rem),calc(100vw-8rem))] py-1.5 text-[13px]`,j;t[15]!==d||t[16]!==A?(j=J(da,`items-center gap-2 rounded-lg border border-edge-subtle bg-surface-panel px-2.5 py-2 text-left text-sm font-normal text-fg`,ta.transition,`hover:border-edge hover:bg-surface-hover/45`,fa,ua,`disabled:cursor-not-allowed disabled:opacity-50`,`dark:border-edge-subtle dark:hover:bg-surface-hover/55`,A,d),t[15]=d,t[16]=A,t[17]=j):j=t[17];let M;t[18]!==D?.avatar||t[19]!==r?(M=r?(0,X.jsx)(_a,{agentId:r,avatar:D?.avatar,size:28,className:`shrink-0`}):null,t[18]=D?.avatar,t[19]=r,t[20]=M):M=t[20];let N=c?`max-w-[15ch] shrink`:`flex-1`,P;t[21]===N?P=t[22]:(P=J(`min-w-0 truncate text-left`,N),t[21]=N,t[22]=P);let F;t[23]!==E||t[24]!==P?(F=(0,X.jsx)(`span`,{className:P,children:E}),t[23]=E,t[24]=P,t[25]=F):F=t[25];let I;t[26]===Symbol.for(`react.memo_cache_sentinel`)?(I=(0,X.jsx)(ae,{className:`size-4 shrink-0 text-fg-subtle opacity-70`,"aria-hidden":!0}),t[26]=I):I=t[26];let L;t[27]!==i||t[28]!==F||t[29]!==k||t[30]!==j||t[31]!==M?(L=(0,X.jsx)(di,{asChild:!0,children:(0,X.jsxs)(`button`,{type:`button`,disabled:i,title:k,className:j,children:[M,F,I]})}),t[27]=i,t[28]=F,t[29]=k,t[30]=j,t[31]=M,t[32]=L):L=t[32];let R;t[33]===Symbol.for(`react.memo_cache_sentinel`)?(R=J(ie,`z-50 w-[var(--radix-popover-trigger-width)] min-w-[12rem] rounded-lg border border-edge bg-surface-overlay shadow-md`,ta),t[33]=R):R=t[33];let z;t[34]===Symbol.for(`react.memo_cache_sentinel`)?(z=e=>C(e.target.value),t[34]=z):z=t[34];let B;t[35]===Symbol.for(`react.memo_cache_sentinel`)?(B=J(`w-full rounded-md border border-edge bg-surface-panel px-2.5 py-1.5 text-sm text-fg placeholder:text-fg-muted`,fa),t[35]=B):B=t[35];let ee;t[36]!==S||t[37]!==o?(ee=(0,X.jsx)(`div`,{className:`shrink-0 border-b border-edge p-2`,children:(0,X.jsx)(`input`,{type:`search`,value:S,onChange:z,placeholder:o,className:B,"aria-label":o})}),t[36]=S,t[37]=o,t[38]=ee):ee=t[38];let V;t[39]===Symbol.for(`react.memo_cache_sentinel`)?(V=J(se,`max-h-64 p-1`),t[39]=V):V=t[39];let te;t[40]!==v||t[41]!==T||t[42]!==s||t[43]!==f||t[44]!==r?(te=T.length===0?(0,X.jsx)(`li`,{className:`p-2 text-sm text-fg-muted`,children:s}):T.map(e=>{let t=e.id===r,n=Ao(e,v),i=jo(e,v),a=i.length>0?i:void 0;return(0,X.jsx)(`li`,{role:`option`,"aria-selected":t,children:(0,X.jsxs)(`button`,{type:`button`,className:J(`flex w-full items-center gap-2 rounded-md px-2 py-1.5 text-left text-sm text-fg`,t?`bg-surface-hover`:`hover:bg-surface-hover`),onClick:()=>{f(e.id),x(!1),C(``)},children:[(0,X.jsx)(_a,{agentId:e.id,avatar:e.avatar,size:32,className:`shrink-0`}),(0,X.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[(0,X.jsx)(`span`,{className:`block truncate font-medium leading-tight`,title:n,children:n}),i?(0,X.jsx)(`span`,{className:`mt-0.5 block truncate text-xs leading-tight text-fg-muted`,title:a,children:i}):null]}),(0,X.jsx)(H,{className:J(`size-4 shrink-0`,t?`opacity-100`:`opacity-0`),"aria-hidden":!0})]})},e.id)}),t[40]=v,t[41]=T,t[42]=s,t[43]=f,t[44]=r,t[45]=te):te=t[45];let U;t[46]===te?U=t[47]:(U=(0,X.jsx)(`ul`,{"data-select-scroll-region":!0,className:V,role:`listbox`,children:te}),t[46]=te,t[47]=U);let W;t[48]!==m||t[49]!==p||t[50]!==ee||t[51]!==U?(W=(0,X.jsx)(si,{children:(0,X.jsxs)(ci,{side:p,align:m,sideOffset:4,collisionPadding:8,className:R,onOpenAutoFocus:UE,children:[ee,U]})}),t[48]=m,t[49]=p,t[50]=ee,t[51]=U,t[52]=W):W=t[52];let ne;return t[53]!==b||t[54]!==L||t[55]!==W?(ne=(0,X.jsxs)(li,{open:b,onOpenChange:x,children:[L,W]}),t[53]=b,t[54]=L,t[55]=W,t[56]=ne):ne=t[56],ne}function UE(e){return e.preventDefault()}function WE(e){return e.language}function GE(e,t,n=[],r){let i=new Map;for(let t of e)i.set(`${t.kind}:${t.id}`,{...t,pending:!1});let a=(e,t,n,r)=>{let a=`${e}:${t}`,o=i.get(a);if(o){o.pending=!0;return}i.set(a,{kind:e,id:t,title:n,...r?{fileKind:r}:{},origins:[],pending:!0})};for(let e of t)a(e.kind,e.sourceId,e.title,e.fileKind);for(let e of n)a(`attachment`,e.id,e.title);return r&&a(`app_context`,r.id,r.title),[...i.values()]}function KE(e){return e===`zh`?{title:`会话信息`,work:`当前工作`,sources:`关联来源`,environment:`运行位置`,independent:`独立会话`,delegatedTasks:`派出任务`,expand:`显示更多`,collapse:`收起`,session:`会话关联`,task:`任务关联`,recent:`最近引用`,draft:`待发送`,untitled:`未命名 Note`,untitledSource:`未命名来源`,unavailable:`暂无法查看`,partialUnavailable:`部分信息暂无法查看`,refresh:`重试`,more:`仅显示前 20 项`,local:`本地目录`,worktree:`Worktree`,detached:`游离 HEAD`,unavailableEnvironment:`运行目录不可用`,newEnvironment:`在另一环境新建会话`,copyEnvironmentPath:`复制环境路径`,copied:`已复制`}:{title:`Session info`,work:`Current work`,sources:`Related sources`,environment:`Run location`,independent:`Independent chat`,delegatedTasks:`Delegated tasks`,expand:`Show more`,collapse:`Show less`,session:`Linked to chat`,task:`Linked to task`,recent:`Recently used`,draft:`Pending send`,untitled:`Untitled Note`,untitledSource:`Untitled source`,unavailable:`Temporarily unavailable`,partialUnavailable:`Some details are unavailable`,refresh:`Retry`,more:`Showing the first 20 items`,local:`Local directory`,worktree:`Worktree`,detached:`Detached HEAD`,unavailableEnvironment:`Run directory unavailable`,newEnvironment:`New chat in another environment`,copyEnvironmentPath:`Copy environment path`,copied:`Copied`}}var qE=`flex min-w-0 items-center gap-3 rounded-lg px-2 py-2 text-sm text-fg transition-colors hover:bg-surface-hover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,JE=`rounded-md px-2 py-1 text-xs text-fg-muted hover:bg-surface-hover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`;function YE({conversationId:e,draftRefs:t=[],draftAttachments:n=[],draftPage:r,project:i,...a}){let[o,s]=(0,Z.useState)(!1),[l,d]=(0,Z.useState)(!1),[f,p]=(0,Z.useState)(!1),[m,g]=(0,Z.useState)(!1),_=KE(h(e=>e.language)),v=c(),y=`${v.pathname}${v.search}`,{data:b,error:x,isLoading:S,isValidating:C,mutate:w}=Hd(e,o),T=x?void 0:b,E=T?.work.project??(!e&&i?{id:i.id,title:i.name}:void 0),D=T?.work.task,O=T?.work.delegatedTasks??[],A=GE(T?.sources??[],t,n,r),j=T?.environment,M=!!(E||D||O.length),N=!!T?.unavailableSections.includes(`work`),P=!!T?.unavailableSections.includes(`sources`),F=!!T?.unavailableSections.includes(`environment`),I=[E?.title,D?.title,A.length?`${_.sources} ${A.length}${T?.sourcesHasMore?`+`:``}`:null,j?.kind===`managed_worktree`?`Worktree`:null].filter(Boolean).join(` · `)||_.title,L=()=>s(!1),R=A.some(e=>e.kind===`note`&&!e.unavailable&&e.origins.some(e=>e.kind===`session`)),z=()=>{j?.rootPath&&gi(j.rootPath).then(e=>{e&&(g(!0),window.setTimeout(()=>g(!1),1200))})},B=()=>(0,X.jsx)(`button`,{type:`button`,className:JE,"aria-label":_.refresh,disabled:C,onClick:()=>void w(),children:(0,X.jsx)(jt,{className:`size-3.5 ${C?`animate-spin motion-reduce:animate-none`:``}`,"aria-hidden":!0})});return(0,X.jsxs)(li,{open:o,onOpenChange:s,children:[(0,X.jsx)(di,{asChild:!0,children:(0,X.jsx)(`button`,{type:`button`,"aria-label":_.title,title:I,className:`group inline-flex size-8 shrink-0 items-center justify-center rounded-lg text-fg-muted transition-[background-color,color,transform] duration-150 hover:bg-surface-hover hover:text-fg active:scale-95 data-[state=open]:bg-surface-hover data-[state=open]:text-fg motion-reduce:transition-none motion-reduce:transform-none focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,children:(0,X.jsx)(Je,{className:`size-4 transition-transform duration-200 group-data-[state=open]:scale-110 motion-reduce:transform-none motion-reduce:transition-none`,strokeWidth:1.75,"aria-hidden":!0})})}),(0,X.jsx)(si,{children:(0,X.jsxs)(ci,{align:`end`,sideOffset:8,collisionPadding:12,"aria-label":_.title,onCloseAutoFocus:e=>{document.activeElement?.closest(`[data-primary-chat-composer]`)&&e.preventDefault()},className:`xopc-session-context-popover z-50 max-h-[min(30rem,var(--radix-popover-content-available-height))] w-[min(23rem,calc(100vw-1.5rem))] overflow-y-auto rounded-xl border border-edge bg-surface-overlay p-3 shadow-popover`,children:[(0,X.jsx)(`h2`,{className:`mb-2 px-2 text-sm font-medium text-fg`,children:_.title}),S?(0,X.jsx)(`div`,{className:`space-y-2 px-2`,"aria-busy":`true`,children:[0,1,2].map(e=>(0,X.jsx)(Jt,{className:`h-8 w-full`},e))}):x?(0,X.jsxs)(`div`,{className:`flex items-center justify-between px-2 py-2 text-sm text-fg-muted`,children:[(0,X.jsx)(`span`,{children:_.unavailable}),B()]}):(0,X.jsxs)(`div`,{className:`space-y-3`,children:[(0,X.jsxs)(`section`,{"aria-label":_.work,children:[E?(0,X.jsxs)(u,{className:qE,to:$e(y,`/projects/${encodeURIComponent(E.id)}`),onClick:L,children:[(0,X.jsx)(Ee,{className:`size-4 shrink-0`,"aria-hidden":!0}),(0,X.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,title:E.title,children:E.title})]}):null,D?(0,X.jsxs)(u,{className:qE,to:et(y,D.id),onClick:L,children:[(0,X.jsx)(os,{className:`size-4 shrink-0`,"aria-hidden":!0}),(0,X.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,title:D.title,children:D.title}),(0,X.jsx)(`span`,{className:`shrink-0 text-xs text-fg-muted`,children:D.phase})]}):null,O.length?(0,X.jsxs)(X.Fragment,{children:[O.length>2?(0,X.jsxs)(`button`,{type:`button`,className:`${qE} w-full text-left`,onClick:()=>d(!l),"aria-expanded":l,children:[(0,X.jsx)(os,{className:`size-4 shrink-0`,"aria-hidden":!0}),(0,X.jsxs)(`span`,{className:`flex-1`,children:[_.delegatedTasks,` · `,T?.work.delegatedTaskCount??O.length]}),(0,X.jsx)(`span`,{className:`text-xs text-fg-muted`,children:l?_.collapse:_.expand})]}):(0,X.jsxs)(`p`,{className:`px-2 pt-2 text-xs text-fg-subtle`,children:[_.delegatedTasks,` · `,T?.work.delegatedTaskCount??O.length]}),(l?O:O.slice(0,2)).map(e=>(0,X.jsxs)(u,{className:`${qE} pl-9`,to:et(y,e.id),onClick:L,children:[(0,X.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,title:e.title,children:e.title}),(0,X.jsx)(`span`,{className:`shrink-0 text-xs text-fg-muted`,children:e.runStatus??e.phase})]},e.id))]}):null,M?null:(0,X.jsx)(`p`,{className:`px-2 py-2 text-sm text-fg-muted`,children:N?_.unavailable:_.independent}),N?(0,X.jsxs)(`div`,{className:`flex items-center justify-between px-2 text-xs text-fg-muted`,children:[M?_.partialUnavailable:null,B()]}):null,E&&a.onLeaveProject?(0,X.jsx)(`button`,{type:`button`,className:JE,onClick:()=>{L(),a.onLeaveProject?.()},children:a.leaveProjectLabel}):null]}),A.length||P?(0,X.jsxs)(`section`,{className:`border-t border-edge-subtle pt-3`,children:[(0,X.jsxs)(`div`,{className:`mb-1 flex items-center justify-between px-2`,children:[(0,X.jsxs)(`h3`,{className:`text-sm text-fg-subtle`,children:[_.sources,` `,A.length?`${A.length}${T?.sourcesHasMore?`+`:``}`:``]}),P?B():null]}),(f?A:A.slice(0,3)).map(e=>{let t=e.origins.some(e=>e.kind===`session`)?_.session:e.origins.some(e=>e.kind===`task`)?_.task:e.origins.some(e=>e.kind===`recent`)?_.recent:_.draft,n=e.pending&&e.origins.length?`${t} · ${_.draft}`:e.pending?_.draft:t,r=e.kind===`file`&&e.fileKind===`directory`?Oe:e.kind===`file`?Te:e.kind===`session`?xt:e.kind===`browser_tab`||e.kind===`browser_page`||e.kind===`app_context`?k:e.kind===`mcp_resource`?ve:e.kind===`attachment`?Et:Te,i=e.unavailable?_.unavailable:e.title||(e.kind===`note`?_.untitled:_.untitledSource),a=(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(r,{className:`size-4 shrink-0`,"aria-hidden":!0}),(0,X.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,title:e.unavailable?void 0:e.title,children:i}),(0,X.jsx)(`span`,{className:`shrink-0 text-xs text-fg-muted`,children:n})]}),o=e.kind===`note`?nt(y,e.id):e.kind===`session`?`/chat/${encodeURIComponent(e.id)}`:null,s=`${e.kind}:${e.id}`;return!e.unavailable&&o?(0,X.jsx)(u,{className:qE,to:o,onClick:L,children:a},s):(0,X.jsx)(`div`,{className:`flex min-w-0 items-center gap-3 px-2 py-2 text-sm text-fg-muted`,children:a},s)}),A.length?null:(0,X.jsx)(`p`,{className:`px-2 py-2 text-xs text-fg-muted`,children:_.unavailable}),A.length>0&&P?(0,X.jsx)(`p`,{className:`px-2 py-1 text-xs text-fg-muted`,children:_.partialUnavailable}):null,A.length>3?(0,X.jsx)(`button`,{type:`button`,className:JE,onClick:()=>p(!f),"aria-expanded":f,children:f?_.collapse:_.expand}):null,T?.sourcesHasMore?(0,X.jsx)(`p`,{className:`px-2 py-1 text-xs text-fg-muted`,children:_.more}):null,R&&a.onDraftSourceNote?(0,X.jsx)(`button`,{type:`button`,className:JE,onClick:()=>{L(),a.onDraftSourceNote?.()},children:a.draftSourceNoteLabel}):null]}):null,e&&(j||F)||a.environmentAction?(0,X.jsxs)(`section`,{className:`border-t border-edge-subtle pt-3`,children:[(0,X.jsxs)(`div`,{className:`mb-1 flex items-center justify-between px-2`,children:[(0,X.jsx)(`h3`,{className:`text-sm text-fg-subtle`,children:_.environment}),F?B():null]}),j?null:a.environmentAction,j?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)(`div`,{className:`flex min-w-0 items-center gap-3 px-2 py-2 text-sm text-fg`,children:[(0,X.jsx)(Ct,{className:`size-4 shrink-0`,strokeWidth:1.75,"aria-hidden":!0}),(0,X.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:j.kind===`managed_worktree`?_.worktree:_.local}),j.branch||j.headSha?(0,X.jsxs)(`span`,{className:`inline-flex min-w-0 max-w-40 items-center gap-1 text-xs text-fg-muted`,children:[(0,X.jsx)(Ne,{className:`size-3.5 shrink-0`,"aria-hidden":!0}),(0,X.jsx)(`span`,{className:`truncate`,children:j.branch||(j.detached?`${_.detached} · ${j.headSha?.slice(0,8)}`:j.headSha?.slice(0,8))})]}):null]}),(0,X.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2 pl-9 pr-1`,children:[(0,X.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-xs text-fg-muted`,title:j.rootPath,children:j.rootPath}),(0,X.jsx)(`button`,{type:`button`,className:JE,"aria-label":m?_.copied:_.copyEnvironmentPath,title:m?_.copied:_.copyEnvironmentPath,onClick:z,children:m?(0,X.jsx)(H,{className:`size-3.5`,"aria-hidden":!0}):(0,X.jsx)(_e,{className:`size-3.5`,"aria-hidden":!0})})]}),a.environmentAction,j.available?null:(0,X.jsx)(`p`,{className:`px-2 py-1 text-xs text-fg-muted`,children:_.unavailableEnvironment}),E&&i?.workspaceRoot?(0,X.jsx)(ue,{className:JE,to:Hr(E.id),state:{forceNewChat:!0,agentId:a.agentId,temporary:a.temporary},onClick:L,children:_.newEnvironment}):null]}):(0,X.jsx)(`p`,{className:`px-2 py-2 text-xs text-fg-muted`,children:_.unavailable})]}):null]})]})})]})}function XE(e){let t=(0,Y.c)(23),{conversationId:n}=e,{data:r}=Fs(n),i=h(QE)===`zh`,a=Ws(ZE),o,s;if(t[0]!==n||t[1]!==r||t[2]!==a){let e=r?Us(n,r.report):null;o=Boolean,s=e&&!a.includes(e),t[0]=n,t[1]=r,t[2]=a,t[3]=o,t[4]=s}else o=t[3],s=t[4];let c=o(s);if(!r||Os(r.report.status))return null;let l=c?i?`手机需要你操作`:`Your help is needed on the phone`:i?`查看手机`:`View phone`,u=c?i?`手机需要你操作`:`Your help is needed on the phone`:i?`查看手机`:`View phone`,d;t[5]!==n||t[6]!==r.report.deviceId||t[7]!==r.report.deviceName||t[8]!==r.report.sessionId?(d=()=>oi.getState().openPhone(r.report.deviceId??r.report.sessionId,r.report.deviceName,n,!0),t[5]=n,t[6]=r.report.deviceId,t[7]=r.report.deviceName,t[8]=r.report.sessionId,t[9]=d):d=t[9];let f;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,X.jsx)(Rt,{className:`size-4`,"aria-hidden":!0}),t[10]=f):f=t[10];let p;t[11]===c?p=t[12]:(p=c&&(0,X.jsx)(`span`,{"aria-hidden":!0,className:`absolute -right-1 -top-1 size-1.5 rounded-full bg-accent`}),t[11]=c,t[12]=p);let m;t[13]===p?m=t[14]:(m=(0,X.jsxs)(`span`,{className:`relative`,children:[f,p]}),t[13]=p,t[14]=m);let g=i?`手机`:`Phone`,_;t[15]===g?_=t[16]:(_=(0,X.jsx)(`span`,{className:`text-xs`,children:g}),t[15]=g,t[16]=_);let v;return t[17]!==_||t[18]!==l||t[19]!==u||t[20]!==d||t[21]!==m?(v=(0,X.jsxs)(ai,{variant:`ghost`,className:`min-h-10 gap-1.5 px-2`,title:l,"aria-label":u,onClick:d,children:[m,_]}),t[17]=_,t[18]=l,t[19]=u,t[20]=d,t[21]=m,t[22]=v):v=t[22],v}function ZE(e){return e.seen}function QE(e){return e.language}function $E(e){let t=(0,Y.c)(57),{conversationId:n,directoryOnly:r,workspacePath:i,canChangeWorkspace:a,disabled:o,available:s,onWorkspaceChange:c}=e,l=r!==void 0&&r,u=s===void 0||s,d=h(rD),f;t[0]===d?f=t[1]:(f=y(d),t[0]=d,t[1]=f);let p=f,m=Of(nD),g;t[2]===n?g=t[3]:(g=e=>e.panes[n??`new`]?.open===!0,t[2]=n,t[3]=g);let _=oi(g),[v,x]=(0,Z.useState)(null),C,O;t[4]!==p.chat.workingDirectory.notSet||t[5]!==i?(C=i?.trim()??``,O=C?Ca(C):p.chat.workingDirectory.notSet,t[4]=p.chat.workingDirectory.notSet,t[5]=i,t[6]=C,t[7]=O):(C=t[6],O=t[7]);let k=O,A;t[8]===c?A=t[9]:(A=async e=>{try{await c(e)}catch(e){let t=e;x(t instanceof Error?t.message:String(t))}},t[8]=c,t[9]=A);let j=A,M;t[10]!==j||t[11]!==C?(M={initialPath:C,onPicked:j},t[10]=j,t[11]=C,t[12]=M):M=t[12];let N=wa(M),P=o||!u||N.picking,F;t[13]!==n||t[14]!==m?(F=()=>{let e=oi.getState(),t=n??`new`;e.setScope(t);let r=e.panes[t]?.tabs.find(tD);r?e.activate(r.id,t):e.openTools(t),m(n??``)},t[13]=n,t[14]=m,t[15]=F):F=t[15];let I=F,L;t[16]!==l||t[17]!==d||t[18]!==I||t[19]!==_?(L=l?null:(0,X.jsx)(`button`,{type:`button`,className:J(`inline-flex size-8 shrink-0 items-center justify-center rounded-lg text-fg-muted transition-colors`,`hover:bg-surface-hover hover:text-fg focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,_&&`bg-surface-hover text-fg`),title:d===`zh`?`打开工具`:`Open workspace tools`,"aria-label":d===`zh`?`打开工具`:`Open workspace tools`,"aria-pressed":_,"aria-controls":`app-workspace-panel`,"data-workspace-trigger":!0,onClick:I,children:(0,X.jsx)(as,{className:`size-4 shrink-0`,strokeWidth:1.75,"aria-hidden":!0})}),t[16]=l,t[17]=d,t[18]=I,t[19]=_,t[20]=L):L=t[20];let R;t[21]!==a||t[22]!==l||t[23]!==N||t[24]!==p.chat.workingDirectory.chooseFolder||t[25]!==C||t[26]!==P||t[27]!==k?(R=l&&a?(0,X.jsxs)(`button`,{type:`button`,disabled:P,className:J(`inline-flex h-8 max-w-full shrink-0 px-2 items-center justify-center rounded-lg text-fg-muted transition-colors`,`hover:bg-surface-hover hover:text-fg focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,P&&`cursor-not-allowed opacity-50`),title:`${p.chat.workingDirectory.chooseFolder}: ${C||k}`,"aria-label":p.chat.workingDirectory.chooseFolder,onClick:N.pick,children:[(0,X.jsx)(ne,{className:`mr-2 size-4`,strokeWidth:1.75,"aria-hidden":!0}),(0,X.jsx)(`span`,{className:`truncate text-xs`,children:p.chat.workingDirectory.chooseFolder})]}):null,t[21]=a,t[22]=l,t[23]=N,t[24]=p.chat.workingDirectory.chooseFolder,t[25]=C,t[26]=P,t[27]=k,t[28]=R):R=t[28];let z;t[29]!==R||t[30]!==L?(z=(0,X.jsxs)(`div`,{className:`flex min-w-0 items-center gap-0.5`,children:[L,R]}),t[29]=R,t[30]=L,t[31]=z):z=t[31];let B;t[32]!==l||t[33]!==N||t[34]!==p.chat.workingDirectory||t[35]!==C?(B=l&&!N.hasNativePicker?(0,X.jsx)(re,{open:N.modalOpen,onOpenChange:N.setModalOpen,initialAbsolutePath:C||void 0,onConfirm:N.confirmPick,wd:p.chat.workingDirectory}):null,t[32]=l,t[33]=N,t[34]=p.chat.workingDirectory,t[35]=C,t[36]=B):B=t[36];let ee=v!==null,V;t[37]===Symbol.for(`react.memo_cache_sentinel`)?(V=e=>{e||x(null)},t[37]=V):V=t[37];let H;t[38]===Symbol.for(`react.memo_cache_sentinel`)?(H=(0,X.jsx)(b,{className:`xopc-dialog-overlay fixed inset-0 z-[80] bg-scrim backdrop-blur-[2px]`}),t[38]=H):H=t[38];let te;t[39]===p.chat.workingDirectory.applyErrorTitle?te=t[40]:(te=(0,X.jsx)(E,{className:`text-base font-semibold text-fg`,children:p.chat.workingDirectory.applyErrorTitle}),t[39]=p.chat.workingDirectory.applyErrorTitle,t[40]=te);let U;t[41]===v?U=t[42]:(U=v?(0,X.jsx)(S,{className:`mt-2 whitespace-pre-wrap text-sm leading-relaxed text-fg-muted`,children:v}):null,t[41]=v,t[42]=U);let W;t[43]===Symbol.for(`react.memo_cache_sentinel`)?(W=()=>x(null),t[43]=W):W=t[43];let ie;t[44]===p.chat.workingDirectory.applyErrorClose?ie=t[45]:(ie=(0,X.jsx)(`div`,{className:`mt-4 flex justify-end border-t border-edge-subtle pt-3`,children:(0,X.jsx)(ai,{type:`button`,onClick:W,children:p.chat.workingDirectory.applyErrorClose})}),t[44]=p.chat.workingDirectory.applyErrorClose,t[45]=ie);let ae;t[46]!==te||t[47]!==U||t[48]!==ie?(ae=(0,X.jsxs)(w,{children:[H,(0,X.jsxs)(T,{className:`xopc-dialog-content fixed left-1/2 top-1/2 z-[81] w-[min(100%-2rem,26rem)] -translate-x-1/2 -translate-y-1/2 rounded-xl border border-edge bg-surface-overlay p-4 shadow-popover`,onOpenAutoFocus:eD,children:[te,U,ie]})]}),t[46]=te,t[47]=U,t[48]=ie,t[49]=ae):ae=t[49];let oe;t[50]!==ee||t[51]!==ae?(oe=(0,X.jsx)(D,{open:ee,onOpenChange:V,children:ae}),t[50]=ee,t[51]=ae,t[52]=oe):oe=t[52];let se;return t[53]!==z||t[54]!==B||t[55]!==oe?(se=(0,X.jsxs)(X.Fragment,{children:[z,B,oe]}),t[53]=z,t[54]=B,t[55]=oe,t[56]=se):se=t[56],se}function eD(e){return e.preventDefault()}function tD(e){return e.kind===`home`}function nD(e){return e.openForSession}function rD(e){return e.language}function iD(e,t){return e.repeat||e.altKey||e.shiftKey||e.key.toLowerCase()!==`j`?!1:t===`darwin`?e.metaKey&&!e.ctrlKey:e.ctrlKey&&!e.metaKey}function aD({conversationId:e,dialogOpen:t,onDialogOpenChange:n,hideTrigger:r=!1}){let i=h(e=>e.language),a=i===`zh`?sD:cD,[o,s]=(0,Z.useState)(!1),c=t??o,l=e=>{s(e),n?.(e)},[u,d]=(0,Z.useState)(null),[f,p]=(0,Z.useState)(null),[m,g]=(0,Z.useState)(!1),[_,v]=(0,Z.useState)(null),[y,O]=(0,Z.useState)(864e5),[k,A]=(0,Z.useState)(null),[j,M]=(0,Z.useState)(``),[N,P]=(0,Z.useState)(!1),[F,I]=(0,Z.useState)([]),[L,R]=(0,Z.useState)(`hosted`),[z,B]=(0,Z.useState)(!1),[ee,V]=(0,Z.useState)(!1);(0,Z.useEffect)(()=>{if(!c||u||f)return;let t=!1;return g(!0),v(null),Promise.all([Ba(e),Wa(e),za()]).then(async([n,r,i])=>{if(t)return;d(n),B(i);let a=i?await Ga().catch(()=>null):null;if(t)return;V(a?.publishing.allowed===!0);let o=i?await Ka(e).catch(()=>[]):[];if(t)return;let s=[...o,...r].find(e=>!e.revoked&&!e.expired);s&&p(s)}).catch(e=>{t||v(e instanceof Error?e.message:String(e))}).finally(()=>{t||g(!1)}),()=>{t=!0}},[c,u,f,e]);let H=()=>{d(null),p(null),v(null),g(!1),M(``),P(!1),I([]),V(!1)},te=async()=>{if(!(!u||m)){g(!0),v(null);try{p(await(L===`hosted`?Ua:Ha)(e,{expectedTranscriptId:u.transcriptId,expectedCutoffSeq:u.cutoffSeq,expectedMetadataUpdatedAt:u.metadataUpdatedAt,ttlMs:y,maxViews:k,description:j.trim()||void 0,includeToolActivities:N,attachmentIds:F}))}catch(e){v(e instanceof Error?e.message:String(e))}finally{g(!1)}}},U=async()=>{if(!(!f||m)){g(!0),v(null);try{let t=await Ba(e);d(t);let n=f.delivery===`hosted`?Va:La;p(await n(e,f.id,{expectedTranscriptId:t.transcriptId,expectedCutoffSeq:t.cutoffSeq,expectedMetadataUpdatedAt:t.metadataUpdatedAt}))}catch(e){v(e instanceof Error?e.message:String(e))}finally{g(!1)}}},W=async()=>{if(!(!f||m)){g(!0),v(null);try{f.delivery===`hosted`?await qa(e,f.id):await Ra(f.id),l(!1),H()}catch(e){v(e instanceof Error?e.message:String(e)),g(!1)}}};return(0,X.jsxs)(D,{open:c,onOpenChange:e=>{l(e),e||H()},children:[r?null:(0,X.jsx)(x,{asChild:!0,children:(0,X.jsx)(`button`,{type:`button`,className:`rounded-md p-2 text-fg-muted transition-colors hover:bg-surface-hover hover:text-fg`,title:a.share,"aria-label":a.share,children:(0,X.jsx)(ts,{className:`size-4`})})}),(0,X.jsxs)(w,{children:[(0,X.jsx)(b,{className:`xopc-dialog-overlay fixed inset-0 z-[70] bg-scrim backdrop-blur-[2px]`}),(0,X.jsxs)(T,{onCloseAutoFocus:e=>{r&&(e.preventDefault(),document.querySelector(`[data-chat-menu-trigger]`)?.focus())},className:J(`xopc-dialog-content fixed left-1/2 top-1/2 z-[71] flex h-[min(35rem,calc(100dvh-2rem))] w-[min(34rem,calc(100vw-2rem))] -translate-x-1/2 -translate-y-1/2 flex-col`,`overflow-hidden rounded-xl border border-edge bg-surface-overlay outline-none`),children:[(0,X.jsxs)(`div`,{className:`flex shrink-0 items-start justify-between gap-3 border-b border-edge px-4 py-3`,children:[(0,X.jsxs)(`div`,{children:[(0,X.jsx)(E,{className:`text-base font-semibold text-fg`,children:f?a.created:a.title}),(0,X.jsx)(S,{className:`mt-0.5 text-xs text-fg-muted`,children:f?a.createdHint:a.hint})]}),(0,X.jsx)(C,{asChild:!0,children:(0,X.jsx)(`button`,{type:`button`,className:`touch-target flex size-10 items-center justify-center rounded-lg text-fg-muted hover:bg-surface-hover hover:text-fg`,"aria-label":a.close,children:(0,X.jsx)(Kt,{className:`size-4`})})})]}),(0,X.jsxs)(`div`,{className:`min-h-0 flex-1 overflow-y-auto p-4`,children:[m&&!u&&!f?(0,X.jsxs)(`div`,{className:`flex items-center gap-2 text-sm text-fg-muted`,children:[(0,X.jsx)(Ye,{className:`size-4 animate-spin`}),a.loading]}):f?(0,X.jsxs)(`div`,{className:`space-y-4`,children:[(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`p`,{className:`text-sm font-medium text-fg`,children:f.fileName}),(0,X.jsx)(`p`,{className:`mt-1 text-xs text-fg-muted`,children:a.snapshotMessages.replace(`{{count}}`,String(f.messageCount))}),(0,X.jsxs)(`p`,{className:`mt-1 text-xs text-fg-subtle`,children:[f.delivery===`hosted`?a.hosted:a.local,` · `,a.revision.replace(`{{revision}}`,String(f.snapshotRevision)),` · `,a.sharedAttachments.replace(`{{count}}`,String(f.attachmentCount))]})]}),(0,X.jsx)(Ut,{shareUrl:f.shareUrl,lanUrl:f.lanUrl,reachability:f.reachability}),(0,X.jsx)(Wt,{reachability:f.reachability,reachabilityHint:f.reachabilityHint}),(0,X.jsxs)(`a`,{href:f.shareUrl,target:`_blank`,rel:`noreferrer`,className:`inline-flex items-center gap-1 text-sm font-medium text-accent hover:underline`,children:[a.open,(0,X.jsx)(xe,{className:`size-3.5`})]})]}):u?(0,X.jsxs)(`div`,{className:`space-y-4`,children:[(0,X.jsxs)(`div`,{className:`rounded-lg border border-edge bg-surface-inset p-3`,children:[(0,X.jsx)(`p`,{className:`truncate text-sm font-medium text-fg`,children:u.title}),(0,X.jsx)(`p`,{className:`mt-1 text-xs text-fg-muted`,children:a.snapshotMessages.replace(`{{count}}`,String(u.messageCount))}),(0,X.jsx)(`p`,{className:`mt-1 text-xs text-fg-subtle`,children:new Date(u.snapshotAt).toLocaleString(i===`zh`?`zh-CN`:`en-US`)})]}),(0,X.jsxs)(`details`,{className:`rounded-lg border border-edge`,children:[(0,X.jsx)(`summary`,{className:`touch-target cursor-pointer px-3 py-2.5 text-xs font-medium text-fg transition-colors hover:bg-surface-hover`,children:a.reviewContent}),(0,X.jsx)(`div`,{className:`max-h-64 space-y-3 overflow-y-auto border-t border-edge p-3`,children:u.messages.map(e=>(0,X.jsxs)(`div`,{className:`rounded-lg bg-surface-inset px-3 py-2`,children:[(0,X.jsx)(`p`,{className:`mb-1 text-[11px] font-semibold uppercase tracking-wide text-fg-subtle`,children:e.role===`user`?a.you:a.assistant}),(0,X.jsx)(`p`,{className:`whitespace-pre-wrap break-words text-sm leading-6 text-fg`,children:e.markdown})]},e.id))})]}),(0,X.jsxs)(`div`,{className:`flex gap-2 rounded-lg border border-accent/20 bg-accent-soft px-3 py-2.5 text-xs leading-5 text-fg-muted`,children:[(0,X.jsx)(Lt,{className:`mt-0.5 size-4 shrink-0 text-accent-fg`,"aria-hidden":`true`}),(0,X.jsx)(`span`,{children:a.scope})]}),(0,X.jsxs)(`label`,{className:`block space-y-1.5 text-xs font-medium text-fg`,children:[(0,X.jsx)(`span`,{children:a.delivery}),(0,X.jsxs)(oe,{value:L,disabled:m,onChange:e=>R(e.target.value),children:[(0,X.jsx)(G,{value:`hosted`,children:a.hosted}),(0,X.jsx)(G,{value:`local`,children:a.local})]})]}),L===`hosted`&&!z?(0,X.jsx)(Mo,{providerId:`xopc-share`,displayName:a.hosted,connected:!1,onConnected:()=>{B(!0),Ga().then(e=>V(e.publishing.allowed)).catch(()=>V(!1))}}):null,L===`hosted`&&z&&!ee?(0,X.jsx)(`p`,{className:`rounded-lg border border-warning/30 bg-warning-soft px-3 py-2 text-xs text-warning`,children:a.hostedDisabled}):null,u.toolActivities.length?(0,X.jsxs)(`label`,{className:`flex items-start gap-2 rounded-lg border border-edge bg-surface-inset px-3 py-2.5 text-sm text-fg`,children:[(0,X.jsx)(`input`,{type:`checkbox`,checked:N,disabled:m,onChange:e=>P(e.target.checked),className:`mt-0.5 size-4 rounded border-edge`}),(0,X.jsxs)(`span`,{children:[(0,X.jsx)(`span`,{className:`block font-medium`,children:a.includeTools.replace(`{{count}}`,String(u.toolActivities.length))}),(0,X.jsx)(`span`,{className:`mt-0.5 block text-xs text-fg-muted`,children:a.toolDisclosure})]})]}):null,u.attachmentCandidates.length?(0,X.jsxs)(`fieldset`,{className:`rounded-lg border border-edge bg-surface-inset px-3 py-2.5`,children:[(0,X.jsx)(`legend`,{className:`px-1 text-xs font-medium text-fg`,children:a.attachments}),(0,X.jsx)(`p`,{className:`mb-2 text-xs text-fg-muted`,children:a.attachmentDisclosure}),(0,X.jsx)(`div`,{className:`space-y-2`,children:u.attachmentCandidates.map(e=>(0,X.jsxs)(`label`,{className:`flex items-center gap-2 text-sm text-fg`,children:[(0,X.jsx)(`input`,{type:`checkbox`,checked:F.includes(e.id),disabled:m,onChange:t=>I(n=>t.target.checked?[...n,e.id]:n.filter(t=>t!==e.id)),className:`size-4 rounded border-edge`}),(0,X.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:e.fileName}),(0,X.jsx)(`span`,{className:`shrink-0 text-xs text-fg-subtle`,children:oD(e.size)})]},e.id))})]}):null,(0,X.jsxs)(`div`,{className:`grid gap-3 sm:grid-cols-2`,children:[(0,X.jsxs)(`label`,{className:`space-y-1.5 text-xs font-medium text-fg`,children:[(0,X.jsx)(`span`,{children:a.ttl}),(0,X.jsxs)(oe,{value:y,disabled:m,onChange:e=>O(Number(e.target.value)),children:[(0,X.jsx)(G,{value:36e5,children:a.oneHour}),(0,X.jsx)(G,{value:864e5,children:a.oneDay}),(0,X.jsx)(G,{value:6048e5,children:a.sevenDays}),(0,X.jsx)(G,{value:2592e6,children:a.thirtyDays})]})]}),(0,X.jsxs)(`label`,{className:`space-y-1.5 text-xs font-medium text-fg`,children:[(0,X.jsx)(`span`,{children:a.maxViews}),(0,X.jsxs)(oe,{value:k??`unlimited`,disabled:m,onChange:e=>A(e.target.value===`unlimited`?null:Number(e.target.value)),children:[(0,X.jsx)(G,{value:`unlimited`,children:a.unlimited}),(0,X.jsx)(G,{value:1,children:`1`}),(0,X.jsx)(G,{value:10,children:`10`}),(0,X.jsx)(G,{value:50,children:`50`})]})]})]}),(0,X.jsxs)(`label`,{className:`block space-y-1.5 text-xs font-medium text-fg`,children:[(0,X.jsx)(`span`,{children:a.description}),(0,X.jsx)(`input`,{value:j,disabled:m,onChange:e=>M(e.target.value),className:`h-10 w-full rounded-lg border border-edge bg-surface-inset px-3 text-sm font-normal text-fg outline-none focus-visible:border-accent/50 focus-visible:ring-2 focus-visible:ring-accent/20`})]}),(0,X.jsx)(`p`,{className:`text-xs text-amber-700 dark:text-amber-300`,children:a.publicWarning})]}):null,_?(0,X.jsx)(`p`,{className:`mt-3 text-sm text-red-600 dark:text-red-400`,children:_}):null]}),(0,X.jsx)(`div`,{className:`flex shrink-0 items-center justify-end gap-2 border-t border-edge bg-surface-overlay px-4 py-3`,children:f?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(ai,{type:`button`,variant:`ghost`,disabled:m,onClick:()=>p(null),children:a.newShare}),(0,X.jsxs)(ai,{type:`button`,variant:`ghost`,disabled:m,onClick:()=>void W(),children:[(0,X.jsx)(Vt,{className:`size-4`}),a.revoke]}),(0,X.jsxs)(ai,{type:`button`,disabled:m||f.delivery===`hosted`&&!ee,onClick:()=>void U(),children:[m?(0,X.jsx)(Ye,{className:`size-4 animate-spin`}):(0,X.jsx)(jt,{className:`size-4`}),a.refresh]})]}):(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(C,{asChild:!0,children:(0,X.jsx)(ai,{type:`button`,variant:`ghost`,children:a.cancel})}),(0,X.jsxs)(ai,{type:`button`,disabled:!u||m||u.messageCount===0||L===`hosted`&&(!z||!ee),onClick:()=>void te(),children:[m?(0,X.jsx)(Ye,{className:`size-4 animate-spin`}):null,a.create]})]})})]})]})]})}function oD(e){return e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:`${(e/(1024*1024)).toFixed(1)} MB`}var sD={share:`分享会话`,title:`分享会话`,hint:`创建当前会话的只读快照`,created:`分享已创建`,createdHint:`复制链接后即可发送给其他人`,close:`关闭`,loading:`正在准备预览…`,snapshotMessages:`当前快照包含 {{count}} 条公开消息`,scope:`默认仅包含用户与助手的可见文本;系统提示、推理、工具参数、命令文本、输出和路径始终不会公开。`,ttl:`有效期`,maxViews:`最大访问次数`,includeTools:`包含 {{count}} 条工具活动`,toolDisclosure:`只公开工具名称和成功/失败状态,不公开参数与结果。`,attachments:`附件`,attachmentDisclosure:`附件默认不公开,请逐个选择。`,oneHour:`1 小时`,oneDay:`24 小时`,sevenDays:`7 天`,thirtyDays:`30 天`,unlimited:`不限`,description:`说明(可选)`,publicWarning:`任何获得链接的人都可以查看这份快照。后续会话消息不会自动加入。`,cancel:`取消`,create:`创建分享`,revoke:`撤销分享`,refresh:`更新到当前会话`,open:`打开分享页面`,revision:`快照版本 {{revision}}`,sharedAttachments:`{{count}} 个附件`,newShare:`新建分享`,delivery:`分享方式`,hosted:`XOPC 托管分享`,local:`本机 Gateway 分享`,hostedDisabled:`管理员已暂停你的公网分享能力。已有托管链接当前不可访问,但仍可撤销。`,reviewContent:`检查将要公开的内容`,you:`你`,assistant:`助手`},cD={share:`Share conversation`,title:`Share conversation`,hint:`Create a read-only snapshot of this conversation`,created:`Share created`,createdHint:`Copy the link and send it to anyone`,close:`Close`,loading:`Preparing preview…`,snapshotMessages:`This snapshot contains {{count}} public messages`,scope:`Only visible user and assistant text is included by default. System prompts, reasoning, tool arguments, command text, output, and paths always stay private.`,ttl:`Expires after`,maxViews:`Maximum views`,includeTools:`Include {{count}} tool activities`,toolDisclosure:`Only tool names and success/failure states are shared; arguments and results stay private.`,attachments:`Attachments`,attachmentDisclosure:`Attachments stay private unless selected individually.`,oneHour:`1 hour`,oneDay:`24 hours`,sevenDays:`7 days`,thirtyDays:`30 days`,unlimited:`Unlimited`,description:`Description (optional)`,publicWarning:`Anyone with the link can view this snapshot. Later conversation messages are not added automatically.`,cancel:`Cancel`,create:`Create share`,revoke:`Revoke share`,refresh:`Update to current conversation`,open:`Open shared page`,revision:`Snapshot revision {{revision}}`,sharedAttachments:`{{count}} attachments`,newShare:`New share`,delivery:`Delivery`,hosted:`XOPC Hosted Share`,local:`Local Gateway Share`,hostedDisabled:`An administrator has paused public sharing for your account. Existing hosted links are unavailable, but can still be revoked.`,reviewContent:`Review the content to publish`,you:`You`,assistant:`Assistant`},lD=`(max-width: 767px)`,uD=(0,Z.memo)(function(e){let t=(0,Y.c)(137),{inline:n,chatHeadline:r,chatAgents:i,showChatAgentSelector:a,chatAgentId:o,onChatAgentChange:c,chatAgentDisabled:l,conversationId:u,hasMessages:d,workspacePath:f,userContextMode:p,canChangeWorkspace:m,workspaceDisabled:g,onWorkspaceChange:_,prepareTerminalSession:v,terminalDisabled:b,showContextControls:x,onFindOpen:S,projectId:C,context:w}=e,T=n!==void 0&&n,E=d!==void 0&&d,D=p===void 0?`enabled`:p,O=m!==void 0&&m,k=g!==void 0&&g,A=b!==void 0&&b,j=x===void 0||x,M=h(dD),{conversationId:N}=s(),P=N&&N!==`new`?decodeURIComponent(N):null,I;t[0]!==u||t[1]!==P?(I=u?.trim()||P,t[0]=u,t[1]=P,t[2]=I):I=t[2];let L=I,{data:R,error:z,mutate:B}=Hd(L??null,!1),ee=!z&&(!R||!!R.environment?.available),V;t[3]===L?V=t[4]:(V=e=>e.panes[L??`new`]?.open===!0,t[3]=L,t[4]=V);let H=oi(V),te;t[5]===M?te=t[6]:(te=y(M),t[5]=M,t[6]=te);let U=te,W=ef(fD),ne=$C(pD),re=Oo(mD),ie=Oo(hD),[ae,oe]=(0,Z.useState)(!1),se=(0,Z.useRef)(!1),[G,K]=(0,Z.useState)(!1),ce=tf(gD),le=ma(_D),q=ma(vD),de=window.electronAPI?.platform,fe=!!(j&&window.electronAPI?.terminal&&(L||v)),pe;t[7]!==L||t[8]!==ie||t[9]!==v||t[10]!==fe||t[11]!==A||t[12]!==G||t[13]!==re?(pe=()=>{if(!(!fe||A||G)){if(L){re(L);return}v&&(K(!0),v().then(e=>{e&&ie(e)}).finally(()=>K(!1)))}},t[7]=L,t[8]=ie,t[9]=v,t[10]=fe,t[11]=A,t[12]=G,t[13]=re,t[14]=pe):pe=t[14];let me=pe,he;t[15]!==L||t[16]!==E||t[17]!==ne?(he=()=>{if(!L||!E)return;let e=oi.getState().panes[L],t=$C.getState().pendingCreate?.parentConversationId===L||!!$C.getState().creatingRequests[L],n=e?.open===!0&&(e.activeId?.startsWith(`side:`)===!0||t);ne(L,!n)},t[15]=L,t[16]=E,t[17]=ne,t[18]=he):he=t[18];let ge=he,_e=No(lD),ve;t[19]!==ce||t[20]!==W?(ve=Kd({runtime:Gd(),sidebarCollapsed:W,mobileNavOpen:ce}),t[19]=ce,t[20]=W,t[21]=ve):ve=t[21];let ye=_e?!ce:ve.collapsedNewChatVisible,xe,Se;t[22]!==q||t[23]!==T?(xe=()=>{if(!T)return()=>q()},Se=[q,T],t[22]=q,t[23]=T,t[24]=xe,t[25]=Se):(xe=t[24],Se=t[25]),(0,Z.useLayoutEffect)(xe,Se);let Ce,we;t[26]!==me||t[27]!==fe?(Ce=()=>{if(!fe)return;let e=e=>{iD(e,de)&&(e.preventDefault(),me())};return window.addEventListener(`keydown`,e),window.addEventListener(`workspace-open-terminal`,me),()=>{window.removeEventListener(`keydown`,e),window.removeEventListener(`workspace-open-terminal`,me)}},we=[me,fe,de],t[26]=me,t[27]=fe,t[28]=Ce,t[29]=we):(Ce=t[28],we=t[29]),(0,Z.useEffect)(Ce,we);let Te,Ee;t[30]!==L||t[31]!==ge||t[32]!==E?(Te=()=>{if(!L||!E)return;let e=e=>{zo(e,de)&&(e.preventDefault(),ge())};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},Ee=[L,ge,E,de],t[30]=L,t[31]=ge,t[32]=E,t[33]=Te,t[34]=Ee):(Te=t[33],Ee=t[34]),(0,Z.useEffect)(Te,Ee);let De;t[35]!==o||t[36]!==U.sidebar.newTask||t[37]!==C||t[38]!==ye||t[39]!==D?(De=ye?(0,X.jsx)(ue,{to:Hr(C),state:{forceNewChat:!0,agentId:o,temporary:D===`temporary`},className:J(`inline-flex size-8 shrink-0 items-center justify-center rounded-lg bg-surface-panel text-sm font-medium leading-none text-fg transition-colors hover:bg-surface-hover`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent focus-visible:ring-offset-2 focus-visible:ring-offset-surface-panel`,la),title:U.sidebar.newTask,children:(0,X.jsx)(At,{className:`size-4 shrink-0 text-accent-fg`,strokeWidth:2,"aria-hidden":!0})}):null,t[35]=o,t[36]=U.sidebar.newTask,t[37]=C,t[38]=ye,t[39]=D,t[40]=De):De=t[40];let Oe=ye?`text-left md:text-center`:`text-left`,ke;t[41]===Oe?ke=t[42]:(ke=J(`min-w-0 flex-1 truncate text-[0.9375rem] font-semibold leading-5 tracking-tight text-fg`,Oe),t[41]=Oe,t[42]=ke);let Ae;t[43]!==r||t[44]!==ke?(Ae=(0,X.jsx)(`div`,{className:`flex w-full min-w-0 max-w-(--max-width-chat-frame) items-center gap-3 px-3 sm:px-5 xl:px-6`,children:(0,X.jsx)(`h1`,{className:ke,title:r,children:r})}),t[43]=r,t[44]=ke,t[45]=Ae):Ae=t[45];let je;t[46]===Symbol.for(`react.memo_cache_sentinel`)?(je=J(`flex min-w-0 max-w-[min(32rem,calc(100vw-8rem))] shrink-0 items-center justify-end gap-2`,la),t[46]=je):je=t[46];let Me;t[47]!==l||t[48]!==o||t[49]!==i||t[50]!==U.chat.agentNoMatches||t[51]!==U.chat.agentPlaceholder||t[52]!==U.chat.agentSearchPlaceholder||t[53]!==c||t[54]!==a?(Me=a?(0,X.jsx)(HE,{items:i,value:o,disabled:l,placeholder:U.chat.agentPlaceholder,searchPlaceholder:U.chat.agentSearchPlaceholder,noMatches:U.chat.agentNoMatches,compact:!0,contentSide:`bottom`,contentAlign:`end`,onChange:c}):null,t[47]=l,t[48]=o,t[49]=i,t[50]=U.chat.agentNoMatches,t[51]=U.chat.agentPlaceholder,t[52]=U.chat.agentSearchPlaceholder,t[53]=c,t[54]=a,t[55]=Me):Me=t[55];let Ne=M===`zh`?`聊天菜单`:`Chat menu`,Pe=M===`zh`?`聊天菜单`:`Chat menu`,Fe;t[56]===Symbol.for(`react.memo_cache_sentinel`)?(Fe=(0,X.jsx)(be,{className:`size-4`,"aria-hidden":!0}),t[56]=Fe):Fe=t[56];let Ie;t[57]!==Ne||t[58]!==Pe?(Ie=(0,X.jsx)(Xa,{asChild:!0,children:(0,X.jsx)(`button`,{type:`button`,"data-chat-menu-trigger":!0,"aria-label":Ne,title:Pe,className:`inline-flex size-8 shrink-0 items-center justify-center rounded-lg text-fg-muted transition-colors hover:bg-surface-hover data-[state=open]:bg-surface-hover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,children:Fe})}),t[57]=Ne,t[58]=Pe,t[59]=Ie):Ie=t[59];let Le;t[60]===S?Le=t[61]:(Le=e=>{se.current&&(e.preventDefault(),se.current=!1,document.querySelector(`[data-chat-menu-trigger]`)?.focus(),S?.())},t[60]=S,t[61]=Le);let Re=!E||!S,ze;t[62]===Symbol.for(`react.memo_cache_sentinel`)?(ze=()=>{se.current=!0},t[62]=ze):ze=t[62];let Be;t[63]===Symbol.for(`react.memo_cache_sentinel`)?(Be=(0,X.jsx)(Pt,{className:`size-4 text-fg-muted`,"aria-hidden":!0}),t[63]=Be):Be=t[63];let Ve;t[64]===U.chat.find.input?Ve=t[65]:(Ve=(0,X.jsx)(`span`,{className:`flex-1`,children:U.chat.find.input}),t[64]=U.chat.find.input,t[65]=Ve);let He;t[66]===Symbol.for(`react.memo_cache_sentinel`)?(He=(0,X.jsx)(`span`,{className:`text-xs text-fg-muted`,children:de===`darwin`?`⌘F`:`Ctrl+F`}),t[66]=He):He=t[66];let Ue;t[67]!==Re||t[68]!==Ve?(Ue=(0,X.jsxs)(Qa,{disabled:Re,onSelect:ze,className:`flex cursor-default items-center gap-3 rounded-lg px-3 py-2 text-fg outline-none data-[highlighted]:bg-surface-hover data-[disabled]:opacity-40`,children:[Be,Ve,He]}),t[67]=Re,t[68]=Ve,t[69]=Ue):Ue=t[69];let We=!L||!E,Ge;t[70]===Symbol.for(`react.memo_cache_sentinel`)?(Ge=()=>oe(!0),t[70]=Ge):Ge=t[70];let Ke;t[71]===Symbol.for(`react.memo_cache_sentinel`)?(Ke=(0,X.jsx)(F,{className:`size-4 text-fg-muted`,"aria-hidden":!0}),t[71]=Ke):Ke=t[71];let qe=M===`zh`?`分享对话`:`Share conversation`,Je;t[72]===qe?Je=t[73]:(Je=(0,X.jsx)(`span`,{children:qe}),t[72]=qe,t[73]=Je);let Ye;t[74]!==We||t[75]!==Je?(Ye=(0,X.jsxs)(Qa,{disabled:We,onSelect:Ge,className:`flex cursor-default items-center gap-3 rounded-lg px-3 py-2 text-fg outline-none data-[highlighted]:bg-surface-hover data-[disabled]:opacity-40`,children:[Ke,Je]}),t[74]=We,t[75]=Je,t[76]=Ye):Ye=t[76];let Xe;t[77]!==Le||t[78]!==Ue||t[79]!==Ye?(Xe=(0,X.jsx)(Za,{children:(0,X.jsxs)($a,{onCloseAutoFocus:Le,align:`end`,sideOffset:8,className:`workspace-menu z-[125] min-w-60 rounded-xl border border-edge bg-surface-overlay p-1.5 text-sm shadow-popover outline-none`,children:[Ue,Ye]})}),t[77]=Le,t[78]=Ue,t[79]=Ye,t[80]=Xe):Xe=t[80];let Ze;t[81]!==Ie||t[82]!==Xe?(Ze=(0,X.jsxs)(Ya,{modal:!1,children:[Ie,Xe]}),t[81]=Ie,t[82]=Xe,t[83]=Ze):Ze=t[83];let Qe;t[84]!==L||t[85]!==E||t[86]!==ae?(Qe=L&&E?(0,X.jsx)(aD,{conversationId:L,hideTrigger:!0,dialogOpen:ae,onDialogOpenChange:oe},`share:${L}`):null,t[84]=L,t[85]=E,t[86]=ae,t[87]=Qe):Qe=t[87];let $e;t[88]!==L||t[89]!==O||t[90]!==o||t[91]!==w||t[92]!==_||t[93]!==B||t[94]!==j||t[95]!==D||t[96]!==ee||t[97]!==k||t[98]!==f?($e=j?(0,X.jsx)(YE,{...w,agentId:o,environmentAction:O&&_?(0,X.jsx)($E,{directoryOnly:!0,conversationId:L,workspacePath:L?f:w?.project?.workspaceRoot,available:ee,canChangeWorkspace:!0,disabled:k,onWorkspaceChange:async e=>{await _(e),await B()}}):null,temporary:D===`temporary`,conversationId:L??null},`context:${L??w?.project?.id??`new`}`):null,t[88]=L,t[89]=O,t[90]=o,t[91]=w,t[92]=_,t[93]=B,t[94]=j,t[95]=D,t[96]=ee,t[97]=k,t[98]=f,t[99]=$e):$e=t[99];let et;t[100]!==j||t[101]!==H?(et=j&&!H?(0,X.jsx)(`span`,{"aria-hidden":!0,className:`mx-0.5 h-6 w-px shrink-0 bg-edge-subtle`}):null,t[100]=j,t[101]=H,t[102]=et):et=t[102];let tt;t[103]===L?tt=t[104]:(tt=L?(0,X.jsx)(XE,{conversationId:L}):null,t[103]=L,t[104]=tt);let nt;t[105]!==L||t[106]!==w?.project?.workspaceRoot||t[107]!==_||t[108]!==C||t[109]!==B||t[110]!==j||t[111]!==ee||t[112]!==k||t[113]!==H||t[114]!==f?(nt=j&&!H?(0,X.jsx)($E,{conversationId:L,workspacePath:L?f:w?.project?.workspaceRoot,available:ee,canChangeWorkspace:!1,disabled:k,onWorkspaceChange:async e=>{await _?.(e),await B()}},`workspace:${L??C}`):null,t[105]=L,t[106]=w?.project?.workspaceRoot,t[107]=_,t[108]=C,t[109]=B,t[110]=j,t[111]=ee,t[112]=k,t[113]=H,t[114]=f,t[115]=nt):nt=t[115];let rt;t[116]!==Me||t[117]!==Ze||t[118]!==Qe||t[119]!==$e||t[120]!==et||t[121]!==tt||t[122]!==nt?(rt=(0,X.jsxs)(`div`,{className:je,children:[Me,Ze,Qe,$e,et,tt,nt]}),t[116]=Me,t[117]=Ze,t[118]=Qe,t[119]=$e,t[120]=et,t[121]=tt,t[122]=nt,t[123]=rt):rt=t[123];let it;t[124]!==De||t[125]!==Ae||t[126]!==rt?(it={className:`bg-surface-panel`,startExtra:De,main:Ae,end:rt},t[124]=De,t[125]=Ae,t[126]=rt,t[127]=it):it=t[127];let at=it,ot,st;t[128]!==at||t[129]!==T||t[130]!==le?(ot=()=>{T||le(at)},st=[at,T,le],t[128]=at,t[129]=T,t[130]=le,t[131]=ot,t[132]=st):(ot=t[131],st=t[132]),(0,Z.useLayoutEffect)(ot,st);let ct;return t[133]!==at||t[134]!==T||t[135]!==M?(ct=T?(0,X.jsxs)(`header`,{"aria-label":M===`zh`?`聊天工具栏`:`Chat toolbar`,className:`flex min-h-14 shrink-0 items-center justify-between gap-2 border-b border-edge-subtle px-3 py-2`,children:[(0,X.jsx)(`div`,{className:`min-w-0 flex-1`,children:at.main}),at.end]}):null,t[133]=at,t[134]=T,t[135]=M,t[136]=ct):ct=t[136],ct});function dD(e){return e.language}function fD(e){return e.collapsed}function pD(e){return e.setOpen}function mD(e){return e.toggle}function hD(e){return e.open}function gD(e){return e.mobileNavOpen}function _D(e){return e.setPageHeader}function vD(e){return e.clearPageHeader}var yD=(0,Z.memo)(function(){let e=(0,Y.c)(13),t=h(bD),n;e[0]===t?n=e[1]:(n=y(t),e[0]=t,e[1]=n);let r=n,i=ti(xD),a=ti(SD);if(i===`idle`)return null;if(i===`error`&&a){let t;e[2]===a?t=e[3]:(t=(0,X.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:a}),e[2]=a,e[3]=t);let n;e[4]===Symbol.for(`react.memo_cache_sentinel`)?(n=J(`shrink-0 rounded-xl border border-red-200 bg-white px-2.5 py-1 text-xs font-medium text-red-700`,`hover:bg-red-50 dark:border-red-800 dark:bg-red-950/40 dark:text-red-300 dark:hover:bg-red-950/70`,ta.transition,ta.press,ta.focusRingPanel),e[4]=n):n=e[4];let i;e[5]===r.connection.reconnect?i=e[6]:(i=(0,X.jsx)(`button`,{type:`button`,className:n,onClick:CD,children:r.connection.reconnect}),e[5]=r.connection.reconnect,e[6]=i);let o;return e[7]!==t||e[8]!==i?(o=(0,X.jsxs)(`div`,{className:`flex items-center gap-2 border-b border-red-100 bg-red-50 px-4 py-2 text-sm text-red-600 dark:border-red-900/40 dark:bg-red-950/50 dark:text-red-400`,children:[t,i]}),e[7]=t,e[8]=i,e[9]=o):o=e[9],o}if(i===`connecting`||i===`reconnecting`){let t;e[10]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,X.jsx)(`span`,{className:`inline-block size-3 animate-spin rounded-full border-2 border-amber-500 border-t-transparent`,"aria-hidden":!0}),e[10]=t):t=e[10];let n=i===`reconnecting`?r.connection.reconnecting:r.connection.connecting,a;return e[11]===n?a=e[12]:(a=(0,X.jsxs)(`div`,{className:`flex items-center gap-2 border-b border-amber-100 bg-amber-50 px-4 py-2 text-sm text-amber-800 dark:border-amber-900/40 dark:bg-amber-950/50 dark:text-amber-200`,children:[t,(0,X.jsx)(`span`,{children:n})]}),e[11]=n,e[12]=a),a}return null});function bD(e){return e.language}function xD(e){return e.connectionState}function SD(e){return e.error}function CD(){return ei()}function wD(e,t){return Object.entries(t).reduce((e,[t,n])=>e.replaceAll(`{{${t}}}`,String(n)),e)}function TD(e){let t=(0,Y.c)(4),{status:n}=e;if(n===`completed`){let e;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,X.jsx)(`span`,{className:`mt-0.5 inline-flex size-4 shrink-0 items-center justify-center rounded-full bg-fg-muted text-surface-panel`,children:(0,X.jsx)(H,{className:`size-3`,strokeWidth:2.5,"aria-hidden":!0})}),t[0]=e):e=t[0],e}if(n===`in_progress`){let e;return t[1]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,X.jsx)(le,{className:`mt-0.5 size-4 shrink-0 text-accent`,strokeWidth:2,"aria-hidden":!0}),t[1]=e):e=t[1],e}if(n===`cancelled`){let e;return t[2]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,X.jsx)(Vo,{className:`mt-0.5 size-4 shrink-0 text-fg-disabled`,strokeWidth:1.75,"aria-hidden":!0}),t[2]=e):e=t[2],e}let r;return t[3]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,X.jsx)(fe,{className:`mt-0.5 size-4 shrink-0 text-fg-subtle`,strokeWidth:1.75,"aria-hidden":!0}),t[3]=r):r=t[3],r}function ED(e,t){return e?`${wD(e.files.length===1?t.filesChangedOne:t.filesChangedOther,{count:e.files.length})} · +${e.added} -${e.removed}`:null}function DD(e){let t=(0,Y.c)(61),{plan:n,changeSummary:r,isStreaming:i,labels:a}=e,o=n.currentIndex==null?void 0:n.items[n.currentIndex-1],s;t[0]===n.items?s=t[1]:(s=n.items.every(AD),t[0]=n.items,t[1]=s);let c=s,l=n.items.every(kD),u;t[2]!==a.completedProgress||t[3]!==n.completedCount||t[4]!==n.totalCount?(u=wD(a.completedProgress,{completed:n.completedCount,total:n.totalCount}),t[2]=a.completedProgress,t[3]=n.completedCount,t[4]=n.totalCount,t[5]=u):u=t[5];let d=u,f=a.ended;if(c)f=a.finished;else if(o){let e=n.currentIndex??1,r;t[6]!==a.stepProgress||t[7]!==n.totalCount||t[8]!==e?(r=wD(a.stepProgress,{current:e,total:n.totalCount}),t[6]=a.stepProgress,t[7]=n.totalCount,t[8]=e,t[9]=r):r=t[9],f=r}else!l&&i&&(f=a.planned);let p;t[10]!==r||t[11]!==a?(p=ED(r,a),t[10]=r,t[11]=a,t[12]=p):p=t[12];let m=p,h=o?.title,g;t[13]!==m||t[14]!==f||t[15]!==h?(g=[f,h,m].filter(Boolean),t[13]=m,t[14]=f,t[15]=h,t[16]=g):g=t[16];let _=g.join(` · `),v;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(v=J(`inline-flex min-h-9 min-w-0 max-w-full items-center gap-2 rounded-pill border border-edge-subtle bg-surface-overlay px-3 py-1.5 text-sm text-fg shadow-surface`,ta.transition,`hover:border-edge hover:text-accent-fg`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent focus-visible:ring-offset-2 focus-visible:ring-offset-surface-panel`),t[17]=v):v=t[17];let y=`${a.heading}: ${_}`,b;t[18]!==o||t[19]!==c?(b=c?(0,X.jsx)(H,{className:`size-4 shrink-0 text-fg-muted`,strokeWidth:2,"aria-hidden":!0}):o?(0,X.jsx)(le,{className:`size-4 shrink-0 text-accent`,strokeWidth:2,"aria-hidden":!0}):(0,X.jsx)(qe,{className:`size-4 shrink-0 text-fg-muted`,strokeWidth:1.75,"aria-hidden":!0}),t[18]=o,t[19]=c,t[20]=b):b=t[20];let x;t[21]===f?x=t[22]:(x=(0,X.jsx)(`span`,{className:`min-w-0 truncate`,children:f}),t[21]=f,t[22]=x);let S;t[23]===o?S=t[24]:(S=o?(0,X.jsxs)(`span`,{className:`min-w-0 truncate text-fg-muted`,children:[`· `,o.title]}):null,t[23]=o,t[24]=S);let C;t[25]===m?C=t[26]:(C=m?(0,X.jsxs)(`span`,{className:`hidden shrink-0 tabular-nums text-fg-subtle sm:inline`,children:[`· `,m]}):null,t[25]=m,t[26]=C);let w;t[27]===Symbol.for(`react.memo_cache_sentinel`)?(w=(0,X.jsx)(te,{className:`size-3.5 shrink-0 text-fg-subtle`,"aria-hidden":!0}),t[27]=w):w=t[27];let T;t[28]!==S||t[29]!==C||t[30]!==y||t[31]!==b||t[32]!==x?(T=(0,X.jsx)(di,{asChild:!0,children:(0,X.jsxs)(`button`,{type:`button`,className:v,"aria-label":y,children:[b,x,S,C,w]})}),t[28]=S,t[29]=C,t[30]=y,t[31]=b,t[32]=x,t[33]=T):T=t[33];let E;t[34]===Symbol.for(`react.memo_cache_sentinel`)?(E=(0,X.jsx)(qe,{className:`size-4 text-fg-muted`,strokeWidth:1.75,"aria-hidden":!0}),t[34]=E):E=t[34];let D;t[35]===a.heading?D=t[36]:(D=(0,X.jsxs)(`div`,{className:`flex items-center gap-2 text-sm font-medium text-fg`,children:[E,(0,X.jsx)(`span`,{children:a.heading})]}),t[35]=a.heading,t[36]=D);let O;t[37]===n.explanation?O=t[38]:(O=n.explanation?(0,X.jsx)(`p`,{className:`mt-1 line-clamp-2 text-xs leading-relaxed text-fg-muted`,children:n.explanation}):null,t[37]=n.explanation,t[38]=O);let k;t[39]!==D||t[40]!==O?(k=(0,X.jsxs)(`div`,{className:`min-w-0`,children:[D,O]}),t[39]=D,t[40]=O,t[41]=k):k=t[41];let A;t[42]===d?A=t[43]:(A=(0,X.jsx)(`span`,{className:`shrink-0 text-xs tabular-nums text-fg-subtle`,children:d}),t[42]=d,t[43]=A);let j;t[44]!==k||t[45]!==A?(j=(0,X.jsxs)(`div`,{className:`flex items-center justify-between gap-3 border-b border-edge-subtle px-4 py-3`,children:[k,A]}),t[44]=k,t[45]=A,t[46]=j):j=t[46];let M=a.heading,N;t[47]===n.items?N=t[48]:(N=n.items.map(OD),t[47]=n.items,t[48]=N);let P;t[49]!==a.heading||t[50]!==N?(P=(0,X.jsx)(`ol`,{className:`max-h-[min(22rem,55vh)] overflow-y-auto px-4 py-3`,"aria-label":M,children:N}),t[49]=a.heading,t[50]=N,t[51]=P):P=t[51];let F;t[52]===m?F=t[53]:(F=m?(0,X.jsx)(`div`,{className:`border-t border-edge-subtle px-4 py-2 text-right text-xs tabular-nums text-fg-subtle`,children:m}):null,t[52]=m,t[53]=F);let I;t[54]!==j||t[55]!==P||t[56]!==F?(I=(0,X.jsx)(si,{children:(0,X.jsxs)(ci,{side:`top`,align:`center`,sideOffset:8,collisionPadding:16,className:`z-[120] w-[min(28rem,calc(100vw-2rem))] overflow-hidden rounded-xl border border-edge bg-surface-overlay shadow-popover outline-none`,children:[j,P,F]})}),t[54]=j,t[55]=P,t[56]=F,t[57]=I):I=t[57];let L;return t[58]!==T||t[59]!==I?(L=(0,X.jsx)(`div`,{className:`mx-auto flex w-full max-w-80 justify-center pb-2 pt-1`,children:(0,X.jsxs)(li,{children:[T,I]})}),t[58]=T,t[59]=I,t[60]=L):L=t[60],L}function OD(e){return(0,X.jsxs)(`li`,{className:J(`flex gap-3 py-2 text-sm leading-relaxed text-fg-muted`,e.status===`in_progress`&&`font-medium text-fg`,e.status===`cancelled`&&`text-fg-disabled`),children:[(0,X.jsx)(TD,{status:e.status}),(0,X.jsx)(`span`,{className:`min-w-0 [overflow-wrap:anywhere]`,children:e.title})]},e.id)}function kD(e){return e.status===`completed`||e.status===`cancelled`}function AD(e){return e.status===`completed`}function jD(e){let t=LD(e.source,e.explanation,e.items.map(e=>({...e})));return t&&t.items.some(e=>e.status===`pending`||e.status===`in_progress`)?t:null}var MD=new Set([`pending`,`in_progress`,`completed`,`cancelled`]);function ND(e){return e&&typeof e==`object`&&!Array.isArray(e)?e:null}function PD(e){return e.trim().toLowerCase().replace(/-/g,`_`).split(`__`).at(-1)??``}function FD(e){let t=ND(e.details);return t&&Object.keys(t).length>0?t:Ih(e.result).details}function ID(e){let t=typeof e==`string`?e.trim():``;return MD.has(t)?t:null}function LD(e,t,n){if(n.length===0)return null;let r=n.findIndex(e=>e.status===`in_progress`);return{source:e,explanation:t,items:n,currentIndex:r>=0?r+1:void 0,completedCount:n.filter(e=>e.status===`completed`).length,totalCount:n.length}}function RD(e){if(!Array.isArray(e.plan))return null;let t=e.plan.flatMap((e,t)=>{let n=ND(e),r=typeof n?.id==`string`&&n.id.trim()?n.id.trim():`update-plan-${t}`,i=typeof n?.step==`string`?n.step.trim():``,a=ID(n?.status);return i&&a?[{id:r,title:i,status:a}]:[]});return LD(`update_plan`,typeof e.explanation==`string`&&e.explanation.trim()?e.explanation.trim():void 0,t)}function zD(e){return Array.isArray(e.items)?LD(`todo`,void 0,e.items.flatMap((e,t)=>{let n=ND(e),r=typeof n?.id==`string`&&n.id.trim()?n.id.trim():`todo-${t}`,i=typeof n?.content==`string`?n.content.trim():``,a=ID(n?.status);return i&&a?[{id:r,title:i,status:a}]:[]})):null}function BD(e){for(let t=e.length-1;t>=0;--t){let n=e[t];if(n.type!==`tool_use`||n.status===`error`)continue;let r=PD(n.name),i=FD(n);if(i){if(r===`update_plan`)return{found:!0,plan:RD(i)};if(r===`todo`)return{found:!0,plan:zD(i)}}}return{found:!1,plan:null}}function VD(e){return typeof e==`number`&&Number.isFinite(e)&&e>0?e:0}function HD(e){let t=new Set,n=0,r=0;for(let i of e){if(i.type!==`tool_use`||i.status===`error`||PD(i.name)!==`apply_patch`)continue;let e=FD(i);if(e){if(Array.isArray(e.files))for(let n of e.files)typeof n==`string`&&n.trim()&&t.add(n.trim());if(t.size===0&&Array.isArray(e.changes))for(let n of e.changes){let e=ND(n),r=typeof e?.moveTo==`string`?e.moveTo:typeof e?.path==`string`?e.path:``;r.trim()&&t.add(r.trim())}n+=VD(e.added),r+=VD(e.removed)}}return t.size>0||n>0||r>0?{files:[...t],added:n,removed:r}:null}function UD(e){for(let t=e.length-1;t>=0;--t){let n=e[t];if(n.role!==`assistant`)continue;let r=BD(n.content??[]);if(!r.found)continue;if(!r.plan||!r.plan.items.some(e=>e.status===`pending`||e.status===`in_progress`))return null;let i=e.slice(t).flatMap(e=>e.role===`assistant`?e.content??[]:[]);return{plan:r.plan,changeSummary:HD(i)}}return null}function WD(e,t){if(!t)return null;let n=-1;for(let t=e.length-1;t>=0;--t)if(e[t]?.role===`user`){n=t;break}return UD(e.slice(n+1))}function GD(e,t){return e.bottom>t.top&&e.top<t.bottom&&e.right>t.left&&e.left<t.right}function KD(e,t,n){let r=n.getBoundingClientRect(),i=t.getBoundingClientRect();if(!GD(e,{left:0,top:0,right:window.innerWidth,bottom:window.innerHeight})||!GD(i,r)||typeof t.animate!=`function`)return()=>{};let a=t.closest(`article`);a&&(a.style.animation=`none`);let o=t.getBoundingClientRect(),s=Math.max(-8,Math.min(8,e.left-o.left)),c=Math.max(-8,Math.min(8,e.top-o.top)),l;try{l=t.animate([{transform:`translate3d(${s}px, ${c}px, 0)`},{transform:`translate3d(0, 0, 0)`}],{duration:180,easing:`cubic-bezier(0.22, 1, 0.36, 1)`})}catch{return()=>{}}let u=!1,d,f=()=>{u||(u=!0,d!==void 0&&window.clearTimeout(d),n.removeEventListener(`scroll`,p),n.removeEventListener(`wheel`,f),n.removeEventListener(`touchstart`,f),window.removeEventListener(`resize`,f),l.cancel())},p=()=>{let e=t.getBoundingClientRect();(Math.abs(e.top-o.top)>1||Math.abs(e.left-o.left)>1)&&f()};return n.addEventListener(`scroll`,p,{passive:!0}),n.addEventListener(`wheel`,f,{passive:!0}),n.addEventListener(`touchstart`,f,{passive:!0}),window.addEventListener(`resize`,f),d=window.setTimeout(f,350),l.finished.then(f,f),f}function qD(e){let t=(0,Y.c)(12),{enabled:n,conversationId:r,messages:i,viewportRef:a}=e,o=(0,Z.useRef)(null),s=(0,Z.useRef)(null),c;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(c=()=>{o.current&&window.clearTimeout(o.current.timeout),o.current=null,s.current?.(),s.current=null},t[0]=c):c=t[0];let l=c,u;t[1]!==r||t[2]!==n?(u=(e,t,i)=>{if(l(),!n||!r||i.attachments.length>0||i.contextRefs.length>0||!i.text.trim()||document.visibilityState===`hidden`||window.matchMedia(`(prefers-reduced-motion: reduce)`).matches)return;let a={id:e.clientSubmissionId,source:{left:t.left,top:t.top,right:t.right,bottom:t.bottom},timeout:window.setTimeout(()=>{o.current===a&&(o.current=null)},500)};o.current=a},t[1]=r,t[2]=n,t[3]=u):u=t[3];let d=u,f,p;t[4]!==i||t[5]!==a?(f=()=>{let e=o.current,t=a.current;if(!e||!t||!i.some(t=>t.clientSubmissionId===e.id))return;window.clearTimeout(e.timeout),o.current=null;let n=t.querySelector(`[data-client-submission-id="${e.id}"]`)?.querySelector(`.chat-user-message`);n&&(s.current=KD(e.source,n,t))},p=[i,a],t[4]=i,t[5]=a,t[6]=f,t[7]=p):(f=t[6],p=t[7]),(0,Z.useLayoutEffect)(f,p);let m;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(m=()=>l,t[8]=m):m=t[8];let h;return t[9]!==r||t[10]!==n?(h=[l,r,n],t[9]=r,t[10]=n,t[11]=h):h=t[11],(0,Z.useEffect)(m,h),d}function JD(e){let t=(0,Y.c)(61),{open:n,query:r,activeIndex:i,resultCount:a,searching:o,truncated:s,limitedToLoaded:c,inputRef:l,labels:u,onQueryChange:d,onPrevious:f,onNext:p,onClose:m}=e,h=o!==void 0&&o,g=s!==void 0&&s,_=c!==void 0&&c;if(!n)return null;let v;t[0]===r?v=t[1]:(v=r.trim(),t[0]=r,t[1]=v);let y=!!v,b;t[2]!==i||t[3]!==y||t[4]!==u.noResults||t[5]!==u.resultCount||t[6]!==u.searching||t[7]!==a||t[8]!==h||t[9]!==g?(b=h?u.searching:y&&a===0?u.noResults:y?u.resultCount.replace(`{{current}}`,String(i+1)).replace(`{{total}}`,`${a}${g?`+`:``}`):``,t[2]=i,t[3]=y,t[4]=u.noResults,t[5]=u.resultCount,t[6]=u.searching,t[7]=a,t[8]=h,t[9]=g,t[10]=b):b=t[10];let x=b,S;t[11]!==x||t[12]!==y||t[13]!==u.loadedOnly||t[14]!==_?(S=_&&y?[x,u.loadedOnly].filter(Boolean).join(` · `):x,t[11]=x,t[12]=y,t[13]=u.loadedOnly,t[14]=_,t[15]=S):S=t[15];let C=S,w=h||a===0,T=u.input,E;t[16]===Symbol.for(`react.memo_cache_sentinel`)?(E=(0,X.jsx)(Pt,{className:`size-4 shrink-0 text-fg-muted`,strokeWidth:1.75,"aria-hidden":!0}),t[16]=E):E=t[16];let D;t[17]===d?D=t[18]:(D=e=>d(e.target.value),t[17]=d,t[18]=D);let O;t[19]!==p||t[20]!==f?(O=e=>{e.nativeEvent.isComposing||e.key===`Enter`&&(e.preventDefault(),e.shiftKey?f():p())},t[19]=p,t[20]=f,t[21]=O):O=t[21];let k;t[22]!==l||t[23]!==u.input||t[24]!==r||t[25]!==O||t[26]!==D?(k=(0,X.jsx)(`input`,{ref:l,value:r,type:`search`,autoComplete:`off`,spellCheck:!1,"aria-label":u.input,className:`h-12 min-w-0 flex-1 bg-transparent text-base text-fg outline-none placeholder:text-fg-subtle`,placeholder:u.input,onChange:D,onKeyDown:O}),t[22]=l,t[23]=u.input,t[24]=r,t[25]=O,t[26]=D,t[27]=k):k=t[27];let A;t[28]===h?A=t[29]:(A=h?(0,X.jsx)(Ye,{className:`size-4 shrink-0 animate-spin text-fg-muted`,"aria-hidden":!0}):null,t[28]=h,t[29]=A);let j;t[30]===Symbol.for(`react.memo_cache_sentinel`)?(j=J(`inline-flex size-11 shrink-0 items-center justify-center rounded-lg text-fg-muted hover:bg-surface-hover hover:text-fg`,ta.focusRingPanel,ta.press),t[30]=j):j=t[30];let M;t[31]===Symbol.for(`react.memo_cache_sentinel`)?(M=(0,X.jsx)(Kt,{className:`size-5`,strokeWidth:1.75,"aria-hidden":!0}),t[31]=M):M=t[31];let N;t[32]!==u.close||t[33]!==m?(N=(0,X.jsx)(`button`,{type:`button`,onClick:m,className:j,"aria-label":u.close,children:M}),t[32]=u.close,t[33]=m,t[34]=N):N=t[34];let P;t[35]!==k||t[36]!==A||t[37]!==N?(P=(0,X.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2 px-3`,children:[E,k,A,N]}),t[35]=k,t[36]=A,t[37]=N,t[38]=P):P=t[38];let F;t[39]===Symbol.for(`react.memo_cache_sentinel`)?(F=J(`inline-flex size-10 items-center justify-center rounded-lg text-fg-muted hover:bg-surface-hover hover:text-fg`,ta.focusRingPanel,ta.press,ta.disabled),t[39]=F):F=t[39];let I;t[40]===Symbol.for(`react.memo_cache_sentinel`)?(I=(0,X.jsx)(W,{className:`size-5`,strokeWidth:1.75,"aria-hidden":!0}),t[40]=I):I=t[40];let L;t[41]!==u.previous||t[42]!==w||t[43]!==f?(L=(0,X.jsx)(`button`,{type:`button`,disabled:w,onClick:f,className:F,"aria-label":u.previous,children:I}),t[41]=u.previous,t[42]=w,t[43]=f,t[44]=L):L=t[44];let R;t[45]===Symbol.for(`react.memo_cache_sentinel`)?(R=J(`inline-flex size-10 items-center justify-center rounded-lg text-fg-muted hover:bg-surface-hover hover:text-fg`,ta.focusRingPanel,ta.press,ta.disabled),t[45]=R):R=t[45];let z;t[46]===Symbol.for(`react.memo_cache_sentinel`)?(z=(0,X.jsx)(te,{className:`size-5`,strokeWidth:1.75,"aria-hidden":!0}),t[46]=z):z=t[46];let B;t[47]!==u.next||t[48]!==w||t[49]!==p?(B=(0,X.jsx)(`button`,{type:`button`,disabled:w,onClick:p,className:R,"aria-label":u.next,children:z}),t[47]=u.next,t[48]=w,t[49]=p,t[50]=B):B=t[50];let ee;t[51]===C?ee=t[52]:(ee=(0,X.jsx)(`span`,{className:`ml-auto px-2 text-sm tabular-nums text-fg-muted`,"aria-live":`polite`,"aria-atomic":`true`,children:C}),t[51]=C,t[52]=ee);let V;t[53]!==L||t[54]!==B||t[55]!==ee?(V=(0,X.jsxs)(`div`,{className:`flex h-11 items-center border-t border-edge-subtle px-1.5`,children:[L,B,ee]}),t[53]=L,t[54]=B,t[55]=ee,t[56]=V):V=t[56];let H;return t[57]!==u.input||t[58]!==P||t[59]!==V?(H=(0,X.jsxs)(`section`,{"data-chat-find-bar":!0,role:`search`,"aria-label":T,className:`absolute right-3 top-3 z-30 w-[min(25rem,calc(100%-1.5rem))] overflow-hidden rounded-xl border border-edge bg-surface-overlay shadow-popover`,children:[P,V]}),t[57]=u.input,t[58]=P,t[59]=V,t[60]=H):H=t[60],H}async function YD(e,t,n={}){let r=await f(p(`${n.taskId?`/api/tasks/${encodeURIComponent(n.taskId)}/conversation/find`:`/api/sessions/${encodeURIComponent(e)}/find`}?${new URLSearchParams({q:t,limit:`1000`})}`),{signal:n.signal});if(!r.ok)throw Error(`HTTP ${r.status}: ${r.statusText}`);let i=await r.json();if(i.ok!==!0||!Array.isArray(i.matches)||typeof i.total!=`number`)throw Error(`Invalid chat find response`);return{query:typeof i.query==`string`?i.query:t,total:i.total,truncated:i.truncated===!0,matches:i.matches.filter(e=>Number.isInteger(e?.displayIndex)&&e.displayIndex>=0&&Number.isInteger(e?.occurrence)&&e.occurrence>=0)}}var XD=`chat-find-match`,ZD=`chat-find-active`,QD=`chat-find-highlight-styles`;function $D(){let e=globalThis.CSS,t=globalThis.Highlight;return!e?.highlights||!t?null:{registry:e.highlights,Highlight:t}}function eO(){if(document.getElementById(QD))return;let e=document.createElement(`style`);e.id=QD,e.textContent=`
|
|
62
|
+
::highlight(${XD}) {
|
|
63
63
|
color: inherit;
|
|
64
64
|
background-color: color-mix(in srgb, var(--color-warning) 38%, transparent);
|
|
65
65
|
}
|
|
66
|
-
::highlight(${
|
|
66
|
+
::highlight(${ZD}) {
|
|
67
67
|
color: inherit;
|
|
68
68
|
background-color: color-mix(in srgb, var(--color-warning) 78%, transparent);
|
|
69
69
|
text-decoration: underline 2px var(--color-fg);
|
|
70
70
|
}
|
|
71
|
-
`,document.head.appendChild(e)}function QD(e){let t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_TEXT,{acceptNode(e){let t=e.parentElement;return!e.textContent||!t||t.closest(`button, [hidden], [aria-hidden="true"], .sr-only, script, style`)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT}}),r=n.nextNode();for(;r;)t.push(r),r=n.nextNode();return t}function $D(e,t,n){let r=e.find(e=>e.end>t),i=[...e].reverse().find(e=>e.start<n);if(!r||!i)return null;let a=document.createRange();return a.setStart(r.node,t-r.start),a.setEnd(i.node,n-i.start),a}function eO(e,t){let n=t.toLowerCase(),r=e.toLowerCase();if(!n)return[];let i=[],a=0;for(;a<=r.length-n.length;){let e=r.indexOf(n,a);if(e<0)break;i.push({start:e,end:e+n.length}),a=e+Math.max(n.length,1)}return i}function tO(e,t){let n=t.trim();if(!n)return[];let r=[],i=e.querySelectorAll(`[data-chat-message-index]`);for(let e of i){let t=e.dataset.chatMessageIndex,i=t?Number.parseInt(t,10):NaN;if(!Number.isFinite(i))continue;let a=0;for(let t of e.querySelectorAll(`[data-chat-find-text]`)){let e=QD(t),o=[],s=``;for(let t of e){let e=t.textContent??``,n=s.length;s+=e,o.push({node:t,start:n,end:s.length})}for(let e of eO(s,n)){let t=$D(o,e.start,e.end);t&&(r.push({messageIndex:i,occurrence:a,range:t}),a+=1)}}}return r}function nO(e,t){let n=XD();if(!n||(ZD(),n.registry.delete(qD),n.registry.delete(JD),e.length===0))return;n.registry.set(qD,new n.Highlight(...e.map(e=>e.range)));let r=e[t];r&&n.registry.set(JD,new n.Highlight(r.range))}function rO(){let e=XD();e?.registry.delete(qD),e?.registry.delete(JD)}function iO(e,t,n=96){let r=t.range.getBoundingClientRect(),i=e.getBoundingClientRect(),a=i.top+n,o=i.bottom-24;r.top>=a&&r.bottom<=o||(bC(e),e.scrollTo({top:Math.max(0,e.scrollTop+r.top-a),behavior:window.matchMedia?.(`(prefers-reduced-motion: reduce)`).matches?`auto`:`smooth`}))}function aO(e,t){return t===0?0:(e+t)%t}function oO(e){return`${e.displayIndex}:${e.occurrence}`}function sO(e,t){return e.length===t.length&&e.every((e,n)=>{let r=t[n];return r?.messageIndex===e.messageIndex&&r.occurrence===e.occurrence&&r.range.startContainer===e.range.startContainer&&r.range.startOffset===e.range.startOffset&&r.range.endContainer===e.range.endContainer&&r.range.endOffset===e.range.endOffset})}function cO(e){let t=(0,Y.c)(66),{conversationId:n,taskId:r,messages:i,displayOffset:a,viewportRef:o,onRevealDisplayIndex:s}=e,[c,l]=(0,Z.useState)(!1),[u,d]=(0,Z.useState)(``),f;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(f=[],t[0]=f):f=t[0];let[p,m]=(0,Z.useState)(f),h;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(h=[],t[1]=h):h=t[1];let[g,_]=(0,Z.useState)(h),[v,y]=(0,Z.useState)(!1),[b,x]=(0,Z.useState)(!1),[S,C]=(0,Z.useState)(!1),[w,T]=(0,Z.useState)(0),E=(0,Z.useRef)(null),D=(0,Z.useRef)(null),O=(0,Z.useRef)(n),k=(0,Z.useDeferredValue)(u),A;if(t[2]!==a||t[3]!==p||t[4]!==g){let e=new Map(g.map(pO));for(let t of p){let n={displayIndex:a+t.messageIndex,occurrence:t.occurrence};e.set(oO(n),n)}A=[...e.values()].sort(fO),t[2]=a,t[3]=p,t[4]=g,t[5]=A}else A=t[5];let j=A,M;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(M=()=>{requestAnimationFrame(()=>{E.current?.focus(),E.current?.select()})},t[6]=M):M=t[6];let N=M,P;t[7]===c?P=t[8]:(P=()=>{if(!c){D.current=document.activeElement instanceof HTMLElement?document.activeElement:null,l(!0);return}N()},t[7]=c,t[8]=P);let F=P,I,L;t[9]===c?(I=t[10],L=t[11]):(I=()=>{c&&N()},L=[N,c],t[9]=c,t[10]=I,t[11]=L),(0,Z.useLayoutEffect)(I,L);let R;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(R=()=>{l(!1),d(``),m([]),_([]),y(!1),x(!1),C(!1),T(0),rO(),D.current?.focus(),D.current=null},t[12]=R):R=t[12];let z=R,B;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(B=e=>{d(e),T(0)},t[13]=B):B=t[13];let ee=B,V;t[14]===j.length?V=t[15]:(V=e=>{T(t=>aO(t+e,j.length))},t[14]=j.length,t[15]=V);let H=V,te,U;t[16]!==H||t[17]!==c||t[18]!==F?(te=()=>{let e=e=>{let t=e.metaKey||e.ctrlKey;if(t&&!e.altKey&&!e.shiftKey&&e.key.toLowerCase()===`f`){if(document.querySelector(`[role="dialog"][data-state="open"]`))return;e.preventDefault(),F();return}if(c){if(t&&!e.altKey&&e.key.toLowerCase()===`g`){e.preventDefault(),H(e.shiftKey?-1:1);return}e.key===`Escape`&&(e.preventDefault(),z())}};return window.addEventListener(`keydown`,e,!0),()=>window.removeEventListener(`keydown`,e,!0)},U=[z,H,c,F],t[16]=H,t[17]=c,t[18]=F,t[19]=te,t[20]=U):(te=t[19],U=t[20]),(0,Z.useEffect)(te,U);let W;t[21]!==k||t[22]!==c||t[23]!==o?(W=()=>{let e=o.current;if(!c||!e||!k.trim()){m(dO),rO();return}let t=()=>{let t=tO(e,k);m(e=>sO(e,t)?e:t)};t();let n=null,r=new MutationObserver(()=>{n===null&&(n=requestAnimationFrame(()=>{n=null,t()}))});return r.observe(e,{childList:!0,subtree:!0,characterData:!0}),()=>{r.disconnect(),n!==null&&cancelAnimationFrame(n)}},t[21]=k,t[22]=c,t[23]=o,t[24]=W):W=t[24];let ne;t[25]!==k||t[26]!==i||t[27]!==c||t[28]!==o?(ne=[k,i,c,o],t[25]=k,t[26]=i,t[27]=c,t[28]=o,t[29]=ne):ne=t[29],(0,Z.useLayoutEffect)(W,ne);let re,ie;t[30]!==n||t[31]!==k||t[32]!==c||t[33]!==r?(re=()=>{let e=k.trim();if(!c||!n||!e){_([]),y(!1),x(!1),C(!1);return}let t=new AbortController;_([]),y(!1),x(!1),C(!0);let i=window.setTimeout(()=>{KD(n,e,{taskId:r,signal:t.signal}).then(e=>{_(e.matches),y(e.truncated)}).catch(e=>{e?.name!==`AbortError`&&(_([]),y(!1),x(!0))}).finally(()=>{t.signal.aborted||C(!1)})},150);return()=>{window.clearTimeout(i),t.abort()}},ie=[n,k,c,r],t[30]=n,t[31]=k,t[32]=c,t[33]=r,t[34]=re,t[35]=ie):(re=t[34],ie=t[35]),(0,Z.useEffect)(re,ie);let ae,oe;t[36]===j.length?(ae=t[37],oe=t[38]):(ae=()=>{T(e=>Math.min(e,Math.max(0,j.length-1)))},oe=[j.length],t[36]=j.length,t[37]=ae,t[38]=oe),(0,Z.useEffect)(ae,oe);let se,G;t[39]!==w||t[40]!==j||t[41]!==a||t[42]!==p||t[43]!==s||t[44]!==o?(se=()=>{let e=j[w],t=o.current;if(!t||!e){nO(p,-1);return}let n=e.displayIndex-a,r=p.findIndex(t=>t.messageIndex===n&&t.occurrence===e.occurrence);nO(p,r),r>=0?iO(t,p[r]):s(e.displayIndex)},G=[w,j,a,p,s,o],t[39]=w,t[40]=j,t[41]=a,t[42]=p,t[43]=s,t[44]=o,t[45]=se,t[46]=G):(se=t[45],G=t[46]),(0,Z.useLayoutEffect)(se,G);let K;t[47]===Symbol.for(`react.memo_cache_sentinel`)?(K=[],t[47]=K):K=t[47],(0,Z.useEffect)(lO,K);let ce,le;t[48]!==n||t[49]!==c?(ce=()=>{O.current!==n&&(O.current=n,c&&z())},le=[z,n,c],t[48]=n,t[49]=c,t[50]=ce,t[51]=le):(ce=t[50],le=t[51]),(0,Z.useEffect)(ce,le);let q,ue;t[52]===H?(q=t[53],ue=t[54]):(q=()=>H(-1),ue=()=>H(1),t[52]=H,t[53]=q,t[54]=ue);let de;return t[55]!==w||t[56]!==j.length||t[57]!==b||t[58]!==c||t[59]!==u||t[60]!==v||t[61]!==S||t[62]!==F||t[63]!==q||t[64]!==ue?(de={open:c,query:u,inputRef:E,activeIndex:w,resultCount:j.length,truncated:v,limitedToLoaded:b,searching:S,setQuery:ee,show:F,close:z,previous:q,next:ue},t[55]=w,t[56]=j.length,t[57]=b,t[58]=c,t[59]=u,t[60]=v,t[61]=S,t[62]=F,t[63]=q,t[64]=ue,t[65]=de):de=t[65],de}function lO(){return uO}function uO(){return rO()}function dO(e){return e.length===0?e:[]}function fO(e,t){return e.displayIndex-t.displayIndex||e.occurrence-t.occurrence}function pO(e){return[oO(e),e]}function mO(e){let t=String(e??``).trim();return!t||t===`new`?null:t}function hO(e){let t=String(e.streamConversationId??``).trim(),n=mO(e.routeConversationId);return!t||!n?!1:t===n}function gO(e){let t=mO(e.routeConversationId);return t?e.cacheConversationId===t:!1}function _O(e){let t=String(e.chatId??``).trim();if(!t)return!1;let n=mO(e.routeConversationId);return n?n===t:!1}function vO(e,t){return e?`new`:t??null}function yO(e,t){if(!(e||!t))return decodeURIComponent(t)}function bO(e){if(!e.viewConversationId||e.conversationId!==e.viewConversationId)return[];if(!e.streamingMsg)return e.messages;let t=e.messages[e.messages.length-1];if(t?.role===`assistant`&&e.streamingMsg.role===`assistant`){let n=Xn([t,e.streamingMsg]);return[...e.messages.slice(0,-1),...n]}return[...e.messages,e.streamingMsg]}function xO(e,t){let n=e[e.length-1];return n?.role!==`assistant`||n.turnId!==t?null:{messagesWithoutTail:e.slice(0,-1),tail:n}}function SO(e){e()}function CO(e,t){return!!(e&&(e.localDraft||e.configVersion!==void 0)&&t?.some(t=>t.id===e.model))}function wO(e){e.sendingRef.current=!1,e.streamingRef.current=!1}function TO(e){return e.isNewRoute?`creating-session`:e.sessionRoutePending||e.showSessionLoading||e.sessionContentLoading?`loading-history`:e.messageCount===0?`ready-empty`:`ready-conversation`}var EO=new Map;async function DO(e,t,n,r,i){let a=m.getState(),o=xr([a.baseUrl,a.conversationId,e,t]),s=xr({action:n,submission:r}),c=EO.get(o);if(c){if(c.signature!==s)throw Error(`An answer is already being submitted`);return(await c.promise).clone()}let l=OO(e,t,n,r,i).then(e=>{for(e.ok||EO.delete(o);EO.size>64;)EO.delete(EO.keys().next().value);return e},e=>{throw EO.delete(o),e});return EO.set(o,{signature:s,promise:l}),(await l).clone()}async function OO(e,t,n,r,i){let a=m.getState().conversationId,o=Rd(e,t,`submission`,i),s={schemaVersion:2,action:n,...r,expectedVersion:t},c=xr(s),l=await o.read();if(l&&l.signature!==c)throw Error(`The previous answer is awaiting confirmation. Retry the original answer before changing it.`);let u=l??{signature:c,body:{...s,idempotencyKey:crypto.randomUUID()}};if(await o.write(u),window.dispatchEvent(new CustomEvent(`clarification-submission-state`,{detail:{requestId:e,pending:!0}})),m.getState().conversationId!==a)throw Error(`Active Gateway changed`);let d=await f(p(`/api/clarifications/${encodeURIComponent(e)}/responses`),{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(u.body)});return(d.ok||d.status>=400&&d.status<500)&&(await o.write(void 0),window.dispatchEvent(new CustomEvent(`clarification-submission-state`,{detail:{requestId:e,pending:!1}})),d.ok&&await Rd(e,t,`draft`,i).write(void 0)),d}function kO(e,t){if(!e||typeof e!=`object`)return null;let n=e,r=n.clarification&&typeof n.clarification==`object`?n.clarification:n;if(r.status!==void 0&&r.status!==`open`||t&&typeof r.conversationId==`string`&&r.conversationId!==t)return null;let i=typeof r.id==`string`?r.id:r.requestId,a=r.question,o=r.kind===`approval`?`approval`:`input`;return typeof i!=`string`||!i.trim()||typeof a!=`string`||!a.trim()?null:{...Gn(r),requestId:i.trim(),conversationId:t,kind:o,question:a.trim(),version:typeof r.version==`number`?r.version:1,createdAt:typeof r.createdAt==`number`?r.createdAt:Date.now(),expiresAt:typeof r.expiresAt==`number`?r.expiresAt:void 0,serverTime:typeof n.serverTime==`number`?n.serverTime:void 0}}function AO(e){let{conversationId:t,decodedKey:n,conversationIdRef:r,sendingRef:i,streamingRef:a,modelSupportsThinking:o,thinkingLevel:s,shouldApplyStreamUpdate:c}=e,[l,u]=(0,Z.useState)(null),[d,m]=(0,Z.useState)(!1),[h,g]=(0,Z.useState)(null),_=(0,Z.useRef)(null),v=(0,Z.useRef)(0),y=(0,Z.useRef)(null),[b,x]=(0,Z.useState)([]),S=(0,Z.useRef)([]),[C,w]=(0,Z.useState)(null),[T,E]=(0,Z.useState)(null),D=(0,Z.useRef)(null),O=(0,Z.useRef)(-1);_.current=l,S.current=b,D.current=T;let k=(0,Z.useCallback)(e=>{if(!e||typeof e!=`object`)return;let t=e;if(t.conversationId!==r.current||typeof t.revision!=`number`||!Array.isArray(t.inputs)||t.revision<O.current)return;let n=Aw({inputs:t.inputs,activeRunId:t.activeRunId,preparation:t.preparation});O.current=t.revision,S.current=n,x(n),D.current&&!n.some(e=>e.id===D.current)&&E(null)},[r]),A=(0,Z.useCallback)(async e=>{if(await br(e))return;let t=await f(p(`/api/sessions/${encodeURIComponent(e)}/input-state`)).catch(()=>null);if(!t?.ok||r.current!==e)return;let n=await t.json().catch(()=>null);k(n?.payload)},[k,r]),j=(0,Z.useCallback)(async e=>{let t=++v.current;if(await br(e))return;let n=await f(p(`/api/sessions/${encodeURIComponent(e)}/clarification`)).catch(()=>null);if(!n?.ok||r.current!==e)return;let i=await n.json().catch(()=>null);t!==v.current||r.current!==e||(g(null),u(kO(i?.payload,e)),y.current=null)},[r]);(0,Z.useEffect)(()=>{O.current=-1,S.current=[],x([]),E(null),u(null),!(!t||t!==n)&&(A(t),j(t))},[n,j,A,t]),(0,Z.useEffect)(()=>{let e=e=>{let t=e.detail;k(t);let n=r.current;n&&t&&typeof t==`object`&&t.conversationId===n&&j(n)},t=e=>{let t=r.current;if(!t)return;let n=e.detail;if(n&&typeof n==`object`){let e=n.conversationId;if(typeof e==`string`&&e!==t)return}g(null),v.current++,u(kO(n,t)),y.current=null},n=()=>{let e=r.current;e&&(A(e),j(e))};return window.addEventListener(`session-input-state`,e),window.addEventListener(`clarification-updated`,t),window.addEventListener(`gateway-realtime-connected`,n),()=>{window.removeEventListener(`session-input-state`,e),window.removeEventListener(`clarification-updated`,t),window.removeEventListener(`gateway-realtime-connected`,n)}},[k,j,A,r]),(0,Z.useEffect)(()=>{if(!l?.expiresAt)return;let e=Math.max(0,l.expiresAt-Date.now())+250,t=window.setTimeout(()=>{let e=r.current;e&&j(e)},e);return()=>window.clearTimeout(t)},[l?.expiresAt,j,r]);let M=(0,Z.useCallback)(()=>{g(null),u(null)},[]),N=(0,Z.useCallback)(e=>{let t=String(e??``).trim();t&&r.current===t&&(g(null),u(null))},[r]),P=(0,Z.useCallback)(()=>{g(null),u(null)},[]),F=(0,Z.useCallback)(()=>{E(null)},[]),I=(0,Z.useCallback)(()=>{g(null),u(null),E(null)},[]),L=(0,Z.useCallback)(e=>t=>{c(e)&&(i.current=!1,a.current=!1,Mn.getState().setSessionFlags(e,{sending:!1,streaming:!1}),Mn.getState().setSessionProgress(e,null),g(null),v.current++,u({...t,conversationId:e}),y.current=null)},[c,i,a]),R=(0,Z.useCallback)(async(e,t,n,i,a)=>{let o=e.trim();if(!o&&!t?.length&&!n?.length)return;if(S.current.length>=10)throw Error(`At most 10 pending messages are allowed`);let s=r.current;if(!s)throw Error(`No active session`);let c=await tr(),l=await f(p(`/api/sessions/${encodeURIComponent(s)}/inputs`),{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({kind:`append`,expectedTranscriptId:await wr(s),configVersion:Mn.getState().sessions[s]?.configVersion,clientMessageId:crypto.randomUUID(),delivery:`next`,interrupt:a,input:{content:o||e,attachments:t?.length?t:void 0,contextRefs:n?.map(({refId:e,kind:t,sourceId:n,expectedVersion:r})=>({refId:e,kind:t,sourceId:n,expectedVersion:r})),appContext:i},origin:c})}),u=await l.json().catch(()=>null);if(!l.ok){let e=typeof u?.error==`string`?u.error:u?.error?.message;throw Error(e??`Message was not accepted`)}if(!u?.payload?.inputState)throw Error(`Gateway returned an invalid input state`);k(u.payload.inputState)},[k,r]),z=(0,Z.useCallback)(e=>{E(e)},[]),B=(0,Z.useCallback)(()=>{E(null)},[]),ee=(0,Z.useCallback)((e,t,n,i,a)=>{let c=t.trim(),l=S.current,u=l.findIndex(t=>t.id===e);if(u<0){E(null);return}if(!c&&!n?.length&&!a?.length){let t=r.current;t&&f(p(`/api/sessions/${encodeURIComponent(t)}/inputs/${encodeURIComponent(e)}?version=${l[u].version}`),{method:`DELETE`}).then(async e=>k((await e.json().catch(()=>null))?.payload)).catch(()=>{A(t)}),E(null);return}let d=o?i??s:`off`;E(null);let m=r.current;m&&f(p(`/api/sessions/${encodeURIComponent(m)}/inputs/${encodeURIComponent(e)}`),{method:`PATCH`,headers:{"Content-Type":`application/json`},body:JSON.stringify({version:l[u].version,content:c||t,attachments:n?.length?n:void 0,thinking:d,contextRefs:(a??[]).map(({refId:e,kind:t,sourceId:n,expectedVersion:r})=>({refId:e,kind:t,sourceId:n,expectedVersion:r}))})}).then(async e=>{let t=await e.json().catch(()=>null);k(t?.payload)}).catch(()=>{A(m)})},[k,o,A,r,s]),V=(0,Z.useCallback)(e=>{D.current===e&&E(null);let t=r.current,n=S.current.find(t=>t.id===e);!t||!n||f(p(`/api/sessions/${encodeURIComponent(t)}/inputs/${encodeURIComponent(e)}?version=${n.version}`),{method:`DELETE`}).then(async e=>{let t=await e.json().catch(()=>null);k(t?.payload)}).catch(()=>{A(t)})},[k,A,r]),H=(0,Z.useCallback)((e,t)=>{let n=S.current.filter(e=>e.status===`queued`),i=n.findIndex(t=>t.id===e);if(i<0)return;let a=t===`up`?i-1:i+1,o=r.current,s=n[i];!o||!s||a<0||a>=n.length||f(p(`/api/sessions/${encodeURIComponent(o)}/inputs/${encodeURIComponent(s.id)}`),{method:`PATCH`,headers:{"Content-Type":`application/json`},body:JSON.stringify({version:s.version,position:a})}).then(async e=>k((await e.json().catch(()=>null))?.payload)).catch(()=>{A(o)})},[k,A,r]),te=(0,Z.useCallback)((e,t)=>{let n=r.current,i=S.current[e],a=S.current[t],o=S.current.filter(e=>e.status===`queued`),s=a?o.findIndex(e=>e.id===a.id):-1;!n||i?.status!==`queued`||a?.status!==`queued`||s<0||f(p(`/api/sessions/${encodeURIComponent(n)}/inputs/${encodeURIComponent(i.id)}`),{method:`PATCH`,headers:{"Content-Type":`application/json`},body:JSON.stringify({version:i.version,position:s})}).then(async e=>{let t=await e.json().catch(()=>null);k(t?.payload)}).catch(()=>{A(n)})},[k,A,r]),U=(0,Z.useCallback)(async e=>{let t=r.current;if(!t)return;let n=S.current.find(t=>t.id===e);if(!(!n?.text.trim()||n.attachments?.length||n.contextRefs?.length)){w(e);try{let r=await tr(),i=await f(p(`/api/sessions/${encodeURIComponent(t)}/inputs`),{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({kind:`append`,clientMessageId:crypto.randomUUID(),expectedTranscriptId:await wr(t),configVersion:Mn.getState().sessions[t]?.configVersion,delivery:`steer`,interrupt:!1,input:{content:n.text.trim()},origin:r})});if(i.ok){let t=await i.json().catch(()=>null);k(t?.payload?.inputState),V(e)}}catch{}finally{w(null)}}},[k,V,r]),W=(0,Z.useCallback)(async(e,t)=>{let n=_.current;if(!n)return;let i=JSON.stringify([n.requestId,n.version,e,t]);y.current?.signature!==i&&(y.current={signature:i,idempotencyKey:crypto.randomUUID()});let a=y.current.idempotencyKey;m(!0),g(null);try{let i=n.schemaVersion===2?await DO(n.requestId,n.version,e,t,r.current??void 0):await f(p(`/api/clarifications/${encodeURIComponent(n.requestId)}/responses`),{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({action:e,...t,expectedVersion:n.version,idempotencyKey:a})});if(_.current?.requestId!==n.requestId)return;if(!i.ok){let e=await i.json().catch(()=>({}));g(e.error?.message??i.statusText??`Clarify failed`);let t=r.current;t&&(i.status===409||i.status===410)&&j(t);return}y.current=null,u(null),g(null)}catch(e){_.current?.requestId===n.requestId&&g(e instanceof Error?e.message:String(e))}finally{m(!1)}},[j,r]);return{clarifyPrompt:l,clarifySubmitting:d,clarifySubmitError:h,clarifyPromptRef:_,pendingFollowUps:b,pendingFollowUpsRef:S,steeringFollowUpId:C,editingFollowUpId:T,addPendingFollowUp:R,beginEditFollowUp:z,cancelEditFollowUp:B,commitEditFollowUp:ee,removePendingFollowUp:V,movePendingFollowUp:H,reorderPendingFollowUp:te,steerPendingFollowUp:U,submitClarifyAnswer:(0,Z.useCallback)(e=>W(`answer`,e),[W]),letAgentDecideClarification:(0,Z.useCallback)(()=>W(`agent_decide`),[W]),cancelClarification:(0,Z.useCallback)(()=>W(`cancel`),[W]),clearVisibleClarify:M,dismissClarify:P,dismissClarifyForSession:N,clearPendingFollowUps:F,dismissClarifyAndClearPending:I,makeOnClarifyRequest:L}}async function jO(e){let t=await br(e);if(t)return{agentId:t.creation.agentId.trim().toLowerCase(),projectId:t.creation.projectId?.trim()||null};let n=await dn(e);return{agentId:(n.routing?.agentId??n.agentId).trim().toLowerCase(),projectId:n.projectId?.trim()||null}}function MO(e){let t=(0,Y.c)(59),{navigate:n,conversationIdRef:r,conversationId:i,isNewRoute:a,locationState:o,locationSearch:s,personal:c}=e,l=c!==void 0&&c,u=m(IO),d;t[0]===i?d=t[1]:(d=i?.trim()??``,t[0]=i,t[1]=d);let f=d,p;t[2]===u?p=t[3]:(p=u?[`gateway-chat-agents`,u]:null,t[2]=u,t[3]=p);let h;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(h={revalidateOnFocus:!1},t[4]=h):h=t[4];let{data:g,mutate:_}=Lr(p,Jr,h),v;t[5]!==f||t[6]!==u?(v=u&&f?[`gateway-chat-session-agent`,u,f]:null,t[5]=f,t[6]=u,t[7]=v):v=t[7];let y;t[8]===f?y=t[9]:(y=()=>jO(f),t[8]=f,t[9]=y);let b;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(b={revalidateOnFocus:!1},t[10]=b):b=t[10];let{data:x}=Lr(v,y,b),S=x?.agentId??``,C,w;t[11]===_?(C=t[12],w=t[13]):(C=()=>{let e=e=>{qr(e.detail)||_()};return window.addEventListener(`config-reload`,e),()=>window.removeEventListener(`config-reload`,e)},w=[_],t[11]=_,t[12]=C,t[13]=w),(0,Z.useEffect)(C,w);let[T,E]=(0,Z.useState)(FO),D=(0,Z.useRef)(g??null),O;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(O=Pr().selectedAgentId??null,t[14]=O):O=t[14];let k=(0,Z.useRef)(O),A,j;t[15]===g?(A=t[16],j=t[17]):(A=()=>{D.current=g??null},j=[g],t[15]=g,t[16]=A,t[17]=j),(0,Z.useEffect)(A,j);let M,N;t[18]===T?(M=t[19],N=t[20]):(M=()=>{k.current=T},N=[T],t[18]=T,t[19]=M,t[20]=N),(0,Z.useEffect)(M,N);let P,F;t[21]===g?(P=t[22],F=t[23]):(P=()=>{if(!g)return;let e=new Set(g.items.map(PO));E(t=>t==null||t===``||!e.has(t)?g.defaultId:t)},F=[g],t[21]=g,t[22]=P,t[23]=F),(0,Z.useEffect)(P,F);let I;t[24]!==r||t[25]!==S?(I=()=>{if(r.current&&S)return S;let e=D.current,t=(k.current??``).trim().toLowerCase();if(!e)return t||void 0;let n=new Set(e.items.map(NO));return t&&n.has(t)?t:e.defaultId},t[24]=r,t[25]=S,t[26]=I):I=t[26];let L=I,R;t[27]!==r||t[28]!==S||t[29]!==x?.projectId||t[30]!==a||t[31]!==s||t[32]!==o||t[33]!==n?(R=e=>{let t=e.trim().toLowerCase(),i=r.current?S||k.current:null;k.current=t,E(t),Er(t),i!==t&&n(a?`/chat/new${s}`:Hr(x?.projectId),{replace:!1,state:{...a&&o&&typeof o==`object`?o:{},agentId:t,forceNewChat:!0}})},t[27]=r,t[28]=S,t[29]=x?.projectId,t[30]=a,t[31]=s,t[32]=o,t[33]=n,t[34]=R):R=t[34],x?.projectId;let z=R,B,ee;t[35]===z?(B=t[36],ee=t[37]):(B=()=>{let e=e=>{let t=e.detail?.agentId;typeof t!=`string`||!t.trim()||z(t)};return window.addEventListener(`xopc-set-chat-agent`,e),()=>window.removeEventListener(`xopc-set-chat-agent`,e)},ee=[z],t[35]=z,t[36]=B,t[37]=ee),(0,Z.useEffect)(B,ee);let V,H;t[38]!==i||t[39]!==S||t[40]!==l?(V=()=>{if(!i||l)return;let e=S;!e||k.current===e||(k.current=e,E(e),Er(e))},H=[S,i,l],t[38]=i,t[39]=S,t[40]=l,t[41]=V,t[42]=H):(V=t[41],H=t[42]),(0,Z.useLayoutEffect)(V,H);let te,U;t[43]!==i||t[44]!==x?(te=()=>{!i||!x||Mr(x.projectId)},U=[x,i],t[43]=i,t[44]=x,t[45]=te,t[46]=U):(te=t[45],U=t[46]),(0,Z.useLayoutEffect)(te,U);let W,ne;t[47]!==a||t[48]!==o?(W=()=>{if(!a)return;let e=o,t=typeof e?.agentId==`string`?e.agentId.trim().toLowerCase():``;t&&(k.current=t,E(t),Er(t))},ne=[a,o],t[47]=a,t[48]=o,t[49]=W,t[50]=ne):(W=t[49],ne=t[50]),(0,Z.useLayoutEffect)(W,ne);let re=S||T||g?.defaultId||`main`,ie=(g?.items.length??0)>1,ae=x?.projectId??null,oe;return t[51]!==g||t[52]!==re||t[53]!==z||t[54]!==L||t[55]!==ie||t[56]!==ae||t[57]!==u?(oe={token:u,chatAgentsData:g,resolveAgentIdForPost:L,onChatAgentChange:z,displayAgentId:re,showChatAgentSelector:ie,currentSessionProjectId:ae},t[51]=g,t[52]=re,t[53]=z,t[54]=L,t[55]=ie,t[56]=ae,t[57]=u,t[58]=oe):oe=t[58],oe}function NO(e){return e.id}function PO(e){return e.id}function FO(){return Pr().selectedAgentId??null}function IO(e){return e.conversationId}async function LO(e){let t=await e.sessionMgr.createSession(e);return{kind:`create`,conversationId:t.key,session:t}}var RO=new Map,zO=0;function BO(e){let t=m.getState(),n=Dr(t.baseUrl,{agentId:e.agentId?.trim()||`main`,projectId:e.projectId??null}),r=JSON.stringify([n,t.conversationId,e.forceNew===!0,e.temporary===!0,e.executionMode,e.search]),i=RO.get(r);if(i)return i.target.opts=e,i.target.generation=++zO,i.promise;let a={opts:e,generation:++zO},o=e=>{if(a.generation!==zO)return;let t=a.opts;!t.routeConversationId&&oi.getState().scope===`new`&&oi.getState().migrateScope(`new`,e),t.onOpened(e),(t.routeConversationId?.trim()||null)!==e&&t.navigateToSession(e,t.replaceNavigate??!1,t.search)},s=(async()=>{let t=e.agentId??void 0,{conversationId:n}=await LO({sessionMgr:e.sessionMgr,agentId:t?.trim()||`main`,projectId:e.projectId,currentConversationId:e.currentConversationId,forceNew:e.forceNew,temporary:e.temporary,initialAgentConfig:e.initialAgentConfig,executionMode:e.executionMode});return o(n),n})().finally(()=>{RO.delete(r)});return RO.set(r,{promise:s,target:a}),s}var VO={current:null},HO={current:null};function UO(e){return!!(e&&typeof e==`object`&&e.forceNewChat===!0)}function WO(e){let t=c(),{conversationId:n}=s(),r=!e&&t.pathname.endsWith(`/new`),i=r&&UO(t.state),a=e??yO(r,n),o=vO(r,a),l=mO(o),u=r?null:a??null,d=(0,Z.useRef)(o);return d.current=o,VO.current=u,!r&&a&&(HO.current=a),(0,Z.useLayoutEffect)(()=>{Mn.getState().focusedConversationId!==u&&Mn.getState().setFocusedConversationId(u)},[u]),{isNewRoute:r,forceNewChat:i,decodedKey:a,routedConversationId:o,viewConversationId:l,routedFocusedConversationId:u,routeConversationIdRef:d,locationKey:t.key,locationSearch:t.search,locationState:t.state}}var GO={get current(){return HO.current}},KO={get current(){return VO.current},set current(e){VO.current=e,Mn.getState().setFocusedConversationId(e)}};function qO(e){let{token:t,isNewRoute:n,forceNewChat:r,temporary:i=!1,requestedAgentId:a,decodedKey:o,locationKey:s,locationSearch:c,sessionMgrRef:l,resolveAgentIdForPost:u,navigateToSession:d,loadSessionById:f,tryResumeAgentRun:p,restoreLiveCacheIfNeeded:h,adoptEmptySession:g,applyAgentConfig:_,patchInitUi:v}=e,y=(0,Z.useRef)(0),b=m(e=>e.baseUrl),[x,S]=(0,Z.useState)(null),C=n?c:``,w=n?`new:${s}`:o?`session:${o}`:`fallback:${s}`,T=(0,Z.useRef)({isNewRoute:n,forceNewChat:r,temporary:i,requestedAgentId:a,decodedKey:o,newRouteLocationSearch:C});T.current={isNewRoute:n,forceNewChat:r,temporary:i,requestedAgentId:a,decodedKey:o,newRouteLocationSearch:C};let E=(0,Z.useRef)({sessionMgrRef:l,resolveAgentIdForPost:u,navigateToSession:d,loadSessionById:f,tryResumeAgentRun:p,restoreLiveCacheIfNeeded:h,adoptEmptySession:g,applyAgentConfig:_,patchInitUi:v});return E.current={sessionMgrRef:l,resolveAgentIdForPost:u,navigateToSession:d,loadSessionById:f,tryResumeAgentRun:p,restoreLiveCacheIfNeeded:h,adoptEmptySession:g,applyAgentConfig:_,patchInitUi:v},(0,Z.useEffect)(()=>{let e=T.current,n=E.current;if(!t){n.patchInitUi({loading:!1});return}let r=++y.current,i=!1,a=()=>!i&&r===y.current,o=e=>{a()&&n.sessionMgrRef.current.loadSessionAgentConfig(e).then(t=>{a()&&n.applyAgentConfig(e,t)}).catch(()=>{})},s=async()=>{if(!a())return Promise.resolve();let r=Pr(),i=n.resolveAgentIdForPost(),s=kr({origin:`web-route`,project:Wr(e.newRouteLocationSearch),agentId:e.requestedAgentId??i,forceNew:e.forceNewChat,temporary:e.temporary},{defaultAgentId:i??`main`,selectedAgentId:r.selectedAgentId,lastChatScope:r.lastChatScope}),c=s.projectId?await cn(s.projectId):null;if(!a())return;!e.requestedAgentId&&c?.defaultAgentId&&(s.agentId=c.defaultAgentId);let l=Nr(r,s.agentId),u=(t,r)=>BO({sessionMgr:n.sessionMgrRef.current,agentId:s.agentId,currentConversationId:GO.current,routeConversationId:null,forceNew:s.forceNew,temporary:s.temporary,projectId:s.projectId,executionMode:t,initialAgentConfig:r??(l?{model:l.modelRef,...l.thinkingLevel?{thinkingLevel:l.thinkingLevel}:{}}:void 0),navigateToSession:(...e)=>{a()&&n.navigateToSession(...e)},replaceNavigate:!0,search:Rr(e.newRouteLocationSearch),onOpened:e=>{a()&&(n.adoptEmptySession(e,null),o(e))}});if(c?.workspaceRoot?.trim()){S({requestKey:w,token:t,baseUrl:b,project:c,agentId:s.agentId,temporary:s.temporary,create:(e,t)=>a()?u(e,t):Promise.reject(Error(`New chat request changed`))});return}await u()},c=(e,t)=>{if(!a())return Promise.resolve();n.restoreLiveCacheIfNeeded(e);let r=Vn(e)?.messages??t??_r(e);return n.tryResumeAgentRun(e,r)},l=e=>a()?Vn(e)?.historyStatus===`ready`?(o(e),c(e,_r(e))):n.loadSessionById(e,0).then(t=>{if(a())return c(e,t??_r(e))}):Promise.resolve(),u=()=>a()?n.sessionMgrRef.current.loadSessions().then(e=>{if(!a())return;let t=e.filter(e=>(e.messageCount??0)>0)[0]??e[0];if(t)return a()?n.loadSessionById(t.key,0).then(e=>{if(!a())return;n.restoreLiveCacheIfNeeded(t.key);let r=Vn(t.key)?.messages??e??_r(t.key);return n.sessionMgrRef.current.parseSessionFromHash()||n.navigateToSession(t.key,!0),n.tryResumeAgentRun(t.key,r)}):void 0;if(!a())return;let r=n.resolveAgentIdForPost();return BO({sessionMgr:n.sessionMgrRef.current,agentId:r,currentConversationId:null,routeConversationId:null,navigateToSession:n.navigateToSession,onOpened:e=>{n.adoptEmptySession(e,null),o(e)}}).then(()=>void 0)}):Promise.resolve();return(()=>{let t=e.decodedKey===void 0&&!e.isNewRoute;n.patchInitUi({loading:t,error:null}),(e.isNewRoute?s():e.decodedKey?l(e.decodedKey):u()).then(()=>{a()&&n.patchInitUi({loading:!1})}).catch(e=>{i?a()&&n.patchInitUi({loading:!1}):n.patchInitUi({error:e instanceof Error?e.message:`Chat init failed`,loading:!1})})})(),()=>{i=!0}},[t,b,w]),n&&x?.requestKey===w&&x.token===t&&x.baseUrl===b?x:null}function JO(e){let t=m(e=>e.conversationId),n=m(e=>e.baseUrl),[r,i]=(0,Z.useState)(null),{data:a,error:o}=Lr(e?[`prepared-session-model`,n,t,e.create]:null,async()=>{let t=Nr(Pr(),e.agentId),[n,r]=await Promise.all([ni(),t?.modelRef??ii(e.agentId).then(e=>e.config.models.chat.primary)]),i=n.filter(e=>e.id===r||e.id.endsWith(`/${r}`)),a=n.find(e=>e.id===r)??(i.length===1?i[0]:void 0);return{models:n,selection:{model:a?.id??r,thinkingLevel:a?.thinking?gs(a.thinking,t?.thinkingLevel,t?.thinkingByModel?.[a.id]):t?.thinkingLevel??`medium`}}},{revalidateOnFocus:!1}),s=r?.preparation===e?r?.selection:a?.selection,c=a?.models.find(e=>e.id===s?.model),l=!!(s?.model&&c),u=r?.preparation===e,d=(0,Z.useRef)({preparation:e,selection:s,ready:l,explicitlySelected:u});d.current={preparation:e,selection:s,ready:l,explicitlySelected:u};let f=(0,Z.useMemo)(()=>e&&{...e,create:async t=>{let n=d.current;if(n.preparation!==e||!n.ready||!n.selection)throw Error(`Model configuration is not ready`);let r=n.selection,i=await e.create(t,r);return n.explicitlySelected&&Ar(e.agentId,{modelRef:r.model,thinkingLevel:r.thinkingLevel}),i}},[e]),p=async(t,n)=>{if(!e||!a)throw Error(`Model configuration is not ready`);let r=a.models.find(e=>e.id===t);if(!r)throw Error(`Model is unavailable`);let o=Nr(Pr(),e.agentId)?.thinkingByModel?.[t],c=r.thinking?gs(r.thinking,n??s?.thinkingLevel,n===void 0?o:void 0):n??s?.thinkingLevel??`medium`;i({preparation:e,selection:{model:t,thinkingLevel:c}})};return{preparation:f,model:s?.model??``,thinkingLevel:s?.thinkingLevel??`medium`,modelSupportsThinking:!!c?.reasoning,ready:l,error:o,onModelChange:e=>p(e),onThinkingChange:e=>p(s?.model??``,e)}}async function YO(e){let t=e.trim();if(!t)return!1;try{return!!(await ni()).find(e=>e.id===t)?.reasoning}catch{return!1}}function XO(e){let{sessionMgrRef:t,routeConversationIdRef:n,sendingRef:r,streamingRef:i,loadingSessionRef:a,messagesLenRef:o,thinkingSupportGenRef:s,navigateToSession:c,resolveAgentIdForPost:l,detachForNewConversation:u,conversationId:d,sessionAgentId:f,currentProjectId:p,taskId:m,hasMore:h}=e,g=()=>Mn.getState(),_=(0,Z.useRef)(Promise.resolve(void 0)),v=(0,Z.useRef)(null),y=(0,Z.useRef)(0),b=(0,Z.useCallback)(e=>{let t=g().focusedConversationId;if(!e.trim())return++s.current===s.current&&t&&g().patchSessionMeta(t,{modelSupportsThinking:!1}),Promise.resolve();let n=++s.current;return YO(e).then(t=>{if(n!==s.current)return;let r=g().focusedConversationId;r&&g().sessions[r]?.model===e&&g().patchSessionMeta(r,{modelSupportsThinking:t})})},[s]),x=(0,Z.useCallback)(async e=>{try{let n=await t.current.loadSessionAgentConfig(e);Hn(e,n),b(n.model)}catch{}},[t,b]),S=(0,Z.useCallback)(()=>{let e=g().focusedConversationId;if(!e||(g().sessions[e]?.name)?.trim())return;let n=++y.current,r=[700,900,900,1e3,1e3],i=a=>{a>=5||n===y.current&&g().focusedConversationId===e&&(g().sessions[e]?.name?.trim()||window.setTimeout(()=>{n===y.current&&g().focusedConversationId===e&&(g().sessions[e]?.name?.trim()||t.current.fetchSessionName(e).then(t=>{if(n===y.current){if(t){g().patchSessionMeta(e,{name:t});return}i(a+1)}}).catch(()=>{i(a+1)}))},r[a]??900))};i(0)},[t]),C=(0,Z.useCallback)(e=>_O({chatId:e,routeConversationId:n.current}),[n]),w=(0,Z.useCallback)((e,t,n)=>{let r=g().sessions[e];if(n&&r?.messages!==n.messages&&!gn(r))return!1;let i=t.hasMore&&vr(r?.messages??[],t.messages)>0;return g().mergeCommittedFromServer(e,t.messages,t.hasMore),t.name!==void 0&&g().patchSessionMeta(e,{name:t.name||null}),C(e)&&(i||(v.current=t.nextBeforeCursor??null)),!0},[C]),T=(0,Z.useCallback)(async(e,r=0,i)=>{let o=async(e,r,i)=>{let s=r===0&&!i;a.current=!0;let u=s&&gr(g().sessions[e]?.historyStatus);u&&g().setSessionHistoryStatus(e,`loading`);try{let n={messages:g().sessions[e]?.messages},{messages:a,hasMore:o,name:c,nextBeforeCursor:l}=await t.current.loadSession(e,r,i,m,n.messages);if(s){if(!w(e,{messages:a,hasMore:o,name:c,nextBeforeCursor:l},n))return g().sessions[e]?.messages;if(!C(e))return a;let r=await t.current.loadSessionAgentConfig(e);return C(e)?(Hn(e,r),b(r.model),a):a}if(v.current=l??null,!C(e))return;g().prependHistoryMessages(e,a,o);return}catch(a){if(r===0&&!i){v.current=null;let r=a instanceof Error?a.message:`Failed to load session`;g().setShellError(/^HTTP 404\b/.test(r)?JSON.stringify(Kn(r)):`Failed to load session`);let i=mO(n.current);if(i&&i===e)return;let s=await t.current.loadSessions().catch(()=>[]),u=s.filter(e=>(e.messageCount??0)>0)[0]??s[0];if(u)return c(u.key,!0),await o(u.key,0,null);{v.current=null;let e=l();BO({sessionMgr:t.current,agentId:e,currentConversationId:null,routeConversationId:null,navigateToSession:c,replaceNavigate:!0,onOpened:e=>{g().setCommittedSnapshot(e,{messages:[],hasMore:!1,name:null}),x(e)}})}}return}finally{a.current=!1,u&&g().sessions[e]?.historyStatus===`loading`&&g().setSessionHistoryStatus(e,`ready`)}},s=_.current,u,d=new Promise(e=>{u=e});_.current=s.then(()=>d),await s;try{return await o(e,r,i)}finally{u()}},[n,C,r,i,a,c,b,l,t,m,w]),E=(0,Z.useCallback)(async()=>{let e=g().focusedConversationId;if(!(!e||g().loadingMore||!h)){g().setLoadingMore(!0);try{await T(e,o.current,v.current)}finally{g().setLoadingMore(!1)}}},[h,T,o]),D=(0,Z.useCallback)(async(e,n)=>{if(!d)throw Error(`No active session`);let r=g().sessions[d];if(r?.modelConfigSaving)throw Error(`Model configuration is being saved`);if(!(r?.model===e&&n!==void 0&&r.thinkingLevel===n)){g().patchSessionMeta(d,{modelConfigSaving:!0});try{if(g().setShellError(null),n===void 0){let t=(await ni()).find(t=>t.id===e);if(t?.thinking){let i=Nr(Pr(),f)?.thinkingByModel?.[e];n=gs(t.thinking,r?.thinkingLevel,i)}}let i=m?await t.current.patchTaskConversationModel(m,e,n,r?.configVersion):await t.current.patchSessionAgentConfig(d,{model:e,thinkingLevel:n,configVersion:r?.configVersion});Hn(d,i),Ar(f,{modelRef:i.model,thinkingLevel:i.thinkingLevel}),i.model!==r?.model&&b(i.model)}catch(e){let n=e instanceof Error?e.message:`Failed to update model configuration`;g().setShellError(n);let r=await t.current.loadSessionAgentConfig(d).catch(()=>null);throw r&&Hn(d,r),e}finally{g().patchSessionMeta(d,{modelConfigSaving:!1})}}},[d,f,m,t,b]);return{refreshModelThinkingSupport:b,pollSessionNameAfterTurn:S,applyLoadedSessionSnapshot:w,loadSessionById:T,loadMoreMessages:E,onSessionModelChange:D,onSessionThinkingLevelChange:(0,Z.useCallback)(async e=>{let t=d?g().sessions[d]?.model:void 0;t&&await D(t,e)},[d,D]),onSessionWorkingDirectoryChange:(0,Z.useCallback)(async e=>{let n=e.trim();if(!(!d||!n))try{g().setShellError(null),await t.current.patchSessionAgentConfig(d,{workingDirectory:n}),await x(d)}catch(e){throw g().setShellError(e instanceof Error?e.message:`Failed to update working directory`),e}},[x,d,t]),createNewSession:(0,Z.useCallback)(async e=>{g().setShellError(null);let n=l(),r=Nr(Pr(),n??`main`);await BO({sessionMgr:t.current,agentId:n,currentConversationId:d,routeConversationId:d,forceNew:e?.forceNew,temporary:e?.temporary,executionMode:e?.executionMode,projectId:e?.projectId===void 0?p:e.projectId,initialAgentConfig:r?{model:r.modelRef,...r.thinkingLevel?{thinkingLevel:r.thinkingLevel}:{}}:void 0,navigateToSession:c,onOpened:e=>{u(),v.current=null,g().setCommittedSnapshot(e,{messages:[],hasMore:!1,name:null}),x(e)}})},[u,c,l,p,d,t,x]),resetCurrentSession:(0,Z.useCallback)(async()=>{if(d){g().setShellError(null);try{await t.current.resetSession(d),u(),v.current=null,g().setCommittedSnapshot(d,{messages:[],hasMore:!1,name:null}),x(d)}catch(e){g().setShellError(e instanceof Error?e.message:`Failed to reset session`)}}},[x,d,u,t])}}function ZO(e){return new Promise(t=>{Promise.resolve().then(()=>e(()=>t(!0))).then(()=>t(!1),()=>t(!1))})}function QO(e,t,n){return e.map(e=>{if(e.clientSubmissionId!==t||!e.deliveryStatus)return e;if(n===`failed`)return{...e,deliveryStatus:`failed`};let r={...e,deliveryStatus:`accepted`};return delete r.pendingAppContext,r})}function $O(e){return e!==`suspended`}function ek(e){let{chatId:t,shouldApplyStreamUpdate:n,beforeAssistantDelta:r,reconcileHydratedAssistantText:i,setStreamingOnStreamStart:a,clearResumeRunIdOnBackgroundTerminal:o,clearResumeRunIdOnVisibleError:s,setError:c,sessionMgrRef:l,applyLoadedSessionSnapshot:u,finalizeMessage:d,fq:f}=e,p=()=>Mn.getState(),m=()=>{let e={messages:p().sessions[t]?.messages};return l.current.loadSession(t,0,void 0,void 0,e.messages).then(n=>u(t,n,e)).catch(()=>{})},g=new Map,_,v=()=>{if(_!==void 0&&(window.clearTimeout(_),_=void 0),g.size===0)return;let e=Array.from(g.entries());g.clear(),r(),p().mutateSessionStreaming(t,t=>{for(let[n,r]of e)_n(t.content,n,r)})},b=(e,t)=>{g.set(e,`${g.get(e)??``}${t}`),_===void 0&&(_=window.setTimeout(v,120))},x=e=>{p().clearStreamingState(t),o&&bn.setResumeRunId(t,null),p().setSessionFlags(t,{sending:!1,streaming:!1}),p().setSessionProgress(t,null),$O(e)&&f.dismissClarifyForSession(t),m()};return{onTextSurface:e=>{r(),p().mutateSessionStreaming(t,t=>{t.textSurface=e})},onReplayGap:m,onUserMessage:e=>{n(t)&&p().appendUserMessageIfMissing(t,e)},onStreamStart:(e,n,i)=>{ff(t),r(),i&&p().updateSessionMessages(t,t=>ar([...t,{role:`task`,content:[],taskTrigger:i,turnId:e,timestamp:Date.now()}])),p().updateSessionMessages(t,t=>Cn(t,e)),p().mutateSessionStreaming(t,t=>{t.turnId=e,n&&(t.startsNewBubble=!0)}),p().setSessionFlags(t,{streaming:!0})},onToken:(e,a,o)=>{r(),p().mutateSessionStreaming(t,t=>{Dn(t.content,e,a,{offset:o,reconcileHydratedSegment:i})}),n(t)&&p().setSessionFlags(t,{streaming:!0})},onAssistantMessageEnd:(e,n,i)=>{r(),p().mutateSessionStreaming(t,t=>{yr(t.content,e,n),i&&(t.usage=i)})},onThinking:(e,n,i)=>{r(),p().mutateSessionStreaming(t,t=>{!n&&e===``?xn(t.content):Qn(t.content,e,n,i)})},onThinkingEnd:e=>{r(),p().mutateSessionStreaming(t,t=>{wn(t.content,e)})},onToolStart:(e,n,i,a,o,s)=>{r(),p().mutateSessionStreaming(t,t=>{mn(t.content,e,n,i,a,o,s)}),p().setSessionFlags(t,{streaming:!0})},onToolEnd:(e,n,i,a,o,s,c)=>{r(),p().mutateSessionStreaming(t,t=>{Tn(t.content,e,n,i,a,o,s,c)})},onToolUpdate:(e,n,i)=>{r(),p().mutateSessionStreaming(t,t=>{Nn(t.content,e,n,i)})},onTaskPlanUpdated:e=>{p().setSessionTaskPlan(t,e)},onTurnOutcome:e=>{r(),p().mutateSessionStreaming(t,t=>{t.outcome=e})},onReview:({review:e})=>{r(),p().mutateSessionStreaming(t,t=>{vn(t.content,e)}),n(t)&&p().setSessionFlags(t,{streaming:!0})},onReviewStart:e=>{r(),p().mutateSessionStreaming(t,t=>{Pn(t.content,e)}),n(t)&&p().setSessionFlags(t,{streaming:!0})},onReviewDelta:({reviewId:e,delta:t})=>{b(e,t)},onReviewEnd:({reviewId:e,status:n,message:i})=>{v(),r(),p().mutateSessionStreaming(t,t=>{An(t.content,e,n,i)})},onProgress:e=>{p().setSessionProgress(t,e)},onTtsAudio:e=>{n(t)&&p().appendAttachmentToCurrentAssistant(t,{name:e.name,mimeType:e.mimeType,type:`voice`,uri:e.uri,size:0},{attachTo:e.attachTo,messageId:e.messageId})},onCompaction:e=>{if(!n(t))return;let r=y(h.getState().language).chat;if(e.status===`started`)p().setSessionProgress(t,{stage:`compaction`,message:r.compactingContext,timestamp:Date.now()});else if(e.status===`completed`){let n=e.tokensBefore&&e.tokensAfter?` (${r.contextTokensFreed.replace(`{{count}}`,String(Math.round((e.tokensBefore-e.tokensAfter)/1e3)))})`:``;p().setSessionProgress(t,{stage:`compaction`,message:`${r.contextCompacted}${n}`,timestamp:Date.now()})}else p().setSessionProgress(t,null)},onClarifyRequest:f.makeOnClarifyRequest(t),onSessionConfigUpdated:()=>{p().patchSessionMeta(t,{modelConfigSaving:!0}),l.current.loadSessionAgentConfig(t).then(e=>Hn(t,e)).catch(()=>{}).finally(()=>p().patchSessionMeta(t,{modelConfigSaving:!1}))},onResult:({status:e})=>{v();let r=n(t);if(bn.takeUserAborted(t)||e===`cancelled`){hf(t),r?d(t,e):x(e);return}if(e===`error`){if(mf(t,!r),!r){x(e);return}d(t,e),m();return}if(e===`suspended`?gf(t):pf(t,!r),!r){x(e);return}d(t,e)},onError:e=>{v();let r=n(t);if(mf(t,!r),!r){x(`error`);return}p().clearStreamingState(t),s&&bn.setResumeRunId(t,null),p().setSessionFlags(t,{sending:!1,streaming:!1}),p().setSessionProgress(t,null),c(e),f.dismissClarifyForSession(t)}}}function tk(e){return Vn(e)?.streamingMsg??null}var nk=80;function rk(e){let t=e.trim();(t.startsWith(`"`)&&t.endsWith(`"`)||t.startsWith(`'`)&&t.endsWith(`'`))&&(t=t.slice(1,-1).trim());let n=t.indexOf(`
|
|
72
|
-
`);return n!==-1&&(t=t.slice(0,n).trim()),t.length>nk&&(t=t.slice(0,nk-1).trimEnd()+`…`),t}function ik(e){let t=e.trimStart();if(!/^##\s+Skill:\s*\S+/i.test(t))return e;let n=/(?:^|\r?\n)\*\*Arguments\*\*:\s*/gi,r=-1;for(;n.exec(t)!==null;)r=n.lastIndex;if(r!==-1){let e=t.slice(r).trim();if(e)return e}return(t.split(/\r?\n/)[0]?.trim()??``).replace(/^##\s+Skill:\s*/i,``).trim()}function ak(e){let t=e.trimStart().match(/^\/skill:([^\s]+)(?:\s+([\s\S]*))?$/i);return t&&(t[2]?.trim()||t[1]?.trim())||e}function ok(e){let t=ak(ik(Ln([{type:`text`,text:e}]))).split(/\n/)[0]?.trim();if(!t)return null;let n=rk(t);return n.length>0?n:null}function sk(e,t){let n=e.trim(),r=t.trim();!n||!r||window.dispatchEvent(new CustomEvent(`session-updated`,{detail:{key:n,name:r},bubbles:!0}))}var ck=new Set([`new`,`reset`,`restart`]),lk=new Set([...ck,`clear`,`archive`]);function uk(e){let t=e.trim(),n=/^\/([^\s@]+)(?:@[^\s]+)?(?:\s+([\s\S]*))?$/.exec(t);return n?{name:n[1].toLowerCase(),args:n[2]?.trim()??``}:null}function dk(e){let t=uk(e);return!!(t&&ck.has(t.name)&&!t.args)}function fk(e){let t=uk(e);return!!(t&&lk.has(t.name))}function pk(e){let{conversationId:t,taskId:n,thinkingLevel:r,modelSupportsThinking:i,conversationIdRef:a,sendingRef:o,streamingRef:s,sessionMgrRef:c,sendMessageRef:l,shouldApplyStreamUpdate:u,fq:d,applyLoadedSessionSnapshot:f,loadSessionById:p,resetCurrentSession:m,pollSessionNameAfterTurn:h}=e,g=()=>Mn.getState(),_=e=>g().setShellError(e),v=()=>g().setShellError(null),y=(0,Z.useCallback)((e,t)=>{let n=e??a.current;if(n&&!u(n))return;let r=n?tk(n):null,i=null;if(r){let e=En(r,Date.now());On(e.content,t===`success`),wn(e.content),Sn(e.content,t===`success`),yn(e.content),e.completedAt=Date.now(),i=Zn(e)}i&&hn(i)&&n?g().finalizeStreamingTurn(n,i):n&&g().clearStreamingState(n),o.current=!1,s.current=!1,n&&bn.resetRunTracking(n),(!t||$O(t))&&d.dismissClarify(),h();let c=a.current;c&&window.setTimeout(()=>{a.current===c&&(o.current||s.current||p(c,0))},400)},[o,s,a,d.dismissClarify,d.pendingFollowUpsRef,h,p,u]),b=(0,Z.useCallback)(async(e,t)=>{if(!u(e))return;let r=g().sessions[e]?.streamingMsg,i=g().sessions[e]?.messages.findLast(e=>e.role===`user`)?.clientSubmissionId,a=await cr(e);if(!a){let t=g().sessions[e]?.streamingMsg;if(t?.pendingResponseStatus||t&&t!==r||bn.isStreamingFor(e))return;let n=bn.getResumeRunId(e);n&&bn.reconcileInactive(e,n),g().clearStreamingState(e,{preservePendingResponse:!0}),hf(e);return}let l=()=>{let t=g().sessions[e]?.streamingMsg,n=g().sessions[e]?.messages.findLast(e=>e.role===`user`)?.clientSubmissionId;return!!(n&&n!==i)||!!(t?.turnId&&t.turnId!==a)||!!(t?.pendingResponseStatus&&t!==r)};if(l()||bn.isTrackingRun(e,a))return;let m=t??_r(e),h=Vn(e)?.hasMore??!1;try{let t=await c.current.loadSession(e,0,void 0,n,g().sessions[e]?.messages);if(l()||bn.isTrackingRun(e,a))return;g().mergeCommittedFromServer(e,t.messages,t.hasMore),m=t.messages,h=t.hasMore}catch{}if(l()||bn.isTrackingRun(e,a))return;bn.setUserAborted(e,!1),bn.setResumeRunId(e,a),o.current=!0,s.current=!0,g().seedSessionIfEmpty(e,m,!0,!0,h),g().setSessionFlags(e,{sending:!0,streaming:!0}),g().setSessionProgress(e,null),ff(e);let v=!1,b=()=>{if(v||!u(e))return;v=!0;let t=xO(_r(e),a);t&&g().applyHydratedTail(e,t.messagesWithoutTail,Zn(t.tail))},x=()=>{g().clearStreamingState(e),bn.getResumeRunId(e)===a&&bn.setResumeRunId(e,null),u(e)&&(o.current=!1,s.current=!1)};try{let t=ek({chatId:e,shouldApplyStreamUpdate:u,beforeAssistantDelta:b,reconcileHydratedAssistantText:!0,setStreamingOnStreamStart:!1,clearResumeRunIdOnBackgroundTerminal:!0,clearResumeRunIdOnVisibleError:!0,setError:_,sessionMgrRef:c,applyLoadedSessionSnapshot:f,finalizeMessage:y,fq:d});await bn.senderFor(e).resume(a,e,t)||(hf(e),x(),await p(e,0).catch(()=>void 0))}catch(t){t.name!==`AbortError`&&console.error(`[chat] resume failed:`,t),hf(e),x()}finally{bn.releaseIdleSender(e)}},[o,s,u,c,f,y,p,n]),x=(0,Z.useCallback)(async(e,t,c,u)=>{if(!e.trim()&&!t?.length&&!u?.length)return;let f=a.current;if(!f||!o.current&&!s.current&&!bn.isStreamingFor(f))return;let p=e.trim();if(n&&fk(p)){_(`A task has one continuous conversation.`);return}if(dk(p)&&!t?.length){await m();return}d.dismissClarifyAndClearPending();let h=i?c??r:`off`;bn.setUserAborted(f,!0),bn.abort(f),o.current=!1,s.current=!1,y(f),queueMicrotask(()=>{l.current(e,t,h,u)})},[o,s,a,d.dismissClarifyAndClearPending,i,r,y,l,m,n]),S=(0,Z.useCallback)(async(e,a,l,h,b,x,S,C)=>{if(!t||!u(t)||!e.trim()&&!a?.length&&!h?.length||o.current||s.current||bn.isStreamingFor(t))return!1;let w=e.trim();if(n&&fk(w))return _(`A task has one continuous conversation.`),!1;if(dk(w)&&!a?.length){await m();return}let T=i?l??r:`off`,E=t,D=crypto.randomUUID(),O=`assistant-stream:${E}:${D}`,k=_r(E),A=C?k.filter(e=>e.clientSubmissionId!==C):k,j=b?A.findIndex(e=>e.role===`user`&&e.turnId===b):-1;if(b&&j<0)return!1;bn.setUserAborted(E,!1),o.current=!0,s.current=!1,v(),d.dismissClarify();let M=j>=0?A.slice(0,j):A,N=Yn(e)??void 0,P=new Map(h?.flatMap(e=>e.refId?[[e.refId,e.title]]:[])??[]),F=N?qn(N,e=>P.get(e)):e,I=[...M,{role:`user`,content:F?[{type:`text`,text:F}]:[],userTurnDocument:N,deliveryStatus:`sending`,clientSubmissionId:D,pendingAppContext:x===void 0?void 0:structuredClone(x),attachments:a,contextRefs:h?.map(e=>({refId:e.refId,kind:e.kind,sourceId:e.sourceId,version:e.expectedVersion,title:e.title,fileKind:e.fileKind})),timestamp:Date.now()}];S?.(D);let L=Vn(E);if(g().initSessionSnapshot(E,{...L??{...sr(),historyStatus:`ready`,hasMore:!1,streamingMsg:null,progress:null,taskPlan:null,sending:!1,streaming:!1},messages:I,hasMore:L?.hasMore??!1,streamingMsg:{role:`assistant`,content:[],timestamp:Date.now(),renderKey:O,pendingResponseStatus:`sending`},progress:null,sending:!0,streaming:!1}),ff(E),!L?.name?.trim()&&F.trim()){let e=ok(F.trim());e&&(g().patchSessionMeta(E,{name:e}),sk(E,e))}let R=e=>{g().updateSessionMessages(E,t=>QO(t,D,e))};return ZO(async t=>{let r=!1;try{let i=ek({chatId:E,shouldApplyStreamUpdate:u,beforeAssistantDelta:()=>{},reconcileHydratedAssistantText:!1,setStreamingOnStreamStart:!0,clearResumeRunIdOnBackgroundTerminal:!1,clearResumeRunIdOnVisibleError:!1,setError:_,sessionMgrRef:c,applyLoadedSessionSnapshot:f,finalizeMessage:y,fq:d});i.onInputAccepted=()=>{r=!0,R(`accepted`),g().setPendingResponseStatus(E,`waiting`),t()},await bn.senderFor(E).send(e,E,a,T,i,n,b,h,x)}catch(e){if(e.name!==`AbortError`)g().clearStreamingState(E),hf(E),u(E)&&_(e instanceof Error?e.message:String(e)),b&&p(E,0);else{hf(E);let e=Vn(E)?.streamingMsg;e?.renderKey===O&&e.pendingResponseStatus&&g().clearStreamingState(E)}}finally{r||R(`failed`),u(E)&&(o.current=!1,s.current=!1),g().setSessionFlags(E,{sending:!1}),bn.releaseIdleSender(E)}})},[t,r,i,o,s,u,c,f,y,d.dismissClarify,m,n,p]);return{finalizeMessage:y,tryResumeAgentRun:b,sendMessage:S,replaceLatestUserTurn:(0,Z.useCallback)((e,t,n,r,i)=>S(t,n,r,i,e),[S]),interruptAndSend:x,abort:(0,Z.useCallback)(()=>{let e=a.current;e&&(bn.setUserAborted(e,!0),d.dismissClarifyAndClearPending(),bn.abort(e),e&&hf(e),o.current=!1,s.current=!1,y(e),e&&window.setTimeout(()=>{p(e,0)},300))},[d.dismissClarifyAndClearPending,o,s,y,a,p]),deleteMessageRound:(0,Z.useCallback)(e=>{let t=a.current;if(!t||o.current||s.current)return;let n=_r(t),r=n[e];if(!r||!kn(r.role))return;if(r.deliveryStatus===`failed`){let r=[...n];r.splice(e,1),g().updateSessionMessages(t,()=>r);return}let i=Wn(n,e);if(i===null)return;let l=pn(n,e),u=[...n];u.splice(e,l),g().updateSessionMessages(t,()=>u),c.current.deleteMessages(t,{userRoundIndex:i}).catch(()=>{p(t,0)})},[a,o,s,c,p]),retryUserMessageRound:(0,Z.useCallback)(e=>{let t=a.current;if(!t||o.current||s.current)return;let n=_r(t),r=n[e];if(!r||!kn(r.role))return;for(let t=e+1;t<n.length;t++){let e=n[t];if(e&&kn(e.role))return}let i=r.userTurnDocument?Bn(r.userTurnDocument):Ln(r.content),c=In(r.attachments);if(!i.trim()&&!c?.length&&!r.contextRefs?.length)return;let u=r.contextRefs?.flatMap(e=>e.kind===`mcp_resource`?[]:[{refId:e.refId,kind:e.kind,sourceId:e.sourceId,expectedVersion:e.version,title:e.title,fileKind:e.fileKind}]),d=r.deliveryStatus===`failed`?r.clientSubmissionId:void 0;!d&&!r.turnId||l.current(i,c,void 0,u,r.turnId,r.pendingAppContext,void 0,d).catch(()=>{p(t,0)})},[a,o,s,p,l])}}function mk(e){let t=(0,Y.c)(11),{conversationId:n,conversationIdRef:r,sessionMgrRef:i,loadSessionById:a,loadTimelineById:o,applyAgentConfig:s}=e,c;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(c=[],t[0]=c):c=t[0],(0,Z.useEffect)(gk,c);let l,u;t[1]!==n||t[2]!==a||t[3]!==o?(l=()=>{let e=e=>{let t=e.detail;!t?.key||t.key!==n||(a(n,0),o(n))};return window.addEventListener(`session-transcript-updated`,e),()=>window.removeEventListener(`session-transcript-updated`,e)},u=[n,a,o],t[1]=n,t[2]=a,t[3]=o,t[4]=l,t[5]=u):(l=t[4],u=t[5]),(0,Z.useEffect)(l,u);let d,f;t[6]!==s||t[7]!==r||t[8]!==i?(d=()=>{let e=e=>{if(qr(e.detail))return;let t=r.current;t&&i.current.loadSessionAgentConfig(t).then(e=>{s(t,e)}).catch(hk)};return window.addEventListener(`config-reload`,e),()=>window.removeEventListener(`config-reload`,e)},f=[r,i,s],t[6]=s,t[7]=r,t[8]=i,t[9]=d,t[10]=f):(d=t[9],f=t[10]),(0,Z.useEffect)(d,f)}function hk(){}function gk(){let e=_k;return window.addEventListener(`session-updated`,e),()=>window.removeEventListener(`session-updated`,e)}function _k(e){let t=e.detail;!t?.key||t.name===void 0||Mn.getState().patchSessionMeta(t.key,{name:t.name||null})}function vk(e){let t=d(),{isNewRoute:n,forceNewChat:r,decodedKey:i,viewConversationId:a,routedFocusedConversationId:o,routeConversationIdRef:s,locationKey:c,locationSearch:l,locationState:u}=WO(e?.fixedConversationId),f=(0,Z.useRef)(new ur),p=(0,Z.useRef)(!1),m=(0,Z.useRef)(!1),h=(0,Z.useRef)(!1),g=(0,Z.useRef)(0),_=(0,Z.useRef)(!1),[v,y]=(0,Z.useState)([]),b=(0,Z.useRef)(async()=>{}),x=(0,Z.useRef)(0),S=o,C=Mn(e=>e.initLoading),w=Mn(e=>e.loadingMore),T=Mn(e=>e.shellError),E=a,D=hm(E),O=E?gn(D):!1,k=O?D?.streaming??!1:!1,A=O?D?.sending??!1:!1,j=O?D?.progress??null:null,M=O?D?.taskPlan??null:null,N=D?.hasMore??!1,P=D?.name??null,F=D?.model??``,I=CO(D,Lr(ri,ni,{revalidateOnFocus:!1}).data),L=D?.modelConfigSaving??!1,R=D?.thinkingLevel??`medium`,z=D?.reasoningLevel??`on`,B=D?.modelSupportsThinking??!1,ee=D?.effectiveWorkspacePath??``,V=D?.workspaceSource??`agent_default_root`,H=D?.userContextMode??`enabled`;(0,Z.useEffect)(()=>{!E||A||k||f.current.loadSessionAgentConfig(E).then(e=>Hn(E,e)).catch(()=>void 0)},[E,A,k]),(0,Z.useEffect)(()=>{let e=e=>{let t=e.detail.conversationId;f.current.loadSessionAgentConfig(t).then(e=>Hn(t,e)).catch(()=>void 0)};return window.addEventListener(`session-model-config-stale`,e),()=>window.removeEventListener(`session-model-config-stale`,e)},[]),(0,Z.useEffect)(()=>{x.current=D?.messages.length??0},[D?.messages.length]),(0,Z.useEffect)(()=>{m.current=A,h.current=k},[A,k]);let{token:te,chatAgentsData:U,resolveAgentIdForPost:W,onChatAgentChange:ne,displayAgentId:re,showChatAgentSelector:ie,currentSessionProjectId:ae}=MO({navigate:t,personal:e?.personal,conversationIdRef:KO,conversationId:S,isNewRoute:n,locationState:u,locationSearch:l}),oe=i!==void 0&&S!==i,se=!!(i&&D?.historyStatus===`loading`&&!oe),G=(0,Z.useMemo)(()=>C&&(S==null||i===void 0),[C,S,i]),K=TO({isNewRoute:n,sessionRoutePending:oe,showSessionLoading:G,sessionContentLoading:se,messageCount:D?.messages.length??0}),ce=(0,Z.useCallback)((e,n=!1,r)=>{let i=r??``;t({pathname:`/chat/${encodeURIComponent(e)}`,search:i},{replace:n})},[t]),le=(0,Z.useCallback)(e=>hO({streamConversationId:e,routeConversationId:s.current}),[s]),q=(0,Z.useCallback)(()=>{wO({sendingRef:m,streamingRef:h})},[]),ue=AO({conversationId:S,decodedKey:i,conversationIdRef:KO,sendingRef:m,streamingRef:h,modelSupportsThinking:B,thinkingLevel:R,shouldApplyStreamUpdate:le}),de=(0,Z.useCallback)(()=>{ue.clearVisibleClarify();let e=KO.current;e&&bn.resetRunTracking(e),SO(q)},[ue.clearVisibleClarify,KO,q]),{refreshModelThinkingSupport:fe,pollSessionNameAfterTurn:pe,applyLoadedSessionSnapshot:me,loadSessionById:he,loadMoreMessages:ge,onSessionModelChange:_e,onSessionThinkingLevelChange:ve,onSessionWorkingDirectoryChange:ye,createNewSession:be,resetCurrentSession:xe}=XO({sessionMgrRef:f,routeConversationIdRef:s,sendingRef:m,streamingRef:h,loadingSessionRef:p,messagesLenRef:x,thinkingSupportGenRef:g,navigateToSession:ce,resolveAgentIdForPost:W,detachForNewConversation:de,conversationId:S,sessionAgentId:re,currentProjectId:ae,hasMore:N,taskId:e?.taskId}),Se=(0,Z.useCallback)(e=>{if(!gO({cacheConversationId:e,routeConversationId:s.current}))return!1;let t=Vn(e);return!t||!gn(t)&&!ir(e)&&!bn.isStreamingFor(e)?!1:(m.current=t.sending,h.current=t.streaming,!0)},[s]),{tryResumeAgentRun:Ce,sendMessage:we,replaceLatestUserTurn:Te,interruptAndSend:Ee,abort:De,deleteMessageRound:Oe,retryUserMessageRound:ke}=pk({conversationId:S,taskId:e?.taskId,thinkingLevel:R,modelSupportsThinking:B,conversationIdRef:KO,sendingRef:m,streamingRef:h,sessionMgrRef:f,sendMessageRef:b,shouldApplyStreamUpdate:le,fq:ue,applyLoadedSessionSnapshot:me,loadSessionById:he,resetCurrentSession:xe,pollSessionNameAfterTurn:pe});(0,Z.useEffect)(()=>{n&&de()},[n,de]);let Ae=(0,Z.useMemo)(()=>bO({viewConversationId:a,conversationId:E,messages:D?.messages??[],streamingMsg:O?D?.streamingMsg??null:null}),[a,E,D?.messages,D?.streamingMsg,O]),je=(0,Z.useCallback)((e,t)=>{Mn.getState().setCommittedSnapshot(e,{messages:[],hasMore:!1,name:t}),q()},[q]),Me=(0,Z.useCallback)((e,t)=>{Hn(e,t),fe(t.model)},[fe]),Ne=(0,Z.useCallback)(e=>{let t=Mn.getState();e.loading!==void 0&&t.setInitLoading(e.loading),e.error!==void 0&&t.setShellError(e.error)},[]),Pe=(0,Z.useCallback)(async t=>{try{let n=await f.current.loadTimeline(t,e?.taskId);if(s.current!==t)return;y(n)}catch{s.current===t&&y([])}},[s,e?.taskId]);(0,Z.useEffect)(()=>{if(n||!S){y([]);return}Pe(S)},[S,n,Pe]),mk({conversationId:S,conversationIdRef:KO,sendingRef:m,streamingRef:h,sessionMgrRef:f,loadSessionById:he,loadTimelineById:Pe,applyAgentConfig:Me});let Fe=qO({token:te,isNewRoute:n,forceNewChat:r,temporary:u?.temporary===!0,requestedAgentId:typeof u?.agentId==`string`?u.agentId:void 0,decodedKey:i,locationKey:c,locationSearch:l,sessionMgrRef:f,resolveAgentIdForPost:W,navigateToSession:ce,loadSessionById:he,tryResumeAgentRun:Ce,restoreLiveCacheIfNeeded:Se,adoptEmptySession:je,applyAgentConfig:Me,patchInitUi:Ne}),Ie=JO(Fe);return(0,Z.useEffect)(()=>{Fe&&Ie.error&&Mn.getState().setShellError(Ie.error instanceof Error?Ie.error.message:`Failed to load model configuration`)},[Fe,Ie.error]),(0,Z.useEffect)(()=>{let e=e=>{let t=e.detail,n=t?.conversationId,r=t?.runId;!n||!r?.trim()||($n(n,r),bn.setResumeRunId(n,r),le(n)&&(bn.isTrackingRun(n,r)||queueMicrotask(()=>{le(n)&&(bn.isTrackingRun(n,r)||Ce(n,_r(n)))})))};return window.addEventListener(`run-started`,e),()=>window.removeEventListener(`run-started`,e)},[Ce,le]),(0,Z.useEffect)(()=>{let e=k||A,t=_.current;if(_.current=e,!t||e)return;let n=KO.current;n&&queueMicrotask(()=>{!n||!le(n)||bn.isStreamingFor(n)||ir(n)&&Ce(n,_r(n))})},[k,A,Ce,le]),b.current=we,{auth:{hasToken:!!te},session:{projectPreparation:Ie.preparation,conversationId:S,sessionName:P,decodedKey:i,sessionRoutePending:oe,sessionContentLoading:se,showSessionLoading:G,conversationPhase:K,loading:C,sessionModel:Fe?Ie.model:F,modelConfigReady:Fe?Ie.ready:I,modelConfigSaving:L,thinkingLevel:Fe?Ie.thinkingLevel:R,onSessionThinkingLevelChange:Fe?Ie.onThinkingChange:ve,onSessionWorkingDirectoryChange:ye,reasoningLevel:z,modelSupportsThinking:Fe?Ie.modelSupportsThinking:B,effectiveWorkspacePath:ee,workspaceSource:V,userContextMode:Fe?.temporary?`temporary`:H,hasMore:N,loadingMore:w,loadMoreMessages:ge,onSessionModelChange:Fe?Ie.onModelChange:_e,createNewSession:be,sessionManager:f.current},messages:{items:Ae},timeline:{items:v,refresh:Pe},stream:{error:T,streaming:k,sending:A,progress:j,taskPlan:M,sendMessage:we,replaceLatestUserTurn:Te,abort:De,interruptAndSend:Ee,deleteMessageRound:Oe,retryUserMessageRound:ke},followUp:{addPendingFollowUp:ue.addPendingFollowUp,pendingFollowUps:ue.pendingFollowUps,editingFollowUpId:ue.editingFollowUpId,beginEditFollowUp:ue.beginEditFollowUp,cancelEditFollowUp:ue.cancelEditFollowUp,commitEditFollowUp:ue.commitEditFollowUp,removePendingFollowUp:ue.removePendingFollowUp,movePendingFollowUp:ue.movePendingFollowUp,reorderPendingFollowUp:ue.reorderPendingFollowUp,steerPendingFollowUp:ue.steerPendingFollowUp,steeringFollowUpId:ue.steeringFollowUpId},clarify:{clarifyPrompt:ue.clarifyPrompt,clarifySubmitting:ue.clarifySubmitting,clarifySubmitError:ue.clarifySubmitError,submitClarifyAnswer:ue.submitClarifyAnswer,letAgentDecideClarification:ue.letAgentDecideClarification,cancelClarification:ue.cancelClarification},agents:{chatAgents:U,displayAgentId:Fe?.agentId??re,showChatAgentSelector:ie,onChatAgentChange:ne}}}function yk(e){let t=(0,Y.c)(11),n=m(bk),r;t[0]===e?r=t[1]:(r=e?.trim()||null,t[0]=e,t[1]=r);let i=r,a;t[2]===i?a=t[3]:(a=e=>i?e.sessions[i]?.localDraft:void 0,t[2]=i,t[3]=a);let o=Mn(a),s;t[4]!==o||t[5]!==n||t[6]!==i?(s=n&&i&&!o?[`chat-session-meta`,i,n,o===!1?`persisted`:`unknown`]:null,t[4]=o,t[5]=n,t[6]=i,t[7]=s):s=t[7];let c;t[8]===i?c=t[9]:(c=async()=>{if(await br(i))return;let e=await dn(i),t=typeof e.sessionType==`string`&&e.sessionType.trim()?e.sessionType.trim():null,n=typeof e.routing?.agentId==`string`&&e.routing.agentId.trim()?e.routing.agentId.trim():null,r=e.customData?.sourceBinding,a=r&&typeof r==`object`?r:null,o=a?.kind===`note`&&typeof a.sourceId==`string`&&a.sourceId.trim()?a.sourceId.trim():null,s=typeof e.parentConversationId==`string`&&e.parentConversationId.trim()?e.parentConversationId.trim():null,c=e.customData?.forkedFromSessionName;return{identity:{sourceChannel:e.sourceChannel,sessionType:e.sessionType,customData:e.customData},ownerAgentId:n,sessionType:t,sourceNoteId:o,sourceNoteTitle:null,parentConversationId:s,forkedFromSessionName:typeof c==`string`&&c.trim()?c.trim():null}},t[8]=i,t[9]=c);let l;return t[10]===Symbol.for(`react.memo_cache_sentinel`)?(l={revalidateOnFocus:!1},t[10]=l):l=t[10],Lr(s,c,l)}function bk(e){return e.conversationId}function xk(e,t){if(!e)return``;let n=e.replace(/\s+/g,` `).trim();return n.length<=t?n:`${n.slice(0,Math.max(0,t-3)).trimEnd()}...`}function Sk(e,t){return xk(Rn(e??``),t)}function Ck(e,t){return ra(e,t)}function wk(e){return e===`context`||e===`branch`||e===`compaction`?e:null}function Tk(e){return xk(e.preview||e.title,72)||e.kind}function Ek(e,t){let n=[],r=null,i=0;for(let a of e){if(a.displayIndex!==void 0&&(i=a.displayIndex),a.kind===`turn`&&a.role===`user`){let e=a.turn||n.length+1;r={id:a.id,messageIndex:a.displayIndex??i,ordinal:e,title:t.turn.replace(`{{count}}`,String(e)),preview:Sk(a.preview||a.title,88)||t.messageFallback,...a.timestamp===void 0?{}:{timestamp:a.timestamp},tools:[],events:[]},n.push(r);continue}if(!r)continue;if(a.kind===`tool`||a.kind===`file`||a.kind===`command`){let e=a.meta?.toolName||a.title||a.kind,n=a.kind===`file`||a.kind===`command`?a.title:Ck(e,t),i=`${a.id}:${e}`;r.tools.some(e=>e.key===i)||r.tools.push({key:i,label:n,running:a.status===`running`});continue}let e=wk(a.kind);if(!e)continue;let o=`${a.id}:${a.kind}`;r.events.some(e=>e.key===o)||r.events.push({key:o,label:Tk(a),tone:e})}return n}function Dk(e,t){return(e===1?t.toolCount_one:t.toolCount_other).replace(`{{count}}`,String(e))}function Ok(e,t){let n=e[0]?.id;for(let r of e)r.messageIndex<=t&&(n=r.id);return n}function kk(e){let t=(0,Y.c)(53),{turn:n,active:r,labels:i,currentLabel:a,onSelect:o}=e,s,c,l,u,d,f,p,m;if(t[0]!==r||t[1]!==a||t[2]!==i||t[3]!==o||t[4]!==n.events||t[5]!==n.preview||t[6]!==n.timestamp||t[7]!==n.title||t[8]!==n.tools){let e=n.tools.slice(0,2),h=n.events.slice(0,Math.max(0,3-e.length)),g=Math.max(0,n.tools.length-e.length)+Math.max(0,n.events.length-h.length);d=`button`;let _=r&&`bg-accent-soft/70`;t[17]===_?f=t[18]:(f=J(`flex w-full min-w-0 items-start gap-3 border-b border-edge-subtle px-4 py-3 text-left transition-colors`,`hover:bg-surface-hover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-accent`,_),t[17]=_,t[18]=f),p=o;let v=r&&`border-accent bg-accent`,y;t[19]===v?y=t[20]:(y=J(`mt-1 size-2.5 shrink-0 rounded-full border border-edge-strong bg-surface-panel`,v),t[19]=v,t[20]=y),t[21]===y?m=t[22]:(m=(0,X.jsx)(`span`,{className:y,"aria-hidden":!0}),t[21]=y,t[22]=m),s=`min-w-0 flex-1`;let b;t[23]===n.preview?b=t[24]:(b=(0,X.jsx)(`span`,{className:`min-w-0 truncate text-sm font-medium text-fg`,children:n.preview}),t[23]=n.preview,t[24]=b);let x;t[25]!==r||t[26]!==a?(x=r?(0,X.jsx)(`span`,{className:`shrink-0 rounded-full bg-accent px-1.5 py-0.5 text-[10px] font-medium text-on-accent`,children:a}):null,t[25]=r,t[26]=a,t[27]=x):x=t[27],t[28]!==b||t[29]!==x?(c=(0,X.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2`,children:[b,x]}),t[28]=b,t[29]=x,t[30]=c):c=t[30];let S;t[31]===n.title?S=t[32]:(S=(0,X.jsx)(`span`,{children:n.title}),t[31]=n.title,t[32]=S);let C;t[33]===n.timestamp?C=t[34]:(C=n.timestamp?(0,X.jsx)(`time`,{suppressHydrationWarning:!0,dateTime:new Date(n.timestamp).toISOString(),children:Vv(n.timestamp)}):null,t[33]=n.timestamp,t[34]=C);let w;t[35]!==i||t[36]!==n.tools.length?(w=n.tools.length>0?(0,X.jsxs)(`span`,{className:`inline-flex items-center gap-1`,children:[(0,X.jsx)(Gt,{className:`size-3.5 shrink-0`,"aria-hidden":!0}),Dk(n.tools.length,i)]}):null,t[35]=i,t[36]=n.tools.length,t[37]=w):w=t[37],t[38]!==S||t[39]!==C||t[40]!==w?(l=(0,X.jsxs)(`span`,{className:`mt-1 flex min-w-0 flex-wrap items-center gap-x-3 gap-y-1 text-xs text-fg-muted`,children:[S,C,w]}),t[38]=S,t[39]=C,t[40]=w,t[41]=l):l=t[41],u=e.length>0||n.events.length>0?(0,X.jsxs)(`span`,{className:`mt-2 flex min-w-0 flex-wrap gap-1.5`,children:[e.map(jk),h.map(Ak),g>0?(0,X.jsxs)(`span`,{className:`rounded-md bg-surface-hover px-1.5 py-0.5 text-[11px] text-fg-muted`,children:[`+`,g]}):null]}):null,t[0]=r,t[1]=a,t[2]=i,t[3]=o,t[4]=n.events,t[5]=n.preview,t[6]=n.timestamp,t[7]=n.title,t[8]=n.tools,t[9]=s,t[10]=c,t[11]=l,t[12]=u,t[13]=d,t[14]=f,t[15]=p,t[16]=m}else s=t[9],c=t[10],l=t[11],u=t[12],d=t[13],f=t[14],p=t[15],m=t[16];let h;t[42]!==s||t[43]!==c||t[44]!==l||t[45]!==u?(h=(0,X.jsxs)(`span`,{className:s,children:[c,l,u]}),t[42]=s,t[43]=c,t[44]=l,t[45]=u,t[46]=h):h=t[46];let g;return t[47]!==d||t[48]!==f||t[49]!==p||t[50]!==m||t[51]!==h?(g=(0,X.jsx)(`li`,{children:(0,X.jsxs)(`button`,{type:d,className:f,onClick:p,children:[m,h]})}),t[47]=d,t[48]=f,t[49]=p,t[50]=m,t[51]=h,t[52]=g):g=t[52],g}function Ak(e){return(0,X.jsxs)(`span`,{className:`inline-flex max-w-[10rem] items-center gap-1 rounded-md bg-surface-hover px-1.5 py-0.5 text-[11px] text-fg-muted`,children:[(0,X.jsx)(`span`,{className:`size-1.5 shrink-0 rounded-full bg-current opacity-70`,"aria-hidden":!0}),(0,X.jsx)(`span`,{className:`truncate`,children:e.label})]},e.key)}function jk(e){return(0,X.jsxs)(`span`,{className:J(`inline-flex max-w-[9rem] items-center gap-1 rounded-md bg-surface-hover px-1.5 py-0.5 text-[11px] text-fg-muted`,e.running&&`text-accent-fg`),children:[(0,X.jsx)(Gt,{className:`size-3 shrink-0`,"aria-hidden":!0}),(0,X.jsx)(`span`,{className:`truncate`,children:e.label})]},e.key)}function Mk(e){let t=(0,Y.c)(39),{items:n,activeMessageIndex:r,labels:i,openLabel:a,closeLabel:o,currentLabel:s,onSelectMessage:c}=e,l;t[0]!==n||t[1]!==i?(l=Ek(n,i),t[0]=n,t[1]=i,t[2]=l):l=t[2];let u=l,[d,f]=(0,Z.useState)(!1);if(u.length<4)return null;let p;t[3]!==r||t[4]!==u?(p=Ok(u,r),t[3]=r,t[4]=u,t[5]=p):p=t[5];let m=p,h;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(h=(0,X.jsx)(Fe,{className:`size-[1.125rem]`,strokeWidth:1.8,"aria-hidden":!0}),t[6]=h):h=t[6];let g;t[7]===a?g=t[8]:(g=(0,X.jsx)(x,{asChild:!0,children:(0,X.jsx)(ai,{type:`button`,variant:`ghost`,className:`size-10 shrink-0 rounded-full p-0 sm:size-9 xl:hidden`,"aria-label":a,title:a,children:h})}),t[7]=a,t[8]=g);let _;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(_=(0,X.jsx)(b,{className:`xopc-dialog-overlay fixed inset-0 z-[80] bg-scrim/60 backdrop-blur-[1px] xl:hidden`}),t[9]=_):_=t[9];let v;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(v=J(`xopc-dialog-content-pane fixed inset-x-2 bottom-[max(.5rem,env(safe-area-inset-bottom))] z-[90] flex h-[min(72dvh,34rem)] flex-col overflow-hidden`,`rounded-2xl border border-edge bg-surface-overlay shadow-popover outline-none`,`sm:left-auto sm:right-3 sm:w-[min(24rem,calc(100vw-1.5rem))]`,`md:bottom-[max(1rem,env(safe-area-inset-bottom))] md:right-4 md:h-[min(calc(100dvh-6rem),40rem)]`,`xl:hidden`),t[10]=v):v=t[10];let y;t[11]===i.title?y=t[12]:(y=(0,X.jsx)(E,{className:`min-w-0 truncate text-base font-semibold text-fg`,children:i.title}),t[11]=i.title,t[12]=y);let S;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(S=(0,X.jsx)(Kt,{className:`size-4`,strokeWidth:1.75,"aria-hidden":!0}),t[13]=S):S=t[13];let O;t[14]===o?O=t[15]:(O=(0,X.jsx)(C,{asChild:!0,children:(0,X.jsx)(ai,{type:`button`,variant:`ghost`,className:`size-8 shrink-0 p-0`,"aria-label":o,children:S})}),t[14]=o,t[15]=O);let k;t[16]!==y||t[17]!==O?(k=(0,X.jsxs)(`div`,{className:`flex min-w-0 shrink-0 items-center justify-between gap-3 border-b border-edge-subtle px-3.5 py-3`,children:[y,O]}),t[16]=y,t[17]=O,t[18]=k):k=t[18];let A;if(t[19]!==m||t[20]!==s||t[21]!==i||t[22]!==c||t[23]!==u){let e;t[25]!==m||t[26]!==s||t[27]!==i||t[28]!==c?(e=e=>(0,X.jsx)(kk,{turn:e,active:e.id===m,labels:i,currentLabel:s,onSelect:()=>{c(e.messageIndex),f(!1)}},e.id),t[25]=m,t[26]=s,t[27]=i,t[28]=c,t[29]=e):e=t[29],A=u.map(e),t[19]=m,t[20]=s,t[21]=i,t[22]=c,t[23]=u,t[24]=A}else A=t[24];let j;t[30]===A?j=t[31]:(j=(0,X.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto`,children:(0,X.jsx)(`ol`,{className:`min-w-0`,children:A})}),t[30]=A,t[31]=j);let M;t[32]!==k||t[33]!==j?(M=(0,X.jsxs)(w,{children:[_,(0,X.jsxs)(T,{className:v,"aria-describedby":void 0,children:[k,j]})]}),t[32]=k,t[33]=j,t[34]=M):M=t[34];let N;return t[35]!==d||t[36]!==M||t[37]!==g?(N=(0,X.jsxs)(D,{open:d,onOpenChange:f,children:[g,M]}),t[35]=d,t[36]=M,t[37]=g,t[38]=N):N=t[38],N}function Nk(e){let{active:t,scrubbing:n,distance:r}=e;return n?r===0?`w-7 bg-fg`:r===1?`w-5 bg-fg-muted`:r===2?`w-4 bg-edge-strong/70`:t?`w-3.5 bg-accent`:`w-2.5 bg-edge-strong/45`:t?`w-3.5 bg-accent`:`w-2.5 bg-edge-strong/45`}function Pk(e){let t=(0,Y.c)(40),{turn:n,labels:r}=e,i,a,o,s,c,l,u,d,f;if(t[0]!==r||t[1]!==n.events||t[2]!==n.preview||t[3]!==n.timestamp||t[4]!==n.title||t[5]!==n.tools){let e=n.tools.slice(0,3),p=Math.max(0,n.tools.length-e.length),m=n.events.slice(0,Math.max(0,3-e.length));i=p+Math.max(0,n.events.length-m.length);let h=n.tools.length>0||n.events.length>0?[...e.map(Rk),...m.map(Lk),...i>0?[`+${i}`]:[]].join(` · `):n.title;t[15]===Symbol.for(`react.memo_cache_sentinel`)?(l=J(`pointer-events-auto absolute right-12 top-1/2 z-[100] w-[min(25rem,calc(100vw-8rem))] -translate-y-1/2`,`rounded-2xl border border-edge bg-surface-overlay p-3 text-left shadow-popover backdrop-blur`),t[15]=l):l=t[15],t[16]===n.timestamp?u=t[17]:(u=n.timestamp?(0,X.jsx)(`div`,{className:`mb-1 flex min-w-0 justify-end text-xs`,children:(0,X.jsx)(`time`,{suppressHydrationWarning:!0,className:`shrink-0 tabular-nums text-fg-disabled`,dateTime:new Date(n.timestamp).toISOString(),children:Vv(n.timestamp)})}):null,t[16]=n.timestamp,t[17]=u),t[18]===n.preview?d=t[19]:(d=(0,X.jsx)(`div`,{className:`min-w-0 text-sm font-semibold leading-5 text-fg`,children:(0,X.jsx)(`span`,{className:`line-clamp-1`,children:n.preview})}),t[18]=n.preview,t[19]=d),t[20]===h?f=t[21]:(f=(0,X.jsx)(`div`,{className:`mt-1 line-clamp-3 text-sm leading-6 text-fg-muted`,children:h}),t[20]=h,t[21]=f),a=`mt-3 flex min-w-0 flex-wrap items-center gap-x-3 gap-y-2 text-sm text-fg-subtle`,t[22]!==r||t[23]!==n.title||t[24]!==n.tools.length?(o=n.tools.length>0?(0,X.jsxs)(`span`,{className:`inline-flex items-center gap-1.5`,children:[(0,X.jsx)(Gt,{className:`size-3.5 shrink-0`,"aria-hidden":!0}),(0,X.jsx)(`span`,{children:Dk(n.tools.length,r)})]}):(0,X.jsx)(`span`,{children:n.title}),t[22]=r,t[23]=n.title,t[24]=n.tools.length,t[25]=o):o=t[25],s=e.map(Ik),c=m.map(Fk),t[0]=r,t[1]=n.events,t[2]=n.preview,t[3]=n.timestamp,t[4]=n.title,t[5]=n.tools,t[6]=i,t[7]=a,t[8]=o,t[9]=s,t[10]=c,t[11]=l,t[12]=u,t[13]=d,t[14]=f}else i=t[6],a=t[7],o=t[8],s=t[9],c=t[10],l=t[11],u=t[12],d=t[13],f=t[14];let p;t[26]===i?p=t[27]:(p=i>0?(0,X.jsxs)(`span`,{children:[`+`,i]}):null,t[26]=i,t[27]=p);let m;t[28]!==a||t[29]!==o||t[30]!==s||t[31]!==c||t[32]!==p?(m=(0,X.jsxs)(`div`,{className:a,children:[o,s,c,p]}),t[28]=a,t[29]=o,t[30]=s,t[31]=c,t[32]=p,t[33]=m):m=t[33];let h;return t[34]!==m||t[35]!==l||t[36]!==u||t[37]!==d||t[38]!==f?(h=(0,X.jsxs)(`div`,{className:l,children:[u,d,f,m]}),t[34]=m,t[35]=l,t[36]=u,t[37]=d,t[38]=f,t[39]=h):h=t[39],h}function Fk(e){return(0,X.jsxs)(`span`,{className:J(`inline-flex min-w-0 max-w-[10rem] items-center gap-1.5`,e.tone===`branch`&&`text-accent`,e.tone===`compaction`&&`text-fg-muted`),children:[(0,X.jsx)(`span`,{className:`size-1.5 shrink-0 rounded-full bg-current opacity-70`,"aria-hidden":!0}),(0,X.jsx)(`span`,{className:`truncate`,children:e.label})]},e.key)}function Ik(e){return(0,X.jsxs)(`span`,{className:J(`inline-flex min-w-0 max-w-[9rem] items-center gap-1.5`,e.running&&`text-accent`),children:[(0,X.jsx)(Gt,{className:`size-3.5 shrink-0`,"aria-hidden":!0}),(0,X.jsx)(`span`,{className:`truncate`,children:e.label})]},e.key)}function Lk(e){return e.label}function Rk(e){return e.label}function zk(e){let t=(0,Y.c)(44),{items:n,activeMessageIndex:r,labels:i,onSelectMessage:a}=e,o;t[0]!==n||t[1]!==i?(o=Ek(n,i),t[0]=n,t[1]=i,t[2]=o):o=t[2];let s=o,[c,l]=(0,Z.useState)(null),u=(0,Z.useRef)(null),d,f;if(t[3]===c?(d=t[4],f=t[5]):(d=()=>{if(!c)return;let e=()=>{l(null)},t=t=>{let n=t.target;n instanceof Node&&(u.current?.contains(n)||e())},n=t=>{t.key===`Escape`&&e()};return document.addEventListener(`pointerdown`,t,!0),document.addEventListener(`keydown`,n),()=>{document.removeEventListener(`pointerdown`,t,!0),document.removeEventListener(`keydown`,n)}},f=[c],t[3]=c,t[4]=d,t[5]=f),(0,Z.useEffect)(d,f),s.length<4)return null;let p;if(t[6]!==r||t[7]!==s){p=s[0]?.id;for(let e of s)e.messageIndex<=r&&(p=e.id);t[6]=r,t[7]=s,t[8]=p}else p=t[8];let m=c??p,h;t[9]!==c||t[10]!==s?(h=c?s.find(e=>e.id===c):null,t[9]=c,t[10]=s,t[11]=h):h=t[11];let g=h,_=c!==null,v;if(t[12]!==m||t[13]!==s){let e;t[15]===m?e=t[16]:(e=e=>e.id===m,t[15]=m,t[16]=e),v=s.findIndex(e),t[12]=m,t[13]=s,t[14]=v}else v=t[14];let y=Math.max(0,v),b=i.title,x,S;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(x=()=>{l(null)},S=e=>{let t=e.relatedTarget;(!(t instanceof Node)||!e.currentTarget.contains(t))&&l(null)},t[17]=x,t[18]=S):(x=t[17],S=t[18]);let C;t[19]===p?C=t[20]:(C=()=>l(e=>e??p??null),t[19]=p,t[20]=C);let w;if(t[21]!==a||t[22]!==_||t[23]!==m||t[24]!==y||t[25]!==s){let e;t[27]!==a||t[28]!==_||t[29]!==m||t[30]!==y?(e=(e,t)=>{let n=e.id===m,r=Math.abs(t-y);return(0,X.jsx)(`li`,{className:`group relative flex h-3.5 w-full shrink-0 items-center justify-end`,onMouseEnter:()=>l(e.id),onFocus:()=>l(e.id),children:(0,X.jsx)(`button`,{type:`button`,className:J(`flex h-3.5 w-full items-center justify-end rounded-sm pr-1.5`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`),onClick:()=>a(e.messageIndex),"aria-label":`${e.title}: ${e.preview}`,children:(0,X.jsx)(`span`,{className:J(`block h-0.5 rounded-full transition-[width,background-color] duration-150 ease-out`,Nk({active:n,scrubbing:_,distance:r}),`group-hover:bg-fg`),"aria-hidden":!0})})},e.id)},t[27]=a,t[28]=_,t[29]=m,t[30]=y,t[31]=e):e=t[31],w=s.map(e),t[21]=a,t[22]=_,t[23]=m,t[24]=y,t[25]=s,t[26]=w}else w=t[26];let T;t[32]!==w||t[33]!==C?(T=(0,X.jsx)(`div`,{className:`chat-timeline-scroll flex min-h-0 w-full flex-col`,children:(0,X.jsx)(`ol`,{className:`my-auto flex w-full shrink-0 flex-col items-end py-1`,onMouseEnter:C,children:w})}),t[32]=w,t[33]=C,t[34]=T):T=t[34];let E;t[35]!==i||t[36]!==g?(E=g?(0,X.jsx)(Pk,{turn:g,labels:i}):null,t[35]=i,t[36]=g,t[37]=E):E=t[37];let D;t[38]!==T||t[39]!==E?(D=(0,X.jsxs)(`div`,{className:`relative z-[90] flex h-full min-h-0 w-full flex-col justify-center overflow-visible`,children:[T,E]}),t[38]=T,t[39]=E,t[40]=D):D=t[40];let O;return t[41]!==i.title||t[42]!==D?(O=(0,X.jsx)(`aside`,{ref:u,className:`hidden h-full min-h-0 max-h-full w-12 shrink-0 items-center overflow-visible py-4 xl:flex`,"aria-label":b,onMouseLeave:x,onBlur:S,children:D}),t[41]=i.title,t[42]=D,t[43]=O):O=t[43],O}function Bk(e){return e.enabled?e.sourceContextPending?`pending:${e.conversationId??``}`:e.task?`task:${e.task.task.id}:${e.task.task.version}`:e.suppressProjectContext?`suppressed:${e.conversationId??``}`:e.project?`project:${e.project.id}:${e.project.name}`:e.conversationId?`session:${e.conversationId}:failed:${e.sourceContextFailed?`1`:`0`}`:`empty`:`disabled`}function Vk(e){let t=Bk(e);if(!e.enabled)return{key:t,context:{kind:`empty`},status:`ready`};if(e.sourceContextPending)return{key:t,context:{kind:`empty`},status:`loading`};if(e.task){let n=e.task.receipts[0];return{key:t,context:{kind:`task`,taskId:e.task.task.id,taskTitle:e.task.task.title,phase:e.task.task.phase,operationalState:e.task.operationalState,attentionSummary:e.task.attention[0]?.summary,nextAction:n?.nextAction,recentFailure:n?.failure?.recoveryAction},status:`ready`}}return e.suppressProjectContext?{key:t,context:{kind:`empty`},status:e.sourceContextFailed?`degraded`:`ready`}:e.project?{key:t,context:{kind:`project`,projectId:e.project.id,projectName:e.project.name},status:`ready`}:{key:t,context:{kind:`empty`},status:e.conversationId?`loading`:`ready`}}function Hk(e){let{enabled:t,conversationId:n,sourceContextPending:r,sourceContextFailed:i,suppressProjectContext:a,project:o,task:s}=e,c=Bk(e),[l,u]=(0,Z.useState)(()=>Vk(e));(0,Z.useEffect)(()=>{let e=!1,l=Vk({enabled:t,conversationId:n,sourceContextPending:r,sourceContextFailed:i,suppressProjectContext:a,project:o,task:s});if(u(l),!(!t||!n||r||s||a))return(async()=>{let t=!!i,r=o?.id??null;if(!r)try{let e=await br(n);r=e?e.creation.projectId?.trim()||null:(await dn(n)).projectId?.trim()||null}catch{t=!0}if(!r){e||u({key:c,context:{kind:`empty`},status:t?`degraded`:`ready`});return}try{let[n,i]=await Promise.allSettled([o?Promise.resolve(o):cn(r),ln(r)]);if(n.status===`rejected`)throw n.reason;let a=i.status===`fulfilled`?i.value:null;a||(t=!0);let s=a?.blockers[0],l=a?.digest.health===`attention`?a.recentResults.find(({receipt:e})=>e.status===`failed`||e.verification.status===`failed`):void 0;e||u({key:c,context:{kind:`project`,projectId:r,projectName:n.value.name,recommendedAction:a?.digest.recommendedAction,blockedReason:s?.detail??s?.title,recentFailure:l?.receipt.failure?.recoveryAction??l?.receipt.summary},status:t?`degraded`:`ready`})}catch{e||u({key:c,context:{kind:`empty`},status:`degraded`})}})(),()=>{e=!0}},[n,c,t,i,r,a,o,s]);let d=l.key===c?l:Vk(e);return{context:d.context,status:d.status}}var Uk=[zt,Ft,$o];function Wk(e){let t=(0,Y.c)(20),{agentName:n,messages:r,disabled:i,onPick:a}=e,o;t[0]!==r.setupPromptComplete||t[1]!==r.setupPromptIdentity||t[2]!==r.setupPromptProject?(o=[r.setupPromptIdentity,r.setupPromptProject,r.setupPromptComplete],t[0]=r.setupPromptComplete,t[1]=r.setupPromptIdentity,t[2]=r.setupPromptProject,t[3]=o):o=t[3];let s=o,c;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,X.jsx)(`div`,{className:`flex size-12 items-center justify-center rounded-2xl bg-accent-soft text-accent`,children:(0,X.jsx)(zt,{className:`size-6`,strokeWidth:1.75,"aria-hidden":!0})}),t[4]=c):c=t[4];let l;t[5]===r.setupTitle?l=t[6]:(l=(0,X.jsx)(`h1`,{id:`agent-setup-title`,className:`mt-4 text-balance text-xl font-semibold tracking-tight text-fg`,children:r.setupTitle}),t[5]=r.setupTitle,t[6]=l);let u;t[7]!==n||t[8]!==r.setupDescription?(u=r.setupDescription.replace(`{{name}}`,n),t[7]=n,t[8]=r.setupDescription,t[9]=u):u=t[9];let d;t[10]===u?d=t[11]:(d=(0,X.jsx)(`p`,{className:`mt-2 max-w-xl text-pretty text-sm leading-relaxed text-fg-muted`,children:u}),t[10]=u,t[11]=d);let f;t[12]!==i||t[13]!==a||t[14]!==s?(f=(0,X.jsx)(`div`,{className:`mt-7 grid w-full gap-3 md:grid-cols-3`,children:s.map((e,t)=>{let n=Uk[t]??zt;return(0,X.jsxs)(`button`,{type:`button`,disabled:i,onClick:()=>a(e),className:J(`flex min-h-24 items-center gap-3 rounded-xl border border-edge bg-surface-panel px-4 py-4 text-left text-sm font-medium leading-relaxed text-fg`,`hover:border-accent/30 hover:bg-surface-hover`,ta.transition,ta.pressCard,ta.focusRingPanel,ta.disabled),children:[(0,X.jsx)(n,{className:`size-4 shrink-0 text-accent`,strokeWidth:1.75,"aria-hidden":!0}),(0,X.jsx)(`span`,{children:e})]},e)})}),t[12]=i,t[13]=a,t[14]=s,t[15]=f):f=t[15];let p;return t[16]!==l||t[17]!==d||t[18]!==f?(p=(0,X.jsxs)(`section`,{className:`mx-auto flex w-full max-w-4xl flex-col items-center px-2 pb-4 pt-12 text-center sm:pt-16`,"aria-labelledby":`agent-setup-title`,children:[c,l,d,f]}),t[16]=l,t[17]=d,t[18]=f,t[19]=p):p=t[19],p}var Gk=t({ChatPage:()=>qk}),Kk=(0,Z.lazy)(async()=>({default:(await o(()=>import(`./chat-terminal-dock-RcrdmYe8.js`),__vite__mapDeps([30,1,2,5,6,31,11,32,26,27,17,18,33,34,35,36,37,38,39,40,41,42,43,44,4,45,46,28,29,9,47,48,49,50]))).ChatTerminalDock}));function qk({embedded:e=!1,conversationId:t,taskId:n,personal:r=!1,personalWelcome:i,automationWorkspace:a=!1,automationTimelineEntries:o,readOnly:s=!1,onHistoryReady:f,automationExecution:p=!1,initialTurnId:g,onInitialTurnLocated:_}={}){let v=h(e=>e.language),x=y(v),C=m(e=>e.conversationId),O=d(),k=c(),{pathname:A}=k,[j,M]=l(),N=(0,Z.useRef)(null),P=(0,Z.useRef)(0),F=(0,Z.useRef)(null),[I,L]=(0,Z.useState)(null),[R,B]=(0,Z.useState)(()=>!!(t&&window.localStorage.getItem(`personal-calibration:${t}`))),[ee,V]=(0,Z.useState)(null),[H,te]=(0,Z.useState)(null),[U,W]=(0,Z.useState)(!1),[ne,re]=(0,Z.useState)(null),[ie,ae]=(0,Z.useState)(null),oe=n?.trim()||null,{data:se}=Ss(oe??``),{auth:G,session:K,messages:ce,timeline:le,stream:q,followUp:ue,clarify:de,agents:fe}=vk({fixedConversationId:t,taskId:oe??void 0,personal:r}),pe=Mn(e=>!!(K.conversationId&&!e.shellError&&e.sessions[K.conversationId]?.historyStatus===`ready`));(0,Z.useEffect)(()=>{pe&&ce.items.length>0&&f?.()},[pe,ce.items.length,f]),(0,Z.useLayoutEffect)(()=>{if(!a&&!p||!K.conversationId)return;let e=K.conversationId;return Of.setState({conversationIdOverride:e}),()=>{Of.getState().conversationIdOverride===e&&Of.setState({conversationIdOverride:null})}},[a,p,K.conversationId]);let me=!r&&!e&&!oe&&j.get(`scene`)===`find-skills`,he=a||j.get(`setup`)===`automation`,ge=!e&&!oe&&j.get(`agentSetup`)===`1`,_e=r?``:j.get(`skill`)?.trim()??``,ve=r?``:j.get(`slash`)?.trim()??``;(0,Z.useEffect)(()=>{if(!r||!j.has(`skill`)&&!j.has(`slash`))return;let e=new URLSearchParams(j);e.delete(`skill`),e.delete(`slash`),M(e,{replace:!0})},[r,j,M]);let ye=j.get(a?`chatDraft`:`draft`)??``,be=j.get(`autoSend`)===`1`,xe=j.get(`attachmentHandoff`),Se=j.get(`attachmentsHandoff`),Ce=K.decodedKey??K.conversationId,[we,Ee]=(0,Z.useState)(null),De=(0,Z.useRef)(null);(0,Z.useEffect)(()=>{if(xe){let e=Ae(xe);e&&Ee(e),De.current=Ce;return}De.current!==Ce&&(De.current=Ce,Ee(null))},[xe,Ce]);let Oe=df(e=>e.markViewed),ke=df(e=>Ce?e.runs[Ce]?.unread:!1);(0,Z.useEffect)(()=>{Ce&&ke&&Oe(Ce)},[Ce,ke,Oe]);let{data:je}=yk(Ce),Ne=he||!!je?.identity?.customData?.automationSetup,Pe=!!je?.identity?.customData?.automationSetup?.automationId,Fe=(0,Z.useCallback)(async e=>{if(Ce)try{let t=await K.sessionManager.forkSessionAtTurn(Ce,e);window.dispatchEvent(new CustomEvent(`session-created`,{detail:{key:t.conversationId,conversationId:t.conversationId}})),Me(`success`,x.chat.messageForkCreated),O(`/chat/${encodeURIComponent(t.conversationId)}`)}catch(e){throw Me(`error`,e instanceof Error?e.message:x.chat.messageForkFailed),e}},[Ce,x.chat.messageForkCreated,x.chat.messageForkFailed,O,K.sessionManager]),Ie=ce.items.at(-1),Le=r&&!R&&!q.streaming&&!q.sending&&Ie?.role===`assistant`&&ce.items.filter(e=>e.role===`user`).length===1&&ce.items.filter(e=>e.role===`assistant`).length===1&&!ce.items.some(e=>e.role===`task`),Re=e=>{B(!0),t&&window.localStorage.setItem(`personal-calibration:${t}`,`1`),e&&(P.current+=1,L({id:P.current,text:e}))};(0,Z.useEffect)(()=>{N.current=null},[K.conversationId]),(0,Z.useEffect)(()=>{if(!G.hasToken||!_e&&!ve&&!ye&&!(K.projectPreparation&&Se)||be&&!K.projectPreparation||K.showSessionLoading||K.sessionRoutePending||!K.conversationId&&!K.projectPreparation)return;let e=K.projectPreparation&&Se?wi(Se)??void 0:void 0,t=()=>{let e=new URLSearchParams(j);e.delete(`skill`),e.delete(`slash`),e.delete(a?`chatDraft`:`draft`),K.projectPreparation&&(e.delete(`autoSend`),e.delete(`attachmentsHandoff`));let t=e.toString();O({pathname:A,search:t?`?${t}`:``},{replace:!0})},n=(n,r)=>{N.current!==r&&(N.current=r,queueMicrotask(()=>{e?.length?yp(n,e):(P.current+=1,L({id:P.current,text:n})),t()}))},r=Br(_e,ye);if(r||e?.length){let e=`${K.conversationId}:draft:${r}`;n(r??``,e);return}if(_e){t();return}if(!/^[a-zA-Z][a-zA-Z0-9_-]*$/.test(ve)){t();return}let i=`${K.conversationId}:slash:${ve}`;N.current!==i&&queueMicrotask(()=>{(async()=>{try{let e=await oo(),t=ve.toLowerCase(),n=e.find(e=>e.name.toLowerCase()===t||Array.isArray(e.aliases)&&e.aliases.some(e=>e.toLowerCase()===t));if(n){if(N.current===i)return;N.current=i,P.current+=1,L({id:P.current,text:ZC(n)})}}finally{t()}})()})},[G.hasToken,a,_e,ve,ye,be,Se,K.projectPreparation,j,K.showSessionLoading,K.sessionRoutePending,K.conversationId,O,A]);let{scrollRef:Be,composerDockRef:We,atBottom:Ge,registerListContentRef:Ke,scrollToBottom:qe,replySpaceRef:Je,reserveReplySpace:Ye,onScroll:Xe}=IC({hasToken:G.hasToken,showSessionLoading:K.showSessionLoading,conversationId:K.conversationId,chatMessages:ce.items,streaming:q.streaming,hasMore:K.hasMore,loadingMore:K.loadingMore,loadMoreMessages:K.loadMoreMessages});(0,Z.useEffect)(()=>{if(!a||!Ge||!o?.length)return;let e=requestAnimationFrame(()=>qe(!1));return()=>cancelAnimationFrame(e)},[a,o,Ge,qe]);let Ze=WD({enabled:r,conversationId:K.conversationId,messages:ce.items,viewportRef:Be}),[Qe,$e]=(0,Z.useState)(0),et=(0,Z.useRef)(null),tt=(0,Z.useRef)(null),rt=(0,Z.useMemo)(()=>{let e=-1;for(let t of le.items)typeof t.displayIndex==`number`&&Number.isFinite(t.displayIndex)&&(e=Math.max(e,t.displayIndex));return e<0?0:Math.max(0,e+1-ce.items.length)},[ce.items.length,le.items]),it=(0,Z.useCallback)(e=>{let t=Be.current;if(!t)return!1;let n=t.querySelector(`[data-chat-message-index="${e}"]`);if(!n){let n=yC(t)?.reveal(e)??!1;return n&&$e(e),n}bC(t),$e(e);let r=t.getBoundingClientRect(),i=n.getBoundingClientRect(),a=t.scrollTop+i.top-r.top-16;return t.scrollTo({top:Math.max(0,a),behavior:gC()}),!0},[Be]),at=(0,Z.useCallback)(()=>{let e=Be.current;if(!e)return;let t=hC(e);$e(e=>e===t?e:t)},[Be]),ot=(0,Z.useCallback)(()=>{et.current??=requestAnimationFrame(()=>{et.current=null,at()})},[at]),st=(0,Z.useCallback)(()=>{Xe(),ot()},[Xe,ot]),ct=(0,Z.useCallback)(e=>{let t=e-rt;if(t<0||t>=ce.items.length){t<0&&K.hasMore&&!K.loadingMore&&(tt.current=e,K.loadMoreMessages());return}tt.current=null,it(t)},[ce.items.length,it,K.hasMore,K.loadMoreMessages,K.loadingMore,rt]);uw({conversationId:K.conversationId,turnId:g,messages:ce.items,ready:pe,hasMore:K.hasMore,loadingMore:K.loadingMore,loadMore:K.loadMoreMessages,reveal:it,onLocated:_});let lt=cO({conversationId:K.conversationId,taskId:oe,messages:ce.items,displayOffset:rt,viewportRef:Be,onRevealDisplayIndex:ct});(0,Z.useEffect)(()=>{let e=tt.current;if(e==null)return;let t=e-rt;if(t>=0&&t<ce.items.length){tt.current=null,requestAnimationFrame(()=>it(t));return}if(t<0&&K.hasMore&&!K.loadingMore){K.loadMoreMessages();return}(t>=ce.items.length||!K.hasMore)&&(tt.current=null)},[ce.items.length,it,K.hasMore,K.loadMoreMessages,K.loadingMore,rt]),(0,Z.useEffect)(()=>{ot()},[ce.items.length,ot,K.conversationId,rt]),(0,Z.useEffect)(()=>()=>{et.current!=null&&cancelAnimationFrame(et.current)},[]),(0,Z.useEffect)(()=>{L(null)},[K.conversationId]);let ut=(0,Z.useCallback)(e=>{P.current+=1,L({id:P.current,text:e.prompt})},[]),dt=!!(K.conversationId&&!K.showSessionLoading&&!K.sessionRoutePending&&K.workspaceSource!==`project`&&K.workspaceSource!==`execution_environment`&&ce.items.length===0),ft=Ja(e=>e.setAgentId);(0,Z.useEffect)(()=>{if(G.hasToken)return ft(fe.displayAgentId),()=>ft(``)},[G.hasToken,fe.displayAgentId,ft]);let pt=K.conversationPhase===`creating-session`,mt=K.conversationPhase===`loading-history`;rf(r&&!mt?Ce:null,r);let ht=pt||mt,gt=mt,_t=!gt&&ce.items.length===0&&!o?.length&&!q.streaming,vt=(0,Z.useMemo)(()=>{if(q.taskPlan){let e=OD(q.taskPlan);return e?{plan:e,changeSummary:VD(ce.items,q.streaming)?.changeSummary??null}:null}return VD(ce.items,q.streaming)},[ce.items,q.streaming,q.taskPlan]),yt=(0,Z.useMemo)(()=>(K.sessionRoutePending&&K.decodedKey?K.decodedKey:K.conversationId)?K.sessionName?.trim()||x.chat.newSession:x.nav.chat,[K.conversationId,K.sessionName,K.sessionRoutePending,K.decodedKey,x.nav.chat,x.chat.newSession]),bt=je?.sourceNoteId??null,xt=PE(Ce,j.get(`projectId`)),St=K.projectPreparation?.project??xt,[Ct,wt]=(0,Z.useState)([]),[Tt,Et]=(0,Z.useState)([]),Dt=m(e=>e.baseUrl),Ot=Ce?Ro(Dt,C,Ce):null,kt=Lo.store(e=>Ot?e.drafts[Ot]:void 0),At=(0,Z.useRef)(void 0),[jt,Mt]=(0,Z.useState)(!1);(0,Z.useLayoutEffect)(()=>{if(At.current!==void 0){Ce&&Ce!==At.current&&(At.current=void 0);return}wt([]),Et([])},[Ce]),(0,Z.useEffect)(()=>{let e=!1;if(V(null),bt)return ze(bt).then(t=>{e||V(t?.title?.trim()||null)}).catch(()=>{e||V(null)}),()=>{e=!0}},[bt]);let Nt=ee||je?.sourceNoteTitle||x.chat.sourceNoteFallbackTitle,Pt=Hk({enabled:G.hasToken&&!!(Ce||St)&&!ge&&ce.items.length===0&&!K.showSessionLoading&&!K.sessionRoutePending,conversationId:Ce,suppressProjectContext:!!(bt||we||K.workspaceSource===`execution_environment`||K.workspaceSource===`session_override`||K.workspaceSource===`agent_workspace`),project:St,task:se}),Ft=(0,Z.useMemo)(()=>fe.chatAgents?.items.find(e=>e.id===fe.displayAgentId)??{id:fe.displayAgentId},[fe.chatAgents?.items,fe.displayAgentId]),It=(0,Z.useMemo)(()=>ps(Pt.context,x.chat.welcomeSpotlight,{contextStatus:Pt.status}),[x.chat.welcomeSpotlight,Pt.context,Pt.status]),Lt=(0,Z.useMemo)(()=>It.recommendation?{suggestionId:It.recommendation.id,contextKind:It.contextKind,prompt:It.recommendation.prompt}:null,[It]),Rt=(0,Z.useCallback)((...e)=>{let[t,n,r,i,a]=e;if(kt&&(ie||t.trim().startsWith(`/`)))return Mn.getState().setShellError(x.chat.pageContext.pending),!1;if(ie)return ae(null),q.replaceLatestUserTurn(ie.turnId,t,n,r,i);let o=!1,s=q.sendMessage(t,n,r,i,void 0,kt?.envelope,(e,t)=>{o=!0,Ye(t??e),a?.onDispatched?.({clientSubmissionId:e,messageRenderKey:t})});return o?(Ot&&kt&&Lo.remove(Ot,kt),!0):s},[ie,q.replaceLatestUserTurn,q.sendMessage,kt,Ot,x.chat.pageContext.pending,Ye]),zt=NE({preparation:K.projectPreparation,conversationId:Ce,ready:K.modelConfigReady&&!ht,onSend:Rt}),Bt=(0,Z.useCallback)(e=>{e.turnId&&(ae({turnId:e.turnId}),yp(e.userTurnDocument?Bn(e.userTurnDocument):Ln(e.content),In(e.attachments),e.contextRefs?.flatMap(e=>e.kind===`mcp_resource`?[]:[{refId:e.refId,kind:e.kind,sourceId:e.sourceId,expectedVersion:e.version,title:e.title,fileKind:e.fileKind}])))},[]),Vt=(0,Z.useCallback)(()=>{ae(null),yp(``)},[]);(0,Z.useEffect)(()=>{ae(null)},[K.conversationId]),(0,Z.useEffect)(()=>{if(!be||!ye.trim()&&!Se||!G.hasToken||K.showSessionLoading||K.sessionRoutePending||!K.conversationId||q.sending||q.streaming)return;let e=Br(_e,ye),t=Se?wi(Se):void 0;if(!e&&!t?.length)return;let n=`${K.conversationId}:auto-send:${e??``}:${Se??``}`;if(N.current===n)return;N.current=n;let r=new URLSearchParams(j);r.delete(`skill`),r.delete(`slash`),r.delete(`draft`),r.delete(`autoSend`),r.delete(`attachmentsHandoff`);let i=r.toString();O({pathname:A,search:i?`?${i}`:``},{replace:!0}),Rt(e??``,t??void 0)},[G.hasToken,be,Se,ye,Rt,O,A,j,K.conversationId,K.sessionRoutePending,K.showSessionLoading,_e,q.sending,q.streaming]);let Ht=(0,Z.useCallback)(()=>{F.current?.reject(),F.current=null,te(null),W(!1)},[]);(0,Z.useEffect)(()=>{Ht()},[Ht,bt]);let Ut=(0,Z.useMemo)(()=>({title:x.chat.timelineTitle,turn:x.chat.timelineTurn,messageFallback:x.chat.timelineMessageFallback,toolCount_one:x.chat.timelineToolCount_one,toolCount_other:x.chat.timelineToolCount_other,searchedWeb:x.chat.stepSearchedWeb,searchedMemory:x.chat.stepSearchedMemory,searchedCode:x.chat.stepSearchedCode,searched:x.chat.stepSearched,readFile:x.chat.stepReadFile,runCommand:x.chat.stepRunCommand,listDirectory:x.chat.stepListDirectory,writeFile:x.chat.stepWriteFile,editFile:x.chat.stepEditFile,openUrl:x.chat.stepOpenUrl,fetchUrl:x.chat.stepFetchUrl,unknownTool:x.chat.stepUnknownTool}),[x.chat.timelineTitle,x.chat.timelineTurn,x.chat.timelineMessageFallback,x.chat.timelineToolCount_one,x.chat.timelineToolCount_other,x.chat.stepSearchedWeb,x.chat.stepSearchedMemory,x.chat.stepSearchedCode,x.chat.stepSearched,x.chat.stepReadFile,x.chat.stepRunCommand,x.chat.stepListDirectory,x.chat.stepWriteFile,x.chat.stepEditFile,x.chat.stepOpenUrl,x.chat.stepFetchUrl,x.chat.stepUnknownTool]),Wt=(0,Z.useCallback)(async e=>{if(!bt)return;F.current?.reject(),W(!1);let t=x.chat.sourceNoteAppendSourceLine.replace(`{{time}}`,new Date().toLocaleString(v));return te({heading:x.chat.sourceNoteAppendHeading,content:`${t}\n\n${e.trim()}`}),new Promise((e,t)=>{F.current={sourceNoteId:bt,resolve:e,reject:t}})},[v,x.chat.sourceNoteAppendHeading,x.chat.sourceNoteAppendSourceLine,bt]),Gt=`${k.pathname}${k.search}`,Kt=(0,Z.useCallback)(async e=>{try{let t=await Ue(e.trim(),`web`);Me(`success`,x.chat.messageSavedToNote,void 0,{href:nt(Gt,t.id)})}catch(e){throw Me(`error`,e instanceof Error?e.message:x.notes.quickCaptureFailed),e}},[Gt,x.chat.messageSavedToNote,x.notes.quickCaptureFailed]),qt=(0,Z.useCallback)(async()=>{let e=F.current;if(!e||!H)return;let t=H.heading.trim()||x.chat.sourceNoteAppendHeading,n=H.content.trim();if(n){W(!0),re(null);try{await He(e.sourceNoteId,n,t),window.dispatchEvent(new CustomEvent(`note-updated`,{detail:{noteId:e.sourceNoteId,source:`chat`,conversationId:Ce}})),e.resolve(),F.current=null,te(null)}catch(e){re(e instanceof Error?e.message:x.chat.sourceNoteSaveFailed)}finally{W(!1)}}},[Ce,x.chat.sourceNoteAppendHeading,x.chat.sourceNoteSaveFailed,x.chat.sourceNoteSaveSuccess,H]),Yt=(0,Z.useCallback)(async e=>{if(!bt)return;let t=e.trim().split(/\n+/)[0]?.replace(/^[-#*>\s]+/,``).trim()||x.chat.sourceNoteTaskFallbackTitle;try{await Ve(t.slice(0,120),{sourceNoteId:bt,sourceConversationId:Ce})}catch(e){throw Me(`error`,e instanceof Error?e.message:x.chat.sourceNoteTaskFailed),e}},[Ce,x.chat.sourceNoteTaskFailed,x.chat.sourceNoteTaskFallbackTitle,x.chat.sourceNoteTaskSuccess,bt]),Xt=(0,Z.useCallback)(()=>{if(!bt)return;let e=x.chat.sourceNoteDigestPrompt.replace(`{{title}}`,Nt);if(q.streaming||q.sending){ue.addPendingFollowUp(e),sa({tone:`info`,status:`done`,title:x.chat.sourceNoteDigestQueued,source:v===`zh`?`笔记整理`:`Note digest`,dedupeKey:bt?`note-digest:${bt}`:void 0});return}q.sendMessage(e)},[ue,v,x.chat.sourceNoteDigestPrompt,x.chat.sourceNoteDigestQueued,bt,Nt,q]),Zt=(0,Z.useCallback)(async e=>{if(!(jt||zt.busy)){if(K.projectPreparation){At.current=null,O(Hr(e),{state:{forceNewChat:!0,agentId:fe.displayAgentId,temporary:K.userContextMode===`temporary`}});return}if(!(At.current!==void 0||q.sending||q.streaming||ht)){At.current=Ce,Mt(!0);try{e?O(Hr(e),{state:{forceNewChat:!0,agentId:fe.displayAgentId,temporary:K.userContextMode===`temporary`}}):await K.createNewSession({forceNew:!0,projectId:e,temporary:K.userContextMode===`temporary`})}catch(e){At.current=void 0,Me(`error`,x.chat.composerContext.changeFailed,{error:e instanceof Error?e.message:String(e)})}finally{Mt(!1)}}}},[Ce,ht,x.chat.composerContext.changeFailed,jt,zt.busy,K.createNewSession,K.projectPreparation,K.userContextMode,q.sending,q.streaming,O,fe.displayAgentId]),Qt=(0,Z.useCallback)(()=>Zt(null),[Zt]),$t=(0,Z.useCallback)(async e=>{if(!(jt||ht||q.sending||q.streaming||!dt)){Mt(!0);try{await K.onSessionWorkingDirectoryChange(e)}finally{Mt(!1)}}},[jt,ht,q.sending,q.streaming,dt,K.onSessionWorkingDirectoryChange]),en=(0,Z.useMemo)(()=>({project:St,draftRefs:Ct,draftAttachments:Tt,draftPage:kt?{id:`${kt.envelope.tabId}:${kt.envelope.sequence}`,title:kt.title||(v===`zh`?`当前页面`:`Current page`)}:void 0,onLeaveProject:jt||zt.busy?void 0:Qt,leaveProjectLabel:x.chat.scopeRemoveProject,onDraftSourceNote:bt?Xt:void 0,draftSourceNoteLabel:x.chat.sourceNoteDigestAction}),[jt,zt.busy,St,Ct,Tt,kt,v,Qt,x.chat.scopeRemoveProject,bt,Xt,x.chat.sourceNoteDigestAction]);return G.hasToken?(q.error?zn(q.error):null)?.code===`session_not_found`?(0,X.jsxs)(`div`,{className:`flex h-full min-h-0 flex-1 flex-col overflow-hidden bg-surface-panel`,children:[(0,X.jsx)(gD,{}),(0,X.jsx)(sD,{chatHeadline:x.chat.sessionNotFoundTitle,chatAgents:fe.chatAgents?.items??[],showChatAgentSelector:!1,chatAgentId:fe.displayAgentId,onChatAgentChange:fe.onChatAgentChange,chatAgentDisabled:!0}),(0,X.jsx)(`main`,{className:`mx-auto flex w-full max-w-xl flex-1 items-center px-4 py-12 sm:px-6`,children:(0,X.jsx)(`div`,{className:`w-full`,children:(0,X.jsx)(Lm,{errorText:q.error})})})]}):(0,X.jsx)(b_,{value:Ne,children:(0,X.jsxs)(`div`,{className:J(`flex h-full min-h-0 flex-1 flex-col bg-surface-panel`,a?`overflow-clip`:`overflow-hidden`),children:[(0,X.jsx)(gD,{}),!e||a?(0,X.jsx)(sD,{inline:a,chatHeadline:me&&ce.items.length===0?x.skills.findTitle:yt,chatAgents:fe.chatAgents?.items??[],showChatAgentSelector:!a&&!ge&&fe.showChatAgentSelector,chatAgentId:fe.displayAgentId,onChatAgentChange:fe.onChatAgentChange,chatAgentDisabled:zt.busy||jt||ht&&!K.projectPreparation,conversationId:K.conversationId,hasMessages:!ht&&ce.items.length>0,workspacePath:K.effectiveWorkspacePath,userContextMode:K.userContextMode,projectId:St?.id,context:en,canChangeWorkspace:!1,workspaceDisabled:ht||q.sending||q.streaming,onWorkspaceChange:K.onSessionWorkingDirectoryChange,prepareTerminalSession:K.projectPreparation?zt.prepareSession:void 0,terminalDisabled:!!(K.projectPreparation&&(zt.busy||!zt.allowed||zt.checking)),showContextControls:!ge,onFindOpen:lt.show}):null,(0,X.jsxs)(`div`,{className:`relative flex min-h-0 w-full flex-1 flex-col`,children:[!e&&je?.parentConversationId?(0,X.jsxs)(`div`,{className:`shrink-0 border-b border-edge-subtle bg-surface-panel/80 px-3 py-2 text-xs text-fg-muted sm:px-5 xl:px-6`,children:[(0,X.jsx)(u,{to:`/chat/${encodeURIComponent(je.parentConversationId)}`,className:`font-medium text-accent transition-colors hover:text-accent-fg`,children:x.chat.forkedFromConversation.replace(`{{name}}`,je.forkedFromSessionName||x.chat.forkedFromConversationFallback)}),(0,X.jsx)(`span`,{className:`ms-2`,children:x.chat.forkSharedWorkspaceNotice})]}):null,k.state?.fromAgentEditor&&fe.displayAgentId?(0,X.jsx)(`div`,{className:`shrink-0 border-b border-edge-subtle bg-surface-panel/80 px-3 py-1.5 sm:px-5 xl:px-6`,children:(0,X.jsxs)(u,{to:ko(fe.displayAgentId),className:`inline-flex items-center gap-1 text-xs font-medium text-accent transition-colors hover:text-accent-fg`,children:[(0,X.jsx)(`span`,{"aria-hidden":!0,children:`←`}),x.agentsSettings.backToEditor]})}):null,e&&bt?(0,X.jsx)(`div`,{className:`shrink-0 border-b border-edge-subtle bg-surface-panel/80 px-3 py-1.5 sm:px-5 xl:px-6`,children:(0,X.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-center justify-between gap-2 text-xs text-fg-muted`,children:[(0,X.jsx)(`span`,{className:`min-w-0 truncate`,children:x.chat.sourceNoteBanner.replace(`{{title}}`,Nt)}),(0,X.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[(0,X.jsxs)(`button`,{type:`button`,className:`inline-flex h-7 items-center gap-1.5 rounded-md border border-edge-subtle px-2 font-medium text-fg-muted transition-colors hover:bg-surface-hover hover:text-fg focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-accent`,onClick:Xt,children:[(0,X.jsx)(Te,{className:`size-3.5`,strokeWidth:1.75,"aria-hidden":!0}),(0,X.jsx)(`span`,{children:x.chat.sourceNoteDigestAction})]}),(0,X.jsx)(u,{to:nt(`${k.pathname}${k.search}`,bt),className:`font-medium text-accent transition-colors hover:text-accent-fg`,children:x.chat.sourceNoteOpen})]})]})}):null,(0,X.jsxs)(`div`,{className:`relative flex min-h-0 min-w-0 flex-1 flex-col`,children:[(0,X.jsx)(GD,{open:lt.open,query:lt.query,activeIndex:lt.activeIndex,resultCount:lt.resultCount,searching:lt.searching,truncated:lt.truncated,limitedToLoaded:lt.limitedToLoaded,inputRef:lt.inputRef,labels:x.chat.find,onQueryChange:lt.setQuery,onPrevious:lt.previous,onNext:lt.next,onClose:lt.close}),!e||a?(0,X.jsx)(`div`,{className:`pointer-events-none absolute inset-y-0 left-1/2 z-20 hidden w-full max-w-[calc(var(--max-width-chat-frame)+8rem)] -translate-x-1/2 xl:block`,children:(0,X.jsx)(`div`,{className:`pointer-events-auto absolute inset-y-0 right-0`,children:(0,X.jsx)(zk,{items:le.items,activeMessageIndex:Qe+rt,labels:Ut,onSelectMessage:ct})})}):null,(0,X.jsx)(`div`,{ref:Be,"data-chat-scroll-viewport":!0,className:J(`chat-messages chat-messages--wide-viewport relative min-h-0 flex-1 overflow-y-auto overflow-x-hidden [overflow-anchor:none] [scrollbar-gutter:stable_both-edges]`,_t?`chat-messages--compact-welcome pt-5 pb-2`:`py-4`),onScroll:st,"data-chat-find-open":lt.open?``:void 0,children:(0,X.jsx)(`div`,{className:e&&!r?`px-3`:`px-3 sm:px-5 xl:px-6`,children:(0,X.jsx)(`div`,{"data-chat-message-frame":!0,className:J(`mx-auto w-full min-w-0`,(!e||r||a)&&`max-w-[var(--max-width-chat-frame)]`),children:mt?(0,X.jsxs)(`div`,{className:`flex min-h-[min(40vh,20rem)] w-full flex-col gap-10 py-8`,"aria-busy":`true`,children:[(0,X.jsx)(`div`,{className:`flex justify-end`,children:(0,X.jsx)(Jt,{className:`h-11 w-[min(70%,22rem)] rounded-2xl`})}),(0,X.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,X.jsx)(Jt,{className:`h-4 w-24`}),(0,X.jsx)(Jt,{className:`h-4 w-[min(82%,36rem)]`}),(0,X.jsx)(Jt,{className:`h-4 w-[min(74%,32rem)]`}),(0,X.jsx)(Jt,{className:`h-4 w-[min(48%,22rem)]`})]}),(0,X.jsx)(`div`,{className:`flex justify-end`,children:(0,X.jsx)(Jt,{className:`h-11 w-[min(62%,18rem)] rounded-2xl`})})]}):(0,X.jsxs)(X.Fragment,{children:[K.loadingMore?(0,X.jsx)(`div`,{className:`mb-3 text-center text-xs text-fg-muted`,children:x.chat.loadOlder}):null,q.error?(0,X.jsx)(`div`,{className:J(`sticky z-20 shrink-0 bg-transparent pe-2`,_t?`-top-5`:`-top-4`),children:(0,X.jsx)(Lm,{errorText:q.error})}):null,Ne&&!a&&Ce?(0,X.jsx)(Co,{conversationId:Ce,language:v,running:q.streaming||q.sending}):null,Ne&&!a&&ce.items.length>0?(0,X.jsx)(u,{className:`mb-4 inline-block rounded-md px-2 py-1 text-xs text-fg-muted hover:bg-surface-hover`,to:`/automations`,children:v===`zh`?`← 定时任务`:`← Scheduled tasks`}):null,!e&&oe?(0,X.jsx)(`div`,{className:`hidden md:block`,children:(0,X.jsx)(Ks,{taskId:oe})}):null,null,null,!e&&Ce?(0,X.jsx)(z,{eventType:`session.transcript.updated`,source:`sessions`,payloadKey:`conversationId`,payloadValue:Ce,className:`mb-6`}):null,(0,X.jsx)(EC,{scrollRef:Be,messages:ce.items,timelineEntries:o,personal:r,authToken:C??void 0,conversationId:K.decodedKey??K.conversationId,projectId:St?.id,streaming:q.streaming,sending:q.sending,progress:q.progress,reasoningLevel:K.reasoningLevel,showAssistantWorkLog:!0,registerListContentRef:Ke,replySpaceRef:Je,onPickWelcomePrompt:ut,welcomeSpotlight:It,welcomeOverlay:r&&i?(0,X.jsxs)(`div`,{className:`mx-auto flex w-full max-w-2xl flex-col items-start gap-3 px-4 py-8 text-fg`,children:[(0,X.jsx)(`div`,{className:`flex size-16 items-center justify-center rounded-3xl bg-accent/10 text-3xl text-accent`,"aria-hidden":!0,children:i.avatar??`✦`}),(0,X.jsx)(`h2`,{className:`text-2xl font-semibold`,children:v===`zh`?`你好${i.addressAs?`,${i.addressAs}`:``}。我们从哪里开始?`:`Hello${i.addressAs?`, ${i.addressAs}`:``}. Where should we start?`}),(0,X.jsx)(`p`,{className:`max-w-xl text-sm leading-relaxed text-fg-muted`,children:i.opening??(v===`zh`?`想讨论问题、整理思路或推进工作,都可以直接说。`:`Bring a question, an idea, or work to move forward.`)})]}):Ne?(0,X.jsxs)(`div`,{className:`mx-auto max-w-xl px-4 py-10 text-center`,children:[(0,X.jsx)(`h2`,{className:`text-xl font-semibold text-fg`,children:Pe?v===`zh`?`想怎么调整这个任务?`:`What would you like to change?`:v===`zh`?`你想安排什么任务?`:`What would you like to schedule?`}),(0,X.jsx)(`p`,{className:`mt-2 text-sm leading-6 text-fg-muted`,children:Pe?v===`zh`?`直接说要改的内容、时间,或告诉我暂停、恢复。`:`Change what it does or when it runs, or ask to pause or resume.`:v===`zh`?`说说要做的事,时间和细节我们一起确定。`:`Tell us what to do. We’ll work out the timing and details together.`}),a?null:(0,X.jsx)(u,{className:`mt-4 inline-block text-xs text-fg-muted hover:text-fg`,to:`/automations`,children:v===`zh`?`← 返回定时任务`:`← Back to scheduled tasks`})]}):ge?(0,X.jsx)(Wk,{agentName:Ft.name?.trim()||fe.displayAgentId,messages:x.agentsSettings,disabled:K.sessionRoutePending||K.showSessionLoading,onPick:e=>{P.current+=1,L({id:P.current,text:e})}}):me?(0,X.jsx)(dw,{sk:x.skills,disabled:K.sessionRoutePending||K.showSessionLoading,onPick:e=>{P.current+=1,L({id:P.current,text:Br(`find-skills`,e)})}}):void 0,compactWelcome:e,onDeleteRound:oe?void 0:q.deleteMessageRound,onRetryUserMessageRound:oe?void 0:q.retryUserMessageRound,deleteRoundDisabled:q.streaming||q.sending,onEditUserMessage:oe?void 0:Bt,editLatestUserOnly:!0,editRequiresTurnId:!0,onSaveAssistantAsNote:Kt,onSaveAssistantToSourceNote:bt?Wt:void 0,onExtractAssistantTask:bt?Yt:void 0,onForkAssistantTurn:!oe&&je?.sessionType===`chat`?Fe:void 0,trailingContent:Le?(0,X.jsxs)(`div`,{className:`mx-auto w-full max-w-2xl rounded-2xl border border-edge-subtle bg-surface-panel px-4 py-3 text-sm`,children:[(0,X.jsx)(`p`,{className:`text-fg-muted`,children:v===`zh`?`这个回答合适吗?点选后可以在输入框修改,再发给我。`:`Did that response work for you? Pick an adjustment, edit it, then send.`}),(0,X.jsxs)(`div`,{className:`mt-3 flex flex-wrap gap-2`,children:[[[v===`zh`?`再短一点`:`Make it shorter`,v===`zh`?`这次回答再短一点。`:`Please make this answer shorter.`],[v===`zh`?`更温和一点`:`A little gentler`,v===`zh`?`这次回答的语气更温和一点。`:`Please make this answer a little gentler.`]].map(([e,t])=>(0,X.jsx)(`button`,{type:`button`,onClick:()=>Re(t),className:`rounded-full border border-edge px-3 py-1.5 text-xs text-fg transition-colors hover:bg-surface-hover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,children:e},e)),(0,X.jsx)(`button`,{type:`button`,onClick:()=>Re(),className:`rounded-full px-3 py-1.5 text-xs text-fg-muted transition-colors hover:bg-surface-hover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,children:v===`zh`?`这样就好`:`Looks good`})]})]}):null},Ce)]})})})}),(0,X.jsx)(`div`,{ref:We,className:J(`chat-composer-dock pointer-events-none absolute inset-x-0 bottom-0 z-10`,r?`[--chat-composer-bottom-radius:1.65rem]`:`[--chat-composer-bottom-radius:1rem]`,_t?`[--chat-composer-bottom-space:max(0.625rem,env(safe-area-inset-bottom))]`:`[--chat-composer-bottom-space:max(0.5rem,env(safe-area-inset-bottom))] sm:[--chat-composer-bottom-space:max(1rem,env(safe-area-inset-bottom))]`),children:(0,X.jsx)(`div`,{className:e&&!r?`px-3`:`px-3 sm:px-5 xl:px-6`,children:(0,X.jsxs)(`div`,{"data-chat-composer-frame":!0,"data-primary-chat-composer":!e||void 0,className:J(`pointer-events-auto relative mx-auto w-full min-w-0 pb-[var(--chat-composer-bottom-space)]`,(!e||r||a)&&`max-w-[calc(var(--max-width-chat-frame)+14px)]`,_t?`pt-2.5`:`pt-2 sm:pt-4`),children:[(0,X.jsx)(AC,{visible:!K.showSessionLoading&&!Ge,onClick:()=>qe(!0),running:q.streaming||q.sending}),(0,X.jsx)(`div`,{className:`absolute bottom-full right-0 z-20 mb-2 flex items-center rounded-full border border-edge-subtle bg-surface-overlay p-1 shadow-elevated backdrop-blur-sm empty:hidden xl:hidden`,children:!e||a?(0,X.jsx)(Mk,{items:le.items,activeMessageIndex:Qe+rt,labels:Ut,openLabel:x.chat.timelineOpen,closeLabel:x.chat.timelineClose,currentLabel:x.chat.timelineCurrent,onSelectMessage:ct}):null}),(0,X.jsx)(Bd,{prompt:de.clarifyPrompt,submitting:de.clarifySubmitting,submitError:de.clarifySubmitError,labels:x.chat,onSubmit:de.submitClarifyAnswer,onAgentDecide:de.letAgentDecideClarification,onCancel:de.cancelClarification}),vt?(0,X.jsx)(wD,{plan:vt.plan,changeSummary:vt.changeSummary,isStreaming:q.streaming,labels:{heading:x.chat.planHeading,stepProgress:x.chat.planStepProgress,completedProgress:x.chat.planCompletedProgress,finished:x.chat.planFinished,ended:x.chat.planEnded,planned:x.chat.planPlanned,filesChangedOne:x.chat.planFilesChanged_one,filesChangedOther:x.chat.planFilesChanged_other}}):null,me&&ce.items.length>0?(0,X.jsx)(`div`,{className:`mb-2 text-right`,children:(0,X.jsx)(u,{to:`/capabilities/skills`,className:`text-xs text-accent-fg hover:underline`,children:x.skills.findBack})}):null,(0,X.jsx)(cw,{}),(0,X.jsx)(DE,{personal:r,nextTurnSuggestionsEnabled:!q.streaming,onPersonalSendDispatched:r?Ze:void 0,placeholder:r?q.streaming||q.sending?v===`zh`?`继续聊,或补充要求…`:`Keep talking or add a detail…`:v===`zh`?`发消息给「${i?.name||`Personal AI`}」…`:`Message ${i?.name||`Personal AI`}…`:ge?x.agentsSettings.setupComposerPlaceholder:me?x.skills.findPlaceholder:void 0,composerContext:!ge&&!e&&!oe&&!ie&&!gt&&ce.items.length===0?{project:St,disabled:jt||zt.busy||ht&&!K.projectPreparation,environmentPicker:K.projectPreparation?(0,X.jsx)(jE,{selection:zt}):void 0,workspacePath:K.effectiveWorkspacePath,canChangeWorkspace:dt,onProjectChange:Zt,onWorkspaceChange:$t}:void 0,contextRefs:Ct,pageContextPreview:kt&&Ot?(0,X.jsx)(OE,{draft:kt,disabled:q.sending,waiting:q.streaming,onRemove:()=>Lo.remove(Ot,kt)}):void 0,setContextRefs:wt,onDraftAttachmentsChange:Et,disabled:s||mt||zt.busy||jt,sendDisabled:s||!K.modelConfigReady||!K.projectPreparation&&ht||!!(K.projectPreparation&&!zt.allowed)||K.modelConfigSaving||zt.busy||jt,sending:q.sending,streaming:q.streaming,conversationId:K.conversationId,prepareContextSession:K.projectPreparation?zt.prepareSession:void 0,welcomeDraftSeed:I,welcomeSuggestion:!me&&_t?Lt:null,onAcceptWelcomeSuggestion:ut,thinkingLevel:K.thinkingLevel,modelSupportsThinking:K.modelSupportsThinking,onThinkingChange:K.onSessionThinkingLevelChange,onSend:zt.send,editingUserTurnId:ie?.turnId,onCancelUserMessageEdit:Vt,onAbort:q.abort,onAddPendingFollowUp:async(e,t,n,r)=>{await ue.addPendingFollowUp(e,t,n,kt?.envelope,r),Ot&&kt&&Lo.remove(Ot,kt)},onSteeringInterrupt:kt?void 0:(e,t,n)=>void q.interruptAndSend(e,t,void 0,n),pendingFollowUps:ue.pendingFollowUps,editingFollowUpId:ue.editingFollowUpId,onBeginEditFollowUp:ue.beginEditFollowUp,onCancelEditFollowUp:ue.cancelEditFollowUp,onCommitEditFollowUp:(e,t,n,r,i)=>void ue.commitEditFollowUp(e,t,n,r,i),onPendingFollowUpRemove:ue.removePendingFollowUp,onPendingFollowUpMove:ue.movePendingFollowUp,onPendingFollowUpReorder:ue.reorderPendingFollowUp,onPendingFollowUpSteer:e=>void ue.steerPendingFollowUp(e),steeringFollowUpId:ue.steeringFollowUpId,sessionModel:K.sessionModel,showModelSelector:!r,onModelChange:K.onSessionModelChange,modelDisabled:ht&&!K.projectPreparation||zt.busy||K.modelConfigSaving,onChatAgentChange:!r&&!ge&&!oe&&fe.showChatAgentSelector?fe.onChatAgentChange:void 0,currentAgentId:fe.displayAgentId,voiceAgentName:r&&i?i.name:Ft.name,voiceTaskId:oe??void 0,voiceMode:r?`assistant`:void 0,prepareVoiceSession:K.projectPreparation?()=>K.projectPreparation.create(zt.mode):void 0})]})})})]})]}),(!e||a)&&Ce&&window.electronAPI?.terminal?(0,X.jsx)(Z.Suspense,{fallback:null,children:(0,X.jsx)(Kk,{conversationId:Ce},Ce)}):null,(0,X.jsx)(D,{open:H!==null,onOpenChange:e=>{!e&&!U&&Ht()},children:(0,X.jsxs)(w,{children:[(0,X.jsx)(b,{className:`xopc-dialog-overlay fixed inset-0 z-[80] bg-scrim backdrop-blur-[1px]`}),(0,X.jsxs)(T,{className:`xopc-dialog-content fixed left-1/2 top-1/2 z-[90] flex h-[min(82vh,42rem)] w-[min(100%-2rem,44rem)] -translate-x-1/2 -translate-y-1/2 flex-col overflow-hidden rounded-xl border border-edge bg-surface-overlay shadow-popover outline-none`,children:[(0,X.jsxs)(`div`,{className:`shrink-0 border-b border-edge-subtle px-5 py-4`,children:[(0,X.jsx)(E,{className:`text-base font-semibold text-fg`,children:x.chat.sourceNoteSaveDialogTitle}),(0,X.jsx)(S,{className:`mt-1 text-sm text-fg-muted`,children:x.chat.sourceNoteSaveDialogDescription.replace(`{{title}}`,Nt)})]}),(0,X.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col gap-4 overflow-y-auto px-5 py-4`,children:[ne?(0,X.jsxs)(`p`,{className:`rounded-lg border border-danger/25 bg-danger-soft px-3 py-2 text-sm text-danger`,role:`alert`,children:[x.chat.sourceNoteSaveFailed,`: `,ne]}):null,(0,X.jsxs)(`label`,{className:`flex flex-col gap-1.5 text-sm font-medium text-fg`,children:[(0,X.jsx)(`span`,{children:x.chat.sourceNoteSaveDialogHeadingLabel}),(0,X.jsx)(`input`,{value:H?.heading??``,onChange:e=>te(t=>t&&{...t,heading:e.target.value}),className:`h-10 rounded-lg border border-edge bg-surface-base px-3 text-sm font-normal text-fg outline-none transition-colors focus:border-accent focus:ring-2 focus:ring-accent/20`,disabled:U})]}),(0,X.jsxs)(`label`,{className:`flex min-h-0 flex-1 flex-col gap-1.5 text-sm font-medium text-fg`,children:[(0,X.jsx)(`span`,{children:x.chat.sourceNoteSaveDialogContentLabel}),(0,X.jsx)(`textarea`,{value:H?.content??``,onChange:e=>te(t=>t&&{...t,content:e.target.value}),className:`min-h-[18rem] flex-1 resize-none rounded-lg border border-edge bg-surface-base px-3 py-2 font-mono text-xs leading-relaxed text-fg outline-none transition-colors focus:border-accent focus:ring-2 focus:ring-accent/20`,disabled:U})]})]}),(0,X.jsxs)(`div`,{className:`flex shrink-0 justify-end gap-2 border-t border-edge-subtle px-5 py-4`,children:[(0,X.jsx)(ai,{type:`button`,variant:`secondary`,onClick:Ht,disabled:U,children:x.chat.sourceNoteSaveDialogCancel}),(0,X.jsx)(ai,{type:`button`,variant:`primary`,onClick:()=>void qt(),disabled:U||!H?.content.trim(),children:U?x.chat.sourceNoteSaveDialogSaving:x.chat.sourceNoteSaveDialogConfirm})]})]})]})})]})}):(0,X.jsx)(`div`,{className:`mx-auto w-full max-w-[var(--max-width-chat-frame)] px-3 py-16 text-center text-sm leading-relaxed text-fg-muted sm:px-5`,children:x.chat.needToken})}export{Fs as $,gf as A,Hd as B,Tf as C,Vo as Ct,pf as D,hf as E,tf as F,Ws as G,Ks as H,Zd as I,Os as J,zs as K,ef as L,lf as M,nf as N,mf as O,rf as P,Hs as Q,Gd as R,yp as S,Ho as St,vf as T,Gs as U,Bd as V,Us as W,Bs as X,ks as Y,Vs as Z,Pp as _,qo as _t,tw as a,as as at,Ep as b,Wo as bt,RC as c,ns as ct,BC as d,$o as dt,Es as et,IC as f,Qo as ft,Np as g,Jo as gt,Mp as h,Yo as ht,lw as i,os as it,df as j,ff as k,HC as l,ts as lt,EC as m,Xo as mt,Gk as n,Ss as nt,ZC as o,is as ot,AC as p,Zo as pt,Ds as q,sw as r,ss as rt,XC as s,rs as st,qk as t,bs as tt,VC as u,es as ut,Ap as v,Ko as vt,Of as w,Bo as wt,Tp as x,Uo as xt,Op as y,Go as yt,Kd as z};
|
|
71
|
+
`,document.head.appendChild(e)}function tO(e){let t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_TEXT,{acceptNode(e){let t=e.parentElement;return!e.textContent||!t||t.closest(`button, [hidden], [aria-hidden="true"], .sr-only, script, style`)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT}}),r=n.nextNode();for(;r;)t.push(r),r=n.nextNode();return t}function nO(e,t,n){let r=e.find(e=>e.end>t),i=[...e].reverse().find(e=>e.start<n);if(!r||!i)return null;let a=document.createRange();return a.setStart(r.node,t-r.start),a.setEnd(i.node,n-i.start),a}function rO(e,t){let n=t.toLowerCase(),r=e.toLowerCase();if(!n)return[];let i=[],a=0;for(;a<=r.length-n.length;){let e=r.indexOf(n,a);if(e<0)break;i.push({start:e,end:e+n.length}),a=e+Math.max(n.length,1)}return i}function iO(e,t){let n=t.trim();if(!n)return[];let r=[],i=e.querySelectorAll(`[data-chat-message-index]`);for(let e of i){let t=e.dataset.chatMessageIndex,i=t?Number.parseInt(t,10):NaN;if(!Number.isFinite(i))continue;let a=0;for(let t of e.querySelectorAll(`[data-chat-find-text]`)){let e=tO(t),o=[],s=``;for(let t of e){let e=t.textContent??``,n=s.length;s+=e,o.push({node:t,start:n,end:s.length})}for(let e of rO(s,n)){let t=nO(o,e.start,e.end);t&&(r.push({messageIndex:i,occurrence:a,range:t}),a+=1)}}}return r}function aO(e,t){let n=$D();if(!n||(eO(),n.registry.delete(XD),n.registry.delete(ZD),e.length===0))return;n.registry.set(XD,new n.Highlight(...e.map(e=>e.range)));let r=e[t];r&&n.registry.set(ZD,new n.Highlight(r.range))}function oO(){let e=$D();e?.registry.delete(XD),e?.registry.delete(ZD)}function sO(e,t,n=96){let r=t.range.getBoundingClientRect(),i=e.getBoundingClientRect(),a=i.top+n,o=i.bottom-24;r.top>=a&&r.bottom<=o||(CC(e),e.scrollTo({top:Math.max(0,e.scrollTop+r.top-a),behavior:window.matchMedia?.(`(prefers-reduced-motion: reduce)`).matches?`auto`:`smooth`}))}function cO(e,t){return t===0?0:(e+t)%t}function lO(e){return`${e.displayIndex}:${e.occurrence}`}function uO(e,t){return e.length===t.length&&e.every((e,n)=>{let r=t[n];return r?.messageIndex===e.messageIndex&&r.occurrence===e.occurrence&&r.range.startContainer===e.range.startContainer&&r.range.startOffset===e.range.startOffset&&r.range.endContainer===e.range.endContainer&&r.range.endOffset===e.range.endOffset})}function dO(e){let t=(0,Y.c)(66),{conversationId:n,taskId:r,messages:i,displayOffset:a,viewportRef:o,onRevealDisplayIndex:s}=e,[c,l]=(0,Z.useState)(!1),[u,d]=(0,Z.useState)(``),f;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(f=[],t[0]=f):f=t[0];let[p,m]=(0,Z.useState)(f),h;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(h=[],t[1]=h):h=t[1];let[g,_]=(0,Z.useState)(h),[v,y]=(0,Z.useState)(!1),[b,x]=(0,Z.useState)(!1),[S,C]=(0,Z.useState)(!1),[w,T]=(0,Z.useState)(0),E=(0,Z.useRef)(null),D=(0,Z.useRef)(null),O=(0,Z.useRef)(n),k=(0,Z.useDeferredValue)(u),A;if(t[2]!==a||t[3]!==p||t[4]!==g){let e=new Map(g.map(gO));for(let t of p){let n={displayIndex:a+t.messageIndex,occurrence:t.occurrence};e.set(lO(n),n)}A=[...e.values()].sort(hO),t[2]=a,t[3]=p,t[4]=g,t[5]=A}else A=t[5];let j=A,M;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(M=()=>{requestAnimationFrame(()=>{E.current?.focus(),E.current?.select()})},t[6]=M):M=t[6];let N=M,P;t[7]===c?P=t[8]:(P=()=>{if(!c){D.current=document.activeElement instanceof HTMLElement?document.activeElement:null,l(!0);return}N()},t[7]=c,t[8]=P);let F=P,I,L;t[9]===c?(I=t[10],L=t[11]):(I=()=>{c&&N()},L=[N,c],t[9]=c,t[10]=I,t[11]=L),(0,Z.useLayoutEffect)(I,L);let R;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(R=()=>{l(!1),d(``),m([]),_([]),y(!1),x(!1),C(!1),T(0),oO(),D.current?.focus(),D.current=null},t[12]=R):R=t[12];let z=R,B;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(B=e=>{d(e),T(0)},t[13]=B):B=t[13];let ee=B,V;t[14]===j.length?V=t[15]:(V=e=>{T(t=>cO(t+e,j.length))},t[14]=j.length,t[15]=V);let H=V,te,U;t[16]!==H||t[17]!==c||t[18]!==F?(te=()=>{let e=e=>{let t=e.metaKey||e.ctrlKey;if(t&&!e.altKey&&!e.shiftKey&&e.key.toLowerCase()===`f`){if(document.querySelector(`[role="dialog"][data-state="open"]`))return;e.preventDefault(),F();return}if(c){if(t&&!e.altKey&&e.key.toLowerCase()===`g`){e.preventDefault(),H(e.shiftKey?-1:1);return}e.key===`Escape`&&(e.preventDefault(),z())}};return window.addEventListener(`keydown`,e,!0),()=>window.removeEventListener(`keydown`,e,!0)},U=[z,H,c,F],t[16]=H,t[17]=c,t[18]=F,t[19]=te,t[20]=U):(te=t[19],U=t[20]),(0,Z.useEffect)(te,U);let W;t[21]!==k||t[22]!==c||t[23]!==o?(W=()=>{let e=o.current;if(!c||!e||!k.trim()){m(mO),oO();return}let t=()=>{let t=iO(e,k);m(e=>uO(e,t)?e:t)};t();let n=null,r=new MutationObserver(()=>{n===null&&(n=requestAnimationFrame(()=>{n=null,t()}))});return r.observe(e,{childList:!0,subtree:!0,characterData:!0}),()=>{r.disconnect(),n!==null&&cancelAnimationFrame(n)}},t[21]=k,t[22]=c,t[23]=o,t[24]=W):W=t[24];let ne;t[25]!==k||t[26]!==i||t[27]!==c||t[28]!==o?(ne=[k,i,c,o],t[25]=k,t[26]=i,t[27]=c,t[28]=o,t[29]=ne):ne=t[29],(0,Z.useLayoutEffect)(W,ne);let re,ie;t[30]!==n||t[31]!==k||t[32]!==c||t[33]!==r?(re=()=>{let e=k.trim();if(!c||!n||!e){_([]),y(!1),x(!1),C(!1);return}let t=new AbortController;_([]),y(!1),x(!1),C(!0);let i=window.setTimeout(()=>{YD(n,e,{taskId:r,signal:t.signal}).then(e=>{_(e.matches),y(e.truncated)}).catch(e=>{e?.name!==`AbortError`&&(_([]),y(!1),x(!0))}).finally(()=>{t.signal.aborted||C(!1)})},150);return()=>{window.clearTimeout(i),t.abort()}},ie=[n,k,c,r],t[30]=n,t[31]=k,t[32]=c,t[33]=r,t[34]=re,t[35]=ie):(re=t[34],ie=t[35]),(0,Z.useEffect)(re,ie);let ae,oe;t[36]===j.length?(ae=t[37],oe=t[38]):(ae=()=>{T(e=>Math.min(e,Math.max(0,j.length-1)))},oe=[j.length],t[36]=j.length,t[37]=ae,t[38]=oe),(0,Z.useEffect)(ae,oe);let se,G;t[39]!==w||t[40]!==j||t[41]!==a||t[42]!==p||t[43]!==s||t[44]!==o?(se=()=>{let e=j[w],t=o.current;if(!t||!e){aO(p,-1);return}let n=e.displayIndex-a,r=p.findIndex(t=>t.messageIndex===n&&t.occurrence===e.occurrence);aO(p,r),r>=0?sO(t,p[r]):s(e.displayIndex)},G=[w,j,a,p,s,o],t[39]=w,t[40]=j,t[41]=a,t[42]=p,t[43]=s,t[44]=o,t[45]=se,t[46]=G):(se=t[45],G=t[46]),(0,Z.useLayoutEffect)(se,G);let K;t[47]===Symbol.for(`react.memo_cache_sentinel`)?(K=[],t[47]=K):K=t[47],(0,Z.useEffect)(fO,K);let ce,le;t[48]!==n||t[49]!==c?(ce=()=>{O.current!==n&&(O.current=n,c&&z())},le=[z,n,c],t[48]=n,t[49]=c,t[50]=ce,t[51]=le):(ce=t[50],le=t[51]),(0,Z.useEffect)(ce,le);let q,ue;t[52]===H?(q=t[53],ue=t[54]):(q=()=>H(-1),ue=()=>H(1),t[52]=H,t[53]=q,t[54]=ue);let de;return t[55]!==w||t[56]!==j.length||t[57]!==b||t[58]!==c||t[59]!==u||t[60]!==v||t[61]!==S||t[62]!==F||t[63]!==q||t[64]!==ue?(de={open:c,query:u,inputRef:E,activeIndex:w,resultCount:j.length,truncated:v,limitedToLoaded:b,searching:S,setQuery:ee,show:F,close:z,previous:q,next:ue},t[55]=w,t[56]=j.length,t[57]=b,t[58]=c,t[59]=u,t[60]=v,t[61]=S,t[62]=F,t[63]=q,t[64]=ue,t[65]=de):de=t[65],de}function fO(){return pO}function pO(){return oO()}function mO(e){return e.length===0?e:[]}function hO(e,t){return e.displayIndex-t.displayIndex||e.occurrence-t.occurrence}function gO(e){return[lO(e),e]}function _O(e){let t=String(e??``).trim();return!t||t===`new`?null:t}function vO(e){let t=String(e.streamConversationId??``).trim(),n=_O(e.routeConversationId);return!t||!n?!1:t===n}function yO(e){let t=_O(e.routeConversationId);return t?e.cacheConversationId===t:!1}function bO(e){let t=String(e.chatId??``).trim();if(!t)return!1;let n=_O(e.routeConversationId);return n?n===t:!1}function xO(e,t){return e?`new`:t??null}function SO(e,t){if(!(e||!t))return decodeURIComponent(t)}function CO(e){if(!e.viewConversationId||e.conversationId!==e.viewConversationId)return[];if(!e.streamingMsg)return e.messages;let t=e.messages[e.messages.length-1];if(t?.role===`assistant`&&e.streamingMsg.role===`assistant`){let n=Xn([t,e.streamingMsg]);return[...e.messages.slice(0,-1),...n]}return[...e.messages,e.streamingMsg]}function wO(e,t){let n=e[e.length-1];return n?.role!==`assistant`||n.turnId!==t?null:{messagesWithoutTail:e.slice(0,-1),tail:n}}function TO(e){e()}function EO(e,t){return!!(e&&(e.localDraft||e.configVersion!==void 0)&&t?.some(t=>t.id===e.model))}function DO(e){e.sendingRef.current=!1,e.streamingRef.current=!1}function OO(e){return e.isNewRoute?`creating-session`:e.sessionRoutePending||e.showSessionLoading||e.sessionContentLoading?`loading-history`:e.messageCount===0?`ready-empty`:`ready-conversation`}var kO=new Map;async function AO(e,t,n,r,i){let a=m.getState(),o=xr([a.baseUrl,a.conversationId,e,t]),s=xr({action:n,submission:r}),c=kO.get(o);if(c){if(c.signature!==s)throw Error(`An answer is already being submitted`);return(await c.promise).clone()}let l=jO(e,t,n,r,i).then(e=>{for(e.ok||kO.delete(o);kO.size>64;)kO.delete(kO.keys().next().value);return e},e=>{throw kO.delete(o),e});return kO.set(o,{signature:s,promise:l}),(await l).clone()}async function jO(e,t,n,r,i){let a=m.getState().conversationId,o=Rd(e,t,`submission`,i),s={schemaVersion:2,action:n,...r,expectedVersion:t},c=xr(s),l=await o.read();if(l&&l.signature!==c)throw Error(`The previous answer is awaiting confirmation. Retry the original answer before changing it.`);let u=l??{signature:c,body:{...s,idempotencyKey:crypto.randomUUID()}};if(await o.write(u),window.dispatchEvent(new CustomEvent(`clarification-submission-state`,{detail:{requestId:e,pending:!0}})),m.getState().conversationId!==a)throw Error(`Active Gateway changed`);let d=await f(p(`/api/clarifications/${encodeURIComponent(e)}/responses`),{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(u.body)});return(d.ok||d.status>=400&&d.status<500)&&(await o.write(void 0),window.dispatchEvent(new CustomEvent(`clarification-submission-state`,{detail:{requestId:e,pending:!1}})),d.ok&&await Rd(e,t,`draft`,i).write(void 0)),d}function MO(e,t){if(!e||typeof e!=`object`)return null;let n=e,r=n.clarification&&typeof n.clarification==`object`?n.clarification:n;if(r.status!==void 0&&r.status!==`open`||t&&typeof r.conversationId==`string`&&r.conversationId!==t)return null;let i=typeof r.id==`string`?r.id:r.requestId,a=r.question,o=r.kind===`approval`?`approval`:`input`;return typeof i!=`string`||!i.trim()||typeof a!=`string`||!a.trim()?null:{...Gn(r),requestId:i.trim(),conversationId:t,kind:o,question:a.trim(),version:typeof r.version==`number`?r.version:1,createdAt:typeof r.createdAt==`number`?r.createdAt:Date.now(),expiresAt:typeof r.expiresAt==`number`?r.expiresAt:void 0,serverTime:typeof n.serverTime==`number`?n.serverTime:void 0}}function NO(e){let{conversationId:t,decodedKey:n,conversationIdRef:r,sendingRef:i,streamingRef:a,modelSupportsThinking:o,thinkingLevel:s,shouldApplyStreamUpdate:c}=e,[l,u]=(0,Z.useState)(null),[d,m]=(0,Z.useState)(!1),[h,g]=(0,Z.useState)(null),_=(0,Z.useRef)(null),v=(0,Z.useRef)(0),y=(0,Z.useRef)(null),[b,x]=(0,Z.useState)([]),S=(0,Z.useRef)([]),[C,w]=(0,Z.useState)(null),[T,E]=(0,Z.useState)(null),D=(0,Z.useRef)(null),O=(0,Z.useRef)(-1);_.current=l,S.current=b,D.current=T;let k=(0,Z.useCallback)(e=>{if(!e||typeof e!=`object`)return;let t=e;if(t.conversationId!==r.current||typeof t.revision!=`number`||!Array.isArray(t.inputs)||t.revision<O.current)return;let n=Nw({inputs:t.inputs,activeRunId:t.activeRunId,preparation:t.preparation});O.current=t.revision,S.current=n,x(n),D.current&&!n.some(e=>e.id===D.current)&&E(null)},[r]),A=(0,Z.useCallback)(async e=>{if(await br(e))return;let t=await f(p(`/api/sessions/${encodeURIComponent(e)}/input-state`)).catch(()=>null);if(!t?.ok||r.current!==e)return;let n=await t.json().catch(()=>null);k(n?.payload)},[k,r]),j=(0,Z.useCallback)(async e=>{let t=++v.current;if(await br(e))return;let n=await f(p(`/api/sessions/${encodeURIComponent(e)}/clarification`)).catch(()=>null);if(!n?.ok||r.current!==e)return;let i=await n.json().catch(()=>null);t!==v.current||r.current!==e||(g(null),u(MO(i?.payload,e)),y.current=null)},[r]);(0,Z.useEffect)(()=>{O.current=-1,S.current=[],x([]),E(null),u(null),!(!t||t!==n)&&(A(t),j(t))},[n,j,A,t]),(0,Z.useEffect)(()=>{let e=e=>{let t=e.detail;k(t);let n=r.current;n&&t&&typeof t==`object`&&t.conversationId===n&&j(n)},t=e=>{let t=r.current;if(!t)return;let n=e.detail;if(n&&typeof n==`object`){let e=n.conversationId;if(typeof e==`string`&&e!==t)return}g(null),v.current++,u(MO(n,t)),y.current=null},n=()=>{let e=r.current;e&&(A(e),j(e))};return window.addEventListener(`session-input-state`,e),window.addEventListener(`clarification-updated`,t),window.addEventListener(`gateway-realtime-connected`,n),()=>{window.removeEventListener(`session-input-state`,e),window.removeEventListener(`clarification-updated`,t),window.removeEventListener(`gateway-realtime-connected`,n)}},[k,j,A,r]),(0,Z.useEffect)(()=>{if(!l?.expiresAt)return;let e=Math.max(0,l.expiresAt-Date.now())+250,t=window.setTimeout(()=>{let e=r.current;e&&j(e)},e);return()=>window.clearTimeout(t)},[l?.expiresAt,j,r]);let M=(0,Z.useCallback)(()=>{g(null),u(null)},[]),N=(0,Z.useCallback)(e=>{let t=String(e??``).trim();t&&r.current===t&&(g(null),u(null))},[r]),P=(0,Z.useCallback)(()=>{g(null),u(null)},[]),F=(0,Z.useCallback)(()=>{E(null)},[]),I=(0,Z.useCallback)(()=>{g(null),u(null),E(null)},[]),L=(0,Z.useCallback)(e=>t=>{c(e)&&(i.current=!1,a.current=!1,Mn.getState().setSessionFlags(e,{sending:!1,streaming:!1}),Mn.getState().setSessionProgress(e,null),g(null),v.current++,u({...t,conversationId:e}),y.current=null)},[c,i,a]),R=(0,Z.useCallback)(async(e,t,n,i,a)=>{let o=e.trim();if(!o&&!t?.length&&!n?.length)return;if(S.current.length>=10)throw Error(`At most 10 pending messages are allowed`);let s=r.current;if(!s)throw Error(`No active session`);let c=await tr(),l=await f(p(`/api/sessions/${encodeURIComponent(s)}/inputs`),{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({kind:`append`,expectedTranscriptId:await wr(s),configVersion:Mn.getState().sessions[s]?.configVersion,clientMessageId:crypto.randomUUID(),delivery:`next`,interrupt:a,input:{content:o||e,attachments:t?.length?t:void 0,contextRefs:n?.map(({refId:e,kind:t,sourceId:n,expectedVersion:r})=>({refId:e,kind:t,sourceId:n,expectedVersion:r})),appContext:i},origin:c})}),u=await l.json().catch(()=>null);if(!l.ok){let e=typeof u?.error==`string`?u.error:u?.error?.message;throw Error(e??`Message was not accepted`)}if(!u?.payload?.inputState)throw Error(`Gateway returned an invalid input state`);k(u.payload.inputState)},[k,r]),z=(0,Z.useCallback)(e=>{E(e)},[]),B=(0,Z.useCallback)(()=>{E(null)},[]),ee=(0,Z.useCallback)((e,t,n,i,a)=>{let c=t.trim(),l=S.current,u=l.findIndex(t=>t.id===e);if(u<0){E(null);return}if(!c&&!n?.length&&!a?.length){let t=r.current;t&&f(p(`/api/sessions/${encodeURIComponent(t)}/inputs/${encodeURIComponent(e)}?version=${l[u].version}`),{method:`DELETE`}).then(async e=>k((await e.json().catch(()=>null))?.payload)).catch(()=>{A(t)}),E(null);return}let d=o?i??s:`off`;E(null);let m=r.current;m&&f(p(`/api/sessions/${encodeURIComponent(m)}/inputs/${encodeURIComponent(e)}`),{method:`PATCH`,headers:{"Content-Type":`application/json`},body:JSON.stringify({version:l[u].version,content:c||t,attachments:n?.length?n:void 0,thinking:d,contextRefs:(a??[]).map(({refId:e,kind:t,sourceId:n,expectedVersion:r})=>({refId:e,kind:t,sourceId:n,expectedVersion:r}))})}).then(async e=>{let t=await e.json().catch(()=>null);k(t?.payload)}).catch(()=>{A(m)})},[k,o,A,r,s]),V=(0,Z.useCallback)(e=>{D.current===e&&E(null);let t=r.current,n=S.current.find(t=>t.id===e);!t||!n||f(p(`/api/sessions/${encodeURIComponent(t)}/inputs/${encodeURIComponent(e)}?version=${n.version}`),{method:`DELETE`}).then(async e=>{let t=await e.json().catch(()=>null);k(t?.payload)}).catch(()=>{A(t)})},[k,A,r]),H=(0,Z.useCallback)((e,t)=>{let n=S.current.filter(e=>e.status===`queued`),i=n.findIndex(t=>t.id===e);if(i<0)return;let a=t===`up`?i-1:i+1,o=r.current,s=n[i];!o||!s||a<0||a>=n.length||f(p(`/api/sessions/${encodeURIComponent(o)}/inputs/${encodeURIComponent(s.id)}`),{method:`PATCH`,headers:{"Content-Type":`application/json`},body:JSON.stringify({version:s.version,position:a})}).then(async e=>k((await e.json().catch(()=>null))?.payload)).catch(()=>{A(o)})},[k,A,r]),te=(0,Z.useCallback)((e,t)=>{let n=r.current,i=S.current[e],a=S.current[t],o=S.current.filter(e=>e.status===`queued`),s=a?o.findIndex(e=>e.id===a.id):-1;!n||i?.status!==`queued`||a?.status!==`queued`||s<0||f(p(`/api/sessions/${encodeURIComponent(n)}/inputs/${encodeURIComponent(i.id)}`),{method:`PATCH`,headers:{"Content-Type":`application/json`},body:JSON.stringify({version:i.version,position:s})}).then(async e=>{let t=await e.json().catch(()=>null);k(t?.payload)}).catch(()=>{A(n)})},[k,A,r]),U=(0,Z.useCallback)(async e=>{let t=r.current;if(!t)return;let n=S.current.find(t=>t.id===e);if(!(!n?.text.trim()||n.attachments?.length||n.contextRefs?.length)){w(e);try{let r=await tr(),i=await f(p(`/api/sessions/${encodeURIComponent(t)}/inputs`),{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({kind:`append`,clientMessageId:crypto.randomUUID(),expectedTranscriptId:await wr(t),configVersion:Mn.getState().sessions[t]?.configVersion,delivery:`steer`,interrupt:!1,input:{content:n.text.trim()},origin:r})});if(i.ok){let t=await i.json().catch(()=>null);k(t?.payload?.inputState),V(e)}}catch{}finally{w(null)}}},[k,V,r]),W=(0,Z.useCallback)(async(e,t)=>{let n=_.current;if(!n)return;let i=JSON.stringify([n.requestId,n.version,e,t]);y.current?.signature!==i&&(y.current={signature:i,idempotencyKey:crypto.randomUUID()});let a=y.current.idempotencyKey;m(!0),g(null);try{let i=n.schemaVersion===2?await AO(n.requestId,n.version,e,t,r.current??void 0):await f(p(`/api/clarifications/${encodeURIComponent(n.requestId)}/responses`),{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({action:e,...t,expectedVersion:n.version,idempotencyKey:a})});if(_.current?.requestId!==n.requestId)return;if(!i.ok){let e=await i.json().catch(()=>({}));g(e.error?.message??i.statusText??`Clarify failed`);let t=r.current;t&&(i.status===409||i.status===410)&&j(t);return}y.current=null,u(null),g(null)}catch(e){_.current?.requestId===n.requestId&&g(e instanceof Error?e.message:String(e))}finally{m(!1)}},[j,r]);return{clarifyPrompt:l,clarifySubmitting:d,clarifySubmitError:h,clarifyPromptRef:_,pendingFollowUps:b,pendingFollowUpsRef:S,steeringFollowUpId:C,editingFollowUpId:T,addPendingFollowUp:R,beginEditFollowUp:z,cancelEditFollowUp:B,commitEditFollowUp:ee,removePendingFollowUp:V,movePendingFollowUp:H,reorderPendingFollowUp:te,steerPendingFollowUp:U,submitClarifyAnswer:(0,Z.useCallback)(e=>W(`answer`,e),[W]),letAgentDecideClarification:(0,Z.useCallback)(()=>W(`agent_decide`),[W]),cancelClarification:(0,Z.useCallback)(()=>W(`cancel`),[W]),clearVisibleClarify:M,dismissClarify:P,dismissClarifyForSession:N,clearPendingFollowUps:F,dismissClarifyAndClearPending:I,makeOnClarifyRequest:L}}async function PO(e){let t=await br(e);if(t)return{agentId:t.creation.agentId.trim().toLowerCase(),projectId:t.creation.projectId?.trim()||null};let n=await dn(e);return{agentId:(n.routing?.agentId??n.agentId).trim().toLowerCase(),projectId:n.projectId?.trim()||null}}function FO(e){let t=(0,Y.c)(59),{navigate:n,conversationIdRef:r,conversationId:i,isNewRoute:a,locationState:o,locationSearch:s,personal:c}=e,l=c!==void 0&&c,u=m(zO),d;t[0]===i?d=t[1]:(d=i?.trim()??``,t[0]=i,t[1]=d);let f=d,p;t[2]===u?p=t[3]:(p=u?[`gateway-chat-agents`,u]:null,t[2]=u,t[3]=p);let h;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(h={revalidateOnFocus:!1},t[4]=h):h=t[4];let{data:g,mutate:_}=Lr(p,Jr,h),v;t[5]!==f||t[6]!==u?(v=u&&f?[`gateway-chat-session-agent`,u,f]:null,t[5]=f,t[6]=u,t[7]=v):v=t[7];let y;t[8]===f?y=t[9]:(y=()=>PO(f),t[8]=f,t[9]=y);let b;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(b={revalidateOnFocus:!1},t[10]=b):b=t[10];let{data:x}=Lr(v,y,b),S=x?.agentId??``,C,w;t[11]===_?(C=t[12],w=t[13]):(C=()=>{let e=e=>{qr(e.detail)||_()};return window.addEventListener(`config-reload`,e),()=>window.removeEventListener(`config-reload`,e)},w=[_],t[11]=_,t[12]=C,t[13]=w),(0,Z.useEffect)(C,w);let[T,E]=(0,Z.useState)(RO),D=(0,Z.useRef)(g??null),O;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(O=Pr().selectedAgentId??null,t[14]=O):O=t[14];let k=(0,Z.useRef)(O),A,j;t[15]===g?(A=t[16],j=t[17]):(A=()=>{D.current=g??null},j=[g],t[15]=g,t[16]=A,t[17]=j),(0,Z.useEffect)(A,j);let M,N;t[18]===T?(M=t[19],N=t[20]):(M=()=>{k.current=T},N=[T],t[18]=T,t[19]=M,t[20]=N),(0,Z.useEffect)(M,N);let P,F;t[21]===g?(P=t[22],F=t[23]):(P=()=>{if(!g)return;let e=new Set(g.items.map(LO));E(t=>t==null||t===``||!e.has(t)?g.defaultId:t)},F=[g],t[21]=g,t[22]=P,t[23]=F),(0,Z.useEffect)(P,F);let I;t[24]!==r||t[25]!==S?(I=()=>{if(r.current&&S)return S;let e=D.current,t=(k.current??``).trim().toLowerCase();if(!e)return t||void 0;let n=new Set(e.items.map(IO));return t&&n.has(t)?t:e.defaultId},t[24]=r,t[25]=S,t[26]=I):I=t[26];let L=I,R;t[27]!==r||t[28]!==S||t[29]!==x?.projectId||t[30]!==a||t[31]!==s||t[32]!==o||t[33]!==n?(R=e=>{let t=e.trim().toLowerCase(),i=r.current?S||k.current:null;k.current=t,E(t),Er(t),i!==t&&n(a?`/chat/new${s}`:Hr(x?.projectId),{replace:!1,state:{...a&&o&&typeof o==`object`?o:{},agentId:t,forceNewChat:!0}})},t[27]=r,t[28]=S,t[29]=x?.projectId,t[30]=a,t[31]=s,t[32]=o,t[33]=n,t[34]=R):R=t[34],x?.projectId;let z=R,B,ee;t[35]===z?(B=t[36],ee=t[37]):(B=()=>{let e=e=>{let t=e.detail?.agentId;typeof t!=`string`||!t.trim()||z(t)};return window.addEventListener(`xopc-set-chat-agent`,e),()=>window.removeEventListener(`xopc-set-chat-agent`,e)},ee=[z],t[35]=z,t[36]=B,t[37]=ee),(0,Z.useEffect)(B,ee);let V,H;t[38]!==i||t[39]!==S||t[40]!==l?(V=()=>{if(!i||l)return;let e=S;!e||k.current===e||(k.current=e,E(e),Er(e))},H=[S,i,l],t[38]=i,t[39]=S,t[40]=l,t[41]=V,t[42]=H):(V=t[41],H=t[42]),(0,Z.useLayoutEffect)(V,H);let te,U;t[43]!==i||t[44]!==x?(te=()=>{!i||!x||Mr(x.projectId)},U=[x,i],t[43]=i,t[44]=x,t[45]=te,t[46]=U):(te=t[45],U=t[46]),(0,Z.useLayoutEffect)(te,U);let W,ne;t[47]!==a||t[48]!==o?(W=()=>{if(!a)return;let e=o,t=typeof e?.agentId==`string`?e.agentId.trim().toLowerCase():``;t&&(k.current=t,E(t),Er(t))},ne=[a,o],t[47]=a,t[48]=o,t[49]=W,t[50]=ne):(W=t[49],ne=t[50]),(0,Z.useLayoutEffect)(W,ne);let re=S||T||g?.defaultId||`main`,ie=(g?.items.length??0)>1,ae=x?.projectId??null,oe;return t[51]!==g||t[52]!==re||t[53]!==z||t[54]!==L||t[55]!==ie||t[56]!==ae||t[57]!==u?(oe={token:u,chatAgentsData:g,resolveAgentIdForPost:L,onChatAgentChange:z,displayAgentId:re,showChatAgentSelector:ie,currentSessionProjectId:ae},t[51]=g,t[52]=re,t[53]=z,t[54]=L,t[55]=ie,t[56]=ae,t[57]=u,t[58]=oe):oe=t[58],oe}function IO(e){return e.id}function LO(e){return e.id}function RO(){return Pr().selectedAgentId??null}function zO(e){return e.conversationId}async function BO(e){let t=await e.sessionMgr.createSession(e);return{kind:`create`,conversationId:t.key,session:t}}var VO=new Map,HO=0;function UO(e){let t=m.getState(),n=Dr(t.baseUrl,{agentId:e.agentId?.trim()||`main`,projectId:e.projectId??null}),r=JSON.stringify([n,t.conversationId,e.forceNew===!0,e.temporary===!0,e.executionMode,e.search]),i=VO.get(r);if(i)return i.target.opts=e,i.target.generation=++HO,i.promise;let a={opts:e,generation:++HO},o=e=>{if(a.generation!==HO)return;let t=a.opts;!t.routeConversationId&&oi.getState().scope===`new`&&oi.getState().migrateScope(`new`,e),t.onOpened(e),(t.routeConversationId?.trim()||null)!==e&&t.navigateToSession(e,t.replaceNavigate??!1,t.search)},s=(async()=>{let t=e.agentId??void 0,{conversationId:n}=await BO({sessionMgr:e.sessionMgr,agentId:t?.trim()||`main`,projectId:e.projectId,currentConversationId:e.currentConversationId,forceNew:e.forceNew,temporary:e.temporary,initialAgentConfig:e.initialAgentConfig,executionMode:e.executionMode});return o(n),n})().finally(()=>{VO.delete(r)});return VO.set(r,{promise:s,target:a}),s}var WO={current:null},GO={current:null};function KO(e){return!!(e&&typeof e==`object`&&e.forceNewChat===!0)}function qO(e){let t=c(),{conversationId:n}=s(),r=!e&&t.pathname.endsWith(`/new`),i=r&&KO(t.state),a=e??SO(r,n),o=xO(r,a),l=_O(o),u=r?null:a??null,d=(0,Z.useRef)(o);return d.current=o,WO.current=u,!r&&a&&(GO.current=a),(0,Z.useLayoutEffect)(()=>{Mn.getState().focusedConversationId!==u&&Mn.getState().setFocusedConversationId(u)},[u]),{isNewRoute:r,forceNewChat:i,decodedKey:a,routedConversationId:o,viewConversationId:l,routedFocusedConversationId:u,routeConversationIdRef:d,locationKey:t.key,locationSearch:t.search,locationState:t.state}}var JO={get current(){return GO.current}},YO={get current(){return WO.current},set current(e){WO.current=e,Mn.getState().setFocusedConversationId(e)}};function XO(e){let{token:t,isNewRoute:n,forceNewChat:r,temporary:i=!1,requestedAgentId:a,decodedKey:o,locationKey:s,locationSearch:c,sessionMgrRef:l,resolveAgentIdForPost:u,navigateToSession:d,loadSessionById:f,tryResumeAgentRun:p,restoreLiveCacheIfNeeded:h,adoptEmptySession:g,applyAgentConfig:_,patchInitUi:v}=e,y=(0,Z.useRef)(0),b=m(e=>e.baseUrl),[x,S]=(0,Z.useState)(null),C=n?c:``,w=n?`new:${s}`:o?`session:${o}`:`fallback:${s}`,T=(0,Z.useRef)({isNewRoute:n,forceNewChat:r,temporary:i,requestedAgentId:a,decodedKey:o,newRouteLocationSearch:C});T.current={isNewRoute:n,forceNewChat:r,temporary:i,requestedAgentId:a,decodedKey:o,newRouteLocationSearch:C};let E=(0,Z.useRef)({sessionMgrRef:l,resolveAgentIdForPost:u,navigateToSession:d,loadSessionById:f,tryResumeAgentRun:p,restoreLiveCacheIfNeeded:h,adoptEmptySession:g,applyAgentConfig:_,patchInitUi:v});return E.current={sessionMgrRef:l,resolveAgentIdForPost:u,navigateToSession:d,loadSessionById:f,tryResumeAgentRun:p,restoreLiveCacheIfNeeded:h,adoptEmptySession:g,applyAgentConfig:_,patchInitUi:v},(0,Z.useEffect)(()=>{let e=T.current,n=E.current;if(!t){n.patchInitUi({loading:!1});return}let r=++y.current,i=!1,a=()=>!i&&r===y.current,o=e=>{a()&&n.sessionMgrRef.current.loadSessionAgentConfig(e).then(t=>{a()&&n.applyAgentConfig(e,t)}).catch(()=>{})},s=async()=>{if(!a())return Promise.resolve();let r=Pr(),i=n.resolveAgentIdForPost(),s=kr({origin:`web-route`,project:Wr(e.newRouteLocationSearch),agentId:e.requestedAgentId??i,forceNew:e.forceNewChat,temporary:e.temporary},{defaultAgentId:i??`main`,selectedAgentId:r.selectedAgentId,lastChatScope:r.lastChatScope}),c=s.projectId?await cn(s.projectId):null;if(!a())return;!e.requestedAgentId&&c?.defaultAgentId&&(s.agentId=c.defaultAgentId);let l=Nr(r,s.agentId),u=(t,r)=>UO({sessionMgr:n.sessionMgrRef.current,agentId:s.agentId,currentConversationId:JO.current,routeConversationId:null,forceNew:s.forceNew,temporary:s.temporary,projectId:s.projectId,executionMode:t,initialAgentConfig:r??(l?{model:l.modelRef,...l.thinkingLevel?{thinkingLevel:l.thinkingLevel}:{}}:void 0),navigateToSession:(...e)=>{a()&&n.navigateToSession(...e)},replaceNavigate:!0,search:Rr(e.newRouteLocationSearch),onOpened:e=>{a()&&(n.adoptEmptySession(e,null),o(e))}});if(c?.workspaceRoot?.trim()){S({requestKey:w,token:t,baseUrl:b,project:c,agentId:s.agentId,temporary:s.temporary,create:(e,t)=>a()?u(e,t):Promise.reject(Error(`New chat request changed`))});return}await u()},c=(e,t)=>{if(!a())return Promise.resolve();n.restoreLiveCacheIfNeeded(e);let r=Vn(e)?.messages??t??_r(e);return n.tryResumeAgentRun(e,r)},l=e=>a()?Vn(e)?.historyStatus===`ready`?(o(e),c(e,_r(e))):n.loadSessionById(e,0).then(t=>{if(a())return c(e,t??_r(e))}):Promise.resolve(),u=()=>a()?n.sessionMgrRef.current.loadSessions().then(e=>{if(!a())return;let t=e.filter(e=>(e.messageCount??0)>0)[0]??e[0];if(t)return a()?n.loadSessionById(t.key,0).then(e=>{if(!a())return;n.restoreLiveCacheIfNeeded(t.key);let r=Vn(t.key)?.messages??e??_r(t.key);return n.sessionMgrRef.current.parseSessionFromHash()||n.navigateToSession(t.key,!0),n.tryResumeAgentRun(t.key,r)}):void 0;if(!a())return;let r=n.resolveAgentIdForPost();return UO({sessionMgr:n.sessionMgrRef.current,agentId:r,currentConversationId:null,routeConversationId:null,navigateToSession:n.navigateToSession,onOpened:e=>{n.adoptEmptySession(e,null),o(e)}}).then(()=>void 0)}):Promise.resolve();return(()=>{let t=e.decodedKey===void 0&&!e.isNewRoute;n.patchInitUi({loading:t,error:null}),(e.isNewRoute?s():e.decodedKey?l(e.decodedKey):u()).then(()=>{a()&&n.patchInitUi({loading:!1})}).catch(e=>{i?a()&&n.patchInitUi({loading:!1}):n.patchInitUi({error:e instanceof Error?e.message:`Chat init failed`,loading:!1})})})(),()=>{i=!0}},[t,b,w]),n&&x?.requestKey===w&&x.token===t&&x.baseUrl===b?x:null}function ZO(e){let t=m(e=>e.conversationId),n=m(e=>e.baseUrl),[r,i]=(0,Z.useState)(null),{data:a,error:o}=Lr(e?[`prepared-session-model`,n,t,e.create]:null,async()=>{let t=Nr(Pr(),e.agentId),[n,r]=await Promise.all([ni(),t?.modelRef??ii(e.agentId).then(e=>e.config.models.chat.primary)]),i=n.filter(e=>e.id===r||e.id.endsWith(`/${r}`)),a=n.find(e=>e.id===r)??(i.length===1?i[0]:void 0);return{models:n,selection:{model:a?.id??r,thinkingLevel:a?.thinking?gs(a.thinking,t?.thinkingLevel,t?.thinkingByModel?.[a.id]):t?.thinkingLevel??`medium`}}},{revalidateOnFocus:!1}),s=r?.preparation===e?r?.selection:a?.selection,c=a?.models.find(e=>e.id===s?.model),l=!!(s?.model&&c),u=r?.preparation===e,d=(0,Z.useRef)({preparation:e,selection:s,ready:l,explicitlySelected:u});d.current={preparation:e,selection:s,ready:l,explicitlySelected:u};let f=(0,Z.useMemo)(()=>e&&{...e,create:async t=>{let n=d.current;if(n.preparation!==e||!n.ready||!n.selection)throw Error(`Model configuration is not ready`);let r=n.selection,i=await e.create(t,r);return n.explicitlySelected&&Ar(e.agentId,{modelRef:r.model,thinkingLevel:r.thinkingLevel}),i}},[e]),p=async(t,n)=>{if(!e||!a)throw Error(`Model configuration is not ready`);let r=a.models.find(e=>e.id===t);if(!r)throw Error(`Model is unavailable`);let o=Nr(Pr(),e.agentId)?.thinkingByModel?.[t],c=r.thinking?gs(r.thinking,n??s?.thinkingLevel,n===void 0?o:void 0):n??s?.thinkingLevel??`medium`;i({preparation:e,selection:{model:t,thinkingLevel:c}})};return{preparation:f,model:s?.model??``,thinkingLevel:s?.thinkingLevel??`medium`,modelSupportsThinking:!!c?.reasoning,ready:l,error:o,onModelChange:e=>p(e),onThinkingChange:e=>p(s?.model??``,e)}}async function QO(e){let t=e.trim();if(!t)return!1;try{return!!(await ni()).find(e=>e.id===t)?.reasoning}catch{return!1}}function $O(e){let{sessionMgrRef:t,routeConversationIdRef:n,sendingRef:r,streamingRef:i,loadingSessionRef:a,messagesLenRef:o,thinkingSupportGenRef:s,navigateToSession:c,resolveAgentIdForPost:l,detachForNewConversation:u,conversationId:d,sessionAgentId:f,currentProjectId:p,taskId:m,hasMore:h}=e,g=()=>Mn.getState(),_=(0,Z.useRef)(Promise.resolve(void 0)),v=(0,Z.useRef)(null),y=(0,Z.useRef)(0),b=(0,Z.useCallback)(e=>{let t=g().focusedConversationId;if(!e.trim())return++s.current===s.current&&t&&g().patchSessionMeta(t,{modelSupportsThinking:!1}),Promise.resolve();let n=++s.current;return QO(e).then(t=>{if(n!==s.current)return;let r=g().focusedConversationId;r&&g().sessions[r]?.model===e&&g().patchSessionMeta(r,{modelSupportsThinking:t})})},[s]),x=(0,Z.useCallback)(async e=>{try{let n=await t.current.loadSessionAgentConfig(e);Hn(e,n),b(n.model)}catch{}},[t,b]),S=(0,Z.useCallback)(()=>{let e=g().focusedConversationId;if(!e||(g().sessions[e]?.name)?.trim())return;let n=++y.current,r=[700,900,900,1e3,1e3],i=a=>{a>=5||n===y.current&&g().focusedConversationId===e&&(g().sessions[e]?.name?.trim()||window.setTimeout(()=>{n===y.current&&g().focusedConversationId===e&&(g().sessions[e]?.name?.trim()||t.current.fetchSessionName(e).then(t=>{if(n===y.current){if(t){g().patchSessionMeta(e,{name:t});return}i(a+1)}}).catch(()=>{i(a+1)}))},r[a]??900))};i(0)},[t]),C=(0,Z.useCallback)(e=>bO({chatId:e,routeConversationId:n.current}),[n]),w=(0,Z.useCallback)((e,t,n)=>{let r=g().sessions[e];if(n&&r?.messages!==n.messages&&!gn(r))return!1;let i=t.hasMore&&vr(r?.messages??[],t.messages)>0;return g().mergeCommittedFromServer(e,t.messages,t.hasMore),t.name!==void 0&&g().patchSessionMeta(e,{name:t.name||null}),C(e)&&(i||(v.current=t.nextBeforeCursor??null)),!0},[C]),T=(0,Z.useCallback)(async(e,r=0,i)=>{let o=async(e,r,i)=>{let s=r===0&&!i;a.current=!0;let u=s&&gr(g().sessions[e]?.historyStatus);u&&g().setSessionHistoryStatus(e,`loading`);try{let n={messages:g().sessions[e]?.messages},{messages:a,hasMore:o,name:c,nextBeforeCursor:l}=await t.current.loadSession(e,r,i,m,n.messages);if(s){if(!w(e,{messages:a,hasMore:o,name:c,nextBeforeCursor:l},n))return g().sessions[e]?.messages;if(!C(e))return a;let r=await t.current.loadSessionAgentConfig(e);return C(e)?(Hn(e,r),b(r.model),a):a}if(v.current=l??null,!C(e))return;g().prependHistoryMessages(e,a,o);return}catch(a){if(r===0&&!i){v.current=null;let r=a instanceof Error?a.message:`Failed to load session`;g().setShellError(/^HTTP 404\b/.test(r)?JSON.stringify(Kn(r)):`Failed to load session`);let i=_O(n.current);if(i&&i===e)return;let s=await t.current.loadSessions().catch(()=>[]),u=s.filter(e=>(e.messageCount??0)>0)[0]??s[0];if(u)return c(u.key,!0),await o(u.key,0,null);{v.current=null;let e=l();UO({sessionMgr:t.current,agentId:e,currentConversationId:null,routeConversationId:null,navigateToSession:c,replaceNavigate:!0,onOpened:e=>{g().setCommittedSnapshot(e,{messages:[],hasMore:!1,name:null}),x(e)}})}}return}finally{a.current=!1,u&&g().sessions[e]?.historyStatus===`loading`&&g().setSessionHistoryStatus(e,`ready`)}},s=_.current,u,d=new Promise(e=>{u=e});_.current=s.then(()=>d),await s;try{return await o(e,r,i)}finally{u()}},[n,C,r,i,a,c,b,l,t,m,w]),E=(0,Z.useCallback)(async()=>{let e=g().focusedConversationId;if(!(!e||g().loadingMore||!h)){g().setLoadingMore(!0);try{await T(e,o.current,v.current)}finally{g().setLoadingMore(!1)}}},[h,T,o]),D=(0,Z.useCallback)(async(e,n)=>{if(!d)throw Error(`No active session`);let r=g().sessions[d];if(r?.modelConfigSaving)throw Error(`Model configuration is being saved`);if(!(r?.model===e&&n!==void 0&&r.thinkingLevel===n)){g().patchSessionMeta(d,{modelConfigSaving:!0});try{if(g().setShellError(null),n===void 0){let t=(await ni()).find(t=>t.id===e);if(t?.thinking){let i=Nr(Pr(),f)?.thinkingByModel?.[e];n=gs(t.thinking,r?.thinkingLevel,i)}}let i=m?await t.current.patchTaskConversationModel(m,e,n,r?.configVersion):await t.current.patchSessionAgentConfig(d,{model:e,thinkingLevel:n,configVersion:r?.configVersion});Hn(d,i),Ar(f,{modelRef:i.model,thinkingLevel:i.thinkingLevel}),i.model!==r?.model&&b(i.model)}catch(e){let n=e instanceof Error?e.message:`Failed to update model configuration`;g().setShellError(n);let r=await t.current.loadSessionAgentConfig(d).catch(()=>null);throw r&&Hn(d,r),e}finally{g().patchSessionMeta(d,{modelConfigSaving:!1})}}},[d,f,m,t,b]);return{refreshModelThinkingSupport:b,pollSessionNameAfterTurn:S,applyLoadedSessionSnapshot:w,loadSessionById:T,loadMoreMessages:E,onSessionModelChange:D,onSessionThinkingLevelChange:(0,Z.useCallback)(async e=>{let t=d?g().sessions[d]?.model:void 0;t&&await D(t,e)},[d,D]),onSessionWorkingDirectoryChange:(0,Z.useCallback)(async e=>{let n=e.trim();if(!(!d||!n))try{g().setShellError(null),await t.current.patchSessionAgentConfig(d,{workingDirectory:n}),await x(d)}catch(e){throw g().setShellError(e instanceof Error?e.message:`Failed to update working directory`),e}},[x,d,t]),createNewSession:(0,Z.useCallback)(async e=>{g().setShellError(null);let n=l(),r=Nr(Pr(),n??`main`);await UO({sessionMgr:t.current,agentId:n,currentConversationId:d,routeConversationId:d,forceNew:e?.forceNew,temporary:e?.temporary,executionMode:e?.executionMode,projectId:e?.projectId===void 0?p:e.projectId,initialAgentConfig:r?{model:r.modelRef,...r.thinkingLevel?{thinkingLevel:r.thinkingLevel}:{}}:void 0,navigateToSession:c,onOpened:e=>{u(),v.current=null,g().setCommittedSnapshot(e,{messages:[],hasMore:!1,name:null}),x(e)}})},[u,c,l,p,d,t,x]),resetCurrentSession:(0,Z.useCallback)(async()=>{if(d){g().setShellError(null);try{await t.current.resetSession(d),u(),v.current=null,g().setCommittedSnapshot(d,{messages:[],hasMore:!1,name:null}),x(d)}catch(e){g().setShellError(e instanceof Error?e.message:`Failed to reset session`)}}},[x,d,u,t])}}function ek(e){return new Promise(t=>{Promise.resolve().then(()=>e(()=>t(!0))).then(()=>t(!1),()=>t(!1))})}function tk(e,t,n){return e.map(e=>{if(e.clientSubmissionId!==t||!e.deliveryStatus)return e;if(n===`failed`)return{...e,deliveryStatus:`failed`};let r={...e,deliveryStatus:`accepted`};return delete r.pendingAppContext,r})}function nk(e){return e!==`suspended`}function rk(e){let{chatId:t,shouldApplyStreamUpdate:n,beforeAssistantDelta:r,reconcileHydratedAssistantText:i,setStreamingOnStreamStart:a,clearResumeRunIdOnBackgroundTerminal:o,clearResumeRunIdOnVisibleError:s,setError:c,sessionMgrRef:l,applyLoadedSessionSnapshot:u,finalizeMessage:d,fq:f}=e,p=()=>Mn.getState(),m=()=>{let e={messages:p().sessions[t]?.messages};return l.current.loadSession(t,0,void 0,void 0,e.messages).then(n=>u(t,n,e)).catch(()=>{})},g=new Map,_,v=()=>{if(_!==void 0&&(window.clearTimeout(_),_=void 0),g.size===0)return;let e=Array.from(g.entries());g.clear(),r(),p().mutateSessionStreaming(t,t=>{for(let[n,r]of e)_n(t.content,n,r)})},b=(e,t)=>{g.set(e,`${g.get(e)??``}${t}`),_===void 0&&(_=window.setTimeout(v,120))},x=e=>{p().clearStreamingState(t),o&&bn.setResumeRunId(t,null),p().setSessionFlags(t,{sending:!1,streaming:!1}),p().setSessionProgress(t,null),nk(e)&&f.dismissClarifyForSession(t),m()};return{onTextSurface:e=>{r(),p().mutateSessionStreaming(t,t=>{t.textSurface=e})},onReplayGap:m,onUserMessage:e=>{n(t)&&p().appendUserMessageIfMissing(t,e)},onStreamStart:(e,n,i)=>{ff(t),r(),i&&p().updateSessionMessages(t,t=>ar([...t,{role:`task`,content:[],taskTrigger:i,turnId:e,timestamp:Date.now()}])),p().updateSessionMessages(t,t=>Cn(t,e)),p().mutateSessionStreaming(t,t=>{t.turnId=e,n&&(t.startsNewBubble=!0)}),p().setSessionFlags(t,{streaming:!0})},onToken:(e,a,o)=>{r(),p().mutateSessionStreaming(t,t=>{Dn(t.content,e,a,{offset:o,reconcileHydratedSegment:i})}),n(t)&&p().setSessionFlags(t,{streaming:!0})},onAssistantMessageEnd:(e,n,i)=>{r(),p().mutateSessionStreaming(t,t=>{yr(t.content,e,n),i&&(t.usage=i)})},onThinking:(e,n,i)=>{r(),p().mutateSessionStreaming(t,t=>{!n&&e===``?xn(t.content):Qn(t.content,e,n,i)})},onThinkingEnd:e=>{r(),p().mutateSessionStreaming(t,t=>{wn(t.content,e)})},onToolStart:(e,n,i,a,o,s)=>{r(),p().mutateSessionStreaming(t,t=>{mn(t.content,e,n,i,a,o,s)}),p().setSessionFlags(t,{streaming:!0})},onToolEnd:(e,n,i,a,o,s,c)=>{r(),p().mutateSessionStreaming(t,t=>{Tn(t.content,e,n,i,a,o,s,c)})},onToolUpdate:(e,n,i)=>{r(),p().mutateSessionStreaming(t,t=>{Nn(t.content,e,n,i)})},onTaskPlanUpdated:e=>{p().setSessionTaskPlan(t,e)},onTurnOutcome:e=>{r(),p().mutateSessionStreaming(t,t=>{t.outcome=e})},onReview:({review:e})=>{r(),p().mutateSessionStreaming(t,t=>{vn(t.content,e)}),n(t)&&p().setSessionFlags(t,{streaming:!0})},onReviewStart:e=>{r(),p().mutateSessionStreaming(t,t=>{Pn(t.content,e)}),n(t)&&p().setSessionFlags(t,{streaming:!0})},onReviewDelta:({reviewId:e,delta:t})=>{b(e,t)},onReviewEnd:({reviewId:e,status:n,message:i})=>{v(),r(),p().mutateSessionStreaming(t,t=>{An(t.content,e,n,i)})},onProgress:e=>{p().setSessionProgress(t,e)},onTtsAudio:e=>{n(t)&&p().appendAttachmentToCurrentAssistant(t,{name:e.name,mimeType:e.mimeType,type:`voice`,uri:e.uri,size:0},{attachTo:e.attachTo,messageId:e.messageId})},onCompaction:e=>{if(!n(t))return;let r=y(h.getState().language).chat;if(e.status===`started`)p().setSessionProgress(t,{stage:`compaction`,message:r.compactingContext,timestamp:Date.now()});else if(e.status===`completed`){let n=e.tokensBefore&&e.tokensAfter?` (${r.contextTokensFreed.replace(`{{count}}`,String(Math.round((e.tokensBefore-e.tokensAfter)/1e3)))})`:``;p().setSessionProgress(t,{stage:`compaction`,message:`${r.contextCompacted}${n}`,timestamp:Date.now()})}else p().setSessionProgress(t,null)},onClarifyRequest:f.makeOnClarifyRequest(t),onSessionConfigUpdated:()=>{p().patchSessionMeta(t,{modelConfigSaving:!0}),l.current.loadSessionAgentConfig(t).then(e=>Hn(t,e)).catch(()=>{}).finally(()=>p().patchSessionMeta(t,{modelConfigSaving:!1}))},onResult:({status:e})=>{v();let r=n(t);if(bn.takeUserAborted(t)||e===`cancelled`){hf(t),r?d(t,e):x(e);return}if(e===`error`){if(mf(t,!r),!r){x(e);return}d(t,e),m();return}if(e===`suspended`?gf(t):pf(t,!r),!r){x(e);return}d(t,e)},onError:e=>{v();let r=n(t);if(mf(t,!r),!r){x(`error`);return}p().clearStreamingState(t),s&&bn.setResumeRunId(t,null),p().setSessionFlags(t,{sending:!1,streaming:!1}),p().setSessionProgress(t,null),c(e),f.dismissClarifyForSession(t)}}}function ik(e){return Vn(e)?.streamingMsg??null}var ak=80;function ok(e){let t=e.trim();(t.startsWith(`"`)&&t.endsWith(`"`)||t.startsWith(`'`)&&t.endsWith(`'`))&&(t=t.slice(1,-1).trim());let n=t.indexOf(`
|
|
72
|
+
`);return n!==-1&&(t=t.slice(0,n).trim()),t.length>ak&&(t=t.slice(0,ak-1).trimEnd()+`…`),t}function sk(e){let t=e.trimStart();if(!/^##\s+Skill:\s*\S+/i.test(t))return e;let n=/(?:^|\r?\n)\*\*Arguments\*\*:\s*/gi,r=-1;for(;n.exec(t)!==null;)r=n.lastIndex;if(r!==-1){let e=t.slice(r).trim();if(e)return e}return(t.split(/\r?\n/)[0]?.trim()??``).replace(/^##\s+Skill:\s*/i,``).trim()}function ck(e){let t=e.trimStart().match(/^\/skill:([^\s]+)(?:\s+([\s\S]*))?$/i);return t&&(t[2]?.trim()||t[1]?.trim())||e}function lk(e){let t=ck(sk(Ln([{type:`text`,text:e}]))).split(/\n/)[0]?.trim();if(!t)return null;let n=ok(t);return n.length>0?n:null}function uk(e,t){let n=e.trim(),r=t.trim();!n||!r||window.dispatchEvent(new CustomEvent(`session-updated`,{detail:{key:n,name:r},bubbles:!0}))}var dk=new Set([`new`,`reset`,`restart`]),fk=new Set([...dk,`clear`,`archive`]);function pk(e){let t=e.trim(),n=/^\/([^\s@]+)(?:@[^\s]+)?(?:\s+([\s\S]*))?$/.exec(t);return n?{name:n[1].toLowerCase(),args:n[2]?.trim()??``}:null}function mk(e){let t=pk(e);return!!(t&&dk.has(t.name)&&!t.args)}function hk(e){let t=pk(e);return!!(t&&fk.has(t.name))}function gk(e){let{conversationId:t,taskId:n,thinkingLevel:r,modelSupportsThinking:i,conversationIdRef:a,sendingRef:o,streamingRef:s,sessionMgrRef:c,sendMessageRef:l,shouldApplyStreamUpdate:u,fq:d,applyLoadedSessionSnapshot:f,loadSessionById:p,resetCurrentSession:m,pollSessionNameAfterTurn:h}=e,g=()=>Mn.getState(),_=e=>g().setShellError(e),v=()=>g().setShellError(null),y=(0,Z.useCallback)((e,t)=>{let n=e??a.current;if(n&&!u(n))return;let r=n?ik(n):null,i=null;if(r){let e=En(r,Date.now());e.runStatus=t,On(e.content,t===`success`),wn(e.content),t!==`suspended`&&Sn(e.content,t===`success`),yn(e.content),e.completedAt=t&&t!==`suspended`?Date.now():void 0,i=Zn(e)}i&&hn(i)&&n?g().finalizeStreamingTurn(n,i):n&&g().clearStreamingState(n),o.current=!1,s.current=!1,n&&bn.resetRunTracking(n),(!t||nk(t))&&d.dismissClarify(),h();let c=a.current;c&&window.setTimeout(()=>{a.current===c&&(o.current||s.current||p(c,0))},400)},[o,s,a,d.dismissClarify,d.pendingFollowUpsRef,h,p,u]),b=(0,Z.useCallback)(async(e,t)=>{if(!u(e))return;let r=g().sessions[e]?.streamingMsg,i=g().sessions[e]?.messages.findLast(e=>e.role===`user`)?.clientSubmissionId,a=await cr(e);if(!a){let t=g().sessions[e]?.streamingMsg;if(t?.pendingResponseStatus||t&&t!==r||bn.isStreamingFor(e))return;let n=bn.getResumeRunId(e);n&&bn.reconcileInactive(e,n),g().clearStreamingState(e,{preservePendingResponse:!0}),hf(e);return}let l=()=>{let t=g().sessions[e]?.streamingMsg,n=g().sessions[e]?.messages.findLast(e=>e.role===`user`)?.clientSubmissionId;return!!(n&&n!==i)||!!(t?.turnId&&t.turnId!==a)||!!(t?.pendingResponseStatus&&t!==r)};if(l()||bn.isTrackingRun(e,a))return;let m=t??_r(e),h=Vn(e)?.hasMore??!1;try{let t=await c.current.loadSession(e,0,void 0,n,g().sessions[e]?.messages);if(l()||bn.isTrackingRun(e,a))return;g().mergeCommittedFromServer(e,t.messages,t.hasMore),m=t.messages,h=t.hasMore}catch{}if(l()||bn.isTrackingRun(e,a))return;bn.setUserAborted(e,!1),bn.setResumeRunId(e,a),o.current=!0,s.current=!0,g().seedSessionIfEmpty(e,m,!0,!0,h),g().setSessionFlags(e,{sending:!0,streaming:!0}),g().setSessionProgress(e,null),ff(e);let v=!1,b=()=>{if(v||!u(e))return;v=!0;let t=wO(_r(e),a);t&&g().applyHydratedTail(e,t.messagesWithoutTail,Zn(t.tail))},x=()=>{g().clearStreamingState(e),bn.getResumeRunId(e)===a&&bn.setResumeRunId(e,null),u(e)&&(o.current=!1,s.current=!1)};try{let t=rk({chatId:e,shouldApplyStreamUpdate:u,beforeAssistantDelta:b,reconcileHydratedAssistantText:!0,setStreamingOnStreamStart:!1,clearResumeRunIdOnBackgroundTerminal:!0,clearResumeRunIdOnVisibleError:!0,setError:_,sessionMgrRef:c,applyLoadedSessionSnapshot:f,finalizeMessage:y,fq:d});await bn.senderFor(e).resume(a,e,t)||(hf(e),x(),await p(e,0).catch(()=>void 0))}catch(t){t.name!==`AbortError`&&console.error(`[chat] resume failed:`,t),hf(e),x()}finally{bn.releaseIdleSender(e)}},[o,s,u,c,f,y,p,n]),x=(0,Z.useCallback)(async(e,t,c,u)=>{if(!e.trim()&&!t?.length&&!u?.length)return;let f=a.current;if(!f||!o.current&&!s.current&&!bn.isStreamingFor(f))return;let p=e.trim();if(n&&hk(p)){_(`A task has one continuous conversation.`);return}if(mk(p)&&!t?.length){await m();return}d.dismissClarifyAndClearPending();let h=i?c??r:`off`;bn.setUserAborted(f,!0),bn.abort(f),o.current=!1,s.current=!1,y(f),queueMicrotask(()=>{l.current(e,t,h,u)})},[o,s,a,d.dismissClarifyAndClearPending,i,r,y,l,m,n]),S=(0,Z.useCallback)(async(e,a,l,h,b,x,S,C)=>{if(!t||!u(t)||!e.trim()&&!a?.length&&!h?.length||o.current||s.current||bn.isStreamingFor(t))return!1;let w=e.trim();if(n&&hk(w))return _(`A task has one continuous conversation.`),!1;if(mk(w)&&!a?.length){await m();return}let T=i?l??r:`off`,E=t,D=crypto.randomUUID(),O=`assistant-stream:${E}:${D}`,k=_r(E),A=C?k.filter(e=>e.clientSubmissionId!==C):k,j=b?A.findIndex(e=>e.role===`user`&&e.turnId===b):-1;if(b&&j<0)return!1;bn.setUserAborted(E,!1),o.current=!0,s.current=!1,v(),d.dismissClarify();let M=j>=0?A.slice(0,j):A,N=Yn(e)??void 0,P=new Map(h?.flatMap(e=>e.refId?[[e.refId,e.title]]:[])??[]),F=N?qn(N,e=>P.get(e)):e,I=[...M,{role:`user`,content:F?[{type:`text`,text:F}]:[],userTurnDocument:N,deliveryStatus:`sending`,clientSubmissionId:D,pendingAppContext:x===void 0?void 0:structuredClone(x),attachments:a,contextRefs:h?.map(e=>({refId:e.refId,kind:e.kind,sourceId:e.sourceId,version:e.expectedVersion,title:e.title,fileKind:e.fileKind})),timestamp:Date.now()}];S?.(D);let L=Vn(E);if(g().initSessionSnapshot(E,{...L??{...sr(),historyStatus:`ready`,hasMore:!1,streamingMsg:null,progress:null,taskPlan:null,sending:!1,streaming:!1},messages:I,hasMore:L?.hasMore??!1,streamingMsg:{role:`assistant`,content:[],timestamp:Date.now(),renderKey:O,pendingResponseStatus:`sending`},progress:null,sending:!0,streaming:!1}),ff(E),!L?.name?.trim()&&F.trim()){let e=lk(F.trim());e&&(g().patchSessionMeta(E,{name:e}),uk(E,e))}let R=e=>{g().updateSessionMessages(E,t=>tk(t,D,e))};return ek(async t=>{let r=!1;try{let i=rk({chatId:E,shouldApplyStreamUpdate:u,beforeAssistantDelta:()=>{},reconcileHydratedAssistantText:!1,setStreamingOnStreamStart:!0,clearResumeRunIdOnBackgroundTerminal:!1,clearResumeRunIdOnVisibleError:!1,setError:_,sessionMgrRef:c,applyLoadedSessionSnapshot:f,finalizeMessage:y,fq:d});i.onInputAccepted=()=>{r=!0,R(`accepted`),g().setPendingResponseStatus(E,`waiting`),t()},await bn.senderFor(E).send(e,E,a,T,i,n,b,h,x)}catch(e){if(e.name!==`AbortError`)g().clearStreamingState(E),hf(E),u(E)&&_(e instanceof Error?e.message:String(e)),b&&p(E,0);else{hf(E);let e=Vn(E)?.streamingMsg;e?.renderKey===O&&e.pendingResponseStatus&&g().clearStreamingState(E)}}finally{r||R(`failed`),u(E)&&(o.current=!1,s.current=!1),g().setSessionFlags(E,{sending:!1}),bn.releaseIdleSender(E)}})},[t,r,i,o,s,u,c,f,y,d.dismissClarify,m,n,p]);return{finalizeMessage:y,tryResumeAgentRun:b,sendMessage:S,replaceLatestUserTurn:(0,Z.useCallback)((e,t,n,r,i)=>S(t,n,r,i,e),[S]),interruptAndSend:x,abort:(0,Z.useCallback)(()=>{let e=a.current;e&&(bn.setUserAborted(e,!0),d.dismissClarifyAndClearPending(),bn.abort(e),e&&hf(e),o.current=!1,s.current=!1,y(e),e&&window.setTimeout(()=>{p(e,0)},300))},[d.dismissClarifyAndClearPending,o,s,y,a,p]),deleteMessageRound:(0,Z.useCallback)(e=>{let t=a.current;if(!t||o.current||s.current)return;let n=_r(t),r=n[e];if(!r||!kn(r.role))return;if(r.deliveryStatus===`failed`){let r=[...n];r.splice(e,1),g().updateSessionMessages(t,()=>r);return}let i=Wn(n,e);if(i===null)return;let l=pn(n,e),u=[...n];u.splice(e,l),g().updateSessionMessages(t,()=>u),c.current.deleteMessages(t,{userRoundIndex:i}).catch(()=>{p(t,0)})},[a,o,s,c,p]),retryUserMessageRound:(0,Z.useCallback)(e=>{let t=a.current;if(!t||o.current||s.current)return;let n=_r(t),r=n[e];if(!r||!kn(r.role))return;for(let t=e+1;t<n.length;t++){let e=n[t];if(e&&kn(e.role))return}let i=r.userTurnDocument?Bn(r.userTurnDocument):Ln(r.content),c=In(r.attachments);if(!i.trim()&&!c?.length&&!r.contextRefs?.length)return;let u=r.contextRefs?.flatMap(e=>e.kind===`mcp_resource`?[]:[{refId:e.refId,kind:e.kind,sourceId:e.sourceId,expectedVersion:e.version,title:e.title,fileKind:e.fileKind}]),d=r.deliveryStatus===`failed`?r.clientSubmissionId:void 0;!d&&!r.turnId||l.current(i,c,void 0,u,r.turnId,r.pendingAppContext,void 0,d).catch(()=>{p(t,0)})},[a,o,s,p,l])}}function _k(e){let t=(0,Y.c)(11),{conversationId:n,conversationIdRef:r,sessionMgrRef:i,loadSessionById:a,loadTimelineById:o,applyAgentConfig:s}=e,c;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(c=[],t[0]=c):c=t[0],(0,Z.useEffect)(yk,c);let l,u;t[1]!==n||t[2]!==a||t[3]!==o?(l=()=>{let e=e=>{let t=e.detail;!t?.key||t.key!==n||(a(n,0),o(n))};return window.addEventListener(`session-transcript-updated`,e),()=>window.removeEventListener(`session-transcript-updated`,e)},u=[n,a,o],t[1]=n,t[2]=a,t[3]=o,t[4]=l,t[5]=u):(l=t[4],u=t[5]),(0,Z.useEffect)(l,u);let d,f;t[6]!==s||t[7]!==r||t[8]!==i?(d=()=>{let e=e=>{if(qr(e.detail))return;let t=r.current;t&&i.current.loadSessionAgentConfig(t).then(e=>{s(t,e)}).catch(vk)};return window.addEventListener(`config-reload`,e),()=>window.removeEventListener(`config-reload`,e)},f=[r,i,s],t[6]=s,t[7]=r,t[8]=i,t[9]=d,t[10]=f):(d=t[9],f=t[10]),(0,Z.useEffect)(d,f)}function vk(){}function yk(){let e=bk;return window.addEventListener(`session-updated`,e),()=>window.removeEventListener(`session-updated`,e)}function bk(e){let t=e.detail;!t?.key||t.name===void 0||Mn.getState().patchSessionMeta(t.key,{name:t.name||null})}function xk(e){let t=d(),{isNewRoute:n,forceNewChat:r,decodedKey:i,viewConversationId:a,routedFocusedConversationId:o,routeConversationIdRef:s,locationKey:c,locationSearch:l,locationState:u}=qO(e?.fixedConversationId),f=(0,Z.useRef)(new ur),p=(0,Z.useRef)(!1),m=(0,Z.useRef)(!1),h=(0,Z.useRef)(!1),g=(0,Z.useRef)(0),_=(0,Z.useRef)(!1),[v,y]=(0,Z.useState)([]),b=(0,Z.useRef)(async()=>{}),x=(0,Z.useRef)(0),S=o,C=Mn(e=>e.initLoading),w=Mn(e=>e.loadingMore),T=Mn(e=>e.shellError),E=a,D=hm(E),O=E?gn(D):!1,k=O?D?.streaming??!1:!1,A=O?D?.sending??!1:!1,j=O?D?.progress??null:null,M=O?D?.taskPlan??null:null,N=D?.hasMore??!1,P=D?.name??null,F=D?.model??``,I=EO(D,Lr(ri,ni,{revalidateOnFocus:!1}).data),L=D?.modelConfigSaving??!1,R=D?.thinkingLevel??`medium`,z=D?.reasoningLevel??`on`,B=D?.modelSupportsThinking??!1,ee=D?.effectiveWorkspacePath??``,V=D?.workspaceSource??`agent_default_root`,H=D?.userContextMode??`enabled`;(0,Z.useEffect)(()=>{!E||A||k||f.current.loadSessionAgentConfig(E).then(e=>Hn(E,e)).catch(()=>void 0)},[E,A,k]),(0,Z.useEffect)(()=>{let e=e=>{let t=e.detail.conversationId;f.current.loadSessionAgentConfig(t).then(e=>Hn(t,e)).catch(()=>void 0)};return window.addEventListener(`session-model-config-stale`,e),()=>window.removeEventListener(`session-model-config-stale`,e)},[]),(0,Z.useEffect)(()=>{x.current=D?.messages.length??0},[D?.messages.length]),(0,Z.useEffect)(()=>{m.current=A,h.current=k},[A,k]);let{token:te,chatAgentsData:U,resolveAgentIdForPost:W,onChatAgentChange:ne,displayAgentId:re,showChatAgentSelector:ie,currentSessionProjectId:ae}=FO({navigate:t,personal:e?.personal,conversationIdRef:YO,conversationId:S,isNewRoute:n,locationState:u,locationSearch:l}),oe=i!==void 0&&S!==i,se=!!(i&&D?.historyStatus===`loading`&&!oe),G=(0,Z.useMemo)(()=>C&&(S==null||i===void 0),[C,S,i]),K=OO({isNewRoute:n,sessionRoutePending:oe,showSessionLoading:G,sessionContentLoading:se,messageCount:D?.messages.length??0}),ce=(0,Z.useCallback)((e,n=!1,r)=>{let i=r??``;t({pathname:`/chat/${encodeURIComponent(e)}`,search:i},{replace:n})},[t]),le=(0,Z.useCallback)(e=>vO({streamConversationId:e,routeConversationId:s.current}),[s]),q=(0,Z.useCallback)(()=>{DO({sendingRef:m,streamingRef:h})},[]),ue=NO({conversationId:S,decodedKey:i,conversationIdRef:YO,sendingRef:m,streamingRef:h,modelSupportsThinking:B,thinkingLevel:R,shouldApplyStreamUpdate:le}),de=(0,Z.useCallback)(()=>{ue.clearVisibleClarify();let e=YO.current;e&&bn.resetRunTracking(e),TO(q)},[ue.clearVisibleClarify,YO,q]),{refreshModelThinkingSupport:fe,pollSessionNameAfterTurn:pe,applyLoadedSessionSnapshot:me,loadSessionById:he,loadMoreMessages:ge,onSessionModelChange:_e,onSessionThinkingLevelChange:ve,onSessionWorkingDirectoryChange:ye,createNewSession:be,resetCurrentSession:xe}=$O({sessionMgrRef:f,routeConversationIdRef:s,sendingRef:m,streamingRef:h,loadingSessionRef:p,messagesLenRef:x,thinkingSupportGenRef:g,navigateToSession:ce,resolveAgentIdForPost:W,detachForNewConversation:de,conversationId:S,sessionAgentId:re,currentProjectId:ae,hasMore:N,taskId:e?.taskId}),Se=(0,Z.useCallback)(e=>{if(!yO({cacheConversationId:e,routeConversationId:s.current}))return!1;let t=Vn(e);return!t||!gn(t)&&!ir(e)&&!bn.isStreamingFor(e)?!1:(m.current=t.sending,h.current=t.streaming,!0)},[s]),{tryResumeAgentRun:Ce,sendMessage:we,replaceLatestUserTurn:Te,interruptAndSend:Ee,abort:De,deleteMessageRound:Oe,retryUserMessageRound:ke}=gk({conversationId:S,taskId:e?.taskId,thinkingLevel:R,modelSupportsThinking:B,conversationIdRef:YO,sendingRef:m,streamingRef:h,sessionMgrRef:f,sendMessageRef:b,shouldApplyStreamUpdate:le,fq:ue,applyLoadedSessionSnapshot:me,loadSessionById:he,resetCurrentSession:xe,pollSessionNameAfterTurn:pe});(0,Z.useEffect)(()=>{n&&de()},[n,de]);let Ae=(0,Z.useMemo)(()=>CO({viewConversationId:a,conversationId:E,messages:D?.messages??[],streamingMsg:O?D?.streamingMsg??null:null}),[a,E,D?.messages,D?.streamingMsg,O]),je=(0,Z.useCallback)((e,t)=>{Mn.getState().setCommittedSnapshot(e,{messages:[],hasMore:!1,name:t}),q()},[q]),Me=(0,Z.useCallback)((e,t)=>{Hn(e,t),fe(t.model)},[fe]),Ne=(0,Z.useCallback)(e=>{let t=Mn.getState();e.loading!==void 0&&t.setInitLoading(e.loading),e.error!==void 0&&t.setShellError(e.error)},[]),Pe=(0,Z.useCallback)(async t=>{try{let n=await f.current.loadTimeline(t,e?.taskId);if(s.current!==t)return;y(n)}catch{s.current===t&&y([])}},[s,e?.taskId]);(0,Z.useEffect)(()=>{if(n||!S){y([]);return}Pe(S)},[S,n,Pe]),_k({conversationId:S,conversationIdRef:YO,sendingRef:m,streamingRef:h,sessionMgrRef:f,loadSessionById:he,loadTimelineById:Pe,applyAgentConfig:Me});let Fe=XO({token:te,isNewRoute:n,forceNewChat:r,temporary:u?.temporary===!0,requestedAgentId:typeof u?.agentId==`string`?u.agentId:void 0,decodedKey:i,locationKey:c,locationSearch:l,sessionMgrRef:f,resolveAgentIdForPost:W,navigateToSession:ce,loadSessionById:he,tryResumeAgentRun:Ce,restoreLiveCacheIfNeeded:Se,adoptEmptySession:je,applyAgentConfig:Me,patchInitUi:Ne}),Ie=ZO(Fe);return(0,Z.useEffect)(()=>{Fe&&Ie.error&&Mn.getState().setShellError(Ie.error instanceof Error?Ie.error.message:`Failed to load model configuration`)},[Fe,Ie.error]),(0,Z.useEffect)(()=>{let e=e=>{let t=e.detail,n=t?.conversationId,r=t?.runId;!n||!r?.trim()||($n(n,r),bn.setResumeRunId(n,r),le(n)&&(bn.isTrackingRun(n,r)||queueMicrotask(()=>{le(n)&&(bn.isTrackingRun(n,r)||Ce(n,_r(n)))})))};return window.addEventListener(`run-started`,e),()=>window.removeEventListener(`run-started`,e)},[Ce,le]),(0,Z.useEffect)(()=>{let e=k||A,t=_.current;if(_.current=e,!t||e)return;let n=YO.current;n&&queueMicrotask(()=>{!n||!le(n)||bn.isStreamingFor(n)||ir(n)&&Ce(n,_r(n))})},[k,A,Ce,le]),b.current=we,{auth:{hasToken:!!te},session:{projectPreparation:Ie.preparation,conversationId:S,sessionName:P,decodedKey:i,sessionRoutePending:oe,sessionContentLoading:se,showSessionLoading:G,conversationPhase:K,loading:C,sessionModel:Fe?Ie.model:F,modelConfigReady:Fe?Ie.ready:I,modelConfigSaving:L,thinkingLevel:Fe?Ie.thinkingLevel:R,onSessionThinkingLevelChange:Fe?Ie.onThinkingChange:ve,onSessionWorkingDirectoryChange:ye,reasoningLevel:z,modelSupportsThinking:Fe?Ie.modelSupportsThinking:B,effectiveWorkspacePath:ee,workspaceSource:V,userContextMode:Fe?.temporary?`temporary`:H,hasMore:N,loadingMore:w,loadMoreMessages:ge,onSessionModelChange:Fe?Ie.onModelChange:_e,createNewSession:be,sessionManager:f.current},messages:{items:Ae},timeline:{items:v,refresh:Pe},stream:{error:T,streaming:k,sending:A,progress:j,taskPlan:M,sendMessage:we,replaceLatestUserTurn:Te,abort:De,interruptAndSend:Ee,deleteMessageRound:Oe,retryUserMessageRound:ke},followUp:{addPendingFollowUp:ue.addPendingFollowUp,pendingFollowUps:ue.pendingFollowUps,editingFollowUpId:ue.editingFollowUpId,beginEditFollowUp:ue.beginEditFollowUp,cancelEditFollowUp:ue.cancelEditFollowUp,commitEditFollowUp:ue.commitEditFollowUp,removePendingFollowUp:ue.removePendingFollowUp,movePendingFollowUp:ue.movePendingFollowUp,reorderPendingFollowUp:ue.reorderPendingFollowUp,steerPendingFollowUp:ue.steerPendingFollowUp,steeringFollowUpId:ue.steeringFollowUpId},clarify:{clarifyPrompt:ue.clarifyPrompt,clarifySubmitting:ue.clarifySubmitting,clarifySubmitError:ue.clarifySubmitError,submitClarifyAnswer:ue.submitClarifyAnswer,letAgentDecideClarification:ue.letAgentDecideClarification,cancelClarification:ue.cancelClarification},agents:{chatAgents:U,displayAgentId:Fe?.agentId??re,showChatAgentSelector:ie,onChatAgentChange:ne}}}function Sk(e){let t=(0,Y.c)(11),n=m(Ck),r;t[0]===e?r=t[1]:(r=e?.trim()||null,t[0]=e,t[1]=r);let i=r,a;t[2]===i?a=t[3]:(a=e=>i?e.sessions[i]?.localDraft:void 0,t[2]=i,t[3]=a);let o=Mn(a),s;t[4]!==o||t[5]!==n||t[6]!==i?(s=n&&i&&!o?[`chat-session-meta`,i,n,o===!1?`persisted`:`unknown`]:null,t[4]=o,t[5]=n,t[6]=i,t[7]=s):s=t[7];let c;t[8]===i?c=t[9]:(c=async()=>{if(await br(i))return;let e=await dn(i),t=typeof e.sessionType==`string`&&e.sessionType.trim()?e.sessionType.trim():null,n=typeof e.routing?.agentId==`string`&&e.routing.agentId.trim()?e.routing.agentId.trim():null,r=e.customData?.sourceBinding,a=r&&typeof r==`object`?r:null,o=a?.kind===`note`&&typeof a.sourceId==`string`&&a.sourceId.trim()?a.sourceId.trim():null,s=typeof e.parentConversationId==`string`&&e.parentConversationId.trim()?e.parentConversationId.trim():null,c=e.customData?.forkedFromSessionName;return{identity:{sourceChannel:e.sourceChannel,sessionType:e.sessionType,customData:e.customData},ownerAgentId:n,sessionType:t,sourceNoteId:o,sourceNoteTitle:null,parentConversationId:s,forkedFromSessionName:typeof c==`string`&&c.trim()?c.trim():null}},t[8]=i,t[9]=c);let l;return t[10]===Symbol.for(`react.memo_cache_sentinel`)?(l={revalidateOnFocus:!1},t[10]=l):l=t[10],Lr(s,c,l)}function Ck(e){return e.conversationId}function wk(e,t){if(!e)return``;let n=e.replace(/\s+/g,` `).trim();return n.length<=t?n:`${n.slice(0,Math.max(0,t-3)).trimEnd()}...`}function Tk(e,t){return wk(Rn(e??``),t)}function Ek(e,t){return ra(e,t)}function Dk(e){return e===`context`||e===`branch`||e===`compaction`?e:null}function Ok(e){return wk(e.preview||e.title,72)||e.kind}function kk(e,t){let n=[],r=null,i=0;for(let a of e){if(a.displayIndex!==void 0&&(i=a.displayIndex),a.kind===`turn`&&a.role===`user`){let e=a.turn||n.length+1;r={id:a.id,messageIndex:a.displayIndex??i,ordinal:e,title:t.turn.replace(`{{count}}`,String(e)),preview:Tk(a.preview||a.title,88)||t.messageFallback,...a.timestamp===void 0?{}:{timestamp:a.timestamp},tools:[],events:[]},n.push(r);continue}if(!r)continue;if(a.kind===`tool`||a.kind===`file`||a.kind===`command`){let e=a.meta?.toolName||a.title||a.kind,n=a.kind===`file`||a.kind===`command`?a.title:Ek(e,t),i=`${a.id}:${e}`;r.tools.some(e=>e.key===i)||r.tools.push({key:i,label:n,running:a.status===`running`});continue}let e=Dk(a.kind);if(!e)continue;let o=`${a.id}:${a.kind}`;r.events.some(e=>e.key===o)||r.events.push({key:o,label:Ok(a),tone:e})}return n}function Ak(e,t){return(e===1?t.toolCount_one:t.toolCount_other).replace(`{{count}}`,String(e))}function jk(e,t){let n=e[0]?.id;for(let r of e)r.messageIndex<=t&&(n=r.id);return n}function Mk(e){let t=(0,Y.c)(53),{turn:n,active:r,labels:i,currentLabel:a,onSelect:o}=e,s,c,l,u,d,f,p,m;if(t[0]!==r||t[1]!==a||t[2]!==i||t[3]!==o||t[4]!==n.events||t[5]!==n.preview||t[6]!==n.timestamp||t[7]!==n.title||t[8]!==n.tools){let e=n.tools.slice(0,2),h=n.events.slice(0,Math.max(0,3-e.length)),g=Math.max(0,n.tools.length-e.length)+Math.max(0,n.events.length-h.length);d=`button`;let _=r&&`bg-accent-soft/70`;t[17]===_?f=t[18]:(f=J(`flex w-full min-w-0 items-start gap-3 border-b border-edge-subtle px-4 py-3 text-left transition-colors`,`hover:bg-surface-hover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-accent`,_),t[17]=_,t[18]=f),p=o;let v=r&&`border-accent bg-accent`,y;t[19]===v?y=t[20]:(y=J(`mt-1 size-2.5 shrink-0 rounded-full border border-edge-strong bg-surface-panel`,v),t[19]=v,t[20]=y),t[21]===y?m=t[22]:(m=(0,X.jsx)(`span`,{className:y,"aria-hidden":!0}),t[21]=y,t[22]=m),s=`min-w-0 flex-1`;let b;t[23]===n.preview?b=t[24]:(b=(0,X.jsx)(`span`,{className:`min-w-0 truncate text-sm font-medium text-fg`,children:n.preview}),t[23]=n.preview,t[24]=b);let x;t[25]!==r||t[26]!==a?(x=r?(0,X.jsx)(`span`,{className:`shrink-0 rounded-full bg-accent px-1.5 py-0.5 text-[10px] font-medium text-on-accent`,children:a}):null,t[25]=r,t[26]=a,t[27]=x):x=t[27],t[28]!==b||t[29]!==x?(c=(0,X.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2`,children:[b,x]}),t[28]=b,t[29]=x,t[30]=c):c=t[30];let S;t[31]===n.title?S=t[32]:(S=(0,X.jsx)(`span`,{children:n.title}),t[31]=n.title,t[32]=S);let C;t[33]===n.timestamp?C=t[34]:(C=n.timestamp?(0,X.jsx)(`time`,{suppressHydrationWarning:!0,dateTime:new Date(n.timestamp).toISOString(),children:Wv(n.timestamp)}):null,t[33]=n.timestamp,t[34]=C);let w;t[35]!==i||t[36]!==n.tools.length?(w=n.tools.length>0?(0,X.jsxs)(`span`,{className:`inline-flex items-center gap-1`,children:[(0,X.jsx)(Gt,{className:`size-3.5 shrink-0`,"aria-hidden":!0}),Ak(n.tools.length,i)]}):null,t[35]=i,t[36]=n.tools.length,t[37]=w):w=t[37],t[38]!==S||t[39]!==C||t[40]!==w?(l=(0,X.jsxs)(`span`,{className:`mt-1 flex min-w-0 flex-wrap items-center gap-x-3 gap-y-1 text-xs text-fg-muted`,children:[S,C,w]}),t[38]=S,t[39]=C,t[40]=w,t[41]=l):l=t[41],u=e.length>0||n.events.length>0?(0,X.jsxs)(`span`,{className:`mt-2 flex min-w-0 flex-wrap gap-1.5`,children:[e.map(Pk),h.map(Nk),g>0?(0,X.jsxs)(`span`,{className:`rounded-md bg-surface-hover px-1.5 py-0.5 text-[11px] text-fg-muted`,children:[`+`,g]}):null]}):null,t[0]=r,t[1]=a,t[2]=i,t[3]=o,t[4]=n.events,t[5]=n.preview,t[6]=n.timestamp,t[7]=n.title,t[8]=n.tools,t[9]=s,t[10]=c,t[11]=l,t[12]=u,t[13]=d,t[14]=f,t[15]=p,t[16]=m}else s=t[9],c=t[10],l=t[11],u=t[12],d=t[13],f=t[14],p=t[15],m=t[16];let h;t[42]!==s||t[43]!==c||t[44]!==l||t[45]!==u?(h=(0,X.jsxs)(`span`,{className:s,children:[c,l,u]}),t[42]=s,t[43]=c,t[44]=l,t[45]=u,t[46]=h):h=t[46];let g;return t[47]!==d||t[48]!==f||t[49]!==p||t[50]!==m||t[51]!==h?(g=(0,X.jsx)(`li`,{children:(0,X.jsxs)(`button`,{type:d,className:f,onClick:p,children:[m,h]})}),t[47]=d,t[48]=f,t[49]=p,t[50]=m,t[51]=h,t[52]=g):g=t[52],g}function Nk(e){return(0,X.jsxs)(`span`,{className:`inline-flex max-w-[10rem] items-center gap-1 rounded-md bg-surface-hover px-1.5 py-0.5 text-[11px] text-fg-muted`,children:[(0,X.jsx)(`span`,{className:`size-1.5 shrink-0 rounded-full bg-current opacity-70`,"aria-hidden":!0}),(0,X.jsx)(`span`,{className:`truncate`,children:e.label})]},e.key)}function Pk(e){return(0,X.jsxs)(`span`,{className:J(`inline-flex max-w-[9rem] items-center gap-1 rounded-md bg-surface-hover px-1.5 py-0.5 text-[11px] text-fg-muted`,e.running&&`text-accent-fg`),children:[(0,X.jsx)(Gt,{className:`size-3 shrink-0`,"aria-hidden":!0}),(0,X.jsx)(`span`,{className:`truncate`,children:e.label})]},e.key)}function Fk(e){let t=(0,Y.c)(39),{items:n,activeMessageIndex:r,labels:i,openLabel:a,closeLabel:o,currentLabel:s,onSelectMessage:c}=e,l;t[0]!==n||t[1]!==i?(l=kk(n,i),t[0]=n,t[1]=i,t[2]=l):l=t[2];let u=l,[d,f]=(0,Z.useState)(!1);if(u.length<4)return null;let p;t[3]!==r||t[4]!==u?(p=jk(u,r),t[3]=r,t[4]=u,t[5]=p):p=t[5];let m=p,h;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(h=(0,X.jsx)(Fe,{className:`size-[1.125rem]`,strokeWidth:1.8,"aria-hidden":!0}),t[6]=h):h=t[6];let g;t[7]===a?g=t[8]:(g=(0,X.jsx)(x,{asChild:!0,children:(0,X.jsx)(ai,{type:`button`,variant:`ghost`,className:`size-10 shrink-0 rounded-full p-0 sm:size-9 xl:hidden`,"aria-label":a,title:a,children:h})}),t[7]=a,t[8]=g);let _;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(_=(0,X.jsx)(b,{className:`xopc-dialog-overlay fixed inset-0 z-[80] bg-scrim/60 backdrop-blur-[1px] xl:hidden`}),t[9]=_):_=t[9];let v;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(v=J(`xopc-dialog-content-pane fixed inset-x-2 bottom-[max(.5rem,env(safe-area-inset-bottom))] z-[90] flex h-[min(72dvh,34rem)] flex-col overflow-hidden`,`rounded-2xl border border-edge bg-surface-overlay shadow-popover outline-none`,`sm:left-auto sm:right-3 sm:w-[min(24rem,calc(100vw-1.5rem))]`,`md:bottom-[max(1rem,env(safe-area-inset-bottom))] md:right-4 md:h-[min(calc(100dvh-6rem),40rem)]`,`xl:hidden`),t[10]=v):v=t[10];let y;t[11]===i.title?y=t[12]:(y=(0,X.jsx)(E,{className:`min-w-0 truncate text-base font-semibold text-fg`,children:i.title}),t[11]=i.title,t[12]=y);let S;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(S=(0,X.jsx)(Kt,{className:`size-4`,strokeWidth:1.75,"aria-hidden":!0}),t[13]=S):S=t[13];let O;t[14]===o?O=t[15]:(O=(0,X.jsx)(C,{asChild:!0,children:(0,X.jsx)(ai,{type:`button`,variant:`ghost`,className:`size-8 shrink-0 p-0`,"aria-label":o,children:S})}),t[14]=o,t[15]=O);let k;t[16]!==y||t[17]!==O?(k=(0,X.jsxs)(`div`,{className:`flex min-w-0 shrink-0 items-center justify-between gap-3 border-b border-edge-subtle px-3.5 py-3`,children:[y,O]}),t[16]=y,t[17]=O,t[18]=k):k=t[18];let A;if(t[19]!==m||t[20]!==s||t[21]!==i||t[22]!==c||t[23]!==u){let e;t[25]!==m||t[26]!==s||t[27]!==i||t[28]!==c?(e=e=>(0,X.jsx)(Mk,{turn:e,active:e.id===m,labels:i,currentLabel:s,onSelect:()=>{c(e.messageIndex),f(!1)}},e.id),t[25]=m,t[26]=s,t[27]=i,t[28]=c,t[29]=e):e=t[29],A=u.map(e),t[19]=m,t[20]=s,t[21]=i,t[22]=c,t[23]=u,t[24]=A}else A=t[24];let j;t[30]===A?j=t[31]:(j=(0,X.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto`,children:(0,X.jsx)(`ol`,{className:`min-w-0`,children:A})}),t[30]=A,t[31]=j);let M;t[32]!==k||t[33]!==j?(M=(0,X.jsxs)(w,{children:[_,(0,X.jsxs)(T,{className:v,"aria-describedby":void 0,children:[k,j]})]}),t[32]=k,t[33]=j,t[34]=M):M=t[34];let N;return t[35]!==d||t[36]!==M||t[37]!==g?(N=(0,X.jsxs)(D,{open:d,onOpenChange:f,children:[g,M]}),t[35]=d,t[36]=M,t[37]=g,t[38]=N):N=t[38],N}function Ik(e){let{active:t,scrubbing:n,distance:r}=e;return n?r===0?`w-7 bg-fg`:r===1?`w-5 bg-fg-muted`:r===2?`w-4 bg-edge-strong/70`:t?`w-3.5 bg-accent`:`w-2.5 bg-edge-strong/45`:t?`w-3.5 bg-accent`:`w-2.5 bg-edge-strong/45`}function Lk(e){let t=(0,Y.c)(40),{turn:n,labels:r}=e,i,a,o,s,c,l,u,d,f;if(t[0]!==r||t[1]!==n.events||t[2]!==n.preview||t[3]!==n.timestamp||t[4]!==n.title||t[5]!==n.tools){let e=n.tools.slice(0,3),p=Math.max(0,n.tools.length-e.length),m=n.events.slice(0,Math.max(0,3-e.length));i=p+Math.max(0,n.events.length-m.length);let h=n.tools.length>0||n.events.length>0?[...e.map(Vk),...m.map(Bk),...i>0?[`+${i}`]:[]].join(` · `):n.title;t[15]===Symbol.for(`react.memo_cache_sentinel`)?(l=J(`pointer-events-auto absolute right-12 top-1/2 z-[100] w-[min(25rem,calc(100vw-8rem))] -translate-y-1/2`,`rounded-2xl border border-edge bg-surface-overlay p-3 text-left shadow-popover backdrop-blur`),t[15]=l):l=t[15],t[16]===n.timestamp?u=t[17]:(u=n.timestamp?(0,X.jsx)(`div`,{className:`mb-1 flex min-w-0 justify-end text-xs`,children:(0,X.jsx)(`time`,{suppressHydrationWarning:!0,className:`shrink-0 tabular-nums text-fg-disabled`,dateTime:new Date(n.timestamp).toISOString(),children:Wv(n.timestamp)})}):null,t[16]=n.timestamp,t[17]=u),t[18]===n.preview?d=t[19]:(d=(0,X.jsx)(`div`,{className:`min-w-0 text-sm font-semibold leading-5 text-fg`,children:(0,X.jsx)(`span`,{className:`line-clamp-1`,children:n.preview})}),t[18]=n.preview,t[19]=d),t[20]===h?f=t[21]:(f=(0,X.jsx)(`div`,{className:`mt-1 line-clamp-3 text-sm leading-6 text-fg-muted`,children:h}),t[20]=h,t[21]=f),a=`mt-3 flex min-w-0 flex-wrap items-center gap-x-3 gap-y-2 text-sm text-fg-subtle`,t[22]!==r||t[23]!==n.title||t[24]!==n.tools.length?(o=n.tools.length>0?(0,X.jsxs)(`span`,{className:`inline-flex items-center gap-1.5`,children:[(0,X.jsx)(Gt,{className:`size-3.5 shrink-0`,"aria-hidden":!0}),(0,X.jsx)(`span`,{children:Ak(n.tools.length,r)})]}):(0,X.jsx)(`span`,{children:n.title}),t[22]=r,t[23]=n.title,t[24]=n.tools.length,t[25]=o):o=t[25],s=e.map(zk),c=m.map(Rk),t[0]=r,t[1]=n.events,t[2]=n.preview,t[3]=n.timestamp,t[4]=n.title,t[5]=n.tools,t[6]=i,t[7]=a,t[8]=o,t[9]=s,t[10]=c,t[11]=l,t[12]=u,t[13]=d,t[14]=f}else i=t[6],a=t[7],o=t[8],s=t[9],c=t[10],l=t[11],u=t[12],d=t[13],f=t[14];let p;t[26]===i?p=t[27]:(p=i>0?(0,X.jsxs)(`span`,{children:[`+`,i]}):null,t[26]=i,t[27]=p);let m;t[28]!==a||t[29]!==o||t[30]!==s||t[31]!==c||t[32]!==p?(m=(0,X.jsxs)(`div`,{className:a,children:[o,s,c,p]}),t[28]=a,t[29]=o,t[30]=s,t[31]=c,t[32]=p,t[33]=m):m=t[33];let h;return t[34]!==m||t[35]!==l||t[36]!==u||t[37]!==d||t[38]!==f?(h=(0,X.jsxs)(`div`,{className:l,children:[u,d,f,m]}),t[34]=m,t[35]=l,t[36]=u,t[37]=d,t[38]=f,t[39]=h):h=t[39],h}function Rk(e){return(0,X.jsxs)(`span`,{className:J(`inline-flex min-w-0 max-w-[10rem] items-center gap-1.5`,e.tone===`branch`&&`text-accent`,e.tone===`compaction`&&`text-fg-muted`),children:[(0,X.jsx)(`span`,{className:`size-1.5 shrink-0 rounded-full bg-current opacity-70`,"aria-hidden":!0}),(0,X.jsx)(`span`,{className:`truncate`,children:e.label})]},e.key)}function zk(e){return(0,X.jsxs)(`span`,{className:J(`inline-flex min-w-0 max-w-[9rem] items-center gap-1.5`,e.running&&`text-accent`),children:[(0,X.jsx)(Gt,{className:`size-3.5 shrink-0`,"aria-hidden":!0}),(0,X.jsx)(`span`,{className:`truncate`,children:e.label})]},e.key)}function Bk(e){return e.label}function Vk(e){return e.label}function Hk(e){let t=(0,Y.c)(44),{items:n,activeMessageIndex:r,labels:i,onSelectMessage:a}=e,o;t[0]!==n||t[1]!==i?(o=kk(n,i),t[0]=n,t[1]=i,t[2]=o):o=t[2];let s=o,[c,l]=(0,Z.useState)(null),u=(0,Z.useRef)(null),d,f;if(t[3]===c?(d=t[4],f=t[5]):(d=()=>{if(!c)return;let e=()=>{l(null)},t=t=>{let n=t.target;n instanceof Node&&(u.current?.contains(n)||e())},n=t=>{t.key===`Escape`&&e()};return document.addEventListener(`pointerdown`,t,!0),document.addEventListener(`keydown`,n),()=>{document.removeEventListener(`pointerdown`,t,!0),document.removeEventListener(`keydown`,n)}},f=[c],t[3]=c,t[4]=d,t[5]=f),(0,Z.useEffect)(d,f),s.length<4)return null;let p;if(t[6]!==r||t[7]!==s){p=s[0]?.id;for(let e of s)e.messageIndex<=r&&(p=e.id);t[6]=r,t[7]=s,t[8]=p}else p=t[8];let m=c??p,h;t[9]!==c||t[10]!==s?(h=c?s.find(e=>e.id===c):null,t[9]=c,t[10]=s,t[11]=h):h=t[11];let g=h,_=c!==null,v;if(t[12]!==m||t[13]!==s){let e;t[15]===m?e=t[16]:(e=e=>e.id===m,t[15]=m,t[16]=e),v=s.findIndex(e),t[12]=m,t[13]=s,t[14]=v}else v=t[14];let y=Math.max(0,v),b=i.title,x,S;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(x=()=>{l(null)},S=e=>{let t=e.relatedTarget;(!(t instanceof Node)||!e.currentTarget.contains(t))&&l(null)},t[17]=x,t[18]=S):(x=t[17],S=t[18]);let C;t[19]===p?C=t[20]:(C=()=>l(e=>e??p??null),t[19]=p,t[20]=C);let w;if(t[21]!==a||t[22]!==_||t[23]!==m||t[24]!==y||t[25]!==s){let e;t[27]!==a||t[28]!==_||t[29]!==m||t[30]!==y?(e=(e,t)=>{let n=e.id===m,r=Math.abs(t-y);return(0,X.jsx)(`li`,{className:`group relative flex h-3.5 w-full shrink-0 items-center justify-end`,onMouseEnter:()=>l(e.id),onFocus:()=>l(e.id),children:(0,X.jsx)(`button`,{type:`button`,className:J(`flex h-3.5 w-full items-center justify-end rounded-sm pr-1.5`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`),onClick:()=>a(e.messageIndex),"aria-label":`${e.title}: ${e.preview}`,children:(0,X.jsx)(`span`,{className:J(`block h-0.5 rounded-full transition-[width,background-color] duration-150 ease-out`,Ik({active:n,scrubbing:_,distance:r}),`group-hover:bg-fg`),"aria-hidden":!0})})},e.id)},t[27]=a,t[28]=_,t[29]=m,t[30]=y,t[31]=e):e=t[31],w=s.map(e),t[21]=a,t[22]=_,t[23]=m,t[24]=y,t[25]=s,t[26]=w}else w=t[26];let T;t[32]!==w||t[33]!==C?(T=(0,X.jsx)(`div`,{className:`chat-timeline-scroll flex min-h-0 w-full flex-col`,children:(0,X.jsx)(`ol`,{className:`my-auto flex w-full shrink-0 flex-col items-end py-1`,onMouseEnter:C,children:w})}),t[32]=w,t[33]=C,t[34]=T):T=t[34];let E;t[35]!==i||t[36]!==g?(E=g?(0,X.jsx)(Lk,{turn:g,labels:i}):null,t[35]=i,t[36]=g,t[37]=E):E=t[37];let D;t[38]!==T||t[39]!==E?(D=(0,X.jsxs)(`div`,{className:`relative z-[90] flex h-full min-h-0 w-full flex-col justify-center overflow-visible`,children:[T,E]}),t[38]=T,t[39]=E,t[40]=D):D=t[40];let O;return t[41]!==i.title||t[42]!==D?(O=(0,X.jsx)(`aside`,{ref:u,className:`hidden h-full min-h-0 max-h-full w-12 shrink-0 items-center overflow-visible py-4 xl:flex`,"aria-label":b,onMouseLeave:x,onBlur:S,children:D}),t[41]=i.title,t[42]=D,t[43]=O):O=t[43],O}function Uk(e){return e.enabled?e.sourceContextPending?`pending:${e.conversationId??``}`:e.task?`task:${e.task.task.id}:${e.task.task.version}`:e.suppressProjectContext?`suppressed:${e.conversationId??``}`:e.project?`project:${e.project.id}:${e.project.name}`:e.conversationId?`session:${e.conversationId}:failed:${e.sourceContextFailed?`1`:`0`}`:`empty`:`disabled`}function Wk(e){let t=Uk(e);if(!e.enabled)return{key:t,context:{kind:`empty`},status:`ready`};if(e.sourceContextPending)return{key:t,context:{kind:`empty`},status:`loading`};if(e.task){let n=e.task.receipts[0];return{key:t,context:{kind:`task`,taskId:e.task.task.id,taskTitle:e.task.task.title,phase:e.task.task.phase,operationalState:e.task.operationalState,attentionSummary:e.task.attention[0]?.summary,nextAction:n?.nextAction,recentFailure:n?.failure?.recoveryAction},status:`ready`}}return e.suppressProjectContext?{key:t,context:{kind:`empty`},status:e.sourceContextFailed?`degraded`:`ready`}:e.project?{key:t,context:{kind:`project`,projectId:e.project.id,projectName:e.project.name},status:`ready`}:{key:t,context:{kind:`empty`},status:e.conversationId?`loading`:`ready`}}function Gk(e){let{enabled:t,conversationId:n,sourceContextPending:r,sourceContextFailed:i,suppressProjectContext:a,project:o,task:s}=e,c=Uk(e),[l,u]=(0,Z.useState)(()=>Wk(e));(0,Z.useEffect)(()=>{let e=!1,l=Wk({enabled:t,conversationId:n,sourceContextPending:r,sourceContextFailed:i,suppressProjectContext:a,project:o,task:s});if(u(l),!(!t||!n||r||s||a))return(async()=>{let t=!!i,r=o?.id??null;if(!r)try{let e=await br(n);r=e?e.creation.projectId?.trim()||null:(await dn(n)).projectId?.trim()||null}catch{t=!0}if(!r){e||u({key:c,context:{kind:`empty`},status:t?`degraded`:`ready`});return}try{let[n,i]=await Promise.allSettled([o?Promise.resolve(o):cn(r),ln(r)]);if(n.status===`rejected`)throw n.reason;let a=i.status===`fulfilled`?i.value:null;a||(t=!0);let s=a?.blockers[0],l=a?.digest.health===`attention`?a.recentResults.find(({receipt:e})=>e.status===`failed`||e.verification.status===`failed`):void 0;e||u({key:c,context:{kind:`project`,projectId:r,projectName:n.value.name,recommendedAction:a?.digest.recommendedAction,blockedReason:s?.detail??s?.title,recentFailure:l?.receipt.failure?.recoveryAction??l?.receipt.summary},status:t?`degraded`:`ready`})}catch{e||u({key:c,context:{kind:`empty`},status:`degraded`})}})(),()=>{e=!0}},[n,c,t,i,r,a,o,s]);let d=l.key===c?l:Wk(e);return{context:d.context,status:d.status}}var Kk=[zt,Ft,$o];function qk(e){let t=(0,Y.c)(20),{agentName:n,messages:r,disabled:i,onPick:a}=e,o;t[0]!==r.setupPromptComplete||t[1]!==r.setupPromptIdentity||t[2]!==r.setupPromptProject?(o=[r.setupPromptIdentity,r.setupPromptProject,r.setupPromptComplete],t[0]=r.setupPromptComplete,t[1]=r.setupPromptIdentity,t[2]=r.setupPromptProject,t[3]=o):o=t[3];let s=o,c;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,X.jsx)(`div`,{className:`flex size-12 items-center justify-center rounded-2xl bg-accent-soft text-accent`,children:(0,X.jsx)(zt,{className:`size-6`,strokeWidth:1.75,"aria-hidden":!0})}),t[4]=c):c=t[4];let l;t[5]===r.setupTitle?l=t[6]:(l=(0,X.jsx)(`h1`,{id:`agent-setup-title`,className:`mt-4 text-balance text-xl font-semibold tracking-tight text-fg`,children:r.setupTitle}),t[5]=r.setupTitle,t[6]=l);let u;t[7]!==n||t[8]!==r.setupDescription?(u=r.setupDescription.replace(`{{name}}`,n),t[7]=n,t[8]=r.setupDescription,t[9]=u):u=t[9];let d;t[10]===u?d=t[11]:(d=(0,X.jsx)(`p`,{className:`mt-2 max-w-xl text-pretty text-sm leading-relaxed text-fg-muted`,children:u}),t[10]=u,t[11]=d);let f;t[12]!==i||t[13]!==a||t[14]!==s?(f=(0,X.jsx)(`div`,{className:`mt-7 grid w-full gap-3 md:grid-cols-3`,children:s.map((e,t)=>{let n=Kk[t]??zt;return(0,X.jsxs)(`button`,{type:`button`,disabled:i,onClick:()=>a(e),className:J(`flex min-h-24 items-center gap-3 rounded-xl border border-edge bg-surface-panel px-4 py-4 text-left text-sm font-medium leading-relaxed text-fg`,`hover:border-accent/30 hover:bg-surface-hover`,ta.transition,ta.pressCard,ta.focusRingPanel,ta.disabled),children:[(0,X.jsx)(n,{className:`size-4 shrink-0 text-accent`,strokeWidth:1.75,"aria-hidden":!0}),(0,X.jsx)(`span`,{children:e})]},e)})}),t[12]=i,t[13]=a,t[14]=s,t[15]=f):f=t[15];let p;return t[16]!==l||t[17]!==d||t[18]!==f?(p=(0,X.jsxs)(`section`,{className:`mx-auto flex w-full max-w-4xl flex-col items-center px-2 pb-4 pt-12 text-center sm:pt-16`,"aria-labelledby":`agent-setup-title`,children:[c,l,d,f]}),t[16]=l,t[17]=d,t[18]=f,t[19]=p):p=t[19],p}var Jk=t({ChatPage:()=>Xk}),Yk=(0,Z.lazy)(async()=>({default:(await o(()=>import(`./chat-terminal-dock-Cd51G9eG.js`),__vite__mapDeps([30,1,2,5,6,31,11,32,26,27,17,18,33,34,35,36,37,38,39,40,41,42,43,44,4,45,46,28,29,9,47,48,49,50]))).ChatTerminalDock}));function Xk({embedded:e=!1,conversationId:t,taskId:n,personal:r=!1,personalWelcome:i,automationWorkspace:a=!1,automationTimelineEntries:o,readOnly:s=!1,onHistoryReady:f,automationExecution:p=!1,initialTurnId:g,onInitialTurnLocated:_}={}){let v=h(e=>e.language),x=y(v),C=m(e=>e.conversationId),O=d(),k=c(),{pathname:A}=k,[j,M]=l(),N=(0,Z.useRef)(null),P=(0,Z.useRef)(0),F=(0,Z.useRef)(null),[I,L]=(0,Z.useState)(null),[R,B]=(0,Z.useState)(()=>!!(t&&window.localStorage.getItem(`personal-calibration:${t}`))),[ee,V]=(0,Z.useState)(null),[H,te]=(0,Z.useState)(null),[U,W]=(0,Z.useState)(!1),[ne,re]=(0,Z.useState)(null),[ie,ae]=(0,Z.useState)(null),oe=n?.trim()||null,{data:se}=Ss(oe??``),{auth:G,session:K,messages:ce,timeline:le,stream:q,followUp:ue,clarify:de,agents:fe}=xk({fixedConversationId:t,taskId:oe??void 0,personal:r}),pe=Mn(e=>!!(K.conversationId&&!e.shellError&&e.sessions[K.conversationId]?.historyStatus===`ready`));(0,Z.useEffect)(()=>{pe&&ce.items.length>0&&f?.()},[pe,ce.items.length,f]),(0,Z.useLayoutEffect)(()=>{if(!a&&!p||!K.conversationId)return;let e=K.conversationId;return Of.setState({conversationIdOverride:e}),()=>{Of.getState().conversationIdOverride===e&&Of.setState({conversationIdOverride:null})}},[a,p,K.conversationId]);let me=!r&&!e&&!oe&&j.get(`scene`)===`find-skills`,he=a||j.get(`setup`)===`automation`,ge=!e&&!oe&&j.get(`agentSetup`)===`1`,_e=r?``:j.get(`skill`)?.trim()??``,ve=r?``:j.get(`slash`)?.trim()??``;(0,Z.useEffect)(()=>{if(!r||!j.has(`skill`)&&!j.has(`slash`))return;let e=new URLSearchParams(j);e.delete(`skill`),e.delete(`slash`),M(e,{replace:!0})},[r,j,M]);let ye=j.get(a?`chatDraft`:`draft`)??``,be=j.get(`autoSend`)===`1`,xe=j.get(`attachmentHandoff`),Se=j.get(`attachmentsHandoff`),Ce=K.decodedKey??K.conversationId,[we,Ee]=(0,Z.useState)(null),De=(0,Z.useRef)(null);(0,Z.useEffect)(()=>{if(xe){let e=Ae(xe);e&&Ee(e),De.current=Ce;return}De.current!==Ce&&(De.current=Ce,Ee(null))},[xe,Ce]);let Oe=df(e=>e.markViewed),ke=df(e=>Ce?e.runs[Ce]?.unread:!1);(0,Z.useEffect)(()=>{Ce&&ke&&Oe(Ce)},[Ce,ke,Oe]);let{data:je}=Sk(Ce),Ne=he||!!je?.identity?.customData?.automationSetup,Pe=!!je?.identity?.customData?.automationSetup?.automationId,Fe=(0,Z.useCallback)(async e=>{if(Ce)try{let t=await K.sessionManager.forkSessionAtTurn(Ce,e);window.dispatchEvent(new CustomEvent(`session-created`,{detail:{key:t.conversationId,conversationId:t.conversationId}})),Me(`success`,x.chat.messageForkCreated),O(`/chat/${encodeURIComponent(t.conversationId)}`)}catch(e){throw Me(`error`,e instanceof Error?e.message:x.chat.messageForkFailed),e}},[Ce,x.chat.messageForkCreated,x.chat.messageForkFailed,O,K.sessionManager]),Ie=ce.items.at(-1),Le=r&&!R&&!q.streaming&&!q.sending&&Ie?.role===`assistant`&&ce.items.filter(e=>e.role===`user`).length===1&&ce.items.filter(e=>e.role===`assistant`).length===1&&!ce.items.some(e=>e.role===`task`),Re=e=>{B(!0),t&&window.localStorage.setItem(`personal-calibration:${t}`,`1`),e&&(P.current+=1,L({id:P.current,text:e}))};(0,Z.useEffect)(()=>{N.current=null},[K.conversationId]),(0,Z.useEffect)(()=>{if(!G.hasToken||!_e&&!ve&&!ye&&!(K.projectPreparation&&Se)||be&&!K.projectPreparation||K.showSessionLoading||K.sessionRoutePending||!K.conversationId&&!K.projectPreparation)return;let e=K.projectPreparation&&Se?wi(Se)??void 0:void 0,t=()=>{let e=new URLSearchParams(j);e.delete(`skill`),e.delete(`slash`),e.delete(a?`chatDraft`:`draft`),K.projectPreparation&&(e.delete(`autoSend`),e.delete(`attachmentsHandoff`));let t=e.toString();O({pathname:A,search:t?`?${t}`:``},{replace:!0})},n=(n,r)=>{N.current!==r&&(N.current=r,queueMicrotask(()=>{e?.length?yp(n,e):(P.current+=1,L({id:P.current,text:n})),t()}))},r=Br(_e,ye);if(r||e?.length){let e=`${K.conversationId}:draft:${r}`;n(r??``,e);return}if(_e){t();return}if(!/^[a-zA-Z][a-zA-Z0-9_-]*$/.test(ve)){t();return}let i=`${K.conversationId}:slash:${ve}`;N.current!==i&&queueMicrotask(()=>{(async()=>{try{let e=await oo(),t=ve.toLowerCase(),n=e.find(e=>e.name.toLowerCase()===t||Array.isArray(e.aliases)&&e.aliases.some(e=>e.toLowerCase()===t));if(n){if(N.current===i)return;N.current=i,P.current+=1,L({id:P.current,text:ew(n)})}}finally{t()}})()})},[G.hasToken,a,_e,ve,ye,be,Se,K.projectPreparation,j,K.showSessionLoading,K.sessionRoutePending,K.conversationId,O,A]);let{scrollRef:Be,composerDockRef:We,atBottom:Ge,registerListContentRef:Ke,scrollToBottom:qe,replySpaceRef:Je,reserveReplySpace:Ye,onScroll:Xe}=zC({hasToken:G.hasToken,showSessionLoading:K.showSessionLoading,conversationId:K.conversationId,chatMessages:ce.items,streaming:q.streaming,hasMore:K.hasMore,loadingMore:K.loadingMore,loadMoreMessages:K.loadMoreMessages});(0,Z.useEffect)(()=>{if(!a||!Ge||!o?.length)return;let e=requestAnimationFrame(()=>qe(!1));return()=>cancelAnimationFrame(e)},[a,o,Ge,qe]);let Ze=qD({enabled:r,conversationId:K.conversationId,messages:ce.items,viewportRef:Be}),[Qe,$e]=(0,Z.useState)(0),et=(0,Z.useRef)(null),tt=(0,Z.useRef)(null),rt=(0,Z.useMemo)(()=>{let e=-1;for(let t of le.items)typeof t.displayIndex==`number`&&Number.isFinite(t.displayIndex)&&(e=Math.max(e,t.displayIndex));return e<0?0:Math.max(0,e+1-ce.items.length)},[ce.items.length,le.items]),it=(0,Z.useCallback)(e=>{let t=Be.current;if(!t)return!1;let n=t.querySelector(`[data-chat-message-index="${e}"]`);if(!n){let n=SC(t)?.reveal(e)??!1;return n&&$e(e),n}CC(t),$e(e);let r=t.getBoundingClientRect(),i=n.getBoundingClientRect(),a=t.scrollTop+i.top-r.top-16;return t.scrollTo({top:Math.max(0,a),behavior:yC()}),!0},[Be]),at=(0,Z.useCallback)(()=>{let e=Be.current;if(!e)return;let t=vC(e);$e(e=>e===t?e:t)},[Be]),ot=(0,Z.useCallback)(()=>{et.current??=requestAnimationFrame(()=>{et.current=null,at()})},[at]),st=(0,Z.useCallback)(()=>{Xe(),ot()},[Xe,ot]),ct=(0,Z.useCallback)(e=>{let t=e-rt;if(t<0||t>=ce.items.length){t<0&&K.hasMore&&!K.loadingMore&&(tt.current=e,K.loadMoreMessages());return}tt.current=null,it(t)},[ce.items.length,it,K.hasMore,K.loadMoreMessages,K.loadingMore,rt]);pw({conversationId:K.conversationId,turnId:g,messages:ce.items,ready:pe,hasMore:K.hasMore,loadingMore:K.loadingMore,loadMore:K.loadMoreMessages,reveal:it,onLocated:_});let lt=dO({conversationId:K.conversationId,taskId:oe,messages:ce.items,displayOffset:rt,viewportRef:Be,onRevealDisplayIndex:ct});(0,Z.useEffect)(()=>{let e=tt.current;if(e==null)return;let t=e-rt;if(t>=0&&t<ce.items.length){tt.current=null,requestAnimationFrame(()=>it(t));return}if(t<0&&K.hasMore&&!K.loadingMore){K.loadMoreMessages();return}(t>=ce.items.length||!K.hasMore)&&(tt.current=null)},[ce.items.length,it,K.hasMore,K.loadMoreMessages,K.loadingMore,rt]),(0,Z.useEffect)(()=>{ot()},[ce.items.length,ot,K.conversationId,rt]),(0,Z.useEffect)(()=>()=>{et.current!=null&&cancelAnimationFrame(et.current)},[]),(0,Z.useEffect)(()=>{L(null)},[K.conversationId]);let ut=(0,Z.useCallback)(e=>{P.current+=1,L({id:P.current,text:e.prompt})},[]),dt=!!(K.conversationId&&!K.showSessionLoading&&!K.sessionRoutePending&&K.workspaceSource!==`project`&&K.workspaceSource!==`execution_environment`&&ce.items.length===0),ft=Ja(e=>e.setAgentId);(0,Z.useEffect)(()=>{if(G.hasToken)return ft(fe.displayAgentId),()=>ft(``)},[G.hasToken,fe.displayAgentId,ft]);let pt=K.conversationPhase===`creating-session`,mt=K.conversationPhase===`loading-history`;rf(r&&!mt?Ce:null,r);let ht=pt||mt,gt=mt,_t=!gt&&ce.items.length===0&&!o?.length&&!q.streaming,vt=(0,Z.useMemo)(()=>{if(q.taskPlan){let e=jD(q.taskPlan);return e?{plan:e,changeSummary:WD(ce.items,q.streaming)?.changeSummary??null}:null}return WD(ce.items,q.streaming)},[ce.items,q.streaming,q.taskPlan]),yt=(0,Z.useMemo)(()=>(K.sessionRoutePending&&K.decodedKey?K.decodedKey:K.conversationId)?K.sessionName?.trim()||x.chat.newSession:x.nav.chat,[K.conversationId,K.sessionName,K.sessionRoutePending,K.decodedKey,x.nav.chat,x.chat.newSession]),bt=je?.sourceNoteId??null,xt=LE(Ce,j.get(`projectId`)),St=K.projectPreparation?.project??xt,[Ct,wt]=(0,Z.useState)([]),[Tt,Et]=(0,Z.useState)([]),Dt=m(e=>e.baseUrl),Ot=Ce?Ro(Dt,C,Ce):null,kt=Lo.store(e=>Ot?e.drafts[Ot]:void 0),At=(0,Z.useRef)(void 0),[jt,Mt]=(0,Z.useState)(!1);(0,Z.useLayoutEffect)(()=>{if(At.current!==void 0){Ce&&Ce!==At.current&&(At.current=void 0);return}wt([]),Et([])},[Ce]),(0,Z.useEffect)(()=>{let e=!1;if(V(null),bt)return ze(bt).then(t=>{e||V(t?.title?.trim()||null)}).catch(()=>{e||V(null)}),()=>{e=!0}},[bt]);let Nt=ee||je?.sourceNoteTitle||x.chat.sourceNoteFallbackTitle,Pt=Gk({enabled:G.hasToken&&!!(Ce||St)&&!ge&&ce.items.length===0&&!K.showSessionLoading&&!K.sessionRoutePending,conversationId:Ce,suppressProjectContext:!!(bt||we||K.workspaceSource===`execution_environment`||K.workspaceSource===`session_override`||K.workspaceSource===`agent_workspace`),project:St,task:se}),Ft=(0,Z.useMemo)(()=>fe.chatAgents?.items.find(e=>e.id===fe.displayAgentId)??{id:fe.displayAgentId},[fe.chatAgents?.items,fe.displayAgentId]),It=(0,Z.useMemo)(()=>ps(Pt.context,x.chat.welcomeSpotlight,{contextStatus:Pt.status}),[x.chat.welcomeSpotlight,Pt.context,Pt.status]),Lt=(0,Z.useMemo)(()=>It.recommendation?{suggestionId:It.recommendation.id,contextKind:It.contextKind,prompt:It.recommendation.prompt}:null,[It]),Rt=(0,Z.useCallback)((...e)=>{let[t,n,r,i,a]=e;if(kt&&(ie||t.trim().startsWith(`/`)))return Mn.getState().setShellError(x.chat.pageContext.pending),!1;if(ie)return ae(null),q.replaceLatestUserTurn(ie.turnId,t,n,r,i);let o=!1,s=q.sendMessage(t,n,r,i,void 0,kt?.envelope,(e,t)=>{o=!0,Ye(t??e),a?.onDispatched?.({clientSubmissionId:e,messageRenderKey:t})});return o?(Ot&&kt&&Lo.remove(Ot,kt),!0):s},[ie,q.replaceLatestUserTurn,q.sendMessage,kt,Ot,x.chat.pageContext.pending,Ye]),zt=IE({preparation:K.projectPreparation,conversationId:Ce,ready:K.modelConfigReady&&!ht,onSend:Rt}),Bt=(0,Z.useCallback)(e=>{e.turnId&&(ae({turnId:e.turnId}),yp(e.userTurnDocument?Bn(e.userTurnDocument):Ln(e.content),In(e.attachments),e.contextRefs?.flatMap(e=>e.kind===`mcp_resource`?[]:[{refId:e.refId,kind:e.kind,sourceId:e.sourceId,expectedVersion:e.version,title:e.title,fileKind:e.fileKind}])))},[]),Vt=(0,Z.useCallback)(()=>{ae(null),yp(``)},[]);(0,Z.useEffect)(()=>{ae(null)},[K.conversationId]),(0,Z.useEffect)(()=>{if(!be||!ye.trim()&&!Se||!G.hasToken||K.showSessionLoading||K.sessionRoutePending||!K.conversationId||q.sending||q.streaming)return;let e=Br(_e,ye),t=Se?wi(Se):void 0;if(!e&&!t?.length)return;let n=`${K.conversationId}:auto-send:${e??``}:${Se??``}`;if(N.current===n)return;N.current=n;let r=new URLSearchParams(j);r.delete(`skill`),r.delete(`slash`),r.delete(`draft`),r.delete(`autoSend`),r.delete(`attachmentsHandoff`);let i=r.toString();O({pathname:A,search:i?`?${i}`:``},{replace:!0}),Rt(e??``,t??void 0)},[G.hasToken,be,Se,ye,Rt,O,A,j,K.conversationId,K.sessionRoutePending,K.showSessionLoading,_e,q.sending,q.streaming]);let Ht=(0,Z.useCallback)(()=>{F.current?.reject(),F.current=null,te(null),W(!1)},[]);(0,Z.useEffect)(()=>{Ht()},[Ht,bt]);let Ut=(0,Z.useMemo)(()=>({title:x.chat.timelineTitle,turn:x.chat.timelineTurn,messageFallback:x.chat.timelineMessageFallback,toolCount_one:x.chat.timelineToolCount_one,toolCount_other:x.chat.timelineToolCount_other,searchedWeb:x.chat.stepSearchedWeb,searchedMemory:x.chat.stepSearchedMemory,searchedCode:x.chat.stepSearchedCode,searched:x.chat.stepSearched,readFile:x.chat.stepReadFile,runCommand:x.chat.stepRunCommand,listDirectory:x.chat.stepListDirectory,writeFile:x.chat.stepWriteFile,editFile:x.chat.stepEditFile,openUrl:x.chat.stepOpenUrl,fetchUrl:x.chat.stepFetchUrl,unknownTool:x.chat.stepUnknownTool}),[x.chat.timelineTitle,x.chat.timelineTurn,x.chat.timelineMessageFallback,x.chat.timelineToolCount_one,x.chat.timelineToolCount_other,x.chat.stepSearchedWeb,x.chat.stepSearchedMemory,x.chat.stepSearchedCode,x.chat.stepSearched,x.chat.stepReadFile,x.chat.stepRunCommand,x.chat.stepListDirectory,x.chat.stepWriteFile,x.chat.stepEditFile,x.chat.stepOpenUrl,x.chat.stepFetchUrl,x.chat.stepUnknownTool]),Wt=(0,Z.useCallback)(async e=>{if(!bt)return;F.current?.reject(),W(!1);let t=x.chat.sourceNoteAppendSourceLine.replace(`{{time}}`,new Date().toLocaleString(v));return te({heading:x.chat.sourceNoteAppendHeading,content:`${t}\n\n${e.trim()}`}),new Promise((e,t)=>{F.current={sourceNoteId:bt,resolve:e,reject:t}})},[v,x.chat.sourceNoteAppendHeading,x.chat.sourceNoteAppendSourceLine,bt]),Gt=`${k.pathname}${k.search}`,Kt=(0,Z.useCallback)(async e=>{try{let t=await Ue(e.trim(),`web`);Me(`success`,x.chat.messageSavedToNote,void 0,{href:nt(Gt,t.id)})}catch(e){throw Me(`error`,e instanceof Error?e.message:x.notes.quickCaptureFailed),e}},[Gt,x.chat.messageSavedToNote,x.notes.quickCaptureFailed]),qt=(0,Z.useCallback)(async()=>{let e=F.current;if(!e||!H)return;let t=H.heading.trim()||x.chat.sourceNoteAppendHeading,n=H.content.trim();if(n){W(!0),re(null);try{await He(e.sourceNoteId,n,t),window.dispatchEvent(new CustomEvent(`note-updated`,{detail:{noteId:e.sourceNoteId,source:`chat`,conversationId:Ce}})),e.resolve(),F.current=null,te(null)}catch(e){re(e instanceof Error?e.message:x.chat.sourceNoteSaveFailed)}finally{W(!1)}}},[Ce,x.chat.sourceNoteAppendHeading,x.chat.sourceNoteSaveFailed,x.chat.sourceNoteSaveSuccess,H]),Yt=(0,Z.useCallback)(async e=>{if(!bt)return;let t=e.trim().split(/\n+/)[0]?.replace(/^[-#*>\s]+/,``).trim()||x.chat.sourceNoteTaskFallbackTitle;try{await Ve(t.slice(0,120),{sourceNoteId:bt,sourceConversationId:Ce})}catch(e){throw Me(`error`,e instanceof Error?e.message:x.chat.sourceNoteTaskFailed),e}},[Ce,x.chat.sourceNoteTaskFailed,x.chat.sourceNoteTaskFallbackTitle,x.chat.sourceNoteTaskSuccess,bt]),Xt=(0,Z.useCallback)(()=>{if(!bt)return;let e=x.chat.sourceNoteDigestPrompt.replace(`{{title}}`,Nt);if(q.streaming||q.sending){ue.addPendingFollowUp(e),sa({tone:`info`,status:`done`,title:x.chat.sourceNoteDigestQueued,source:v===`zh`?`笔记整理`:`Note digest`,dedupeKey:bt?`note-digest:${bt}`:void 0});return}q.sendMessage(e)},[ue,v,x.chat.sourceNoteDigestPrompt,x.chat.sourceNoteDigestQueued,bt,Nt,q]),Zt=(0,Z.useCallback)(async e=>{if(!(jt||zt.busy)){if(K.projectPreparation){At.current=null,O(Hr(e),{state:{forceNewChat:!0,agentId:fe.displayAgentId,temporary:K.userContextMode===`temporary`}});return}if(!(At.current!==void 0||q.sending||q.streaming||ht)){At.current=Ce,Mt(!0);try{e?O(Hr(e),{state:{forceNewChat:!0,agentId:fe.displayAgentId,temporary:K.userContextMode===`temporary`}}):await K.createNewSession({forceNew:!0,projectId:e,temporary:K.userContextMode===`temporary`})}catch(e){At.current=void 0,Me(`error`,x.chat.composerContext.changeFailed,{error:e instanceof Error?e.message:String(e)})}finally{Mt(!1)}}}},[Ce,ht,x.chat.composerContext.changeFailed,jt,zt.busy,K.createNewSession,K.projectPreparation,K.userContextMode,q.sending,q.streaming,O,fe.displayAgentId]),Qt=(0,Z.useCallback)(()=>Zt(null),[Zt]),$t=(0,Z.useCallback)(async e=>{if(!(jt||ht||q.sending||q.streaming||!dt)){Mt(!0);try{await K.onSessionWorkingDirectoryChange(e)}finally{Mt(!1)}}},[jt,ht,q.sending,q.streaming,dt,K.onSessionWorkingDirectoryChange]),en=(0,Z.useMemo)(()=>({project:St,draftRefs:Ct,draftAttachments:Tt,draftPage:kt?{id:`${kt.envelope.tabId}:${kt.envelope.sequence}`,title:kt.title||(v===`zh`?`当前页面`:`Current page`)}:void 0,onLeaveProject:jt||zt.busy?void 0:Qt,leaveProjectLabel:x.chat.scopeRemoveProject,onDraftSourceNote:bt?Xt:void 0,draftSourceNoteLabel:x.chat.sourceNoteDigestAction}),[jt,zt.busy,St,Ct,Tt,kt,v,Qt,x.chat.scopeRemoveProject,bt,Xt,x.chat.sourceNoteDigestAction]);return G.hasToken?(q.error?zn(q.error):null)?.code===`session_not_found`?(0,X.jsxs)(`div`,{className:`flex h-full min-h-0 flex-1 flex-col overflow-hidden bg-surface-panel`,children:[(0,X.jsx)(yD,{}),(0,X.jsx)(uD,{chatHeadline:x.chat.sessionNotFoundTitle,chatAgents:fe.chatAgents?.items??[],showChatAgentSelector:!1,chatAgentId:fe.displayAgentId,onChatAgentChange:fe.onChatAgentChange,chatAgentDisabled:!0}),(0,X.jsx)(`main`,{className:`mx-auto flex w-full max-w-xl flex-1 items-center px-4 py-12 sm:px-6`,children:(0,X.jsx)(`div`,{className:`w-full`,children:(0,X.jsx)(Lm,{errorText:q.error})})})]}):(0,X.jsx)(b_,{value:Ne,children:(0,X.jsxs)(`div`,{className:J(`flex h-full min-h-0 flex-1 flex-col bg-surface-panel`,a?`overflow-clip`:`overflow-hidden`),children:[(0,X.jsx)(yD,{}),!e||a?(0,X.jsx)(uD,{inline:a,chatHeadline:me&&ce.items.length===0?x.skills.findTitle:yt,chatAgents:fe.chatAgents?.items??[],showChatAgentSelector:!a&&!ge&&fe.showChatAgentSelector,chatAgentId:fe.displayAgentId,onChatAgentChange:fe.onChatAgentChange,chatAgentDisabled:zt.busy||jt||ht&&!K.projectPreparation,conversationId:K.conversationId,hasMessages:!ht&&ce.items.length>0,workspacePath:K.effectiveWorkspacePath,userContextMode:K.userContextMode,projectId:St?.id,context:en,canChangeWorkspace:!1,workspaceDisabled:ht||q.sending||q.streaming,onWorkspaceChange:K.onSessionWorkingDirectoryChange,prepareTerminalSession:K.projectPreparation?zt.prepareSession:void 0,terminalDisabled:!!(K.projectPreparation&&(zt.busy||!zt.allowed||zt.checking)),showContextControls:!ge,onFindOpen:lt.show}):null,(0,X.jsxs)(`div`,{className:`relative flex min-h-0 w-full flex-1 flex-col`,children:[!e&&je?.parentConversationId?(0,X.jsxs)(`div`,{className:`shrink-0 border-b border-edge-subtle bg-surface-panel/80 px-3 py-2 text-xs text-fg-muted sm:px-5 xl:px-6`,children:[(0,X.jsx)(u,{to:`/chat/${encodeURIComponent(je.parentConversationId)}`,className:`font-medium text-accent transition-colors hover:text-accent-fg`,children:x.chat.forkedFromConversation.replace(`{{name}}`,je.forkedFromSessionName||x.chat.forkedFromConversationFallback)}),(0,X.jsx)(`span`,{className:`ms-2`,children:x.chat.forkSharedWorkspaceNotice})]}):null,k.state?.fromAgentEditor&&fe.displayAgentId?(0,X.jsx)(`div`,{className:`shrink-0 border-b border-edge-subtle bg-surface-panel/80 px-3 py-1.5 sm:px-5 xl:px-6`,children:(0,X.jsxs)(u,{to:ko(fe.displayAgentId),className:`inline-flex items-center gap-1 text-xs font-medium text-accent transition-colors hover:text-accent-fg`,children:[(0,X.jsx)(`span`,{"aria-hidden":!0,children:`←`}),x.agentsSettings.backToEditor]})}):null,e&&bt?(0,X.jsx)(`div`,{className:`shrink-0 border-b border-edge-subtle bg-surface-panel/80 px-3 py-1.5 sm:px-5 xl:px-6`,children:(0,X.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-center justify-between gap-2 text-xs text-fg-muted`,children:[(0,X.jsx)(`span`,{className:`min-w-0 truncate`,children:x.chat.sourceNoteBanner.replace(`{{title}}`,Nt)}),(0,X.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[(0,X.jsxs)(`button`,{type:`button`,className:`inline-flex h-7 items-center gap-1.5 rounded-md border border-edge-subtle px-2 font-medium text-fg-muted transition-colors hover:bg-surface-hover hover:text-fg focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-accent`,onClick:Xt,children:[(0,X.jsx)(Te,{className:`size-3.5`,strokeWidth:1.75,"aria-hidden":!0}),(0,X.jsx)(`span`,{children:x.chat.sourceNoteDigestAction})]}),(0,X.jsx)(u,{to:nt(`${k.pathname}${k.search}`,bt),className:`font-medium text-accent transition-colors hover:text-accent-fg`,children:x.chat.sourceNoteOpen})]})]})}):null,(0,X.jsxs)(`div`,{className:`relative flex min-h-0 min-w-0 flex-1 flex-col`,children:[(0,X.jsx)(JD,{open:lt.open,query:lt.query,activeIndex:lt.activeIndex,resultCount:lt.resultCount,searching:lt.searching,truncated:lt.truncated,limitedToLoaded:lt.limitedToLoaded,inputRef:lt.inputRef,labels:x.chat.find,onQueryChange:lt.setQuery,onPrevious:lt.previous,onNext:lt.next,onClose:lt.close}),!e||a?(0,X.jsx)(`div`,{className:`pointer-events-none absolute inset-y-0 left-1/2 z-20 hidden w-full max-w-[calc(var(--max-width-chat-frame)+8rem)] -translate-x-1/2 xl:block`,children:(0,X.jsx)(`div`,{className:`pointer-events-auto absolute inset-y-0 right-0`,children:(0,X.jsx)(Hk,{items:le.items,activeMessageIndex:Qe+rt,labels:Ut,onSelectMessage:ct})})}):null,(0,X.jsx)(`div`,{ref:Be,"data-chat-scroll-viewport":!0,className:J(`chat-messages chat-messages--wide-viewport relative min-h-0 flex-1 overflow-y-auto overflow-x-hidden [overflow-anchor:none] [scrollbar-gutter:stable_both-edges]`,_t?`chat-messages--compact-welcome pt-5 pb-2`:`py-4`),onScroll:st,"data-chat-find-open":lt.open?``:void 0,children:(0,X.jsx)(`div`,{className:e&&!r?`px-3`:`px-3 sm:px-5 xl:px-6`,children:(0,X.jsx)(`div`,{"data-chat-message-frame":!0,className:J(`mx-auto w-full min-w-0`,(!e||r||a)&&`max-w-[var(--max-width-chat-frame)]`),children:mt?(0,X.jsxs)(`div`,{className:`flex min-h-[min(40vh,20rem)] w-full flex-col gap-10 py-8`,"aria-busy":`true`,children:[(0,X.jsx)(`div`,{className:`flex justify-end`,children:(0,X.jsx)(Jt,{className:`h-11 w-[min(70%,22rem)] rounded-2xl`})}),(0,X.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,X.jsx)(Jt,{className:`h-4 w-24`}),(0,X.jsx)(Jt,{className:`h-4 w-[min(82%,36rem)]`}),(0,X.jsx)(Jt,{className:`h-4 w-[min(74%,32rem)]`}),(0,X.jsx)(Jt,{className:`h-4 w-[min(48%,22rem)]`})]}),(0,X.jsx)(`div`,{className:`flex justify-end`,children:(0,X.jsx)(Jt,{className:`h-11 w-[min(62%,18rem)] rounded-2xl`})})]}):(0,X.jsxs)(X.Fragment,{children:[K.loadingMore?(0,X.jsx)(`div`,{className:`mb-3 text-center text-xs text-fg-muted`,children:x.chat.loadOlder}):null,q.error?(0,X.jsx)(`div`,{className:J(`sticky z-20 shrink-0 bg-transparent pe-2`,_t?`-top-5`:`-top-4`),children:(0,X.jsx)(Lm,{errorText:q.error})}):null,Ne&&!a&&Ce?(0,X.jsx)(Co,{conversationId:Ce,language:v,running:q.streaming||q.sending}):null,Ne&&!a&&ce.items.length>0?(0,X.jsx)(u,{className:`mb-4 inline-block rounded-md px-2 py-1 text-xs text-fg-muted hover:bg-surface-hover`,to:`/automations`,children:v===`zh`?`← 定时任务`:`← Scheduled tasks`}):null,!e&&oe?(0,X.jsx)(`div`,{className:`hidden md:block`,children:(0,X.jsx)(Ks,{taskId:oe})}):null,null,null,!e&&Ce?(0,X.jsx)(z,{eventType:`session.transcript.updated`,source:`sessions`,payloadKey:`conversationId`,payloadValue:Ce,className:`mb-6`}):null,(0,X.jsx)(kC,{scrollRef:Be,messages:ce.items,timelineEntries:o,personal:r,authToken:C??void 0,conversationId:K.decodedKey??K.conversationId,projectId:St?.id,streaming:q.streaming,sending:q.sending,progress:q.progress,reasoningLevel:K.reasoningLevel,showAssistantWorkLog:!0,registerListContentRef:Ke,replySpaceRef:Je,onPickWelcomePrompt:ut,welcomeSpotlight:It,welcomeOverlay:r&&i?(0,X.jsxs)(`div`,{className:`mx-auto flex w-full max-w-2xl flex-col items-start gap-3 px-4 py-8 text-fg`,children:[(0,X.jsx)(`div`,{className:`flex size-16 items-center justify-center rounded-3xl bg-accent/10 text-3xl text-accent`,"aria-hidden":!0,children:i.avatar??`✦`}),(0,X.jsx)(`h2`,{className:`text-2xl font-semibold`,children:v===`zh`?`你好${i.addressAs?`,${i.addressAs}`:``}。我们从哪里开始?`:`Hello${i.addressAs?`, ${i.addressAs}`:``}. Where should we start?`}),(0,X.jsx)(`p`,{className:`max-w-xl text-sm leading-relaxed text-fg-muted`,children:i.opening??(v===`zh`?`想讨论问题、整理思路或推进工作,都可以直接说。`:`Bring a question, an idea, or work to move forward.`)})]}):Ne?(0,X.jsxs)(`div`,{className:`mx-auto max-w-xl px-4 py-10 text-center`,children:[(0,X.jsx)(`h2`,{className:`text-xl font-semibold text-fg`,children:Pe?v===`zh`?`想怎么调整这个任务?`:`What would you like to change?`:v===`zh`?`你想安排什么任务?`:`What would you like to schedule?`}),(0,X.jsx)(`p`,{className:`mt-2 text-sm leading-6 text-fg-muted`,children:Pe?v===`zh`?`直接说要改的内容、时间,或告诉我暂停、恢复。`:`Change what it does or when it runs, or ask to pause or resume.`:v===`zh`?`说说要做的事,时间和细节我们一起确定。`:`Tell us what to do. We’ll work out the timing and details together.`}),a?null:(0,X.jsx)(u,{className:`mt-4 inline-block text-xs text-fg-muted hover:text-fg`,to:`/automations`,children:v===`zh`?`← 返回定时任务`:`← Back to scheduled tasks`})]}):ge?(0,X.jsx)(qk,{agentName:Ft.name?.trim()||fe.displayAgentId,messages:x.agentsSettings,disabled:K.sessionRoutePending||K.showSessionLoading,onPick:e=>{P.current+=1,L({id:P.current,text:e})}}):me?(0,X.jsx)(mw,{sk:x.skills,disabled:K.sessionRoutePending||K.showSessionLoading,onPick:e=>{P.current+=1,L({id:P.current,text:Br(`find-skills`,e)})}}):void 0,compactWelcome:e,onDeleteRound:oe?void 0:q.deleteMessageRound,onRetryUserMessageRound:oe?void 0:q.retryUserMessageRound,deleteRoundDisabled:q.streaming||q.sending,onEditUserMessage:oe?void 0:Bt,editLatestUserOnly:!0,editRequiresTurnId:!0,onSaveAssistantAsNote:Kt,onSaveAssistantToSourceNote:bt?Wt:void 0,onExtractAssistantTask:bt?Yt:void 0,onForkAssistantTurn:!oe&&je?.sessionType===`chat`?Fe:void 0,trailingContent:Le?(0,X.jsxs)(`div`,{className:`mx-auto w-full max-w-2xl rounded-2xl border border-edge-subtle bg-surface-panel px-4 py-3 text-sm`,children:[(0,X.jsx)(`p`,{className:`text-fg-muted`,children:v===`zh`?`这个回答合适吗?点选后可以在输入框修改,再发给我。`:`Did that response work for you? Pick an adjustment, edit it, then send.`}),(0,X.jsxs)(`div`,{className:`mt-3 flex flex-wrap gap-2`,children:[[[v===`zh`?`再短一点`:`Make it shorter`,v===`zh`?`这次回答再短一点。`:`Please make this answer shorter.`],[v===`zh`?`更温和一点`:`A little gentler`,v===`zh`?`这次回答的语气更温和一点。`:`Please make this answer a little gentler.`]].map(([e,t])=>(0,X.jsx)(`button`,{type:`button`,onClick:()=>Re(t),className:`rounded-full border border-edge px-3 py-1.5 text-xs text-fg transition-colors hover:bg-surface-hover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,children:e},e)),(0,X.jsx)(`button`,{type:`button`,onClick:()=>Re(),className:`rounded-full px-3 py-1.5 text-xs text-fg-muted transition-colors hover:bg-surface-hover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,children:v===`zh`?`这样就好`:`Looks good`})]})]}):null},Ce)]})})})}),(0,X.jsx)(`div`,{ref:We,className:J(`chat-composer-dock pointer-events-none absolute inset-x-0 bottom-0 z-10`,r?`[--chat-composer-bottom-radius:1.65rem]`:`[--chat-composer-bottom-radius:1rem]`,_t?`[--chat-composer-bottom-space:max(0.625rem,env(safe-area-inset-bottom))]`:`[--chat-composer-bottom-space:max(0.5rem,env(safe-area-inset-bottom))] sm:[--chat-composer-bottom-space:max(1rem,env(safe-area-inset-bottom))]`),children:(0,X.jsx)(`div`,{className:e&&!r?`px-3`:`px-3 sm:px-5 xl:px-6`,children:(0,X.jsxs)(`div`,{"data-chat-composer-frame":!0,"data-primary-chat-composer":!e||void 0,className:J(`pointer-events-auto relative mx-auto w-full min-w-0 pb-[var(--chat-composer-bottom-space)]`,(!e||r||a)&&`max-w-[calc(var(--max-width-chat-frame)+14px)]`,_t?`pt-2.5`:`pt-2 sm:pt-4`),children:[(0,X.jsx)(NC,{visible:!K.showSessionLoading&&!Ge,onClick:()=>qe(!0),running:q.streaming||q.sending}),(0,X.jsx)(`div`,{className:`absolute bottom-full right-0 z-20 mb-2 flex items-center rounded-full border border-edge-subtle bg-surface-overlay p-1 shadow-elevated backdrop-blur-sm empty:hidden xl:hidden`,children:!e||a?(0,X.jsx)(Fk,{items:le.items,activeMessageIndex:Qe+rt,labels:Ut,openLabel:x.chat.timelineOpen,closeLabel:x.chat.timelineClose,currentLabel:x.chat.timelineCurrent,onSelectMessage:ct}):null}),(0,X.jsx)(Bd,{prompt:de.clarifyPrompt,submitting:de.clarifySubmitting,submitError:de.clarifySubmitError,labels:x.chat,onSubmit:de.submitClarifyAnswer,onAgentDecide:de.letAgentDecideClarification,onCancel:de.cancelClarification}),vt?(0,X.jsx)(DD,{plan:vt.plan,changeSummary:vt.changeSummary,isStreaming:q.streaming,labels:{heading:x.chat.planHeading,stepProgress:x.chat.planStepProgress,completedProgress:x.chat.planCompletedProgress,finished:x.chat.planFinished,ended:x.chat.planEnded,planned:x.chat.planPlanned,filesChangedOne:x.chat.planFilesChanged_one,filesChangedOther:x.chat.planFilesChanged_other}}):null,me&&ce.items.length>0?(0,X.jsx)(`div`,{className:`mb-2 text-right`,children:(0,X.jsx)(u,{to:`/capabilities/skills`,className:`text-xs text-accent-fg hover:underline`,children:x.skills.findBack})}):null,(0,X.jsx)(dw,{}),(0,X.jsx)(AE,{personal:r,nextTurnSuggestionsEnabled:!q.streaming,onPersonalSendDispatched:r?Ze:void 0,placeholder:r?q.streaming||q.sending?v===`zh`?`继续聊,或补充要求…`:`Keep talking or add a detail…`:v===`zh`?`发消息给「${i?.name||`Personal AI`}」…`:`Message ${i?.name||`Personal AI`}…`:ge?x.agentsSettings.setupComposerPlaceholder:me?x.skills.findPlaceholder:void 0,composerContext:!ge&&!e&&!oe&&!ie&&!gt&&ce.items.length===0?{project:St,disabled:jt||zt.busy||ht&&!K.projectPreparation,environmentPicker:K.projectPreparation?(0,X.jsx)(PE,{selection:zt}):void 0,workspacePath:K.effectiveWorkspacePath,canChangeWorkspace:dt,onProjectChange:Zt,onWorkspaceChange:$t}:void 0,contextRefs:Ct,pageContextPreview:kt&&Ot?(0,X.jsx)(jE,{draft:kt,disabled:q.sending,waiting:q.streaming,onRemove:()=>Lo.remove(Ot,kt)}):void 0,setContextRefs:wt,onDraftAttachmentsChange:Et,disabled:s||mt||zt.busy||jt,sendDisabled:s||!K.modelConfigReady||!K.projectPreparation&&ht||!!(K.projectPreparation&&!zt.allowed)||K.modelConfigSaving||zt.busy||jt,sending:q.sending,streaming:q.streaming,conversationId:K.conversationId,prepareContextSession:K.projectPreparation?zt.prepareSession:void 0,welcomeDraftSeed:I,welcomeSuggestion:!me&&_t?Lt:null,onAcceptWelcomeSuggestion:ut,thinkingLevel:K.thinkingLevel,modelSupportsThinking:K.modelSupportsThinking,onThinkingChange:K.onSessionThinkingLevelChange,onSend:zt.send,editingUserTurnId:ie?.turnId,onCancelUserMessageEdit:Vt,onAbort:q.abort,onAddPendingFollowUp:async(e,t,n,r)=>{await ue.addPendingFollowUp(e,t,n,kt?.envelope,r),Ot&&kt&&Lo.remove(Ot,kt)},onSteeringInterrupt:kt?void 0:(e,t,n)=>void q.interruptAndSend(e,t,void 0,n),pendingFollowUps:ue.pendingFollowUps,editingFollowUpId:ue.editingFollowUpId,onBeginEditFollowUp:ue.beginEditFollowUp,onCancelEditFollowUp:ue.cancelEditFollowUp,onCommitEditFollowUp:(e,t,n,r,i)=>void ue.commitEditFollowUp(e,t,n,r,i),onPendingFollowUpRemove:ue.removePendingFollowUp,onPendingFollowUpMove:ue.movePendingFollowUp,onPendingFollowUpReorder:ue.reorderPendingFollowUp,onPendingFollowUpSteer:e=>void ue.steerPendingFollowUp(e),steeringFollowUpId:ue.steeringFollowUpId,sessionModel:K.sessionModel,showModelSelector:!r,onModelChange:K.onSessionModelChange,modelDisabled:ht&&!K.projectPreparation||zt.busy||K.modelConfigSaving,onChatAgentChange:!r&&!ge&&!oe&&fe.showChatAgentSelector?fe.onChatAgentChange:void 0,currentAgentId:fe.displayAgentId,voiceAgentName:r&&i?i.name:Ft.name,voiceTaskId:oe??void 0,voiceMode:r?`assistant`:void 0,prepareVoiceSession:K.projectPreparation?()=>K.projectPreparation.create(zt.mode):void 0})]})})})]})]}),(!e||a)&&Ce&&window.electronAPI?.terminal?(0,X.jsx)(Z.Suspense,{fallback:null,children:(0,X.jsx)(Yk,{conversationId:Ce},Ce)}):null,(0,X.jsx)(D,{open:H!==null,onOpenChange:e=>{!e&&!U&&Ht()},children:(0,X.jsxs)(w,{children:[(0,X.jsx)(b,{className:`xopc-dialog-overlay fixed inset-0 z-[80] bg-scrim backdrop-blur-[1px]`}),(0,X.jsxs)(T,{className:`xopc-dialog-content fixed left-1/2 top-1/2 z-[90] flex h-[min(82vh,42rem)] w-[min(100%-2rem,44rem)] -translate-x-1/2 -translate-y-1/2 flex-col overflow-hidden rounded-xl border border-edge bg-surface-overlay shadow-popover outline-none`,children:[(0,X.jsxs)(`div`,{className:`shrink-0 border-b border-edge-subtle px-5 py-4`,children:[(0,X.jsx)(E,{className:`text-base font-semibold text-fg`,children:x.chat.sourceNoteSaveDialogTitle}),(0,X.jsx)(S,{className:`mt-1 text-sm text-fg-muted`,children:x.chat.sourceNoteSaveDialogDescription.replace(`{{title}}`,Nt)})]}),(0,X.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col gap-4 overflow-y-auto px-5 py-4`,children:[ne?(0,X.jsxs)(`p`,{className:`rounded-lg border border-danger/25 bg-danger-soft px-3 py-2 text-sm text-danger`,role:`alert`,children:[x.chat.sourceNoteSaveFailed,`: `,ne]}):null,(0,X.jsxs)(`label`,{className:`flex flex-col gap-1.5 text-sm font-medium text-fg`,children:[(0,X.jsx)(`span`,{children:x.chat.sourceNoteSaveDialogHeadingLabel}),(0,X.jsx)(`input`,{value:H?.heading??``,onChange:e=>te(t=>t&&{...t,heading:e.target.value}),className:`h-10 rounded-lg border border-edge bg-surface-base px-3 text-sm font-normal text-fg outline-none transition-colors focus:border-accent focus:ring-2 focus:ring-accent/20`,disabled:U})]}),(0,X.jsxs)(`label`,{className:`flex min-h-0 flex-1 flex-col gap-1.5 text-sm font-medium text-fg`,children:[(0,X.jsx)(`span`,{children:x.chat.sourceNoteSaveDialogContentLabel}),(0,X.jsx)(`textarea`,{value:H?.content??``,onChange:e=>te(t=>t&&{...t,content:e.target.value}),className:`min-h-[18rem] flex-1 resize-none rounded-lg border border-edge bg-surface-base px-3 py-2 font-mono text-xs leading-relaxed text-fg outline-none transition-colors focus:border-accent focus:ring-2 focus:ring-accent/20`,disabled:U})]})]}),(0,X.jsxs)(`div`,{className:`flex shrink-0 justify-end gap-2 border-t border-edge-subtle px-5 py-4`,children:[(0,X.jsx)(ai,{type:`button`,variant:`secondary`,onClick:Ht,disabled:U,children:x.chat.sourceNoteSaveDialogCancel}),(0,X.jsx)(ai,{type:`button`,variant:`primary`,onClick:()=>void qt(),disabled:U||!H?.content.trim(),children:U?x.chat.sourceNoteSaveDialogSaving:x.chat.sourceNoteSaveDialogConfirm})]})]})]})})]})}):(0,X.jsx)(`div`,{className:`mx-auto w-full max-w-[var(--max-width-chat-frame)] px-3 py-16 text-center text-sm leading-relaxed text-fg-muted sm:px-5`,children:x.chat.needToken})}export{Fs as $,gf as A,Hd as B,Tf as C,Vo as Ct,pf as D,hf as E,tf as F,Ws as G,Ks as H,Zd as I,Os as J,zs as K,ef as L,lf as M,nf as N,mf as O,rf as P,Hs as Q,Gd as R,yp as S,Ho as St,vf as T,Gs as U,Bd as V,Us as W,Bs as X,ks as Y,Vs as Z,Pp as _,qo as _t,iw as a,as as at,Ep as b,Wo as bt,VC as c,ns as ct,UC as d,$o as dt,Es as et,zC as f,Qo as ft,Np as g,Jo as gt,Mp as h,Yo as ht,fw as i,os as it,df as j,ff as k,GC as l,ts as lt,kC as m,Xo as mt,Jk as n,Ss as nt,ew as o,is as ot,NC as p,Zo as pt,Ds as q,uw as r,ss as rt,$C as s,rs as st,Xk as t,bs as tt,WC as u,es as ut,Ap as v,Ko as vt,Of as w,Bo as wt,Tp as x,Uo as xt,Op as y,Go as yt,Kd as z};
|