openpond 0.2.58 → 0.2.59

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 (290) hide show
  1. package/dist/app-server.d.ts +1 -1
  2. package/dist/app-server.js +1 -1
  3. package/dist/chunks/{actions-command-QU4H53OG.js → actions-command-JJ3CU7J6.js} +1 -1
  4. package/dist/chunks/{app-layer-NSTE5HIT.js → app-layer-KAUZAHGE.js} +1 -1
  5. package/dist/chunks/{app-server-connected-apps-JHGWLBXT.js → app-server-connected-apps-SXGZOUJJ.js} +1 -1
  6. package/dist/chunks/{app-server-evaluations-K52NAQLP.js → app-server-evaluations-N4OMTPCI.js} +1 -1
  7. package/dist/chunks/{app-server-harness-services-QMUOEYOA.js → app-server-harness-services-DDFUMNYC.js} +1 -1
  8. package/dist/chunks/app-server-runtime-SVB6L26M.js +2 -0
  9. package/dist/chunks/{apps-BKTOR4F7.js → apps-EZB56RHV.js} +1 -1
  10. package/dist/chunks/{chunk-SDXFLO7J.js → chunk-22VMH6JV.js} +1 -1
  11. package/dist/chunks/{chunk-FTEOCCPB.js → chunk-25JDHAZ5.js} +1 -1
  12. package/dist/chunks/{chunk-HDGTHRY7.js → chunk-2G4BEISF.js} +1 -1
  13. package/dist/chunks/{chunk-O72BSKSO.js → chunk-2L5XWJJ5.js} +1 -1
  14. package/dist/chunks/{chunk-QL4OIPEZ.js → chunk-2RNQQNB7.js} +2 -2
  15. package/dist/chunks/{chunk-O6ULLQJ6.js → chunk-2WKUBGIF.js} +1 -1
  16. package/dist/chunks/{chunk-F4KOGISR.js → chunk-37MWETFU.js} +1 -1
  17. package/dist/chunks/{chunk-D74JEERO.js → chunk-3CDEBKSU.js} +1 -1
  18. package/dist/chunks/{chunk-APB4O67E.js → chunk-4EDIRCD3.js} +1 -1
  19. package/dist/chunks/{chunk-JYKRR7E5.js → chunk-4GPXTISD.js} +1 -1
  20. package/dist/chunks/chunk-57TRXBLT.js +3 -0
  21. package/dist/chunks/{chunk-LQQNBVEB.js → chunk-76M2MEHV.js} +1 -1
  22. package/dist/chunks/{chunk-HCYX6RHP.js → chunk-776WNDV2.js} +1 -1
  23. package/dist/chunks/{chunk-RWWE5OXU.js → chunk-7AVNZF36.js} +1 -1
  24. package/dist/chunks/{chunk-65PL62KH.js → chunk-7K7O3CKY.js} +1 -1
  25. package/dist/chunks/chunk-7UH4YDA7.js +3 -0
  26. package/dist/chunks/{chunk-IIZ4CWBX.js → chunk-ABZ2ZOLU.js} +1 -1
  27. package/dist/chunks/{chunk-ZRDGQDZL.js → chunk-ANFDRKUU.js} +1 -1
  28. package/dist/chunks/{chunk-JUHZ5S3R.js → chunk-AQD7K4Z5.js} +1 -1
  29. package/dist/chunks/{chunk-4D7HWVWD.js → chunk-ARLOVWQ3.js} +1 -1
  30. package/dist/chunks/{chunk-7SC46OFC.js → chunk-ATAOHSFR.js} +1 -1
  31. package/dist/chunks/{chunk-TTVS6JMC.js → chunk-BE6SS65L.js} +2 -2
  32. package/dist/chunks/{chunk-Z54O534A.js → chunk-BGJYITVI.js} +1 -1
  33. package/dist/chunks/{chunk-BLXEAZCQ.js → chunk-BL3YH2QU.js} +1 -1
  34. package/dist/chunks/{chunk-2D4Y3HNW.js → chunk-BO5JZYWG.js} +1 -1
  35. package/dist/chunks/{chunk-ZGTOK7ZK.js → chunk-BQS7Z4AP.js} +1 -1
  36. package/dist/chunks/{chunk-NH6UUX5S.js → chunk-BRORSFJX.js} +3 -3
  37. package/dist/chunks/{chunk-HPBQ4VTW.js → chunk-BVQWVIGK.js} +1 -1
  38. package/dist/chunks/{chunk-SWUEFLOH.js → chunk-C37PUHA6.js} +1 -1
  39. package/dist/chunks/{chunk-3VUATFZD.js → chunk-CGWA54LE.js} +1 -1
  40. package/dist/chunks/{chunk-NC27T4AB.js → chunk-CKMSBAI2.js} +1 -1
  41. package/dist/chunks/{chunk-TJ6GVTYB.js → chunk-COHMDT7A.js} +7 -7
  42. package/dist/chunks/{chunk-JDEEWOD7.js → chunk-DPHAN6N3.js} +1 -1
  43. package/dist/chunks/{chunk-YOQRYNLP.js → chunk-DZUN5YWB.js} +1 -1
  44. package/dist/chunks/{chunk-ROGF26KV.js → chunk-E72UU4VX.js} +1 -1
  45. package/dist/chunks/{chunk-ABD5M2D2.js → chunk-EOBHQ3JT.js} +1 -1
  46. package/dist/chunks/chunk-EQOV34UH.js +2 -0
  47. package/dist/chunks/chunk-EUMXMT3S.js +2 -0
  48. package/dist/chunks/{chunk-773TH7FN.js → chunk-EWOSLZDX.js} +1 -1
  49. package/dist/chunks/{chunk-HIOKCIL7.js → chunk-FAYASU7Z.js} +1 -1
  50. package/dist/chunks/{chunk-EIRYMSEG.js → chunk-FKJHEZCW.js} +1 -1
  51. package/dist/chunks/{chunk-Q2QL6UWN.js → chunk-GL3NX3F3.js} +1 -1
  52. package/dist/chunks/{chunk-UKMA4R6X.js → chunk-GOPFFQZU.js} +1 -1
  53. package/dist/chunks/{chunk-RAXOSUSW.js → chunk-GUOLMLZN.js} +1 -1
  54. package/dist/chunks/{chunk-YNH3NMPF.js → chunk-GVZLGS2U.js} +1 -1
  55. package/dist/chunks/chunk-GYJQKCEO.js +5 -0
  56. package/dist/chunks/{chunk-XDQMGUWL.js → chunk-H7ATCPPB.js} +1 -1
  57. package/dist/chunks/{chunk-XX6SMFDY.js → chunk-IFDALGZE.js} +4 -4
  58. package/dist/chunks/{chunk-H4QHIHMK.js → chunk-IRV6GWGG.js} +3 -3
  59. package/dist/chunks/chunk-JFXINDOQ.js +3 -0
  60. package/dist/chunks/{chunk-PRGBLQVH.js → chunk-JMBQYBPI.js} +1 -1
  61. package/dist/chunks/{chunk-DBK66CJP.js → chunk-JQKSXCAJ.js} +1 -1
  62. package/dist/chunks/{chunk-DARVPBZ4.js → chunk-JUQMSHNR.js} +1 -1
  63. package/dist/chunks/{chunk-3Z47M3YY.js → chunk-K44RHALX.js} +1 -1
  64. package/dist/chunks/{chunk-4EPSHPZL.js → chunk-KO3HNMLJ.js} +1 -1
  65. package/dist/chunks/{chunk-4NESNOK5.js → chunk-LNCHFVHT.js} +1 -1
  66. package/dist/chunks/{chunk-7E6T7GP5.js → chunk-LPWBIGKW.js} +1 -1
  67. package/dist/chunks/{chunk-X2HIHF2I.js → chunk-MFMYWZK2.js} +1 -1
  68. package/dist/chunks/{chunk-A6USMRWK.js → chunk-MMQRHR3V.js} +1 -1
  69. package/dist/chunks/{chunk-I7AQMAQI.js → chunk-MNC4YUDI.js} +6 -6
  70. package/dist/chunks/{chunk-RNQF63ZR.js → chunk-N6ENLEMY.js} +2 -2
  71. package/dist/chunks/{chunk-JAJ46T5X.js → chunk-NTB2O4RP.js} +1 -1
  72. package/dist/chunks/{chunk-OQKJGTTO.js → chunk-O3RF72BT.js} +1 -1
  73. package/dist/chunks/{chunk-JE7RJZOA.js → chunk-O4VIXU7A.js} +1 -1
  74. package/dist/chunks/{chunk-5MCNZCVQ.js → chunk-OLDK2LKJ.js} +1 -1
  75. package/dist/chunks/{chunk-VVCKLCF3.js → chunk-OX3XZKGK.js} +2 -2
  76. package/dist/chunks/{chunk-SDAUS5PY.js → chunk-P2RSBSCT.js} +1 -1
  77. package/dist/chunks/{chunk-EKM2D7JU.js → chunk-PFSMXKTI.js} +1 -1
  78. package/dist/chunks/{chunk-FUOEIDMA.js → chunk-PH6IORGZ.js} +1 -1
  79. package/dist/chunks/{chunk-L3KCP52O.js → chunk-PQJTYOR2.js} +1 -1
  80. package/dist/chunks/{chunk-OLLLZVHF.js → chunk-PY6K2JRH.js} +1 -1
  81. package/dist/chunks/{chunk-EYPCBBMS.js → chunk-RBZH6A6M.js} +1 -1
  82. package/dist/chunks/{chunk-6QSSIT62.js → chunk-RZUEVS64.js} +1 -1
  83. package/dist/chunks/{chunk-Q5LEXXJG.js → chunk-SF5HJ7PL.js} +4 -4
  84. package/dist/chunks/{chunk-NHQ36THU.js → chunk-TG7P7BSV.js} +1 -1
  85. package/dist/chunks/{chunk-G3RXYI2L.js → chunk-TIHXUKFD.js} +1 -1
  86. package/dist/chunks/{chunk-QOGJAQDO.js → chunk-TKLBP3MM.js} +1 -1
  87. package/dist/chunks/{chunk-M4JWQSV7.js → chunk-U2MAPON2.js} +1 -1
  88. package/dist/chunks/chunk-U5FKRYJO.js +86 -0
  89. package/dist/chunks/{chunk-QNG27G3T.js → chunk-V34H7Y2T.js} +2 -2
  90. package/dist/chunks/chunk-VGRMAGOK.js +9 -0
  91. package/dist/chunks/chunk-VRODAXFS.js +145 -0
  92. package/dist/chunks/{chunk-EIEZHFIW.js → chunk-WC42WOLG.js} +1 -1
  93. package/dist/chunks/{chunk-OS3LO5J3.js → chunk-WRI4XKSK.js} +1 -1
  94. package/dist/chunks/{chunk-4EQA2M7K.js → chunk-XJZSIXEO.js} +2 -2
  95. package/dist/chunks/{chunk-25MBPJVY.js → chunk-XMKCCLGB.js} +1 -1
  96. package/dist/chunks/{chunk-HZEIRHEB.js → chunk-XMWXH7TS.js} +1 -1
  97. package/dist/chunks/chunk-YCQSVHCD.js +9 -0
  98. package/dist/chunks/{chunk-B7RFL4N2.js → chunk-YHHF4Q7Y.js} +1 -1
  99. package/dist/chunks/{chunk-DMVD2RFZ.js → chunk-ZAN4DYLH.js} +1 -1
  100. package/dist/chunks/{chunk-5IPFI25K.js → chunk-ZH3K7LKQ.js} +1 -1
  101. package/dist/chunks/cli-5DFVQL5Y.js +2 -0
  102. package/dist/chunks/{configuration-command-6C5UO7GE.js → configuration-command-JS6U3RMC.js} +1 -1
  103. package/dist/chunks/connected-app-executor-UBMGMV76.js +2 -0
  104. package/dist/chunks/{connected-evidence-GH2ATNEX.js → connected-evidence-NLAIEVQ3.js} +1 -1
  105. package/dist/chunks/connection-NZSD3U5O.js +2 -0
  106. package/dist/chunks/{continual-6CQAMTTR.js → continual-WFPIDWPH.js} +1 -1
  107. package/dist/chunks/core-commands-U4IBRRY5.js +2 -0
  108. package/dist/chunks/{datasets-7BNMVJOY.js → datasets-UX47DTTB.js} +1 -1
  109. package/dist/chunks/{desktop-test-3CUHVLXV.js → desktop-test-UUU7PD4P.js} +1 -1
  110. package/dist/chunks/{dist-VYC5VMQB.js → dist-OGLX76LL.js} +1 -1
  111. package/dist/chunks/{dist-ZVJPJLXR.js → dist-W5MJYSPF.js} +1 -1
  112. package/dist/chunks/{evaluation-coordination-XEF5L7KZ.js → evaluation-coordination-3YQN5JQW.js} +1 -1
  113. package/dist/chunks/{experiment-improvements-KRX2DP27.js → experiment-improvements-ZRVD2AGY.js} +1 -1
  114. package/dist/chunks/{experiments-DFGQYA4O.js → experiments-JEB5A2N5.js} +1 -1
  115. package/dist/chunks/{extension-XKXXOP5N.js → extension-JCUA3RWV.js} +1 -1
  116. package/dist/chunks/{help-S7THC6IE.js → help-KA4OINP5.js} +1 -1
  117. package/dist/chunks/host-profile-evaluation-tools-2URLU5SG.js +2 -0
  118. package/dist/chunks/host-profile-external-dataset-B2AQNSDR.js +2 -0
  119. package/dist/chunks/{hosted-app-server-composition-T5IWGOTA.js → hosted-app-server-composition-VJQ3FM4I.js} +1 -1
  120. package/dist/chunks/{hosted-experiment-improvement-HVMDGS75.js → hosted-experiment-improvement-42YWXB3P.js} +1 -1
  121. package/dist/chunks/hosted-harness-runtime-BM4WONJN.js +2 -0
  122. package/dist/chunks/{hosted-profile-candidate-EXNN6MVN.js → hosted-profile-candidate-HVVC43XQ.js} +1 -1
  123. package/dist/chunks/hosted-profile-compiler-RKDWHYK3.js +2 -0
  124. package/dist/chunks/{hosted-profile-evaluation-control-TJVER3NW.js → hosted-profile-evaluation-control-57V24UGU.js} +1 -1
  125. package/dist/chunks/{hosted-profile-evaluation-inspection-ZUANDYZ6.js → hosted-profile-evaluation-inspection-BUWLCKCD.js} +1 -1
  126. package/dist/chunks/{hosted-profile-evaluation-preparation-ORVZ6MBD.js → hosted-profile-evaluation-preparation-3XLRR6UH.js} +1 -1
  127. package/dist/chunks/{hosted-tasksets-ANAE2PIW.js → hosted-tasksets-THKM5QY5.js} +1 -1
  128. package/dist/chunks/{human-review-WR777ODH.js → human-review-CSYAW4PC.js} +1 -1
  129. package/dist/chunks/import-CBDJ4DME.js +3 -0
  130. package/dist/chunks/local-harness-improvement-runtime-3T6E7I5Q.js +2 -0
  131. package/dist/chunks/local-harness-taskset-review-LQPQBALH.js +2 -0
  132. package/dist/chunks/{opchat-T4QTNEIY.js → opchat-6ADSONAD.js} +1 -1
  133. package/dist/chunks/{organizations-75L5DZDV.js → organizations-GT24ZTCN.js} +1 -1
  134. package/dist/chunks/{profile-TFZMUEDR.js → profile-Y2MCSOUK.js} +1 -1
  135. package/dist/chunks/project-action-payload-GHSLE7K3.js +2 -0
  136. package/dist/chunks/{project-agent-6RRO233B.js → project-agent-YYSQIHVE.js} +1 -1
  137. package/dist/chunks/{published-experiment-source-HVP5IGRH.js → published-experiment-source-5TMGLKDM.js} +1 -1
  138. package/dist/chunks/refiner-profile-service-ZK7KAFP5.js +2 -0
  139. package/dist/chunks/{runtime-A7OZXM43.js → runtime-QFXCXSVB.js} +2 -2
  140. package/dist/chunks/{sandbox-command-IU5XFTJP.js → sandbox-command-U6346TVJ.js} +1 -1
  141. package/dist/chunks/{sandbox-template-C4V6T36U.js → sandbox-template-XWWPWWNR.js} +1 -1
  142. package/dist/chunks/saved-work-SWHZ4OLO.js +2 -0
  143. package/dist/chunks/{send-turn-XTAIS2JN.js → send-turn-SIXOZUVJ.js} +1 -1
  144. package/dist/chunks/{src-DZL5T2MT.js → src-6SHCCYEN.js} +1 -1
  145. package/dist/chunks/{src-R36AGJY7.js → src-EZAKCCUV.js} +103 -103
  146. package/dist/chunks/standalone-experiment-turn-owner-LIAQWTGI.js +2 -0
  147. package/dist/chunks/{store-continual-support-reviews-LJPNG4SP.js → store-continual-support-reviews-GDX6CSUU.js} +1 -1
  148. package/dist/chunks/{store-conversation-serving-KPC62UEY.js → store-conversation-serving-W55XMDH4.js} +1 -1
  149. package/dist/chunks/{store-create-improve-SW5FTBTL.js → store-create-improve-A7E7CUPZ.js} +1 -1
  150. package/dist/chunks/{store-datasets-WMA7AJKN.js → store-datasets-HKF3EO7B.js} +1 -1
  151. package/dist/chunks/{store-evaluation-results-ZO6R653G.js → store-evaluation-results-645RFBGR.js} +1 -1
  152. package/dist/chunks/{store-human-review-7QQ7ZQ6P.js → store-human-review-F5KESW52.js} +1 -1
  153. package/dist/chunks/{store-learned-preference-migration-validation-NADPXOTG.js → store-learned-preference-migration-validation-V27XD4I7.js} +1 -1
  154. package/dist/chunks/{store-local-experiments-SAULQSBN.js → store-local-experiments-HWQWNTIU.js} +1 -1
  155. package/dist/chunks/{store-model-batch-review-VKLDYGH3.js → store-model-batch-review-TOCSDVAP.js} +1 -1
  156. package/dist/chunks/{store-model-configuration-BYRJUR3C.js → store-model-configuration-6543ASY2.js} +1 -1
  157. package/dist/chunks/{store-sidebar-file-bookmarks-VB5GTLFY.js → store-sidebar-file-bookmarks-53B7QIGS.js} +1 -1
  158. package/dist/chunks/{store-sidebar-preferences-GWIOG2NH.js → store-sidebar-preferences-YXGEJVUO.js} +1 -1
  159. package/dist/chunks/{store-subagents-T7R2Z6TB.js → store-subagents-HRCAK7VZ.js} +1 -1
  160. package/dist/chunks/{store-task-inbox-QPE44OSS.js → store-task-inbox-WF74W4U2.js} +1 -1
  161. package/dist/chunks/{store-task-inventory-I3RDRI52.js → store-task-inventory-KHCTEZVK.js} +1 -1
  162. package/dist/chunks/{store-taskset-drafts-2IULRV2W.js → store-taskset-drafts-3ACG5AVX.js} +1 -1
  163. package/dist/chunks/{store-training-B2TW2MLA.js → store-training-R46WOGXB.js} +1 -1
  164. package/dist/chunks/{store-training-jobs-VBNG23RL.js → store-training-jobs-D4LECE7O.js} +1 -1
  165. package/dist/chunks/{store-training-models-OMV5FIC4.js → store-training-models-EQVNXOVB.js} +1 -1
  166. package/dist/chunks/{taskset-EQRFQBYM.js → taskset-NR2X2UOK.js} +1 -1
  167. package/dist/chunks/{taskset-packages-XC6HEE3K.js → taskset-packages-ONULEIVI.js} +1 -1
  168. package/dist/chunks/{teams-bot-EAPGPTHZ.js → teams-bot-CHUYMD6K.js} +1 -1
  169. package/dist/chunks/{training-UF6RPI4T.js → training-IDSGYGU2.js} +1 -1
  170. package/dist/chunks/{web-search-CZ3NCLPY.js → web-search-BPON7H5N.js} +1 -1
  171. package/dist/chunks/{workspaces-EKKE5NAC.js → workspaces-2TJRDM5K.js} +1 -1
  172. package/dist/cli.js +1 -1
  173. package/dist/index.js +1 -1
  174. package/dist/web/assets/App-pcwmC4IR.js +154 -0
  175. package/dist/web/assets/{AppDialog-t2Fx5tK3.js → AppDialog-CdHad7GT.js} +1 -1
  176. package/dist/web/assets/{AppTerminalPanel-Dj1Y32oI.js → AppTerminalPanel-CrmoOgd4.js} +2 -2
  177. package/dist/web/assets/AppsView-0P6cBsD4.js +1 -0
  178. package/dist/web/assets/{BrowserSidebar-jhWi4rVm.js → BrowserSidebar-Cb6edJw6.js} +1 -1
  179. package/dist/web/assets/{CartesianChart-C1DIx0Ia.js → CartesianChart-B2Sxi0lv.js} +1 -1
  180. package/dist/web/assets/{CollaborationTabs-Bdr-HmOL.js → CollaborationTabs-PP0AIXhb.js} +1 -1
  181. package/dist/web/assets/{CommandMenu-Ux2yOHAc.js → CommandMenu-GfQIMe6W.js} +1 -1
  182. package/dist/web/assets/{CommunityView-DPEeVKFn.js → CommunityView-V6KmMl5n.js} +1 -1
  183. package/dist/web/assets/ComposerCreateImproveStrip-oeVeyhPX.js +1 -0
  184. package/dist/web/assets/ConversationImportsSettings-CuQcvVgE.js +1 -0
  185. package/dist/web/assets/ConversationImportsSettings-PfUa8V7X.css +1 -0
  186. package/dist/web/assets/{GetStartedView-CFHP0AaI.js → GetStartedView-2oZ068h_.js} +1 -1
  187. package/dist/web/assets/{HostedModelLearningReview-D8BGTPVN.js → HostedModelLearningReview-DLzak_Vf.js} +1 -1
  188. package/dist/web/assets/{HostedModelLearningSettings-JS1S7vNO.js → HostedModelLearningSettings-Eca6Pd9R.js} +1 -1
  189. package/dist/web/assets/{LabModelVersionDetailPage-Dx5Q3xV2.js → LabModelVersionDetailPage-DsBblnMp.js} +1 -1
  190. package/dist/web/assets/LabSkillSidebar-DDknttrB.js +1 -0
  191. package/dist/web/assets/{LabsRoute-CyYF8-dw.js → LabsRoute-CgNiUHsy.js} +4 -4
  192. package/dist/web/assets/MainChatThread-yCVg99LU.js +2 -0
  193. package/dist/web/assets/MainPane-C86le7UF.js +65 -0
  194. package/dist/web/assets/{MarkdownText-BR4V6lNO.js → MarkdownText-BBVriBCj.js} +1 -1
  195. package/dist/web/assets/{NativeSkillSidebar-DU9IEgIO.js → NativeSkillSidebar-D2uVZkqh.js} +1 -1
  196. package/dist/web/assets/{NewExperienceSwitcher-mIy6FzCj.js → NewExperienceSwitcher-DuD6GScJ.js} +1 -1
  197. package/dist/web/assets/{NewProjectDialog-RfTZTHxl.js → NewProjectDialog-B6XZkJrU.js} +1 -1
  198. package/dist/web/assets/OutputsPage-PUlmcWjv.js +1 -0
  199. package/dist/web/assets/{ProjectsPage-CE6QUB-b.js → ProjectsPage-DWBRmej6.js} +1 -1
  200. package/dist/web/assets/RightChatPanelStack-HaCVep4t.js +1 -0
  201. package/dist/web/assets/{RightSidebarHomePanel-CK0rP3WT.js → RightSidebarHomePanel-BUtdPb2L.js} +1 -1
  202. package/dist/web/assets/{ScheduledWorkPage-vOrYv8pp.js → ScheduledWorkPage-Dg9GkGrT.js} +1 -1
  203. package/dist/web/assets/SettingsView-DjjnCnlb.css +1 -0
  204. package/dist/web/assets/{SettingsView-DCKVrfjj.js → SettingsView-DtldfnV-.js} +4 -4
  205. package/dist/web/assets/{TeamChatView-Bwrjr-vk.js → TeamChatView-C71JX4je.js} +2 -2
  206. package/dist/web/assets/{TerminalOverlay-DhPoKZAq.js → TerminalOverlay-B4F6Q36s.js} +1 -1
  207. package/dist/web/assets/TrainingCreationPanel-B9MxFzQx.js +1 -0
  208. package/dist/web/assets/{TrainingDraftPanel-C9cRX5qf.js → TrainingDraftPanel-7C48sHfC.js} +1 -1
  209. package/dist/web/assets/{UsageSettingsSection-CrdcSGeW.js → UsageSettingsSection-CC57FcUB.js} +1 -1
  210. package/dist/web/assets/{WorkSidebarPanel-DSSikNFQ.js → WorkSidebarPanel-Cto1usLM.js} +1 -1
  211. package/dist/web/assets/{WorkspaceDiffPanel-BAFo0CPN.js → WorkspaceDiffPanel-CL7wi3kp.js} +3 -3
  212. package/dist/web/assets/{WorkspaceEnvironmentMenu-BVHAhwnJ.js → WorkspaceEnvironmentMenu-zdzSDofs.js} +18 -18
  213. package/dist/web/assets/{WorkspaceGitDialogs-CwVoiDQ2.js → WorkspaceGitDialogs-CZSmjnrc.js} +1 -1
  214. package/dist/web/assets/{WorkspaceMonacoEditor-TxLyhzNp.js → WorkspaceMonacoEditor-TrUDJMKb.js} +3 -3
  215. package/dist/web/assets/agent-connections-4Dza2mDg.js +1 -0
  216. package/dist/web/assets/{arrow-up-right-C9aE8Mfz.js → arrow-up-right-xKb5kWQJ.js} +1 -1
  217. package/dist/web/assets/{chunk-P3BRSSRD-DUGfuKA8.js → chunk-P3BRSSRD-BsGTkgyC.js} +1 -1
  218. package/dist/web/assets/{clipboard-Dk158Qp4.js → clipboard-BgjV3aCx.js} +1 -1
  219. package/dist/web/assets/{cloud-upload-k9eqBsHr.js → cloud-upload-Bw9XUsKQ.js} +1 -1
  220. package/dist/web/assets/{cssMode-CO35ARZp.js → cssMode-DxsFJGb-.js} +1 -1
  221. package/dist/web/assets/{folder-open-sYgceW_f.js → folder-open-CbmUjIYS.js} +1 -1
  222. package/dist/web/assets/{folder-plus-CS0R49m9.js → folder-plus-slsst7Ct.js} +1 -1
  223. package/dist/web/assets/{git-commit-horizontal-DrGxH2h4.js → git-commit-horizontal-BIS-8MuS.js} +1 -1
  224. package/dist/web/assets/{htmlMode-REMmzdfq.js → htmlMode-BE4VOrZo.js} +1 -1
  225. package/dist/web/assets/{index-C8aCGagb.js → index-DEg0S7Qk.js} +2 -2
  226. package/dist/web/assets/index-erq7hUne.css +1 -0
  227. package/dist/web/assets/{info-DLdbiUrh.js → info-5bL9xSSf.js} +1 -1
  228. package/dist/web/assets/{jsonMode-KEdMfkIf.js → jsonMode-CYimnBhD.js} +1 -1
  229. package/dist/web/assets/{lspLanguageFeatures-5KZwEoxW.js → lspLanguageFeatures-CiFuk-P7.js} +1 -1
  230. package/dist/web/assets/{minimize-2-CqcI4zcM.js → minimize-2-BGVWKvTg.js} +1 -1
  231. package/dist/web/assets/{monaco.contribution-omszXBEj.js → monaco.contribution-BTY4dJ0f.js} +2 -2
  232. package/dist/web/assets/{monaco.contribution-BJGj65F9.js → monaco.contribution-C7sMrcos.js} +2 -2
  233. package/dist/web/assets/{monaco.contribution-DO10L0zW.js → monaco.contribution-DUE3CQph.js} +2 -2
  234. package/dist/web/assets/{monaco.contribution-Cly9Wt7L.js → monaco.contribution-DkLVGT8N.js} +2 -2
  235. package/dist/web/assets/{monitor-BFVCcbxp.js → monitor-B5hx_tzp.js} +1 -1
  236. package/dist/web/assets/{play-C469pVZq.js → play-pmSO95Qg.js} +1 -1
  237. package/dist/web/assets/{python-Dw0YcVy9.js → python-CiZvL3LX.js} +1 -1
  238. package/dist/web/assets/{save-CtSjPydi.js → save-CvYL4DUg.js} +1 -1
  239. package/dist/web/assets/{square-BuImvLhT.js → square-DT_uFOml.js} +1 -1
  240. package/dist/web/assets/{toggleHighContrast-DjCO9lIP.js → toggleHighContrast-CrE1_HY0.js} +1 -1
  241. package/dist/web/assets/{tsMode-BAOnxKd6.js → tsMode-CI_PdZmj.js} +1 -1
  242. package/dist/web/assets/{upload-2JkFZo3h.js → upload-PVi8vC3T.js} +1 -1
  243. package/dist/web/assets/{useLocalAgentSchedules-BNqAisfS.js → useLocalAgentSchedules-BHJNVf42.js} +1 -1
  244. package/dist/web/assets/useProviderSettings-CU3zXyie.js +5 -0
  245. package/dist/web/assets/{useProviderSettings-CmL_BaxP.css → useProviderSettings-Cktvzinz.css} +1 -1
  246. package/dist/web/assets/{useSessionTurnCache-BHU2-Jmz.js → useSessionTurnCache-BE7cipLX.js} +1 -1
  247. package/dist/web/assets/{wifi-off-CpOAH62M.js → wifi-off-7WiFuOhD.js} +1 -1
  248. package/dist/web/assets/{workers-0QvlA2T5.js → workers-Cv8r4CvM.js} +1 -1
  249. package/dist/web/assets/{yaml-BK3qxo7D.js → yaml-Bj7mdkV2.js} +1 -1
  250. package/dist/web/index.html +2 -2
  251. package/docs/command-reference.md +10 -3
  252. package/docs/conversation-imports.md +57 -0
  253. package/package.json +1 -1
  254. package/dist/chunks/app-server-runtime-ISGGLQHU.js +0 -2
  255. package/dist/chunks/chunk-6UDGARFC.js +0 -143
  256. package/dist/chunks/chunk-FV2R5RUN.js +0 -3
  257. package/dist/chunks/chunk-HY3GOBFJ.js +0 -58
  258. package/dist/chunks/chunk-I3HZKJB3.js +0 -2
  259. package/dist/chunks/chunk-I3VVWNUW.js +0 -5
  260. package/dist/chunks/chunk-KG325WTN.js +0 -2
  261. package/dist/chunks/chunk-VRIEKBBH.js +0 -9
  262. package/dist/chunks/chunk-WJ43MJ3F.js +0 -2
  263. package/dist/chunks/chunk-ZTNHW2K7.js +0 -10
  264. package/dist/chunks/cli-XZENDZ7Z.js +0 -2
  265. package/dist/chunks/connected-app-executor-LQNIU5NR.js +0 -2
  266. package/dist/chunks/connection-HTF6CC7M.js +0 -2
  267. package/dist/chunks/core-commands-A2DGGIPS.js +0 -2
  268. package/dist/chunks/host-profile-evaluation-tools-JOFBL5OF.js +0 -2
  269. package/dist/chunks/host-profile-external-dataset-K3ICDHIP.js +0 -2
  270. package/dist/chunks/hosted-harness-runtime-YCKB6NBI.js +0 -2
  271. package/dist/chunks/hosted-profile-compiler-IYLLHCRY.js +0 -2
  272. package/dist/chunks/import-MLZUHITH.js +0 -4
  273. package/dist/chunks/local-harness-improvement-runtime-QRFGPFRM.js +0 -2
  274. package/dist/chunks/local-harness-taskset-review-HR7KLY4B.js +0 -2
  275. package/dist/chunks/project-action-payload-JDS6OQAW.js +0 -2
  276. package/dist/chunks/refiner-profile-service-FDTQKY33.js +0 -2
  277. package/dist/chunks/saved-work-SHEEDZ6Z.js +0 -2
  278. package/dist/chunks/standalone-experiment-turn-owner-JCY5LL5R.js +0 -2
  279. package/dist/web/assets/App-s-CJswyt.js +0 -154
  280. package/dist/web/assets/AppsView-BYE5EBDJ.js +0 -1
  281. package/dist/web/assets/ComposerCreateImproveStrip-CEgh4OtN.js +0 -1
  282. package/dist/web/assets/LabSkillSidebar-BxffN-pN.js +0 -1
  283. package/dist/web/assets/MainChatThread-DZpcFRFl.js +0 -2
  284. package/dist/web/assets/MainPane-5DTtwVCk.js +0 -65
  285. package/dist/web/assets/OutputsPage-Cr1Spf7S.js +0 -1
  286. package/dist/web/assets/RightChatPanelStack-T6VRWuHo.js +0 -1
  287. package/dist/web/assets/SettingsView-Dulr_xlq.css +0 -1
  288. package/dist/web/assets/TrainingCreationPanel-BXHfohNm.js +0 -1
  289. package/dist/web/assets/index-3iPNbbER.css +0 -1
  290. package/dist/web/assets/useProviderSettings-C4L4wDoh.js +0 -5
@@ -0,0 +1,65 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/ComposerCreateImproveStrip-oeVeyhPX.js","assets/index-DEg0S7Qk.js","assets/index-erq7hUne.css","assets/App-pcwmC4IR.js","assets/App-CaRMZoxo.css","assets/MarkdownText-BBVriBCj.js","assets/play-pmSO95Qg.js","assets/WorkspaceDiffPanel-CL7wi3kp.js","assets/training-model-data-CKOkpBBL.js","assets/folder-open-CbmUjIYS.js","assets/info-5bL9xSSf.js","assets/minimize-2-BGVWKvTg.js","assets/save-CvYL4DUg.js","assets/clipboard-BgjV3aCx.js","assets/AppTerminalPanel-CrmoOgd4.js","assets/RightSidebarHomePanel-BUtdPb2L.js","assets/WorkSidebarPanel-Cto1usLM.js","assets/arrow-up-right-xKb5kWQJ.js","assets/cloud-upload-Bw9XUsKQ.js","assets/square-DT_uFOml.js","assets/WorkSidebarPanel-Bky_Rqcx.css","assets/NewExperienceSwitcher-DuD6GScJ.js","assets/CollaborationTabs-PP0AIXhb.js","assets/CollaborationTabs-BfVlyLmR.css","assets/AppsView-0P6cBsD4.js","assets/useProviderSettings-CU3zXyie.js","assets/AppDialog-CdHad7GT.js","assets/useProviderSettings-Cktvzinz.css","assets/agent-connections-4Dza2mDg.js","assets/AppsView-BonAGiS8.css","assets/GetStartedView-2oZ068h_.js","assets/GetStartedView-yVmnGZPw.css","assets/LabsRoute-CgNiUHsy.js","assets/chunk-P3BRSSRD-BsGTkgyC.js","assets/LabsRoute-ACN76d2j.css","assets/training-eg6uFi3M.css","assets/ScheduledWorkPage-Dg9GkGrT.js","assets/useLocalAgentSchedules-BHJNVf42.js","assets/OutputsPage-PUlmcWjv.js","assets/ProjectsPage-DWBRmej6.js","assets/ProjectsPage-kun3Ron2.css","assets/LabSkillSidebar-DDknttrB.js","assets/LabSkillSidebar-CVxtS9pd.css","assets/BrowserSidebar-Cb6edJw6.js","assets/BrowserSidebar-lNqqj4Ip.css","assets/RightChatPanelStack-HaCVep4t.js","assets/useSessionTurnCache-BE7cipLX.js","assets/NativeSkillSidebar-D2uVZkqh.js","assets/NativeSkillSidebar-T8KXjnUH.css","assets/TeamChatView-C71JX4je.js","assets/TeamChatView-dL6B0qib.css","assets/git-dialogs-C-F47S10.css","assets/CommunityView-V6KmMl5n.js","assets/wifi-off-7WiFuOhD.js","assets/CommunityView-CnZqWEjK.css","assets/TrainingDraftPanel-7C48sHfC.js","assets/MainChatThread-yCVg99LU.js","assets/TrainingCreationPanel-B9MxFzQx.js"])))=>i.map(i=>d[i]);
2
+ import{r as o,j as n,_ as Re}from"./index-DEg0S7Qk.js";import{o as mr,P as ml,b as or,s as Ze,_ as pl,n as Pi,a as gl,c as bl,u as xl,d as _a,e as He,H as ia,f as oa,g as Se,h as La,i as vl,j as yl,k as jl,l as wl,m as kl,p as lr,A as _i,q as xa,r as Nr,t as Li,C as qt,v as wr,w as pr,x as Qn,y as Ut,z as la,F as ca,B as Cl,D as Sl,E as ua,G as Rl,O as El,I as va,J as Es,K as Ml,L as pt,M as ya,N as Nl,Q as Al,R as Il,S as Tl,T as da,U as Oi,V as $l,W as qe,X as $s,Y as zi,Z as Pl,$ as Oa,a0 as za,a1 as ja,a2 as _l,a3 as Ll,a4 as Ol,a5 as tn,a6 as wa,a7 as Kn,a8 as Fa,a9 as Fi,aa as zl,ab as Fl,ac as Dl,ad as Bl,ae as Ul,af as ql,ag as Hl,ah as Vl,ai as Wl,aj as Gl,ak as Di,al as Kl,am as Ql,an as Xl,ao as Jl,ap as Yl,aq as Zl,ar as ec,as as tc,at as nn,au as fa,av as nc,aw as sc,ax as cr,ay as rc,az as Bi,aA as ac,aB as ic,aC as oc,aD as Ui,aE as lc,aF as cc,aG as uc,aH as dc,aI as fc,aJ as hc,aK as qi,aL as mc,aM as pc,aN as Da,aO as gc,aP as bc,aQ as xc,aR as Ba,aS as vc,aT as yc,aU as jc,aV as wc,aW as kc,aX as Cc,aY as Sc,aZ as Rc,a_ as Ec,a$ as Mc,b0 as Nc,b1 as Ac,b2 as Ic,b3 as Tc,b4 as $c,b5 as Pc}from"./App-pcwmC4IR.js";import{T as _c,W as gr,P as Lc,F as Oc,C as zc,A as Fc,r as ka,i as br,h as Dc,n as ha,a as Hi,b as Vi,c as Wi,d as Bc,e as Uc,M as Gi,I as Ki,u as Qi,f as qc,g as Hc,j as Vc}from"./MarkdownText-BBVriBCj.js";import{A as kr}from"./arrow-up-right-xKb5kWQJ.js";import{C as Wc}from"./cloud-upload-Bw9XUsKQ.js";import{S as Xi}from"./square-DT_uFOml.js";import{F as Ji}from"./folder-open-CbmUjIYS.js";import{P as Gc}from"./play-pmSO95Qg.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 Kr=mr({id:Ze().min(1),revision:Pi().int().positive(),scope:ml,title:Ze().min(1),state:pl(["waiting","ready","dispatching","admitted","completed","failed","cancelled","blocked","attention"]),reason:Ze().nullable(),cancellationRequested:or(),waitingForDesktop:or(),prerequisite:mr({sessionId:Ze().min(1).nullable(),title:Ze().min(1),turnId:Ze().nullable()}).strict(),successor:mr({operationId:Ze().min(1),sessionId:Ze().nullable(),providerId:Ze().min(1),modelId:Ze().nullable(),workspaceLabel:Ze().min(1)}).strict(),successCriteria:Ze().min(1),canEdit:or(),canCancel:or()}).strict(),Ua=mr({handoffId:Ze().min(1),revision:Pi().int().positive(),successor:xl([_a.options[0],_a.options[1]]),successCriteria:Ze().trim().min(1).max(4e3),targets:bl.array().max(100),nextCursor:gl.nullable()}).strict();const Kc=[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]],Qc=He("arrow-down",Kc);const Xc=[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]],Jc=He("arrow-up",Xc);const Yc=[["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"}]],qa=He("at-sign",Yc);const Zc=[["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"}]],eu=He("badge-check",Zc);const tu=[["path",{d:"M4.929 4.929 19.07 19.071",key:"196cmz"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],nu=He("ban",tu);const su=[["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"}]],ru=He("circle-dashed",su);const au=[["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"}]],iu=He("cloud-download",au);const ou=[["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"}]],lu=He("file-headphone",ou);const cu=[["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"}]],uu=He("file-spreadsheet",cu);const du=[["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"}]],fu=He("file-play",du);const hu=[["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"}]],Ar=He("image",hu);const mu=[["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"}]],Zi=He("lightbulb",mu);const pu=[["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"}]],gu=He("mic",pu);const bu=[["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"}]],Ha=He("paperclip",bu);const xu=[["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"}]],vu=He("presentation",xu);const yu=[["path",{d:"M20 18v-2a4 4 0 0 0-4-4H4",key:"5vmcpk"}],["path",{d:"m9 17-5-5 5-5",key:"nvlc11"}]],ju=He("reply",yu);const wu=[["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"}]],ku=He("circle-x",wu);function Cu(e){const t=Iu(e);if(t)return t;const s=Au();let r="";const a=[],i=[],l=[];for(const m of e){if(!r&&m.label&&(r=m.label),Vu(i,m.label),Wu(l,m),m.kind==="command"&&m.content){Tu(s,Pu(m.content));continue}$u(s,m)||Hu(a,m.label)}const c=[...Lu(s),...i,...l],u=s.runCount>0?Uu(s.runCount):"",d=Xu(a),v=(e.length===1&&e[0]?.kind==="command"&&e[0].content&&i.length===0&&l.length===0?eo(e[0].content,"completed"):null)||qu(c,u)||d||r||"Ran command";return{kind:Bu(s,u),text:v}}function eo(e,t="completed"){const s=ro(e);if(s.length===0)return null;const r=t==="running"||t==="pending";if(s.some(ao))return r?"Running shell command":"Ran shell command";const a=to(s);if(!a)return null;const[i,l]=a;if(i==="cat"){const u=sn(l);return u.length===0?r?"Reading standard input":"Read standard input":`${r?"Reading":"Read"} ${jn(u)}`}if(i==="sed")return Nu(Yu([i,...l]),r);if(i==="rg")return Zu([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 u=i==="ls"?sn(l):[];return u.length===0?r?"Listing files":"Listed files":`${r?"Listing":"Listed"} files in ${jn(u)}`}if(["head","tail","nl","wc","awk","jq"].includes(i)){const u=so(i,l);return u.length===0?r?`Running ${i}`:`Ran ${i}`:`${r?"Reading":"Read"} ${jn(u)}`}if(i==="apply_patch")return r?"Editing files":"Edited files";if(i==="write_stdin")return r?"Continuing command":"Continued command";if(i==="wait")return r?"Waiting for command":"Waited for command";if(i==="js")return r?"Running JavaScript":"Ran JavaScript";if(i==="exec_command")return r?"Running shell command":"Ran shell command";if(i==="read_file")return r?"Reading file":"Read file";if(i==="view_image")return r?"Viewing image":"Viewed image";if(i==="update_plan")return r?"Updating plan":"Updated plan";if(i==="tool_search")return r?"Searching tools":"Searched tools";if(i==="rm")return r?"Removing files":"Removed files";if(i==="mv")return r?"Moving files":"Moved files";if(i==="cp")return r?"Copying files":"Copied files";if(i==="mkdir")return r?"Creating directories":"Created directories";if(i==="touch")return r?"Creating files":"Created files";if(i==="git")return Su(l,r);if(Mu(i))return Ru(i,l,r);if(no(i))return Eu(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 Su(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 Ru(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 Eu(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 Mu(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 Nu(e,t){return!e||!t?e:e.startsWith("Read ")?`Reading ${e.slice(5)}`:e.startsWith("Run ")?`Running ${e.slice(4)}`:e}function Au(){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 Iu(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?Va(s,"received"):null,r>0?Va(r,"sent"):null].filter(i=>!!i);return{kind:"subagent",text:Cr(Ca(a))}}function Va(e,t){return e===1?`child message ${t}`:`${e} child messages ${t}`}function Tu(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 $u(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 Fu(e,t,r(s)),!0;if(s.includes("image"))return e.imageCount+=1,!0;function r(a){return a.includes("failed")?"failed":a.includes("blocked")?"blocked":a.includes("stale")?"stale":a.includes("needs revision")?"needs revision":a.includes("archived")?"archived":a.includes("accepted")?"accepted":a.includes("submitted")?"submitted":a.includes("completed")?"completed":"running"}return s.includes("web")?(e.webSearches+=1,!0):/\b(searching|searched)\b/.test(s)?(e.searchedCode+=1,!0):/\b(listing|listed)\b/.test(s)?(e.listedFiles+=1,!0):/\b(reading|read)\b/.test(s)?(e.readFileCount+=1,!0):/\b(editing|edited|writing|wrote|deleting|deleted|moving|moved|uploading|uploaded|creating|created)\b/.test(s)?(e.editCount+=1,!0):!1}function Pu(e){const t=ro(e);if(t.length===0||t.some(ao))return{countedAsRun:!0};const s=to(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(_u(r,a)||no(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=so(r,a);return i.length>0?{countedAsRun:!1,readFiles:i}:{countedAsRun:!0}}function to(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 _u(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 no(e){return["eslint","jest","playwright","prettier","tsc","vitest"].includes(e)}function so(e,t){if(e==="cat"||e==="nl"||e==="head"||e==="tail"||e==="wc")return Qr(sn(t));if(e==="sed"){const s=t.findIndex(r=>r!=="-n"&&!r.startsWith("--"));return Qr(s>=0?sn(t.slice(s+1)):[])}return e==="awk"||e==="jq"?Qr(sn(t.slice(1))):[]}function Qr(e){return e.filter(t=>!(!t||t==="."||t==="-"||/^\d+$/.test(t)))}function Lu(e){const t=[],s=zu(e);s&&t.push(s),e.editCount>0&&t.push("made edits");const r=e.readFiles.size||e.readFileCount;return r>0&&t.push(Ga("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(Ga("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(...Ou(e)),t}function Ou(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 zu(e){const t=Du(e);return t.failed>0?Dt(t.failed,"failed"):t.blocked>0?Dt(t.blocked,"blocked"):t.stale>0?Dt(t.stale,"stale"):t["needs revision"]>0?Dt(t["needs revision"],"needs revision"):t.submitted>0?Dt(t.submitted,"submitted"):t.running>0&&t.completed===0&&t.accepted===0?Dt(t.running,"running"):t.accepted>0?Dt(t.accepted,"accepted"):t.completed>0?Dt(t.completed,"completed"):t.archived>0?Dt(t.archived,"archived"):null}function Fu(e,t,s){const r=t.openSession?.sessionId??(t.content.trim()||t.id),a=e.subagentStatuses.get(r);(!a||Wa(s)>Wa(a))&&e.subagentStatuses.set(r,s)}function Du(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 Wa(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 Dt(e,t){return e===1?`subagent ${t}`:`${e} subagents ${t}`}function Bu(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 Uu(e){return e===1?"ran a command":`ran ${e} commands`}function Ga(e,t,s){return t===1?`${e} a ${s}`:`${e} ${t} ${s}s`}function qu(e,t){return e.length===0?t?Cr(t):"":Cr(Ca(t?[...e,t]:e))}function Hu(e,t){const s=t.trim();s&&(e.includes(s)||e.push(s))}function Vu(e,t){const s=Gu(t);!s||e.includes(s)||e.push(s)}function Wu(e,t){const s=t.receipt;if(!s)return;const r=`${s.status} receipt ${Qu(s.id)} ${Ku(s.totalUsd)}`;e.includes(r)||e.push(r)}function Gu(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 Ku(e){const t=e.trim();return t.startsWith("$")?t:`$${t}`}function Qu(e){const t=e.trim();return t.length<=14?t:`${t.slice(0,6)}...${t.slice(-4)}`}function Xu(e){return e.length===0?"":Cr(Ca(e.map(Ju)))}function Ju(e){return e&&`${e[0].toLowerCase()}${e.slice(1)}`}function Ca(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 Cr(e){return e&&`${e[0].toUpperCase()}${e.slice(1)}`}function Yu(e){const t=e.findIndex((i,l)=>l>0&&i!=="-n"&&!i.startsWith("--")),s=t>=0?e[t]??"":"",r=t>=0?sn(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 ${jn(r)}`:`Read ${c}`}return r.length>0?`Read ${jn(r)} with sed`:"Run sed"}function Zu(e,t=!1){const s=e.slice(1);if(s.includes("--files")){const l=sn(s.filter(c=>c!=="--files"));return l.length>0?`${t?"Listing":"Listed"} files matching ${jn(l)}`:t?"Listing files":"Listed files"}const r=sn(s),a=r[0],i=r.slice(1);return a?i.length>0?`${t?"Searching":"Searched"} for ${Ka(a)} in ${jn(i)}`:`${t?"Searching":"Searched"} for ${Ka(a)}`:t?"Searching files":"Searched files"}function ro(e){return(e.match(/"([^"\\]|\\.)*"|'[^']*'|[^\s]+/g)??[]).map(s=>ed(s)).filter(Boolean)}function ed(e){return e.startsWith("'")&&e.endsWith("'")||e.startsWith('"')&&e.endsWith('"')?e.slice(1,-1):e}function ao(e){return["|","&&","||",";",">",">>","<","(",")"].includes(e)}function sn(e){const t=[];for(let s=0;s<e.length;s+=1){const r=e[s];if(!r.startsWith("-")){t.push(r);continue}td(r)&&s+1<e.length&&(s+=1)}return t}function td(e){return["-e","-f","-g","--glob","--type","-t","--context","-C","-A","-B","-m","-n","-c"].includes(e)}function jn(e){return e.length===1?e[0]:e.length===2?`${e[0]} and ${e[1]}`:`${e[0]} and ${e.length-1} more`}function Ka(e){return`"${e}"`}const io=o.createContext(null),Qa="default-src 'none'; script-src 'unsafe-inline'; style-src 'unsafe-inline'; img-src data:; font-src data:; connect-src 'none'; frame-src 'none'; child-src 'none'; worker-src 'none'; object-src 'none'; base-uri 'none'; form-action 'none'",ks=e=>JSON.stringify(e).replace(/</g,"\\u003c").replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029"),Xa=e=>e.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;");function nd(e,t,s=ia){const r=`(() => {
3
+ const style = document.getElementById('openpond-theme');
4
+ const keys = ${ks(Object.keys(ia))};
5
+ function theme(values) { if (!values || typeof values !== 'object') return;
6
+ style.textContent = ':root{' + keys.map(k => k+':'+String(values[k]||'').replace(/[;{}<>]/g,'')+';').join('') + '}'; }
7
+ theme(${ks(s)});
8
+ addEventListener('message', e => { if(e.source === parent && e.data?.type === 'openpond-theme') theme(e.data.theme); });
9
+ const send = data => parent.postMessage({ ...data, identity: ${ks(t)} }, '*');
10
+ let interactionPending=false;
11
+ for(const type of ['wheel','touchmove','pointerdown','keydown']) addEventListener(type,e=>{
12
+ if(!e.isTrusted || interactionPending)return; interactionPending=true;
13
+ requestAnimationFrame(()=>{interactionPending=false;send({type:'openpond-interaction'});});
14
+ },{passive:true});
15
+ let queued = false, previous = 0, loaded = false, reportedReady = false;
16
+ // Initial sizing must work when the frame top is clipped: Chromium may
17
+ // suspend animation frames there before its child has expanded.
18
+ function measure() { if(queued)return; queued=true; queueMicrotask(() => { queued=false;
19
+ const body = document.body; if(!body)return;
20
+ const height = Math.max(80, Math.ceil(Math.max(body.getBoundingClientRect().height, body.scrollHeight)));
21
+ if(height!==previous || (loaded && !reportedReady)) { previous=height; reportedReady=loaded; send({type:'openpond-size',height,ready:loaded}); }
22
+ }); }
23
+ const observer = new ResizeObserver(measure);
24
+ addEventListener('DOMContentLoaded', () => { observer.observe(document.body); measure(); });
25
+ addEventListener('load', () => { void document.fonts.ready.then(() => { loaded=true; measure(); }); });
26
+ let count=0;
27
+ function log(level,args){ if(count++<40)send({type:'openpond-console',level,text:args.map(v=>{try{return typeof v==='string'?v:JSON.stringify(v)}catch{return String(v)}}).join(' ').slice(0,2000)}); }
28
+ for(const level of ['log','warn','error']) { const original=console[level]; console[level]=(...args)=>{log(level,args);original.apply(console,args)}; }
29
+ addEventListener('error', e => log('error',[e.message]));
30
+ addEventListener('unhandledrejection', e => log('error',[String(e.reason)]));
31
+ addEventListener('securitypolicyviolation', e => log('error',['Blocked resource: '+e.violatedDirective+' ('+e.blockedURI+')']));
32
+ // Links are informational inside a self-contained visual, never navigation.
33
+ document.addEventListener('click', e => { if(e.composedPath().some(n=>n?.tagName==='A'))e.preventDefault(); }, true);
34
+ })();`,a=`<!doctype html><html><head><meta charset="utf-8"><meta http-equiv="Content-Security-Policy" content="${Xa(Qa)}"><meta name="viewport" content="width=device-width,initial-scale=1"><style id="openpond-theme"></style><style>html,body{margin:0;background:var(--bg);color:var(--text);font:14px/1.5 var(--font-web)}body{display:flow-root;overflow-wrap:anywhere}*{box-sizing:border-box}img,svg,canvas{max-width:100%}button,input,select{font:inherit}button{cursor:pointer}html{scrollbar-width:none}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}</style><script>${r}<\/script></head><body>${e}</body></html>`;return`<!doctype html><html><head><meta charset="utf-8"><meta http-equiv="Content-Security-Policy" content="${Xa(Qa)}"><meta name="viewport" content="width=device-width,initial-scale=1"><style>html,body{margin:0;background:transparent}iframe{display:block;border:0;width:100%;height:80px;color-scheme:dark}</style></head><body><iframe title="Interactive visual" sandbox="allow-scripts" referrerpolicy="no-referrer" allow="camera 'none'; microphone 'none'; geolocation 'none'; clipboard-read 'none'; clipboard-write 'none'"></iframe><script>(()=>{
35
+ const frame=document.querySelector('iframe'); const identity=${ks(t)};
36
+ const state=window.__openpondVisual={height:80,console:[],ready:false};
37
+ addEventListener('message', e=>{
38
+ const d=e.data;if(!d||typeof d!=='object')return;
39
+ if(e.source===parent && parent!==window && d.type==='openpond-theme' && d.identity===identity){frame.contentWindow.postMessage({type:'openpond-theme',theme:d.theme},'*');return;}
40
+ if(e.source!==frame.contentWindow || d.identity!==identity)return;
41
+ if(d.type==='openpond-interaction' && parent!==window)parent.postMessage({type:'openpond-visual-interaction',identity},'*');
42
+ if(d.type==='openpond-console' && state.console.length<40 && ['log','warn','error'].includes(d.level) && typeof d.text==='string')state.console.push({level:d.level,text:d.text.slice(0,2000)});
43
+ if(d.type==='openpond-size' && Number.isFinite(d.height)){
44
+ const height=Math.max(80,Math.min(${oa},Math.ceil(d.height)));state.height=height;if(d.ready===true)state.ready=true;
45
+ frame.style.height=state.height+'px';if(parent!==window)parent.postMessage({type:'openpond-visual-size',identity,height:state.height,ready:state.ready},'*');
46
+ }
47
+ });
48
+ frame.srcdoc=${ks(a)};
49
+ })();<\/script></body></html>`}function Ja(){const e=getComputedStyle(document.querySelector(".app-shell")??document.documentElement);return Object.fromEntries(Object.entries(ia).map(([t,s])=>[t,e.getPropertyValue(t).trim()||s]))}function oo({visual:e,connection:t,expanded:s=!1}){const r=o.useContext(io),a=o.useRef(null),i=o.useRef(null),[l,c]=o.useState(null),[u,d]=o.useState(null),[h,v]=o.useState(null),[m,p]=o.useState(0),[g,b]=o.useState(s),[w,x]=o.useState(s),[E,C]=o.useState(!1),[A,R]=o.useState(!1),[M,k]=o.useState(e.heights[0]?.height??320),$=`${e.publicationId}:${s?"expanded":"inline"}:${m}`,O=`/v1/sessions/${encodeURIComponent(e.sessionId)}/visuals/${e.publicationId}`;o.useEffect(()=>{const F=a.current;if(!F||s)return;const H=new IntersectionObserver(([V])=>{const ce=!!V?.isIntersecting||document.activeElement===i.current;b(ce),ce||R(!1),ce&&x(!0)},{rootMargin:"160px"});return H.observe(F),()=>H.disconnect()},[s]),o.useEffect(()=>{if(!t||!w)return;const F=new AbortController;let H=null;return c(null),v(null),d(null),Promise.all([Se(t,`${O}/document`,{signal:F.signal}),fetch(`${t.serverUrl}${O}/preview`,{headers:{Authorization:`Bearer ${t.token}`},signal:F.signal}).then(V=>{if(!V.ok)throw new Error("Preview unavailable");return V.blob()})]).then(([V,ce])=>{F.signal.aborted||(c(V.html),H=URL.createObjectURL(ce),d(H))}).catch(V=>{F.signal.aborted||v(V instanceof Error?V.message:"Visual unavailable")}),()=>{F.abort(),H&&URL.revokeObjectURL(H)}},[t,O,m,w]);const U=o.useMemo(()=>l===null?void 0:nd(l,$,Ja()),[l,$]);o.useEffect(()=>{if(R(!1),!U||!(g||s)||E)return;const F=setTimeout(()=>v("The visual did not finish loading."),8e3),H=fe=>{const q=fe.data;if(!(fe.source!==i.current?.contentWindow||q?.identity!==$)){if(q.type==="openpond-visual-interaction"){a.current?.dispatchEvent(new Event("openpond-visual-interaction",{bubbles:!0}));return}q.type!=="openpond-visual-size"||!Number.isFinite(q.height)||(q.ready===!0&&(clearTimeout(F),R(!0)),k(Math.max(80,Math.min(oa,Math.ceil(q.height)))))}},V=()=>i.current?.contentWindow?.postMessage({type:"openpond-theme",identity:$,theme:Ja()},"*");window.addEventListener("message",H);const ce=new MutationObserver(V),ge=[document.documentElement,document.querySelector(".app-shell")].filter(fe=>fe!==null);for(const fe of ge)ce.observe(fe,{attributes:!0,attributeFilter:["class","style","data-theme"]});const ae=matchMedia("(prefers-color-scheme: dark)");return ae.addEventListener("change",V),()=>{clearTimeout(F),ce.disconnect(),window.removeEventListener("message",H),ae.removeEventListener("change",V)}},[$,U,s,E,g]);const Q=()=>{if(l===null)return;const F=URL.createObjectURL(new Blob([l],{type:"text/html;charset=utf-8"})),H=document.createElement("a");H.href=F,H.download=`${e.output.title}.html`,H.click(),setTimeout(()=>URL.revokeObjectURL(F),1e3)};return n.jsxs("div",{className:"html-visual",ref:a,"data-visual-id":e.visualId,"data-publication-id":e.publicationId,children:[n.jsxs("div",{className:"html-visual-toolbar",children:[n.jsxs("span",{children:[e.output.title,e.output.revision>1?` · Revision ${e.output.revision}`:""]}),n.jsx("button",{type:"button",disabled:l===null,onClick:()=>C(F=>!F),"aria-pressed":E,children:E?"Visual":"Source"}),n.jsx("button",{type:"button",disabled:l===null,onClick:Q,children:"Download"}),!s&&r?n.jsx("button",{type:"button",onClick:()=>r(e),children:"Expand"}):null]}),E?n.jsx("pre",{className:"html-visual-source",tabIndex:0,children:l}):n.jsx("div",{className:"html-visual-content",style:{minHeight:M},children:t?h?n.jsxs("p",{className:"html-visual-status",role:"status",children:[h," ",n.jsx("button",{type:"button",onClick:()=>p(F=>F+1),children:"Retry"})]}):n.jsxs(n.Fragment,{children:[U&&(g||s)?n.jsx("iframe",{ref:i,title:e.output.title,sandbox:"allow-scripts",referrerPolicy:"no-referrer",allow:"camera 'none'; microphone 'none'; geolocation 'none'; clipboard-read 'none'; clipboard-write 'none'",srcDoc:U,style:{height:M,opacity:A?1:0}}):null,A?null:n.jsx("div",{className:"html-visual-placeholder",children:u?n.jsx("button",{className:"html-visual-preview",type:"button",onClick:()=>b(!0),"aria-label":`Activate ${e.output.title}`,children:n.jsx("img",{src:u,alt:`Saved preview of ${e.output.title}`,style:{maxHeight:M}})}):n.jsx("p",{className:"html-visual-status",role:"status",children:"Loading visual…"})})]}):n.jsx("p",{className:"html-visual-status",children:"Connect to view this visual."})}),M===oa&&!E?n.jsx("p",{className:"html-visual-status",children:"This visual reaches the height limit. Scroll inside it to see more."}):null]})}function sd({visual:e,connection:t,expanded:s,onResizeStart:r,onClose:a,onToggleExpanded:i}){return n.jsxs("aside",{className:`workspace-diff-panel html-visual-panel ${s?"expanded":""}`,"aria-label":e.output.title,children:[s?null:n.jsx("div",{className:"workspace-diff-resize-handle",role:"separator","aria-orientation":"vertical","aria-label":"Resize visual panel",onPointerDown:r}),n.jsxs("div",{className:"html-visual-toolbar",children:[n.jsx("strong",{children:"Visual"}),n.jsx("button",{type:"button",onClick:i,children:s?"Restore panel":"Fill view"}),n.jsx("button",{type:"button",onClick:a,children:"Close"})]}),n.jsx("div",{className:"html-visual-panel-body",children:n.jsx(oo,{visual:e,connection:t,expanded:!0},e.publicationId)})]})}const Ya=Object.freeze({events:[],messages:[]});class rd{projection=Ya;project(t){if(t===this.projection.events)return this.projection.messages;if(!od(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=ad(this.projection.messages,s);if(r)return this.projection={events:t,messages:r},r;const a=id(t,this.projection.events.length);if(!a)return this.replace(t);const i=t.slice(a.eventIndex),l=new Set(i.flatMap(d=>d.turnId?[d.turnId]:[])),u=[...this.projection.messages.filter(d=>!d.turnId||!l.has(d.turnId)),...La(i)];return this.projection={events:t,messages:u},u}reset(){this.projection=Ya}snapshot(){return this.projection}replace(t){const s=La(t);return this.projection={events:t,messages:s},s}}function ad(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(d=>d.name!=="assistant.delta"&&d.name!=="assistant.reasoning.delta"||typeof vl(d.data)?.nativeMessageId=="string"||d.turnId!==s.turnId||!d.output))return null;let r=s.content,a=s.reasoningContent,i=s.timestamp,l=!1,c=!1;for(const d of t)d.name==="assistant.delta"?(r=`${r??""}${d.output}`,l=!0):(a=`${a??""}${d.output}`,c=!0),i=d.timestamp;const u={...s,...l?{content:r}:{},...c?{reasoningContent:a}:{},timestamp:i};return[...e.slice(0,-1),u]}function id(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 od(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 ld(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 cd(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"?yl(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 ud(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 Ir(e){return`$${e.name}`}function dd(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)?" ":"",u=l&&/^\s/.test(l)?"":" ",d=`${c}${Ir(s)}${u}`;return{cursor:i.length+d.length-(l?u.length:0),value:`${i}${d}${l}`}}function xr(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 lo(e,t,s){const r=t.trim().replace(/\s+/g," "),a=fd(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)?" ":"",u=l&&!/^\s/.test(l)?" ":"",d=`${c}${r}${u}`;return{value:`${i}${d}${l}`,cursorIndex:i.length+c.length+r.length+u.length}}function fd(e,t){return Number.isFinite(e)?Math.max(0,Math.min(t,Math.round(e))):t}async function hd({appendToEnd:e=!1,currentScopeKey:t,cursorIndex:s,originScopeKey:r,prompt:a,setOriginDraft:i,submitFromOrigin:l,transcript:c}){const u=lo(a,c,e?a.length:s);return i(u.value),t===r?"drafted":await l(u.value)?(i(""),"submitted"):"retained"}const Xn=new Map,vr=new Map,yr=new Map;function Za(e){for(const t of vr.get(e)??[])t()}function md(e){return Xn.has(e)}function pd(e,t){const s=vr.get(e)??new Set;return s.add(t),vr.set(e,s),()=>{s.delete(t),s.size===0&&vr.delete(e)}}function co(e){Xn.get(e)?.controller.abort()}function gd(e,t){const s=yr.get(e)??new Set;return s.add(t),yr.set(e,s),()=>{s.delete(t),s.size===0&&yr.delete(e)}}function bd(e){const t=Xn.get(e);if(t)return t.submitRequested=!0,!0;for(const s of yr.get(e)??[])if(s())return!0;return!1}function xd(e,t,s={}){co(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),Za(e))}),Xn.set(e,a),Za(e),a.promise}const vd=new Set(["task.inbox","task.input","task.wait","turn.started","turn.completed","turn.failed","turn.interrupted","approval.requested","approval.resolved"]);function ei(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 yd(e,t,s){const r=jl(),a=wl(e),i=o.useMemo(()=>["task-inbox",a,t],[a,t]),l=!!(e&&t),c=kl({queryKey:i,enabled:l,staleTime:0,refetchOnWindowFocus:!0,refetchOnReconnect:!0,queryFn:()=>lr.taskInbox(e,t)}),[u,d]=o.useState(null),[h,v]=o.useState(null),m=`${a}:${t}`;let p;for(let x=s.length-1;x>=0;x--){const E=s[x];if(E.sessionId===t&&vd.has(E.name)){p=E.id;break}}const g=o.useCallback(async()=>{l&&await r.invalidateQueries({queryKey:i,exact:!0})},[l,r,i]);o.useEffect(()=>{g()},[g,p]),o.useEffect(()=>{const x=()=>{g()};return window.addEventListener("openpond-runtime-connected",x),()=>window.removeEventListener("openpond-runtime-connected",x)},[g]);async function b(x,E){if(!l)return!1;d({scope:m,id:x}),v(null);try{const C=await E();return await r.cancelQueries({queryKey:i,exact:!0}),r.setQueryData(i,A=>A&&{...A,inputs:[...A.inputs.filter(R=>R.id!==C.id),C].sort((R,M)=>R.sequence-M.sequence)}),g(),!0}catch(C){return v({scope:m,message:C instanceof Error?C.message:String(C)}),g(),!1}finally{d(C=>C?.scope===m&&C.id===x?null:C)}}async function w(x,E,C){if(!e||!t)return!1;const A=`openpond:task-input:${e.serverUrl}:${t}`,R=ei(A),M=R?.body===E&&R.kind===x,k=M?R:{body:E,kind:x,request:C,key:crypto.randomUUID(),turnId:x==="steer"?c.data?.activeTurnId??null:null};if(x==="steer"&&(!k.turnId||!M&&!c.data?.acceptingInput))return v({scope:m,message:"This turn is no longer accepting steering. Your text is still in the composer; send it as a follow-up or queue it."}),g(),!1;try{sessionStorage.setItem(A,JSON.stringify(k))}catch{}const $=await b(k.key,async()=>{let O;try{O=await(x==="steer"?lr.steerTurn(e,t,{prompt:E,expectedTurnId:k.turnId,idempotencyKey:k.key}):lr.queueTaskInput(e,t,k.request,k.key))}catch(U){if(U instanceof _i&&U.status>=400&&U.status<500)try{sessionStorage.removeItem(A)}catch{}throw U}if(O.state==="rejected"||O.state==="cancelled"){try{sessionStorage.removeItem(A)}catch{}throw new Error(O.error??"This input was cancelled. Review your text before sending again.")}return O});if($)try{ei(A)?.key===k.key&&sessionStorage.removeItem(A)}catch{}return $}return{enabled:l,snapshot:c.data??null,busyId:u?.scope===m?u.id:null,error:h?.scope===m?h.message:c.error?.message??null,steer:x=>w("steer",x),queue:x=>w("queued",x.prompt,x),mutate:(x,E)=>b(x.id,()=>lr.updateTaskInput(e,t,x.id,E)),refresh:g}}function jd(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?crypto.randomUUID():`steer-${Date.now().toString(36)}-${Math.random().toString(36).slice(2,9)}`}function Xr(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 uo(e,t={}){const s=t.now??new Date().toISOString();return{createdAt:s,id:t.id??jd(),prompt:e,updatedAt:s}}function fo(e,t){return e.filter(s=>s.id!==t)}function wd(e,t,s){const r=s?.trim();return e.flatMap(a=>a.id!==t?[a]:r?[uo(r)]:[])}function kd(e,t,s){return s?fo(e,t):e}function ma(e,t,s=[]){return e[t]??s}function Cd(e,t,s,r=[]){const a=ma(e,t,r),i=s(a);return Object.is(a,i)?e:{...e,[t]:i}}function ho({prompt:e,sending:t=!1,disabled:s=!1,actionLabel:r="Steer",actionDisabledReason:a,onSend:i,onDelete:l,onEdit:c}){return n.jsxs("div",{className:`composer-steer-row ${t?"sending":""}`,children:[n.jsx("span",{className:"composer-steer-row-icon","aria-hidden":"true",children:n.jsx(ju,{size:13})}),n.jsx("span",{className:"composer-steer-row-text",title:e,children:Xr(e)}),n.jsxs("button",{type:"button",className:"composer-steer-row-action primary",disabled:s||t||!!a,title:a,"aria-label":`${r}: ${Xr(e,60)}${a?`. ${a}`:""}`,onClick:i,children:[n.jsx(kr,{size:12}),n.jsx("span",{children:t?"Sending":r})]}),n.jsx("button",{type:"button",className:"composer-steer-row-icon-button",disabled:s||t,"data-tooltip":"Delete queued message","aria-label":"Delete queued message",onClick:l,children:n.jsx(_c,{size:13})}),n.jsx("button",{type:"button",className:"composer-steer-row-action",disabled:s||t,"aria-label":`Edit: ${Xr(e,60)}`,onClick:c,children:n.jsx("span",{children:"Edit"})})]})}function Sd({inbox:e,onRestore:t}){const s=e.snapshot,r=s?.inputs.filter(a=>a.senderKind==="user"&&a.kind==="queued"&&a.state==="pending")??[];return!r.length&&!e.error?null:n.jsxs(n.Fragment,{children:[e.error&&n.jsx("p",{className:"composer-notice warning",role:"alert",children:e.error}),r.length>0&&n.jsx("div",{className:"composer-steer-stack","aria-label":"Queued messages",children:r.map(a=>{const i=s?.activeTurnId,l=!!a.turnId,c=l?"Starting":i?"Steer":"Resume",u=l?"This message is starting its turn.":i&&!s?.acceptingInput?"This turn is no longer accepting steering. The message stays queued for the next turn.":void 0;return n.jsx(ho,{prompt:a.body,disabled:!!e.busyId||l,actionLabel:c,actionDisabledReason:u,onSend:()=>{e.mutate(a,i?{action:"steer",expectedRevision:a.revision,expectedTurnId:i}:{action:"resume",expectedRevision:a.revision})},onDelete:()=>{e.mutate(a,{action:"cancel",expectedRevision:a.revision})},onEdit:()=>{Rd(e,a,t)}},a.id)})})]})}async function Rd(e,t,s){await e.mutate(t,{action:"cancel",expectedRevision:t.revision})&&s(t.body)}const mo=new Set(["claude-code","opencode","grok-build"]);function Ed({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:xa(i,r);if(i==="custom-openai-compatible"){const c=r?.modelCaches[i]?.models??[],u=new Map;for(const d of l){const h=c.find(m=>m.id===d.value)?.raw?.connectionProvider,v=typeof h=="string"?h:a.label;u.set(v,[...u.get(v)??[],d])}return[...u].map(([d,h])=>({key:`${i}:${d}`,provider:i,label:d,defaultModel:h[0].value,options:h}))}return l.length||Nr(i)||mo.has(i)?[{key:i,provider:i,label:a.label,defaultModel:Li(i,r),options:l}]:[]})}function Md(e){const t=e.options.find(s=>s.value===e.defaultModel)??e.options[0];return!t&&!(Nr(e.provider)||mo.has(e.provider))?null:{provider:e.provider,model:t?.value??""}}function po({busy:e,placement:t,state:s,onChange:r}){const[a,i]=o.useState(!1),[l,c]=o.useState(""),u=o.useRef(null),d=o.useMemo(()=>{const h=l.trim().toLowerCase();return h?s.options.filter(v=>`${v.label} ${v.detail}`.toLowerCase().includes(h)):s.options},[l,s.options]);return o.useEffect(()=>{if(!a){c("");return}function h(m){u.current?.contains(m.target)||i(!1)}function v(m){m.key==="Escape"&&i(!1)}return document.addEventListener("pointerdown",h),document.addEventListener("keydown",v),()=>{document.removeEventListener("pointerdown",h),document.removeEventListener("keydown",v)}},[a]),s.options.length<=1?null:n.jsxs("div",{className:`composer-profile-target ${t==="top"?"open-up":""}`,ref:u,children:[n.jsxs("button",{type:"button",className:`composer-profile-trigger ${a?"active":""}`,disabled:e,"aria-label":"Profile","aria-haspopup":"menu","aria-expanded":a,onClick:()=>i(h=>!h),children:[n.jsx("span",{children:s.label}),n.jsx(qt,{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:h=>c(h.currentTarget.value)})}),n.jsx("div",{className:"composer-menu-items",children:d.map(h=>{const v=h.value===s.value;return n.jsxs("button",{type:"button",role:"menuitemradio","aria-checked":v,className:`composer-project-option ${v?"selected":""}`,onClick:()=>{r(h.value),i(!1)},children:[n.jsxs("span",{children:[n.jsx("strong",{children:h.label}),n.jsx("small",{children:h.detail})]}),v?n.jsx(Ut,{size:14}):null]},h.value)})})]}):null]})}function Nd({busy:e,placement:t,state:s,onChange:r}){const[a,i]=o.useState(!1),[l,c]=o.useState(!1),[u,d]=o.useState(""),h=o.useRef(null),m=s.value==="none"?"Select Project":s.label,p=s.options.find(C=>C.value===s.value)?.kind??"local",g=o.useMemo(()=>{const C=u.trim().toLowerCase();return C?s.options.filter(A=>[A.label,A.detail].filter(Boolean).some(R=>R.toLowerCase().includes(C))):s.options},[u,s.options]),b=g.filter(C=>C.kind==="local"||C.kind==="cloud"),w=g.filter(C=>C.kind==="action"),x=g.filter(C=>C.kind==="none");o.useEffect(()=>{if(!a){d(""),c(!1);return}function C(R){h.current?.contains(R.target)||i(!1)}function A(R){R.key==="Escape"&&(l?c(!1):i(!1))}return document.addEventListener("pointerdown",C),document.addEventListener("keydown",A),()=>{document.removeEventListener("pointerdown",C),document.removeEventListener("keydown",A)}},[l,a]);function E(C){const A=C.value===s.value,R=e||C.disabled,M=C.kind==="action";return n.jsxs("button",{type:"button",role:M?"menuitem":"menuitemradio","aria-checked":M?void 0:A,className:`composer-project-option ${A?"selected":""} ${C.kind}`,disabled:R,onClick:()=>{r(C.value),c(!1),i(!1)},children:[n.jsx(ti,{kind:C.kind,size:14}),n.jsxs("span",{children:[n.jsx("strong",{children:C.label}),n.jsx("small",{children:C.detail})]}),A&&n.jsx(Ut,{size:14})]},C.value)}return n.jsxs("div",{className:`composer-project-target ${t==="top"?"open-up":""}`,ref:h,children:[n.jsxs("button",{type:"button",className:`composer-project-trigger ${a?"active":""} ${p}`,disabled:e,"aria-label":"Project","aria-haspopup":"menu","aria-expanded":a,onClick:()=>{i(C=>!C),c(!1)},children:[n.jsx(ti,{kind:p,size:14}),n.jsx("span",{children:m}),n.jsx(qt,{size:14})]}),a&&n.jsxs("div",{className:"composer-project-menu",role:"menu","aria-label":"Project",children:[n.jsx("div",{className:"composer-menu-search",children:n.jsx("input",{autoFocus:!0,value:u,placeholder:"Search projects",onChange:C=>d(C.target.value)})}),n.jsx("div",{className:"composer-menu-items",children:g.length===0?n.jsx("div",{className:"composer-menu-empty",children:"No projects found"}):b.map(E)}),w.length>0||x.length>0?n.jsxs("div",{className:"composer-project-actions",children:[w.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(C=>!C),children:[n.jsx(wr,{size:14}),n.jsxs("span",{children:[n.jsx("strong",{children:"New"}),n.jsx("small",{children:"Create or add a project"})]}),n.jsx(pr,{size:14})]}):null,x.map(E)]}):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"})]}),w.map(E)]}):null]})}function ti({kind:e,size:t}){return e==="cloud"?n.jsx(la,{size:t}):e==="action"?n.jsx(wr,{size:t}):n.jsx(ca,{size:t})}function Ad({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",u=`${s.label}: ${s.detail}`,d=s.uploadAction??null,h=d?ni(d):null,v=d?d.disabled&&d.disabledReason?d.disabledReason:`${d.label}: ${h??d.detail}`:null,m=!!(d&&(e||s.busy||d.disabled));return o.useEffect(()=>{if(!a)return;function p(b){l.current?.contains(b.target)||i(!1)}function g(b){b.key==="Escape"&&i(!1)}return document.addEventListener("pointerdown",p),document.addEventListener("keydown",g),()=>{document.removeEventListener("pointerdown",p),document.removeEventListener("keydown",g)}},[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":u,"aria-label":"Working in","aria-haspopup":"menu","aria-expanded":a,onClick:()=>i(p=>!p),children:[n.jsx(Jr,{value:s.value,size:14}),n.jsx("span",{className:"workspace-target-trigger-label",children:s.label}),n.jsx(qt,{size:14})]}),d?n.jsx("button",{type:"button",className:`workspace-upload-trigger ${d.value}`,disabled:m,"data-tooltip":v??void 0,"aria-label":d.label,onClick:()=>{r(d.value),i(!1)},children:n.jsx(Jr,{value:d.value,size:14})}):null,a&&n.jsx("div",{className:"workspace-target-menu",role:"menu","aria-label":"Working in",children:s.options.map(p=>{const g=p.value===s.value,b=e||s.busy||p.disabled,x=ni(p)??p.detail,E=p.disabled&&p.disabledReason?p.disabledReason:`${p.label}: ${x}`;return n.jsxs("button",{type:"button",role:"menuitemradio","aria-checked":g,className:`workspace-target-option ${g?"selected":""} ${p.value}`,disabled:b,"data-tooltip":E,onClick:()=>{r(p.value),i(!1)},children:[n.jsx(Jr,{value:p.value,size:14}),n.jsxs("span",{children:[n.jsx("strong",{children:p.label}),n.jsx("small",{children:x})]}),g&&n.jsx(Ut,{size:14})]},p.value)})})]})}function ni(e){return e.disabled&&e.disabledReason?e.disabledReason:e.stateNote??null}function Jr({value:e,size:t}){return e==="cloud"?n.jsx(la,{size:t}):e==="hybrid"?n.jsxs("span",{className:"workspace-target-hybrid-icon","aria-hidden":"true",children:[n.jsx(ca,{className:"hybrid-folder",size:t}),n.jsx(la,{className:"hybrid-cloud",size:Math.max(7,Math.round(t*.62))})]}):e==="upload_cloud"?n.jsx(Wc,{size:t}):n.jsx(ca,{size:t})}function si({disabled:e,model:t,modelGroups:s,placement:r,provider:a,providerSettings:i,reasoningEffort:l,showReasoning:c,onModelSelectionChange:u,onReasoningEffortChange:d}){const[h,v]=o.useState(!1),[m,p]=o.useState("root"),g=o.useRef(null),b=s.find(k=>k.provider===a&&k.options.some($=>$.value===t))??s.find(k=>k.provider===a),w=b?.options.find(k=>k.value===t),x=Cl(a,t,i),E=Sl(a,t,l,i),C=x.find(k=>k.value===E)??x[0],A=Id(w?.label??t)||b?.label||a,R=c?`${A} ${C.shortLabel??C.label}`:A,M=c?"Model and reasoning":"Model";return o.useEffect(()=>{if(!h){p("root");return}function k(O){g.current?.contains(O.target)||v(!1)}function $(O){O.key==="Escape"&&v(!1)}return document.addEventListener("pointerdown",k),document.addEventListener("keydown",$),()=>{document.removeEventListener("pointerdown",k),document.removeEventListener("keydown",$)}},[h]),o.useEffect(()=>{!c&&m==="effort"&&p("root")},[m,c]),n.jsxs("div",{className:`codex-model-reasoning ${r==="top"?"open-up":""}`,"data-tooltip":M,ref:g,children:[n.jsxs("button",{type:"button",className:`codex-model-trigger ${h?"active":""}`,disabled:e,"aria-label":M,"aria-haspopup":"menu","aria-expanded":h,onClick:()=>v(k=>!k),children:[n.jsx("span",{children:R}),n.jsx(qt,{size:14})]}),h&&n.jsx("div",{className:"codex-model-menu",role:"menu","aria-label":M,children:m==="root"?n.jsxs("div",{className:"codex-model-menu-root",children:[n.jsxs("button",{type:"button",className:"codex-model-menu-row",role:"menuitem",onClick:()=>p("provider"),children:[n.jsx("span",{children:"Provider"}),n.jsx("span",{className:"codex-model-menu-value",children:b?.label??a}),n.jsx(pr,{size:14})]}),n.jsxs("button",{type:"button",className:"codex-model-menu-row",role:"menuitem",onClick:()=>p("model"),children:[n.jsx("span",{children:"Model"}),n.jsx("span",{className:"codex-model-menu-value",children:ua(w?.label??t)||"Agent default"}),n.jsx(pr,{size:14})]}),c?n.jsxs("button",{type:"button",className:"codex-model-menu-row",role:"menuitem",onClick:()=>p("effort"),children:[n.jsx("span",{children:"Effort"}),n.jsx("span",{className:"codex-model-menu-value",children:C.shortLabel??C.label}),n.jsx(pr,{size:14})]}):null]}):m==="provider"?n.jsxs(n.Fragment,{children:[n.jsxs("button",{type:"button",className:"codex-model-submenu-heading","aria-label":"Back to model settings — Provider",onClick:()=>p("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(k=>{const $=k.key===b?.key;return n.jsxs("button",{type:"button",role:"menuitemradio","aria-checked":$,className:$?"selected":"",onClick:()=>{const O=Md(k);O&&(u(O.provider,O.model),p("root"))},children:[n.jsx("span",{children:k.label}),$?n.jsx(Ut,{size:14}):null]},k.key)})})]}):m==="model"?n.jsxs(n.Fragment,{children:[n.jsxs("button",{type:"button",className:"codex-model-submenu-heading","aria-label":"Back to model settings — Model",onClick:()=>p("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:[(b?.options??[]).map(k=>{const $=k.value===t;return n.jsxs("button",{type:"button",role:"menuitemradio","aria-checked":$,className:$?"selected":"",onClick:()=>{u(a,k.value),p("root")},children:[n.jsx("span",{children:ua(k.label)}),$?n.jsx(Ut,{size:14}):null]},k.value)}),b?.options.length?null:n.jsx("div",{className:"codex-model-menu-empty",role:"status",children:"No models available. Connect or check this provider in Settings."})]})]}):n.jsxs("div",{className:"codex-model-menu-effort",children:[n.jsxs("button",{type:"button",className:"codex-model-submenu-heading","aria-label":"Back to model settings — Effort",onClick:()=>p("root"),children:[n.jsx(Qn,{size:14}),n.jsx("span",{children:"Effort"})]}),n.jsx("div",{className:"codex-model-menu-divider"}),x.map(k=>n.jsxs("button",{type:"button",role:"menuitemradio","aria-checked":k.value===E,className:k.value===E?"selected":"",onClick:()=>{d(k.value),p("root")},children:[n.jsx("span",{children:k.label}),k.value===E?n.jsx(Ut,{size:14}):null]},k.value))]})})]})}function Id(e){return ua(e).replace(/^GPT-/,"").replace(/\s+Codex Spark$/," Spark").replace(/\s+Codex$/," Codex")}function Td({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(qt,{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 $d({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=>n.jsx(ho,{prompt:i.prompt,sending:t===i.id,onSend:()=>a(i.id),onDelete:()=>s(i.id),onEdit:()=>r(i)},i.id))})}const Pd=/\b(?:https?:\/\/)?(?:github\.com|(?:[a-z0-9-]+\.)*openpond\.ai)\/[^\s<>"'`]+/gi,_d=/\b(?:git@)?(?:github\.com|(?:[a-z0-9-]+\.)*openpond\.ai):[^\s<>"'`]+/gi,Ld=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"]),Od=new Set(["account","api","dashboard","docs","install.sh","login","logout","opchat","sandboxes","settings"]);function zd(e){const t=e.toLowerCase().replace(/^www\./,"");return t==="github.com"?"github":t==="openpond.ai"||t.endsWith(".openpond.ai")?"openpond":null}function Fd(e){return e==="github"?Ld:Od}function go(e){let t=e;for(;/[.,;!?]$/.test(t);)t=t.slice(0,-1);for(;Dd(t);)t=t.slice(0,-1);return t}function Dd(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 Bd(e){return e.replace(/\.git$/i,"")}function bo(e){try{return decodeURIComponent(e)}catch{return e}}function Ud(e){return Bd(bo(e.trim()))}function xo(e){const t=e.host.toLowerCase().replace(/^www\./,""),s=zd(t);if(!s)return null;const r=bo(e.owner?.trim()??""),a=Ud(e.repo??"");return!r||!a||Fd(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 qd(e,t){const s=go(e);if(!s)return null;try{const r=new URL(/^https?:\/\//i.test(s)?s:`https://${s}`),a=r.pathname.split("/").filter(Boolean);return xo({end:t+s.length,host:r.hostname,owner:a[0],repo:a[1],start:t,url:s})}catch{return null}}function Hd(e,t){const s=go(e),r=/^(?:git@)?([^:]+):(.+)$/i.exec(s);if(!r)return null;const a=r[1]?.trim()??"",i=(r[2]??"").split("/").filter(Boolean);return xo({end:t+s.length,host:a,owner:i[0],repo:i[1],start:t,url:s})}function ri(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 Vd(e){if(!e)return[];const t=[...ri(e,Pd,qd),...ri(e,_d,Hd)].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 Wd=10,Gd=340,Kd=320,Qd=160,Xd=56;function Bt(e,t=0){const s=Number.parseFloat(e);return Number.isFinite(s)?s:t}function Yr(e){if(!e)return;e.style.height="auto";const t=window.getComputedStyle(e),s=Bt(t.fontSize,16),r=Bt(t.lineHeight,s*1.45),a=Bt(t.paddingTop)+Bt(t.paddingBottom),i=Bt(t.borderTopWidth)+Bt(t.borderBottomWidth),l=Bt(t.minHeight,66),c=Math.max(l,Math.ceil(r*Wd+a+i)),u=Math.max(l,Math.min(e.scrollHeight,c));e.style.height=`${u}px`,e.style.overflowY=e.scrollHeight>c?"auto":"hidden"}function Zr(e,t){const s=e.getBoundingClientRect(),r=t.getBoundingClientRect(),a=window.getComputedStyle(e),i=Bt(a.paddingLeft,14),l=Bt(a.paddingTop,15),c=Math.max(0,r.width-16),u=Math.min(Gd,c),d=s.left-r.left+i-8,h=Math.max(8,Math.min(d,r.width-u-8)),v=Math.max(8,s.top-r.top+l+2);return{left:h,top:v,width:u}}function Jd(e){const t=e.getBoundingClientRect(),s=Math.floor(t.top-Xd);return{maxHeight:Math.max(Qd,Math.min(Kd,s))}}const Yd="[data-inline-token='true']",Zd="[data-inline-repo-link='true']",ef="[data-inline-connected-app-mention='true']";function Ns(e){return e instanceof HTMLElement&&e.matches(Yd)}function As(e){return e instanceof HTMLElement&&e.matches(Zd)}function Is(e){return e instanceof HTMLElement&&e.matches(ef)}function Sr(e,t){return Math.max(0,Math.min(e,t))}function Jn(e,t){return e?Sr(e.position,t.length):null}function tf(e,t,s,r=!1){const a=Jn(t,s),i=Sr(e,s.length);return a===null?i:i>a||r&&i===a?i+1:i}function ai(e,t,s){const r=Jn(t,s);return Sr(r===null?e:e>r?e-1:e,s.length)}function ea(e){let t="",s=null;function r(a){if(As(a)){t+=a.dataset.repoUrl??"";return}if(Is(a)){t+=a.dataset.connectedMentionText??"";return}if(Ns(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 wn(e){if(As(e))return e.dataset.repoUrl?.length??0;if(Is(e))return e.dataset.connectedMentionText?.length??0;if(Ns(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+=wn(s)}),t}function ii(e,t,s){if(!t||t!==e&&!e.contains(t))return null;let r=0,a=!1;function i(l){if(!a){if((Ns(l)||As(l)||Is(l))&&(l===t||l.contains(t))){(l!==t||s>0)&&(r+=wn(l)),a=!0;return}if(Ns(l)||As(l)||Is(l)){r+=wn(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 u of c)r+=wn(u)}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 ta(e){const t=window.getSelection();if(!t||t.rangeCount===0)return null;const s=ii(e,t.anchorNode,t.anchorOffset),r=ii(e,t.focusNode,t.focusOffset);return s===null||r===null?null:{anchor:s,focus:r}}function oi(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(Ns(l)||As(l)||Is(l)){const c=wn(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 u=i(c);if(u)return u}return null}return i(e)??{node:e,offset:e.childNodes.length}}function vo(e,t){const s=window.getSelection();if(!s)return;const r=oi(e,t.anchor),a=oi(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,u=l?a:r;i.setStart(c.node,c.offset),i.setEnd(u.node,u.offset),s.addRange(i)}function nf(e,t){vo(e,{anchor:t,focus:t})}function li(e){document.execCommand("insertText",!1,e)}function sf(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 rf(){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 ci(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=sf(e.icon),s.append(r),s.insertAdjacentHTML("beforeend",rf());const a=document.createElement("span");return a.className="composer-invocation-label",a.textContent=e.label,t.append(s,a),t}function af(e){return e.provider==="github"?va("github"):El}function of(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=af(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 lf(e){return va(e)}function cf(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=lf(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 uf(e,t){const s=Vd(e);return t===null?s:s.filter(r=>t<=r.start||t>=r.end)}function df(e,t,s){const r=Rl(e,t);return s===null?r:r.filter(a=>s<=a.start||s>=a.end)}function yo(e,t,s){const r=[...uf(e,t).map(l=>({end:l.end,kind:"repo",link:l,start:l.start})),...df(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 ff(e,t,s){return yo(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 hf(e,t,s,r){const a=Jn(s,t),i=yo(t,a,r);let l=!1;function c(h){h&&e.append(document.createTextNode(h))}function u(h,v){if(!s||a===null||l||a<h||a>v){c(t.slice(h,v));return}c(t.slice(h,a)),e.append(ci(s)),l=!0,c(t.slice(a,v))}e.replaceChildren();let d=0;for(const h of i)u(d,h.start),h.kind==="repo"?e.append(of(h.link)):e.append(cf(h.mention)),d=h.end;u(d,t.length),s&&!l&&e.append(ci(s))}const mf=o.forwardRef(function({connectedAppMentions:t=[],disabled:s,onCursorChange:r,onKeyDown:a,onPasteFiles:i,onPasteTextAsAttachment:l,onPromptChange:c,onTokenPositionChange:u,placeholder:d,prompt:h,token:v},m){const p=o.useRef(null),b=`${v?`${v.key}:${Jn(v,h)??0}`:"none"}|${ff(h,Jn(v,h),t)}`,w=o.useRef(null),x=h.length===0&&!v;o.useImperativeHandle(m,()=>({get element(){return p.current},getPrompt(){const R=p.current;return R?ea(R).text:h},focusAtPromptIndex(R,M){const k=p.current;if(!k)return;const $=tf(R,v,h,M?.afterToken);k.focus(),nf(k,$),Yr(k)},resize(){Yr(p.current)}}),[h,v]),o.useLayoutEffect(()=>{const R=p.current;if(!R)return;const M=w.current!==b;w.current=b;const k=ea(R);if(M||h===""||k.text!==h||k.tokenPosition!==Jn(v,h)){const O=document.activeElement===R?ta(R):null;hf(R,h,v,t),R.dataset.empty=h.length===0&&!v?"true":"false",O&&vo(R,O)}Yr(R)},[t,h,v,b]);function E(){const R=p.current;if(!R)return;const M=ta(R)?.focus??wn(R),k=ea(R),$=ai(M,v,k.text);R.dataset.empty=k.text.length===0&&!v?"true":"false",u(k.tokenPosition),r($),c(k.text,$)}function C(){E(),window.requestAnimationFrame(E)}function A(){const R=p.current;if(!R)return;const M=ta(R)?.focus??wn(R);r(ai(M,v,h))}return n.jsx("div",{ref:p,className:"composer-inline-input",role:"textbox","aria-multiline":"true",contentEditable:!s,suppressContentEditableWarning:!0,"data-empty":x?"true":"false","data-placeholder":d,onBeforeInput:R=>{R.nativeEvent.inputType==="insertParagraph"&&(R.preventDefault(),li(`
50
+ `),C())},onInput:E,onKeyDown:R=>{a(R)},onKeyUp:A,onMouseUp:A,onPaste:R=>{R.preventDefault();const M=Array.from(R.clipboardData.files);if(M.length>0&&i){i(M);return}const k=R.clipboardData.getData("text/plain");k&&(l?.(k)||(li(k),C()))}})});function pf(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 gf(e,t,s,r,a,i,l){return e==="Enter"&&(t||s)&&!r&&a==="work"&&i==="chat"&&l}function bf(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 ui(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 xf(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 vf(e){return e.kind==="command"?`${e.command.command} ${e.command.label}`:e.kind==="app-context"?e.app.name:e.kind==="skill"?Ir(e.skill):ya(e.action)}function yf(e){return e.kind==="command"?Al(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||Il(e.action)}function jf(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 wf(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"?Ir(e.skill):Nl(e.action)}function kf(e){if(e.kind==="action")return Tl(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 Cf(e){return e.kind==="files"?"files":e.kind==="folder"?"folder":e.kind==="slash"?`slash:${xf(e.item)}`:`mention:${jf(e.item)}`}function jo(e){return e.kind==="files"?"Files and folders":e.kind==="folder"?"Local folder":e.kind==="slash"?vf(e.item):wf(e.item)}function wo(e){return e.kind==="files"?"Attach images, documents, or other files":e.kind==="folder"?"Share a bounded folder as Work input":e.kind==="slash"?yf(e.item):kf(e.item)}function Sf(e,t){const s=t.toLowerCase().split(/\s+/).filter(Boolean);if(s.length===0)return!0;const r=`${jo(e)} ${wo(e)}`.toLowerCase();return s.every(a=>r.includes(a))}function Rf(e,t){const s=t.trimStart(),r=s.startsWith("/")?"slash":s.startsWith("@")?"mentions":null,a=r?s.slice(1).trimStart():s,i=r?e.filter(u=>u.id===r||u.queryScope===r||u.queryScopes?.includes(r)):e;if(!a)return i;const l=i.map(u=>({...u,items:u.items.filter(d=>Sf(d,a))})).filter(u=>u.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 Ef(e){if(e.kind==="files")return n.jsx(Ha,{size:14});if(e.kind==="folder")return n.jsx(Ha,{size:14});if(e.kind==="slash"){const s=e.item;return s.kind==="command"?s.command.id==="agent"?n.jsx(Es,{size:14}):s.command.id==="skill"?n.jsx(Ml,{size:14}):n.jsx(gr,{size:14}):s.kind==="app-context"?n.jsx(qa,{size:14}):s.kind==="skill"?n.jsx(pt,{size:14}):ui(s.action)?n.jsx(Es,{size:14}):n.jsx(gr,{size:14})}const t=e.item;return t.kind==="connected-app"?n.jsx("img",{alt:"",className:"composer-provider-mention-icon",draggable:!1,src:va(t.app.provider)}):t.kind==="action"?ui(t.action)?n.jsx(Es,{size:14}):n.jsx(gr,{size:14}):t.kind==="skill"?n.jsx(pt,{size:14}):n.jsx(qa,{size:14})}function Mf(e){if(e.kind==="slash"&&e.item.kind==="app-context"||e.kind==="mention"&&e.item.kind==="app")return e.item.app.id}function Sa({ariaLabel:e,className:t="",id:s,menuIndex:r,menuRef:a,onSelect:i,onSelectIndex:l,sections:c,style:u,variant:d}){const h=o.useRef(null),v=c.reduce((p,g)=>p+g.items.length,0);o.useEffect(()=>{if(d==="add"&&r===0){const p=h.current?.closest(".composer-command-menu");p&&(p.scrollTop=0);return}h.current?.scrollIntoView({block:"nearest"})},[v,r,d]);let m=0;return n.jsx("div",{ref:a,id:s,className:`composer-project-menu composer-slash-menu ${t} composer-command-menu composer-command-menu-${d}`.trim(),role:d==="add"?"menu":"listbox","aria-label":e,style:u,children:c.map(p=>{const g=m;return m+=p.items.length,n.jsxs("div",{className:`composer-command-section ${p.grid?"composer-command-section-grid":""}`.trim(),role:"group","aria-label":p.label,children:[n.jsx("div",{className:"composer-command-section-title",children:p.label}),p.items.length>0?p.items.map((b,w)=>{const x=g+w,E=x===r;return n.jsxs("button",{type:"button",role:d==="add"?"menuitem":"option",ref:E?h:void 0,"aria-selected":d==="typed"?E:void 0,className:`composer-project-option ${E?"selected":""} composer-command-option`,"data-app-context-id":Mf(b),onFocus:()=>l(x),onMouseEnter:()=>l(x),onMouseDown:C=>{C.preventDefault()},onClick:()=>i(b),children:[Ef(b),n.jsxs("span",{children:[n.jsx("strong",{children:jo(b)}),n.jsx("small",{children:wo(b)})]}),d==="typed"&&E?n.jsx(Ut,{size:14}):n.jsx("span",{"aria-hidden":"true"})]},Cf(b))}):n.jsx("div",{className:"composer-menu-empty",children:p.emptyLabel??"No items available"})]},p.id)})})}function Nf({mentionIndex:e,items:t,onSelect:s,onSelectIndex:r,style:a}){return n.jsx(Sa,{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 di({running:e,sendDisabled:t,hasComposerInput:s,sendTooltip:r,stopIcon:a,stopLabel:i,voiceInputActive:l,onSend:c,onStop:u}){const d=e&&!s&&!l,h=d?i:r;return n.jsx("button",{type:"button",className:`send-button ${d?"stop-button":""}`.trim(),disabled:!d&&t&&!l,"data-tooltip":h,"aria-label":h,onClick:d?()=>{u()}:c,children:d?a==="pause"?n.jsx(Lc,{size:15}):n.jsx(Xi,{size:13,fill:"currentColor"}):n.jsx(Jc,{size:18})})}const fi=new WeakMap,Rr=new WeakMap,Af=3e4;function Ps(e,t){return JSON.stringify([e,t?.binaryPath??null,t?.sourceHome??null,t?.enabled??!0,t?.acp??null])}function ko(e,t,s){return Rr.get(e)?.get(Ps(t,s))?.value??null}function Co(e,t,s,r){let a=Rr.get(e);a||(a=new Map,Rr.set(e,a)),a.set(Ps(t,r),{value:s,refreshedAt:Date.now()})}function If(e,t,s){const r=Ps(t,s),a=Rr.get(e)?.get(r);if(a&&Date.now()-a.refreshedAt<Af)return{promise:Promise.resolve(a.value),release(){}};let i=fi.get(e);i||(i=new Map,fi.set(e,i));let l=i.get(r);if(!l){const d=new AbortController;l={controller:d,readers:0,promise:Se(e,`/v1/providers/${t}/native-setup`,{method:"POST",body:JSON.stringify({action:"capabilities"}),signal:d.signal})},i.set(r,l);const h=l,v=()=>{i.get(r)===h&&i.delete(r)};l.promise.then(m=>{i.get(r)===h&&!d.signal.aborted&&!m.error&&m.session&&Co(e,t,m,s),v()},v)}l.readers++;const c=l;let u=!1;return{promise:c.promise,release(){u||(u=!0,c.readers--,c.readers===0&&i.get(r)===c&&(i.delete(r),c.controller.abort()))}}}function Tf({connection:e,provider:t,providerSettings:s,disabled:r,placement:a="top",onSettings:i,onSetup:l}){const c=s?.providers[t],[u,d]=o.useState(null),h=Ps(t,c),v=e?ko(e,t,c):null,m=u?.connection===e&&u.provider===t&&u.instance===h?u.value:v,[p,g]=o.useState(null),[b,w]=o.useState(!1),x=Nr(t)||["opencode","grok-build","claude-code"].includes(t);if(o.useEffect(()=>{if(g(null),!e||!x)return;const A=If(e,t,c);let R=!0;return A.promise.then(M=>{R&&(M.error?g(M.error):(d({connection:e,provider:t,instance:h,value:M}),i({provider:t,settings:M.settings})))}).catch(M=>{R&&g(M.message)}),()=>{R=!1,A.release()}},[e,t,x,i,h]),!x||!e)return null;const E=c?.nativeMode??m?.session?.modes?.currentModeId??"";async function C(A){if(e){w(!0);try{const R=await Se(e,"/v1/providers",{method:"PATCH",body:JSON.stringify({providers:{[t]:A}})});if(m){const M={...m,settings:R};Co(e,t,M,c),d({connection:e,provider:t,instance:h,value:M})}i({provider:t,settings:R}),g(null)}catch(R){g(R instanceof Error?R.message:"Could not save agent settings.")}finally{w(!1)}}}return n.jsxs(n.Fragment,{children:[c&&!c.enabled?n.jsx("button",{type:"button",disabled:r||b,onClick:()=>{C({enabled:!0})},children:"Enable agent"}):null,m?.session?.modes?n.jsx(da,{compact:!0,className:"permission-select",icon:n.jsx(Oi,{size:14}),placement:a,label:t==="claude-code"?"Claude permissions":"Agent mode",disabled:r||b,value:t==="claude-code"&&E==="default"?"manual":E,options:m.session.modes.availableModes.map(A=>({value:A.id,label:t==="claude-code"&&A.id==="manual"?"Ask":A.name,...t==="claude-code"?{description:A.id==="plan"?"Inspect and plan before making changes.":A.id==="bypassPermissions"?"Run tools and commands without permission prompts.":"Ask before actions that require permission."}:{}})),onChange:A=>{C({nativeMode:A})}}):null,m?.session?.configOptions?.filter(A=>A.type==="select"&&A.category!=="model"&&A.category!=="mode").map(A=>n.jsxs("label",{className:"composer-native-option",children:[n.jsx("span",{children:A.name}),n.jsx("select",{title:`Default ${A.name.toLowerCase()} for this agent installation`,disabled:r||b,value:c?.nativeOptions?.[A.id]??A.currentValue,onChange:R=>{C({nativeOptions:{...c?.nativeOptions,[A.id]:R.target.value}})},children:A.options?.flatMap(R=>"options"in R?R.options:[R]).map(R=>n.jsx("option",{value:R.value,children:R.name},R.value))})]},A.id)),p||m?.error?n.jsxs("span",{role:"status",title:p??m?.error??void 0,children:["Agent needs attention",l?n.jsx("button",{type:"button",onClick:l,children:"Open setup"}):null]}):null]})}function So(){return!!(navigator.mediaDevices&&typeof AudioContext<"u")}async function $f(e={}){if(!So())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 u=c.inputBuffer.getChannelData(0);l.chunks.push(new Float32Array(u)),l.onAudioLevel?.(Pf(u))},r.connect(a),a.connect(i),i.connect(s.destination),{stop:()=>hi(l,!0),cancel:()=>hi(l,!1).then(()=>{})}}function Pf(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 hi(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=_f(e.chunks);if(r.length===0)throw new Error("No microphone audio was captured.");return{blob:Lf(r,e.audioContext.sampleRate),durationMs:s,sampleRate:e.audioContext.sampleRate}}function _f(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 Lf(e,t){const a=e.length*2,i=new ArrayBuffer(44+a),l=new DataView(i);ur(l,0,"RIFF"),l.setUint32(4,36+a,!0),ur(l,8,"WAVE"),ur(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),ur(l,36,"data"),l.setUint32(40,a,!0);let c=44;for(const u of e){const d=Math.max(-1,Math.min(1,u));l.setInt16(c,d<0?d*32768:d*32767,!0),c+=2}return new Blob([i],{type:"audio/wav"})}function ur(e,t,s){for(let r=0;r<s.length;r+=1)e.setUint8(t+r,s.charCodeAt(r))}const pa=96,Ro=Array.from({length:pa},()=>0);function Cs(){return[...Ro]}function Of(e,t){return[...e.slice(-95),Math.max(0,Math.min(1,t))]}function zf({levels:e}){const t=o.useMemo(()=>e.length>=pa?e.slice(-pa):[...Ro.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 Ff=12e4,Eo="openpond.voice.setupNoticeAcknowledged",Df="Voice dictation runs locally with whisper.cpp. OpenPond uses a local whisper-cli binary and downloads the voice model on first use.";function mi({connection:e,buttonClassName:t,wrapperClassName:s="",disabled:r=!1,iconSize:a=16,language:i="en",onActiveChange:l,showToast:c,onTranscript:u,transcriptionChannelKey:d}){const h=o.useRef(null),v=o.useRef(null),m=o.useRef(e),p=o.useRef(r),g=o.useRef("idle"),b=o.useRef(!1),w=o.useRef(pi());$l(()=>{w.current=pi()}),m.current=e,p.current=r;const[x,E]=o.useState("idle"),[C,A]=o.useState(null),[R,M]=o.useState(Cs),k=o.useCallback(D=>pd(d,D),[d]),$=o.useCallback(()=>md(d),[d]),O=o.useSyncExternalStore(k,$,$),U=O,Q=x==="starting",F=x==="recording",H=F||O,V=Q||H;g.current=x;const ce=o.useCallback(()=>{v.current!==null&&(window.clearTimeout(v.current),v.current=null)},[]),ge=o.useCallback(async()=>{ce();const D=h.current;h.current=null,b.current=!1,E("idle"),M(Cs()),D&&await D.cancel().catch(()=>{})},[ce]),ae=o.useCallback(async(D,_,ie)=>{const Ee=m.current;if(!Ee)throw new Error("Voice input is still connecting.");const se=await qe.voiceTranscriptionStatus(Ee,{signal:_});if(!se.binaryPath)throw new Error(se.installHint??"Install whisper.cpp to use dictation.");const de=await qe.transcribeVoice(Ee,{audioBase64:await Bf(D.blob),durationMs:Math.round(D.durationMs),language:i,mimeType:"audio/wav"},{signal:_});_.aborted||Promise.resolve(u(de.text,{submit:ie()})).catch(K=>{c(na(K),"error")})},[i,u,c]),fe=o.useCallback(()=>{co(d),A(null),M(Cs())},[d]),q=o.useCallback(async(D=!1)=>{ce();const _=h.current;h.current=null,_&&(E("idle"),A(null),M(Cs()),xd(d,async(ie,Ee)=>{const se=await _.stop();ie.aborted||await ae(se,ie,Ee)},{submit:D}).catch(ie=>{ie instanceof DOMException&&ie.name==="AbortError"||c(na(ie),"error")}))},[ce,c,ae,d]),xe=o.useCallback(async()=>{if(p.current)return;if(!m.current){A("Voice input is still connecting.");return}if(!So()){A("Voice recording is not available in this browser.");return}A(null),E("starting");try{if(await window.openpond?.requestMicrophoneAccess?.()===!1)throw new Error("Microphone access is denied.");const ie=await $f({onAudioLevel:Ee=>{M(se=>Of(se,Ee))}});if(h.current=ie,M(Cs()),E("recording"),b.current){b.current=!1,q(!0);return}v.current=window.setTimeout(()=>{q(!1)},Ff)}catch(_){A(na(_)),await ge()}},[ge,q]),G=o.useCallback(()=>{if(w.current){xe();return}c(Df,"info",{actionLabel:"Continue",persistent:!0,onAction:()=>{w.current=!0,Uf(),xe()}})},[xe,c]);return o.useEffect(()=>gd(d,()=>h.current?(q(!0),!0):g.current==="starting"?(b.current=!0,!0):!1),[q,d]),o.useEffect(()=>{l?.(V)},[V,l]),o.useEffect(()=>()=>l?.(!1),[l]),o.useEffect(()=>{if(!C||F||U)return;const D=window.setTimeout(()=>A(null),7e3);return()=>window.clearTimeout(D)},[U,C,F]),o.useEffect(()=>()=>{ge()},[ge]),n.jsxs("span",{className:`voice-input-control ${s} ${Q?"starting":""} ${F?"recording":""} ${O?"transcribing":""}`.trim(),children:[H?n.jsxs("span",{className:"voice-recording-strip",children:[n.jsx("span",{className:"sr-only",role:"status",children:O?"Transcribing audio":"Recording voice"}),n.jsx("button",{type:"button",className:"voice-recording-action cancel","aria-label":O?"Cancel transcription":"Cancel dictation",onClick:()=>{O?fe():ge()},children:n.jsx($s,{size:15})}),O?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(zf,{levels:R}),n.jsx("button",{type:"button",className:"voice-recording-action stop","aria-label":"Stop and transcribe",onClick:()=>{q(!1)},children:n.jsx(Xi,{size:10,fill:"currentColor"})})]})]}):n.jsx("button",{type:"button",className:`voice-input-trigger ${t} ${Q?"starting":""}`.trim(),"aria-label":Q?"Starting dictation":"Dictate",disabled:r||U||Q,onClick:G,children:n.jsx(gu,{size:a})}),C&&!H?n.jsx("span",{className:"voice-input-status",role:"status",children:C}):null]})}async function Bf(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 na(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 pi(){if(typeof window>"u")return!1;try{return zi.getItem(Eo)==="true"}catch{return!1}}function Uf(){if(!(typeof window>"u"))try{zi.setItem(Eo,"true")}catch{}}const qf=new Set(["codex","openai","xai","openrouter","deepseek","zai","moonshot","together","groq","custom-openai-compatible","setup-provider"]);function Hf({surface:e="chat",teamUseModel:t=!1,teamUseModelLocked:s=!1,onTeamUseModelChange:r,addFiles:a,addMenuId:i,addMenuOpen:l,addMenuRef:c,busy:u,codexPermissionMode:d,codexReasoningEffort:h,connection:v,contextStatusStyle:m,contextStatusTooltipId:p,contextWindowStatus:g,disabled:b,dropdownPlacement:w,fileInputRef:x,modelValue:E,modelOptions:C=[],hideModelControls:A=!1,openPondCommandAccessMode:R,showCommandAccess:M=!0,profileTarget:k,onCodexPermissionModeChange:$,onCodexReasoningEffortChange:O,onOpenPondCommandAccessModeChange:U,onProfileTargetChange:Q,onModelChange:F,onOpenFilePicker:H,onProviderChange:V,onProviderSetupOpen:ce,onSend:ge,onStop:ae,onToggleAddMenu:fe,onTranscript:q,voiceInputChannelKey:xe,provider:G,providerSettings:D,providerOptions:_,running:ie,sendDisabled:Ee,hasComposerInput:se,sendTooltip:de,showToast:K,stopIcon:ee="stop",stopLabel:X="Stop response"}){const Z=Ps(G,D?.providers[G]),[re,Ie]=o.useState(null),Le=v?ko(v,G,D?.providers[G]):null,je=re?.connection===v&&re.provider===G&&re.instance===Z?re.settings:Le?.settings??null,S=o.useMemo(()=>je?D?{...D,providers:{...D.providers,[G]:je.providers[G]},statuses:{...D.statuses,[G]:je.statuses[G]},modelCaches:{...D.modelCaches,[G]:je.modelCaches[G]}}:je:D,[D,je,G]),T=o.useCallback(y=>{v&&Ie({connection:v,provider:y.provider,instance:Z,settings:y.settings})},[v,Z]),L=Nr(G)||["claude-code","opencode","grok-build"].includes(G),W=E||Li(G,S),[te,Ae]=o.useState(!1),ve=Pl(G,W,S),Pe=o.useMemo(()=>Ed({currentModelOptions:je?xa(G,S):C,currentProvider:G,providerOptions:_,providerSettings:S}),[C,G,_,S,je]),Mt=o.useMemo(()=>Pe.filter(y=>qf.has(y.provider)),[Pe]),et=(y,I)=>{if(O(_l(y,I,S)),y===G){F(I);return}F(I),V(y)};return e==="team"?n.jsxs("div",{className:`composer-primary-controls team-chat-composer-controls ${ie?"has-running-turn":""}`.trim(),children:[n.jsx("button",{type:"button",className:"composer-icon","aria-label":"Add photos and files",disabled:b,onClick:H,children:n.jsx(wr,{size:18})}),n.jsx("input",{ref:x,className:"composer-file-input",type:"file",multiple:!0,tabIndex:-1,onChange:y=>{a(Array.from(y.currentTarget.files??[])),y.currentTarget.value=""}}),n.jsxs("label",{className:"team-chat-model-toggle",children:[n.jsx("input",{type:"checkbox",checked:t,disabled:u||s,onChange:y=>r?.(y.currentTarget.checked)}),n.jsx("span",{children:"Use model"})]}),n.jsx("div",{className:"composer-spacer"}),t?n.jsx(si,{disabled:u,model:W,modelGroups:Mt,placement:w,provider:G,providerSettings:S,reasoningEffort:h,showReasoning:ve,onModelSelectionChange:et,onReasoningEffortChange:O}):null,n.jsx(mi,{buttonClassName:"composer-icon",connection:v,disabled:b,iconSize:16,wrapperClassName:"composer-voice-input",onActiveChange:Ae,showToast:K,onTranscript:q,transcriptionChannelKey:xe}),n.jsx(di,{running:ie,sendDisabled:Ee,hasComposerInput:se,sendTooltip:de,stopIcon:ee,stopLabel:X,voiceInputActive:te,onSend:ge,onStop:ae})]}):n.jsxs("div",{className:`composer-primary-controls ${ie?"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:b,onMouseDown:y=>y.preventDefault(),onClick:fe,children:n.jsx(wr,{size:18})}),n.jsx("input",{ref:x,className:"composer-file-input",type:"file",multiple:!0,tabIndex:-1,onChange:y=>{a(Array.from(y.currentTarget.files??[])),y.currentTarget.value=""}})]}),!A&&L?n.jsx(Tf,{connection:v,provider:G,providerSettings:S,placement:w,onSettings:T,onSetup:ce,disabled:u||b}):null,M&&G==="codex"?n.jsx(da,{compact:!0,className:"permission-select",icon:n.jsx(Oi,{size:14}),placement:w,label:"Codex permissions",tooltip:Oa.find(y=>y.value===d)?.label,value:d,options:Oa,disabled:u,onChange:y=>$(y)}):M&&!L?n.jsx(da,{compact:!0,className:"permission-select",icon:n.jsx(ja,{size:14}),placement:w,label:"Command access",tooltip:za.find(y=>y.value===(R==="disabled"?"ask":R))?.label,value:R==="disabled"?"ask":R,options:za,disabled:u,onChange:y=>U(y)}):null,k&&Q?n.jsx(po,{busy:u,placement:w,state:k,onChange:Q}):null,n.jsx("div",{className:"composer-spacer"}),!A&&n.jsxs("span",{className:`context-status-shell ${g.tone}`,style:m,children:[n.jsx("span",{className:`composer-status ${g.tone}`,role:g.maxTokens===null?"img":"meter","aria-label":g.tooltip,"aria-describedby":p,"aria-valuemin":g.maxTokens===null?void 0:0,"aria-valuemax":g.maxTokens??void 0,"aria-valuenow":g.maxTokens===null?void 0:g.usedTokens,tabIndex:0}),n.jsxs("span",{className:"context-status-tooltip",id:p,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:g.summary}),n.jsx("span",{children:g.tokensLabel})]}),g.maxTokens!==null&&n.jsx("span",{className:"context-status-tooltip-bar","aria-hidden":"true",children:n.jsx("span",{})}),g.detail?n.jsx("span",{className:"context-status-tooltip-detail",children:g.detail}):null]})]}),!A&&n.jsx(si,{disabled:u,model:W,modelGroups:Pe,placement:w,provider:G,providerSettings:S,reasoningEffort:h,showReasoning:ve,onModelSelectionChange:et,onReasoningEffortChange:O}),n.jsx(mi,{buttonClassName:"composer-icon",connection:v,disabled:b,iconSize:16,wrapperClassName:"composer-voice-input",onActiveChange:Ae,showToast:K,onTranscript:q,transcriptionChannelKey:xe}),n.jsx(di,{running:ie,sendDisabled:Ee,hasComposerInput:se,sendTooltip:de,stopIcon:ee,stopLabel:X,voiceInputActive:te,onSend:ge,onStop:ae})]})}function Vf(e){return e.description||e.path}function Wf({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 u=c===r;return n.jsxs("button",{type:"button",className:`composer-project-option ${u?"selected":""}`,ref:u?i:void 0,role:"option","aria-selected":u,onMouseEnter:()=>s(c),onMouseDown:d=>{d.preventDefault(),t(l)},children:[n.jsx(pt,{size:14}),n.jsxs("span",{children:[n.jsx("strong",{children:Ir(l)}),n.jsx("small",{children:Vf(l)})]}),u?n.jsx(Ut,{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 Gf({actionCatalogCount:e,actionIndex:t,items:s,onSelect:r,onSelectIndex:a,style:i}){return n.jsx(Sa,{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 Kf({busy:e,initialDescription:t,open:s,onClose:r,onSubmit:a}){const[i,l]=o.useState(""),[c,u]=o.useState(()=>t.trim()),d=i.trim(),h=c.trim(),v=e||!d||!h;if(o.useEffect(()=>{s&&(l(""),u(t.trim()))},[t,s]),o.useEffect(()=>{if(!s||e)return;function p(g){g.key==="Escape"&&r()}return document.addEventListener("keydown",p),()=>document.removeEventListener("keydown",p)},[e,r,s]),!s)return null;async function m(){if(v)return;await a({title:d,description:h})&&(l(""),u(""))}return n.jsx("div",{className:"git-dialog-backdrop",role:"presentation",onMouseDown:e?void 0:r,children:n.jsxs("section",{className:"git-dialog submit-issue-dialog",role:"dialog","aria-modal":"true","aria-label":"Submit GitHub issue",onMouseDown:p=>p.stopPropagation(),onKeyDown:p=>{p.key!=="Enter"||!(p.target instanceof HTMLInputElement)||(p.preventDefault(),m())},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(Ll,{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:Ol})]}),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:p=>l(p.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:p=>u(p.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:()=>{m()},children:"Submit issue"})]})]})})}const Qf=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"]),Xf=new Set(["csv","ods","tsv","xls","xlsm","xlsx"]),Jf=new Set(["7z","bz2","gz","rar","tar","tgz","xz","zip"]),Yf=new Set(["doc","docx","epub","md","odt","pdf","rtf","txt"]),Zf=new Set(["key","odp","ppt","pptx"]);function Mo(e){const t=e.mediaType.toLowerCase(),s=e.name.split(".").pop()?.toLowerCase()??"";return e.kind==="image"||t.startsWith("image/")?"image":t.startsWith("audio/")?"audio":t.startsWith("video/")?"video":Xf.has(s)||t.includes("spreadsheet")||t.includes("excel")?"spreadsheet":Jf.has(s)||t.includes("zip")||t.includes("compressed")?"archive":Zf.has(s)||t.includes("presentation")||t.includes("powerpoint")?"presentation":Qf.has(s)?"code":e.kind==="text"||Yf.has(s)||t.startsWith("text/")||t==="application/pdf"||t.includes("document")||t.includes("msword")?"document":"file"}function eh(e){if(e.mediaType.toLowerCase()==="application/pdf")return"PDF";const t=Mo(e);return t==="spreadsheet"?"Spreadsheet":t.charAt(0).toUpperCase()+t.slice(1)}function No(e){return`${e.toLocaleString()} ${e===1?"line":"lines"}`}const th={archive:Fc,audio:lu,code:zc,document:pt,file:Oc,image:Ar,presentation:vu,spreadsheet:uu,video:fu};function Ao({attachment:e,...t}){const s=th[Mo(e)];return n.jsx(s,{...t})}const nh=new Set(["csv","css","html","js","json","jsx","log","md","mdx","py","sql","svg","ts","tsx","txt","xml","yaml","yml"]),sh=2e3,rh=/^Pasted text(?: (\d+))?\.txt$/;function ah(e,t){if(e.length<sh)return null;const s=new Set;for(const i of t){const l=rh.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 ih({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(Ao,{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?No(s):eh(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 oh(){return globalThis.crypto?.randomUUID?.()??`attachment-${Date.now()}-${Math.random().toString(36).slice(2)}`}function lh(e){if(e.type.startsWith("image/"))return"image";if(e.type.startsWith("text/"))return"text";const t=e.name.split(".").pop()?.toLowerCase()??"";return nh.has(t)?"text":"file"}async function ch(e){const[t,s]=await Promise.all([dh(e.file),e.kind==="text"?fh(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:hh(s)}:{}}}function uh(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 dh(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 fh(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 hh(e){if(e.length<=tn.maxTextChars)return e;const t=`
51
+ [attachment text truncated]`;return`${e.slice(0,Math.max(0,tn.maxTextChars-t.length))}${t}`}function mh(){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 m of e.current)Ss(m);for(const m of t.current)Ss(m)},[]);const c=o.useCallback(m=>{if(m.length===0)return;const p=Math.max(0,tn.maxAttachments-r.length),g=[];let b=0,w=0;for(const x of m){if(x.size>tn.maxAttachmentBytes){b+=1;continue}if(g.length>=p){w+=1;continue}const E="webkitRelativePath"in x&&typeof x.webkitRelativePath=="string"&&x.webkitRelativePath.trim()?x.webkitRelativePath.trim():void 0;g.push({id:oh(),file:x,name:x.name||"Untitled file",mediaType:x.type||"application/octet-stream",sizeBytes:x.size,kind:lh(x),...E?{relativePath:E}:{},...x.type.startsWith("image/")?{previewUrl:URL.createObjectURL(x)}:{}})}if(g.length>0&&(a([...r,...g]),l(null)),b>0||w>0){const x=[];b>0&&x.push(`${b} file${b===1?"":"s"} exceeded ${uh(tn.maxAttachmentBytes)}`),w>0&&x.push(`maximum ${tn.maxAttachments} attachments`),l(x.join("; "))}},[r]),u=o.useCallback(m=>{a(p=>{const g=p.find(w=>w.id===m);g&&Ss(g);const b=p.filter(w=>w.id!==m);return b.length===0&&l(null),b})},[]),d=o.useCallback(()=>{for(const m of e.current)Ss(m);e.current=[],a([]),l(null)},[]),h=o.useCallback(()=>{const m=e.current;return m.length===0||(e.current=[],t.current=m,a([]),l(null)),m},[]),v=o.useCallback((m,p)=>{if(m.length===0)return;const g=new Set(m.map(b=>b.id));if(t.current=t.current.filter(b=>!g.has(b.id)),p==="restore"&&!s.current){a(b=>{const w=new Set(b.map(E=>E.id)),x=[...m.filter(E=>!w.has(E.id)),...b];return e.current=x,x});return}for(const b of m)Ss(b)},[]);return{attachmentError:i,attachments:r,addFiles:c,clearAttachments:d,removeAttachment:u,settleStagedAttachments:v,setAttachmentError:l,stageAttachmentsForSubmit:h}}function Ss(e){e.previewUrl&&URL.revokeObjectURL(e.previewUrl)}function ph(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 gh(e,t,s=wa){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 bh(e,t=wa){return Fl({commands:t,prompt:`/${e}`})}function gi(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 bi(e,t){return e.length===0?[]:e.filter(s=>t?[s.id,s.name,s.description??"",s.gitRepo??"",Fi(s)].join(" ").toLowerCase().includes(t):!0).slice(0,8)}function xi({actionCatalog:e,connectedAppMentions:t,mentionApps:s,profileSkills:r,query:a,surface:i,teamMentionMembers:l}){const c=a.toLowerCase();if(i==="team"){const m=l.filter(g=>c?[g.name,g.handle??""].map(Kn).some(b=>b.includes(c)):!0).map(g=>({kind:"team-member",member:g}));return[...Fa(e,c,e.length).map(g=>({kind:"action",action:g})),...m]}const u=s.filter(m=>c?[Kn(m.id),Kn(m.name),m.gitRepo?Kn(m.gitRepo):"",Fi(m)].some(g=>g.includes(c)):!0).map(m=>({kind:"app",app:m})),d=Fa(e,c,e.length).map(m=>({kind:"action",action:m})),h=xr(r,c).map(m=>({kind:"skill",skill:m})),v=zl(t,c).map(m=>({kind:"connected-app",app:m}));return[...d,...h,...u,...v]}function xh(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)?" ":"",u=l&&!/^\s/.test(l)?" ":"";return`${i}${c}${r}${u}${l}`.replace(/\s+/g," ").trim()}function vh(e){const t=Kn(ya(e)||e.name||e.id);return t?`@${t}`:null}function yh(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])=>`${Io(a)}: ${ga(a,i)}`);return r.length?r.join(" · "):e}catch{return e}}function Io(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 ga(e,t){if(Array.isArray(t))return t.map(r=>ga(e,r)).join(", ");if(t&&typeof t=="object")return Object.entries(t).map(([r,a])=>`${Io(r)}: ${ga(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 jh({action:e,prompt:t,selectedActionMentionText:s,selectedInvocationPosition:r}){if(!e)return null;const a=s?.trim(),i=a?.startsWith("@")?a:vh(e);return i?xh(yh(t),i,r):null}function wh({attachmentCount:e,prompt:t,selectedAction:s,selectedCommand:r}){return!!(t.trim()||e>0||s||r)}const kh=new Set(["openpond-agent-authoring","openpond-skill-authoring","openpond-taskset-authoring","openpond-refiner-authoring"]);function Ch({activeMentionKey:e,activeSkillKey:t,activeSlashKey:s,addMenuIndex:r,addMenuItems:a,addMenuOpen:i,addMenuPanelRef:l,addMenuRef:c,attachmentCount:u,composerRef:d,createImproveActive:h,goalRuntimeActive:v,inputRef:m,inputShellRef:p,mentionQuery:g,prompt:b,selectedActionId:w,selectAddMenuItem:x,setActionIndex:E,setActionMenuDismissedPrompt:C,setAddMenuIndex:A,setAddMenuOpen:R,setAddMenuQuery:M,setMentionMenuDismissedPrompt:k,setMentionIndex:$,setSkillIndex:O,setSkillMenuDismissedPrompt:U,skillMatchCount:Q,skillQuery:F,slashMatchCount:H,slashQuery:V,showActionMenu:ce,showMentionMenu:ge,showSkillMenu:ae}){const[fe,q]=o.useState({}),[xe,G]=o.useState({}),[D,_]=o.useState({}),[ie,Ee]=o.useState({});return o.useEffect(()=>{$(0)},[g]),o.useEffect(()=>{O(0)},[Q,F]),o.useEffect(()=>{E(0)},[H,V]),o.useEffect(()=>{const se=m.current?.element,de=se?.parentElement;if(!se||!de||typeof ResizeObserver>"u")return;const K=new ResizeObserver(()=>m.current?.resize());return K.observe(de),()=>K.disconnect()},[]),o.useEffect(()=>{if(!i)return;function se(K){const ee=K.target,X=m.current?.element?.parentElement;!c.current?.contains(ee)&&!l.current?.contains(ee)&&!X?.contains(ee)&&(R(!1),M(""),k(e),C(s),U(t))}function de(K){if(K.key==="Escape"){K.preventDefault(),R(!1),M(""),k(e),C(s),U(t);return}if(a.length!==0){if(K.key==="ArrowDown"){K.preventDefault(),A(ee=>(ee+1)%a.length);return}if(K.key==="ArrowUp"){K.preventDefault(),A(ee=>(ee-1+a.length)%a.length);return}if(K.key==="Home"){K.preventDefault(),A(0);return}if(K.key==="End"){K.preventDefault(),A(a.length-1);return}if(K.key==="Enter"){K.preventDefault();const ee=a[r]??a[0];ee&&x(ee)}}}return document.addEventListener("pointerdown",se),document.addEventListener("keydown",de),()=>{document.removeEventListener("pointerdown",se),document.removeEventListener("keydown",de)}},[e,t,s,r,a,i]),o.useLayoutEffect(()=>{if(!i)return;const se=p.current;if(!se)return;const de=se;function K(){Ee(Jd(de))}return K(),window.addEventListener("resize",K),window.addEventListener("scroll",K,!0),()=>{window.removeEventListener("resize",K),window.removeEventListener("scroll",K,!0)}},[i,u,h,v]),o.useLayoutEffect(()=>{if(!ce)return;const se=m.current?.element,de=d.current;if(!se||!de)return;const K=se,ee=de;function X(){_(Zr(K,ee))}return X(),window.addEventListener("resize",X),window.addEventListener("scroll",X,!0),()=>{window.removeEventListener("resize",X),window.removeEventListener("scroll",X,!0)}},[u,h,v,b,w,ce]),o.useLayoutEffect(()=>{if(!ae)return;const se=m.current?.element,de=d.current;if(!se||!de)return;const K=se,ee=de;function X(){G(Zr(K,ee))}return X(),window.addEventListener("resize",X),window.addEventListener("scroll",X,!0),()=>{window.removeEventListener("resize",X),window.removeEventListener("scroll",X,!0)}},[u,h,v,b,w,ae]),o.useLayoutEffect(()=>{if(!ge)return;const se=m.current?.element,de=d.current;if(!se||!de)return;const K=se,ee=de;function X(){q(Zr(K,ee))}return X(),window.addEventListener("resize",X),window.addEventListener("scroll",X,!0),()=>{window.removeEventListener("resize",X),window.removeEventListener("scroll",X,!0)}},[u,h,v,b,w,ge]),{actionMenuStyle:D,addMenuStyle:ie,mentionMenuStyle:fe,skillMenuStyle:xe}}const Sh=o.lazy(()=>Re(()=>import("./ComposerCreateImproveStrip-oeVeyhPX.js"),__vite__mapDeps([0,1,2,3,4,5,6])).then(e=>({default:e.ComposerCreateImproveStrip}))),Rh=wa.find(e=>e.id==="submit-issue"),Eh=[],Mh=[];function To({experience:e="development",mode:t,surface:s="chat",teamUseModel:r=!1,teamUseModelLocked:a=!1,teamMentionMembers:i=[],onTeamUseModelChange:l,prompt:c,composeNotice:u=null,mentionApps:d=[],connectedAppMentions:h=[],profileSkills:v=[],selectedMentionAppId:m=null,contextWindowStatus:p,goalRuntime:g=null,subagentRuntime:b=null,createImproveRuntime:w=null,busy:x,readOnlyReason:E=null,running:C=x,taskSessionId:A=null,taskEvents:R=Mh,steerActiveResponses:M=!1,submissionScopeKey:k="default",getCurrentSubmissionScopeKey:$,voiceInputChannelKey:O=k,initialSteerDrafts:U=Eh,showProjectFooter:Q=!0,hideModelControls:F=!1,autoFocus:H=!1,focusRequestId:V=0,attachmentRequest:ce=null,connection:ge,providerSettings:ae=null,provider:fe,model:q,projectTarget:xe,profileTarget:G=null,actionCatalog:D=[],requestedAction:_=null,workspaceTarget:ie,codexPermissionMode:Ee,codexReasoningEffort:se,openPondCommandAccessMode:de,onProviderChange:K,onProviderSetupOpen:ee,onProjectTargetChange:X,onProfileTargetChange:Z,onWorkspaceTargetChange:re,onModelChange:Ie,onCodexPermissionModeChange:Le,onCodexReasoningEffortChange:je,onOpenPondCommandAccessModeChange:S,onPromptChange:T,onMentionAppSelect:L,onSaveTaskDraft:W,showToast:te,onSubmit:Ae,onStop:ve,onPauseGoal:Pe}){const Mt=o.useMemo(()=>{for(let f=R.length-1;f>=0;f--){const j=R[f];if(j.sessionId!==A||!["session.started","session.updated","session.title.updated"].includes(j.name))continue;const P=j.data,z=Dl.safeParse(P&&typeof P=="object"&&"session"in P?P.session:null);if(z.success)return typeof z.data.metadata?.nativeReadOnlyReason=="string"?z.data.metadata.nativeReadOnlyReason:null}return E},[E,R,A]),et=o.useRef(null),y=o.useRef(null),I=o.useRef(null),J=M,we=yd(ge,A,R),ne=o.useRef(null),Te=o.useRef(null),$e=o.useRef(null),at=o.useRef(null),Be=o.useRef(0),Ht=_&&D.some(f=>f.id===_.actionId)?_:null,tt=o.useRef(!1),it=o.useRef(0),Vt=o.useRef(Ht?.requestId??0),Wt=o.useRef(new Set),rn=o.useRef(new Set),[ke,Ve]=o.useState(c.length),Ls=o.useRef(ke);Ls.current=ke;const[Os,kn]=o.useState(0),[zs,Cn]=o.useState(0),[Fs,Sn]=o.useState(0),[Ds,De]=o.useState(0),[Bs,Gt]=o.useState(""),[Nt,Kt]=o.useState(null),[nt,gt]=o.useState(null),[an,Yn]=o.useState(null),[Ke,bt]=o.useState(!1),[Rn,En]=o.useState(!1),[ut,xt]=o.useState(Ht?.actionId??null),[Mn,dt]=o.useState(null),[vt,We]=o.useState(null),[Zn,yt]=o.useState(null),[es,Nn]=o.useState(null),[ts,An]=o.useState(!1),[In,ns]=o.useState(()=>({[k]:U})),[on,Tn]=o.useState(null),[ss,ot]=o.useState(!1),[be,Us]=o.useState(""),[jt,rs]=o.useState(!1),{attachmentError:$n,attachments:Qe,addFiles:Oe,removeAttachment:wt,settleStagedAttachments:kt,setAttachmentError:At,stageAttachmentsForSubmit:as}=mh(),qs=o.useRef(0);o.useEffect(()=>{!ce||qs.current===ce.id||(qs.current=ce.id,Oe([ce.file]))},[Oe,ce]);const is=o.useCallback(f=>{const j=ah(f,Qe);return!j||Qe.length>=tn.maxAttachments||j.size>tn.maxAttachmentBytes?!1:(Oe([j]),!0)},[Oe,Qe]),Hs=bf({experience:e,mode:t,surface:s}),ln=e==="development"||e==="work"&&xe.value!=="none",$r=Bl(fe,q,ae),Pn="top",Vs=o.useId(),Pr=o.useId(),_r=o.useId(),Ws={"--context-fill":`${Math.round((p.percent??0)/100*360)}deg`,"--context-bar-fill":`${p.percent??0}%`},_e=o.useMemo(()=>D.find(f=>f.id===ut)??null,[D,ut]),Ct=o.useMemo(()=>Ul(fe,e),[e,fe]),lt=o.useMemo(()=>ln?v:v.filter(f=>!kh.has(f.name)),[e,v]),ze=o.useMemo(()=>Ct.find(f=>f.id===Mn)??null,[Ct,Mn]),cn=jh({action:_e,prompt:c,selectedActionMentionText:Zn,selectedInvocationPosition:vt}),Gs=wh({attachmentCount:Qe.length,prompt:c,selectedAction:_e,selectedCommand:ze}),Lr=o.useMemo(()=>{const f=Math.max(0,Math.min(vt??0,c.length));return ze?{icon:ze.id==="agent"?"plus":ze.id==="skill"?"skill":"workflow",key:`command:${ze.id}`,label:ze.id==="agent"?"Author Agent":ze.id,position:f,onRemove:()=>{dt(null),We(null),yt(null)}}:_e?{icon:_e.implementation?.type==="openpond-agent"?"bot":"workflow",key:`action:${_e.id}`,label:ya(_e),position:f,onRemove:()=>{xt(null),We(null),yt(null)}}:null},[c.length,_e,ze,vt]),un=es===k,Ks=un||!Gs,Or=un?"Preparing files":C?J?"Steer":"Queue":"Send",ft=un,It=un;function os(f=k){if(Mt)return!1;const j=Wt.current;return j.has(f)?!1:(j.add(f),!0)}function Tt(f){Wt.current.delete(f)}function Qt(f){return Wt.current.has(f)}function ls(){return Qt(k)}function dn(f){Nn(j=>j===f?null:j)}const zr=o.useMemo(()=>{const f=ql(ae,{enabledOnly:!0}).map(oe=>({...oe,description:void 0})),j=ln?f:f.filter(oe=>oe.value!=="codex"),P=ie.value==="cloud"&&ln?j.filter(oe=>oe.value==="openpond"):j,z=P.some(oe=>oe.value===fe)?P:[{value:fe,label:Hl(fe,ae),description:"Current"},...P],ue={value:"setup-provider",label:"New Model/Provider",icon:"plus",separatorBefore:!0};return[...z,ue]},[fe,ae,ln,ie.value]),_n=o.useMemo(()=>xa(fe,ae),[fe,ae]),Fe=o.useMemo(()=>Vl(c,Math.min(ke,c.length)),[ke,c]),fn=Fe?`${c}:${Fe.start}:${Math.min(ke,c.length)}`:null,$t=o.useMemo(()=>Fe?xi({actionCatalog:D,connectedAppMentions:h,mentionApps:d,profileSkills:lt,query:Fe.query,surface:s,teamMentionMembers:i}):[],[D,h,d,Fe,lt,s,i]),hn=o.useMemo(()=>s==="team"?[]:xi({actionCatalog:D,connectedAppMentions:h,mentionApps:d,profileSkills:lt,query:"",surface:s,teamMentionMembers:i}).filter(f=>f.kind!=="skill"),[D,h,d,lt,s,i]),Ln=!!(!Ke&&!ft&&Fe&&fn&&Nt!==fn&&$t.length>0),st=o.useMemo(()=>ud(c,Math.min(ke,c.length)),[ke,c]),Xt=st?`${c}:${st.start}:${st.end}`:null,Xe=o.useMemo(()=>st?xr(lt,st.query):[],[st,lt]),cs=!!(!Ke&&!ft&&st&&Xt&&an!==Xt),me=o.useMemo(()=>ph(c,Math.min(ke,c.length)),[ke,c]),Jt=me?`${c}:${me.start}:${me.end}`:null,Qs=o.useMemo(()=>me?gi(D,me.query):[],[D,me]),us=o.useMemo(()=>me&&s!=="team"?bi(d,me.query):[],[me,d,s]),Xs=o.useMemo(()=>me&&s!=="team"?bh(me.query,Ct):[],[me,Ct,s]),ds=o.useMemo(()=>me&&s!=="team"?xr(lt,me.query):[],[me,lt,s]),ct=o.useMemo(()=>[...Qs.map(f=>({kind:"action",action:f})),...ds.map(f=>({kind:"skill",skill:f})),...Xs.map(f=>({kind:"command",command:f})),...us.map(f=>({kind:"app-context",app:f}))],[Qs,us,Xs,ds]),On=!!(!Ke&&!ft&&me&&Jt&&nt!==Jt),Js=o.useMemo(()=>Ct.map(f=>({kind:"command",command:f})),[Ct]),mn=o.useMemo(()=>[...gi(D,"").map(f=>({kind:"action",action:f})),...bi(d,"").map(f=>({kind:"app-context",app:f}))],[D,d]),pn=o.useMemo(()=>xr(lt,"").map(f=>({kind:"skill",skill:f})),[lt]),gn=o.useMemo(()=>{const f=[{id:"add",items:e==="work"?[{kind:"files"},{kind:"folder"}]:[{kind:"files"}],label:"Add"}];return mn.length>0&&f.push({id:"slash",items:mn.map(j=>({kind:"slash",item:j})),label:"Agents and actions",queryScope:"slash"}),pn.length>0&&f.push({id:"skills",items:pn.map(j=>({kind:"slash",item:j})),label:"Skills",queryScopes:["slash","mentions"]}),f.push({id:"openpond",items:Js.map(j=>({kind:"slash",item:j})),label:"OpenPond",grid:!0,queryScope:"slash"}),f.push({emptyLabel:"No mentions available",id:"mentions",items:hn.map(j=>({kind:"mention",item:j})),label:"@"}),f},[hn,Js,pn,mn,e]),Yt=o.useMemo(()=>Rf(gn,Bs),[Bs,gn]),zn=o.useMemo(()=>Yt.flatMap(f=>f.items),[Yt]);o.useEffect(()=>{Ke&&De(f=>f<zn.length?f:0)},[zn.length,Ke]);const bn=!!g,xn=bn&&g?.tone==="active",Pt=xn?"Pause goal":"Stop response",fs=xn?"pause":"stop",Me=e==="work"||xe.value!=="none",Fr=ma(In,k,U),hs=on?.scopeKey===k?on.draftId:null;function Fn(f,j){ns(P=>Cd(P,f,j,f===k?U:[]))}o.useLayoutEffect(()=>{I.current?.resize()},[Qe.length,$n,w,g,c,ut,Mn,vt]),o.useEffect(()=>{if(!H){tt.current=!1;return}if(tt.current||ft)return;const f=window.requestAnimationFrame(()=>{tt.current=!0;const j=document.activeElement;j&&j!==document.body&&j!==document.documentElement||I.current?.focusAtPromptIndex(c.length)});return()=>window.cancelAnimationFrame(f)},[H,ft,c.length]),o.useEffect(()=>{!V||it.current===V||ft||(it.current=V,window.requestAnimationFrame(()=>{I.current?.focusAtPromptIndex(c.length)}))},[V,ft,c.length]),o.useEffect(()=>{g||An(!1)},[g]),o.useEffect(()=>{ut&&!D.some(f=>f.id===ut)&&(xt(null),We(null))},[D,ut]),o.useEffect(()=>{if(!_||_.requestId<=Vt.current)return;const f=D.find(j=>j.id===_.actionId);f&&(Vt.current=_.requestId,xt(f.id),dt(null),We(0),yt(null),T(""),Ve(0),window.requestAnimationFrame(()=>{I.current?.focusAtPromptIndex(0,{afterToken:!0})}))},[D,T,_]),o.useEffect(()=>{!_e&&!ze||We(f=>f===null?0:Math.max(0,Math.min(f,c.length)))},[c.length,_e,ze]),o.useEffect(()=>{if(!m||!L)return;const f=d.find(j=>j.id===m);(!f||!Wl(c,f))&&L(null)},[d,L,c,m]);const{actionMenuStyle:Dr,addMenuStyle:Br,mentionMenuStyle:Ur,skillMenuStyle:_t}=Ch({activeMentionKey:fn,activeSkillKey:Xt,activeSlashKey:Jt,addMenuIndex:Ds,addMenuItems:zn,addMenuOpen:Ke,addMenuPanelRef:at,addMenuRef:$e,attachmentCount:Qe.length,composerRef:et,createImproveActive:!!w,goalRuntimeActive:!!g,inputRef:I,inputShellRef:y,mentionQuery:Fe?.query,prompt:c,selectedActionId:ut,selectAddMenuItem:Un,setActionIndex:Sn,setActionMenuDismissedPrompt:gt,setAddMenuIndex:De,setAddMenuOpen:bt,setAddMenuQuery:Gt,setMentionMenuDismissedPrompt:Kt,setMentionIndex:kn,setSkillIndex:Cn,setSkillMenuDismissedPrompt:Yn,skillMatchCount:Xe.length,skillQuery:st?.query,slashMatchCount:ct.length,slashQuery:me?.query,showActionMenu:On,showMentionMenu:Ln,showSkillMenu:cs});function Lt(){xt(null),dt(null),We(null),yt(null)}function qr(){Lt(),T(""),Ve(0)}function ms(f){Us(f.trim()),ot(!0)}function Zt(){jt||(ot(!1),Lt())}async function Hr(){return await(xn&&Pe?Pe():ve())}function Dn(f,j){const P=Math.max(0,Math.min(ke,c.length)),z=j?Math.max(0,Math.min(j.start,c.length)):P,ue=j?Math.max(z,Math.min(j.end,c.length)):z,oe=c.slice(0,z),Ne=c.slice(ue),Rt=oe&&!/\s$/.test(oe)?" ":"",zt=Ne&&!/^\s/.test(Ne)?" ":"",Ft=`${Kl(f)} `,Et=`${Rt}${Ft}${zt}`,yn=`${oe}${Et}${Ne}`,rt=oe.length+Et.length;return T(yn),L?.(f.id),Ve(rt),window.requestAnimationFrame(()=>{I.current?.focusAtPromptIndex(rt)}),rt}function ps(f){if(!Fe)return;const j=Math.max(0,Math.min(ke,c.length));Dn(f,{start:Fe.start,end:j})}function Ot(f,j,P=null){const z=Math.max(0,Math.min(ke,c.length)),ue=j?Math.max(0,Math.min(j.start,c.length)):z,oe=j?Math.max(ue,Math.min(j.end,c.length)):ue,Ne=`${c.slice(0,ue)}${c.slice(oe)}`;return xt(f.id),dt(null),We(ue),yt(P?.startsWith("@")?P:null),gt(null),T(Ne),Ve(ue),window.requestAnimationFrame(()=>{I.current?.focusAtPromptIndex(ue,{afterToken:!0})}),ue}function Vr(f){if(!Fe)return;const j=Math.max(0,Math.min(ke,c.length)),P=Math.max(0,Math.min(Fe.start,c.length)),z=Math.max(P,Math.min(j,c.length));Ot(f,{start:P,end:z},c.slice(P,z).trim())}function Ue(f,j){const P=Math.max(0,Math.min(ke,c.length)),z=j?Math.max(0,Math.min(j.start,c.length)):P,ue=j?Math.max(z,Math.min(j.end,c.length)):z,oe=c.slice(0,z),Ne=c.slice(ue),Rt=oe&&!/\s$/.test(oe)?" ":"",zt=Ne&&!/^\s/.test(Ne)?" ":"",Ft=`${Ql(f)} `,Et=`${Rt}${Ft}${zt}`,yn=`${oe}${Et}${Ne}`,rt=oe.length+Et.length;return T(yn),Ve(rt),window.requestAnimationFrame(()=>{I.current?.focusAtPromptIndex(rt)}),rt}function Bn(f){if(!Fe)return;const j=Math.max(0,Math.min(ke,c.length));Ue(f,{start:Fe.start,end:j})}function Ys(f,j){const P=Math.max(0,Math.min(ke,c.length)),z=j?Math.max(0,Math.min(j.start,c.length)):P,ue=j?Math.max(z,Math.min(j.end,c.length)):z,oe=f.handle||Kn(f.name),Ne=c.slice(0,z),Rt=c.slice(ue),zt=Ne&&!/\s$/.test(Ne)?" ":"",Ft=Rt&&!/^\s/.test(Rt)?" ":"",Et=`${zt}@${oe} ${Ft}`,yn=`${Ne}${Et}${Rt}`,rt=Ne.length+Et.length;return T(yn),Ve(rt),window.requestAnimationFrame(()=>I.current?.focusAtPromptIndex(rt)),rt}function Zs(f){if(f.kind==="team-member"){if(!Fe)return;const j=Math.max(0,Math.min(ke,c.length));Ys(f.member,{start:Fe.start,end:j});return}if(f.kind==="app"){ps(f.app);return}if(f.kind==="connected-app"){Bn(f.app);return}if(f.kind==="skill"){if(!Fe)return;const j=Math.max(0,Math.min(ke,c.length));St(f.skill,{start:Fe.start,end:j});return}Vr(f.action)}function er(f){me&&(gt(null),Dn(f,{start:me.start,end:me.end}))}function Wr(f){me&&Ot(f,me)}function ht(f,j){const P=Math.max(0,Math.min(ke,c.length)),z=j?Math.max(0,Math.min(j.start,c.length)):P,ue=j?Math.max(z,Math.min(j.end,c.length)):z,oe=`${c.slice(0,z)}${c.slice(ue)}`;return dt(f.id),xt(null),We(z),yt(null),gt(null),T(oe),Ve(z),f.id==="submit-issue"&&ms(oe),window.requestAnimationFrame(()=>{I.current?.focusAtPromptIndex(z,{afterToken:!0})}),z}function tr(f){me&&ht(f,me)}function vn(f){if(f.kind==="command"){tr(f.command);return}if(f.kind==="app-context"){er(f.app);return}if(f.kind==="skill"){if(!me)return;St(f.skill,me);return}Wr(f.action)}function St(f,j){const P=dd(c,j,f);return Yn(null),Kt(null),gt(null),T(P.value),Ve(P.cursor),window.requestAnimationFrame(()=>{I.current?.focusAtPromptIndex(P.cursor)}),P.cursor}function Je(f){st&&St(f,st)}function nr(){ne.current?.click()}function gs(){Te.current?.click()}function Ge(f){Be.current=f,Gt(""),De(0)}function bs(){const f=Math.max(0,Math.min(ke,c.length)),j=Math.max(0,Math.min(Be.current,c.length));return f>=j?{start:j,end:f}:{start:f,end:f}}function Un(f){const j=bs();if(bt(!1),Gt(""),f.kind==="files"||f.kind==="folder"){if(j.start!==j.end){const P=`${c.slice(0,j.start)}${c.slice(j.end)}`;T(P),Ve(j.start)}Ge(j.start),f.kind==="folder"?gs():nr();return}if(f.kind==="slash"){if(f.item.kind==="command"){Ge(ht(f.item.command,j));return}if(f.item.kind==="app-context"){Ge(Dn(f.item.app,j));return}if(f.item.kind==="skill"){Ge(St(f.item.skill,j));return}Ge(Ot(f.item.action,j));return}if(f.item.kind==="team-member"){Ge(Ys(f.item.member,j));return}if(f.item.kind==="app"){Ge(Dn(f.item.app,j));return}if(f.item.kind==="connected-app"){Ge(Ue(f.item.app,j));return}if(f.item.kind==="skill"){Ge(St(f.item.skill,j));return}Ge(Ot(f.item.action,j))}const{stageCurrentSteerDraft:qn,submitImmediateSteer:sr}=cd({running:C,scope:k,inbox:we,getPrompt:()=>I.current?.getPrompt()??c,hasFilesOrActions:!!(Qe.length||_e||ze),provider:fe,model:q,codexPermissionMode:Ee,codexReasoningEffort:se,openPondCommandAccessMode:de,getCurrentSubmissionScopeKey:$,onSubmit:Ae,showToast:te,begin:f=>rn.current.has(f)?!1:(rn.current.add(f),!0),finish:f=>{rn.current.delete(f)},clear:qr,setError:At,stageLocal:f=>{Fn(k,j=>[...j,uo(f)]),window.requestAnimationFrame(()=>I.current?.focusAtPromptIndex(0))}});async function xs(f){const j=k;if(on?.scopeKey===j)return!1;const P=ma(In,j,U).find(z=>z.id===f);if(!P)return!1;Tn({draftId:f,scopeKey:j}),At(null);try{const z=C,ue=await Ae([],null,null,{preservePrompt:!0,promptOverride:P.prompt,...z?{turnMetadata:{interactionKind:"steer"}}:{}});return Fn(j,oe=>kd(oe,f,ue)),ue}catch(z){return At(z instanceof Error?z.message:String(z)),!1}finally{Tn(z=>z?.scopeKey===j&&z.draftId===f?null:z)}}function vs(f){hs!==f&&Fn(k,j=>fo(j,f))}function ys(f){if(hs!==f.id){if(Qe.length>0||ut||Mn){te("Finish the current composer before editing a queued message.","info");return}Fn(k,j=>wd(j,f.id,c)),T(f.prompt),Ve(f.prompt.length),window.requestAnimationFrame(()=>{I.current?.focusAtPromptIndex(f.prompt.length)})}}async function Hn(f={}){const j=k;if(!os(j))return!1;bt(!1),At(null);const P=as();try{Nn(P.length>0?j:null);let z;try{z=await Promise.all(P.map(ch))}finally{dn(j)}const ue=_e&&cn&&!c.trim()?cn:void 0,oe=f.promptOverride??ue,Ne=await Ae(z,_e,ze,cn||oe||f.preservePrompt?{...cn?{displayPrompt:cn}:{},...oe!==void 0?{promptOverride:oe}:{},...f.preservePrompt?{preservePrompt:!0}:{}}:void 0);return kt(P,Ne?"dispose":"restore"),Ne&&!Xl(_e)&&Lt(),Ne}catch(z){return kt(P,"restore"),At(z instanceof Error?z.message:String(z)),!1}finally{Tt(j),dn(j)}}async function en(){if(C){J?await sr():await qn();return}if(ls())return;const f=_e||ze?null:Di(c);if(ze?.id==="submit-issue"||f?.command==="submit-issue"){ms(f?.command==="submit-issue"?f.args:c);return}Ks||await Hn()}function js(){bd(O)||en()}async function rr(f){if(ls()||jt)return!1;const j=k;if(!os(j))return!1;rs(!0),bt(!1),At(null);try{const P=await Ae([],null,Rh,{displayPrompt:`/submit-issue ${f.title.trim()}`,promptOverride:Gl(f)});return P&&(ot(!1),Lt()),P}catch(P){return At(P instanceof Error?P.message:String(P)),!1}finally{Tt(j),rs(!1)}}async function Vn(f,j){const P=I.current?.getPrompt()??c,z=Math.max(0,Math.min(Ls.current,P.length)),ue=lo(P,f,j.submit?P.length:z),oe=await hd({appendToEnd:j.submit,currentScopeKey:$?.()??k,cursorIndex:z,originScopeKey:k,prompt:P,setOriginDraft:Ne=>T(Ne),submitFromOrigin:Ne=>Hn({preservePrompt:!0,promptOverride:Ne}),transcript:f});if(oe==="retained"){te("The voice message couldn't be sent. It is saved in the original chat draft.","error");return}if(oe==="submitted"){te("Voice message sent to the chat where recording started.","success");return}if(j.submit){if(C){J?await sr(ue.value):await qn(ue.value);return}await Hn({promptOverride:ue.value});return}Ve(ue.cursorIndex),window.requestAnimationFrame(()=>{I.current?.focusAtPromptIndex(ue.cursorIndex)})}return Mt?n.jsx("p",{className:"composer dock",role:"status",children:Mt}):n.jsxs("form",{ref:et,className:`composer ${t} ${w?"has-create-runtime":""} ${bn?"has-goal-runtime":""} ${Qe.length>0?"has-attachments":""} ${_e||ze?"has-selected-action":""} ${$n?"has-attachment-error":""} ${Ke?"has-add-menu":""}`,onSubmit:f=>{f.preventDefault(),en()},children:[n.jsx("input",{webkitdirectory:"",ref:Te,className:"composer-file-input",type:"file",multiple:!0,tabIndex:-1,onChange:f=>{Oe(Array.from(f.currentTarget.files??[])),f.currentTarget.value=""}}),Ln&&n.jsx(Nf,{items:$t,mentionIndex:Os,onSelect:Zs,onSelectIndex:kn,style:Ur}),cs&&n.jsx(Wf,{items:Xe,onSelect:Je,onSelectIndex:Cn,skillIndex:zs,style:_t}),On&&n.jsx(Gf,{actionCatalogCount:D.length,actionIndex:Fs,items:ct,onSelect:vn,onSelectIndex:Sn,style:Dr}),n.jsx(Kf,{busy:jt,initialDescription:be,open:ss,onClose:Zt,onSubmit:rr}),Q&&n.jsxs("div",{className:"composer-footer",children:[Q?n.jsx(Nd,{busy:x||xe.busy,placement:Pn,state:xe,onChange:X}):null,G&&Z?n.jsx(po,{busy:x,placement:Pn,state:G,onChange:Z}):null,Me?n.jsx(Ad,{busy:x,placement:Pn,state:ie,onChange:re}):null]}),w?n.jsx(o.Suspense,{fallback:null,children:n.jsx(Sh,{runtime:w})}):null,we.enabled?n.jsx(Sd,{inbox:we,onRestore:f=>{const j=!$||$()===k,P=j?I.current?.getPrompt()??c:c;T(P.trim()?`${P}
52
+
53
+ ${f}`:f),j&&I.current?.focusAtPromptIndex(0)}}):n.jsx($d,{drafts:Fr,sendingDraftId:hs,onDeleteDraft:vs,onEditDraft:ys,onSteerDraft:f=>{xs(f)}}),bn&&g&&n.jsx(Td,{detailsOpen:ts,goalRuntime:g,objectiveId:_r,subagentRuntime:b,onToggleDetails:()=>An(f=>!f)}),u&&n.jsx("div",{className:`composer-notice ${u.tone}`,role:"status",children:u.message}),n.jsxs("div",{className:"composer-input-shell",ref:y,children:[Ke&&s!=="team"&&n.jsx(Sa,{id:Vs,ariaLabel:"Add to message",className:"composer-add-command-menu",menuIndex:Ds,menuRef:at,sections:Yt,style:Br,variant:"add",onSelect:Un,onSelectIndex:De}),Qe.length>0&&n.jsx("div",{className:"composer-attachments","aria-label":"Selected attachments",children:Qe.map(f=>n.jsx(ih,{attachment:f,onRemove:()=>wt(f.id)},f.id))}),$n&&n.jsx("div",{className:"composer-attachment-error",role:"status",children:$n}),n.jsx("div",{className:"composer-textarea-frame",onClick:f=>{f.target===f.currentTarget&&I.current?.focusAtPromptIndex(ke)},children:n.jsx(mf,{ref:I,connectedAppMentions:h,disabled:ft,onCursorChange:Ve,onKeyDown:f=>{if(Ke&&["ArrowDown","ArrowUp","Home","End","Enter","Escape"].includes(f.key)){f.preventDefault();return}if(Ln){if(f.key==="ArrowDown"){f.preventDefault(),kn(j=>(j+1)%$t.length);return}if(f.key==="ArrowUp"){f.preventDefault(),kn(j=>(j-1+$t.length)%$t.length);return}if(f.key==="Enter"||f.key==="Tab"){f.preventDefault(),Zs($t[Os]??$t[0]);return}if(f.key==="Escape"){f.preventDefault(),Kt(fn);return}}if(cs){if(Xe.length>0&&f.key==="ArrowDown"){f.preventDefault(),Cn(j=>(j+1)%Xe.length);return}if(Xe.length>0&&f.key==="ArrowUp"){f.preventDefault(),Cn(j=>(j-1+Xe.length)%Xe.length);return}if(Xe.length>0&&(f.key==="Enter"||f.key==="Tab")){f.preventDefault(),Je(Xe[zs]??Xe[0]);return}if(f.key==="Escape"){f.preventDefault(),Yn(Xt??c);return}}if(On){if(ct.length>0&&f.key==="ArrowDown"){f.preventDefault(),Sn(j=>(j+1)%ct.length);return}if(ct.length>0&&f.key==="ArrowUp"){f.preventDefault(),Sn(j=>(j-1+ct.length)%ct.length);return}if(ct.length>0&&(f.key==="Enter"||f.key==="Tab")){f.preventDefault(),vn(ct[Fs]??ct[0]);return}if(f.key==="Escape"){f.preventDefault(),gt(Jt??c);return}}if((_e||ze)&&f.key==="Backspace"&&ke===(vt??0)){f.preventDefault(),Lt();return}if(gf(f.key,f.ctrlKey,f.metaKey,f.shiftKey,e,s,!!W)){f.preventDefault(),pf({attachmentsCount:Qe.length,hasSelectedInvocation:!!(_e||ze),onSave:W,onSaved:Lt,prompt:c,saving:Rn,setSaving:En,showInfo:j=>te(j,"info")});return}f.key==="Enter"&&!f.shiftKey&&(f.preventDefault(),un||en())},onPasteFiles:Oe,onPasteTextAsAttachment:is,onPromptChange:(f,j)=>{if(Ke){const z=Math.max(0,Math.min(Be.current,f.length));j<z?(Be.current=j,Gt("")):Gt(f.slice(z,j))}const P=s==="team"?null:gh(f,j,Ct);if(P){const z=`${f.slice(0,P.start)}${f.slice(P.end)}`,ue=P.start;T(f),Ve(j),window.requestAnimationFrame(()=>{dt(P.command.id),xt(null),We(ue),gt(null),T(z),Ve(ue),P.command.id==="submit-issue"&&ms(z),window.requestAnimationFrame(()=>{I.current?.focusAtPromptIndex(ue,{afterToken:!0})})});return}T(f)},onTokenPositionChange:f=>{if(!(!_e&&!ze)){if(f===null){Lt();return}We(f)}},placeholder:Hs,prompt:c,token:Lr})}),n.jsx(Hf,{surface:s,teamUseModel:r,teamUseModelLocked:a,onTeamUseModelChange:l,addFiles:Oe,addMenuId:Vs,addMenuOpen:Ke,addMenuRef:$e,busy:x,codexPermissionMode:Ee,codexReasoningEffort:se,connection:ge,contextStatusStyle:Ws,contextStatusTooltipId:Pr,contextWindowStatus:p,disabled:It,dropdownPlacement:Pn,fileInputRef:ne,modelValue:$r,modelOptions:_n,hideModelControls:F,openPondCommandAccessMode:de,showCommandAccess:ln,profileTarget:Q?null:G,onCodexPermissionModeChange:Le,onCodexReasoningEffortChange:je,onOpenPondCommandAccessModeChange:S,onProfileTargetChange:Z,onModelChange:Ie,onOpenFilePicker:nr,onProviderChange:K,onProviderSetupOpen:ee,onSend:js,onStop:Hr,onToggleAddMenu:()=>{const f=Math.max(0,Math.min(ke,c.length));Ke||(Be.current=f,Gt(""),De(0),bt(!0)),window.requestAnimationFrame(()=>{I.current?.focusAtPromptIndex(f)})},onTranscript:Vn,voiceInputChannelKey:O,provider:fe,providerSettings:ae,providerOptions:zr,running:C,sendDisabled:Ks,hasComposerInput:Gs,sendTooltip:Or,showToast:te,stopIcon:fs,stopLabel:Pt})]})]})}const vi=o.memo(function({draftStore:t,...s}){const r=Jl(t),a=t.getScopeKey(),i=o.useCallback(l=>{t.setForScope(a,l)},[a,t]);return n.jsx(Yl,{id:"composer",children:n.jsx(To,{...s,prompt:r,onPromptChange:i})})});function Nh({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 u=a.multiSelect?(c.target.checked?[...l.filter(Boolean),i.label]:l.filter(d=>d!==i.label)).join(", "):i.label;r({...t,[a.question]:u})}}),i.label,i.description?n.jsx("small",{children:i.description}):null]},i.label)}),n.jsxs("label",{children:["Your answer",n.jsx("input",{type:"text",maxLength:8e3,value:t[a.question]??"",onChange:i=>r({...t,[a.question]:i.target.value})})]})]},a.question))})}function yi({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=Ah(e.detail),c=typeof e.providerRequestId=="string"&&e.providerRequestId.startsWith("native-agent:");let u=[],d=[];if(c)try{const p=JSON.parse(e.detail);u=p.options??[],d=p.questions??[]}catch{}const h=c?u.some(p=>p.kind==="allow_always"):e.kind!=="subagent_patch_apply",v=u.find(p=>p.kind==="allow_always")?.name;async function m(p){if(!(!e||s)){r(p);try{await t(e.id,p,p==="accept"&&d.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":`${ji(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:ji(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})]}),d.length?n.jsx(Nh,{questions:d,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||d.some(p=>!a[p.question]?.trim())||c&&!u.some(p=>p.kind==="allow_once"),onClick:()=>{m("accept")},children:[n.jsx(Ut,{size:14}),n.jsx("span",{children:s==="accept"?"Sending":d.length?"Submit answers":"Approve"})]}),h?n.jsxs("button",{type:"button",className:"approval-action",title:c?v:"Approve for the rest of this session",disabled:!!s,onClick:()=>{m("acceptForSession")},children:[n.jsx(eu,{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&&!u.some(p=>p.kind==="reject_once"),onClick:()=>{m("decline")},children:[n.jsx(nu,{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:()=>{m("cancel")},children:n.jsx($s,{size:15})})]})]})})}function ji(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 Ah(e){const t=e.trim();if(!t)return"";try{return JSON.stringify(JSON.parse(t),null,2)}catch{return t}}function Ih({resolution:e,onSelect:t,onClose:s}){const r=o.useRef(null),a=o.useId();return o.useEffect(()=>{const i=r.current;return i?.showModal(),()=>i?.close()},[]),n.jsxs("dialog",{ref:r,className:"chat-file-resolution","aria-labelledby":a,onCancel:s,children:[n.jsx("h2",{id:a,children:"Choose a file"}),n.jsxs("p",{children:["Matches for ",n.jsx("strong",{children:e.requestedPath})," in this project's folders:"]}),e.truncated?n.jsx("p",{children:"The search reached its limit. More matches may exist."}):null,n.jsx("div",{className:"chat-file-resolution-options",children:e.candidates.map(i=>n.jsx("button",{type:"button",onClick:()=>t(i),children:i},i))}),n.jsx("button",{type:"button",className:"git-dialog-secondary",onClick:s,children:"Cancel"})]})}const Th=/\.(?:m4v|mov|mp4|webm)$/i;function $h(e){return Th.test(e.trim().split(/[?#]/,1)[0]??"")}function Ph(e,t){let s=e.trim();if(!s||!$h(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 _h({conversationKey:e,connection:t,handleOpenBrowserLink:s,activeWorkspaceAppId:r,rightSidebarUsesSandbox:a,rightSidebarSandboxId:i,onShowDiffPanel:l,showToast:c,workspaceRootPath:u,setOpenDiffFileRequest:d}){const[h,v]=o.useState(null),m=o.useRef(0);o.useEffect(()=>(m.current++,v(null),()=>{m.current++}),[t,r,e,i]);const p=o.useCallback((x,E)=>{if(/[\\/]$/.test(x)){const M=/^(?:[~/\\]|[A-Za-z]:)/.test(x)?x:u?`${u}/${x}`:x;ka(M).then(k=>{k||c("Open this folder in the desktop app on the machine where it was created.","error")});return}const C=a?i:r;if(br(x)&&!E?.source&&t&&C){Dc(t,C,x,a?"sandbox":"local").then(M=>s(M)).catch(M=>c(M instanceof Error?M.message:"Could not open HTML preview.","error"));return}const A=Ph(x,u);if(A&&t){qe.signLocalVideoUrl(t,{path:A}).then(({url:M})=>s(M)).catch(M=>{c(M instanceof Error?M.message:"Could not open this video.","error")});return}const R=ha(x,{});l(),d({id:Date.now(),path:E?.source&&br(x)?(R?.path??x).replace(/[?#].*$/,""):R?.path??x,source:E?.source})},[t,s,r,a,i,l,c,u,d]),g=o.useCallback((x,E)=>{const C=++m.current;if(v(null),/^https?:\/\//i.test(x)){s(x);return}if(!t||!r||a){p(x,E);return}const A=ha(x)?.path??x,R=br(A)?A.match(/[?#].*$/)?.[0]??"":"",M=R?A.slice(0,-R.length):A;qe.resolveWorkspaceFile(t,r,M).then(k=>{C===m.current&&(k.status==="resolved"?p(k.kind==="directory"?`${k.path}/`:`${k.path}${R}`,E):k.candidates.length?v({requestedPath:x,candidates:k.candidates.map($=>`${$}${R}`),truncated:k.truncated,source:E?.source}):c(k.truncated?"The project search reached its limit. Open this file using its full path.":`Could not find ${x} in this project's folders. Try its full path.`,"error"))}).catch(k=>{C===m.current&&c(k instanceof Error?k.message:"Could not locate this file.","error")})},[t,r,a,p,s,c]),b=o.useCallback(()=>v(null),[]),w=o.useCallback(x=>{const E=h?.source;v(null),g(x,{source:E})},[h,g]);return{handleOpenFileInSidebar:g,fileResolution:h,dismissFileResolution:b,selectFileResolution:w}}function Lh(e,t={}){const s=e.map(r=>({id:`message:${r.id}`,type:"message",message:r,showFooter:r.role==="assistant"&&r.finalAnswer===!0}));return t.showThinkingIndicator&&s.push({id:"thinking",type:"thinking"}),s}function Oh(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 zh(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 Fh=new Set(["create","edit","help","list"]);function Dh(e,t,s=null){return Bh(e)}function Bh(e){const t=e.trim();if(!t)return"/skill";const[s=""]=t.split(/\s+/,1);return Fh.has(s.toLowerCase())?`/skill ${t}`:`/skill create ${t}`}async function Uh(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 qh(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 Hh(e){const[t,s]=o.useState(null),[r,a]=o.useState(null),[i,l]=o.useState(!1),[c,u]=o.useState(null),[d,h]=o.useState(null),v=o.useRef(null),m=o.useRef(0),p=o.useCallback(async(x,E={})=>{if(!e){a(null),u("OpenPond App server is not connected.");return}const C=m.current+1;m.current=C,E.silent||l(!0),u(null);try{const A=await qe.getCreateImproveCandidateDiff(e,x.runId,x.candidateId),R=v.current;if(C!==m.current||R?.runId!==x.runId||R.candidateId!==x.candidateId)return;a(A)}catch(A){if(C!==m.current)return;u(A instanceof Error?A.message:String(A))}finally{C===m.current&&!E.silent&&l(!1)}},[e]),g=o.useCallback(x=>{const E=v.current;if(!(x&&E?.runId===x.runId&&E.candidateId===x.candidateId)){if(v.current=x,s(x),h(null),!x){m.current+=1,a(null),u(null),l(!1);return}a(C=>C?.appId===Vh(x)?C:null),p(x)}},[p]),b=o.useCallback(async(x={})=>{const E=v.current;E&&await p(E,x)},[p]),w=o.useCallback(x=>{h({id:Date.now(),path:x})},[]);return o.useEffect(()=>{e||g(null)},[g,e]),{selection:t,diff:r,loading:i,error:c,openFileRequest:d,activate:g,refresh:b,openFile:w}}function Vh(e){return`candidate:${e.runId}:${e.candidateId}`}function Wh(e){const{activeModel:t,activeProvider:s,bootstrap:r,codexPermissionMode:a,codexReasoningEffort:i,connection:l,onOpenRightChatForSession:c,onPayload:u}=e,d=o.useCallback(async m=>{if(!l||!r)throw new Error("OpenPond is still connecting.");const p=r.profile;if(p.mode!=="local"||!p.repoPath)throw new Error("A local Git-backed Profile is required to change an Agent.");const g=m.authoringModel??Zl(s,t,r.providers);if(!g)throw new Error("Choose a model before changing an Agent.");const b=await qe.createSession(l,{provider:g.providerId,modelRef:g,systemKind:"openpond.lab",hiddenFromDefaultSidebar:!0,title:`${m.operation==="create"?"New":"Improve"} Agent · ${m.objective.slice(0,80)}`,cwd:p.repoPath,metadata:{source:m.operation==="create"?"lab_agent_create":"lab_agent_improve",profileId:p.activeProfile??"default",targetAgentId:m.agentId??null}}),w=m.objective.trim();if(!w)throw new Error(m.operation==="create"?"Describe what the Agent should do.":"Describe what the Agent could do better.");if(g.providerId==="codex")throw new Error("Agent authoring uses OpenPond's bundled authoring skill. Choose a hosted model.");const x=m.operation==="create"?`/agent create ${w}`:`/agent improve ${m.agentId??""} ${w}`,E=await qe.sendTurn(l,b.id,{prompt:x,model:g.modelId,modelRef:g,approvalPolicy:"never",sandbox:"workspace-write",codexPermissionMode:"default",codexReasoningEffort:i});if(E.status==="failed")throw new Error(E.error??"OpenPond could not complete the Agent authoring turn.");u(await qe.bootstrap(l)),c(b.id,b)},[t,s,r,a,i,l,c,u]),h=o.useCallback((m,p,g)=>d({objective:m,operation:"create",authoringRunId:p,authoringModel:g}),[d]),v=o.useCallback((m,p,g,b,w)=>d({agentId:m,agentName:g,objective:p,operation:"improve",authoringRunId:b,authoringModel:w}),[d]);return{createAgentFromLab:h,improveAgentFromLab:v}}const Gh=72,sa=120,$o=24,Kh=280,Qh=460;function dr(e){return e.scrollHeight-e.scrollTop-e.clientHeight<=Gh}const fr={canGoPrevious:!1,canGoNext:!1};function Po(e){return Array.from(e.querySelectorAll(".message-row.user")).filter(t=>t.parentElement===e)}function Xh({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 _s(e,t){return t.getBoundingClientRect().top-e.getBoundingClientRect().top+e.scrollTop}function _o(e,t){return _s(e,t)+t.getBoundingClientRect().height}function Lo(e){return e.scrollTop+$o}function Oo(e){return e.scrollTop+8}function Rs(e){const t=Lo(e),s=Oo(e);let r=!1,a=!1;for(const i of Po(e)){const l=_s(e,i);if(_o(e,i)<s&&(r=!0),l>t+8&&(a=!0),r&&a)break}return{canGoPrevious:r,canGoNext:a}}function Jh(e,t){const s=Po(e),r=Lo(e);if(t==="previous"){const a=Oo(e);for(let i=s.length-1;i>=0;i-=1){const l=s[i];if(_o(e,l)<a)return l}return null}for(const a of s)if(_s(e,a)>r+8)return a;return null}function Yh(e){return Math.min(Qh,Math.max(Kh,Math.abs(e)/5))}function Zh(e){return e<.5?4*e*e*e:1-Math.pow(-2*e+2,3)/2}function em(e){const t=ec({messages:e});return t?{run:t}:null}function wi(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(`
54
+
55
+ `):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 ra(e,t){return{surface:"chat",workflowKind:"slash_command",commandName:`/${e.command}`,commandSource:t}}function tm(e){return e.command==="goal"||e.command==="agent"||e.command==="skill"||e.command==="workflow"||e.command==="sync-cloud"}function nm(e){const t=e?.trim()??"";return/^[a-z0-9]{24}$/.test(t)?t:null}function sm({busy:e,handoff:t,onDismiss:s,onSelectTask:r}){const a=tc(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?`${rm(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(Hi,{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 rm(e){return e==="frozen_eval"?"Frozen evaluation":e==="validation"?"Validation":"Training"}function am({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(sm,{busy:s,handoff:r,onDismiss:a,onSelectTask:i})}function im({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(Qc,{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(Hi,{size:17})})]})}function om({busy:e,onSync:t}){return n.jsxs("button",{type:"button",className:"sync-local-button",disabled:e,onClick:t,children:[n.jsx(iu,{size:15}),n.jsx("span",{children:e?"Syncing locally":"Sync locally to work on this"})]})}function zo(e){return e.supportedView&&e.open&&!e.hasContentPanel}function lm(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"}const ki=96;function aa(e,t){if(!t.row.isConnected||t.row.parentElement!==e)return null;const s=Number.parseFloat(e.style.getPropertyValue("--chat-sent-message-space"))||0,r=Number.parseFloat(getComputedStyle(e).paddingBottom)-s,a=e.lastElementChild,i=a?a.getBoundingClientRect().bottom-t.row.getBoundingClientRect().top+r:r,l=Math.max(0,e.clientHeight-ki-i);return Math.abs(l-s)>.5&&e.style.setProperty("--chat-sent-message-space",`${l}px`),Math.max(0,_s(e,t.row)-ki)}function cm(e,t){const s=u=>{u.deltaY<0&&t()};let r=null;const a=u=>{r=u.touches[0]?.clientY??null},i=u=>{const d=u.touches[0]?.clientY??null;d!==null&&r!==null&&d>r&&t(),r=d},l=u=>{u.target?.closest?.("input, textarea, select, [contenteditable='true']")||(["ArrowUp","PageUp","Home"].includes(u.key)||u.key===" "&&u.shiftKey)&&t()},c=u=>{if(u.target!==e)return;const h=e.getBoundingClientRect().left+e.clientLeft+e.clientWidth;u.clientX>=h&&t()};return e.addEventListener("openpond-visual-interaction",t),e.addEventListener("wheel",s,{passive:!0}),e.addEventListener("touchstart",a,{passive:!0}),e.addEventListener("touchmove",i,{passive:!0}),e.addEventListener("keydown",l),e.addEventListener("pointerdown",c),()=>{e.removeEventListener("openpond-visual-interaction",t),e.removeEventListener("wheel",s),e.removeEventListener("touchstart",a),e.removeEventListener("touchmove",i),e.removeEventListener("keydown",l),e.removeEventListener("pointerdown",c)}}function Ci(e){const t=e.getBoundingClientRect().top;for(const s of Array.from(e.children)){const r=s.getBoundingClientRect();if(!(r.bottom<=t))return{row:s,offset:r.top-t}}return null}function um(e,t){if(t.row.parentElement!==e)return;const s=t.row.getBoundingClientRect().top-e.getBoundingClientRect().top;e.scrollTop+=s-t.offset}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 u=s??i.current;if(!r||!u||typeof window>"u")return;let d=null,h=0,v=u.scrollHeight;const m=(E=!0)=>{E&&(h=Math.max(h,4)),d===null&&(d=window.requestAnimationFrame(()=>{d=null,i.current===u&&l.current(u);const C=Math.abs(u.scrollHeight-v)>1;v=u.scrollHeight,h-=1,(h>0||C)&&m(!1)}))};c.current=()=>m();const p=typeof MutationObserver>"u"?null:new MutationObserver(()=>{w(),m()}),g=typeof ResizeObserver>"u"?null:new ResizeObserver(()=>m()),b=new Set,w=()=>{if(!g)return;const E=new Set(Array.from(u.children).filter(C=>C instanceof HTMLElement));for(const C of b)E.has(C)||(g.unobserve(C),b.delete(C));for(const C of E)b.has(C)||(g.observe(C),b.add(C))};p?.observe(u,{childList:!0,characterData:!0,subtree:!0}),w();const x=()=>m();return u.addEventListener("load",x,!0),()=>{c.current=null,p?.disconnect(),g?.disconnect(),u.removeEventListener("load",x,!0),d!==null&&window.cancelAnimationFrame(d)}},[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:u,view:d}){const h=o.useRef(null),[v,m]=o.useState(null),p=o.useCallback(y=>{h.current=y,m(I=>I===y?I:y)},[]),g=o.useRef(null),b=o.useRef(!0),w=o.useRef(null),x=o.useRef(0),E=o.useRef(null),C=o.useRef(0),A=o.useRef(0),R=o.useRef(0),M=o.useRef(null),k=o.useRef(null),$=o.useRef(null),O=o.useRef(!1),U=o.useRef(!1),Q=o.useRef(null),F=o.useRef(null),H=o.useRef(null),[V,ce]=o.useState(0),[ge,ae]=o.useState(null),[fe,q]=o.useState(!1),[xe,G]=o.useState(132),[D,_]=o.useState(fr),ie=o.useMemo(()=>Lh(a,{showThinkingIndicator:u}),[a,u]),Ee=o.useMemo(()=>({"--chat-composer-reserve":`${xe}px`}),[xe]),se=a.at(-1),de=[ie.length,se?.id??"",se?.content?.length??0,se?.timestamp??"",u?"thinking":""].join(":"),K=s,ee=e,X=d==="chat"&&c&&!!ee&&ge!==ee,Z=o.useCallback(y=>{q(I=>I===y?I:y)},[]),re=o.useCallback(y=>{_(I=>I.canGoPrevious===y.canGoPrevious&&I.canGoNext===y.canGoNext?I:y)},[]),Ie=o.useCallback((y,I={})=>{const J=I.nearBottom??dr(y);Z(!J),re(Rs(y))},[Z,re]),Le=o.useCallback(y=>{const I=O.current;O.current=!1,ae(y),Z(!1),re(fr),I&&ce(J=>J+1)},[Z,re]),je=o.useCallback(()=>{H.current===null||typeof window>"u"||(window.cancelAnimationFrame(H.current),H.current=null)},[]),S=o.useCallback((y,I,J)=>{je();const we=Math.max(0,y.scrollHeight-y.clientHeight),ne=()=>{const Vt=typeof I=="function"?I():I;return Math.max(0,Math.min(Vt,Math.max(0,y.scrollHeight-y.clientHeight)))},Te=Math.max(0,Math.min(ne(),we)),$e=y.scrollTop,at=Te-$e;if(typeof window>"u"||window.matchMedia?.("(prefers-reduced-motion: reduce)").matches===!0||Math.abs(at)<1){y.scrollTop=Te,J?.();return}const Ht=Yh(at),tt=window.performance.now(),it=Vt=>{if(h.current!==y){H.current=null;return}const Wt=Math.min(1,(Vt-tt)/Ht),rn=ne();if(y.scrollTop=$e+(rn-$e)*Zh(Wt),Wt<1){H.current=window.requestAnimationFrame(it);return}y.scrollTop=ne(),H.current=null,J?.()};H.current=window.requestAnimationFrame(it)},[je]),T=o.useCallback(()=>{U.current=!1,!(Q.current===null||typeof window>"u")&&(window.cancelAnimationFrame(Q.current),Q.current=null)},[]),L=o.useCallback(()=>{F.current===null||typeof window>"u"||(window.cancelAnimationFrame(F.current),F.current=null)},[]),W=o.useCallback(y=>{if(typeof window>"u"){y.scrollTop=y.scrollHeight;return}if(F.current!==null)return;let I=window.performance.now();const J=we=>{if(h.current!==y||!b.current){F.current=null;return}const ne=Math.max(0,y.scrollHeight-y.clientHeight),Te=ne-y.scrollTop;if(Math.abs(Te)<=.75){y.scrollTop=ne,F.current=null;return}if(Te<0||Te>240)y.scrollTop=ne;else{const $e=Math.max(.5,Math.min(3,(we-I)/16.666666666666668)),at=1-Math.pow(1-.22,$e);y.scrollTop+=Math.min(36*$e,Te*at)}I=we,F.current=window.requestAnimationFrame(J)};F.current=window.requestAnimationFrame(J)},[]),te=o.useCallback((y,I={})=>{if(L(),y.scrollTop=y.scrollHeight,typeof window>"u"){I.finishInitial&&Le(I.conversationKey??null);return}T(),U.current=!0;let we=0,ne=0,Te=y.scrollHeight;const $e=I.settle?12:2,at=()=>{const Be=h.current;if(!Be){Q.current=null,U.current=!1,I.finishInitial&&Le(I.conversationKey??null);return}Be.scrollTop=Be.scrollHeight;const Ht=Be.scrollHeight-Be.scrollTop-Be.clientHeight,tt=Math.abs(Be.scrollHeight-Te)<=1;if(Te=Be.scrollHeight,ne=Ht<=1&&tt?ne+1:0,we+=1,we<$e&&ne<2){Q.current=window.requestAnimationFrame(at);return}Q.current=null,U.current=!1,b.current=!0,Z(!1),re(Rs(Be)),I.finishInitial&&Le(I.conversationKey??null)};Q.current=window.requestAnimationFrame(at)},[T,L,Le,Z,re]),Ae=o.useCallback(()=>{w.current=null,h.current?.style.removeProperty("--chat-sent-message-space");const y=h.current;y&&(T(),L(),b.current=!0,Z(!1),S(y,()=>y.scrollHeight-y.clientHeight,()=>{h.current===y&&(y.scrollTop=y.scrollHeight,b.current=!0,Z(!1),re(Rs(y)))}))},[T,L,Z,re,S]),ve=o.useCallback(y=>{const I=h.current;if(!I)return;const J=Jh(I,y);if(!J)return;T(),L(),w.current&&(w.current.following=!1),S(I,()=>J.isConnected?Math.max(0,_s(I,J)-$o):I.scrollTop,()=>{if(h.current!==I)return;const ne=dr(I);b.current=ne,Ie(I,{nearBottom:ne})})},[T,L,S,Ie]),Pe=o.useCallback(async()=>{if(!K||!i||r||$.current)return;const y=h.current;if(!y)return;const I={anchor:Ci(y),firstRowId:ie[0]?.id,settled:!1};k.current=I,b.current=!1,T(),L(),je(),$.current=I;try{!await i()&&k.current===I&&(k.current=null)}finally{I.settled=!0,$.current===I&&($.current=null)}},[K,r,i,ie,T,L,je]),Mt=o.useCallback(y=>{const I=k.current;I&&(I.anchor=Ci(y));const J=dr(y),we=Math.abs(y.scrollHeight-A.current)>1||Math.abs(y.clientHeight-R.current)>1,ne=y.scrollTop<C.current-1,Te=y.scrollTop>C.current+1;if(C.current=y.scrollTop,A.current=y.scrollHeight,R.current=y.clientHeight,w.current)b.current=!1,Ie(y);else if(U.current){b.current=!0,Z(!1),re(fr);return}else J&&(b.current||Te&&!we)?(b.current=!0,Ie(y,{nearBottom:!0})):ne&&!we?(b.current=!1,L(),Ie(y,{nearBottom:!1})):b.current?(Z(!1),re(Rs(y))):Ie(y,{nearBottom:J});!O.current&&y.scrollTop<=sa&&K&&!r&&Pe()},[K,L,r,Pe,Z,re,Ie]),et=o.useCallback(y=>{const I=w.current;if(I){const J=aa(y,I);J!==null&&I.following&&H.current===null&&(y.scrollTop=J),Ie(y);return}!b.current||H.current!==null||U.current||W(y)},[W,Ie]);return o.useEffect(()=>{const y=v;if(!y)return;const I=()=>{w.current&&(w.current.following=!1),b.current=!1,C.current=y.scrollTop,A.current=y.scrollHeight,R.current=y.clientHeight,T(),L(),je()},J=()=>{w.current&&I()},we=Te=>{["ArrowUp","ArrowDown","PageUp","PageDown","Home","End"," "].includes(Te.key)&&J()},ne=cm(y,I);return y.addEventListener("wheel",J,{passive:!0}),y.addEventListener("touchmove",J,{passive:!0}),y.addEventListener("pointerdown",J),y.addEventListener("keydown",we),()=>{ne(),y.removeEventListener("wheel",J),y.removeEventListener("touchmove",J),y.removeEventListener("pointerdown",J),y.removeEventListener("keydown",we)}},[v,T,L,je]),o.useEffect(()=>{if(!v||typeof ResizeObserver>"u")return;const y=new ResizeObserver(()=>{w.current&&et(v)});return y.observe(v),()=>y.disconnect()},[v,et]),dm({contentKey:de,enabled:d==="chat"&&c,onContentChange:et,threadElement:v,threadRef:h}),o.useLayoutEffect(()=>{if(d!=="chat"||!c||typeof window>"u")return;const y=g.current;if(!y)return;let I=null;const J=()=>{I=null;const Te=Math.max(96,Math.ceil(y.getBoundingClientRect().height+20));G($e=>$e===Te?$e:Te)},we=()=>{I===null&&(I=window.requestAnimationFrame(J))};we();const ne=typeof window.ResizeObserver>"u"?null:new window.ResizeObserver(we);return ne?.observe(y),window.addEventListener("resize",we),()=>{I!==null&&window.cancelAnimationFrame(I),ne?.disconnect(),window.removeEventListener("resize",we)}},[c,d]),o.useLayoutEffect(()=>{const y=h.current;if(!(d!=="chat"||!c||!y||O.current)){if(w.current){et(y);return}b.current&&te(y,{settle:!0})}},[xe,et,te,c,d]),o.useLayoutEffect(()=>{w.current=null,h.current?.style.removeProperty("--chat-sent-message-space"),k.current=null,$.current=null,O.current=!0,b.current=!0,C.current=0,A.current=0,R.current=0,L(),je(),T(),ae(null),Z(!1),re(fr)},[T,je,L,ee,Z,re]),o.useLayoutEffect(()=>{if(t===0||t===x.current||d!=="chat"||!c)return;const y=h.current,I=Array.from(y?.querySelectorAll(".message-row.user")??[]).filter(we=>we.parentElement===y).at(-1);if(!y||!I||I===E.current)return;x.current=t,T(),L();const J={row:I,following:!0};w.current=J,b.current=!1,aa(y,J),S(y,()=>aa(y,J)??y.scrollTop),Le(ee)},[t,ie,v,ee,d,c,T,L,S,Le]),o.useLayoutEffect(()=>{const y=h.current;E.current=Array.from(y?.querySelectorAll(".message-row.user")??[]).filter(I=>I.parentElement===y).at(-1)??null}),o.useEffect(()=>{const y=h.current;d!=="chat"||!y||O.current||!K||r||y.scrollTop<=sa&&y.scrollHeight<=y.clientHeight+sa&&Pe()},[K,r,V,ie.length,Pe,d]),o.useLayoutEffect(()=>{const y=k.current,I=h.current;if(!(!y||!I||O.current)){if(ie[0]?.id===y.firstRowId){y.settled&&!r&&(k.current=null);return}k.current=null,y.anchor&&um(I,y.anchor),Ie(I)}},[ie,r,Ie]),o.useLayoutEffect(()=>{const y=h.current;if(d!=="chat"||!ee||!y){M.current=ee,b.current=!0,Le(ee);return}const I=M.current!==ee;if(M.current=ee,w.current){Le(ee);return}if(I||O.current){b.current=!0,te(y,{conversationKey:ee,finishInitial:!0,settle:!0});return}const J=dr(y);if(b.current){b.current=!0,Z(!1),re(Rs(y)),te(y,{settle:!0});return}Ie(y,{nearBottom:J})},[ee,v,Le,l?.id,te,Z,re,Ie,d]),o.useEffect(()=>()=>{T(),je(),L()},[T,je,L]),{chatColumnStyle:Ee,chatThreadPreparingInitialScroll:X,chatThreadRef:p,composerStackRef:g,goToUserMessage:ve,handleChatScroll:Mt,jumpToLatestChatMessage:Ae,showScrollToBottomButton:fe,userMessageNavigation:D,chatTimelineRows:ie}}function hm(e,t){const s=mm(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 mm(e){const[,t]=o.useState(0),s=o.useCallback(a=>!e||!a?null:(nn.activateConnection(e),nn.get(Si(e,a))),[e]),r=o.useCallback(async a=>{if(!e||!a)return null;const i=Si(e,a);return nn.activateConnection(e),nn.load(i,()=>qe.signChatAttachmentImageUrl(e,a)).finally(()=>t(l=>l+1))},[e]);return o.useMemo(()=>({getUrl:s,loadUrl:r}),[s,r])}function Si(e,t){return fa(e,"chat-attachment-image",t.sessionId,t.turnId,t.attachmentId,t.storageName,t.contentType)}const Ri="<openpond_trusted_runtime_context>",Ei="</openpond_trusted_runtime_context>";function pm(e){const t=e.trimStart();if(!t.startsWith(Ri))return e;const s=t.indexOf(Ei,Ri.length);if(s===-1)return"";const r=t.slice(s+Ei.length).trim();if(!r.startsWith("<user_request>"))return r;const a=r.slice(14);return(a.endsWith("</user_request>")?a.slice(0,-15):a).trim()}function Ra({content:e,timestamp:t,kvCacheSummary:s}){const r=nc(t),a=s?.cacheHitRate,i=typeof a=="number"&&Number.isFinite(a)&&a>=0&&a<=1?`${Math.round(a*100)}%`:null;return n.jsxs("div",{className:"assistant-message-footer",children:[r?n.jsx("time",{className:"message-timestamp",dateTime:t,title:sc(t),children:r}):null,i?n.jsxs("span",{className:"message-kv-cache-metric","aria-label":`KV cache reuse ${i}`,children:["KV ",i]}):null,n.jsx("button",{type:"button",className:"message-copy-button",title:"Copy message","aria-label":"Copy assistant message",disabled:!e,onClick:()=>{e&&Wi(e)},children:n.jsx(Vi,{size:14})})]})}function Fo({content:e}){const[t,s]=o.useState(!1),[r,a]=o.useState(!1),i=o.useRef(null),l=o.useId();return o.useEffect(()=>{const c=i.current;if(!c)return;const u=()=>{const h=Number.parseFloat(getComputedStyle(c).lineHeight);a(c.scrollHeight>Math.ceil(h*5)+1)};u();const d=new ResizeObserver(u);return d.observe(c),()=>d.disconnect()},[e,t]),n.jsxs("div",{className:"user-message-content-wrap",children:[n.jsx("div",{ref:i,id:l,className:`user-message-content ${t?"":"collapsed"}`,children:e}),r?n.jsxs("button",{type:"button",className:"user-message-show-more","aria-expanded":t,"aria-controls":l,onClick:()=>s(c=>!c),children:[t?n.jsx(Bc,{size:14}):n.jsx(qt,{size:14}),n.jsx("span",{children:t?"Show less":"Show more"})]}):null]})}async function Ts(e,t){const{ownerScope:s}=await Se(e,"/v1/ponder/desktop");if(!s||["installationId","profileId","ownerUserId","teamId"].some(r=>s[r]!==t[r]))throw new Error("Open this task on its original desktop, account and workspace.")}function gm({message:e,onOpenSession:t,onOpenPonder:s,connection:r}){const[a,i]=o.useState(null),l=o.useRef(0);o.useEffect(()=>(l.current++,()=>{l.current++}),[r,e.id]);const c=e.taskMessage;if(!c)return null;const{input:u,peer:d,direction:h}=c;async function v(){if(!r||!s)return;const p=l.current;try{if(!d.ponderScope)throw new Error("This message has no verified Ponder source.");await Ts(r,d.ponderScope);const g=await Se(r,"/v1/ponder",{method:"POST",body:"{}"});if(p!==l.current)return;if(g.bindingId!==d.bindingId)throw new Error("This task's original Ponder conversation is no longer active.");i(null),s()}catch(g){p===l.current&&i(g instanceof Error?g.message:String(g))}}const m=u.error?u.error:{pending:"Queued",included:"Included in agent request",resolved:"Delivered to agent",rejected:"Not delivered",cancelled:"Cancelled"}[u.state];return n.jsxs("article",{className:"message-row user task-message-row",children:[n.jsx("div",{className:"user-message",children:n.jsx(Fo,{content:u.body})}),n.jsxs("div",{className:"task-message-attribution",children:[n.jsx("span",{children:h==="sent"?"Sent to":"Received from"}),d.kind==="ponder"?s&&r?n.jsx("button",{type:"button",onClick:()=>{v()},children:d.title}):n.jsx("span",{children:d.title}):t?n.jsx("button",{type:"button",onClick:()=>t(d.sessionId),children:d.title}):n.jsx("span",{children:d.title}),n.jsx("span",{title:`Delivery receipt ${u.id}`,role:"status",children:m})]}),a?n.jsx("p",{role:"alert",children:a}):null,n.jsx(Ra,{content:u.body,timestamp:e.timestamp})]})}const bm=64,xm=120,vm=210,ym=360,jm=40,wm=120,km=600,Cm=100,Mi=33,jr=new Set;let hr=!1;function Sm(e,t,s=0){if(e<=0)return{characterCount:0,remainder:0};const r=e>km?ym:e>wm?vm:e>jm?xm:bm,a=s+Math.min(Math.max(t,0),Cm)*r/1e3,i=Math.min(e,Math.floor(a));return{characterCount:i,remainder:a-i}}function Do(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 Ni(){return typeof window<"u"&&typeof window.matchMedia=="function"&&typeof document<"u"&&document.visibilityState==="visible"&&!window.matchMedia("(prefers-reduced-motion: reduce)").matches}function Rm(e,t,s){return t&&s?Do("",e,1):e}function Em(e,t=!1){const[s,r]=o.useState(()=>Rm(e,t,Ni())),a=o.useRef(s),i=o.useRef(e),l=o.useRef(null),c=o.useRef(null),u=o.useRef(0),d=o.useRef(!0);return o.useEffect(()=>(d.current=!0,()=>{d.current=!1,l.current!==null&&(window.clearTimeout(l.current),l.current=null)}),[]),o.useEffect(()=>{if(i.current=e,!Ni()||!e.startsWith(a.current)){l.current!==null&&(window.clearTimeout(l.current),l.current=null),c.current=null,u.current=0,a.current=e,d.current&&r(e);return}if(a.current.length===e.length||l.current!==null)return;const h=()=>{if(!d.current){l.current=null;return}const v=a.current,m=i.current,p=performance.now();if(!m.startsWith(v)){a.current=m,r(m),l.current=null,c.current=null,u.current=0;return}const g=m.length-v.length;if(g===0){l.current=null,c.current=null,u.current=0;return}const b=c.current===null?16:p-c.current,w=Sm(g,b,u.current);if(c.current=p,u.current=w.remainder,w.characterCount>0){const x=Do(v,m,w.characterCount);a.current=x,r(x)}l.current=window.setTimeout(h,Mi)};return l.current=window.setTimeout(h,Mi),()=>{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,u.current=0,a.current=i.current,d.current&&r(i.current))});return()=>{v(),l.current!==null&&(window.clearTimeout(l.current),l.current=null)}},[]),s}function Mm(e){return jr.add(e),hr||(document.addEventListener("visibilitychange",Ai),hr=!0),()=>{jr.delete(e),jr.size===0&&hr&&(document.removeEventListener("visibilitychange",Ai),hr=!1)}}function Ai(){for(const e of jr)e()}function Bo({animateInitialContent:e=!1,content:t,...s}){const r=Em(t,e),a=Uc(r,r.length===t.length),i=Nm(a,r.length===t.length);return n.jsx(Gi,{...s,content:a,finalizedContent:i.finalized,mutableContent:i.mutable})}function Nm(e,t){if(t||!e)return{finalized:e,mutable:""};const s=e.split(`
56
+ `);let r=!1,a=null,i=0,l=0;for(let c=0;c<s.length-1;c+=1){const u=s[c]??"",d=u.trim();!a&&/^\s*```/.test(u)&&(r=!r),r||(a&&d.endsWith(a)?a=null:!a&&d.startsWith("\\[")&&!d.endsWith("\\]")?a="\\]":!a&&d.startsWith("$$")&&d.indexOf("$$",2)<0&&(a="$$")),i+=u.length+1,!r&&!a&&d===""&&(l=i)}return{finalized:e.slice(0,l),mutable:e.slice(l)}}function Tr({children:e,className:t="",controls:s,danger:r=!1,expanded:a=!1,icon:i,onToggle:l,running:c=!1}){const u=["activity-summary",l?"":"static",r?"danger":"",c?"working":"",t].filter(Boolean).join(" "),d=n.jsxs(n.Fragment,{children:[i,n.jsx("span",{className:"activity-summary-text",children:n.jsx("span",{children:e})}),l?n.jsx(qt,{"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:u,onClick:l,children:d}):n.jsx("div",{className:u,role:c?"status":void 0,children:d})}function Am({actionRun:e,onOpenBrowserLink:t,onOpenFileInSidebar:s,workspaceRootPath:r=null}){const a=Pm(e.status),i=_m(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 Ii(e){return e.implementationType==="openpond-profile-action"}function Im(e){const t=e.agentName??e.agentId;return e.actionName.endsWith(".chat")?cr({actionId:e.actionName,label:e.title,name:t}):t?cr({actionId:e.actionName,name:t}):e.title&&!rc(e.title)?cr({actionId:e.actionName,label:e.title}):cr({actionId:e.actionName})}function Tm(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?ha(e.target,{}):null,i=Lm(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(kr,{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(kr,{size:13})})]})}function Pm(e){return e==="completed"?Bi:e==="failed"?ku:ru}function _m(e){const t=[];return e.implementationType&&t.push({label:"Type",value:e.implementationType,icon:n.jsx(gr,{size:12})}),e.runId&&t.push({label:"Run",value:e.runId,icon:n.jsx(pt,{size:12})}),e.sandboxId&&t.push({label:"Sandbox",value:e.sandboxId,icon:n.jsx(pt,{size:12})}),e.sourceRef&&t.push({label:"Source",value:e.sourceRef,icon:n.jsx(ac,{size:12})}),e.manifestHash&&t.push({label:"Manifest",value:e.manifestHash,icon:n.jsx(pt,{size:12})}),t}function Lm(e){return/^https?:\/\//i.test(e)}function Om(e,t){const s=zm(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 zm(e){const[,t]=o.useState(0),s=o.useCallback(a=>!e||!a?null:(nn.activateConnection(e),nn.get(fa(e,"local-video",a))),[e]),r=o.useCallback(async a=>{if(!e||!a)return null;nn.activateConnection(e);const i=fa(e,"local-video",a);return nn.load(i,()=>qe.signLocalVideoUrl(e,{path:a})).finally(()=>t(l=>l+1))},[e]);return o.useMemo(()=>({getUrl:s,loadUrl:r}),[s,r])}function Fm(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 Dm(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 Bm=4;function Um({onOpenSession:e,onShowAll:t,sessions:s}){const r=s.slice(0,Bm),a=Math.max(0,s.length-r.length),i=s.map(qo).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(Uo,{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 Uo({className:e="",onOpenSession:t,openSession:s}){const r=Vo(s.roleId),a=Vm(s.status),i=`Open ${qo(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(qm,{roleId:r})})}function qm({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 Hm(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 qo(e){const t=`${Ho(e.roleId)} subagent`,s=e.status?.replace(/_/g," ").trim();return s?`${t} (${s})`:t}function Ho(e){return Vo(e).split(/[-_]+/).filter(Boolean).map(s=>s.slice(0,1).toUpperCase()+s.slice(1)).join(" ")||"Subagent"}function Vo(e){const t=e?.trim().toLowerCase()||"subagent";return/^[a-z][a-z0-9_-]*$/.test(t)?t:"subagent"}function Vm(e){const t=e?.trim().toLowerCase()||"unknown";return/^[a-z][a-z0-9_-]*$/.test(t)?t:"unknown"}function Wm({activity:e,defaultExpanded:t=!1}){const[s,r]=o.useState(t),a=o.useId(),i=Qm(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(ic,{"aria-hidden":!0,className:e.state==="running"?"spinning":void 0,size:12}),n.jsx("span",{children:oc(e)}),i?n.jsx(qt,{"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(Gm,{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(Km,{refs:e.refs})]}):null]})}function Gm({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 Km({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:Xm(s)}),n.jsx("dd",{children:n.jsx("code",{children:r})})]},s))})]}):null}function Qm(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 Xm(e){const t=e.replace(/([a-z])([A-Z])/g,"$1 $2");return`${t[0]?.toUpperCase()??""}${t.slice(1)}`}function Jm({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,...Zm(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(pt,{"aria-hidden":!0,size:14}),n.jsx("strong",{children:e.title})]}):n.jsxs("span",{className:"activity-artifact-name",children:[n.jsx(pt,{"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:()=>{ka(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(Ym,{menu:s,onClose:a})]})}function Ym({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:lc.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:()=>{Wi(e.path),t()},children:[n.jsx(Vi,{"aria-hidden":!0,size:14}),n.jsx("span",{children:"Copy path"})]})}),document.body)}function Zm(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 Wo=5,ep=280;function tp({activeWorkspaceAppId:e,connection:t,message:s,onOpenFileInSidebar:r,onOpenSession:a}){const i=s.activities??[],[l,c]=o.useState(!1),[u,d]=o.useState(null),h=o.useId(),v=o.useMemo(()=>Cu(i),[i]),m=o.useMemo(()=>Fm(i,l),[i,l]),p=i.find(k=>k.imagePreview)?.imagePreview??null,g=s.deliverables??[],b=Ea(u,t,e),w=s.traceState==="running",x=s.traceState==="failed"||s.traceState==="interrupted",E=Dm(s.traceStartedAt,s.traceCompletedAt),C=fp(v.text,s.traceState,E,i),A=Hm(i),R=i.length>0&&i.every(k=>k.subagentMessage),M=m.toolCount>0||!!s.refinerActivity;return R&&!s.refinerActivity?n.jsx(cp,{activities:i}):n.jsx(n.Fragment,{children:i.length>0||g.length>0||s.refinerActivity?n.jsxs("article",{className:`activity-group work-trace ${w?"running":"settled"}`,children:[i.length>0||s.refinerActivity?n.jsxs("div",{className:"activity-summary-row",children:[n.jsx(Tr,{controls:M?h:void 0,danger:x,expanded:m.toolsExpanded,icon:p?n.jsx(vp,{activeWorkspaceAppId:e,connection:t,image:p}):n.jsx(yp,{kind:v.kind}),onToggle:M?()=>c(k=>!k):void 0,running:w,children:C||"Worked"}),A.length>0&&a?n.jsx(Um,{onOpenSession:a,onShowAll:()=>c(!0),sessions:A}):null]}):null,g.length>0?n.jsx(ap,{artifacts:g,connection:t,onOpenFileInSidebar:r}):null,l&&M?n.jsxs("div",{className:"work-trace-flow",id:h,children:[m.visibleActivities.map(k=>n.jsx(sp,{activeWorkspaceAppId:e,activity:k,connection:t,onOpenImage:d,onOpenSession:a},k.id)),n.jsx(np,{activity:s.refinerActivity})]}):null,n.jsx(Ki,{open:!!b,src:b,title:u?.path??"",onClose:()=>d(null)})]}):null})}function np({activity:e}){return e?n.jsx("article",{className:"refiner-activity-row",children:n.jsx(Wm,{activity:e})}):null}function sp({activeWorkspaceAppId:e,activity:t,connection:s,onOpenImage:r,onOpenSession:a}){const[i,l]=o.useState(!1),c=o.useId();return t.subagentMessage?n.jsx(Go,{activity:t}):n.jsxs("div",{className:`activity-tool-row ${t.controlKind==="turn_aborted"?"danger":""}`,children:[n.jsx(Tr,{className:"activity-tool-summary",controls:c,danger:t.controlKind==="turn_aborted",expanded:i,icon:t.kind==="command"?n.jsx(ja,{"aria-hidden":!0,className:"activity-summary-kind-icon",size:12}):void 0,onToggle:()=>l(u=>!u),children:mp(t)}),i?n.jsx(rp,{activeWorkspaceAppId:e,activity:t,connection:s,detailsId:c,onOpenImage:r,onOpenSession:a}):null]})}function rp({activeWorkspaceAppId:e,activity:t,connection:s,detailsId:r,onOpenImage:a,onOpenSession:i}){const l=Ea(t.imagePreview??null,s,e);return n.jsxs("div",{className:"activity-tool-details",id:r,children:[t.kind==="command"&&t.content?n.jsx(pp,{command:t.content,exitCode:t.terminal?.exitCode,output:t.detail,state:t.state}):t.content?kp(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,`
57
+ `).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:cc(t.imagePreview.path),decoding:"async",loading:"lazy",src:l})}):null,t.openSession&&i?n.jsx(Uo,{className:"activity-subagent-detail-avatar",openSession:t.openSession,onOpenSession:i}):null]})}function ap({artifacts:e,connection:t,onOpenFileInSidebar:s}){return n.jsx("div",{className:"activity-artifact-list",children:e.map(r=>r.contentType.startsWith("video/")?n.jsx(op,{artifact:r,connection:t,onOpenFileInSidebar:s},r.path):r.contentType.startsWith("image/")?n.jsx(ip,{artifact:r,connection:t},r.path):n.jsx(Jm,{artifact:r,onOpenFileInSidebar:s},r.path))})}function ip({artifact:e,connection:t}){const[s,r]=o.useState(!1),a=Qi(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(Ar,{"aria-hidden":!0,size:20})}),n.jsx("strong",{children:e.title}),n.jsx(Ki,{open:s&&!!a,src:a,title:e.title,onClose:()=>r(!1)})]})}function op({artifact:e,connection:t,onOpenFileInSidebar:s}){const r=o.useRef(null),[a,i]=o.useState(!1),l=Om(t,e.path),c=()=>{const u=r.current;u&&u.play().then(()=>i(!0)).catch(()=>{})};return n.jsxs("div",{className:"activity-artifact-video",title:e.path,children:[n.jsxs("div",{className:"activity-artifact-video-stage",children:[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(Gc,{"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:()=>{ka(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:lp(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 lp(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 Go({activity:e}){const[t,s]=o.useState(!1),r=e.subagentMessage;if(!r)return null;const a=`${Ho(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=up(r),u=dp(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(Es,{"aria-hidden":!0,size:14}),n.jsx("strong",{title:l,children:l})]}),n.jsx("small",{children:r.kind.replace(/_/g," ")})]}),n.jsx("p",{className:u&&!t?"collapsed":void 0,style:{"--subagent-message-visible-lines":Wo},children:r.body}),u?n.jsx("button",{type:"button",className:"activity-child-message-toggle","aria-expanded":t,onClick:()=>s(d=>!d),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(d=>n.jsxs("span",{children:[n.jsx("small",{children:d.label}),n.jsx("code",{title:d.value,children:d.value})]},d.label))})]}),r.refs?.length?n.jsx("div",{className:"activity-child-message-refs","aria-label":"Child message references",children:r.refs.map(d=>n.jsxs("span",{children:[d.kind,":",d.id," (",d.label,")"]},`${d.kind}:${d.id}`))}):null]})},e.id)}function cp({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(Go,{activity:s},s.id))})}function up(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 dp(e){return e.length>ep||e.split(/\r?\n/).length>Wo}function fp(e,t,s,r){return t==="running"?hp(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 hp(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 Er(r)}return t?Er(t):null}function Er(e){return e.kind==="command"?e.state==="failed"?"Command failed":eo(e.content,e.state)??(e.state==="running"||e.state==="pending"?"Running command":"Ran command"):e.label.trim()||null}function mp(e){if(e.kind!=="command")return e.label;if(e.state==="running"||e.state==="pending")return Er(e)??"Running command";const t=gp(e.terminal?.durationMs);return e.state==="failed"?`Command failed${t?` in ${t}`:""}`:`${Er(e)??"Ran command"}${t?` in ${t}`:""}`}function pp({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:"$ "}),bp(e),s?n.jsx("span",{className:"activity-command-output",children:`
58
+ ${s.replace(/\r\n/g,`
59
+ `).trimEnd()}`}):null]})}),n.jsx("footer",{children:a})]})}function gp(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 bp(e){return xp(e).map((t,s)=>n.jsx("span",{className:`shell-token ${t.kind}`,children:t.text},`${s}-${t.text}`))}function xp(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 vp({activeWorkspaceAppId:e,connection:t,image:s}){const r=Ea(s,t,e);return r?n.jsx("img",{"aria-hidden":!0,className:"activity-summary-image",decoding:"async",loading:"lazy",src:r,alt:""}):null}function yp({kind:e}){const t=jp(e);return n.jsx(t,{"aria-hidden":!0,className:`activity-summary-kind-icon ${e}`,size:14})}function jp(e){return e==="approval"||e==="control"?uc:e==="edit"?dc:e==="image"?Ar:e==="list"?fc:e==="read"?pt:e==="reasoning"?Zi:e==="search"?hc:e==="subagent"?Es:e==="web"?qi:ja}function Ea(e,t,s){const r=e&&wp(e.path)?e.path:null,a=e?.appId??s,i=Qi(t,r),l=qc(t,r?null:a,r?null:e?.path);return r?i:l}function wp(e){return/^file:\/\//i.test(e)||/^\//.test(e)||/^[A-Za-z]:[\\/]/.test(e)}function kp(e){return e.includes(`
60
+ `)||e.length>160}function Cp({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 u=Ko(c);return{additions:l.additions+u.additions,deletions:l.deletions+u.deletions}},{additions:0,deletions:0});return n.jsxs("div",{className:"change-summary-card",children:[n.jsxs("div",{className:"change-summary-header",children:[n.jsx("span",{children:a}),n.jsxs("span",{className:"change-summary-counts",children:[n.jsxs("span",{className:"diff-addition",children:["+",i.additions]}),n.jsxs("span",{className:"diff-deletion",children:["-",i.deletions]})]})]}),n.jsx("div",{className:"change-summary-files",children:e.files.map(l=>n.jsx(Sp,{file:l,onOpenFileInSidebar:t,open:s===l.path,onToggle:()=>r(c=>c===l.path?null:l.path)},l.path))})]})}function Sp({file:e,onOpenFileInSidebar:t,open:s,onToggle:r}){const a=Ko(e),i=Qo(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(kr,{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(qt,{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 Ko(e){if((e.status==="added"||e.status==="untracked")&&e.additions===0&&e.content)return{additions:Rp(e.content),deletions:0};if(e.additions>0||e.deletions>0||!e.patch||Qo(e.patch))return{additions:e.additions,deletions:e.deletions};const t=Ep(e.patch);return t.additions>0||t.deletions>0?t:{additions:e.additions,deletions:e.deletions}}function Rp(e){const t=e.endsWith(`
61
+ `)?e.slice(0,-1):e;return t?t.split(`
62
+ `).length:0}function Qo(e){return/^error: Could not access /m.test(e)}function Ep(e){let t=0,s=0;for(const r of e.split(`
63
+ `))r.startsWith("+++")||r.startsWith("---")||(r.startsWith("+")&&(t+=1),r.startsWith("-")&&(s+=1));return{additions:t,deletions:s}}function Mp({run:e}){const t=e.plan,s=e.questions.find(c=>c.status==="pending")??null,r=mc(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(pt,{size:14}),n.jsx("span",{children:Np(e)}),n.jsx("small",{children:e.target.kind})]}),n.jsx("p",{children:Ap(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 Np(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 Ap(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 ba=o.memo(function({activeWorkspaceAppId:t=null,animateInitialContent:s=!1,accountBaseUrl:r=null,billingOrganizationSlug:a=null,billingTeamId:i=null,connection:l=null,conversationLinks:c,message:u,kvCacheSummary:d=null,onOpenBrowserLink:h,onOpenAttachmentInSidebar:v,onOpenFileInSidebar:m,onOpenProfileSettings:p,onResolveUserQuestion:g,onOpenSession:b,onOpenPonder:w,showFooter:x=!0,userAttachmentDisplay:E="full",workspaceRootPath:C=null}){if(u.role==="visual"&&u.visual)return n.jsx("article",{className:"message-row assistant",children:n.jsx(oo,{visual:u.visual,connection:l},u.visual.publicationId)});if(u.role==="task_message")return n.jsx(gm,{message:u,onOpenSession:b,onOpenPonder:w,connection:l});if(u.role==="status_divider")return n.jsx(Wp,{message:u});if(u.role==="activity_group")return n.jsx(tp,{activeWorkspaceAppId:t,connection:l,message:u,onOpenFileInSidebar:m,onOpenSession:b});if(u.role==="error")return u.errorKind==="opchat_quota_exceeded"?n.jsx("article",{className:"message-row assistant",children:n.jsx(Dp,{accountBaseUrl:r,billingOrganizationSlug:a,billingTeamId:i,onOpenBrowserLink:h})}):n.jsx("article",{className:"message-row assistant",children:n.jsx("div",{className:"assistant-message error-message",children:u.content??""})});if(u.role==="user"){const R=pm(u.content??""),M=u.attachments??[],k=E==="compact",$=M.length>0,O=!!(!k&&M.some(U=>U.kind==="image"));return!R&&!$?null:n.jsx("article",{className:"message-row user",children:n.jsxs("div",{className:`user-message ${$?"has-attachments":""} ${O?"has-image-attachments":""}`,children:[M.length?n.jsx(Up,{attachments:M,compact:k,connection:l,onOpenAttachment:v}):null,R?n.jsx(Fo,{content:R}):null]})})}const A=u.actionRun&&Ii(u.actionRun)?Im(u.actionRun):null;return n.jsxs("article",{className:"message-row assistant",children:[u.reasoningContent?n.jsx(Ip,{activeWorkspaceAppId:t,animateInitialContent:s,connection:l,reasoningContent:u.reasoningContent,onOpenBrowserLink:h,onOpenFileInSidebar:m,workspaceRootPath:C}):null,u.content?n.jsx("div",{className:"assistant-message",children:n.jsx(Bo,{activeWorkspaceAppId:t,animateInitialContent:s,connection:l,content:u.content,conversationLinks:c,onOpenConversation:b,onOpenBrowserLink:h,onOpenFileInSidebar:m,workspaceRootPath:C})}):null,u.sources?.length?n.jsx(Lp,{sources:u.sources,onOpenBrowserLink:h}):null,u.actionRun&&Ii(u.actionRun)?n.jsxs("div",{className:`assistant-message action-run-profile-message ${u.actionRun.status}`,children:[n.jsx(Gi,{activeWorkspaceAppId:t,connection:l,content:u.actionRun.responseText??Tm(u.actionRun),onOpenBrowserLink:h,onOpenFileInSidebar:m,workspaceRootPath:C}),A?n.jsx("div",{className:"action-run-agent-label",children:p?n.jsx("button",{type:"button",className:"action-run-agent-link",onClick:p,children:A}):n.jsx("span",{children:A})}):null]}):u.actionRun?n.jsx(Am,{actionRun:u.actionRun,onOpenBrowserLink:h,onOpenFileInSidebar:m,workspaceRootPath:C}):null,u.changeSummary&&n.jsx(Cp,{summary:u.changeSummary,onOpenFileInSidebar:m}),u.createImproveRun?n.jsx(Mp,{run:u.createImproveRun}):null,u.userQuestion?n.jsx(_p,{question:u.userQuestion,onResolve:g}):null,x&&u.finalAnswer?n.jsx(Ra,{content:u.content,timestamp:u.timestamp,kvCacheSummary:d}):null]})},$p),Ip=o.memo(function({activeWorkspaceAppId:t,animateInitialContent:s,connection:r,reasoningContent:a,onOpenBrowserLink:i,onOpenFileInSidebar:l,workspaceRootPath:c}){const[u,d]=o.useState(!1);return n.jsxs("div",{className:"activity-group assistant-reasoning",children:[n.jsx(Tr,{expanded:u,icon:n.jsx(Zi,{"aria-hidden":!0,className:"activity-summary-kind-icon",size:13}),onToggle:()=>d(h=>!h),children:"Thinking"}),u?n.jsx("div",{className:"assistant-reasoning-content",children:n.jsx(Bo,{activeWorkspaceAppId:t,animateInitialContent:s,connection:r,content:a,onOpenBrowserLink:i,onOpenFileInSidebar:l,workspaceRootPath:c})}):null]})},Tp);function Tp(e,t){return e.activeWorkspaceAppId===t.activeWorkspaceAppId&&e.animateInitialContent===t.animateInitialContent&&e.connection===t.connection&&e.reasoningContent===t.reasoningContent&&e.onOpenBrowserLink===t.onOpenBrowserLink&&e.onOpenFileInSidebar===t.onOpenFileInSidebar&&e.workspaceRootPath===t.workspaceRootPath}function $p(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&&Pp(e.message,t.message)}function Pp(e,t){return e===t?!0:e.id===t.id&&e.role===t.role&&e.visual?.publicationId===t.visual?.publicationId&&e.content===t.content&&e.finalAnswer===t.finalAnswer&&e.timestamp===t.timestamp&&e.turnId===t.turnId&&e.statusKind===t.statusKind&&e.statusState===t.statusState&&e.statusTone===t.statusTone&&e.errorKind===t.errorKind&&Bp(e.attachments,t.attachments)&&e.activities===t.activities&&e.sources===t.sources&&e.actionRun===t.actionRun&&e.changeSummary===t.changeSummary&&e.createImproveRun===t.createImproveRun&&e.userQuestion===t.userQuestion&&e.reasoningContent===t.reasoningContent&&e.taskMessage===t.taskMessage}function _p({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(gc,{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,u)=>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:u+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 u=s.trim();u&&l({questionId:e.id,action:"answer",optionId:null,text:u})},children:[n.jsx("label",{htmlFor:`question-answer-${e.id}`,children:"Or write your own answer"}),n.jsxs("span",{className:"user-question-freeform-controls",children:[n.jsx("input",{"aria-label":"Answer",disabled:a||!t,id:`question-answer-${e.id}`,onChange: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(Bi,{"aria-hidden":!0,size:15}),n.jsx("small",{children:e.status==="answered"?`Answered${e.answer?.text?`: ${e.answer.text}`:""}`:"Skipped"})]})]})}function Lp({sources:e,onOpenBrowserLink:t}){return n.jsx("div",{className:"assistant-sources","aria-label":"Sources",children:n.jsx("div",{className:"assistant-source-stack",children:e.map(s=>n.jsx(Op,{source:s,onOpenBrowserLink:t},`${s.id}:${s.url}`))})})}function Op({source:e,onOpenBrowserLink:t}){const s=Fp(e),r=[e.title,Xo(e.url)].filter(Boolean).join(" - "),a=n.jsxs(n.Fragment,{children:[n.jsx(zp,{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 zp({source:e}){const[t,s]=o.useState(!1);return!e.faviconUrl||t?n.jsx(qi,{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 Fp(e){return e.sourceName?.trim()||Xo(e.url)||e.title}function Xo(e){try{return new URL(e).hostname.replace(/^www\./i,"")}catch{return null}}function Dp({accountBaseUrl:e,billingOrganizationSlug:t,billingTeamId:s,onOpenBrowserLink:r}){const a=pc({accountBaseUrl:e,organizationSlug:t,teamId:s}),i=n.jsxs(n.Fragment,{children:[n.jsx(Da,{size:15}),n.jsx("span",{children:"Add credits"}),n.jsx(bc,{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(Da,{size:17})}),n.jsxs("div",{className:"quota-error-card-body",children:[n.jsx("strong",{children:"OpenPond Chat allowance reached"}),n.jsx("p",{children:"You have reached your OpChat token allowance for this period. Add credits or wait for the allowance to reset."}),r?n.jsx("button",{type:"button",className:"quota-error-card-action",onClick:()=>r(a,{newTab:!0}),children:i}):n.jsx("a",{className:"quota-error-card-action",href:a,target:"_blank",rel:"noreferrer",children:i})]})]})}function Bp(e,t){if(e===t)return!0;if(!e||!t||e.length!==t.length)return!1;for(let s=0;s<e.length;s+=1){const r=e[s],a=t[s];if(r.id!==a.id||r.kind!==a.kind||r.name!==a.name||r.mediaType!==a.mediaType||r.sizeBytes!==a.sizeBytes||r.lineCount!==a.lineCount||r.imagePreview?.sessionId!==a.imagePreview?.sessionId||r.imagePreview?.turnId!==a.imagePreview?.turnId||r.imagePreview?.attachmentId!==a.imagePreview?.attachmentId||r.imagePreview?.storageName!==a.imagePreview?.storageName||r.imagePreview?.contentType!==a.imagePreview?.contentType||r.filePreview?.sessionId!==a.filePreview?.sessionId||r.filePreview?.turnId!==a.filePreview?.turnId||r.filePreview?.attachmentId!==a.filePreview?.attachmentId||r.filePreview?.storageName!==a.filePreview?.storageName||r.filePreview?.contentType!==a.filePreview?.contentType)return!1}return!0}function Up({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(qp,{attachment:a,compact:t,connection:s,onOpenAttachment:r},a.id))})}function qp({attachment:e,compact:t,connection:s,onOpenAttachment:r}){return!t&&e.kind==="image"&&e.imagePreview?n.jsx(Vp,{attachment:e,connection:s}):n.jsx(Hp,{attachment:e,onOpenAttachment:r})}function Hp({attachment:e,onOpenAttachment:t}){const[s,r]=o.useState(!1),a=!!((e.filePreview||e.imagePreview)&&t),i=s?"Opening":e.lineCount!==void 0?No(e.lineCount):null,l=n.jsxs(n.Fragment,{children:[n.jsx(Ao,{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 Vp({attachment:e,connection:t}){const s=hm(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(Ar,{size:24})}),n.jsx("figcaption",{children:n.jsx("span",{children:e.name})})]})}const Fg=o.memo(function(){return n.jsx("article",{className:"activity-group thinking-row","aria-live":"polite",children:n.jsx(Tr,{running:!0,children:"Thinking…"})})});function Wp({message:e}){const t=e.statusTone??"info",s=e.statusState??"idle";return n.jsx("article",{className:`status-divider ${t} ${s}`,"aria-live":t==="danger"?"assertive":"polite",children:n.jsx("span",{children:e.content??""})})}function Mr(e){return e.state==="proposed"&&["waiting_input","waiting_approval","cancelled"].includes(e.target.status)}function Gp({items:e,busy:t,editingId:s,onEdit:r,onSend:a,onDismiss:i,onOpen:l}){return e.length?n.jsx("section",{className:"ponder-recommendations","aria-label":"Ponder recommendations",children:e.map(c=>n.jsxs("article",{className:"ponder-recommendation","data-state":c.state,children:[n.jsx("button",{type:"button",className:"ponder-recommendation-target",onClick:()=>l(c.target.conversationId),children:c.target.title}),n.jsx("p",{children:c.summary}),c.submittedText||c.proposedText?n.jsx("blockquote",{children:c.submittedText??c.proposedText}):null,n.jsxs("details",{children:[n.jsx("summary",{children:"Why Ponder suggested this"}),c.evidence.map(u=>n.jsx("p",{children:u.excerpt},u.id))]}),["proposed","failed","stale","submitting"].includes(c.state)?n.jsxs("div",{className:"ponder-recommendation-actions",children:[c.state==="proposed"&&c.proposedText?n.jsxs(n.Fragment,{children:[n.jsx("button",{type:"button",disabled:!!t,onClick:()=>r(c),children:s===c.id?"Editing below":"Edit"}),n.jsx("button",{type:"button",disabled:!!t||Mr(c),onClick:()=>a(c),children:t===c.id?"Sending…":s===c.id?"Send edited message":"Send"})]}):null,(c.state==="failed"||c.state==="submitting")&&c.submittedText&&c.submissionRevision!==null?n.jsx("button",{type:"button",disabled:!!t,onClick:()=>a(c),children:t===c.id?"Retrying…":"Retry reviewed message"}):null,Mr(c)?n.jsx("small",{role:"status",children:"Resolve this task's wait or cancellation before sending a new message."}):null,c.state!=="submitting"?n.jsx("button",{type:"button",disabled:!!t,onClick:()=>i(c),children:"Dismiss"}):n.jsx("small",{role:"status",children:"Awaiting task acknowledgment"}),c.state==="stale"?n.jsx("small",{role:"status",children:"Task changed — review its latest state"}):null]}):n.jsx("small",{role:"status",children:c.state==="submitted"?"Message submitted to the task":c.state==="stale"?"Task changed — review the latest task before sending":c.state.replaceAll("_"," ")}),c.error?n.jsx("p",{role:"alert",children:c.error}):null]},c.id))}):null}function Kp(e,t){const[s,r]=o.useState([]),[a,i]=o.useState(null),[l,c]=o.useState(null),u=o.useRef({connection:e,bindingId:t});u.current={connection:e,bindingId:t};const d=o.useRef(!1),h=o.useRef(!0),v=o.useCallback(async p=>{if(!t)return;const g=await Se(e,"/v1/ponder/recommendations",{signal:p});h.current&&!p?.aborted&&u.current.connection===e&&u.current.bindingId===t&&g.bindingId===t&&(r(g.items),i(null))},[e,t]);o.useEffect(()=>{if(h.current=!0,r([]),i(null),c(null),!t)return()=>{h.current=!1};const p=new AbortController;let g=!1;const b=async()=>{if(!g){g=!0;try{await v(p.signal)}catch(x){p.signal.aborted||i(x instanceof Error?x.message:"Unable to read recommendations.")}finally{g=!1}}};b();const w=window.setInterval(()=>{b()},5e3);return()=>{h.current=!1,p.abort(),window.clearInterval(w)}},[t,v]);const m=o.useCallback(async(p,g,b)=>{if(d.current||!t)return!1;if(g==="send"&&Mr(p))return i("Resolve this task's wait or cancellation before sending a new message."),!1;const w=g==="send"&&(p.state==="submitting"||p.state==="failed");if(w&&(!p.submittedText||p.submissionRevision===null))return!1;const x=w?p.submissionRevision:p.revision,E=w?p.submittedText:b;d.current=!0,c(p.id);try{return await Se(e,`/v1/ponder/recommendations/${encodeURIComponent(p.id)}/action`,{method:"POST",body:JSON.stringify({action:g,expectedRevision:x,...E===void 0?{}:{message:E}})}),!h.current||u.current.connection!==e||u.current.bindingId!==t?!1:(await v(),h.current&&u.current.connection===e&&u.current.bindingId===t)}catch(C){return u.current.connection===e&&u.current.bindingId===t&&i(C instanceof Error?C.message:"Recommendation action failed."),!1}finally{d.current=!1,u.current.connection===e&&u.current.bindingId===t&&c(null)}},[t,e,v]);return{items:s,error:a,busy:l,action:m,refresh:v}}function Qp({connection:e,work:t,localWork:s,busy:r,onOpenWork:a,onOpenLocalWork:i,onOpenLocalOutput:l,onOpenOutput:c}){const[u,d]=o.useState(null),[h,v]=o.useState(null),m=o.useRef({connection:e,mounted:!0,inFlight:!1});m.current.connection!==e&&(m.current={connection:e,mounted:!0,inFlight:!1}),o.useEffect(()=>{const b=m.current;return b.mounted=!0,d(null),v(null),()=>{b.mounted=!1}},[e]);const p=[...t.flatMap(b=>b.deliveries.filter(w=>w.status==="attention"&&w.attentionAt).map(w=>({task:b,delivery:w,kind:"hosted"}))),...s.flatMap(b=>b.deliveries.filter(w=>w.status==="attention"&&w.attentionAt).map(w=>({task:b,delivery:w,kind:"local"})))];async function g(b){const w=m.current;if(!b.attentionAt||w.inFlight)return;const x=()=>w.mounted&&m.current===w;w.inFlight=!0,d(b.inputId),v(null);try{await Se(e,"/v1/ponder/results/retry",{method:"POST",body:JSON.stringify({inputId:b.inputId,attentionAt:b.attentionAt,priorTurnId:b.ponderTurnId})})}catch(E){x()&&v(E instanceof Error&&E.message==="hosted_work_model_not_available"?"The selected model is unavailable. Choose an available model, then retry.":"The discussion could not be started. Refresh and try again.")}finally{w.inFlight=!1,x()&&d(null)}}return p.length===0?null:n.jsxs("section",{"aria-label":"Saved results needing discussion","aria-live":"polite",children:[p.map(b=>n.jsxs("div",{className:"ponder-desktop-attention",children:[n.jsxs("p",{children:["The result from"," ",n.jsx("button",{type:"button",onClick:()=>b.kind==="hosted"?a(b.task.conversationId):i(b.task),children:b.task.title})," ","is saved.",b.delivery.attentionReason==="model_unavailable"?" The selected model was unavailable.":b.delivery.attentionReason==="chat_cancelled"?" The discussion was cancelled.":" The discussion failed."]}),b.delivery.outputs.map(w=>n.jsxs("button",{type:"button",onClick:()=>b.kind==="local"?l({...b.task,turnId:b.delivery.localTurnId},w.id):c(w.id),children:[w.title," · Download"]},w.id)),n.jsx("button",{type:"button",disabled:r||u!==null,onClick:()=>{g(b.delivery)},children:u===b.delivery.inputId?"Starting discussion…":"Retry discussion"})]},b.delivery.inputId)),h?n.jsx("p",{role:"alert",children:h}):null]})}function Xp({message:e,connection:t,work:s,onOpenWork:r,onOpenOutput:a,onOpenLocalWork:i,onOpenLocalOutput:l}){if(e.source==="ponder-recommendation")return null;const c=e.metadata.ponderMessage,u=xc.safeParse(e.metadata.ponderLocalMessage),d=u.success?u.data:null;if(!c&&!d&&e.role!=="user"&&e.role!=="assistant")return null;const h=d?.body??c?.body??e.text;return!c&&!d&&e.role==="assistant"&&!h.trim()?null:n.jsxs("div",{className:`ponder-transcript-message ${d||c?"task-handoff":""}`,children:[n.jsx(ba,{showFooter:!1,connection:t,conversationLinks:s,onOpenSession:r,message:{id:e.id,role:d||c||e.role==="user"?"user":"assistant",content:h,timestamp:e.createdAt}}),d?n.jsxs("div",{className:"ponder-message-destination",children:[n.jsxs("span",{children:[d.direction==="sent"?"Sent to":"Received from"," "]}),n.jsx("button",{type:"button",onClick:()=>i(d),children:d.title}),n.jsxs("span",{children:[" ","· Local task ·"," ",d.status==="resolved"?"Delivered":d.status==="included"?"Included in agent request":d.status.replaceAll("_"," ")]})]}):null,c?n.jsxs("div",{className:"ponder-message-destination",children:[n.jsxs("span",{children:[c.direction==="sent"?"Sent to":"Received from"," "]}),n.jsx("button",{type:"button",onClick:()=>r(c.conversationId),children:c.title}),n.jsxs("span",{children:[" ","·"," ",c.status==="consumed"?"Delivered":c.status.replaceAll("_"," ")]})]}):null,e.role==="assistant"?n.jsx(Ra,{content:h,timestamp:e.createdAt,kvCacheSummary:e.metadata.kvCacheSummary}):null,c?.outputFileIds.map(v=>n.jsx("button",{type:"button",onClick:()=>a(v),children:s.flatMap(m=>m.deliveries.flatMap(p=>p.outputs)).find(m=>m.id===v)?.title??"Saved file"},v)),d?.outputs.map(v=>n.jsxs("button",{type:"button",onClick:()=>l(d,v.id),children:[v.title," · Download"]},v.id))]})}function Jp({connection:e,item:t,onSaved:s}){const[r,a]=o.useState(null),[i,l]=o.useState(""),[c,u]=o.useState(""),[d,h]=o.useState(""),[v,m]=o.useState(""),[p,g]=o.useState(!1),[b,w]=o.useState(null),x=o.useRef(0),E=o.useRef(!1),C=o.useRef(new Map);o.useEffect(()=>(x.current++,E.current=!1,C.current.clear(),a(null),g(!1),w(null),()=>{x.current++}),[e,t.id,t.revision]);async function A(){if(E.current)return;const M=x.current;E.current=!0,g(!0);try{await Ts(e,t.scope);const k=`/v1/ponder/handoffs/${encodeURIComponent(t.id)}/edit`,$=Ua.parse(await Se(e,k));if($.handoffId!==t.id||$.revision!==t.revision)throw new Error("The handoff changed. Refresh Activity before editing it.");const O=[...$.targets];let U=$.nextCursor,Q=1;for(;U;){if(M!==x.current)return;if(++Q>200)throw new Error("The desktop catalog exceeded its page limit.");const F=Ua.parse(await Se(e,`${k}?cursor=${encodeURIComponent(JSON.stringify(U))}`));if(F.handoffId!==$.handoffId||F.revision!==$.revision)throw new Error("The handoff changed. Refresh Activity before editing it.");O.push(...F.targets),U=F.nextCursor}if(M!==x.current)return;$.targets=O,$.nextCursor=null,a($),l($.targets.some(F=>F.id===$.successor.targetId&&F.revision===$.successor.targetRevision)?$.successor.targetId:""),u($.successor.action==="create"?$.successor.title:t.title),h($.successor.prompt),m($.successCriteria),w(null)}catch(k){M===x.current&&w(k instanceof Error?k.message:String(k))}finally{M===x.current&&(E.current=!1,g(!1))}}async function R(){if(!r||E.current)return;const M=r.targets.find(U=>U.id===i);if(!M){w("Choose an available successor on the original desktop.");return}const k={...r.successor,targetId:M.id,targetRevision:M.revision,prompt:d.trim(),...r.successor.action==="create"?{title:c.trim()}:{}},$=JSON.stringify({handoffId:t.id,expectedRevision:r.revision,successor:k,successCriteria:v.trim()});C.current.has($)||C.current.set($,crypto.randomUUID());const O=x.current;E.current=!0,g(!0);try{if(await Ts(e,t.scope),O!==x.current||(await Se(e,"/v1/ponder/handoffs/edit",{method:"POST",body:$,headers:{"Idempotency-Key":C.current.get($)}}),O!==x.current))return;a(null),w(null),await s()}catch(U){O===x.current&&w(U instanceof Error?U.message:String(U))}finally{O===x.current&&(E.current=!1,g(!1))}}return n.jsxs("div",{children:[r?n.jsxs("form",{onSubmit:M=>{M.preventDefault(),R()},children:[n.jsx("p",{children:"Changes apply before successor admission. Saving requires the success criteria to be checked again."}),n.jsxs("label",{children:["Successor",n.jsxs("select",{value:i,disabled:p,required:!0,onChange:M=>l(M.target.value),children:[n.jsx("option",{value:"",children:"Choose a successor"}),r.targets.map(M=>n.jsxs("option",{value:M.id,children:[M.title," · ",M.modelId??M.providerId," · ",M.workspaceLabel]},M.id))]})]}),r.successor.action==="create"&&n.jsxs("label",{children:["Task title",n.jsx("input",{value:c,disabled:p,required:!0,maxLength:300,onChange:M=>u(M.target.value)})]}),n.jsxs("label",{children:["Instruction",n.jsx("textarea",{value:d,disabled:p,required:!0,maxLength:32e3,onChange:M=>h(M.target.value)})]}),n.jsxs("label",{children:["Success criteria",n.jsx("textarea",{value:v,disabled:p,required:!0,maxLength:4e3,onChange:M=>m(M.target.value)})]}),n.jsx("button",{type:"submit",disabled:p,children:p?"Saving handoff…":"Save handoff"}),n.jsx("button",{type:"button",disabled:p,onClick:()=>a(null),children:"Close editor"})]}):n.jsx("button",{type:"button",disabled:p,onClick:()=>{A()},children:p?"Loading handoff…":"Edit handoff"}),b&&n.jsx("p",{role:"alert",children:b})]})}function Yp({items:e,onOpenTask:t,onCancel:s,cancelling:r,connection:a,onEdited:i}){return e.length?n.jsx("section",{className:"ponder-linked-work","aria-label":"Completion handoffs",children:e.map(l=>n.jsxs("article",{children:[n.jsx("strong",{children:l.title}),n.jsx("p",{children:l.cancellationRequested?"Cancellation requested; awaiting the actual stop outcome.":l.state==="waiting"?"Waiting for the original task’s verified result.":l.state==="ready"?"Prerequisite verified; awaiting desktop admission.":l.state==="dispatching"?"Desktop claimed the successor; reconciling admission.":l.state==="admitted"?"Successor admitted; awaiting its result.":l.state==="attention"?"The prerequisite needs review before its successor can start.":l.state==="blocked"?"Handoff blocked.":`Handoff ${l.state}.`}),l.waitingForDesktop&&n.jsx("p",{children:"Reconnect the original desktop under the same account and workspace."}),l.reason&&n.jsx("p",{children:l.reason}),n.jsxs("small",{children:[l.successor.modelId??l.successor.providerId," ·"," ",l.successor.workspaceLabel]}),n.jsxs("details",{children:[n.jsx("summary",{children:"Success criteria"}),n.jsx("p",{children:l.successCriteria})]}),l.prerequisite.sessionId&&n.jsx("button",{type:"button",onClick:()=>t(l,l.prerequisite.sessionId),children:"Open original task"}),l.successor.sessionId&&n.jsx("button",{type:"button",onClick:()=>t(l,l.successor.sessionId),children:"Open successor task"}),l.canCancel&&n.jsx("button",{type:"button",disabled:r!==null,onClick:()=>s(l),children:r===l.id?"Requesting cancellation…":"Cancel handoff"}),l.canEdit&&n.jsx(Jp,{connection:a,item:l,onSaved:i})]},l.id))}):null}async function Zp(e,t,s,r){if(!t.turnId)throw new Error("This local result has no completed task turn.");if(await Ts(e,t),!r())return;const a=await Se(e,"/v1/ponder/desktop/outputs",{method:"POST",body:JSON.stringify({operationId:t.operationId,turnId:t.turnId,outputId:s})});if(!r())return;const i=Uint8Array.from(atob(a.contentsBase64),u=>u.charCodeAt(0)),l=URL.createObjectURL(new Blob([i],{type:a.contentType})),c=document.createElement("a");c.href=l,c.download=a.filename,document.body.append(c),c.click(),c.remove(),setTimeout(()=>URL.revokeObjectURL(l),3e4)}function mt(e){return e instanceof _i&&(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 eg({connection:e,presentation:t,composer:s,onOpenWork:r,onOpenLocalWork:a}){const[i,l]=o.useState(null),[c,u]=o.useState(null),[d,h]=o.useState(""),[v,m]=o.useState(""),[p,g]=o.useState(!1),[b,w]=o.useState(null),[x,E]=o.useState([]),[C,A]=o.useState([]),[R,M]=o.useState([]),[k,$]=o.useState([]),[O,U]=o.useState(null),Q=o.useRef(new Map),F=o.useRef(null),H=Kp(e,i?.bindingId??null),[V,ce]=o.useState(null),ge=V?H.items.find(S=>S.id===V.id):null,ae=!!(V&&(!ge||ge.state!=="proposed"||ge.revision!==V.revision||Mr(ge))),fe=o.useRef(""),q=o.useRef({connection:e,bindingId:i?.bindingId,destination:V?.id??"chat",draft:d});q.current={connection:e,bindingId:i?.bindingId,destination:V?.id??"chat",draft:d};const xe=o.useRef(!1),G=o.useRef(!0);function D(){ce(null),h(fe.current)}function _(S){V||(fe.current=d),ce(S),h(S.proposedText??"")}async function ie(S,T){const L=q.current,W=V?.id===S.id;await H.action(S,T,T==="send"?W?d:S.proposedText??void 0:void 0)&&W&&q.current.connection===L.connection&&q.current.bindingId===L.bindingId&&q.current.destination===L.destination&&(q.current.draft===L.draft?D():ce(null))}o.useEffect(()=>{G.current=!0;let S=!0;return l(null),u(null),E([]),A([]),M([]),$([]),U(null),Q.current.clear(),F.current=null,w(null),h(""),fe.current="",g(!1),m(""),ce(null),Se(e,"/v1/ponder",{method:"POST",body:"{}"}).then(T=>{S&&(l(T),w(null))}).catch(T=>{S&&w(mt(T))}),()=>{S=!1,G.current=!1}},[e]),o.useEffect(()=>{if(!i)return;let S=!0;const T=async()=>{try{const W=await Se(e,`/v1/ponder/conversations/${encodeURIComponent(i.conversationId)}`);S&&u(W)}catch(W){S&&w(mt(W))}};T();const L=window.setInterval(()=>{T()},3e3);return()=>{S=!1,window.clearInterval(L)}},[e,i]),o.useEffect(()=>{if(!i)return;let S=!0;const T=async()=>{try{const W=await Se(e,"/v1/ponder/work"),te=Kr.array().parse(W.localHandoffs);S&&(A(W.items),M(W.localItems),$(te))}catch(W){S&&w(mt(W))}};T();const L=window.setInterval(()=>{T()},3e3);return()=>{S=!1,window.clearInterval(L)}},[e,i]),o.useEffect(()=>{if(!i||t!=="activity")return;F.current=null,E([]);let S=!0,T=!1;const L=async()=>{if(!T){T=!0;try{let te;do{const Ae=F.current,ve=await Se(e,`/v1/ponder/conversations/${encodeURIComponent(i.conversationId)}/activity${Ae?`?after=${encodeURIComponent(Ae)}`:""}`);if(!S)return;ve.items.length>0&&(E(Pe=>[...Pe,...ve.items]),F.current=ve.nextCursor),te=ve.hasMore&&ve.items.length>0}while(te)}catch(te){S&&w(mt(te))}finally{T=!1}}};L();const W=window.setInterval(()=>{L()},3e3);return()=>{S=!1,window.clearInterval(W)}},[e,i,t]);async function Ee(S){const T=S.contentsBase64?Uint8Array.from(atob(S.contentsBase64),ve=>ve.charCodeAt(0)):S.text!==void 0?new TextEncoder().encode(S.text):null;if(!T)throw new Error(`Attachment ${S.name} has no content to upload.`);const L=await crypto.subtle.digest("SHA-256",T),W=btoa(String.fromCharCode(...new Uint8Array(L))),te=await Se(e,"/v1/ponder/work-inputs",{method:"POST",body:JSON.stringify({name:S.name,contentType:S.mediaType,sizeBytes:T.byteLength,sha256Base64:W})}),Ae=await fetch(te.upload.url,{method:te.upload.method,headers:te.upload.headers,body:new Blob([T],{type:S.mediaType})});if(!Ae.ok)throw new Error(`Attachment upload failed (${Ae.status})`);return Se(e,`/v1/ponder/work-inputs/${encodeURIComponent(te.input.id)}/finalize`,{method:"POST",body:"{}"})}async function se(S=[],T){const L=(T?.promptOverride??d).trim();if(!i||!L||xe.current)return!1;const W=q.current,te=()=>G.current&&q.current.connection===W.connection&&q.current.bindingId===W.bindingId&&q.current.destination===W.destination;xe.current=!0,g(!0);try{if(V){if(ae)throw new Error("Review the latest task state before sending this proposed message.");if(S.length)throw new Error("Send task messages as text. Attachments can be sent in the task's own conversation.");const Pe=await H.action(V,"send",L);return te()?(Pe&&q.current.draft===W.draft&&D(),Pe):!1}const Ae=await Promise.all(S.map(Ee));if(!te())return!1;const ve=await Se(e,`/v1/ponder/conversations/${encodeURIComponent(i.conversationId)}/turns`,{method:"POST",headers:{"idempotency-key":crypto.randomUUID()},body:JSON.stringify({prompt:L,attachments:Ae})});return te()?(u(Pe=>Pe?{...Pe,activeTurn:ve}:{id:i.conversationId,messages:[],activeTurn:ve}),q.current.draft===W.draft&&h(""),w(null),!0):!1}catch(Ae){return te()&&w(mt(Ae)),!1}finally{xe.current=!1,g(!1)}}async function de(S,T){if(S.wait)try{await Se(e,`/v1/ponder/turns/${encodeURIComponent(S.id)}/waits/${encodeURIComponent(S.wait.id)}/resolve`,{method:"POST",body:JSON.stringify(T)}),m("")}catch(L){w(mt(L))}}async function K(S){try{await Se(e,`/v1/ponder/turns/${encodeURIComponent(S.id)}/cancel`,{method:"POST",body:"{}"})}catch(T){w(mt(T))}}async function ee(S){const T=window.open("about:blank","_blank");try{const L=await Se(e,`/v1/ponder/work-outputs/${encodeURIComponent(S)}`);if(!L.downloadURL)throw new Error("This output is not available for download.");T?T.location.replace(L.downloadURL):window.location.assign(L.downloadURL)}catch(L){T?.close(),w(mt(L))}}async function X(S){if(!S.sessionId)return;const T=q.current,L=()=>G.current&&q.current.connection===T.connection&&q.current.bindingId===T.bindingId;try{if(await Ts(e,S),!L())return;a(S.sessionId)}catch(W){L()&&w(mt(W))}}async function Z(S,T){const L=q.current,W=()=>G.current&&q.current.connection===L.connection&&q.current.bindingId===L.bindingId;try{await Zp(e,S,T,W)}catch(te){W()&&w(mt(te))}}async function re(S){if(O)return;const T=q.current,L=()=>G.current&&q.current.connection===T.connection&&q.current.bindingId===T.bindingId,W=`${S.id}:${S.revision}`;Q.current.has(W)||Q.current.set(W,crypto.randomUUID()),U(S.id);try{await Se(e,"/v1/ponder/handoffs/cancel",{method:"POST",headers:{"Idempotency-Key":Q.current.get(W)},body:JSON.stringify({handoffId:S.id,expectedRevision:S.revision})});const te=await Se(e,"/v1/ponder/work"),Ae=Kr.array().parse(te.localHandoffs);L()&&($(Ae),w(null))}catch(te){L()&&w(mt(te))}finally{L()&&U(null)}}const Ie=!!(c?.activeTurn&&["queued","running","retry_scheduled"].includes(c.activeTurn.status)),Le=!!(c?.activeTurn&&["queued","running","retry_scheduled","waiting_approval","waiting_input"].includes(c.activeTurn.status)),je=t==="activity"&&x.length>0?{id:"ponder-activity",role:"activity_group",timestamp:new Date().toISOString(),activities:x.map(S=>({id:S.id,label:S.type,content:S.text??"",timestamp:new Date().toISOString()}))}:null;return n.jsxs("div",{className:"chat-column","aria-label":"Ponder Pal",children:[n.jsxs("section",{className:"chat-thread","aria-label":"Conversation",children:[n.jsx(Yp,{connection:e,items:k,onEdited:async()=>{const S=q.current,T=await Se(e,"/v1/ponder/work");G.current&&q.current.connection===S.connection&&q.current.bindingId===S.bindingId&&$(Kr.array().parse(T.localHandoffs))},onOpenTask:(S,T)=>{X({...S.scope,sessionId:T})},onCancel:S=>{re(S)},cancelling:O}),n.jsx(Qp,{connection:e,work:C,localWork:R,onOpenWork:r,onOpenLocalWork:S=>{X(S)},onOpenLocalOutput:(S,T)=>{Z(S,T)},onOpenOutput:S=>{ee(S)},busy:p||Le}),c?.messages.map(S=>n.jsx(Xp,{message:S,connection:e,work:C,onOpenWork:r,onOpenOutput:T=>{ee(T)},onOpenLocalWork:T=>{X(T)},onOpenLocalOutput:(T,L)=>{Z(T,L)}},S.id)),n.jsx(Gp,{items:H.items,busy:H.busy,editingId:V?.id??null,onEdit:_,onSend:S=>{ie(S,"send")},onDismiss:S=>{ie(S,"dismiss")},onOpen:r}),H.error?n.jsx("p",{role:"alert",children:H.error}):null,je&&n.jsx(ba,{message:je,connection:e}),Ie&&n.jsx("p",{className:"ponder-request-status",role:"status","aria-live":"polite",children:"Request received. Ponder is working on it…"}),c?.activeTurn?.status==="failed"&&n.jsxs("p",{className:"ponder-request-status",role:"alert",children:["Ponder couldn’t complete this request. ",c.activeTurn.errorText??"Please try again."]}),c?.activeTurn?.wait&&n.jsxs("section",{className:"ponder-desktop-attention",children:[n.jsx("strong",{children:c.activeTurn.wait.title}),c.activeTurn.wait.kind==="approval"?n.jsxs(n.Fragment,{children:[n.jsx("button",{type:"button",onClick:()=>{de(c.activeTurn,{decision:"accepted"})},children:"Approve"}),n.jsx("button",{type:"button",onClick:()=>{de(c.activeTurn,{decision:"declined"})},children:"Decline"})]}):c.activeTurn.wait.options.length>0?c.activeTurn.wait.options.map(S=>n.jsx("button",{type:"button",onClick:()=>{de(c.activeTurn,{value:S})},children:S},S)):n.jsxs("form",{onSubmit:S=>{S.preventDefault(),de(c.activeTurn,{value:v})},children:[n.jsx("input",{"aria-label":"Response to Ponder Pal",value:v,onChange:S=>m(S.target.value)}),n.jsx("button",{type:"submit",disabled:!v.trim(),children:"Send response"})]})]}),c?.activeTurn?.outputs?.map(S=>S.downloadURL?n.jsx("a",{href:S.downloadURL,target:"_blank",rel:"noreferrer",children:S.name},S.id):n.jsx("button",{type:"button",onClick:()=>{ee(S.id)},children:S.name},S.id)),b&&n.jsx(ba,{message:{id:"ponder-error",role:"error",content:b,timestamp:new Date().toISOString()},connection:e})]}),n.jsxs("div",{className:"composer-stack dock",children:[V?n.jsxs("div",{className:"ponder-message-destination",role:"status",children:[n.jsxs("span",{children:["Message to ",V.target.title,ae?" — review the latest task state before sending":""]}),n.jsx("button",{type:"button",onClick:D,children:"Return to Ponder chat"})]}):null,n.jsx(To,{...s,experience:"chat",mode:"dock",showProjectFooter:!1,hideModelControls:!0,connection:e,prompt:d,onPromptChange:h,busy:p||ae||!!H.busy||!i,running:Ie&&!V,submissionScopeKey:`ponder:${i?.conversationId??"loading"}:${V?.id??"chat"}`,voiceInputChannelKey:`ponder:${i?.conversationId??"loading"}`,onSubmit:(S,T,L,W)=>se(S,W?.promptOverride?{promptOverride:W.promptOverride}:void 0),onStop:()=>c?.activeTurn?K(c.activeTurn):void 0})]})]})}function tg({accountBaseUrl:e,onOpenBrowserLink:t,...s}){function r(a){if(!e){s.composer.showToast("OpenPond account URL is unavailable for this Work task.","error");return}try{const i=new URL(`/tasks/${encodeURIComponent(a)}`,e);t(i.toString(),{newTab:!0})}catch{s.composer.showToast("OpenPond account URL is invalid for this Work task.","error")}}return n.jsx(eg,{...s,onOpenWork:r})}function ng(e){return JSON.stringify({account:e?.account.activeProfile??null,baseUrl:e?.account.baseUrl??null,owner:e?.account.profile?.id??null,state:e?.account.state??null,teamId:e?.preferences.defaultTeamId??null})}const sg=o.lazy(()=>Re(()=>import("./WorkspaceDiffPanel-CL7wi3kp.js").then(e=>e.a),__vite__mapDeps([7,1,2,5,3,4,8,9,10,11,12,13])).then(e=>({default:e.WorkspaceDiffPanel}))),rg=o.lazy(()=>Re(()=>import("./AppTerminalPanel-CrmoOgd4.js"),__vite__mapDeps([14,1,2])).then(e=>({default:e.AppTerminalPanel}))),ag=o.lazy(()=>Re(()=>import("./RightSidebarHomePanel-BUtdPb2L.js"),__vite__mapDeps([15,1,2,3,4,13,9,11])).then(e=>({default:e.RightSidebarHomePanel}))),ig=o.lazy(()=>Re(()=>import("./WorkSidebarPanel-Cto1usLM.js"),__vite__mapDeps([16,1,2,3,4,5,9,11,17,18,19,6,20])).then(e=>({default:e.WorkSidebarPanel}))),og=o.lazy(()=>Re(()=>import("./NewExperienceSwitcher-DuD6GScJ.js"),__vite__mapDeps([21,1,2,3,4])).then(e=>({default:e.NewExperienceSwitcher}))),lg=o.lazy(()=>Re(()=>import("./CollaborationTabs-PP0AIXhb.js"),__vite__mapDeps([22,1,2,3,4,23])).then(e=>({default:e.CollaborationTabs}))),cg=o.lazy(()=>Re(()=>import("./AppsView-0P6cBsD4.js"),__vite__mapDeps([24,1,2,3,4,25,26,12,5,27,28,17,18,19,9,6,29])).then(e=>({default:e.AppsView}))),ug=o.lazy(()=>Re(()=>import("./GetStartedView-2oZ068h_.js"),__vite__mapDeps([30,1,2,6,3,4,26,5,31])).then(e=>({default:e.GetStartedView}))),dg=o.lazy(()=>Re(()=>import("./LabsRoute-CgNiUHsy.js").then(e=>e.t),__vite__mapDeps([32,1,2,3,4,33,26,18,8,10,0,5,6,34,35])).then(e=>({default:e.LabsRoute}))),fg=o.lazy(()=>Re(()=>import("./ScheduledWorkPage-Dg9GkGrT.js"),__vite__mapDeps([36,1,2,3,4,37,5,6,12,11,17,18,19,9])).then(e=>({default:e.ScheduledWorkPage}))),hg=o.lazy(()=>Re(()=>import("./OutputsPage-PUlmcWjv.js"),__vite__mapDeps([38,1,2,3,4,5,9,17,18,19,6])).then(e=>({default:e.OutputsPage}))),mg=o.lazy(()=>Re(()=>import("./ProjectsPage-DWBRmej6.js"),__vite__mapDeps([39,1,2,3,4,18,40])).then(e=>({default:e.ProjectsPage}))),$i=o.lazy(()=>Re(()=>import("./LabSkillSidebar-DDknttrB.js"),__vite__mapDeps([41,1,2,3,4,5,11,17,18,19,9,6,42])).then(e=>({default:e.LabSkillSidebar}))),pg=o.lazy(()=>Re(()=>import("./BrowserSidebar-Cb6edJw6.js"),__vite__mapDeps([43,1,2,3,4,5,19,44])).then(e=>({default:e.BrowserSidebar}))),gg=o.lazy(()=>Re(()=>import("./RightChatPanelStack-HaCVep4t.js"),__vite__mapDeps([45,1,2,9,3,4,46,5,17,18,19,6])).then(e=>({default:e.RightChatPanelStack}))),bg=o.lazy(()=>Re(()=>import("./NativeSkillSidebar-D2uVZkqh.js"),__vite__mapDeps([47,1,2,3,4,11,48])).then(e=>({default:e.NativeSkillSidebar}))),xg=o.lazy(()=>Re(()=>import("./TeamChatView-C71JX4je.js"),__vite__mapDeps([49,1,2,3,4,5,17,18,19,9,6,50,51])).then(e=>({default:e.TeamChatView}))),vg=o.lazy(()=>Re(()=>import("./TeamChatView-C71JX4je.js"),__vite__mapDeps([49,1,2,3,4,5,17,18,19,9,6,50,51])).then(e=>({default:e.TeamChatProView}))),yg=o.lazy(()=>Re(()=>import("./CommunityView-V6KmMl5n.js"),__vite__mapDeps([52,1,2,53,3,4,5,17,18,19,9,6,54])).then(e=>({default:e.CommunityView}))),jg=o.lazy(()=>Re(()=>import("./TeamChatView-C71JX4je.js"),__vite__mapDeps([49,1,2,3,4,5,17,18,19,9,6,50,51])).then(e=>({default:e.TeamAiThreadPanel}))),wg=o.lazy(()=>Re(()=>import("./TeamChatView-C71JX4je.js"),__vite__mapDeps([49,1,2,3,4,5,17,18,19,9,6,50,51])).then(e=>({default:e.TeamAgentConversationPanel}))),kg=o.lazy(()=>Re(()=>import("./TrainingDraftPanel-7C48sHfC.js"),__vite__mapDeps([55,1,2,3,4,11,35])).then(e=>({default:e.TrainingDraftPanel}))),Cg=o.lazy(()=>Re(()=>import("./MainChatThread-yCVg99LU.js"),__vite__mapDeps([56,1,2,46,3,4,33,5,17,18,19,9,6])).then(e=>({default:e.MainChatThread}))),Sg=o.lazy(()=>Re(()=>import("./TrainingCreationPanel-B9MxFzQx.js"),__vite__mapDeps([57,1,2,3,4,35])).then(e=>({default:e.TrainingCreationPanel})));function Rg({ponderMode:e=null,onPonderModeChange:t,experience:s,onNewExperienceChange:r,view:a,teamChat:i,community:l,bootstrap:c,runtimeEvents:u,chatMessages:d,pendingUserMessage:h,contextWindowStatus:v,goalRuntime:m,subagentRuntime:p,selectedSessionId:g,composerDraftStore:b,mainComposerFocusRequestId:w,labCloseDetailRequestId:x,labCloseDetailKind:E,sideChatTrainingLaunchRequest:C,onSideChatTrainingLaunchHandled:A,mentionApps:R,connectedAppMentions:M,profileSkills:k,selectedMentionAppId:$,busy:O,turnRunning:U,activeProvider:Q,activeModel:F,codexPermissionMode:H,codexReasoningEffort:V,openPondCommandAccessMode:ce,pendingApproval:ge,activeWorkspaceAppId:ae,activeWorkspaceId:fe,activeWorkspaceKind:q,projectTarget:xe,actionCatalog:G,workspaceTarget:D,connection:_,workspaceName:ie,workspaceState:Ee,workspaceDiff:se,workspaceBusy:de,diffBusy:K,forceChatThread:ee=!1,diffPanelOpen:X,diffPanelExpanded:Z,rightPanelMode:re,rightPanelTabRequest:Ie,rightChatPanels:Le,runtimeEventStore:je,nativeSkillSidebar:S,extensionSkillSidebar:T,workspaceDiffPanelViewState:L,sidebarFileOpenRequest:W,sidebarFileBookmarks:te,onSetSidebarFileStatus:Ae,browserConversationId:ve,terminalScope:Pe,terminalTabs:Mt,terminalCwd:et,pendingTerminalCommand:y,terminalOpen:I,onToggleTerminal:J,onWorkspaceDiffPanelViewStateChange:we,training:ne,trainingSessions:Te,trainingChatHandoff:$e,trainingDetailTasksetId:at,onTrainingDetailTasksetIdChange:Be,onTrainingChatTaskSelect:Ht,onTrainingChatHandoffDismiss:tt,onOpenSession:it,onExperienceHandoff:Vt,cloudProjects:Wt,projects:rn,projectsAccountBaseUrl:ke,projectsTeamName:Ve,projectTaskCounts:Ls,onNewCloudProject:Os,onNewLocalProject:kn,onNewProjectTask:zs,onToggleProjectPinned:Cn,onUploadLocalProject:Fs,chatHistoryHasMore:Sn=!1,chatHistoryLoading:Ds=!1,onDiffPanelResizeStart:De,canSyncWorkspace:Bs,startMessage:Gt,onPayload:Nt,onError:Kt,setView:nt,onOpenProfileSettings:gt,onOpenProviderSettings:an,onOpenTrainingSettings:Yn,onOpenDatasetStorageSettings:Ke,changeDraftProvider:bt,changeProjectTarget:Rn,changeWorkspaceTarget:En,setDraftProvider:ut,setDraftModel:xt,onBeginNewChatWithModel:Mn,changeCodexPermissionMode:dt,changeCodexReasoningEffort:vt,changeOpenPondCommandAccessMode:We,resolveApproval:Zn,answerCreateImproveQuestion:yt,approveCreateImproveRun:es,applyCreateImproveCandidate:Nn,cancelCreateImproveRun:ts,openCreateImprovePullRequest:An,pauseCreateImproveRun:In,reconcileCreateImprovePullRequest:ns,rejectCreateImproveCandidate:on,resumeCreateImproveRun:Tn,reviseCreateImproveRun:ss,setMentionedAppId:ot,showToast:be,onSaveTaskDraft:Us,sendPrompt:jt,stopTurn:rs,syncWorkspaceLocally:$n,refreshWorkspaceDiff:Qe,onToggleDiffPanelExpanded:Oe,onShowDiffPanel:wt,onShowBrowserPanel:kt,onShowTrainingDraftPanel:At,onShowFilesPanel:as,onShowRightChatPanel:qs,onAddRightChat:is,onOpenRightChatForSession:Hs,onLabDetailOpenChange:ln,evaluationSidebarActive:$r,onEvaluationSidebarControl:Pn,scheduledDetailOpen:Vs,onScheduledDetailOpenChange:Pr,onTerminalTabsChange:_r,onCloseRightChatPanel:Ws,onCloseNativeSkillSidebar:_e,onActivateRightChatPanel:Ct,onRightChatModelChange:lt,onRightChatPromptChange:ze,onRightChatScrollStateChange:cn,onRightChatProviderChange:Gs,onSubmitRightChat:Lr,onStopRightChat:un,onCloseTerminal:Ks,onLoadMoreChatHistory:Or}){const[ft]=o.useState(()=>new rd),It=g&&!Ba(g)?g:null,os=ld(je,It),Tt=o.useMemo(()=>It?vc(u,os.events):u,[It,os.events,u]),Qt=o.useMemo(()=>It?yc(ft.project(Tt),h):d,[ft,It,h,Tt,d]),[ls,dn]=o.useState(null),[zr,_n]=o.useState(0),Fe=o.useRef(""),fn=o.useCallback(()=>Fe.current,[]),[$t,hn]=o.useState(null),[Ln,st]=o.useState(null),[Xt,Xe]=o.useState(null),[cs,me]=o.useState(null),[Jt,Qs]=o.useState(null),[us,Xs]=o.useState(null),[ds,ct]=o.useState(null),[On,Js]=o.useState([]);o.useEffect(()=>{hn(null)},[ve]);const mn=o.useMemo(()=>c?.sessions.find(N=>N.id===g)??null,[c?.sessions,g]),pn=mn?.currentProfile??c?.profileLibrary?.lastUsed??null,gn=ng(c),Yt=jc(c?.profileLibrary??{profiles:[]},pn)??c?.profile??null,zn=o.useMemo(()=>wc(Yt,c?.extensionCatalog),[c?.extensionCatalog,Yt]),bn=o.useMemo(()=>kc(Yt),[Yt]),xn=o.useCallback(async(N,B=g)=>{if(!_||!c)return;const he=Cc(c.profileLibrary??{profiles:[]},N);if(he)try{const ye=B&&!Ba(B)?c.sessions.find(Y=>Y.id===B)??null:null,le=await Uh({ref:he,session:ye,selectProfile:Y=>qe.profileSelect(_,Y),patchSession:(Y,Ye)=>qe.patchSession(_,Y,{currentProfile:Ye})});let Ce=c.sessions;le.session&&(Ce=Ce.map(Y=>Y.id===le.session.id?le.session:Y)),Nt({...c,profile:le.selected.profile,profileLibrary:le.selected.library,sessions:Ce})}catch(ye){const le=ye instanceof Error?ye.message:String(ye);Kt(le),be(le,"error")}},[c,_,Kt,Nt,g,be]);o.useEffect(()=>{if(!Sc(W,ve))return;const{file:N,id:B}=W;if(hn({id:B,path:N.path}),!_)return;let he=!1;return(N.workspaceKind==="local"?qe.workspaceFile(_,N.workspaceId,N.path).then(le=>le.content??""):qe.sandboxDownloadFile(_,N.workspaceId,N.path).then(le=>{if(le.file.isBinary)throw new Error("Binary files cannot be attached to chat.");return le.contents})).then(le=>{if(he)return;const Ce=N.path.split("/").at(-1)??N.path;dn({id:B,file:new File([le],Ce,{type:Eg(N)})})}).catch(le=>{he||be(le instanceof Error?le.message:String(le),"error")}),()=>{he=!0}},[ve,_,be,W]);const Pt=s==="development"||s==="work"&&xe.value!=="none",fs=o.useMemo(()=>{if(s==="chat")return bn;if(!Pt)return[];const N=new Map(G.filter(B=>!Rc(B)).map(B=>[B.id,B]));for(const B of bn)N.set(B.id,B);for(const B of On)N.set(B.id,B);return[...N.values()]},[G,s,Pt,On,bn]),Me=Hh(_),Fr=o.useCallback(N=>{if(!N){Me.activate(null);return}Me.activate({runId:N.run.id,candidateId:N.candidate.id,title:N.run.objective,fileRootPath:N.fileRootPath,initialPath:N.initialPath})},[Me.activate]),hs=o.useCallback(()=>{Me.selection?.initialPath&&Me.openFile(Me.selection.initialPath),wt()},[Me.openFile,Me.selection?.initialPath,wt]),Fn=o.useCallback(N=>{Xe(N),N&&wt()},[wt]),Dr=o.useCallback(()=>{Xe(null),Z&&Oe()},[Z,Oe]);o.useEffect(()=>{a!=="labs"&&Xe(null)},[a]);const Br=o.useCallback((N,B)=>{const he=Date.now(),ye=G.find(Ce=>Ce.id===N)??null;b.set(""),ot(null),nt("chat");const le=Ce=>{if(!(Ce.find(pe=>pe.id===N)??null))return!1;const Ye=Ce.map(pe=>pe.id===N?{...pe,label:B}:pe);return Js(Ye),window.requestAnimationFrame(()=>{ct({actionId:N,requestId:Math.max(Date.now(),he+1)})}),!0};if(!_){ye?le([ye]):be("The Agent action catalog is still loading. Try Use again.","error");return}qe.profileCurrent(_).then(Ce=>{const Y=Ce.actionCatalog.map(Ye=>Ec(Ye));!le(Y)&&ye?le([ye]):Y.some(Ye=>Ye.id===N)||be("This Agent is ready, but its default chat action is unavailable.","error")}).catch(Ce=>{ye||be(Ce instanceof Error?Ce.message:String(Ce),"error")})},[G,b,_,ot,nt,be]),Ur=o.useCallback((N,B)=>{b.set(N),ot(null),B&&bt(B),nt("chat")},[bt,b,ot,nt]),_t=o.useMemo(()=>Mc(c?.preferences),[c?.preferences]),Lt=_t.training,{createAgentFromLab:qr,improveAgentFromLab:ms}=Wh({activeModel:F,activeProvider:Q,bootstrap:c,codexPermissionMode:H,codexReasoningEffort:V,connection:_,onOpenRightChatForSession:Hs,onPayload:Nt}),Zt=o.useMemo(()=>{const N=ne.payload?.tasksets??[];return N.some(B=>B.id===Jt)?Jt:N[0]?.id??null},[Jt,ne.payload?.tasksets]),Hr=a==="labs"&&Zt?`profiles/${c?.profile.activeProfile??"default"}/tasksets/${Zt}`:null,Dn=o.useMemo(()=>{if(a!=="labs"||!Zt||!ne.payload)return null;const N=ne.payload.tasksets.find(pe=>pe.id===Zt);if(!N)return null;const B=ne.payload.plans.filter(pe=>pe.tasksetId===N.id),he=new Set(B.map(pe=>pe.id)),ye=ne.payload.jobs.filter(pe=>he.has(pe.planId)).sort((pe,ws)=>ws.createdAt.localeCompare(pe.createdAt)),le=ye.find(pe=>pe.id===us)??ye[0]??null,Ce=le?B.find(pe=>pe.id===le.planId)??null:B.sort((pe,ws)=>ws.createdAt.localeCompare(pe.createdAt))[0]??null,Y=le?ne.payload.models.find(pe=>pe.jobId===le.id)??null:null,Ye=le?ne.payload.artifacts.filter(pe=>pe.jobId===le.id):[];return{taskset:N,plan:Ce,job:le,lineage:Y,artifacts:Ye}},[Zt,us,ne.payload,a]),ps=o.useMemo(()=>qh(ne.payload,g),[g,ne.payload]),Ot=o.useMemo(()=>em(Qt),[Qt]),Vr=!!m||!!Ot||!!p,Ue=a==="labs"&&!!Me.selection,Bn=a==="labs"&&X&&re==="changes"&&!!Xt,Ys=(a==="chat"||a==="labs")&&!!ae,Zs=a==="chat"&&X&&re==="chat"&&Le.length===0,er=Nc(q)?fe??nm(ie):null,Wr=a==="chat"&&!!er,ht=er,tr=!!ht||D.value==="cloud"||D.value==="hybrid",vn=o.useMemo(()=>zh({workspaceTarget:D.value,localWorkspaceId:ae,sandboxSourceAvailable:tr,sandboxWorkspaceId:ht,override:Ln}),[ae,tr,ht,Ln,D.value]),St=vn.source,Je=St==="sandbox",nr=o.useMemo(()=>St&&vn.options.length>1?{value:St,options:vn.options,onChange:st}:null,[St,vn.options]);o.useEffect(()=>{st(null)},[ae,ve,ht,D.value]);const gs=!Bn&&(Ue||Ys||Wr)&&X&&(re==="changes"||re==="goal"&&Vr||Zs),Ge=a==="chat"&&X&&re==="browser",bs=(a==="chat"||a==="labs")&&X&&re==="chat"&&Le.length>0,Un=a==="chat"&&X&&re==="training",qn=a==="chat"&&X&&!!S,sr=a==="chat"&&X&&!!T,xs=a==="team"&&X&&re==="chat"&&!!i.aiThread,vs=a==="team"&&X&&re==="chat"&&!!i.agentConversation,ys=s==="work"&&a==="chat"&&X&&re==="home",Hn=zo({supportedView:a==="chat"&&Pt||a==="labs",open:X,hasContentPanel:gs||Bn||Ge||bs||Un||qn||xs||vs||ys}),en=!$r&&(gs||Bn||Ge||bs||Un||qn||xs||vs||ys||Hn),js=en&&re!=="chat"&&Z,rr=c?.account.baseUrl??c?.account.activeProfile?.baseUrl??null,Vn=Xh({activeWorkspaceId:fe,cloudProjects:Wt}),f=a==="chat"&&U&&!ge&&Oh(Qt),j=ee||Qt.length>0||f,P=g??`draft:${a}:${q??"none"}:${fe??ae??"none"}`;Fe.current=P;const z=n.jsx(am,{activeModel:F,activeProvider:Q,busy:U,handoff:$e,onDismiss:tt,onSelectTask:Ht}),ue=o.useMemo(()=>({onAnswerQuestion:yt,onApprove:es,onApplyCandidate:Nn,onCancel:ts,onOpenPullRequest:An,onPause:In,onReconcilePullRequest:ns,onRejectCandidate:on,onResume:Tn,onRevise:ss}),[yt,es,Nn,ts,An,In,ns,on,Tn,ss]),oe=o.useMemo(()=>Ot?{...Ot,...ue}:null,[ue,Ot]),Ne=lm(a,j),Rt=o.useCallback(async(N=[],B=null,he=null,ye={})=>{const le=ye.promptOverride??b.getSnapshot(),Ce=()=>{ye.preservePrompt||(b.set(""),ot(null))};if(!B){const Y=he?{command:he.id,args:le.trim()}:Di(le);if(Y){if(!Ac({id:Y.command},s))return be(`/${Y.command} isn't available in ${s}.`,"info"),!1;if(Y.command==="train")return N.length>0?(be("/train uses the selected chat; add other chats from Models.","error"),!1):g?(Ce(),me({id:Date.now(),objective:Y.args.trim()||null,initialSessionIds:[g]}),nt("labs"),!0):(Ce(),me({id:Date.now(),objective:Y.args.trim()||null,initialSessionIds:[]}),nt("labs"),!0);if(!Y.args&&Y.command!=="skill"&&Y.command!=="sync-cloud")return be(`Add instructions after /${Y.command}.`,"info"),!1;if(N.length>0)return be(`/${Y.command} tasks do not accept attachments yet. Add file context in the task thread.`,"error"),!1;if(Y.command==="submit-issue")return Ic(M)?(_n(pe=>pe+1),jt([],null,Tc(Y.args),{clearPrompt:ye.preservePrompt?()=>{}:void 0,usageAttribution:ra(Y,he?"composer_selection":"prompt_parse")})):(be("Connect the GitHub app before using /submit-issue.","error"),!1);if(tm(Y)){const pe=Y.command==="skill"?Dh(Y.args,Q,c?.profile.sourcePath??null):wi(Y);return _n(ws=>ws+1),jt([],null,pe,{clearPrompt:ye.preservePrompt?()=>{}:void 0,usageAttribution:ra(Y,he?"composer_selection":"prompt_parse")})}return _n(pe=>pe+1),jt([],null,wi(Y),{clearPrompt:ye.preservePrompt?()=>{}:void 0,usageAttribution:ra(Y,he?"composer_selection":"prompt_parse")})}}return _n(Y=>Y+1),jt(N,B,ye.promptOverride,{clearPrompt:ye.preservePrompt?()=>{}:void 0,displayPrompt:ye.displayPrompt,turnMetadata:ye.turnMetadata})},[F,Q,q,c?.profile,M,b,s,jt,g,ot,nt,be,ne,a]),zt=o.useCallback(N=>{$e&&N!==$e.model.modelId&&tt(),ut(Q),xt(N)},[Q,tt,xt,ut,$e]),Ft=o.useCallback(N=>{$e&&N!==$e.model.providerId&&tt(),bt(N)},[bt,tt,$e]),{chatColumnStyle:Et,chatThreadPreparingInitialScroll:yn,chatThreadRef:rt,chatTimelineRows:Jo,composerStackRef:Yo,goToUserMessage:Ma,handleChatScroll:Zo,jumpToLatestChatMessage:el,showScrollToBottomButton:tl,userMessageNavigation:ar}=fm({browserConversationId:ve,chatSubmissionVersion:zr,chatHistoryHasMore:Sn,chatHistoryLoading:Ds,chatMessages:Qt,onLoadMoreChatHistory:Or,pendingApproval:ge,showChatThread:j,showThinkingIndicator:f,view:a}),Wn=o.useCallback((N,B)=>{$c({conversationId:ve,href:N,explicitFile:B?.explicitFile,newTab:B?.newTab}).then(he=>{he&&window.openpond?.browser&&kt()}).catch(he=>be(he instanceof Error?he.message:"Could not open browser.","error"))},[ve,kt,be]),Na=Hc({projectTargetDetail:xe.detail,projectTargetValue:xe.value,workspaceRepoPath:Ee?.repoPath,workspaceTargetValue:D.value}),{handleOpenFileInSidebar:Aa,fileResolution:Ia,dismissFileResolution:nl,selectFileResolution:sl}=_h({conversationKey:ve,connection:_,handleOpenBrowserLink:Wn,activeWorkspaceAppId:ae,rightSidebarUsesSandbox:Je,rightSidebarSandboxId:ht,onShowDiffPanel:wt,showToast:be,workspaceRootPath:Na,setOpenDiffFileRequest:hn}),Ta=o.useCallback(async N=>{if(!_||!N.filePreview&&!N.imagePreview){be("File content is not available for this attachment.","error");return}try{const B=N.name.trim().replace(/[\\/]+/g,"-")||"attachment.txt",ye=`Attachments/${N.id.replace(/[^a-zA-Z0-9._-]+/g,"-")||"file"}/${B}`,le={path:ye,status:"",additions:0,deletions:0,patch:"",content:null};let Ce,Y;if(N.filePreview){const Ye=await qe.chatAttachmentFile(_,N.filePreview);le.content=Ye.content,br(B)&&(Y=await Vc(_,B,Ye.content))}else N.imagePreview&&(Ce=(await qe.signChatAttachmentImageUrl(_,N.imagePreview)).url);Y?Wn(Y):wt(),hn({id:Date.now(),path:ye,source:!!Y,file:le,...Ce?{imageUrl:Ce}:{}})}catch(B){be(B instanceof Error?B.message:"Could not open this attachment.","error")}},[_,Wn,wt,be]),rl=de&&!!ae&&!Ee,$a=Me.selection?`candidate:${Me.selection.runId}:${Me.selection.candidateId}`:null,al=gs?n.jsx(sg,{appId:Ue?$a:Je?null:ae,workspaceId:Ue?$a:Je?ht:ae,workspaceKind:Ue?"local_project":Je?null:"local_project",connection:_,runtimeEvents:Tt,diff:Ue?Me.diff:Je?null:se,fileRootPath:Ue?Me.selection?.fileRootPath??null:Je?null:Hr,filesWithPreview:Ue,editorPreferences:c?.preferences.editor??null,loading:Ue?Me.loading:Je?de:K||rl,openFileRequest:Ue?Me.openFileRequest:$t,sidebarFileBookmarks:te,sidebarFileSourceSessionId:g,onSetSidebarFileStatus:Ae,readOnly:Ue,sideChatTabs:Le.map(N=>({id:N.id,title:N.title,running:N.running})),sourceSwitcher:Ue?null:nr,tabRequest:Ie,viewState:L,workspaceName:Ue?Me.selection?.title??"Change":Je?ie??"Sandbox":ie,workspaceInitialized:Ue?!0:Je?!!ht:!!Ee?.initialized,workspaceError:Ue?Me.error:Je?null:Ee?.error??se?.error??null,expanded:Z,onResizeStart:De,onRefresh:N=>{Ue?Me.refresh(N):Qe(N)},onToggleExpanded:Oe,onOpenBrowser:kt,onOpenBrowserUrl:Wn,onViewStateChange:we,onCloseSideChat:Ws,onOpenSideChat:a==="chat"?is:void 0,onSelectSideChat:N=>{Ct(N),qs()},goalDetails:{active:re==="goal",createRuntime:oe,goalRuntime:m,subagentRuntime:p},sandboxFileSource:Je?{sandboxId:ht,emptyMessage:"No sandbox filesystem yet."}:null,trainingSummary:Dn}):null,[Pa,ir]=o.useState(null);o.useEffect(()=>{ir(null)},[g]),o.useEffect(()=>{re!=="browser"&&ir(null)},[re]);const il=o.useCallback(N=>{ir(N),kt()},[kt]),ol=Ge&&Pa?n.jsx(sd,{visual:Pa,connection:_,expanded:Z,onResizeStart:De,onToggleExpanded:Oe,onClose:()=>{ir(null),Z&&Oe()}}):Ge?n.jsx(pg,{conversationId:ve,expanded:Z,onResizeStart:De}):null,ll=xs?o.createElement(jg,{...i,key:i.aiThread?.conversationId,onResizeStart:De}):null,cl=vs?o.createElement(wg,{...i,key:i.agentConversation?.run.id,onResizeStart:De}):null,ul=bs?n.jsx(gg,{panels:Le,runtimeEventStore:je,actionCatalog:fs,createImproveActions:ue,contextCompaction:_t.contextCompaction,steerActiveResponses:_t.steerActiveResponses,busy:O,codexPermissionMode:H,codexReasoningEffort:V,openPondCommandAccessMode:ce,connection:_,connectedAppMentions:M,mentionApps:R,codexPersonalSkills:c?.codexPersonalSkills??[],profileSkills:k,profileLibrary:c?.profileLibrary??{lastUsed:null,profiles:[]},extensionCatalog:c?.extensionCatalog??null,projectTarget:xe,providerSettings:c?.providers??null,accountBaseUrl:rr,billingOrganizationSlug:Vn.organizationSlug,billingTeamId:Vn.teamId,showToast:be,workspaceTarget:D,onAddChat:is,onActivatePanel:Ct,onClosePanel:Ws,onCodexPermissionModeChange:dt,onCodexReasoningEffortChange:vt,onOpenPondCommandAccessModeChange:We,onModelChange:lt,onOpenAttachmentInSidebar:Ta,onOpenFileInSidebar:Aa,onOpenProfileSettings:gt,onOpenSession:it,onOpenPonder:()=>t?.("clean"),onProviderChange:Gs,onProviderSetupOpen:an,onPromptChange:ze,onProfileTargetChange:(N,B)=>{xn(B,N)},onScrollStateChange:cn,onProjectTargetChange:Rn,onResolveApproval:Zn,onResizeStart:De,onSelectFiles:as,onShowBrowserPanel:kt,onStop:un,onSubmit:Lr,onWorkspaceTargetChange:N=>{En(N)}}):null,dl=Hn?n.jsx(ag,{expanded:Z,terminalOpen:I,sideChatAvailable:a==="chat"||a==="labs",onOpenBrowser:kt,onOpenFiles:as,onOpenReview:wt,onOpenSideChat:is,onOpenTrainingDraft:At,trainingDraftAvailable:!!g,onResizeStart:De,onToggleExpanded:Oe,onToggleTerminal:J}):null,fl=ys?n.jsx(ig,{chatMessages:Qt,connection:_,contextWindowStatus:v,expanded:Z,runtimeEvents:Tt,sessionId:g,showToast:be,onResizeStart:De,onToggleExpanded:Oe,onUseOutput:N=>dn({id:Date.now(),file:N}),onHandoffOutput:async(N,B,he)=>{await Vt({target:N,sourceSessionId:g,output:B,prompt:Pc(B,N)}),he&&dn({id:Date.now(),file:he})},onReviseOutput:(N,B,he)=>{dn({id:Date.now(),file:B}),b.set(`Create revision ${N.revision+1} of "${N.title}" from the attached revision ${N.revision}. Apply only this requested change:
64
+
65
+ ${he}`)},onAgentPackageInstalled:async()=>{_&&Nt(await qe.bootstrap(_))}}):null,hl=Un?n.jsx(o.Suspense,{fallback:null,children:n.jsx(kg,{training:ne,sessionId:g,expanded:Z,onOpenTraining:()=>nt("labs"),onResizeStart:De,onToggleExpanded:Oe})}):null,Gn=cl??ll??ul??(qn&&S?n.jsx(bg,{expanded:Z,skill:S,onClose:_e,onResizeStart:De,onToggleExpanded:Oe}):null)??(sr&&T?n.jsx($i,{connection:_,expanded:Z,selection:T,onClose:_e,onResizeStart:De,onToggleExpanded:Oe}):null)??(Bn&&Xt?n.jsx($i,{connection:_,expanded:Z,selection:Xt,onClose:Dr,onResizeStart:De,onToggleExpanded:Oe}):null)??al??ol??hl??fl??dl,Gr=n.jsx(o.Suspense,{fallback:null,children:n.jsx(rg,{open:I,connection:_,scope:Pe,tabs:Mt,onTabsChange:_r,cwd:et,appId:ae,workspaceName:ie,queuedCommand:y,onClose:Ks})});return n.jsx(io.Provider,{value:il,children:n.jsxs("main",{className:`main-pane ${Ne} ${I?"terminal-open":""} ${en?"diff-open":""} ${js?"diff-expanded":""}`,children:[Ia?n.jsx(Ih,{resolution:Ia,onClose:nl,onSelect:sl}):null,a==="team"||a==="community"?n.jsx(o.Suspense,{fallback:null,children:n.jsx(lg,{onSelect:nt,view:a})}):null,a==="chat"&&e&&_&&c?.account.activeProfile?n.jsx(tg,{connection:_,presentation:e,composer:{contextWindowStatus:v,providerSettings:c.providers??null,provider:Q,model:F,projectTarget:xe,workspaceTarget:D,codexPermissionMode:H,codexReasoningEffort:V,openPondCommandAccessMode:ce,onProviderChange:Ft,onProviderSetupOpen:an,onProjectTargetChange:Rn,onWorkspaceTargetChange:N=>{En(N)},onModelChange:zt,onCodexPermissionModeChange:dt,onCodexReasoningEffortChange:vt,onOpenPondCommandAccessModeChange:We,showToast:be},accountBaseUrl:ke,onOpenBrowserLink:Wn,onOpenLocalWork:it},gn):a==="apps"?n.jsx(o.Suspense,{fallback:null,children:n.jsx(cg,{payload:c,onPayload:Nt,account:c?.account??null,connection:_,defaultTeamId:c?.preferences.defaultTeamId??null,onToast:be})}):a==="team"?n.jsxs(o.Suspense,{fallback:null,children:[i.teamId?n.jsx(xg,{...i}):n.jsx(vg,{}),en?Gn:null]}):a==="community"?n.jsx(o.Suspense,{fallback:null,children:n.jsx(yg,{...l})}):a==="get-started"?n.jsx(o.Suspense,{fallback:null,children:n.jsx(ug,{})}):a==="scheduled"?n.jsx(o.Suspense,{fallback:null,children:n.jsx(fg,{connection:_,selectedProfileKey:pn?JSON.stringify(pn):null,onOpenSession:it,detailOpen:Vs,detailExpanded:Z,onDetailOpenChange:Pr,onDetailResizeStart:De,onToggleDetailExpanded:Oe},gn)}):a==="outputs"?n.jsx(o.Suspense,{fallback:null,children:n.jsx(hg,{connection:_,onViewChat:it})}):a==="projects"?n.jsx(o.Suspense,{fallback:null,children:n.jsx(mg,{accountBaseUrl:ke,connection:_,onNewCloudProject:Os,onNewLocalProject:kn,onNewTask:zs,onTogglePinned:Cn,onUploadLocalProject:Fs,projects:rn,taskCountByProjectId:Ls,teamName:Ve},gn)}):a==="labs"?js?n.jsx(o.Suspense,{fallback:null,children:Gn}):n.jsxs(n.Fragment,{children:[n.jsx(o.Suspense,{fallback:null,children:n.jsx(dg,{account:c?.account??null,closeDetailRequestId:x,closeDetailKind:E,onNewModel:(N,B,he)=>{me({id:Date.now(),objective:null,initialSessionIds:[],initialTasksetId:N,learnedPreferenceReward:B,initialModelId:he})},onUseAgent:Br,onCreateAgent:qr,onImproveAgent:ms,onDetailOpenChange:ln,onEvaluationSidebarControl:Pn,onSkillSelectionChange:Fn,onOpenRunConversation:Hs,onAnswerQuestion:yt,onApplyCandidate:Nn,onApprove:es,onCancel:ts,candidateReview:{diff:Me.diff,error:Me.error,loading:Me.loading},onCandidateReviewChange:Fr,onOpenPullRequest:An,onOpenCandidateFiles:hs,onPause:In,onReconcilePullRequest:ns,onRejectCandidate:on,onResume:Tn,onRevise:ss,profileView:{payload:c,connection:_,onPayload:Nt,onError:Kt,onToast:be,onSkillCommand:Ur},training:{training:ne,sessions:Te,localProjects:c?.localProjects??[],connection:_,defaultModel:{providerId:Q,modelId:F},onError:Kt,onToast:be,onSettingsPreferences:N=>{c&&Nt({...c,preferences:N.preferences})},onOpenTrainingSettings:Yn,onOpenProviderSettings:an,onOpenDatasetStorageSettings:Ke,onOpenChat:it,onChatWithModel:Mn,onOpenTasksetFiles:as,launchRequest:C??cs,onLaunchHandled:N=>{if(C?.id===N){A(N);return}me(B=>B?.id===N?null:B)},preferences:Lt,settingsPreferences:_t,providerSettings:c?.providers??null,reasoningEffort:V,selectedTasksetId:Zt,onSelectedTasksetIdChange:Qs,onSelectedTrainingJobIdChange:Xs,detailTasksetId:at,onDetailTasksetIdChange:Be}})}),Gr,en?n.jsx(o.Suspense,{fallback:null,children:Gn}):null]}):js?n.jsx(o.Suspense,{fallback:null,children:Gn}):j?n.jsxs(n.Fragment,{children:[n.jsxs("div",{className:`chat-column ${ge?"has-approval":""}`,style:Et,children:[n.jsx(o.Suspense,{fallback:null,children:n.jsx(Cg,{formalReviewTeamId:_t.defaultTeamId??null,formalReviewActorId:c?.account.profile?.id??null,formalReviewScopeKey:gn,onFormalReviewOpen:()=>nt("labs"),accountBaseUrl:rr,activeWorkspaceAppId:ae,billingOrganizationSlug:Vn.organizationSlug,billingTeamId:Vn.teamId,connection:_,conversationKey:ve??"draft",creation:ps,onOpenBrowserLink:Wn,onOpenAttachmentInSidebar:Ta,onOpenFileInSidebar:Aa,onOpenProfileSettings:gt,onResolveUserQuestion:async(N,B)=>{const he=B.action==="answer"?B.text:"Dismiss this question";if(!await jt([],null,he,{displayPrompt:he,turnMetadata:{userQuestionResolution:B}}))throw new Error("The question response could not be sent.")},onOpenSession:it,onOpenPonder:()=>t?.("clean"),onScroll:N=>Zo(N.currentTarget),rows:Jo,sessionId:ve,turnRunning:U,userAttachmentDisplay:Q==="codex"?"compact":"full",threadRef:rt,workspaceRootPath:Na})}),n.jsxs("div",{className:`composer-stack dock ${ge?"has-approval":""}`,ref:Yo,children:[ps?n.jsx(o.Suspense,{fallback:null,children:n.jsx(Sg,{compact:!0,creation:ps,training:ne,onOpenTraining:()=>nt("labs")})}):null,z,n.jsx(yi,{approval:ge,onResolve:Zn}),tl&&!yn?n.jsx(im,{canGoNext:ar.canGoNext,canGoPrevious:ar.canGoPrevious,onJumpToLatest:el,onNext:()=>{ar.canGoNext&&Ma("next")},onPrevious:()=>{ar.canGoPrevious&&Ma("previous")}}):null,n.jsx(vi,{experience:s,readOnlyReason:typeof mn?.metadata?.nativeReadOnlyReason=="string"?mn.metadata.nativeReadOnlyReason:null,draftStore:b,attachmentRequest:ls,mode:"dock",focusRequestId:w,mentionApps:Pt?R:[],connectedAppMentions:M,profileSkills:Q==="codex"?c?.codexPersonalSkills??[]:zn,selectedMentionAppId:$,contextWindowStatus:v,goalRuntime:s!=="chat"?m:null,subagentRuntime:s!=="chat"?p:null,createImproveRuntime:Pt?oe:null,busy:U,running:U,steerActiveResponses:_t.steerActiveResponses,taskSessionId:It,taskEvents:Tt,submissionScopeKey:P,getCurrentSubmissionScopeKey:fn,voiceInputChannelKey:`main-composer:${P}`,showProjectFooter:!1,connection:_,providerSettings:c?.providers??null,provider:Q,model:F,projectTarget:xe,profileTarget:null,actionCatalog:fs,requestedAction:ds,workspaceTarget:D,codexPermissionMode:H,codexReasoningEffort:V,openPondCommandAccessMode:ce,onProviderChange:Ft,onProviderSetupOpen:an,onProjectTargetChange:Rn,onProfileTargetChange:N=>{xn(N)},onWorkspaceTargetChange:N=>{En(N)},onModelChange:zt,onCodexPermissionModeChange:dt,onCodexReasoningEffortChange:vt,onOpenPondCommandAccessModeChange:We,onMentionAppSelect:ot,onSaveTaskDraft:Us,showToast:be,onSubmit:Rt,onStop:rs})]})]}),Gr,n.jsx(o.Suspense,{fallback:null,children:Gn})]}):n.jsxs(n.Fragment,{children:[n.jsxs("section",{className:"start-panel",children:[n.jsx(o.Suspense,{fallback:null,children:n.jsx(og,{value:s==="chat"?"chat":"work",onChange:N=>{if(N==="ponder"){t?.("clean");return}t?.(null),r(N)}})}),n.jsxs("div",{className:"start-welcome",children:[n.jsx("h1",{children:Gt}),Bs&&n.jsx(om,{busy:de,onSync:()=>{$n()}})]}),n.jsxs("div",{className:"composer-stack start",children:[z,n.jsx(yi,{approval:ge,onResolve:Zn}),n.jsx(vi,{experience:s,draftStore:b,attachmentRequest:ls,mode:"start",autoFocus:!0,focusRequestId:w,mentionApps:Pt?R:[],connectedAppMentions:M,profileSkills:Q==="codex"?c?.codexPersonalSkills??[]:zn,selectedMentionAppId:$,contextWindowStatus:v,goalRuntime:s!=="chat"?m:null,subagentRuntime:s!=="chat"?p:null,createImproveRuntime:Pt?oe:null,busy:U,running:U,steerActiveResponses:_t.steerActiveResponses,taskSessionId:It,taskEvents:Tt,submissionScopeKey:P,getCurrentSubmissionScopeKey:fn,voiceInputChannelKey:`main-composer:${P}`,connection:_,providerSettings:c?.providers??null,provider:Q,model:F,showProjectFooter:s!=="chat",projectTarget:xe,profileTarget:null,actionCatalog:fs,requestedAction:ds,workspaceTarget:D,codexPermissionMode:H,codexReasoningEffort:V,openPondCommandAccessMode:ce,onProviderChange:Ft,onProviderSetupOpen:an,onProjectTargetChange:Rn,onProfileTargetChange:N=>{xn(N)},onWorkspaceTargetChange:N=>{En(N)},onModelChange:zt,onCodexPermissionModeChange:dt,onCodexReasoningEffortChange:vt,onOpenPondCommandAccessModeChange:We,onMentionAppSelect:ot,onSaveTaskDraft:Us,showToast:be,onSubmit:Rt,onStop:rs})]})]}),Gr,n.jsx(o.Suspense,{fallback:null,children:Gn})]})]})})}function Eg(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 Dg=Object.freeze(Object.defineProperty({__proto__:null,MainPane:Rg,shouldShowRightSidebarHomePanel:zo},Symbol.toStringTag,{value:"Module"}));export{yi as A,iu as C,lu as F,Ar as I,ba as M,Ha as P,ju as R,Fg as T,If as a,oh as b,lh as c,vu as d,uu as e,fu as f,rd as g,Oh as h,Lh as i,dm as j,To as k,ih as l,mf as m,Jc as n,Dg as o,ch as r,Co as s,ld as u};