openpond 0.2.45 → 0.2.46

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.
Files changed (238) hide show
  1. package/RELEASE.md +16 -13
  2. package/dist/app-server.d.ts +10474 -10090
  3. package/dist/app-server.js +1 -1
  4. package/dist/chunks/actions-command-I3NI75P2.js +2 -0
  5. package/dist/chunks/{app-layer-MDJFV3HZ.js → app-layer-B3SMVO4B.js} +1 -1
  6. package/dist/chunks/app-server-runtime-FL2CHQU2.js +2 -0
  7. package/dist/chunks/apps-OA2VX34V.js +2 -0
  8. package/dist/chunks/{chunk-4EGDKOYP.js → chunk-33AO3P6X.js} +1 -1
  9. package/dist/chunks/chunk-4UTIEH5H.js +16 -0
  10. package/dist/chunks/{chunk-J65BMG5Q.js → chunk-4VKNBADF.js} +1 -1
  11. package/dist/chunks/{chunk-B6LYKEMU.js → chunk-5OGRWWEH.js} +1 -1
  12. package/dist/chunks/chunk-5ZZM3TUN.js +24 -0
  13. package/dist/chunks/chunk-6JBWHR6T.js +5 -0
  14. package/dist/chunks/{chunk-DXAZUJPA.js → chunk-6SJZXZNA.js} +1 -1
  15. package/dist/chunks/{chunk-TVQE3JMI.js → chunk-6WLJWRMF.js} +1 -1
  16. package/dist/chunks/chunk-BKMGBIBT.js +2 -0
  17. package/dist/chunks/chunk-BQNK2NMB.js +21 -0
  18. package/dist/chunks/{chunk-VESOG2SS.js → chunk-BUFQKDAW.js} +1 -1
  19. package/dist/chunks/{chunk-DWGB536R.js → chunk-D6E7JBBQ.js} +7 -7
  20. package/dist/chunks/chunk-D6MQTNJ3.js +9 -0
  21. package/dist/chunks/chunk-DNXKIIV7.js +3 -0
  22. package/dist/chunks/{chunk-EG55BFQ4.js → chunk-EWS7MXTM.js} +1 -1
  23. package/dist/chunks/{chunk-GEDEVI4Y.js → chunk-F2AG46CV.js} +1 -1
  24. package/dist/chunks/{chunk-CR6CDOKS.js → chunk-F5DUN73H.js} +2 -2
  25. package/dist/chunks/chunk-FKCWOASO.js +49 -0
  26. package/dist/chunks/chunk-FOEUDMME.js +2678 -0
  27. package/dist/chunks/chunk-H6W55CQG.js +2 -0
  28. package/dist/chunks/chunk-HK3WGUKK.js +17 -0
  29. package/dist/chunks/{chunk-25GCTLAZ.js → chunk-HO5L2FUU.js} +1 -1
  30. package/dist/chunks/{chunk-XPB6NY7L.js → chunk-HP2D3W2B.js} +3 -3
  31. package/dist/chunks/chunk-ICZEOMPO.js +2 -0
  32. package/dist/chunks/{chunk-IYRHG54Q.js → chunk-IV7F74JJ.js} +1 -1
  33. package/dist/chunks/{chunk-U6SFIFDM.js → chunk-JBHAU7PH.js} +39 -39
  34. package/dist/chunks/chunk-JO7GRBOG.js +2 -0
  35. package/dist/chunks/{chunk-KPDWQCF6.js → chunk-KE5RH6JA.js} +1 -1
  36. package/dist/chunks/chunk-KUKOZJIR.js +2 -0
  37. package/dist/chunks/chunk-L4BYPZ4U.js +22 -0
  38. package/dist/chunks/{chunk-Z2BYC6TP.js → chunk-LZSY5IM3.js} +1 -1
  39. package/dist/chunks/{chunk-TNXILYI6.js → chunk-M7PBDRKC.js} +1 -1
  40. package/dist/chunks/{chunk-OJVIH7J6.js → chunk-MCRA6ZGJ.js} +1 -1
  41. package/dist/chunks/{chunk-YWX7FKLM.js → chunk-OGXSE57Z.js} +1 -1
  42. package/dist/chunks/{chunk-HZP5U2AA.js → chunk-P653BXMY.js} +1 -1
  43. package/dist/chunks/chunk-PMZH2TKS.js +4 -0
  44. package/dist/chunks/chunk-TYWBEJOA.js +3 -0
  45. package/dist/chunks/chunk-USWZ3KUC.js +2 -0
  46. package/dist/chunks/chunk-UWO34HP6.js +33 -0
  47. package/dist/chunks/{chunk-5ZFEQLRI.js → chunk-VW7D3DRM.js} +1 -1
  48. package/dist/chunks/chunk-W4IL6TWB.js +186 -0
  49. package/dist/chunks/chunk-WVNN3RB2.js +2 -0
  50. package/dist/chunks/{chunk-VVV5I22A.js → chunk-WWABOVRW.js} +2 -2
  51. package/dist/chunks/{chunk-B3O2GAQH.js → chunk-XLDW5NN3.js} +1 -1
  52. package/dist/chunks/chunk-YSYXIJ46.js +8 -0
  53. package/dist/chunks/{chunk-V62BHD5G.js → chunk-ZC57DX6D.js} +1 -1
  54. package/dist/chunks/{chunk-FXIUKYUR.js → chunk-ZJY2L43W.js} +3 -3
  55. package/dist/chunks/cli-5QR7QNQJ.js +2 -0
  56. package/dist/chunks/{configuration-command-75ZCMZ6X.js → configuration-command-MVZS625X.js} +1 -1
  57. package/dist/chunks/connected-evidence-7LHUZ2UI.js +2 -0
  58. package/dist/chunks/{continual-WWPXK2LO.js → continual-K5JNHNQH.js} +3 -3
  59. package/dist/chunks/core-commands-J2SJM5I5.js +2 -0
  60. package/dist/chunks/datasets-KDN2EXHE.js +2 -0
  61. package/dist/chunks/desktop-test-WIOEKMPR.js +3 -0
  62. package/dist/chunks/dist-3MTJ7VM6.js +2 -0
  63. package/dist/chunks/{dist-ELWB75PL.js → dist-JBE7DPFZ.js} +1 -1
  64. package/dist/chunks/evaluation-coordination-NGYHL7HG.js +2 -0
  65. package/dist/chunks/experiment-improvements-2M7GRGWS.js +2 -0
  66. package/dist/chunks/experiments-B6CRZ3GI.js +2 -0
  67. package/dist/chunks/{extension-3M2CSWZB.js → extension-RZTMK3ON.js} +1 -1
  68. package/dist/chunks/{help-RLRU33WN.js → help-EISFHH2F.js} +1 -1
  69. package/dist/chunks/hosted-experiment-improvement-6CHH65DX.js +3 -0
  70. package/dist/chunks/hosted-harness-runtime-PAYMAXH7.js +2 -0
  71. package/dist/chunks/hosted-profile-candidate-HYEISIAC.js +3 -0
  72. package/dist/chunks/hosted-profile-compiler-KQREWJA5.js +2 -0
  73. package/dist/chunks/hosted-profile-evaluation-control-LV6YXOG7.js +2 -0
  74. package/dist/chunks/hosted-profile-evaluation-inspection-A62UYFEP.js +3 -0
  75. package/dist/chunks/hosted-profile-evaluation-preparation-OR4OLYEX.js +3 -0
  76. package/dist/chunks/human-review-J6JGNRBR.js +2 -0
  77. package/dist/chunks/import-YHSX6SBZ.js +4 -0
  78. package/dist/chunks/learning-REL6GGNA.js +2 -0
  79. package/dist/chunks/opchat-CUZUU2WM.js +3 -0
  80. package/dist/chunks/organizations-VT27V4B2.js +2 -0
  81. package/dist/chunks/{profile-DC4UEVVG.js → profile-N2E5ASHQ.js} +1 -1
  82. package/dist/chunks/project-agent-XMXOBJSC.js +2 -0
  83. package/dist/chunks/sandbox-command-NC665ZZ5.js +2 -0
  84. package/dist/chunks/{sandbox-template-DFHWHCIQ.js → sandbox-template-OTP6S3RU.js} +1 -1
  85. package/dist/chunks/src-TNWF3IC5.js +329 -0
  86. package/dist/chunks/{src-CREVQF7M.js → src-WM35IF4W.js} +5 -5
  87. package/dist/chunks/{taskset-TB2ICAZU.js → taskset-COAPMTT3.js} +1 -1
  88. package/dist/chunks/{teams-bot-BNBL57S5.js → teams-bot-ACWJ7PJP.js} +1 -1
  89. package/dist/chunks/{training-FW5FOGR3.js → training-4JUK7YQV.js} +1 -1
  90. package/dist/cli.js +1 -1
  91. package/dist/index.js +1 -1
  92. package/dist/web/assets/App-CdDQ-lXE.css +1 -0
  93. package/dist/web/assets/App-D2f8_mGk.js +235 -0
  94. package/dist/web/assets/{AppDialog-Cgn_fTGR.js → AppDialog-CaxeNfsu.js} +1 -1
  95. package/dist/web/assets/{AppTerminalPanel-cNYkSvM2.js → AppTerminalPanel-dtK0ZPer.js} +2 -2
  96. package/dist/web/assets/{AppsView-9zpKBSLv.js → AppsView-DwK1UBJP.js} +1 -1
  97. package/dist/web/assets/BrowserSidebar-Cj9VnkgU.js +1 -0
  98. package/dist/web/assets/{CartesianChart-Bg3Lm5mZ.js → CartesianChart-Drfk6jTn.js} +1 -1
  99. package/dist/web/assets/{CollaborationTabs-BIfgIy5X.js → CollaborationTabs-Czh2noeb.js} +1 -1
  100. package/dist/web/assets/{CommandMenu-D9BimyPx.js → CommandMenu-D-M-xomh.js} +1 -1
  101. package/dist/web/assets/CommunityView-BrdxUI5Z.js +1 -0
  102. package/dist/web/assets/ComposerCreateImproveStrip-CJ8nkYJf.js +1 -0
  103. package/dist/web/assets/GetStartedView-u7Jw7YA1.js +1 -0
  104. package/dist/web/assets/HostedModelLearningReview-D0a2nwse.js +1 -0
  105. package/dist/web/assets/HostedModelLearningSettings-CQQGyjxi.js +1 -0
  106. package/dist/web/assets/LabModelVersionDetailPage-Cxlc4sSC.js +1 -0
  107. package/dist/web/assets/LabSkillSidebar-BnJkDb0c.js +1 -0
  108. package/dist/web/assets/LabsRoute-hHwZNbqN.js +99 -0
  109. package/dist/web/assets/MainChatThread-r_TYiTnW.js +2 -0
  110. package/dist/web/assets/MainPane-DJcd4tPk.js +19 -0
  111. package/dist/web/assets/MainPane-DOWsSew1.css +1 -0
  112. package/dist/web/assets/{MarkdownText-De0WzrEw.js → MarkdownText-BxPHz4je.js} +1 -1
  113. package/dist/web/assets/{NativeSkillSidebar-B4jtf5RO.js → NativeSkillSidebar-CCHK6kMG.js} +1 -1
  114. package/dist/web/assets/{NewExperienceSwitcher-Bg1DVr96.js → NewExperienceSwitcher-CuKWTDZj.js} +1 -1
  115. package/dist/web/assets/{NewProjectDialog-i_wvIBw-.js → NewProjectDialog-CS6sw2oD.js} +1 -1
  116. package/dist/web/assets/OutputsPage-JDM5bfLJ.js +1 -0
  117. package/dist/web/assets/{ProjectsPage-BD0eml0M.js → ProjectsPage-B3zTBHOA.js} +1 -1
  118. package/dist/web/assets/RightChatPanelStack-L8S3yj1u.js +1 -0
  119. package/dist/web/assets/{RightSidebarHomePanel-BTpU5wGh.js → RightSidebarHomePanel-BWJQKFUp.js} +1 -1
  120. package/dist/web/assets/ScheduledWorkPage-qX12p4B0.js +1 -0
  121. package/dist/web/assets/SettingsView-0KMs-r2I.js +9 -0
  122. package/dist/web/assets/SettingsView-CVsuQeCZ.css +1 -0
  123. package/dist/web/assets/{TeamChatView-5LjuRNd6.js → TeamChatView-DakXCNQE.js} +2 -2
  124. package/dist/web/assets/{TerminalOverlay-BCWBSotQ.js → TerminalOverlay-DaonK5C0.js} +12 -12
  125. package/dist/web/assets/{TrainingCreationPanel-hvOHRVJx.js → TrainingCreationPanel-CUvSsSwp.js} +1 -1
  126. package/dist/web/assets/{TrainingDraftPanel-CGEHGljE.js → TrainingDraftPanel-DNivtVwd.js} +1 -1
  127. package/dist/web/assets/{UsageSettingsSection-B8nbqhag.js → UsageSettingsSection-rbmuoPoE.js} +1 -1
  128. package/dist/web/assets/WorkSidebarPanel-DrYt9xzv.js +1 -0
  129. package/dist/web/assets/WorkspaceDiffPanel-CThoTqe4.js +14 -0
  130. package/dist/web/assets/WorkspaceEnvironmentMenu-DeODKxvW.js +32 -0
  131. package/dist/web/assets/{WorkspaceGitDialogs-Dyx4Rbiy.js → WorkspaceGitDialogs-CBarJYF-.js} +1 -1
  132. package/dist/web/assets/{WorkspaceMonacoEditor-B1dKexHo.js → WorkspaceMonacoEditor-Hmu5m_sO.js} +3 -3
  133. package/dist/web/assets/{arrow-up-right-CCj7SOGp.js → arrow-up-right-BV2IHfb9.js} +1 -1
  134. package/dist/web/assets/chunk-YTGRET2L-PKzEfYnf.js +1 -0
  135. package/dist/web/assets/{clipboard-BY6ELc9Z.js → clipboard-DDIvAWKp.js} +1 -1
  136. package/dist/web/assets/{cloud-upload-BOka5EKK.js → cloud-upload-Dv6kFnfC.js} +1 -1
  137. package/dist/web/assets/{cssMode-C34j8ti5.js → cssMode-BK0jFqWW.js} +1 -1
  138. package/dist/web/assets/{folder-open-CX2jidFj.js → folder-open-B9ixJQJX.js} +1 -1
  139. package/dist/web/assets/{folder-plus-Dh2Q9LP3.js → folder-plus-DqSKvtNB.js} +1 -1
  140. package/dist/web/assets/{git-commit-horizontal-CfevriuT.js → git-commit-horizontal-C1lQvfxe.js} +1 -1
  141. package/dist/web/assets/{htmlMode-BORwVkZg.js → htmlMode-CCV301b6.js} +1 -1
  142. package/dist/web/assets/index-1cMIFBxZ.css +1 -0
  143. package/dist/web/assets/{index-BBjRfC--.js → index-DIaKfM8a.js} +2 -2
  144. package/dist/web/assets/{info-Bv3dbs3G.js → info-BEvaynAD.js} +1 -1
  145. package/dist/web/assets/{jsonMode-BYWtZ6AK.js → jsonMode-Co4pyN4F.js} +1 -1
  146. package/dist/web/assets/{lspLanguageFeatures-CEAdFSpU.js → lspLanguageFeatures-CSU0G5da.js} +1 -1
  147. package/dist/web/assets/{minimize-2-MhorZwY5.js → minimize-2-DT8t8wwP.js} +1 -1
  148. package/dist/web/assets/{monaco.contribution-CDhPpbIo.js → monaco.contribution-CBwGIQY1.js} +2 -2
  149. package/dist/web/assets/{monaco.contribution-ZUUVx_3M.js → monaco.contribution-Cr0AaHCD.js} +2 -2
  150. package/dist/web/assets/{monaco.contribution-CN7AWJNd.js → monaco.contribution-DSBAb_PC.js} +2 -2
  151. package/dist/web/assets/{monaco.contribution-DHA7FuJX.js → monaco.contribution-DUZrs1D-.js} +2 -2
  152. package/dist/web/assets/{monitor-DLcrkfM5.js → monitor-DGqnfsK9.js} +1 -1
  153. package/dist/web/assets/play-C1XWyKh6.js +1 -0
  154. package/dist/web/assets/{python-CXwvPmc4.js → python-Z1foxLdf.js} +1 -1
  155. package/dist/web/assets/{save-DaN65kMq.js → save-CX2kF74j.js} +1 -1
  156. package/dist/web/assets/{square-zRgIUdSv.js → square-DMkXeYeV.js} +1 -1
  157. package/dist/web/assets/{toggleHighContrast-DWeRZFzr.js → toggleHighContrast-CRMVp779.js} +1 -1
  158. package/dist/web/assets/{tsMode-nLBhKngY.js → tsMode-Czu8YAqh.js} +1 -1
  159. package/dist/web/assets/{upload-BfUu4Eu1.js → upload-giKOPnl1.js} +1 -1
  160. package/dist/web/assets/{useLocalAgentSchedules-BCITWhg2.js → useLocalAgentSchedules-BHxWmOeC.js} +1 -1
  161. package/dist/web/assets/{useSessionTurnCache-BQMWfV8u.js → useSessionTurnCache-CUYFsu_W.js} +1 -1
  162. package/dist/web/assets/{wifi-off-bdka5es5.js → wifi-off-DbDXaV1N.js} +1 -1
  163. package/dist/web/assets/{workers-z7XHFFNs.js → workers-Cno4XklJ.js} +1 -1
  164. package/dist/web/assets/{yaml-BTr4i4DD.js → yaml-C28t_C6h.js} +1 -1
  165. package/dist/web/index.html +2 -2
  166. package/docs/command-reference.md +22 -0
  167. package/package.json +1 -2
  168. package/dist/chunks/actions-command-CRDLSPFA.js +0 -2
  169. package/dist/chunks/app-server-runtime-PJONTCCO.js +0 -2
  170. package/dist/chunks/apps-MD2DKEDW.js +0 -2
  171. package/dist/chunks/chunk-3BJ4P5LI.js +0 -520
  172. package/dist/chunks/chunk-3SRIPOJQ.js +0 -2
  173. package/dist/chunks/chunk-65BW2QXY.js +0 -2
  174. package/dist/chunks/chunk-6BL2ZIAP.js +0 -184
  175. package/dist/chunks/chunk-6QUICEQA.js +0 -5
  176. package/dist/chunks/chunk-7D2WMUWK.js +0 -3
  177. package/dist/chunks/chunk-7KIBRK3A.js +0 -4
  178. package/dist/chunks/chunk-ALZRXBEC.js +0 -33
  179. package/dist/chunks/chunk-CXS3WXL3.js +0 -2
  180. package/dist/chunks/chunk-ELNJUG64.js +0 -17
  181. package/dist/chunks/chunk-H3C4ZYEA.js +0 -16
  182. package/dist/chunks/chunk-HUBI3RUK.js +0 -2
  183. package/dist/chunks/chunk-KOR2AZVB.js +0 -24
  184. package/dist/chunks/chunk-M2YXYBSP.js +0 -2
  185. package/dist/chunks/chunk-MTJNKRXL.js +0 -22
  186. package/dist/chunks/chunk-NXUCGKY2.js +0 -5
  187. package/dist/chunks/chunk-PDIT2QS7.js +0 -8
  188. package/dist/chunks/chunk-QVRNOGAU.js +0 -21
  189. package/dist/chunks/chunk-V6WBSW5Q.js +0 -3
  190. package/dist/chunks/chunk-VFTUP5NQ.js +0 -2
  191. package/dist/chunks/chunk-XWLI7WJH.js +0 -2160
  192. package/dist/chunks/cli-BKBH6FZY.js +0 -2
  193. package/dist/chunks/connected-evidence-UPUVVQ6P.js +0 -2
  194. package/dist/chunks/core-commands-SS2GV7WU.js +0 -2
  195. package/dist/chunks/datasets-TCLXV34N.js +0 -2
  196. package/dist/chunks/desktop-test-7ZHZHUB6.js +0 -3
  197. package/dist/chunks/dist-VDN6E54A.js +0 -2
  198. package/dist/chunks/evaluation-coordination-ZX5GLMRC.js +0 -2
  199. package/dist/chunks/experiment-improvements-O6DCQXCX.js +0 -2
  200. package/dist/chunks/experiments-JOQOBQXY.js +0 -2
  201. package/dist/chunks/hosted-experiment-improvement-IKO677PI.js +0 -3
  202. package/dist/chunks/hosted-harness-runtime-H2Q2SNZT.js +0 -2
  203. package/dist/chunks/hosted-profile-candidate-FHHSLJNO.js +0 -3
  204. package/dist/chunks/hosted-profile-compiler-5B256VV3.js +0 -2
  205. package/dist/chunks/hosted-profile-evaluation-control-Z25TZOW4.js +0 -2
  206. package/dist/chunks/hosted-profile-evaluation-inspection-MFYPLTZQ.js +0 -3
  207. package/dist/chunks/hosted-profile-evaluation-preparation-MAB2PSCC.js +0 -3
  208. package/dist/chunks/human-review-6H3BW7OZ.js +0 -2
  209. package/dist/chunks/learning-Y6WNDVQW.js +0 -2
  210. package/dist/chunks/opchat-3E4FH3DC.js +0 -3
  211. package/dist/chunks/organizations-PRVCUPMN.js +0 -2
  212. package/dist/chunks/project-agent-ZX3CELKI.js +0 -2
  213. package/dist/chunks/sandbox-command-HHQMZK3G.js +0 -2
  214. package/dist/chunks/src-MAZ7OBVY.js +0 -327
  215. package/dist/web/assets/App-BgeSqoRS.css +0 -1
  216. package/dist/web/assets/App-C6EWFrLP.js +0 -227
  217. package/dist/web/assets/BrowserSidebar-Xo21N1ej.js +0 -1
  218. package/dist/web/assets/CommunityView-BoW-yLju.js +0 -1
  219. package/dist/web/assets/ComposerCreateImproveStrip-BIKVEgr1.js +0 -1
  220. package/dist/web/assets/GetStartedView-B99v4-hh.js +0 -1
  221. package/dist/web/assets/HostedModelLearningReview-DEScpX2Z.js +0 -1
  222. package/dist/web/assets/HostedModelLearningSettings-4HT5eEiL.js +0 -1
  223. package/dist/web/assets/LabModelVersionDetailPage-DkYdI7gr.js +0 -1
  224. package/dist/web/assets/LabSkillSidebar-Bp5XYipm.js +0 -1
  225. package/dist/web/assets/LabsRoute-VopO7n34.js +0 -105
  226. package/dist/web/assets/MainChatThread-3Gg0oDZT.js +0 -2
  227. package/dist/web/assets/MainPane-CUqMVG9-.js +0 -19
  228. package/dist/web/assets/OutputsPage-CZiPxLyN.js +0 -1
  229. package/dist/web/assets/RightChatPanelStack-CEBFPHKP.js +0 -1
  230. package/dist/web/assets/ScheduledWorkPage-Y6XGoh-X.js +0 -1
  231. package/dist/web/assets/SettingsView-C7av3zwv.css +0 -1
  232. package/dist/web/assets/SettingsView-Kh14f463.js +0 -9
  233. package/dist/web/assets/WorkSidebarPanel-B6hlPEIs.js +0 -1
  234. package/dist/web/assets/WorkspaceDiffPanel-q8A15-0x.js +0 -14
  235. package/dist/web/assets/WorkspaceEnvironmentMenu-BiFTPWtC.js +0 -32
  236. package/dist/web/assets/chunk-DJWHN7NU-1eQoMoKO.js +0 -1
  237. package/dist/web/assets/index-B9VSiz_z.css +0 -1
  238. package/dist/web/assets/refresh-cw-BTfIxHb3.js +0 -1
@@ -0,0 +1,19 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/ComposerCreateImproveStrip-CJ8nkYJf.js","assets/index-DIaKfM8a.js","assets/index-1cMIFBxZ.css","assets/App-D2f8_mGk.js","assets/App-CdDQ-lXE.css","assets/MarkdownText-BxPHz4je.js","assets/play-C1XWyKh6.js","assets/WorkspaceDiffPanel-CThoTqe4.js","assets/training-model-data-CKOkpBBL.js","assets/folder-open-B9ixJQJX.js","assets/info-BEvaynAD.js","assets/minimize-2-DT8t8wwP.js","assets/save-CX2kF74j.js","assets/clipboard-DDIvAWKp.js","assets/AppTerminalPanel-dtK0ZPer.js","assets/RightSidebarHomePanel-BWJQKFUp.js","assets/WorkSidebarPanel-DrYt9xzv.js","assets/cloud-upload-Dv6kFnfC.js","assets/arrow-up-right-BV2IHfb9.js","assets/square-DMkXeYeV.js","assets/WorkSidebarPanel-Bky_Rqcx.css","assets/NewExperienceSwitcher-CuKWTDZj.js","assets/CollaborationTabs-Czh2noeb.js","assets/CollaborationTabs-BfVlyLmR.css","assets/AppsView-DwK1UBJP.js","assets/AppsView-CzbB5pXp.css","assets/GetStartedView-u7Jw7YA1.js","assets/AppDialog-CaxeNfsu.js","assets/GetStartedView-yVmnGZPw.css","assets/LabsRoute-hHwZNbqN.js","assets/chunk-YTGRET2L-PKzEfYnf.js","assets/LabsRoute-ACN76d2j.css","assets/training-eg6uFi3M.css","assets/ScheduledWorkPage-qX12p4B0.js","assets/useLocalAgentSchedules-BHxWmOeC.js","assets/OutputsPage-JDM5bfLJ.js","assets/ProjectsPage-B3zTBHOA.js","assets/ProjectsPage-kun3Ron2.css","assets/LabSkillSidebar-BnJkDb0c.js","assets/LabSkillSidebar-CVxtS9pd.css","assets/BrowserSidebar-Cj9VnkgU.js","assets/BrowserSidebar-lNqqj4Ip.css","assets/RightChatPanelStack-L8S3yj1u.js","assets/useSessionTurnCache-CUYFsu_W.js","assets/NativeSkillSidebar-CCHK6kMG.js","assets/NativeSkillSidebar-T8KXjnUH.css","assets/TeamChatView-DakXCNQE.js","assets/TeamChatView-dL6B0qib.css","assets/git-dialogs-C-F47S10.css","assets/CommunityView-BrdxUI5Z.js","assets/wifi-off-DbDXaV1N.js","assets/CommunityView-CnZqWEjK.css","assets/TrainingDraftPanel-DNivtVwd.js","assets/MainChatThread-r_TYiTnW.js","assets/TrainingCreationPanel-CUvSsSwp.js"])))=>i.map(i=>d[i]);
2
+ import{r as o,j as n,_ as ke}from"./index-DIaKfM8a.js";import{c as Le,b as ha,a as Ao,u as Ro,d as Eo,e as $o,s as Ys,A as ai,C as _t,P as Yn,f as sr,g as Qn,h as Pt,i as Kr,F as Qr,r as Io,j as To,k as Po,O as _o,l as ta,B as Lo,m as dt,n as na,o as Oo,p as zo,q as Fo,t as Do,v as at,w as Bo,x as _e,X as $s,y as ii,z as Uo,D as sa,E as pa,G as ga,S as qo,H as xa,I as ra,J as Vo,K as Ho,L as Wo,M as Go,N as Kt,Q as aa,R as Kn,T as ba,U as oi,V as Ko,W as Qo,Y as Xo,Z as Jo,_ as Yo,$ as Zo,a0 as el,a1 as tl,a2 as nl,a3 as sl,a4 as li,a5 as rl,a6 as al,a7 as il,a8 as ol,a9 as ll,aa as cl,ab as ul,ac as dl,ad as Qt,ae as Xr,af as Zs,ag as fl,ah as ci,ai as ml,aj as hl,ak as pl,al as ui,am as gl,an as di,ao as xl,ap as bl,aq as vl,ar as jl,as as yl,at as ia,au as kl,av as Sl,aw as Cl,ax as wl,ay as va,az as Ml,aA as Nl,aB as ja,aC as Al,aD as Rl,aE as El,aF as $l,aG as Il,aH as Tl,aI as Pl,aJ as _l,aK as Ll,aL as Ol,aM as zl,aN as Fl,aO as Dl,aP as Bl,aQ as Ul,aR as ql}from"./App-D2f8_mGk.js";import{C as Vl}from"./cloud-upload-Dv6kFnfC.js";import{A as ur}from"./arrow-up-right-BV2IHfb9.js";import{T as Hl,B as ws,W as rr,P as Wl,F as Gl,C as Kl,A as Ql,a as fi,r as Xl,M as mi,n as hi,b as pi,c as gi,I as xi,u as bi,d as Jl,e as Yl,f as Zl}from"./MarkdownText-BxPHz4je.js";import{S as vi}from"./square-DMkXeYeV.js";import{F as ji}from"./folder-open-B9ixJQJX.js";import{P as ec}from"./play-C1XWyKh6.js";function yi(e){return e?(e.match(/\r\n|\r|\n/g)?.length??0)+(/(?:\r\n|\r|\n)$/.test(e)?0:1):0}const tc=[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]],nc=Le("arrow-down",tc);const sc=[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]],rc=Le("arrow-up",sc);const ac=[["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"}]],ya=Le("at-sign",ac);const ic=[["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"}]],oc=Le("badge-check",ic);const lc=[["path",{d:"M4.929 4.929 19.07 19.071",key:"196cmz"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],cc=Le("ban",lc);const uc=[["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"}]],dc=Le("circle-dashed",uc);const fc=[["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"}]],mc=Le("cloud-download",fc);const hc=[["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"}]],pc=Le("file-headphone",hc);const gc=[["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"}]],xc=Le("file-spreadsheet",gc);const bc=[["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"}]],vc=Le("file-play",bc);const jc=[["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"}]],hr=Le("image",jc);const yc=[["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"}]],ki=Le("lightbulb",yc);const kc=[["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"}]],Sc=Le("mic",kc);const Cc=[["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"}]],ka=Le("paperclip",Cc);const wc=[["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"}]],Mc=Le("presentation",wc);const Nc=[["path",{d:"M20 18v-2a4 4 0 0 0-4-4H4",key:"5vmcpk"}],["path",{d:"m9 17-5-5 5-5",key:"nvlc11"}]],Ac=Le("reply",Nc);const Rc=[["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"}]],Ec=Le("circle-x",Rc);function $c(e){const t=zc(e);if(t)return t;const s=Oc();let r="";const a=[],i=[],l=[];for(const h of e){if(!r&&h.label&&(r=h.label),Yc(i,h.label),Zc(l,h),h.kind==="command"&&h.content){Fc(s,Bc(h.content));continue}Dc(s,h)||Jc(a,h.label)}const c=[...qc(s),...i,...l],d=s.runCount>0?Qc(s.runCount):"",f=su(a),v=(e.length===1&&e[0]?.kind==="command"&&e[0].content&&i.length===0&&l.length===0?Si(e[0].content,"completed"):null)||Xc(c,d)||f||r||"Ran command";return{kind:Kc(s,d),text:v}}function Si(e,t="completed"){const s=Ni(e);if(s.length===0)return null;const r=t==="running"||t==="pending";if(s.some(Ai))return r?"Running shell command":"Ran shell command";const a=Ci(s);if(!a)return null;const[i,l]=a;if(i==="cat"){const d=Xt(l);return d.length===0?r?"Reading standard input":"Read standard input":`${r?"Reading":"Read"} ${vn(d)}`}if(i==="sed")return Lc(au([i,...l]),r);if(i==="rg")return iu([i,...l],r);if(["grep","ag"].includes(i)||i==="git"&&l[0]==="grep")return r?"Searching code":"Searched code";if(["ls","find","tree","fd"].includes(i)){const d=i==="ls"?Xt(l):[];return d.length===0?r?"Listing files":"Listed files":`${r?"Listing":"Listed"} files in ${vn(d)}`}if(["head","tail","nl","wc","awk","jq"].includes(i)){const d=Mi(i,l);return d.length===0?r?`Running ${i}`:`Ran ${i}`:`${r?"Reading":"Read"} ${vn(d)}`}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 Ic(l,r);if(_c(i))return Tc(i,l,r);if(wi(i))return Pc(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 ${Ms(i)} script`:`Ran ${Ms(i)} script`;const c=Ms(i);return r?`Running ${c} command`:`Ran ${c} command`}function Ic(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 Tc(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 ${Ms(e)} command`:`Ran ${Ms(e)} command`}function Pc(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 _c(e){return["bun","npm","pnpm","yarn"].includes(e)}function Ms(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 Lc(e,t){return!e||!t?e:e.startsWith("Read ")?`Reading ${e.slice(5)}`:e.startsWith("Run ")?`Running ${e.slice(4)}`:e}function Oc(){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 zc(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?Sa(s,"received"):null,r>0?Sa(r,"sent"):null].filter(i=>!!i);return{kind:"subagent",text:dr(oa(a))}}function Sa(e,t){return e===1?`child message ${t}`:`${e} child messages ${t}`}function Fc(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 Dc(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 Wc(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 Bc(e){const t=Ni(e);if(t.length===0||t.some(Ai))return{countedAsRun:!0};const s=Ci(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(Uc(r,a)||wi(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=Mi(r,a);return i.length>0?{countedAsRun:!1,readFiles:i}:{countedAsRun:!0}}function Ci(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 Uc(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 wi(e){return["eslint","jest","playwright","prettier","tsc","vitest"].includes(e)}function Mi(e,t){if(e==="cat"||e==="nl"||e==="head"||e==="tail"||e==="wc")return Fr(Xt(t));if(e==="sed"){const s=t.findIndex(r=>r!=="-n"&&!r.startsWith("--"));return Fr(s>=0?Xt(t.slice(s+1)):[])}return e==="awk"||e==="jq"?Fr(Xt(t.slice(1))):[]}function Fr(e){return e.filter(t=>!(!t||t==="."||t==="-"||/^\d+$/.test(t)))}function qc(e){const t=[],s=Hc(e);s&&t.push(s),e.editCount>0&&t.push("made edits");const r=e.readFiles.size||e.readFileCount;return r>0&&t.push(wa("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(wa("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(...Vc(e)),t}function Vc(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 Hc(e){const t=Gc(e);return t.failed>0?It(t.failed,"failed"):t.blocked>0?It(t.blocked,"blocked"):t.stale>0?It(t.stale,"stale"):t["needs revision"]>0?It(t["needs revision"],"needs revision"):t.submitted>0?It(t.submitted,"submitted"):t.running>0&&t.completed===0&&t.accepted===0?It(t.running,"running"):t.accepted>0?It(t.accepted,"accepted"):t.completed>0?It(t.completed,"completed"):t.archived>0?It(t.archived,"archived"):null}function Wc(e,t,s){const r=t.openSession?.sessionId??(t.content.trim()||t.id),a=e.subagentStatuses.get(r);(!a||Ca(s)>Ca(a))&&e.subagentStatuses.set(r,s)}function Gc(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 Ca(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 It(e,t){return e===1?`subagent ${t}`:`${e} subagents ${t}`}function Kc(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 Qc(e){return e===1?"ran a command":`ran ${e} commands`}function wa(e,t,s){return t===1?`${e} a ${s}`:`${e} ${t} ${s}s`}function Xc(e,t){return e.length===0?t?dr(t):"":dr(oa(t?[...e,t]:e))}function Jc(e,t){const s=t.trim();s&&(e.includes(s)||e.push(s))}function Yc(e,t){const s=eu(t);!s||e.includes(s)||e.push(s)}function Zc(e,t){const s=t.receipt;if(!s)return;const r=`${s.status} receipt ${nu(s.id)} ${tu(s.totalUsd)}`;e.includes(r)||e.push(r)}function eu(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 tu(e){const t=e.trim();return t.startsWith("$")?t:`$${t}`}function nu(e){const t=e.trim();return t.length<=14?t:`${t.slice(0,6)}...${t.slice(-4)}`}function su(e){return e.length===0?"":dr(oa(e.map(ru)))}function ru(e){return e&&`${e[0].toLowerCase()}${e.slice(1)}`}function oa(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 dr(e){return e&&`${e[0].toUpperCase()}${e.slice(1)}`}function au(e){const t=e.findIndex((i,l)=>l>0&&i!=="-n"&&!i.startsWith("--")),s=t>=0?e[t]??"":"",r=t>=0?Xt(e.slice(t+1)):[],a=/^(\d+)(?:,(\d+))?p$/.exec(s);if(a){const i=a[1],l=a[2],c=l?`lines ${i}-${l}`:`line ${i}`;return r.length>0?`Read ${c} of ${vn(r)}`:`Read ${c}`}return r.length>0?`Read ${vn(r)} with sed`:"Run sed"}function iu(e,t=!1){const s=e.slice(1);if(s.includes("--files")){const l=Xt(s.filter(c=>c!=="--files"));return l.length>0?`${t?"Listing":"Listed"} files matching ${vn(l)}`:t?"Listing files":"Listed files"}const r=Xt(s),a=r[0],i=r.slice(1);return a?i.length>0?`${t?"Searching":"Searched"} for ${Ma(a)} in ${vn(i)}`:`${t?"Searching":"Searched"} for ${Ma(a)}`:t?"Searching files":"Searched files"}function Ni(e){return(e.match(/"([^"\\]|\\.)*"|'[^']*'|[^\s]+/g)??[]).map(s=>ou(s)).filter(Boolean)}function ou(e){return e.startsWith("'")&&e.endsWith("'")||e.startsWith('"')&&e.endsWith('"')?e.slice(1,-1):e}function Ai(e){return["|","&&","||",";",">",">>","<","(",")"].includes(e)}function Xt(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 vn(e){return e.length===1?e[0]:e.length===2?`${e[0]} and ${e[1]}`:`${e[0]} and ${e.length-1} more`}function Ma(e){return`"${e}"`}const Na=Object.freeze({events:[],messages:[]});class cu{projection=Na;project(t){if(t===this.projection.events)return this.projection.messages;if(!fu(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=uu(this.projection.messages,s);if(r)return this.projection={events:t,messages:r},r;const a=du(t,this.projection.events.length);if(!a)return this.replace(t);const i=t.slice(a.eventIndex),l=new Set(i.flatMap(f=>f.turnId?[f.turnId]:[])),d=[...this.projection.messages.filter(f=>!f.turnId||!l.has(f.turnId)),...ha(i)];return this.projection={events:t,messages:d},d}reset(){this.projection=Na}snapshot(){return this.projection}replace(t){const s=ha(t);return this.projection={events:t,messages:s},s}}function uu(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,l=!1,c=!1;for(const f of t)f.name==="assistant.delta"?(r=`${r??""}${f.output}`,l=!0):(a=`${a??""}${f.output}`,c=!0),i=f.timestamp;const d={...s,...l?{content:r}:{},...c?{reasoningContent:a}:{},timestamp:i};return[...e.slice(0,-1),d]}function du(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 fu(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 mu(e,t){const s=o.useCallback(i=>t?e.subscribeSession(t,i):()=>{},[t,e]),r=o.useCallback(()=>e.getSessionSnapshot(t),[t,e]),a=o.useSyncExternalStore(s,r,r);return o.useEffect(()=>{if(t)return e.retainSession(t,!0),()=>e.retainSession(t,!1)},[t,e]),a}function hu(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"?Ao(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 pu(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 pr(e){return`$${e.name}`}function gu(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),l=e.slice(a),c=i&&!/\s$/.test(i)?" ":"",d=l&&/^\s/.test(l)?"":" ",f=`${c}${pr(s)}${d}`;return{cursor:i.length+f.length-(l?d.length:0),value:`${i}${f}${l}`}}function ar(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,l)=>i.name.localeCompare(l.name));return typeof s=="number"&&Number.isFinite(s)?a.slice(0,Math.max(0,s)):a}function Ri(e,t,s){const r=t.trim().replace(/\s+/g," "),a=xu(s,e.length);if(!r)return{value:e,cursorIndex:a};const i=e.slice(0,a),l=e.slice(a),c=i&&!/\s$/.test(i)?" ":"",d=l&&!/^\s/.test(l)?" ":"",f=`${c}${r}${d}`;return{value:`${i}${f}${l}`,cursorIndex:i.length+c.length+r.length+d.length}}function xu(e,t){return Number.isFinite(e)?Math.max(0,Math.min(t,Math.round(e))):t}async function bu({appendToEnd:e=!1,currentScopeKey:t,cursorIndex:s,originScopeKey:r,prompt:a,setOriginDraft:i,submitFromOrigin:l,transcript:c}){const d=Ri(a,c,e?a.length:s);return i(d.value),t===r?"drafted":await l(d.value)?(i(""),"submitted"):"retained"}const Xn=new Map,ir=new Map,or=new Map;function Aa(e){for(const t of ir.get(e)??[])t()}function vu(e){return Xn.has(e)}function ju(e,t){const s=ir.get(e)??new Set;return s.add(t),ir.set(e,s),()=>{s.delete(t),s.size===0&&ir.delete(e)}}function Ei(e){Xn.get(e)?.controller.abort()}function yu(e,t){const s=or.get(e)??new Set;return s.add(t),or.set(e,s),()=>{s.delete(t),s.size===0&&or.delete(e)}}function ku(e){const t=Xn.get(e);if(t)return t.submitRequested=!0,!0;for(const s of or.get(e)??[])if(s())return!0;return!1}function Su(e,t,s={}){Ei(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(()=>{Xn.get(e)===a&&(Xn.delete(e),Aa(e))}),Xn.set(e,a),Aa(e),a.promise}const Cu=new Set(["task.inbox","task.input","task.wait","turn.started","turn.completed","turn.failed","turn.interrupted","approval.requested","approval.resolved"]);function Ra(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 wu(e,t,s){const r=Ro(),a=Eo(e),i=o.useMemo(()=>["task-inbox",a,t],[a,t]),l=!!(e&&t),c=$o({queryKey:i,enabled:l,staleTime:0,refetchOnWindowFocus:!0,refetchOnReconnect:!0,queryFn:()=>Ys.taskInbox(e,t)}),[d,f]=o.useState(null),[b,v]=o.useState(null),h=`${a}:${t}`;let g;for(let j=s.length-1;j>=0;j--){const w=s[j];if(w.sessionId===t&&Cu.has(w.name)){g=w.id;break}}const m=o.useCallback(async()=>{l&&await r.invalidateQueries({queryKey:i,exact:!0})},[l,r,i]);o.useEffect(()=>{m()},[m,g]),o.useEffect(()=>{const j=()=>{m()};return window.addEventListener("openpond-runtime-connected",j),()=>window.removeEventListener("openpond-runtime-connected",j)},[m]);async function p(j,w){if(!l)return!1;f({scope:h,id:j}),v(null);try{const k=await w();return await r.cancelQueries({queryKey:i,exact:!0}),r.setQueryData(i,A=>A&&{...A,inputs:[...A.inputs.filter(C=>C.id!==k.id),k].sort((C,E)=>C.sequence-E.sequence)}),m(),!0}catch(k){return v({scope:h,message:k instanceof Error?k.message:String(k)}),m(),!1}finally{f(k=>k?.scope===h&&k.id===j?null:k)}}async function N(j,w,k){if(!e||!t)return!1;const A=`openpond:task-input:${e.serverUrl}:${t}`,C=Ra(A),E=C?.body===w&&C.kind===j,R=E?C:{body:w,kind:j,request:k,key:crypto.randomUUID(),turnId:j==="steer"?c.data?.activeTurnId??null:null};if(j==="steer"&&(!R.turnId||!E&&!c.data?.acceptingInput))return v({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."}),m(),!1;try{sessionStorage.setItem(A,JSON.stringify(R))}catch{}const I=await p(R.key,async()=>{let z;try{z=await(j==="steer"?Ys.steerTurn(e,t,{prompt:w,expectedTurnId:R.turnId,idempotencyKey:R.key}):Ys.queueTaskInput(e,t,R.request,R.key))}catch(B){if(B instanceof ai&&B.status>=400&&B.status<500)try{sessionStorage.removeItem(A)}catch{}throw B}if(z.state==="rejected"||z.state==="cancelled"){try{sessionStorage.removeItem(A)}catch{}throw new Error(z.error??"This input was cancelled. Review your text before sending again.")}return z});if(I)try{Ra(A)?.key===R.key&&sessionStorage.removeItem(A)}catch{}return I}return{enabled:l,snapshot:c.data??null,busyId:d?.scope===h?d.id:null,error:b?.scope===h?b.message:c.error?.message??null,steer:j=>N("steer",j),queue:j=>N("queued",j.prompt,j),mutate:(j,w)=>p(j.id,()=>Ys.updateTaskInput(e,t,j.id,w)),refresh:m}}function Mu(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?crypto.randomUUID():`steer-${Date.now().toString(36)}-${Math.random().toString(36).slice(2,9)}`}function Ns(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 $i(e,t={}){const s=t.now??new Date().toISOString();return{createdAt:s,id:t.id??Mu(),prompt:e,updatedAt:s}}function Ii(e,t){return e.filter(s=>s.id!==t)}function Nu(e,t,s){const r=s?.trim();return e.flatMap(a=>a.id!==t?[a]:r?[$i(r)]:[])}function Au(e,t,s){return s?Ii(e,t):e}function Jr(e,t,s=[]){return e[t]??s}function Ru(e,t,s,r=[]){const a=Jr(e,t,r),i=s(a);return Object.is(a,i)?e:{...e,[t]:i}}function Eu({inbox:e,onRestore:t}){const[s,r]=o.useState(null),a=e.snapshot,i=a?.inputs.filter(d=>d.senderKind==="user"&&d.kind==="queued"&&d.state==="pending")??[],l=a?.inputs.filter(d=>d.state!=="cancelled"&&!i.some(f=>f.id===d.id)).slice(-8)??[],c=s?.input.sessionId===a?.sessionId?s:null;return!i.length&&!l.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(d=>n.jsxs("p",{className:"task-inbox-status",role:"status",children:[d.targetSessionId?`Waiting for task ${d.targetSessionId}`:"Waiting for a message",". Work resumes when an update arrives."]},d.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(d=>n.jsx("div",{className:"task-inbox-item",children:c?.input.id===d.id?n.jsxs(n.Fragment,{children:[n.jsx("textarea",{"aria-label":"Edit queued message",value:c.body,maxLength:32e3,onChange:f=>r({...c,body:f.target.value})}),n.jsxs("div",{className:"task-inbox-actions",children:[n.jsx("button",{type:"button",disabled:!c.body.trim()||!!e.busyId,onClick:async()=>{await e.mutate(c.input,{action:"edit",expectedRevision:c.input.revision,body:c.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:d.body,children:Ns(d.body,220)}),n.jsxs("div",{className:"task-inbox-actions",children:[n.jsx("span",{children:d.turnId?"Starting":"Next turn"}),n.jsx("button",{type:"button",disabled:!!e.busyId||!!d.turnId||!a?.acceptingInput,onClick:()=>{e.mutate(d,{action:"steer",expectedRevision:d.revision,expectedTurnId:a.activeTurnId})},children:"Steer now"}),n.jsx("button",{type:"button",disabled:!!e.busyId||!!d.turnId,onClick:()=>r({input:d,body:d.body}),children:"Edit"}),n.jsx("button",{type:"button",disabled:!!e.busyId||!!d.turnId,onClick:()=>{e.mutate(d,{action:"cancel",expectedRevision:d.revision})},children:"Delete"})]})]})},d.id))]}),l.length>0&&n.jsxs("details",{className:"task-inbox-activity",open:l.some(d=>d.state==="rejected"||!!d.error),children:[n.jsxs("summary",{children:["Messages and delivery (",l.length,")"]}),l.map(d=>n.jsxs("div",{className:"task-inbox-item",children:[n.jsxs("div",{className:"task-inbox-heading",children:[n.jsx("span",{children:d.senderKind==="user"?"Your instruction":d.senderKind==="runtime"?"Task update":`Task ${d.senderSessionId}`}),n.jsx("span",{children:$u(d)})]}),n.jsx("p",{children:Ns(d.body,320)}),d.error&&n.jsx("p",{className:"task-inbox-error",children:d.error}),(d.state==="rejected"||d.error)&&d.senderKind==="user"&&n.jsx("button",{type:"button",onClick:()=>t(d.body),children:"Use as follow-up"})]},d.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 $u(e){return e.state==="pending"?"Saved · pending delivery":e.state==="included"?"Included":e.state==="resolved"?"Request finished":e.state==="rejected"?"Not delivered":"Cancelled"}function Ti({busy:e,placement:t,state:s,onChange:r}){const[a,i]=o.useState(!1),[l,c]=o.useState(""),d=o.useRef(null),f=o.useMemo(()=>{const b=l.trim().toLowerCase();return b?s.options.filter(v=>`${v.label} ${v.detail}`.toLowerCase().includes(b)):s.options},[l,s.options]);return o.useEffect(()=>{if(!a){c("");return}function b(h){d.current?.contains(h.target)||i(!1)}function v(h){h.key==="Escape"&&i(!1)}return document.addEventListener("pointerdown",b),document.addEventListener("keydown",v),()=>{document.removeEventListener("pointerdown",b),document.removeEventListener("keydown",v)}},[a]),s.options.length<=1?null:n.jsxs("div",{className:`composer-profile-target ${t==="top"?"open-up":""}`,ref:d,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(b=>!b),children:[n.jsx("span",{children:s.label}),n.jsx(_t,{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:l,placeholder:"Search profiles",onChange:b=>c(b.currentTarget.value)})}),n.jsx("div",{className:"composer-menu-items",children:f.map(b=>{const v=b.value===s.value;return n.jsxs("button",{type:"button",role:"menuitemradio","aria-checked":v,className:`composer-project-option ${v?"selected":""}`,onClick:()=>{r(b.value),i(!1)},children:[n.jsxs("span",{children:[n.jsx("strong",{children:b.label}),n.jsx("small",{children:b.detail})]}),v?n.jsx(Pt,{size:14}):null]},b.value)})})]}):null]})}function Iu({busy:e,placement:t,state:s,onChange:r}){const[a,i]=o.useState(!1),[l,c]=o.useState(!1),[d,f]=o.useState(""),b=o.useRef(null),h=s.value==="none"?"Select Project":s.label,g=s.options.find(k=>k.value===s.value)?.kind??"local",m=o.useMemo(()=>{const k=d.trim().toLowerCase();return k?s.options.filter(A=>[A.label,A.detail].filter(Boolean).some(C=>C.toLowerCase().includes(k))):s.options},[d,s.options]),p=m.filter(k=>k.kind==="local"||k.kind==="cloud"),N=m.filter(k=>k.kind==="action"),j=m.filter(k=>k.kind==="none");o.useEffect(()=>{if(!a){f(""),c(!1);return}function k(C){b.current?.contains(C.target)||i(!1)}function A(C){C.key==="Escape"&&(l?c(!1):i(!1))}return document.addEventListener("pointerdown",k),document.addEventListener("keydown",A),()=>{document.removeEventListener("pointerdown",k),document.removeEventListener("keydown",A)}},[l,a]);function w(k){const A=k.value===s.value,C=e||k.disabled,E=k.kind==="action";return n.jsxs("button",{type:"button",role:E?"menuitem":"menuitemradio","aria-checked":E?void 0:A,className:`composer-project-option ${A?"selected":""} ${k.kind}`,disabled:C,onClick:()=>{r(k.value),c(!1),i(!1)},children:[n.jsx(Yr,{kind:k.kind,size:14}),n.jsxs("span",{children:[n.jsx("strong",{children:k.label}),n.jsx("small",{children:k.detail})]}),A&&n.jsx(Pt,{size:14})]},k.value)}return n.jsxs("div",{className:`composer-project-target ${t==="top"?"open-up":""}`,ref:b,children:[n.jsxs("button",{type:"button",className:`composer-project-trigger ${a?"active":""} ${g}`,disabled:e,"aria-label":"Project","aria-haspopup":"menu","aria-expanded":a,onClick:()=>{i(k=>!k),c(!1)},children:[n.jsx(Yr,{kind:g,size:14}),n.jsx("span",{children:h}),n.jsx(_t,{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:d,placeholder:"Search projects",onChange:k=>f(k.target.value)})}),n.jsx("div",{className:"composer-menu-items",children:m.length===0?n.jsx("div",{className:"composer-menu-empty",children:"No projects found"}):p.map(w)}),N.length>0||j.length>0?n.jsxs("div",{className:"composer-project-actions",children:[N.length>0?n.jsxs("button",{type:"button",role:"menuitem",className:`composer-project-option action composer-project-new-trigger ${l?"selected":""}`,"aria-haspopup":"menu","aria-expanded":l,onClick:()=>c(k=>!k),children:[n.jsx(Yn,{size:14}),n.jsxs("span",{children:[n.jsx("strong",{children:"New"}),n.jsx("small",{children:"Create or add a project"})]}),n.jsx(sr,{size:14})]}):null,j.map(w)]}):null]}),a&&l?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:()=>c(!1),children:[n.jsx(Qn,{size:14}),n.jsx("span",{children:"New project"})]}),N.map(w)]}):null]})}function Yr({kind:e,size:t}){return e==="cloud"?n.jsx(Kr,{size:t}):e==="action"?n.jsx(Yn,{size:t}):n.jsx(Qr,{size:t})}function Tu({busy:e,placement:t,state:s,onChange:r}){const[a,i]=o.useState(!1),l=o.useRef(null),c=s.value==="cloud"?"cloud":s.value==="hybrid"?"hybrid":"local",d=`${s.label}: ${s.detail}`,f=s.uploadAction??null,b=f?Ea(f):null,v=f?f.disabled&&f.disabledReason?f.disabledReason:`${f.label}: ${b??f.detail}`:null,h=!!(f&&(e||s.busy||f.disabled));return o.useEffect(()=>{if(!a)return;function g(p){l.current?.contains(p.target)||i(!1)}function m(p){p.key==="Escape"&&i(!1)}return document.addEventListener("pointerdown",g),document.addEventListener("keydown",m),()=>{document.removeEventListener("pointerdown",g),document.removeEventListener("keydown",m)}},[a]),n.jsxs("div",{className:`workspace-action-control ${t==="top"?"open-up":""}`,ref:l,children:[n.jsxs("button",{type:"button",className:`workspace-action-trigger ${c} ${a?"active":""}`,disabled:e,"data-tooltip":d,"aria-label":"Working in","aria-haspopup":"menu","aria-expanded":a,onClick:()=>i(g=>!g),children:[n.jsx(lr,{value:s.value,size:14}),n.jsx("span",{className:"workspace-target-trigger-label",children:s.label}),n.jsx(_t,{size:14})]}),f?n.jsx("button",{type:"button",className:`workspace-upload-trigger ${f.value}`,disabled:h,"data-tooltip":v??void 0,"aria-label":f.label,onClick:()=>{r(f.value),i(!1)},children:n.jsx(lr,{value:f.value,size:14})}):null,a&&n.jsx("div",{className:"workspace-target-menu",role:"menu","aria-label":"Working in",children:s.options.map(g=>{const m=g.value===s.value,p=e||s.busy||g.disabled,j=Ea(g)??g.detail,w=g.disabled&&g.disabledReason?g.disabledReason:`${g.label}: ${j}`;return n.jsxs("button",{type:"button",role:"menuitemradio","aria-checked":m,className:`workspace-target-option ${m?"selected":""} ${g.value}`,disabled:p,"data-tooltip":w,onClick:()=>{r(g.value),i(!1)},children:[n.jsx(lr,{value:g.value,size:14}),n.jsxs("span",{children:[n.jsx("strong",{children:g.label}),n.jsx("small",{children:j})]}),m&&n.jsx(Pt,{size:14})]},g.value)})})]})}function Pu({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(Yr,{kind:r,size:14}),n.jsx("span",{children:a})]}),n.jsxs("span",{className:"composer-context-chip","aria-label":`Execution: ${t.label}`,children:[n.jsx(lr,{value:t.value,size:14}),n.jsx("span",{children:t.label})]})]})}function Ea(e){return e.disabled&&e.disabledReason?e.disabledReason:e.stateNote??null}function lr({value:e,size:t}){return e==="cloud"?n.jsx(Kr,{size:t}):e==="hybrid"?n.jsxs("span",{className:"workspace-target-hybrid-icon","aria-hidden":"true",children:[n.jsx(Qr,{className:"hybrid-folder",size:t}),n.jsx(Kr,{className:"hybrid-cloud",size:Math.max(7,Math.round(t*.62))})]}):e==="upload_cloud"?n.jsx(Vl,{size:t}):n.jsx(Qr,{size:t})}function $a({disabled:e,model:t,modelGroups:s,placement:r,provider:a,providerSettings:i,reasoningEffort:l,showReasoning:c,onModelSelectionChange:d,onProviderSetupOpen:f,onReasoningEffortChange:b}){const[v,h]=o.useState(!1),[g,m]=o.useState("root"),p=o.useRef(null),N=s.find(I=>I.provider===a),j=N?.options.find(I=>I.value===t),w=Io(a,t,i),k=To(a,t,l,i),A=w.find(I=>I.value===k)??w[0],C=_u(j?.label??t),E=c?`${C} ${A.shortLabel??A.label}`:C,R=c?"Model and reasoning":"Model";return o.useEffect(()=>{if(!v){m("root");return}function I(B){p.current?.contains(B.target)||h(!1)}function z(B){B.key==="Escape"&&h(!1)}return document.addEventListener("pointerdown",I),document.addEventListener("keydown",z),()=>{document.removeEventListener("pointerdown",I),document.removeEventListener("keydown",z)}},[v]),o.useEffect(()=>{!c&&g==="effort"&&m("root")},[g,c]),n.jsxs("div",{className:`codex-model-reasoning ${r==="top"?"open-up":""}`,"data-tooltip":R,ref:p,children:[n.jsxs("button",{type:"button",className:`codex-model-trigger ${v?"active":""}`,disabled:e,"aria-label":R,"aria-haspopup":"menu","aria-expanded":v,onClick:()=>h(I=>!I),children:[n.jsx("span",{children:E}),n.jsx(_t,{size:14})]}),v&&n.jsx("div",{className:"codex-model-menu",role:"menu","aria-label":R,children:g==="root"?n.jsxs("div",{className:"codex-model-menu-root",children:[n.jsxs("button",{type:"button",className:"codex-model-menu-row",role:"menuitem",onClick:()=>m("provider"),children:[n.jsx("span",{children:"Provider"}),n.jsx("span",{className:"codex-model-menu-value",children:N?.label??a}),n.jsx(sr,{size:14})]}),n.jsxs("button",{type:"button",className:"codex-model-menu-row",role:"menuitem",onClick:()=>m("model"),children:[n.jsx("span",{children:"Model"}),n.jsx("span",{className:"codex-model-menu-value",children:j?.label??t}),n.jsx(sr,{size:14})]}),c?n.jsxs("button",{type:"button",className:"codex-model-menu-row",role:"menuitem",onClick:()=>m("effort"),children:[n.jsx("span",{children:"Effort"}),n.jsx("span",{className:"codex-model-menu-value",children:A.shortLabel??A.label}),n.jsx(sr,{size:14})]}):null]}):g==="provider"?n.jsxs(n.Fragment,{children:[n.jsxs("button",{type:"button",className:"codex-model-submenu-heading","aria-label":"Back to model settings — Provider",onClick:()=>m("root"),children:[n.jsx(Qn,{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(I=>{const z=I.provider===a;return n.jsxs("button",{type:"button",role:"menuitemradio","aria-checked":z,className:z?"selected":"",onClick:()=>{const B=I.options.find(Y=>Y.value===I.defaultModel)??I.options[0];B&&(d(I.provider,B.value),m("root"))},children:[n.jsx("span",{children:I.label}),z?n.jsx(Pt,{size:14}):null]},I.provider)})}),n.jsx("button",{type:"button",className:"codex-model-setup-action",role:"menuitem",onClick:()=>{h(!1),f?.()},children:n.jsxs("span",{className:"codex-model-menu-option-label",children:[n.jsx(Yn,{size:13}),n.jsx("span",{children:"New Model/Provider"})]})})]}):g==="model"?n.jsxs(n.Fragment,{children:[n.jsxs("button",{type:"button",className:"codex-model-submenu-heading","aria-label":"Back to model settings — Model",onClick:()=>m("root"),children:[n.jsx(Qn,{size:14}),n.jsx("span",{children:"Model"})]}),n.jsx("div",{className:"codex-model-menu-divider"}),n.jsxs("div",{className:"codex-model-menu-options",children:[(N?.options??[]).map(I=>{const z=I.value===t;return n.jsxs("button",{type:"button",role:"menuitemradio","aria-checked":z,className:z?"selected":"",onClick:()=>{d(a,I.value),m("root")},children:[n.jsx("span",{children:I.label}),z?n.jsx(Pt,{size:14}):null]},I.value)}),N?.options.length?null:n.jsx("div",{className:"codex-model-menu-empty",children:"No models from this provider"})]}),n.jsx("button",{type:"button",className:"codex-model-setup-action",role:"menuitem",onClick:()=>{h(!1),f?.()},children:n.jsxs("span",{className:"codex-model-menu-option-label",children:[n.jsx(Yn,{size:13}),n.jsx("span",{children:"New Model/Provider"})]})})]}):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:()=>m("root"),children:[n.jsx(Qn,{size:14}),n.jsx("span",{children:"Effort"})]}),n.jsx("div",{className:"codex-model-menu-divider"}),w.map(I=>n.jsxs("button",{type:"button",role:"menuitemradio","aria-checked":I.value===k,className:I.value===k?"selected":"",onClick:()=>{b(I.value),m("root")},children:[n.jsx("span",{children:I.label}),I.value===k?n.jsx(Pt,{size:14}):null]},I.value))]})})]})}function _u(e){return e.replace(/^GPT-/,"").replace(/\s+Codex Spark$/," Spark").replace(/\s+Codex$/," Codex")}function Lu({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(_t,{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 Ou({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 l=t===i.id,c=Ns(i.prompt);return n.jsxs("div",{className:`composer-steer-row ${l?"sending":""}`,children:[n.jsx("span",{className:"composer-steer-row-icon","aria-hidden":"true",children:n.jsx(Ac,{size:13})}),n.jsx("span",{className:"composer-steer-row-text",title:i.prompt,children:c}),n.jsxs("button",{type:"button",className:"composer-steer-row-action primary",disabled:l,"aria-label":`Steer: ${Ns(i.prompt,60)}`,onClick:()=>a(i.id),children:[n.jsx(ur,{size:12}),n.jsx("span",{children:l?"Sending":"Steer"})]}),n.jsx("button",{type:"button",className:"composer-steer-row-icon-button",disabled:l,"data-tooltip":"Delete steer draft","aria-label":"Delete steer draft",onClick:()=>s(i.id),children:n.jsx(Hl,{size:13})}),n.jsx("button",{type:"button",className:"composer-steer-row-action",disabled:l,"aria-label":`Edit: ${Ns(i.prompt,60)}`,onClick:()=>r(i),children:n.jsx("span",{children:"Edit"})})]},i.id)})})}const zu=/\b(?:https?:\/\/)?(?:github\.com|(?:[a-z0-9-]+\.)*openpond\.ai)\/[^\s<>"'`]+/gi,Fu=/\b(?:git@)?(?:github\.com|(?:[a-z0-9-]+\.)*openpond\.ai):[^\s<>"'`]+/gi,Du=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"]),Bu=new Set(["account","api","dashboard","docs","install.sh","login","logout","opchat","sandboxes","settings"]);function Uu(e){const t=e.toLowerCase().replace(/^www\./,"");return t==="github.com"?"github":t==="openpond.ai"||t.endsWith(".openpond.ai")?"openpond":null}function qu(e){return e==="github"?Du:Bu}function Pi(e){let t=e;for(;/[.,;!?]$/.test(t);)t=t.slice(0,-1);for(;Vu(t);)t=t.slice(0,-1);return t}function Vu(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 Hu(e){return e.replace(/\.git$/i,"")}function _i(e){try{return decodeURIComponent(e)}catch{return e}}function Wu(e){return Hu(_i(e.trim()))}function Li(e){const t=e.host.toLowerCase().replace(/^www\./,""),s=Uu(t);if(!s)return null;const r=_i(e.owner?.trim()??""),a=Wu(e.repo??"");return!r||!a||qu(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 Gu(e,t){const s=Pi(e);if(!s)return null;try{const r=new URL(/^https?:\/\//i.test(s)?s:`https://${s}`),a=r.pathname.split("/").filter(Boolean);return Li({end:t+s.length,host:r.hostname,owner:a[0],repo:a[1],start:t,url:s})}catch{return null}}function Ku(e,t){const s=Pi(e),r=/^(?:git@)?([^:]+):(.+)$/i.exec(s);if(!r)return null;const a=r[1]?.trim()??"",i=(r[2]??"").split("/").filter(Boolean);return Li({end:t+s.length,host:a,owner:i[0],repo:i[1],start:t,url:s})}function Ia(e,t,s){const r=[];t.lastIndex=0;let a;for(;a=t.exec(e);){const i=a[0]??"",l=s(i,a.index);l&&r.push(l)}return r}function Qu(e){if(!e)return[];const t=[...Ia(e,zu,Gu),...Ia(e,Fu,Ku)].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 Xu=10,Ju=340,Yu=320,Zu=160,ed=56;function Tt(e,t=0){const s=Number.parseFloat(e);return Number.isFinite(s)?s:t}function Dr(e){if(!e)return;e.style.height="auto";const t=window.getComputedStyle(e),s=Tt(t.fontSize,16),r=Tt(t.lineHeight,s*1.45),a=Tt(t.paddingTop)+Tt(t.paddingBottom),i=Tt(t.borderTopWidth)+Tt(t.borderBottomWidth),l=Tt(t.minHeight,66),c=Math.max(l,Math.ceil(r*Xu+a+i)),d=Math.max(l,Math.min(e.scrollHeight,c));e.style.height=`${d}px`,e.style.overflowY=e.scrollHeight>c?"auto":"hidden"}function Br(e,t){const s=e.getBoundingClientRect(),r=t.getBoundingClientRect(),a=window.getComputedStyle(e),i=Tt(a.paddingLeft,14),l=Tt(a.paddingTop,15),c=Math.max(0,r.width-16),d=Math.min(Ju,c),f=s.left-r.left+i-8,b=Math.max(8,Math.min(f,r.width-d-8)),v=Math.max(8,s.top-r.top+l+2);return{left:b,top:v,width:d}}function td(e){const t=e.getBoundingClientRect(),s=Math.floor(t.top-ed);return{maxHeight:Math.max(Zu,Math.min(Yu,s))}}const nd="[data-inline-token='true']",sd="[data-inline-repo-link='true']",rd="[data-inline-connected-app-mention='true']";function As(e){return e instanceof HTMLElement&&e.matches(nd)}function Rs(e){return e instanceof HTMLElement&&e.matches(sd)}function Es(e){return e instanceof HTMLElement&&e.matches(rd)}function fr(e,t){return Math.max(0,Math.min(e,t))}function Jn(e,t){return e?fr(e.position,t.length):null}function ad(e,t,s,r=!1){const a=Jn(t,s),i=fr(e,s.length);return a===null?i:i>a||r&&i===a?i+1:i}function Ta(e,t,s){const r=Jn(t,s);return fr(r===null?e:e>r?e-1:e,s.length)}function Ur(e){let t="",s=null;function r(a){if(Rs(a)){t+=a.dataset.repoUrl??"";return}if(Es(a)){t+=a.dataset.connectedMentionText??"";return}if(As(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 jn(e){if(Rs(e))return e.dataset.repoUrl?.length??0;if(Es(e))return e.dataset.connectedMentionText?.length??0;if(As(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+=jn(s)}),t}function Pa(e,t,s){if(!t||t!==e&&!e.contains(t))return null;let r=0,a=!1;function i(l){if(!a){if((As(l)||Rs(l)||Es(l))&&(l===t||l.contains(t))){(l!==t||s>0)&&(r+=jn(l)),a=!0;return}if(As(l)||Rs(l)||Es(l)){r+=jn(l);return}if(l===t){if(l.nodeType===Node.TEXT_NODE)r+=s;else{const c=Array.from(l.childNodes).slice(0,s);for(const d of c)r+=jn(d)}a=!0;return}if(l.nodeType===Node.TEXT_NODE){r+=l.textContent?.length??0;return}l instanceof HTMLBRElement||l.childNodes.forEach(i)}}return i(e),a?r:null}function qr(e){const t=window.getSelection();if(!t||t.rangeCount===0)return null;const s=Pa(e,t.anchorNode,t.anchorOffset),r=Pa(e,t.focusNode,t.focusOffset);return s===null||r===null?null:{anchor:s,focus:r}}function _a(e,t){let s=Math.max(0,t);function r(l){const c=l.parentNode;return c?{node:c,offset:Array.prototype.indexOf.call(c.childNodes,l)}:{node:e,offset:0}}function a(l){const c=r(l);return{node:c.node,offset:c.offset+1}}function i(l){if(As(l)||Rs(l)||Es(l)){const c=jn(l);return s<=0?r(l):s<=c?a(l):(s-=c,null)}if(l.nodeType===Node.TEXT_NODE){const c=l.textContent?.length??0;return s<=c?{node:l,offset:s}:(s-=c,null)}if(l instanceof HTMLBRElement)return null;for(const c of l.childNodes){const d=i(c);if(d)return d}return null}return i(e)??{node:e,offset:e.childNodes.length}}function Oi(e,t){const s=window.getSelection();if(!s)return;const r=_a(e,t.anchor),a=_a(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(),l=t.anchor<=t.focus,c=l?r:a,d=l?a:r;i.setStart(c.node,c.offset),i.setEnd(d.node,d.offset),s.addRange(i)}function id(e,t){Oi(e,{anchor:t,focus:t})}function La(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 ld(){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 Oa(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",ld());const a=document.createElement("span");return a.className="composer-invocation-label",a.textContent=e.label,t.append(s,a),t}function cd(e){return e.provider==="github"?ta("github"):_o}function ud(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=cd(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 dd(e){return ta(e)}function fd(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=dd(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 md(e,t){const s=Qu(e);return t===null?s:s.filter(r=>t<=r.start||t>=r.end)}function hd(e,t,s){const r=Po(e,t);return s===null?r:r.filter(a=>s<=a.start||s>=a.end)}function zi(e,t,s){const r=[...md(e,t).map(l=>({end:l.end,kind:"repo",link:l,start:l.start})),...hd(e,s,t).map(l=>({end:l.end,kind:"connected-app",mention:l,start:l.start}))].sort((l,c)=>l.start-c.start||c.end-l.end),a=[];let i=0;for(const l of r)l.start<i||(a.push(l),i=l.end);return a}function pd(e,t,s){return zi(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 gd(e,t,s,r){const a=Jn(s,t),i=zi(t,a,r);let l=!1;function c(b){b&&e.append(document.createTextNode(b))}function d(b,v){if(!s||a===null||l||a<b||a>v){c(t.slice(b,v));return}c(t.slice(b,a)),e.append(Oa(s)),l=!0,c(t.slice(a,v))}e.replaceChildren();let f=0;for(const b of i)d(f,b.start),b.kind==="repo"?e.append(ud(b.link)):e.append(fd(b.mention)),f=b.end;d(f,t.length),s&&!l&&e.append(Oa(s))}const xd=o.forwardRef(function({connectedAppMentions:t=[],disabled:s,onCursorChange:r,onKeyDown:a,onPasteFiles:i,onPasteTextAsAttachment:l,onPromptChange:c,onTokenPositionChange:d,placeholder:f,prompt:b,token:v},h){const g=o.useRef(null),p=`${v?`${v.key}:${Jn(v,b)??0}`:"none"}|${pd(b,Jn(v,b),t)}`,N=o.useRef(null),j=b.length===0&&!v;o.useImperativeHandle(h,()=>({get element(){return g.current},getPrompt(){const C=g.current;return C?Ur(C).text:b},focusAtPromptIndex(C,E){const R=g.current;if(!R)return;const I=ad(C,v,b,E?.afterToken);R.focus(),id(R,I),Dr(R)},resize(){Dr(g.current)}}),[b,v]),o.useLayoutEffect(()=>{const C=g.current;if(!C)return;const E=N.current!==p;N.current=p;const R=Ur(C);if(E||b===""||R.text!==b||R.tokenPosition!==Jn(v,b)){const z=document.activeElement===C?qr(C):null;gd(C,b,v,t),C.dataset.empty=b.length===0&&!v?"true":"false",z&&Oi(C,z)}Dr(C)},[t,b,v,p]);function w(){const C=g.current;if(!C)return;const E=qr(C)?.focus??jn(C),R=Ur(C),I=Ta(E,v,R.text);C.dataset.empty=R.text.length===0&&!v?"true":"false",d(R.tokenPosition),r(I),c(R.text,I)}function k(){w(),window.requestAnimationFrame(w)}function A(){const C=g.current;if(!C)return;const E=qr(C)?.focus??jn(C);r(Ta(E,v,b))}return n.jsx("div",{ref:g,className:"composer-inline-input",role:"textbox","aria-multiline":"true",contentEditable:!s,suppressContentEditableWarning:!0,"data-empty":j?"true":"false","data-placeholder":f,onBeforeInput:C=>{C.nativeEvent.inputType==="insertParagraph"&&(C.preventDefault(),La(`
3
+ `),k())},onInput:w,onKeyDown:C=>{a(C)},onKeyUp:A,onMouseUp:A,onPaste:C=>{C.preventDefault();const E=Array.from(C.clipboardData.files);if(E.length>0&&i){i(E);return}const R=C.clipboardData.getData("text/plain");R&&(l?.(R)||(La(R),k()))}})});function bd(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 vd(e,t,s,r,a,i,l){return e==="Enter"&&(t||s)&&!r&&a==="work"&&i==="chat"&&l}function jd(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 yd(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 kd(e){return e.kind==="command"?`${e.command.command} ${e.command.label}`:e.kind==="app-context"?e.app.name:e.kind==="skill"?pr(e.skill):na(e.action)}function Sd(e){return e.kind==="command"?zo(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||Fo(e.action)}function Cd(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 wd(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"?pr(e.skill):Oo(e.action)}function Md(e){if(e.kind==="action")return Do(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 Nd(e){return e.kind==="files"?"files":e.kind==="folder"?"folder":e.kind==="slash"?`slash:${yd(e.item)}`:`mention:${Cd(e.item)}`}function Fi(e){return e.kind==="files"?"Files and folders":e.kind==="folder"?"Local folder":e.kind==="slash"?kd(e.item):wd(e.item)}function Di(e){return e.kind==="files"?"Attach images, documents, or other files":e.kind==="folder"?"Share a bounded folder as Work input":e.kind==="slash"?Sd(e.item):Md(e.item)}function Ad(e,t){const s=t.toLowerCase().split(/\s+/).filter(Boolean);if(s.length===0)return!0;const r=`${Fi(e)} ${Di(e)}`.toLowerCase();return s.every(a=>r.includes(a))}function Rd(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(d=>d.id===r||d.queryScope===r||d.queryScopes?.includes(r)):e;if(!a)return i;const l=i.map(d=>({...d,items:d.items.filter(f=>Ad(f,a))})).filter(d=>d.items.length>0);return l.length>0?l:[{...(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 Ed(e){if(e.kind==="files")return n.jsx(ka,{size:14});if(e.kind==="folder")return n.jsx(ka,{size:14});if(e.kind==="slash"){const s=e.item;return s.kind==="command"?s.command.id==="agent"?n.jsx(ws,{size:14}):s.command.id==="skill"?n.jsx(Lo,{size:14}):n.jsx(rr,{size:14}):s.kind==="app-context"?n.jsx(ya,{size:14}):s.kind==="skill"?n.jsx(dt,{size:14}):za(s.action)?n.jsx(ws,{size:14}):n.jsx(rr,{size:14})}const t=e.item;return t.kind==="connected-app"?n.jsx("img",{alt:"",className:"composer-provider-mention-icon",draggable:!1,src:ta(t.app.provider)}):t.kind==="action"?za(t.action)?n.jsx(ws,{size:14}):n.jsx(rr,{size:14}):t.kind==="skill"?n.jsx(dt,{size:14}):n.jsx(ya,{size:14})}function $d(e){if(e.kind==="slash"&&e.item.kind==="app-context"||e.kind==="mention"&&e.item.kind==="app")return e.item.app.id}function la({ariaLabel:e,className:t="",id:s,menuIndex:r,menuRef:a,onSelect:i,onSelectIndex:l,sections:c,style:d,variant:f}){const b=o.useRef(null),v=c.reduce((g,m)=>g+m.items.length,0);o.useEffect(()=>{if(f==="add"&&r===0){const g=b.current?.closest(".composer-command-menu");g&&(g.scrollTop=0);return}b.current?.scrollIntoView({block:"nearest"})},[v,r,f]);let h=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:d,children:c.map(g=>{const m=h;return h+=g.items.length,n.jsxs("div",{className:`composer-command-section ${g.grid?"composer-command-section-grid":""}`.trim(),role:"group","aria-label":g.label,children:[n.jsx("div",{className:"composer-command-section-title",children:g.label}),g.items.length>0?g.items.map((p,N)=>{const j=m+N,w=j===r;return n.jsxs("button",{type:"button",role:f==="add"?"menuitem":"option",ref:w?b:void 0,"aria-selected":f==="typed"?w:void 0,className:`composer-project-option ${w?"selected":""} composer-command-option`,"data-app-context-id":$d(p),onFocus:()=>l(j),onMouseEnter:()=>l(j),onMouseDown:k=>{k.preventDefault()},onClick:()=>i(p),children:[Ed(p),n.jsxs("span",{children:[n.jsx("strong",{children:Fi(p)}),n.jsx("small",{children:Di(p)})]}),f==="typed"&&w?n.jsx(Pt,{size:14}):n.jsx("span",{"aria-hidden":"true"})]},Nd(p))}):n.jsx("div",{className:"composer-menu-empty",children:g.emptyLabel??"No items available"})]},g.id)})})}function Id({mentionIndex:e,items:t,onSelect:s,onSelectIndex:r,style:a}){return n.jsx(la,{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})}function Td({connection:e,provider:t,disabled:s,onSettings:r,onSetup:a}){const[i,l]=o.useState(null),[c,d]=o.useState(null),[f,b]=o.useState(!1),v=["opencode","grok-build","claude-code"].includes(t);if(o.useEffect(()=>{if(l(null),d(null),!e||!v)return;const m=new AbortController;return at(e,`/v1/providers/${t}/native-setup`,{method:"POST",body:JSON.stringify({action:"capabilities"}),signal:m.signal}).then(p=>{m.signal.aborted||(l(p),r({provider:t,settings:p.settings}))}).catch(p=>{m.signal.aborted||d(p.message)}),()=>m.abort()},[e,t,v,r]),!v||!e)return null;const h=i?.settings.providers[t];async function g(m){if(e){b(!0);try{const p=await at(e,"/v1/providers",{method:"PATCH",body:JSON.stringify({providers:{[t]:m}})});l(N=>N&&{...N,settings:p}),r({provider:t,settings:p}),d(null)}catch(p){d(p instanceof Error?p.message:"Could not save agent settings.")}finally{b(!1)}}}return n.jsxs(n.Fragment,{children:[h&&!h.enabled?n.jsx("button",{type:"button",disabled:s||f,onClick:()=>{g({enabled:!0})},children:"Enable agent"}):null,i?.session?.modes?n.jsxs("label",{className:"composer-native-option",children:[n.jsx("span",{children:"Mode"}),n.jsx("select",{title:"Default mode for this agent installation",disabled:s||f,value:h?.nativeMode??i.session.modes.currentModeId,onChange:m=>{g({nativeMode:m.target.value})},children:i.session.modes.availableModes.map(m=>n.jsx("option",{value:m.id,children:m.name},m.id))})]}):null,i?.session?.configOptions?.filter(m=>m.type==="select"&&m.category!=="model"&&m.category!=="mode").map(m=>n.jsxs("label",{className:"composer-native-option",children:[n.jsx("span",{children:m.name}),n.jsx("select",{title:`Default ${m.name.toLowerCase()} for this agent installation`,disabled:s||f,value:h?.nativeOptions?.[m.id]??m.currentValue,onChange:p=>{g({nativeOptions:{...h?.nativeOptions,[m.id]:p.target.value}})},children:m.options?.flatMap(p=>"options"in p?p.options:[p]).map(p=>n.jsx("option",{value:p.value,children:p.name},p.value))})]},m.id)),c||i?.error?n.jsxs("span",{role:"status",title:c??i?.error??void 0,children:["Agent needs attention",a?n.jsx("button",{type:"button",onClick:a,children:"Open setup"}):null]}):null]})}function Bi(){return!!(navigator.mediaDevices&&typeof AudioContext<"u")}async function Pd(e={}){if(!Bi())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 l={audioContext:s,chunks:[],processor:a,silentGain:i,source:r,stream:t,startedAt:performance.now(),stopped:!1,onAudioLevel:e.onAudioLevel};return a.onaudioprocess=c=>{if(l.stopped)return;const d=c.inputBuffer.getChannelData(0);l.chunks.push(new Float32Array(d)),l.onAudioLevel?.(_d(d))},r.connect(a),a.connect(i),i.connect(s.destination),{stop:()=>Fa(l,!0),cancel:()=>Fa(l,!1).then(()=>{})}}function _d(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 Fa(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=Ld(e.chunks);if(r.length===0)throw new Error("No microphone audio was captured.");return{blob:Od(r,e.audioContext.sampleRate),durationMs:s,sampleRate:e.audioContext.sampleRate}}function Ld(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 Od(e,t){const a=e.length*2,i=new ArrayBuffer(44+a),l=new DataView(i);er(l,0,"RIFF"),l.setUint32(4,36+a,!0),er(l,8,"WAVE"),er(l,12,"fmt "),l.setUint32(16,16,!0),l.setUint16(20,1,!0),l.setUint16(22,1,!0),l.setUint32(24,t,!0),l.setUint32(28,t*1*2,!0),l.setUint16(32,2,!0),l.setUint16(34,16,!0),er(l,36,"data"),l.setUint32(40,a,!0);let c=44;for(const d of e){const f=Math.max(-1,Math.min(1,d));l.setInt16(c,f<0?f*32768:f*32767,!0),c+=2}return new Blob([i],{type:"audio/wav"})}function er(e,t,s){for(let r=0;r<s.length;r+=1)e.setUint8(t+r,s.charCodeAt(r))}const Zr=96,Ui=Array.from({length:Zr},()=>0);function ks(){return[...Ui]}function zd(e,t){return[...e.slice(-95),Math.max(0,Math.min(1,t))]}function Fd({levels:e}){const t=o.useMemo(()=>e.length>=Zr?e.slice(-Zr):[...Ui.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 Dd=12e4,qi="openpond.voice.setupNoticeAcknowledged",Bd="Voice dictation runs locally with whisper.cpp. OpenPond uses a local whisper-cli binary and downloads the voice model on first use.";function Da({connection:e,buttonClassName:t,wrapperClassName:s="",disabled:r=!1,iconSize:a=16,language:i="en",onActiveChange:l,showToast:c,onTranscript:d,transcriptionChannelKey:f}){const b=o.useRef(null),v=o.useRef(null),h=o.useRef(e),g=o.useRef(r),m=o.useRef("idle"),p=o.useRef(!1),N=o.useRef(Ba());Bo(()=>{N.current=Ba()}),h.current=e,g.current=r;const[j,w]=o.useState("idle"),[k,A]=o.useState(null),[C,E]=o.useState(ks),R=o.useCallback(U=>ju(f,U),[f]),I=o.useCallback(()=>vu(f),[f]),z=o.useSyncExternalStore(R,I,I),B=z,Y=j==="starting",Se=j==="recording",M=Se||z,F=Y||M;m.current=j;const q=o.useCallback(()=>{v.current!==null&&(window.clearTimeout(v.current),v.current=null)},[]),H=o.useCallback(async()=>{q();const U=b.current;b.current=null,p.current=!1,w("idle"),E(ks()),U&&await U.cancel().catch(()=>{})},[q]),W=o.useCallback(async(U,$,ue)=>{const he=h.current;if(!he)throw new Error("Voice input is still connecting.");const V=await _e.voiceTranscriptionStatus(he,{signal:$});if(!V.binaryPath)throw new Error(V.installHint??"Install whisper.cpp to use dictation.");const ae=await _e.transcribeVoice(he,{audioBase64:await Ud(U.blob),durationMs:Math.round(U.durationMs),language:i,mimeType:"audio/wav"},{signal:$});$.aborted||Promise.resolve(d(ae.text,{submit:ue()})).catch(L=>{c(Vr(L),"error")})},[i,d,c]),le=o.useCallback(()=>{Ei(f),A(null),E(ks())},[f]),fe=o.useCallback(async(U=!1)=>{q();const $=b.current;b.current=null,$&&(w("idle"),A(null),E(ks()),Su(f,async(ue,he)=>{const V=await $.stop();ue.aborted||await W(V,ue,he)},{submit:U}).catch(ue=>{ue instanceof DOMException&&ue.name==="AbortError"||c(Vr(ue),"error")}))},[q,c,W,f]),ge=o.useCallback(async()=>{if(g.current)return;if(!h.current){A("Voice input is still connecting.");return}if(!Bi()){A("Voice recording is not available in this browser.");return}A(null),w("starting");try{if(await window.openpond?.requestMicrophoneAccess?.()===!1)throw new Error("Microphone access is denied.");const ue=await Pd({onAudioLevel:he=>{E(V=>zd(V,he))}});if(b.current=ue,E(ks()),w("recording"),p.current){p.current=!1,fe(!0);return}v.current=window.setTimeout(()=>{fe(!1)},Dd)}catch($){A(Vr($)),await H()}},[H,fe]),ce=o.useCallback(()=>{if(N.current){ge();return}c(Bd,"info",{actionLabel:"Continue",persistent:!0,onAction:()=>{N.current=!0,qd(),ge()}})},[ge,c]);return o.useEffect(()=>yu(f,()=>b.current?(fe(!0),!0):m.current==="starting"?(p.current=!0,!0):!1),[fe,f]),o.useEffect(()=>{l?.(F)},[F,l]),o.useEffect(()=>()=>l?.(!1),[l]),o.useEffect(()=>{if(!k||Se||B)return;const U=window.setTimeout(()=>A(null),7e3);return()=>window.clearTimeout(U)},[B,k,Se]),o.useEffect(()=>()=>{H()},[H]),n.jsxs("span",{className:`voice-input-control ${s} ${Y?"starting":""} ${Se?"recording":""} ${z?"transcribing":""}`.trim(),children:[M?n.jsxs("span",{className:"voice-recording-strip",children:[n.jsx("span",{className:"sr-only",role:"status",children:z?"Transcribing audio":"Recording voice"}),n.jsx("button",{type:"button",className:"voice-recording-action cancel","aria-label":z?"Cancel transcription":"Cancel dictation",onClick:()=>{z?le():H()},children:n.jsx($s,{size:15})}),z?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(Fd,{levels:C}),n.jsx("button",{type:"button",className:"voice-recording-action stop","aria-label":"Stop and transcribe",onClick:()=>{fe(!1)},children:n.jsx(vi,{size:10,fill:"currentColor"})})]})]}):n.jsx("button",{type:"button",className:`voice-input-trigger ${t} ${Y?"starting":""}`.trim(),"aria-label":Y?"Starting dictation":"Dictate",disabled:r||B||Y,onClick:ce,children:n.jsx(Sc,{size:a})}),k&&!M?n.jsx("span",{className:"voice-input-status",role:"status",children:k}):null]})}async function Ud(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 Vr(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 Ba(){if(typeof window>"u")return!1;try{return ii.getItem(qi)==="true"}catch{return!1}}function qd(){if(!(typeof window>"u"))try{ii.setItem(qi,"true")}catch{}}const Vd=new Set(["codex","openai","xai","openrouter","deepseek","zai","moonshot","together","groq","custom-openai-compatible","setup-provider"]);function Hd({surface:e="chat",teamUseModel:t=!1,teamUseModelLocked:s=!1,onTeamUseModelChange:r,addFiles:a,addMenuId:i,addMenuOpen:l,addMenuRef:c,busy:d,codexPermissionMode:f,codexReasoningEffort:b,connection:v,contextStatusStyle:h,contextStatusTooltipId:g,contextWindowStatus:m,disabled:p,dropdownPlacement:N,fileInputRef:j,modelValue:w,modelOptions:k=[],hideModelControls:A=!1,openPondCommandAccessMode:C,showCommandAccess:E=!0,profileTarget:R,onCodexPermissionModeChange:I,onCodexReasoningEffortChange:z,onOpenPondCommandAccessModeChange:B,onProfileTargetChange:Y,onModelChange:Se,onOpenFilePicker:M,onProviderChange:F,onProviderSetupOpen:q,onSend:H,onStop:W,onToggleAddMenu:le,onTranscript:fe,voiceInputChannelKey:ge,provider:ce,providerSettings:U,providerOptions:$,running:ue,sendDisabled:he,sendTooltip:V,showToast:ae,stopIcon:L="stop",stopLabel:Q="Stop response"}){const[D,ve]=o.useState(null),de=D?.provider===ce?D.settings:U,[it,Re]=o.useState(!1),we=Uo(ce,w,de),Ze=o.useMemo(()=>Wd({currentModelOptions:D?.provider===ce?sa(ce,de):k,currentProvider:ce,providerOptions:$,providerSettings:de}),[k,ce,$,de,D?.provider]),ie=o.useMemo(()=>Ze.filter(te=>Vd.has(te.provider)),[Ze]),ot=(te,Oe)=>{if(z(Ho(te,Oe,de)),te===ce){Se(Oe);return}Se(Oe),F(te)};return e==="team"?n.jsxs("div",{className:`composer-primary-controls team-chat-composer-controls ${ue?"has-running-turn":""}`.trim(),children:[n.jsx("button",{type:"button",className:"composer-icon","aria-label":"Add photos and files",disabled:p,onClick:M,children:n.jsx(Yn,{size:18})}),n.jsx("input",{ref:j,className:"composer-file-input",type:"file",multiple:!0,tabIndex:-1,onChange:te=>{a(Array.from(te.currentTarget.files??[])),te.currentTarget.value=""}}),n.jsxs("label",{className:"team-chat-model-toggle",children:[n.jsx("input",{type:"checkbox",checked:t,disabled:d||s,onChange:te=>r?.(te.currentTarget.checked)}),n.jsx("span",{children:"Use model"})]}),n.jsx("div",{className:"composer-spacer"}),t?n.jsx($a,{disabled:d,model:w,modelGroups:ie,placement:N,provider:ce,providerSettings:de,reasoningEffort:b,showReasoning:we,onModelSelectionChange:ot,onProviderSetupOpen:q,onReasoningEffortChange:z}):null,n.jsx(Da,{buttonClassName:"composer-icon",connection:v,disabled:p,iconSize:16,wrapperClassName:"composer-voice-input",onActiveChange:Re,showToast:ae,onTranscript:fe,transcriptionChannelKey:ge}),n.jsx(Ua,{running:ue,sendDisabled:he,sendTooltip:V,stopIcon:L,stopLabel:Q,voiceInputActive:it,onSend:H,onStop:W})]}):n.jsxs("div",{className:`composer-primary-controls ${ue?"has-running-turn":""}`.trim(),children:[n.jsxs("div",{className:"composer-add-control open-up",ref:c,children:[n.jsx("button",{type:"button",className:`composer-icon ${l?"active":""}`,"aria-label":"Add to message","aria-haspopup":"menu","aria-expanded":l,"aria-controls":l?i:void 0,disabled:p,onMouseDown:te=>te.preventDefault(),onClick:le,children:n.jsx(Yn,{size:18})}),n.jsx("input",{ref:j,className:"composer-file-input",type:"file",multiple:!0,tabIndex:-1,onChange:te=>{a(Array.from(te.currentTarget.files??[])),te.currentTarget.value=""}})]}),E&&ce==="codex"?n.jsx(pa,{compact:!0,className:"permission-select",icon:n.jsx(qo,{size:14}),placement:N,label:"Codex permissions",tooltip:ga.find(te=>te.value===f)?.label,value:f,options:ga,disabled:d,onChange:te=>I(te)}):E?n.jsx(pa,{compact:!0,className:"permission-select",icon:n.jsx(ra,{size:14}),placement:N,label:"Command access",tooltip:xa.find(te=>te.value===(C==="disabled"?"ask":C))?.label,value:C==="disabled"?"ask":C,options:xa,disabled:d,onChange:te=>B(te)}):null,R&&Y?n.jsx(Ti,{busy:d,placement:N,state:R,onChange:Y}):null,n.jsx("div",{className:"composer-spacer"}),!A&&n.jsxs("span",{className:`context-status-shell ${m.tone}`,style:h,children:[n.jsx("span",{className:`composer-status ${m.tone}`,role:m.maxTokens===null?"img":"meter","aria-label":m.tooltip,"aria-describedby":g,"aria-valuemin":m.maxTokens===null?void 0:0,"aria-valuemax":m.maxTokens??void 0,"aria-valuenow":m.maxTokens===null?void 0:m.usedTokens,tabIndex:0}),n.jsxs("span",{className:"context-status-tooltip",id:g,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:m.summary}),n.jsx("span",{children:m.tokensLabel})]}),m.maxTokens!==null&&n.jsx("span",{className:"context-status-tooltip-bar","aria-hidden":"true",children:n.jsx("span",{})}),m.detail?n.jsx("span",{className:"context-status-tooltip-detail",children:m.detail}):null]})]}),!A&&n.jsx(Td,{connection:v,provider:ce,onSettings:ve,onSetup:q,disabled:d||p}),!A&&n.jsx($a,{disabled:d,model:w,modelGroups:Ze,placement:N,provider:ce,providerSettings:de,reasoningEffort:b,showReasoning:we,onModelSelectionChange:ot,onProviderSetupOpen:q,onReasoningEffortChange:z}),n.jsx(Da,{buttonClassName:"composer-icon",connection:v,disabled:p,iconSize:16,wrapperClassName:"composer-voice-input",onActiveChange:Re,showToast:ae,onTranscript:fe,transcriptionChannelKey:ge}),n.jsx(Ua,{running:ue,sendDisabled:he,sendTooltip:V,stopIcon:L,stopLabel:Q,voiceInputActive:it,onSend:H,onStop:W})]})}function Ua({running:e,sendDisabled:t,sendTooltip:s,stopIcon:r,stopLabel:a,voiceInputActive:i,onSend:l,onStop:c}){const d=e?a:s;return n.jsx("button",{type:"button",className:`send-button ${e?"stop-button":""}`.trim(),disabled:!e&&t&&!i,"data-tooltip":d,"aria-label":d,onClick:e?()=>{c()}:l,children:e?r==="pause"?n.jsx(Wl,{size:15}):n.jsx(vi,{size:13,fill:"currentColor"}):n.jsx(rc,{size:18})})}function Wd({currentModelOptions:e,currentProvider:t,providerOptions:s,providerSettings:r}){return s.flatMap(a=>{if(a.value==="setup-provider")return[];const i=a.value,l=i===t?e:sa(i,r);return l.length>0?[{provider:i,label:a.label,defaultModel:Vo(i,r),options:l}]:[]})}function Gd(e){return e.description||e.path}function Kd({items:e,onSelect:t,onSelectIndex:s,skillIndex:r,style:a}){const i=o.useRef(null);return o.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((l,c)=>{const d=c===r;return n.jsxs("button",{type:"button",className:`composer-project-option ${d?"selected":""}`,ref:d?i:void 0,role:"option","aria-selected":d,onMouseEnter:()=>s(c),onMouseDown:f=>{f.preventDefault(),t(l)},children:[n.jsx(dt,{size:14}),n.jsxs("span",{children:[n.jsx("strong",{children:pr(l)}),n.jsx("small",{children:Gd(l)})]}),d?n.jsx(Pt,{size:14}):n.jsx("span",{"aria-hidden":"true"})]},l.name)}):n.jsx("div",{className:"composer-menu-empty",role:"option","aria-selected":"false",children:"No matching skills"})})}function Qd({actionCatalogCount:e,actionIndex:t,items:s,onSelect:r,onSelectIndex:a,style:i}){return n.jsx(la,{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(l=>({kind:"slash",item:l})),label:"/"}],style:i,variant:"typed",onSelect:l=>{l.kind==="slash"&&r(l.item)},onSelectIndex:a})}function Xd({busy:e,initialDescription:t,open:s,onClose:r,onSubmit:a}){const[i,l]=o.useState(""),[c,d]=o.useState(()=>t.trim()),f=i.trim(),b=c.trim(),v=e||!f||!b;if(o.useEffect(()=>{s&&(l(""),d(t.trim()))},[t,s]),o.useEffect(()=>{if(!s||e)return;function g(m){m.key==="Escape"&&r()}return document.addEventListener("keydown",g),()=>document.removeEventListener("keydown",g)},[e,r,s]),!s)return null;async function h(){if(v)return;await a({title:f,description:b})&&(l(""),d(""))}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:g=>g.stopPropagation(),onKeyDown:g=>{g.key!=="Enter"||!(g.target instanceof HTMLInputElement)||(g.preventDefault(),h())},children:[n.jsx("button",{className:"git-dialog-close",disabled:e,type:"button",onClick:r,children:n.jsx($s,{size:16})}),n.jsx("div",{className:"git-dialog-icon",children:n.jsx(Wo,{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:Go})]}),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:g=>l(g.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:c,onChange:g=>d(g.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:v,type:"button",onClick:()=>{h()},children:"Submit issue"})]})]})})}const Jd=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"]),Yd=new Set(["csv","ods","tsv","xls","xlsm","xlsx"]),Zd=new Set(["7z","bz2","gz","rar","tar","tgz","xz","zip"]),ef=new Set(["doc","docx","epub","md","odt","pdf","rtf","txt"]),tf=new Set(["key","odp","ppt","pptx"]);function Vi(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":Yd.has(s)||t.includes("spreadsheet")||t.includes("excel")?"spreadsheet":Zd.has(s)||t.includes("zip")||t.includes("compressed")?"archive":tf.has(s)||t.includes("presentation")||t.includes("powerpoint")?"presentation":Jd.has(s)?"code":e.kind==="text"||ef.has(s)||t.startsWith("text/")||t==="application/pdf"||t.includes("document")||t.includes("msword")?"document":"file"}function nf(e){if(e.mediaType.toLowerCase()==="application/pdf")return"PDF";const t=Vi(e);return t==="spreadsheet"?"Spreadsheet":t.charAt(0).toUpperCase()+t.slice(1)}function Hi(e){return`${e.toLocaleString()} ${e===1?"line":"lines"}`}const sf={archive:Ql,audio:pc,code:Kl,document:dt,file:Gl,image:hr,presentation:Mc,spreadsheet:xc,video:vc};function Wi({attachment:e,...t}){const s=sf[Vi(e)];return n.jsx(s,{...t})}const rf=new Set(["csv","css","html","js","json","jsx","log","md","mdx","py","sql","svg","ts","tsx","txt","xml","yaml","yml"]),af=2e3,of=/^Pasted text(?: (\d+))?\.txt$/;function lf(e,t){if(e.length<af)return null;const s=new Set;for(const i of t){const l=of.exec(i.name);l&&s.add(l[1]?Number(l[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 cf({attachment:e,onRemove:t}){const[s,r]=o.useState(null);o.useEffect(()=>{if(e.kind!=="text")return;let i=!1;return e.file.text().then(l=>{i||r(yi(l))},()=>{}),()=>{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(Wi,{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?Hi(s):nf(e)})]}):null,n.jsx("button",{type:"button",className:"composer-attachment-remove","aria-label":`Remove ${e.name}`,onClick:t,children:n.jsx($s,{size:14})})]})}function uf(){return globalThis.crypto?.randomUUID?.()??`attachment-${Date.now()}-${Math.random().toString(36).slice(2)}`}function df(e){if(e.type.startsWith("image/"))return"image";if(e.type.startsWith("text/"))return"text";const t=e.name.split(".").pop()?.toLowerCase()??"";return rf.has(t)?"text":"file"}async function ff(e){const[t,s]=await Promise.all([hf(e.file),e.kind==="text"?pf(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:yi(s)}:{},...e.relativePath?{relativePath:e.relativePath}:{},contentsBase64:t,...s?{text:gf(s)}:{}}}function mf(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 hf(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 pf(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<=Kt.maxTextChars)return e;const t=`
4
+ [attachment text truncated]`;return`${e.slice(0,Math.max(0,Kt.maxTextChars-t.length))}${t}`}function xf(){const e=o.useRef([]),t=o.useRef([]),s=o.useRef(!1),[r,a]=o.useState([]),[i,l]=o.useState(null);o.useEffect(()=>{e.current=r},[r]),o.useEffect(()=>()=>{s.current=!0;for(const h of e.current)Ss(h);for(const h of t.current)Ss(h)},[]);const c=o.useCallback(h=>{if(h.length===0)return;const g=Math.max(0,Kt.maxAttachments-r.length),m=[];let p=0,N=0;for(const j of h){if(j.size>Kt.maxAttachmentBytes){p+=1;continue}if(m.length>=g){N+=1;continue}const w="webkitRelativePath"in j&&typeof j.webkitRelativePath=="string"&&j.webkitRelativePath.trim()?j.webkitRelativePath.trim():void 0;m.push({id:uf(),file:j,name:j.name||"Untitled file",mediaType:j.type||"application/octet-stream",sizeBytes:j.size,kind:df(j),...w?{relativePath:w}:{},...j.type.startsWith("image/")?{previewUrl:URL.createObjectURL(j)}:{}})}if(m.length>0&&(a([...r,...m]),l(null)),p>0||N>0){const j=[];p>0&&j.push(`${p} file${p===1?"":"s"} exceeded ${mf(Kt.maxAttachmentBytes)}`),N>0&&j.push(`maximum ${Kt.maxAttachments} attachments`),l(j.join("; "))}},[r]),d=o.useCallback(h=>{a(g=>{const m=g.find(N=>N.id===h);m&&Ss(m);const p=g.filter(N=>N.id!==h);return p.length===0&&l(null),p})},[]),f=o.useCallback(()=>{for(const h of e.current)Ss(h);e.current=[],a([]),l(null)},[]),b=o.useCallback(()=>{const h=e.current;return h.length===0||(e.current=[],t.current=h,a([]),l(null)),h},[]),v=o.useCallback((h,g)=>{if(h.length===0)return;const m=new Set(h.map(p=>p.id));if(t.current=t.current.filter(p=>!m.has(p.id)),g==="restore"&&!s.current){a(p=>{const N=new Set(p.map(w=>w.id)),j=[...h.filter(w=>!N.has(w.id)),...p];return e.current=j,j});return}for(const p of h)Ss(p)},[]);return{attachmentError:i,attachments:r,addFiles:c,clearAttachments:f,removeAttachment:d,settleStagedAttachments:v,setAttachmentError:l,stageAttachmentsForSubmit:b}}function Ss(e){e.previewUrl&&URL.revokeObjectURL(e.previewUrl)}function bf(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 vf(e,t,s=aa){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(c=>c.id===a[1]);if(!i)return null;const l=a[0].lastIndexOf("/");return l<0||typeof a.index!="number"?null:{command:i,end:r.length,start:a.index+l}}function jf(e,t=aa){return Qo({commands:t,prompt:`/${e}`})}function qa(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 Va(e,t){return e.length===0?[]:e.filter(s=>t?[s.id,s.name,s.description??"",s.gitRepo??"",oi(s)].join(" ").toLowerCase().includes(t):!0).slice(0,8)}function Ha({actionCatalog:e,connectedAppMentions:t,mentionApps:s,profileSkills:r,query:a,surface:i,teamMentionMembers:l}){const c=a.toLowerCase();if(i==="team"){const h=l.filter(m=>c?[m.name,m.handle??""].map(Kn).some(p=>p.includes(c)):!0).map(m=>({kind:"team-member",member:m}));return[...ba(e,c,e.length).map(m=>({kind:"action",action:m})),...h]}const d=s.filter(h=>c?[Kn(h.id),Kn(h.name),h.gitRepo?Kn(h.gitRepo):"",oi(h)].some(m=>m.includes(c)):!0).map(h=>({kind:"app",app:h})),f=ba(e,c,e.length).map(h=>({kind:"action",action:h})),b=ar(r,c).map(h=>({kind:"skill",skill:h})),v=Ko(t,c).map(h=>({kind:"connected-app",app:h}));return[...f,...b,...d,...v]}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),l=e.slice(a),c=i&&!/\s$/.test(i)?" ":"",d=l&&!/^\s/.test(l)?" ":"";return`${i}${c}${r}${d}${l}`.replace(/\s+/g," ").trim()}function kf(e){const t=Kn(na(e)||e.name||e.id);return t?`@${t}`:null}function Sf(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])=>`${Gi(a)}: ${ea(a,i)}`);return r.length?r.join(" · "):e}catch{return e}}function Gi(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 ea(e,t){if(Array.isArray(t))return t.map(r=>ea(e,r)).join(", ");if(t&&typeof t=="object")return Object.entries(t).map(([r,a])=>`${Gi(r)}: ${ea(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 Cf({action:e,prompt:t,selectedActionMentionText:s,selectedInvocationPosition:r}){if(!e)return null;const a=s?.trim(),i=a?.startsWith("@")?a:kf(e);return i?yf(Sf(t),i,r):null}function wf({attachmentCount:e,prompt:t,selectedAction:s,selectedCommand:r}){return!!(t.trim()||e>0||s||r)}const Mf=new Set(["openpond-agent-authoring","openpond-skill-authoring","openpond-taskset-authoring","openpond-refiner-authoring"]);function Nf({activeMentionKey:e,activeSkillKey:t,activeSlashKey:s,addMenuIndex:r,addMenuItems:a,addMenuOpen:i,addMenuPanelRef:l,addMenuRef:c,attachmentCount:d,composerRef:f,createImproveActive:b,goalRuntimeActive:v,inputRef:h,inputShellRef:g,mentionQuery:m,prompt:p,selectedActionId:N,selectAddMenuItem:j,setActionIndex:w,setActionMenuDismissedPrompt:k,setAddMenuIndex:A,setAddMenuOpen:C,setAddMenuQuery:E,setMentionMenuDismissedPrompt:R,setMentionIndex:I,setSkillIndex:z,setSkillMenuDismissedPrompt:B,skillMatchCount:Y,skillQuery:Se,slashMatchCount:M,slashQuery:F,showActionMenu:q,showMentionMenu:H,showSkillMenu:W}){const[le,fe]=o.useState({}),[ge,ce]=o.useState({}),[U,$]=o.useState({}),[ue,he]=o.useState({});return o.useEffect(()=>{I(0)},[m]),o.useEffect(()=>{z(0)},[Y,Se]),o.useEffect(()=>{w(0)},[M,F]),o.useEffect(()=>{const V=h.current?.element,ae=V?.parentElement;if(!V||!ae||typeof ResizeObserver>"u")return;const L=new ResizeObserver(()=>h.current?.resize());return L.observe(ae),()=>L.disconnect()},[]),o.useEffect(()=>{if(!i)return;function V(L){const Q=L.target,D=h.current?.element?.parentElement;!c.current?.contains(Q)&&!l.current?.contains(Q)&&!D?.contains(Q)&&(C(!1),E(""),R(e),k(s),B(t))}function ae(L){if(L.key==="Escape"){L.preventDefault(),C(!1),E(""),R(e),k(s),B(t);return}if(a.length!==0){if(L.key==="ArrowDown"){L.preventDefault(),A(Q=>(Q+1)%a.length);return}if(L.key==="ArrowUp"){L.preventDefault(),A(Q=>(Q-1+a.length)%a.length);return}if(L.key==="Home"){L.preventDefault(),A(0);return}if(L.key==="End"){L.preventDefault(),A(a.length-1);return}if(L.key==="Enter"){L.preventDefault();const Q=a[r]??a[0];Q&&j(Q)}}}return document.addEventListener("pointerdown",V),document.addEventListener("keydown",ae),()=>{document.removeEventListener("pointerdown",V),document.removeEventListener("keydown",ae)}},[e,t,s,r,a,i]),o.useLayoutEffect(()=>{if(!i)return;const V=g.current;if(!V)return;const ae=V;function L(){he(td(ae))}return L(),window.addEventListener("resize",L),window.addEventListener("scroll",L,!0),()=>{window.removeEventListener("resize",L),window.removeEventListener("scroll",L,!0)}},[i,d,b,v]),o.useLayoutEffect(()=>{if(!q)return;const V=h.current?.element,ae=f.current;if(!V||!ae)return;const L=V,Q=ae;function D(){$(Br(L,Q))}return D(),window.addEventListener("resize",D),window.addEventListener("scroll",D,!0),()=>{window.removeEventListener("resize",D),window.removeEventListener("scroll",D,!0)}},[d,b,v,p,N,q]),o.useLayoutEffect(()=>{if(!W)return;const V=h.current?.element,ae=f.current;if(!V||!ae)return;const L=V,Q=ae;function D(){ce(Br(L,Q))}return D(),window.addEventListener("resize",D),window.addEventListener("scroll",D,!0),()=>{window.removeEventListener("resize",D),window.removeEventListener("scroll",D,!0)}},[d,b,v,p,N,W]),o.useLayoutEffect(()=>{if(!H)return;const V=h.current?.element,ae=f.current;if(!V||!ae)return;const L=V,Q=ae;function D(){fe(Br(L,Q))}return D(),window.addEventListener("resize",D),window.addEventListener("scroll",D,!0),()=>{window.removeEventListener("resize",D),window.removeEventListener("scroll",D,!0)}},[d,b,v,p,N,H]),{actionMenuStyle:U,addMenuStyle:ue,mentionMenuStyle:le,skillMenuStyle:ge}}const Af=o.lazy(()=>ke(()=>import("./ComposerCreateImproveStrip-CJ8nkYJf.js"),__vite__mapDeps([0,1,2,3,4,5,6])).then(e=>({default:e.ComposerCreateImproveStrip}))),Rf=aa.find(e=>e.id==="submit-issue"),Ef=[],$f=[];function Ki({experience:e="development",mode:t,surface:s="chat",teamUseModel:r=!1,teamUseModelLocked:a=!1,teamMentionMembers:i=[],onTeamUseModelChange:l,prompt:c,composeNotice:d=null,mentionApps:f=[],connectedAppMentions:b=[],profileSkills:v=[],selectedMentionAppId:h=null,contextWindowStatus:g,goalRuntime:m=null,subagentRuntime:p=null,createImproveRuntime:N=null,busy:j,readOnlyReason:w=null,running:k=j,taskSessionId:A=null,taskEvents:C=$f,steerActiveResponses:E=!1,submissionScopeKey:R="default",getCurrentSubmissionScopeKey:I,voiceInputChannelKey:z=R,initialSteerDrafts:B=Ef,showProjectFooter:Y=!0,hideModelControls:Se=!1,autoFocus:M=!1,focusRequestId:F=0,attachmentRequest:q=null,connection:H,providerSettings:W=null,provider:le,model:fe,projectTarget:ge,profileTarget:ce=null,actionCatalog:U=[],requestedAction:$=null,workspaceTarget:ue,codexPermissionMode:he,codexReasoningEffort:V,openPondCommandAccessMode:ae,onProviderChange:L,onProviderSetupOpen:Q,onProjectTargetChange:D,onProfileTargetChange:ve,onWorkspaceTargetChange:de,onModelChange:it,onCodexPermissionModeChange:Re,onCodexReasoningEffortChange:we,onOpenPondCommandAccessModeChange:Ze,onPromptChange:ie,onMentionAppSelect:ot,onSaveTaskDraft:te,showToast:Oe,onSubmit:lt,onStop:Be,onPauseGoal:yn}){const S=o.useMemo(()=>{if(w)return w;for(let u=C.length-1;u>=0;u--){const x=C[u];if(x.sessionId!==A||!["session.started","session.title.updated"].includes(x.name))continue;const P=x.data,T=Xo.safeParse(P&&typeof P=="object"&&"session"in P?P.session:null);if(T.success&&typeof T.data.metadata?.nativeReadOnlyReason=="string")return T.data.metadata.nativeReadOnlyReason}return null},[w,C,A]),O=o.useRef(null),xe=o.useRef(null),G=o.useRef(null),pe=wu(H,A,C),Ie=o.useRef(null),oe=o.useRef(null),et=o.useRef(null),Ne=o.useRef(null),ct=o.useRef(0),Lt=$&&U.some(u=>u.id===$.actionId)?$:null,Ot=o.useRef(!1),tt=o.useRef(0),ut=o.useRef(Lt?.requestId??0),Jt=o.useRef(new Set),Zn=o.useRef(new Set),[je,Te]=o.useState(c.length),Is=o.useRef(je);Is.current=je;const[Ts,kn]=o.useState(0),[Ps,Sn]=o.useState(0),[_s,Cn]=o.useState(0),[Ls,Yt]=o.useState(0),[ze,zt]=o.useState(""),[br,ft]=o.useState(null),[wn,$e]=o.useState(null),[Os,St]=o.useState(null),[Ue,Zt]=o.useState(!1),[Mn,Nn]=o.useState(!1),[We,mt]=o.useState(Lt?.actionId??null),[en,Ft]=o.useState(null),[ht,Fe]=o.useState(null),[An,pt]=o.useState(null),[es,Rn]=o.useState(null),[ts,En]=o.useState(!1),[$n,ns]=o.useState(()=>({[R]:B})),[tn,In]=o.useState(null),[ss,nn]=o.useState(!1),[gt,ne]=o.useState(""),[Tn,Ct]=o.useState(!1),{attachmentError:sn,attachments:qe,addFiles:wt,removeAttachment:nt,settleStagedAttachments:st,setAttachmentError:Ge,stageAttachmentsForSubmit:vr}=xf(),Pn=o.useRef(0);o.useEffect(()=>{!q||Pn.current===q.id||(Pn.current=q.id,wt([q.file]))},[wt,q]);const jr=o.useCallback(u=>{const x=lf(u,qe);return!x||qe.length>=Kt.maxAttachments||x.size>Kt.maxAttachmentBytes?!1:(wt([x]),!0)},[wt,qe]),rs=jd({experience:e,mode:t,surface:s}),Dt=e==="development"||e==="work"&&ge.value!=="none",yr=Jo(le,fe,W),_n="top",zs=o.useId(),kr=o.useId(),Sr=o.useId(),Cr={"--context-fill":`${Math.round((g.percent??0)/100*360)}deg`,"--context-bar-fill":`${g.percent??0}%`},Ae=o.useMemo(()=>U.find(u=>u.id===We)??null,[U,We]),xt=o.useMemo(()=>Yo(le,e),[e,le]),Ke=o.useMemo(()=>Dt?v:v.filter(u=>!Mf.has(u.name)),[e,v]),Ee=o.useMemo(()=>xt.find(u=>u.id===en)??null,[xt,en]),rn=Cf({action:Ae,prompt:c,selectedActionMentionText:An,selectedInvocationPosition:ht}),Fs=wf({attachmentCount:qe.length,prompt:c,selectedAction:Ae,selectedCommand:Ee}),wr=o.useMemo(()=>{const u=Math.max(0,Math.min(ht??0,c.length));return Ee?{icon:Ee.id==="agent"?"plus":Ee.id==="skill"?"skill":"workflow",key:`command:${Ee.id}`,label:Ee.id==="agent"?"Author Agent":Ee.id,position:u,onRemove:()=>{Ft(null),Fe(null),pt(null)}}:Ae?{icon:Ae.implementation?.type==="openpond-agent"?"bot":"workflow",key:`action:${Ae.id}`,label:na(Ae),position:u,onRemove:()=>{mt(null),Fe(null),pt(null)}}:null},[c.length,Ae,Ee,ht]),an=es===R,Ds=an||!Fs,Mr=an?"Preparing files":k?E?"Steer":"Queue for next turn":"Send",bt=an,Bs=an;function vt(u=R){if(S)return!1;const x=Jt.current;return x.has(u)?!1:(x.add(u),!0)}function as(u){Jt.current.delete(u)}function Bt(u){return Jt.current.has(u)}function Mt(){return Bt(R)}function is(u){Rn(x=>x===u?null:x)}const Ln=o.useMemo(()=>{const u=Zo(W,{enabledOnly:!0}).map(X=>({...X,description:void 0})),x=Dt?u:u.filter(X=>X.value!=="codex"),P=ue.value==="cloud"&&Dt?x.filter(X=>X.value==="openpond"):x,T=P.some(X=>X.value===le)?P:[{value:le,label:el(le,W),description:"Current"},...P],Z={value:"setup-provider",label:"New Model/Provider",icon:"plus",separatorBefore:!0};return[...T,Z]},[le,W,Dt,ue.value]),Nr=o.useMemo(()=>sa(le,W),[le,W]),Me=o.useMemo(()=>tl(c,Math.min(je,c.length)),[je,c]),on=Me?`${c}:${Me.start}:${Math.min(je,c.length)}`:null,jt=o.useMemo(()=>Me?Ha({actionCatalog:U,connectedAppMentions:b,mentionApps:f,profileSkills:Ke,query:Me.query,surface:s,teamMentionMembers:i}):[],[U,b,f,Me,Ke,s,i]),Us=o.useMemo(()=>s==="team"?[]:Ha({actionCatalog:U,connectedAppMentions:b,mentionApps:f,profileSkills:Ke,query:"",surface:s,teamMentionMembers:i}).filter(u=>u.kind!=="skill"),[U,b,f,Ke,s,i]),Ut=!!(!Ue&&!bt&&Me&&on&&br!==on&&jt.length>0),Qe=o.useMemo(()=>pu(c,Math.min(je,c.length)),[je,c]),ln=Qe?`${c}:${Qe.start}:${Qe.end}`:null,Ve=o.useMemo(()=>Qe?ar(Ke,Qe.query):[],[Qe,Ke]),cn=!!(!Ue&&!bt&&Qe&&ln&&Os!==ln),me=o.useMemo(()=>bf(c,Math.min(je,c.length)),[je,c]),Nt=me?`${c}:${me.start}:${me.end}`:null,On=o.useMemo(()=>me?qa(U,me.query):[],[U,me]),qs=o.useMemo(()=>me&&s!=="team"?Va(f,me.query):[],[me,f,s]),os=o.useMemo(()=>me&&s!=="team"?jf(me.query,xt):[],[me,xt,s]),Vs=o.useMemo(()=>me&&s!=="team"?ar(Ke,me.query):[],[me,Ke,s]),Xe=o.useMemo(()=>[...On.map(u=>({kind:"action",action:u})),...Vs.map(u=>({kind:"skill",skill:u})),...os.map(u=>({kind:"command",command:u})),...qs.map(u=>({kind:"app-context",app:u}))],[On,qs,os,Vs]),ls=!!(!Ue&&!bt&&me&&Nt&&wn!==Nt),cs=o.useMemo(()=>xt.map(u=>({kind:"command",command:u})),[xt]),us=o.useMemo(()=>[...qa(U,"").map(u=>({kind:"action",action:u})),...Va(f,"").map(u=>({kind:"app-context",app:u}))],[U,f]),un=o.useMemo(()=>ar(Ke,"").map(u=>({kind:"skill",skill:u})),[Ke]),zn=o.useMemo(()=>{const u=[{id:"add",items:e==="work"?[{kind:"files"},{kind:"folder"}]:[{kind:"files"}],label:"Add"}];return us.length>0&&u.push({id:"slash",items:us.map(x=>({kind:"slash",item:x})),label:"Agents and actions",queryScope:"slash"}),un.length>0&&u.push({id:"skills",items:un.map(x=>({kind:"slash",item:x})),label:"Skills",queryScopes:["slash","mentions"]}),u.push({id:"openpond",items:cs.map(x=>({kind:"slash",item:x})),label:"OpenPond",grid:!0,queryScope:"slash"}),u.push({emptyLabel:"No mentions available",id:"mentions",items:Us.map(x=>({kind:"mention",item:x})),label:"@"}),u},[Us,cs,un,us,e]),dn=o.useMemo(()=>Rd(zn,ze),[ze,zn]),qt=o.useMemo(()=>dn.flatMap(u=>u.items),[dn]);o.useEffect(()=>{Ue&&Yt(u=>u<qt.length?u:0)},[qt.length,Ue]);const Fn=!!m,fn=Fn&&m?.tone==="active",ds=fn?"Pause goal":"Stop response",At=fn?"pause":"stop",fs=e==="work"||ge.value!=="none",Ce=Jr($n,R,B),ms=tn?.scopeKey===R?tn.draftId:null;function Dn(u,x){ns(P=>Ru(P,u,x,u===R?B:[]))}o.useLayoutEffect(()=>{G.current?.resize()},[qe.length,sn,N,m,c,We,en,ht]),o.useEffect(()=>{if(!M){Ot.current=!1;return}if(Ot.current||bt)return;const u=window.requestAnimationFrame(()=>{Ot.current=!0;const x=document.activeElement;x&&x!==document.body&&x!==document.documentElement||G.current?.focusAtPromptIndex(c.length)});return()=>window.cancelAnimationFrame(u)},[M,bt,c.length]),o.useEffect(()=>{!F||tt.current===F||bt||(tt.current=F,window.requestAnimationFrame(()=>{G.current?.focusAtPromptIndex(c.length)}))},[F,bt,c.length]),o.useEffect(()=>{m||En(!1)},[m]),o.useEffect(()=>{We&&!U.some(u=>u.id===We)&&(mt(null),Fe(null))},[U,We]),o.useEffect(()=>{if(!$||$.requestId<=ut.current)return;const u=U.find(x=>x.id===$.actionId);u&&(ut.current=$.requestId,mt(u.id),Ft(null),Fe(0),pt(null),ie(""),Te(0),window.requestAnimationFrame(()=>{G.current?.focusAtPromptIndex(0,{afterToken:!0})}))},[U,ie,$]),o.useEffect(()=>{!Ae&&!Ee||Fe(u=>u===null?0:Math.max(0,Math.min(u,c.length)))},[c.length,Ae,Ee]),o.useEffect(()=>{if(!h||!ot)return;const u=f.find(x=>x.id===h);(!u||!nl(c,u))&&ot(null)},[f,ot,c,h]);const{actionMenuStyle:Ar,addMenuStyle:Rr,mentionMenuStyle:Er,skillMenuStyle:$r}=Nf({activeMentionKey:on,activeSkillKey:ln,activeSlashKey:Nt,addMenuIndex:Ls,addMenuItems:qt,addMenuOpen:Ue,addMenuPanelRef:Ne,addMenuRef:et,attachmentCount:qe.length,composerRef:O,createImproveActive:!!N,goalRuntimeActive:!!m,inputRef:G,inputShellRef:xe,mentionQuery:Me?.query,prompt:c,selectedActionId:We,selectAddMenuItem:qn,setActionIndex:Cn,setActionMenuDismissedPrompt:$e,setAddMenuIndex:Yt,setAddMenuOpen:Zt,setAddMenuQuery:zt,setMentionMenuDismissedPrompt:ft,setMentionIndex:kn,setSkillIndex:Sn,setSkillMenuDismissedPrompt:St,skillMatchCount:Ve.length,skillQuery:Qe?.query,slashMatchCount:Xe.length,slashQuery:me?.query,showActionMenu:ls,showMentionMenu:Ut,showSkillMenu:cn});function De(){mt(null),Ft(null),Fe(null),pt(null)}function Ir(){De(),ie(""),Te(0)}function hs(u){ne(u.trim()),nn(!0)}function Tr(){Tn||(nn(!1),De())}async function Vt(){return await(fn&&yn?yn():Be())}function Bn(u,x){const P=Math.max(0,Math.min(je,c.length)),T=x?Math.max(0,Math.min(x.start,c.length)):P,Z=x?Math.max(T,Math.min(x.end,c.length)):T,X=c.slice(0,T),be=c.slice(Z),Et=X&&!/\s$/.test(X)?" ":"",Wt=be&&!/^\s/.test(be)?" ":"",$t=`${rl(u)} `,rt=`${Et}${$t}${Wt}`,bn=`${X}${rt}${be}`,Ye=X.length+rt.length;return ie(bn),ot?.(u.id),Te(Ye),window.requestAnimationFrame(()=>{G.current?.focusAtPromptIndex(Ye)}),Ye}function Pr(u){if(!Me)return;const x=Math.max(0,Math.min(je,c.length));Bn(u,{start:Me.start,end:x})}function Ht(u,x,P=null){const T=Math.max(0,Math.min(je,c.length)),Z=x?Math.max(0,Math.min(x.start,c.length)):T,X=x?Math.max(Z,Math.min(x.end,c.length)):Z,be=`${c.slice(0,Z)}${c.slice(X)}`;return mt(u.id),Ft(null),Fe(Z),pt(P?.startsWith("@")?P:null),$e(null),ie(be),Te(Z),window.requestAnimationFrame(()=>{G.current?.focusAtPromptIndex(Z,{afterToken:!0})}),Z}function Un(u){if(!Me)return;const x=Math.max(0,Math.min(je,c.length)),P=Math.max(0,Math.min(Me.start,c.length)),T=Math.max(P,Math.min(x,c.length));Ht(u,{start:P,end:T},c.slice(P,T).trim())}function Hs(u,x){const P=Math.max(0,Math.min(je,c.length)),T=x?Math.max(0,Math.min(x.start,c.length)):P,Z=x?Math.max(T,Math.min(x.end,c.length)):T,X=c.slice(0,T),be=c.slice(Z),Et=X&&!/\s$/.test(X)?" ":"",Wt=be&&!/^\s/.test(be)?" ":"",$t=`${al(u)} `,rt=`${Et}${$t}${Wt}`,bn=`${X}${rt}${be}`,Ye=X.length+rt.length;return ie(bn),Te(Ye),window.requestAnimationFrame(()=>{G.current?.focusAtPromptIndex(Ye)}),Ye}function Pe(u){if(!Me)return;const x=Math.max(0,Math.min(je,c.length));Hs(u,{start:Me.start,end:x})}function mn(u,x){const P=Math.max(0,Math.min(je,c.length)),T=x?Math.max(0,Math.min(x.start,c.length)):P,Z=x?Math.max(T,Math.min(x.end,c.length)):T,X=u.handle||Kn(u.name),be=c.slice(0,T),Et=c.slice(Z),Wt=be&&!/\s$/.test(be)?" ":"",$t=Et&&!/^\s/.test(Et)?" ":"",rt=`${Wt}@${X} ${$t}`,bn=`${be}${rt}${Et}`,Ye=be.length+rt.length;return ie(bn),Te(Ye),window.requestAnimationFrame(()=>G.current?.focusAtPromptIndex(Ye)),Ye}function Ws(u){if(u.kind==="team-member"){if(!Me)return;const x=Math.max(0,Math.min(je,c.length));mn(u.member,{start:Me.start,end:x});return}if(u.kind==="app"){Pr(u.app);return}if(u.kind==="connected-app"){Pe(u.app);return}if(u.kind==="skill"){if(!Me)return;const x=Math.max(0,Math.min(je,c.length));yt(u.skill,{start:Me.start,end:x});return}Un(u.action)}function _r(u){me&&($e(null),Bn(u,{start:me.start,end:me.end}))}function Gs(u){me&&Ht(u,me)}function Ks(u,x){const P=Math.max(0,Math.min(je,c.length)),T=x?Math.max(0,Math.min(x.start,c.length)):P,Z=x?Math.max(T,Math.min(x.end,c.length)):T,X=`${c.slice(0,T)}${c.slice(Z)}`;return Ft(u.id),mt(null),Fe(T),pt(null),$e(null),ie(X),Te(T),u.id==="submit-issue"&&hs(X),window.requestAnimationFrame(()=>{G.current?.focusAtPromptIndex(T,{afterToken:!0})}),T}function Rt(u){me&&Ks(u,me)}function ps(u){if(u.kind==="command"){Rt(u.command);return}if(u.kind==="app-context"){_r(u.app);return}if(u.kind==="skill"){if(!me)return;yt(u.skill,me);return}Gs(u.action)}function yt(u,x){const P=gu(c,x,u);return St(null),ft(null),$e(null),ie(P.value),Te(P.cursor),window.requestAnimationFrame(()=>{G.current?.focusAtPromptIndex(P.cursor)}),P.cursor}function hn(u){Qe&&yt(u,Qe)}function Je(){Ie.current?.click()}function Lr(){oe.current?.click()}function He(u){ct.current=u,zt(""),Yt(0)}function gs(){const u=Math.max(0,Math.min(je,c.length)),x=Math.max(0,Math.min(ct.current,c.length));return u>=x?{start:x,end:u}:{start:u,end:u}}function qn(u){const x=gs();if(Zt(!1),zt(""),u.kind==="files"||u.kind==="folder"){if(x.start!==x.end){const P=`${c.slice(0,x.start)}${c.slice(x.end)}`;ie(P),Te(x.start)}He(x.start),u.kind==="folder"?Lr():Je();return}if(u.kind==="slash"){if(u.item.kind==="command"){He(Ks(u.item.command,x));return}if(u.item.kind==="app-context"){He(Bn(u.item.app,x));return}if(u.item.kind==="skill"){He(yt(u.item.skill,x));return}He(Ht(u.item.action,x));return}if(u.item.kind==="team-member"){He(mn(u.item.member,x));return}if(u.item.kind==="app"){He(Bn(u.item.app,x));return}if(u.item.kind==="connected-app"){He(Hs(u.item.app,x));return}if(u.item.kind==="skill"){He(yt(u.item.skill,x));return}He(Ht(u.item.action,x))}const{stageCurrentSteerDraft:pn,submitImmediateSteer:gn}=hu({running:k,scope:R,inbox:pe,getPrompt:()=>G.current?.getPrompt()??c,hasFilesOrActions:!!(qe.length||Ae||Ee),provider:le,model:fe,codexPermissionMode:he,codexReasoningEffort:V,openPondCommandAccessMode:ae,getCurrentSubmissionScopeKey:I,onSubmit:lt,showToast:Oe,begin:u=>Zn.current.has(u)?!1:(Zn.current.add(u),!0),finish:u=>{Zn.current.delete(u)},clear:Ir,setError:Ge,stageLocal:u=>{Dn(R,x=>[...x,$i(u)]),window.requestAnimationFrame(()=>G.current?.focusAtPromptIndex(0))}});async function Or(u){const x=R;if(tn?.scopeKey===x)return!1;const P=Jr($n,x,B).find(T=>T.id===u);if(!P)return!1;In({draftId:u,scopeKey:x}),Ge(null);try{const T=k,Z=await lt([],null,null,{preservePrompt:!0,promptOverride:P.prompt,...T?{turnMetadata:{interactionKind:"steer"}}:{}});return Dn(x,X=>Au(X,u,Z)),Z}catch(T){return Ge(T instanceof Error?T.message:String(T)),!1}finally{In(T=>T?.scopeKey===x&&T.draftId===u?null:T)}}function xs(u){ms!==u&&Dn(R,x=>Ii(x,u))}function bs(u){if(ms!==u.id){if(qe.length>0||We||en){Oe("Finish the current composer before editing a queued message.","info");return}Dn(R,x=>Nu(x,u.id,c)),ie(u.prompt),Te(u.prompt.length),window.requestAnimationFrame(()=>{G.current?.focusAtPromptIndex(u.prompt.length)})}}async function xn(u={}){const x=R;if(!vt(x))return!1;Zt(!1),Ge(null);const P=vr();try{Rn(P.length>0?x:null);let T;try{T=await Promise.all(P.map(ff))}finally{is(x)}const Z=Ae&&rn&&!c.trim()?rn:void 0,X=u.promptOverride??Z,be=await lt(T,Ae,Ee,rn||X||u.preservePrompt?{...rn?{displayPrompt:rn}:{},...X!==void 0?{promptOverride:X}:{},...u.preservePrompt?{preservePrompt:!0}:{}}:void 0);return st(P,be?"dispose":"restore"),be&&!il(Ae)&&De(),be}catch(T){return st(P,"restore"),Ge(T instanceof Error?T.message:String(T)),!1}finally{as(x),is(x)}}async function Vn(){if(k){E?await gn():await pn();return}if(Mt())return;const u=Ae||Ee?null:li(c);if(Ee?.id==="submit-issue"||u?.command==="submit-issue"){hs(u?.command==="submit-issue"?u.args:c);return}Ds||await xn()}function Hn(){ku(z)||Vn()}async function vs(u){if(Mt()||Tn)return!1;const x=R;if(!vt(x))return!1;Ct(!0),Zt(!1),Ge(null);try{const P=await lt([],null,Rf,{displayPrompt:`/submit-issue ${u.title.trim()}`,promptOverride:sl(u)});return P&&(nn(!1),De()),P}catch(P){return Ge(P instanceof Error?P.message:String(P)),!1}finally{as(x),Ct(!1)}}async function Qs(u,x){const P=G.current?.getPrompt()??c,T=Math.max(0,Math.min(Is.current,P.length)),Z=Ri(P,u,x.submit?P.length:T),X=await bu({appendToEnd:x.submit,currentScopeKey:I?.()??R,cursorIndex:T,originScopeKey:R,prompt:P,setOriginDraft:be=>ie(be),submitFromOrigin:be=>xn({preservePrompt:!0,promptOverride:be}),transcript:u});if(X==="retained"){Oe("The voice message couldn't be sent. It is saved in the original chat draft.","error");return}if(X==="submitted"){Oe("Voice message sent to the chat where recording started.","success");return}if(x.submit){if(k){E?await gn(Z.value):await pn(Z.value);return}await xn({promptOverride:Z.value});return}Te(Z.cursorIndex),window.requestAnimationFrame(()=>{G.current?.focusAtPromptIndex(Z.cursorIndex)})}return S?n.jsx("p",{className:"composer dock",role:"status",children:S}):n.jsxs("form",{ref:O,className:`composer ${t} ${N?"has-create-runtime":""} ${Fn?"has-goal-runtime":""} ${qe.length>0?"has-attachments":""} ${Ae||Ee?"has-selected-action":""} ${sn?"has-attachment-error":""} ${Ue?"has-add-menu":""}`,onSubmit:u=>{u.preventDefault(),Vn()},children:[n.jsx("input",{webkitdirectory:"",ref:oe,className:"composer-file-input",type:"file",multiple:!0,tabIndex:-1,onChange:u=>{wt(Array.from(u.currentTarget.files??[])),u.currentTarget.value=""}}),Ut&&n.jsx(Id,{items:jt,mentionIndex:Ts,onSelect:Ws,onSelectIndex:kn,style:Er}),cn&&n.jsx(Kd,{items:Ve,onSelect:hn,onSelectIndex:Sn,skillIndex:Ps,style:$r}),ls&&n.jsx(Qd,{actionCatalogCount:U.length,actionIndex:_s,items:Xe,onSelect:ps,onSelectIndex:Cn,style:Ar}),n.jsx(Xd,{busy:Tn,initialDescription:gt,open:ss,onClose:Tr,onSubmit:vs}),Y&&n.jsxs("div",{className:"composer-footer",children:[Y?n.jsx(Iu,{busy:j||ge.busy,placement:_n,state:ge,onChange:D}):null,ce&&ve?n.jsx(Ti,{busy:j,placement:_n,state:ce,onChange:ve}):null,fs?n.jsx(Tu,{busy:j,placement:_n,state:ue,onChange:de}):null]}),!Y&&e==="work"&&n.jsx(Pu,{project:ge,workspace:ue}),N?n.jsx(o.Suspense,{fallback:null,children:n.jsx(Af,{runtime:N})}):null,pe.enabled?n.jsx(Eu,{inbox:pe,onRestore:u=>{ie(c.trim()?`${c}
5
+
6
+ ${u}`:u),G.current?.focusAtPromptIndex(0)}}):n.jsx(Ou,{drafts:Ce,sendingDraftId:ms,onDeleteDraft:xs,onEditDraft:bs,onSteerDraft:u=>{Or(u)}}),Fn&&m&&n.jsx(Lu,{detailsOpen:ts,goalRuntime:m,objectiveId:Sr,subagentRuntime:p,onToggleDetails:()=>En(u=>!u)}),d&&n.jsx("div",{className:`composer-notice ${d.tone}`,role:"status",children:d.message}),pe.enabled&&k&&Fs&&n.jsxs("div",{className:"task-input-actions",children:[n.jsx("button",{type:"button",disabled:!!pe.busyId||!pe.snapshot?.acceptingInput,onClick:()=>{gn()},children:"Steer now"}),n.jsx("button",{type:"button",disabled:!!pe.busyId,onClick:()=>{pn()},children:"Queue for next turn"})]}),n.jsxs("div",{className:"composer-input-shell",ref:xe,children:[Ue&&s!=="team"&&n.jsx(la,{id:zs,ariaLabel:"Add to message",className:"composer-add-command-menu",menuIndex:Ls,menuRef:Ne,sections:dn,style:Rr,variant:"add",onSelect:qn,onSelectIndex:Yt}),qe.length>0&&n.jsx("div",{className:"composer-attachments","aria-label":"Selected attachments",children:qe.map(u=>n.jsx(cf,{attachment:u,onRemove:()=>nt(u.id)},u.id))}),sn&&n.jsx("div",{className:"composer-attachment-error",role:"status",children:sn}),n.jsx("div",{className:"composer-textarea-frame",onClick:u=>{u.target===u.currentTarget&&G.current?.focusAtPromptIndex(je)},children:n.jsx(xd,{ref:G,connectedAppMentions:b,disabled:bt,onCursorChange:Te,onKeyDown:u=>{if(Ue&&["ArrowDown","ArrowUp","Home","End","Enter","Escape"].includes(u.key)){u.preventDefault();return}if(Ut){if(u.key==="ArrowDown"){u.preventDefault(),kn(x=>(x+1)%jt.length);return}if(u.key==="ArrowUp"){u.preventDefault(),kn(x=>(x-1+jt.length)%jt.length);return}if(u.key==="Enter"||u.key==="Tab"){u.preventDefault(),Ws(jt[Ts]??jt[0]);return}if(u.key==="Escape"){u.preventDefault(),ft(on);return}}if(cn){if(Ve.length>0&&u.key==="ArrowDown"){u.preventDefault(),Sn(x=>(x+1)%Ve.length);return}if(Ve.length>0&&u.key==="ArrowUp"){u.preventDefault(),Sn(x=>(x-1+Ve.length)%Ve.length);return}if(Ve.length>0&&(u.key==="Enter"||u.key==="Tab")){u.preventDefault(),hn(Ve[Ps]??Ve[0]);return}if(u.key==="Escape"){u.preventDefault(),St(ln??c);return}}if(ls){if(Xe.length>0&&u.key==="ArrowDown"){u.preventDefault(),Cn(x=>(x+1)%Xe.length);return}if(Xe.length>0&&u.key==="ArrowUp"){u.preventDefault(),Cn(x=>(x-1+Xe.length)%Xe.length);return}if(Xe.length>0&&(u.key==="Enter"||u.key==="Tab")){u.preventDefault(),ps(Xe[_s]??Xe[0]);return}if(u.key==="Escape"){u.preventDefault(),$e(Nt??c);return}}if((Ae||Ee)&&u.key==="Backspace"&&je===(ht??0)){u.preventDefault(),De();return}if(vd(u.key,u.ctrlKey,u.metaKey,u.shiftKey,e,s,!!te)){u.preventDefault(),bd({attachmentsCount:qe.length,hasSelectedInvocation:!!(Ae||Ee),onSave:te,onSaved:De,prompt:c,saving:Mn,setSaving:Nn,showInfo:x=>Oe(x,"info")});return}u.key==="Enter"&&!u.shiftKey&&(u.preventDefault(),an||Vn())},onPasteFiles:wt,onPasteTextAsAttachment:jr,onPromptChange:(u,x)=>{if(Ue){const T=Math.max(0,Math.min(ct.current,u.length));x<T?(ct.current=x,zt("")):zt(u.slice(T,x))}const P=s==="team"?null:vf(u,x,xt);if(P){const T=`${u.slice(0,P.start)}${u.slice(P.end)}`,Z=P.start;ie(u),Te(x),window.requestAnimationFrame(()=>{Ft(P.command.id),mt(null),Fe(Z),$e(null),ie(T),Te(Z),P.command.id==="submit-issue"&&hs(T),window.requestAnimationFrame(()=>{G.current?.focusAtPromptIndex(Z,{afterToken:!0})})});return}ie(u)},onTokenPositionChange:u=>{if(!(!Ae&&!Ee)){if(u===null){De();return}Fe(u)}},placeholder:rs,prompt:c,token:wr})}),n.jsx(Hd,{surface:s,teamUseModel:r,teamUseModelLocked:a,onTeamUseModelChange:l,addFiles:wt,addMenuId:zs,addMenuOpen:Ue,addMenuRef:et,busy:j,codexPermissionMode:he,codexReasoningEffort:V,connection:H,contextStatusStyle:Cr,contextStatusTooltipId:kr,contextWindowStatus:g,disabled:Bs,dropdownPlacement:_n,fileInputRef:Ie,modelValue:yr,modelOptions:Nr,hideModelControls:Se,openPondCommandAccessMode:ae,showCommandAccess:Dt,profileTarget:Y?null:ce,onCodexPermissionModeChange:Re,onCodexReasoningEffortChange:we,onOpenPondCommandAccessModeChange:Ze,onProfileTargetChange:ve,onModelChange:it,onOpenFilePicker:Je,onProviderChange:L,onProviderSetupOpen:Q,onSend:Hn,onStop:Vt,onToggleAddMenu:()=>{const u=Math.max(0,Math.min(je,c.length));Ue||(ct.current=u,zt(""),Yt(0),Zt(!0)),window.requestAnimationFrame(()=>{G.current?.focusAtPromptIndex(u)})},onTranscript:Qs,voiceInputChannelKey:z,provider:le,providerSettings:W,providerOptions:Ln,running:k,sendDisabled:Ds,sendTooltip:Mr,showToast:Oe,stopIcon:At,stopLabel:ds})]})]})}const Wa=o.memo(function({draftStore:t,...s}){const r=ol(t),a=t.getScopeKey(),i=o.useCallback(l=>{t.setForScope(a,l)},[a,t]);return n.jsx(ll,{id:"composer",children:n.jsx(Ki,{...s,prompt:r,onPromptChange:i})})});function If({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 l=(t[a.question]??"").split(", ");return n.jsxs("label",{title:i.description,children:[n.jsx("input",{type:a.multiSelect?"checkbox":"radio",name:a.question,checked:l.includes(i.label),onChange:c=>{const d=a.multiSelect?(c.target.checked?[...l.filter(Boolean),i.label]:l.filter(f=>f!==i.label)).join(", "):i.label;r({...t,[a.question]:d})}}),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 Ga({approval:e,onResolve:t}){const[s,r]=o.useState(null),[a,i]=o.useState({});if(o.useEffect(()=>{r(null),i({})},[e?.id]),!e||e.kind==="create_plan")return null;const l=Tf(e.detail),c=typeof e.providerRequestId=="string"&&e.providerRequestId.startsWith("native-agent:");let d=[],f=[];if(c)try{const g=JSON.parse(e.detail);d=g.options??[],f=g.questions??[]}catch{}const b=c?d.some(g=>g.kind==="allow_always"):e.kind!=="subagent_patch_apply",v=d.find(g=>g.kind==="allow_always")?.name;async function h(g){if(!(!e||s)){r(g);try{await t(e.id,g,g==="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":`${Ka(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:Ka(e.kind)})}),n.jsx("code",{className:"approval-request-title",title:e.title,children:e.title}),l&&l!==e.title&&n.jsxs("details",{className:"approval-request-details",children:[n.jsx("summary",{children:"Details"}),n.jsx("pre",{children:l})]}),f.length?n.jsx(If,{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(g=>!a[g.question]?.trim())||c&&!d.some(g=>g.kind==="allow_once"),onClick:()=>{h("accept")},children:[n.jsx(Pt,{size:14}),n.jsx("span",{children:s==="accept"?"Sending":f.length?"Submit answers":"Approve"})]}),b?n.jsxs("button",{type:"button",className:"approval-action",title:c?v:"Approve for the rest of this session",disabled:!!s,onClick:()=>{h("acceptForSession")},children:[n.jsx(oc,{size:14}),n.jsx("span",{children:s==="acceptForSession"?"Approving":c?v:"Session"})]}):null,n.jsxs("button",{type:"button",className:"approval-action muted",disabled:!!s||c&&!d.some(g=>g.kind==="reject_once"),onClick:()=>{h("decline")},children:[n.jsx(cc,{size:14}),n.jsx("span",{children:s==="decline"?"Denying":"Deny"})]}),n.jsx("button",{type:"button",className:"approval-action icon-only",title:c?"Dismiss request":"Cancel task","aria-label":c?"Dismiss request":"Cancel task",disabled:!!s,onClick:()=>{h("cancel")},children:n.jsx($s,{size:15})})]})]})})}function Ka(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 Tf(e){const t=e.trim();if(!t)return"";try{return JSON.stringify(JSON.parse(t),null,2)}catch{return t}}const Pf=/\.(?:m4v|mov|mp4|webm)$/i;function _f(e){return Pf.test(e.trim().split(/[?#]/,1)[0]??"")}function Lf(e,t){let s=e.trim();if(!s||!_f(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 Of(e,t={}){const s=zf(e),r=e.map(a=>({id:`message:${a.id}`,type:"message",message:a,showFooter:a.id===s}));return t.showThinkingIndicator&&r.push({id:"thinking",type:"thinking"}),r}function zf(e){for(let t=e.length-1;t>=0;t-=1){const s=e[t];if(s.role==="assistant")return s.id}return null}function $p(e){const t=new Map;for(const s of e)s.role==="assistant"&&s.turnId&&t.set(s.turnId,s.id);return t}function Ip(e,t){const s=e.turnId;return e.role==="assistant"&&s!==void 0&&t.get(s)===e.id}function Ff(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 Df(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 Bf=new Set(["create","edit","help","list"]);function Uf(e,t,s=null){return qf(e)}function qf(e){const t=e.trim();if(!t)return"/skill";const[s=""]=t.split(/\s+/,1);return Bf.has(s.toLowerCase())?`/skill ${t}`:`/skill create ${t}`}async function Vf(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 Hf(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 Wf(e){const[t,s]=o.useState(null),[r,a]=o.useState(null),[i,l]=o.useState(!1),[c,d]=o.useState(null),[f,b]=o.useState(null),v=o.useRef(null),h=o.useRef(0),g=o.useCallback(async(j,w={})=>{if(!e){a(null),d("OpenPond App server is not connected.");return}const k=h.current+1;h.current=k,w.silent||l(!0),d(null);try{const A=await _e.getCreateImproveCandidateDiff(e,j.runId,j.candidateId),C=v.current;if(k!==h.current||C?.runId!==j.runId||C.candidateId!==j.candidateId)return;a(A)}catch(A){if(k!==h.current)return;d(A instanceof Error?A.message:String(A))}finally{k===h.current&&!w.silent&&l(!1)}},[e]),m=o.useCallback(j=>{const w=v.current;if(!(j&&w?.runId===j.runId&&w.candidateId===j.candidateId)){if(v.current=j,s(j),b(null),!j){h.current+=1,a(null),d(null),l(!1);return}a(k=>k?.appId===Gf(j)?k:null),g(j)}},[g]),p=o.useCallback(async(j={})=>{const w=v.current;w&&await g(w,j)},[g]),N=o.useCallback(j=>{b({id:Date.now(),path:j})},[]);return o.useEffect(()=>{e||m(null)},[m,e]),{selection:t,diff:r,loading:i,error:c,openFileRequest:f,activate:m,refresh:p,openFile:N}}function Gf(e){return`candidate:${e.runId}:${e.candidateId}`}function Kf(e){const{activeModel:t,activeProvider:s,bootstrap:r,codexPermissionMode:a,codexReasoningEffort:i,connection:l,onOpenRightChatForSession:c,onPayload:d}=e,f=o.useCallback(async h=>{if(!l||!r)throw new Error("OpenPond is still connecting.");const g=r.profile;if(g.mode!=="local"||!g.repoPath)throw new Error("A local Git-backed Profile is required to change an Agent.");const m=h.authoringModel??cl(s,t,r.providers);if(!m)throw new Error("Choose a model before changing an Agent.");const p=await _e.createSession(l,{provider:m.providerId,modelRef:m,systemKind:"openpond.lab",hiddenFromDefaultSidebar:!0,title:`${h.operation==="create"?"New":"Improve"} Agent · ${h.objective.slice(0,80)}`,cwd:g.repoPath,metadata:{source:h.operation==="create"?"lab_agent_create":"lab_agent_improve",profileId:g.activeProfile??"default",targetAgentId:h.agentId??null}}),N=h.objective.trim();if(!N)throw new Error(h.operation==="create"?"Describe what the Agent should do.":"Describe what the Agent could do better.");if(m.providerId==="codex")throw new Error("Agent authoring uses OpenPond's bundled authoring skill. Choose a hosted model.");const j=h.operation==="create"?`/agent create ${N}`:`/agent improve ${h.agentId??""} ${N}`,w=await _e.sendTurn(l,p.id,{prompt:j,model:m.modelId,modelRef:m,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.");d(await _e.bootstrap(l)),c(p.id,p)},[t,s,r,a,i,l,c,d]),b=o.useCallback((h,g,m)=>f({objective:h,operation:"create",authoringRunId:g,authoringModel:m}),[f]),v=o.useCallback((h,g,m,p,N)=>f({agentId:h,agentName:m,objective:g,operation:"improve",authoringRunId:p,authoringModel:N}),[f]);return{createAgentFromLab:b,improveAgentFromLab:v}}const Qf=72,Hr=120,Qi=24,Xf=280,Jf=460;function Gn(e){return e.scrollHeight-e.scrollTop-e.clientHeight<=Qf}const tr={canGoPrevious:!1,canGoNext:!1};function Xi(e){return Array.from(e.querySelectorAll(".message-row.user")).filter(t=>t.parentElement===e)}function Yf({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 gr(e,t){return t.getBoundingClientRect().top-e.getBoundingClientRect().top+e.scrollTop}function Ji(e,t){return gr(e,t)+t.getBoundingClientRect().height}function Yi(e){return e.scrollTop+Qi}function Zi(e){return e.scrollTop+8}function Cs(e){const t=Yi(e),s=Zi(e);let r=!1,a=!1;for(const i of Xi(e)){const l=gr(e,i);if(Ji(e,i)<s&&(r=!0),l>t+8&&(a=!0),r&&a)break}return{canGoPrevious:r,canGoNext:a}}function Zf(e,t){const s=Xi(e),r=Yi(e);if(t==="previous"){const a=Zi(e);for(let i=s.length-1;i>=0;i-=1){const l=s[i];if(Ji(e,l)<a)return l}return null}for(const a of s)if(gr(e,a)>r+8)return a;return null}function em(e){return Math.min(Jf,Math.max(Xf,Math.abs(e)/5))}function tm(e){return e<.5?4*e*e*e:1-Math.pow(-2*e+2,3)/2}function nm(e){const t=ul({messages:e});return t?{run:t}:null}function Qa(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 Wr(e,t){return{surface:"chat",workflowKind:"slash_command",commandName:`/${e.command}`,commandSource:t}}function sm(e){return e.command==="goal"||e.command==="agent"||e.command==="skill"||e.command==="workflow"||e.command==="sync-cloud"}function rm(e){const t=e?.trim()??"";return/^[a-z0-9]{24}$/.test(t)?t:null}function am({busy:e,handoff:t,onDismiss:s,onSelectTask:r}){const a=dl(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?`${im(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(Qn,{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(fi,{size:14})})]}):null,n.jsx("button",{type:"button","aria-label":"Close generated question handoff",title:"Close",disabled:e,onClick:s,children:n.jsx($s,{size:14})})]})]})}function im(e){return e==="frozen_eval"?"Frozen evaluation":e==="validation"?"Validation":"Training"}function om({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(am,{busy:s,handoff:r,onDismiss:a,onSelectTask:i})}function lm({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(Qn,{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(nc,{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(fi,{size:17})})]})}function cm({busy:e,onSync:t}){return n.jsxs("button",{type:"button",className:"sync-local-button",disabled:e,onClick:t,children:[n.jsx(mc,{size:15}),n.jsx("span",{children:e?"Syncing locally":"Sync locally to work on this"})]})}function eo(e){return e.supportedView&&e.open&&!e.hasContentPanel}function um(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 dm(e){const{contentKey:t,threadElement:s=null,enabled:r=!0,onContentChange:a,threadRef:i}=e,l=o.useRef(a),c=o.useRef(null);l.current=a,o.useLayoutEffect(()=>{const d=s??i.current;if(!r||!d||typeof window>"u")return;let f=null,b=0,v=d.scrollHeight;const h=(w=!0)=>{w&&(b=Math.max(b,4)),f===null&&(f=window.requestAnimationFrame(()=>{f=null,i.current===d&&l.current(d);const k=Math.abs(d.scrollHeight-v)>1;v=d.scrollHeight,b-=1,(b>0||k)&&h(!1)}))};c.current=()=>h();const g=typeof MutationObserver>"u"?null:new MutationObserver(()=>{N(),h()}),m=typeof ResizeObserver>"u"?null:new ResizeObserver(()=>h()),p=new Set,N=()=>{if(!m)return;const w=new Set(Array.from(d.children).filter(k=>k instanceof HTMLElement));for(const k of p)w.has(k)||(m.unobserve(k),p.delete(k));for(const k of w)p.has(k)||(m.observe(k),p.add(k))};g?.observe(d,{childList:!0,characterData:!0,subtree:!0}),N();const j=()=>h();return d.addEventListener("load",j,!0),()=>{c.current=null,g?.disconnect(),m?.disconnect(),d.removeEventListener("load",j,!0),f!==null&&window.cancelAnimationFrame(f)}},[r,s,i]),o.useLayoutEffect(()=>{r&&c.current?.()},[t,r])}function fm({browserConversationId:e,chatSubmissionVersion:t,chatHistoryHasMore:s,chatHistoryLoading:r,chatMessages:a,onLoadMoreChatHistory:i,pendingApproval:l,showChatThread:c,showThinkingIndicator:d,view:f}){const b=o.useRef(null),[v,h]=o.useState(null),g=o.useCallback(S=>{b.current=S,h(O=>O===S?O:S)},[]),m=o.useRef(null),p=o.useRef(!0),N=o.useRef(0),j=o.useRef(0),w=o.useRef(0),k=o.useRef(null),A=o.useRef(null),C=o.useRef(!1),E=o.useRef(!1),R=o.useRef(!1),I=o.useRef(null),z=o.useRef(null),B=o.useRef(null),[Y,Se]=o.useState(0),[M,F]=o.useState(null),[q,H]=o.useState(!1),[W,le]=o.useState(132),[fe,ge]=o.useState(tr),ce=o.useMemo(()=>Of(a,{showThinkingIndicator:d}),[a,d]),U=o.useMemo(()=>({"--chat-composer-reserve":`${W}px`}),[W]),$=a.at(-1),ue=[ce.length,$?.id??"",$?.content?.length??0,$?.timestamp??"",d?"thinking":""].join(":"),he=s,V=e,ae=f==="chat"&&c&&!!V&&M!==V,L=o.useCallback(S=>{H(O=>O===S?O:S)},[]),Q=o.useCallback(S=>{ge(O=>O.canGoPrevious===S.canGoPrevious&&O.canGoNext===S.canGoNext?O:S)},[]),D=o.useCallback((S,O={})=>{const xe=O.nearBottom??Gn(S);L(!xe),Q(Cs(S))},[L,Q]),ve=o.useCallback(S=>{const O=E.current;E.current=!1,F(S),L(!1),Q(tr),O&&Se(xe=>xe+1)},[L,Q]),de=o.useCallback(()=>{B.current===null||typeof window>"u"||(window.cancelAnimationFrame(B.current),B.current=null)},[]),it=o.useCallback((S,O,xe)=>{de();const G=Math.max(0,S.scrollHeight-S.clientHeight),pe=()=>{const tt=typeof O=="function"?O():O;return Math.max(0,Math.min(tt,Math.max(0,S.scrollHeight-S.clientHeight)))},Ie=Math.max(0,Math.min(pe(),G)),oe=S.scrollTop,et=Ie-oe;if(typeof window>"u"||window.matchMedia?.("(prefers-reduced-motion: reduce)").matches===!0||Math.abs(et)<1){S.scrollTop=Ie,xe?.();return}const ct=em(et),Lt=window.performance.now(),Ot=tt=>{if(b.current!==S){B.current=null;return}const ut=Math.min(1,(tt-Lt)/ct),Jt=pe();if(S.scrollTop=oe+(Jt-oe)*tm(ut),ut<1){B.current=window.requestAnimationFrame(Ot);return}S.scrollTop=pe(),B.current=null,xe?.()};B.current=window.requestAnimationFrame(Ot)},[de]),Re=o.useCallback(()=>{R.current=!1,!(I.current===null||typeof window>"u")&&(window.cancelAnimationFrame(I.current),I.current=null)},[]),we=o.useCallback(()=>{z.current===null||typeof window>"u"||(window.cancelAnimationFrame(z.current),z.current=null)},[]),Ze=o.useCallback(S=>{if(typeof window>"u"){S.scrollTop=S.scrollHeight;return}if(z.current!==null)return;let O=window.performance.now();const xe=G=>{if(b.current!==S||!p.current){z.current=null;return}const pe=Math.max(0,S.scrollHeight-S.clientHeight),Ie=pe-S.scrollTop;if(Math.abs(Ie)<=.75){S.scrollTop=pe,z.current=null;return}if(Ie<0||Ie>240)S.scrollTop=pe;else{const oe=Math.max(.5,Math.min(3,(G-O)/16.666666666666668)),et=1-Math.pow(1-.22,oe);S.scrollTop+=Math.min(36*oe,Ie*et)}O=G,z.current=window.requestAnimationFrame(xe)};z.current=window.requestAnimationFrame(xe)},[]),ie=o.useCallback((S,O={})=>{if(we(),S.scrollTop=S.scrollHeight,typeof window>"u"){O.finishInitial&&ve(O.conversationKey??null);return}Re(),R.current=!0;let G=0,pe=0,Ie=S.scrollHeight;const oe=O.settle?12:2,et=()=>{const Ne=b.current;if(!Ne){I.current=null,R.current=!1,O.finishInitial&&ve(O.conversationKey??null);return}Ne.scrollTop=Ne.scrollHeight;const ct=Ne.scrollHeight-Ne.scrollTop-Ne.clientHeight,Lt=Math.abs(Ne.scrollHeight-Ie)<=1;if(Ie=Ne.scrollHeight,pe=ct<=1&&Lt?pe+1:0,G+=1,G<oe&&pe<2){I.current=window.requestAnimationFrame(et);return}I.current=null,R.current=!1,p.current=!0,L(!1),Q(Cs(Ne)),O.finishInitial&&ve(O.conversationKey??null)};I.current=window.requestAnimationFrame(et)},[Re,we,ve,L,Q]),ot=o.useCallback(()=>{const S=b.current;S&&(Re(),we(),p.current=!0,L(!1),it(S,()=>S.scrollHeight-S.clientHeight,()=>{b.current===S&&(S.scrollTop=S.scrollHeight,p.current=!0,L(!1),Q(Cs(S)))}))},[Re,we,L,Q,it]),te=o.useCallback(S=>{const O=b.current;if(!O)return;const xe=Zf(O,S);if(!xe)return;Re(),we(),it(O,()=>xe.isConnected?Math.max(0,gr(O,xe)-Qi):O.scrollTop,()=>{if(b.current!==O)return;const pe=Gn(O);p.current=pe,D(O,{nearBottom:pe})})},[Re,we,it,D]),Oe=o.useCallback(()=>{const S=b.current;S&&(A.current={scrollHeight:S.scrollHeight,scrollTop:S.scrollTop},p.current=!1,we())},[we]),lt=o.useCallback(async()=>{if(he&&!(!i||r||C.current)){Oe(),C.current=!0;try{await i()}finally{C.current=!1}}},[he,r,i,Oe]),Be=o.useCallback(S=>{if(R.current){p.current=!0,L(!1),Q(tr);return}const O=Gn(S),xe=Math.abs(S.scrollHeight-j.current)>1||Math.abs(S.clientHeight-w.current)>1,G=S.scrollTop<N.current-1;N.current=S.scrollTop,j.current=S.scrollHeight,w.current=S.clientHeight,O?(p.current=!0,D(S,{nearBottom:!0})):G&&!xe?(p.current=!1,we(),D(S,{nearBottom:!1})):p.current?(L(!1),Q(Cs(S))):D(S,{nearBottom:!1}),!E.current&&S.scrollTop<=Hr&&he&&!r&&lt()},[he,we,r,lt,L,Q,D]),yn=o.useCallback(S=>{!p.current&&!Gn(S)||(p.current=!0,Ze(S))},[Ze]);return dm({contentKey:ue,enabled:f==="chat"&&c,onContentChange:yn,threadElement:v,threadRef:b}),o.useLayoutEffect(()=>{if(f!=="chat"||!c||typeof window>"u")return;const S=m.current;if(!S)return;let O=null;const xe=()=>{O=null;const Ie=Math.max(96,Math.ceil(S.getBoundingClientRect().height+20));le(oe=>oe===Ie?oe:Ie)},G=()=>{O===null&&(O=window.requestAnimationFrame(xe))};G();const pe=typeof window.ResizeObserver>"u"?null:new window.ResizeObserver(G);return pe?.observe(S),window.addEventListener("resize",G),()=>{O!==null&&window.cancelAnimationFrame(O),pe?.disconnect(),window.removeEventListener("resize",G)}},[c,f]),o.useLayoutEffect(()=>{const S=b.current;f!=="chat"||!c||!S||E.current||!p.current&&!Gn(S)||(p.current=!0,ie(S,{settle:!0}))},[W,ie,c,f]),o.useLayoutEffect(()=>{if(t===0||f!=="chat"||!c)return;const S=b.current;S&&(p.current=!0,L(!1),ie(S,{settle:!0}))},[t,ie,L,c,f]),o.useLayoutEffect(()=>{A.current=null,C.current=!1,E.current=!0,p.current=!0,N.current=0,j.current=0,w.current=0,we(),de(),Re(),F(null),L(!1),Q(tr)},[Re,de,we,V,L,Q]),o.useEffect(()=>{const S=b.current;f!=="chat"||!S||E.current||!he||r||S.scrollTop<=Hr&&S.scrollHeight<=S.clientHeight+Hr&&lt()},[he,r,Y,ce.length,lt,f]),o.useLayoutEffect(()=>{const S=A.current,O=b.current;!S||!O||E.current||(A.current=null,O.scrollTop=S.scrollTop+Math.max(0,O.scrollHeight-S.scrollHeight),D(O))},[ce.length,D]),o.useLayoutEffect(()=>{const S=b.current;if(f!=="chat"||!V||!S){k.current=V,p.current=!0,ve(V);return}const O=k.current!==V;if(k.current=V,O||E.current){p.current=!0,ie(S,{conversationKey:V,finishInitial:!0,settle:!0});return}const xe=Gn(S);if(p.current||xe){p.current=!0,L(!1),Q(Cs(S)),ie(S,{settle:!0});return}D(S,{nearBottom:xe})},[V,v,ve,l?.id,ie,L,Q,D,f]),o.useEffect(()=>()=>{Re(),de(),we()},[Re,de,we]),{chatColumnStyle:U,chatThreadPreparingInitialScroll:ae,chatThreadRef:g,composerStackRef:m,goToUserMessage:te,handleChatScroll:Be,jumpToLatestChatMessage:ot,showScrollToBottomButton:q,userMessageNavigation:fe,chatTimelineRows:ce}}function mm(e,t){const s=hm(e),[r,a]=o.useState(()=>s.getUrl(t));return o.useEffect(()=>{let i=!1;return a(s.getUrl(t)),s.loadUrl(t).then(l=>{i||a(l)}),()=>{i=!0}},[t,s]),r}function hm(e){const[,t]=o.useState(0),s=o.useCallback(a=>!e||!a?null:(Qt.activateConnection(e),Qt.get(Xa(e,a))),[e]),r=o.useCallback(async a=>{if(!e||!a)return null;const i=Xa(e,a);return Qt.activateConnection(e),Qt.load(i,()=>_e.signChatAttachmentImageUrl(e,a)).finally(()=>t(l=>l+1))},[e]);return o.useMemo(()=>({getUrl:s,loadUrl:r}),[s,r])}function Xa(e,t){return Xr(e,"chat-attachment-image",t.sessionId,t.turnId,t.attachmentId,t.storageName,t.contentType)}const pm=64,gm=120,xm=210,bm=360,vm=40,jm=120,ym=600,km=100,Ja=33,cr=new Set;let nr=!1;function Sm(e,t,s=0){if(e<=0)return{characterCount:0,remainder:0};const r=e>ym?bm:e>jm?xm:e>vm?gm:pm,a=s+Math.min(Math.max(t,0),km)*r/1e3,i=Math.min(e,Math.floor(a));return{characterCount:i,remainder:a-i}}function to(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 Ya(){return typeof window<"u"&&typeof window.matchMedia=="function"&&typeof document<"u"&&document.visibilityState==="visible"&&!window.matchMedia("(prefers-reduced-motion: reduce)").matches}function Cm(e,t,s){return t&&s?to("",e,1):e}function wm(e,t=!1){const[s,r]=o.useState(()=>Cm(e,t,Ya())),a=o.useRef(s),i=o.useRef(e),l=o.useRef(null),c=o.useRef(null),d=o.useRef(0),f=o.useRef(!0);return o.useEffect(()=>(f.current=!0,()=>{f.current=!1,l.current!==null&&(window.clearTimeout(l.current),l.current=null)}),[]),o.useEffect(()=>{if(i.current=e,!Ya()||!e.startsWith(a.current)){l.current!==null&&(window.clearTimeout(l.current),l.current=null),c.current=null,d.current=0,a.current=e,f.current&&r(e);return}if(a.current.length===e.length||l.current!==null)return;const b=()=>{if(!f.current){l.current=null;return}const v=a.current,h=i.current,g=performance.now();if(!h.startsWith(v)){a.current=h,r(h),l.current=null,c.current=null,d.current=0;return}const m=h.length-v.length;if(m===0){l.current=null,c.current=null,d.current=0;return}const p=c.current===null?16:g-c.current,N=Sm(m,p,d.current);if(c.current=g,d.current=N.remainder,N.characterCount>0){const j=to(v,h,N.characterCount);a.current=j,r(j)}l.current=window.setTimeout(b,Ja)};return l.current=window.setTimeout(b,Ja),()=>{l.current!==null&&(window.clearTimeout(l.current),l.current=null)}},[e]),o.useEffect(()=>{const v=Mm(()=>{document.visibilityState!=="visible"&&(l.current!==null&&(window.clearTimeout(l.current),l.current=null),c.current=null,d.current=0,a.current=i.current,f.current&&r(i.current))});return()=>{v(),l.current!==null&&(window.clearTimeout(l.current),l.current=null)}},[]),s}function Mm(e){return cr.add(e),nr||(document.addEventListener("visibilitychange",Za),nr=!0),()=>{cr.delete(e),cr.size===0&&nr&&(document.removeEventListener("visibilitychange",Za),nr=!1)}}function Za(){for(const e of cr)e()}function no({animateInitialContent:e=!1,content:t,...s}){const r=wm(t,e),a=Xl(r,r.length===t.length),i=Nm(a,r.length===t.length);return n.jsx(mi,{...s,content:a,finalizedContent:i.finalized,mutableContent:i.mutable})}function Nm(e,t){if(t||!e)return{finalized:e,mutable:""};const s=e.split(`
9
+ `);let r=!1,a=null,i=0,l=0;for(let c=0;c<s.length-1;c+=1){const d=s[c]??"",f=d.trim();!a&&/^\s*```/.test(d)&&(r=!r),r||(a&&f.endsWith(a)?a=null:!a&&f.startsWith("\\[")&&!f.endsWith("\\]")?a="\\]":!a&&f.startsWith("$$")&&f.indexOf("$$",2)<0&&(a="$$")),i+=d.length+1,!r&&!a&&f===""&&(l=i)}return{finalized:e.slice(0,l),mutable:e.slice(l)}}function xr({children:e,className:t="",controls:s,danger:r=!1,expanded:a=!1,icon:i,onToggle:l,running:c=!1}){const d=["activity-summary",l?"":"static",r?"danger":"",c?"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})}),l?n.jsx(_t,{"aria-hidden":!0,className:`activity-summary-toggle ${a?"expanded":""}`,size:14}):null]});return l?n.jsx("button",{type:"button","aria-controls":s,"aria-expanded":a,className:d,onClick:l,children:f}):n.jsx("div",{className:d,role:c?"status":void 0,children:f})}function Am({actionRun:e,onOpenBrowserLink:t,onOpenFileInSidebar:s,workspaceRootPath:r=null}){const a=Im(e.status),i=Tm(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(l=>n.jsxs("span",{className:"action-run-chip",children:[l.icon,n.jsx("span",{children:l.label}),n.jsx("code",{children:l.value})]},l.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(l=>n.jsx($m,{refItem:l,onOpenBrowserLink:t,onOpenFileInSidebar:s,workspaceRootPath:r},l.id))}),e.childCalls.length>0&&n.jsx("div",{className:"action-run-child-list","aria-label":"Child implementation calls",children:e.childCalls.map(l=>n.jsxs("div",{className:`action-run-child ${l.status}`,children:[n.jsx("span",{children:l.label}),n.jsx("small",{children:l.status}),l.detail&&n.jsx("code",{children:l.detail})]},l.id))})]})}function ei(e){return e.implementationType==="openpond-profile-action"}function Rm(e){const t=e.agentName??e.agentId;return e.actionName.endsWith(".chat")?Zs({actionId:e.actionName,label:e.title,name:t}):t?Zs({actionId:e.actionName,name:t}):e.title&&!fl(e.title)?Zs({actionId:e.actionName,label:e.title}):Zs({actionId:e.actionName})}function Em(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 $m({refItem:e,onOpenBrowserLink:t,onOpenFileInSidebar:s,workspaceRootPath:r}){const a=s?hi(e.target,{workspaceRootPath:r}):null,i=Pm(e.target)&&t,l=!!(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(ur,{size:13})}),l&&n.jsx("button",{type:"button",title:`Open ${e.target}`,"aria-label":`Open ${e.label}`,onClick:()=>{a&&s&&s(a.path)},children:n.jsx(ur,{size:13})})]})}function Im(e){return e==="completed"?ci:e==="failed"?Ec:dc}function Tm(e){const t=[];return e.implementationType&&t.push({label:"Type",value:e.implementationType,icon:n.jsx(rr,{size:12})}),e.runId&&t.push({label:"Run",value:e.runId,icon:n.jsx(dt,{size:12})}),e.sandboxId&&t.push({label:"Sandbox",value:e.sandboxId,icon:n.jsx(dt,{size:12})}),e.sourceRef&&t.push({label:"Source",value:e.sourceRef,icon:n.jsx(ml,{size:12})}),e.manifestHash&&t.push({label:"Manifest",value:e.manifestHash,icon:n.jsx(dt,{size:12})}),t}function Pm(e){return/^https?:\/\//i.test(e)}function _m(e,t){const s=Lm(e),[r,a]=o.useState(()=>s.getUrl(t));return o.useEffect(()=>{let i=!1;return a(s.getUrl(t)),s.loadUrl(t).then(l=>{i||a(l)}),()=>{i=!0}},[t,s]),r}function Lm(e){const[,t]=o.useState(0),s=o.useCallback(a=>!e||!a?null:(Qt.activateConnection(e),Qt.get(Xr(e,"local-video",a))),[e]),r=o.useCallback(async a=>{if(!e||!a)return null;Qt.activateConnection(e);const i=Xr(e,"local-video",a);return Qt.load(i,()=>_e.signLocalVideoUrl(e,{path:a})).finally(()=>t(l=>l+1))},[e]);return o.useMemo(()=>({getUrl:s,loadUrl:r}),[s,r])}function Om(e,t){return{toolCount:e.reduce((r,a)=>r+(ti(a)?0:1),0),toolsExpanded:t,visibleActivities:t?e.filter(r=>!ti(r)):[]}}function ti(e){return e.kind==="reasoning"}function zm(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 l=Math.floor(a/60),c=a%60;return c>0?`${l}h ${c}m`:`${l}h`}const Fm=4;function Dm({onOpenSession:e,onShowAll:t,sessions:s}){const r=s.slice(0,Fm),a=Math.max(0,s.length-r.length),i=s.map(ro).join(", ");return n.jsxs("div",{"aria-label":`Subagent conversations: ${i}`,className:"activity-subagent-avatar-group",title:`Subagent conversations: ${i}`,children:[r.map(l=>n.jsx(so,{openSession:l,onOpenSession:e},l.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 so({className:e="",onOpenSession:t,openSession:s}){const r=io(s.roleId),a=qm(s.status),i=`Open ${ro(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(Bm,{roleId:r})})}function Bm({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 Um(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 ro(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 qm(e){const t=e?.trim().toLowerCase()||"unknown";return/^[a-z][a-z0-9_-]*$/.test(t)?t:"unknown"}function Vm({activity:e,defaultExpanded:t=!1}){const[s,r]=o.useState(t),a=o.useId(),i=Gm(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(l=>!l),type:"button",children:[n.jsx(hl,{"aria-hidden":!0,className:e.state==="running"?"spinning":void 0,size:12}),n.jsx("span",{children:pl(e)}),i?n.jsx(_t,{"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(Hm,{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(l=>n.jsxs("div",{children:[n.jsx("span",{className:l.status,children:l.status}),n.jsx("p",{children:l.summary})]},l.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(l=>n.jsxs("section",{children:[n.jsxs("strong",{children:[l.operation," · ",l.target]}),n.jsx("p",{children:l.summary}),l.content===null?n.jsx("small",{children:"File deleted."}):n.jsx("pre",{children:l.content})]},l.id))]}):null,n.jsx(Wm,{refs:e.refs})]}):null]})}function Hm({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 Wm({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:Km(s)}),n.jsx("dd",{children:n.jsx("code",{children:r})})]},s))})]}):null}function Gm(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 Km(e){const t=e.replace(/([a-z])([A-Z])/g,"$1 $2");return`${t[0]?.toUpperCase()??""}${t.slice(1)}`}function Qm({artifact:e,onOpenFileInSidebar:t}){const[s,r]=o.useState(null),a=o.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,...Jm(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(dt,{"aria-hidden":!0,size:14}),n.jsx("strong",{children:e.title})]}):n.jsxs("span",{className:"activity-artifact-name",children:[n.jsx(dt,{"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:()=>{pi(e.path)},children:n.jsx(ji,{"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(ui,{"aria-hidden":!0,size:14})}):null]})]}),n.jsx(Xm,{menu:s,onClose:a})]})}function Xm({menu:e,onClose:t}){const s=o.useRef(null);return o.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:gl.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:()=>{di(e.path),t()},children:[n.jsx(gi,{"aria-hidden":!0,size:14}),n.jsx("span",{children:"Copy path"})]})}),document.body)}function Jm(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 oo=5,Ym=280;function Zm({activeWorkspaceAppId:e,connection:t,message:s,onOpenFileInSidebar:r,onOpenSession:a}){const i=s.activities??[],[l,c]=o.useState(!1),[d,f]=o.useState(null),b=o.useId(),v=o.useMemo(()=>$c(i),[i]),h=o.useMemo(()=>Om(i,l),[i,l]),g=i.find(E=>E.imagePreview)?.imagePreview??null,m=s.deliverables??[],p=ca(d,t,e),N=s.traceState==="running",j=s.traceState==="failed"||s.traceState==="interrupted",w=zm(s.traceStartedAt,s.traceCompletedAt),k=ch(v.text,s.traceState,w,i),A=Um(i);return i.length>0&&i.every(E=>E.subagentMessage)?n.jsxs(n.Fragment,{children:[n.jsx(ih,{activities:i}),n.jsx(ni,{activity:s.refinerActivity})]}):n.jsxs(n.Fragment,{children:[i.length>0||m.length>0?n.jsxs("article",{className:`activity-group work-trace ${N?"running":"settled"}`,children:[i.length>0?n.jsxs("div",{className:"activity-summary-row",children:[n.jsx(xr,{controls:h.toolCount>0?b:void 0,danger:j,expanded:h.toolsExpanded,icon:g?n.jsx(gh,{activeWorkspaceAppId:e,connection:t,image:g}):n.jsx(xh,{kind:v.kind}),onToggle:h.toolCount>0?()=>c(E=>!E):void 0,running:N,children:k}),A.length>0&&a?n.jsx(Dm,{onOpenSession:a,onShowAll:()=>c(!0),sessions:A}):null]}):null,m.length>0?n.jsx(nh,{artifacts:m,connection:t,onOpenFileInSidebar:r}):null,h.visibleActivities.length>0?n.jsx("div",{className:"work-trace-flow",id:b,children:h.visibleActivities.map(E=>n.jsx(eh,{activeWorkspaceAppId:e,activity:E,connection:t,onOpenImage:f,onOpenSession:a},E.id))}):null,n.jsx(xi,{open:!!p,src:p,title:d?.path??"",onClose:()=>f(null)})]}):null,n.jsx(ni,{activity:s.refinerActivity})]})}function ni({activity:e}){return e?n.jsx("article",{className:"refiner-activity-row",children:n.jsx(Vm,{activity:e})}):null}function eh({activeWorkspaceAppId:e,activity:t,connection:s,onOpenImage:r,onOpenSession:a}){const[i,l]=o.useState(!1),c=o.useId();return t.subagentMessage?n.jsx(lo,{activity:t}):n.jsxs("div",{className:`activity-tool-row ${t.controlKind==="turn_aborted"?"danger":""}`,children:[n.jsx(xr,{className:"activity-tool-summary",controls:c,danger:t.controlKind==="turn_aborted",expanded:i,icon:t.kind==="command"?n.jsx(ra,{"aria-hidden":!0,className:"activity-summary-kind-icon",size:12}):void 0,onToggle:()=>l(d=>!d),children:dh(t)}),i?n.jsx(th,{activeWorkspaceAppId:e,activity:t,connection:s,detailsId:c,onOpenImage:r,onOpenSession:a}):null]})}function th({activeWorkspaceAppId:e,activity:t,connection:s,detailsId:r,onOpenImage:a,onOpenSession:i}){const l=ca(t.imagePreview??null,s,e);return n.jsxs("div",{className:"activity-tool-details",id:r,children:[t.kind==="command"&&t.content?n.jsx(fh,{command:t.content,exitCode:t.terminal?.exitCode,output:t.detail,state:t.state}):t.content?jh(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&&l?n.jsx("button",{type:"button",className:"activity-image-preview",title:`Open ${t.imagePreview.path}`,onClick:()=>a(t.imagePreview??null),children:n.jsx("img",{alt:xl(t.imagePreview.path),decoding:"async",loading:"lazy",src:l})}):null,t.openSession&&i?n.jsx(so,{className:"activity-subagent-detail-avatar",openSession:t.openSession,onOpenSession:i}):null]})}function nh({artifacts:e,connection:t,onOpenFileInSidebar:s}){return n.jsx("div",{className:"activity-artifact-list",children:e.map(r=>r.contentType.startsWith("video/")?n.jsx(rh,{artifact:r,connection:t,onOpenFileInSidebar:s},r.path):r.contentType.startsWith("image/")?n.jsx(sh,{artifact:r,connection:t},r.path):n.jsx(Qm,{artifact:r,onOpenFileInSidebar:s},r.path))})}function sh({artifact:e,connection:t}){const[s,r]=o.useState(!1),a=bi(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(hr,{"aria-hidden":!0,size:20})}),n.jsx("strong",{children:e.title}),n.jsx(xi,{open:s&&!!a,src:a,title:e.title,onClose:()=>r(!1)})]})}function rh({artifact:e,connection:t,onOpenFileInSidebar:s}){const r=o.useRef(null),[a,i]=o.useState(!1),l=_m(t,e.path),c=()=>{const d=r.current;d&&d.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:[l?n.jsx("video",{controls:!0,onPlay:()=>i(!0),preload:"metadata",ref:r,src:l}):n.jsx("div",{className:"activity-artifact-video-loading",children:"Preparing video…"}),l&&!a?n.jsx("button",{type:"button",className:"activity-artifact-video-play",onClick:c,"aria-label":`Play ${e.title}`,children:n.jsx(ec,{"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:()=>{pi(e.path)},title:`Show ${e.path} in its folder`,children:[n.jsx(ji,{"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:ah(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(ui,{"aria-hidden":!0,size:13}),"Open in sidebar"]}):null]})]})}function ah(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 lo({activity:e}){const[t,s]=o.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()}`,l=r.modelRef?.modelId?`${i} · ${r.modelRef.modelId}`:i,c=oh(r),d=lh(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(ws,{"aria-hidden":!0,size:14}),n.jsx("strong",{title:l,children:l})]}),n.jsx("small",{children:r.kind.replace(/_/g," ")})]}),n.jsx("p",{className:d&&!t?"collapsed":void 0,style:{"--subagent-message-visible-lines":oo},children:r.body}),d?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:c.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 ih({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(lo,{activity:s},s.id))})}function oh(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 lh(e){return e.length>Ym||e.split(/\r?\n/).length>oo}function ch(e,t,s,r){return t==="running"?uh(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 uh(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 mr(r)}return t?mr(t):null}function mr(e){return e.kind==="command"?e.state==="failed"?"Command failed":Si(e.content,e.state)??(e.state==="running"||e.state==="pending"?"Running command":"Ran command"):e.label.trim()||null}function dh(e){if(e.kind!=="command")return e.label;if(e.state==="running"||e.state==="pending")return mr(e)??"Running command";const t=mh(e.terminal?.durationMs);return e.state==="failed"?`Command failed${t?` in ${t}`:""}`:`${mr(e)??"Ran command"}${t?` in ${t}`:""}`}function fh({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:"$ "}),hh(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 mh(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 hh(e){return ph(e).map((t,s)=>n.jsx("span",{className:`shell-token ${t.kind}`,children:t.text},`${s}-${t.text}`))}function ph(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 gh({activeWorkspaceAppId:e,connection:t,image:s}){const r=ca(s,t,e);return r?n.jsx("img",{"aria-hidden":!0,className:"activity-summary-image",decoding:"async",loading:"lazy",src:r,alt:""}):null}function xh({kind:e}){const t=bh(e);return n.jsx(t,{"aria-hidden":!0,className:`activity-summary-kind-icon ${e}`,size:14})}function bh(e){return e==="approval"||e==="control"?bl:e==="edit"?vl:e==="image"?hr:e==="list"?jl:e==="read"?dt:e==="reasoning"?ki:e==="search"?yl:e==="subagent"?ws:e==="web"?ia:ra}function ca(e,t,s){const r=e&&vh(e.path)?e.path:null,a=e?.appId??s,i=bi(t,r),l=Jl(t,r?null:a,r?null:e?.path);return r?i:l}function vh(e){return/^file:\/\//i.test(e)||/^\//.test(e)||/^[A-Za-z]:[\\/]/.test(e)}function jh(e){return e.includes(`
13
+ `)||e.length>160}function yh({summary:e,onOpenFileInSidebar:t}){const[s,r]=o.useState(null),a=`${e.filesChanged} ${e.filesChanged===1?"file":"files"} changed`,i=e.files.reduce((l,c)=>{const d=co(c);return{additions:l.additions+d.additions,deletions:l.deletions+d.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(l=>n.jsx(kh,{file:l,onOpenFileInSidebar:t,open:s===l.path,onToggle:()=>r(c=>c===l.path?null:l.path)},l.path))})]})}function kh({file:e,onOpenFileInSidebar:t,open:s,onToggle:r}){const a=co(e),i=uo(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(ur,{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(_t,{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 co(e){if((e.status==="added"||e.status==="untracked")&&e.additions===0&&e.content)return{additions:Sh(e.content),deletions:0};if(e.additions>0||e.deletions>0||!e.patch||uo(e.patch))return{additions:e.additions,deletions:e.deletions};const t=Ch(e.patch);return t.additions>0||t.deletions>0?t:{additions:e.additions,deletions:e.deletions}}function Sh(e){const t=e.endsWith(`
14
+ `)?e.slice(0,-1):e;return t?t.split(`
15
+ `).length:0}function uo(e){return/^error: Could not access /m.test(e)}function Ch(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 wh({run:e}){const t=e.plan,s=e.questions.find(c=>c.status==="pending")??null,r=kl(t?.metadata),i=e.target.kind==="agent"?null:e.sourceRefs[0]??t?.sourcePlan[0]?.path??null,l=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(dt,{size:14}),n.jsx("span",{children:Mh(e)}),n.jsx("small",{children:e.target.kind})]}),n.jsx("p",{children:Nh(e,t?.summary??null,s?.prompt??null)}),r||i||l?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,l?n.jsxs("span",{children:[l," Evals"]}):null]}):null]})}function Mh(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 Nh(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 Gr=o.memo(function({activeWorkspaceAppId:t=null,animateInitialContent:s=!1,accountBaseUrl:r=null,billingOrganizationSlug:a=null,billingTeamId:i=null,connection:l=null,message:c,kvCacheSummary:d=null,onOpenBrowserLink:f,onOpenAttachmentInSidebar:b,onOpenFileInSidebar:v,onOpenProfileSettings:h,onResolveUserQuestion:g,onOpenSession:m,showFooter:p=!1,userAttachmentDisplay:N="full",workspaceRootPath:j=null}){if(c.role==="status_divider")return n.jsx(Wh,{message:c});if(c.role==="activity_group")return n.jsx(Zm,{activeWorkspaceAppId:t,connection:l,message:c,onOpenFileInSidebar:v,onOpenSession:m});if(c.role==="error")return c.errorKind==="opchat_quota_exceeded"?n.jsx("article",{className:"message-row assistant",children:n.jsx(Fh,{accountBaseUrl:r,billingOrganizationSlug:a,billingTeamId:i,onOpenBrowserLink:f})}):n.jsx("article",{className:"message-row assistant",children:n.jsx("div",{className:"assistant-message error-message",children:c.content??""})});if(c.role==="user"){const E=c.attachments??[],R=N==="compact",I=E.length>0,z=!!(!R&&E.some(B=>B.kind==="image"));return n.jsx("article",{className:"message-row user",children:n.jsxs("div",{className:`user-message ${I?"has-attachments":""} ${z?"has-image-attachments":""}`,children:[E.length?n.jsx(Bh,{attachments:E,compact:R,connection:l,onOpenAttachment:b}):null,c.content?n.jsx($h,{content:c.content}):null]})})}const w=Sl(c.timestamp),k=Cl(c.timestamp),A=Ah(d?.cacheHitRate??null),C=c.actionRun&&ei(c.actionRun)?Rm(c.actionRun):null;return n.jsxs("article",{className:"message-row assistant",children:[c.reasoningContent?n.jsx(Rh,{activeWorkspaceAppId:t,animateInitialContent:s,connection:l,reasoningContent:c.reasoningContent,onOpenBrowserLink:f,onOpenFileInSidebar:v,workspaceRootPath:j}):null,c.content?n.jsx("div",{className:"assistant-message",children:n.jsx(no,{activeWorkspaceAppId:t,animateInitialContent:s,connection:l,content:c.content,onOpenBrowserLink:f,onOpenFileInSidebar:v,workspaceRootPath:j})}):null,c.sources?.length?n.jsx(_h,{sources:c.sources,onOpenBrowserLink:f}):null,c.actionRun&&ei(c.actionRun)?n.jsxs("div",{className:`assistant-message action-run-profile-message ${c.actionRun.status}`,children:[n.jsx(mi,{activeWorkspaceAppId:t,connection:l,content:c.actionRun.responseText??Em(c.actionRun),onOpenBrowserLink:f,onOpenFileInSidebar:v,workspaceRootPath:j}),C?n.jsx("div",{className:"action-run-agent-label",children:h?n.jsx("button",{type:"button",className:"action-run-agent-link",onClick:h,children:C}):n.jsx("span",{children:C})}):null]}):c.actionRun?n.jsx(Am,{actionRun:c.actionRun,onOpenBrowserLink:f,onOpenFileInSidebar:v,workspaceRootPath:j}):null,c.changeSummary&&n.jsx(yh,{summary:c.changeSummary,onOpenFileInSidebar:v}),c.createImproveRun?n.jsx(wh,{run:c.createImproveRun}):null,c.userQuestion?n.jsx(Ph,{question:c.userQuestion,onResolve:g}):null,p||d?n.jsxs("div",{className:"assistant-message-footer",children:[w&&n.jsx("time",{className:"message-timestamp",dateTime:c.timestamp,title:k,children:w}),d?n.jsxs(n.Fragment,{children:[w?n.jsx("span",{className:"message-footer-separator","aria-hidden":"true"}):null,n.jsxs("span",{className:"message-kv-cache-metric","aria-label":`KV cache reuse ${A}`,children:["KV ",A]})]}):null,n.jsx("button",{type:"button",className:"message-copy-button",title:"Copy message","aria-label":"Copy assistant message",disabled:!c.content,onClick:()=>{c.content&&di(c.content)},children:n.jsx(gi,{size:14})})]}):null]})},Ih);function Ah(e){return e===null?"—":`${Math.round(e*100)}%`}const Rh=o.memo(function({activeWorkspaceAppId:t,animateInitialContent:s,connection:r,reasoningContent:a,onOpenBrowserLink:i,onOpenFileInSidebar:l,workspaceRootPath:c}){const[d,f]=o.useState(!1);return n.jsxs("div",{className:"activity-group assistant-reasoning",children:[n.jsx(xr,{expanded:d,icon:n.jsx(ki,{"aria-hidden":!0,className:"activity-summary-kind-icon",size:13}),onToggle:()=>f(b=>!b),children:"Thinking"}),d?n.jsx("div",{className:"assistant-reasoning-content",children:n.jsx(no,{activeWorkspaceAppId:t,animateInitialContent:s,connection:r,content:a,onOpenBrowserLink:i,onOpenFileInSidebar:l,workspaceRootPath:c})}):null]})},Eh);function Eh(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}const si=5;function $h({content:e}){const t=o.useMemo(()=>e.split(/\r?\n/),[e]),[s,r]=o.useState(!1),a=t.length>si,i=a&&!s?t.slice(0,si).join(`
17
+ `):e;return n.jsxs("div",{className:`user-message-content-wrap ${a?"collapsible":""}`,children:[n.jsx("div",{className:"user-message-content",children:i}),a?n.jsxs("button",{type:"button",className:"user-message-show-more","aria-expanded":s,onClick:()=>r(l=>!l),children:[s?n.jsx(Yl,{size:14}):n.jsx(_t,{size:14}),n.jsx("span",{children:s?"Show less":"Show more"})]}):null]})}function Ih(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&&Th(e.message,t.message)}function Th(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&&Dh(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}function Ph({question:e,onResolve:t}){const[s,r]=o.useState(""),[a,i]=o.useState(!1),l=async c=>{if(!(!t||a||e.status!=="pending")){i(!0);try{await t(e,c)}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(Ml,{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((c,d)=>n.jsxs("button",{disabled:a||!t,type:"button",onClick:()=>{l({questionId:e.id,action:"answer",optionId:c.id,text:c.label})},children:[n.jsx("span",{className:"user-question-option-index","aria-hidden":!0,children:d+1}),n.jsxs("span",{className:"user-question-option-copy",children:[n.jsx("span",{children:c.label}),c.description?n.jsx("small",{children:c.description}):null]})]},c.id))}):null,e.allowFreeform?n.jsxs("form",{className:"user-question-freeform",onSubmit:c=>{c.preventDefault();const d=s.trim();d&&l({questionId:e.id,action:"answer",optionId:null,text:d})},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:c=>r(c.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:()=>{l({questionId:e.id,action:"dismiss",optionId:null,text:""})},children:"Skip for now"})]}):n.jsxs("span",{className:"user-question-resolution",children:[n.jsx(ci,{"aria-hidden":!0,size:15}),n.jsx("small",{children:e.status==="answered"?`Answered${e.answer?.text?`: ${e.answer.text}`:""}`:"Skipped"})]})]})}function _h({sources:e,onOpenBrowserLink:t}){return n.jsxs("div",{className:"assistant-sources","aria-label":"Sources",children:[n.jsxs("span",{className:"assistant-sources-label",children:[n.jsx(ia,{size:13}),n.jsx("span",{children:"Sources"})]}),n.jsx("div",{className:"assistant-source-stack",children:e.map(s=>n.jsx(Lh,{source:s,onOpenBrowserLink:t},`${s.id}:${s.url}`))})]})}function Lh({source:e,onOpenBrowserLink:t}){const s=zh(e),r=[e.title,fo(e.url)].filter(Boolean).join(" - "),a=n.jsxs(n.Fragment,{children:[n.jsx(Oh,{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 Oh({source:e}){const[t,s]=o.useState(!1);return!e.faviconUrl||t?n.jsx(ia,{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 zh(e){return e.sourceName?.trim()||fo(e.url)||e.title}function fo(e){try{return new URL(e).hostname.replace(/^www\./i,"")}catch{return null}}function Fh({accountBaseUrl:e,billingOrganizationSlug:t,billingTeamId:s,onOpenBrowserLink:r}){const a=wl({accountBaseUrl:e,organizationSlug:t,teamId:s}),i=n.jsxs(n.Fragment,{children:[n.jsx(va,{size:15}),n.jsx("span",{children:"Add credits"}),n.jsx(Nl,{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(va,{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 Dh(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 Bh({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(Uh,{attachment:a,compact:t,connection:s,onOpenAttachment:r},a.id))})}function Uh({attachment:e,compact:t,connection:s,onOpenAttachment:r}){return!t&&e.kind==="image"&&e.imagePreview?n.jsx(Vh,{attachment:e,connection:s}):n.jsx(qh,{attachment:e,onOpenAttachment:r})}function qh({attachment:e,onOpenAttachment:t}){const[s,r]=o.useState(!1),a=!!((e.filePreview||e.imagePreview)&&t),i=s?"Opening":e.lineCount!==void 0?Hi(e.lineCount):null,l=n.jsxs(n.Fragment,{children:[n.jsx(Wi,{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:l}):n.jsx("span",{className:"user-message-attachment",title:e.name,children:l})}function Vh({attachment:e,connection:t}){const s=mm(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(hr,{size:24})}),n.jsx("figcaption",{children:n.jsx("span",{children:e.name})})]})}const Hh=o.memo(function(){return n.jsx("article",{className:"activity-group thinking-row","aria-live":"polite",children:n.jsx(xr,{running:!0,children:"Thinking…"})})});function Wh({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 Gt(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 Gh(e){return(e?.messages??[]).filter(t=>t.role==="user"||t.role==="assistant").map(t=>({id:t.id,role:t.role,content:t.text,timestamp:t.createdAt}))}function Kh({connection:e,presentation:t,composer:s,onOpenWork:r}){const[a,i]=o.useState(null),[l,c]=o.useState(null),[d,f]=o.useState(""),[b,v]=o.useState(""),[h,g]=o.useState(!1),[m,p]=o.useState(null),[N,j]=o.useState([]),[w,k]=o.useState([]),A=o.useRef(null);o.useEffect(()=>{let M=!0;return i(null),c(null),j([]),k([]),A.current=null,p(null),f(""),v(""),at(e,"/v1/ponder",{method:"POST",body:"{}"}).then(F=>{M&&(i(F),p(null))}).catch(F=>{M&&p(Gt(F))}),()=>{M=!1}},[e]),o.useEffect(()=>{if(!a)return;let M=!0;const F=async()=>{try{const H=await at(e,`/v1/ponder/conversations/${encodeURIComponent(a.conversationId)}`);M&&c(H)}catch(H){M&&p(Gt(H))}};F();const q=window.setInterval(()=>{F()},3e3);return()=>{M=!1,window.clearInterval(q)}},[e,a]),o.useEffect(()=>{if(!a)return;let M=!0;const F=async()=>{try{const H=await at(e,"/v1/ponder/work");M&&k(H.items)}catch(H){M&&p(Gt(H))}};F();const q=window.setInterval(()=>{F()},3e3);return()=>{M=!1,window.clearInterval(q)}},[e,a]),o.useEffect(()=>{if(!a||t!=="activity")return;A.current=null,j([]);let M=!0,F=!1;const q=async()=>{if(!F){F=!0;try{let W;do{const le=A.current,fe=await at(e,`/v1/ponder/conversations/${encodeURIComponent(a.conversationId)}/activity${le?`?after=${encodeURIComponent(le)}`:""}`);if(!M)return;fe.items.length>0&&(j(ge=>[...ge,...fe.items]),A.current=fe.nextCursor),W=fe.hasMore&&fe.items.length>0}while(W)}catch(W){M&&p(Gt(W))}finally{F=!1}}};q();const H=window.setInterval(()=>{q()},3e3);return()=>{M=!1,window.clearInterval(H)}},[e,a,t]);async function C(M){const F=M.contentsBase64?Uint8Array.from(atob(M.contentsBase64),fe=>fe.charCodeAt(0)):M.text!==void 0?new TextEncoder().encode(M.text):null;if(!F)throw new Error(`Attachment ${M.name} has no content to upload.`);const q=await crypto.subtle.digest("SHA-256",F),H=btoa(String.fromCharCode(...new Uint8Array(q))),W=await at(e,"/v1/ponder/work-inputs",{method:"POST",body:JSON.stringify({name:M.name,contentType:M.mediaType,sizeBytes:F.byteLength,sha256Base64:H})}),le=await fetch(W.upload.url,{method:W.upload.method,headers:W.upload.headers,body:new Blob([F],{type:M.mediaType})});if(!le.ok)throw new Error(`Attachment upload failed (${le.status})`);return at(e,`/v1/ponder/work-inputs/${encodeURIComponent(W.input.id)}/finalize`,{method:"POST",body:"{}"})}async function E(M=[],F){const q=(F?.promptOverride??d).trim();if(!a||!q||h)return!1;g(!0);try{const H=await Promise.all(M.map(C));return await at(e,`/v1/ponder/conversations/${encodeURIComponent(a.conversationId)}/turns`,{method:"POST",headers:{"idempotency-key":crypto.randomUUID()},body:JSON.stringify({prompt:q,attachments:H})}),f(""),p(null),!0}catch(H){return p(Gt(H)),!1}finally{g(!1)}}async function R(M,F){if(M.wait)try{await at(e,`/v1/ponder/turns/${encodeURIComponent(M.id)}/waits/${encodeURIComponent(M.wait.id)}/resolve`,{method:"POST",body:JSON.stringify(F)}),v("")}catch(q){p(Gt(q))}}async function I(M){try{await at(e,`/v1/ponder/turns/${encodeURIComponent(M.id)}/cancel`,{method:"POST",body:"{}"})}catch(F){p(Gt(F))}}async function z(M){const F=window.open("about:blank","_blank");try{const q=await at(e,`/v1/ponder/work-outputs/${encodeURIComponent(M)}`);if(!q.downloadURL)throw new Error("This output is not available for download.");F?F.location.replace(q.downloadURL):window.location.assign(q.downloadURL)}catch(q){F?.close(),p(Gt(q))}}const B=!!(l?.activeTurn&&["queued","running","retry_scheduled"].includes(l.activeTurn.status)),Y=Gh(l),Se=t==="activity"&&N.length>0?{id:"ponder-activity",role:"activity_group",timestamp:new Date().toISOString(),activities:N.map(M=>({id:M.id,label:M.type,content:M.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:[w.length>0&&n.jsx("section",{className:"ponder-linked-work","aria-label":"Ponder Pal Work tasks",children:w.map(M=>n.jsxs("button",{type:"button",onClick:()=>r(M.conversationId),children:[n.jsx("span",{children:M.title}),n.jsx("small",{children:M.status.replaceAll("_"," ")})]},M.conversationId))}),Y.map(M=>n.jsx(Gr,{message:M,connection:e},M.id)),Se&&n.jsx(Gr,{message:Se,connection:e}),B&&n.jsx(Hh,{}),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:()=>{R(l.activeTurn,{decision:"accepted"})},children:"Approve"}),n.jsx("button",{type:"button",onClick:()=>{R(l.activeTurn,{decision:"declined"})},children:"Decline"})]}):l.activeTurn.wait.options.length>0?l.activeTurn.wait.options.map(M=>n.jsx("button",{type:"button",onClick:()=>{R(l.activeTurn,{value:M})},children:M},M)):n.jsxs("form",{onSubmit:M=>{M.preventDefault(),R(l.activeTurn,{value:b})},children:[n.jsx("input",{"aria-label":"Response to Ponder Pal",value:b,onChange:M=>v(M.target.value)}),n.jsx("button",{type:"submit",disabled:!b.trim(),children:"Send response"})]})]}),l?.activeTurn?.outputs?.map(M=>M.downloadURL?n.jsx("a",{href:M.downloadURL,target:"_blank",rel:"noreferrer",children:M.name},M.id):n.jsx("button",{type:"button",onClick:()=>{z(M.id)},children:M.name},M.id)),m&&n.jsx(Gr,{message:{id:"ponder-error",role:"error",content:m,timestamp:new Date().toISOString()},connection:e})]}),n.jsxs("div",{className:"composer-stack dock",children:[n.jsx(Ki,{...s,experience:"chat",mode:"dock",showProjectFooter:!1,hideModelControls:!0,connection:e,prompt:d,onPromptChange:f,busy:h||!a,running:!1,submissionScopeKey:`ponder:${a?.conversationId??"loading"}`,voiceInputChannelKey:`ponder:${a?.conversationId??"loading"}`,onSubmit:(M,F,q,H)=>E(M,H?.promptOverride?{promptOverride:H.promptOverride}:void 0),onStop:()=>l?.activeTurn?I(l.activeTurn):void 0}),B&&l?.activeTurn&&n.jsx("button",{className:"ponder-stop-turn",type:"button",onClick:()=>{I(l.activeTurn)},children:"Stop response"})]})]})}const Qh=o.lazy(()=>ke(()=>import("./WorkspaceDiffPanel-CThoTqe4.js").then(e=>e.a),__vite__mapDeps([7,1,2,3,4,5,8,9,10,11,12,13])).then(e=>({default:e.WorkspaceDiffPanel}))),Xh=o.lazy(()=>ke(()=>import("./AppTerminalPanel-dtK0ZPer.js"),__vite__mapDeps([14,1,2])).then(e=>({default:e.AppTerminalPanel}))),Jh=o.lazy(()=>ke(()=>import("./RightSidebarHomePanel-BWJQKFUp.js"),__vite__mapDeps([15,1,2,3,4,13,9,11])).then(e=>({default:e.RightSidebarHomePanel}))),Yh=o.lazy(()=>ke(()=>import("./WorkSidebarPanel-DrYt9xzv.js"),__vite__mapDeps([16,1,2,3,4,5,9,11,17,18,19,6,20])).then(e=>({default:e.WorkSidebarPanel}))),Zh=o.lazy(()=>ke(()=>import("./NewExperienceSwitcher-CuKWTDZj.js"),__vite__mapDeps([21,1,2,3,4])).then(e=>({default:e.NewExperienceSwitcher}))),ep=o.lazy(()=>ke(()=>import("./CollaborationTabs-Czh2noeb.js"),__vite__mapDeps([22,1,2,3,4,23])).then(e=>({default:e.CollaborationTabs}))),tp=o.lazy(()=>ke(()=>import("./AppsView-DwK1UBJP.js"),__vite__mapDeps([24,1,2,3,4,25])).then(e=>({default:e.AppsView}))),np=o.lazy(()=>ke(()=>import("./GetStartedView-u7Jw7YA1.js"),__vite__mapDeps([26,1,2,6,3,4,27,5,28])).then(e=>({default:e.GetStartedView}))),sp=o.lazy(()=>ke(()=>import("./LabsRoute-hHwZNbqN.js").then(e=>e.t),__vite__mapDeps([29,1,2,3,4,30,27,17,8,10,0,5,6,31,32])).then(e=>({default:e.LabsRoute}))),rp=o.lazy(()=>ke(()=>import("./ScheduledWorkPage-qX12p4B0.js"),__vite__mapDeps([33,1,2,3,4,34,5,6,12,11,17,18,19,9])).then(e=>({default:e.ScheduledWorkPage}))),ap=o.lazy(()=>ke(()=>import("./OutputsPage-JDM5bfLJ.js"),__vite__mapDeps([35,1,2,3,4,5,9,17,18,19,6])).then(e=>({default:e.OutputsPage}))),ip=o.lazy(()=>ke(()=>import("./ProjectsPage-B3zTBHOA.js"),__vite__mapDeps([36,1,2,3,4,17,37])).then(e=>({default:e.ProjectsPage}))),ri=o.lazy(()=>ke(()=>import("./LabSkillSidebar-BnJkDb0c.js"),__vite__mapDeps([38,1,2,3,4,5,11,17,18,19,9,6,39])).then(e=>({default:e.LabSkillSidebar}))),op=o.lazy(()=>ke(()=>import("./BrowserSidebar-Cj9VnkgU.js"),__vite__mapDeps([40,1,2,3,4,5,19,41])).then(e=>({default:e.BrowserSidebar}))),lp=o.lazy(()=>ke(()=>import("./RightChatPanelStack-L8S3yj1u.js"),__vite__mapDeps([42,1,2,9,3,4,43,17,18,5,19,6])).then(e=>({default:e.RightChatPanelStack}))),cp=o.lazy(()=>ke(()=>import("./NativeSkillSidebar-CCHK6kMG.js"),__vite__mapDeps([44,1,2,3,4,11,45])).then(e=>({default:e.NativeSkillSidebar}))),up=o.lazy(()=>ke(()=>import("./TeamChatView-DakXCNQE.js"),__vite__mapDeps([46,1,2,3,4,5,17,18,19,9,6,47,48])).then(e=>({default:e.TeamChatView}))),dp=o.lazy(()=>ke(()=>import("./TeamChatView-DakXCNQE.js"),__vite__mapDeps([46,1,2,3,4,5,17,18,19,9,6,47,48])).then(e=>({default:e.TeamChatProView}))),fp=o.lazy(()=>ke(()=>import("./CommunityView-BrdxUI5Z.js"),__vite__mapDeps([49,1,2,50,3,4,5,17,18,19,9,6,51])).then(e=>({default:e.CommunityView}))),mp=o.lazy(()=>ke(()=>import("./TeamChatView-DakXCNQE.js"),__vite__mapDeps([46,1,2,3,4,5,17,18,19,9,6,47,48])).then(e=>({default:e.TeamAiThreadPanel}))),hp=o.lazy(()=>ke(()=>import("./TeamChatView-DakXCNQE.js"),__vite__mapDeps([46,1,2,3,4,5,17,18,19,9,6,47,48])).then(e=>({default:e.TeamAgentConversationPanel}))),pp=o.lazy(()=>ke(()=>import("./TrainingDraftPanel-DNivtVwd.js"),__vite__mapDeps([52,1,2,3,4,11,32])).then(e=>({default:e.TrainingDraftPanel}))),gp=o.lazy(()=>ke(()=>import("./MainChatThread-r_TYiTnW.js"),__vite__mapDeps([53,1,2,43,3,4,30,17,18,5,19,9,6])).then(e=>({default:e.MainChatThread}))),xp=o.lazy(()=>ke(()=>import("./TrainingCreationPanel-CUvSsSwp.js"),__vite__mapDeps([54,1,2,3,4,32])).then(e=>({default:e.TrainingCreationPanel})));function bp({ponderMode:e=null,onPonderModeChange:t,experience:s,onNewExperienceChange:r,view:a,teamChat:i,community:l,bootstrap:c,runtimeEvents:d,chatMessages:f,pendingUserMessage:b,contextWindowStatus:v,goalRuntime:h,subagentRuntime:g,selectedSessionId:m,composerDraftStore:p,mainComposerFocusRequestId:N,labCloseDetailRequestId:j,labCloseDetailKind:w,sideChatTrainingLaunchRequest:k,onSideChatTrainingLaunchHandled:A,mentionApps:C,connectedAppMentions:E,profileSkills:R,selectedMentionAppId:I,busy:z,turnRunning:B,activeProvider:Y,activeModel:Se,codexPermissionMode:M,codexReasoningEffort:F,openPondCommandAccessMode:q,pendingApproval:H,activeWorkspaceAppId:W,activeWorkspaceId:le,activeWorkspaceKind:fe,projectTarget:ge,actionCatalog:ce,workspaceTarget:U,connection:$,workspaceName:ue,workspaceState:he,workspaceDiff:V,workspaceBusy:ae,diffBusy:L,forceChatThread:Q=!1,diffPanelOpen:D,diffPanelExpanded:ve,rightPanelMode:de,rightPanelTabRequest:it,rightChatPanels:Re,runtimeEventStore:we,nativeSkillSidebar:Ze,extensionSkillSidebar:ie,workspaceDiffPanelViewState:ot,sidebarFileOpenRequest:te,sidebarFileBookmarks:Oe,onSetSidebarFileStatus:lt,browserConversationId:Be,terminalScope:yn,terminalTabs:S,terminalCwd:O,pendingTerminalCommand:xe,terminalOpen:G,onToggleTerminal:pe,onWorkspaceDiffPanelViewStateChange:Ie,training:oe,trainingSessions:et,trainingChatHandoff:Ne,trainingDetailTasksetId:ct,onTrainingDetailTasksetIdChange:Lt,onTrainingChatTaskSelect:Ot,onTrainingChatHandoffDismiss:tt,onOpenSession:ut,onExperienceHandoff:Jt,cloudProjects:Zn,projects:je,projectsAccountBaseUrl:Te,projectsTeamName:Is,projectTaskCounts:Ts,onNewCloudProject:kn,onNewLocalProject:Ps,onNewProjectTask:Sn,onToggleProjectPinned:_s,onUploadLocalProject:Cn,chatHistoryHasMore:Ls=!1,chatHistoryLoading:Yt=!1,onDiffPanelResizeStart:ze,canSyncWorkspace:zt,startMessage:br,onPayload:ft,onError:wn,setView:$e,onOpenProfileSettings:Os,onOpenProviderSettings:St,onOpenTrainingSettings:Ue,onOpenDatasetStorageSettings:Zt,changeDraftProvider:Mn,changeProjectTarget:Nn,changeWorkspaceTarget:We,setDraftProvider:mt,setDraftModel:en,onBeginNewChatWithModel:Ft,changeCodexPermissionMode:ht,changeCodexReasoningEffort:Fe,changeOpenPondCommandAccessMode:An,resolveApproval:pt,answerCreateImproveQuestion:es,approveCreateImproveRun:Rn,applyCreateImproveCandidate:ts,cancelCreateImproveRun:En,openCreateImprovePullRequest:$n,pauseCreateImproveRun:ns,reconcileCreateImprovePullRequest:tn,rejectCreateImproveCandidate:In,resumeCreateImproveRun:ss,reviseCreateImproveRun:nn,setMentionedAppId:gt,showToast:ne,onSaveTaskDraft:Tn,sendPrompt:Ct,stopTurn:sn,syncWorkspaceLocally:qe,refreshWorkspaceDiff:wt,onToggleDiffPanelExpanded:nt,onShowDiffPanel:st,onShowBrowserPanel:Ge,onShowTrainingDraftPanel:vr,onShowFilesPanel:Pn,onShowRightChatPanel:jr,onAddRightChat:rs,onOpenRightChatForSession:Dt,onLabDetailOpenChange:yr,evaluationSidebarActive:_n,onEvaluationSidebarControl:zs,scheduledDetailOpen:kr,onScheduledDetailOpenChange:Sr,onTerminalTabsChange:Cr,onCloseRightChatPanel:Ae,onCloseNativeSkillSidebar:xt,onActivateRightChatPanel:Ke,onRightChatModelChange:Ee,onRightChatPromptChange:rn,onRightChatScrollStateChange:Fs,onRightChatProviderChange:wr,onSubmitRightChat:an,onStopRightChat:Ds,onCloseTerminal:Mr,onLoadMoreChatHistory:bt}){const[Bs]=o.useState(()=>new cu),vt=m&&!ja(m)?m:null,as=mu(we,vt),Bt=o.useMemo(()=>vt?Al(d,as.events):d,[vt,as.events,d]),Mt=o.useMemo(()=>vt?Rl(Bs.project(Bt),b):f,[Bs,vt,b,Bt,f]),[is,Ln]=o.useState(null),[Nr,Me]=o.useState(0),on=o.useRef(""),jt=o.useCallback(()=>on.current,[]),[Us,Ut]=o.useState(null),[Qe,ln]=o.useState(null),[Ve,cn]=o.useState(null),[me,Nt]=o.useState(null),[On,qs]=o.useState(null),[os,Vs]=o.useState(null),[Xe,ls]=o.useState(null),[cs,us]=o.useState([]);o.useEffect(()=>{Ut(null)},[Be]);const un=o.useMemo(()=>c?.sessions.find(y=>y.id===m)??null,[c?.sessions,m]),zn=un?.currentProfile??c?.profileLibrary?.lastUsed??null,dn=JSON.stringify({account:c?.account.activeProfile??null,teamId:c?.preferences.defaultTeamId??null}),qt=El(c?.profileLibrary??{profiles:[]},zn)??c?.profile??null,Fn=o.useMemo(()=>$l(qt,c?.extensionCatalog),[c?.extensionCatalog,qt]),fn=o.useMemo(()=>Il(qt),[qt]),ds=o.useCallback(async(y,_=m)=>{if(!$||!c)return;const se=Tl(c.profileLibrary??{profiles:[]},y);if(se)try{const ee=_&&!ja(_)?c.sessions.find(K=>K.id===_)??null:null,J=await Vf({ref:se,session:ee,selectProfile:K=>_e.profileSelect($,K),patchSession:(K,kt)=>_e.patchSession($,K,{currentProfile:kt})});let ye=c.sessions;J.session&&(ye=ye.map(K=>K.id===J.session.id?J.session:K)),ft({...c,profile:J.selected.profile,profileLibrary:J.selected.library,sessions:ye})}catch(ee){const J=ee instanceof Error?ee.message:String(ee);wn(J),ne(J,"error")}},[c,$,wn,ft,m,ne]);o.useEffect(()=>{if(!Pl(te,Be))return;const{file:y,id:_}=te;if(Ut({id:_,path:y.path}),!$)return;let se=!1;return(y.workspaceKind==="local"?_e.workspaceFile($,y.workspaceId,y.path).then(J=>J.content??""):_e.sandboxDownloadFile($,y.workspaceId,y.path).then(J=>{if(J.file.isBinary)throw new Error("Binary files cannot be attached to chat.");return J.contents})).then(J=>{if(se)return;const ye=y.path.split("/").at(-1)??y.path;Ln({id:_,file:new File([J],ye,{type:vp(y)})})}).catch(J=>{se||ne(J instanceof Error?J.message:String(J),"error")}),()=>{se=!0}},[Be,$,ne,te]);const At=s==="development"||s==="work"&&ge.value!=="none",fs=o.useMemo(()=>{if(s==="chat")return fn;if(!At)return[];const y=new Map(ce.filter(_=>!_l(_)).map(_=>[_.id,_]));for(const _ of fn)y.set(_.id,_);for(const _ of cs)y.set(_.id,_);return[...y.values()]},[ce,s,At,cs,fn]),Ce=Wf($),ms=o.useCallback(y=>{if(!y){Ce.activate(null);return}Ce.activate({runId:y.run.id,candidateId:y.candidate.id,title:y.run.objective,fileRootPath:y.fileRootPath,initialPath:y.initialPath})},[Ce.activate]),Dn=o.useCallback(()=>{Ce.selection?.initialPath&&Ce.openFile(Ce.selection.initialPath),st()},[Ce.openFile,Ce.selection?.initialPath,st]),Ar=o.useCallback(y=>{cn(y),y&&st()},[st]),Rr=o.useCallback(()=>{cn(null),ve&&nt()},[ve,nt]);o.useEffect(()=>{a!=="labs"&&cn(null)},[a]);const Er=o.useCallback((y,_)=>{const se=Date.now(),ee=ce.find(ye=>ye.id===y)??null;p.set(""),gt(null),$e("chat");const J=ye=>{if(!(ye.find(re=>re.id===y)??null))return!1;const kt=ye.map(re=>re.id===y?{...re,label:_}:re);return us(kt),window.requestAnimationFrame(()=>{ls({actionId:y,requestId:Math.max(Date.now(),se+1)})}),!0};if(!$){ee?J([ee]):ne("The Agent action catalog is still loading. Try Use again.","error");return}_e.profileCurrent($).then(ye=>{const K=ye.actionCatalog.map(kt=>Ll(kt));!J(K)&&ee?J([ee]):K.some(kt=>kt.id===y)||ne("This Agent is ready, but its default chat action is unavailable.","error")}).catch(ye=>{ee||ne(ye instanceof Error?ye.message:String(ye),"error")})},[ce,p,$,gt,$e,ne]),$r=o.useCallback((y,_)=>{p.set(y),gt(null),_&&Mn(_),$e("chat")},[Mn,p,gt,$e]),De=o.useMemo(()=>Ol(c?.preferences),[c?.preferences]),Ir=De.training,{createAgentFromLab:hs,improveAgentFromLab:Tr}=Kf({activeModel:Se,activeProvider:Y,bootstrap:c,codexPermissionMode:M,codexReasoningEffort:F,connection:$,onOpenRightChatForSession:Dt,onPayload:ft}),Vt=o.useMemo(()=>{const y=oe.payload?.tasksets??[];return y.some(_=>_.id===On)?On:y[0]?.id??null},[On,oe.payload?.tasksets]),Bn=a==="labs"&&Vt?`profiles/${c?.profile.activeProfile??"default"}/tasksets/${Vt}`:null,Pr=o.useMemo(()=>{if(a!=="labs"||!Vt||!oe.payload)return null;const y=oe.payload.tasksets.find(re=>re.id===Vt);if(!y)return null;const _=oe.payload.plans.filter(re=>re.tasksetId===y.id),se=new Set(_.map(re=>re.id)),ee=oe.payload.jobs.filter(re=>se.has(re.planId)).sort((re,ys)=>ys.createdAt.localeCompare(re.createdAt)),J=ee.find(re=>re.id===os)??ee[0]??null,ye=J?_.find(re=>re.id===J.planId)??null:_.sort((re,ys)=>ys.createdAt.localeCompare(re.createdAt))[0]??null,K=J?oe.payload.models.find(re=>re.jobId===J.id)??null:null,kt=J?oe.payload.artifacts.filter(re=>re.jobId===J.id):[];return{taskset:y,plan:ye,job:J,lineage:K,artifacts:kt}},[Vt,os,oe.payload,a]),Ht=o.useMemo(()=>Hf(oe.payload,m),[m,oe.payload]),Un=o.useMemo(()=>nm(Mt),[Mt]),Hs=!!h||!!Un||!!g,Pe=a==="labs"&&!!Ce.selection,mn=a==="labs"&&D&&de==="changes"&&!!Ve,Ws=(a==="chat"||a==="labs")&&!!W,_r=a==="chat"&&D&&de==="chat"&&Re.length===0,Gs=zl(fe)?le??rm(ue):null,Ks=a==="chat"&&!!Gs,Rt=Gs,ps=!!Rt||U.value==="cloud"||U.value==="hybrid",yt=o.useMemo(()=>Df({workspaceTarget:U.value,localWorkspaceId:W,sandboxSourceAvailable:ps,sandboxWorkspaceId:Rt,override:Qe}),[W,ps,Rt,Qe,U.value]),hn=yt.source,Je=hn==="sandbox",Lr=o.useMemo(()=>hn&&yt.options.length>1?{value:hn,options:yt.options,onChange:ln}:null,[hn,yt.options]);o.useEffect(()=>{ln(null)},[W,Be,Rt,U.value]);const He=!mn&&(Pe||Ws||Ks)&&D&&(de==="changes"||de==="goal"&&Hs||_r),gs=a==="chat"&&D&&de==="browser",qn=(a==="chat"||a==="labs")&&D&&de==="chat"&&Re.length>0,pn=a==="chat"&&D&&de==="training",gn=a==="chat"&&D&&!!Ze,Or=a==="chat"&&D&&!!ie,xs=a==="team"&&D&&de==="chat"&&!!i.aiThread,bs=a==="team"&&D&&de==="chat"&&!!i.agentConversation,xn=s==="work"&&a==="chat"&&D&&de==="home",Vn=eo({supportedView:a==="chat"&&At||a==="labs",open:D,hasContentPanel:He||mn||gs||qn||pn||gn||xs||bs||xn}),Hn=!_n&&(He||mn||gs||qn||pn||gn||xs||bs||xn||Vn),vs=Hn&&de!=="chat"&&ve,Qs=c?.account.baseUrl??c?.account.activeProfile?.baseUrl??null,u=Yf({activeWorkspaceId:le,cloudProjects:Zn}),x=a==="chat"&&B&&!H&&Ff(Mt),P=Q||Mt.length>0||x,T=m??`draft:${a}:${fe??"none"}:${le??W??"none"}`;on.current=T;const Z=n.jsx(om,{activeModel:Se,activeProvider:Y,busy:B,handoff:Ne,onDismiss:tt,onSelectTask:Ot}),X=o.useMemo(()=>({onAnswerQuestion:es,onApprove:Rn,onApplyCandidate:ts,onCancel:En,onOpenPullRequest:$n,onPause:ns,onReconcilePullRequest:tn,onRejectCandidate:In,onResume:ss,onRevise:nn}),[es,Rn,ts,En,$n,ns,tn,In,ss,nn]),be=o.useMemo(()=>Un?{...Un,...X}:null,[X,Un]),Et=um(a,P),Wt=o.useCallback(async(y=[],_=null,se=null,ee={})=>{const J=ee.promptOverride??p.getSnapshot(),ye=()=>{ee.preservePrompt||(p.set(""),gt(null))};if(!_){const K=se?{command:se.id,args:J.trim()}:li(J);if(K){if(!Fl({id:K.command},s))return ne(`/${K.command} isn't available in ${s}.`,"info"),!1;if(K.command==="train")return y.length>0?(ne("/train uses the selected chat; add other chats from Models.","error"),!1):m?(ye(),Nt({id:Date.now(),objective:K.args.trim()||null,initialSessionIds:[m]}),$e("labs"),!0):(ye(),Nt({id:Date.now(),objective:K.args.trim()||null,initialSessionIds:[]}),$e("labs"),!0);if(!K.args&&K.command!=="skill"&&K.command!=="sync-cloud")return ne(`Add instructions after /${K.command}.`,"info"),!1;if(y.length>0)return ne(`/${K.command} tasks do not accept attachments yet. Add file context in the task thread.`,"error"),!1;if(K.command==="submit-issue")return Dl(E)?(Me(re=>re+1),Ct([],null,Bl(K.args),{clearPrompt:ee.preservePrompt?()=>{}:void 0,usageAttribution:Wr(K,se?"composer_selection":"prompt_parse")})):(ne("Connect the GitHub app before using /submit-issue.","error"),!1);if(sm(K)){const re=K.command==="skill"?Uf(K.args,Y,c?.profile.sourcePath??null):Qa(K);return Me(ys=>ys+1),Ct([],null,re,{clearPrompt:ee.preservePrompt?()=>{}:void 0,usageAttribution:Wr(K,se?"composer_selection":"prompt_parse")})}return Me(re=>re+1),Ct([],null,Qa(K),{clearPrompt:ee.preservePrompt?()=>{}:void 0,usageAttribution:Wr(K,se?"composer_selection":"prompt_parse")})}}return Me(K=>K+1),Ct(y,_,ee.promptOverride,{clearPrompt:ee.preservePrompt?()=>{}:void 0,displayPrompt:ee.displayPrompt,turnMetadata:ee.turnMetadata})},[Se,Y,fe,c?.profile,E,p,s,Ct,m,gt,$e,ne,oe,a]),$t=o.useCallback(y=>{Ne&&y!==Ne.model.modelId&&tt(),mt(Y),en(y)},[Y,tt,en,mt,Ne]),rt=o.useCallback(y=>{Ne&&y!==Ne.model.providerId&&tt(),Mn(y)},[Mn,tt,Ne]),{chatColumnStyle:bn,chatThreadPreparingInitialScroll:Ye,chatThreadRef:mo,chatTimelineRows:ho,composerStackRef:po,goToUserMessage:ua,handleChatScroll:go,jumpToLatestChatMessage:xo,showScrollToBottomButton:bo,userMessageNavigation:Xs}=fm({browserConversationId:Be,chatSubmissionVersion:Nr,chatHistoryHasMore:Ls,chatHistoryLoading:Yt,chatMessages:Mt,onLoadMoreChatHistory:bt,pendingApproval:H,showChatThread:P,showThinkingIndicator:x,view:a}),js=o.useCallback((y,_)=>{Ul({conversationId:Be,href:y,explicitFile:_?.explicitFile,newTab:_?.newTab}).then(se=>{se&&Ge()})},[Be,Ge]),Js=Zl({projectTargetDetail:ge.detail,projectTargetValue:ge.value,workspaceRepoPath:he?.repoPath,workspaceTargetValue:U.value}),da=o.useCallback(y=>{const _=Lf(y,Js);if(_&&$){_e.signLocalVideoUrl($,{path:_}).then(({url:ee})=>js(ee)).catch(ee=>{ne(ee instanceof Error?ee.message:"Could not open this video.","error")});return}const se=hi(y,{workspaceRootPath:Js});st(),Ut({id:Date.now(),path:se?.path??y})},[$,js,st,ne,Js]),fa=o.useCallback(async y=>{if(!$||!y.filePreview&&!y.imagePreview){ne("File content is not available for this attachment.","error");return}try{const _=y.name.trim().replace(/[\\/]+/g,"-")||"attachment.txt",ee=`Attachments/${y.id.replace(/[^a-zA-Z0-9._-]+/g,"-")||"file"}/${_}`,J={path:ee,status:"",additions:0,deletions:0,patch:"",content:null};let ye;if(y.filePreview){const K=await _e.chatAttachmentFile($,y.filePreview);J.content=K.content}else y.imagePreview&&(ye=(await _e.signChatAttachmentImageUrl($,y.imagePreview)).url);st(),Ut({id:Date.now(),path:ee,file:J,...ye?{imageUrl:ye}:{}})}catch(_){ne(_ instanceof Error?_.message:"Could not open this attachment.","error")}},[$,st,ne]),vo=ae&&!!W&&!he,ma=Ce.selection?`candidate:${Ce.selection.runId}:${Ce.selection.candidateId}`:null,jo=He?n.jsx(Qh,{appId:Pe?ma:Je?null:W,workspaceId:Pe?ma:Je?Rt:W,workspaceKind:Pe?"local_project":Je?null:"local_project",connection:$,runtimeEvents:Bt,diff:Pe?Ce.diff:Je?null:V,fileRootPath:Pe?Ce.selection?.fileRootPath??null:Je?null:Bn,filesWithPreview:Pe,editorPreferences:c?.preferences.editor??null,loading:Pe?Ce.loading:Je?ae:L||vo,openFileRequest:Pe?Ce.openFileRequest:Us,sidebarFileBookmarks:Oe,sidebarFileSourceSessionId:m,onSetSidebarFileStatus:lt,readOnly:Pe,sideChatTabs:Re.map(y=>({id:y.id,title:y.title,running:y.running})),sourceSwitcher:Pe?null:Lr,tabRequest:it,viewState:ot,workspaceName:Pe?Ce.selection?.title??"Change":Je?ue??"Sandbox":ue,workspaceInitialized:Pe?!0:Je?!!Rt:!!he?.initialized,workspaceError:Pe?Ce.error:Je?null:he?.error??V?.error??null,expanded:ve,onResizeStart:ze,onRefresh:y=>{Pe?Ce.refresh(y):wt(y)},onToggleExpanded:nt,onOpenBrowser:Ge,onOpenBrowserUrl:js,onViewStateChange:Ie,onCloseSideChat:Ae,onOpenSideChat:a==="chat"?rs:void 0,onSelectSideChat:y=>{Ke(y),jr()},goalDetails:{active:de==="goal",createRuntime:be,goalRuntime:h,subagentRuntime:g},sandboxFileSource:Je?{sandboxId:Rt,emptyMessage:"No sandbox filesystem yet."}:null,trainingSummary:Pr}):null,yo=gs?n.jsx(op,{conversationId:Be,expanded:ve,onResizeStart:ze}):null,ko=xs?o.createElement(mp,{...i,key:i.aiThread?.conversationId,onResizeStart:ze}):null,So=bs?o.createElement(hp,{...i,key:i.agentConversation?.run.id,onResizeStart:ze}):null,Co=qn?n.jsx(lp,{panels:Re,runtimeEventStore:we,actionCatalog:fs,createImproveActions:X,contextCompaction:De.contextCompaction,steerActiveResponses:De.steerActiveResponses,busy:z,codexPermissionMode:M,codexReasoningEffort:F,openPondCommandAccessMode:q,connection:$,connectedAppMentions:E,mentionApps:C,codexPersonalSkills:c?.codexPersonalSkills??[],profileSkills:R,profileLibrary:c?.profileLibrary??{lastUsed:null,profiles:[]},extensionCatalog:c?.extensionCatalog??null,projectTarget:ge,providerSettings:c?.providers??null,accountBaseUrl:Qs,billingOrganizationSlug:u.organizationSlug,billingTeamId:u.teamId,showToast:ne,workspaceTarget:U,onAddChat:rs,onActivatePanel:Ke,onClosePanel:Ae,onCodexPermissionModeChange:ht,onCodexReasoningEffortChange:Fe,onOpenPondCommandAccessModeChange:An,onModelChange:Ee,onOpenAttachmentInSidebar:fa,onOpenFileInSidebar:da,onOpenProfileSettings:Os,onOpenSession:ut,onProviderChange:wr,onProviderSetupOpen:St,onPromptChange:rn,onProfileTargetChange:(y,_)=>{ds(_,y)},onScrollStateChange:Fs,onProjectTargetChange:Nn,onResolveApproval:pt,onResizeStart:ze,onSelectFiles:Pn,onShowBrowserPanel:Ge,onStop:Ds,onSubmit:an,onWorkspaceTargetChange:y=>{We(y)}}):null,wo=Vn?n.jsx(Jh,{expanded:ve,terminalOpen:G,sideChatAvailable:a==="chat"||a==="labs",onOpenBrowser:Ge,onOpenFiles:Pn,onOpenReview:st,onOpenSideChat:rs,onOpenTrainingDraft:vr,trainingDraftAvailable:!!m,onResizeStart:ze,onToggleExpanded:nt,onToggleTerminal:pe}):null,Mo=xn?n.jsx(Yh,{chatMessages:Mt,connection:$,contextWindowStatus:v,expanded:ve,runtimeEvents:Bt,sessionId:m,showToast:ne,onResizeStart:ze,onToggleExpanded:nt,onUseOutput:y=>Ln({id:Date.now(),file:y}),onHandoffOutput:async(y,_,se)=>{await Jt({target:y,sourceSessionId:m,output:_,prompt:ql(_,y)}),se&&Ln({id:Date.now(),file:se})},onReviseOutput:(y,_,se)=>{Ln({id:Date.now(),file:_}),p.set(`Create revision ${y.revision+1} of "${y.title}" from the attached revision ${y.revision}. Apply only this requested change:
18
+
19
+ ${se}`)},onAgentPackageInstalled:async()=>{$&&ft(await _e.bootstrap($))}}):null,No=pn?n.jsx(o.Suspense,{fallback:null,children:n.jsx(pp,{training:oe,sessionId:m,expanded:ve,onOpenTraining:()=>$e("labs"),onResizeStart:ze,onToggleExpanded:nt})}):null,Wn=So??ko??Co??(gn&&Ze?n.jsx(cp,{expanded:ve,skill:Ze,onClose:xt,onResizeStart:ze,onToggleExpanded:nt}):null)??(Or&&ie?n.jsx(ri,{connection:$,expanded:ve,selection:ie,onClose:xt,onResizeStart:ze,onToggleExpanded:nt}):null)??(mn&&Ve?n.jsx(ri,{connection:$,expanded:ve,selection:Ve,onClose:Rr,onResizeStart:ze,onToggleExpanded:nt}):null)??jo??yo??No??Mo??wo,zr=n.jsx(o.Suspense,{fallback:null,children:n.jsx(Xh,{open:G,connection:$,scope:yn,tabs:S,onTabsChange:Cr,cwd:O,appId:W,workspaceName:ue,queuedCommand:xe,onClose:Mr})});return n.jsxs("main",{className:`main-pane ${Et} ${G?"terminal-open":""} ${Hn?"diff-open":""} ${vs?"diff-expanded":""}`,children:[a==="team"||a==="community"?n.jsx(o.Suspense,{fallback:null,children:n.jsx(ep,{onSelect:$e,view:a})}):null,a==="chat"&&e&&$&&c?.account.activeProfile?n.jsx(Kh,{connection:$,presentation:e,composer:{contextWindowStatus:v,providerSettings:c.providers??null,provider:Y,model:Se,projectTarget:ge,workspaceTarget:U,codexPermissionMode:M,codexReasoningEffort:F,openPondCommandAccessMode:q,onProviderChange:rt,onProviderSetupOpen:St,onProjectTargetChange:Nn,onWorkspaceTargetChange:y=>{We(y)},onModelChange:$t,onCodexPermissionModeChange:ht,onCodexReasoningEffortChange:Fe,onOpenPondCommandAccessModeChange:An,showToast:ne},onOpenWork:y=>{if(!Te){ne("OpenPond account URL is unavailable for this Work task.","error");return}try{js(new URL(`/tasks/${encodeURIComponent(y)}`,Te).toString(),{newTab:!0})}catch{ne("OpenPond account URL is invalid for this Work task.","error")}}}):a==="apps"?n.jsx(o.Suspense,{fallback:null,children:n.jsx(tp,{account:c?.account??null,connection:$,defaultTeamId:c?.preferences.defaultTeamId??null,onToast:ne})}):a==="team"?n.jsxs(o.Suspense,{fallback:null,children:[i.teamId?n.jsx(up,{...i}):n.jsx(dp,{}),Hn?Wn:null]}):a==="community"?n.jsx(o.Suspense,{fallback:null,children:n.jsx(fp,{...l})}):a==="get-started"?n.jsx(o.Suspense,{fallback:null,children:n.jsx(np,{})}):a==="scheduled"?n.jsx(o.Suspense,{fallback:null,children:n.jsx(rp,{connection:$,selectedProfileKey:zn?JSON.stringify(zn):null,onOpenSession:ut,detailOpen:kr,detailExpanded:ve,onDetailOpenChange:Sr,onDetailResizeStart:ze,onToggleDetailExpanded:nt},dn)}):a==="outputs"?n.jsx(o.Suspense,{fallback:null,children:n.jsx(ap,{connection:$,onViewChat:ut})}):a==="projects"?n.jsx(o.Suspense,{fallback:null,children:n.jsx(ip,{accountBaseUrl:Te,connection:$,onNewCloudProject:kn,onNewLocalProject:Ps,onNewTask:Sn,onTogglePinned:_s,onUploadLocalProject:Cn,projects:je,taskCountByProjectId:Ts,teamName:Is},dn)}):a==="labs"?vs?n.jsx(o.Suspense,{fallback:null,children:Wn}):n.jsxs(n.Fragment,{children:[n.jsx(o.Suspense,{fallback:null,children:n.jsx(sp,{account:c?.account??null,closeDetailRequestId:j,closeDetailKind:w,onNewModel:(y,_,se)=>{Nt({id:Date.now(),objective:null,initialSessionIds:[],initialTasksetId:y,learnedPreferenceReward:_,initialModelId:se})},onUseAgent:Er,onCreateAgent:hs,onImproveAgent:Tr,onDetailOpenChange:yr,onEvaluationSidebarControl:zs,onSkillSelectionChange:Ar,onOpenRunConversation:Dt,onAnswerQuestion:es,onApplyCandidate:ts,onApprove:Rn,onCancel:En,candidateReview:{diff:Ce.diff,error:Ce.error,loading:Ce.loading},onCandidateReviewChange:ms,onOpenPullRequest:$n,onOpenCandidateFiles:Dn,onPause:ns,onReconcilePullRequest:tn,onRejectCandidate:In,onResume:ss,onRevise:nn,profileView:{payload:c,connection:$,onPayload:ft,onError:wn,onToast:ne,onSkillCommand:$r},training:{training:oe,sessions:et,localProjects:c?.localProjects??[],connection:$,defaultModel:{providerId:Y,modelId:Se},onError:wn,onToast:ne,onSettingsPreferences:y=>{c&&ft({...c,preferences:y.preferences})},onOpenTrainingSettings:Ue,onOpenProviderSettings:St,onOpenDatasetStorageSettings:Zt,onOpenChat:ut,onChatWithModel:Ft,onOpenTasksetFiles:Pn,launchRequest:k??me,onLaunchHandled:y=>{if(k?.id===y){A(y);return}Nt(_=>_?.id===y?null:_)},preferences:Ir,settingsPreferences:De,providerSettings:c?.providers??null,reasoningEffort:F,selectedTasksetId:Vt,onSelectedTasksetIdChange:qs,onSelectedTrainingJobIdChange:Vs,detailTasksetId:ct,onDetailTasksetIdChange:Lt}})}),zr,Hn?n.jsx(o.Suspense,{fallback:null,children:Wn}):null]}):vs?n.jsx(o.Suspense,{fallback:null,children:Wn}):P?n.jsxs(n.Fragment,{children:[n.jsxs("div",{className:`chat-column ${H?"has-approval":""}`,style:bn,children:[n.jsx(o.Suspense,{fallback:null,children:n.jsx(gp,{formalReviewTeamId:De.defaultTeamId??null,formalReviewActorId:c?.account.profile?.id??null,formalReviewScopeKey:dn,onFormalReviewOpen:()=>$e("labs"),accountBaseUrl:Qs,activeWorkspaceAppId:W,billingOrganizationSlug:u.organizationSlug,billingTeamId:u.teamId,connection:$,conversationKey:Be??"draft",creation:Ht,onOpenBrowserLink:js,onOpenAttachmentInSidebar:fa,onOpenFileInSidebar:da,onOpenProfileSettings:Os,onResolveUserQuestion:async(y,_)=>{const se=_.action==="answer"?_.text:"Dismiss this question";if(!await Ct([],null,se,{displayPrompt:se,turnMetadata:{userQuestionResolution:_}}))throw new Error("The question response could not be sent.")},onOpenSession:ut,onScroll:y=>go(y.currentTarget),rows:ho,sessionId:Be,turnRunning:B,userAttachmentDisplay:Y==="codex"?"compact":"full",threadRef:mo,workspaceRootPath:Js})}),n.jsxs("div",{className:`composer-stack dock ${H?"has-approval":""}`,ref:po,children:[Ht?n.jsx(o.Suspense,{fallback:null,children:n.jsx(xp,{compact:!0,creation:Ht,training:oe,onOpenTraining:()=>$e("labs")})}):null,Z,n.jsx(Ga,{approval:H,onResolve:pt}),bo&&!Ye?n.jsx(lm,{canGoNext:Xs.canGoNext,canGoPrevious:Xs.canGoPrevious,onJumpToLatest:xo,onNext:()=>{Xs.canGoNext&&ua("next")},onPrevious:()=>{Xs.canGoPrevious&&ua("previous")}}):null,n.jsx(Wa,{experience:s,readOnlyReason:typeof un?.metadata?.nativeReadOnlyReason=="string"?un.metadata.nativeReadOnlyReason:null,draftStore:p,attachmentRequest:is,mode:"dock",focusRequestId:N,mentionApps:At?C:[],connectedAppMentions:E,profileSkills:Y==="codex"?c?.codexPersonalSkills??[]:Fn,selectedMentionAppId:I,contextWindowStatus:v,goalRuntime:s!=="chat"?h:null,subagentRuntime:s!=="chat"?g:null,createImproveRuntime:At?be:null,busy:B,running:B,steerActiveResponses:De.steerActiveResponses,taskSessionId:vt,taskEvents:Bt,submissionScopeKey:T,getCurrentSubmissionScopeKey:jt,voiceInputChannelKey:`main-composer:${T}`,showProjectFooter:!1,connection:$,providerSettings:c?.providers??null,provider:Y,model:Se,projectTarget:ge,profileTarget:null,actionCatalog:fs,requestedAction:Xe,workspaceTarget:U,codexPermissionMode:M,codexReasoningEffort:F,openPondCommandAccessMode:q,onProviderChange:rt,onProviderSetupOpen:St,onProjectTargetChange:Nn,onProfileTargetChange:y=>{ds(y)},onWorkspaceTargetChange:y=>{We(y)},onModelChange:$t,onCodexPermissionModeChange:ht,onCodexReasoningEffortChange:Fe,onOpenPondCommandAccessModeChange:An,onMentionAppSelect:gt,onSaveTaskDraft:Tn,showToast:ne,onSubmit:Wt,onStop:sn})]})]}),zr,n.jsx(o.Suspense,{fallback:null,children:Wn})]}):n.jsxs(n.Fragment,{children:[n.jsxs("section",{className:"start-panel",children:[n.jsx(o.Suspense,{fallback:null,children:n.jsx(Zh,{value:e==="clean"?"ponder":s==="chat"?"chat":"work",allowPonder:!!c?.account.activeProfile,onChange:y=>{if(y==="ponder"){t?.("clean");return}t?.(null),r(y)}})}),n.jsxs("div",{className:"start-welcome",children:[n.jsx("h1",{children:br}),zt&&n.jsx(cm,{busy:ae,onSync:()=>{qe()}})]}),n.jsxs("div",{className:"composer-stack start",children:[Z,n.jsx(Ga,{approval:H,onResolve:pt}),n.jsx(Wa,{experience:s,draftStore:p,attachmentRequest:is,mode:"start",autoFocus:!0,focusRequestId:N,mentionApps:At?C:[],connectedAppMentions:E,profileSkills:Y==="codex"?c?.codexPersonalSkills??[]:Fn,selectedMentionAppId:I,contextWindowStatus:v,goalRuntime:s!=="chat"?h:null,subagentRuntime:s!=="chat"?g:null,createImproveRuntime:At?be:null,busy:B,running:B,steerActiveResponses:De.steerActiveResponses,taskSessionId:vt,taskEvents:Bt,submissionScopeKey:T,getCurrentSubmissionScopeKey:jt,voiceInputChannelKey:`main-composer:${T}`,connection:$,providerSettings:c?.providers??null,provider:Y,model:Se,showProjectFooter:s!=="chat",projectTarget:ge,profileTarget:null,actionCatalog:fs,requestedAction:Xe,workspaceTarget:U,codexPermissionMode:M,codexReasoningEffort:F,openPondCommandAccessMode:q,onProviderChange:rt,onProviderSetupOpen:St,onProjectTargetChange:Nn,onProfileTargetChange:y=>{ds(y)},onWorkspaceTargetChange:y=>{We(y)},onModelChange:$t,onCodexPermissionModeChange:ht,onCodexReasoningEffortChange:Fe,onOpenPondCommandAccessModeChange:An,onMentionAppSelect:gt,onSaveTaskDraft:Tn,showToast:ne,onSubmit:Wt,onStop:sn})]})]}),zr,n.jsx(o.Suspense,{fallback:null,children:Wn})]})]})}function vp(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 Tp=Object.freeze(Object.defineProperty({__proto__:null,MainPane:bp,shouldShowRightSidebarHomePanel:eo},Symbol.toStringTag,{value:"Module"}));export{Ga as A,mc as C,pc as F,hr as I,Gr as M,ka as P,Ac as R,Hh as T,uf as a,Mc as b,df as c,xc as d,vc as e,cu as f,Of as g,dm as h,Ip as i,Ki as j,cf as k,$p as l,xd as m,rc as n,Tp as o,ff as r,Ff as s,mu as u};