openpond 0.2.53 → 0.2.55
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/app-server.d.ts +1514 -100
- package/dist/app-server.js +1 -1
- package/dist/chunks/actions-command-WTFZA7LF.js +2 -0
- package/dist/chunks/{app-layer-I7MZYVLL.js → app-layer-Y2UERCPY.js} +1 -1
- package/dist/chunks/app-server-runtime-2RM3N4I6.js +2 -0
- package/dist/chunks/apps-KDNWYO3G.js +2 -0
- package/dist/chunks/chunk-2DFR7PJ4.js +2460 -0
- package/dist/chunks/chunk-4CRM2ADK.js +2 -0
- package/dist/chunks/{chunk-7ZG3IT7C.js → chunk-4WEUCGJ3.js} +6 -6
- package/dist/chunks/chunk-55G6B54U.js +6 -0
- package/dist/chunks/chunk-73G5UYBB.js +12 -0
- package/dist/chunks/{chunk-DALJMSJG.js → chunk-ARQEJOEK.js} +24 -24
- package/dist/chunks/chunk-B7QDZPNX.js +2 -0
- package/dist/chunks/chunk-BFKYRQMA.js +2 -0
- package/dist/chunks/{chunk-AH22RHPS.js → chunk-BQAF5P7K.js} +2 -2
- package/dist/chunks/{chunk-YJ4PNAST.js → chunk-BTI4N7YO.js} +1 -1
- package/dist/chunks/chunk-C6D4WAYN.js +6 -0
- package/dist/chunks/chunk-CGBI2VYJ.js +2 -0
- package/dist/chunks/chunk-DLVPSCTB.js +2 -0
- package/dist/chunks/{chunk-UJ5EFSEC.js → chunk-G6JMQGX7.js} +1 -1
- package/dist/chunks/chunk-GGIG3XU7.js +3 -0
- package/dist/chunks/chunk-IODUCRBA.js +58 -0
- package/dist/chunks/chunk-JIMU3KDA.js +24 -0
- package/dist/chunks/chunk-JUJSA7KI.js +22 -0
- package/dist/chunks/chunk-K5SBVO3B.js +195 -0
- package/dist/chunks/chunk-KD3QVRIJ.js +21 -0
- package/dist/chunks/chunk-KGNCKIFP.js +3 -0
- package/dist/chunks/chunk-L4235TRQ.js +140 -0
- package/dist/chunks/{chunk-N5QNXMIS.js → chunk-MH3LHSGX.js} +1 -1
- package/dist/chunks/chunk-MVF3F5QS.js +2 -0
- package/dist/chunks/{chunk-N3DEA6PG.js → chunk-NNIRIUSY.js} +1 -1
- package/dist/chunks/{chunk-WITSXYEW.js → chunk-NOTXPD2T.js} +1 -1
- package/dist/chunks/{chunk-T5LE6R5S.js → chunk-OSIO7PLX.js} +1 -1
- package/dist/chunks/chunk-OULAKUIN.js +2 -0
- package/dist/chunks/chunk-OWNLDB2O.js +2 -0
- package/dist/chunks/{chunk-NAZ26IZL.js → chunk-Q7AXHFZV.js} +1 -1
- package/dist/chunks/chunk-QDHMP5FS.js +2 -0
- package/dist/chunks/chunk-QKD5OMDI.js +2 -0
- package/dist/chunks/{chunk-YD55Z5H3.js → chunk-QRAKXZOC.js} +10 -10
- package/dist/chunks/{chunk-JDLAHVAJ.js → chunk-R27YGT77.js} +1 -1
- package/dist/chunks/chunk-R2BSIRYL.js +3 -0
- package/dist/chunks/chunk-SHQOIROR.js +42 -0
- package/dist/chunks/chunk-STDMBJOQ.js +9 -0
- package/dist/chunks/chunk-T4QGDQHP.js +4 -0
- package/dist/chunks/{chunk-R3XFY7VL.js → chunk-TERVLCRG.js} +1 -1
- package/dist/chunks/{chunk-PA7XP42P.js → chunk-U2YMBCX7.js} +1 -1
- package/dist/chunks/{chunk-GXSTZBM6.js → chunk-UA5DA5I2.js} +1 -1
- package/dist/chunks/chunk-VJEZPDBS.js +5 -0
- package/dist/chunks/chunk-WDFLCNRC.js +8 -0
- package/dist/chunks/chunk-WZYRAR7X.js +16 -0
- package/dist/chunks/chunk-YDT7L3VZ.js +24 -0
- package/dist/chunks/chunk-YR5ID2SS.js +2 -0
- package/dist/chunks/chunk-YUPBAWBJ.js +554 -0
- package/dist/chunks/cli-465VC2WP.js +2 -0
- package/dist/chunks/{configuration-command-MATM4XR5.js → configuration-command-LAAP2EXT.js} +1 -1
- package/dist/chunks/connected-evidence-XM626247.js +2 -0
- package/dist/chunks/{continual-PKK2BOTB.js → continual-TTGJ6YTR.js} +1 -1
- package/dist/chunks/core-commands-W7EK552V.js +2 -0
- package/dist/chunks/datasets-QJWYTTQL.js +2 -0
- package/dist/chunks/desktop-test-3B2D34NF.js +3 -0
- package/dist/chunks/dist-FAJX2UBW.js +2 -0
- package/dist/chunks/{dist-4HV2W6V4.js → dist-HUAE2KFZ.js} +1 -1
- package/dist/chunks/{chunk-6VF3Q6QJ.js → dist-SKYG5LZO.js} +2 -4
- package/dist/chunks/evaluation-coordination-2MONR4AX.js +2 -0
- package/dist/chunks/experiment-improvements-WVQ5FK46.js +2 -0
- package/dist/chunks/experiments-S5UQ32QB.js +2 -0
- package/dist/chunks/extension-DWMY6D2R.js +4 -0
- package/dist/chunks/{help-WLKSACLZ.js → help-A72QDRNG.js} +1 -1
- package/dist/chunks/hosted-experiment-improvement-2OWOQLHC.js +3 -0
- package/dist/chunks/hosted-harness-runtime-TGFMAV7W.js +2 -0
- package/dist/chunks/hosted-profile-candidate-WQSI6HZO.js +3 -0
- package/dist/chunks/hosted-profile-compiler-Z2A4TEA6.js +2 -0
- package/dist/chunks/hosted-profile-evaluation-control-FKGARUEE.js +2 -0
- package/dist/chunks/hosted-profile-evaluation-inspection-QOY2JKV4.js +3 -0
- package/dist/chunks/hosted-profile-evaluation-preparation-WVP6CALP.js +3 -0
- package/dist/chunks/human-review-TGHQKXFZ.js +2 -0
- package/dist/chunks/{import-V3HUGRHR.js → import-4UE5XNSG.js} +1 -1
- package/dist/chunks/javascript-isolate-process-source-ZPQKKLR4.js +2 -0
- package/dist/chunks/javascript-verifier-worker-source-F3LSGPOY.js +2 -0
- package/dist/chunks/learning-R2XBMMEM.js +2 -0
- package/dist/chunks/opchat-WULL6CUP.js +3 -0
- package/dist/chunks/organizations-I37HISVX.js +2 -0
- package/dist/chunks/profile-NOZ6TVXL.js +3 -0
- package/dist/chunks/project-agent-T6XKC54C.js +2 -0
- package/dist/chunks/sandbox-command-STB47FRY.js +2 -0
- package/dist/chunks/{sandbox-template-BBGGPJMI.js → sandbox-template-LKGBDVJ4.js} +1 -1
- package/dist/chunks/sql-execution-process-source-B4HQM6ZV.js +2 -0
- package/dist/chunks/src-T3KWWCAH.js +322 -0
- package/dist/chunks/{src-CR6UZYTX.js → src-ZWJ5IO7A.js} +1 -1
- package/dist/chunks/{taskset-LUG3ZU6J.js → taskset-RNYDR4GS.js} +1 -1
- package/dist/chunks/{teams-bot-7I4BAUVO.js → teams-bot-H7XT23XB.js} +1 -1
- package/dist/chunks/{training-XHE6FVII.js → training-M6FAPRSJ.js} +1 -1
- package/dist/cli.js +1 -1
- package/dist/index.js +1 -1
- package/dist/web/assets/App-CLFfy_Av.js +154 -0
- package/dist/web/assets/App-CTlAPuCY.css +1 -0
- package/dist/web/assets/{AppDialog-BdusXgU0.js → AppDialog-CPHTPqrx.js} +1 -1
- package/dist/web/assets/{AppTerminalPanel-C4uRpnBz.js → AppTerminalPanel-BVj5Tj93.js} +2 -2
- package/dist/web/assets/AppsView-O69zEBY3.js +1 -0
- package/dist/web/assets/{BrowserSidebar-Bl7V6YO2.js → BrowserSidebar-Pr_Kpe8p.js} +1 -1
- package/dist/web/assets/{CartesianChart-BstFbsdn.js → CartesianChart-JPqo6YOf.js} +1 -1
- package/dist/web/assets/{CollaborationTabs-B8YAf0c1.js → CollaborationTabs-CAJcQFn2.js} +1 -1
- package/dist/web/assets/{CommandMenu-DZct7zUJ.js → CommandMenu-B-w53n9A.js} +1 -1
- package/dist/web/assets/{CommunityView-CR0-W-uG.js → CommunityView-DbZKK8_P.js} +1 -1
- package/dist/web/assets/{ComposerCreateImproveStrip-DR-Qo7b4.js → ComposerCreateImproveStrip-3_083PF4.js} +1 -1
- package/dist/web/assets/{GetStartedView-xqQoMMei.js → GetStartedView-D7JGm_6c.js} +1 -1
- package/dist/web/assets/HostedModelLearningReview-DwgMfZ7_.js +1 -0
- package/dist/web/assets/{HostedModelLearningSettings-De3i9wF4.js → HostedModelLearningSettings-JRfQadRl.js} +1 -1
- package/dist/web/assets/{LabModelVersionDetailPage-DAY1MmqP.js → LabModelVersionDetailPage-BUYflJY_.js} +1 -1
- package/dist/web/assets/{LabSkillSidebar-DLnIgnry.js → LabSkillSidebar-BBiqk7Rf.js} +1 -1
- package/dist/web/assets/LabsRoute-Ci6vUnSd.js +99 -0
- package/dist/web/assets/MainChatThread-BQK3oI2N.js +2 -0
- package/dist/web/assets/MainPane-D3ojiN-p.js +18 -0
- package/dist/web/assets/{MarkdownText-gJMuefaJ.js → MarkdownText-DOdOVFXL.js} +25 -25
- package/dist/web/assets/{NativeSkillSidebar-Dlxb8iOC.js → NativeSkillSidebar-CRI_ri8z.js} +1 -1
- package/dist/web/assets/{NewExperienceSwitcher-DM-cqJ-K.js → NewExperienceSwitcher-DhYtfE68.js} +1 -1
- package/dist/web/assets/{NewProjectDialog-Cu1q75gq.js → NewProjectDialog-D8sy1gOz.js} +1 -1
- package/dist/web/assets/{OutputsPage-DiXMkasl.js → OutputsPage-CbWgrhXA.js} +1 -1
- package/dist/web/assets/{ProjectsPage-DqiBHiCB.js → ProjectsPage-DLB67lyA.js} +1 -1
- package/dist/web/assets/RightChatPanelStack-ozSKnDyX.js +1 -0
- package/dist/web/assets/{RightSidebarHomePanel-CeSFJM5s.js → RightSidebarHomePanel-CKs3OwhD.js} +1 -1
- package/dist/web/assets/ScheduledWorkPage-Cafv_QnR.js +1 -0
- package/dist/web/assets/SettingsView-T1vYDPjh.js +5 -0
- package/dist/web/assets/{TeamChatView-DM0adMtj.js → TeamChatView-vIrmXOY_.js} +2 -2
- package/dist/web/assets/{TerminalOverlay-CFlH51DD.js → TerminalOverlay-CAmF__Dq.js} +1 -1
- package/dist/web/assets/{TrainingCreationPanel-CgIBVGha.js → TrainingCreationPanel-D75K0yk5.js} +1 -1
- package/dist/web/assets/{TrainingDraftPanel-Bbo3RRie.js → TrainingDraftPanel-D7XZePAk.js} +1 -1
- package/dist/web/assets/{UsageSettingsSection-CSRjJUSa.js → UsageSettingsSection-CYTmp7PG.js} +1 -1
- package/dist/web/assets/WorkSidebarPanel-CODMjVHY.js +1 -0
- package/dist/web/assets/WorkspaceDiffPanel-DQGoIjH9.js +14 -0
- package/dist/web/assets/WorkspaceEnvironmentMenu-c1pHDskn.js +63 -0
- package/dist/web/assets/{WorkspaceGitDialogs-Dgmg-6XG.js → WorkspaceGitDialogs-DrVtapQQ.js} +1 -1
- package/dist/web/assets/{WorkspaceMonacoEditor-BR4qxMgU.js → WorkspaceMonacoEditor-BCKzvSj2.js} +3 -3
- package/dist/web/assets/arrow-up-right-CP4hZdrJ.js +1 -0
- package/dist/web/assets/chunk-NOJECMB7-Bhcms-w5.js +1 -0
- package/dist/web/assets/{clipboard-BZzZ82Bk.js → clipboard-BgrXorn-.js} +1 -1
- package/dist/web/assets/{cloud-upload-CJPYPVl8.js → cloud-upload-B_zYztb6.js} +1 -1
- package/dist/web/assets/{cssMode-WC4Rg1l-.js → cssMode-DanjGgA8.js} +1 -1
- package/dist/web/assets/{folder-open-sLZJxLQy.js → folder-open-CdVKbtGq.js} +1 -1
- package/dist/web/assets/folder-plus-Cc5KElB6.js +1 -0
- package/dist/web/assets/{git-commit-horizontal-Cotm7KEC.js → git-commit-horizontal-CjGIIgRi.js} +1 -1
- package/dist/web/assets/{htmlMode-C6oZGeaB.js → htmlMode-DRGDF_UL.js} +1 -1
- package/dist/web/assets/index-B5re-RJy.css +1 -0
- package/dist/web/assets/{index-BxWTVKtn.js → index-BE-wXZ5R.js} +2 -2
- package/dist/web/assets/info-BLj0RvhA.js +1 -0
- package/dist/web/assets/{jsonMode-BET4LQIn.js → jsonMode-CCu0j2GD.js} +1 -1
- package/dist/web/assets/{lspLanguageFeatures-BPxA_-Kg.js → lspLanguageFeatures-s_Lhm7P6.js} +1 -1
- package/dist/web/assets/minimize-2-Cyg_zD9z.js +1 -0
- package/dist/web/assets/{monaco.contribution-DXzyQfVi.js → monaco.contribution-CAzXvYkn.js} +2 -2
- package/dist/web/assets/{monaco.contribution-DFzEyaHi.js → monaco.contribution-CY7mRgOB.js} +2 -2
- package/dist/web/assets/{monaco.contribution-7AUuf2NS.js → monaco.contribution-aUeLcBEg.js} +2 -2
- package/dist/web/assets/{monaco.contribution-BH6kkO4b.js → monaco.contribution-mUPNK9ra.js} +2 -2
- package/dist/web/assets/monitor-DZvOs_wC.js +1 -0
- package/dist/web/assets/play-BJPzemuY.js +1 -0
- package/dist/web/assets/{python-PzBkTjWx.js → python-B_qnnVaG.js} +1 -1
- package/dist/web/assets/{save-DpezrtH2.js → save-BDy9tA3E.js} +1 -1
- package/dist/web/assets/square-Cb2c5td4.js +1 -0
- package/dist/web/assets/{toggleHighContrast-Cto-fOXm.js → toggleHighContrast-MhO1JLyR.js} +1 -1
- package/dist/web/assets/{tsMode-BYA4LNc6.js → tsMode-DfBXJb9V.js} +1 -1
- package/dist/web/assets/{upload-C5YFNgtS.js → upload-D56kThRh.js} +1 -1
- package/dist/web/assets/{useLocalAgentSchedules-CnyTsqlf.js → useLocalAgentSchedules-DMnGfswi.js} +1 -1
- package/dist/web/assets/useProviderSettings-Bv5B9eNk.js +5 -0
- package/dist/web/assets/{useSessionTurnCache-DICuJSJW.js → useSessionTurnCache-ClAY8gze.js} +1 -1
- package/dist/web/assets/{wifi-off-nzHj7JXp.js → wifi-off-C9lWJmVm.js} +1 -1
- package/dist/web/assets/{workers-Dboaw6f_.js → workers-BYzrH8by.js} +1 -1
- package/dist/web/assets/{yaml-uuY5JmO8.js → yaml-D3T8UkT3.js} +1 -1
- package/dist/web/index.html +2 -2
- package/package.json +3 -3
- package/dist/chunks/actions-command-DSO6YOEE.js +0 -2
- package/dist/chunks/app-server-runtime-KZP2LB5X.js +0 -2
- package/dist/chunks/apps-TM74FFQB.js +0 -2
- package/dist/chunks/chunk-2JO2KWT3.js +0 -5
- package/dist/chunks/chunk-2SPZYBDN.js +0 -16
- package/dist/chunks/chunk-3LX6RU3C.js +0 -3
- package/dist/chunks/chunk-4SHKI3BH.js +0 -2
- package/dist/chunks/chunk-4TZHH5FC.js +0 -2409
- package/dist/chunks/chunk-5TNDPNS3.js +0 -2
- package/dist/chunks/chunk-6JAN4RMN.js +0 -42
- package/dist/chunks/chunk-7QEE4PBI.js +0 -8
- package/dist/chunks/chunk-AFUDIT36.js +0 -2
- package/dist/chunks/chunk-BX4J2VDU.js +0 -2
- package/dist/chunks/chunk-EMKZVP7Z.js +0 -2
- package/dist/chunks/chunk-FPUUZQUP.js +0 -6
- package/dist/chunks/chunk-GCOUYYHG.js +0 -5
- package/dist/chunks/chunk-GS2NKNKG.js +0 -4
- package/dist/chunks/chunk-H2VT22JK.js +0 -2
- package/dist/chunks/chunk-HA7EFTPF.js +0 -23
- package/dist/chunks/chunk-IKWDL3RB.js +0 -17
- package/dist/chunks/chunk-L3KS6MOV.js +0 -2
- package/dist/chunks/chunk-NHFGEVVH.js +0 -518
- package/dist/chunks/chunk-NNF6KCHD.js +0 -3
- package/dist/chunks/chunk-PJM2G7SG.js +0 -21
- package/dist/chunks/chunk-PQHTZ5CP.js +0 -2
- package/dist/chunks/chunk-PYABBF53.js +0 -53
- package/dist/chunks/chunk-QRWPEW3Z.js +0 -24
- package/dist/chunks/chunk-QXVIIM4T.js +0 -2
- package/dist/chunks/chunk-SDEDAHV6.js +0 -160
- package/dist/chunks/chunk-TGIB24K4.js +0 -22
- package/dist/chunks/chunk-USKE34VR.js +0 -9
- package/dist/chunks/chunk-WV2APYWG.js +0 -2
- package/dist/chunks/chunk-XGE2XI6M.js +0 -191
- package/dist/chunks/chunk-XM26DGML.js +0 -3
- package/dist/chunks/chunk-YIB3J4RC.js +0 -2
- package/dist/chunks/chunk-YL6VFJ4P.js +0 -2
- package/dist/chunks/chunk-Z3D4C7BG.js +0 -12
- package/dist/chunks/cli-JVB345H2.js +0 -2
- package/dist/chunks/connected-evidence-YDPGNHLP.js +0 -2
- package/dist/chunks/core-commands-MTV4EKXY.js +0 -2
- package/dist/chunks/datasets-CP3IT47T.js +0 -2
- package/dist/chunks/desktop-test-IAZC5MAH.js +0 -3
- package/dist/chunks/dist-SAABJU5F.js +0 -2
- package/dist/chunks/evaluation-coordination-EPHLZXYM.js +0 -2
- package/dist/chunks/experiment-improvements-6JTOPA74.js +0 -2
- package/dist/chunks/experiments-XHPFGECH.js +0 -2
- package/dist/chunks/extension-GX7DLW2X.js +0 -4
- package/dist/chunks/hosted-experiment-improvement-HAB3UE6A.js +0 -3
- package/dist/chunks/hosted-harness-runtime-YM23QNDK.js +0 -2
- package/dist/chunks/hosted-profile-candidate-EOBGKQAS.js +0 -3
- package/dist/chunks/hosted-profile-compiler-OZAOZ2ES.js +0 -2
- package/dist/chunks/hosted-profile-evaluation-control-RJ6XJZCS.js +0 -2
- package/dist/chunks/hosted-profile-evaluation-inspection-SJIDXPHI.js +0 -3
- package/dist/chunks/hosted-profile-evaluation-preparation-26EI5LJR.js +0 -3
- package/dist/chunks/human-review-AAVMISBF.js +0 -2
- package/dist/chunks/learning-FNBEIAY6.js +0 -2
- package/dist/chunks/opchat-QK43DXTY.js +0 -3
- package/dist/chunks/organizations-SRPAWKC7.js +0 -2
- package/dist/chunks/profile-C6CQNVYE.js +0 -3
- package/dist/chunks/project-agent-GZV5HNYI.js +0 -2
- package/dist/chunks/sandbox-command-4TJXQTKT.js +0 -2
- package/dist/chunks/src-P3VYLFLI.js +0 -329
- package/dist/web/assets/App-CO2F717V.css +0 -1
- package/dist/web/assets/App-CuhaCsfb.js +0 -235
- package/dist/web/assets/AppsView-BS1czXUP.js +0 -1
- package/dist/web/assets/HostedModelLearningReview-CHxxf_Lu.js +0 -1
- package/dist/web/assets/LabsRoute-CXJRJMhr.js +0 -99
- package/dist/web/assets/MainChatThread-BwAla81W.js +0 -2
- package/dist/web/assets/MainPane-CakOBCHw.js +0 -19
- package/dist/web/assets/RightChatPanelStack-VaOOmxwd.js +0 -1
- package/dist/web/assets/ScheduledWorkPage-D1jRQxFs.js +0 -1
- package/dist/web/assets/SettingsView-RA9OXgcu.js +0 -5
- package/dist/web/assets/WorkSidebarPanel-DwlEMEoG.js +0 -1
- package/dist/web/assets/WorkspaceDiffPanel-pGVezNMw.js +0 -14
- package/dist/web/assets/WorkspaceEnvironmentMenu-Byjngd9V.js +0 -32
- package/dist/web/assets/arrow-up-right-H0pvnH2s.js +0 -1
- package/dist/web/assets/chunk-UHVJOMWN-BqXRe639.js +0 -1
- package/dist/web/assets/folder-plus-C84wrpt_.js +0 -1
- package/dist/web/assets/index-dSmk3FLJ.css +0 -1
- package/dist/web/assets/info-Dc81lEfw.js +0 -1
- package/dist/web/assets/minimize-2-Bs7MVN3C.js +0 -1
- package/dist/web/assets/monitor-DXL019Wf.js +0 -1
- package/dist/web/assets/play-CXkxUZeU.js +0 -1
- package/dist/web/assets/square-oy7f5Ce6.js +0 -1
- package/dist/web/assets/useProviderSettings-B_KeQjE5.js +0 -5
- /package/dist/chunks/{chunk-OGPHXXCD.js → chunk-BT5YNE5U.js} +0 -0
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/ComposerCreateImproveStrip-3_083PF4.js","assets/index-BE-wXZ5R.js","assets/index-B5re-RJy.css","assets/App-CLFfy_Av.js","assets/App-CTlAPuCY.css","assets/MarkdownText-DOdOVFXL.js","assets/play-BJPzemuY.js","assets/WorkspaceDiffPanel-DQGoIjH9.js","assets/training-model-data-CKOkpBBL.js","assets/folder-open-CdVKbtGq.js","assets/info-BLj0RvhA.js","assets/minimize-2-Cyg_zD9z.js","assets/save-BDy9tA3E.js","assets/clipboard-BgrXorn-.js","assets/AppTerminalPanel-BVj5Tj93.js","assets/RightSidebarHomePanel-CKs3OwhD.js","assets/WorkSidebarPanel-CODMjVHY.js","assets/cloud-upload-B_zYztb6.js","assets/arrow-up-right-CP4hZdrJ.js","assets/square-Cb2c5td4.js","assets/WorkSidebarPanel-Bky_Rqcx.css","assets/NewExperienceSwitcher-DhYtfE68.js","assets/CollaborationTabs-CAJcQFn2.js","assets/CollaborationTabs-BfVlyLmR.css","assets/AppsView-O69zEBY3.js","assets/useProviderSettings-Bv5B9eNk.js","assets/useProviderSettings-Bw-csWbH.css","assets/AppsView-BonAGiS8.css","assets/GetStartedView-D7JGm_6c.js","assets/AppDialog-CPHTPqrx.js","assets/GetStartedView-yVmnGZPw.css","assets/LabsRoute-Ci6vUnSd.js","assets/chunk-NOJECMB7-Bhcms-w5.js","assets/LabsRoute-ACN76d2j.css","assets/training-eg6uFi3M.css","assets/ScheduledWorkPage-Cafv_QnR.js","assets/useLocalAgentSchedules-DMnGfswi.js","assets/OutputsPage-CbWgrhXA.js","assets/ProjectsPage-DLB67lyA.js","assets/ProjectsPage-kun3Ron2.css","assets/LabSkillSidebar-BBiqk7Rf.js","assets/LabSkillSidebar-CVxtS9pd.css","assets/BrowserSidebar-Pr_Kpe8p.js","assets/BrowserSidebar-lNqqj4Ip.css","assets/RightChatPanelStack-ozSKnDyX.js","assets/useSessionTurnCache-ClAY8gze.js","assets/NativeSkillSidebar-CRI_ri8z.js","assets/NativeSkillSidebar-T8KXjnUH.css","assets/TeamChatView-vIrmXOY_.js","assets/TeamChatView-dL6B0qib.css","assets/git-dialogs-C-F47S10.css","assets/CommunityView-DbZKK8_P.js","assets/wifi-off-C9lWJmVm.js","assets/CommunityView-CnZqWEjK.css","assets/TrainingDraftPanel-D7XZePAk.js","assets/MainChatThread-BQK3oI2N.js","assets/TrainingCreationPanel-D75K0yk5.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{r as c,j as n,_ as Ee}from"./index-BE-wXZ5R.js";import{T as Xo,W as dr,P as Jo,F as Yo,C as Zo,A as el,r as ha,i as na,h as tl,n as ki,a as wi,b as Si,c as Ci,d as nl,e as sl,M as Ni,I as Mi,u as Ri,f as rl,g as al,j as il}from"./MarkdownText-DOdOVFXL.js";import{o as fr,P as ol,b as ar,s as tt,_ as ll,n as Ei,a as cl,c as ul,u as dl,d as Ra,e as qe,f as Ea,g as fl,h as hl,i as ml,j as pl,k as ir,A as Ai,m as ma,l as Ii,C as zt,p as vr,q as hr,r as Gn,t as Ot,v as sa,F as ra,w as gl,x as xl,y as aa,z as bl,O as vl,B as pa,D as ys,E as yl,G as bt,H as ga,I as jl,J as kl,K as wl,L as Sl,M as Ie,N as ia,S as Ti,Q as Cl,R as Ue,X as Ms,T as $i,U as Nl,V as Aa,W as Ia,Y as xa,Z as Ml,$ as Rl,a0 as El,a1 as Gt,a2 as ba,a3 as Wn,a4 as Ta,a5 as Pi,a6 as Al,a7 as Il,a8 as Tl,a9 as $l,aa as Pl,ab as _l,ac as Ll,ad as Ol,ae as zl,af as Fl,ag as _i,ah as Dl,ai as Bl,aj as Ul,ak as ql,al as Hl,am as Vl,an as Wl,ao as Gl,ap as Kt,aq as oa,ar as Kl,as as Ql,at as or,au as Xl,av as Li,aw as Jl,ax as Yl,ay as Zl,az as Oi,aA as ec,aB as tc,aC as nc,aD as sc,aE as rc,aF as ac,aG as zi,aH as ic,aI as oc,aJ as $a,aK as lc,aL as cc,aM as uc,aN as Pa,aO as dc,aP as fc,aQ as hc,aR as mc,aS as pc,aT as gc,aU as xc,aV as bc,aW as vc,aX as yc,aY as jc,aZ as kc,a_ as wc,a$ as Sc,b0 as Cc,b1 as Nc}from"./App-CLFfy_Av.js";import{C as Mc}from"./cloud-upload-B_zYztb6.js";import{A as yr}from"./arrow-up-right-CP4hZdrJ.js";import{S as Fi}from"./square-Cb2c5td4.js";import{F as Di}from"./folder-open-CdVKbtGq.js";import{P as Rc}from"./play-BJPzemuY.js";function Bi(e){return e?(e.match(/\r\n|\r|\n/g)?.length??0)+(/(?:\r\n|\r|\n)$/.test(e)?0:1):0}const Gr=fr({id:tt().min(1),revision:Ei().int().positive(),scope:ol,title:tt().min(1),state:ll(["waiting","ready","dispatching","admitted","completed","failed","cancelled","blocked","attention"]),reason:tt().nullable(),cancellationRequested:ar(),waitingForDesktop:ar(),prerequisite:fr({sessionId:tt().min(1).nullable(),title:tt().min(1),turnId:tt().nullable()}).strict(),successor:fr({operationId:tt().min(1),sessionId:tt().nullable(),providerId:tt().min(1),modelId:tt().nullable(),workspaceLabel:tt().min(1)}).strict(),successCriteria:tt().min(1),canEdit:ar(),canCancel:ar()}).strict(),_a=fr({handoffId:tt().min(1),revision:Ei().int().positive(),successor:dl([Ra.options[0],Ra.options[1]]),successCriteria:tt().trim().min(1).max(4e3),targets:ul.array().max(100),nextCursor:cl.nullable()}).strict();const Ec=[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]],Ac=qe("arrow-down",Ec);const Ic=[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]],Tc=qe("arrow-up",Ic);const $c=[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M16 8v5a3 3 0 0 0 6 0v-1a10 10 0 1 0-4 8",key:"7n84p3"}]],La=qe("at-sign",$c);const Pc=[["path",{d:"M3.85 8.62a4 4 0 0 1 4.78-4.77 4 4 0 0 1 6.74 0 4 4 0 0 1 4.78 4.78 4 4 0 0 1 0 6.74 4 4 0 0 1-4.77 4.78 4 4 0 0 1-6.75 0 4 4 0 0 1-4.78-4.77 4 4 0 0 1 0-6.76Z",key:"3c2336"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]],_c=qe("badge-check",Pc);const Lc=[["path",{d:"M4.929 4.929 19.07 19.071",key:"196cmz"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],Oc=qe("ban",Lc);const zc=[["path",{d:"M10.1 2.182a10 10 0 0 1 3.8 0",key:"5ilxe3"}],["path",{d:"M13.9 21.818a10 10 0 0 1-3.8 0",key:"11zvb9"}],["path",{d:"M17.609 3.721a10 10 0 0 1 2.69 2.7",key:"1iw5b2"}],["path",{d:"M2.182 13.9a10 10 0 0 1 0-3.8",key:"c0bmvh"}],["path",{d:"M20.279 17.609a10 10 0 0 1-2.7 2.69",key:"1ruxm7"}],["path",{d:"M21.818 10.1a10 10 0 0 1 0 3.8",key:"qkgqxc"}],["path",{d:"M3.721 6.391a10 10 0 0 1 2.7-2.69",key:"1mcia2"}],["path",{d:"M6.391 20.279a10 10 0 0 1-2.69-2.7",key:"1fvljs"}]],Fc=qe("circle-dashed",zc);const Dc=[["path",{d:"M12 13v8l-4-4",key:"1f5nwf"}],["path",{d:"m12 21 4-4",key:"1lfcce"}],["path",{d:"M4.393 15.269A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.436 8.284",key:"ui1hmy"}]],Bc=qe("cloud-download",Dc);const Uc=[["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"}]],qc=qe("file-headphone",Uc);const Hc=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M8 13h2",key:"yr2amv"}],["path",{d:"M14 13h2",key:"un5t4a"}],["path",{d:"M8 17h2",key:"2yhykz"}],["path",{d:"M14 17h2",key:"10kma7"}]],Vc=qe("file-spreadsheet",Hc);const Wc=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M15.033 13.44a.647.647 0 0 1 0 1.12l-4.065 2.352a.645.645 0 0 1-.968-.56v-4.704a.645.645 0 0 1 .967-.56z",key:"1tzo1f"}]],Gc=qe("file-play",Wc);const Kc=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}],["circle",{cx:"9",cy:"9",r:"2",key:"af1f0g"}],["path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21",key:"1xmnt7"}]],Nr=qe("image",Kc);const Qc=[["path",{d:"M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5",key:"1gvzjb"}],["path",{d:"M9 18h6",key:"x1upvd"}],["path",{d:"M10 22h4",key:"ceow96"}]],Ui=qe("lightbulb",Qc);const Xc=[["path",{d:"M12 19v3",key:"npa21l"}],["path",{d:"M19 10v2a7 7 0 0 1-14 0v-2",key:"1vc78b"}],["rect",{x:"9",y:"2",width:"6",height:"13",rx:"3",key:"s6n7sd"}]],Jc=qe("mic",Xc);const Yc=[["path",{d:"m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551",key:"1miecu"}]],Oa=qe("paperclip",Yc);const Zc=[["path",{d:"M2 3h20",key:"91anmk"}],["path",{d:"M21 3v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V3",key:"2k9sn8"}],["path",{d:"m7 21 5-5 5 5",key:"bip4we"}]],eu=qe("presentation",Zc);const tu=[["path",{d:"M20 18v-2a4 4 0 0 0-4-4H4",key:"5vmcpk"}],["path",{d:"m9 17-5-5 5-5",key:"nvlc11"}]],nu=qe("reply",tu);const su=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]],ru=qe("circle-x",su);function au(e){const t=fu(e);if(t)return t;const s=du();let r="";const a=[],i=[],o=[];for(const m of e){if(!r&&m.label&&(r=m.label),Nu(i,m.label),Mu(o,m),m.kind==="command"&&m.content){hu(s,pu(m.content));continue}mu(s,m)||Cu(a,m.label)}const l=[...xu(s),...i,...o],u=s.runCount>0?wu(s.runCount):"",f=Iu(a),b=(e.length===1&&e[0]?.kind==="command"&&e[0].content&&i.length===0&&o.length===0?qi(e[0].content,"completed"):null)||Su(l,u)||f||r||"Ran command";return{kind:ku(s,u),text:b}}function qi(e,t="completed"){const s=Gi(e);if(s.length===0)return null;const r=t==="running"||t==="pending";if(s.some(Ki))return r?"Running shell command":"Ran shell command";const a=Hi(s);if(!a)return null;const[i,o]=a;if(i==="cat"){const u=Qt(o);return u.length===0?r?"Reading standard input":"Read standard input":`${r?"Reading":"Read"} ${mn(u)}`}if(i==="sed")return uu($u([i,...o]),r);if(i==="rg")return Pu([i,...o],r);if(["grep","ag"].includes(i)||i==="git"&&o[0]==="grep")return r?"Searching code":"Searched code";if(["ls","find","tree","fd"].includes(i)){const u=i==="ls"?Qt(o):[];return u.length===0?r?"Listing files":"Listed files":`${r?"Listing":"Listed"} files in ${mn(u)}`}if(["head","tail","nl","wc","awk","jq"].includes(i)){const u=Wi(i,o);return u.length===0?r?`Running ${i}`:`Ran ${i}`:`${r?"Reading":"Read"} ${mn(u)}`}if(i==="apply_patch")return r?"Editing files":"Edited files";if(i==="write_stdin")return r?"Continuing command":"Continued command";if(i==="wait")return r?"Waiting for command":"Waited for command";if(i==="js")return r?"Running JavaScript":"Ran JavaScript";if(i==="exec_command")return r?"Running shell command":"Ran shell command";if(i==="read_file")return r?"Reading file":"Read file";if(i==="view_image")return r?"Viewing image":"Viewed image";if(i==="update_plan")return r?"Updating plan":"Updated plan";if(i==="tool_search")return r?"Searching tools":"Searched tools";if(i==="rm")return r?"Removing files":"Removed files";if(i==="mv")return r?"Moving files":"Moved files";if(i==="cp")return r?"Copying files":"Copied files";if(i==="mkdir")return r?"Creating directories":"Created directories";if(i==="touch")return r?"Creating files":"Created files";if(i==="git")return iu(o,r);if(cu(i))return ou(i,o,r);if(Vi(i))return lu(i,r);if(["curl","wget"].includes(i))return r?"Fetching URL":"Fetched URL";if(["node","tsx","python","python3","bash","sh","zsh"].includes(i))return r?`Running ${js(i)} script`:`Ran ${js(i)} script`;const l=js(i);return r?`Running ${l} command`:`Ran ${l} command`}function iu(e,t){const s=e.find(r=>!r.startsWith("-"))??"";return s==="status"?t?"Checking Git status":"Checked Git status":s==="diff"?t?"Reviewing changes":"Reviewed changes":s==="show"||s==="log"?t?"Reading Git history":"Read Git history":s==="add"?t?"Staging changes":"Staged changes":s==="commit"?t?"Committing changes":"Committed changes":s==="push"?t?"Pushing changes":"Pushed changes":s==="pull"||s==="fetch"?t?"Fetching changes":"Fetched changes":s==="checkout"||s==="switch"?t?"Switching branches":"Switched branches":s==="branch"?t?"Listing branches":"Listed branches":t?"Running Git command":"Ran Git command"}function ou(e,t,s){const r=t.join(" ").toLowerCase();return/\b(typecheck|tsc)\b/.test(r)?s?"Checking types":"Checked types":/\b(lint|eslint|prettier)\b/.test(r)?s?"Running lint":"Ran lint":/\b(test|vitest|jest|playwright)\b/.test(r)?s?"Running tests":"Ran tests":/\bbuild\b/.test(r)?s?"Building project":"Built project":/\b(install|add)\b/.test(r)?s?"Installing dependencies":"Installed dependencies":s?`Running ${js(e)} command`:`Ran ${js(e)} command`}function lu(e,t){return e==="tsc"?t?"Checking types":"Checked types":e==="eslint"||e==="prettier"?t?"Running lint":"Ran lint":t?"Running tests":"Ran tests"}function cu(e){return["bun","npm","pnpm","yarn"].includes(e)}function js(e){const t=e.split("/").filter(Boolean).at(-1)??e;return t==="python"||t==="python3"?"Python":t==="node"||t==="tsx"?"Node":["bash","sh","zsh"].includes(t)?"shell":t==="git"?"Git":t}function uu(e,t){return!e||!t?e:e.startsWith("Read ")?`Reading ${e.slice(5)}`:e.startsWith("Run ")?`Running ${e.slice(4)}`:e}function du(){return{approvals:0,controlCount:0,editCount:0,goalContextUpdates:0,imageCount:0,listedFiles:0,readFileCount:0,readFiles:new Set,reasoningCount:0,runCount:0,searchedCode:0,subagentStatuses:new Map,testsOrChecks:0,turnInterruptions:0,webSearches:0}}function fu(e){if(e.length===0)return null;const t=e.map(i=>i.subagentMessage).filter(i=>!!i);if(t.length===0||t.length!==e.length)return null;if(t.length===1){const i=t[0];return{kind:"subagent",text:`${i.direction==="received"?"Child Message Received":"Child Message Sent"}: ${i.summary}`}}const s=t.filter(i=>i.direction==="received").length,r=t.length-s,a=[s>0?za(s,"received"):null,r>0?za(r,"sent"):null].filter(i=>!!i);return{kind:"subagent",text:jr(va(a))}}function za(e,t){return e===1?`child message ${t}`:`${e} child messages ${t}`}function hu(e,t){e.editCount+=t.editCount??0,e.listedFiles+=t.listedFiles??0,e.searchedCode+=t.searchedCode??0,e.testsOrChecks+=t.testsOrChecks??0;for(const s of t.readFiles??[])e.readFiles.add(s);t.readFiles?.length&&(e.readFileCount+=t.readFiles.length),t.countedAsRun&&(e.runCount+=1)}function mu(e,t){const s=t.label.toLowerCase();if(t.controlKind)return e.controlCount+=1,t.controlKind==="goal_context"&&(e.goalContextUpdates+=1),t.controlKind==="turn_aborted"&&(e.turnInterruptions+=1),!0;if(s==="reasoning")return e.reasoningCount+=1,!0;if(s.includes("approval"))return e.approvals+=1,!0;if(s.includes("subagent"))return yu(e,t,r(s)),!0;if(s.includes("image"))return e.imageCount+=1,!0;function r(a){return a.includes("failed")?"failed":a.includes("blocked")?"blocked":a.includes("stale")?"stale":a.includes("needs revision")?"needs revision":a.includes("archived")?"archived":a.includes("accepted")?"accepted":a.includes("submitted")?"submitted":a.includes("completed")?"completed":"running"}return s.includes("web")?(e.webSearches+=1,!0):/\b(searching|searched)\b/.test(s)?(e.searchedCode+=1,!0):/\b(listing|listed)\b/.test(s)?(e.listedFiles+=1,!0):/\b(reading|read)\b/.test(s)?(e.readFileCount+=1,!0):/\b(editing|edited|writing|wrote|deleting|deleted|moving|moved|uploading|uploaded|creating|created)\b/.test(s)?(e.editCount+=1,!0):!1}function pu(e){const t=Gi(e);if(t.length===0||t.some(Ki))return{countedAsRun:!0};const s=Hi(t);if(!s)return{countedAsRun:!0};const[r,a]=s;if(r==="apply_patch")return{countedAsRun:!1,editCount:1};if(["rm","mv","cp","mkdir","touch"].includes(r))return{countedAsRun:!1,editCount:1};if(gu(r,a)||Vi(r))return{countedAsRun:!1,testsOrChecks:1};if(r==="rg")return a.includes("--files")?{countedAsRun:!1,listedFiles:1}:{countedAsRun:!1,searchedCode:1};if(["grep","ag"].includes(r))return{countedAsRun:!1,searchedCode:1};if(r==="git"&&a[0]==="grep")return{countedAsRun:!1,searchedCode:1};if(["ls","find","tree","fd"].includes(r))return{countedAsRun:!1,listedFiles:1};const i=Wi(r,a);return i.length>0?{countedAsRun:!1,readFiles:i}:{countedAsRun:!0}}function Hi(e){let t=0;for(;/^[A-Za-z_][A-Za-z0-9_]*=.*/.test(e[t]??"");)t+=1;const s=e[t];if(!s)return null;if(s==="bunx"||s==="npx"){const r=e[t+1];return r?[r,e.slice(t+2)]:[s,[]]}return[s,e.slice(t+1)]}function gu(e,t){if(!["bun","npm","pnpm","yarn"].includes(e))return!1;const s=t.join(" ").toLowerCase();return/\b(test|typecheck|check|lint|vitest|jest|playwright|tsc)\b/.test(s)}function Vi(e){return["eslint","jest","playwright","prettier","tsc","vitest"].includes(e)}function Wi(e,t){if(e==="cat"||e==="nl"||e==="head"||e==="tail"||e==="wc")return Kr(Qt(t));if(e==="sed"){const s=t.findIndex(r=>r!=="-n"&&!r.startsWith("--"));return Kr(s>=0?Qt(t.slice(s+1)):[])}return e==="awk"||e==="jq"?Kr(Qt(t.slice(1))):[]}function Kr(e){return e.filter(t=>!(!t||t==="."||t==="-"||/^\d+$/.test(t)))}function xu(e){const t=[],s=vu(e);s&&t.push(s),e.editCount>0&&t.push("made edits");const r=e.readFiles.size||e.readFileCount;return r>0&&t.push(Da("read",r,"file")),e.searchedCode>0&&t.push("searched code"),e.listedFiles>0&&t.push("listed files"),e.testsOrChecks>0&&t.push(e.testsOrChecks===1?"ran checks":`ran ${e.testsOrChecks} checks`),e.webSearches>0&&t.push("searched web"),e.imageCount>0&&t.push(Da("read",e.imageCount,"image")),e.reasoningCount>0&&t.length===0&&t.push("thought through the request"),e.approvals>0&&t.push("requested approval"),t.push(...bu(e)),t}function bu(e){const t=[];e.goalContextUpdates===1&&t.push("goal context updated"),e.goalContextUpdates>1&&t.push(`${e.goalContextUpdates} goal context updates`),e.turnInterruptions===1&&t.push("turn interrupted"),e.turnInterruptions>1&&t.push(`${e.turnInterruptions} turns interrupted`);const s=e.controlCount-e.goalContextUpdates-e.turnInterruptions;return s===1&&t.push("context updated"),s>1&&t.push(`${s} context updates`),t}function vu(e){const t=ju(e);return t.failed>0?_t(t.failed,"failed"):t.blocked>0?_t(t.blocked,"blocked"):t.stale>0?_t(t.stale,"stale"):t["needs revision"]>0?_t(t["needs revision"],"needs revision"):t.submitted>0?_t(t.submitted,"submitted"):t.running>0&&t.completed===0&&t.accepted===0?_t(t.running,"running"):t.accepted>0?_t(t.accepted,"accepted"):t.completed>0?_t(t.completed,"completed"):t.archived>0?_t(t.archived,"archived"):null}function yu(e,t,s){const r=t.openSession?.sessionId??(t.content.trim()||t.id),a=e.subagentStatuses.get(r);(!a||Fa(s)>Fa(a))&&e.subagentStatuses.set(r,s)}function ju(e){const t={accepted:0,archived:0,blocked:0,completed:0,failed:0,"needs revision":0,running:0,stale:0,submitted:0};for(const s of e.subagentStatuses.values())t[s]+=1;return t}function Fa(e){return e==="running"?1:e==="submitted"?2:e==="accepted"||e==="completed"||e==="archived"?3:e==="needs revision"?4:e==="blocked"?5:e==="stale"?6:7}function _t(e,t){return e===1?`subagent ${t}`:`${e} subagents ${t}`}function ku(e,t){const s=[];return e.subagentStatuses.size>0&&s.push("subagent"),e.editCount>0&&s.push("edit"),(e.readFiles.size>0||e.readFileCount>0)&&s.push("read"),e.searchedCode>0&&s.push("search"),e.listedFiles>0&&s.push("list"),e.webSearches>0&&s.push("web"),e.imageCount>0&&s.push("image"),e.reasoningCount>0&&s.push("reasoning"),e.approvals>0&&s.push("approval"),e.controlCount>0&&s.push("control"),(e.testsOrChecks>0||t)&&s.push("command"),s[0]??"command"}function wu(e){return e===1?"ran a command":`ran ${e} commands`}function Da(e,t,s){return t===1?`${e} a ${s}`:`${e} ${t} ${s}s`}function Su(e,t){return e.length===0?t?jr(t):"":jr(va(t?[...e,t]:e))}function Cu(e,t){const s=t.trim();s&&(e.includes(s)||e.push(s))}function Nu(e,t){const s=Ru(t);!s||e.includes(s)||e.push(s)}function Mu(e,t){const s=t.receipt;if(!s)return;const r=`${s.status} receipt ${Au(s.id)} ${Eu(s.totalUsd)}`;e.includes(r)||e.push(r)}function Ru(e){switch(e.trim().toLowerCase()){case"applied locally":return"applied locally";case"apply locally failed":return"apply locally failed";case"exported sandbox patch":return"exported patch";case"patch export failed":return"patch export failed";case"preserved sandbox source":return"preserved sandbox source";case"preserve failed":return"preserve failed";case"stopped sandbox":return"stopped sandbox";case"sandbox stop failed":return"sandbox stop failed";default:return null}}function Eu(e){const t=e.trim();return t.startsWith("$")?t:`$${t}`}function Au(e){const t=e.trim();return t.length<=14?t:`${t.slice(0,6)}...${t.slice(-4)}`}function Iu(e){return e.length===0?"":jr(va(e.map(Tu)))}function Tu(e){return e&&`${e[0].toLowerCase()}${e.slice(1)}`}function va(e){return e.length===0?"":e.length===1?e[0]:e.length===2?`${e[0]} and ${e[1]}`:`${e.slice(0,-1).join(", ")}, and ${e[e.length-1]}`}function jr(e){return e&&`${e[0].toUpperCase()}${e.slice(1)}`}function $u(e){const t=e.findIndex((i,o)=>o>0&&i!=="-n"&&!i.startsWith("--")),s=t>=0?e[t]??"":"",r=t>=0?Qt(e.slice(t+1)):[],a=/^(\d+)(?:,(\d+))?p$/.exec(s);if(a){const i=a[1],o=a[2],l=o?`lines ${i}-${o}`:`line ${i}`;return r.length>0?`Read ${l} of ${mn(r)}`:`Read ${l}`}return r.length>0?`Read ${mn(r)} with sed`:"Run sed"}function Pu(e,t=!1){const s=e.slice(1);if(s.includes("--files")){const o=Qt(s.filter(l=>l!=="--files"));return o.length>0?`${t?"Listing":"Listed"} files matching ${mn(o)}`:t?"Listing files":"Listed files"}const r=Qt(s),a=r[0],i=r.slice(1);return a?i.length>0?`${t?"Searching":"Searched"} for ${Ba(a)} in ${mn(i)}`:`${t?"Searching":"Searched"} for ${Ba(a)}`:t?"Searching files":"Searched files"}function Gi(e){return(e.match(/"([^"\\]|\\.)*"|'[^']*'|[^\s]+/g)??[]).map(s=>_u(s)).filter(Boolean)}function _u(e){return e.startsWith("'")&&e.endsWith("'")||e.startsWith('"')&&e.endsWith('"')?e.slice(1,-1):e}function Ki(e){return["|","&&","||",";",">",">>","<","(",")"].includes(e)}function Qt(e){const t=[];for(let s=0;s<e.length;s+=1){const r=e[s];if(!r.startsWith("-")){t.push(r);continue}Lu(r)&&s+1<e.length&&(s+=1)}return t}function Lu(e){return["-e","-f","-g","--glob","--type","-t","--context","-C","-A","-B","-m","-n","-c"].includes(e)}function mn(e){return e.length===1?e[0]:e.length===2?`${e[0]} and ${e[1]}`:`${e[0]} and ${e.length-1} more`}function Ba(e){return`"${e}"`}const Ua=Object.freeze({events:[],messages:[]});class Ou{projection=Ua;project(t){if(t===this.projection.events)return this.projection.messages;if(!Du(this.projection.events,t))return this.replace(t);const s=t.slice(this.projection.events.length);if(s.length===0)return this.projection={events:t,messages:this.projection.messages},this.projection.messages;const r=zu(this.projection.messages,s);if(r)return this.projection={events:t,messages:r},r;const a=Fu(t,this.projection.events.length);if(!a)return this.replace(t);const i=t.slice(a.eventIndex),o=new Set(i.flatMap(f=>f.turnId?[f.turnId]:[])),u=[...this.projection.messages.filter(f=>!f.turnId||!o.has(f.turnId)),...Ea(i)];return this.projection={events:t,messages:u},u}reset(){this.projection=Ua}snapshot(){return this.projection}replace(t){const s=Ea(t);return this.projection={events:t,messages:s},s}}function zu(e,t){if(t.length===0||e.length===0)return null;const s=e[e.length-1];if(s?.role!=="assistant"||s.createImproveRun||t.some(f=>f.name!=="assistant.delta"&&f.name!=="assistant.reasoning.delta"||f.turnId!==s.turnId||!f.output))return null;let r=s.content,a=s.reasoningContent,i=s.timestamp,o=!1,l=!1;for(const f of t)f.name==="assistant.delta"?(r=`${r??""}${f.output}`,o=!0):(a=`${a??""}${f.output}`,l=!0),i=f.timestamp;const u={...s,...o?{content:r}:{},...l?{reasoningContent:a}:{},timestamp:i};return[...e.slice(0,-1),u]}function Fu(e,t){const s=e[t];if(!s?.turnId)return null;const r=e.findIndex(a=>a.turnId===s.turnId);return r<0?null:{eventIndex:r}}function Du(e,t){return e.length===0?!0:e.length>=t.length?!1:e[0]===t[0]&&e[e.length-1]===t[e.length-1]}function Bu(e,t){const s=c.useCallback(i=>t?e.subscribeSession(t,i):()=>{},[t,e]),r=c.useCallback(()=>e.getSessionSnapshot(t),[t,e]),a=c.useSyncExternalStore(s,r,r);return c.useEffect(()=>{if(t)return e.retainSession(t,!0),()=>e.retainSession(t,!1)},[t,e]),a}function Uu(e){async function t(s,r){const a=(r??e.getPrompt()).trim();if(!e.running||!a)return!1;if(e.hasFilesOrActions)return e.showToast("Steering supports a plain-text instruction. Remove files or actions before sending it.","info"),!1;if(s==="queued"&&!e.inbox.enabled)return e.stageLocal(a),e.clear(),!0;if(!e.begin(e.scope))return!1;e.setError(null);try{const i=e.inbox.enabled?s==="steer"?await e.inbox.steer(a):await e.inbox.queue({prompt:a,modelRef:{providerId:e.provider,modelId:e.model},...e.provider==="codex"?fl(e.codexPermissionMode):{approvalPolicy:"on-request",sandbox:"workspace-write"},codexPermissionMode:e.codexPermissionMode,codexReasoningEffort:e.codexReasoningEffort}):await e.onSubmit([],null,null,{preservePrompt:!0,promptOverride:a,turnMetadata:{interactionKind:"steer"}});return i&&(!e.getCurrentSubmissionScopeKey||e.getCurrentSubmissionScopeKey()===e.scope)&&e.clear(),i}catch(i){return e.setError(i instanceof Error?i.message:String(i)),!1}finally{e.finish(e.scope)}}return{stageCurrentSteerDraft:s=>t("queued",s),submitImmediateSteer:s=>t("steer",s)}}function qu(e,t){const s=e.slice(0,Math.max(0,Math.min(t,e.length))),r=/(?:^|\s)\$([a-zA-Z][a-zA-Z0-9_-]*)?$/.exec(s);if(!r||typeof r.index!="number")return null;const a=r[0].lastIndexOf("$");return a<0?null:{end:s.length,query:(r[1]??"").toLowerCase(),start:r.index+a}}function Mr(e){return`$${e.name}`}function Hu(e,t,s){const r=Math.max(0,Math.min(t.start,e.length)),a=Math.max(r,Math.min(t.end,e.length)),i=e.slice(0,r),o=e.slice(a),l=i&&!/\s$/.test(i)?" ":"",u=o&&/^\s/.test(o)?"":" ",f=`${l}${Mr(s)}${u}`;return{cursor:i.length+f.length-(o?u.length:0),value:`${i}${f}${o}`}}function mr(e,t,s){const r=t.trim().toLowerCase(),a=e.filter(i=>i.enabled&&i.validationStatus==="valid").filter(i=>r?[i.name,i.description,i.path].join(" ").toLowerCase().includes(r):!0).sort((i,o)=>i.name.localeCompare(o.name));return typeof s=="number"&&Number.isFinite(s)?a.slice(0,Math.max(0,s)):a}function Qi(e,t,s){const r=t.trim().replace(/\s+/g," "),a=Vu(s,e.length);if(!r)return{value:e,cursorIndex:a};const i=e.slice(0,a),o=e.slice(a),l=i&&!/\s$/.test(i)?" ":"",u=o&&!/^\s/.test(o)?" ":"",f=`${l}${r}${u}`;return{value:`${i}${f}${o}`,cursorIndex:i.length+l.length+r.length+u.length}}function Vu(e,t){return Number.isFinite(e)?Math.max(0,Math.min(t,Math.round(e))):t}async function Wu({appendToEnd:e=!1,currentScopeKey:t,cursorIndex:s,originScopeKey:r,prompt:a,setOriginDraft:i,submitFromOrigin:o,transcript:l}){const u=Qi(a,l,e?a.length:s);return i(u.value),t===r?"drafted":await o(u.value)?(i(""),"submitted"):"retained"}const Kn=new Map,pr=new Map,gr=new Map;function qa(e){for(const t of pr.get(e)??[])t()}function Gu(e){return Kn.has(e)}function Ku(e,t){const s=pr.get(e)??new Set;return s.add(t),pr.set(e,s),()=>{s.delete(t),s.size===0&&pr.delete(e)}}function Xi(e){Kn.get(e)?.controller.abort()}function Qu(e,t){const s=gr.get(e)??new Set;return s.add(t),gr.set(e,s),()=>{s.delete(t),s.size===0&&gr.delete(e)}}function Xu(e){const t=Kn.get(e);if(t)return t.submitRequested=!0,!0;for(const s of gr.get(e)??[])if(s())return!0;return!1}function Ju(e,t,s={}){Xi(e);const r=new AbortController,a={controller:r,promise:Promise.resolve(),submitRequested:s.submit??!1};return a.promise=Promise.resolve().then(()=>{if(!r.signal.aborted)return t(r.signal,()=>a.submitRequested)}).catch(i=>{if(!r.signal.aborted)throw i}).finally(()=>{Kn.get(e)===a&&(Kn.delete(e),qa(e))}),Kn.set(e,a),qa(e),a.promise}const Yu=new Set(["task.inbox","task.input","task.wait","turn.started","turn.completed","turn.failed","turn.interrupted","approval.requested","approval.resolved"]);function Ha(e){try{const t=JSON.parse(sessionStorage.getItem(e)??"null");return t&&typeof t.body=="string"&&typeof t.key=="string"&&(t.kind==="steer"||t.kind==="queued")?t:null}catch{return null}}function Zu(e,t,s,r=!0){const a=hl(),i=ml(e),o=c.useMemo(()=>["task-inbox",i,t],[i,t]),l=!!(e&&t),u=pl({queryKey:o,enabled:l,staleTime:0,refetchOnWindowFocus:!0,refetchOnReconnect:!0,queryFn:()=>ir.taskInbox(e,t)}),[f,p]=c.useState(null),[b,m]=c.useState(null),h=`${i}:${t}`;let x;for(let w=s.length-1;w>=0;w--){const j=s[w];if(j.sessionId===t&&Yu.has(j.name)){x=j.id;break}}const g=c.useCallback(async()=>{l&&await a.invalidateQueries({queryKey:o,exact:!0})},[l,a,o]);c.useEffect(()=>{g()},[g,x]),c.useEffect(()=>{const w=()=>{g()};return window.addEventListener("openpond-runtime-connected",w),()=>window.removeEventListener("openpond-runtime-connected",w)},[g]);async function y(w,j){if(!l)return!1;p({scope:h,id:w}),m(null);try{const E=await j();return await a.cancelQueries({queryKey:o,exact:!0}),a.setQueryData(o,S=>S&&{...S,inputs:[...S.inputs.filter(R=>R.id!==E.id),E].sort((R,A)=>R.sequence-A.sequence)}),g(),!0}catch(E){return m({scope:h,message:E instanceof Error?E.message:String(E)}),g(),!1}finally{p(E=>E?.scope===h&&E.id===w?null:E)}}async function k(w,j,E){if(!e||!t)return!1;if(w==="steer"&&!r)return m({scope:h,message:"This agent accepts follow-ups on its next turn. Queue your message instead."}),!1;const S=`openpond:task-input:${e.serverUrl}:${t}`,R=Ha(S),A=R?.body===j&&R.kind===w,$=A?R:{body:j,kind:w,request:E,key:crypto.randomUUID(),turnId:w==="steer"?u.data?.activeTurnId??null:null};if(w==="steer"&&(!$.turnId||!A&&!u.data?.acceptingInput))return m({scope:h,message:"This turn is no longer accepting steering. Your text is still in the composer; send it as a follow-up or queue it."}),g(),!1;try{sessionStorage.setItem(S,JSON.stringify($))}catch{}const D=await y($.key,async()=>{let U;try{U=await(w==="steer"?ir.steerTurn(e,t,{prompt:j,expectedTurnId:$.turnId,idempotencyKey:$.key}):ir.queueTaskInput(e,t,$.request,$.key))}catch(K){if(K instanceof Ai&&K.status>=400&&K.status<500)try{sessionStorage.removeItem(S)}catch{}throw K}if(U.state==="rejected"||U.state==="cancelled"){try{sessionStorage.removeItem(S)}catch{}throw new Error(U.error??"This input was cancelled. Review your text before sending again.")}return U});if(D)try{Ha(S)?.key===$.key&&sessionStorage.removeItem(S)}catch{}return D}return{enabled:l,snapshot:u.data?{...u.data,acceptingInput:u.data.acceptingInput&&r}:null,busyId:f?.scope===h?f.id:null,error:b?.scope===h?b.message:u.error?.message??null,steer:w=>k("steer",w),queue:w=>k("queued",w.prompt,w),mutate:(w,j)=>y(w.id,()=>ir.updateTaskInput(e,t,w.id,j)),refresh:g}}function ed(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?crypto.randomUUID():`steer-${Date.now().toString(36)}-${Math.random().toString(36).slice(2,9)}`}function ks(e,t=120){const s=e.trim().replace(/\s+/g," ");return s.length<=t?s:`${s.slice(0,Math.max(0,t-1)).trimEnd()}...`}function Ji(e,t={}){const s=t.now??new Date().toISOString();return{createdAt:s,id:t.id??ed(),prompt:e,updatedAt:s}}function Yi(e,t){return e.filter(s=>s.id!==t)}function td(e,t,s){const r=s?.trim();return e.flatMap(a=>a.id!==t?[a]:r?[Ji(r)]:[])}function nd(e,t,s){return s?Yi(e,t):e}function la(e,t,s=[]){return e[t]??s}function sd(e,t,s,r=[]){const a=la(e,t,r),i=s(a);return Object.is(a,i)?e:{...e,[t]:i}}function rd({inbox:e,onRestore:t}){const[s,r]=c.useState(null),a=e.snapshot,i=a?.inputs.filter(u=>u.senderKind==="user"&&u.kind==="queued"&&u.state==="pending")??[],o=a?.inputs.filter(u=>u.state!=="cancelled"&&!i.some(f=>f.id===u.id)).slice(-8)??[],l=s?.input.sessionId===a?.sessionId?s:null;return!i.length&&!o.length&&!a?.waits.length&&!e.error?null:n.jsxs("section",{className:"task-inbox-panel","aria-label":"Task inbox",children:[e.error&&n.jsxs("p",{className:"task-inbox-error",role:"alert",children:[e.error," ",n.jsx("button",{type:"button",onClick:()=>{e.refresh()},children:"Refresh"})]}),a?.waits.map(u=>n.jsxs("p",{className:"task-inbox-status",role:"status",children:[u.targetSessionId?`Waiting for task ${u.targetSessionId}`:"Waiting for a message",". Work resumes when an update arrives."]},u.id)),i.length>0&&n.jsxs(n.Fragment,{children:[n.jsxs("div",{className:"task-inbox-heading",children:[n.jsxs("span",{children:[i.length," queued"]}),a?.paused&&n.jsx("span",{children:"Paused — messages stay saved"}),!a?.activeTurnId&&n.jsx("button",{type:"button",disabled:!!e.busyId,onClick:()=>{e.mutate(i[0],{action:"resume",expectedRevision:i[0].revision})},children:"Resume queue"})]}),i.map(u=>n.jsx("div",{className:"task-inbox-item",children:l?.input.id===u.id?n.jsxs(n.Fragment,{children:[n.jsx("textarea",{"aria-label":"Edit queued message",value:l.body,maxLength:32e3,onChange:f=>r({...l,body:f.target.value})}),n.jsxs("div",{className:"task-inbox-actions",children:[n.jsx("button",{type:"button",disabled:!l.body.trim()||!!e.busyId,onClick:async()=>{await e.mutate(l.input,{action:"edit",expectedRevision:l.input.revision,body:l.body})&&r(null)},children:"Save changes"}),n.jsx("button",{type:"button",onClick:()=>r(null),children:"Cancel edit"})]})]}):n.jsxs(n.Fragment,{children:[n.jsx("p",{title:u.body,children:ks(u.body,220)}),n.jsxs("div",{className:"task-inbox-actions",children:[n.jsx("span",{children:u.turnId?"Starting":"Next turn"}),n.jsx("button",{type:"button",disabled:!!e.busyId||!!u.turnId||!a?.acceptingInput,onClick:()=>{e.mutate(u,{action:"steer",expectedRevision:u.revision,expectedTurnId:a.activeTurnId})},children:"Steer now"}),n.jsx("button",{type:"button",disabled:!!e.busyId||!!u.turnId,onClick:()=>r({input:u,body:u.body}),children:"Edit"}),n.jsx("button",{type:"button",disabled:!!e.busyId||!!u.turnId,onClick:()=>{e.mutate(u,{action:"cancel",expectedRevision:u.revision})},children:"Delete"})]})]})},u.id))]}),o.length>0&&n.jsxs("details",{className:"task-inbox-activity",open:o.some(u=>u.state==="rejected"||!!u.error),children:[n.jsxs("summary",{children:["Messages and delivery (",o.length,")"]}),o.map(u=>n.jsxs("div",{className:"task-inbox-item",children:[n.jsxs("div",{className:"task-inbox-heading",children:[n.jsx("span",{children:u.senderKind==="user"?"Your instruction":u.senderKind==="runtime"?"Task update":`Task ${u.senderSessionId}`}),n.jsx("span",{children:ad(u)})]}),n.jsx("p",{children:ks(u.body,320)}),u.error&&n.jsx("p",{className:"task-inbox-error",children:u.error}),(u.state==="rejected"||u.error)&&u.senderKind==="user"&&n.jsx("button",{type:"button",onClick:()=>t(u.body),children:"Use as follow-up"})]},u.id)),n.jsx("p",{className:"task-inbox-status",children:"Delivery shows when input reached a model request. It does not confirm understanding or a reply."})]})]})}function ad(e){return e.state==="pending"?"Saved · pending delivery":e.state==="included"?"Included":e.state==="resolved"?"Request finished":e.state==="rejected"?"Not delivered":"Cancelled"}const Zi=new Set(["claude-code","opencode","grok-build"]);function id({currentModelOptions:e,currentProvider:t,providerOptions:s,providerSettings:r}){return s.flatMap(a=>{if(a.value==="setup-provider")return[];const i=a.value,o=i===t?e:ma(i,r);return o.length||Zi.has(i)?[{provider:i,label:a.label,defaultModel:Ii(i,r),options:o}]:[]})}function od(e){const t=e.options.find(s=>s.value===e.defaultModel)??e.options[0];return!t&&!Zi.has(e.provider)?null:{provider:e.provider,model:t?.value??""}}function eo({busy:e,placement:t,state:s,onChange:r}){const[a,i]=c.useState(!1),[o,l]=c.useState(""),u=c.useRef(null),f=c.useMemo(()=>{const p=o.trim().toLowerCase();return p?s.options.filter(b=>`${b.label} ${b.detail}`.toLowerCase().includes(p)):s.options},[o,s.options]);return c.useEffect(()=>{if(!a){l("");return}function p(m){u.current?.contains(m.target)||i(!1)}function b(m){m.key==="Escape"&&i(!1)}return document.addEventListener("pointerdown",p),document.addEventListener("keydown",b),()=>{document.removeEventListener("pointerdown",p),document.removeEventListener("keydown",b)}},[a]),s.options.length<=1?null:n.jsxs("div",{className:`composer-profile-target ${t==="top"?"open-up":""}`,ref:u,children:[n.jsxs("button",{type:"button",className:`composer-profile-trigger ${a?"active":""}`,disabled:e,"aria-label":"Profile","aria-haspopup":"menu","aria-expanded":a,onClick:()=>i(p=>!p),children:[n.jsx("span",{children:s.label}),n.jsx(zt,{size:14})]}),a?n.jsxs("div",{className:"composer-project-menu",role:"menu","aria-label":"Profile",children:[n.jsx("div",{className:"composer-menu-search",children:n.jsx("input",{autoFocus:!0,value:o,placeholder:"Search profiles",onChange:p=>l(p.currentTarget.value)})}),n.jsx("div",{className:"composer-menu-items",children:f.map(p=>{const b=p.value===s.value;return n.jsxs("button",{type:"button",role:"menuitemradio","aria-checked":b,className:`composer-project-option ${b?"selected":""}`,onClick:()=>{r(p.value),i(!1)},children:[n.jsxs("span",{children:[n.jsx("strong",{children:p.label}),n.jsx("small",{children:p.detail})]}),b?n.jsx(Ot,{size:14}):null]},p.value)})})]}):null]})}function ld({busy:e,placement:t,state:s,onChange:r}){const[a,i]=c.useState(!1),[o,l]=c.useState(!1),[u,f]=c.useState(""),p=c.useRef(null),m=s.value==="none"?"Select Project":s.label,h=s.options.find(j=>j.value===s.value)?.kind??"local",x=c.useMemo(()=>{const j=u.trim().toLowerCase();return j?s.options.filter(E=>[E.label,E.detail].filter(Boolean).some(S=>S.toLowerCase().includes(j))):s.options},[u,s.options]),g=x.filter(j=>j.kind==="local"||j.kind==="cloud"),y=x.filter(j=>j.kind==="action"),k=x.filter(j=>j.kind==="none");c.useEffect(()=>{if(!a){f(""),l(!1);return}function j(S){p.current?.contains(S.target)||i(!1)}function E(S){S.key==="Escape"&&(o?l(!1):i(!1))}return document.addEventListener("pointerdown",j),document.addEventListener("keydown",E),()=>{document.removeEventListener("pointerdown",j),document.removeEventListener("keydown",E)}},[o,a]);function w(j){const E=j.value===s.value,S=e||j.disabled,R=j.kind==="action";return n.jsxs("button",{type:"button",role:R?"menuitem":"menuitemradio","aria-checked":R?void 0:E,className:`composer-project-option ${E?"selected":""} ${j.kind}`,disabled:S,onClick:()=>{r(j.value),l(!1),i(!1)},children:[n.jsx(ca,{kind:j.kind,size:14}),n.jsxs("span",{children:[n.jsx("strong",{children:j.label}),n.jsx("small",{children:j.detail})]}),E&&n.jsx(Ot,{size:14})]},j.value)}return n.jsxs("div",{className:`composer-project-target ${t==="top"?"open-up":""}`,ref:p,children:[n.jsxs("button",{type:"button",className:`composer-project-trigger ${a?"active":""} ${h}`,disabled:e,"aria-label":"Project","aria-haspopup":"menu","aria-expanded":a,onClick:()=>{i(j=>!j),l(!1)},children:[n.jsx(ca,{kind:h,size:14}),n.jsx("span",{children:m}),n.jsx(zt,{size:14})]}),a&&n.jsxs("div",{className:"composer-project-menu",role:"menu","aria-label":"Project",children:[n.jsx("div",{className:"composer-menu-search",children:n.jsx("input",{autoFocus:!0,value:u,placeholder:"Search projects",onChange:j=>f(j.target.value)})}),n.jsx("div",{className:"composer-menu-items",children:x.length===0?n.jsx("div",{className:"composer-menu-empty",children:"No projects found"}):g.map(w)}),y.length>0||k.length>0?n.jsxs("div",{className:"composer-project-actions",children:[y.length>0?n.jsxs("button",{type:"button",role:"menuitem",className:`composer-project-option action composer-project-new-trigger ${o?"selected":""}`,"aria-haspopup":"menu","aria-expanded":o,onClick:()=>l(j=>!j),children:[n.jsx(vr,{size:14}),n.jsxs("span",{children:[n.jsx("strong",{children:"New"}),n.jsx("small",{children:"Create or add a project"})]}),n.jsx(hr,{size:14})]}):null,k.map(w)]}):null]}),a&&o?n.jsxs("div",{className:"composer-project-new-menu",role:"menu","aria-label":"New project",children:[n.jsxs("button",{type:"button",role:"menuitem",className:"composer-project-new-menu-back",onClick:()=>l(!1),children:[n.jsx(Gn,{size:14}),n.jsx("span",{children:"New project"})]}),y.map(w)]}):null]})}function ca({kind:e,size:t}){return e==="cloud"?n.jsx(sa,{size:t}):e==="action"?n.jsx(vr,{size:t}):n.jsx(ra,{size:t})}function cd({busy:e,placement:t,state:s,onChange:r}){const[a,i]=c.useState(!1),o=c.useRef(null),l=s.value==="cloud"?"cloud":s.value==="hybrid"?"hybrid":"local",u=`${s.label}: ${s.detail}`,f=s.uploadAction??null,p=f?Va(f):null,b=f?f.disabled&&f.disabledReason?f.disabledReason:`${f.label}: ${p??f.detail}`:null,m=!!(f&&(e||s.busy||f.disabled));return c.useEffect(()=>{if(!a)return;function h(g){o.current?.contains(g.target)||i(!1)}function x(g){g.key==="Escape"&&i(!1)}return document.addEventListener("pointerdown",h),document.addEventListener("keydown",x),()=>{document.removeEventListener("pointerdown",h),document.removeEventListener("keydown",x)}},[a]),n.jsxs("div",{className:`workspace-action-control ${t==="top"?"open-up":""}`,ref:o,children:[n.jsxs("button",{type:"button",className:`workspace-action-trigger ${l} ${a?"active":""}`,disabled:e,"data-tooltip":u,"aria-label":"Working in","aria-haspopup":"menu","aria-expanded":a,onClick:()=>i(h=>!h),children:[n.jsx(xr,{value:s.value,size:14}),n.jsx("span",{className:"workspace-target-trigger-label",children:s.label}),n.jsx(zt,{size:14})]}),f?n.jsx("button",{type:"button",className:`workspace-upload-trigger ${f.value}`,disabled:m,"data-tooltip":b??void 0,"aria-label":f.label,onClick:()=>{r(f.value),i(!1)},children:n.jsx(xr,{value:f.value,size:14})}):null,a&&n.jsx("div",{className:"workspace-target-menu",role:"menu","aria-label":"Working in",children:s.options.map(h=>{const x=h.value===s.value,g=e||s.busy||h.disabled,k=Va(h)??h.detail,w=h.disabled&&h.disabledReason?h.disabledReason:`${h.label}: ${k}`;return n.jsxs("button",{type:"button",role:"menuitemradio","aria-checked":x,className:`workspace-target-option ${x?"selected":""} ${h.value}`,disabled:g,"data-tooltip":w,onClick:()=>{r(h.value),i(!1)},children:[n.jsx(xr,{value:h.value,size:14}),n.jsxs("span",{children:[n.jsx("strong",{children:h.label}),n.jsx("small",{children:k})]}),x&&n.jsx(Ot,{size:14})]},h.value)})})]})}function ud({project:e,workspace:t}){const r=e.options.find(i=>i.value===e.value)?.kind??"none",a=e.value==="none"?"No Project":e.label;return n.jsxs("div",{className:"composer-footer composer-pinned-context",role:"group","aria-label":"Task context",children:[n.jsxs("span",{className:"composer-context-chip","aria-label":`Project: ${a}`,children:[n.jsx(ca,{kind:r,size:14}),n.jsx("span",{children:a})]}),n.jsxs("span",{className:"composer-context-chip","aria-label":`Execution: ${t.label}`,children:[n.jsx(xr,{value:t.value,size:14}),n.jsx("span",{children:t.label})]})]})}function Va(e){return e.disabled&&e.disabledReason?e.disabledReason:e.stateNote??null}function xr({value:e,size:t}){return e==="cloud"?n.jsx(sa,{size:t}):e==="hybrid"?n.jsxs("span",{className:"workspace-target-hybrid-icon","aria-hidden":"true",children:[n.jsx(ra,{className:"hybrid-folder",size:t}),n.jsx(sa,{className:"hybrid-cloud",size:Math.max(7,Math.round(t*.62))})]}):e==="upload_cloud"?n.jsx(Mc,{size:t}):n.jsx(ra,{size:t})}function Wa({disabled:e,model:t,modelGroups:s,placement:r,provider:a,providerSettings:i,reasoningEffort:o,showReasoning:l,onModelSelectionChange:u,onReasoningEffortChange:f}){const[p,b]=c.useState(!1),[m,h]=c.useState("root"),x=c.useRef(null),g=s.find(A=>A.provider===a),y=g?.options.find(A=>A.value===t),k=gl(a,t,i),w=xl(a,t,o,i),j=k.find(A=>A.value===w)??k[0],E=dd(y?.label??t)||g?.label||a,S=l?`${E} ${j.shortLabel??j.label}`:E,R=l?"Model and reasoning":"Model";return c.useEffect(()=>{if(!p){h("root");return}function A(D){x.current?.contains(D.target)||b(!1)}function $(D){D.key==="Escape"&&b(!1)}return document.addEventListener("pointerdown",A),document.addEventListener("keydown",$),()=>{document.removeEventListener("pointerdown",A),document.removeEventListener("keydown",$)}},[p]),c.useEffect(()=>{!l&&m==="effort"&&h("root")},[m,l]),n.jsxs("div",{className:`codex-model-reasoning ${r==="top"?"open-up":""}`,"data-tooltip":R,ref:x,children:[n.jsxs("button",{type:"button",className:`codex-model-trigger ${p?"active":""}`,disabled:e,"aria-label":R,"aria-haspopup":"menu","aria-expanded":p,onClick:()=>b(A=>!A),children:[n.jsx("span",{children:S}),n.jsx(zt,{size:14})]}),p&&n.jsx("div",{className:"codex-model-menu",role:"menu","aria-label":R,children:m==="root"?n.jsxs("div",{className:"codex-model-menu-root",children:[n.jsxs("button",{type:"button",className:"codex-model-menu-row",role:"menuitem",onClick:()=>h("provider"),children:[n.jsx("span",{children:"Provider"}),n.jsx("span",{className:"codex-model-menu-value",children:g?.label??a}),n.jsx(hr,{size:14})]}),n.jsxs("button",{type:"button",className:"codex-model-menu-row",role:"menuitem",onClick:()=>h("model"),children:[n.jsx("span",{children:"Model"}),n.jsx("span",{className:"codex-model-menu-value",children:aa(y?.label??t)||"Agent default"}),n.jsx(hr,{size:14})]}),l?n.jsxs("button",{type:"button",className:"codex-model-menu-row",role:"menuitem",onClick:()=>h("effort"),children:[n.jsx("span",{children:"Effort"}),n.jsx("span",{className:"codex-model-menu-value",children:j.shortLabel??j.label}),n.jsx(hr,{size:14})]}):null]}):m==="provider"?n.jsxs(n.Fragment,{children:[n.jsxs("button",{type:"button",className:"codex-model-submenu-heading","aria-label":"Back to model settings — Provider",onClick:()=>h("root"),children:[n.jsx(Gn,{size:14}),n.jsx("span",{children:"Provider"})]}),n.jsx("div",{className:"codex-model-menu-divider"}),n.jsx("div",{className:"codex-model-menu-options",children:s.map(A=>{const $=A.provider===a;return n.jsxs("button",{type:"button",role:"menuitemradio","aria-checked":$,className:$?"selected":"",onClick:()=>{const D=od(A);D&&(u(D.provider,D.model),h("root"))},children:[n.jsx("span",{children:A.label}),$?n.jsx(Ot,{size:14}):null]},A.provider)})})]}):m==="model"?n.jsxs(n.Fragment,{children:[n.jsxs("button",{type:"button",className:"codex-model-submenu-heading","aria-label":"Back to model settings — Model",onClick:()=>h("root"),children:[n.jsx(Gn,{size:14}),n.jsx("span",{children:"Model"})]}),n.jsx("div",{className:"codex-model-menu-divider"}),n.jsxs("div",{className:"codex-model-menu-options",children:[(g?.options??[]).map(A=>{const $=A.value===t;return n.jsxs("button",{type:"button",role:"menuitemradio","aria-checked":$,className:$?"selected":"",onClick:()=>{u(a,A.value),h("root")},children:[n.jsx("span",{children:aa(A.label)}),$?n.jsx(Ot,{size:14}):null]},A.value)}),g?.options.length?null:n.jsx("div",{className:"codex-model-menu-empty",role:"status",children:"No models available. Connect or check this provider in Settings."})]})]}):n.jsxs("div",{className:"codex-model-menu-effort",children:[n.jsxs("button",{type:"button",className:"codex-model-submenu-heading","aria-label":"Back to model settings — Effort",onClick:()=>h("root"),children:[n.jsx(Gn,{size:14}),n.jsx("span",{children:"Effort"})]}),n.jsx("div",{className:"codex-model-menu-divider"}),k.map(A=>n.jsxs("button",{type:"button",role:"menuitemradio","aria-checked":A.value===w,className:A.value===w?"selected":"",onClick:()=>{f(A.value),h("root")},children:[n.jsx("span",{children:A.label}),A.value===w?n.jsx(Ot,{size:14}):null]},A.value))]})})]})}function dd(e){return aa(e).replace(/^GPT-/,"").replace(/\s+Codex Spark$/," Spark").replace(/\s+Codex$/," Codex")}function fd({detailsOpen:e,goalRuntime:t,objectiveId:s,subagentRuntime:r,onToggleDetails:a}){const i=r?.activeCount?`${t.tooltip}. ${r.tooltip}`:t.tooltip;return n.jsxs("div",{className:`composer-goal-strip ${t.tone}${r?.activeCount?" has-subagents":""}`,"data-tooltip":i,children:[n.jsx("div",{className:"composer-goal-heading",children:n.jsxs("button",{type:"button",className:"composer-goal-toggle","aria-expanded":e,"aria-controls":s,onClick:a,children:[n.jsx("span",{children:t.actionLabel}),n.jsxs("span",{className:"composer-goal-toggle-meta",children:[r?n.jsx("span",{className:"composer-goal-subagent-count",children:r.label}):null,n.jsx("span",{children:t.timeLabel}),n.jsx(zt,{size:15,"aria-hidden":"true"})]})]})}),e&&n.jsxs("div",{className:"composer-goal-objective",id:s,children:[t.objective,r?n.jsx("span",{className:"composer-goal-subagent-summary",children:r.tooltip}):null]})]})}function hd({drafts:e,sendingDraftId:t,onDeleteDraft:s,onEditDraft:r,onSteerDraft:a}){return e.length===0?null:n.jsx("div",{className:"composer-steer-stack","aria-label":"Steer drafts",children:e.map(i=>{const o=t===i.id,l=ks(i.prompt);return n.jsxs("div",{className:`composer-steer-row ${o?"sending":""}`,children:[n.jsx("span",{className:"composer-steer-row-icon","aria-hidden":"true",children:n.jsx(nu,{size:13})}),n.jsx("span",{className:"composer-steer-row-text",title:i.prompt,children:l}),n.jsxs("button",{type:"button",className:"composer-steer-row-action primary",disabled:o,"aria-label":`Steer: ${ks(i.prompt,60)}`,onClick:()=>a(i.id),children:[n.jsx(yr,{size:12}),n.jsx("span",{children:o?"Sending":"Steer"})]}),n.jsx("button",{type:"button",className:"composer-steer-row-icon-button",disabled:o,"data-tooltip":"Delete steer draft","aria-label":"Delete steer draft",onClick:()=>s(i.id),children:n.jsx(Xo,{size:13})}),n.jsx("button",{type:"button",className:"composer-steer-row-action",disabled:o,"aria-label":`Edit: ${ks(i.prompt,60)}`,onClick:()=>r(i),children:n.jsx("span",{children:"Edit"})})]},i.id)})})}const md=/\b(?:https?:\/\/)?(?:github\.com|(?:[a-z0-9-]+\.)*openpond\.ai)\/[^\s<>"'`]+/gi,pd=/\b(?:git@)?(?:github\.com|(?:[a-z0-9-]+\.)*openpond\.ai):[^\s<>"'`]+/gi,gd=new Set(["about","apps","collections","codespaces","contact","customer-stories","enterprise","events","explore","features","issues","login","marketplace","mobile","new","notifications","orgs","organizations","pricing","pulls","readme","search","settings","sponsors","team","topics","trending"]),xd=new Set(["account","api","dashboard","docs","install.sh","login","logout","opchat","sandboxes","settings"]);function bd(e){const t=e.toLowerCase().replace(/^www\./,"");return t==="github.com"?"github":t==="openpond.ai"||t.endsWith(".openpond.ai")?"openpond":null}function vd(e){return e==="github"?gd:xd}function to(e){let t=e;for(;/[.,;!?]$/.test(t);)t=t.slice(0,-1);for(;yd(t);)t=t.slice(0,-1);return t}function yd(e){const t=e.at(-1);if(!t||!")]}".includes(t))return!1;const s=t===")"?"(":t==="]"?"[":"{";let r=0;for(const a of e)a===s&&(r+=1),a===t&&(r-=1);return r<0}function jd(e){return e.replace(/\.git$/i,"")}function no(e){try{return decodeURIComponent(e)}catch{return e}}function kd(e){return jd(no(e.trim()))}function so(e){const t=e.host.toLowerCase().replace(/^www\./,""),s=bd(t);if(!s)return null;const r=no(e.owner?.trim()??""),a=kd(e.repo??"");return!r||!a||vd(s).has(r.toLowerCase())?null:{end:e.end,host:t,label:`${r}/${a}`,provider:s,repo:a,start:e.start,url:e.url,owner:r}}function wd(e,t){const s=to(e);if(!s)return null;try{const r=new URL(/^https?:\/\//i.test(s)?s:`https://${s}`),a=r.pathname.split("/").filter(Boolean);return so({end:t+s.length,host:r.hostname,owner:a[0],repo:a[1],start:t,url:s})}catch{return null}}function Sd(e,t){const s=to(e),r=/^(?:git@)?([^:]+):(.+)$/i.exec(s);if(!r)return null;const a=r[1]?.trim()??"",i=(r[2]??"").split("/").filter(Boolean);return so({end:t+s.length,host:a,owner:i[0],repo:i[1],start:t,url:s})}function Ga(e,t,s){const r=[];t.lastIndex=0;let a;for(;a=t.exec(e);){const i=a[0]??"",o=s(i,a.index);o&&r.push(o)}return r}function Cd(e){if(!e)return[];const t=[...Ga(e,md,wd),...Ga(e,pd,Sd)].sort((r,a)=>r.start-a.start||a.end-r.end),s=[];for(const r of t)s.some(a=>r.start<a.end&&r.end>a.start)||s.push(r);return s.sort((r,a)=>r.start-a.start)}const Nd=10,Md=340,Rd=320,Ed=160,Ad=56;function Lt(e,t=0){const s=Number.parseFloat(e);return Number.isFinite(s)?s:t}function Qr(e){if(!e)return;e.style.height="auto";const t=window.getComputedStyle(e),s=Lt(t.fontSize,16),r=Lt(t.lineHeight,s*1.45),a=Lt(t.paddingTop)+Lt(t.paddingBottom),i=Lt(t.borderTopWidth)+Lt(t.borderBottomWidth),o=Lt(t.minHeight,66),l=Math.max(o,Math.ceil(r*Nd+a+i)),u=Math.max(o,Math.min(e.scrollHeight,l));e.style.height=`${u}px`,e.style.overflowY=e.scrollHeight>l?"auto":"hidden"}function Xr(e,t){const s=e.getBoundingClientRect(),r=t.getBoundingClientRect(),a=window.getComputedStyle(e),i=Lt(a.paddingLeft,14),o=Lt(a.paddingTop,15),l=Math.max(0,r.width-16),u=Math.min(Md,l),f=s.left-r.left+i-8,p=Math.max(8,Math.min(f,r.width-u-8)),b=Math.max(8,s.top-r.top+o+2);return{left:p,top:b,width:u}}function Id(e){const t=e.getBoundingClientRect(),s=Math.floor(t.top-Ad);return{maxHeight:Math.max(Ed,Math.min(Rd,s))}}const Td="[data-inline-token='true']",$d="[data-inline-repo-link='true']",Pd="[data-inline-connected-app-mention='true']";function ws(e){return e instanceof HTMLElement&&e.matches(Td)}function Ss(e){return e instanceof HTMLElement&&e.matches($d)}function Cs(e){return e instanceof HTMLElement&&e.matches(Pd)}function kr(e,t){return Math.max(0,Math.min(e,t))}function Qn(e,t){return e?kr(e.position,t.length):null}function _d(e,t,s,r=!1){const a=Qn(t,s),i=kr(e,s.length);return a===null?i:i>a||r&&i===a?i+1:i}function Ka(e,t,s){const r=Qn(t,s);return kr(r===null?e:e>r?e-1:e,s.length)}function Jr(e){let t="",s=null;function r(a){if(Ss(a)){t+=a.dataset.repoUrl??"";return}if(Cs(a)){t+=a.dataset.connectedMentionText??"";return}if(ws(a)){s=t.length;return}if(a.nodeType===Node.TEXT_NODE){t+=a.textContent??"";return}a instanceof HTMLBRElement||a.childNodes.forEach(r)}return e.childNodes.forEach(r),{text:t,tokenPosition:s}}function pn(e){if(Ss(e))return e.dataset.repoUrl?.length??0;if(Cs(e))return e.dataset.connectedMentionText?.length??0;if(ws(e))return 1;if(e.nodeType===Node.TEXT_NODE)return e.textContent?.length??0;if(e instanceof HTMLBRElement)return 0;let t=0;return e.childNodes.forEach(s=>{t+=pn(s)}),t}function Qa(e,t,s){if(!t||t!==e&&!e.contains(t))return null;let r=0,a=!1;function i(o){if(!a){if((ws(o)||Ss(o)||Cs(o))&&(o===t||o.contains(t))){(o!==t||s>0)&&(r+=pn(o)),a=!0;return}if(ws(o)||Ss(o)||Cs(o)){r+=pn(o);return}if(o===t){if(o.nodeType===Node.TEXT_NODE)r+=s;else{const l=Array.from(o.childNodes).slice(0,s);for(const u of l)r+=pn(u)}a=!0;return}if(o.nodeType===Node.TEXT_NODE){r+=o.textContent?.length??0;return}o instanceof HTMLBRElement||o.childNodes.forEach(i)}}return i(e),a?r:null}function Yr(e){const t=window.getSelection();if(!t||t.rangeCount===0)return null;const s=Qa(e,t.anchorNode,t.anchorOffset),r=Qa(e,t.focusNode,t.focusOffset);return s===null||r===null?null:{anchor:s,focus:r}}function Xa(e,t){let s=Math.max(0,t);function r(o){const l=o.parentNode;return l?{node:l,offset:Array.prototype.indexOf.call(l.childNodes,o)}:{node:e,offset:0}}function a(o){const l=r(o);return{node:l.node,offset:l.offset+1}}function i(o){if(ws(o)||Ss(o)||Cs(o)){const l=pn(o);return s<=0?r(o):s<=l?a(o):(s-=l,null)}if(o.nodeType===Node.TEXT_NODE){const l=o.textContent?.length??0;return s<=l?{node:o,offset:s}:(s-=l,null)}if(o instanceof HTMLBRElement)return null;for(const l of o.childNodes){const u=i(l);if(u)return u}return null}return i(e)??{node:e,offset:e.childNodes.length}}function ro(e,t){const s=window.getSelection();if(!s)return;const r=Xa(e,t.anchor),a=Xa(e,t.focus);if(s.removeAllRanges(),typeof s.setBaseAndExtent=="function"){s.setBaseAndExtent(r.node,r.offset,a.node,a.offset);return}const i=document.createRange(),o=t.anchor<=t.focus,l=o?r:a,u=o?a:r;i.setStart(l.node,l.offset),i.setEnd(u.node,u.offset),s.addRange(i)}function Ld(e,t){ro(e,{anchor:t,focus:t})}function Ja(e){document.execCommand("insertText",!1,e)}function Od(e){return e==="plus"?'<svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M5 12h14"></path><path d="M12 5v14"></path></svg>':e==="bot"?'<svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M12 8V4H8"></path><rect width="16" height="12" x="4" y="8" rx="2"></rect><path d="M2 14h2"></path><path d="M20 14h2"></path><path d="M15 13v2"></path><path d="M9 13v2"></path></svg>':e==="skill"?'<svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M12 7v14"></path><path d="M3 18a1 1 0 0 1-1-1V5a2 2 0 0 1 2-2h5a3 3 0 0 1 3 3v15a3 3 0 0 0-3-3Z"></path><path d="M21 18a1 1 0 0 0 1-1V5a2 2 0 0 0-2-2h-5a3 3 0 0 0-3 3v15a3 3 0 0 1 3-3Z"></path></svg>':'<svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><rect width="8" height="8" x="3" y="3" rx="2"></rect><path d="M7 11v4a2 2 0 0 0 2 2h4"></path><rect width="8" height="8" x="13" y="13" rx="2"></rect></svg>'}function zd(){return'<svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="composer-invocation-clear" aria-hidden="true"><path d="M18 6 6 18"></path><path d="m6 6 12 12"></path></svg>'}function Ya(e){const t=document.createElement("span");t.className="composer-invocation-pill",t.contentEditable="false",t.dataset.inlineToken="true";const s=document.createElement("button");s.type="button",s.className="composer-invocation-remove",s.setAttribute("aria-label",`Remove ${e.label}`),s.addEventListener("mousedown",i=>i.preventDefault()),s.addEventListener("click",i=>{i.preventDefault(),e.onRemove()});const r=document.createElement("span");r.className="composer-invocation-icon",r.setAttribute("aria-hidden","true"),r.innerHTML=Od(e.icon),s.append(r),s.insertAdjacentHTML("beforeend",zd());const a=document.createElement("span");return a.className="composer-invocation-label",a.textContent=e.label,t.append(s,a),t}function Fd(e){return e.provider==="github"?pa("github"):vl}function Dd(e){const t=document.createElement("span");t.className=`composer-repo-link ${e.provider}`,t.contentEditable="false",t.dataset.inlineRepoLink="true",t.dataset.repoUrl=e.url,t.dataset.repoProvider=e.provider,t.setAttribute("aria-label",`${e.provider==="github"?"GitHub":"OpenPond"} repository ${e.label}`),t.title=e.url;const s=document.createElement("img");s.className="composer-repo-link-icon",s.src=Fd(e),s.alt="",s.draggable=!1;const r=document.createElement("span");return r.className="composer-repo-link-label",r.textContent=e.label,t.append(s,r),t}function Bd(e){return pa(e)}function Ud(e){const t=document.createElement("span");t.className=`composer-connected-app-mention ${e.provider}`,t.contentEditable="false",t.dataset.inlineConnectedAppMention="true",t.dataset.connectedMentionText=e.text,t.dataset.connectedMentionProvider=e.provider,t.setAttribute("aria-label",`${e.label} connected app mention ${e.displayText}`),t.title=e.detail;const s=document.createElement("img");s.className="composer-connected-app-mention-icon",s.src=Bd(e.provider),s.alt="",s.draggable=!1;const r=document.createElement("span");return r.className="composer-connected-app-mention-label",r.textContent=e.displayText,t.append(s,r),t}function qd(e,t){const s=Cd(e);return t===null?s:s.filter(r=>t<=r.start||t>=r.end)}function Hd(e,t,s){const r=bl(e,t);return s===null?r:r.filter(a=>s<=a.start||s>=a.end)}function ao(e,t,s){const r=[...qd(e,t).map(o=>({end:o.end,kind:"repo",link:o,start:o.start})),...Hd(e,s,t).map(o=>({end:o.end,kind:"connected-app",mention:o,start:o.start}))].sort((o,l)=>o.start-l.start||l.end-o.end),a=[];let i=0;for(const o of r)o.start<i||(a.push(o),i=o.end);return a}function Vd(e,t,s){return ao(e,t,s).map(r=>r.kind==="repo"?`${r.start}:${r.end}:repo:${r.link.provider}:${r.link.label}:${r.link.url}`:`${r.start}:${r.end}:connected-app:${r.mention.provider}:${r.mention.text}:${r.mention.displayText}`).join("|")}function Wd(e,t,s,r){const a=Qn(s,t),i=ao(t,a,r);let o=!1;function l(p){p&&e.append(document.createTextNode(p))}function u(p,b){if(!s||a===null||o||a<p||a>b){l(t.slice(p,b));return}l(t.slice(p,a)),e.append(Ya(s)),o=!0,l(t.slice(a,b))}e.replaceChildren();let f=0;for(const p of i)u(f,p.start),p.kind==="repo"?e.append(Dd(p.link)):e.append(Ud(p.mention)),f=p.end;u(f,t.length),s&&!o&&e.append(Ya(s))}const Gd=c.forwardRef(function({connectedAppMentions:t=[],disabled:s,onCursorChange:r,onKeyDown:a,onPasteFiles:i,onPasteTextAsAttachment:o,onPromptChange:l,onTokenPositionChange:u,placeholder:f,prompt:p,token:b},m){const h=c.useRef(null),g=`${b?`${b.key}:${Qn(b,p)??0}`:"none"}|${Vd(p,Qn(b,p),t)}`,y=c.useRef(null),k=p.length===0&&!b;c.useImperativeHandle(m,()=>({get element(){return h.current},getPrompt(){const S=h.current;return S?Jr(S).text:p},focusAtPromptIndex(S,R){const A=h.current;if(!A)return;const $=_d(S,b,p,R?.afterToken);A.focus(),Ld(A,$),Qr(A)},resize(){Qr(h.current)}}),[p,b]),c.useLayoutEffect(()=>{const S=h.current;if(!S)return;const R=y.current!==g;y.current=g;const A=Jr(S);if(R||p===""||A.text!==p||A.tokenPosition!==Qn(b,p)){const D=document.activeElement===S?Yr(S):null;Wd(S,p,b,t),S.dataset.empty=p.length===0&&!b?"true":"false",D&&ro(S,D)}Qr(S)},[t,p,b,g]);function w(){const S=h.current;if(!S)return;const R=Yr(S)?.focus??pn(S),A=Jr(S),$=Ka(R,b,A.text);S.dataset.empty=A.text.length===0&&!b?"true":"false",u(A.tokenPosition),r($),l(A.text,$)}function j(){w(),window.requestAnimationFrame(w)}function E(){const S=h.current;if(!S)return;const R=Yr(S)?.focus??pn(S);r(Ka(R,b,p))}return n.jsx("div",{ref:h,className:"composer-inline-input",role:"textbox","aria-multiline":"true",contentEditable:!s,suppressContentEditableWarning:!0,"data-empty":k?"true":"false","data-placeholder":f,onBeforeInput:S=>{S.nativeEvent.inputType==="insertParagraph"&&(S.preventDefault(),Ja(`
|
|
3
|
+
`),j())},onInput:w,onKeyDown:S=>{a(S)},onKeyUp:E,onMouseUp:E,onPaste:S=>{S.preventDefault();const R=Array.from(S.clipboardData.files);if(R.length>0&&i){i(R);return}const A=S.clipboardData.getData("text/plain");A&&(o?.(A)||(Ja(A),j()))}})});function Kd(e){if(!e.saving){if(!e.prompt.trim()){e.showInfo("Add task instructions before saving a draft.");return}if(e.attachmentsCount>0){e.showInfo("Task drafts currently save instructions only. Remove attachments before saving.");return}if(e.hasSelectedInvocation){e.showInfo("Finish or remove the selected command before saving this task draft.");return}e.setSaving(!0),e.onSave(e.prompt).then(t=>{t&&e.onSaved()}).finally(()=>e.setSaving(!1))}}function Qd(e,t,s,r,a,i,o){return e==="Enter"&&(t||s)&&!r&&a==="work"&&i==="chat"&&o}function Xd(e){return e.surface==="team"?"Message team":e.mode!=="start"?"Ask for follow-up changes":e.experience==="chat"?"Ask anything":"What should we work on? Ctrl Enter to save as draft"}function Za(e){const t=e.implementation?.type;return t==="openpond-agent"||t==="local-profile-agent"||t==="openpond-profile-action"&&(e.sourceActionId==="chat"||e.id==="chat"||e.id.endsWith(".chat"))}function Jd(e){return e.kind==="command"?`command:${e.command.id}`:e.kind==="app-context"?`app-context:${e.app.id}`:e.kind==="skill"?`skill:${e.skill.name}`:`action:${e.action.id}`}function Yd(e){return e.kind==="command"?`${e.command.command} ${e.command.label}`:e.kind==="app-context"?e.app.name:e.kind==="skill"?Mr(e.skill):ga(e.action)}function Zd(e){return e.kind==="command"?kl(e.command):e.kind==="app-context"?`Planning context${e.app.description?`: ${e.app.description}`:e.app.gitRepo?`: ${e.app.gitRepo}`:""}`:e.kind==="skill"?e.skill.description||e.skill.path:e.action.description||wl(e.action)}function ef(e){return e.kind==="app"?`app:${e.app.id}`:e.kind==="connected-app"?`connected-app:${e.app.provider}`:e.kind==="team-member"?`team-member:${e.member.userId}`:e.kind==="skill"?`skill:${e.skill.name}`:`action:${e.action.id}`}function tf(e){return e.kind==="app"?e.app.name:e.kind==="connected-app"?e.app.label:e.kind==="team-member"?e.member.name:e.kind==="skill"?Mr(e.skill):jl(e.action)}function nf(e){if(e.kind==="action")return Sl(e.action);if(e.kind==="connected-app")return e.app.detail;if(e.kind==="team-member")return e.member.handle?`@${e.member.handle}`:"Team member";if(e.kind==="skill")return e.skill.description||e.skill.path;const t=e.app.sandboxActionRegistry?.actions.map(s=>s.name)??[];return t.length>0?`Actions: ${t.slice(0,4).join(", ")}${t.length>4?` +${t.length-4}`:""}`:e.app.sandboxManifestError?"Manifest registry unavailable":e.app.description||e.app.gitRepo||e.app.id}function sf(e){return e.kind==="files"?"files":e.kind==="folder"?"folder":e.kind==="slash"?`slash:${Jd(e.item)}`:`mention:${ef(e.item)}`}function io(e){return e.kind==="files"?"Files and folders":e.kind==="folder"?"Local folder":e.kind==="slash"?Yd(e.item):tf(e.item)}function oo(e){return e.kind==="files"?"Attach images, documents, or other files":e.kind==="folder"?"Share a bounded folder as Work input":e.kind==="slash"?Zd(e.item):nf(e.item)}function rf(e,t){const s=t.toLowerCase().split(/\s+/).filter(Boolean);if(s.length===0)return!0;const r=`${io(e)} ${oo(e)}`.toLowerCase();return s.every(a=>r.includes(a))}function af(e,t){const s=t.trimStart(),r=s.startsWith("/")?"slash":s.startsWith("@")?"mentions":null,a=r?s.slice(1).trimStart():s,i=r?e.filter(u=>u.id===r||u.queryScope===r||u.queryScopes?.includes(r)):e;if(!a)return i;const o=i.map(u=>({...u,items:u.items.filter(f=>rf(f,a))})).filter(u=>u.items.length>0);return o.length>0?o:[{...(r?i[0]:null)??{id:"results",label:"Results"},emptyLabel:r==="slash"?"No slash commands match":r==="mentions"?"No mentions match":"No commands match",items:[]}]}function of(e){if(e.kind==="files")return n.jsx(Oa,{size:14});if(e.kind==="folder")return n.jsx(Oa,{size:14});if(e.kind==="slash"){const s=e.item;return s.kind==="command"?s.command.id==="agent"?n.jsx(ys,{size:14}):s.command.id==="skill"?n.jsx(yl,{size:14}):n.jsx(dr,{size:14}):s.kind==="app-context"?n.jsx(La,{size:14}):s.kind==="skill"?n.jsx(bt,{size:14}):Za(s.action)?n.jsx(ys,{size:14}):n.jsx(dr,{size:14})}const t=e.item;return t.kind==="connected-app"?n.jsx("img",{alt:"",className:"composer-provider-mention-icon",draggable:!1,src:pa(t.app.provider)}):t.kind==="action"?Za(t.action)?n.jsx(ys,{size:14}):n.jsx(dr,{size:14}):t.kind==="skill"?n.jsx(bt,{size:14}):n.jsx(La,{size:14})}function lf(e){if(e.kind==="slash"&&e.item.kind==="app-context"||e.kind==="mention"&&e.item.kind==="app")return e.item.app.id}function ya({ariaLabel:e,className:t="",id:s,menuIndex:r,menuRef:a,onSelect:i,onSelectIndex:o,sections:l,style:u,variant:f}){const p=c.useRef(null),b=l.reduce((h,x)=>h+x.items.length,0);c.useEffect(()=>{if(f==="add"&&r===0){const h=p.current?.closest(".composer-command-menu");h&&(h.scrollTop=0);return}p.current?.scrollIntoView({block:"nearest"})},[b,r,f]);let m=0;return n.jsx("div",{ref:a,id:s,className:`composer-project-menu composer-slash-menu ${t} composer-command-menu composer-command-menu-${f}`.trim(),role:f==="add"?"menu":"listbox","aria-label":e,style:u,children:l.map(h=>{const x=m;return m+=h.items.length,n.jsxs("div",{className:`composer-command-section ${h.grid?"composer-command-section-grid":""}`.trim(),role:"group","aria-label":h.label,children:[n.jsx("div",{className:"composer-command-section-title",children:h.label}),h.items.length>0?h.items.map((g,y)=>{const k=x+y,w=k===r;return n.jsxs("button",{type:"button",role:f==="add"?"menuitem":"option",ref:w?p:void 0,"aria-selected":f==="typed"?w:void 0,className:`composer-project-option ${w?"selected":""} composer-command-option`,"data-app-context-id":lf(g),onFocus:()=>o(k),onMouseEnter:()=>o(k),onMouseDown:j=>{j.preventDefault()},onClick:()=>i(g),children:[of(g),n.jsxs("span",{children:[n.jsx("strong",{children:io(g)}),n.jsx("small",{children:oo(g)})]}),f==="typed"&&w?n.jsx(Ot,{size:14}):n.jsx("span",{"aria-hidden":"true"})]},sf(g))}):n.jsx("div",{className:"composer-menu-empty",children:h.emptyLabel??"No items available"})]},h.id)})})}function cf({mentionIndex:e,items:t,onSelect:s,onSelectIndex:r,style:a}){return n.jsx(ya,{ariaLabel:"Mentions",className:"composer-mention-menu",menuIndex:e,sections:[{emptyLabel:"No matching mentions",id:"mentions",items:t.map(i=>({kind:"mention",item:i})),label:"@"}],style:a,variant:"typed",onSelect:i=>{i.kind==="mention"&&s(i.item)},onSelectIndex:r})}const ei=new WeakMap,wr=new WeakMap,uf=3e4;function Rs(e,t){return JSON.stringify([e,t?.binaryPath??null,t?.sourceHome??null,t?.enabled??!0])}function lo(e,t,s){return wr.get(e)?.get(Rs(t,s))?.value??null}function co(e,t,s,r){let a=wr.get(e);a||(a=new Map,wr.set(e,a)),a.set(Rs(t,r),{value:s,refreshedAt:Date.now()})}function df(e,t,s){const r=Rs(t,s),a=wr.get(e)?.get(r);if(a&&Date.now()-a.refreshedAt<uf)return{promise:Promise.resolve(a.value),release(){}};let i=ei.get(e);i||(i=new Map,ei.set(e,i));let o=i.get(r);if(!o){const f=new AbortController;o={controller:f,readers:0,promise:Ie(e,`/v1/providers/${t}/native-setup`,{method:"POST",body:JSON.stringify({action:"capabilities"}),signal:f.signal})},i.set(r,o);const p=o,b=()=>{i.get(r)===p&&i.delete(r)};o.promise.then(m=>{i.get(r)===p&&!f.signal.aborted&&!m.error&&m.session&&co(e,t,m,s),b()},b)}o.readers++;const l=o;let u=!1;return{promise:l.promise,release(){u||(u=!0,l.readers--,l.readers===0&&i.get(r)===l&&(i.delete(r),l.controller.abort()))}}}function ff({connection:e,provider:t,providerSettings:s,disabled:r,placement:a="top",onSettings:i,onSetup:o}){const l=s?.providers[t],[u,f]=c.useState(null),p=Rs(t,l),b=e?lo(e,t,l):null,m=u?.connection===e&&u.provider===t&&u.instance===p?u.value:b,[h,x]=c.useState(null),[g,y]=c.useState(!1),k=["opencode","grok-build","claude-code"].includes(t);if(c.useEffect(()=>{if(x(null),!e||!k)return;const E=df(e,t,l);let S=!0;return E.promise.then(R=>{S&&(R.error?x(R.error):(f({connection:e,provider:t,instance:p,value:R}),i({provider:t,settings:R.settings})))}).catch(R=>{S&&x(R.message)}),()=>{S=!1,E.release()}},[e,t,k,i,p]),!k||!e)return null;const w=l?.nativeMode??m?.session?.modes?.currentModeId??"";async function j(E){if(e){y(!0);try{const S=await Ie(e,"/v1/providers",{method:"PATCH",body:JSON.stringify({providers:{[t]:E}})});if(m){const R={...m,settings:S};co(e,t,R,l),f({connection:e,provider:t,instance:p,value:R})}i({provider:t,settings:S}),x(null)}catch(S){x(S instanceof Error?S.message:"Could not save agent settings.")}finally{y(!1)}}}return n.jsxs(n.Fragment,{children:[l&&!l.enabled?n.jsx("button",{type:"button",disabled:r||g,onClick:()=>{j({enabled:!0})},children:"Enable agent"}):null,m?.session?.modes?n.jsx(ia,{compact:!0,className:"permission-select",icon:n.jsx(Ti,{size:14}),placement:a,label:t==="claude-code"?"Claude permissions":"Agent mode",disabled:r||g,value:t==="claude-code"&&w==="default"?"manual":w,options:m.session.modes.availableModes.map(E=>({value:E.id,label:t==="claude-code"&&E.id==="manual"?"Ask":E.name,...t==="claude-code"?{description:E.id==="plan"?"Inspect and plan before making changes.":E.id==="bypassPermissions"?"Run tools and commands without permission prompts.":"Ask before actions that require permission."}:{}})),onChange:E=>{j({nativeMode:E})}}):null,m?.session?.configOptions?.filter(E=>E.type==="select"&&E.category!=="model"&&E.category!=="mode").map(E=>n.jsxs("label",{className:"composer-native-option",children:[n.jsx("span",{children:E.name}),n.jsx("select",{title:`Default ${E.name.toLowerCase()} for this agent installation`,disabled:r||g,value:l?.nativeOptions?.[E.id]??E.currentValue,onChange:S=>{j({nativeOptions:{...l?.nativeOptions,[E.id]:S.target.value}})},children:E.options?.flatMap(S=>"options"in S?S.options:[S]).map(S=>n.jsx("option",{value:S.value,children:S.name},S.value))})]},E.id)),h||m?.error?n.jsxs("span",{role:"status",title:h??m?.error??void 0,children:["Agent needs attention",o?n.jsx("button",{type:"button",onClick:o,children:"Open setup"}):null]}):null]})}function uo(){return!!(navigator.mediaDevices&&typeof AudioContext<"u")}async function hf(e={}){if(!uo())throw new Error("Voice recording is not available in this browser.");const t=await navigator.mediaDevices.getUserMedia({audio:{autoGainControl:!0,channelCount:1,echoCancellation:!0,noiseSuppression:!0}}),s=new AudioContext,r=s.createMediaStreamSource(t),a=s.createScriptProcessor(4096,1,1),i=s.createGain();i.gain.value=0;const o={audioContext:s,chunks:[],processor:a,silentGain:i,source:r,stream:t,startedAt:performance.now(),stopped:!1,onAudioLevel:e.onAudioLevel};return a.onaudioprocess=l=>{if(o.stopped)return;const u=l.inputBuffer.getChannelData(0);o.chunks.push(new Float32Array(u)),o.onAudioLevel?.(mf(u))},r.connect(a),a.connect(i),i.connect(s.destination),{stop:()=>ti(o,!0),cancel:()=>ti(o,!1).then(()=>{})}}function mf(e){if(e.length===0)return 0;let t=0;for(const r of e)t+=r*r;const s=Math.sqrt(t/e.length);return Math.min(1,Math.pow(s*5,.6))}async function ti(e,t){if(e.stopped)return{blob:new Blob([],{type:"audio/wav"}),durationMs:0,sampleRate:e.audioContext.sampleRate};e.stopped=!0,e.processor.disconnect(),e.silentGain.disconnect(),e.source.disconnect();for(const a of e.stream.getTracks())a.stop();await e.audioContext.close().catch(()=>{});const s=Math.max(0,performance.now()-e.startedAt);if(!t)return{blob:new Blob([],{type:"audio/wav"}),durationMs:s,sampleRate:e.audioContext.sampleRate};const r=pf(e.chunks);if(r.length===0)throw new Error("No microphone audio was captured.");return{blob:gf(r,e.audioContext.sampleRate),durationMs:s,sampleRate:e.audioContext.sampleRate}}function pf(e){const t=e.reduce((a,i)=>a+i.length,0),s=new Float32Array(t);let r=0;for(const a of e)s.set(a,r),r+=a.length;return s}function gf(e,t){const a=e.length*2,i=new ArrayBuffer(44+a),o=new DataView(i);lr(o,0,"RIFF"),o.setUint32(4,36+a,!0),lr(o,8,"WAVE"),lr(o,12,"fmt "),o.setUint32(16,16,!0),o.setUint16(20,1,!0),o.setUint16(22,1,!0),o.setUint32(24,t,!0),o.setUint32(28,t*1*2,!0),o.setUint16(32,2,!0),o.setUint16(34,16,!0),lr(o,36,"data"),o.setUint32(40,a,!0);let l=44;for(const u of e){const f=Math.max(-1,Math.min(1,u));o.setInt16(l,f<0?f*32768:f*32767,!0),l+=2}return new Blob([i],{type:"audio/wav"})}function lr(e,t,s){for(let r=0;r<s.length;r+=1)e.setUint8(t+r,s.charCodeAt(r))}const ua=96,fo=Array.from({length:ua},()=>0);function gs(){return[...fo]}function xf(e,t){return[...e.slice(-95),Math.max(0,Math.min(1,t))]}function bf({levels:e}){const t=c.useMemo(()=>e.length>=ua?e.slice(-ua):[...fo.slice(e.length),...e],[e]);return n.jsx("span",{className:"voice-recording-waveform",role:"img","aria-label":"Live microphone level",children:t.map((s,r)=>n.jsx("span",{className:"voice-recording-bar",style:{"--voice-level":s},"aria-hidden":"true"},r))})}const vf=12e4,ho="openpond.voice.setupNoticeAcknowledged",yf="Voice dictation runs locally with whisper.cpp. OpenPond uses a local whisper-cli binary and downloads the voice model on first use.";function ni({connection:e,buttonClassName:t,wrapperClassName:s="",disabled:r=!1,iconSize:a=16,language:i="en",onActiveChange:o,showToast:l,onTranscript:u,transcriptionChannelKey:f}){const p=c.useRef(null),b=c.useRef(null),m=c.useRef(e),h=c.useRef(r),x=c.useRef("idle"),g=c.useRef(!1),y=c.useRef(si());Cl(()=>{y.current=si()}),m.current=e,h.current=r;const[k,w]=c.useState("idle"),[j,E]=c.useState(null),[S,R]=c.useState(gs),A=c.useCallback(z=>Ku(f,z),[f]),$=c.useCallback(()=>Gu(f),[f]),D=c.useSyncExternalStore(A,$,$),U=D,K=k==="starting",ie=k==="recording",ke=ie||D,Z=K||ke;x.current=k;const we=c.useCallback(()=>{b.current!==null&&(window.clearTimeout(b.current),b.current=null)},[]),ve=c.useCallback(async()=>{we();const z=p.current;p.current=null,g.current=!1,w("idle"),R(gs()),z&&await z.cancel().catch(()=>{})},[we]),te=c.useCallback(async(z,P,le)=>{const ge=m.current;if(!ge)throw new Error("Voice input is still connecting.");const V=await Ue.voiceTranscriptionStatus(ge,{signal:P});if(!V.binaryPath)throw new Error(V.installHint??"Install whisper.cpp to use dictation.");const se=await Ue.transcribeVoice(ge,{audioBase64:await jf(z.blob),durationMs:Math.round(z.durationMs),language:i,mimeType:"audio/wav"},{signal:P});P.aborted||Promise.resolve(u(se.text,{submit:le()})).catch(O=>{l(Zr(O),"error")})},[i,u,l]),ye=c.useCallback(()=>{Xi(f),E(null),R(gs())},[f]),G=c.useCallback(async(z=!1)=>{we();const P=p.current;p.current=null,P&&(w("idle"),E(null),R(gs()),Ju(f,async(le,ge)=>{const V=await P.stop();le.aborted||await te(V,le,ge)},{submit:z}).catch(le=>{le instanceof DOMException&&le.name==="AbortError"||l(Zr(le),"error")}))},[we,l,te,f]),je=c.useCallback(async()=>{if(h.current)return;if(!m.current){E("Voice input is still connecting.");return}if(!uo()){E("Voice recording is not available in this browser.");return}E(null),w("starting");try{if(await window.openpond?.requestMicrophoneAccess?.()===!1)throw new Error("Microphone access is denied.");const le=await hf({onAudioLevel:ge=>{R(V=>xf(V,ge))}});if(p.current=le,R(gs()),w("recording"),g.current){g.current=!1,G(!0);return}b.current=window.setTimeout(()=>{G(!1)},vf)}catch(P){E(Zr(P)),await ve()}},[ve,G]),H=c.useCallback(()=>{if(y.current){je();return}l(yf,"info",{actionLabel:"Continue",persistent:!0,onAction:()=>{y.current=!0,kf(),je()}})},[je,l]);return c.useEffect(()=>Qu(f,()=>p.current?(G(!0),!0):x.current==="starting"?(g.current=!0,!0):!1),[G,f]),c.useEffect(()=>{o?.(Z)},[Z,o]),c.useEffect(()=>()=>o?.(!1),[o]),c.useEffect(()=>{if(!j||ie||U)return;const z=window.setTimeout(()=>E(null),7e3);return()=>window.clearTimeout(z)},[U,j,ie]),c.useEffect(()=>()=>{ve()},[ve]),n.jsxs("span",{className:`voice-input-control ${s} ${K?"starting":""} ${ie?"recording":""} ${D?"transcribing":""}`.trim(),children:[ke?n.jsxs("span",{className:"voice-recording-strip",children:[n.jsx("span",{className:"sr-only",role:"status",children:D?"Transcribing audio":"Recording voice"}),n.jsx("button",{type:"button",className:"voice-recording-action cancel","aria-label":D?"Cancel transcription":"Cancel dictation",onClick:()=>{D?ye():ve()},children:n.jsx(Ms,{size:15})}),D?n.jsxs(n.Fragment,{children:[n.jsxs("span",{className:"voice-transcribing-label","aria-hidden":"true",children:["Transcribing",n.jsxs("span",{className:"voice-transcribing-dots",children:[n.jsx("span",{children:"."}),n.jsx("span",{children:"."}),n.jsx("span",{children:"."})]})]}),n.jsx("span",{className:"voice-recording-action-spacer","aria-hidden":"true"})]}):n.jsxs(n.Fragment,{children:[n.jsx(bf,{levels:S}),n.jsx("button",{type:"button",className:"voice-recording-action stop","aria-label":"Stop and transcribe",onClick:()=>{G(!1)},children:n.jsx(Fi,{size:10,fill:"currentColor"})})]})]}):n.jsx("button",{type:"button",className:`voice-input-trigger ${t} ${K?"starting":""}`.trim(),"aria-label":K?"Starting dictation":"Dictate",disabled:r||U||K,onClick:H,children:n.jsx(Jc,{size:a})}),j&&!ke?n.jsx("span",{className:"voice-input-status",role:"status",children:j}):null]})}async function jf(e){const t=new Uint8Array(await e.arrayBuffer());let s="";for(let r=0;r<t.length;r+=32768){const a=t.subarray(r,r+32768);s+=String.fromCharCode(...a)}return window.btoa(s)}function Zr(e){const t=e instanceof Error?e.message:String(e);return/NotAllowedError|Permission denied|denied/i.test(t)?"Microphone access is denied.":/NotFoundError|Requested device not found/i.test(t)?"No microphone was found.":t||"Voice input failed."}function si(){if(typeof window>"u")return!1;try{return $i.getItem(ho)==="true"}catch{return!1}}function kf(){if(!(typeof window>"u"))try{$i.setItem(ho,"true")}catch{}}const wf=new Set(["codex","openai","xai","openrouter","deepseek","zai","moonshot","together","groq","custom-openai-compatible","setup-provider"]);function Sf({surface:e="chat",teamUseModel:t=!1,teamUseModelLocked:s=!1,onTeamUseModelChange:r,addFiles:a,addMenuId:i,addMenuOpen:o,addMenuRef:l,busy:u,codexPermissionMode:f,codexReasoningEffort:p,connection:b,contextStatusStyle:m,contextStatusTooltipId:h,contextWindowStatus:x,disabled:g,dropdownPlacement:y,fileInputRef:k,modelValue:w,modelOptions:j=[],hideModelControls:E=!1,openPondCommandAccessMode:S,showCommandAccess:R=!0,profileTarget:A,onCodexPermissionModeChange:$,onCodexReasoningEffortChange:D,onOpenPondCommandAccessModeChange:U,onProfileTargetChange:K,onModelChange:ie,onOpenFilePicker:ke,onProviderChange:Z,onProviderSetupOpen:we,onSend:ve,onStop:te,onToggleAddMenu:ye,onTranscript:G,voiceInputChannelKey:je,provider:H,providerSettings:z,providerOptions:P,running:le,sendDisabled:ge,sendTooltip:V,showToast:se,stopIcon:O="stop",stopLabel:Q="Stop response"}){const B=Rs(H,z?.providers[H]),[de,Se]=c.useState(null),nt=b?lo(b,H,z?.providers[H]):null,he=de?.connection===b&&de.provider===H&&de.instance===B?de.settings:nt?.settings??null,oe=c.useMemo(()=>he?z?{...z,providers:{...z.providers,[H]:he.providers[H]},statuses:{...z.statuses,[H]:he.statuses[H]},modelCaches:{...z.modelCaches,[H]:he.modelCaches[H]}}:he:z,[z,he,H]),C=c.useCallback(I=>{b&&Se({connection:b,provider:I.provider,instance:B,settings:I.settings})},[b,B]),T=["claude-code","opencode","grok-build"].includes(H),q=w||Ii(H,oe),[W,Y]=c.useState(!1),Ce=Nl(H,q,oe),xe=c.useMemo(()=>id({currentModelOptions:he?ma(H,oe):j,currentProvider:H,providerOptions:P,providerSettings:oe}),[j,H,P,oe,he]),He=c.useMemo(()=>xe.filter(I=>wf.has(I.provider)),[xe]),M=(I,me)=>{if(D(Ml(I,me,oe)),I===H){ie(me);return}ie(me),Z(I)};return e==="team"?n.jsxs("div",{className:`composer-primary-controls team-chat-composer-controls ${le?"has-running-turn":""}`.trim(),children:[n.jsx("button",{type:"button",className:"composer-icon","aria-label":"Add photos and files",disabled:g,onClick:ke,children:n.jsx(vr,{size:18})}),n.jsx("input",{ref:k,className:"composer-file-input",type:"file",multiple:!0,tabIndex:-1,onChange:I=>{a(Array.from(I.currentTarget.files??[])),I.currentTarget.value=""}}),n.jsxs("label",{className:"team-chat-model-toggle",children:[n.jsx("input",{type:"checkbox",checked:t,disabled:u||s,onChange:I=>r?.(I.currentTarget.checked)}),n.jsx("span",{children:"Use model"})]}),n.jsx("div",{className:"composer-spacer"}),t?n.jsx(Wa,{disabled:u,model:q,modelGroups:He,placement:y,provider:H,providerSettings:oe,reasoningEffort:p,showReasoning:Ce,onModelSelectionChange:M,onReasoningEffortChange:D}):null,n.jsx(ni,{buttonClassName:"composer-icon",connection:b,disabled:g,iconSize:16,wrapperClassName:"composer-voice-input",onActiveChange:Y,showToast:se,onTranscript:G,transcriptionChannelKey:je}),n.jsx(ri,{running:le,sendDisabled:ge,sendTooltip:V,stopIcon:O,stopLabel:Q,voiceInputActive:W,onSend:ve,onStop:te})]}):n.jsxs("div",{className:`composer-primary-controls ${le?"has-running-turn":""}`.trim(),children:[n.jsxs("div",{className:"composer-add-control open-up",ref:l,children:[n.jsx("button",{type:"button",className:`composer-icon ${o?"active":""}`,"aria-label":"Add to message","aria-haspopup":"menu","aria-expanded":o,"aria-controls":o?i:void 0,disabled:g,onMouseDown:I=>I.preventDefault(),onClick:ye,children:n.jsx(vr,{size:18})}),n.jsx("input",{ref:k,className:"composer-file-input",type:"file",multiple:!0,tabIndex:-1,onChange:I=>{a(Array.from(I.currentTarget.files??[])),I.currentTarget.value=""}})]}),!E&&T?n.jsx(ff,{connection:b,provider:H,providerSettings:oe,placement:y,onSettings:C,onSetup:we,disabled:u||g}):null,R&&H==="codex"?n.jsx(ia,{compact:!0,className:"permission-select",icon:n.jsx(Ti,{size:14}),placement:y,label:"Codex permissions",tooltip:Aa.find(I=>I.value===f)?.label,value:f,options:Aa,disabled:u,onChange:I=>$(I)}):R&&!T?n.jsx(ia,{compact:!0,className:"permission-select",icon:n.jsx(xa,{size:14}),placement:y,label:"Command access",tooltip:Ia.find(I=>I.value===(S==="disabled"?"ask":S))?.label,value:S==="disabled"?"ask":S,options:Ia,disabled:u,onChange:I=>U(I)}):null,A&&K?n.jsx(eo,{busy:u,placement:y,state:A,onChange:K}):null,n.jsx("div",{className:"composer-spacer"}),!E&&n.jsxs("span",{className:`context-status-shell ${x.tone}`,style:m,children:[n.jsx("span",{className:`composer-status ${x.tone}`,role:x.maxTokens===null?"img":"meter","aria-label":x.tooltip,"aria-describedby":h,"aria-valuemin":x.maxTokens===null?void 0:0,"aria-valuemax":x.maxTokens??void 0,"aria-valuenow":x.maxTokens===null?void 0:x.usedTokens,tabIndex:0}),n.jsxs("span",{className:"context-status-tooltip",id:h,role:"tooltip",children:[n.jsx("span",{className:"context-status-tooltip-title",children:"Context window"}),n.jsxs("span",{className:"context-status-tooltip-main",children:[n.jsx("span",{children:x.summary}),n.jsx("span",{children:x.tokensLabel})]}),x.maxTokens!==null&&n.jsx("span",{className:"context-status-tooltip-bar","aria-hidden":"true",children:n.jsx("span",{})}),x.detail?n.jsx("span",{className:"context-status-tooltip-detail",children:x.detail}):null]})]}),!E&&n.jsx(Wa,{disabled:u,model:q,modelGroups:xe,placement:y,provider:H,providerSettings:oe,reasoningEffort:p,showReasoning:Ce,onModelSelectionChange:M,onReasoningEffortChange:D}),n.jsx(ni,{buttonClassName:"composer-icon",connection:b,disabled:g,iconSize:16,wrapperClassName:"composer-voice-input",onActiveChange:Y,showToast:se,onTranscript:G,transcriptionChannelKey:je}),n.jsx(ri,{running:le,sendDisabled:ge,sendTooltip:V,stopIcon:O,stopLabel:Q,voiceInputActive:W,onSend:ve,onStop:te})]})}function ri({running:e,sendDisabled:t,sendTooltip:s,stopIcon:r,stopLabel:a,voiceInputActive:i,onSend:o,onStop:l}){const u=e?a:s;return n.jsx("button",{type:"button",className:`send-button ${e?"stop-button":""}`.trim(),disabled:!e&&t&&!i,"data-tooltip":u,"aria-label":u,onClick:e?()=>{l()}:o,children:e?r==="pause"?n.jsx(Jo,{size:15}):n.jsx(Fi,{size:13,fill:"currentColor"}):n.jsx(Tc,{size:18})})}function Cf(e){return e.description||e.path}function Nf({items:e,onSelect:t,onSelectIndex:s,skillIndex:r,style:a}){const i=c.useRef(null);return c.useEffect(()=>{i.current?.scrollIntoView({block:"nearest"})},[e.length,r]),n.jsx("div",{className:"composer-project-menu composer-slash-menu composer-skill-menu",role:"listbox","aria-label":"Available skills",style:a,children:e.length>0?e.map((o,l)=>{const u=l===r;return n.jsxs("button",{type:"button",className:`composer-project-option ${u?"selected":""}`,ref:u?i:void 0,role:"option","aria-selected":u,onMouseEnter:()=>s(l),onMouseDown:f=>{f.preventDefault(),t(o)},children:[n.jsx(bt,{size:14}),n.jsxs("span",{children:[n.jsx("strong",{children:Mr(o)}),n.jsx("small",{children:Cf(o)})]}),u?n.jsx(Ot,{size:14}):n.jsx("span",{"aria-hidden":"true"})]},o.name)}):n.jsx("div",{className:"composer-menu-empty",role:"option","aria-selected":"false",children:"No matching skills"})})}function Mf({actionCatalogCount:e,actionIndex:t,items:s,onSelect:r,onSelectIndex:a,style:i}){return n.jsx(ya,{ariaLabel:"OpenPond agents and actions",menuIndex:t,sections:[{emptyLabel:e===0?"No matching commands or apps":"No matching commands, apps, agents, or actions",id:"slash",items:s.map(o=>({kind:"slash",item:o})),label:"/"}],style:i,variant:"typed",onSelect:o=>{o.kind==="slash"&&r(o.item)},onSelectIndex:a})}function Rf({busy:e,initialDescription:t,open:s,onClose:r,onSubmit:a}){const[i,o]=c.useState(""),[l,u]=c.useState(()=>t.trim()),f=i.trim(),p=l.trim(),b=e||!f||!p;if(c.useEffect(()=>{s&&(o(""),u(t.trim()))},[t,s]),c.useEffect(()=>{if(!s||e)return;function h(x){x.key==="Escape"&&r()}return document.addEventListener("keydown",h),()=>document.removeEventListener("keydown",h)},[e,r,s]),!s)return null;async function m(){if(b)return;await a({title:f,description:p})&&(o(""),u(""))}return n.jsx("div",{className:"git-dialog-backdrop",role:"presentation",onMouseDown:e?void 0:r,children:n.jsxs("section",{className:"git-dialog submit-issue-dialog",role:"dialog","aria-modal":"true","aria-label":"Submit GitHub issue",onMouseDown:h=>h.stopPropagation(),onKeyDown:h=>{h.key!=="Enter"||!(h.target instanceof HTMLInputElement)||(h.preventDefault(),m())},children:[n.jsx("button",{className:"git-dialog-close",disabled:e,type:"button",onClick:r,children:n.jsx(Ms,{size:16})}),n.jsx("div",{className:"git-dialog-icon",children:n.jsx(Rl,{size:18})}),n.jsx("h2",{children:"Submit issue"}),n.jsxs("div",{className:"git-dialog-row submit-issue-repo-row",children:[n.jsx("span",{children:"Repository"}),n.jsx("strong",{children:El})]}),n.jsxs("label",{className:"git-dialog-field",children:[n.jsx("span",{children:"Title"}),n.jsx("input",{autoFocus:!0,disabled:e,placeholder:"Short issue title",value:i,onChange:h=>o(h.target.value)})]}),n.jsxs("label",{className:"git-dialog-field",children:[n.jsx("span",{children:"Description"}),n.jsx("textarea",{disabled:e,placeholder:"What happened, what you expected, and any useful context",value:l,onChange:h=>u(h.target.value)})]}),n.jsxs("div",{className:"git-dialog-footer",children:[n.jsx("button",{className:"git-dialog-secondary",disabled:e,type:"button",onClick:r,children:"Cancel"}),n.jsx("button",{className:"git-dialog-primary",disabled:b,type:"button",onClick:()=>{m()},children:"Submit issue"})]})]})})}const Ef=new Set(["c","cc","cpp","css","go","h","html","java","js","json","jsx","mdx","php","py","rb","rs","sh","sql","toml","ts","tsx","xml","yaml","yml"]),Af=new Set(["csv","ods","tsv","xls","xlsm","xlsx"]),If=new Set(["7z","bz2","gz","rar","tar","tgz","xz","zip"]),Tf=new Set(["doc","docx","epub","md","odt","pdf","rtf","txt"]),$f=new Set(["key","odp","ppt","pptx"]);function mo(e){const t=e.mediaType.toLowerCase(),s=e.name.split(".").pop()?.toLowerCase()??"";return e.kind==="image"||t.startsWith("image/")?"image":t.startsWith("audio/")?"audio":t.startsWith("video/")?"video":Af.has(s)||t.includes("spreadsheet")||t.includes("excel")?"spreadsheet":If.has(s)||t.includes("zip")||t.includes("compressed")?"archive":$f.has(s)||t.includes("presentation")||t.includes("powerpoint")?"presentation":Ef.has(s)?"code":e.kind==="text"||Tf.has(s)||t.startsWith("text/")||t==="application/pdf"||t.includes("document")||t.includes("msword")?"document":"file"}function Pf(e){if(e.mediaType.toLowerCase()==="application/pdf")return"PDF";const t=mo(e);return t==="spreadsheet"?"Spreadsheet":t.charAt(0).toUpperCase()+t.slice(1)}function po(e){return`${e.toLocaleString()} ${e===1?"line":"lines"}`}const _f={archive:el,audio:qc,code:Zo,document:bt,file:Yo,image:Nr,presentation:eu,spreadsheet:Vc,video:Gc};function go({attachment:e,...t}){const s=_f[mo(e)];return n.jsx(s,{...t})}const Lf=new Set(["csv","css","html","js","json","jsx","log","md","mdx","py","sql","svg","ts","tsx","txt","xml","yaml","yml"]),Of=2e3,zf=/^Pasted text(?: (\d+))?\.txt$/;function Ff(e,t){if(e.length<Of)return null;const s=new Set;for(const i of t){const o=zf.exec(i.name);o&&s.add(o[1]?Number(o[1]):1)}let r=1;for(;s.has(r);)r+=1;const a=r===1?"Pasted text.txt":`Pasted text ${r}.txt`;return new File([e],a,{type:"text/plain"})}function Df({attachment:e,onRemove:t}){const[s,r]=c.useState(null);c.useEffect(()=>{if(e.kind!=="text")return;let i=!1;return e.file.text().then(o=>{i||r(Bi(o))},()=>{}),()=>{i=!0}},[e.file,e.kind]);const a=e.kind!=="image";return n.jsxs("div",{className:`composer-attachment-card ${e.kind}`,children:[n.jsx("div",{className:"composer-attachment-thumb","aria-hidden":"true",children:e.previewUrl?n.jsx("img",{alt:"",decoding:"async",src:e.previewUrl}):n.jsx(go,{attachment:e,size:22})}),a?n.jsxs("div",{className:"composer-attachment-meta",children:[n.jsx("strong",{children:e.name}),n.jsx("span",{children:e.kind==="text"&&s!==null?po(s):Pf(e)})]}):null,n.jsx("button",{type:"button",className:"composer-attachment-remove","aria-label":`Remove ${e.name}`,onClick:t,children:n.jsx(Ms,{size:14})})]})}function Bf(){return globalThis.crypto?.randomUUID?.()??`attachment-${Date.now()}-${Math.random().toString(36).slice(2)}`}function Uf(e){if(e.type.startsWith("image/"))return"image";if(e.type.startsWith("text/"))return"text";const t=e.name.split(".").pop()?.toLowerCase()??"";return Lf.has(t)?"text":"file"}async function qf(e){const[t,s]=await Promise.all([Vf(e.file),e.kind==="text"?Wf(e.file):Promise.resolve(void 0)]);return{id:e.id,name:e.name,mediaType:e.mediaType,sizeBytes:e.sizeBytes,kind:e.kind,...s!==void 0?{lineCount:Bi(s)}:{},...e.relativePath?{relativePath:e.relativePath}:{},contentsBase64:t,...s?{text:Gf(s)}:{}}}function Hf(e){const t=["KB","MB","GB"];let s=e/1024;for(const r of t){if(s<1024)return`${s.toFixed(s>=10?0:1)} ${r}`;s/=1024}return`${s.toFixed(0)} TB`}function Vf(e){return new Promise((t,s)=>{const r=new FileReader;r.onload=()=>{const a=typeof r.result=="string"?r.result:"",[,i=""]=a.split(",",2);t(i)},r.onerror=()=>s(r.error??new Error("Failed to read file")),r.readAsDataURL(e)})}function Wf(e){return new Promise((t,s)=>{const r=new FileReader;r.onload=()=>t(typeof r.result=="string"?r.result:""),r.onerror=()=>s(r.error??new Error("Failed to read file")),r.readAsText(e)})}function Gf(e){if(e.length<=Gt.maxTextChars)return e;const t=`
|
|
4
|
+
[attachment text truncated]`;return`${e.slice(0,Math.max(0,Gt.maxTextChars-t.length))}${t}`}function Kf(){const e=c.useRef([]),t=c.useRef([]),s=c.useRef(!1),[r,a]=c.useState([]),[i,o]=c.useState(null);c.useEffect(()=>{e.current=r},[r]),c.useEffect(()=>()=>{s.current=!0;for(const m of e.current)xs(m);for(const m of t.current)xs(m)},[]);const l=c.useCallback(m=>{if(m.length===0)return;const h=Math.max(0,Gt.maxAttachments-r.length),x=[];let g=0,y=0;for(const k of m){if(k.size>Gt.maxAttachmentBytes){g+=1;continue}if(x.length>=h){y+=1;continue}const w="webkitRelativePath"in k&&typeof k.webkitRelativePath=="string"&&k.webkitRelativePath.trim()?k.webkitRelativePath.trim():void 0;x.push({id:Bf(),file:k,name:k.name||"Untitled file",mediaType:k.type||"application/octet-stream",sizeBytes:k.size,kind:Uf(k),...w?{relativePath:w}:{},...k.type.startsWith("image/")?{previewUrl:URL.createObjectURL(k)}:{}})}if(x.length>0&&(a([...r,...x]),o(null)),g>0||y>0){const k=[];g>0&&k.push(`${g} file${g===1?"":"s"} exceeded ${Hf(Gt.maxAttachmentBytes)}`),y>0&&k.push(`maximum ${Gt.maxAttachments} attachments`),o(k.join("; "))}},[r]),u=c.useCallback(m=>{a(h=>{const x=h.find(y=>y.id===m);x&&xs(x);const g=h.filter(y=>y.id!==m);return g.length===0&&o(null),g})},[]),f=c.useCallback(()=>{for(const m of e.current)xs(m);e.current=[],a([]),o(null)},[]),p=c.useCallback(()=>{const m=e.current;return m.length===0||(e.current=[],t.current=m,a([]),o(null)),m},[]),b=c.useCallback((m,h)=>{if(m.length===0)return;const x=new Set(m.map(g=>g.id));if(t.current=t.current.filter(g=>!x.has(g.id)),h==="restore"&&!s.current){a(g=>{const y=new Set(g.map(w=>w.id)),k=[...m.filter(w=>!y.has(w.id)),...g];return e.current=k,k});return}for(const g of m)xs(g)},[]);return{attachmentError:i,attachments:r,addFiles:l,clearAttachments:f,removeAttachment:u,settleStagedAttachments:b,setAttachmentError:o,stageAttachmentsForSubmit:p}}function xs(e){e.previewUrl&&URL.revokeObjectURL(e.previewUrl)}function Qf(e,t){const s=e.slice(0,Math.max(0,Math.min(t,e.length))),r=/(?:^|\s)\/([a-zA-Z0-9_-]*)$/.exec(s);if(!r||typeof r.index!="number")return null;const a=r[0].lastIndexOf("/");if(a<0)return null;const i=r.index+a;return{end:s.length,query:(r[1]??"").toLowerCase(),start:i}}function Xf(e,t,s=ba){const r=e.slice(0,Math.max(0,Math.min(t,e.length))),a=/(?:^|\s)\/([a-z][a-z0-9_-]*)\s$/.exec(r);if(!a)return null;const i=s.find(l=>l.id===a[1]);if(!i)return null;const o=a[0].lastIndexOf("/");return o<0||typeof a.index!="number"?null:{command:i,end:r.length,start:a.index+o}}function Jf(e,t=ba){return Il({commands:t,prompt:`/${e}`})}function ai(e,t){return e.length===0?[]:e.filter(s=>t?[s.id,s.name??"",s.label??"",s.description??"",typeof s.implementation?.type=="string"?s.implementation.type:""].join(" ").toLowerCase().includes(t):!0)}function ii(e,t){return e.length===0?[]:e.filter(s=>t?[s.id,s.name,s.description??"",s.gitRepo??"",Pi(s)].join(" ").toLowerCase().includes(t):!0).slice(0,8)}function oi({actionCatalog:e,connectedAppMentions:t,mentionApps:s,profileSkills:r,query:a,surface:i,teamMentionMembers:o}){const l=a.toLowerCase();if(i==="team"){const m=o.filter(x=>l?[x.name,x.handle??""].map(Wn).some(g=>g.includes(l)):!0).map(x=>({kind:"team-member",member:x}));return[...Ta(e,l,e.length).map(x=>({kind:"action",action:x})),...m]}const u=s.filter(m=>l?[Wn(m.id),Wn(m.name),m.gitRepo?Wn(m.gitRepo):"",Pi(m)].some(x=>x.includes(l)):!0).map(m=>({kind:"app",app:m})),f=Ta(e,l,e.length).map(m=>({kind:"action",action:m})),p=mr(r,l).map(m=>({kind:"skill",skill:m})),b=Al(t,l).map(m=>({kind:"connected-app",app:m}));return[...f,...p,...u,...b]}function Yf(e,t,s){const r=t?.trim();if(!r)return e;const a=Math.max(0,Math.min(s??0,e.length)),i=e.slice(0,a),o=e.slice(a),l=i&&!/\s$/.test(i)?" ":"",u=o&&!/^\s/.test(o)?" ":"";return`${i}${l}${r}${u}${o}`.replace(/\s+/g," ").trim()}function Zf(e){const t=Wn(ga(e)||e.name||e.id);return t?`@${t}`:null}function eh(e){const t=e.trim();if(!t.startsWith("{")||!t.endsWith("}"))return e;try{const s=JSON.parse(t);if(!s||Array.isArray(s)||typeof s!="object")return e;const r=Object.entries(s).filter(([,a])=>a!=null&&a!=="").map(([a,i])=>`${xo(a)}: ${da(a,i)}`);return r.length?r.join(" · "):e}catch{return e}}function xo(e){const t=e.replace(/Id$/,"").replace(/([a-z0-9])([A-Z])/g,"$1 $2").replaceAll("_"," ").trim().toLowerCase();return t?`${t[0].toUpperCase()}${t.slice(1)}`:"Input"}function da(e,t){if(Array.isArray(t))return t.map(r=>da(e,r)).join(", ");if(t&&typeof t=="object")return Object.entries(t).map(([r,a])=>`${xo(r)}: ${da(r,a)}`).join(" · ");const s=String(t);return/Id$/.test(e)&&/^[a-z0-9_-]+$/i.test(s)?s.split(/[-_]+/).filter(Boolean).map(r=>`${r[0].toUpperCase()}${r.slice(1)}`).join(" "):s}function th({action:e,prompt:t,selectedActionMentionText:s,selectedInvocationPosition:r}){if(!e)return null;const a=s?.trim(),i=a?.startsWith("@")?a:Zf(e);return i?Yf(eh(t),i,r):null}function nh({attachmentCount:e,prompt:t,selectedAction:s,selectedCommand:r}){return!!(t.trim()||e>0||s||r)}const sh=new Set(["openpond-agent-authoring","openpond-skill-authoring","openpond-taskset-authoring","openpond-refiner-authoring"]);function rh({activeMentionKey:e,activeSkillKey:t,activeSlashKey:s,addMenuIndex:r,addMenuItems:a,addMenuOpen:i,addMenuPanelRef:o,addMenuRef:l,attachmentCount:u,composerRef:f,createImproveActive:p,goalRuntimeActive:b,inputRef:m,inputShellRef:h,mentionQuery:x,prompt:g,selectedActionId:y,selectAddMenuItem:k,setActionIndex:w,setActionMenuDismissedPrompt:j,setAddMenuIndex:E,setAddMenuOpen:S,setAddMenuQuery:R,setMentionMenuDismissedPrompt:A,setMentionIndex:$,setSkillIndex:D,setSkillMenuDismissedPrompt:U,skillMatchCount:K,skillQuery:ie,slashMatchCount:ke,slashQuery:Z,showActionMenu:we,showMentionMenu:ve,showSkillMenu:te}){const[ye,G]=c.useState({}),[je,H]=c.useState({}),[z,P]=c.useState({}),[le,ge]=c.useState({});return c.useEffect(()=>{$(0)},[x]),c.useEffect(()=>{D(0)},[K,ie]),c.useEffect(()=>{w(0)},[ke,Z]),c.useEffect(()=>{const V=m.current?.element,se=V?.parentElement;if(!V||!se||typeof ResizeObserver>"u")return;const O=new ResizeObserver(()=>m.current?.resize());return O.observe(se),()=>O.disconnect()},[]),c.useEffect(()=>{if(!i)return;function V(O){const Q=O.target,B=m.current?.element?.parentElement;!l.current?.contains(Q)&&!o.current?.contains(Q)&&!B?.contains(Q)&&(S(!1),R(""),A(e),j(s),U(t))}function se(O){if(O.key==="Escape"){O.preventDefault(),S(!1),R(""),A(e),j(s),U(t);return}if(a.length!==0){if(O.key==="ArrowDown"){O.preventDefault(),E(Q=>(Q+1)%a.length);return}if(O.key==="ArrowUp"){O.preventDefault(),E(Q=>(Q-1+a.length)%a.length);return}if(O.key==="Home"){O.preventDefault(),E(0);return}if(O.key==="End"){O.preventDefault(),E(a.length-1);return}if(O.key==="Enter"){O.preventDefault();const Q=a[r]??a[0];Q&&k(Q)}}}return document.addEventListener("pointerdown",V),document.addEventListener("keydown",se),()=>{document.removeEventListener("pointerdown",V),document.removeEventListener("keydown",se)}},[e,t,s,r,a,i]),c.useLayoutEffect(()=>{if(!i)return;const V=h.current;if(!V)return;const se=V;function O(){ge(Id(se))}return O(),window.addEventListener("resize",O),window.addEventListener("scroll",O,!0),()=>{window.removeEventListener("resize",O),window.removeEventListener("scroll",O,!0)}},[i,u,p,b]),c.useLayoutEffect(()=>{if(!we)return;const V=m.current?.element,se=f.current;if(!V||!se)return;const O=V,Q=se;function B(){P(Xr(O,Q))}return B(),window.addEventListener("resize",B),window.addEventListener("scroll",B,!0),()=>{window.removeEventListener("resize",B),window.removeEventListener("scroll",B,!0)}},[u,p,b,g,y,we]),c.useLayoutEffect(()=>{if(!te)return;const V=m.current?.element,se=f.current;if(!V||!se)return;const O=V,Q=se;function B(){H(Xr(O,Q))}return B(),window.addEventListener("resize",B),window.addEventListener("scroll",B,!0),()=>{window.removeEventListener("resize",B),window.removeEventListener("scroll",B,!0)}},[u,p,b,g,y,te]),c.useLayoutEffect(()=>{if(!ve)return;const V=m.current?.element,se=f.current;if(!V||!se)return;const O=V,Q=se;function B(){G(Xr(O,Q))}return B(),window.addEventListener("resize",B),window.addEventListener("scroll",B,!0),()=>{window.removeEventListener("resize",B),window.removeEventListener("scroll",B,!0)}},[u,p,b,g,y,ve]),{actionMenuStyle:z,addMenuStyle:le,mentionMenuStyle:ye,skillMenuStyle:je}}const ah=c.lazy(()=>Ee(()=>import("./ComposerCreateImproveStrip-3_083PF4.js"),__vite__mapDeps([0,1,2,3,4,5,6])).then(e=>({default:e.ComposerCreateImproveStrip}))),ih=ba.find(e=>e.id==="submit-issue"),oh=[],lh=[];function bo({experience:e="development",mode:t,surface:s="chat",teamUseModel:r=!1,teamUseModelLocked:a=!1,teamMentionMembers:i=[],onTeamUseModelChange:o,prompt:l,composeNotice:u=null,mentionApps:f=[],connectedAppMentions:p=[],profileSkills:b=[],selectedMentionAppId:m=null,contextWindowStatus:h,goalRuntime:x=null,subagentRuntime:g=null,createImproveRuntime:y=null,busy:k,readOnlyReason:w=null,running:j=k,taskSessionId:E=null,taskEvents:S=lh,steerActiveResponses:R=!1,submissionScopeKey:A="default",getCurrentSubmissionScopeKey:$,voiceInputChannelKey:D=A,initialSteerDrafts:U=oh,showProjectFooter:K=!0,hideModelControls:ie=!1,autoFocus:ke=!1,focusRequestId:Z=0,attachmentRequest:we=null,connection:ve,providerSettings:te=null,provider:ye,model:G,projectTarget:je,profileTarget:H=null,actionCatalog:z=[],requestedAction:P=null,workspaceTarget:le,codexPermissionMode:ge,codexReasoningEffort:V,openPondCommandAccessMode:se,onProviderChange:O,onProviderSetupOpen:Q,onProjectTargetChange:B,onProfileTargetChange:de,onWorkspaceTargetChange:Se,onModelChange:nt,onCodexPermissionModeChange:he,onCodexReasoningEffortChange:oe,onOpenPondCommandAccessModeChange:C,onPromptChange:T,onMentionAppSelect:q,onSaveTaskDraft:W,showToast:Y,onSubmit:Ce,onStop:xe,onPauseGoal:He}){const M=c.useMemo(()=>{for(let d=S.length-1;d>=0;d--){const v=S[d];if(v.sessionId!==E||!["session.started","session.updated","session.title.updated"].includes(v.name))continue;const _=v.data,L=Tl.safeParse(_&&typeof _=="object"&&"session"in _?_.session:null);if(L.success)return typeof L.data.metadata?.nativeReadOnlyReason=="string"?L.data.metadata.nativeReadOnlyReason:null}return w},[w,S,E]),I=c.useRef(null),me=c.useRef(null),J=c.useRef(null),$e=!["claude-code","opencode","grok-build"].includes(ye),ze=R&&$e,re=Zu(ve,E,S,$e),ot=c.useRef(null),Pe=c.useRef(null),Ft=c.useRef(null),Dt=c.useRef(null),vt=c.useRef(0),lt=P&&z.some(d=>d.id===P.actionId)?P:null,st=c.useRef(!1),gn=c.useRef(0),Es=c.useRef(lt?.requestId??0),Xn=c.useRef(new Set),xn=c.useRef(new Set),[Ne,Ve]=c.useState(l.length),As=c.useRef(Ne);As.current=Ne;const[Is,bn]=c.useState(0),[Ts,vn]=c.useState(0),[$s,yn]=c.useState(0),[Ke,Xt]=c.useState(0),[Ps,Xe]=c.useState(""),[jn,Qe]=c.useState(null),[_s,rt]=c.useState(null),[Ar,Jn]=c.useState(null),[Fe,yt]=c.useState(!1),[kn,Ls]=c.useState(!1),[ft,Mt]=c.useState(lt?.actionId??null),[Rt,ht]=c.useState(null),[jt,Je]=c.useState(null),[Yn,kt]=c.useState(null),[Zn,wn]=c.useState(null),[es,Sn]=c.useState(!1),[Cn,ts]=c.useState(()=>({[A]:U})),[Jt,Nn]=c.useState(null),[wt,ce]=c.useState(!1),[Os,Bt]=c.useState(""),[Mn,zs]=c.useState(!1),{attachmentError:Rn,attachments:Te,addFiles:We,removeAttachment:Yt,settleStagedAttachments:Fs,setAttachmentError:mt,stageAttachmentsForSubmit:Ir}=Kf(),En=c.useRef(0);c.useEffect(()=>{!we||En.current===we.id||(En.current=we.id,We([we.file]))},[We,we]);const Ds=c.useCallback(d=>{const v=Ff(d,Te);return!v||Te.length>=Gt.maxAttachments||v.size>Gt.maxAttachmentBytes?!1:(We([v]),!0)},[We,Te]),Tr=Xd({experience:e,mode:t,surface:s}),Zt=e==="development"||e==="work"&&je.value!=="none",$r=$l(ye,G,te),An="top",Bs=c.useId(),Pr=c.useId(),Us=c.useId(),qs={"--context-fill":`${Math.round((h.percent??0)/100*360)}deg`,"--context-bar-fill":`${h.percent??0}%`},_e=c.useMemo(()=>z.find(d=>d.id===ft)??null,[z,ft]),Et=c.useMemo(()=>Pl(ye,e),[e,ye]),ct=c.useMemo(()=>Zt?b:b.filter(d=>!sh.has(d.name)),[e,b]),Le=c.useMemo(()=>Et.find(d=>d.id===Rt)??null,[Et,Rt]),en=th({action:_e,prompt:l,selectedActionMentionText:Yn,selectedInvocationPosition:jt}),Hs=nh({attachmentCount:Te.length,prompt:l,selectedAction:_e,selectedCommand:Le}),_r=c.useMemo(()=>{const d=Math.max(0,Math.min(jt??0,l.length));return Le?{icon:Le.id==="agent"?"plus":Le.id==="skill"?"skill":"workflow",key:`command:${Le.id}`,label:Le.id==="agent"?"Author Agent":Le.id,position:d,onRemove:()=>{ht(null),Je(null),kt(null)}}:_e?{icon:_e.implementation?.type==="openpond-agent"?"bot":"workflow",key:`action:${_e.id}`,label:ga(_e),position:d,onRemove:()=>{Mt(null),Je(null),kt(null)}}:null},[l.length,_e,Le,jt]),tn=Zn===A,Vs=tn||!Hs,Ws=tn?"Preparing files":j?ze?"Steer":"Queue for next turn":"Send",Ge=tn,Gs=tn;function At(d=A){if(M)return!1;const v=Xn.current;return v.has(d)?!1:(v.add(d),!0)}function It(d){Xn.current.delete(d)}function Ks(d){return Xn.current.has(d)}function nn(){return Ks(A)}function Qs(d){wn(v=>v===d?null:v)}const In=c.useMemo(()=>{const d=_l(te,{enabledOnly:!0}).map(ae=>({...ae,description:void 0})),v=Zt?d:d.filter(ae=>ae.value!=="codex"),_=le.value==="cloud"&&Zt?v.filter(ae=>ae.value==="openpond"):v,L=_.some(ae=>ae.value===ye)?_:[{value:ye,label:Ll(ye,te),description:"Current"},..._],ne={value:"setup-provider",label:"New Model/Provider",icon:"plus",separatorBefore:!0};return[...L,ne]},[ye,te,Zt,le.value]),Xs=c.useMemo(()=>ma(ye,te),[ye,te]),Oe=c.useMemo(()=>Ol(l,Math.min(Ne,l.length)),[Ne,l]),Tn=Oe?`${l}:${Oe.start}:${Math.min(Ne,l.length)}`:null,ut=c.useMemo(()=>Oe?oi({actionCatalog:z,connectedAppMentions:p,mentionApps:f,profileSkills:ct,query:Oe.query,surface:s,teamMentionMembers:i}):[],[z,p,f,Oe,ct,s,i]),ns=c.useMemo(()=>s==="team"?[]:oi({actionCatalog:z,connectedAppMentions:p,mentionApps:f,profileSkills:ct,query:"",surface:s,teamMentionMembers:i}).filter(d=>d.kind!=="skill"),[z,p,f,ct,s,i]),$n=!!(!Fe&&!Ge&&Oe&&Tn&&jn!==Tn&&ut.length>0),Ye=c.useMemo(()=>qu(l,Math.min(Ne,l.length)),[Ne,l]),Ut=Ye?`${l}:${Ye.start}:${Ye.end}`:null,dt=c.useMemo(()=>Ye?mr(ct,Ye.query):[],[Ye,ct]),qt=!!(!Fe&&!Ge&&Ye&&Ut&&Ar!==Ut),pe=c.useMemo(()=>Qf(l,Math.min(Ne,l.length)),[Ne,l]),Pn=pe?`${l}:${pe.start}:${pe.end}`:null,ss=c.useMemo(()=>pe?ai(z,pe.query):[],[z,pe]),Js=c.useMemo(()=>pe&&s!=="team"?ii(f,pe.query):[],[pe,f,s]),rs=c.useMemo(()=>pe&&s!=="team"?Jf(pe.query,Et):[],[pe,Et,s]),Ys=c.useMemo(()=>pe&&s!=="team"?mr(ct,pe.query):[],[pe,ct,s]),at=c.useMemo(()=>[...ss.map(d=>({kind:"action",action:d})),...Ys.map(d=>({kind:"skill",skill:d})),...rs.map(d=>({kind:"command",command:d})),...Js.map(d=>({kind:"app-context",app:d}))],[ss,Js,rs,Ys]),as=!!(!Fe&&!Ge&&pe&&Pn&&_s!==Pn),_n=c.useMemo(()=>Et.map(d=>({kind:"command",command:d})),[Et]),sn=c.useMemo(()=>[...ai(z,"").map(d=>({kind:"action",action:d})),...ii(f,"").map(d=>({kind:"app-context",app:d}))],[z,f]),Ht=c.useMemo(()=>mr(ct,"").map(d=>({kind:"skill",skill:d})),[ct]),rn=c.useMemo(()=>{const d=[{id:"add",items:e==="work"?[{kind:"files"},{kind:"folder"}]:[{kind:"files"}],label:"Add"}];return sn.length>0&&d.push({id:"slash",items:sn.map(v=>({kind:"slash",item:v})),label:"Agents and actions",queryScope:"slash"}),Ht.length>0&&d.push({id:"skills",items:Ht.map(v=>({kind:"slash",item:v})),label:"Skills",queryScopes:["slash","mentions"]}),d.push({id:"openpond",items:_n.map(v=>({kind:"slash",item:v})),label:"OpenPond",grid:!0,queryScope:"slash"}),d.push({emptyLabel:"No mentions available",id:"mentions",items:ns.map(v=>({kind:"mention",item:v})),label:"@"}),d},[ns,_n,Ht,sn,e]),Ln=c.useMemo(()=>af(rn,Ps),[Ps,rn]),an=c.useMemo(()=>Ln.flatMap(d=>d.items),[Ln]);c.useEffect(()=>{Fe&&Xt(d=>d<an.length?d:0)},[an.length,Fe]);const on=!!x,pt=on&&x?.tone==="active",is=pt?"Pause goal":"Stop response",Ae=pt?"pause":"stop",Lr=e==="work"||je.value!=="none",Or=la(Cn,A,U),os=Jt?.scopeKey===A?Jt.draftId:null;function On(d,v){ts(_=>sd(_,d,v,d===A?U:[]))}c.useLayoutEffect(()=>{J.current?.resize()},[Te.length,Rn,y,x,l,ft,Rt,jt]),c.useEffect(()=>{if(!ke){st.current=!1;return}if(st.current||Ge)return;const d=window.requestAnimationFrame(()=>{st.current=!0;const v=document.activeElement;v&&v!==document.body&&v!==document.documentElement||J.current?.focusAtPromptIndex(l.length)});return()=>window.cancelAnimationFrame(d)},[ke,Ge,l.length]),c.useEffect(()=>{!Z||gn.current===Z||Ge||(gn.current=Z,window.requestAnimationFrame(()=>{J.current?.focusAtPromptIndex(l.length)}))},[Z,Ge,l.length]),c.useEffect(()=>{x||Sn(!1)},[x]),c.useEffect(()=>{ft&&!z.some(d=>d.id===ft)&&(Mt(null),Je(null))},[z,ft]),c.useEffect(()=>{if(!P||P.requestId<=Es.current)return;const d=z.find(v=>v.id===P.actionId);d&&(Es.current=P.requestId,Mt(d.id),ht(null),Je(0),kt(null),T(""),Ve(0),window.requestAnimationFrame(()=>{J.current?.focusAtPromptIndex(0,{afterToken:!0})}))},[z,T,P]),c.useEffect(()=>{!_e&&!Le||Je(d=>d===null?0:Math.max(0,Math.min(d,l.length)))},[l.length,_e,Le]),c.useEffect(()=>{if(!m||!q)return;const d=f.find(v=>v.id===m);(!d||!zl(l,d))&&q(null)},[f,q,l,m]);const{actionMenuStyle:zr,addMenuStyle:Fr,mentionMenuStyle:Tt,skillMenuStyle:Dr}=rh({activeMentionKey:Tn,activeSkillKey:Ut,activeSlashKey:Pn,addMenuIndex:Ke,addMenuItems:an,addMenuOpen:Fe,addMenuPanelRef:Dt,addMenuRef:Ft,attachmentCount:Te.length,composerRef:I,createImproveActive:!!y,goalRuntimeActive:!!x,inputRef:J,inputShellRef:me,mentionQuery:Oe?.query,prompt:l,selectedActionId:ft,selectAddMenuItem:Un,setActionIndex:yn,setActionMenuDismissedPrompt:rt,setAddMenuIndex:Xt,setAddMenuOpen:yt,setAddMenuQuery:Xe,setMentionMenuDismissedPrompt:Qe,setMentionIndex:bn,setSkillIndex:vn,setSkillMenuDismissedPrompt:Jn,skillMatchCount:dt.length,skillQuery:Ye?.query,slashMatchCount:at.length,slashQuery:pe?.query,showActionMenu:as,showMentionMenu:$n,showSkillMenu:qt});function $t(){Mt(null),ht(null),Je(null),kt(null)}function Br(){$t(),T(""),Ve(0)}function St(d){Bt(d.trim()),ce(!0)}function Ur(){Mn||(ce(!1),$t())}async function qr(){return await(pt&&He?He():xe())}function Vt(d,v){const _=Math.max(0,Math.min(Ne,l.length)),L=v?Math.max(0,Math.min(v.start,l.length)):_,ne=v?Math.max(L,Math.min(v.end,l.length)):L,ae=l.slice(0,L),Me=l.slice(ne),gt=ae&&!/\s$/.test(ae)?" ":"",Pt=Me&&!/^\s/.test(Me)?" ":"",fn=`${Dl(d)} `,Nt=`${gt}${fn}${Pt}`,hn=`${ae}${Nt}${Me}`,it=ae.length+Nt.length;return T(hn),q?.(d.id),Ve(it),window.requestAnimationFrame(()=>{J.current?.focusAtPromptIndex(it)}),it}function zn(d){if(!Oe)return;const v=Math.max(0,Math.min(Ne,l.length));Vt(d,{start:Oe.start,end:v})}function Fn(d,v,_=null){const L=Math.max(0,Math.min(Ne,l.length)),ne=v?Math.max(0,Math.min(v.start,l.length)):L,ae=v?Math.max(ne,Math.min(v.end,l.length)):ne,Me=`${l.slice(0,ne)}${l.slice(ae)}`;return Mt(d.id),ht(null),Je(ne),kt(_?.startsWith("@")?_:null),rt(null),T(Me),Ve(ne),window.requestAnimationFrame(()=>{J.current?.focusAtPromptIndex(ne,{afterToken:!0})}),ne}function De(d){if(!Oe)return;const v=Math.max(0,Math.min(Ne,l.length)),_=Math.max(0,Math.min(Oe.start,l.length)),L=Math.max(_,Math.min(v,l.length));Fn(d,{start:_,end:L},l.slice(_,L).trim())}function ln(d,v){const _=Math.max(0,Math.min(Ne,l.length)),L=v?Math.max(0,Math.min(v.start,l.length)):_,ne=v?Math.max(L,Math.min(v.end,l.length)):L,ae=l.slice(0,L),Me=l.slice(ne),gt=ae&&!/\s$/.test(ae)?" ":"",Pt=Me&&!/^\s/.test(Me)?" ":"",fn=`${Bl(d)} `,Nt=`${gt}${fn}${Pt}`,hn=`${ae}${Nt}${Me}`,it=ae.length+Nt.length;return T(hn),Ve(it),window.requestAnimationFrame(()=>{J.current?.focusAtPromptIndex(it)}),it}function Hr(d){if(!Oe)return;const v=Math.max(0,Math.min(Ne,l.length));ln(d,{start:Oe.start,end:v})}function Zs(d,v){const _=Math.max(0,Math.min(Ne,l.length)),L=v?Math.max(0,Math.min(v.start,l.length)):_,ne=v?Math.max(L,Math.min(v.end,l.length)):L,ae=d.handle||Wn(d.name),Me=l.slice(0,L),gt=l.slice(ne),Pt=Me&&!/\s$/.test(Me)?" ":"",fn=gt&&!/^\s/.test(gt)?" ":"",Nt=`${Pt}@${ae} ${fn}`,hn=`${Me}${Nt}${gt}`,it=Me.length+Nt.length;return T(hn),Ve(it),window.requestAnimationFrame(()=>J.current?.focusAtPromptIndex(it)),it}function ls(d){if(d.kind==="team-member"){if(!Oe)return;const v=Math.max(0,Math.min(Ne,l.length));Zs(d.member,{start:Oe.start,end:v});return}if(d.kind==="app"){zn(d.app);return}if(d.kind==="connected-app"){Hr(d.app);return}if(d.kind==="skill"){if(!Oe)return;const v=Math.max(0,Math.min(Ne,l.length));Be(d.skill,{start:Oe.start,end:v});return}De(d.action)}function Vr(d){pe&&(rt(null),Vt(d,{start:pe.start,end:pe.end}))}function Ct(d){pe&&Fn(d,pe)}function cs(d,v){const _=Math.max(0,Math.min(Ne,l.length)),L=v?Math.max(0,Math.min(v.start,l.length)):_,ne=v?Math.max(L,Math.min(v.end,l.length)):L,ae=`${l.slice(0,L)}${l.slice(ne)}`;return ht(d.id),Mt(null),Je(L),kt(null),rt(null),T(ae),Ve(L),d.id==="submit-issue"&&St(ae),window.requestAnimationFrame(()=>{J.current?.focusAtPromptIndex(L,{afterToken:!0})}),L}function Dn(d){pe&&cs(d,pe)}function cn(d){if(d.kind==="command"){Dn(d.command);return}if(d.kind==="app-context"){Vr(d.app);return}if(d.kind==="skill"){if(!pe)return;Be(d.skill,pe);return}Ct(d.action)}function Be(d,v){const _=Hu(l,v,d);return Jn(null),Qe(null),rt(null),T(_.value),Ve(_.cursor),window.requestAnimationFrame(()=>{J.current?.focusAtPromptIndex(_.cursor)}),_.cursor}function er(d){Ye&&Be(d,Ye)}function Bn(){ot.current?.click()}function us(){Pe.current?.click()}function Ze(d){vt.current=d,Xe(""),Xt(0)}function ds(){const d=Math.max(0,Math.min(Ne,l.length)),v=Math.max(0,Math.min(vt.current,l.length));return d>=v?{start:v,end:d}:{start:d,end:d}}function Un(d){const v=ds();if(yt(!1),Xe(""),d.kind==="files"||d.kind==="folder"){if(v.start!==v.end){const _=`${l.slice(0,v.start)}${l.slice(v.end)}`;T(_),Ve(v.start)}Ze(v.start),d.kind==="folder"?us():Bn();return}if(d.kind==="slash"){if(d.item.kind==="command"){Ze(cs(d.item.command,v));return}if(d.item.kind==="app-context"){Ze(Vt(d.item.app,v));return}if(d.item.kind==="skill"){Ze(Be(d.item.skill,v));return}Ze(Fn(d.item.action,v));return}if(d.item.kind==="team-member"){Ze(Zs(d.item.member,v));return}if(d.item.kind==="app"){Ze(Vt(d.item.app,v));return}if(d.item.kind==="connected-app"){Ze(ln(d.item.app,v));return}if(d.item.kind==="skill"){Ze(Be(d.item.skill,v));return}Ze(Fn(d.item.action,v))}const{stageCurrentSteerDraft:fs,submitImmediateSteer:un}=Uu({running:j,scope:A,inbox:re,getPrompt:()=>J.current?.getPrompt()??l,hasFilesOrActions:!!(Te.length||_e||Le),provider:ye,model:G,codexPermissionMode:ge,codexReasoningEffort:V,openPondCommandAccessMode:se,getCurrentSubmissionScopeKey:$,onSubmit:Ce,showToast:Y,begin:d=>xn.current.has(d)?!1:(xn.current.add(d),!0),finish:d=>{xn.current.delete(d)},clear:Br,setError:mt,stageLocal:d=>{On(A,v=>[...v,Ji(d)]),window.requestAnimationFrame(()=>J.current?.focusAtPromptIndex(0))}});async function hs(d){const v=A;if(Jt?.scopeKey===v)return!1;const _=la(Cn,v,U).find(L=>L.id===d);if(!_)return!1;Nn({draftId:d,scopeKey:v}),mt(null);try{const L=j,ne=await Ce([],null,null,{preservePrompt:!0,promptOverride:_.prompt,...L?{turnMetadata:{interactionKind:"steer"}}:{}});return On(v,ae=>nd(ae,d,ne)),ne}catch(L){return mt(L instanceof Error?L.message:String(L)),!1}finally{Nn(L=>L?.scopeKey===v&&L.draftId===d?null:L)}}function ms(d){os!==d&&On(A,v=>Yi(v,d))}function tr(d){if(os!==d.id){if(Te.length>0||ft||Rt){Y("Finish the current composer before editing a queued message.","info");return}On(A,v=>td(v,d.id,l)),T(d.prompt),Ve(d.prompt.length),window.requestAnimationFrame(()=>{J.current?.focusAtPromptIndex(d.prompt.length)})}}async function Wt(d={}){const v=A;if(!At(v))return!1;yt(!1),mt(null);const _=Ir();try{wn(_.length>0?v:null);let L;try{L=await Promise.all(_.map(qf))}finally{Qs(v)}const ne=_e&&en&&!l.trim()?en:void 0,ae=d.promptOverride??ne,Me=await Ce(L,_e,Le,en||ae||d.preservePrompt?{...en?{displayPrompt:en}:{},...ae!==void 0?{promptOverride:ae}:{},...d.preservePrompt?{preservePrompt:!0}:{}}:void 0);return Fs(_,Me?"dispose":"restore"),Me&&!Ul(_e)&&$t(),Me}catch(L){return Fs(_,"restore"),mt(L instanceof Error?L.message:String(L)),!1}finally{It(v),Qs(v)}}async function dn(){if(j){ze?await un():await fs();return}if(nn())return;const d=_e||Le?null:_i(l);if(Le?.id==="submit-issue"||d?.command==="submit-issue"){St(d?.command==="submit-issue"?d.args:l);return}Vs||await Wt()}function nr(){Xu(D)||dn()}async function qn(d){if(nn()||Mn)return!1;const v=A;if(!At(v))return!1;zs(!0),yt(!1),mt(null);try{const _=await Ce([],null,ih,{displayPrompt:`/submit-issue ${d.title.trim()}`,promptOverride:Fl(d)});return _&&(ce(!1),$t()),_}catch(_){return mt(_ instanceof Error?_.message:String(_)),!1}finally{It(v),zs(!1)}}async function sr(d,v){const _=J.current?.getPrompt()??l,L=Math.max(0,Math.min(As.current,_.length)),ne=Qi(_,d,v.submit?_.length:L),ae=await Wu({appendToEnd:v.submit,currentScopeKey:$?.()??A,cursorIndex:L,originScopeKey:A,prompt:_,setOriginDraft:Me=>T(Me),submitFromOrigin:Me=>Wt({preservePrompt:!0,promptOverride:Me}),transcript:d});if(ae==="retained"){Y("The voice message couldn't be sent. It is saved in the original chat draft.","error");return}if(ae==="submitted"){Y("Voice message sent to the chat where recording started.","success");return}if(v.submit){if(j){ze?await un(ne.value):await fs(ne.value);return}await Wt({promptOverride:ne.value});return}Ve(ne.cursorIndex),window.requestAnimationFrame(()=>{J.current?.focusAtPromptIndex(ne.cursorIndex)})}return M?n.jsx("p",{className:"composer dock",role:"status",children:M}):n.jsxs("form",{ref:I,className:`composer ${t} ${y?"has-create-runtime":""} ${on?"has-goal-runtime":""} ${Te.length>0?"has-attachments":""} ${_e||Le?"has-selected-action":""} ${Rn?"has-attachment-error":""} ${Fe?"has-add-menu":""}`,onSubmit:d=>{d.preventDefault(),dn()},children:[n.jsx("input",{webkitdirectory:"",ref:Pe,className:"composer-file-input",type:"file",multiple:!0,tabIndex:-1,onChange:d=>{We(Array.from(d.currentTarget.files??[])),d.currentTarget.value=""}}),$n&&n.jsx(cf,{items:ut,mentionIndex:Is,onSelect:ls,onSelectIndex:bn,style:Tt}),qt&&n.jsx(Nf,{items:dt,onSelect:er,onSelectIndex:vn,skillIndex:Ts,style:Dr}),as&&n.jsx(Mf,{actionCatalogCount:z.length,actionIndex:$s,items:at,onSelect:cn,onSelectIndex:yn,style:zr}),n.jsx(Rf,{busy:Mn,initialDescription:Os,open:wt,onClose:Ur,onSubmit:qn}),K&&n.jsxs("div",{className:"composer-footer",children:[K?n.jsx(ld,{busy:k||je.busy,placement:An,state:je,onChange:B}):null,H&&de?n.jsx(eo,{busy:k,placement:An,state:H,onChange:de}):null,Lr?n.jsx(cd,{busy:k,placement:An,state:le,onChange:Se}):null]}),!K&&e==="work"&&n.jsx(ud,{project:je,workspace:le}),y?n.jsx(c.Suspense,{fallback:null,children:n.jsx(ah,{runtime:y})}):null,re.enabled?n.jsx(rd,{inbox:re,onRestore:d=>{T(l.trim()?`${l}
|
|
5
|
+
|
|
6
|
+
${d}`:d),J.current?.focusAtPromptIndex(0)}}):n.jsx(hd,{drafts:Or,sendingDraftId:os,onDeleteDraft:ms,onEditDraft:tr,onSteerDraft:d=>{hs(d)}}),on&&x&&n.jsx(fd,{detailsOpen:es,goalRuntime:x,objectiveId:Us,subagentRuntime:g,onToggleDetails:()=>Sn(d=>!d)}),u&&n.jsx("div",{className:`composer-notice ${u.tone}`,role:"status",children:u.message}),re.enabled&&j&&Hs&&n.jsxs("div",{className:"task-input-actions",children:[n.jsx("button",{type:"button",disabled:!!re.busyId||!re.snapshot?.acceptingInput,onClick:()=>{un()},children:"Steer now"}),n.jsx("button",{type:"button",disabled:!!re.busyId,onClick:()=>{fs()},children:"Queue for next turn"})]}),n.jsxs("div",{className:"composer-input-shell",ref:me,children:[Fe&&s!=="team"&&n.jsx(ya,{id:Bs,ariaLabel:"Add to message",className:"composer-add-command-menu",menuIndex:Ke,menuRef:Dt,sections:Ln,style:Fr,variant:"add",onSelect:Un,onSelectIndex:Xt}),Te.length>0&&n.jsx("div",{className:"composer-attachments","aria-label":"Selected attachments",children:Te.map(d=>n.jsx(Df,{attachment:d,onRemove:()=>Yt(d.id)},d.id))}),Rn&&n.jsx("div",{className:"composer-attachment-error",role:"status",children:Rn}),n.jsx("div",{className:"composer-textarea-frame",onClick:d=>{d.target===d.currentTarget&&J.current?.focusAtPromptIndex(Ne)},children:n.jsx(Gd,{ref:J,connectedAppMentions:p,disabled:Ge,onCursorChange:Ve,onKeyDown:d=>{if(Fe&&["ArrowDown","ArrowUp","Home","End","Enter","Escape"].includes(d.key)){d.preventDefault();return}if($n){if(d.key==="ArrowDown"){d.preventDefault(),bn(v=>(v+1)%ut.length);return}if(d.key==="ArrowUp"){d.preventDefault(),bn(v=>(v-1+ut.length)%ut.length);return}if(d.key==="Enter"||d.key==="Tab"){d.preventDefault(),ls(ut[Is]??ut[0]);return}if(d.key==="Escape"){d.preventDefault(),Qe(Tn);return}}if(qt){if(dt.length>0&&d.key==="ArrowDown"){d.preventDefault(),vn(v=>(v+1)%dt.length);return}if(dt.length>0&&d.key==="ArrowUp"){d.preventDefault(),vn(v=>(v-1+dt.length)%dt.length);return}if(dt.length>0&&(d.key==="Enter"||d.key==="Tab")){d.preventDefault(),er(dt[Ts]??dt[0]);return}if(d.key==="Escape"){d.preventDefault(),Jn(Ut??l);return}}if(as){if(at.length>0&&d.key==="ArrowDown"){d.preventDefault(),yn(v=>(v+1)%at.length);return}if(at.length>0&&d.key==="ArrowUp"){d.preventDefault(),yn(v=>(v-1+at.length)%at.length);return}if(at.length>0&&(d.key==="Enter"||d.key==="Tab")){d.preventDefault(),cn(at[$s]??at[0]);return}if(d.key==="Escape"){d.preventDefault(),rt(Pn??l);return}}if((_e||Le)&&d.key==="Backspace"&&Ne===(jt??0)){d.preventDefault(),$t();return}if(Qd(d.key,d.ctrlKey,d.metaKey,d.shiftKey,e,s,!!W)){d.preventDefault(),Kd({attachmentsCount:Te.length,hasSelectedInvocation:!!(_e||Le),onSave:W,onSaved:$t,prompt:l,saving:kn,setSaving:Ls,showInfo:v=>Y(v,"info")});return}d.key==="Enter"&&!d.shiftKey&&(d.preventDefault(),tn||dn())},onPasteFiles:We,onPasteTextAsAttachment:Ds,onPromptChange:(d,v)=>{if(Fe){const L=Math.max(0,Math.min(vt.current,d.length));v<L?(vt.current=v,Xe("")):Xe(d.slice(L,v))}const _=s==="team"?null:Xf(d,v,Et);if(_){const L=`${d.slice(0,_.start)}${d.slice(_.end)}`,ne=_.start;T(d),Ve(v),window.requestAnimationFrame(()=>{ht(_.command.id),Mt(null),Je(ne),rt(null),T(L),Ve(ne),_.command.id==="submit-issue"&&St(L),window.requestAnimationFrame(()=>{J.current?.focusAtPromptIndex(ne,{afterToken:!0})})});return}T(d)},onTokenPositionChange:d=>{if(!(!_e&&!Le)){if(d===null){$t();return}Je(d)}},placeholder:Tr,prompt:l,token:_r})}),n.jsx(Sf,{surface:s,teamUseModel:r,teamUseModelLocked:a,onTeamUseModelChange:o,addFiles:We,addMenuId:Bs,addMenuOpen:Fe,addMenuRef:Ft,busy:k,codexPermissionMode:ge,codexReasoningEffort:V,connection:ve,contextStatusStyle:qs,contextStatusTooltipId:Pr,contextWindowStatus:h,disabled:Gs,dropdownPlacement:An,fileInputRef:ot,modelValue:$r,modelOptions:Xs,hideModelControls:ie,openPondCommandAccessMode:se,showCommandAccess:Zt,profileTarget:K?null:H,onCodexPermissionModeChange:he,onCodexReasoningEffortChange:oe,onOpenPondCommandAccessModeChange:C,onProfileTargetChange:de,onModelChange:nt,onOpenFilePicker:Bn,onProviderChange:O,onProviderSetupOpen:Q,onSend:nr,onStop:qr,onToggleAddMenu:()=>{const d=Math.max(0,Math.min(Ne,l.length));Fe||(vt.current=d,Xe(""),Xt(0),yt(!0)),window.requestAnimationFrame(()=>{J.current?.focusAtPromptIndex(d)})},onTranscript:sr,voiceInputChannelKey:D,provider:ye,providerSettings:te,providerOptions:In,running:j,sendDisabled:Vs,sendTooltip:Ws,showToast:Y,stopIcon:Ae,stopLabel:is})]})]})}const li=c.memo(function({draftStore:t,...s}){const r=ql(t),a=t.getScopeKey(),i=c.useCallback(o=>{t.setForScope(a,o)},[a,t]);return n.jsx(Hl,{id:"composer",children:n.jsx(bo,{...s,prompt:r,onPromptChange:i})})});function ch({questions:e,answers:t,disabled:s,onChange:r}){return n.jsx("div",{className:"native-question-fields",children:e.map(a=>n.jsxs("fieldset",{disabled:s,children:[n.jsx("legend",{children:a.question}),a.options.map(i=>{const o=(t[a.question]??"").split(", ");return n.jsxs("label",{title:i.description,children:[n.jsx("input",{type:a.multiSelect?"checkbox":"radio",name:a.question,checked:o.includes(i.label),onChange:l=>{const u=a.multiSelect?(l.target.checked?[...o.filter(Boolean),i.label]:o.filter(f=>f!==i.label)).join(", "):i.label;r({...t,[a.question]:u})}}),i.label,i.description?n.jsx("small",{children:i.description}):null]},i.label)}),n.jsxs("label",{children:["Your answer",n.jsx("input",{type:"text",maxLength:8e3,value:t[a.question]??"",onChange:i=>r({...t,[a.question]:i.target.value})})]})]},a.question))})}function ci({approval:e,onResolve:t}){const[s,r]=c.useState(null),[a,i]=c.useState({});if(c.useEffect(()=>{r(null),i({})},[e?.id]),!e||e.kind==="create_plan")return null;const o=uh(e.detail),l=typeof e.providerRequestId=="string"&&e.providerRequestId.startsWith("native-agent:");let u=[],f=[];if(l)try{const h=JSON.parse(e.detail);u=h.options??[],f=h.questions??[]}catch{}const p=l?u.some(h=>h.kind==="allow_always"):e.kind!=="subagent_patch_apply",b=u.find(h=>h.kind==="allow_always")?.name;async function m(h){if(!(!e||s)){r(h);try{await t(e.id,h,h==="accept"&&f.length?a:void 0)}catch{r(null)}}}return n.jsx("div",{className:"approval-request-shell",role:"status","aria-live":"polite",children:n.jsxs("section",{className:"approval-request-card","aria-label":`${ui(e.kind)} approval request`,children:[n.jsxs("div",{className:"approval-request-copy",children:[n.jsx("div",{className:"approval-request-header",children:n.jsx("span",{children:ui(e.kind)})}),n.jsx("code",{className:"approval-request-title",title:e.title,children:e.title}),o&&o!==e.title&&n.jsxs("details",{className:"approval-request-details",children:[n.jsx("summary",{children:"Details"}),n.jsx("pre",{children:o})]}),f.length?n.jsx(ch,{questions:f,answers:a,disabled:!!s,onChange:i}):null]}),n.jsxs("div",{className:"approval-request-actions",children:[n.jsxs("button",{type:"button",className:"approval-action primary",disabled:!!s||f.some(h=>!a[h.question]?.trim())||l&&!u.some(h=>h.kind==="allow_once"),onClick:()=>{m("accept")},children:[n.jsx(Ot,{size:14}),n.jsx("span",{children:s==="accept"?"Sending":f.length?"Submit answers":"Approve"})]}),p?n.jsxs("button",{type:"button",className:"approval-action",title:l?b:"Approve for the rest of this session",disabled:!!s,onClick:()=>{m("acceptForSession")},children:[n.jsx(_c,{size:14}),n.jsx("span",{children:s==="acceptForSession"?"Approving":l?b:"Session"})]}):null,n.jsxs("button",{type:"button",className:"approval-action muted",disabled:!!s||l&&!u.some(h=>h.kind==="reject_once"),onClick:()=>{m("decline")},children:[n.jsx(Oc,{size:14}),n.jsx("span",{children:s==="decline"?"Denying":"Deny"})]}),n.jsx("button",{type:"button",className:"approval-action icon-only",title:l?"Dismiss request":"Cancel task","aria-label":l?"Dismiss request":"Cancel task",disabled:!!s,onClick:()=>{m("cancel")},children:n.jsx(Ms,{size:15})})]})]})})}function ui(e){return e==="create_plan"?"Plan review":e==="subagent_patch_apply"?"Subagent patch":e==="file_change"||e==="legacy_patch"?"File change":e==="permissions"?"Permissions":e==="user_input"?"Input needed":"Command"}function uh(e){const t=e.trim();if(!t)return"";try{return JSON.stringify(JSON.parse(t),null,2)}catch{return t}}const dh=/\.(?:m4v|mov|mp4|webm)$/i;function fh(e){return dh.test(e.trim().split(/[?#]/,1)[0]??"")}function hh(e,t){let s=e.trim();if(!s||!fh(s))return null;if(/^file:\/\//i.test(s))try{s=decodeURIComponent(new URL(s).pathname)}catch{s=s.replace(/^file:\/\//i,"")}if(/^\//.test(s)||/^[A-Za-z]:[\\/]/.test(s))return s;const r=t?.trim().replace(/[\\/]+$/,"");return r?`${r}/${s.replace(/^\.\//,"")}`:null}function mh({connection:e,handleOpenBrowserLink:t,activeWorkspaceAppId:s,rightSidebarUsesSandbox:r,rightSidebarSandboxId:a,onShowDiffPanel:i,showToast:o,workspaceRootPath:l,setOpenDiffFileRequest:u}){return c.useCallback((f,p)=>{if(/[\\/]$/.test(f)){const x=/^(?:[~/\\]|[A-Za-z]:)/.test(f)?f:l?`${l}/${f}`:f;ha(x).then(g=>{g||o("Open this folder in the desktop app on the machine where it was created.","error")});return}const b=r?a:s;if(na(f)&&!p?.source&&e&&b){tl(e,b,f,r?"sandbox":"local").then(x=>t(x)).catch(x=>o(x instanceof Error?x.message:"Could not open HTML preview.","error"));return}const m=hh(f,l);if(m&&e){Ue.signLocalVideoUrl(e,{path:m}).then(({url:x})=>t(x)).catch(x=>{o(x instanceof Error?x.message:"Could not open this video.","error")});return}const h=ki(f,{workspaceRootPath:l});i(),u({id:Date.now(),path:p?.source&&na(f)?(h?.path??f).replace(/[?#].*$/,""):h?.path??f,source:p?.source})},[e,t,s,r,a,i,o,l,u])}function ph(e,t={}){const s=e.map(r=>({id:`message:${r.id}`,type:"message",message:r,showFooter:r.role==="assistant"}));return t.showThinkingIndicator&&s.push({id:"thinking",type:"thinking"}),s}function gg(e){const t=new Map;for(const s of e)s.role==="assistant"&&s.turnId&&t.set(s.turnId,s.id);return t}function xg(e,t){const s=e.turnId;return e.role==="assistant"&&s!==void 0&&t.get(s)===e.id}function gh(e){const t=e[e.length-1];if(!t)return!0;if(t.role==="assistant"||t.role==="error"||t.role==="status_divider"&&t.statusState==="running")return!1;if(t.role==="activity_group"){if(t.traceState==="running")return!1;const s=t.activities?.[t.activities.length-1]??null;return s?.state!=="running"&&s?.state!=="pending"}return!0}function xh(e){const t=[];if(e.localWorkspaceId&&t.push({value:"local",label:"Local"}),(e.sandboxSourceAvailable??!!e.sandboxWorkspaceId)&&t.push({value:"sandbox",label:"Sandbox"}),t.length===0)return{source:null,options:t};const s=new Set(t.map(a=>a.value));if(e.override&&s.has(e.override))return{source:e.override,options:t};const r=e.workspaceTarget==="local"?"local":"sandbox";return s.has(r)?{source:r,options:t}:{source:t[0].value,options:t}}const bh=new Set(["create","edit","help","list"]);function vh(e,t,s=null){return yh(e)}function yh(e){const t=e.trim();if(!t)return"/skill";const[s=""]=t.split(/\s+/,1);return bh.has(s.toLowerCase())?`/skill ${t}`:`/skill create ${t}`}async function jh(e){const t=e.session?.currentProfile??null,s=e.session?await e.patchSession(e.session.id,e.ref):null;try{return{selected:await e.selectProfile(e.ref),session:s}}catch(r){if(s)try{await e.patchSession(s.id,t)}catch{}throw r}}function kh(e,t){if(!e||!t)return null;const s=new Set(e.sources.filter(r=>r.sessionId===t).map(r=>r.id));return s.size?e.creations.find(r=>r.request.sourceIds.some(a=>s.has(a)))??null:null}function wh(e){const[t,s]=c.useState(null),[r,a]=c.useState(null),[i,o]=c.useState(!1),[l,u]=c.useState(null),[f,p]=c.useState(null),b=c.useRef(null),m=c.useRef(0),h=c.useCallback(async(k,w={})=>{if(!e){a(null),u("OpenPond App server is not connected.");return}const j=m.current+1;m.current=j,w.silent||o(!0),u(null);try{const E=await Ue.getCreateImproveCandidateDiff(e,k.runId,k.candidateId),S=b.current;if(j!==m.current||S?.runId!==k.runId||S.candidateId!==k.candidateId)return;a(E)}catch(E){if(j!==m.current)return;u(E instanceof Error?E.message:String(E))}finally{j===m.current&&!w.silent&&o(!1)}},[e]),x=c.useCallback(k=>{const w=b.current;if(!(k&&w?.runId===k.runId&&w.candidateId===k.candidateId)){if(b.current=k,s(k),p(null),!k){m.current+=1,a(null),u(null),o(!1);return}a(j=>j?.appId===Sh(k)?j:null),h(k)}},[h]),g=c.useCallback(async(k={})=>{const w=b.current;w&&await h(w,k)},[h]),y=c.useCallback(k=>{p({id:Date.now(),path:k})},[]);return c.useEffect(()=>{e||x(null)},[x,e]),{selection:t,diff:r,loading:i,error:l,openFileRequest:f,activate:x,refresh:g,openFile:y}}function Sh(e){return`candidate:${e.runId}:${e.candidateId}`}function Ch(e){const{activeModel:t,activeProvider:s,bootstrap:r,codexPermissionMode:a,codexReasoningEffort:i,connection:o,onOpenRightChatForSession:l,onPayload:u}=e,f=c.useCallback(async m=>{if(!o||!r)throw new Error("OpenPond is still connecting.");const h=r.profile;if(h.mode!=="local"||!h.repoPath)throw new Error("A local Git-backed Profile is required to change an Agent.");const x=m.authoringModel??Vl(s,t,r.providers);if(!x)throw new Error("Choose a model before changing an Agent.");const g=await Ue.createSession(o,{provider:x.providerId,modelRef:x,systemKind:"openpond.lab",hiddenFromDefaultSidebar:!0,title:`${m.operation==="create"?"New":"Improve"} Agent · ${m.objective.slice(0,80)}`,cwd:h.repoPath,metadata:{source:m.operation==="create"?"lab_agent_create":"lab_agent_improve",profileId:h.activeProfile??"default",targetAgentId:m.agentId??null}}),y=m.objective.trim();if(!y)throw new Error(m.operation==="create"?"Describe what the Agent should do.":"Describe what the Agent could do better.");if(x.providerId==="codex")throw new Error("Agent authoring uses OpenPond's bundled authoring skill. Choose a hosted model.");const k=m.operation==="create"?`/agent create ${y}`:`/agent improve ${m.agentId??""} ${y}`,w=await Ue.sendTurn(o,g.id,{prompt:k,model:x.modelId,modelRef:x,approvalPolicy:"never",sandbox:"workspace-write",codexPermissionMode:"default",codexReasoningEffort:i});if(w.status==="failed")throw new Error(w.error??"OpenPond could not complete the Agent authoring turn.");u(await Ue.bootstrap(o)),l(g.id,g)},[t,s,r,a,i,o,l,u]),p=c.useCallback((m,h,x)=>f({objective:m,operation:"create",authoringRunId:h,authoringModel:x}),[f]),b=c.useCallback((m,h,x,g,y)=>f({agentId:m,agentName:x,objective:h,operation:"improve",authoringRunId:g,authoringModel:y}),[f]);return{createAgentFromLab:p,improveAgentFromLab:b}}const Nh=72,ea=120,vo=24,Mh=280,Rh=460;function bs(e){return e.scrollHeight-e.scrollTop-e.clientHeight<=Nh}const cr={canGoPrevious:!1,canGoNext:!1};function yo(e){return Array.from(e.querySelectorAll(".message-row.user")).filter(t=>t.parentElement===e)}function Eh({activeWorkspaceId:e,cloudProjects:t}){const s=t.find(i=>i.id===e),r=t.find(i=>i.organizationSlug||i.teamId),a=s??r??null;return{organizationSlug:a?.organizationSlug??null,teamId:a?.teamId??null}}function Rr(e,t){return t.getBoundingClientRect().top-e.getBoundingClientRect().top+e.scrollTop}function jo(e,t){return Rr(e,t)+t.getBoundingClientRect().height}function ko(e){return e.scrollTop+vo}function wo(e){return e.scrollTop+8}function vs(e){const t=ko(e),s=wo(e);let r=!1,a=!1;for(const i of yo(e)){const o=Rr(e,i);if(jo(e,i)<s&&(r=!0),o>t+8&&(a=!0),r&&a)break}return{canGoPrevious:r,canGoNext:a}}function Ah(e,t){const s=yo(e),r=ko(e);if(t==="previous"){const a=wo(e);for(let i=s.length-1;i>=0;i-=1){const o=s[i];if(jo(e,o)<a)return o}return null}for(const a of s)if(Rr(e,a)>r+8)return a;return null}function Ih(e){return Math.min(Rh,Math.max(Mh,Math.abs(e)/5))}function Th(e){return e<.5?4*e*e*e:1-Math.pow(-2*e+2,3)/2}function $h(e){const t=Wl({messages:e});return t?{run:t}:null}function di(e){return e.command==="workflow"?["Create a scheduled workflow attached to this chat.","Use the schedule_work tool after resolving the exact cadence, local date/time, and timezone from my request. Ask a concise clarification only if a required scheduling detail is genuinely missing.",`Workflow request: ${e.args}`].join(`
|
|
7
|
+
|
|
8
|
+
`):e.command==="agent"?e.args?`/agent ${e.args}`:"/agent":e.command==="skill"?e.args?`/skill ${e.args}`:"/skill":e.args?`/${e.command} ${e.args}`:`/${e.command}`}function ta(e,t){return{surface:"chat",workflowKind:"slash_command",commandName:`/${e.command}`,commandSource:t}}function Ph(e){return e.command==="goal"||e.command==="agent"||e.command==="skill"||e.command==="workflow"||e.command==="sync-cloud"}function _h(e){const t=e?.trim()??"";return/^[a-z0-9]{24}$/.test(t)?t:null}function Lh({busy:e,handoff:t,onDismiss:s,onSelectTask:r}){const a=Gl(t),i=t.selectedTaskIndex+1;return n.jsxs("section",{className:"training-chat-handoff","aria-label":"Model chat",children:[n.jsxs("div",{className:"training-chat-handoff-copy",children:[n.jsx("strong",{children:a?"Generated Taskset question":"Model chat"}),n.jsx("span",{children:t.tasksetName}),n.jsx("small",{children:a?`${Oh(a.split)} · ${i} of ${t.tasks.length} · New chat per question`:"Ask the imported model directly"})]}),n.jsxs("div",{className:"training-chat-handoff-actions",children:[a?n.jsxs(n.Fragment,{children:[n.jsx("button",{type:"button","aria-label":"Previous generated question",title:"Previous question",disabled:e||t.selectedTaskIndex===0,onClick:()=>r(t.selectedTaskIndex-1),children:n.jsx(Gn,{size:14})}),n.jsx("button",{type:"button",className:"training-chat-handoff-load",disabled:e,onClick:()=>r(t.selectedTaskIndex),children:"Load question"}),n.jsx("button",{type:"button","aria-label":"Next generated question",title:"Next question",disabled:e||t.selectedTaskIndex>=t.tasks.length-1,onClick:()=>r(t.selectedTaskIndex+1),children:n.jsx(wi,{size:14})})]}):null,n.jsx("button",{type:"button","aria-label":"Close generated question handoff",title:"Close",disabled:e,onClick:s,children:n.jsx(Ms,{size:14})})]})]})}function Oh(e){return e==="frozen_eval"?"Frozen evaluation":e==="validation"?"Validation":"Training"}function zh({activeModel:e,activeProvider:t,busy:s,handoff:r,onDismiss:a,onSelectTask:i}){return!r||r.model.providerId!==t||r.model.modelId!==e?null:n.jsx(Lh,{busy:s,handoff:r,onDismiss:a,onSelectTask:i})}function Fh({canGoNext:e,canGoPrevious:t,onJumpToLatest:s,onNext:r,onPrevious:a}){return n.jsxs("div",{className:"chat-scroll-controls","aria-label":"Message navigation",children:[n.jsx("button",{type:"button",className:"chat-scroll-control-button","data-tooltip":"Go to previous message","aria-label":"Go to previous message","aria-disabled":!t,onClick:a,children:n.jsx(Gn,{size:17})}),n.jsx("button",{type:"button",className:"chat-scroll-control-button primary","data-tooltip":"Jump to latest","aria-label":"Jump to latest",onClick:s,children:n.jsx(Ac,{size:18})}),n.jsx("button",{type:"button",className:"chat-scroll-control-button","data-tooltip":"Go to next message","aria-label":"Go to next message","aria-disabled":!e,onClick:r,children:n.jsx(wi,{size:17})})]})}function Dh({busy:e,onSync:t}){return n.jsxs("button",{type:"button",className:"sync-local-button",disabled:e,onClick:t,children:[n.jsx(Bc,{size:15}),n.jsx("span",{children:e?"Syncing locally":"Sync locally to work on this"})]})}function So(e){return e.supportedView&&e.open&&!e.hasContentPanel}function Bh(e,t){return e==="team"?"team-active":e==="community"?"community-active":e==="apps"||e==="get-started"||e==="labs"||e==="outputs"||e==="projects"||e==="scheduled"?"page-active":t?"chat-active":"chat-start"}function Uh(e,t){const s=o=>{o.deltaY<0&&t()};let r=null;const a=o=>{r=o.touches[0]?.clientY??null},i=o=>{const l=o.touches[0]?.clientY??null;l!==null&&r!==null&&l>r&&t(),r=l};return e.addEventListener("wheel",s,{passive:!0}),e.addEventListener("touchstart",a,{passive:!0}),e.addEventListener("touchmove",i,{passive:!0}),()=>{e.removeEventListener("wheel",s),e.removeEventListener("touchstart",a),e.removeEventListener("touchmove",i)}}function qh(e){const{contentKey:t,threadElement:s=null,enabled:r=!0,onContentChange:a,threadRef:i}=e,o=c.useRef(a),l=c.useRef(null);o.current=a,c.useLayoutEffect(()=>{const u=s??i.current;if(!r||!u||typeof window>"u")return;let f=null,p=0,b=u.scrollHeight;const m=(w=!0)=>{w&&(p=Math.max(p,4)),f===null&&(f=window.requestAnimationFrame(()=>{f=null,i.current===u&&o.current(u);const j=Math.abs(u.scrollHeight-b)>1;b=u.scrollHeight,p-=1,(p>0||j)&&m(!1)}))};l.current=()=>m();const h=typeof MutationObserver>"u"?null:new MutationObserver(()=>{y(),m()}),x=typeof ResizeObserver>"u"?null:new ResizeObserver(()=>m()),g=new Set,y=()=>{if(!x)return;const w=new Set(Array.from(u.children).filter(j=>j instanceof HTMLElement));for(const j of g)w.has(j)||(x.unobserve(j),g.delete(j));for(const j of w)g.has(j)||(x.observe(j),g.add(j))};h?.observe(u,{childList:!0,characterData:!0,subtree:!0}),y();const k=()=>m();return u.addEventListener("load",k,!0),()=>{l.current=null,h?.disconnect(),x?.disconnect(),u.removeEventListener("load",k,!0),f!==null&&window.cancelAnimationFrame(f)}},[r,s,i]),c.useLayoutEffect(()=>{r&&l.current?.()},[t,r])}function Hh({browserConversationId:e,chatSubmissionVersion:t,chatHistoryHasMore:s,chatHistoryLoading:r,chatMessages:a,onLoadMoreChatHistory:i,pendingApproval:o,showChatThread:l,showThinkingIndicator:u,view:f}){const p=c.useRef(null),[b,m]=c.useState(null),h=c.useCallback(M=>{p.current=M,m(I=>I===M?I:M)},[]),x=c.useRef(null),g=c.useRef(!0),y=c.useRef(0),k=c.useRef(0),w=c.useRef(0),j=c.useRef(null),E=c.useRef(null),S=c.useRef(!1),R=c.useRef(!1),A=c.useRef(!1),$=c.useRef(null),D=c.useRef(null),U=c.useRef(null),[K,ie]=c.useState(0),[ke,Z]=c.useState(null),[we,ve]=c.useState(!1),[te,ye]=c.useState(132),[G,je]=c.useState(cr),H=c.useMemo(()=>ph(a,{showThinkingIndicator:u}),[a,u]),z=c.useMemo(()=>({"--chat-composer-reserve":`${te}px`}),[te]),P=a.at(-1),le=[H.length,P?.id??"",P?.content?.length??0,P?.timestamp??"",u?"thinking":""].join(":"),ge=s,V=e,se=f==="chat"&&l&&!!V&&ke!==V,O=c.useCallback(M=>{ve(I=>I===M?I:M)},[]),Q=c.useCallback(M=>{je(I=>I.canGoPrevious===M.canGoPrevious&&I.canGoNext===M.canGoNext?I:M)},[]),B=c.useCallback((M,I={})=>{const me=I.nearBottom??bs(M);O(!me),Q(vs(M))},[O,Q]),de=c.useCallback(M=>{const I=R.current;R.current=!1,Z(M),O(!1),Q(cr),I&&ie(me=>me+1)},[O,Q]),Se=c.useCallback(()=>{U.current===null||typeof window>"u"||(window.cancelAnimationFrame(U.current),U.current=null)},[]),nt=c.useCallback((M,I,me)=>{Se();const J=Math.max(0,M.scrollHeight-M.clientHeight),$e=()=>{const lt=typeof I=="function"?I():I;return Math.max(0,Math.min(lt,Math.max(0,M.scrollHeight-M.clientHeight)))},ze=Math.max(0,Math.min($e(),J)),re=M.scrollTop,ot=ze-re;if(typeof window>"u"||window.matchMedia?.("(prefers-reduced-motion: reduce)").matches===!0||Math.abs(ot)<1){M.scrollTop=ze,me?.();return}const Ft=Ih(ot),Dt=window.performance.now(),vt=lt=>{if(p.current!==M){U.current=null;return}const st=Math.min(1,(lt-Dt)/Ft),gn=$e();if(M.scrollTop=re+(gn-re)*Th(st),st<1){U.current=window.requestAnimationFrame(vt);return}M.scrollTop=$e(),U.current=null,me?.()};U.current=window.requestAnimationFrame(vt)},[Se]),he=c.useCallback(()=>{A.current=!1,!($.current===null||typeof window>"u")&&(window.cancelAnimationFrame($.current),$.current=null)},[]),oe=c.useCallback(()=>{D.current===null||typeof window>"u"||(window.cancelAnimationFrame(D.current),D.current=null)},[]),C=c.useCallback(M=>{if(typeof window>"u"){M.scrollTop=M.scrollHeight;return}if(D.current!==null)return;let I=window.performance.now();const me=J=>{if(p.current!==M||!g.current){D.current=null;return}const $e=Math.max(0,M.scrollHeight-M.clientHeight),ze=$e-M.scrollTop;if(Math.abs(ze)<=.75){M.scrollTop=$e,D.current=null;return}if(ze<0||ze>240)M.scrollTop=$e;else{const re=Math.max(.5,Math.min(3,(J-I)/16.666666666666668)),ot=1-Math.pow(1-.22,re);M.scrollTop+=Math.min(36*re,ze*ot)}I=J,D.current=window.requestAnimationFrame(me)};D.current=window.requestAnimationFrame(me)},[]),T=c.useCallback((M,I={})=>{if(oe(),M.scrollTop=M.scrollHeight,typeof window>"u"){I.finishInitial&&de(I.conversationKey??null);return}he(),A.current=!0;let J=0,$e=0,ze=M.scrollHeight;const re=I.settle?12:2,ot=()=>{const Pe=p.current;if(!Pe){$.current=null,A.current=!1,I.finishInitial&&de(I.conversationKey??null);return}Pe.scrollTop=Pe.scrollHeight;const Ft=Pe.scrollHeight-Pe.scrollTop-Pe.clientHeight,Dt=Math.abs(Pe.scrollHeight-ze)<=1;if(ze=Pe.scrollHeight,$e=Ft<=1&&Dt?$e+1:0,J+=1,J<re&&$e<2){$.current=window.requestAnimationFrame(ot);return}$.current=null,A.current=!1,g.current=!0,O(!1),Q(vs(Pe)),I.finishInitial&&de(I.conversationKey??null)};$.current=window.requestAnimationFrame(ot)},[he,oe,de,O,Q]),q=c.useCallback(()=>{const M=p.current;M&&(he(),oe(),g.current=!0,O(!1),nt(M,()=>M.scrollHeight-M.clientHeight,()=>{p.current===M&&(M.scrollTop=M.scrollHeight,g.current=!0,O(!1),Q(vs(M)))}))},[he,oe,O,Q,nt]),W=c.useCallback(M=>{const I=p.current;if(!I)return;const me=Ah(I,M);if(!me)return;he(),oe(),nt(I,()=>me.isConnected?Math.max(0,Rr(I,me)-vo):I.scrollTop,()=>{if(p.current!==I)return;const $e=bs(I);g.current=$e,B(I,{nearBottom:$e})})},[he,oe,nt,B]),Y=c.useCallback(()=>{const M=p.current;M&&(E.current={scrollHeight:M.scrollHeight,scrollTop:M.scrollTop},g.current=!1,oe())},[oe]),Ce=c.useCallback(async()=>{if(ge&&!(!i||r||S.current)){Y(),S.current=!0;try{await i()}finally{S.current=!1}}},[ge,r,i,Y]),xe=c.useCallback(M=>{if(A.current){g.current=!0,O(!1),Q(cr);return}const I=bs(M),me=Math.abs(M.scrollHeight-k.current)>1||Math.abs(M.clientHeight-w.current)>1,J=M.scrollTop<y.current-1;y.current=M.scrollTop,k.current=M.scrollHeight,w.current=M.clientHeight,I?(g.current=!0,B(M,{nearBottom:!0})):J&&!me?(g.current=!1,oe(),B(M,{nearBottom:!1})):g.current?(O(!1),Q(vs(M))):B(M,{nearBottom:!1}),!R.current&&M.scrollTop<=ea&&ge&&!r&&Ce()},[ge,oe,r,Ce,O,Q,B]),He=c.useCallback(M=>{g.current&&C(M)},[C]);return c.useEffect(()=>{const M=b;return M?Uh(M,()=>{g.current=!1,he(),oe(),Se()}):void 0},[b,he,oe,Se]),qh({contentKey:le,enabled:f==="chat"&&l,onContentChange:He,threadElement:b,threadRef:p}),c.useLayoutEffect(()=>{if(f!=="chat"||!l||typeof window>"u")return;const M=x.current;if(!M)return;let I=null;const me=()=>{I=null;const ze=Math.max(96,Math.ceil(M.getBoundingClientRect().height+20));ye(re=>re===ze?re:ze)},J=()=>{I===null&&(I=window.requestAnimationFrame(me))};J();const $e=typeof window.ResizeObserver>"u"?null:new window.ResizeObserver(J);return $e?.observe(M),window.addEventListener("resize",J),()=>{I!==null&&window.cancelAnimationFrame(I),$e?.disconnect(),window.removeEventListener("resize",J)}},[l,f]),c.useLayoutEffect(()=>{const M=p.current;f!=="chat"||!l||!M||R.current||!g.current&&!bs(M)||(g.current=!0,T(M,{settle:!0}))},[te,T,l,f]),c.useLayoutEffect(()=>{if(t===0||f!=="chat"||!l)return;const M=p.current;M&&(g.current=!0,O(!1),T(M,{settle:!0}))},[t,T,O,l,f]),c.useLayoutEffect(()=>{E.current=null,S.current=!1,R.current=!0,g.current=!0,y.current=0,k.current=0,w.current=0,oe(),Se(),he(),Z(null),O(!1),Q(cr)},[he,Se,oe,V,O,Q]),c.useEffect(()=>{const M=p.current;f!=="chat"||!M||R.current||!ge||r||M.scrollTop<=ea&&M.scrollHeight<=M.clientHeight+ea&&Ce()},[ge,r,K,H.length,Ce,f]),c.useLayoutEffect(()=>{const M=E.current,I=p.current;!M||!I||R.current||(E.current=null,I.scrollTop=M.scrollTop+Math.max(0,I.scrollHeight-M.scrollHeight),B(I))},[H.length,B]),c.useLayoutEffect(()=>{const M=p.current;if(f!=="chat"||!V||!M){j.current=V,g.current=!0,de(V);return}const I=j.current!==V;if(j.current=V,I||R.current){g.current=!0,T(M,{conversationKey:V,finishInitial:!0,settle:!0});return}const me=bs(M);if(g.current||me){g.current=!0,O(!1),Q(vs(M)),T(M,{settle:!0});return}B(M,{nearBottom:me})},[V,b,de,o?.id,T,O,Q,B,f]),c.useEffect(()=>()=>{he(),Se(),oe()},[he,Se,oe]),{chatColumnStyle:z,chatThreadPreparingInitialScroll:se,chatThreadRef:h,composerStackRef:x,goToUserMessage:W,handleChatScroll:xe,jumpToLatestChatMessage:q,showScrollToBottomButton:we,userMessageNavigation:G,chatTimelineRows:H}}function Vh(e,t){const s=Wh(e),[r,a]=c.useState(()=>s.getUrl(t));return c.useEffect(()=>{let i=!1;return a(s.getUrl(t)),s.loadUrl(t).then(o=>{i||a(o)}),()=>{i=!0}},[t,s]),r}function Wh(e){const[,t]=c.useState(0),s=c.useCallback(a=>!e||!a?null:(Kt.activateConnection(e),Kt.get(fi(e,a))),[e]),r=c.useCallback(async a=>{if(!e||!a)return null;const i=fi(e,a);return Kt.activateConnection(e),Kt.load(i,()=>Ue.signChatAttachmentImageUrl(e,a)).finally(()=>t(o=>o+1))},[e]);return c.useMemo(()=>({getUrl:s,loadUrl:r}),[s,r])}function fi(e,t){return oa(e,"chat-attachment-image",t.sessionId,t.turnId,t.attachmentId,t.storageName,t.contentType)}const hi="<openpond_trusted_runtime_context>",mi="</openpond_trusted_runtime_context>";function Gh(e){const t=e.trimStart();if(!t.startsWith(hi))return e;const s=t.indexOf(mi,hi.length);if(s===-1)return"";const r=t.slice(s+mi.length).trim();if(!r.startsWith("<user_request>"))return r;const a=r.slice(14);return(a.endsWith("</user_request>")?a.slice(0,-15):a).trim()}function ja({content:e,timestamp:t,kvCacheSummary:s}){const r=Kl(t),a=s?.cacheHitRate,i=typeof a=="number"&&Number.isFinite(a)&&a>=0&&a<=1?`${Math.round(a*100)}%`:null;return n.jsxs("div",{className:"assistant-message-footer",children:[r?n.jsx("time",{className:"message-timestamp",dateTime:t,title:Ql(t),children:r}):null,i?n.jsxs("span",{className:"message-kv-cache-metric","aria-label":`KV cache reuse ${i}`,children:["KV ",i]}):null,n.jsx("button",{type:"button",className:"message-copy-button",title:"Copy message","aria-label":"Copy assistant message",disabled:!e,onClick:()=>{e&&Ci(e)},children:n.jsx(Si,{size:14})})]})}function Co({content:e}){const[t,s]=c.useState(!1),[r,a]=c.useState(!1),i=c.useRef(null),o=c.useId();return c.useEffect(()=>{const l=i.current;if(!l)return;const u=()=>{const p=Number.parseFloat(getComputedStyle(l).lineHeight);a(l.scrollHeight>Math.ceil(p*5)+1)};u();const f=new ResizeObserver(u);return f.observe(l),()=>f.disconnect()},[e,t]),n.jsxs("div",{className:"user-message-content-wrap",children:[n.jsx("div",{ref:i,id:o,className:`user-message-content ${t?"":"collapsed"}`,children:e}),r?n.jsxs("button",{type:"button",className:"user-message-show-more","aria-expanded":t,"aria-controls":o,onClick:()=>s(l=>!l),children:[t?n.jsx(nl,{size:14}):n.jsx(zt,{size:14}),n.jsx("span",{children:t?"Show less":"Show more"})]}):null]})}async function Ns(e,t){const{ownerScope:s}=await Ie(e,"/v1/ponder/desktop");if(!s||["installationId","profileId","ownerUserId","teamId"].some(r=>s[r]!==t[r]))throw new Error("Open this task on its original desktop, account and workspace.")}function Kh({message:e,onOpenSession:t,onOpenPonder:s,connection:r}){const[a,i]=c.useState(null),o=c.useRef(0);c.useEffect(()=>(o.current++,()=>{o.current++}),[r,e.id]);const l=e.taskMessage;if(!l)return null;const{input:u,peer:f,direction:p}=l;async function b(){if(!r||!s)return;const h=o.current;try{if(!f.ponderScope)throw new Error("This message has no verified Ponder source.");await Ns(r,f.ponderScope);const x=await Ie(r,"/v1/ponder",{method:"POST",body:"{}"});if(h!==o.current)return;if(x.bindingId!==f.bindingId)throw new Error("This task's original Ponder conversation is no longer active.");i(null),s()}catch(x){h===o.current&&i(x instanceof Error?x.message:String(x))}}const m=u.error?u.error:{pending:"Queued",included:"Included in agent request",resolved:"Delivered to agent",rejected:"Not delivered",cancelled:"Cancelled"}[u.state];return n.jsxs("article",{className:"message-row user task-message-row",children:[n.jsx("div",{className:"user-message",children:n.jsx(Co,{content:u.body})}),n.jsxs("div",{className:"task-message-attribution",children:[n.jsx("span",{children:p==="sent"?"Sent to":"Received from"}),f.kind==="ponder"?s&&r?n.jsx("button",{type:"button",onClick:()=>{b()},children:f.title}):n.jsx("span",{children:f.title}):t?n.jsx("button",{type:"button",onClick:()=>t(f.sessionId),children:f.title}):n.jsx("span",{children:f.title}),n.jsx("span",{title:`Delivery receipt ${u.id}`,role:"status",children:m})]}),a?n.jsx("p",{role:"alert",children:a}):null,n.jsx(ja,{content:u.body,timestamp:e.timestamp})]})}const Qh=64,Xh=120,Jh=210,Yh=360,Zh=40,em=120,tm=600,nm=100,pi=33,br=new Set;let ur=!1;function sm(e,t,s=0){if(e<=0)return{characterCount:0,remainder:0};const r=e>tm?Yh:e>em?Jh:e>Zh?Xh:Qh,a=s+Math.min(Math.max(t,0),nm)*r/1e3,i=Math.min(e,Math.floor(a));return{characterCount:i,remainder:a-i}}function No(e,t,s){let r=Math.min(t.length,e.length+s);const a=t.charCodeAt(r-1),i=t.charCodeAt(r);return a>=55296&&a<=56319&&i>=56320&&i<=57343&&(r+=1),t.slice(0,r)}function gi(){return typeof window<"u"&&typeof window.matchMedia=="function"&&typeof document<"u"&&document.visibilityState==="visible"&&!window.matchMedia("(prefers-reduced-motion: reduce)").matches}function rm(e,t,s){return t&&s?No("",e,1):e}function am(e,t=!1){const[s,r]=c.useState(()=>rm(e,t,gi())),a=c.useRef(s),i=c.useRef(e),o=c.useRef(null),l=c.useRef(null),u=c.useRef(0),f=c.useRef(!0);return c.useEffect(()=>(f.current=!0,()=>{f.current=!1,o.current!==null&&(window.clearTimeout(o.current),o.current=null)}),[]),c.useEffect(()=>{if(i.current=e,!gi()||!e.startsWith(a.current)){o.current!==null&&(window.clearTimeout(o.current),o.current=null),l.current=null,u.current=0,a.current=e,f.current&&r(e);return}if(a.current.length===e.length||o.current!==null)return;const p=()=>{if(!f.current){o.current=null;return}const b=a.current,m=i.current,h=performance.now();if(!m.startsWith(b)){a.current=m,r(m),o.current=null,l.current=null,u.current=0;return}const x=m.length-b.length;if(x===0){o.current=null,l.current=null,u.current=0;return}const g=l.current===null?16:h-l.current,y=sm(x,g,u.current);if(l.current=h,u.current=y.remainder,y.characterCount>0){const k=No(b,m,y.characterCount);a.current=k,r(k)}o.current=window.setTimeout(p,pi)};return o.current=window.setTimeout(p,pi),()=>{o.current!==null&&(window.clearTimeout(o.current),o.current=null)}},[e]),c.useEffect(()=>{const b=im(()=>{document.visibilityState!=="visible"&&(o.current!==null&&(window.clearTimeout(o.current),o.current=null),l.current=null,u.current=0,a.current=i.current,f.current&&r(i.current))});return()=>{b(),o.current!==null&&(window.clearTimeout(o.current),o.current=null)}},[]),s}function im(e){return br.add(e),ur||(document.addEventListener("visibilitychange",xi),ur=!0),()=>{br.delete(e),br.size===0&&ur&&(document.removeEventListener("visibilitychange",xi),ur=!1)}}function xi(){for(const e of br)e()}function Mo({animateInitialContent:e=!1,content:t,...s}){const r=am(t,e),a=sl(r,r.length===t.length),i=om(a,r.length===t.length);return n.jsx(Ni,{...s,content:a,finalizedContent:i.finalized,mutableContent:i.mutable})}function om(e,t){if(t||!e)return{finalized:e,mutable:""};const s=e.split(`
|
|
9
|
+
`);let r=!1,a=null,i=0,o=0;for(let l=0;l<s.length-1;l+=1){const u=s[l]??"",f=u.trim();!a&&/^\s*```/.test(u)&&(r=!r),r||(a&&f.endsWith(a)?a=null:!a&&f.startsWith("\\[")&&!f.endsWith("\\]")?a="\\]":!a&&f.startsWith("$$")&&f.indexOf("$$",2)<0&&(a="$$")),i+=u.length+1,!r&&!a&&f===""&&(o=i)}return{finalized:e.slice(0,o),mutable:e.slice(o)}}function Er({children:e,className:t="",controls:s,danger:r=!1,expanded:a=!1,icon:i,onToggle:o,running:l=!1}){const u=["activity-summary",o?"":"static",r?"danger":"",l?"working":"",t].filter(Boolean).join(" "),f=n.jsxs(n.Fragment,{children:[i,n.jsx("span",{className:"activity-summary-text",children:n.jsx("span",{children:e})}),o?n.jsx(zt,{"aria-hidden":!0,className:`activity-summary-toggle ${a?"expanded":""}`,size:14}):null]});return o?n.jsx("button",{type:"button","aria-controls":s,"aria-expanded":a,className:u,onClick:o,children:f}):n.jsx("div",{className:u,role:l?"status":void 0,children:f})}function lm({actionRun:e,onOpenBrowserLink:t,onOpenFileInSidebar:s,workspaceRootPath:r=null}){const a=fm(e.status),i=hm(e);return n.jsxs("div",{className:`action-run-card ${e.status}`,children:[n.jsxs("div",{className:"action-run-header",children:[n.jsx("span",{className:"action-run-status",title:e.status,children:n.jsx(a,{size:15})}),n.jsxs("div",{className:"action-run-title",children:[n.jsx("strong",{children:e.title}),n.jsx("span",{children:e.actionName})]})]}),i.length>0&&n.jsx("div",{className:"action-run-meta","aria-label":"Action run metadata",children:i.map(o=>n.jsxs("span",{className:"action-run-chip",children:[o.icon,n.jsx("span",{children:o.label}),n.jsx("code",{children:o.value})]},o.label))}),e.responseText&&n.jsx("p",{className:"action-run-response",children:e.responseText}),e.refs.length>0&&n.jsx("div",{className:"action-run-ref-list","aria-label":"Action run references",children:e.refs.slice(0,8).map(o=>n.jsx(dm,{refItem:o,onOpenBrowserLink:t,onOpenFileInSidebar:s,workspaceRootPath:r},o.id))}),e.childCalls.length>0&&n.jsx("div",{className:"action-run-child-list","aria-label":"Child implementation calls",children:e.childCalls.map(o=>n.jsxs("div",{className:`action-run-child ${o.status}`,children:[n.jsx("span",{children:o.label}),n.jsx("small",{children:o.status}),o.detail&&n.jsx("code",{children:o.detail})]},o.id))})]})}function bi(e){return e.implementationType==="openpond-profile-action"}function cm(e){const t=e.agentName??e.agentId;return e.actionName.endsWith(".chat")?or({actionId:e.actionName,label:e.title,name:t}):t?or({actionId:e.actionName,name:t}):e.title&&!Xl(e.title)?or({actionId:e.actionName,label:e.title}):or({actionId:e.actionName})}function um(e){return e.status==="failed"?`${e.title} failed.`:e.status==="completed"?`${e.title} completed.`:e.status==="pending"?`${e.title} is pending.`:`${e.title} is running...`}function dm({refItem:e,onOpenBrowserLink:t,onOpenFileInSidebar:s,workspaceRootPath:r}){const a=s?ki(e.target,{workspaceRootPath:r}):null,i=mm(e.target)&&t,o=!!(a&&s);return n.jsxs("div",{className:`action-run-ref ${e.kind}`,children:[n.jsx("span",{children:e.label}),n.jsx("code",{children:e.target}),i&&n.jsx("button",{type:"button",title:`Open ${e.target}`,"aria-label":`Open ${e.label}`,onClick:()=>t(e.target,{newTab:!0}),children:n.jsx(yr,{size:13})}),o&&n.jsx("button",{type:"button",title:`Open ${e.target}`,"aria-label":`Open ${e.label}`,onClick:()=>{a&&s&&s(a.path)},children:n.jsx(yr,{size:13})})]})}function fm(e){return e==="completed"?Li:e==="failed"?ru:Fc}function hm(e){const t=[];return e.implementationType&&t.push({label:"Type",value:e.implementationType,icon:n.jsx(dr,{size:12})}),e.runId&&t.push({label:"Run",value:e.runId,icon:n.jsx(bt,{size:12})}),e.sandboxId&&t.push({label:"Sandbox",value:e.sandboxId,icon:n.jsx(bt,{size:12})}),e.sourceRef&&t.push({label:"Source",value:e.sourceRef,icon:n.jsx(Jl,{size:12})}),e.manifestHash&&t.push({label:"Manifest",value:e.manifestHash,icon:n.jsx(bt,{size:12})}),t}function mm(e){return/^https?:\/\//i.test(e)}function pm(e,t){const s=gm(e),[r,a]=c.useState(()=>s.getUrl(t));return c.useEffect(()=>{let i=!1;return a(s.getUrl(t)),s.loadUrl(t).then(o=>{i||a(o)}),()=>{i=!0}},[t,s]),r}function gm(e){const[,t]=c.useState(0),s=c.useCallback(a=>!e||!a?null:(Kt.activateConnection(e),Kt.get(oa(e,"local-video",a))),[e]),r=c.useCallback(async a=>{if(!e||!a)return null;Kt.activateConnection(e);const i=oa(e,"local-video",a);return Kt.load(i,()=>Ue.signLocalVideoUrl(e,{path:a})).finally(()=>t(o=>o+1))},[e]);return c.useMemo(()=>({getUrl:s,loadUrl:r}),[s,r])}function xm(e,t){return{toolCount:e.reduce((r,a)=>r+(vi(a)?0:1),0),toolsExpanded:t,visibleActivities:t?e.filter(r=>!vi(r)):[]}}function vi(e){return e.kind==="reasoning"}function bm(e,t){if(!e||!t)return null;const s=Date.parse(t)-Date.parse(e);if(!Number.isFinite(s)||s<1e3)return null;const r=Math.round(s/1e3);if(r<60)return`${r}s`;const a=Math.floor(r/60),i=r%60;if(a<60)return i>0?`${a}m ${i}s`:`${a}m`;const o=Math.floor(a/60),l=a%60;return l>0?`${o}h ${l}m`:`${o}h`}const vm=4;function ym({onOpenSession:e,onShowAll:t,sessions:s}){const r=s.slice(0,vm),a=Math.max(0,s.length-r.length),i=s.map(Eo).join(", ");return n.jsxs("div",{"aria-label":`Subagent conversations: ${i}`,className:"activity-subagent-avatar-group",title:`Subagent conversations: ${i}`,children:[r.map(o=>n.jsx(Ro,{openSession:o,onOpenSession:e},o.sessionId)),a>0?n.jsxs("button",{type:"button","aria-label":`Show ${a} more subagent conversation${a===1?"":"s"}`,className:"activity-subagent-avatar activity-subagent-avatar-count",onClick:t,title:`Show ${a} more subagent conversation${a===1?"":"s"}`,children:["+",a]}):null]})}function Ro({className:e="",onOpenSession:t,openSession:s}){const r=Io(s.roleId),a=wm(s.status),i=`Open ${Eo(s)} conversation`;return n.jsx("button",{type:"button","aria-label":i,className:`activity-subagent-avatar ${e}`,"data-role":r,"data-status":a,onClick:()=>t(s.sessionId),title:i,children:n.jsx(jm,{roleId:r})})}function jm({roleId:e}){return e==="coding"?n.jsxs("svg",{"aria-hidden":!0,viewBox:"0 0 24 24",className:"activity-subagent-avatar-svg",children:[n.jsx("path",{d:"M9.4 7.2 4.8 12l4.6 4.8"}),n.jsx("path",{d:"m14.6 7.2 4.6 4.8-4.6 4.8"}),n.jsx("path",{d:"m12.9 5.7-1.8 12.6"})]}):e==="research"?n.jsxs("svg",{"aria-hidden":!0,viewBox:"0 0 24 24",className:"activity-subagent-avatar-svg",children:[n.jsx("circle",{cx:"10.8",cy:"10.8",r:"5.2"}),n.jsx("path",{d:"m15 15 4 4"}),n.jsx("path",{d:"M8.6 10.8h4.4"}),n.jsx("path",{d:"M10.8 8.6v4.4"})]}):e==="review"?n.jsxs("svg",{"aria-hidden":!0,viewBox:"0 0 24 24",className:"activity-subagent-avatar-svg",children:[n.jsx("path",{d:"M7 4.8h7.2L18 8.6v10.6H7z"}),n.jsx("path",{d:"M14 4.8v4h4"}),n.jsx("path",{d:"m8.9 14.2 2 2 4.3-4.7"})]}):e==="test"?n.jsxs("svg",{"aria-hidden":!0,viewBox:"0 0 24 24",className:"activity-subagent-avatar-svg",children:[n.jsx("path",{d:"M9.2 4.8h5.6"}),n.jsx("path",{d:"M10.4 4.8v5.4l-4 6.8a1.8 1.8 0 0 0 1.6 2.7h8a1.8 1.8 0 0 0 1.6-2.7l-4-6.8V4.8"}),n.jsx("path",{d:"M8.2 15.8h7.6"})]}):e==="docs"?n.jsxs("svg",{"aria-hidden":!0,viewBox:"0 0 24 24",className:"activity-subagent-avatar-svg",children:[n.jsx("path",{d:"M7 4.8h7.2L18 8.6v10.6H7z"}),n.jsx("path",{d:"M14 4.8v4h4"}),n.jsx("path",{d:"M9.2 11.4h5.6"}),n.jsx("path",{d:"M9.2 14.2h5.6"}),n.jsx("path",{d:"M9.2 17h3.4"})]}):e==="planner"?n.jsxs("svg",{"aria-hidden":!0,viewBox:"0 0 24 24",className:"activity-subagent-avatar-svg",children:[n.jsx("circle",{cx:"7.2",cy:"7.2",r:"2.1"}),n.jsx("circle",{cx:"16.8",cy:"7.2",r:"2.1"}),n.jsx("circle",{cx:"12",cy:"16.8",r:"2.1"}),n.jsx("path",{d:"M9 8.2h6"}),n.jsx("path",{d:"m8.5 9 2.4 5.4"}),n.jsx("path",{d:"m15.5 9-2.4 5.4"})]}):e==="summarizer"?n.jsxs("svg",{"aria-hidden":!0,viewBox:"0 0 24 24",className:"activity-subagent-avatar-svg",children:[n.jsx("path",{d:"M7 6.8h10"}),n.jsx("path",{d:"M7 10.4h8.2"}),n.jsx("path",{d:"M7 14h6.2"}),n.jsx("path",{d:"M7 17.6h4.2"})]}):n.jsxs("svg",{"aria-hidden":!0,viewBox:"0 0 24 24",className:"activity-subagent-avatar-svg",children:[n.jsx("circle",{cx:"12",cy:"8.2",r:"3.2"}),n.jsx("path",{d:"M6.5 19.2c.6-3 2.5-5 5.5-5s4.9 2 5.5 5"}),n.jsx("path",{d:"M5.2 11.8h2"}),n.jsx("path",{d:"M16.8 11.8h2"})]})}function km(e){const t=new Map;for(const s of e){const r=s.openSession;r&&t.set(r.sessionId,{...t.get(r.sessionId),...r})}return[...t.values()].reverse()}function Eo(e){const t=`${Ao(e.roleId)} subagent`,s=e.status?.replace(/_/g," ").trim();return s?`${t} (${s})`:t}function Ao(e){return Io(e).split(/[-_]+/).filter(Boolean).map(s=>s.slice(0,1).toUpperCase()+s.slice(1)).join(" ")||"Subagent"}function Io(e){const t=e?.trim().toLowerCase()||"subagent";return/^[a-z][a-z0-9_-]*$/.test(t)?t:"subagent"}function wm(e){const t=e?.trim().toLowerCase()||"unknown";return/^[a-z][a-z0-9_-]*$/.test(t)?t:"unknown"}function Sm({activity:e,defaultExpanded:t=!1}){const[s,r]=c.useState(t),a=c.useId(),i=Mm(e);return n.jsxs("section",{className:`harness-refiner-receipt ${e.state} ${e.result??""}`,children:[n.jsxs("button",{"aria-controls":i?a:void 0,"aria-expanded":i?s:void 0,className:"harness-refiner-receipt-summary",disabled:!i,onClick:()=>i&&r(o=>!o),type:"button",children:[n.jsx(Yl,{"aria-hidden":!0,className:e.state==="running"?"spinning":void 0,size:12}),n.jsx("span",{children:Zl(e)}),i?n.jsx(zt,{"aria-hidden":!0,className:`harness-refiner-receipt-toggle ${s?"expanded":""}`,size:13}):null]}),i&&s?n.jsxs("div",{className:"harness-refiner-receipt-details",id:a,children:[n.jsx(Cm,{activity:e}),e.reason?n.jsxs("section",{children:[n.jsx("strong",{children:"Reason"}),n.jsx("p",{children:e.reason})]}):null,e.expectedOutcome?n.jsxs("section",{children:[n.jsx("strong",{children:"Expected outcome"}),n.jsx("p",{children:e.expectedOutcome})]}):null,e.evidenceBasis?n.jsxs("section",{children:[n.jsx("strong",{children:"Evidence basis"}),n.jsx("p",{children:e.evidenceBasis.kind.replaceAll("_"," ")}),n.jsxs("small",{children:[e.evidenceBasis.supportingEvidenceIds.length," supporting item",e.evidenceBasis.supportingEvidenceIds.length===1?"":"s",e.evidenceBasis.counterevidence.length?` · ${e.evidenceBasis.counterevidence.length} counterexample${e.evidenceBasis.counterevidence.length===1?"":"s"}`:" · no material counterevidence"]})]}):null,e.validations.length?n.jsxs("section",{children:[n.jsx("strong",{children:"Validation"}),n.jsx("div",{className:"harness-refiner-validation-list",children:e.validations.map(o=>n.jsxs("div",{children:[n.jsx("span",{className:o.status,children:o.status}),n.jsx("p",{children:o.summary})]},o.id))})]}):null,e.edits.length?n.jsxs("details",{className:"harness-refiner-exact-edits",children:[n.jsxs("summary",{children:["Review ",e.edits.length," exact edit",e.edits.length===1?"":"s"]}),e.edits.map(o=>n.jsxs("section",{children:[n.jsxs("strong",{children:[o.operation," · ",o.target]}),n.jsx("p",{children:o.summary}),o.content===null?n.jsx("small",{children:"File deleted."}):n.jsx("pre",{children:o.content})]},o.id))]}):null,n.jsx(Nm,{refs:e.refs})]}):null]})}function Cm({activity:e}){const t=[e.route?[e.decision==="route"?"Owner":"Layer",e.route]:null,e.operation?["Operation",e.operation]:null,e.target?["Target",e.target]:null,e.critiqueStatus!=="not_applicable"?["Critique",e.critiqueStatus]:null,e.validationStatus!=="not_applicable"?["Validation",e.validationStatus]:null].filter(s=>!!s);return t.length?n.jsx("dl",{className:"harness-refiner-receipt-facts",children:t.map(([s,r])=>n.jsxs("div",{children:[n.jsx("dt",{children:s}),n.jsx("dd",{children:r?.replaceAll("_"," ")})]},s))}):null}function Nm({refs:e}){const t=Object.entries(e).filter(s=>!!s[1]);return t.length?n.jsxs("details",{className:"harness-refiner-references",children:[n.jsx("summary",{children:"Receipt references"}),n.jsx("dl",{children:t.map(([s,r])=>n.jsxs("div",{children:[n.jsx("dt",{children:Rm(s)}),n.jsx("dd",{children:n.jsx("code",{children:r})})]},s))})]}):null}function Mm(e){return e.state!=="running"&&!!(e.reason||e.expectedOutcome||e.route||e.operation||e.target||e.evidenceBasis||e.validations.length||e.edits.length||Object.values(e.refs).some(Boolean))}function Rm(e){const t=e.replace(/([a-z])([A-Z])/g,"$1 $2");return`${t[0]?.toUpperCase()??""}${t.slice(1)}`}function Em({artifact:e,onOpenFileInSidebar:t}){const[s,r]=c.useState(null),a=c.useCallback(()=>r(null),[]);return n.jsxs(n.Fragment,{children:[n.jsxs("div",{className:"activity-artifact",title:e.path,onContextMenu:i=>{i.preventDefault(),r({path:e.path,title:e.title,...Im(i.clientX,i.clientY)})},children:[t?n.jsxs("button",{"aria-label":`Open ${e.title} in right sidebar`,className:"activity-artifact-name",type:"button",onClick:()=>t(e.path),children:[n.jsx(bt,{"aria-hidden":!0,size:14}),n.jsx("strong",{children:e.title})]}):n.jsxs("span",{className:"activity-artifact-name",children:[n.jsx(bt,{"aria-hidden":!0,size:14}),n.jsx("strong",{children:e.title})]}),n.jsxs("span",{className:"activity-artifact-actions",children:[n.jsx("button",{"aria-label":`Show ${e.title} in file browser`,"data-tooltip":"Open in file browser",type:"button",onClick:()=>{ha(e.path)},children:n.jsx(Di,{"aria-hidden":!0,size:14})}),t?n.jsx("button",{"aria-label":`Open ${e.title} in right sidebar`,"data-tooltip":"Open in right sidebar",type:"button",onClick:()=>t(e.path),children:n.jsx(Oi,{"aria-hidden":!0,size:14})}):null]})]}),n.jsx(Am,{menu:s,onClose:a})]})}function Am({menu:e,onClose:t}){const s=c.useRef(null);return c.useEffect(()=>{if(!e)return;s.current?.focus();const r=()=>t(),a=i=>{i.key==="Escape"&&r()};return window.addEventListener("pointerdown",r),window.addEventListener("blur",r),window.addEventListener("keydown",a),window.addEventListener("scroll",r,!0),()=>{window.removeEventListener("pointerdown",r),window.removeEventListener("blur",r),window.removeEventListener("keydown",a),window.removeEventListener("scroll",r,!0)}},[e,t]),!e||typeof document>"u"?null:ec.createPortal(n.jsx("div",{"aria-label":`${e.title} file actions`,className:"activity-artifact-context-menu",role:"menu",style:{left:e.x,top:e.y},onPointerDown:r=>r.stopPropagation(),children:n.jsxs("button",{ref:s,role:"menuitem",type:"button",onClick:()=>{Ci(e.path),t()},children:[n.jsx(Si,{"aria-hidden":!0,size:14}),n.jsx("span",{children:"Copy path"})]})}),document.body)}function Im(e,t){return{x:Math.max(8,Math.min(e,window.innerWidth-164-8)),y:Math.max(8,Math.min(t,window.innerHeight-42-8))}}const To=5,Tm=280;function $m({activeWorkspaceAppId:e,connection:t,message:s,onOpenFileInSidebar:r,onOpenSession:a}){const i=s.activities??[],[o,l]=c.useState(!1),[u,f]=c.useState(null),p=c.useId(),b=c.useMemo(()=>au(i),[i]),m=c.useMemo(()=>xm(i,o),[i,o]),h=i.find(R=>R.imagePreview)?.imagePreview??null,x=s.deliverables??[],g=ka(u,t,e),y=s.traceState==="running",k=s.traceState==="failed"||s.traceState==="interrupted",w=bm(s.traceStartedAt,s.traceCompletedAt),j=qm(b.text,s.traceState,w,i),E=km(i);return i.length>0&&i.every(R=>R.subagentMessage)?n.jsxs(n.Fragment,{children:[n.jsx(Dm,{activities:i}),n.jsx(yi,{activity:s.refinerActivity})]}):n.jsxs(n.Fragment,{children:[i.length>0||x.length>0?n.jsxs("article",{className:`activity-group work-trace ${y?"running":"settled"}`,children:[i.length>0?n.jsxs("div",{className:"activity-summary-row",children:[n.jsx(Er,{controls:m.toolCount>0?p:void 0,danger:k,expanded:m.toolsExpanded,icon:h?n.jsx(Xm,{activeWorkspaceAppId:e,connection:t,image:h}):n.jsx(Jm,{kind:b.kind}),onToggle:m.toolCount>0?()=>l(R=>!R):void 0,running:y,children:j}),E.length>0&&a?n.jsx(ym,{onOpenSession:a,onShowAll:()=>l(!0),sessions:E}):null]}):null,x.length>0?n.jsx(Lm,{artifacts:x,connection:t,onOpenFileInSidebar:r}):null,m.visibleActivities.length>0?n.jsx("div",{className:"work-trace-flow",id:p,children:m.visibleActivities.map(R=>n.jsx(Pm,{activeWorkspaceAppId:e,activity:R,connection:t,onOpenImage:f,onOpenSession:a},R.id))}):null,n.jsx(Mi,{open:!!g,src:g,title:u?.path??"",onClose:()=>f(null)})]}):null,n.jsx(yi,{activity:s.refinerActivity})]})}function yi({activity:e}){return e?n.jsx("article",{className:"refiner-activity-row",children:n.jsx(Sm,{activity:e})}):null}function Pm({activeWorkspaceAppId:e,activity:t,connection:s,onOpenImage:r,onOpenSession:a}){const[i,o]=c.useState(!1),l=c.useId();return t.subagentMessage?n.jsx($o,{activity:t}):n.jsxs("div",{className:`activity-tool-row ${t.controlKind==="turn_aborted"?"danger":""}`,children:[n.jsx(Er,{className:"activity-tool-summary",controls:l,danger:t.controlKind==="turn_aborted",expanded:i,icon:t.kind==="command"?n.jsx(xa,{"aria-hidden":!0,className:"activity-summary-kind-icon",size:12}):void 0,onToggle:()=>o(u=>!u),children:Vm(t)}),i?n.jsx(_m,{activeWorkspaceAppId:e,activity:t,connection:s,detailsId:l,onOpenImage:r,onOpenSession:a}):null]})}function _m({activeWorkspaceAppId:e,activity:t,connection:s,detailsId:r,onOpenImage:a,onOpenSession:i}){const o=ka(t.imagePreview??null,s,e);return n.jsxs("div",{className:"activity-tool-details",id:r,children:[t.kind==="command"&&t.content?n.jsx(Wm,{command:t.content,exitCode:t.terminal?.exitCode,output:t.detail,state:t.state}):t.content?ep(t.content)?n.jsx("pre",{className:"activity-detail-output",children:t.content}):n.jsx("code",{className:"activity-tool-content",children:t.content}):null,t.detail&&t.kind!=="command"?n.jsx("pre",{className:"activity-detail-output",children:t.detail.replace(/\r\n/g,`
|
|
10
|
+
`).trimEnd()}):null,t.meta?n.jsx("small",{className:"activity-detail-meta",children:t.meta}):null,t.imagePreview&&o?n.jsx("button",{type:"button",className:"activity-image-preview",title:`Open ${t.imagePreview.path}`,onClick:()=>a(t.imagePreview??null),children:n.jsx("img",{alt:tc(t.imagePreview.path),decoding:"async",loading:"lazy",src:o})}):null,t.openSession&&i?n.jsx(Ro,{className:"activity-subagent-detail-avatar",openSession:t.openSession,onOpenSession:i}):null]})}function Lm({artifacts:e,connection:t,onOpenFileInSidebar:s}){return n.jsx("div",{className:"activity-artifact-list",children:e.map(r=>r.contentType.startsWith("video/")?n.jsx(zm,{artifact:r,connection:t,onOpenFileInSidebar:s},r.path):r.contentType.startsWith("image/")?n.jsx(Om,{artifact:r,connection:t},r.path):n.jsx(Em,{artifact:r,onOpenFileInSidebar:s},r.path))})}function Om({artifact:e,connection:t}){const[s,r]=c.useState(!1),a=Ri(t,e.path);return n.jsxs("div",{className:"activity-artifact-image",title:e.path,children:[n.jsx("button",{type:"button",disabled:!a,onClick:()=>r(!0),title:`Open ${e.title}`,children:a?n.jsx("img",{alt:e.title,decoding:"async",loading:"lazy",src:a}):n.jsx(Nr,{"aria-hidden":!0,size:20})}),n.jsx("strong",{children:e.title}),n.jsx(Mi,{open:s&&!!a,src:a,title:e.title,onClose:()=>r(!1)})]})}function zm({artifact:e,connection:t,onOpenFileInSidebar:s}){const r=c.useRef(null),[a,i]=c.useState(!1),o=pm(t,e.path),l=()=>{const u=r.current;u&&u.play().then(()=>i(!0)).catch(()=>{})};return n.jsxs("div",{className:"activity-artifact-video",title:e.path,children:[n.jsxs("div",{className:"activity-artifact-video-stage",children:[o?n.jsx("video",{controls:!0,onPlay:()=>i(!0),preload:"metadata",ref:r,src:o}):n.jsx("div",{className:"activity-artifact-video-loading",children:"Preparing video…"}),o&&!a?n.jsx("button",{type:"button",className:"activity-artifact-video-play",onClick:l,"aria-label":`Play ${e.title}`,children:n.jsx(Rc,{"aria-hidden":!0,fill:"currentColor",size:22})}):null]}),n.jsxs("div",{className:"activity-artifact-video-footer",children:[n.jsxs("button",{type:"button",className:"activity-artifact-video-file",onClick:()=>{ha(e.path)},title:`Show ${e.path} in its folder`,children:[n.jsx(Di,{"aria-hidden":!0,size:13}),n.jsxs("span",{children:[n.jsx("strong",{children:e.title}),n.jsx("code",{children:e.path})]}),n.jsx("small",{children:e.sizeBytes==null?e.contentType:Fm(e.sizeBytes)})]}),s?n.jsxs("button",{type:"button",className:"activity-artifact-video-sidebar",onClick:()=>s(e.path),title:"Open video in sidebar",children:[n.jsx(Oi,{"aria-hidden":!0,size:13}),"Open in sidebar"]}):null]})]})}function Fm(e){return e<1024?`${e} B`:e<1024**2?`${(e/1024).toFixed(1)} KB`:e<1024**3?`${(e/1024**2).toFixed(1)} MB`:`${(e/1024**3).toFixed(1)} GB`}function $o({activity:e}){const[t,s]=c.useState(!1),r=e.subagentMessage;if(!r)return null;const a=`${Ao(r.roleId??e.openSession?.roleId)} subagent`,i=r.direction==="received"?`${a} update`:`Message to ${a.toLowerCase()}`,o=r.modelRef?.modelId?`${i} · ${r.modelRef.modelId}`:i,l=Bm(r),u=Um(r.body);return n.jsx("div",{className:`activity-child-message ${r.direction}`,children:n.jsxs("div",{className:"activity-child-message-card",children:[n.jsxs("div",{className:"activity-child-message-header",children:[n.jsxs("span",{className:"activity-child-message-title",children:[n.jsx(ys,{"aria-hidden":!0,size:14}),n.jsx("strong",{title:o,children:o})]}),n.jsx("small",{children:r.kind.replace(/_/g," ")})]}),n.jsx("p",{className:u&&!t?"collapsed":void 0,style:{"--subagent-message-visible-lines":To},children:r.body}),u?n.jsx("button",{type:"button",className:"activity-child-message-toggle","aria-expanded":t,onClick:()=>s(f=>!f),children:t?"Show less":"Show more"}):null,n.jsxs("details",{className:"activity-child-message-details",children:[n.jsx("summary",{children:"Message details"}),n.jsx("div",{className:"activity-child-message-facts","aria-label":"Child message metadata",children:l.map(f=>n.jsxs("span",{children:[n.jsx("small",{children:f.label}),n.jsx("code",{title:f.value,children:f.value})]},f.label))})]}),r.refs?.length?n.jsx("div",{className:"activity-child-message-refs","aria-label":"Child message references",children:r.refs.map(f=>n.jsxs("span",{children:[f.kind,":",f.id," (",f.label,")"]},`${f.kind}:${f.id}`))}):null]})},e.id)}function Dm({activities:e}){const t=e[0]?.subagentMessage?.direction??"received";return n.jsx("article",{className:`activity-child-message-group ${t}`,children:e.map(s=>n.jsx($o,{activity:s},s.id))})}function Bm(e){return[{label:"Message",value:e.messageId},{label:"Kind",value:e.kind},{label:"From",value:e.fromRunId},e.roleId?{label:"Role",value:e.roleId}:null,e.modelRef?{label:"Model",value:`${e.modelRef.providerId}/${e.modelRef.modelId}`}:null,e.childSessionId?{label:"Child",value:e.childSessionId}:null,e.toRunId?{label:"To run",value:e.toRunId}:null,e.toRole?{label:"To role",value:e.toRole}:null,e.deliveryStatus?{label:"Delivery",value:e.deliveryStatus}:null,e.wakeReason?{label:"Wake",value:e.wakeReason}:null,e.createdAt?{label:"Created",value:e.createdAt}:null].filter(t=>!!t)}function Um(e){return e.length>Tm||e.split(/\r?\n/).length>To}function qm(e,t,s,r){return t==="running"?Hm(r)||e||"Working…":t==="failed"?`${s?`Failed after ${s}`:"Failed"}${e?` · ${e}`:""}`:t==="interrupted"?`${s?`Interrupted after ${s}`:"Interrupted"}${e?` · ${e}`:""}`:t==="completed"?`${s?`Worked for ${s}`:"Worked"}${e?` · ${e}`:""}`:e}function Hm(e){let t=null;for(let s=e.length-1;s>=0;s-=1){const r=e[s];if(r.kind!=="reasoning"&&(t??=r,r.state==="running"||r.state==="pending"))return Sr(r)}return t?Sr(t):null}function Sr(e){return e.kind==="command"?e.state==="failed"?"Command failed":qi(e.content,e.state)??(e.state==="running"||e.state==="pending"?"Running command":"Ran command"):e.label.trim()||null}function Vm(e){if(e.kind!=="command")return e.label;if(e.state==="running"||e.state==="pending")return Sr(e)??"Running command";const t=Gm(e.terminal?.durationMs);return e.state==="failed"?`Command failed${t?` in ${t}`:""}`:`${Sr(e)??"Ran command"}${t?` in ${t}`:""}`}function Wm({command:e,exitCode:t,output:s,state:r}){const a=r==="running"||r==="pending"?"Running…":t!=null?`Exit code ${t}`:r==="completed"?"Exit code 0":"Failed";return n.jsxs("section",{"aria-label":"Shell command output",className:`activity-command-terminal ${r??"completed"}`,children:[n.jsx("header",{children:"Shell"}),n.jsx("pre",{children:n.jsxs("code",{className:"shell-command-code",children:[n.jsx("span",{className:"activity-command-prompt","aria-hidden":!0,children:"$ "}),Km(e),s?n.jsx("span",{className:"activity-command-output",children:`
|
|
11
|
+
${s.replace(/\r\n/g,`
|
|
12
|
+
`).trimEnd()}`}):null]})}),n.jsx("footer",{children:a})]})}function Gm(e){if(e==null||e<0)return null;if(e<6e4)return`${Math.max(1,Math.round(e/1e3))}s`;const t=Math.floor(e/6e4),s=Math.round(e%6e4/1e3);return s>0?`${t}m ${s}s`:`${t}m`}function Km(e){return Qm(e).map((t,s)=>n.jsx("span",{className:`shell-token ${t.kind}`,children:t.text},`${s}-${t.text}`))}function Qm(e){const t=e.match(/"[^"]*"|'[^']*'|&&|\|\||[|;&()<>]|\s+|[^\s|;&()<>]+/g)??[e];let s=!0;return t.map(r=>/^\s+$/.test(r)?{kind:"plain",text:r}:/^(?:&&|\|\||[|;&()<>])$/.test(r)?(s=r!==")"&&r!==">",{kind:"operator",text:r}):/^(['"]).*\1$/.test(r)?{kind:"string",text:r}:/^[A-Za-z_][A-Za-z0-9_]*=.*/.test(r)?{kind:"variable",text:r}:s?(s=!1,{kind:"command",text:r}):/^-{1,2}[\w-]/.test(r)?{kind:"flag",text:r}:/^(?:\.{0,2}\/|~\/|[\w.-]+\/)/.test(r)?{kind:"path",text:r}:{kind:"plain",text:r})}function Xm({activeWorkspaceAppId:e,connection:t,image:s}){const r=ka(s,t,e);return r?n.jsx("img",{"aria-hidden":!0,className:"activity-summary-image",decoding:"async",loading:"lazy",src:r,alt:""}):null}function Jm({kind:e}){const t=Ym(e);return n.jsx(t,{"aria-hidden":!0,className:`activity-summary-kind-icon ${e}`,size:14})}function Ym(e){return e==="approval"||e==="control"?nc:e==="edit"?sc:e==="image"?Nr:e==="list"?rc:e==="read"?bt:e==="reasoning"?Ui:e==="search"?ac:e==="subagent"?ys:e==="web"?zi:xa}function ka(e,t,s){const r=e&&Zm(e.path)?e.path:null,a=e?.appId??s,i=Ri(t,r),o=rl(t,r?null:a,r?null:e?.path);return r?i:o}function Zm(e){return/^file:\/\//i.test(e)||/^\//.test(e)||/^[A-Za-z]:[\\/]/.test(e)}function ep(e){return e.includes(`
|
|
13
|
+
`)||e.length>160}function tp({summary:e,onOpenFileInSidebar:t}){const[s,r]=c.useState(null),a=`${e.filesChanged} ${e.filesChanged===1?"file":"files"} changed`,i=e.files.reduce((o,l)=>{const u=Po(l);return{additions:o.additions+u.additions,deletions:o.deletions+u.deletions}},{additions:0,deletions:0});return n.jsxs("div",{className:"change-summary-card",children:[n.jsxs("div",{className:"change-summary-header",children:[n.jsx("span",{children:a}),n.jsxs("span",{className:"change-summary-counts",children:[n.jsxs("span",{className:"diff-addition",children:["+",i.additions]}),n.jsxs("span",{className:"diff-deletion",children:["-",i.deletions]})]})]}),n.jsx("div",{className:"change-summary-files",children:e.files.map(o=>n.jsx(np,{file:o,onOpenFileInSidebar:t,open:s===o.path,onToggle:()=>r(l=>l===o.path?null:o.path)},o.path))})]})}function np({file:e,onOpenFileInSidebar:t,open:s,onToggle:r}){const a=Po(e),i=_o(e.patch);return n.jsxs("div",{className:"change-summary-file",children:[n.jsxs("div",{className:"change-summary-file-trigger",children:[n.jsx("button",{type:"button",className:"change-summary-file-toggle",onClick:r,children:n.jsx("span",{children:e.path})}),n.jsxs("span",{className:"change-summary-counts",children:[n.jsxs("span",{className:"diff-addition",children:["+",a.additions]}),n.jsxs("span",{className:"diff-deletion",children:["-",a.deletions]})]}),t&&n.jsx("button",{type:"button",className:"change-summary-open-file",title:"Open in sidebar","aria-label":`Open ${e.path} in sidebar`,onClick:()=>t(e.path),children:n.jsx(yr,{size:14})}),n.jsx("button",{type:"button",className:"change-summary-expand-file",title:s?"Hide patch":"Show patch","aria-label":s?`Hide ${e.path} patch`:`Show ${e.path} patch`,onClick:r,children:n.jsx(zt,{className:s?"expanded":"",size:14})})]}),s&&i&&n.jsx("div",{className:"change-summary-patch-unavailable",children:"Patch is no longer available for this workspace path."}),s&&e.patch&&!i&&n.jsx("pre",{className:"change-summary-patch",children:n.jsx("code",{children:e.patch})})]})}function Po(e){if((e.status==="added"||e.status==="untracked")&&e.additions===0&&e.content)return{additions:sp(e.content),deletions:0};if(e.additions>0||e.deletions>0||!e.patch||_o(e.patch))return{additions:e.additions,deletions:e.deletions};const t=rp(e.patch);return t.additions>0||t.deletions>0?t:{additions:e.additions,deletions:e.deletions}}function sp(e){const t=e.endsWith(`
|
|
14
|
+
`)?e.slice(0,-1):e;return t?t.split(`
|
|
15
|
+
`).length:0}function _o(e){return/^error: Could not access /m.test(e)}function rp(e){let t=0,s=0;for(const r of e.split(`
|
|
16
|
+
`))r.startsWith("+++")||r.startsWith("---")||(r.startsWith("+")&&(t+=1),r.startsWith("-")&&(s+=1));return{additions:t,deletions:s}}function ap({run:e}){const t=e.plan,s=e.questions.find(l=>l.status==="pending")??null,r=ic(t?.metadata),i=e.target.kind==="agent"?null:e.sourceRefs[0]??t?.sourcePlan[0]?.path??null,o=e.checkRefs.length||t?.checks.length||0;return n.jsxs("section",{className:"chat-create-receipt","aria-label":"Create or improve status",children:[n.jsxs("div",{className:"chat-create-receipt-heading",children:[n.jsx(bt,{size:14}),n.jsx("span",{children:ip(e)}),n.jsx("small",{children:e.target.kind})]}),n.jsx("p",{children:op(e,t?.summary??null,s?.prompt??null)}),r||i||o?n.jsxs("div",{className:"chat-create-receipt-facts",children:[r?n.jsx("span",{title:r.detail,children:r.label}):null,i?n.jsx("span",{title:i,children:i}):null,o?n.jsxs("span",{children:[o," Evals"]}):null]}):null]})}function ip(e){const t=e.target.kind==="agent";return e.state==="awaiting_questions"?"Question ready":e.state==="awaiting_plan_approval"?"Plan ready":e.state==="applying_source"?t?"Saving Agent":"Applying source":e.state==="running_checks"?"Running Evals":e.state==="evaluating"?t?"Checking Agent":"Evaluating candidate":e.state==="awaiting_promotion"?t?"Update ready":"Candidate ready":e.state==="opening_pull_request"?"Opening review":e.state==="pull_request_open"?"Review open":e.state==="reconciling_release"?t?"Applying update":"Merging change":e.state==="released"?t?"Agent updated":"Released":e.state==="rejected"?t?"Current Agent kept":"Rejected":e.state==="ready"||e.state==="ready_local"?t?"Agent ready":"Workproduct ready":e.state==="published_hosted"?"Published":e.state==="cancelled"?"Cancelled":e.state==="blocked"?"Blocked":e.state==="failed"?"Failed":e.operation==="improve"?"Planning improvement":"Planning creation"}function op(e,t,s){return e.state==="awaiting_questions"&&s?s:t||(e.blockedReason?e.blockedReason:e.state==="ready"||e.state==="ready_local"?e.target.kind==="agent"?"The Agent and its actions are ready to use.":"The candidate and its Evals are ready.":e.state==="awaiting_promotion"?e.target.kind==="agent"?"The updated Agent passed its Evals. Apply the update or keep the current version.":"The candidate has been committed and evaluated. Merge or reject it.":e.state==="pull_request_open"&&e.releaseOutcome.pullRequest?e.target.kind==="agent"?"The Agent update review is waiting to finish or close.":"The external review is waiting for merge or closure.":e.state==="released"?e.target.kind==="agent"?"The Agent update is saved and its Evals passed.":"The change merged and the active Profile passed its post-merge Evals.":e.state==="rejected"?e.blockedReason??(e.target.kind==="agent"?"The Agent update was not applied.":"The candidate was rejected."):`Preparing work for ${e.objective}.`)}const fa=c.memo(function({activeWorkspaceAppId:t=null,animateInitialContent:s=!1,accountBaseUrl:r=null,billingOrganizationSlug:a=null,billingTeamId:i=null,connection:o=null,conversationLinks:l,message:u,kvCacheSummary:f=null,onOpenBrowserLink:p,onOpenAttachmentInSidebar:b,onOpenFileInSidebar:m,onOpenProfileSettings:h,onResolveUserQuestion:x,onOpenSession:g,onOpenPonder:y,showFooter:k=!0,userAttachmentDisplay:w="full",workspaceRootPath:j=null}){if(u.role==="task_message")return n.jsx(Kh,{message:u,onOpenSession:g,onOpenPonder:y,connection:o});if(u.role==="status_divider")return n.jsx(wp,{message:u});if(u.role==="activity_group")return n.jsx($m,{activeWorkspaceAppId:t,connection:o,message:u,onOpenFileInSidebar:m,onOpenSession:g});if(u.role==="error")return u.errorKind==="opchat_quota_exceeded"?n.jsx("article",{className:"message-row assistant",children:n.jsx(xp,{accountBaseUrl:r,billingOrganizationSlug:a,billingTeamId:i,onOpenBrowserLink:p})}):n.jsx("article",{className:"message-row assistant",children:n.jsx("div",{className:"assistant-message error-message",children:u.content??""})});if(u.role==="user"){const S=Gh(u.content??""),R=u.attachments??[],A=w==="compact",$=R.length>0,D=!!(!A&&R.some(U=>U.kind==="image"));return!S&&!$?null:n.jsx("article",{className:"message-row user",children:n.jsxs("div",{className:`user-message ${$?"has-attachments":""} ${D?"has-image-attachments":""}`,children:[R.length?n.jsx(vp,{attachments:R,compact:A,connection:o,onOpenAttachment:b}):null,S?n.jsx(Co,{content:S}):null]})})}const E=u.actionRun&&bi(u.actionRun)?cm(u.actionRun):null;return n.jsxs("article",{className:"message-row assistant",children:[u.reasoningContent?n.jsx(lp,{activeWorkspaceAppId:t,animateInitialContent:s,connection:o,reasoningContent:u.reasoningContent,onOpenBrowserLink:p,onOpenFileInSidebar:m,workspaceRootPath:j}):null,u.content?n.jsx("div",{className:"assistant-message",children:n.jsx(Mo,{activeWorkspaceAppId:t,animateInitialContent:s,connection:o,content:u.content,conversationLinks:l,onOpenConversation:g,onOpenBrowserLink:p,onOpenFileInSidebar:m,workspaceRootPath:j})}):null,u.sources?.length?n.jsx(hp,{sources:u.sources,onOpenBrowserLink:p}):null,u.actionRun&&bi(u.actionRun)?n.jsxs("div",{className:`assistant-message action-run-profile-message ${u.actionRun.status}`,children:[n.jsx(Ni,{activeWorkspaceAppId:t,connection:o,content:u.actionRun.responseText??um(u.actionRun),onOpenBrowserLink:p,onOpenFileInSidebar:m,workspaceRootPath:j}),E?n.jsx("div",{className:"action-run-agent-label",children:h?n.jsx("button",{type:"button",className:"action-run-agent-link",onClick:h,children:E}):n.jsx("span",{children:E})}):null]}):u.actionRun?n.jsx(lm,{actionRun:u.actionRun,onOpenBrowserLink:p,onOpenFileInSidebar:m,workspaceRootPath:j}):null,u.changeSummary&&n.jsx(tp,{summary:u.changeSummary,onOpenFileInSidebar:m}),u.createImproveRun?n.jsx(ap,{run:u.createImproveRun}):null,u.userQuestion?n.jsx(fp,{question:u.userQuestion,onResolve:x}):null,k||f?n.jsx(ja,{content:u.content,timestamp:u.timestamp,kvCacheSummary:f}):null]})},up),lp=c.memo(function({activeWorkspaceAppId:t,animateInitialContent:s,connection:r,reasoningContent:a,onOpenBrowserLink:i,onOpenFileInSidebar:o,workspaceRootPath:l}){const[u,f]=c.useState(!1);return n.jsxs("div",{className:"activity-group assistant-reasoning",children:[n.jsx(Er,{expanded:u,icon:n.jsx(Ui,{"aria-hidden":!0,className:"activity-summary-kind-icon",size:13}),onToggle:()=>f(p=>!p),children:"Thinking"}),u?n.jsx("div",{className:"assistant-reasoning-content",children:n.jsx(Mo,{activeWorkspaceAppId:t,animateInitialContent:s,connection:r,content:a,onOpenBrowserLink:i,onOpenFileInSidebar:o,workspaceRootPath:l})}):null]})},cp);function cp(e,t){return e.activeWorkspaceAppId===t.activeWorkspaceAppId&&e.animateInitialContent===t.animateInitialContent&&e.connection===t.connection&&e.reasoningContent===t.reasoningContent&&e.onOpenBrowserLink===t.onOpenBrowserLink&&e.onOpenFileInSidebar===t.onOpenFileInSidebar&&e.workspaceRootPath===t.workspaceRootPath}function up(e,t){return e.activeWorkspaceAppId===t.activeWorkspaceAppId&&e.animateInitialContent===t.animateInitialContent&&e.accountBaseUrl===t.accountBaseUrl&&e.billingOrganizationSlug===t.billingOrganizationSlug&&e.billingTeamId===t.billingTeamId&&e.connection===t.connection&&e.kvCacheSummary===t.kvCacheSummary&&e.onOpenBrowserLink===t.onOpenBrowserLink&&e.onOpenAttachmentInSidebar===t.onOpenAttachmentInSidebar&&e.onOpenFileInSidebar===t.onOpenFileInSidebar&&e.onOpenProfileSettings===t.onOpenProfileSettings&&e.onResolveUserQuestion===t.onResolveUserQuestion&&e.onOpenSession===t.onOpenSession&&e.showFooter===t.showFooter&&e.userAttachmentDisplay===t.userAttachmentDisplay&&e.workspaceRootPath===t.workspaceRootPath&&dp(e.message,t.message)}function dp(e,t){return e===t?!0:e.id===t.id&&e.role===t.role&&e.content===t.content&&e.timestamp===t.timestamp&&e.turnId===t.turnId&&e.statusKind===t.statusKind&&e.statusState===t.statusState&&e.statusTone===t.statusTone&&e.errorKind===t.errorKind&&bp(e.attachments,t.attachments)&&e.activities===t.activities&&e.sources===t.sources&&e.actionRun===t.actionRun&&e.changeSummary===t.changeSummary&&e.createImproveRun===t.createImproveRun&&e.userQuestion===t.userQuestion&&e.reasoningContent===t.reasoningContent&&e.taskMessage===t.taskMessage}function fp({question:e,onResolve:t}){const[s,r]=c.useState(""),[a,i]=c.useState(!1),o=async l=>{if(!(!t||a||e.status!=="pending")){i(!0);try{await t(e,l)}finally{i(!1)}}};return n.jsxs("section",{className:`user-question-card ${e.status}`,"aria-label":"Question from OpenPond",children:[n.jsxs("header",{className:"user-question-header",children:[n.jsx("span",{className:"user-question-icon","aria-hidden":!0,children:n.jsx(lc,{size:17})}),n.jsxs("span",{className:"user-question-heading",children:[n.jsx("span",{className:"user-question-eyebrow",children:"Question"}),n.jsx("strong",{children:e.question})]})]}),e.reason?n.jsx("p",{className:"user-question-reason",children:e.reason}):null,e.status==="pending"?n.jsxs(n.Fragment,{children:[e.options.length>0?n.jsx("div",{className:"user-question-options",children:e.options.map((l,u)=>n.jsxs("button",{disabled:a||!t,type:"button",onClick:()=>{o({questionId:e.id,action:"answer",optionId:l.id,text:l.label})},children:[n.jsx("span",{className:"user-question-option-index","aria-hidden":!0,children:u+1}),n.jsxs("span",{className:"user-question-option-copy",children:[n.jsx("span",{children:l.label}),l.description?n.jsx("small",{children:l.description}):null]})]},l.id))}):null,e.allowFreeform?n.jsxs("form",{className:"user-question-freeform",onSubmit:l=>{l.preventDefault();const u=s.trim();u&&o({questionId:e.id,action:"answer",optionId:null,text:u})},children:[n.jsx("label",{htmlFor:`question-answer-${e.id}`,children:"Or write your own answer"}),n.jsxs("span",{className:"user-question-freeform-controls",children:[n.jsx("input",{"aria-label":"Answer",disabled:a||!t,id:`question-answer-${e.id}`,onChange:l=>r(l.target.value),placeholder:"Type an answer",value:s}),n.jsx("button",{disabled:a||!t||!s.trim(),type:"submit",children:a?"Sending…":"Answer"})]})]}):null,n.jsx("button",{className:"user-question-dismiss",disabled:a||!t,type:"button",onClick:()=>{o({questionId:e.id,action:"dismiss",optionId:null,text:""})},children:"Skip for now"})]}):n.jsxs("span",{className:"user-question-resolution",children:[n.jsx(Li,{"aria-hidden":!0,size:15}),n.jsx("small",{children:e.status==="answered"?`Answered${e.answer?.text?`: ${e.answer.text}`:""}`:"Skipped"})]})]})}function hp({sources:e,onOpenBrowserLink:t}){return n.jsx("div",{className:"assistant-sources","aria-label":"Sources",children:n.jsx("div",{className:"assistant-source-stack",children:e.map(s=>n.jsx(mp,{source:s,onOpenBrowserLink:t},`${s.id}:${s.url}`))})})}function mp({source:e,onOpenBrowserLink:t}){const s=gp(e),r=[e.title,Lo(e.url)].filter(Boolean).join(" - "),a=n.jsxs(n.Fragment,{children:[n.jsx(pp,{source:e}),n.jsx("span",{children:s})]});return t?n.jsx("button",{type:"button",className:"assistant-source-pill",title:r||s,"aria-label":`Open source ${s}`,onClick:()=>t(e.url,{newTab:!0}),children:a}):n.jsx("a",{className:"assistant-source-pill",href:e.url,target:"_blank",rel:"noreferrer",title:r||s,"aria-label":`Open source ${s}`,children:a})}function pp({source:e}){const[t,s]=c.useState(!1);return!e.faviconUrl||t?n.jsx(zi,{className:"assistant-source-fallback-icon",size:13}):n.jsx("img",{alt:"","aria-hidden":"true",className:"assistant-source-favicon",decoding:"async",loading:"lazy",src:e.faviconUrl,onError:()=>s(!0)})}function gp(e){return e.sourceName?.trim()||Lo(e.url)||e.title}function Lo(e){try{return new URL(e).hostname.replace(/^www\./i,"")}catch{return null}}function xp({accountBaseUrl:e,billingOrganizationSlug:t,billingTeamId:s,onOpenBrowserLink:r}){const a=oc({accountBaseUrl:e,organizationSlug:t,teamId:s}),i=n.jsxs(n.Fragment,{children:[n.jsx($a,{size:15}),n.jsx("span",{children:"Add credits"}),n.jsx(cc,{size:13})]});return n.jsxs("div",{className:"assistant-message quota-error-card",role:"alert",children:[n.jsx("div",{className:"quota-error-card-icon",children:n.jsx($a,{size:17})}),n.jsxs("div",{className:"quota-error-card-body",children:[n.jsx("strong",{children:"OpenPond Chat allowance reached"}),n.jsx("p",{children:"You have reached your OpChat token allowance for this period. Add credits or wait for the allowance to reset."}),r?n.jsx("button",{type:"button",className:"quota-error-card-action",onClick:()=>r(a,{newTab:!0}),children:i}):n.jsx("a",{className:"quota-error-card-action",href:a,target:"_blank",rel:"noreferrer",children:i})]})]})}function bp(e,t){if(e===t)return!0;if(!e||!t||e.length!==t.length)return!1;for(let s=0;s<e.length;s+=1){const r=e[s],a=t[s];if(r.id!==a.id||r.kind!==a.kind||r.name!==a.name||r.mediaType!==a.mediaType||r.sizeBytes!==a.sizeBytes||r.lineCount!==a.lineCount||r.imagePreview?.sessionId!==a.imagePreview?.sessionId||r.imagePreview?.turnId!==a.imagePreview?.turnId||r.imagePreview?.attachmentId!==a.imagePreview?.attachmentId||r.imagePreview?.storageName!==a.imagePreview?.storageName||r.imagePreview?.contentType!==a.imagePreview?.contentType||r.filePreview?.sessionId!==a.filePreview?.sessionId||r.filePreview?.turnId!==a.filePreview?.turnId||r.filePreview?.attachmentId!==a.filePreview?.attachmentId||r.filePreview?.storageName!==a.filePreview?.storageName||r.filePreview?.contentType!==a.filePreview?.contentType)return!1}return!0}function vp({attachments:e,compact:t,connection:s,onOpenAttachment:r}){return n.jsx("div",{className:`user-message-attachments${t?" compact":""}`,"aria-label":"Attached files",children:e.map(a=>n.jsx(yp,{attachment:a,compact:t,connection:s,onOpenAttachment:r},a.id))})}function yp({attachment:e,compact:t,connection:s,onOpenAttachment:r}){return!t&&e.kind==="image"&&e.imagePreview?n.jsx(kp,{attachment:e,connection:s}):n.jsx(jp,{attachment:e,onOpenAttachment:r})}function jp({attachment:e,onOpenAttachment:t}){const[s,r]=c.useState(!1),a=!!((e.filePreview||e.imagePreview)&&t),i=s?"Opening":e.lineCount!==void 0?po(e.lineCount):null,o=n.jsxs(n.Fragment,{children:[n.jsx(go,{attachment:e,size:13}),n.jsx("span",{children:e.name}),i?n.jsx("small",{children:i}):null]});return a?n.jsx("button",{"aria-label":`Open attached file ${e.name}`,className:"user-message-attachment openable",disabled:s,title:`Open ${e.name}`,type:"button",onClick:()=>{!t||s||(r(!0),t(e).finally(()=>r(!1)))},children:o}):n.jsx("span",{className:"user-message-attachment",title:e.name,children:o})}function kp({attachment:e,connection:t}){const s=Vh(t,e.imagePreview);return n.jsxs("figure",{className:`user-message-image-attachment ${s?"ready":"loading"}`,title:e.name,children:[n.jsx("div",{className:"user-message-image-frame",children:s?n.jsx("img",{alt:e.name,decoding:"async",loading:"lazy",src:s}):n.jsx(Nr,{size:24})}),n.jsx("figcaption",{children:n.jsx("span",{children:e.name})})]})}const bg=c.memo(function(){return n.jsx("article",{className:"activity-group thinking-row","aria-live":"polite",children:n.jsx(Er,{running:!0,children:"Thinking…"})})});function wp({message:e}){const t=e.statusTone??"info",s=e.statusState??"idle";return n.jsx("article",{className:`status-divider ${t} ${s}`,"aria-live":t==="danger"?"assertive":"polite",children:n.jsx("span",{children:e.content??""})})}function Cr(e){return e.state==="proposed"&&["waiting_input","waiting_approval","cancelled"].includes(e.target.status)}function Sp({items:e,busy:t,editingId:s,onEdit:r,onSend:a,onDismiss:i,onOpen:o}){return e.length?n.jsx("section",{className:"ponder-recommendations","aria-label":"Ponder recommendations",children:e.map(l=>n.jsxs("article",{className:"ponder-recommendation","data-state":l.state,children:[n.jsx("button",{type:"button",className:"ponder-recommendation-target",onClick:()=>o(l.target.conversationId),children:l.target.title}),n.jsx("p",{children:l.summary}),l.submittedText||l.proposedText?n.jsx("blockquote",{children:l.submittedText??l.proposedText}):null,n.jsxs("details",{children:[n.jsx("summary",{children:"Why Ponder suggested this"}),l.evidence.map(u=>n.jsx("p",{children:u.excerpt},u.id))]}),["proposed","failed","stale","submitting"].includes(l.state)?n.jsxs("div",{className:"ponder-recommendation-actions",children:[l.state==="proposed"&&l.proposedText?n.jsxs(n.Fragment,{children:[n.jsx("button",{type:"button",disabled:!!t,onClick:()=>r(l),children:s===l.id?"Editing below":"Edit"}),n.jsx("button",{type:"button",disabled:!!t||Cr(l),onClick:()=>a(l),children:t===l.id?"Sending…":s===l.id?"Send edited message":"Send"})]}):null,(l.state==="failed"||l.state==="submitting")&&l.submittedText&&l.submissionRevision!==null?n.jsx("button",{type:"button",disabled:!!t,onClick:()=>a(l),children:t===l.id?"Retrying…":"Retry reviewed message"}):null,Cr(l)?n.jsx("small",{role:"status",children:"Resolve this task's wait or cancellation before sending a new message."}):null,l.state!=="submitting"?n.jsx("button",{type:"button",disabled:!!t,onClick:()=>i(l),children:"Dismiss"}):n.jsx("small",{role:"status",children:"Awaiting task acknowledgment"}),l.state==="stale"?n.jsx("small",{role:"status",children:"Task changed — review its latest state"}):null]}):n.jsx("small",{role:"status",children:l.state==="submitted"?"Message submitted to the task":l.state==="stale"?"Task changed — review the latest task before sending":l.state.replaceAll("_"," ")}),l.error?n.jsx("p",{role:"alert",children:l.error}):null]},l.id))}):null}function Cp(e,t){const[s,r]=c.useState([]),[a,i]=c.useState(null),[o,l]=c.useState(null),u=c.useRef({connection:e,bindingId:t});u.current={connection:e,bindingId:t};const f=c.useRef(!1),p=c.useRef(!0),b=c.useCallback(async h=>{if(!t)return;const x=await Ie(e,"/v1/ponder/recommendations",{signal:h});p.current&&!h?.aborted&&u.current.connection===e&&u.current.bindingId===t&&x.bindingId===t&&(r(x.items),i(null))},[e,t]);c.useEffect(()=>{if(p.current=!0,r([]),i(null),l(null),!t)return()=>{p.current=!1};const h=new AbortController;let x=!1;const g=async()=>{if(!x){x=!0;try{await b(h.signal)}catch(k){h.signal.aborted||i(k instanceof Error?k.message:"Unable to read recommendations.")}finally{x=!1}}};g();const y=window.setInterval(()=>{g()},5e3);return()=>{p.current=!1,h.abort(),window.clearInterval(y)}},[t,b]);const m=c.useCallback(async(h,x,g)=>{if(f.current||!t)return!1;if(x==="send"&&Cr(h))return i("Resolve this task's wait or cancellation before sending a new message."),!1;const y=x==="send"&&(h.state==="submitting"||h.state==="failed");if(y&&(!h.submittedText||h.submissionRevision===null))return!1;const k=y?h.submissionRevision:h.revision,w=y?h.submittedText:g;f.current=!0,l(h.id);try{return await Ie(e,`/v1/ponder/recommendations/${encodeURIComponent(h.id)}/action`,{method:"POST",body:JSON.stringify({action:x,expectedRevision:k,...w===void 0?{}:{message:w}})}),!p.current||u.current.connection!==e||u.current.bindingId!==t?!1:(await b(),p.current&&u.current.connection===e&&u.current.bindingId===t)}catch(j){return u.current.connection===e&&u.current.bindingId===t&&i(j instanceof Error?j.message:"Recommendation action failed."),!1}finally{f.current=!1,u.current.connection===e&&u.current.bindingId===t&&l(null)}},[t,e,b]);return{items:s,error:a,busy:o,action:m,refresh:b}}function Np({connection:e,work:t,localWork:s,busy:r,onOpenWork:a,onOpenLocalWork:i,onOpenLocalOutput:o,onOpenOutput:l}){const[u,f]=c.useState(null),[p,b]=c.useState(null),m=c.useRef({connection:e,mounted:!0,inFlight:!1});m.current.connection!==e&&(m.current={connection:e,mounted:!0,inFlight:!1}),c.useEffect(()=>{const g=m.current;return g.mounted=!0,f(null),b(null),()=>{g.mounted=!1}},[e]);const h=[...t.flatMap(g=>g.deliveries.filter(y=>y.status==="attention"&&y.attentionAt).map(y=>({task:g,delivery:y,kind:"hosted"}))),...s.flatMap(g=>g.deliveries.filter(y=>y.status==="attention"&&y.attentionAt).map(y=>({task:g,delivery:y,kind:"local"})))];async function x(g){const y=m.current;if(!g.attentionAt||y.inFlight)return;const k=()=>y.mounted&&m.current===y;y.inFlight=!0,f(g.inputId),b(null);try{await Ie(e,"/v1/ponder/results/retry",{method:"POST",body:JSON.stringify({inputId:g.inputId,attentionAt:g.attentionAt,priorTurnId:g.ponderTurnId})})}catch(w){k()&&b(w instanceof Error&&w.message==="hosted_work_model_not_available"?"The selected model is unavailable. Choose an available model, then retry.":"The discussion could not be started. Refresh and try again.")}finally{y.inFlight=!1,k()&&f(null)}}return h.length===0?null:n.jsxs("section",{"aria-label":"Saved results needing discussion","aria-live":"polite",children:[h.map(g=>n.jsxs("div",{className:"ponder-desktop-attention",children:[n.jsxs("p",{children:["The result from"," ",n.jsx("button",{type:"button",onClick:()=>g.kind==="hosted"?a(g.task.conversationId):i(g.task),children:g.task.title})," ","is saved.",g.delivery.attentionReason==="model_unavailable"?" The selected model was unavailable.":g.delivery.attentionReason==="chat_cancelled"?" The discussion was cancelled.":" The discussion failed."]}),g.delivery.outputs.map(y=>n.jsxs("button",{type:"button",onClick:()=>g.kind==="local"?o({...g.task,turnId:g.delivery.localTurnId},y.id):l(y.id),children:[y.title," · Download"]},y.id)),n.jsx("button",{type:"button",disabled:r||u!==null,onClick:()=>{x(g.delivery)},children:u===g.delivery.inputId?"Starting discussion…":"Retry discussion"})]},g.delivery.inputId)),p?n.jsx("p",{role:"alert",children:p}):null]})}function Mp({message:e,connection:t,work:s,onOpenWork:r,onOpenOutput:a,onOpenLocalWork:i,onOpenLocalOutput:o}){if(e.source==="ponder-recommendation")return null;const l=e.metadata.ponderMessage,u=uc.safeParse(e.metadata.ponderLocalMessage),f=u.success?u.data:null;if(!l&&!f&&e.role!=="user"&&e.role!=="assistant")return null;const p=f?.body??l?.body??e.text;return!l&&!f&&e.role==="assistant"&&!p.trim()?null:n.jsxs("div",{className:`ponder-transcript-message ${f||l?"task-handoff":""}`,children:[n.jsx(fa,{showFooter:!1,connection:t,conversationLinks:s,onOpenSession:r,message:{id:e.id,role:f||l||e.role==="user"?"user":"assistant",content:p,timestamp:e.createdAt}}),f?n.jsxs("div",{className:"ponder-message-destination",children:[n.jsxs("span",{children:[f.direction==="sent"?"Sent to":"Received from"," "]}),n.jsx("button",{type:"button",onClick:()=>i(f),children:f.title}),n.jsxs("span",{children:[" ","· Local task ·"," ",f.status==="resolved"?"Delivered":f.status==="included"?"Included in agent request":f.status.replaceAll("_"," ")]})]}):null,l?n.jsxs("div",{className:"ponder-message-destination",children:[n.jsxs("span",{children:[l.direction==="sent"?"Sent to":"Received from"," "]}),n.jsx("button",{type:"button",onClick:()=>r(l.conversationId),children:l.title}),n.jsxs("span",{children:[" ","·"," ",l.status==="consumed"?"Delivered":l.status.replaceAll("_"," ")]})]}):null,e.role==="assistant"?n.jsx(ja,{content:p,timestamp:e.createdAt,kvCacheSummary:e.metadata.kvCacheSummary}):null,l?.outputFileIds.map(b=>n.jsx("button",{type:"button",onClick:()=>a(b),children:s.flatMap(m=>m.deliveries.flatMap(h=>h.outputs)).find(m=>m.id===b)?.title??"Saved file"},b)),f?.outputs.map(b=>n.jsxs("button",{type:"button",onClick:()=>o(f,b.id),children:[b.title," · Download"]},b.id))]})}function Rp({connection:e,item:t,onSaved:s}){const[r,a]=c.useState(null),[i,o]=c.useState(""),[l,u]=c.useState(""),[f,p]=c.useState(""),[b,m]=c.useState(""),[h,x]=c.useState(!1),[g,y]=c.useState(null),k=c.useRef(0),w=c.useRef(!1),j=c.useRef(new Map);c.useEffect(()=>(k.current++,w.current=!1,j.current.clear(),a(null),x(!1),y(null),()=>{k.current++}),[e,t.id,t.revision]);async function E(){if(w.current)return;const R=k.current;w.current=!0,x(!0);try{await Ns(e,t.scope);const A=`/v1/ponder/handoffs/${encodeURIComponent(t.id)}/edit`,$=_a.parse(await Ie(e,A));if($.handoffId!==t.id||$.revision!==t.revision)throw new Error("The handoff changed. Refresh Activity before editing it.");const D=[...$.targets];let U=$.nextCursor,K=1;for(;U;){if(R!==k.current)return;if(++K>200)throw new Error("The desktop catalog exceeded its page limit.");const ie=_a.parse(await Ie(e,`${A}?cursor=${encodeURIComponent(JSON.stringify(U))}`));if(ie.handoffId!==$.handoffId||ie.revision!==$.revision)throw new Error("The handoff changed. Refresh Activity before editing it.");D.push(...ie.targets),U=ie.nextCursor}if(R!==k.current)return;$.targets=D,$.nextCursor=null,a($),o($.targets.some(ie=>ie.id===$.successor.targetId&&ie.revision===$.successor.targetRevision)?$.successor.targetId:""),u($.successor.action==="create"?$.successor.title:t.title),p($.successor.prompt),m($.successCriteria),y(null)}catch(A){R===k.current&&y(A instanceof Error?A.message:String(A))}finally{R===k.current&&(w.current=!1,x(!1))}}async function S(){if(!r||w.current)return;const R=r.targets.find(U=>U.id===i);if(!R){y("Choose an available successor on the original desktop.");return}const A={...r.successor,targetId:R.id,targetRevision:R.revision,prompt:f.trim(),...r.successor.action==="create"?{title:l.trim()}:{}},$=JSON.stringify({handoffId:t.id,expectedRevision:r.revision,successor:A,successCriteria:b.trim()});j.current.has($)||j.current.set($,crypto.randomUUID());const D=k.current;w.current=!0,x(!0);try{if(await Ns(e,t.scope),D!==k.current||(await Ie(e,"/v1/ponder/handoffs/edit",{method:"POST",body:$,headers:{"Idempotency-Key":j.current.get($)}}),D!==k.current))return;a(null),y(null),await s()}catch(U){D===k.current&&y(U instanceof Error?U.message:String(U))}finally{D===k.current&&(w.current=!1,x(!1))}}return n.jsxs("div",{children:[r?n.jsxs("form",{onSubmit:R=>{R.preventDefault(),S()},children:[n.jsx("p",{children:"Changes apply before successor admission. Saving requires the success criteria to be checked again."}),n.jsxs("label",{children:["Successor",n.jsxs("select",{value:i,disabled:h,required:!0,onChange:R=>o(R.target.value),children:[n.jsx("option",{value:"",children:"Choose a successor"}),r.targets.map(R=>n.jsxs("option",{value:R.id,children:[R.title," · ",R.modelId??R.providerId," · ",R.workspaceLabel]},R.id))]})]}),r.successor.action==="create"&&n.jsxs("label",{children:["Task title",n.jsx("input",{value:l,disabled:h,required:!0,maxLength:300,onChange:R=>u(R.target.value)})]}),n.jsxs("label",{children:["Instruction",n.jsx("textarea",{value:f,disabled:h,required:!0,maxLength:32e3,onChange:R=>p(R.target.value)})]}),n.jsxs("label",{children:["Success criteria",n.jsx("textarea",{value:b,disabled:h,required:!0,maxLength:4e3,onChange:R=>m(R.target.value)})]}),n.jsx("button",{type:"submit",disabled:h,children:h?"Saving handoff…":"Save handoff"}),n.jsx("button",{type:"button",disabled:h,onClick:()=>a(null),children:"Close editor"})]}):n.jsx("button",{type:"button",disabled:h,onClick:()=>{E()},children:h?"Loading handoff…":"Edit handoff"}),g&&n.jsx("p",{role:"alert",children:g})]})}function Ep({items:e,onOpenTask:t,onCancel:s,cancelling:r,connection:a,onEdited:i}){return e.length?n.jsx("section",{className:"ponder-linked-work","aria-label":"Completion handoffs",children:e.map(o=>n.jsxs("article",{children:[n.jsx("strong",{children:o.title}),n.jsx("p",{children:o.cancellationRequested?"Cancellation requested; awaiting the actual stop outcome.":o.state==="waiting"?"Waiting for the original task’s verified result.":o.state==="ready"?"Prerequisite verified; awaiting desktop admission.":o.state==="dispatching"?"Desktop claimed the successor; reconciling admission.":o.state==="admitted"?"Successor admitted; awaiting its result.":o.state==="attention"?"The prerequisite needs review before its successor can start.":o.state==="blocked"?"Handoff blocked.":`Handoff ${o.state}.`}),o.waitingForDesktop&&n.jsx("p",{children:"Reconnect the original desktop under the same account and workspace."}),o.reason&&n.jsx("p",{children:o.reason}),n.jsxs("small",{children:[o.successor.modelId??o.successor.providerId," ·"," ",o.successor.workspaceLabel]}),n.jsxs("details",{children:[n.jsx("summary",{children:"Success criteria"}),n.jsx("p",{children:o.successCriteria})]}),o.prerequisite.sessionId&&n.jsx("button",{type:"button",onClick:()=>t(o,o.prerequisite.sessionId),children:"Open original task"}),o.successor.sessionId&&n.jsx("button",{type:"button",onClick:()=>t(o,o.successor.sessionId),children:"Open successor task"}),o.canCancel&&n.jsx("button",{type:"button",disabled:r!==null,onClick:()=>s(o),children:r===o.id?"Requesting cancellation…":"Cancel handoff"}),o.canEdit&&n.jsx(Rp,{connection:a,item:o,onSaved:i})]},o.id))}):null}async function Ap(e,t,s,r){if(!t.turnId)throw new Error("This local result has no completed task turn.");if(await Ns(e,t),!r())return;const a=await Ie(e,"/v1/ponder/desktop/outputs",{method:"POST",body:JSON.stringify({operationId:t.operationId,turnId:t.turnId,outputId:s})});if(!r())return;const i=Uint8Array.from(atob(a.contentsBase64),u=>u.charCodeAt(0)),o=URL.createObjectURL(new Blob([i],{type:a.contentType})),l=document.createElement("a");l.href=o,l.download=a.filename,document.body.append(l),l.click(),l.remove(),setTimeout(()=>URL.revokeObjectURL(o),3e4)}function xt(e){return e instanceof Ai&&(e.message==="public_api_route_not_found"||e.message==="product_route_not_found")?"Ponder Pal is available in this app, but the connected OpenPond service has not been updated yet.":e instanceof Error?e.message:String(e)}function Ip({connection:e,presentation:t,composer:s,onOpenWork:r,onOpenLocalWork:a}){const[i,o]=c.useState(null),[l,u]=c.useState(null),[f,p]=c.useState(""),[b,m]=c.useState(""),[h,x]=c.useState(!1),[g,y]=c.useState(null),[k,w]=c.useState([]),[j,E]=c.useState([]),[S,R]=c.useState([]),[A,$]=c.useState([]),[D,U]=c.useState(null),K=c.useRef(new Map),ie=c.useRef(null),ke=Cp(e,i?.bindingId??null),[Z,we]=c.useState(null),ve=Z?ke.items.find(C=>C.id===Z.id):null,te=!!(Z&&(!ve||ve.state!=="proposed"||ve.revision!==Z.revision||Cr(ve))),ye=c.useRef(""),G=c.useRef({connection:e,bindingId:i?.bindingId,destination:Z?.id??"chat",draft:f});G.current={connection:e,bindingId:i?.bindingId,destination:Z?.id??"chat",draft:f};const je=c.useRef(!1),H=c.useRef(!0);function z(){we(null),p(ye.current)}function P(C){Z||(ye.current=f),we(C),p(C.proposedText??"")}async function le(C,T){const q=G.current,W=Z?.id===C.id;await ke.action(C,T,T==="send"?W?f:C.proposedText??void 0:void 0)&&W&&G.current.connection===q.connection&&G.current.bindingId===q.bindingId&&G.current.destination===q.destination&&(G.current.draft===q.draft?z():we(null))}c.useEffect(()=>{H.current=!0;let C=!0;return o(null),u(null),w([]),E([]),R([]),$([]),U(null),K.current.clear(),ie.current=null,y(null),p(""),ye.current="",x(!1),m(""),we(null),Ie(e,"/v1/ponder",{method:"POST",body:"{}"}).then(T=>{C&&(o(T),y(null))}).catch(T=>{C&&y(xt(T))}),()=>{C=!1,H.current=!1}},[e]),c.useEffect(()=>{if(!i)return;let C=!0;const T=async()=>{try{const W=await Ie(e,`/v1/ponder/conversations/${encodeURIComponent(i.conversationId)}`);C&&u(W)}catch(W){C&&y(xt(W))}};T();const q=window.setInterval(()=>{T()},3e3);return()=>{C=!1,window.clearInterval(q)}},[e,i]),c.useEffect(()=>{if(!i)return;let C=!0;const T=async()=>{try{const W=await Ie(e,"/v1/ponder/work"),Y=Gr.array().parse(W.localHandoffs);C&&(E(W.items),R(W.localItems),$(Y))}catch(W){C&&y(xt(W))}};T();const q=window.setInterval(()=>{T()},3e3);return()=>{C=!1,window.clearInterval(q)}},[e,i]),c.useEffect(()=>{if(!i||t!=="activity")return;ie.current=null,w([]);let C=!0,T=!1;const q=async()=>{if(!T){T=!0;try{let Y;do{const Ce=ie.current,xe=await Ie(e,`/v1/ponder/conversations/${encodeURIComponent(i.conversationId)}/activity${Ce?`?after=${encodeURIComponent(Ce)}`:""}`);if(!C)return;xe.items.length>0&&(w(He=>[...He,...xe.items]),ie.current=xe.nextCursor),Y=xe.hasMore&&xe.items.length>0}while(Y)}catch(Y){C&&y(xt(Y))}finally{T=!1}}};q();const W=window.setInterval(()=>{q()},3e3);return()=>{C=!1,window.clearInterval(W)}},[e,i,t]);async function ge(C){const T=C.contentsBase64?Uint8Array.from(atob(C.contentsBase64),xe=>xe.charCodeAt(0)):C.text!==void 0?new TextEncoder().encode(C.text):null;if(!T)throw new Error(`Attachment ${C.name} has no content to upload.`);const q=await crypto.subtle.digest("SHA-256",T),W=btoa(String.fromCharCode(...new Uint8Array(q))),Y=await Ie(e,"/v1/ponder/work-inputs",{method:"POST",body:JSON.stringify({name:C.name,contentType:C.mediaType,sizeBytes:T.byteLength,sha256Base64:W})}),Ce=await fetch(Y.upload.url,{method:Y.upload.method,headers:Y.upload.headers,body:new Blob([T],{type:C.mediaType})});if(!Ce.ok)throw new Error(`Attachment upload failed (${Ce.status})`);return Ie(e,`/v1/ponder/work-inputs/${encodeURIComponent(Y.input.id)}/finalize`,{method:"POST",body:"{}"})}async function V(C=[],T){const q=(T?.promptOverride??f).trim();if(!i||!q||je.current)return!1;const W=G.current,Y=()=>H.current&&G.current.connection===W.connection&&G.current.bindingId===W.bindingId&&G.current.destination===W.destination;je.current=!0,x(!0);try{if(Z){if(te)throw new Error("Review the latest task state before sending this proposed message.");if(C.length)throw new Error("Send task messages as text. Attachments can be sent in the task's own conversation.");const He=await ke.action(Z,"send",q);return Y()?(He&&G.current.draft===W.draft&&z(),He):!1}const Ce=await Promise.all(C.map(ge));if(!Y())return!1;const xe=await Ie(e,`/v1/ponder/conversations/${encodeURIComponent(i.conversationId)}/turns`,{method:"POST",headers:{"idempotency-key":crypto.randomUUID()},body:JSON.stringify({prompt:q,attachments:Ce})});return Y()?(u(He=>He?{...He,activeTurn:xe}:{id:i.conversationId,messages:[],activeTurn:xe}),G.current.draft===W.draft&&p(""),y(null),!0):!1}catch(Ce){return Y()&&y(xt(Ce)),!1}finally{je.current=!1,x(!1)}}async function se(C,T){if(C.wait)try{await Ie(e,`/v1/ponder/turns/${encodeURIComponent(C.id)}/waits/${encodeURIComponent(C.wait.id)}/resolve`,{method:"POST",body:JSON.stringify(T)}),m("")}catch(q){y(xt(q))}}async function O(C){try{await Ie(e,`/v1/ponder/turns/${encodeURIComponent(C.id)}/cancel`,{method:"POST",body:"{}"})}catch(T){y(xt(T))}}async function Q(C){const T=window.open("about:blank","_blank");try{const q=await Ie(e,`/v1/ponder/work-outputs/${encodeURIComponent(C)}`);if(!q.downloadURL)throw new Error("This output is not available for download.");T?T.location.replace(q.downloadURL):window.location.assign(q.downloadURL)}catch(q){T?.close(),y(xt(q))}}async function B(C){if(!C.sessionId)return;const T=G.current,q=()=>H.current&&G.current.connection===T.connection&&G.current.bindingId===T.bindingId;try{if(await Ns(e,C),!q())return;a(C.sessionId)}catch(W){q()&&y(xt(W))}}async function de(C,T){const q=G.current,W=()=>H.current&&G.current.connection===q.connection&&G.current.bindingId===q.bindingId;try{await Ap(e,C,T,W)}catch(Y){W()&&y(xt(Y))}}async function Se(C){if(D)return;const T=G.current,q=()=>H.current&&G.current.connection===T.connection&&G.current.bindingId===T.bindingId,W=`${C.id}:${C.revision}`;K.current.has(W)||K.current.set(W,crypto.randomUUID()),U(C.id);try{await Ie(e,"/v1/ponder/handoffs/cancel",{method:"POST",headers:{"Idempotency-Key":K.current.get(W)},body:JSON.stringify({handoffId:C.id,expectedRevision:C.revision})});const Y=await Ie(e,"/v1/ponder/work"),Ce=Gr.array().parse(Y.localHandoffs);q()&&($(Ce),y(null))}catch(Y){q()&&y(xt(Y))}finally{q()&&U(null)}}const nt=!!(l?.activeTurn&&["queued","running","retry_scheduled"].includes(l.activeTurn.status)),he=!!(l?.activeTurn&&["queued","running","retry_scheduled","waiting_approval","waiting_input"].includes(l.activeTurn.status)),oe=t==="activity"&&k.length>0?{id:"ponder-activity",role:"activity_group",timestamp:new Date().toISOString(),activities:k.map(C=>({id:C.id,label:C.type,content:C.text??"",timestamp:new Date().toISOString()}))}:null;return n.jsxs("div",{className:"chat-column","aria-label":"Ponder Pal",children:[n.jsxs("section",{className:"chat-thread","aria-label":"Conversation",children:[n.jsx(Ep,{connection:e,items:A,onEdited:async()=>{const C=G.current,T=await Ie(e,"/v1/ponder/work");H.current&&G.current.connection===C.connection&&G.current.bindingId===C.bindingId&&$(Gr.array().parse(T.localHandoffs))},onOpenTask:(C,T)=>{B({...C.scope,sessionId:T})},onCancel:C=>{Se(C)},cancelling:D}),n.jsx(Np,{connection:e,work:j,localWork:S,onOpenWork:r,onOpenLocalWork:C=>{B(C)},onOpenLocalOutput:(C,T)=>{de(C,T)},onOpenOutput:C=>{Q(C)},busy:h||he}),l?.messages.map(C=>n.jsx(Mp,{message:C,connection:e,work:j,onOpenWork:r,onOpenOutput:T=>{Q(T)},onOpenLocalWork:T=>{B(T)},onOpenLocalOutput:(T,q)=>{de(T,q)}},C.id)),n.jsx(Sp,{items:ke.items,busy:ke.busy,editingId:Z?.id??null,onEdit:P,onSend:C=>{le(C,"send")},onDismiss:C=>{le(C,"dismiss")},onOpen:r}),ke.error?n.jsx("p",{role:"alert",children:ke.error}):null,oe&&n.jsx(fa,{message:oe,connection:e}),nt&&n.jsx("p",{className:"ponder-request-status",role:"status","aria-live":"polite",children:"Request received. Ponder is working on it…"}),l?.activeTurn?.status==="failed"&&n.jsxs("p",{className:"ponder-request-status",role:"alert",children:["Ponder couldn’t complete this request. ",l.activeTurn.errorText??"Please try again."]}),l?.activeTurn?.wait&&n.jsxs("section",{className:"ponder-desktop-attention",children:[n.jsx("strong",{children:l.activeTurn.wait.title}),l.activeTurn.wait.kind==="approval"?n.jsxs(n.Fragment,{children:[n.jsx("button",{type:"button",onClick:()=>{se(l.activeTurn,{decision:"accepted"})},children:"Approve"}),n.jsx("button",{type:"button",onClick:()=>{se(l.activeTurn,{decision:"declined"})},children:"Decline"})]}):l.activeTurn.wait.options.length>0?l.activeTurn.wait.options.map(C=>n.jsx("button",{type:"button",onClick:()=>{se(l.activeTurn,{value:C})},children:C},C)):n.jsxs("form",{onSubmit:C=>{C.preventDefault(),se(l.activeTurn,{value:b})},children:[n.jsx("input",{"aria-label":"Response to Ponder Pal",value:b,onChange:C=>m(C.target.value)}),n.jsx("button",{type:"submit",disabled:!b.trim(),children:"Send response"})]})]}),l?.activeTurn?.outputs?.map(C=>C.downloadURL?n.jsx("a",{href:C.downloadURL,target:"_blank",rel:"noreferrer",children:C.name},C.id):n.jsx("button",{type:"button",onClick:()=>{Q(C.id)},children:C.name},C.id)),g&&n.jsx(fa,{message:{id:"ponder-error",role:"error",content:g,timestamp:new Date().toISOString()},connection:e})]}),n.jsxs("div",{className:"composer-stack dock",children:[Z?n.jsxs("div",{className:"ponder-message-destination",role:"status",children:[n.jsxs("span",{children:["Message to ",Z.target.title,te?" — review the latest task state before sending":""]}),n.jsx("button",{type:"button",onClick:z,children:"Return to Ponder chat"})]}):null,n.jsx(bo,{...s,experience:"chat",mode:"dock",showProjectFooter:!1,hideModelControls:!0,connection:e,prompt:f,onPromptChange:p,busy:h||te||!!ke.busy||!i,running:nt&&!Z,submissionScopeKey:`ponder:${i?.conversationId??"loading"}:${Z?.id??"chat"}`,voiceInputChannelKey:`ponder:${i?.conversationId??"loading"}`,onSubmit:(C,T,q,W)=>V(C,W?.promptOverride?{promptOverride:W.promptOverride}:void 0),onStop:()=>l?.activeTurn?O(l.activeTurn):void 0})]})]})}function Tp({accountBaseUrl:e,onOpenBrowserLink:t,...s}){function r(a){if(!e){s.composer.showToast("OpenPond account URL is unavailable for this Work task.","error");return}try{const i=new URL(`/tasks/${encodeURIComponent(a)}`,e);t(i.toString(),{newTab:!0})}catch{s.composer.showToast("OpenPond account URL is invalid for this Work task.","error")}}return n.jsx(Ip,{...s,onOpenWork:r})}function $p(e){return JSON.stringify({account:e?.account.activeProfile??null,baseUrl:e?.account.baseUrl??null,owner:e?.account.profile?.id??null,state:e?.account.state??null,teamId:e?.preferences.defaultTeamId??null})}const Pp=c.lazy(()=>Ee(()=>import("./WorkspaceDiffPanel-DQGoIjH9.js").then(e=>e.a),__vite__mapDeps([7,1,2,5,3,4,8,9,10,11,12,13])).then(e=>({default:e.WorkspaceDiffPanel}))),_p=c.lazy(()=>Ee(()=>import("./AppTerminalPanel-BVj5Tj93.js"),__vite__mapDeps([14,1,2])).then(e=>({default:e.AppTerminalPanel}))),Lp=c.lazy(()=>Ee(()=>import("./RightSidebarHomePanel-CKs3OwhD.js"),__vite__mapDeps([15,1,2,3,4,13,9,11])).then(e=>({default:e.RightSidebarHomePanel}))),Op=c.lazy(()=>Ee(()=>import("./WorkSidebarPanel-CODMjVHY.js"),__vite__mapDeps([16,1,2,3,4,5,9,11,17,18,19,6,20])).then(e=>({default:e.WorkSidebarPanel}))),zp=c.lazy(()=>Ee(()=>import("./NewExperienceSwitcher-DhYtfE68.js"),__vite__mapDeps([21,1,2,3,4])).then(e=>({default:e.NewExperienceSwitcher}))),Fp=c.lazy(()=>Ee(()=>import("./CollaborationTabs-CAJcQFn2.js"),__vite__mapDeps([22,1,2,3,4,23])).then(e=>({default:e.CollaborationTabs}))),Dp=c.lazy(()=>Ee(()=>import("./AppsView-O69zEBY3.js"),__vite__mapDeps([24,1,2,3,4,25,12,5,26,17,18,19,9,6,27])).then(e=>({default:e.AppsView}))),Bp=c.lazy(()=>Ee(()=>import("./GetStartedView-D7JGm_6c.js"),__vite__mapDeps([28,1,2,6,3,4,29,5,30])).then(e=>({default:e.GetStartedView}))),Up=c.lazy(()=>Ee(()=>import("./LabsRoute-Ci6vUnSd.js").then(e=>e.t),__vite__mapDeps([31,1,2,3,4,32,29,17,8,10,0,5,6,33,34])).then(e=>({default:e.LabsRoute}))),qp=c.lazy(()=>Ee(()=>import("./ScheduledWorkPage-Cafv_QnR.js"),__vite__mapDeps([35,1,2,3,4,36,5,6,12,11,17,18,19,9])).then(e=>({default:e.ScheduledWorkPage}))),Hp=c.lazy(()=>Ee(()=>import("./OutputsPage-CbWgrhXA.js"),__vite__mapDeps([37,1,2,3,4,5,9,17,18,19,6])).then(e=>({default:e.OutputsPage}))),Vp=c.lazy(()=>Ee(()=>import("./ProjectsPage-DLB67lyA.js"),__vite__mapDeps([38,1,2,3,4,17,39])).then(e=>({default:e.ProjectsPage}))),ji=c.lazy(()=>Ee(()=>import("./LabSkillSidebar-BBiqk7Rf.js"),__vite__mapDeps([40,1,2,3,4,5,11,17,18,19,9,6,41])).then(e=>({default:e.LabSkillSidebar}))),Wp=c.lazy(()=>Ee(()=>import("./BrowserSidebar-Pr_Kpe8p.js"),__vite__mapDeps([42,1,2,3,4,5,19,43])).then(e=>({default:e.BrowserSidebar}))),Gp=c.lazy(()=>Ee(()=>import("./RightChatPanelStack-ozSKnDyX.js"),__vite__mapDeps([44,1,2,9,3,4,45,5,17,18,19,6])).then(e=>({default:e.RightChatPanelStack}))),Kp=c.lazy(()=>Ee(()=>import("./NativeSkillSidebar-CRI_ri8z.js"),__vite__mapDeps([46,1,2,3,4,11,47])).then(e=>({default:e.NativeSkillSidebar}))),Qp=c.lazy(()=>Ee(()=>import("./TeamChatView-vIrmXOY_.js"),__vite__mapDeps([48,1,2,3,4,5,17,18,19,9,6,49,50])).then(e=>({default:e.TeamChatView}))),Xp=c.lazy(()=>Ee(()=>import("./TeamChatView-vIrmXOY_.js"),__vite__mapDeps([48,1,2,3,4,5,17,18,19,9,6,49,50])).then(e=>({default:e.TeamChatProView}))),Jp=c.lazy(()=>Ee(()=>import("./CommunityView-DbZKK8_P.js"),__vite__mapDeps([51,1,2,52,3,4,5,17,18,19,9,6,53])).then(e=>({default:e.CommunityView}))),Yp=c.lazy(()=>Ee(()=>import("./TeamChatView-vIrmXOY_.js"),__vite__mapDeps([48,1,2,3,4,5,17,18,19,9,6,49,50])).then(e=>({default:e.TeamAiThreadPanel}))),Zp=c.lazy(()=>Ee(()=>import("./TeamChatView-vIrmXOY_.js"),__vite__mapDeps([48,1,2,3,4,5,17,18,19,9,6,49,50])).then(e=>({default:e.TeamAgentConversationPanel}))),eg=c.lazy(()=>Ee(()=>import("./TrainingDraftPanel-D7XZePAk.js"),__vite__mapDeps([54,1,2,3,4,11,34])).then(e=>({default:e.TrainingDraftPanel}))),tg=c.lazy(()=>Ee(()=>import("./MainChatThread-BQK3oI2N.js"),__vite__mapDeps([55,1,2,45,3,4,32,5,17,18,19,9,6])).then(e=>({default:e.MainChatThread}))),ng=c.lazy(()=>Ee(()=>import("./TrainingCreationPanel-D75K0yk5.js"),__vite__mapDeps([56,1,2,3,4,34])).then(e=>({default:e.TrainingCreationPanel})));function sg({ponderMode:e=null,onPonderModeChange:t,experience:s,onNewExperienceChange:r,view:a,teamChat:i,community:o,bootstrap:l,runtimeEvents:u,chatMessages:f,pendingUserMessage:p,contextWindowStatus:b,goalRuntime:m,subagentRuntime:h,selectedSessionId:x,composerDraftStore:g,mainComposerFocusRequestId:y,labCloseDetailRequestId:k,labCloseDetailKind:w,sideChatTrainingLaunchRequest:j,onSideChatTrainingLaunchHandled:E,mentionApps:S,connectedAppMentions:R,profileSkills:A,selectedMentionAppId:$,busy:D,turnRunning:U,activeProvider:K,activeModel:ie,codexPermissionMode:ke,codexReasoningEffort:Z,openPondCommandAccessMode:we,pendingApproval:ve,activeWorkspaceAppId:te,activeWorkspaceId:ye,activeWorkspaceKind:G,projectTarget:je,actionCatalog:H,workspaceTarget:z,connection:P,workspaceName:le,workspaceState:ge,workspaceDiff:V,workspaceBusy:se,diffBusy:O,forceChatThread:Q=!1,diffPanelOpen:B,diffPanelExpanded:de,rightPanelMode:Se,rightPanelTabRequest:nt,rightChatPanels:he,runtimeEventStore:oe,nativeSkillSidebar:C,extensionSkillSidebar:T,workspaceDiffPanelViewState:q,sidebarFileOpenRequest:W,sidebarFileBookmarks:Y,onSetSidebarFileStatus:Ce,browserConversationId:xe,terminalScope:He,terminalTabs:M,terminalCwd:I,pendingTerminalCommand:me,terminalOpen:J,onToggleTerminal:$e,onWorkspaceDiffPanelViewStateChange:ze,training:re,trainingSessions:ot,trainingChatHandoff:Pe,trainingDetailTasksetId:Ft,onTrainingDetailTasksetIdChange:Dt,onTrainingChatTaskSelect:vt,onTrainingChatHandoffDismiss:lt,onOpenSession:st,onExperienceHandoff:gn,cloudProjects:Es,projects:Xn,projectsAccountBaseUrl:xn,projectsTeamName:Ne,projectTaskCounts:Ve,onNewCloudProject:As,onNewLocalProject:Is,onNewProjectTask:bn,onToggleProjectPinned:Ts,onUploadLocalProject:vn,chatHistoryHasMore:$s=!1,chatHistoryLoading:yn=!1,onDiffPanelResizeStart:Ke,canSyncWorkspace:Xt,startMessage:Ps,onPayload:Xe,onError:jn,setView:Qe,onOpenProfileSettings:_s,onOpenProviderSettings:rt,onOpenTrainingSettings:Ar,onOpenDatasetStorageSettings:Jn,changeDraftProvider:Fe,changeProjectTarget:yt,changeWorkspaceTarget:kn,setDraftProvider:Ls,setDraftModel:ft,onBeginNewChatWithModel:Mt,changeCodexPermissionMode:Rt,changeCodexReasoningEffort:ht,changeOpenPondCommandAccessMode:jt,resolveApproval:Je,answerCreateImproveQuestion:Yn,approveCreateImproveRun:kt,applyCreateImproveCandidate:Zn,cancelCreateImproveRun:wn,openCreateImprovePullRequest:es,pauseCreateImproveRun:Sn,reconcileCreateImprovePullRequest:Cn,rejectCreateImproveCandidate:ts,resumeCreateImproveRun:Jt,reviseCreateImproveRun:Nn,setMentionedAppId:wt,showToast:ce,onSaveTaskDraft:Os,sendPrompt:Bt,stopTurn:Mn,syncWorkspaceLocally:zs,refreshWorkspaceDiff:Rn,onToggleDiffPanelExpanded:Te,onShowDiffPanel:We,onShowBrowserPanel:Yt,onShowTrainingDraftPanel:Fs,onShowFilesPanel:mt,onShowRightChatPanel:Ir,onAddRightChat:En,onOpenRightChatForSession:Ds,onLabDetailOpenChange:Tr,evaluationSidebarActive:Zt,onEvaluationSidebarControl:$r,scheduledDetailOpen:An,onScheduledDetailOpenChange:Bs,onTerminalTabsChange:Pr,onCloseRightChatPanel:Us,onCloseNativeSkillSidebar:qs,onActivateRightChatPanel:_e,onRightChatModelChange:Et,onRightChatPromptChange:ct,onRightChatScrollStateChange:Le,onRightChatProviderChange:en,onSubmitRightChat:Hs,onStopRightChat:_r,onCloseTerminal:tn,onLoadMoreChatHistory:Vs}){const[Ws]=c.useState(()=>new Ou),Ge=x&&!Pa(x)?x:null,Gs=Bu(oe,Ge),At=c.useMemo(()=>Ge?dc(u,Gs.events):u,[Ge,Gs.events,u]),It=c.useMemo(()=>Ge?fc(Ws.project(At),p):f,[Ws,Ge,p,At,f]),[Ks,nn]=c.useState(null),[Qs,In]=c.useState(0),Xs=c.useRef(""),Oe=c.useCallback(()=>Xs.current,[]),[Tn,ut]=c.useState(null),[ns,$n]=c.useState(null),[Ye,Ut]=c.useState(null),[dt,qt]=c.useState(null),[pe,Pn]=c.useState(null),[ss,Js]=c.useState(null),[rs,Ys]=c.useState(null),[at,as]=c.useState([]);c.useEffect(()=>{ut(null)},[xe]);const _n=c.useMemo(()=>l?.sessions.find(N=>N.id===x)??null,[l?.sessions,x]),sn=_n?.currentProfile??l?.profileLibrary?.lastUsed??null,Ht=$p(l),rn=hc(l?.profileLibrary??{profiles:[]},sn)??l?.profile??null,Ln=c.useMemo(()=>mc(rn,l?.extensionCatalog),[l?.extensionCatalog,rn]),an=c.useMemo(()=>pc(rn),[rn]),on=c.useCallback(async(N,F=x)=>{if(!P||!l)return;const ue=gc(l.profileLibrary??{profiles:[]},N);if(ue)try{const be=F&&!Pa(F)?l.sessions.find(X=>X.id===F)??null:null,ee=await jh({ref:ue,session:be,selectProfile:X=>Ue.profileSelect(P,X),patchSession:(X,et)=>Ue.patchSession(P,X,{currentProfile:et})});let Re=l.sessions;ee.session&&(Re=Re.map(X=>X.id===ee.session.id?ee.session:X)),Xe({...l,profile:ee.selected.profile,profileLibrary:ee.selected.library,sessions:Re})}catch(be){const ee=be instanceof Error?be.message:String(be);jn(ee),ce(ee,"error")}},[l,P,jn,Xe,x,ce]);c.useEffect(()=>{if(!xc(W,xe))return;const{file:N,id:F}=W;if(ut({id:F,path:N.path}),!P)return;let ue=!1;return(N.workspaceKind==="local"?Ue.workspaceFile(P,N.workspaceId,N.path).then(ee=>ee.content??""):Ue.sandboxDownloadFile(P,N.workspaceId,N.path).then(ee=>{if(ee.file.isBinary)throw new Error("Binary files cannot be attached to chat.");return ee.contents})).then(ee=>{if(ue)return;const Re=N.path.split("/").at(-1)??N.path;nn({id:F,file:new File([ee],Re,{type:rg(N)})})}).catch(ee=>{ue||ce(ee instanceof Error?ee.message:String(ee),"error")}),()=>{ue=!0}},[xe,P,ce,W]);const pt=s==="development"||s==="work"&&je.value!=="none",is=c.useMemo(()=>{if(s==="chat")return an;if(!pt)return[];const N=new Map(H.filter(F=>!bc(F)).map(F=>[F.id,F]));for(const F of an)N.set(F.id,F);for(const F of at)N.set(F.id,F);return[...N.values()]},[H,s,pt,at,an]),Ae=wh(P),Lr=c.useCallback(N=>{if(!N){Ae.activate(null);return}Ae.activate({runId:N.run.id,candidateId:N.candidate.id,title:N.run.objective,fileRootPath:N.fileRootPath,initialPath:N.initialPath})},[Ae.activate]),Or=c.useCallback(()=>{Ae.selection?.initialPath&&Ae.openFile(Ae.selection.initialPath),We()},[Ae.openFile,Ae.selection?.initialPath,We]),os=c.useCallback(N=>{Ut(N),N&&We()},[We]),On=c.useCallback(()=>{Ut(null),de&&Te()},[de,Te]);c.useEffect(()=>{a!=="labs"&&Ut(null)},[a]);const zr=c.useCallback((N,F)=>{const ue=Date.now(),be=H.find(Re=>Re.id===N)??null;g.set(""),wt(null),Qe("chat");const ee=Re=>{if(!(Re.find(fe=>fe.id===N)??null))return!1;const et=Re.map(fe=>fe.id===N?{...fe,label:F}:fe);return as(et),window.requestAnimationFrame(()=>{Ys({actionId:N,requestId:Math.max(Date.now(),ue+1)})}),!0};if(!P){be?ee([be]):ce("The Agent action catalog is still loading. Try Use again.","error");return}Ue.profileCurrent(P).then(Re=>{const X=Re.actionCatalog.map(et=>vc(et));!ee(X)&&be?ee([be]):X.some(et=>et.id===N)||ce("This Agent is ready, but its default chat action is unavailable.","error")}).catch(Re=>{be||ce(Re instanceof Error?Re.message:String(Re),"error")})},[H,g,P,wt,Qe,ce]),Fr=c.useCallback((N,F)=>{g.set(N),wt(null),F&&Fe(F),Qe("chat")},[Fe,g,wt,Qe]),Tt=c.useMemo(()=>yc(l?.preferences),[l?.preferences]),Dr=Tt.training,{createAgentFromLab:$t,improveAgentFromLab:Br}=Ch({activeModel:ie,activeProvider:K,bootstrap:l,codexPermissionMode:ke,codexReasoningEffort:Z,connection:P,onOpenRightChatForSession:Ds,onPayload:Xe}),St=c.useMemo(()=>{const N=re.payload?.tasksets??[];return N.some(F=>F.id===pe)?pe:N[0]?.id??null},[pe,re.payload?.tasksets]),Ur=a==="labs"&&St?`profiles/${l?.profile.activeProfile??"default"}/tasksets/${St}`:null,qr=c.useMemo(()=>{if(a!=="labs"||!St||!re.payload)return null;const N=re.payload.tasksets.find(fe=>fe.id===St);if(!N)return null;const F=re.payload.plans.filter(fe=>fe.tasksetId===N.id),ue=new Set(F.map(fe=>fe.id)),be=re.payload.jobs.filter(fe=>ue.has(fe.planId)).sort((fe,ps)=>ps.createdAt.localeCompare(fe.createdAt)),ee=be.find(fe=>fe.id===ss)??be[0]??null,Re=ee?F.find(fe=>fe.id===ee.planId)??null:F.sort((fe,ps)=>ps.createdAt.localeCompare(fe.createdAt))[0]??null,X=ee?re.payload.models.find(fe=>fe.jobId===ee.id)??null:null,et=ee?re.payload.artifacts.filter(fe=>fe.jobId===ee.id):[];return{taskset:N,plan:Re,job:ee,lineage:X,artifacts:et}},[St,ss,re.payload,a]),Vt=c.useMemo(()=>kh(re.payload,x),[x,re.payload]),zn=c.useMemo(()=>$h(It),[It]),Fn=!!m||!!zn||!!h,De=a==="labs"&&!!Ae.selection,ln=a==="labs"&&B&&Se==="changes"&&!!Ye,Hr=(a==="chat"||a==="labs")&&!!te,Zs=a==="chat"&&B&&Se==="chat"&&he.length===0,ls=jc(G)?ye??_h(le):null,Vr=a==="chat"&&!!ls,Ct=ls,cs=!!Ct||z.value==="cloud"||z.value==="hybrid",Dn=c.useMemo(()=>xh({workspaceTarget:z.value,localWorkspaceId:te,sandboxSourceAvailable:cs,sandboxWorkspaceId:Ct,override:ns}),[te,cs,Ct,ns,z.value]),cn=Dn.source,Be=cn==="sandbox",er=c.useMemo(()=>cn&&Dn.options.length>1?{value:cn,options:Dn.options,onChange:$n}:null,[cn,Dn.options]);c.useEffect(()=>{$n(null)},[te,xe,Ct,z.value]);const Bn=!ln&&(De||Hr||Vr)&&B&&(Se==="changes"||Se==="goal"&&Fn||Zs),us=a==="chat"&&B&&Se==="browser",Ze=(a==="chat"||a==="labs")&&B&&Se==="chat"&&he.length>0,ds=a==="chat"&&B&&Se==="training",Un=a==="chat"&&B&&!!C,fs=a==="chat"&&B&&!!T,un=a==="team"&&B&&Se==="chat"&&!!i.aiThread,hs=a==="team"&&B&&Se==="chat"&&!!i.agentConversation,ms=s==="work"&&a==="chat"&&B&&Se==="home",tr=So({supportedView:a==="chat"&&pt||a==="labs",open:B,hasContentPanel:Bn||ln||us||Ze||ds||Un||un||hs||ms}),Wt=!Zt&&(Bn||ln||us||Ze||ds||Un||un||hs||ms||tr),dn=Wt&&Se!=="chat"&&de,nr=l?.account.baseUrl??l?.account.activeProfile?.baseUrl??null,qn=Eh({activeWorkspaceId:ye,cloudProjects:Es}),sr=a==="chat"&&U&&!ve&&gh(It),d=Q||It.length>0||sr,v=x??`draft:${a}:${G??"none"}:${ye??te??"none"}`;Xs.current=v;const _=n.jsx(zh,{activeModel:ie,activeProvider:K,busy:U,handoff:Pe,onDismiss:lt,onSelectTask:vt}),L=c.useMemo(()=>({onAnswerQuestion:Yn,onApprove:kt,onApplyCandidate:Zn,onCancel:wn,onOpenPullRequest:es,onPause:Sn,onReconcilePullRequest:Cn,onRejectCandidate:ts,onResume:Jt,onRevise:Nn}),[Yn,kt,Zn,wn,es,Sn,Cn,ts,Jt,Nn]),ne=c.useMemo(()=>zn?{...zn,...L}:null,[L,zn]),ae=Bh(a,d),Me=c.useCallback(async(N=[],F=null,ue=null,be={})=>{const ee=be.promptOverride??g.getSnapshot(),Re=()=>{be.preservePrompt||(g.set(""),wt(null))};if(!F){const X=ue?{command:ue.id,args:ee.trim()}:_i(ee);if(X){if(!kc({id:X.command},s))return ce(`/${X.command} isn't available in ${s}.`,"info"),!1;if(X.command==="train")return N.length>0?(ce("/train uses the selected chat; add other chats from Models.","error"),!1):x?(Re(),qt({id:Date.now(),objective:X.args.trim()||null,initialSessionIds:[x]}),Qe("labs"),!0):(Re(),qt({id:Date.now(),objective:X.args.trim()||null,initialSessionIds:[]}),Qe("labs"),!0);if(!X.args&&X.command!=="skill"&&X.command!=="sync-cloud")return ce(`Add instructions after /${X.command}.`,"info"),!1;if(N.length>0)return ce(`/${X.command} tasks do not accept attachments yet. Add file context in the task thread.`,"error"),!1;if(X.command==="submit-issue")return wc(R)?(In(fe=>fe+1),Bt([],null,Sc(X.args),{clearPrompt:be.preservePrompt?()=>{}:void 0,usageAttribution:ta(X,ue?"composer_selection":"prompt_parse")})):(ce("Connect the GitHub app before using /submit-issue.","error"),!1);if(Ph(X)){const fe=X.command==="skill"?vh(X.args,K,l?.profile.sourcePath??null):di(X);return In(ps=>ps+1),Bt([],null,fe,{clearPrompt:be.preservePrompt?()=>{}:void 0,usageAttribution:ta(X,ue?"composer_selection":"prompt_parse")})}return In(fe=>fe+1),Bt([],null,di(X),{clearPrompt:be.preservePrompt?()=>{}:void 0,usageAttribution:ta(X,ue?"composer_selection":"prompt_parse")})}}return In(X=>X+1),Bt(N,F,be.promptOverride,{clearPrompt:be.preservePrompt?()=>{}:void 0,displayPrompt:be.displayPrompt,turnMetadata:be.turnMetadata})},[ie,K,G,l?.profile,R,g,s,Bt,x,wt,Qe,ce,re,a]),gt=c.useCallback(N=>{Pe&&N!==Pe.model.modelId&<(),Ls(K),ft(N)},[K,lt,ft,Ls,Pe]),Pt=c.useCallback(N=>{Pe&&N!==Pe.model.providerId&<(),Fe(N)},[Fe,lt,Pe]),{chatColumnStyle:fn,chatThreadPreparingInitialScroll:Nt,chatThreadRef:hn,chatTimelineRows:it,composerStackRef:Oo,goToUserMessage:wa,handleChatScroll:zo,jumpToLatestChatMessage:Fo,showScrollToBottomButton:Do,userMessageNavigation:rr}=Hh({browserConversationId:xe,chatSubmissionVersion:Qs,chatHistoryHasMore:$s,chatHistoryLoading:yn,chatMessages:It,onLoadMoreChatHistory:Vs,pendingApproval:ve,showChatThread:d,showThinkingIndicator:sr,view:a}),Hn=c.useCallback((N,F)=>{Cc({conversationId:xe,href:N,explicitFile:F?.explicitFile,newTab:F?.newTab}).then(ue=>{ue&&window.openpond?.browser&&Yt()}).catch(ue=>ce(ue instanceof Error?ue.message:"Could not open browser.","error"))},[xe,Yt,ce]),Sa=al({projectTargetDetail:je.detail,projectTargetValue:je.value,workspaceRepoPath:ge?.repoPath,workspaceTargetValue:z.value}),Ca=mh({connection:P,handleOpenBrowserLink:Hn,activeWorkspaceAppId:te,rightSidebarUsesSandbox:Be,rightSidebarSandboxId:Ct,onShowDiffPanel:We,showToast:ce,workspaceRootPath:Sa,setOpenDiffFileRequest:ut}),Na=c.useCallback(async N=>{if(!P||!N.filePreview&&!N.imagePreview){ce("File content is not available for this attachment.","error");return}try{const F=N.name.trim().replace(/[\\/]+/g,"-")||"attachment.txt",be=`Attachments/${N.id.replace(/[^a-zA-Z0-9._-]+/g,"-")||"file"}/${F}`,ee={path:be,status:"",additions:0,deletions:0,patch:"",content:null};let Re,X;if(N.filePreview){const et=await Ue.chatAttachmentFile(P,N.filePreview);ee.content=et.content,na(F)&&(X=await il(P,F,et.content))}else N.imagePreview&&(Re=(await Ue.signChatAttachmentImageUrl(P,N.imagePreview)).url);X?Hn(X):We(),ut({id:Date.now(),path:be,source:!!X,file:ee,...Re?{imageUrl:Re}:{}})}catch(F){ce(F instanceof Error?F.message:"Could not open this attachment.","error")}},[P,Hn,We,ce]),Bo=se&&!!te&&!ge,Ma=Ae.selection?`candidate:${Ae.selection.runId}:${Ae.selection.candidateId}`:null,Uo=Bn?n.jsx(Pp,{appId:De?Ma:Be?null:te,workspaceId:De?Ma:Be?Ct:te,workspaceKind:De?"local_project":Be?null:"local_project",connection:P,runtimeEvents:At,diff:De?Ae.diff:Be?null:V,fileRootPath:De?Ae.selection?.fileRootPath??null:Be?null:Ur,filesWithPreview:De,editorPreferences:l?.preferences.editor??null,loading:De?Ae.loading:Be?se:O||Bo,openFileRequest:De?Ae.openFileRequest:Tn,sidebarFileBookmarks:Y,sidebarFileSourceSessionId:x,onSetSidebarFileStatus:Ce,readOnly:De,sideChatTabs:he.map(N=>({id:N.id,title:N.title,running:N.running})),sourceSwitcher:De?null:er,tabRequest:nt,viewState:q,workspaceName:De?Ae.selection?.title??"Change":Be?le??"Sandbox":le,workspaceInitialized:De?!0:Be?!!Ct:!!ge?.initialized,workspaceError:De?Ae.error:Be?null:ge?.error??V?.error??null,expanded:de,onResizeStart:Ke,onRefresh:N=>{De?Ae.refresh(N):Rn(N)},onToggleExpanded:Te,onOpenBrowser:Yt,onOpenBrowserUrl:Hn,onViewStateChange:ze,onCloseSideChat:Us,onOpenSideChat:a==="chat"?En:void 0,onSelectSideChat:N=>{_e(N),Ir()},goalDetails:{active:Se==="goal",createRuntime:ne,goalRuntime:m,subagentRuntime:h},sandboxFileSource:Be?{sandboxId:Ct,emptyMessage:"No sandbox filesystem yet."}:null,trainingSummary:qr}):null,qo=us?n.jsx(Wp,{conversationId:xe,expanded:de,onResizeStart:Ke}):null,Ho=un?c.createElement(Yp,{...i,key:i.aiThread?.conversationId,onResizeStart:Ke}):null,Vo=hs?c.createElement(Zp,{...i,key:i.agentConversation?.run.id,onResizeStart:Ke}):null,Wo=Ze?n.jsx(Gp,{panels:he,runtimeEventStore:oe,actionCatalog:is,createImproveActions:L,contextCompaction:Tt.contextCompaction,steerActiveResponses:Tt.steerActiveResponses,busy:D,codexPermissionMode:ke,codexReasoningEffort:Z,openPondCommandAccessMode:we,connection:P,connectedAppMentions:R,mentionApps:S,codexPersonalSkills:l?.codexPersonalSkills??[],profileSkills:A,profileLibrary:l?.profileLibrary??{lastUsed:null,profiles:[]},extensionCatalog:l?.extensionCatalog??null,projectTarget:je,providerSettings:l?.providers??null,accountBaseUrl:nr,billingOrganizationSlug:qn.organizationSlug,billingTeamId:qn.teamId,showToast:ce,workspaceTarget:z,onAddChat:En,onActivatePanel:_e,onClosePanel:Us,onCodexPermissionModeChange:Rt,onCodexReasoningEffortChange:ht,onOpenPondCommandAccessModeChange:jt,onModelChange:Et,onOpenAttachmentInSidebar:Na,onOpenFileInSidebar:Ca,onOpenProfileSettings:_s,onOpenSession:st,onOpenPonder:()=>t?.("clean"),onProviderChange:en,onProviderSetupOpen:rt,onPromptChange:ct,onProfileTargetChange:(N,F)=>{on(F,N)},onScrollStateChange:Le,onProjectTargetChange:yt,onResolveApproval:Je,onResizeStart:Ke,onSelectFiles:mt,onShowBrowserPanel:Yt,onStop:_r,onSubmit:Hs,onWorkspaceTargetChange:N=>{kn(N)}}):null,Go=tr?n.jsx(Lp,{expanded:de,terminalOpen:J,sideChatAvailable:a==="chat"||a==="labs",onOpenBrowser:Yt,onOpenFiles:mt,onOpenReview:We,onOpenSideChat:En,onOpenTrainingDraft:Fs,trainingDraftAvailable:!!x,onResizeStart:Ke,onToggleExpanded:Te,onToggleTerminal:$e}):null,Ko=ms?n.jsx(Op,{chatMessages:It,connection:P,contextWindowStatus:b,expanded:de,runtimeEvents:At,sessionId:x,showToast:ce,onResizeStart:Ke,onToggleExpanded:Te,onUseOutput:N=>nn({id:Date.now(),file:N}),onHandoffOutput:async(N,F,ue)=>{await gn({target:N,sourceSessionId:x,output:F,prompt:Nc(F,N)}),ue&&nn({id:Date.now(),file:ue})},onReviseOutput:(N,F,ue)=>{nn({id:Date.now(),file:F}),g.set(`Create revision ${N.revision+1} of "${N.title}" from the attached revision ${N.revision}. Apply only this requested change:
|
|
17
|
+
|
|
18
|
+
${ue}`)},onAgentPackageInstalled:async()=>{P&&Xe(await Ue.bootstrap(P))}}):null,Qo=ds?n.jsx(c.Suspense,{fallback:null,children:n.jsx(eg,{training:re,sessionId:x,expanded:de,onOpenTraining:()=>Qe("labs"),onResizeStart:Ke,onToggleExpanded:Te})}):null,Vn=Vo??Ho??Wo??(Un&&C?n.jsx(Kp,{expanded:de,skill:C,onClose:qs,onResizeStart:Ke,onToggleExpanded:Te}):null)??(fs&&T?n.jsx(ji,{connection:P,expanded:de,selection:T,onClose:qs,onResizeStart:Ke,onToggleExpanded:Te}):null)??(ln&&Ye?n.jsx(ji,{connection:P,expanded:de,selection:Ye,onClose:On,onResizeStart:Ke,onToggleExpanded:Te}):null)??Uo??qo??Qo??Ko??Go,Wr=n.jsx(c.Suspense,{fallback:null,children:n.jsx(_p,{open:J,connection:P,scope:He,tabs:M,onTabsChange:Pr,cwd:I,appId:te,workspaceName:le,queuedCommand:me,onClose:tn})});return n.jsxs("main",{className:`main-pane ${ae} ${J?"terminal-open":""} ${Wt?"diff-open":""} ${dn?"diff-expanded":""}`,children:[a==="team"||a==="community"?n.jsx(c.Suspense,{fallback:null,children:n.jsx(Fp,{onSelect:Qe,view:a})}):null,a==="chat"&&e&&P&&l?.account.activeProfile?n.jsx(Tp,{connection:P,presentation:e,composer:{contextWindowStatus:b,providerSettings:l.providers??null,provider:K,model:ie,projectTarget:je,workspaceTarget:z,codexPermissionMode:ke,codexReasoningEffort:Z,openPondCommandAccessMode:we,onProviderChange:Pt,onProviderSetupOpen:rt,onProjectTargetChange:yt,onWorkspaceTargetChange:N=>{kn(N)},onModelChange:gt,onCodexPermissionModeChange:Rt,onCodexReasoningEffortChange:ht,onOpenPondCommandAccessModeChange:jt,showToast:ce},accountBaseUrl:xn,onOpenBrowserLink:Hn,onOpenLocalWork:st},Ht):a==="apps"?n.jsx(c.Suspense,{fallback:null,children:n.jsx(Dp,{payload:l,onPayload:Xe,account:l?.account??null,connection:P,defaultTeamId:l?.preferences.defaultTeamId??null,onToast:ce})}):a==="team"?n.jsxs(c.Suspense,{fallback:null,children:[i.teamId?n.jsx(Qp,{...i}):n.jsx(Xp,{}),Wt?Vn:null]}):a==="community"?n.jsx(c.Suspense,{fallback:null,children:n.jsx(Jp,{...o})}):a==="get-started"?n.jsx(c.Suspense,{fallback:null,children:n.jsx(Bp,{})}):a==="scheduled"?n.jsx(c.Suspense,{fallback:null,children:n.jsx(qp,{connection:P,selectedProfileKey:sn?JSON.stringify(sn):null,onOpenSession:st,detailOpen:An,detailExpanded:de,onDetailOpenChange:Bs,onDetailResizeStart:Ke,onToggleDetailExpanded:Te},Ht)}):a==="outputs"?n.jsx(c.Suspense,{fallback:null,children:n.jsx(Hp,{connection:P,onViewChat:st})}):a==="projects"?n.jsx(c.Suspense,{fallback:null,children:n.jsx(Vp,{accountBaseUrl:xn,connection:P,onNewCloudProject:As,onNewLocalProject:Is,onNewTask:bn,onTogglePinned:Ts,onUploadLocalProject:vn,projects:Xn,taskCountByProjectId:Ve,teamName:Ne},Ht)}):a==="labs"?dn?n.jsx(c.Suspense,{fallback:null,children:Vn}):n.jsxs(n.Fragment,{children:[n.jsx(c.Suspense,{fallback:null,children:n.jsx(Up,{account:l?.account??null,closeDetailRequestId:k,closeDetailKind:w,onNewModel:(N,F,ue)=>{qt({id:Date.now(),objective:null,initialSessionIds:[],initialTasksetId:N,learnedPreferenceReward:F,initialModelId:ue})},onUseAgent:zr,onCreateAgent:$t,onImproveAgent:Br,onDetailOpenChange:Tr,onEvaluationSidebarControl:$r,onSkillSelectionChange:os,onOpenRunConversation:Ds,onAnswerQuestion:Yn,onApplyCandidate:Zn,onApprove:kt,onCancel:wn,candidateReview:{diff:Ae.diff,error:Ae.error,loading:Ae.loading},onCandidateReviewChange:Lr,onOpenPullRequest:es,onOpenCandidateFiles:Or,onPause:Sn,onReconcilePullRequest:Cn,onRejectCandidate:ts,onResume:Jt,onRevise:Nn,profileView:{payload:l,connection:P,onPayload:Xe,onError:jn,onToast:ce,onSkillCommand:Fr},training:{training:re,sessions:ot,localProjects:l?.localProjects??[],connection:P,defaultModel:{providerId:K,modelId:ie},onError:jn,onToast:ce,onSettingsPreferences:N=>{l&&Xe({...l,preferences:N.preferences})},onOpenTrainingSettings:Ar,onOpenProviderSettings:rt,onOpenDatasetStorageSettings:Jn,onOpenChat:st,onChatWithModel:Mt,onOpenTasksetFiles:mt,launchRequest:j??dt,onLaunchHandled:N=>{if(j?.id===N){E(N);return}qt(F=>F?.id===N?null:F)},preferences:Dr,settingsPreferences:Tt,providerSettings:l?.providers??null,reasoningEffort:Z,selectedTasksetId:St,onSelectedTasksetIdChange:Pn,onSelectedTrainingJobIdChange:Js,detailTasksetId:Ft,onDetailTasksetIdChange:Dt}})}),Wr,Wt?n.jsx(c.Suspense,{fallback:null,children:Vn}):null]}):dn?n.jsx(c.Suspense,{fallback:null,children:Vn}):d?n.jsxs(n.Fragment,{children:[n.jsxs("div",{className:`chat-column ${ve?"has-approval":""}`,style:fn,children:[n.jsx(c.Suspense,{fallback:null,children:n.jsx(tg,{formalReviewTeamId:Tt.defaultTeamId??null,formalReviewActorId:l?.account.profile?.id??null,formalReviewScopeKey:Ht,onFormalReviewOpen:()=>Qe("labs"),accountBaseUrl:nr,activeWorkspaceAppId:te,billingOrganizationSlug:qn.organizationSlug,billingTeamId:qn.teamId,connection:P,conversationKey:xe??"draft",creation:Vt,onOpenBrowserLink:Hn,onOpenAttachmentInSidebar:Na,onOpenFileInSidebar:Ca,onOpenProfileSettings:_s,onResolveUserQuestion:async(N,F)=>{const ue=F.action==="answer"?F.text:"Dismiss this question";if(!await Bt([],null,ue,{displayPrompt:ue,turnMetadata:{userQuestionResolution:F}}))throw new Error("The question response could not be sent.")},onOpenSession:st,onOpenPonder:()=>t?.("clean"),onScroll:N=>zo(N.currentTarget),rows:it,sessionId:xe,turnRunning:U,userAttachmentDisplay:K==="codex"?"compact":"full",threadRef:hn,workspaceRootPath:Sa})}),n.jsxs("div",{className:`composer-stack dock ${ve?"has-approval":""}`,ref:Oo,children:[Vt?n.jsx(c.Suspense,{fallback:null,children:n.jsx(ng,{compact:!0,creation:Vt,training:re,onOpenTraining:()=>Qe("labs")})}):null,_,n.jsx(ci,{approval:ve,onResolve:Je}),Do&&!Nt?n.jsx(Fh,{canGoNext:rr.canGoNext,canGoPrevious:rr.canGoPrevious,onJumpToLatest:Fo,onNext:()=>{rr.canGoNext&&wa("next")},onPrevious:()=>{rr.canGoPrevious&&wa("previous")}}):null,n.jsx(li,{experience:s,readOnlyReason:typeof _n?.metadata?.nativeReadOnlyReason=="string"?_n.metadata.nativeReadOnlyReason:null,draftStore:g,attachmentRequest:Ks,mode:"dock",focusRequestId:y,mentionApps:pt?S:[],connectedAppMentions:R,profileSkills:K==="codex"?l?.codexPersonalSkills??[]:Ln,selectedMentionAppId:$,contextWindowStatus:b,goalRuntime:s!=="chat"?m:null,subagentRuntime:s!=="chat"?h:null,createImproveRuntime:pt?ne:null,busy:U,running:U,steerActiveResponses:Tt.steerActiveResponses,taskSessionId:Ge,taskEvents:At,submissionScopeKey:v,getCurrentSubmissionScopeKey:Oe,voiceInputChannelKey:`main-composer:${v}`,showProjectFooter:!1,connection:P,providerSettings:l?.providers??null,provider:K,model:ie,projectTarget:je,profileTarget:null,actionCatalog:is,requestedAction:rs,workspaceTarget:z,codexPermissionMode:ke,codexReasoningEffort:Z,openPondCommandAccessMode:we,onProviderChange:Pt,onProviderSetupOpen:rt,onProjectTargetChange:yt,onProfileTargetChange:N=>{on(N)},onWorkspaceTargetChange:N=>{kn(N)},onModelChange:gt,onCodexPermissionModeChange:Rt,onCodexReasoningEffortChange:ht,onOpenPondCommandAccessModeChange:jt,onMentionAppSelect:wt,onSaveTaskDraft:Os,showToast:ce,onSubmit:Me,onStop:Mn})]})]}),Wr,n.jsx(c.Suspense,{fallback:null,children:Vn})]}):n.jsxs(n.Fragment,{children:[n.jsxs("section",{className:"start-panel",children:[n.jsx(c.Suspense,{fallback:null,children:n.jsx(zp,{value:s==="chat"?"chat":"work",onChange:N=>{if(N==="ponder"){t?.("clean");return}t?.(null),r(N)}})}),n.jsxs("div",{className:"start-welcome",children:[n.jsx("h1",{children:Ps}),Xt&&n.jsx(Dh,{busy:se,onSync:()=>{zs()}})]}),n.jsxs("div",{className:"composer-stack start",children:[_,n.jsx(ci,{approval:ve,onResolve:Je}),n.jsx(li,{experience:s,draftStore:g,attachmentRequest:Ks,mode:"start",autoFocus:!0,focusRequestId:y,mentionApps:pt?S:[],connectedAppMentions:R,profileSkills:K==="codex"?l?.codexPersonalSkills??[]:Ln,selectedMentionAppId:$,contextWindowStatus:b,goalRuntime:s!=="chat"?m:null,subagentRuntime:s!=="chat"?h:null,createImproveRuntime:pt?ne:null,busy:U,running:U,steerActiveResponses:Tt.steerActiveResponses,taskSessionId:Ge,taskEvents:At,submissionScopeKey:v,getCurrentSubmissionScopeKey:Oe,voiceInputChannelKey:`main-composer:${v}`,connection:P,providerSettings:l?.providers??null,provider:K,model:ie,showProjectFooter:s!=="chat",projectTarget:je,profileTarget:null,actionCatalog:is,requestedAction:rs,workspaceTarget:z,codexPermissionMode:ke,codexReasoningEffort:Z,openPondCommandAccessMode:we,onProviderChange:Pt,onProviderSetupOpen:rt,onProjectTargetChange:yt,onProfileTargetChange:N=>{on(N)},onWorkspaceTargetChange:N=>{kn(N)},onModelChange:gt,onCodexPermissionModeChange:Rt,onCodexReasoningEffortChange:ht,onOpenPondCommandAccessModeChange:jt,onMentionAppSelect:wt,onSaveTaskDraft:Os,showToast:ce,onSubmit:Me,onStop:Mn})]})]}),Wr,n.jsx(c.Suspense,{fallback:null,children:Vn})]})]})}function rg(e){const t=e.path.toLowerCase();return t.endsWith(".md")||t.endsWith(".mdx")?"text/markdown":t.endsWith(".json")?"application/json":t.endsWith(".yaml")||t.endsWith(".yml")?"application/yaml":"text/plain"}const vg=Object.freeze(Object.defineProperty({__proto__:null,MainPane:sg,shouldShowRightSidebarHomePanel:So},Symbol.toStringTag,{value:"Module"}));export{ci as A,Bc as C,qc as F,Nr as I,fa as M,Oa as P,nu as R,bg as T,df as a,Bf as b,Uf as c,eu as d,Vc as e,Gc as f,Ou as g,gh as h,xg as i,ph as j,qh as k,gg as l,bo as m,Df as n,Gd as o,Tc as p,vg as q,qf as r,co as s,Bu as u};
|