@bryanhu/codexly 0.16.0 → 0.18.0

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 (247) hide show
  1. package/CHANGELOG.md +27 -0
  2. package/README.md +2 -2
  3. package/README.zh-CN.md +1 -1
  4. package/dist/{chunk-I74DBIGI.js → chunk-2O7SN37L.js} +1 -1
  5. package/dist/{chunk-PJNYCTFC.js → chunk-3PU3WPOK.js} +234 -59
  6. package/dist/{chunk-P3ZQ3QOJ.js → chunk-M6GWGUSX.js} +105 -2
  7. package/dist/{chunk-HUKDTKO6.js → chunk-NROPHBJ7.js} +457 -89
  8. package/dist/cli.js +6 -5
  9. package/dist/client/index.js +136 -3
  10. package/dist/protocol/index.js +1 -1
  11. package/dist/providers/codex/index.js +2 -2
  12. package/dist/server/index.js +4 -4
  13. package/dist/web/.vite/manifest.json +299 -125
  14. package/dist/web/.vite/manifest.json.br +0 -0
  15. package/dist/web/.vite/manifest.json.gz +0 -0
  16. package/dist/web/assets/agent-settings-panel-BagNBAoe.js +1 -0
  17. package/dist/web/assets/agent-settings-panel-BagNBAoe.js.br +0 -0
  18. package/dist/web/assets/agent-settings-panel-BagNBAoe.js.gz +0 -0
  19. package/dist/web/assets/approval-mode-CKJY6q52.js +1 -0
  20. package/dist/web/assets/approval-mode-CKJY6q52.js.br +0 -0
  21. package/dist/web/assets/approval-mode-CKJY6q52.js.gz +0 -0
  22. package/dist/web/assets/background-image-picker-CjpS0dIk.js +1 -0
  23. package/dist/web/assets/background-image-picker-CjpS0dIk.js.br +0 -0
  24. package/dist/web/assets/background-image-picker-CjpS0dIk.js.gz +0 -0
  25. package/dist/web/assets/bing-wallpaper-queries-B-1L0OYP.js +1 -0
  26. package/dist/web/assets/bing-wallpaper-queries-B-1L0OYP.js.br +0 -0
  27. package/dist/web/assets/bing-wallpaper-queries-B-1L0OYP.js.gz +0 -0
  28. package/dist/web/assets/bot-nsMcDaYk.js +1 -0
  29. package/dist/web/assets/bot-nsMcDaYk.js.br +0 -0
  30. package/dist/web/assets/bot-nsMcDaYk.js.gz +0 -0
  31. package/dist/web/assets/{button-group-DxD1cvNd.js → button-group-DIxa2Erp.js} +1 -1
  32. package/dist/web/assets/button-group-DIxa2Erp.js.br +0 -0
  33. package/dist/web/assets/button-group-DIxa2Erp.js.gz +0 -0
  34. package/dist/web/assets/commit-settings-panel-Co1u5Lzc.js +1 -0
  35. package/dist/web/assets/commit-settings-panel-Co1u5Lzc.js.br +0 -0
  36. package/dist/web/assets/commit-settings-panel-Co1u5Lzc.js.gz +0 -0
  37. package/dist/web/assets/{context-menu-BxBZqph_.js → context-menu-HaQeWpEd.js} +1 -1
  38. package/dist/web/assets/context-menu-HaQeWpEd.js.br +0 -0
  39. package/dist/web/assets/context-menu-HaQeWpEd.js.gz +0 -0
  40. package/dist/web/assets/{dist-Czw-hil0.js → dist-ClwyqJQu.js} +1 -1
  41. package/dist/web/assets/dist-ClwyqJQu.js.br +0 -0
  42. package/dist/web/assets/dist-ClwyqJQu.js.gz +0 -0
  43. package/dist/web/assets/file-review-dialog-B-0RkLZR.js +2 -0
  44. package/dist/web/assets/file-review-dialog-B-0RkLZR.js.br +0 -0
  45. package/dist/web/assets/file-review-dialog-B-0RkLZR.js.gz +0 -0
  46. package/dist/web/assets/git-fork-D0BPqh18.js +1 -0
  47. package/dist/web/assets/git-fork-D0BPqh18.js.br +2 -0
  48. package/dist/web/assets/git-fork-D0BPqh18.js.gz +0 -0
  49. package/dist/web/assets/git-history-panel-QiNKxo_n.js +2 -0
  50. package/dist/web/assets/git-history-panel-QiNKxo_n.js.br +0 -0
  51. package/dist/web/assets/git-history-panel-QiNKxo_n.js.gz +0 -0
  52. package/dist/web/assets/global-settings-about-DWXfIOas.js +1 -0
  53. package/dist/web/assets/global-settings-about-DWXfIOas.js.br +0 -0
  54. package/dist/web/assets/global-settings-about-DWXfIOas.js.gz +0 -0
  55. package/dist/web/assets/global-settings-fields-CmEy5pOE.js +1 -0
  56. package/dist/web/assets/global-settings-fields-CmEy5pOE.js.br +0 -0
  57. package/dist/web/assets/global-settings-fields-CmEy5pOE.js.gz +0 -0
  58. package/dist/web/assets/global-settings-model-B49sZloO.js +1 -0
  59. package/dist/web/assets/global-settings-model-B49sZloO.js.br +0 -0
  60. package/dist/web/assets/global-settings-model-B49sZloO.js.gz +0 -0
  61. package/dist/web/assets/global-settings-page-BqzYrF2U.css +1 -0
  62. package/dist/web/assets/global-settings-page-BqzYrF2U.css.br +0 -0
  63. package/dist/web/assets/global-settings-page-BqzYrF2U.css.gz +0 -0
  64. package/dist/web/assets/global-settings-page-DKXRkWmd.js +2 -0
  65. package/dist/web/assets/global-settings-page-DKXRkWmd.js.br +0 -0
  66. package/dist/web/assets/global-settings-page-DKXRkWmd.js.gz +0 -0
  67. package/dist/web/assets/global-settings-pets-8bzx8OFf.css +1 -0
  68. package/dist/web/assets/global-settings-pets-8bzx8OFf.css.br +0 -0
  69. package/dist/web/assets/global-settings-pets-8bzx8OFf.css.gz +0 -0
  70. package/dist/web/assets/global-settings-pets-DP2AxhJW.js +1 -0
  71. package/dist/web/assets/global-settings-pets-DP2AxhJW.js.br +0 -0
  72. package/dist/web/assets/global-settings-pets-DP2AxhJW.js.gz +0 -0
  73. package/dist/web/assets/index-BGtID8VJ.css +2 -0
  74. package/dist/web/assets/index-BGtID8VJ.css.br +0 -0
  75. package/dist/web/assets/index-BGtID8VJ.css.gz +0 -0
  76. package/dist/web/assets/index-mkWzMsjN.js +4 -0
  77. package/dist/web/assets/index-mkWzMsjN.js.br +0 -0
  78. package/dist/web/assets/index-mkWzMsjN.js.gz +0 -0
  79. package/dist/web/assets/initial-deps-CDAJF_GU.js +1 -0
  80. package/dist/web/assets/initial-deps-CDAJF_GU.js.br +0 -0
  81. package/dist/web/assets/initial-deps-CDAJF_GU.js.gz +0 -0
  82. package/dist/web/assets/{initial-deps-CQxWMuPh.js → initial-deps-DeVnmDFC.js} +1 -1
  83. package/dist/web/assets/initial-deps-DeVnmDFC.js.br +0 -0
  84. package/dist/web/assets/initial-deps-DeVnmDFC.js.gz +0 -0
  85. package/dist/web/assets/{installed-skills-pane-yQ22YClZ.js → installed-skills-pane-CR2LbYh9.js} +1 -1
  86. package/dist/web/assets/installed-skills-pane-CR2LbYh9.js.br +0 -0
  87. package/dist/web/assets/installed-skills-pane-CR2LbYh9.js.gz +0 -0
  88. package/dist/web/assets/lazy-message-response-3Fr_a8du.js +2 -0
  89. package/dist/web/assets/lazy-message-response-3Fr_a8du.js.br +0 -0
  90. package/dist/web/assets/lazy-message-response-3Fr_a8du.js.gz +0 -0
  91. package/dist/web/assets/{mcp-management-pane-fBs42kaN.js → mcp-management-pane-DEuUn7Y6.js} +1 -1
  92. package/dist/web/assets/mcp-management-pane-DEuUn7Y6.js.br +0 -0
  93. package/dist/web/assets/mcp-management-pane-DEuUn7Y6.js.gz +0 -0
  94. package/dist/web/assets/{message-response-BSFnyRiN.js → message-response-D3YFwFiE.js} +1 -1
  95. package/dist/web/assets/message-response-D3YFwFiE.js.br +0 -0
  96. package/dist/web/assets/message-response-D3YFwFiE.js.gz +0 -0
  97. package/dist/web/assets/{official-plugins-pane-DL3I574g.js → official-plugins-pane-k8o9gVMR.js} +1 -1
  98. package/dist/web/assets/official-plugins-pane-k8o9gVMR.js.br +0 -0
  99. package/dist/web/assets/official-plugins-pane-k8o9gVMR.js.gz +0 -0
  100. package/dist/web/assets/paw-print-9SfXKttW.js +1 -0
  101. package/dist/web/assets/paw-print-9SfXKttW.js.br +0 -0
  102. package/dist/web/assets/paw-print-9SfXKttW.js.gz +0 -0
  103. package/dist/web/assets/personalization-settings-panel-Cl4_Y5Uk.js +1 -0
  104. package/dist/web/assets/personalization-settings-panel-Cl4_Y5Uk.js.br +0 -0
  105. package/dist/web/assets/personalization-settings-panel-Cl4_Y5Uk.js.gz +0 -0
  106. package/dist/web/assets/{project-file-popup-page-D7w0o_EU.js → project-file-popup-page-0uRpUcFH.js} +1 -1
  107. package/dist/web/assets/project-file-popup-page-0uRpUcFH.js.br +0 -0
  108. package/dist/web/assets/project-file-popup-page-0uRpUcFH.js.gz +0 -0
  109. package/dist/web/assets/{project-source-panel-m_xiBT3O.js → project-source-panel-CEegjNVo.js} +2 -2
  110. package/dist/web/assets/project-source-panel-CEegjNVo.js.br +0 -0
  111. package/dist/web/assets/project-source-panel-CEegjNVo.js.gz +0 -0
  112. package/dist/web/assets/prompt-input-Bs_e51Ey.js +1 -0
  113. package/dist/web/assets/prompt-input-Bs_e51Ey.js.br +0 -0
  114. package/dist/web/assets/prompt-input-Bs_e51Ey.js.gz +0 -0
  115. package/dist/web/assets/{prompt-input-controls-BZ7R1d1q.js → prompt-input-controls-DMqyvYVY.js} +1 -1
  116. package/dist/web/assets/prompt-input-controls-DMqyvYVY.js.br +0 -0
  117. package/dist/web/assets/prompt-input-controls-DMqyvYVY.js.gz +0 -0
  118. package/dist/web/assets/scheduled-task-date-time-picker-CHc9a7G1.js +1 -0
  119. package/dist/web/assets/scheduled-task-date-time-picker-CHc9a7G1.js.br +0 -0
  120. package/dist/web/assets/scheduled-task-date-time-picker-CHc9a7G1.js.gz +0 -0
  121. package/dist/web/assets/{scheduled-task-floating-ui~scheduled-task-date-time-picker-BischM2-.js → scheduled-task-floating-ui~scheduled-task-date-time-picker-Bz9LiWta.js} +1 -1
  122. package/dist/web/assets/scheduled-task-floating-ui~scheduled-task-date-time-picker-Bz9LiWta.js.br +0 -0
  123. package/dist/web/assets/scheduled-task-floating-ui~scheduled-task-date-time-picker-Bz9LiWta.js.gz +0 -0
  124. package/dist/web/assets/scheduled-task-schedule-2Ugh5sqp.js +1 -0
  125. package/dist/web/assets/scheduled-task-schedule-2Ugh5sqp.js.br +0 -0
  126. package/dist/web/assets/scheduled-task-schedule-2Ugh5sqp.js.gz +0 -0
  127. package/dist/web/assets/scheduled-tasks-container-CVGTy7-W.css +1 -0
  128. package/dist/web/assets/scheduled-tasks-container-CVGTy7-W.css.br +0 -0
  129. package/dist/web/assets/scheduled-tasks-container-CVGTy7-W.css.gz +0 -0
  130. package/dist/web/assets/scheduled-tasks-container-Ddieo85Q.js +2 -0
  131. package/dist/web/assets/scheduled-tasks-container-Ddieo85Q.js.br +0 -0
  132. package/dist/web/assets/scheduled-tasks-container-Ddieo85Q.js.gz +0 -0
  133. package/dist/web/assets/settings-personalization-b55VcvKr.js +1 -0
  134. package/dist/web/assets/settings-personalization-b55VcvKr.js.br +0 -0
  135. package/dist/web/assets/settings-personalization-b55VcvKr.js.gz +0 -0
  136. package/dist/web/assets/{sheet-BD5Iohov.js → sheet-DbEBBgCs.js} +1 -1
  137. package/dist/web/assets/sheet-DbEBBgCs.js.br +0 -0
  138. package/dist/web/assets/sheet-DbEBBgCs.js.gz +0 -0
  139. package/dist/web/assets/{skills-market-container-E47PiSfc.js → skills-market-container-BwT-U8XF.js} +2 -2
  140. package/dist/web/assets/skills-market-container-BwT-U8XF.js.br +0 -0
  141. package/dist/web/assets/skills-market-container-BwT-U8XF.js.gz +0 -0
  142. package/dist/web/assets/sliders-horizontal-DfoeSLtp.js +1 -0
  143. package/dist/web/assets/sliders-horizontal-DfoeSLtp.js.br +0 -0
  144. package/dist/web/assets/sliders-horizontal-DfoeSLtp.js.gz +0 -0
  145. package/dist/web/assets/{third-party-marketplace-pane-BYKLDRVH.js → third-party-marketplace-pane-Cva9dfRn.js} +1 -1
  146. package/dist/web/assets/third-party-marketplace-pane-Cva9dfRn.js.br +0 -0
  147. package/dist/web/assets/third-party-marketplace-pane-Cva9dfRn.js.gz +0 -0
  148. package/dist/web/assets/workbench-composer-BxYlmKUq.js +10 -0
  149. package/dist/web/assets/workbench-composer-BxYlmKUq.js.br +0 -0
  150. package/dist/web/assets/workbench-composer-BxYlmKUq.js.gz +0 -0
  151. package/dist/web/assets/workbench-inspector-changes-DFZ_PDdt.js +2 -0
  152. package/dist/web/assets/workbench-inspector-changes-DFZ_PDdt.js.br +0 -0
  153. package/dist/web/assets/workbench-inspector-changes-DFZ_PDdt.js.gz +0 -0
  154. package/dist/web/assets/workbench-pet-canvas-DwkSGxpw.js +1 -0
  155. package/dist/web/assets/workbench-pet-canvas-DwkSGxpw.js.br +0 -0
  156. package/dist/web/assets/workbench-pet-canvas-DwkSGxpw.js.gz +0 -0
  157. package/dist/web/assets/workbench-shell-CnjG23lI.js +8 -0
  158. package/dist/web/assets/workbench-shell-CnjG23lI.js.br +0 -0
  159. package/dist/web/assets/workbench-shell-CnjG23lI.js.gz +0 -0
  160. package/dist/web/index.html +5 -5
  161. package/dist/web/index.html.br +0 -0
  162. package/dist/web/index.html.gz +0 -0
  163. package/package.json +2 -2
  164. package/dist/web/assets/button-group-DxD1cvNd.js.br +0 -0
  165. package/dist/web/assets/button-group-DxD1cvNd.js.gz +0 -0
  166. package/dist/web/assets/context-menu-BxBZqph_.js.br +0 -0
  167. package/dist/web/assets/context-menu-BxBZqph_.js.gz +0 -0
  168. package/dist/web/assets/dist-Czw-hil0.js.br +0 -0
  169. package/dist/web/assets/dist-Czw-hil0.js.gz +0 -0
  170. package/dist/web/assets/file-review-dialog-4yb5qYp1.js +0 -2
  171. package/dist/web/assets/file-review-dialog-4yb5qYp1.js.br +0 -0
  172. package/dist/web/assets/file-review-dialog-4yb5qYp1.js.gz +0 -0
  173. package/dist/web/assets/git-commit-horizontal-CV-KjCHw.js +0 -1
  174. package/dist/web/assets/git-commit-horizontal-CV-KjCHw.js.br +0 -0
  175. package/dist/web/assets/git-commit-horizontal-CV-KjCHw.js.gz +0 -0
  176. package/dist/web/assets/git-history-panel-CLWc1FLl.js +0 -2
  177. package/dist/web/assets/git-history-panel-CLWc1FLl.js.br +0 -0
  178. package/dist/web/assets/git-history-panel-CLWc1FLl.js.gz +0 -0
  179. package/dist/web/assets/global-settings-dialog-CzBgDgzH.js +0 -1
  180. package/dist/web/assets/global-settings-dialog-CzBgDgzH.js.br +0 -0
  181. package/dist/web/assets/global-settings-dialog-CzBgDgzH.js.gz +0 -0
  182. package/dist/web/assets/index-CROvcy96.css +0 -2
  183. package/dist/web/assets/index-CROvcy96.css.br +0 -0
  184. package/dist/web/assets/index-CROvcy96.css.gz +0 -0
  185. package/dist/web/assets/index-DuOx_QDa.js +0 -4
  186. package/dist/web/assets/index-DuOx_QDa.js.br +0 -0
  187. package/dist/web/assets/index-DuOx_QDa.js.gz +0 -0
  188. package/dist/web/assets/initial-deps-CQxWMuPh.js.br +0 -0
  189. package/dist/web/assets/initial-deps-CQxWMuPh.js.gz +0 -0
  190. package/dist/web/assets/initial-deps-Dr1AWuHB.js +0 -1
  191. package/dist/web/assets/initial-deps-Dr1AWuHB.js.br +0 -0
  192. package/dist/web/assets/initial-deps-Dr1AWuHB.js.gz +0 -0
  193. package/dist/web/assets/installed-skills-pane-yQ22YClZ.js.br +0 -0
  194. package/dist/web/assets/installed-skills-pane-yQ22YClZ.js.gz +0 -0
  195. package/dist/web/assets/lazy-message-response-DxkPeKeK.js +0 -2
  196. package/dist/web/assets/lazy-message-response-DxkPeKeK.js.br +0 -0
  197. package/dist/web/assets/lazy-message-response-DxkPeKeK.js.gz +0 -0
  198. package/dist/web/assets/mcp-management-pane-fBs42kaN.js.br +0 -0
  199. package/dist/web/assets/mcp-management-pane-fBs42kaN.js.gz +0 -0
  200. package/dist/web/assets/message-response-BSFnyRiN.js.br +0 -0
  201. package/dist/web/assets/message-response-BSFnyRiN.js.gz +0 -0
  202. package/dist/web/assets/official-plugins-pane-DL3I574g.js.br +0 -0
  203. package/dist/web/assets/official-plugins-pane-DL3I574g.js.gz +0 -0
  204. package/dist/web/assets/project-file-popup-page-D7w0o_EU.js.br +0 -0
  205. package/dist/web/assets/project-file-popup-page-D7w0o_EU.js.gz +0 -0
  206. package/dist/web/assets/project-source-panel-m_xiBT3O.js.br +0 -0
  207. package/dist/web/assets/project-source-panel-m_xiBT3O.js.gz +0 -0
  208. package/dist/web/assets/prompt-input-BHBgVKPB.js +0 -1
  209. package/dist/web/assets/prompt-input-BHBgVKPB.js.br +0 -0
  210. package/dist/web/assets/prompt-input-BHBgVKPB.js.gz +0 -0
  211. package/dist/web/assets/prompt-input-controls-BZ7R1d1q.js.br +0 -0
  212. package/dist/web/assets/prompt-input-controls-BZ7R1d1q.js.gz +0 -0
  213. package/dist/web/assets/scheduled-task-date-time-picker-CLz7pymx.js +0 -1
  214. package/dist/web/assets/scheduled-task-date-time-picker-CLz7pymx.js.br +0 -0
  215. package/dist/web/assets/scheduled-task-date-time-picker-CLz7pymx.js.gz +0 -0
  216. package/dist/web/assets/scheduled-task-floating-ui~scheduled-task-date-time-picker-BischM2-.js.br +0 -0
  217. package/dist/web/assets/scheduled-task-floating-ui~scheduled-task-date-time-picker-BischM2-.js.gz +0 -0
  218. package/dist/web/assets/scheduled-task-schedule-Cfuv_Kyf.js +0 -1
  219. package/dist/web/assets/scheduled-task-schedule-Cfuv_Kyf.js.br +0 -0
  220. package/dist/web/assets/scheduled-task-schedule-Cfuv_Kyf.js.gz +0 -0
  221. package/dist/web/assets/scheduled-tasks-container-DGrcqBWt.js +0 -2
  222. package/dist/web/assets/scheduled-tasks-container-DGrcqBWt.js.br +0 -0
  223. package/dist/web/assets/scheduled-tasks-container-DGrcqBWt.js.gz +0 -0
  224. package/dist/web/assets/scheduled-tasks-container-xtJWjMjU.css +0 -1
  225. package/dist/web/assets/scheduled-tasks-container-xtJWjMjU.css.br +0 -0
  226. package/dist/web/assets/scheduled-tasks-container-xtJWjMjU.css.gz +0 -0
  227. package/dist/web/assets/sheet-BD5Iohov.js.br +0 -0
  228. package/dist/web/assets/sheet-BD5Iohov.js.gz +0 -0
  229. package/dist/web/assets/skills-market-container-E47PiSfc.js.br +0 -0
  230. package/dist/web/assets/skills-market-container-E47PiSfc.js.gz +0 -0
  231. package/dist/web/assets/third-party-marketplace-pane-BYKLDRVH.js.br +0 -0
  232. package/dist/web/assets/third-party-marketplace-pane-BYKLDRVH.js.gz +0 -0
  233. package/dist/web/assets/workbench-composer-DWYJJS3y.js +0 -10
  234. package/dist/web/assets/workbench-composer-DWYJJS3y.js.br +0 -0
  235. package/dist/web/assets/workbench-composer-DWYJJS3y.js.gz +0 -0
  236. package/dist/web/assets/workbench-inspector-changes-DS6N-4Ob.js +0 -2
  237. package/dist/web/assets/workbench-inspector-changes-DS6N-4Ob.js.br +0 -0
  238. package/dist/web/assets/workbench-inspector-changes-DS6N-4Ob.js.gz +0 -0
  239. package/dist/web/assets/workbench-pet-canvas-DdVnx74p.js +0 -1
  240. package/dist/web/assets/workbench-pet-canvas-DdVnx74p.js.br +0 -0
  241. package/dist/web/assets/workbench-pet-canvas-DdVnx74p.js.gz +0 -0
  242. package/dist/web/assets/workbench-shell-DXDRW3gW.js +0 -8
  243. package/dist/web/assets/workbench-shell-DXDRW3gW.js.br +0 -0
  244. package/dist/web/assets/workbench-shell-DXDRW3gW.js.gz +0 -0
  245. /package/dist/web/assets/{scheduled-task-floating-ui~index~workbench-shell~workbench-inspector-changes~project-file-p~olri0nvu-DAfditVv.js → scheduled-task-floating-ui~index~workbench-shell~workbench-inspector-changes~project-file-p~egzauog4-DAfditVv.js} +0 -0
  246. /package/dist/web/assets/{scheduled-task-floating-ui~index~workbench-shell~workbench-inspector-changes~project-file-p~olri0nvu-DAfditVv.js.br → scheduled-task-floating-ui~index~workbench-shell~workbench-inspector-changes~project-file-p~egzauog4-DAfditVv.js.br} +0 -0
  247. /package/dist/web/assets/{scheduled-task-floating-ui~index~workbench-shell~workbench-inspector-changes~project-file-p~olri0nvu-DAfditVv.js.gz → scheduled-task-floating-ui~index~workbench-shell~workbench-inspector-changes~project-file-p~egzauog4-DAfditVv.js.gz} +0 -0
@@ -0,0 +1,8 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/patch-diff-viewer-CwDRm5oN.js","assets/rolldown-runtime-CNC7AqOf.js","assets/initial-deps-Bx4af_YG.js","assets/react-runtime-DaCTDC27.js","assets/engine-compile-DcaAFSGO.js","assets/lib-DE0ZEvGM.js","assets/code-languages-DVcuYjhn.js","assets/shiki-bundle-DdeD2OLK.js","assets/file-change-D7aZLgtG.js","assets/git-history-panel-QiNKxo_n.js","assets/initial-deps-CTprc_pY.js","assets/initial-deps-CNK9MBOP.js","assets/initial-deps-Cq4pSOi-.js","assets/initial-deps-BsEyuMB0.js","assets/initial-deps-DqJTHr9A.js","assets/file-code-corner-CYF-BidF.js","assets/file-review-dialog-B-0RkLZR.js","assets/file-navigation-view-preference-BRWa_l_a.js","assets/index-mkWzMsjN.js","assets/initial-deps-CDAJF_GU.js","assets/initial-deps-DeVnmDFC.js","assets/scheduled-task-floating-ui~index~workbench-shell~workbench-inspector-changes~project-file-p~egzauog4-DAfditVv.js","assets/index-BGtID8VJ.css","assets/context-menu-HaQeWpEd.js","assets/workbench-inspector-changes-DFZ_PDdt.js","assets/file-pen-line-B05lVjWh.js","assets/prompt-input-controls-DMqyvYVY.js","assets/sparkles-BLY9rqMO.js","assets/upload-D_8Uk8f-.js","assets/button-group-DIxa2Erp.js","assets/skills-market-container-BwT-U8XF.js","assets/skills-market-container-C8okZy75.css","assets/scheduled-tasks-container-Ddieo85Q.js","assets/scheduled-task-schedule-2Ugh5sqp.js","assets/workbench-composer-BxYlmKUq.js","assets/git-fork-D0BPqh18.js","assets/approval-mode-CKJY6q52.js","assets/prompt-input-Bs_e51Ey.js","assets/prompt-reference-token-Cxx6C-IR.js","assets/external-link-xbPJFZkP.js","assets/sliders-horizontal-DfoeSLtp.js","assets/scheduled-tasks-container-CVGTy7-W.css"])))=>i.map(i=>d[i]);
2
+ import{a as e,t}from"./rolldown-runtime-CNC7AqOf.js";import{t as n}from"./initial-deps-Bx4af_YG.js";import{i as r,r as i,t as a}from"./react-runtime-DaCTDC27.js";import{b as o,l as s,o as c,r as l}from"./initial-deps-CTprc_pY.js";import{l as u,s as d}from"./initial-deps-BsEyuMB0.js";import{a as f,s as p}from"./initial-deps-CDAJF_GU.js";import{A as m,E as h,I as g,L as _,O as v,P as y,Q as b,U as x,V as S,W as C,_ as w,at as T,b as E,g as D,j as O,nt as k,s as A,u as j,v as M,y as ee,z as N}from"./initial-deps-DqJTHr9A.js";import{_ as P,a as te,c as ne,f as F,g as I,h as L,i as re,m as R,n as z,o as ie,p as ae,r as B,s as oe,t as se,u as V,v as ce}from"./workbench-composer-BxYlmKUq.js";import{t as le}from"./bot-nsMcDaYk.js";import{a as ue,c as H,i as de,n as fe,o as pe,r as me,s as he,t as ge}from"./project-source-panel-CEegjNVo.js";import{n as U,t as _e}from"./file-code-corner-CYF-BidF.js";import{t as ve}from"./external-link-xbPJFZkP.js";import{t as W}from"./file-pen-line-B05lVjWh.js";import{v as ye,y as be}from"./prompt-input-controls-DMqyvYVY.js";import{a as xe,i as Se,r as Ce,t as we}from"./file-review-dialog-B-0RkLZR.js";import{t as Te}from"./git-fork-D0BPqh18.js";import{t as Ee}from"./info-whxTXvIJ.js";import{t as De}from"./sparkles-BLY9rqMO.js";import{a as Oe,c as ke,i as Ae,n as je,o as Me,r as G,s as Ne,t as Pe}from"./context-menu-HaQeWpEd.js";import{$ as Fe,$t as Ie,At as Le,B as K,Bt as Re,C as ze,Ct as Be,Dt as Ve,E as He,F as Ue,Ft as We,Gt as Ge,H as q,I as Ke,It as qe,J as Je,K as Ye,Kt as Xe,Lt as Ze,M as Qe,Mt as $e,N as et,Nt as tt,O as nt,Ot as rt,P as it,Pt as at,Q as ot,Qt as st,R as ct,Rt as lt,St as ut,T as dt,U as ft,V as J,Vt as pt,W as mt,Wt as ht,X as gt,Y as _t,Yt as vt,Z as yt,_t as bt,a as xt,at as St,bt as Ct,cn as wt,d as Tt,dn as Et,dt as Dt,en as Ot,et as kt,f as At,fn as jt,gt as Y,h as Mt,hn as Nt,ht as X,in as Pt,jt as Ft,kt as It,m as Lt,mn as Rt,mt as zt,nn as Bt,nt as Vt,on as Ht,pn as Ut,q as Wt,rn as Gt,rt as Kt,tn as qt,tt as Jt,ut as Yt,vt as Xt,w as Zt,xt as Qt,zt as $t}from"./index-mkWzMsjN.js";import{t as en}from"./code-languages-DVcuYjhn.js";import{i as tn,n as nn,t as rn}from"./file-change-D7aZLgtG.js";import{r as an,t as on}from"./workbench-pet-canvas-DwkSGxpw.js";import{t as sn}from"./lazy-message-response-3Fr_a8du.js";import{t as cn}from"./button-group-DIxa2Erp.js";var ln=b(`activity`,[[`path`,{d:`M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2`,key:`169zse`}]]),un=b(`at-sign`,[[`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`}]]),dn=b(`braces`,[[`path`,{d:`M8 3H7a2 2 0 0 0-2 2v5a2 2 0 0 1-2 2 2 2 0 0 1 2 2v5c0 1.1.9 2 2 2h1`,key:`ezmyqa`}],[`path`,{d:`M16 21h1a2 2 0 0 0 2-2v-5c0-1.1.9-2 2-2a2 2 0 0 1-2-2V5a2 2 0 0 0-2-2h-1`,key:`e1hn23`}]]),fn=b(`brain-circuit`,[[`path`,{d:`M12 5a3 3 0 1 0-5.997.125 4 4 0 0 0-2.526 5.77 4 4 0 0 0 .556 6.588A4 4 0 1 0 12 18Z`,key:`l5xja`}],[`path`,{d:`M9 13a4.5 4.5 0 0 0 3-4`,key:`10igwf`}],[`path`,{d:`M6.003 5.125A3 3 0 0 0 6.401 6.5`,key:`105sqy`}],[`path`,{d:`M3.477 10.896a4 4 0 0 1 .585-.396`,key:`ql3yin`}],[`path`,{d:`M6 18a4 4 0 0 1-1.967-.516`,key:`2e4loj`}],[`path`,{d:`M12 13h4`,key:`1ku699`}],[`path`,{d:`M12 18h6a2 2 0 0 1 2 2v1`,key:`105ag5`}],[`path`,{d:`M12 8h8`,key:`1lhi5i`}],[`path`,{d:`M16 8V5a2 2 0 0 1 2-2`,key:`u6izg6`}],[`circle`,{cx:`16`,cy:`13`,r:`.5`,key:`ry7gng`}],[`circle`,{cx:`18`,cy:`3`,r:`.5`,key:`1aiba7`}],[`circle`,{cx:`20`,cy:`21`,r:`.5`,key:`yhc1fs`}],[`circle`,{cx:`20`,cy:`8`,r:`.5`,key:`1e43v0`}]]),pn=b(`circle-check-big`,[[`path`,{d:`M21.801 10A10 10 0 1 1 17 3.335`,key:`yps3ct`}],[`path`,{d:`m9 11 3 3L22 4`,key:`1pflzl`}]]),mn=b(`circle-dashed`,[[`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`}]]),hn=b(`circle-off`,[[`path`,{d:`m2 2 20 20`,key:`1ooewy`}],[`path`,{d:`M8.35 2.69A10 10 0 0 1 21.3 15.65`,key:`1pfsoa`}],[`path`,{d:`M19.08 19.08A10 10 0 1 1 4.92 4.92`,key:`1ablyi`}]]),gn=b(`circle-x`,[[`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`}]]),_n=b(`clock`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 6v6l4 2`,key:`mmk7yg`}]]),vn=b(`folder-closed`,[[`path`,{d:`M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z`,key:`1kt360`}],[`path`,{d:`M2 10h20`,key:`1ir3d8`}]]),yn=b(`folder-tree`,[[`path`,{d:`M20 10a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1h-2.5a1 1 0 0 1-.8-.4l-.9-1.2A1 1 0 0 0 15 3h-2a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1Z`,key:`hod4my`}],[`path`,{d:`M20 21a1 1 0 0 0 1-1v-3a1 1 0 0 0-1-1h-2.9a1 1 0 0 1-.88-.55l-.42-.85a1 1 0 0 0-.92-.6H13a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1Z`,key:`w4yl2u`}],[`path`,{d:`M3 5a2 2 0 0 0 2 2h3`,key:`f2jnh7`}],[`path`,{d:`M3 3v13a2 2 0 0 0 2 2h3`,key:`k8epm1`}]]),bn=b(`git-compare-arrows`,[[`circle`,{cx:`5`,cy:`6`,r:`3`,key:`1qnov2`}],[`path`,{d:`M12 6h5a2 2 0 0 1 2 2v7`,key:`1yj91y`}],[`path`,{d:`m15 9-3-3 3-3`,key:`1lwv8l`}],[`circle`,{cx:`19`,cy:`18`,r:`3`,key:`1qljk2`}],[`path`,{d:`M12 18H7a2 2 0 0 1-2-2V9`,key:`16sdep`}],[`path`,{d:`m9 15 3 3-3 3`,key:`1m3kbl`}]]),xn=b(`list-checks`,[[`path`,{d:`M13 5h8`,key:`a7qcls`}],[`path`,{d:`M13 12h8`,key:`h98zly`}],[`path`,{d:`M13 19h8`,key:`c3s6r1`}],[`path`,{d:`m3 17 2 2 4-4`,key:`1jhpwq`}],[`path`,{d:`m3 7 2 2 4-4`,key:`1obspn`}]]),Sn=b(`list-filter`,[[`path`,{d:`M2 5h20`,key:`1fs1ex`}],[`path`,{d:`M6 12h12`,key:`8npq4p`}],[`path`,{d:`M9 19h6`,key:`456am0`}]]),Cn=b(`list-todo`,[[`path`,{d:`M13 5h8`,key:`a7qcls`}],[`path`,{d:`M13 12h8`,key:`h98zly`}],[`path`,{d:`M13 19h8`,key:`c3s6r1`}],[`path`,{d:`m3 17 2 2 4-4`,key:`1jhpwq`}],[`rect`,{x:`3`,y:`4`,width:`6`,height:`6`,rx:`1`,key:`cif1o7`}]]),wn=b(`message-square-code`,[[`path`,{d:`M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z`,key:`18887p`}],[`path`,{d:`m10 8-3 3 3 3`,key:`fp6dz7`}],[`path`,{d:`m14 14 3-3-3-3`,key:`1yrceu`}]]),Tn=b(`panel-left`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M9 3v18`,key:`fh3hqa`}]]),En=b(`panel-right`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M15 3v18`,key:`14nvp0`}]]),Dn=b(`plug`,[[`path`,{d:`M12 22v-5`,key:`1ega77`}],[`path`,{d:`M15 8V2`,key:`18g5xt`}],[`path`,{d:`M17 8a1 1 0 0 1 1 1v4a4 4 0 0 1-4 4h-4a4 4 0 0 1-4-4V9a1 1 0 0 1 1-1z`,key:`1xoxul`}],[`path`,{d:`M9 8V2`,key:`14iosj`}]]),On=b(`shield-question-mark`,[[`path`,{d:`M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z`,key:`oel41y`}],[`path`,{d:`M9.1 9a3 3 0 0 1 5.82 1c0 2-3 3-3 3`,key:`mhlwft`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]]),kn=b(`square-terminal`,[[`path`,{d:`m7 11 2-2-2-2`,key:`1lz0vl`}],[`path`,{d:`M11 13h4`,key:`1p7l4v`}],[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,ry:`2`,key:`1m3agn`}]]),An=b(`terminal`,[[`path`,{d:`M12 19h8`,key:`baeox8`}],[`path`,{d:`m4 17 6-6-6-6`,key:`1yngyt`}]]),jn=b(`triangle-alert`,[[`path`,{d:`m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3`,key:`wmoenq`}],[`path`,{d:`M12 9v4`,key:`juzpu7`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]]),Mn=b(`wrench`,[[`path`,{d:`M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z`,key:`1ngwbx`}]]),Z=e(r(),1);async function Nn(e,t,n,r,i,a){if(i===void 0||a.diff!==``)return a;let o=i.unstaged.includes(a)?`unstaged`:`staged`;return(await e.fetchQuery(vt(n,r,null,i.snapshot,!0,t)))[o].find(e=>e.path===a.path&&e.kind===a.kind)??a}var Pn=1500;function Fn(e,t){return e||t>0?Pn:!1}function In(e,t,n,r){return e&&r!==void 0&&t!==n}function Ln(e,t,n,r,i=!0){let a=(0,Z.useRef)(r),o=(0,Z.useRef)(new Map),s=(0,Z.useRef)(Le()),d=c({enabled:i&&n!==void 0,queryFn:({signal:r})=>{if(n===void 0)throw Error(`Background terminal query requires a task`);return e.listBackgroundTerminals(t,n,{signal:r})},queryKey:[`projects`,t,`tasks`,n,`background-terminals`],refetchInterval(e){return Fn(r,e.state.data?.data.length??0)}}),f=l({mutationFn:async r=>{if(n===void 0)return;let i=o.current.get(r)??u();o.current.set(r,i),await e.terminateBackgroundTerminal(t,n,r,{idempotencyKey:i})}}),p=d.refetch,m=f.mutateAsync;(0,Z.useEffect)(()=>{let e=In(i,a.current,r,n);a.current=r,e&&p()},[i,r,p,n]);let h=(0,Z.useCallback)(e=>s.current.run(async()=>{try{await m(e),o.current.delete(e),await p()}catch{}}),[p,m]);return{error:d.error,isPending:d.isPending,terminals:d.data?.data??[],terminatingTerminalId:f.isPending&&typeof f.variables==`string`?f.variables:null,terminateTerminal:h}}var Q=a();function Rn({disabled:e,onDelete:t,onRename:n}){let{t:r}=k(`workbench`);return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(Ae,{}),(0,Q.jsxs)(G,{disabled:e,onSelect:n,children:[(0,Q.jsx)(E,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,Q.jsx)(`span`,{children:r(`openMenu.rename`)})]}),(0,Q.jsxs)(G,{className:`text-danger`,disabled:e,onSelect:t,children:[(0,Q.jsx)(j,{"aria-hidden":`true`,className:`size-4`}),(0,Q.jsx)(`span`,{children:r(`openMenu.delete`)})]})]})}function zn({disabled:e,onDelete:t,onRename:n}){let{t:r}=k(`workbench`);return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(Qe,{}),(0,Q.jsxs)(nt,{disabled:e,onSelect:n,children:[(0,Q.jsx)(E,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,Q.jsx)(`span`,{children:r(`openMenu.rename`)})]}),(0,Q.jsxs)(nt,{className:`text-danger`,disabled:e,onSelect:t,children:[(0,Q.jsx)(j,{"aria-hidden":`true`,className:`size-4`}),(0,Q.jsx)(`span`,{children:r(`openMenu.delete`)})]})]})}var Bn={editor:H,"file-manager":m,"system-default":ve,terminal:An,tool:Mn};function Vn(e,t){return t===`file`?e:e.filter(e=>e.kind!==`system-default`)}function Hn(e){return e.find(e=>e.kind===`file-manager`)}function Un(e){return e.split(/[\\/]/u).at(-1)??e}function Wn(e,t){let n=e.includes(`\\`)&&!e.includes(`/`),r=n?`\\`:`/`,i=e.replace(/[\\/]+$/u,``),a=n?t.replace(/\//gu,`\\`).replace(/^\\+/u,``):t.replace(/\\/gu,`/`).replace(/^\/+/u,``);return a===``?i||e:`${i}${r}${a}`}function Gn(e){navigator.clipboard.writeText(e).catch(()=>void 0)}function Kn({apps:e,isPending:t,onOpen:n,onDelete:r,onOpenInNewWindow:i,onReference:a,onRename:o,onSelect:s,target:c}){let{t:l}=k(`workbench`);return(0,Q.jsxs)(dt,{modal:!1,onOpenChange:e=>{e&&n()},children:[(0,Q.jsxs)(K,{children:[(0,Q.jsx)(Ke,{asChild:!0,children:(0,Q.jsx)(q,{asChild:!0,children:(0,Q.jsx)(X,{"aria-label":l(`openMenu.targetLabel`,{path:c.path}),className:`pointer-events-none size-5 shrink-0 opacity-0 transition-opacity group-hover/file-tree-node:pointer-events-auto group-hover/file-tree-node:opacity-100 group-focus-within/file-tree-node:pointer-events-auto group-focus-within/file-tree-node:opacity-100 focus-visible:pointer-events-auto focus-visible:opacity-100 data-[state=open]:pointer-events-auto data-[state=open]:opacity-100`,size:`embedded`,type:`button`,variant:`embedded`,children:(0,Q.jsx)(y,{"aria-hidden":`true`,className:`size-3.5`})})})}),(0,Q.jsx)(J,{side:`left`,children:l(`openMenu.moreActions`)})]}),(0,Q.jsx)(qn,{apps:e,isPending:t,onReference:a,onSelect:s,target:c,...r===void 0||o===void 0?{}:{onDelete:r,onRename:o},...i===void 0?{}:{onOpenInNewWindow:i}})]})}function qn({apps:e,isPending:t,onDelete:n,onOpenInNewWindow:r,onReference:i,onRename:a,onSelect:o,target:s}){let{t:c}=k(`workbench`),l=Vn(e,s.type),u=c(`openMenu.targetLabel`,{path:s.path}),d=Un(s.path),f=s.reference;return(0,Q.jsxs)(He,{align:`end`,"aria-label":u,className:`w-52`,children:[(0,Q.jsxs)(nt,{onSelect:()=>{Gn(d)},children:[(0,Q.jsx)(U,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,Q.jsx)(`span`,{children:c(`openMenu.copyName`)})]}),(0,Q.jsxs)(nt,{onSelect:()=>{Gn(s.relativePath)},children:[(0,Q.jsx)(U,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,Q.jsx)(`span`,{children:c(`openMenu.copyRelativePath`)})]}),(0,Q.jsxs)(nt,{onSelect:()=>{Gn(s.absolutePath)},children:[(0,Q.jsx)(U,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,Q.jsx)(`span`,{children:c(`openMenu.copyAbsolutePath`)})]}),(0,Q.jsxs)(et,{children:[(0,Q.jsxs)(Ue,{children:[(0,Q.jsx)(m,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,Q.jsx)(`span`,{children:c(`openMenu.open`)})]}),(0,Q.jsx)(it,{children:l.map(e=>{let n=Bn[e.kind],r=e.kind===`system-default`?c(`openMenu.systemDefault`):e.name;return(0,Q.jsxs)(nt,{"aria-label":r,disabled:t,onSelect:()=>{o(e.id,s.path)},children:[(0,Q.jsx)(n,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,Q.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:r})]},e.id)})})]}),s.type===`file`&&r!==void 0?(0,Q.jsxs)(nt,{onSelect:r,children:[(0,Q.jsx)(ve,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,Q.jsx)(`span`,{children:c(`openMenu.openInNewWindow`)})]}):null,f===void 0?null:(0,Q.jsxs)(nt,{onSelect:()=>{i(f)},children:[(0,Q.jsx)(un,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,Q.jsx)(`span`,{children:c(`openMenu.reference`)})]}),n===void 0||a===void 0?null:(0,Q.jsx)(zn,{disabled:t,onDelete:n,onRename:a})]})}function Jn({apps:e,className:t=``,defaultOpenAppId:n,hidden:r=!1,isDetecting:i,isPending:a,onSelect:o}){let{t:s}=k(`workbench`);if(r)return null;let c=Vn(e,`directory`),l=c.find(e=>e.id===n)??c[0],u=i?s(`openMenu.detect`):l===void 0?s(`openMenu.none`):s(`openMenu.openIn`,{app:l.name}),d=l?.name??u,f=l===void 0?m:Bn[l.kind];return(0,Q.jsxs)(dt,{modal:!1,children:[(0,Q.jsxs)(cn,{className:`shrink-0 ${t}`,children:[(0,Q.jsxs)(X,{"aria-label":u,className:`max-w-28 rounded-r-none border-r-0 max-workbench:min-w-11 max-workbench:px-0`,disabled:l===void 0||a,onClick:()=>{l!==void 0&&o(l.id)},size:`toolbar`,title:u,type:`button`,variant:`outline`,children:[(0,Q.jsx)(f,{"aria-hidden":`true`}),(0,Q.jsx)(`span`,{className:`hidden truncate sm:inline`,children:d})]}),(0,Q.jsx)(Ke,{asChild:!0,children:(0,Q.jsx)(X,{"aria-label":s(`openMenu.choose`),className:`rounded-l-none`,disabled:c.length===0||a,size:`icon-toolbar`,type:`button`,variant:`outline`,children:(0,Q.jsx)(x,{"aria-hidden":`true`})})})]}),(0,Q.jsx)(He,{align:`end`,"aria-label":s(`openMenu.choose`),className:`w-52`,children:c.map(e=>{let t=Bn[e.kind];return(0,Q.jsxs)(nt,{"aria-label":e.name,disabled:a,onSelect:()=>{o(e.id)},children:[(0,Q.jsx)(t,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,Q.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:e.name})]},e.id)})})]})}function Yn({apps:e,ariaLabel:t,isPending:n,onDelete:r,onOpenInNewWindow:i,onReference:a,onRename:o,onSelect:s,target:c}){let{t:l}=k(`workbench`),u=Vn(e,c.type),d=Un(c.path),f=c.reference;return(0,Q.jsxs)(je,{"aria-label":t,className:`w-52`,children:[(0,Q.jsxs)(G,{onSelect:()=>{Gn(d)},children:[(0,Q.jsx)(U,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,Q.jsx)(`span`,{children:l(`openMenu.copyName`)})]}),(0,Q.jsxs)(G,{onSelect:()=>{Gn(c.relativePath)},children:[(0,Q.jsx)(U,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,Q.jsx)(`span`,{children:l(`openMenu.copyRelativePath`)})]}),(0,Q.jsxs)(G,{onSelect:()=>{Gn(c.absolutePath)},children:[(0,Q.jsx)(U,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,Q.jsx)(`span`,{children:l(`openMenu.copyAbsolutePath`)})]}),(0,Q.jsxs)(Oe,{children:[(0,Q.jsxs)(Ne,{children:[(0,Q.jsx)(m,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,Q.jsx)(`span`,{children:l(`openMenu.open`)})]}),(0,Q.jsx)(Me,{children:u.map(e=>{let t=Bn[e.kind],r=e.kind===`system-default`?l(`openMenu.systemDefault`):e.name;return(0,Q.jsxs)(G,{"aria-label":r,disabled:n,onSelect:()=>{s(e.id,c.path)},children:[(0,Q.jsx)(t,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,Q.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:r})]},e.id)})})]}),c.type===`file`&&i!==void 0?(0,Q.jsxs)(G,{onSelect:i,children:[(0,Q.jsx)(ve,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,Q.jsx)(`span`,{children:l(`openMenu.openInNewWindow`)})]}):null,f===void 0?null:(0,Q.jsxs)(G,{onSelect:()=>{a(f)},children:[(0,Q.jsx)(un,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,Q.jsx)(`span`,{children:l(`openMenu.reference`)})]}),r===void 0||o===void 0?null:(0,Q.jsx)(Rn,{disabled:n,onDelete:r,onRename:o})]})}function Xn({apps:e,children:t,isPending:n,onOpen:r,onDelete:i,onOpenInNewWindow:a,onReference:o,onRename:s,onSelect:c,target:l}){let{t:u}=k(`workbench`);return(0,Q.jsxs)(Pe,{modal:!1,onOpenChange:e=>{e&&r()},children:[(0,Q.jsx)(ke,{asChild:!0,onContextMenu:e=>{e.stopPropagation()},children:t}),(0,Q.jsx)(Yn,{apps:e,ariaLabel:u(`openMenu.targetLabel`,{path:l.path}),isPending:n,onReference:o,...a===void 0?{}:{onOpenInNewWindow:a},onSelect:c,target:l,...i===void 0||s===void 0?{}:{onDelete:i,onRename:s}})]})}var Zn=new Set([`agent/close`,`agent/resume`,`agent/send_input`,`agent/spawn`,`agent/wait`]);function Qn(e){return T.t({"agent/close":`subagent.operationTitles.close`,"agent/resume":`subagent.operationTitles.resume`,"agent/send_input":`subagent.operationTitles.sendInput`,"agent/spawn":`subagent.operationTitles.spawn`,"agent/wait":`subagent.operationTitles.wait`}[e],{ns:`conversation`})}function $n(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function er(e){return e===`pending`||e===`running`||e===`completed`||e===`failed`||e===`declined`||e===`interrupted`}function tr(e){if(!Zn.has(e.name))return null;let t=$n(e.input)?e.input:{},n=$n(e.output)?e.output:{};return{agents:(Array.isArray(n.agents)?n.agents:[]).flatMap(e=>{if(!$n(e))return[];let t=e.taskId,n=e.status;if(typeof t!=`string`||!er(n))return[];let r=e.message,i=e.nickname;return[{...typeof r==`string`?{message:r}:{},...typeof i==`string`?{nickname:i}:{},status:n,taskId:t}]}),...typeof t.model==`string`?{model:t.model}:{},name:e.name,...typeof t.prompt==`string`?{prompt:t.prompt}:{},...typeof t.reasoningEffort==`string`?{reasoningEffort:t.reasoningEffort}:{}}}function nr(e){if(e===void 0)return[];let t=new Map;for(let n of e.turns)for(let e of n.items){if(e.type!==`tool`)continue;let n=tr(e);if(n!==null){if(n.name===`agent/close`){for(let e of n.agents)t.delete(e.taskId);continue}for(let e of n.agents){let r=t.get(e.taskId);t.set(e.taskId,{...r?.model===void 0?{}:{model:r.model},...r?.reasoningEffort===void 0?{}:{reasoningEffort:r.reasoningEffort},...n.model===void 0?{}:{model:n.model},...n.reasoningEffort===void 0?{}:{reasoningEffort:n.reasoningEffort},nickname:e.nickname??r?.nickname??T.t(`subagent.defaultName`,{index:t.size+1,ns:`conversation`}),status:e.status,taskId:e.taskId})}}}return[...t.values()]}function rr(e){return e.split(`-`).map(e=>e===`gpt`?`GPT`:`${e.charAt(0).toUpperCase()}${e.slice(1)}`).join(`-`)}function ir(e){return e===`pending`?`pending`:e===`running`?`in_progress`:e===`failed`||e===`declined`||e===`interrupted`?`error`:`completed`}function ar(e,t){return t.some(e=>e.status===`running`||e.status===`pending`)?`in_progress`:t.some(e=>e.status===`failed`||e.status===`declined`||e.status===`interrupted`)?`error`:ir(e)}function or(e,t){if(t.length===0)return e===`pending`||e===`running`?T.t(`subagent.orchestrating`,{ns:`conversation`}):T.t(`subagent.operationCompleted`,{ns:`conversation`});let n=ar(e,t);return n===`in_progress`||n===`pending`?T.t(`subagent.operationRunning`,{count:t.length,ns:`conversation`}):n===`error`?T.t(`subagent.operationFailed`,{count:t.length,ns:`conversation`}):T.t(`subagent.operationSucceeded`,{count:t.length,ns:`conversation`})}function sr({activePanel:e,gitStatus:t,temporary:n}){return!n&&e&&t!==void 0&&t.repositoryMode!==`none`&&t.staged.length+t.unstaged.length>0}function cr(e,t,{contextOnly:n=!1,fileOpen:r=!1}={}){let i=t!==void 0&&t.repositoryMode!==`none`,a=i&&t.staged.length+t.unstaged.length>0,o=[];return n?(o.push(`context`),r&&o.push(`file`),o):(e!==void 0&&o.push(`context`),o.push(`project`),a&&o.push(`changes`),i&&o.push(`history`),r&&o.push(`file`),o)}function lr({contextOnly:e=!1,fileOpen:t=!1,gitStatus:n,inspectorOpen:r,requestedTab:i,taskId:a}){let o=cr(a,n,{contextOnly:e,fileOpen:t}),s=e?i===`file`&&t?`file`:`context`:o.includes(i)?i:`project`;return{activeTab:s,changes:r&&s===`changes`,context:r&&s===`context`,file:r&&s===`file`,history:r&&s===`history`,project:r&&s===`project`}}var ur=`(max-width: 760px)`,dr=`(max-width: 1100px)`,fr={default:288,maximum:400,minimum:220},pr={default:320,minimum:320};function mr(e){return typeof window>`u`||!window.matchMedia(e).matches}function hr(e,t){return Math.max(pr.minimum,Math.floor((e-t)/2))}function gr(){let[e,t]=(0,Z.useState)(()=>mr(ur)),[n,r]=(0,Z.useState)(()=>mr(dr)),[i,a]=(0,Z.useState)(fr.default),[o,s]=(0,Z.useState)(pr.default),[c,l]=(0,Z.useState)(()=>typeof window>`u`?1440:window.innerWidth),u=(0,Z.useRef)(null),d=hr(c,e?i:0);return(0,Z.useLayoutEffect)(()=>{let e=u.current;if(e===null)return;let t=()=>{l(e.getBoundingClientRect().width)};t();let n=new ResizeObserver(t);return n.observe(e),()=>{n.disconnect()}},[]),(0,Z.useLayoutEffect)(()=>{s(e=>Math.min(e,d))},[d]),{inspectorMaximumWidth:d,inspectorOpen:n,inspectorWidth:o,setInspectorOpen:r,setInspectorWidth:s,setSidebarOpen:t,setSidebarWidth:a,sidebarOpen:e,sidebarWidth:i,workbenchShellRef:u}}function _r(){let[e,t]=(0,Z.useState)(),n=(0,Z.useRef)(void 0),r=(0,Z.useCallback)(()=>{let e=new Date().toISOString();n.current=e,t(e)},[]),i=(0,Z.useCallback)(e=>{if(e){if(n.current===void 0){let e=new Date().toISOString();n.current=e,t(e)}return}n.current=void 0,t(void 0)},[]);return{beginSubmission:r,getStartedAt:(0,Z.useCallback)(()=>n.current,[]),handleSubmissionStateChange:i,startedAt:e}}var vr=new Set;function yr(e,t){return[`projects`,e,`tasks`,t,`launch`]}function br(e){return{...Be({...e.task,contextUsage:null,goal:null,plan:null,pendingRequests:[],settings:e.settings,status:`running`,turns:[e.turn],turnsNextCursor:null},e.turn,{...e.input,messageAttachments:e.messageAttachments}),pendingRequests:[]}}function xr({projectId:e,taskId:t,temporary:n=!1}){let{t:r}=k(`workbench`),i=bt(),{capabilities:a,client:u,error:d,isPending:f,projects:p,projectTaskStates:m,tasks:h}=at(),g=p.find(t=>t.id===e),{selectedRootIds:_,setSelectedProjectRoot:v}=We(),y=Ct(g,_),b=n?void 0:y?.id,x=n?void 0:y?.path,{markTaskRunning:S,projectRuntime:C,refreshProjectGitStatus:w,requestNotificationPermission:T,retry:E,viewTask:D}=$e(),O=o(),A=s(),{inspectorMaximumWidth:j,inspectorOpen:M,inspectorWidth:ee,setInspectorOpen:N,setInspectorWidth:P,setSidebarOpen:te,setSidebarWidth:ne,sidebarOpen:F,sidebarWidth:I,workbenchShellRef:L}=gr(),re=`${e}:${t??`draft`}`,R=t===void 0?`project`:`context`,[z,ie]=(0,Z.useState)({scopeKey:re,tab:R}),[ae,B]=(0,Z.useState)(null),oe=z.scopeKey===re?z.tab:R,se=c(st(e,x??``,u,!n&&x!==void 0)),V=lr({contextOnly:n,fileOpen:ae?.projectId===e,gitStatus:se.data,inspectorOpen:M,requestedTab:oe,taskId:t}),ce=c(Et(u)),le=l({...jt(u),onSuccess(e){A.setQueryData([`app-info`],e)}}),ue=c(Ut(u,le.isPending)),H=c(pt(u)),de=c(Tt()),fe=c($t(e,t,u,V.context)),pe=l({...Re(e,t,u),onSuccess(n){A.setQueryData([`projects`,e,`tasks`,t??null,`mcp-servers`],n)}}),me=c(lt(u)),he=c(Ie(e,u,!n)),ge=l({meta:{actionNotification:{successMessage:!1}},mutationFn:({appId:t,path:n})=>u.openProject(e,x,n===void 0?{appId:t}:{appId:t,path:n})}),U=l({meta:{actionNotification:{successMessage:!1}},mutationFn:({attachmentId:t,taskId:n})=>u.openTaskAttachment(e,n,t)}),_e=(0,Z.useRef)(ge);_e.current=ge;let ve=(0,Z.useRef)(Le()),W=Hn(he.data?.apps??[]),ye=(0,Z.useCallback)(()=>{if(W===void 0)return;let e=_e.current;e.reset(),ve.current.run(()=>e.mutateAsync({appId:W.id,path:void 0})).catch(()=>void 0)},[W,ve,_e]),be=c({...Ot(e,u),enabled:a?.skills.list===!0}),xe=c(Ge(e,u,!n)),Se=l({...ht(e,u),onSuccess(t){A.setQueryData([`projects`,e,`defaults`],t)}}),Ce=l({...Ze(u),async onSuccess(n){A.setQueryData([`settings`],n),await A.invalidateQueries({exact:!0,queryKey:[`projects`,e,`defaults`]}),t!==void 0&&await C.refreshTaskSnapshot(e,t)}}),we=t===void 0?void 0:A.getQueryData(yr(e,t)),Te=Yt(e,t,C),Ee=(0,Z.useMemo)(()=>we===void 0?void 0:br(we),[we]),De=m.get(e),Oe=Zt({hasActiveTask:t!==void 0,projectDataFailed:d!==null||(De?.error??null)!==null,projectDataPending:f||De?.isPending===!0,taskConnectionState:Te.connectionState}),ke=Ln(u,e,t,Te.metadata?.status===`running`||Ee?.status===`running`,V.context),Ae=`${e}:${x??`temporary`}`,[je,Me]=(0,Z.useState)(()=>({paths:new Set,scope:Ae})),G=je.scope===Ae?je.paths:vr,{beginSubmission:Ne,getStartedAt:Pe,handleSubmissionStateChange:Fe,startedAt:K}=_r(),[ze,Be]=(0,Z.useState)(),[Ve,He]=(0,Z.useState)(!1),[Ue,q]=(0,Z.useState)(null),[Ke,qe]=(0,Z.useState)(null),[Je,Ye]=(0,Z.useState)(null),[Xe,Qe]=(0,Z.useState)(null),et=(0,Z.useCallback)(t=>{v(e,t),qe(null),Ye(null),B(null)},[e,v]),tt=c(vt(e,x??``,null,se.data?.snapshot??``,sr({activePanel:V.context||V.project||V.changes,gitStatus:se.data,temporary:n}),u)),nt=(0,Z.useCallback)(e=>{ie({scopeKey:re,tab:e})},[re]);(0,Z.useLayoutEffect)(()=>{D(e,t)},[e,t,D]);let rt=n?r(`shell.temporaryTask`):g?.name??e,it=x??``,ot=h.find(n=>n.projectId===e&&n.id===t)?.title??Te.metadata?.title??r(`shell.newChat`),ct=l(qt(u)),ut=(0,Z.useRef)(Le()),dt=Ke?.projectId===e?Ke:null,ft=ae?.projectId===e?ae:null,J=Je?.projectId===e?Je.changes:null,mt=(0,Z.useMemo)(()=>(Te.itemStructureRevision,Te.metadata,M?Te.readSnapshot()??Ee:Ee),[M,Te,Ee]),gt=(0,Z.useMemo)(()=>nr(mt),[mt]),_t=Xe?.projectId===e&&Xe.parentTaskId===t?{...Xe.selection,status:gt.find(e=>e.taskId===Xe.selection.taskId)?.status??Xe.selection.status}:null;return{access:i,activeTaskRenameLockRef:ut,appInfoQuery:ce,appUpdateMutation:le,appUpdateProgressQuery:ue,backgroundTerminals:ke,beginNewChatSubmission:Ne,capabilities:a,client:u,error:d,expandedFileTreePaths:G,fileReviewSelection:Je,getNewChatSubmissionStartedAt:Pe,gitStatusQuery:se,gitStatusDetailsQuery:tt,globalSettingsMutation:Ce,globalSettingsSection:Ue,globalSettingsQuery:me,handleNewChatSubmissionStateChange:Fe,inspectorOpen:M,inspectorMaximumWidth:j,inspectorTab:oe,inspectorTask:mt,inspectorWidth:ee,isPending:f,markTaskRunning:S,mcpServersQuery:fe,mcpServersReloadMutation:pe,modelsQuery:H,navigate:O,newChatSubmissionStartedAt:K,openProjectFolder:ye,pendingTaskSelection:ze,projectDefaultsMutation:Se,projectDefaultsQuery:xe,projectName:rt,projectRoots:g?.roots??[],projectOpenCapabilitiesQuery:he,providerConnectionQuery:de,projectFolderOpenDisabled:W===void 0||ge.isPending,projectPath:it,projectPathOpenLockRef:ve,projectPathOpenMutation:ge,projectPathOpenMutationRef:_e,taskAttachmentOpenMutation:U,projectRuntime:C,projectTaskState:De,projects:p,queryClient:A,refreshProjectGitStatus:w,renameMutation:ct,requestNotificationPermission:T,retry:E,runtime:Te,selectedFileReview:J,selectedInspectorFile:ft,selectedProjectFileDialog:dt,selectedRootId:b,selectedRootPath:x,selectedSubagent:_t,setFileReviewSelection:Ye,setFileTreeExpansion:Me,setGlobalSettingsSection:q,setInspectorOpen:N,setInspectorTab:nt,setInspectorWidth:P,setPendingTaskSelection:Be,setSidebarOpen:te,setSidebarWidth:ne,setInspectorFileSelection:B,setProjectFileDialogSelection:qe,setSelectedRootId:et,setSubagentDialogSelection:Qe,setTaskRenameOpen:He,sidebarConnectionState:Oe,sidebarOpen:F,sidebarWidth:I,skillsQuery:be,startingSnapshot:Ee,subagents:gt,taskLaunchState:we,temporary:n,taskRenameOpen:Ve,tasks:h,t:r,title:ot,viewTask:D,workbenchShellRef:L}}function Sr(e,t){return{...e,fastMode:t}}function Cr(e,t,n){return e?n??!1:t??n??!1}function wr(e,{projectId:t,taskId:n,temporary:r=!1}){let{activeTaskRenameLockRef:i,client:a,getNewChatSubmissionStartedAt:o,globalSettingsQuery:s,gitStatusQuery:c,markTaskRunning:l,modelsQuery:u,navigate:d,projectDefaultsMutation:f,projectDefaultsQuery:m,providerConnectionQuery:h,projectPathOpenLockRef:g,projectPathOpenMutationRef:_,queryClient:v,renameMutation:y,runtime:b,selectedRootPath:x,setFileReviewSelection:S,setInspectorFileSelection:C,setInspectorOpen:w,setInspectorTab:T,setPendingTaskSelection:E,setProjectFileDialogSelection:D,setSidebarOpen:O,setTaskRenameOpen:k,taskLaunchState:A}=e,j=(0,Z.useCallback)(e=>{C({change:e,kind:`diff`,projectId:t}),T(`file`),w(!0)},[t,C,w,T]),M=(0,Z.useCallback)(e=>{x!==void 0&&Nn(v,a,t,x,c.data,e).then(e=>{D({change:e,kind:`diff`,projectId:t})}).catch(e=>{Qt(e instanceof Error?e:Error(`Git diff is unavailable`))})},[a,c.data,t,v,x,D]),ee=(0,Z.useCallback)((e,n)=>{let r=e=>{let t=_.current;t.reset(),g.current.run(()=>t.mutateAsync({appId:`system-default`,path:e})).catch(()=>void 0)};if(n===`popup`){At({onOpenSystemDefault:r,projectId:t,reference:e,...x===void 0?{}:{rootPath:x}});return}let i=Mt(e.path);if(i===`system`){r(e.path);return}C({kind:i,projectId:t,reference:e}),T(`file`),w(!0)},[t,g,_,x,w,T,C]),N=(0,Z.useCallback)(e=>{let n=Mt(e);if(n===`system`){let t=_.current;t.reset(),g.current.run(()=>t.mutateAsync({appId:`system-default`,path:e})).catch(()=>void 0);return}D({kind:n,projectId:t,reference:{lineNumber:null,path:e}})},[t,g,_,D]),P=(0,Z.useCallback)(e=>{S({changes:e,projectId:t})},[t,S]),te=()=>{k(!1),requestAnimationFrame(()=>{document.querySelector(`#workbench-task-title-rename`)?.focus()})},F=e=>i.current.run(async()=>{if(n!==void 0)try{let r=await y.mutateAsync({projectId:t,taskId:n,title:e});Gt(v,r.task),te()}catch{}}),I=(0,Z.useCallback)(e=>{v.setQueryData([`projects`,e.projectId,`tasks`],t=>Ht(t,e)),v.setQueryData([`projects`,e.projectId,`tasks`,Rt],t=>t===void 0?void 0:[e,...t.filter(t=>t.id!==e.id)])},[v]),L=(0,Z.useCallback)(e=>{I(e),E({projectId:e.projectId,taskId:e.id})},[I,E]),re=(0,Z.useCallback)((e,n,i,s,c=[],u)=>{if(I(e),n!==void 0&&i!==void 0&&s!==void 0&&u!==void 0){let t=o()??n.startedAt,r={checkpoint:u,input:i,messageAttachments:c,settings:s,...t===null?{}:{submissionStartedAt:t},task:e,turn:n};v.setQueryData(yr(e.projectId,e.id),r),v.setQueryData(qe(e.projectId,e.id,a).queryKey,{checkpoint:u,snapshot:br(r)})}n!==void 0&&l(t,e.id),E(void 0),d({...r?{params:{taskId:e.id},to:`/temporary/t/$taskId`}:{params:{projectId:t,taskId:e.id},to:`/p/$projectId/t/$taskId`}})},[I,a,o,l,d,t,v,E,r]),R=u.data?.data??[],z=s.data?.settings,ie=m.data?.settings,ae=h.data!==void 0&&p(h.data),B=r?z:ie,oe=R.find(e=>e.id===B?.model)??R.find(e=>e.isDefault)??R[0],se=(0,Z.useMemo)(()=>({approvalPolicy:B?.approvalPolicy??z?.approvalPolicy??`on-request`,approvalsReviewer:B?.approvalsReviewer??z?.approvalsReviewer??`user`,model:oe?.id??B?.model??``,reasoningEffort:B?.reasoningEffort??oe?.defaultReasoningEffort??``,sandboxMode:B?.sandboxMode??`workspace-write`}),[oe,B,z]),[V,ce]=(0,Z.useState)(),le=r?V??se:se,ue=Cr(r,ie?.fastMode,z?.fastMode),H=async(e,t)=>{r||await f.mutateAsync(Sr(e,t))},de=async(e,t,n)=>{if(r){ce(e);return}await H(e,n)},fe=(0,Z.useCallback)(e=>{d({params:{projectId:e},to:`/p/$projectId`})},[d]),pe=()=>{O(!1),requestAnimationFrame(()=>{document.querySelector(`#workbench-sidebar-toggle`)?.focus()})},me=()=>{w(!1),requestAnimationFrame(()=>{document.querySelector(`#workbench-inspector-toggle`)?.focus()})},he=A?.turn.id?b.store!==void 0&&ne(b.store.getState(),A.turn.id).length>0:!1;return(0,Z.useEffect)(()=>{n!==void 0&&he&&v.removeQueries({exact:!0,queryKey:yr(t,n)})},[he,t,v,n]),(0,Z.useEffect)(()=>{let e=Tr(b.store?.getState());n===void 0||e===void 0||v.setQueryData([`projects`,t,`tasks`],t=>Pt(t,e))},[t,v,b.itemStructureRevision,b.metadata,b.store,n]),(0,Z.useEffect)(()=>{let e=window.matchMedia(ur),t=window.matchMedia(dr),n=()=>{e.matches&&O(!1),t.matches&&w(!1)};return e.addEventListener(`change`,n),t.addEventListener(`change`,n),()=>{e.removeEventListener(`change`,n),t.removeEventListener(`change`,n)}},[w,O]),{...e,closeInspector:me,closeSidebar:pe,closeTaskRenameDialog:te,draftSettings:le,fastModeDefault:ue,fastModeAvailable:ae,globalSettings:z,handleNewTaskProjectChange:fe,handleTaskCreated:L,handleTaskStarted:re,models:R,openFileDiff:j,openProjectFileDiff:M,openFileReview:P,openMessageFileReference:ee,openProjectFile:N,renameActiveTask:F,updateDraftSettings:de,updateProjectTaskDefaults:H}}function Tr(e){let t=e?.snapshotMetadata;if(!(e===void 0||t==null))return{id:t.id,projectId:t.projectId,title:t.title,turns:e.turnIds.flatMap(t=>{let n=e.turnsById[t];if(n===void 0)return[];let r=(e.itemKeysByTurnId[t]??[]).flatMap(t=>{let n=e.getItemByKey(t);return n?.type===`message`?[n]:[]});return[{...n,items:r}]}),updatedAt:t.updatedAt}}var Er=(0,Z.lazy)(()=>Xt().then(e=>({default:e.GlobalSettingsPage})));function Dr({context:e,projectToolsEnabled:t}){let{client:n,access:r,appInfoQuery:i,appUpdateMutation:a,appUpdateProgressQuery:o,globalSettingsMutation:s,globalSettingsSection:c,globalSettingsQuery:l,fastModeAvailable:u,models:d,modelsQuery:f,projectOpenCapabilitiesQuery:p,setGlobalSettingsSection:m}=e;return(0,Q.jsx)(Q.Fragment,{children:c===null?null:(0,Q.jsx)(Z.Suspense,{fallback:null,children:(0,Q.jsx)(Er,{client:n,...r.status===void 0?{}:{accessMode:r.status.mode},...i.data===void 0?{}:{appInfo:i.data},appInfoError:i.error,apps:t?p.data?.apps??[]:[],error:l.error??f.error??(t?p.error:null),isPending:l.isPending||f.isPending||t&&p.isPending,fastModeAvailable:u,initialSection:c,isAppInfoPending:i.isPending,isAppUpdatePending:a.isPending,...o.data?.progress===null||o.data?.progress===void 0?{}:{appUpdateProgress:o.data.progress},models:d,onClose:()=>{let e=c===`about`?`#global-settings-about-trigger`:`#global-settings-trigger`;m(null),requestAnimationFrame(()=>{document.querySelector(e)?.focus()})},onLogoutAccess:r.logout,onRetry:()=>Promise.all([l.refetch(),f.refetch(),...t?[p.refetch()]:[]]),onRetryAppInfo:()=>i.refetch(),onSave:e=>s.mutateAsync(e).then(()=>void 0),onUpdate:e=>a.mutateAsync(e).then(()=>void 0),...l.data===void 0?{}:{settings:l.data.settings}})})})}var Or=e(i(),1);function kr(e,t,n){let r=Array(e);return new Proxy(r,{get(r,i,a){if(typeof i==`string`){let a=i.charCodeAt(0);if(a>=48&&a<=57){let a=+i;if(Number.isInteger(a)&&a>=0&&a<e){let e=r[a];if(!e){let i=t[a*2];e=r[a]={index:a,key:n(a),start:i,size:t[a*2+1],end:i+t[a*2+1],lane:0}}return e}}if(i===`length`)return e}return Reflect.get(r,i,a)}})}function Ar(e,t,n){let r=n.initialDeps??[],i,a=!0;function o(){let o=e();return o.length!==r.length||o.some((e,t)=>r[t]!==e)?(r=o,i=t(...o),n?.onChange&&!(a&&n.skipInitialOnChange)&&n.onChange(i),a=!1,i):i}return o.updateDeps=e=>{r=e},o}function jr(e,t){if(e===void 0)throw Error(`Unexpected undefined${t?`: ${t}`:``}`);return e}var Mr=(e,t)=>Math.abs(e-t)<1.01,Nr=(e,t,n)=>{let r;return function(...i){e.clearTimeout(r),r=e.setTimeout(()=>t.apply(this,i),n)}},Pr,Fr=()=>{if(Pr!==void 0)return Pr;if(typeof navigator>`u`)return Pr=!1;if(/iP(hone|od|ad)/.test(navigator.userAgent))return Pr=!0;let e=navigator.maxTouchPoints;return Pr=navigator.platform===`MacIntel`&&e!==void 0&&e>0},Ir=e=>{let{offsetWidth:t,offsetHeight:n}=e;return{width:t,height:n}},Lr=e=>e,Rr=e=>{let t=Math.max(e.startIndex-e.overscan,0),n=Math.min(e.endIndex+e.overscan,e.count-1)-t+1,r=Array(n);for(let e=0;e<n;e++)r[e]=t+e;return r},zr=(e,t)=>{let n=e.scrollElement;if(!n)return;let r=e.targetWindow;if(!r)return;let i=e=>{let{width:n,height:r}=e;t({width:Math.round(n),height:Math.round(r)})};if(i(Ir(n)),!r.ResizeObserver)return()=>{};let a=new r.ResizeObserver(t=>{let r=()=>{let e=t[0];if(e?.borderBoxSize){let t=e.borderBoxSize[0];if(t){i({width:t.inlineSize,height:t.blockSize});return}}i(Ir(n))};e.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(r):r()});return a.observe(n,{box:`border-box`}),()=>{a.unobserve(n)}},Br={passive:!0},Vr=typeof window>`u`||`onscrollend`in window,Hr=(e,t,n)=>{let r=e.scrollElement;if(!r)return;let i=e.targetWindow;if(!i)return;let a=e.options.useScrollendEvent&&Vr,o=0,s=a?null:Nr(i,()=>t(o,!1),e.options.isScrollingResetDelay),c=e=>()=>{o=n(r),s?.(),t(o,e)},l=c(!0),u=c(!1);return r.addEventListener(`scroll`,l,Br),a&&r.addEventListener(`scrollend`,u,Br),()=>{r.removeEventListener(`scroll`,l),a&&r.removeEventListener(`scrollend`,u)}},Ur=(e,t)=>Hr(e,t,t=>{let{horizontal:n,isRtl:r}=e.options;return n?t.scrollLeft*(r&&-1||1):t.scrollTop}),Wr=(e,t,n)=>{if(n.options.useCachedMeasurements){let t=n.indexFromElement(e),r=n.options.getItemKey(t);return n.itemSizeCache.get(r)??n.options.estimateSize(t)}if(t?.borderBoxSize){let e=t.borderBoxSize[0];if(e)return Math.round(e[n.options.horizontal?`inlineSize`:`blockSize`])}if(!t){let t=n.indexFromElement(e),r=n.options.getItemKey(t),i=n.itemSizeCache.get(r);if(i!==void 0)return i}return e[n.options.horizontal?`offsetWidth`:`offsetHeight`]},Gr=(e,{adjustments:t=0,behavior:n},r)=>{var i,a;(a=(i=r.scrollElement)?.scrollTo)==null||a.call(i,{[r.options.horizontal?`left`:`top`]:e+t,behavior:n})},Kr=class{constructor(e){this.unsubs=[],this.scrollElement=null,this.targetWindow=null,this.isScrolling=!1,this.scrollState=null,this.measurementsCache=[],this._flatMeasurements=null,this.itemSizeCache=new Map,this.itemSizeCacheVersion=0,this.laneAssignments=new Map,this.pendingMin=null,this.prevLanes=void 0,this.lanesChangedFlag=!1,this.lanesSettling=!1,this.pendingScrollAnchor=null,this.scrollRect=null,this.scrollOffset=null,this.scrollDirection=null,this.scrollAdjustments=0,this._iosDeferredAdjustment=0,this._iosTouching=!1,this._iosJustTouchEnded=!1,this._iosTouchEndTimerId=null,this._intendedScrollOffset=null,this.elementsCache=new Map,this.now=()=>{var e;return((e=this.targetWindow?.performance)?.now)?.call(e)??Date.now()},this.observer=(()=>{let e=null,t=()=>e||(!this.targetWindow||!this.targetWindow.ResizeObserver?null:e=new this.targetWindow.ResizeObserver(e=>{e.forEach(e=>{let t=()=>{let t=e.target,n=this.indexFromElement(t);if(!t.isConnected){this.observer.unobserve(t);for(let[e,n]of this.elementsCache)if(n===t){this.elementsCache.delete(e);break}return}this.shouldMeasureDuringScroll(n)&&this.resizeItem(n,this.options.measureElement(t,e,this))};this.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(t):t()})}));return{disconnect:()=>{var n;(n=t())==null||n.disconnect(),e=null},observe:e=>t()?.observe(e,{box:`border-box`}),unobserve:e=>t()?.unobserve(e)}})(),this.range=null,this.setOptions=e=>{let t={debug:!1,initialOffset:0,overscan:1,paddingStart:0,paddingEnd:0,scrollPaddingStart:0,scrollPaddingEnd:0,horizontal:!1,getItemKey:Lr,rangeExtractor:Rr,onChange:()=>{},measureElement:Wr,initialRect:{width:0,height:0},scrollMargin:0,gap:0,indexAttribute:`data-index`,initialMeasurementsCache:[],lanes:1,anchorTo:`start`,followOnAppend:!1,scrollEndThreshold:1,isScrollingResetDelay:150,enabled:!0,isRtl:!1,useScrollendEvent:!1,useAnimationFrameWithResizeObserver:!1,laneAssignmentMode:`estimate`,useCachedMeasurements:!1};for(let n in e){let r=e[n];r!==void 0&&(t[n]=r)}let n=this.options,r=null,i=null,a=!1;if(n!==void 0&&n.enabled&&t.enabled&&t.anchorTo===`end`&&this.scrollElement!==null){let e=n.count,o=t.count,s=this.getMeasurements(),c=e>0?s[0]?.key??n.getItemKey(0):null,l=e>0?s[e-1]?.key??n.getItemKey(e-1):null;if(o!==e||e>0&&o>0&&(t.getItemKey(0)!==c||t.getItemKey(o-1)!==l)){a=!0;let c=e>0?this.getVirtualItemForOffset(this.getScrollOffset())??s[0]:null;c&&(r=[c.key,this.getScrollOffset()-c.start]);let u=t.followOnAppend===!0?`auto`:t.followOnAppend||null;u&&o>e&&this.isAtEnd(n.scrollEndThreshold)&&(e===0||t.getItemKey(o-1)!==l)&&(i=u)}}this.options=t,a&&(this.pendingMin=0,this.itemSizeCacheVersion++);let o=!1,s=0;if(r&&this.scrollOffset!==null){let[e,t]=r,n=this.getMeasurements(),{count:i,getItemKey:a}=this.options,c=0;for(;c<i&&a(c)!==e;)c++;if(c<i){let e=n[c];if(e){let n=Math.max(0,e.start+t);n!==this.scrollOffset&&(s=n-this.scrollOffset,this.scrollOffset=n,o=!0)}}}(o||i)&&(this.pendingScrollAnchor=[o?r[0]:null,o?r[1]:0,i,s])},this.notify=e=>{var t,n;(n=(t=this.options).onChange)==null||n.call(t,this,e)},this.maybeNotify=Ar(()=>(this.calculateRange(),[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]),e=>{this.notify(e)},{key:!1,debug:()=>this.options.debug,initialDeps:[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]}),this.cleanup=()=>{this.unsubs.filter(Boolean).forEach(e=>e()),this.unsubs=[],this.observer.disconnect(),this.rafId!=null&&this.targetWindow&&(this.targetWindow.cancelAnimationFrame(this.rafId),this.rafId=null),this.scrollState=null,this._iosDeferredAdjustment=0,this._iosTouching=!1,this._iosJustTouchEnded=!1,this.scrollElement=null,this.targetWindow=null},this._didMount=()=>()=>{this.cleanup()},this._willUpdate=()=>{let e=this.options.enabled?this.options.getScrollElement():null;if(this.scrollElement!==e){if(this.cleanup(),!e){this.maybeNotify();return}if(this.scrollElement=e,this.scrollElement&&`ownerDocument`in this.scrollElement?this.targetWindow=this.scrollElement.ownerDocument.defaultView:this.targetWindow=this.scrollElement?.window??null,this.elementsCache.forEach(e=>{this.observer.observe(e)}),this.unsubs.push(this.options.observeElementRect(this,e=>{this.scrollRect=e,this.maybeNotify()})),this.unsubs.push(this.options.observeElementOffset(this,(e,t)=>{if(t&&this._intendedScrollOffset===null&&e===this.scrollOffset)return;this._intendedScrollOffset!==null&&Math.abs(e-this._intendedScrollOffset)<1.5&&(e=this._intendedScrollOffset),this._intendedScrollOffset=null,this.scrollAdjustments=0;let n=this.getScrollOffset();this.scrollDirection=t?n===e?this.scrollDirection:n<e?`forward`:`backward`:null,this.scrollOffset=e,this.isScrolling=t,this._flushIosDeferredIfReady(),this.scrollState&&this.scheduleScrollReconcile(),this.maybeNotify()})),`addEventListener`in this.scrollElement){let e=this.scrollElement,t=()=>{this._iosTouching=!0,this._iosJustTouchEnded=!1,this._iosTouchEndTimerId!==null&&this.targetWindow!=null&&(this.targetWindow.clearTimeout(this._iosTouchEndTimerId),this._iosTouchEndTimerId=null)},n=()=>{this._iosTouching=!1,!(!Fr()||this.targetWindow==null)&&(this._iosJustTouchEnded=!0,this._iosTouchEndTimerId=this.targetWindow.setTimeout(()=>{this._iosJustTouchEnded=!1,this._iosTouchEndTimerId=null,this._flushIosDeferredIfReady()},150))};e.addEventListener(`touchstart`,t,Br),e.addEventListener(`touchend`,n,Br),this.unsubs.push(()=>{e.removeEventListener(`touchstart`,t),e.removeEventListener(`touchend`,n),this._iosTouchEndTimerId!==null&&this.targetWindow!=null&&(this.targetWindow.clearTimeout(this._iosTouchEndTimerId),this._iosTouchEndTimerId=null)})}this._scrollToOffset(this.getScrollOffset(),{adjustments:void 0,behavior:void 0})}let t=this.pendingScrollAnchor;if(this.pendingScrollAnchor=null,t&&this.scrollElement&&this.options.enabled){let[e,n,r,i]=t;e!==null&&!r&&(Fr()&&(this.isScrolling||this._iosTouching||this._iosJustTouchEnded)?i!==0&&(this._iosDeferredAdjustment+=i):this._scrollToOffset(this.getScrollOffset(),{adjustments:void 0,behavior:void 0})),r&&this.scrollToEnd({behavior:r})}},this._flushIosDeferredIfReady=()=>{if(this._iosDeferredAdjustment===0||this.isScrolling||this._iosTouching||this._iosJustTouchEnded)return;let e=this.getScrollOffset(),t=this.getMaxScrollOffset();if(e<0||e>t)return;if(this._iosDeferredAdjustment<0&&e>=t-1){this._iosDeferredAdjustment=0;return}let n=this._iosDeferredAdjustment;this._iosDeferredAdjustment=0,this._scrollToOffset(e,{adjustments:this.scrollAdjustments+=n,behavior:void 0})},this.rafId=null,this.getSize=()=>this.options.enabled?(this.scrollRect=this.scrollRect??this.options.initialRect,this.scrollRect[this.options.horizontal?`width`:`height`]):(this.scrollRect=null,0),this.getScrollOffset=()=>this.options.enabled?(this.scrollOffset=this.scrollOffset??(typeof this.options.initialOffset==`function`?this.options.initialOffset():this.options.initialOffset),this.scrollOffset):(this.scrollOffset=null,0),this.getMeasurementOptions=Ar(()=>[this.options.count,this.options.paddingStart,this.options.scrollMargin,this.options.getItemKey,this.options.enabled,this.options.lanes,this.options.laneAssignmentMode,this.options.gap],(e,t,n,r,i,a,o,s)=>(this.prevLanes!==void 0&&this.prevLanes!==a&&(this.lanesChangedFlag=!0),this.prevLanes=a,this.pendingMin=null,{count:e,paddingStart:t,scrollMargin:n,getItemKey:r,enabled:i,lanes:a,laneAssignmentMode:o,gap:s}),{key:!1}),this.getMeasurements=Ar(()=>[this.getMeasurementOptions(),this.itemSizeCacheVersion],({count:e,paddingStart:t,scrollMargin:n,getItemKey:r,enabled:i,lanes:a,laneAssignmentMode:o,gap:s},c)=>{let l=this.itemSizeCache;if(!i)return this.measurementsCache=[],this.itemSizeCache.clear(),this.laneAssignments.clear(),[];if(this.laneAssignments.size>e)for(let t of this.laneAssignments.keys())t>=e&&this.laneAssignments.delete(t);this.lanesChangedFlag&&(this.lanesChangedFlag=!1,this.lanesSettling=!0,this.measurementsCache=[],this.itemSizeCache.clear(),this.laneAssignments.clear(),this.pendingMin=null),this.measurementsCache.length===0&&!this.lanesSettling&&(this.measurementsCache=this.options.initialMeasurementsCache,this.measurementsCache.forEach(e=>{this.itemSizeCache.set(e.key,e.size)}));let u=this.lanesSettling?0:this.pendingMin??0;if(this.pendingMin=null,this.lanesSettling&&this.measurementsCache.length===e&&(this.lanesSettling=!1),a===1){let i=e*2,a=this._flatMeasurements;if(!a||a.length<i){let e=new Float64Array(i);a&&u>0&&e.set(a.subarray(0,u*2)),a=e,this._flatMeasurements=a}let o;if(u===0)o=t+n;else{let e=u-1;o=a[e*2]+a[e*2+1]+s}for(let t=u;t<e;t++){let e=r(t),n=l.get(e),i=typeof n==`number`?n:this.options.estimateSize(t);a[t*2]=o,a[t*2+1]=i,o+=i+s}let c=kr(e,a,r);return this.measurementsCache=c,c}let d=this.measurementsCache.slice(0,u),f=Array(a).fill(void 0),p=new Float64Array(a),m=0;for(let e=0;e<u;e++){let t=d[e];t&&(f[t.lane]===void 0&&m++,f[t.lane]=e,p[t.lane]=t.end)}for(let i=u;i<e;i++){let e=r(i),c=this.laneAssignments.get(i),u,h,g=o===`estimate`||l.has(e);if(c!==void 0&&this.options.lanes>1){u=c;let e=f[u],r=e===void 0?void 0:d[e];h=r?r.end+s:t+n}else if(m===a){let e=0,t=p[0],n=f[0];for(let r=1;r<a;r++){let i=p[r];(i<t||i===t&&f[r]<n)&&(e=r,t=i,n=f[r])}u=e,h=t+s,g&&this.laneAssignments.set(i,u)}else u=i%this.options.lanes,h=t+n,g&&this.laneAssignments.set(i,u);let _=l.get(e),v=typeof _==`number`?_:this.options.estimateSize(i),y=h+v;d[i]={index:i,start:h,size:v,end:y,key:e,lane:u},f[u]===void 0&&m++,f[u]=i,p[u]=y}return this.measurementsCache=d,d},{key:!1,debug:()=>this.options.debug}),this.calculateRange=Ar(()=>[this.getMeasurements(),this.getSize(),this.getScrollOffset(),this.options.lanes],(e,t,n,r)=>e.length===0||t===0?(this.range=null,null):(this.range=Yr(e,t,n,r,r===1&&this._flatMeasurements!=null?this._flatMeasurements:null),this.range),{key:!1,debug:()=>this.options.debug}),this.getVirtualIndexes=Ar(()=>{let e=null,t=null,n=this.calculateRange();return n&&(e=n.startIndex,t=n.endIndex),this.maybeNotify.updateDeps([this.isScrolling,e,t]),[this.options.rangeExtractor,this.options.overscan,this.options.count,e,t]},(e,t,n,r,i)=>r===null||i===null?[]:e({startIndex:r,endIndex:i,overscan:t,count:n}),{key:!1,debug:()=>this.options.debug}),this.indexFromElement=e=>{let t=this.options.indexAttribute,n=e.getAttribute(t);return n?parseInt(n,10):(console.warn(`Missing attribute name '${t}={index}' on measured element.`),-1)},this.shouldMeasureDuringScroll=e=>{if(!this.scrollState||this.scrollState.behavior!==`smooth`)return!0;let t=this.scrollState.index??this.getVirtualItemForOffset(this.scrollState.lastTargetOffset)?.index;if(t!==void 0&&this.range){let n=Math.max(this.options.overscan,Math.ceil((this.range.endIndex-this.range.startIndex)/2)),r=Math.max(0,t-n),i=Math.min(this.options.count-1,t+n);return e>=r&&e<=i}return!0},this.measureElement=e=>{if(!e){this.elementsCache.forEach((e,t)=>{e.isConnected||(this.observer.unobserve(e),this.elementsCache.delete(t))});return}let t=this.indexFromElement(e),n=this.options.getItemKey(t),r=this.elementsCache.get(n);r!==e&&(r&&this.observer.unobserve(r),this.observer.observe(e),this.elementsCache.set(n,e)),(!this.isScrolling||this.scrollState)&&this.shouldMeasureDuringScroll(t)&&this.resizeItem(t,this.options.measureElement(e,void 0,this))},this.resizeItem=(e,t)=>{if(e<0||e>=this.options.count)return;let n,r,i,a=this._flatMeasurements;if(this.options.lanes===1&&a!==null)i=this.options.getItemKey(e),r=a[e*2],n=a[e*2+1];else{let t=this.measurementsCache[e];if(!t)return;i=t.key,r=t.start,n=t.size}let o=this.itemSizeCache.get(i)??n,s=t-o;if(s!==0){let a=this.options.anchorTo===`end`&&this.scrollState?.behavior!==`smooth`&&this.getVirtualDistanceFromEnd()<=this.options.scrollEndThreshold,c=a?this.getTotalSize():0,l=this.getScrollOffset()+this.scrollAdjustments,u=this.itemSizeCache.has(i)?r+o<=l&&this.scrollDirection!==`backward`:r<l,d=this.scrollState?.behavior!==`smooth`&&(this.shouldAdjustScrollPositionOnItemSizeChange===void 0?u:this.shouldAdjustScrollPositionOnItemSizeChange(this.measurementsCache[e]??{index:e,key:i,start:r,size:n,end:r+n,lane:0},s,this));(this.pendingMin===null||e<this.pendingMin)&&(this.pendingMin=e),this.itemSizeCache.set(i,t),this.itemSizeCacheVersion++;let f=!1;a?f=this.applyScrollAdjustment(this.getTotalSize()-c):d&&(f=this.applyScrollAdjustment(s)),this.notify(f)}},this.getVirtualItems=Ar(()=>[this.getVirtualIndexes(),this.getMeasurements()],(e,t)=>{let n=[];for(let r=0,i=e.length;r<i;r++){let i=t[e[r]];n.push(i)}return n},{key:!1,debug:()=>this.options.debug}),this.getVirtualItemForOffset=e=>{let t=this.getMeasurements();if(t.length===0)return;let n=this._flatMeasurements,r=this.options.lanes===1&&n!=null;return jr(t[qr(0,t.length-1,r?e=>n[e*2]:e=>jr(t[e]).start,e)])},this.getMaxScrollOffset=()=>{if(!this.scrollElement)return 0;if(`scrollHeight`in this.scrollElement)return this.options.horizontal?this.scrollElement.scrollWidth-this.scrollElement.clientWidth:this.scrollElement.scrollHeight-this.scrollElement.clientHeight;{let e=this.scrollElement.document.documentElement;return this.options.horizontal?e.scrollWidth-this.scrollElement.innerWidth:e.scrollHeight-this.scrollElement.innerHeight}},this.getVirtualDistanceFromEnd=()=>Math.max(this.getTotalSize()-this.getSize()-this.getScrollOffset(),0),this.getDistanceFromEnd=()=>Math.max(this.getMaxScrollOffset()-this.getScrollOffset(),0),this.isAtEnd=(e=this.options.scrollEndThreshold)=>this.getDistanceFromEnd()<=e,this.getOffsetForAlignment=(e,t,n=0)=>{if(!this.scrollElement)return 0;let r=this.getSize(),i=this.getScrollOffset();t===`auto`&&(t=e>=i+r?`end`:`start`),t===`center`?e+=(n-r)/2:t===`end`&&(e-=r);let a=this.getMaxScrollOffset();return Math.max(Math.min(a,e),0)},this.getOffsetForIndex=(e,t=`auto`)=>{e=Math.max(0,Math.min(e,this.options.count-1));let n=this.getSize(),r=this.getScrollOffset(),i=this.measurementsCache[e];if(!i)return;if(t===`auto`)if(i.end>=r+n-this.options.scrollPaddingEnd)t=`end`;else if(i.start<=r+this.options.scrollPaddingStart)t=`start`;else return[r,t];if(t===`end`&&e===this.options.count-1)return[this.getMaxScrollOffset(),t];let a=t===`end`?i.end+this.options.scrollPaddingEnd:i.start-this.options.scrollPaddingStart;return[this.getOffsetForAlignment(a,t,i.size),t]},this.scrollToOffset=(e,{align:t=`start`,behavior:n=`auto`}={})=>{this._iosDeferredAdjustment=0;let r=this.getOffsetForAlignment(e,t),i=this.now();this.scrollState={index:null,align:t,behavior:n,startedAt:i,lastTargetOffset:r,stableFrames:0},this._scrollToOffset(r,{adjustments:void 0,behavior:n}),this.scheduleScrollReconcile()},this.scrollToIndex=(e,{align:t=`auto`,behavior:n=`auto`}={})=>{this._iosDeferredAdjustment=0,e=Math.max(0,Math.min(e,this.options.count-1));let r=this.getOffsetForIndex(e,t);if(!r)return;let[i,a]=r,o=this.now();this.scrollState={index:e,align:a,behavior:n,startedAt:o,lastTargetOffset:i,stableFrames:0},this._scrollToOffset(i,{adjustments:void 0,behavior:n}),this.scheduleScrollReconcile()},this.scrollBy=(e,{behavior:t=`auto`}={})=>{let n=this.getScrollOffset()+e,r=this.now();this.scrollState={index:null,align:`start`,behavior:t,startedAt:r,lastTargetOffset:n,stableFrames:0},this._scrollToOffset(n,{adjustments:void 0,behavior:t}),this.scheduleScrollReconcile()},this.scrollToEnd=({behavior:e=`auto`}={})=>{if(this.options.count>0){this.scrollToIndex(this.options.count-1,{align:`end`,behavior:e});return}this.scrollToOffset(Math.max(this.getTotalSize()-this.getSize(),0),{behavior:e})},this.getTotalSize=()=>{let e=this.getMeasurements(),t;if(e.length===0)t=this.options.paddingStart;else if(this.options.lanes===1){let n=e.length-1,r=this._flatMeasurements;t=r==null?e[n]?.end??0:r[n*2]+r[n*2+1]}else{let n=Array(this.options.lanes).fill(null),r=e.length-1;for(;r>=0&&n.some(e=>e===null);){let t=e[r];n[t.lane]===null&&(n[t.lane]=t.end),r--}t=Math.max(...n.filter(e=>e!==null))}return Math.max(t-this.options.scrollMargin+this.options.paddingEnd,0)},this.takeSnapshot=()=>{let e=[];if(this.itemSizeCache.size===0)return e;let t=this.getMeasurements();for(let n of t)n&&this.itemSizeCache.has(n.key)&&e.push({index:n.index,key:n.key,start:n.start,size:n.size,end:n.end,lane:n.lane});return e},this._scrollToOffset=(e,{adjustments:t,behavior:n})=>{this._intendedScrollOffset=e+(t??0),this.options.scrollToFn(e,{behavior:n,adjustments:t},this)},this.measure=()=>{this.pendingMin=null,this.itemSizeCache.clear(),this.laneAssignments.clear(),this.itemSizeCacheVersion++,this.notify(!1)},this.setOptions(e)}applyScrollAdjustment(e,t){return e===0?!1:Fr()&&(this.isScrolling||this._iosTouching||this._iosJustTouchEnded)?(this._iosDeferredAdjustment+=e,!1):(this._scrollToOffset(this.getScrollOffset(),{adjustments:this.scrollAdjustments+=e,behavior:t}),this.scrollOffset!==null&&(this.scrollOffset+=this.scrollAdjustments,this.scrollOffset<0&&(this.scrollOffset=0),this.scrollAdjustments=0),!0)}scheduleScrollReconcile(){if(!this.targetWindow){this.scrollState=null;return}this.rafId??=this.targetWindow.requestAnimationFrame(()=>{this.rafId=null,this.reconcileScroll()})}reconcileScroll(){if(!this.scrollState||!this.scrollElement)return;if(this.now()-this.scrollState.startedAt>5e3){this.scrollState=null;return}let e=this.scrollState.index==null?void 0:this.getOffsetForIndex(this.scrollState.index,this.scrollState.align),t=e?e[0]:this.scrollState.lastTargetOffset,n=t!==this.scrollState.lastTargetOffset;if(!n&&Mr(t,this.getScrollOffset())){if(this.scrollState.stableFrames++,this.scrollState.stableFrames>=1){this.getScrollOffset()!==t&&this._scrollToOffset(t,{adjustments:void 0,behavior:`auto`}),this.scrollState=null;return}}else if(this.scrollState.stableFrames=0,n){let e=this.getSize()||600,n=Math.abs(t-this.getScrollOffset()),r=this.scrollState.behavior===`smooth`&&n>e;this.scrollState.lastTargetOffset=t,r||(this.scrollState.behavior=`auto`),this._scrollToOffset(t,{adjustments:void 0,behavior:r?`smooth`:`auto`})}this.scheduleScrollReconcile()}},qr=(e,t,n,r)=>{for(;e<=t;){let i=(e+t)/2|0,a=n(i);if(a<r)e=i+1;else if(a>r)t=i-1;else return i}return e>0?e-1:0};function Jr(e,t,n){let r=0;for(;r<=t;){let i=(r+t)/2|0,a=e[i*2];if(a<n)r=i+1;else if(a>n)t=i-1;else return i}return r>0?r-1:0}function Yr(e,t,n,r,i){let a=e.length-1;if(e.length<=r)return{startIndex:0,endIndex:a};if(r===1&&i!==null){let e=Jr(i,a,n),r=e,o=n+t;for(;r<a&&i[r*2]+i[r*2+1]<o;)r++;return{startIndex:e,endIndex:r}}let o=qr(0,a,t=>e[t].start,n),s=o;if(r===1)for(;s<a&&e[s].end<n+t;)s++;else if(r>1){let i=Array(r).fill(0);for(;s<a&&i.some(e=>e<n+t);){let t=e[s];i[t.lane]=t.end,s++}let c=Array(r).fill(n+t);for(;o>=0&&c.some(e=>e>=n);){let t=e[o];c[t.lane]=t.start,o--}o=Math.max(0,o-o%r),s=Math.min(a,s+(r-1-s%r))}return{startIndex:o,endIndex:s}}var Xr=typeof document<`u`?Z.useLayoutEffect:Z.useEffect;function Zr({useFlushSync:e=!0,directDomUpdates:t=!1,directDomUpdatesMode:n=`transform`,...r}){let i=Z.useReducer(e=>e+1,0)[1],a=Z.useRef({enabled:t,mode:n,container:null,lastSize:null,lastPositions:new WeakMap,prevRange:null});a.current.enabled=t,a.current.mode=n;let o=e=>{let t=a.current;if(!t.enabled||!t.container)return;let n=e.getTotalSize();if(n!==t.lastSize){t.lastSize=n;let r=e.options.horizontal?`width`:`height`;t.container.style[r]=`${n}px`}},s=e=>{let t=a.current;if(!t.enabled||!t.container)return;o(e);let n=!!e.options.horizontal,r=t.mode===`transform`,i=n?`left`:`top`,s=e.options.scrollMargin,c=e.getVirtualItems();for(let a of c){let o=a.start-s,c=e.elementsCache.get(a.key);c&&t.lastPositions.get(c)!==o&&(t.lastPositions.set(c,o),r?c.style.transform=n?`translate3d(${o}px, 0, 0)`:`translate3d(0, ${o}px, 0)`:c.style[i]=`${o}px`)}},c={...r,onChange:(t,n)=>{var o;let c=a.current,l=!0;if(c.enabled){s(t);let e=t.range,n=c.prevRange;l=!n||n.isScrolling!==t.isScrolling||n.startIndex!==e?.startIndex||n.endIndex!==e?.endIndex,l&&(c.prevRange=e?{startIndex:e.startIndex,endIndex:e.endIndex,isScrolling:t.isScrolling}:null)}l&&(e&&n?(0,Or.flushSync)(i):i()),(o=r.onChange)==null||o.call(r,t,n)}},[l]=Z.useState(()=>{let e=new Kr(c);return Object.assign(e,{containerRef:t=>{let n=a.current;if(n.container=t,n.lastSize=null,t&&n.enabled){let r=e.getTotalSize();n.lastSize=r;let i=e.options.horizontal?`width`:`height`;t.style[i]=`${r}px`}}})});return l.setOptions(c),Xr(()=>l._didMount(),[]),Xr(()=>(o(l),l._willUpdate())),Xr(()=>{s(l)}),l}function Qr(e){return Zr({observeElementRect:zr,observeElementOffset:Ur,scrollToFn:Gr,...e})}var $r=24;function ei(e){let t=!1,n,r,i=!0,a=t=>{i=t,e(t)},o=(e,t)=>{n=e.clientHeight,r=e.scrollHeight,e.scrollTo({behavior:t,top:e.scrollHeight}),a(!0)};return{handleConversationChange(e){t=!0,o(e,`auto`)},handleConversationRenderComplete(e){o(e,`auto`),t=!1},handleContentResize(e){n=e.clientHeight,r=e.scrollHeight,i&&o(e,`auto`)},handleScroll(e){if(t){o(e,`auto`);return}let s=n!==void 0&&e.clientHeight!==n,c=r!==void 0&&e.scrollHeight>r;if(n=e.clientHeight,r=e.scrollHeight,i&&(c||s)){o(e,`auto`);return}let l=e.scrollHeight-e.scrollTop-e.clientHeight;a(l<$r)},pauseFollowing(){a(!1)},scrollToBottom(e){o(e,`smooth`)}}}var ti=(0,Z.createContext)(null),ni={height:768,width:1024},ri=300,ii=24,ai=3;function oi(){let e=(0,Z.useContext)(ti);if(e===null)throw Error(`Conversation virtual components must be used within Conversation`);return e}function si({children:e,className:t=``,conversationId:n,onScroll:r,scrollToBottomSignal:i,style:a,...o}){let s=(0,Z.useRef)(null),c=(0,Z.useRef)(i),[l,u]=(0,Z.useState)(!0),[d,f]=(0,Z.useState)(0),p=(0,Z.useRef)(void 0),m=p.current??=ei(u),h=(0,Z.useCallback)(()=>{let e=s.current;e!==null&&m.scrollToBottom(e)},[m]),g=(0,Z.useCallback)(()=>{m.pauseFollowing()},[m]),_=(0,Z.useMemo)(()=>({atBottom:l,containerRef:s,pauseFollowing:g,scrollbarWidth:d,scrollToBottom:h}),[l,g,d,h]);return(0,Z.useLayoutEffect)(()=>{let e=s.current;if(e===null)return;m.handleConversationChange(e);let t=-1,n=0,r=0,i=0,a=()=>{m.handleContentResize(e);let o=e.scrollHeight;if(n=o===t?n+1:0,t=o,r+=1,n>=2||r>=60){m.handleConversationRenderComplete(e);return}i=requestAnimationFrame(a)};return i=requestAnimationFrame(a),()=>{cancelAnimationFrame(i)}},[m,n]),(0,Z.useLayoutEffect)(()=>{if(i===void 0||i===c.current)return;c.current=i;let e=s.current;e!==null&&m.scrollToBottom(e)},[m,i]),(0,Z.useEffect)(()=>{let e=s.current;if(e===null)return;let t=e.querySelector(`[data-conversation-content]`)??e.firstElementChild,n=()=>{let t=Math.max(0,e.offsetWidth-e.clientWidth);f(e=>e===t?e:t)},r=new ResizeObserver(()=>{n(),m.handleContentResize(e)});return n(),r.observe(e),t!==null&&r.observe(t),()=>{r.disconnect()}},[m]),(0,Q.jsx)(ti.Provider,{value:_,children:(0,Q.jsx)(`div`,{className:`relative min-h-0 flex-1 overflow-y-auto overscroll-contain ${t}`,onScroll:e=>{let t=e.currentTarget;m.handleScroll(t),r?.(e)},ref:s,role:`log`,"aria-live":`off`,style:{...a,overflowAnchor:`none`},...o,children:e})})}function ci({className:e=``,...t}){return(0,Q.jsx)(`div`,{className:`mx-auto flex w-full max-w-content flex-col px-4 py-6 sm:px-6 sm:py-7 ${e}`,...t})}function li({className:e=``,estimateSize:t,footer:n,getItemKey:r,items:i,renderNavigation:a,renderItem:o,...s}){let{containerRef:c,pauseFollowing:l,scrollbarWidth:u}=oi(),d=(0,Z.useRef)(0),f=(0,Z.useCallback)(()=>c.current,[c]),p=(0,Z.useCallback)(e=>t?.(i[e],e)??ri,[t,i]),m=(0,Z.useCallback)(e=>r(i[e],e),[r,i]),h=Qr({anchorTo:`end`,count:i.length,estimateSize:p,followOnAppend:`auto`,gap:ii,getItemKey:m,getScrollElement:f,initialRect:ni,overscan:ai,scrollEndThreshold:24}),g=(0,Z.useCallback)((e,t)=>{let n=c.current;if(n===null)return;cancelAnimationFrame(d.current);let r=()=>Array.from(n.querySelectorAll(`[data-conversation-anchor]`)).find(e=>e.dataset.conversationAnchor===t),i=r();if(i!==void 0){l(),i.scrollIntoView({block:`start`});return}l(),h.scrollToIndex(e,{align:`start`});let a=12,o=()=>{let t=r();if(t!==void 0){t.scrollIntoView({block:`start`});return}--a,a>0&&(h.scrollToIndex(e,{align:`start`}),d.current=requestAnimationFrame(o))};d.current=requestAnimationFrame(o)},[c,l,h]);return(0,Z.useEffect)(()=>()=>{cancelAnimationFrame(d.current)},[]),(0,Q.jsxs)(Q.Fragment,{children:[a?.(g,u,c),(0,Q.jsxs)(`div`,{className:`mx-auto w-full max-w-content px-4 py-6 sm:px-6 sm:py-7 ${e}`,"data-conversation-content":``,...s,children:[(0,Q.jsx)(`div`,{className:`relative w-full`,style:{height:h.getTotalSize()},children:h.getVirtualItems().map(e=>(0,Q.jsx)(`div`,{className:`absolute left-0 top-0 w-full`,"data-index":e.index,ref:h.measureElement,style:{transform:`translateY(${String(e.start)}px)`},children:o(i[e.index],e.index)},e.key))}),n===void 0?null:(0,Q.jsx)(`div`,{className:i.length===0?`space-y-6`:`mt-6 space-y-6`,children:n})]})]})}function ui({className:e=``,onClick:t,type:n=`button`,...r}){let i=(0,Z.useContext)(ti),{t:a}=k(`conversation`);return i?.atBottom===!1?(0,Q.jsxs)(X,{variant:`ghost`,className:`sticky bottom-3 left-1/2 z-10 grid size-8 -translate-x-1/2 place-items-center rounded-pill bg-raised text-muted-foreground shadow-floating transition-colors hover:bg-control-hover hover:text-foreground ${e}`,title:a(`agentComponents.scrollToBottom`),type:n,...r,onClick:e=>{i.scrollToBottom(),t?.(e)},children:[(0,Q.jsx)(ce,{className:`size-4`,"aria-hidden":`true`}),(0,Q.jsx)(`span`,{className:`sr-only`,children:a(`agentComponents.scrollToBottom`)})]}):null}function di({className:e=``,from:t,...n}){return(0,Q.jsx)(`article`,{className:`group/message flex w-full flex-col ${t===`user`?`items-end`:`items-start`} ${e}`,"data-role":t,...n})}function fi({className:e=``,...t}){return(0,Q.jsx)(`div`,{className:`max-w-full text-body leading-6 text-foreground group-data-[role=user]/message:max-w-[var(--ui-layout-message-width)] group-data-[role=user]/message:rounded-surface group-data-[role=user]/message:bg-control group-data-[role=user]/message:px-3.5 group-data-[role=user]/message:py-2.5 ${e}`,...t})}function pi({className:e=``,...t}){return(0,Q.jsx)(`div`,{className:`flex items-center gap-1 ${e}`,...t})}function mi({className:e=``,label:t,tooltip:n,type:r=`button`,...i}){return(0,Q.jsxs)(K,{children:[(0,Q.jsx)(q,{asChild:!0,children:(0,Q.jsx)(X,{variant:`ghost`,"aria-label":t??n,className:`grid size-7 place-items-center rounded-control text-muted-foreground transition-colors hover:bg-control-hover hover:text-foreground ${e}`,type:r,...i})}),n===void 0?null:(0,Q.jsx)(J,{children:n})]})}(0,Z.createContext)(null);var hi=(0,Z.createContext)(null);function gi({children:e,className:t=``,collapsible:n=!0,defaultOpen:r=!1,status:i,...a}){let o=(0,Z.useMemo)(()=>({collapsible:n,status:i}),[n,i]),s=`group/task w-full text-label text-foreground ${t}`;return(0,Q.jsx)(hi.Provider,{value:o,children:n?(0,Q.jsx)(`details`,{className:s,"data-ai-task":``,"data-status":i,open:r,...a,children:e}):(0,Q.jsx)(`div`,{className:s,"data-ai-task":``,"data-status":i,...a,children:e})})}var _i={completed:{icon:(0,Q.jsx)(C,{className:`size-3.5`,"aria-hidden":`true`}),labelKey:`agentComponents.status.completed`},error:{icon:(0,Q.jsx)(gn,{className:`size-3.5`,"aria-hidden":`true`}),labelKey:`agentComponents.status.error`},in_progress:{icon:(0,Q.jsx)(mn,{className:`size-3.5 animate-spin`,"aria-hidden":`true`}),labelKey:`agentComponents.status.inProgress`},pending:{icon:(0,Q.jsx)(g,{className:`size-3.5`,"aria-hidden":`true`}),labelKey:`agentComponents.status.pending`}};function vi({className:e=``,suffix:t,title:n,...r}){let i=(0,Z.useContext)(hi),{t:a}=k(`conversation`);if(i===null)throw Error(`TaskTrigger must be used within Task`);let o=_i[i.status],s=`flex min-h-9 w-full list-none items-center gap-2 py-1 [&::-webkit-details-marker]:hidden ${i.collapsible?`cursor-pointer`:``} ${e}`,c=(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(`span`,{className:`shrink-0 ${i.status===`error`?`text-danger`:`text-muted-foreground`}`,children:[o.icon,(0,Q.jsx)(`span`,{className:`sr-only`,children:a(o.labelKey)})]}),(0,Q.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-medium`,children:n}),t,i.collapsible?(0,Q.jsx)(S,{className:`size-3.5 shrink-0 text-muted-foreground transition-transform group-open/task:rotate-90`,"aria-hidden":`true`}):null]});return i.collapsible?(0,Q.jsx)(`summary`,{className:s,...r,children:c}):(0,Q.jsx)(`div`,{className:s,...r,children:c})}function yi({className:e=``,...t}){return(0,Q.jsx)(`div`,{className:`pb-1 pl-5 ${e}`,...t})}function bi({className:e=``,...t}){return(0,Q.jsx)(`div`,{className:`min-w-0 [overflow-wrap:anywhere] border-l border-separator py-1 pl-3 text-meta leading-5 text-muted-foreground ${e}`,...t})}function xi({onProjectChange:e,projectId:t,projects:n,scopeName:r}){let i=r??n.find(e=>e.id===t)?.name??``;return(0,Q.jsx)(`section`,{className:`grid min-h-0 flex-1 place-items-center px-6`,"aria-label":T.t(`timeline.conversation`,{ns:`conversation`}),children:(0,Q.jsxs)(`div`,{className:`w-full max-w-xl text-center`,children:[(0,Q.jsx)(wn,{"aria-hidden":`true`,className:`mx-auto size-12 text-muted-foreground/55`,strokeWidth:1.35}),(0,Q.jsxs)(`h2`,{className:`mt-5 flex flex-wrap items-center justify-center text-balance text-xl font-normal leading-tight text-foreground`,children:[T.t(`timeline.emptyBefore`,{ns:`conversation`}),(0,Q.jsxs)(`span`,{className:`group relative mx-1 inline-block max-w-full rounded-control focus-within:shadow-focus`,children:[(0,Q.jsx)(`span`,{"aria-hidden":`true`,className:`block max-w-full truncate whitespace-pre font-sans font-normal text-foreground underline decoration-current/35 underline-offset-4 transition-colors group-hover:decoration-current`,children:i}),r===void 0?(0,Q.jsx)(`select`,{"aria-label":T.t(`timeline.selectProject`,{ns:`conversation`}),className:`absolute inset-0 size-full min-w-0 cursor-pointer appearance-none opacity-0 outline-none`,onChange:n=>{let r=n.currentTarget.value;r!==t&&e(r)},value:t,children:n.map(e=>(0,Q.jsx)(`option`,{value:e.id,children:e.name},e.id))}):null]}),T.t(`timeline.emptyAfter`,{ns:`conversation`})]})]})})}function Si({message:e,role:t}){return(0,Q.jsx)(`section`,{"aria-label":T.t(`timeline.conversation`,{ns:`conversation`}),className:`grid min-h-0 flex-1 place-items-center px-6 text-sm text-muted-foreground`,role:t,children:e})}function Ci(e){return e===`pending`?`input-streaming`:e===`running`?`input-available`:e===`declined`?`output-denied`:e===`failed`||e===`interrupted`?`output-error`:`output-available`}function wi(e){return e===`pending`?`pending`:e===`running`?`in_progress`:e===`failed`||e===`declined`||e===`interrupted`?`error`:`completed`}function Ti(e){return typeof e==`string`?e:JSON.stringify(e,null,2)}function Ei({item:e,operation:t}){let n=ar(e.status,t.agents),r=or(e.status,t.agents);return(0,Q.jsx)(gi,{collapsible:!1,status:n,children:(0,Q.jsx)(vi,{title:`${Qn(t.name)} · ${r}`})})}var Di=1e3,Oi=new Map;function ki(e){let t=Oi.get(e);if(t!==void 0)return t;let n={full:new Intl.DateTimeFormat(e,{dateStyle:`medium`,timeStyle:`medium`}),time:new Intl.DateTimeFormat(e,{hour:`2-digit`,hour12:!1,minute:`2-digit`})};return Oi.set(e,n),n}function Ai(e){let t=Math.floor(e/3600),n=Math.floor(e%3600/60),r=e%60;return{dateTime:`PT${t>0?`${String(t)}H`:``}${n>0?`${String(n)}M`:``}${String(r)}S`,label:t>0?`${String(t)}h ${String(n)}m ${String(r)}s`:n>0?`${String(n)}m ${String(r)}s`:`${String(r)}s`}}function ji({completedAt:e,expanded:t,onToggle:n,startedAt:r}){let[i,a]=(0,Z.useState)(()=>Date.now());if((0,Z.useEffect)(()=>{if(r===null||e!==null)return;let t=globalThis.setInterval(()=>{a(Date.now())},Di);return()=>{globalThis.clearInterval(t)}},[e,r]),r===null)return null;let o=Date.parse(r),s=e===null?i:Date.parse(e);if(!Number.isFinite(o)||!Number.isFinite(s))return null;let c=Ai(Math.max(0,Math.floor((s-o)/1e3))),l=(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(`span`,{children:[T.t(`timeline.processing`,{ns:`conversation`}),`\xA0`]}),(0,Q.jsx)(`time`,{dateTime:c.dateTime,children:c.label})]}),u=`mb-4 flex w-full items-center border-b border-separator pb-2.5 text-label font-medium text-muted-foreground`;return n===void 0?(0,Q.jsx)(`div`,{className:u,"data-turn-processing-time":``,children:l}):(0,Q.jsxs)(`button`,{"aria-expanded":t??!1,"aria-label":T.t(t?`timeline.collapseProcess`:`timeline.expandProcess`,{ns:`conversation`}),className:`${u} cursor-pointer text-left transition-colors hover:text-foreground focus-visible:shadow-focus`,"data-turn-processing-time":``,onClick:n,type:`button`,children:[l,(0,Q.jsx)(S,{"aria-hidden":`true`,className:`ms-auto size-3.5 transition-transform ${t?`rotate-90`:``}`})]})}function Mi(e,t,n){return e===`user`?t.startedAt??n:t.completedAt??n}function Ni({lastTurnId:e,modeLabel:t,onForkTask:n,text:r,timestamp:i}){let[a,o]=(0,Z.useState)(!1),s=(0,Z.useRef)(null),c=(0,Z.useRef)(Le()),l=i===void 0?void 0:new Date(i),d=wt(),f=l===void 0?void 0:ki(d),p=()=>c.current.run(async()=>{try{await navigator.clipboard.writeText(r),ut()}catch(e){Qt(e)}}),m=()=>c.current.run(async()=>{if(!(e===void 0||n===void 0)){s.current??=u(),o(!0);try{await n(e,s.current),ut()}catch(e){Qt(e)}finally{o(!1)}}});return(0,Q.jsxs)(pi,{className:`mt-2 text-label text-muted-foreground`,children:[(0,Q.jsx)(mi,{label:T.t(`timeline.copyMessage`,{ns:`conversation`}),onClick:()=>{p()},tooltip:T.t(`timeline.copyMessage`,{ns:`conversation`}),children:(0,Q.jsx)(U,{className:`size-3.5`,"aria-hidden":`true`})}),e===void 0||n===void 0?null:(0,Q.jsx)(mi,{disabled:a,label:a?T.t(`timeline.forking`,{ns:`conversation`}):T.t(`timeline.fork`,{ns:`conversation`}),onClick:()=>{m()},tooltip:T.t(`timeline.fork`,{ns:`conversation`}),children:(0,Q.jsx)(Te,{className:`size-3.5`,"aria-hidden":`true`})}),t===void 0?null:(0,Q.jsx)(`span`,{children:t}),i===void 0||l===void 0?null:(0,Q.jsx)(`time`,{dateTime:i,title:f?.full.format(l),children:f?.time.format(l)})]})}var Pi=(0,Z.memo)(function({as:e=`p`,children:t,className:n=``,duration:r=2,spread:i=2,style:a,...o}){let s=(0,Z.useMemo)(()=>({"--ui-shimmer-duration":`${String(r)}s`,"--ui-shimmer-spread":`${String(i)}em`,...a}),[r,i,a]);return(0,Q.jsx)(e,{className:`agent-shimmer inline-block ${n}`,"data-agent-shimmer":``,style:s,...o,children:t})});Pi.displayName=`Shimmer`;function Fi(e){return e===`__CODEXLY_PENDING_COMMAND__`?T.t(`timeline.commandPending`,{ns:`conversation`}):e}function Ii(e){let t=e.findLast(({item:e})=>e.type===`command`||e.type===`tool`||e.type===`activity`?e.status===`pending`||e.status===`running`:e.type===`approval_review`&&e.status===`in_progress`)?.item;if(t?.type===`command`)return{label:Fi(t.command),type:`command`};if(t?.type===`tool`)return{label:t.name,type:`operation`};if(t?.type===`activity`)return{label:t.label,type:`operation`};if(t?.type===`approval_review`)return{label:T.t(`timeline.approvalReview.reviewing`,{ns:`conversation`}),type:`operation`};if(e.at(-1)?.item?.type===`plan`)return{label:T.t(`timeline.planGenerating`,{ns:`conversation`}),type:`operation`};let n=e.findLast(({item:e})=>e.type===`message`&&e.role===`assistant`)?.itemIndex??-1,r=e.findLast(({item:e,itemIndex:t})=>t>n&&(e.type===`command`||e.type===`tool`||e.type===`activity`&&e.transient!==!0))?.item;if(r?.type===`command`)return{label:Fi(r.command),type:`command`};if(r?.type===`tool`)return{label:r.name,type:`operation`};if(r?.type===`activity`)return{label:r.label,type:`operation`}}function Li({operation:e}){let t=e===void 0?T.t(`timeline.running`,{ns:`conversation`}):T.t(`timeline.runningOperation`,{ns:`conversation`,operation:e.label}),n=e===void 0?T.t(`timeline.aiRunning`,{ns:`conversation`}):T.t(`timeline.aiRunningOperation`,{ns:`conversation`,operation:e.label});return(0,Q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2 text-muted-foreground`,role:`status`,children:[e?.type===`command`?(0,Q.jsx)(kn,{"aria-hidden":`true`,className:`size-3.5 shrink-0`}):null,(0,Q.jsx)(Pi,{"aria-label":n,as:`span`,className:`min-w-0 truncate text-body-small`,children:t})]})}function Ri(e){let t=e.target;return t.type===`uncommitted_changes`?T.t(`timeline.reviewPrompt.uncommitted`,{ns:`conversation`}):t.type===`base_branch`?T.t(`timeline.reviewPrompt.baseBranch`,{branch:t.branch,ns:`conversation`}):t.type===`commit`?t.title===void 0?T.t(`timeline.reviewPrompt.commit`,{ns:`conversation`,sha:t.sha}):T.t(`timeline.reviewPrompt.commitWithTitle`,{ns:`conversation`,sha:t.sha,title:t.title}):T.t(`timeline.reviewPrompt.custom`,{instructions:t.instructions,ns:`conversation`})}function zi({item:e}){let t=T.t(`timeline.approvalReview.status.${e.status}`,{ns:`conversation`}),n=e.status===`in_progress`?`in_progress`:e.status===`approved`?`completed`:`error`;return(0,Q.jsxs)(gi,{collapsible:!0,defaultOpen:e.status!==`approved`,status:n,children:[(0,Q.jsx)(vi,{title:T.t(`timeline.approvalReview.title`,{ns:`conversation`,status:t})}),(0,Q.jsxs)(yi,{children:[(0,Q.jsx)(bi,{children:T.t(`timeline.approvalReview.actionDetail`,{action:T.t(`timeline.approvalReview.action.${e.action.type}`,{ns:`conversation`}),detail:e.action.detail,ns:`conversation`})}),e.riskLevel===void 0?null:(0,Q.jsx)(bi,{children:T.t(`timeline.approvalReview.risk`,{level:T.t(`timeline.approvalReview.riskLevel.${e.riskLevel}`,{ns:`conversation`}),ns:`conversation`})}),e.userAuthorization===void 0?null:(0,Q.jsx)(bi,{children:T.t(`timeline.approvalReview.authorization`,{level:T.t(`timeline.approvalReview.authorizationLevel.${e.userAuthorization}`,{ns:`conversation`}),ns:`conversation`})}),e.rationale===void 0?null:(0,Q.jsx)(bi,{children:T.t(`timeline.approvalReview.rationale`,{ns:`conversation`,rationale:e.rationale})})]})]})}function Bi({isLastTurnItem:e,role:t,turnStatus:n}){let r=t===`assistant`&&e&&n===`running`;return{isAnimating:r,mode:r?`streaming`:`static`}}var Vi=(0,Z.createContext)(`approval-requested`);function Hi(e){for(let t of Z.Children.toArray(e))if((0,Z.isValidElement)(t)&&t.type===Wi)return typeof t.props.children==`string`?t.props.children:T.t(`agentComponents.approval`,{ns:`conversation`});return T.t(`agentComponents.approval`,{ns:`conversation`})}function Ui({approval:e,children:t,className:n=``,state:r,...i}){let{t:a}=k(`conversation`),o=Hi(t);return(0,Q.jsx)(Vi.Provider,{value:r,children:(0,Q.jsx)(`section`,{"aria-label":a(`agentComponents.approvalRequest`,{title:o}),className:`w-full rounded-surface bg-control px-3.5 py-3 shadow-sm ${n}`,"data-approval-id":e.id,"data-state":r,...i,children:t})})}function Wi({children:e,className:t=``,...n}){return(0,Q.jsxs)(`h3`,{className:`flex items-center gap-2 text-label font-semibold text-foreground ${t}`,...n,children:[(0,Q.jsx)(On,{className:`size-4 text-muted-foreground`,"aria-hidden":`true`}),e]})}function Gi({className:e=``,...t}){return(0,Q.jsx)(`div`,{className:`mt-2 break-words rounded-control bg-raised px-3 py-2 text-body-small leading-5 text-foreground shadow-sm ${e}`,...t})}function Ki({children:e,className:t=``,...n}){let r=(0,Z.useContext)(Vi),{t:i}=k(`conversation`);return r!==`approval-rejected`&&r!==`approval-expired`?null:(0,Q.jsxs)(`div`,{className:`mt-2 flex items-center gap-1.5 text-label text-muted-foreground ${t}`,...n,children:[(0,Q.jsx)(gn,{className:`size-3.5`,"aria-hidden":`true`}),e??i(`agentComponents.approvalRejected`)]})}function qi({className:e=``,...t}){return(0,Q.jsx)(`div`,{className:`mt-3 flex flex-wrap justify-end gap-2 ${e}`,...t})}function Ji({className:e=``,ref:t,tone:n=`neutral`,type:r=`button`,...i}){return(0,Q.jsx)(X,{className:e,ref:t,size:`compact`,type:r,variant:n===`danger`?`destructive`:n===`primary`?`default`:`secondary`,...i})}var Yi=[`network`,`file_system`];function Xi(e,t){let n=new Set(e);return{grantedPermissions:Yi.filter(e=>n.has(e)),scope:t}}function Zi(e,t){return e.status===`expired`?`approval-expired`:e.status===`resolved`?`approval-resolved`:t?`approval-submitting`:`approval-requested`}function Qi(e){return Yi.filter(t=>t===`network`?e.permissions.network!==null:e.permissions.fileSystem!==null)}function $i({path:e}){let{t}=k(`workbench`);if(e.type===`path`||e.type===`glob`)return e.value;let n=e.kind===`root`?t(`pending.permissionRoot`):e.kind===`minimal`?t(`pending.permissionMinimal`):e.kind===`project_roots`?t(`pending.permissionProjectRoots`):e.kind===`tmpdir`?t(`pending.permissionTmpdir`):e.kind===`slash_tmp`?`/tmp`:e.path??t(`pending.permissionUnknownPath`);return e.subpath===null||e.subpath.length===0?n:`${n}/${e.subpath}`}function ea({permissions:e}){let{t}=k(`workbench`);return(0,Q.jsxs)(`div`,{className:`mt-2 space-y-1 pl-6 font-mono text-meta text-muted-foreground`,children:[[...(e.read??[]).map(e=>({access:`read`,path:e})),...(e.write??[]).map(e=>({access:`write`,path:e}))].map((e,n)=>(0,Q.jsxs)(`div`,{className:`break-all`,children:[(0,Q.jsx)(`span`,{className:`font-sans font-medium text-foreground`,children:t(`pending.permissionAccess.${e.access}`)}),` `,e.path]},`${e.access}:${e.path}:${String(n)}`)),e.entries.map((e,n)=>(0,Q.jsxs)(`div`,{className:`break-all`,children:[(0,Q.jsx)(`span`,{className:`font-sans font-medium text-foreground`,children:t(`pending.permissionAccess.${e.access}`)}),` `,(0,Q.jsx)($i,{path:e.path})]},`${e.access}:${String(n)}`)),e.globScanMaxDepth===null?null:(0,Q.jsx)(`div`,{className:`font-sans`,children:t(`pending.permissionGlobDepth`,{depth:e.globScanMaxDepth})})]})}function ta({interactive:e,onResolve:t,request:n}){let{t:r}=k(`workbench`),i=Qi(n),[a,o]=(0,Z.useState)(()=>new Set(i)),[s,c]=(0,Z.useState)(!1),[l,d]=(0,Z.useState)(),f=(0,Z.useRef)(null),p=(0,Z.useRef)(Le()),m=e&&n.status===`pending`&&!s,h=m&&a.size>0;(0,Z.useEffect)(()=>{h&&f.current?.focus()},[h,n.requestId]);let g=e=>p.current.run(async()=>{if(!m||e!==`deny`&&a.size===0)return;let r=Xi(e===`deny`?[]:[...a],e===`deny`?`turn`:e),i=JSON.stringify(r),o=l?.fingerprint===i?l:{fingerprint:i,key:u()};d(o),c(!0);try{await t(n,r,o.key),ut()}catch(e){Qt(e),c(!1)}}),_=(e,t)=>{o(n=>{let r=new Set(n);return t?r.add(e):r.delete(e),r})};return(0,Q.jsxs)(Ui,{approval:{id:n.requestId},state:Zi(n,s),children:[(0,Q.jsx)(Wi,{children:r(`pending.permissionApproval`)}),(0,Q.jsxs)(Gi,{children:[(0,Q.jsxs)(`div`,{className:`space-y-3`,children:[n.permissions.network===null?null:(0,Q.jsx)(`div`,{children:(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(Kt,{"aria-label":r(`pending.networkPermission`),checked:a.has(`network`),disabled:!m,id:`${n.requestId}-network`,onCheckedChange:e=>{_(`network`,e===!0)}}),(0,Q.jsx)(`label`,{className:`font-medium`,htmlFor:`${n.requestId}-network`,children:r(`pending.networkPermission`)})]})}),n.permissions.fileSystem===null?null:(0,Q.jsxs)(`div`,{children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(Kt,{"aria-label":r(`pending.fileSystemPermission`),checked:a.has(`file_system`),disabled:!m,id:`${n.requestId}-file-system`,onCheckedChange:e=>{_(`file_system`,e===!0)}}),(0,Q.jsx)(`label`,{className:`font-medium`,htmlFor:`${n.requestId}-file-system`,children:r(`pending.fileSystemPermission`)})]}),(0,Q.jsx)(ea,{permissions:n.permissions.fileSystem})]})]}),n.reason===null?null:(0,Q.jsx)(`p`,{className:`mt-2 text-label text-muted-foreground`,children:n.reason})]}),n.status===`expired`?(0,Q.jsx)(Ki,{children:r(`pending.expired`)}):(0,Q.jsxs)(Q.Fragment,{children:[e?null:(0,Q.jsx)(`p`,{className:`mt-2 text-label text-muted-foreground`,children:r(`pending.previousPending`)}),(0,Q.jsxs)(qi,{children:[(0,Q.jsx)(Ji,{disabled:!m,onClick:()=>void g(`deny`),tone:`danger`,children:r(`pending.deny`)}),(0,Q.jsx)(Ji,{disabled:!h,onClick:()=>void g(`session`),children:r(`pending.allowSession`)}),(0,Q.jsx)(Ji,{disabled:!h,onClick:()=>void g(`turn`),ref:f,tone:`primary`,children:r(`pending.allowTurn`)})]})]})]})}function na(e,t,n=u){let r=JSON.stringify(t);return e?.fingerprint===r?e:{fingerprint:r,key:n()}}function ra(e,t){return e.status===`expired`?`approval-expired`:e.status===`resolved`?`approval-resolved`:t?`approval-submitting`:`approval-requested`}function ia({interactive:e,onResolve:t,request:n}){let[r,i]=(0,Z.useState)(!1),[a,o]=(0,Z.useState)(),s=(0,Z.useRef)(Le()),c=e&&n.status===`pending`&&!r;return{canSubmit:c,resolve:e=>s.current.run(async()=>{if(!c)return;let r=na(a,e);o(r),i(!0);try{await t(n,e,r.key),ut()}catch(e){Qt(e),i(!1)}}),submitting:r}}function aa(e){let t={};for(let n of e)n.type===`boolean`?t[n.id]=n.defaultValue??!1:n.type===`multi_select`?t[n.id]=n.defaultValue:n.defaultValue===null?n.required&&n.type===`string`&&(t[n.id]=``):t[n.id]=n.defaultValue;return t}function oa({field:e}){return e.description===null?null:(0,Q.jsx)(`p`,{className:`mt-0.5 text-meta text-muted-foreground`,children:e.description})}function sa(e){return e.format===`email`?`email`:e.format===`uri`?`url`:e.format===`date`?`date`:`text`}function ca({content:e,controlPrefix:t,disabled:n,field:r,setContent:i}){let a=`mcp-field-${t}-${r.id}`,o=e=>{i(t=>e===void 0?Object.fromEntries(Object.entries(t).filter(([e])=>e!==r.id)):{...t,[r.id]:e})};if(r.type===`boolean`)return(0,Q.jsxs)(`label`,{className:`flex min-h-11 cursor-pointer items-center gap-2.5 rounded-control bg-raised px-3 py-2 text-label text-foreground`,htmlFor:a,children:[(0,Q.jsx)(`input`,{checked:e[r.id]===!0,disabled:n,id:a,onChange:e=>{o(e.target.checked)},type:`checkbox`}),(0,Q.jsxs)(`span`,{children:[(0,Q.jsx)(`span`,{className:`block font-medium`,children:r.title}),(0,Q.jsx)(oa,{field:r})]})]});if(r.type===`select`){let t=r.options.findIndex(t=>t.value===e[r.id]);return(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`label`,{className:`text-label font-medium text-foreground`,htmlFor:a,children:r.title}),(0,Q.jsx)(oa,{field:r}),(0,Q.jsxs)(`select`,{className:`mt-2 h-11 w-full rounded-control border border-separator-strong bg-raised px-2.5 text-label text-foreground outline-none focus-visible:border-brand focus-visible:shadow-focus workbench:h-8`,disabled:n,id:a,onChange:e=>{let t=r.options[Number(e.target.value)];o(t?.value)},required:r.required,value:t<0?``:String(t),children:[(0,Q.jsx)(`option`,{disabled:r.required,value:``,children:`--`}),r.options.map((e,t)=>(0,Q.jsx)(`option`,{value:t,children:e.label},e.value))]})]})}if(r.type===`multi_select`){let t=e[r.id],i=Array.isArray(t)?t:[];return(0,Q.jsxs)(`fieldset`,{children:[(0,Q.jsx)(`legend`,{className:`text-label font-medium text-foreground`,children:r.title}),(0,Q.jsx)(oa,{field:r}),(0,Q.jsx)(`div`,{className:`mt-2 grid grid-cols-1 gap-2 @sm:grid-cols-2`,children:r.options.map(e=>(0,Q.jsxs)(`label`,{className:`flex min-h-11 cursor-pointer items-center gap-2 rounded-control bg-raised px-3 py-2 text-label text-foreground`,children:[(0,Q.jsx)(`input`,{checked:i.includes(e.value),disabled:n,onChange:t=>{o(t.target.checked?[...i,e.value]:i.filter(t=>t!==e.value))},type:`checkbox`}),e.label]},e.value))})]})}let s=e[r.id];return(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`label`,{className:`text-label font-medium text-foreground`,htmlFor:a,children:r.title}),(0,Q.jsx)(oa,{field:r}),(0,Q.jsx)(_t,{className:`mt-2 max-workbench:h-11`,disabled:n,id:a,max:r.type===`string`?void 0:r.maximum??void 0,maxLength:r.type===`string`?r.maxLength??void 0:void 0,min:r.type===`string`?void 0:r.minimum??void 0,minLength:r.type===`string`?r.minLength??void 0:void 0,onChange:e=>{if(r.type===`string`){o(e.target.value);return}o(e.target.value===``?void 0:e.target.valueAsNumber)},required:r.required,step:r.type===`integer`?1:r.type===`number`?`any`:void 0,type:r.type===`string`?sa(r):`number`,value:typeof s==`number`||typeof s==`string`?s:``,variant:`compact`})]})}function la({interactive:e,onResolve:t,request:n}){let{t:r}=k(`workbench`),[i,a]=(0,Z.useState)(()=>aa(n.fields)),{canSubmit:o,resolve:s,submitting:c}=ia({interactive:e,onResolve:t,request:n});return(0,Q.jsxs)(Ui,{approval:{id:n.requestId},className:`@container`,state:ra(n,c),children:[(0,Q.jsx)(Wi,{children:r(`pending.mcpForm`,{server:n.serverName})}),(0,Q.jsx)(Gi,{children:n.message}),n.status===`expired`?(0,Q.jsx)(Ki,{children:r(`pending.expired`)}):(0,Q.jsxs)(`form`,{className:`mt-3 space-y-3`,onSubmit:e=>{e.preventDefault(),s({action:`accept`,content:i})},children:[n.fields.map(t=>(0,Q.jsx)(ca,{content:i,controlPrefix:n.requestId,disabled:!e||c,field:t,setContent:a},t.id)),e?null:(0,Q.jsx)(`p`,{className:`text-label text-muted-foreground`,children:r(`pending.previousPending`)}),(0,Q.jsxs)(qi,{children:[(0,Q.jsx)(Ji,{disabled:!o,onClick:()=>void s({action:`cancel`,content:null}),type:`button`,children:r(`pending.cancel`)}),(0,Q.jsx)(Ji,{disabled:!o,onClick:()=>void s({action:`decline`,content:null}),tone:`danger`,type:`button`,children:r(`pending.deny`)}),(0,Q.jsx)(Ji,{disabled:!o,tone:`primary`,type:`submit`,children:r(`pending.submitAnswers`)})]})]})]})}function ua({interactive:e,onResolve:t,request:n}){let{t:r}=k(`workbench`),{canSubmit:i,resolve:a,submitting:o}=ia({interactive:e,onResolve:t,request:n});return(0,Q.jsxs)(Ui,{approval:{id:n.requestId},state:ra(n,o),children:[(0,Q.jsx)(Wi,{children:r(`pending.mcpRequest`,{server:n.serverName})}),(0,Q.jsxs)(Gi,{children:[(0,Q.jsx)(`p`,{children:n.message}),n.mode===`unsupported`?(0,Q.jsx)(`p`,{className:`mt-2 text-label text-muted-foreground`,children:r(`pending.unsupportedForm`)}):null]}),n.status===`expired`?(0,Q.jsx)(Ki,{children:r(`pending.expired`)}):(0,Q.jsxs)(Q.Fragment,{children:[e?null:(0,Q.jsx)(`p`,{className:`mt-2 text-label text-muted-foreground`,children:r(`pending.previousPending`)}),(0,Q.jsxs)(qi,{children:[(0,Q.jsx)(Ji,{disabled:!i,onClick:()=>void a({action:`cancel`,content:null}),children:r(`pending.cancel`)}),(0,Q.jsx)(Ji,{disabled:!i,onClick:()=>void a({action:`decline`,content:null}),tone:`danger`,children:r(`pending.deny`)}),n.mode===`url`?(0,Q.jsx)(X,{asChild:!0,size:`compact`,children:(0,Q.jsxs)(`a`,{"aria-disabled":!i,href:n.url,onClick:e=>{if(!i){e.preventDefault();return}a({action:`accept`,content:{}})},rel:`noreferrer noopener`,target:`_blank`,children:[(0,Q.jsx)(ve,{"aria-hidden":`true`}),r(`pending.openUrl`)]})}):null]})]})]})}function da(e){return e.request.mode===`form`?(0,Q.jsx)(la,{...e,request:e.request}):(0,Q.jsx)(ua,{...e})}function fa(e,t){return e.status===`expired`?`approval-expired`:e.status===`resolved`?`approval-resolved`:t?`approval-submitting`:`approval-requested`}function pa(e){switch(e){case`http`:return`HTTP`;case`https`:return`HTTPS`;case`socks5Tcp`:return`SOCKS5 TCP`;case`socks5Udp`:return`SOCKS5 UDP`}}function ma({interactive:e,onResolve:t,request:n}){let{t:r}=k(`workbench`),[i,a]=(0,Z.useState)(!1),[o,s]=(0,Z.useState)(),c=(0,Z.useRef)(null),l=(0,Z.useRef)(Le()),u=n.type===`command_approval`?n.networkAccess:null,d=u===null?n.type===`command_approval`?n.kind===`write_stdin`?r(`pending.terminalInputApproval`):r(`pending.commandApproval`):r(`pending.fileChangeApproval`):r(`pending.networkApproval`),f=u===null?n.type===`command_approval`?[n.command,n.cwd].filter(Boolean).join(`
3
+ `):n.grantRoot??r(`pending.fileChangeFallback`):`${pa(u.protocol)}\n${u.host}`,p=e&&n.status===`pending`&&!i,m=p&&n.availableDecisions.includes(`allow`);(0,Z.useEffect)(()=>{m&&c.current?.focus()},[m,n.requestId]);let h=e=>l.current.run(async()=>{if(!p)return;let r={decision:e},i=na(o,r);s(i),a(!0);try{await t(n,r,i.key),ut()}catch(e){Qt(e),a(!1)}});return(0,Q.jsxs)(Ui,{approval:{id:n.requestId},state:fa(n,i),children:[(0,Q.jsx)(Wi,{children:d}),(0,Q.jsxs)(Gi,{children:[(0,Q.jsx)(`pre`,{className:`whitespace-pre-wrap font-mono text-meta`,children:f}),n.type===`command_approval`&&n.additionalPermissions!=null?(0,Q.jsxs)(`div`,{className:`mt-3 space-y-2 border-t border-border pt-2`,children:[(0,Q.jsx)(`p`,{className:`text-label font-medium text-foreground`,children:r(`pending.additionalPermissions`)}),n.additionalPermissions.network===null?null:(0,Q.jsx)(`p`,{className:`text-label text-muted-foreground`,children:r(`pending.networkPermission`)}),n.additionalPermissions.fileSystem===null?null:(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`p`,{className:`text-label text-muted-foreground`,children:r(`pending.fileSystemPermission`)}),(0,Q.jsx)(ea,{permissions:n.additionalPermissions.fileSystem})]})]}):null,n.reason===null?null:(0,Q.jsx)(`p`,{className:`mt-2 text-label text-muted-foreground`,children:n.reason})]}),n.status===`expired`?(0,Q.jsx)(Ki,{children:r(`pending.expired`)}):(0,Q.jsxs)(Q.Fragment,{children:[e?null:(0,Q.jsx)(`p`,{className:`mt-2 text-label text-muted-foreground`,children:r(`pending.previousPending`)}),(0,Q.jsxs)(qi,{children:[n.availableDecisions.includes(`deny`)?(0,Q.jsx)(Ji,{disabled:!p,onClick:()=>void h(`deny`),tone:`danger`,children:r(`pending.deny`)}):null,n.availableDecisions.includes(`allow_for_session`)?(0,Q.jsx)(Ji,{disabled:!p,onClick:()=>void h(`allow_for_session`),children:r(`pending.allowSession`)}):null,n.availableDecisions.includes(`allow`)?(0,Q.jsx)(Ji,{disabled:!p,onClick:()=>void h(`allow`),ref:c,tone:`primary`,children:r(`pending.allow`)}):null]})]})]})}function ha({interactive:e,onResolve:t,request:n}){let{t:r}=k(`workbench`),[i,a]=(0,Z.useState)({}),[o,s]=(0,Z.useState)(!1),[c,l]=(0,Z.useState)(),u=(0,Z.useRef)(Le()),d=n.questions.every(e=>(i[e.id]??``).trim()!==``),f=e&&n.status===`pending`&&d&&!o,p=!e||o,m=()=>u.current.run(async()=>{if(!f)return;s(!0);let e={answers:Object.fromEntries(n.questions.map(e=>[e.id,[(i[e.id]??``).trim()]]))},r=na(c,e);l(r);try{await t(n,e,r.key),ut()}catch(e){Qt(e),s(!1)}});return n.status===`pending`?(0,Q.jsxs)(`form`,{className:`w-full rounded-surface bg-control px-3.5 py-3 shadow-sm`,onSubmit:e=>{e.preventDefault(),m()},children:[(0,Q.jsx)(`h3`,{className:`text-label font-semibold text-foreground`,children:r(`pending.inputRequired`)}),(0,Q.jsx)(`div`,{className:`mt-3 space-y-4`,children:n.questions.map(e=>(0,Q.jsxs)(`fieldset`,{children:[(0,Q.jsx)(`legend`,{className:`text-body-small font-medium text-foreground`,children:e.prompt}),(0,Q.jsx)(`p`,{className:`mt-0.5 text-meta text-muted-foreground`,children:e.header}),e.type===`choice`?(0,Q.jsxs)(`div`,{className:`mt-2 space-y-1.5`,children:[e.options.map((t,n)=>(0,Q.jsxs)(`label`,{"aria-label":t.label,className:`flex cursor-pointer items-start gap-2 rounded-control bg-raised px-2.5 py-2 text-label`,htmlFor:`${e.id}-option-${String(n)}`,children:[(0,Q.jsx)(`input`,{className:`mt-0.5 size-4 shrink-0 accent-primary`,checked:i[e.id]===t.label,disabled:p,id:`${e.id}-option-${String(n)}`,name:e.id,onChange:()=>{a(n=>({...n,[e.id]:t.label}))},type:`radio`,value:t.label}),(0,Q.jsxs)(`span`,{children:[(0,Q.jsx)(`span`,{className:`block font-medium text-foreground`,children:t.label}),(0,Q.jsx)(`span`,{className:`block text-muted-foreground`,children:t.description})]})]},t.label)),e.isOther?(0,Q.jsx)(_t,{"aria-label":r(`pending.otherAnswer`,{header:e.header}),disabled:p,onChange:t=>{a(n=>({...n,[e.id]:t.target.value}))},placeholder:r(`pending.other`),type:`text`,value:e.options.some(t=>t.label===i[e.id])?``:i[e.id]??``,variant:`compact`}):null]}):e.type===`confirmation`?(0,Q.jsx)(`div`,{className:`mt-2 grid grid-cols-2 rounded-control bg-raised p-0.5`,children:e.options.map(t=>(0,Q.jsx)(X,{variant:`ghost`,"aria-pressed":i[e.id]===t.label,className:`h-8 rounded-control text-label font-medium text-foreground aria-pressed:bg-foreground aria-pressed:text-raised`,disabled:p,onClick:()=>{a(n=>({...n,[e.id]:t.label}))},type:`button`,children:t.label},t.label))}):(0,Q.jsx)(_t,{"aria-label":e.prompt,className:`mt-2`,disabled:p,onChange:t=>{a(n=>({...n,[e.id]:t.target.value}))},type:e.isSecret?`password`:`text`,value:i[e.id]??``,variant:`compact`})]},e.id))}),e?null:(0,Q.jsx)(`p`,{className:`mt-3 text-label text-muted-foreground`,children:r(`pending.previousPending`)}),(0,Q.jsx)(`div`,{className:`mt-3 flex justify-end`,children:(0,Q.jsx)(X,{disabled:!f,size:`compact`,type:`submit`,children:r(`pending.submitAnswers`)})})]}):(0,Q.jsx)(`section`,{className:`w-full rounded-surface bg-control px-3.5 py-3 text-label text-muted-foreground`,children:n.status===`expired`?r(`pending.expired`):r(`pending.processed`)})}function ga(e){return e.request.status===`resolved`?null:e.request.type===`user_input`?(0,Q.jsx)(ha,{interactive:e.interactive,onResolve:e.onResolve,request:e.request}):e.request.type===`permissions_approval`?(0,Q.jsx)(ta,{interactive:e.interactive,onResolve:e.onResolve,request:e.request}):e.request.type===`mcp_elicitation`?(0,Q.jsx)(da,{interactive:e.interactive,onResolve:e.onResolve,request:e.request}):(0,Q.jsx)(ma,{interactive:e.interactive,onResolve:e.onResolve,request:e.request})}function _a({change:e,onOpen:t}){let n=nn(e.path),r=T.t(`timeline.fileOperation.${e.kind}`,{ns:`conversation`}),{additions:i,removals:a}=rn(e);return(0,Q.jsxs)(X,{variant:`ghost`,"aria-haspopup":`dialog`,"aria-label":T.t(`timeline.fileChange`,{additions:i,name:n,ns:`conversation`,operation:r,removals:a}),className:`flex min-h-9 w-full items-center gap-2 rounded-control bg-control px-2.5 text-left text-label text-foreground transition-colors hover:bg-control-hover`,"data-file-change":e.kind,onClick:()=>{t(e)},type:`button`,children:[(0,Q.jsx)(W,{className:`size-3.5 shrink-0 text-muted-foreground`,"aria-hidden":`true`}),(0,Q.jsx)(`span`,{className:`shrink-0 text-muted-foreground`,children:r}),(0,Q.jsx)(`span`,{className:`min-w-0 truncate font-medium`,children:n}),(0,Q.jsxs)(`span`,{className:`ml-auto shrink-0 text-diff-added`,children:[`+`,i]}),(0,Q.jsxs)(`span`,{className:`shrink-0 text-diff-removed`,children:[`-`,a]})]})}function va({changes:e,onOpenFileDiff:t,onReviewFileChanges:n}){let[r,i]=(0,Z.useState)(!1),a=tn(e),o=r?a.changes:a.changes.slice(0,3),s=a.changes.length-o.length;return(0,Q.jsxs)(`section`,{"aria-label":T.t(`timeline.changedFiles`,{count:a.changes.length,ns:`conversation`}),className:`mt-4 w-full overflow-hidden rounded-surface border border-separator-strong bg-raised shadow-control`,children:[(0,Q.jsxs)(`header`,{className:`flex min-h-16 items-center gap-3 px-3 py-2.5 shadow-toolbar`,children:[(0,Q.jsx)(`span`,{className:`grid size-9 shrink-0 place-items-center rounded-control bg-control text-muted-foreground`,children:(0,Q.jsx)(xe,{className:`size-4`,"aria-hidden":`true`})}),(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Q.jsx)(`h3`,{className:`text-body-small font-semibold`,children:T.t(`timeline.editedFiles`,{count:a.changes.length,ns:`conversation`})}),(0,Q.jsxs)(`p`,{className:`mt-0.5 text-label text-muted-foreground`,children:[(0,Q.jsxs)(`span`,{className:`text-diff-added`,children:[`+`,a.additions]}),` `,(0,Q.jsxs)(`span`,{className:`text-diff-removed`,children:[`-`,a.removals]})]})]}),(0,Q.jsx)(X,{variant:`ghost`,"aria-haspopup":`dialog`,className:`h-8 rounded-control bg-control px-3 text-label font-semibold text-foreground transition-colors hover:bg-control-hover`,onClick:()=>{n(a.changes)},type:`button`,children:T.t(`timeline.review`,{ns:`conversation`})})]}),(0,Q.jsxs)(`div`,{className:`space-y-1 p-2`,children:[o.map(e=>(0,Q.jsx)(_a,{change:e,onOpen:t},e.path)),s>0?(0,Q.jsx)(X,{variant:`ghost`,className:`h-8 w-full rounded-control px-2.5 text-left text-label font-medium text-muted-foreground transition-colors hover:bg-control-hover hover:text-foreground`,onClick:()=>{i(!0)},type:`button`,children:T.t(`timeline.moreFiles`,{count:s,ns:`conversation`})}):null,r&&a.changes.length>3?(0,Q.jsx)(X,{variant:`ghost`,className:`h-8 w-full rounded-control px-2.5 text-left text-label font-medium text-muted-foreground transition-colors hover:bg-control-hover hover:text-foreground`,onClick:()=>{i(!1)},type:`button`,children:T.t(`timeline.collapseFiles`,{ns:`conversation`})}):null]})]})}function ya(e,t){if(t===`running`)return[];let n=e.findLastIndex(e=>e.type===`message`&&e.role===`assistant`&&e.phase===`final_answer`);return n<0?[]:e.slice(0,n).flatMap(e=>e.type===`message`?e.role===`assistant`&&e.phase===`commentary`?[e.id]:[]:e.type===`file_change`||e.type===`review`||e.type===`activity`&&e.transient===!0?[]:[e.id])}function ba({error:e,isLoading:t,onLoad:n}){return(0,Q.jsxs)(`div`,{className:`mx-auto flex w-full max-w-content flex-col items-center gap-2 px-4 pt-5 sm:px-6 sm:pt-6`,children:[(0,Q.jsxs)(X,{disabled:t,onClick:()=>void n(),size:`compact`,type:`button`,variant:`ghost`,children:[t?(0,Q.jsx)(h,{"aria-hidden":`true`,className:`animate-spin`}):(0,Q.jsx)(R,{"aria-hidden":`true`}),T.t(t?`timeline.loadingOlder`:`timeline.loadOlder`,{ns:`conversation`})]}),e===null?null:(0,Q.jsx)(`p`,{className:`text-label text-danger`,role:`alert`,children:T.t(`timeline.loadOlderError`,{ns:`conversation`})})]})}var xa=44,Sa={height:360,width:44},Ca=2;function wa(e){return e.type===`review`?Ri(e):e.type!==`message`||e.role!==`user`?null:[...(e.skills??[]).map(e=>`$${e.name}`),e.text,...(e.attachments??[]).map(e=>e.name)].filter(e=>e.length>0).join(`
4
+ `)}function Ta(e){let t=[];return e.turnIds.forEach((n,r)=>{for(let i of e.itemKeysByTurnId[n]??[]){let n=e.itemStoresByKey.get(i)?.peek();if(n===void 0)continue;let a=wa(n);a!==null&&t.push({anchorId:i,preview:a,turnIndex:r})}}),t}function Ea(e,t){let[n,r]=(0,Z.useState)(e[0]?.anchorId??null),i=(0,Z.useRef)(0);return(0,Z.useEffect)(()=>{let n=t.current;if(n===null)return;let a=new Map(e.map((e,t)=>[e.anchorId,t])),o=()=>{let t=n.getBoundingClientRect().top+Math.min(n.clientHeight*.25,160),i=0;for(let e of n.querySelectorAll(`[data-conversation-anchor]`)){let n=e.dataset.conversationAnchor,r=n===void 0?void 0:a.get(n);if(r!==void 0){if(e.getBoundingClientRect().top>t)break;i=r}}r(e[i]?.anchorId??null)},s=()=>{cancelAnimationFrame(i.current),i.current=requestAnimationFrame(o)};s(),n.addEventListener(`scroll`,s,{passive:!0});let c=new ResizeObserver(s);return c.observe(n),()=>{n.removeEventListener(`scroll`,s),c.disconnect(),cancelAnimationFrame(i.current)}},[e,t]),n}function Da({items:e,onNavigate:t,scrollContainerRef:n,scrollbarWidth:r}){let{t:i}=k(`conversation`),a=(0,Z.useRef)(null),o=(0,Z.useCallback)(()=>a.current,[]),s=Qr({count:e.length,estimateSize:()=>xa,getItemKey:t=>e[t]?.anchorId??t,getScrollElement:o,initialRect:Sa,overscan:Ca}),c=Ea(e,n);if(e.length<=1)return null;let l=(0,Q.jsx)(`nav`,{"aria-label":i(`timeline.quickNavigation`),className:`task-timeline-navigation`,"data-timeline-navigation":``,ref:a,style:{"--conversation-scrollbar-width":`${String(r)}px`},children:(0,Q.jsx)(`div`,{className:`relative w-full`,style:{height:s.getTotalSize()},children:s.getVirtualItems().map(n=>{let r=e[n.index];return r===void 0?null:(0,Q.jsx)(`div`,{className:`absolute left-0 top-0 flex h-2 w-full`,"data-index":n.index,ref:s.measureElement,style:{transform:`translateY(${String(n.start)}px)`},children:(0,Q.jsxs)(K,{delayDuration:100,children:[(0,Q.jsx)(q,{asChild:!0,children:(0,Q.jsx)(X,{"aria-label":i(`timeline.jumpToMessage`,{index:n.index+1}),"aria-current":r.anchorId===c?`location`:void 0,className:`h-2 w-full justify-end`,"data-timeline-navigation-item":r.anchorId,onClick:()=>{t(r)},size:`embedded`,type:`button`,variant:`embedded`,children:(0,Q.jsx)(`span`,{"aria-hidden":`true`,className:`task-timeline-navigation-marker`})})}),(0,Q.jsx)(J,{className:`border border-separator-strong bg-raised px-3 py-2 text-body leading-6 text-foreground shadow-floating`,side:`left`,children:(0,Q.jsx)(`span`,{className:`line-clamp-6 whitespace-pre-wrap`,children:r.preview})})]})},n.key)})})});return typeof document>`u`?l:(0,Or.createPortal)(l,document.querySelector(`.workbench-shell`)??document.body)}function Oa(e){return e?.type===`command`||e?.type===`tool`}function ka(e,t){return e.filter(e=>{let n=t.get(e);return n?.peek().type!==`reasoning`||(n.readReasoningSummary()?.trim().length??0)>0})}function Aa(e,t){let n=[],r=[],i=()=>{let e=r[0];e!==void 0&&(n.push(r.length===1?{itemKey:e,type:`item`}:{itemKeys:r,key:e,type:`operation_group`}),r=[])};for(let a of e){if(Oa(t(a))){r.push(a);continue}i(),n.push({itemKey:a,type:`item`})}return i(),n}function ja(e){let t=0,n=0,r=!1,i=0;for(let a of e)Oa(a)&&(a.type===`command`?t+=1:i+=1,a.status===`pending`||a.status===`running`?r=!0:(a.status===`failed`||a.status===`declined`||a.status===`interrupted`)&&(n+=1));return{commandCount:t,failedCount:n,isActive:r,toolCount:i}}function Ma(e){let t=e.toolCount>0&&e.commandCount>0?T.t(`timeline.operationGroup.summary`,{commandCount:e.commandCount,ns:`conversation`,toolCount:e.toolCount}):e.toolCount>0?T.t(`timeline.operationGroup.toolsOnly`,{count:e.toolCount,ns:`conversation`}):T.t(`timeline.operationGroup.commandsOnly`,{count:e.commandCount,ns:`conversation`});return e.failedCount===0?t:`${t}${T.t(`timeline.operationGroup.failed`,{count:e.failedCount,ns:`conversation`})}`}function Na({collapseAfterItemKey:e,children:t,itemKeys:n,store:r}){let[i,a]=(0,Z.useState)(!1),o=(0,Z.useMemo)(()=>{let e=r.getState().itemStoresByKey;return n.flatMap(t=>e.get(t)??[])},[n,r]),s=(0,Z.useMemo)(()=>e===void 0?void 0:r.getState().itemStoresByKey.get(e),[e,r]),c=(0,Z.useMemo)(()=>s===void 0?o:[...o,s],[s,o]),l=(0,Z.useCallback)(e=>{let t=c.map(t=>t.subscribe(e));return()=>{for(let e of t)e()}},[c]),u=(0,Z.useCallback)(()=>c.map(e=>e.getState().revision).join(`,`),[c]);(0,Z.useSyncExternalStore)(l,u,u);let d=ja(o.map(e=>e.peek())),f=s?.peek();if(!(f?.type===`message`&&f.role===`assistant`&&f.text.trim().length>0))return(0,Q.jsx)(Z.Fragment,{children:t});if(d.isActive)return(0,Q.jsx)(`div`,{className:`space-y-4`,"data-operation-group-active":``,children:t});let p=Ma(d);return(0,Q.jsxs)(`details`,{className:`group/operation w-full`,"data-operation-group":``,onToggle:e=>{a(e.currentTarget.open)},open:i,children:[(0,Q.jsxs)(`summary`,{"aria-expanded":i,"aria-label":T.t(i?`timeline.operationGroup.collapse`:`timeline.operationGroup.expand`,{ns:`conversation`,summary:p}),className:`flex min-h-9 cursor-pointer list-none items-center gap-2 rounded-surface bg-control px-3 py-1 text-label text-foreground transition-colors hover:bg-control-hover focus-visible:shadow-focus [&::-webkit-details-marker]:hidden`,children:[(0,Q.jsx)(xn,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-muted-foreground`}),(0,Q.jsx)(`span`,{className:`min-w-0 flex-1 font-medium`,children:p}),d.failedCount===0?(0,Q.jsx)(pn,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-muted-foreground`}):(0,Q.jsx)(gn,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-danger`}),(0,Q.jsx)(S,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-muted-foreground transition-transform group-open/operation:rotate-90`})]}),i?(0,Q.jsx)(`div`,{className:`mt-2 space-y-4 border-l border-separator pl-3`,children:t}):null]})}function Pa({item:e}){return(0,Q.jsx)(`div`,{className:`min-w-0 space-y-3 border-l-2 border-separator-strong pl-3 text-body`,children:e.questions?.map((e,t)=>(0,Q.jsxs)(`div`,{className:`min-w-0 space-y-1`,children:[(0,Q.jsx)(`p`,{className:`whitespace-pre-wrap font-medium [overflow-wrap:anywhere]`,children:e.title}),e.options===null?null:(0,Q.jsx)(`ul`,{className:`list-inside list-disc text-muted-foreground`,children:e.options.map((e,t)=>(0,Q.jsx)(`li`,{className:`whitespace-pre-wrap [overflow-wrap:anywhere]`,children:e},t))})]},t))})}var Fa=(0,Z.createContext)(null);function Ia({children:e,className:t=``,defaultOpen:n,isStreaming:r=!1,open:i,...a}){let o=(0,Z.useMemo)(()=>({isStreaming:r}),[r]);return(0,Q.jsx)(Fa.Provider,{value:o,children:(0,Q.jsx)(`details`,{className:Y(`group/plan w-full overflow-hidden rounded-surface border border-separator bg-panel`,t),"data-ai-plan":``,"data-ai-plan-card":``,"data-streaming":r,open:i??n,...a,children:e})})}function La({className:e=``,...t}){return(0,Q.jsx)(`summary`,{className:Y(`flex min-h-14 cursor-pointer list-none items-start gap-4 px-4 py-3.5 text-foreground transition-colors hover:bg-control-hover/45 [&::-webkit-details-marker]:hidden`,e),...t})}function Ra({children:e,className:t=``,...n}){return(0,Q.jsx)(`h3`,{className:`text-body-small font-semibold ${(0,Z.useContext)(Fa)?.isStreaming===!0?`animate-pulse`:``} ${t}`,...n,children:e})}function za({children:e,className:t=``,...n}){return(0,Q.jsx)(`p`,{className:`mt-1 text-body-small leading-5 text-muted-foreground ${(0,Z.useContext)(Fa)?.isStreaming===!0?`animate-pulse`:``} ${t}`,...n,children:e})}function Ba({children:e,className:t=``,...n}){return(0,Q.jsx)(`span`,{"aria-hidden":`true`,className:`ml-auto inline-flex size-7 shrink-0 items-center justify-center text-muted-foreground ${t}`,...n,children:e??(0,Q.jsx)(P,{className:`size-4`})})}function Va({className:e=``,...t}){return(0,Q.jsx)(`div`,{className:Y(`overflow-x-auto border-t border-separator px-4 py-4`,e),...t})}function Ha({className:e=``,...t}){return(0,Q.jsx)(`div`,{className:Y(`flex items-center px-4 pb-4`,e),...t})}function Ua({className:e=``,...t}){return(0,Q.jsx)(`div`,{className:Y(`flex items-center`,e),...t})}var Wa=(0,Z.createContext)(null);function Ga({children:e,className:t,defaultOpen:n=!1,isStreaming:r=!1,...i}){let a=(0,Z.useMemo)(()=>({isStreaming:r}),[r]);return(0,Q.jsx)(Wa.Provider,{value:a,children:(0,Q.jsx)(`details`,{className:Y(`group/reasoning w-full text-muted-foreground`,t),"data-ai-reasoning":``,"data-streaming":r,open:r||n,...i,children:e})})}function Ka({className:e,title:t,...n}){let r=(0,Z.useContext)(Wa);if(r===null)throw Error(`ReasoningTrigger must be used within Reasoning`);return(0,Q.jsxs)(`summary`,{className:Y(`flex min-h-9 cursor-pointer list-none items-center gap-2 py-1 text-label transition-colors hover:text-foreground [&::-webkit-details-marker]:hidden`,e),...n,children:[r.isStreaming?(0,Q.jsx)(h,{"aria-hidden":`true`,className:`size-3.5 shrink-0 animate-spin`}):(0,Q.jsx)(fn,{"aria-hidden":`true`,className:`size-3.5 shrink-0`}),(0,Q.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-medium`,children:t}),(0,Q.jsx)(S,{"aria-hidden":`true`,className:`size-3.5 shrink-0 transition-transform group-open/reasoning:rotate-90`})]})}function qa({className:e,...t}){return(0,Q.jsx)(`div`,{className:Y(`ml-1.5 border-l border-separator py-1 pl-4 text-body-small leading-6 text-muted-foreground`,e),...t})}var Ja=e(t(((e,t)=>{var n=[[{color:`0, 0, 0`,class:`ansi-black`},{color:`187, 0, 0`,class:`ansi-red`},{color:`0, 187, 0`,class:`ansi-green`},{color:`187, 187, 0`,class:`ansi-yellow`},{color:`0, 0, 187`,class:`ansi-blue`},{color:`187, 0, 187`,class:`ansi-magenta`},{color:`0, 187, 187`,class:`ansi-cyan`},{color:`255,255,255`,class:`ansi-white`}],[{color:`85, 85, 85`,class:`ansi-bright-black`},{color:`255, 85, 85`,class:`ansi-bright-red`},{color:`0, 255, 0`,class:`ansi-bright-green`},{color:`255, 255, 85`,class:`ansi-bright-yellow`},{color:`85, 85, 255`,class:`ansi-bright-blue`},{color:`255, 85, 255`,class:`ansi-bright-magenta`},{color:`85, 255, 255`,class:`ansi-bright-cyan`},{color:`255, 255, 255`,class:`ansi-bright-white`}]],r=/(https?:\/\/(?:[A-Za-z0-9#;/?:@=+$',_.!~*()[\]-]|&amp;|%[A-Fa-f0-9]{2})+)/gm;t.exports=class e{static escapeForHtml(t){return new e().escapeForHtml(t)}static linkify(t){return new e().linkify(t)}static ansiToHtml(t,n){return new e().ansiToHtml(t,n)}static ansiToJson(t,n){return new e().ansiToJson(t,n)}static ansiToText(t){return new e().ansiToText(t)}constructor(){this.fg=this.bg=this.fg_truecolor=this.bg_truecolor=null,this.bright=0,this.decorations=[]}setupPalette(){this.PALETTE_COLORS=[];for(let e=0;e<2;++e)for(let t=0;t<8;++t)this.PALETTE_COLORS.push(n[e][t].color);let e=[0,95,135,175,215,255],t=(t,n,r)=>e[t]+`, `+e[n]+`, `+e[r];for(let e=0;e<6;++e)for(let n=0;n<6;++n)for(let r=0;r<6;++r)this.PALETTE_COLORS.push(t(e,n,r));let r=8;for(let e=0;e<24;++e,r+=10)this.PALETTE_COLORS.push(r+`, `+r+`, `+r)}escapeForHtml(e){return e.replace(/[&<>\"]/gm,e=>e==`&`?`&amp;`:e==`"`?`&quot;`:e==`<`?`&lt;`:e==`>`?`&gt;`:``)}linkify(e){return e.replace(r,e=>`<a href="${e}">${e}</a>`)}ansiToHtml(e,t){return this.process(e,t,!0)}ansiToJson(e,t){return t||={},t.json=!0,t.clearLine=!1,this.process(e,t,!0)}ansiToText(e){return this.process(e,{},!1)}process(e,t,n){let r=this,i=e.split(/\033\[/),a=i.shift();t??={},t.clearLine=/\r/.test(e);let o=i.map(e=>this.processChunk(e,t,n));if(t&&t.json){let e=r.processChunkJson(``);return e.content=a,e.clearLine=t.clearLine,o.unshift(e),t.remove_empty&&(o=o.filter(e=>!e.isEmpty())),o}else o.unshift(a);return o.join(``)}processChunkJson(e,t,r){t=t===void 0?{}:t;let i=t.use_classes=t.use_classes!==void 0&&t.use_classes,a=t.key=i?`class`:`color`,o={content:e,fg:null,bg:null,fg_truecolor:null,bg_truecolor:null,isInverted:!1,clearLine:t.clearLine,decoration:null,decorations:[],was_processed:!1,isEmpty:()=>!o.content},s=e.match(/^([!\x3c-\x3f]*)([\d;]*)([\x20-\x2c]*[\x40-\x7e])([\s\S]*)/m);if(!s)return o;o.content=s[4];let c=s[2].split(`;`);if(s[1]!==``||s[3]!==`m`||!r)return o;let l=this;for(;c.length>0;){let e=c.shift(),t=parseInt(e);if(isNaN(t)||t===0)l.fg=l.bg=null,l.decorations=[];else if(t===1)l.decorations.push(`bold`);else if(t===2)l.decorations.push(`dim`);else if(t===3)l.decorations.push(`italic`);else if(t===4)l.decorations.push(`underline`);else if(t===5)l.decorations.push(`blink`);else if(t===7)l.decorations.push(`reverse`);else if(t===8)l.decorations.push(`hidden`);else if(t===9)l.decorations.push(`strikethrough`);else if(t===21)l.removeDecoration(`bold`);else if(t===22)l.removeDecoration(`bold`),l.removeDecoration(`dim`);else if(t===23)l.removeDecoration(`italic`);else if(t===24)l.removeDecoration(`underline`);else if(t===25)l.removeDecoration(`blink`);else if(t===27)l.removeDecoration(`reverse`);else if(t===28)l.removeDecoration(`hidden`);else if(t===29)l.removeDecoration(`strikethrough`);else if(t===39)l.fg=null;else if(t===49)l.bg=null;else if(t>=30&&t<38)l.fg=n[0][t%10][a];else if(t>=90&&t<98)l.fg=n[1][t%10][a];else if(t>=40&&t<48)l.bg=n[0][t%10][a];else if(t>=100&&t<108)l.bg=n[1][t%10][a];else if(t===38||t===48){let e=t===38;if(c.length>=1){let t=c.shift();if(t===`5`&&c.length>=1){let t=parseInt(c.shift());if(t>=0&&t<=255)if(!i)this.PALETTE_COLORS||l.setupPalette(),e?l.fg=this.PALETTE_COLORS[t]:l.bg=this.PALETTE_COLORS[t];else{let r=t>=16?`ansi-palette-`+t:n[+(t>7)][t%8].class;e?l.fg=r:l.bg=r}}else if(t===`2`&&c.length>=3){let t=parseInt(c.shift()),n=parseInt(c.shift()),r=parseInt(c.shift());if(t>=0&&t<=255&&n>=0&&n<=255&&r>=0&&r<=255){let a=t+`, `+n+`, `+r;i?e?(l.fg=`ansi-truecolor`,l.fg_truecolor=a):(l.bg=`ansi-truecolor`,l.bg_truecolor=a):e?l.fg=a:l.bg=a}}}}}return l.fg===null&&l.bg===null&&l.decorations.length===0?o:(o.fg=l.fg,o.bg=l.bg,o.fg_truecolor=l.fg_truecolor,o.bg_truecolor=l.bg_truecolor,o.decorations=l.decorations,o.decoration=l.decorations.slice(-1).pop()||null,o.was_processed=!0,o)}processChunk(e,t,r){t||={};let i=this.processChunkJson(e,t,r),a=t.use_classes;if(i.decorations=i.decorations.filter(e=>{if(e===`reverse`){i.fg||=n[0][7][a?`class`:`color`],i.bg||=n[0][0][a?`class`:`color`];let e=i.fg;i.fg=i.bg,i.bg=e;let t=i.fg_truecolor;return i.fg_truecolor=i.bg_truecolor,i.bg_truecolor=t,i.isInverted=!0,!1}return!0}),t.json)return i;if(i.isEmpty())return``;if(!i.was_processed)return i.content;let o=[],s=[],c=[],l={},u=e=>{let t=[],n;for(n in e)e.hasOwnProperty(n)&&t.push(`data-`+n+`="`+this.escapeForHtml(e[n])+`"`);return t.length>0?` `+t.join(` `):``};return i.isInverted&&(l[`ansi-is-inverted`]=`true`),i.fg&&(a?(o.push(i.fg+`-fg`),i.fg_truecolor!==null&&(l[`ansi-truecolor-fg`]=i.fg_truecolor,i.fg_truecolor=null)):o.push(`color:rgb(`+i.fg+`)`)),i.bg&&(a?(o.push(i.bg+`-bg`),i.bg_truecolor!==null&&(l[`ansi-truecolor-bg`]=i.bg_truecolor,i.bg_truecolor=null)):o.push(`background-color:rgb(`+i.bg+`)`)),i.decorations.forEach(e=>{if(a){s.push(`ansi-`+e);return}e===`bold`?s.push(`font-weight:bold`):e===`dim`?s.push(`opacity:0.5`):e===`italic`?s.push(`font-style:italic`):e===`hidden`?s.push(`visibility:hidden`):e===`strikethrough`?c.push(`line-through`):c.push(e)}),c.length&&s.push(`text-decoration:`+c.join(` `)),a?`<span class="`+o.concat(s).join(` `)+`"`+u(l)+`>`+i.content+`</span>`:`<span style="`+o.concat(s).join(`;`)+`"`+u(l)+`>`+i.content+`</span>`}removeDecoration(e){let t=this.decorations.indexOf(e);t>=0&&this.decorations.splice(t,1)}}}))(),1);function Ya(e){return typeof e==`string`?e:e.materialize()}function Xa(){let e=new Ja.default,t=[],n=``,r=()=>{e=new Ja.default,t=[],n=``};return{parse(i,a=0){let o=i[a];if(o===void 0)return r(),[];let s=t.findIndex(e=>e.id===o.id&&e.text===o.text);t.length>0&&s<0?r():s>0&&(t=t.slice(s));let c=0;for(let e of t){let t=i[a+c];if(t?.id!==e.id||t.text!==e.text)break;c+=1}if(c<t.length){let i=t[c];i===void 0?r():(e=Za(i.leadingState),n=i.leadingPendingSequence,t=t.slice(0,c))}let l=a+c;for(;l<i.length;l+=1){let r=i[l];if(r===void 0)continue;let a=n,o=Qa(e),{complete:s,pending:c}=eo(`${n}${r.text}`);n=c;let u=e.ansiToJson(s,{remove_empty:!0}),d=u[0];d!==void 0&&!s.startsWith(`\x1B[`)&&$a(d,o),t.push({entries:u,id:r.id,leadingPendingSequence:a,leadingState:o,text:r.text})}return t.flatMap(e=>e.entries)}}}function Za(e){let t=new Ja.default,n=t;return n.bg=e.bg,n.bg_truecolor=e.bg_truecolor,n.decorations=[...e.decorations],n.fg=e.fg,n.fg_truecolor=e.fg_truecolor,t}function Qa(e){let t=e;return{bg:t.bg,bg_truecolor:t.bg_truecolor,decorations:[...t.decorations],fg:t.fg,fg_truecolor:t.fg_truecolor}}function $a(e,t){t.fg===null&&t.bg===null&&t.decorations.length===0||(t.fg!==null&&(e.fg=t.fg),t.bg!==null&&(e.bg=t.bg),t.fg_truecolor!==null&&(e.fg_truecolor=t.fg_truecolor),t.bg_truecolor!==null&&(e.bg_truecolor=t.bg_truecolor),e.decorations=[...t.decorations],e.decoration=t.decorations.at(-1)??null,e.was_processed=!0)}function eo(e){let t=e.lastIndexOf(`\x1B`);if(t<0)return{complete:e,pending:``};let n=e.slice(t);if(n===`\x1B`||n===`\x1B[`)return{complete:e.slice(0,t),pending:n};if(!n.startsWith(`\x1B[`))return{complete:e,pending:``};for(let t=2;t<n.length;t+=1){let r=n.charCodeAt(t);if(r>=64&&r<=126)return{complete:e,pending:``}}return{complete:e.slice(0,t),pending:n}}var to=(0,Z.createContext)(null);function no(e){let t=new Set(e.decorations),n=e.fg_truecolor||e.fg,r=e.bg_truecolor||e.bg,i=t.has(`reverse`),a=i?r:n,o=i?n:r,s=[t.has(`underline`)?`underline`:null,t.has(`strikethrough`)?`line-through`:null].filter(e=>e!==null);return{...o?{backgroundColor:`rgb(${o})`}:{},...a?{color:`rgb(${a})`}:{},...t.has(`bold`)?{fontWeight:700}:{},...t.has(`dim`)?{opacity:.5}:{},...t.has(`hidden`)?{visibility:`hidden`}:{},...t.has(`italic`)?{fontStyle:`italic`}:{},...s.length>0?{textDecorationLine:s.join(` `)}:{}}}function ro({output:e}){let t=(0,Z.useRef)(Xa());return(0,Q.jsx)(`span`,{className:`whitespace-pre-wrap break-words`,children:(0,Z.useMemo)(()=>typeof e==`string`?Ja.default.ansiToJson(e,{remove_empty:!0}):t.current.parse(e.chunks,e.startIndex),[e]).map((e,t)=>{let n=no(e);return Object.keys(n).length===0?e.content:(0,Q.jsx)(`span`,{style:n,children:e.content},`${t.toString()}:${e.content.length.toString()}`)})})}function io(){let e=(0,Z.useContext)(to);if(e===null)throw Error(`Terminal components must be rendered inside Terminal`);return e}function ao({autoScroll:e=!0,children:t,className:n=``,isStreaming:r=!1,output:i,...a}){let o=(0,Z.useMemo)(()=>({autoScroll:e,isStreaming:r,output:i}),[e,r,i]);return(0,Q.jsx)(to.Provider,{value:o,children:(0,Q.jsx)(`div`,{className:`mb-2 flex flex-col overflow-hidden rounded-surface border border-terminal-separator bg-terminal text-terminal-foreground shadow-sm ${n}`,"data-slot":`terminal`,"data-streaming":r,"data-terminal":``,...a,children:t})})}function oo({className:e=``,...t}){return(0,Q.jsx)(`div`,{className:`flex min-h-9 items-center justify-between border-b border-terminal-separator bg-terminal-header px-3 ${e}`,"data-slot":`terminal-header`,...t})}function so({children:e,className:t=``,...n}){return(0,Q.jsxs)(`div`,{className:`flex items-center gap-2 text-meta font-medium text-terminal-muted ${t}`,"data-slot":`terminal-title`,...n,children:[(0,Q.jsx)(An,{className:`size-3.5`,"aria-hidden":`true`}),e]})}function co({className:e=``,...t}){return(0,Q.jsx)(`div`,{className:`ml-auto flex items-center gap-1 ${e}`,"data-slot":`terminal-actions`,...t})}function lo({children:e,className:t=``,onClick:n,onCopy:r,onError:i,timeout:a=2e3,...o}){let{output:s}=io(),{t:c}=k(`conversation`),[l,u]=(0,Z.useState)(!1),d=(0,Z.useRef)(null);(0,Z.useEffect)(()=>()=>{d.current!==null&&clearTimeout(d.current)},[]);let f=async()=>{try{await navigator.clipboard.writeText(Ya(s)),u(!0),r?.(),d.current!==null&&clearTimeout(d.current),d.current=setTimeout(()=>{u(!1)},a)}catch(e){i?.(e instanceof Error?e:Error(`Unable to copy terminal output`))}};return(0,Q.jsx)(X,{size:`icon-sm`,variant:`ghost`,"aria-label":c(l?`agentComponents.copiedOutput`:`agentComponents.copyOutput`),className:`text-terminal-muted hover:bg-terminal-control-hover hover:text-terminal-foreground ${t}`,"data-slot":`terminal-copy-button`,onClick:e=>{n?.(e),e.defaultPrevented||f()},title:c(l?`agentComponents.copied`:`agentComponents.copyOutput`),type:`button`,...o,children:e??(l?(0,Q.jsx)(C,{className:`size-3.5`,"aria-hidden":`true`}):(0,Q.jsx)(U,{className:`size-3.5`,"aria-hidden":`true`}))})}var uo=8;function fo(e){return e.scrollHeight-e.clientHeight-e.scrollTop<=uo}function po({children:e,className:t=``,onScroll:n,...r}){let{autoScroll:i,isStreaming:a,output:o}=io(),{t:s}=k(`conversation`),c=(0,Z.useRef)(null),l=(0,Z.useRef)(!0);return(0,Z.useEffect)(()=>{if(!i||!l.current)return;let e=c.current;e!==null&&(e.scrollTop=e.scrollHeight)},[i,typeof o==`string`?o:o.version]),(0,Q.jsxs)(`div`,{"aria-busy":a,"aria-live":a?`polite`:`off`,className:`max-h-96 overflow-auto overscroll-contain p-3 font-mono text-meta leading-5 ${t}`,"data-slot":`terminal-content`,onScroll:e=>{n?.(e),e.defaultPrevented||(l.current=fo(e.currentTarget))},ref:c,...r,children:[(0,Q.jsxs)(`pre`,{className:`m-0 whitespace-pre-wrap break-words font-inherit`,children:[(0,Q.jsx)(ro,{output:o}),a?(0,Q.jsx)(`span`,{"aria-label":s(`agentComponents.streamingOutput`),className:`ml-0.5 inline-block h-3.5 w-1.5 animate-pulse bg-terminal-foreground align-middle`,role:`status`}):null]}),e]})}var mo=(0,Z.createContext)(null);function ho({className:e=``,defaultOpen:t=!1,onToggle:n,...r}){let[i,a]=(0,Z.useState)(t);return(0,Q.jsx)(mo.Provider,{value:i,children:(0,Q.jsx)(`details`,{className:`group/tool w-full rounded-surface bg-control px-3 py-1 ${e}`,onToggle:e=>{n?.(e),e.defaultPrevented||a(e.currentTarget.open)},open:i,...r})})}var go={"approval-requested":{icon:(0,Q.jsx)(_n,{className:`size-3.5 text-warning`,"aria-hidden":`true`}),labelKey:`agentComponents.status.waitingApproval`},"approval-responded":{icon:(0,Q.jsx)(pn,{className:`size-3.5 text-brand`,"aria-hidden":`true`}),labelKey:`agentComponents.status.responded`},"input-available":{icon:(0,Q.jsx)(mn,{className:`size-3.5 animate-spin`,"aria-hidden":`true`}),labelKey:`agentComponents.status.running`},"input-streaming":{icon:(0,Q.jsx)(g,{className:`size-3.5`,"aria-hidden":`true`}),labelKey:`agentComponents.status.pending`},"output-available":{icon:(0,Q.jsx)(pn,{className:`size-3.5`,"aria-hidden":`true`}),labelKey:`agentComponents.status.completed`},"output-denied":{icon:(0,Q.jsx)(gn,{className:`size-3.5 text-warning`,"aria-hidden":`true`}),labelKey:`agentComponents.status.denied`},"output-error":{icon:(0,Q.jsx)(gn,{className:`size-3.5 text-danger`,"aria-hidden":`true`}),labelKey:`agentComponents.status.error`}};function _o({className:e=``,state:t,title:n,...r}){let i=go[t],{t:a}=k(`conversation`);return(0,Q.jsxs)(`summary`,{className:`flex min-h-9 cursor-pointer list-none items-center gap-2 text-label text-foreground [&::-webkit-details-marker]:hidden ${e}`,...r,children:[(0,Q.jsx)(Mn,{className:`size-3.5 text-muted-foreground`,"aria-hidden":`true`}),(0,Q.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-medium`,children:n}),(0,Q.jsxs)(`span`,{className:`inline-flex items-center gap-1 ${t===`output-error`?`text-danger`:`text-muted-foreground`}`,children:[i.icon,a(i.labelKey)]}),(0,Q.jsx)(S,{className:`size-3.5 text-muted-foreground transition-transform group-open/tool:rotate-90`,"aria-hidden":`true`})]})}function vo({children:e}){return(0,Z.useContext)(mo)===!1?null:e}function yo({className:e=``,...t}){return(0,Q.jsx)(vo,{children:(0,Q.jsx)(`div`,{className:`mb-2 space-y-4 rounded-control bg-raised px-3 py-3 text-muted-foreground shadow-sm ${e}`,...t})})}function bo(e){try{return JSON.stringify(e,null,2)}catch{return String(e)}}function xo({className:e=``,input:t,...n}){let{t:r}=k(`conversation`);return(0,Q.jsxs)(`div`,{className:`space-y-2 overflow-hidden ${e}`,...n,children:[(0,Q.jsx)(`h4`,{className:`text-meta font-medium uppercase tracking-wide text-muted-foreground`,children:r(`agentComponents.toolInput`)}),(0,Q.jsx)(fe,{code:bo(t),language:`json`})]})}function So({className:e=``,errorText:t,output:n,...r}){let{t:i}=k(`conversation`);if(n===void 0&&t===void 0)return null;let a=(0,Z.isValidElement)(n)?n:n===void 0?null:(0,Q.jsx)(fe,{code:bo(n),language:`json`});return(0,Q.jsxs)(`div`,{className:`space-y-2 ${e}`,...r,children:[(0,Q.jsx)(`h4`,{className:`text-meta font-medium uppercase tracking-wide ${t===void 0?`text-muted-foreground`:`text-danger`}`,children:i(t===void 0?`agentComponents.toolResult`:`agentComponents.toolError`)}),(0,Q.jsxs)(`div`,{className:`overflow-x-auto rounded-surface text-meta [&_table]:w-full ${t===void 0?`text-foreground`:`bg-danger/10 p-3 text-danger`}`,children:[t===void 0?null:(0,Q.jsx)(`div`,{className:`whitespace-pre-wrap`,children:t}),a]})]})}function Co({attachment:e,children:t,className:n,url:r}){return(0,Q.jsx)(`a`,{"aria-label":T.t(`timeline.downloadAttachment`,{name:e.name,ns:`conversation`}),className:Y(`block max-w-full rounded-control transition-opacity hover:opacity-90 focus-visible:shadow-focus`,n),"data-message-attachment":e.kind,download:e.name,href:r,children:t??(0,Q.jsxs)(z,{className:`h-12 max-w-64 pe-3 shadow-control`,data:{...e,previewUrl:r},children:[(0,Q.jsx)(re,{}),(0,Q.jsx)(B,{})]})})}function wo({name:e,triggerChildren:t,triggerClassName:n,url:r}){let{t:i}=k(`conversation`),[a,o]=(0,Z.useState)(!1),s=(0,Z.useId)();return(0,Q.jsxs)(gt,{onOpenChange:o,open:a,children:[(0,Q.jsx)(Vt,{asChild:!0,children:(0,Q.jsx)(X,{"aria-label":i(`timeline.showImage`,{name:e}),className:n??`block size-40 max-w-full cursor-zoom-in overflow-hidden rounded-surface bg-control p-0 shadow-control transition-opacity hover:opacity-90 focus-visible:shadow-focus`,"data-message-attachment":`image`,type:`button`,variant:`ghost`,children:t??(0,Q.jsx)(`img`,{alt:e,className:`size-full object-cover`,decoding:`async`,height:160,loading:`lazy`,src:r,width:160})})}),(0,Q.jsx)(yt,{"aria-labelledby":s,className:`h-[min(92dvh,54rem)] max-w-[72rem] overflow-hidden p-0`,"data-message-image-preview":``,children:(0,Q.jsxs)(`section`,{className:`grid size-full grid-rows-[auto_minmax(0,1fr)] bg-raised`,children:[(0,Q.jsxs)(`header`,{className:`flex min-h-toolbar items-center gap-3 px-3 shadow-toolbar sm:px-4`,children:[(0,Q.jsx)(Jt,{className:`min-w-0 flex-1 truncate text-body-small`,id:s,children:e}),(0,Q.jsxs)(K,{children:[(0,Q.jsx)(q,{asChild:!0,children:(0,Q.jsx)(X,{"aria-label":i(`timeline.closeImagePreview`),onClick:()=>{o(!1)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,Q.jsx)(A,{className:`size-3.5`,"aria-hidden":`true`})})}),(0,Q.jsx)(J,{children:i(`timeline.closeImagePreview`)})]})]}),(0,Q.jsx)(`div`,{className:`grid min-h-0 place-items-center overflow-hidden bg-content p-2`,children:(0,Q.jsx)(`img`,{alt:e,className:`block size-full object-contain`,decoding:`async`,src:r})})]})})]})}var To=`whitespace-pre-wrap!`;function Eo({commandOutput:e,isLastTurnItem:t,item:n,onBuildPlan:r,onOpenFileDiff:i,onOpenSourceFile:a,projectId:o,taskId:s,turnStatus:c}){switch(n.type){case`message`:{if(n.role===`assistant`&&(n.questions?.length??0)>0)return(0,Q.jsx)(Pa,{item:n});let e=n.attachments??[],r=n.role===`user`?n.skills??[]:[],i=Bi({isLastTurnItem:t,role:n.role,turnStatus:c}),l=r.length>0||n.text.length>0?(0,Q.jsxs)(`div`,{children:[r.length===0?null:(0,Q.jsx)(`span`,{className:`inline`,"aria-label":T.t(`timeline.skillsUsed`,{ns:`conversation`}),children:r.map(e=>(0,Q.jsx)(oe,{className:`relative top-1 me-1.5 bg-raised px-2 text-body leading-6`,"data-message-skill":e.name,"data-skill-token":``,name:e.name},e.name))}),n.text.length===0?null:(0,Q.jsx)(sn,{className:Y(r.length>0&&`inline [&>p:first-child]:inline`,n.role===`user`&&To),...i,onOpenFileReference:a,promptFileReferences:n.role===`user`,children:n.text})]}):null,u=e.length===0?null:(0,Q.jsx)(te,{className:`${n.role===`user`?`justify-end`:`justify-start`} gap-2 px-0 pb-0`,"aria-label":T.t(`timeline.attachments`,{ns:`conversation`}),children:e.map(e=>{let t=f(``,o,s,e.id);return e.kind===`image`?(0,Q.jsx)(wo,{name:e.name,url:t},e.id):(0,Q.jsx)(Co,{attachment:e,url:t},e.id)})});return n.role===`assistant`?(0,Q.jsx)(fi,{className:`w-full`,children:(0,Q.jsxs)(`div`,{className:`flex min-w-0 w-full flex-col gap-2`,children:[u,l]})}):(0,Q.jsxs)(`div`,{className:`flex w-full flex-col items-end gap-2`,children:[u,l===null?null:(0,Q.jsx)(fi,{"data-message-text":`true`,children:l})]})}case`review`:return(0,Q.jsx)(fi,{children:(0,Q.jsx)(`p`,{children:Ri(n)})});case`reasoning`:return n.summary.trim().length===0?null:(0,Q.jsxs)(Ga,{isStreaming:c===`running`,children:[(0,Q.jsx)(Ka,{title:T.t(c===`running`?`timeline.reasoningStreaming`:`timeline.reasoning`,{ns:`conversation`})}),(0,Q.jsx)(qa,{children:(0,Q.jsx)(sn,{mode:c===`running`?`streaming`:`static`,children:n.summary})})]});case`approval_review`:return(0,Q.jsx)(zi,{item:n});case`command`:{let t=Fi(n.command),r=n.output===`__CODEXLY_RETAINED_COMMAND_OUTPUT__`?T.t(`timeline.outputRetained`,{ns:`conversation`}):e?.hasOutput?e:n.output??n.cwd,i=e?.outputOmitted??n.outputOmitted,a=i.bytes>0||i.lines>0,o=c===`running`&&n.status===`running`;return(0,Q.jsxs)(ho,{children:[(0,Q.jsx)(_o,{state:Ci(n.status),title:t}),(0,Q.jsx)(vo,{children:(0,Q.jsxs)(`div`,{className:`mb-2 space-y-4`,children:[(0,Q.jsx)(xo,{input:{command:n.command,cwd:n.cwd}}),(0,Q.jsxs)(ao,{isStreaming:o,output:r,children:[(0,Q.jsxs)(oo,{children:[(0,Q.jsx)(so,{children:T.t(`timeline.output`,{ns:`conversation`})}),(0,Q.jsx)(co,{children:(0,Q.jsx)(lo,{})})]}),(0,Q.jsx)(po,{children:a?(0,Q.jsx)(`p`,{className:`mt-2 text-warning`,children:T.t(`timeline.outputOmitted`,{bytes:i.bytes,lines:i.lines,ns:`conversation`})}):null})]})]})})]})}case`file_change`:return n.status===`completed`?c===`running`?(0,Q.jsx)(`div`,{className:`space-y-1`,children:n.changes.map(e=>(0,Q.jsx)(_a,{change:e,onOpen:i},e.path))}):null:n.status!==`pending`&&n.status!==`running`?null:(0,Q.jsxs)(gi,{collapsible:n.changes.length>0,status:`in_progress`,children:[(0,Q.jsx)(vi,{title:T.t(`timeline.editingFiles`,{count:n.changes.length,ns:`conversation`})}),n.changes.length===0?null:(0,Q.jsx)(yi,{children:n.changes.map(e=>(0,Q.jsx)(bi,{className:`break-all font-mono`,children:e.path},e.path))})]});case`tool`:{let e=tr(n);if(e!==null)return(0,Q.jsx)(Ei,{item:n,operation:e});let t=n.status===`failed`||n.status===`declined`||n.status===`interrupted`,r=t&&n.output!==void 0?Ti(n.output):void 0;return(0,Q.jsxs)(ho,{children:[(0,Q.jsx)(_o,{state:Ci(n.status),title:n.progress===void 0?n.name:`${n.name} · ${n.progress}`}),(0,Q.jsxs)(yo,{children:[n.progress===void 0?null:(0,Q.jsx)(`p`,{className:`text-label leading-5 text-muted-foreground`,role:`status`,children:n.progress}),n.input===void 0?null:(0,Q.jsx)(xo,{input:n.input}),(0,Q.jsx)(So,{errorText:r,output:t?void 0:n.output})]})]})}case`plan`:{let e=c===`running`&&t;return(0,Q.jsxs)(Ia,{defaultOpen:!0,isStreaming:e,children:[(0,Q.jsxs)(La,{children:[(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(L,{"aria-hidden":`true`,className:`size-4 shrink-0`}),(0,Q.jsx)(Ra,{children:T.t(`timeline.plan`,{ns:`conversation`})})]}),(0,Q.jsx)(za,{children:e?T.t(`timeline.planGenerating`,{ns:`conversation`}):T.t(`timeline.planReady`,{ns:`conversation`})})]}),(0,Q.jsx)(Ba,{})]}),(0,Q.jsx)(Va,{children:(0,Q.jsx)(sn,{mode:e?`streaming`:`static`,children:n.text})}),e||r===void 0?null:(0,Q.jsx)(Ha,{className:`justify-end`,children:(0,Q.jsx)(Ua,{children:(0,Q.jsx)(Do,{onBuildPlan:r})})})]})}case`activity`:return n.transient===!0&&n.status!==`pending`&&n.status!==`running`?null:(0,Q.jsxs)(gi,{collapsible:n.detail!==void 0,status:wi(n.status??`completed`),children:[(0,Q.jsx)(vi,{title:n.label}),n.detail===void 0?null:(0,Q.jsx)(yi,{children:(0,Q.jsx)(bi,{children:n.detail})})]});case`runtime_status`:{let e=wi(n.status);return n.kind===`safety_buffering`?(0,Q.jsxs)(gi,{collapsible:n.fasterModel!==void 0,status:e,children:[(0,Q.jsx)(vi,{title:T.t(`timeline.runtimeStatus.safetyBuffering`,{model:n.model,ns:`conversation`})}),n.fasterModel===void 0?null:(0,Q.jsx)(yi,{children:(0,Q.jsx)(bi,{children:T.t(`timeline.runtimeStatus.fasterModel`,{model:n.fasterModel,ns:`conversation`})})})]}):n.kind===`model_rerouted`?(0,Q.jsx)(gi,{collapsible:!1,status:e,children:(0,Q.jsx)(vi,{title:T.t(`timeline.runtimeStatus.modelRerouted`,{fromModel:n.fromModel,ns:`conversation`,toModel:n.toModel})})}):(0,Q.jsxs)(gi,{collapsible:n.detail!==void 0||n.durationMs!==void 0,status:e,children:[(0,Q.jsx)(vi,{title:T.t(`timeline.runtimeStatus.hook`,{eventName:n.eventName,ns:`conversation`})}),n.detail===void 0&&n.durationMs===void 0?null:(0,Q.jsxs)(yi,{children:[n.detail===void 0?null:(0,Q.jsx)(bi,{children:n.detail}),n.durationMs===void 0?null:(0,Q.jsx)(bi,{children:T.t(`timeline.runtimeStatus.duration`,{duration:n.durationMs,ns:`conversation`})})]})]})}}}function Do({onBuildPlan:e}){let[t,n]=(0,Z.useState)(!1);return(0,Q.jsxs)(X,{disabled:t,onClick:()=>{n(!0),e().then(e=>{e||n(!1)},()=>{n(!1)})},type:`button`,children:[t?(0,Q.jsx)(h,{"aria-hidden":`true`,className:`size-3.5 animate-spin`}):null,T.t(`timeline.buildPlan`,{ns:`conversation`})]})}function Oo(e,t){let n=[],r=[],i=()=>{let e=r[0];e!==void 0&&(n.push({itemKeys:r,key:e,type:`assistant`}),r=[])};for(let a of e){let e=t.get(a)?.peek();if(e?.type===`review`||e?.type===`message`&&e.role===`user`){i(),n.push({itemKey:a,type:`user`});continue}r.push(a)}return i(),n}function ko(e){return d(e,e=>e.revision),e.read()}function Ao(e){return[...(e.skills??[]).map(e=>`$${e.name}`),e.text].filter(e=>e.length>0).join(`
5
+ `)}function jo({isLastTurnItem:e,itemStore:t,onBuildPlan:n,onOpenFileDiff:r,onOpenSourceFile:i,projectId:a,taskId:o,turnStatus:s}){d(t,e=>e.revision);let c=t.peek(),l=c.type===`command`?c:t.read(),u=c.type===`command`?t.readCommandOutput():void 0;return(0,Q.jsx)(Eo,{...u===void 0?{}:{commandOutput:u},isLastTurnItem:e,item:l,...n===void 0?{}:{onBuildPlan:n},onOpenFileDiff:r,onOpenSourceFile:i,projectId:a,taskId:o,turnStatus:s})}function Mo({isLastTurnItem:e,itemKey:t,onBuildPlan:n,onOpenFileDiff:r,onOpenSourceFile:i,projectId:a,store:o,taskId:s,turnStatus:c}){let l=d(o,e=>e.itemStoresByKey.get(t));return l===void 0?null:(0,Q.jsx)(jo,{isLastTurnItem:e,itemStore:l,...n===void 0?{}:{onBuildPlan:n},onOpenFileDiff:r,onOpenSourceFile:i,projectId:a,taskId:s,turnStatus:c})}function No({anchorId:e,itemStore:t,latestSnapshotTimestamp:n,onOpenFileDiff:r,onOpenSourceFile:i,projectId:a,taskId:o,turn:s}){let c=ko(t);if(c.type!==`review`&&(c.type!==`message`||c.role!==`user`))return null;let l=c.type===`review`?Ri(c):Ao(c);return(0,Q.jsxs)(di,{"data-conversation-anchor":e,from:`user`,children:[(0,Q.jsx)(Eo,{isLastTurnItem:!1,item:c,onOpenFileDiff:r,onOpenSourceFile:i,projectId:a,taskId:o,turnStatus:s.status}),(0,Q.jsx)(Ni,{...c.type===`review`?{modeLabel:T.t(`timeline.reviewMode`,{ns:`conversation`})}:{timestamp:Mi(`user`,s,n)},text:l})]})}function Po({itemKey:e,latestSnapshotTimestamp:t,onOpenFileDiff:n,onOpenSourceFile:r,projectId:i,store:a,taskId:o,turn:s}){let c=d(a,t=>t.itemStoresByKey.get(e));return c===void 0?null:(0,Q.jsx)(No,{anchorId:e,itemStore:c,latestSnapshotTimestamp:t,onOpenFileDiff:n,onOpenSourceFile:r,projectId:i,taskId:o,turn:s})}function Fo({itemKeys:e,store:t}){let n=d(t,t=>{let n=Ii(e.flatMap((e,n)=>{let r=t.itemStoresByKey.get(e)?.peek();return r===void 0?[]:[{item:r,itemIndex:n}]}));return n===void 0?``:`${n.type}\u0000${n.label}`}),r=n.indexOf(`\0`);return(0,Q.jsx)(Li,{operation:r<0?void 0:{label:n.slice(r+1),type:n.slice(0,r)}})}function Io({itemKeys:e,lastTurnItemKey:t,onBuildPlan:n,onOpenFileDiff:r,onOpenSourceFile:i,projectId:a,store:o,taskId:s,turnStatus:c}){let l=o.getState().itemStoresByKey,u=(0,Z.useMemo)(()=>c===`running`?e.flatMap(e=>{let t=l.get(e);return t?.peek().type===`reasoning`?[t]:[]}):[],[e,l,c]),d=(0,Z.useCallback)(e=>{let t=u.map(t=>t.subscribe(e));return()=>{for(let e of t)e()}},[u]),f=(0,Z.useCallback)(()=>u.map(e=>(e.readReasoningSummary()?.trim().length??0)>0?`1`:`0`).join(`,`),[u]);(0,Z.useSyncExternalStore)(d,f,f);let p=ka(e,l);return Aa(p,e=>l.get(e)?.peek()).map(e=>{let u=(e.type===`item`?[e.itemKey]:e.itemKeys).map(e=>(0,Q.jsx)(Mo,{isLastTurnItem:e===t,itemKey:e,...n===void 0?{}:{onBuildPlan:n},onOpenFileDiff:r,onOpenSourceFile:i,projectId:a,store:o,taskId:s,turnStatus:c},e));if(e.type===`item`)return u[0]??null;if(c!==`running`)return(0,Q.jsx)(Z.Fragment,{children:u},e.key);let d=p.indexOf(e.itemKeys.at(-1)??e.key),f=p.slice(d+1).find(e=>{let t=l.get(e)?.peek();return t?.type===`message`&&t.role===`assistant`});return(0,Z.createElement)(Na,{...f===void 0?{}:{collapseAfterItemKey:f},itemKeys:e.itemKeys,key:e.key,store:o},u)})}var Lo=e=>e;function Ro({itemKeys:e,lastTurnItemKey:t,latestSnapshotTimestamp:n,onOpenFileDiff:r,onForkTask:i,onBuildPlan:a,onOpenSourceFile:o,onReviewFileChanges:s,onToggleProcess:c,processExpanded:l,processItemKeys:u,processToggleAvailable:d,projectId:f,showProcessingTime:p,showRunningShimmer:m,store:h,taskId:g,turn:_}){let v=h.getState().itemStoresByKey,y=[],b=[],x=_.status===`running`||l?e:e.filter(e=>!u.has(e));if(_.status!==`running`)for(let e of x){let t=v.get(e)?.read();t?.type===`message`&&t.role===`assistant`?y.push(t.text):t?.type===`file_change`&&t.status===`completed`&&b.push(...t.changes)}let S=y.join(`
6
+
7
+ `);return(0,Q.jsxs)(di,{from:`assistant`,children:[p?(0,Q.jsx)(ji,{completedAt:_.completedAt,startedAt:_.startedAt,...d?{expanded:l,onToggle:c}:{}}):null,x.length>0||m?(0,Q.jsxs)(`div`,{className:`w-full space-y-4`,children:[(0,Q.jsx)(Io,{itemKeys:x,lastTurnItemKey:t,...a===void 0?{}:{onBuildPlan:a},onOpenFileDiff:r,onOpenSourceFile:o,projectId:f,store:h,taskId:g,turnStatus:_.status}),m?(0,Q.jsx)(Fo,{itemKeys:e,store:h}):null]}):null,_.status!==`running`&&b.length>0?(0,Q.jsx)(va,{changes:b,onOpenFileDiff:r,onReviewFileChanges:s}):null,_.status!==`running`&&S.trim().length>0?(0,Q.jsx)(Ni,{lastTurnId:_.id,...i===void 0?{}:{onForkTask:i},text:S,timestamp:Mi(`assistant`,_,n)}):null]})}function zo({onBuildPlan:e,onForkTask:t,onOpenFileDiff:n,onOpenSourceFile:r,onReviewFileChanges:i,projectId:a,store:o,taskId:s,turnId:c,turnIndex:l,suppressEmptyRunningStatus:u}){let f=d(o,e=>e.turnsById[c]),p=d(o,e=>e.itemKeysByTurnId[c]??[]),[m,h]=(0,Z.useState)(!1);if(f===void 0)return null;let g=o.getState().snapshotMetadata?.updatedAt??``,_=o.getState().itemStoresByKey,v=Oo(p,_),y=new Set(ya(p.flatMap(e=>_.get(e)?.peek()??[]),f.status)),b=new Set(p.filter(e=>y.has(_.get(e)?.peek().id??``))),x=b.size>0,S=v.findIndex(e=>e.type===`assistant`),C=S>=0,w=p.at(-1);return(0,Q.jsxs)(`section`,{"aria-label":`Turn ${String(l+1)}`,className:`space-y-4`,"data-status":f.status,children:[v.map((c,l)=>c.type===`user`?(0,Q.jsx)(Po,{itemKey:c.itemKey,latestSnapshotTimestamp:g,onOpenFileDiff:n,onOpenSourceFile:r,projectId:a,store:o,taskId:s,turn:f},c.itemKey):(0,Q.jsx)(Ro,{itemKeys:c.itemKeys,lastTurnItemKey:w,latestSnapshotTimestamp:g,...f.status===`completed`&&e!==void 0?{onBuildPlan:e}:{},onOpenFileDiff:n,onToggleProcess:()=>{h(e=>!e)},...f.status!==`running`&&t!==void 0?{onForkTask:t}:{},onOpenSourceFile:r,onReviewFileChanges:i,projectId:a,processExpanded:m,processItemKeys:b,processToggleAvailable:x,showProcessingTime:l===S,showRunningShimmer:f.status===`running`&&l===v.length-1,store:o,taskId:s,turn:f},c.key)),f.status===`running`&&!C&&!u?(0,Q.jsxs)(di,{from:`assistant`,children:[(0,Q.jsx)(ji,{completedAt:f.completedAt,startedAt:f.startedAt}),(0,Q.jsx)(`div`,{className:`w-full space-y-4`,children:(0,Q.jsx)(Li,{})})]}):null,f.error===null?null:(0,Q.jsx)(`div`,{className:`rounded-surface bg-control px-3 py-2 text-label leading-5 text-danger`,role:`alert`,children:(0,Q.jsx)(`p`,{children:f.error})})]})}function Bo({notice:e}){let t=e.payload.level===`warning`,n=e.payload.code===`model_verification`?T.t(`timeline.notice.modelVerification`,{ns:`conversation`}):e.payload.code===`strict_review_required`?T.t(`timeline.notice.strictReviewRequired`,{ns:`conversation`}):e.payload.message,r=T.t(`timeline.notice.${e.payload.code}`,{ns:`conversation`});return(0,Q.jsxs)(`div`,{className:`flex items-start gap-2 border-l-2 px-3 py-2 text-label leading-5 ${t?`border-warning text-warning`:`border-separator-strong text-muted-foreground`}`,role:t?`alert`:`status`,children:[t?(0,Q.jsx)(jn,{"aria-hidden":`true`,className:`mt-0.5 size-3.5 shrink-0`}):(0,Q.jsx)(Ee,{"aria-hidden":`true`,className:`mt-0.5 size-3.5 shrink-0`}),(0,Q.jsxs)(`div`,{className:`min-w-0`,children:[(0,Q.jsx)(`p`,{className:`font-medium text-foreground`,children:r}),(0,Q.jsx)(`p`,{className:`break-words`,children:n})]})]})}function Vo({store:e}){return d(e,e=>e.notices).map(e=>(0,Q.jsx)(Bo,{notice:e},`${e.sessionId}:${String(e.sequence)}`))}function Ho({connected:e,onResolvePendingRequest:t,store:n}){let r=d(n,e=>e.pendingRequestIds),i=d(n,e=>e.pendingRequestsById),a=r.flatMap(e=>{let t=i[e];return t===void 0||t.status===`resolved`?[]:[t]}),o=a.findIndex(e=>e.status===`pending`);return a.map((n,r)=>(0,Q.jsx)(ga,{interactive:e&&n.status===`pending`&&r===o,onResolve:t,request:n},n.requestId))}function Uo({connected:e,hasOlderHistory:t=!1,isLoadingOlderHistory:n=!1,onBuildPlan:r,onForkTask:i,onOpenFileDiff:a,onOpenSourceFile:o,onReviewFileChanges:s,onResolvePendingRequest:c,onLoadOlderHistory:l=()=>Promise.resolve(),olderHistoryError:u=null,scrollToBottomSignal:f,store:p,submissionStartedAt:m,submissionTurnId:h}){let g=p.getState().projectId,_=p.getState().taskId,v=d(p,e=>e.turnIds),y=d(p,e=>e.itemStructureRevision),b=d(p,e=>e.pendingRequestIds),x=d(p,e=>e.pendingRequestsById),S=d(p,e=>e.notices),C=b.some(e=>x[e]?.status!==`resolved`),w=(0,Z.useMemo)(()=>Ta(p.getState()),[y,p]),E=d(p,e=>{if(h===void 0)return`awaiting-turn`;let t=e.turnsById[h];return t===void 0?`awaiting-turn`:Oo(e.itemKeysByTurnId[h]??[],e.itemStoresByKey).some(e=>e.type===`assistant`)?`assistant-started`:t.status===`failed`||t.status===`interrupted`?`finished`:`awaiting-assistant`}),D=m!==void 0&&(E===`awaiting-turn`||E===`awaiting-assistant`),O=S.length>0;return v.length===0&&!C&&!D&&!O&&!t?(0,Q.jsx)(Si,{message:T.t(`timeline.noHistory`,{ns:`conversation`}),role:`status`}):(0,Q.jsxs)(si,{"aria-label":T.t(`timeline.conversation`,{ns:`conversation`}),conversationId:`${g}:${_}`,...f===void 0?{}:{scrollToBottomSignal:f},children:[t?(0,Q.jsx)(ba,{error:u,isLoading:n,onLoad:l}):null,(0,Q.jsx)(li,{...C||D||O?{footer:(0,Q.jsxs)(Q.Fragment,{children:[O?(0,Q.jsx)(Vo,{store:p}):null,C?(0,Q.jsx)(Ho,{connected:e,onResolvePendingRequest:c,store:p}):null,D?(0,Q.jsxs)(di,{from:`assistant`,children:[(0,Q.jsx)(ji,{completedAt:null,startedAt:m}),(0,Q.jsx)(Li,{})]}):null]})}:{},getItemKey:Lo,items:v,renderNavigation:(e,t,n)=>(0,Q.jsx)(Da,{items:w,scrollContainerRef:n,scrollbarWidth:t,onNavigate:t=>{e(t.turnIndex,t.anchorId)}}),renderItem:(t,n)=>(0,Q.jsx)(zo,{...e&&t===v.at(-1)&&r!==void 0?{onBuildPlan:r}:{},...e&&i!==void 0?{onForkTask:i}:{},onOpenFileDiff:a,onOpenSourceFile:o,onReviewFileChanges:s,projectId:g,store:p,taskId:_,turnId:t,turnIndex:n,suppressEmptyRunningStatus:D&&t===h})}),(0,Q.jsx)(ui,{})]})}var Wo=()=>void 0,Go=()=>void 0,Ko=()=>void 0,qo=()=>Promise.resolve();function Jo(e){if(k(`conversation`),e.taskId===void 0)return e.submissionStartedAt===void 0?`temporary`in e?(0,Q.jsx)(xi,{scopeName:e.scopeName}):(0,Q.jsx)(xi,{onProjectChange:e.onProjectChange,projectId:e.projectId,projects:e.projects}):(0,Q.jsx)(si,{"aria-label":T.t(`timeline.conversation`,{ns:`conversation`}),conversationId:`${e.projectId}:new-chat`,children:(0,Q.jsx)(ci,{className:`gap-6`,children:(0,Q.jsxs)(di,{from:`assistant`,children:[(0,Q.jsx)(ji,{completedAt:null,startedAt:e.submissionStartedAt}),(0,Q.jsx)(Li,{})]})})});let{onBuildPlan:t,onForkTask:n,onOpenFileDiff:r,onOpenSourceFile:i,onReviewFileChanges:a,onResolvePendingRequest:o,runtime:s,scrollToBottomSignal:c,submissionStartedAt:l,submissionTurnId:u,startingSnapshot:d}=e;return s===void 0?(0,Q.jsx)(Si,{message:T.t(`timeline.loading`,{ns:`conversation`}),role:`status`}):(0,Q.jsx)(Yo,{onOpenFileDiff:r??Wo,onOpenSourceFile:i??Go,onReviewFileChanges:a??Ko,onResolvePendingRequest:o??qo,...t===void 0?{}:{onBuildPlan:t},...n===void 0?{}:{onForkTask:n},runtime:s,scrollToBottomSignal:c,submissionStartedAt:l,submissionTurnId:u,startingSnapshot:d})}function Yo({onBuildPlan:e,onForkTask:t,onOpenFileDiff:n,onOpenSourceFile:r,onReviewFileChanges:i,onResolvePendingRequest:a,runtime:o,scrollToBottomSignal:s,submissionStartedAt:c,submissionTurnId:l,startingSnapshot:u}){return o.error===null?o.isPending||o.metadata===void 0?u===void 0?(0,Q.jsx)(Si,{message:T.t(`timeline.loading`,{ns:`conversation`}),role:`status`}):(0,Q.jsx)(Xo,{connected:!1,snapshot:u}):o.store===void 0?(0,Q.jsx)(Si,{message:T.t(`timeline.loading`,{ns:`conversation`}),role:`status`}):(0,Q.jsxs)(Q.Fragment,{children:[o.connectionState===`reconnecting`?(0,Q.jsx)(`div`,{className:`bg-control px-3 py-1.5 text-center text-label text-muted-foreground`,role:`status`,children:T.t(`timeline.reconnecting`,{ns:`conversation`})}):null,(0,Q.jsx)(Uo,{connected:o.connectionState===`connected`,hasOlderHistory:o.hasOlderHistory,isLoadingOlderHistory:o.isLoadingOlderHistory,olderHistoryError:o.olderHistoryError,...e===void 0?{}:{onBuildPlan:e},...t===void 0?{}:{onForkTask:t},onOpenFileDiff:n,onOpenSourceFile:r,onReviewFileChanges:i,onResolvePendingRequest:a,onLoadOlderHistory:o.loadOlderHistory,...s===void 0?{}:{scrollToBottomSignal:s},store:o.store,...c===void 0?{}:{submissionStartedAt:c},...l===void 0?{}:{submissionTurnId:l}})]}):(0,Q.jsx)(Si,{message:T.t(`timeline.loadError`,{ns:`conversation`}),role:`alert`})}function Xo({connected:e=!0,onBuildPlan:t,onForkTask:n,onOpenFileDiff:r=()=>void 0,onOpenSourceFile:i=()=>void 0,onReviewFileChanges:a=()=>void 0,onResolvePendingRequest:o=()=>Promise.resolve(),snapshot:s}){k(`conversation`);let c=(0,Z.useMemo)(()=>Dt({projectId:s.projectId,taskId:s.id},{checkpoint:{sequence:0,sessionId:`starting-snapshot`},snapshot:s}),[s]);return(0,Q.jsx)(Uo,{connected:e,...t===void 0?{}:{onBuildPlan:t},...n===void 0?{}:{onForkTask:n},onOpenFileDiff:r,onOpenSourceFile:i,onReviewFileChanges:a,onResolvePendingRequest:o,store:c})}var Zo=8;function Qo(e,t,n){return Math.min(n,Math.max(t,e))}function $o({direction:e,label:t,maximumWidth:n,minimumWidth:r,onResize:i,onResizeEnd:a,onResizeStart:o,panel:s,width:c}){let l=(0,Z.useRef)(null),u=e=>{let t=l.current;t?.pointerId===e.pointerId&&(l.current=null,e.currentTarget.hasPointerCapture(e.pointerId)&&e.currentTarget.releasePointerCapture(e.pointerId),a(t.currentWidth))};return(0,Q.jsx)(`div`,{"aria-label":t,"aria-orientation":`vertical`,"aria-valuemax":n,"aria-valuemin":r,"aria-valuenow":c,className:`workbench-panel-resizer workbench-panel-resizer--${s}`,onKeyDown:t=>{if(t.key!==`ArrowLeft`&&t.key!==`ArrowRight`)return;t.preventDefault();let o=Qo(c+(t.key===`ArrowLeft`?-8:Zo)*e,r,n);i(o),a(o)},onPointerCancel:u,onPointerDown:e=>{e.button===0&&(e.preventDefault(),l.current={currentWidth:c,pointerId:e.pointerId,startWidth:c,startX:e.clientX},e.currentTarget.setPointerCapture(e.pointerId),o())},onPointerMove:t=>{let a=l.current;a?.pointerId===t.pointerId&&(a.currentWidth=Qo(a.startWidth+(t.clientX-a.startX)*e,r,n),t.currentTarget.setAttribute(`aria-valuenow`,String(a.currentWidth)),i(a.currentWidth))},onPointerUp:u,role:`separator`,tabIndex:0})}var es=(0,Z.lazy)(()=>n(()=>import(`./patch-diff-viewer-CwDRm5oN.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8])));function ts({change:e,onClose:t}){let{t:n}=k(`workbench`);if(e===null)return null;let r=nn(e.path),{additions:i,removals:a}=rn(e),o=`file-diff-dialog-title`;return(0,Q.jsx)(gt,{onOpenChange:e=>{e||t()},open:!0,children:(0,Q.jsx)(yt,{"aria-labelledby":o,className:`h-[min(82dvh,54rem)] max-w-[72rem] overflow-hidden p-0`,children:(0,Q.jsxs)(`section`,{className:`grid h-full min-h-0 w-full min-w-0 grid-rows-[auto_minmax(0,1fr)] bg-raised`,children:[(0,Q.jsxs)(`header`,{className:`flex min-h-toolbar min-w-0 items-center gap-3 px-3 shadow-toolbar sm:px-4`,children:[(0,Q.jsx)(_e,{className:`size-4 shrink-0 text-muted-foreground`,"aria-hidden":`true`}),(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Q.jsx)(Jt,{className:`truncate text-body-small`,id:o,title:e.path,children:r}),(0,Q.jsx)(`p`,{className:`truncate text-caption text-muted-foreground`,title:e.path,children:e.path})]}),(0,Q.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 text-label font-medium`,children:[(0,Q.jsxs)(`span`,{className:`text-diff-added`,children:[`+`,i]}),(0,Q.jsxs)(`span`,{className:`text-diff-removed`,children:[`-`,a]}),(0,Q.jsxs)(K,{children:[(0,Q.jsx)(q,{asChild:!0,children:(0,Q.jsx)(X,{"aria-label":n(`diff.close`),onClick:t,size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,Q.jsx)(A,{className:`size-3.5`,"aria-hidden":`true`})})}),(0,Q.jsx)(J,{children:n(`diff.close`)})]})]})]}),(0,Q.jsx)(`div`,{className:`min-h-0 min-w-0 overflow-auto bg-content`,children:(0,Q.jsx)(Z.Suspense,{fallback:(0,Q.jsx)(`div`,{className:`grid min-h-48 place-items-center text-body-small text-muted-foreground`,role:`status`,children:n(`diff.loading`)}),children:(0,Q.jsx)(es,{change:e})})})]})})})}function ns(e){return e.split(/[\\/]/u).at(-1)??e}function rs({client:e,onClose:t,previewKind:n,projectId:r,reference:i,rootPath:a}){let o=`project-source-dialog-title`;return(0,Q.jsx)(gt,{onOpenChange:e=>{e||t()},open:!0,children:(0,Q.jsxs)(yt,{"aria-labelledby":o,className:`h-[min(82dvh,54rem)] max-w-[72rem] overflow-hidden p-0`,children:[(0,Q.jsx)(Jt,{className:`sr-only`,id:o,children:ns(i.path)}),(0,Q.jsx)(ge,{client:e,onClose:t,previewKind:n,projectId:r,reference:i,...a===void 0?{}:{rootPath:a}})]})})}function is({message:e,role:t}){return(0,Q.jsx)(`div`,{className:`grid min-h-0 flex-1 place-items-center px-6 text-sm text-muted-foreground`,role:t,children:e})}function as({onClose:e,projectId:t,projectRuntime:n,selection:r}){return r===null?null:(0,Q.jsx)(os,{onClose:e,projectId:t,projectRuntime:n,selection:r})}function os({onClose:e,projectId:t,projectRuntime:n,selection:r}){let{t:i}=k(`workbench`),a=Yt(t,r.taskId,n),o=`subagent-output-dialog-title`,s;return s=a.error===null?a.isPending||a.metadata===void 0?(0,Q.jsx)(is,{message:i(`subagentOutput.loading`),role:`status`}):(0,Q.jsxs)(Q.Fragment,{children:[a.connectionState===`reconnecting`?(0,Q.jsx)(`div`,{className:`bg-control px-3 py-1.5 text-center text-label text-muted-foreground`,role:`status`,children:i(`subagentOutput.reconnecting`)}):null,(0,Q.jsx)(Jo,{projectId:t,runtime:a,taskId:r.taskId})]}):(0,Q.jsx)(is,{message:i(`subagentOutput.error`),role:`alert`}),(0,Q.jsx)(gt,{onOpenChange:t=>{t||e()},open:!0,children:(0,Q.jsx)(yt,{"aria-labelledby":o,className:`h-[min(86dvh,58rem)] max-w-[76rem] overflow-hidden p-0`,"data-subagent-output-dialog":``,children:(0,Q.jsxs)(`section`,{className:`grid h-full min-h-0 grid-rows-[auto_minmax(0,1fr)] bg-raised`,children:[(0,Q.jsxs)(`header`,{className:`flex min-h-toolbar items-center gap-3 px-3 shadow-toolbar sm:px-4`,children:[(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Q.jsx)(Jt,{className:`truncate text-body-small`,id:o,children:i(`subagentOutput.title`)}),(0,Q.jsx)(`p`,{className:`truncate text-caption text-muted-foreground`,title:r.taskId,children:r.taskId})]}),(0,Q.jsx)(gi,{collapsible:!1,status:ir(r.status),children:(0,Q.jsx)(vi,{title:i(`subagentOutput.task`,{taskId:r.taskId})})}),(0,Q.jsx)(X,{"aria-label":i(`subagentOutput.close`),onClick:e,size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,Q.jsx)(A,{className:`size-3.5`,"aria-hidden":`true`})})]}),(0,Q.jsx)(`div`,{className:`flex min-h-0 flex-col overflow-hidden bg-content`,children:s})]})})})}function ss({context:e,projectId:t,taskId:n}){let{client:r,closeTaskRenameDialog:i,projectRuntime:a,renameActiveTask:o,renameMutation:s,selectedFileReview:c,selectedProjectFileDialog:l,selectedRootPath:u,selectedSubagent:d,setFileReviewSelection:f,setProjectFileDialogSelection:p,setSubagentDialogSelection:m,taskRenameOpen:h,title:g}=e;return(0,Q.jsxs)(Q.Fragment,{children:[l?.kind===`diff`?(0,Q.jsx)(ts,{change:l.change,onClose:()=>{p(null)}}):l===null?null:(0,Q.jsx)(rs,{client:r,onClose:()=>{p(null)},previewKind:l.kind,projectId:t,reference:l.reference,...u===void 0?{}:{rootPath:u}}),c===null?null:(0,Q.jsx)(we,{changes:c,onClose:()=>{f(null)}}),(0,Q.jsx)(as,{onClose:()=>{m(null)},projectId:t,projectRuntime:a,selection:d}),h&&n!==void 0?(0,Q.jsx)(ct,{initialTitle:g,isPending:s.isPending,onClose:i,onRename:e=>void o(e)},`${t}:${n}`):null]})}var cs=(0,Z.memo)(function({capabilities:e,client:t,composerRef:n,fallbackSettings:r,fastModeAvailable:i,fastModeDefault:a,followUpBehavior:o,models:s,modelsError:c,modelsPending:u,onRequestNotificationPermission:d,onProjectTaskDefaultsChange:f,onOpenProjectPath:p,onProjectRootChange:m,onTaskStarted:h,projectId:g,projectPath:_,projectPathOpenDisabled:v,projectRoots:y,projectToolsEnabled:b,selectedProjectRootId:x,gitStatus:S,runtime:C,skills:w,startingSnapshot:T,startingPrompt:E,taskId:D,onOpenFileDiff:O,onOpenSourceFile:k,onReviewFileChanges:A}){let j=`${g}:${D}`,[M,ee]=(0,Z.useState)(0),{beginSubmission:N,getStartedAt:P,handleSubmissionStateChange:te,startedAt:ne}=_r(),[F,I]=(0,Z.useState)(()=>({prompt:E,taskScope:j})),L=F.taskScope===j?F.prompt:E,re=ne??L?.submissionStartedAt,R=ne===void 0?L?.turn.id:void 0;(0,Z.useEffect)(()=>{let e=C.store;if(e===void 0||L===void 0)return;let t=e.getState(),n=C.readSnapshot();if(n===void 0||t.checkpoint===null)return;let r=Be(n,L.turn,{...L.input,messageAttachments:L.messageAttachments});if(r===n)return;let i=t.connectionState,a=t.error;t.hydrate({checkpoint:t.checkpoint,snapshot:r}),e.getState().setConnectionState(i),e.getState().setError(a)},[C,L]);let z=l({...Bt(g,D,t),scope:{id:`task-settings:${j}`},onSuccess(e){C.store?.getState().setTaskSettings(e.settings)}}),ie=(e,n,r)=>t.resolvePendingRequest(e,n,{idempotencyKey:r}).then(()=>void 0);return(0,Q.jsxs)(Q.Fragment,{children:[(0,Z.createElement)(Jo,{onBuildPlan:()=>n.current?.buildPlan()??Promise.resolve(!1),...e?.tasks.fork===!0?{onForkTask:async(e,n)=>{h((await t.forkTask(g,D,{lastTurnId:e},{idempotencyKey:n})).task)}}:{},onOpenFileDiff:O,onOpenSourceFile:k,onReviewFileChanges:A,onResolvePendingRequest:ie,projectId:g,key:j,runtime:C,scrollToBottomSignal:M,...re===void 0?{}:{submissionStartedAt:re},...R===void 0?{}:{submissionTurnId:R},taskId:D,...T===void 0?{}:{startingSnapshot:T}}),(0,Q.jsx)(se,{composerRef:n,capabilities:e,client:t,followUpBehavior:o,fastModeAvailable:i,fastModeDefault:a,models:s,modelsError:c,modelsPending:u||C.isPending,onDirectSubmission:()=>{N(),ee(e=>e+1)},onOpenProjectPath:p,onProjectRootChange:m,onRequestNotificationPermission:d,onFastModeChange:(e,t)=>f(t,e),onSettingsChange:(e,t,n)=>Promise.all([z.mutateAsync(e),f(e,n)]).then(()=>void 0),onSubmissionStateChange:te,onTaskStarted:h,onTurnStarted:(e,t,n)=>{let r=P()??e.startedAt;I({prompt:{input:t,messageAttachments:n,...r===null?{}:{submissionStartedAt:r},turn:e},taskScope:j})},projectId:g,projectPath:_,projectPathOpenDisabled:v,projectRoots:y,projectToolsEnabled:b,selectedProjectRootId:x,...S===void 0?{}:{gitStatus:S},runtime:C,settings:C.metadata?.settings??T?.settings??r,skills:w,taskId:D})]})}),ls=(0,Z.lazy)(()=>n(()=>import(`./patch-diff-viewer-CwDRm5oN.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8])));function us({change:e}){let{t}=k(`workbench`),{additions:n,removals:r}=rn(e);return(0,Q.jsxs)(`section`,{"aria-label":e.path,className:`grid h-full min-h-0 min-w-0 grid-rows-[auto_minmax(0,1fr)] bg-raised`,children:[(0,Q.jsxs)(pe,{className:`min-h-toolbar gap-3 overflow-hidden bg-raised px-3 shadow-toolbar sm:px-4`,children:[(0,Q.jsxs)(he,{className:`w-0 flex-1 overflow-hidden`,children:[(0,Q.jsx)(_e,{className:`size-4 shrink-0 text-muted-foreground`,"aria-hidden":`true`}),(0,Q.jsxs)(K,{children:[(0,Q.jsx)(q,{asChild:!0,children:(0,Q.jsxs)(`div`,{className:`w-0 flex-1 overflow-hidden`,children:[(0,Q.jsx)(`h2`,{className:`truncate text-body-small font-semibold`,children:nn(e.path)}),(0,Q.jsx)(`p`,{className:`truncate text-caption text-muted-foreground`,children:e.path})]})}),(0,Q.jsx)(J,{className:`break-all`,children:e.path})]})]}),(0,Q.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 text-label font-medium`,children:[(0,Q.jsxs)(`span`,{className:`text-diff-added`,children:[`+`,n]}),(0,Q.jsxs)(`span`,{className:`text-diff-removed`,children:[`-`,r]})]})]}),(0,Q.jsx)(`div`,{className:`min-h-0 min-w-0 overflow-auto bg-content`,children:(0,Q.jsx)(Z.Suspense,{fallback:(0,Q.jsx)(`div`,{className:`grid min-h-48 place-items-center text-body-small text-muted-foreground`,role:`status`,children:t(`diff.loading`)}),children:(0,Q.jsx)(ls,{change:e})})})]})}var ds=5;function fs({ariaLabel:e,getKey:t,items:n,renderItem:r}){let[i,a]=(0,Z.useState)(!1);return(0,Q.jsxs)(`div`,{"aria-label":e,className:`space-y-0.5`,children:[(i?n:n.slice(0,ds)).map(e=>(0,Q.jsx)(`div`,{children:r(e)},t(e))),i||n.length<=ds?null:(0,Q.jsx)(X,{className:`w-full`,onClick:()=>{a(!0)},size:`sm`,type:`button`,variant:`ghost`,children:T.t(`inspector.showMore`,{ns:`conversation`})})]})}function ps({error:e,isPending:t,onTerminate:n,terminals:r,terminatingTerminalId:i}){return(0,Q.jsx)(_s,{icon:(0,Q.jsx)(kn,{className:`size-3.5`}),title:T.t(`inspector.terminals`,{ns:`conversation`}),children:(0,Q.jsx)(`section`,{"aria-label":T.t(`inspector.terminals`,{ns:`conversation`}),children:t&&r.length===0?(0,Q.jsx)(`p`,{className:`px-2 py-2 text-caption text-muted-foreground`,children:T.t(`inspector.terminalLoading`,{ns:`conversation`})}):e!==null&&r.length===0?(0,Q.jsx)(`p`,{className:`px-2 py-2 text-caption text-diff-removed`,children:T.t(`inspector.terminalError`,{ns:`conversation`})}):(0,Q.jsx)(`div`,{className:`space-y-1`,children:r.map(e=>{let t=i===e.id?T.t(`inspector.terminalStopping`,{command:e.command,ns:`conversation`}):T.t(`inspector.terminalStop`,{command:e.command,ns:`conversation`});return(0,Q.jsxs)(`div`,{className:`flex items-center gap-1 rounded-control px-2 py-1.5 hover:bg-control-hover`,children:[(0,Q.jsx)(h,{"aria-label":T.t(`inspector.terminalRunning`,{ns:`conversation`}),className:`size-3.5 shrink-0 animate-spin text-muted-foreground`}),(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Q.jsx)(`p`,{className:`truncate text-label font-medium text-foreground`,title:e.command,children:e.command}),(0,Q.jsx)(`p`,{className:`truncate text-caption text-muted-foreground`,title:e.cwd,children:e.cwd})]}),(0,Q.jsxs)(K,{children:[(0,Q.jsx)(q,{asChild:!0,children:(0,Q.jsx)(X,{"aria-label":t,disabled:i!==null,onClick:()=>void n(e.id),size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,Q.jsx)(ye,{"aria-hidden":`true`,className:`size-3`})})}),(0,Q.jsx)(J,{children:t})]})]},e.id)})})})})}function ms({onOpenSubagent:e,subagents:t}){return(0,Q.jsx)(_s,{icon:(0,Q.jsx)(le,{className:`size-3.5`}),title:T.t(`inspector.subagents`,{ns:`conversation`}),children:(0,Q.jsxs)(`section`,{"aria-label":T.t(`inspector.subagents`,{ns:`conversation`}),children:[(0,Q.jsx)(`p`,{className:`mb-1 px-2 text-caption text-muted-foreground`,children:T.t(`inspector.subagentCount`,{count:t.length,ns:`conversation`})}),(0,Q.jsx)(`div`,{className:`space-y-1`,children:t.map(t=>{let n=[t.model===void 0?void 0:rr(t.model),t.reasoningEffort].filter(e=>e!==void 0);return(0,Q.jsxs)(X,{variant:`ghost`,"aria-haspopup":`dialog`,"aria-label":T.t(`inspector.subagentOutput`,{nickname:t.nickname,ns:`conversation`}),className:`w-full rounded-control px-2 text-left transition-colors hover:bg-control-hover focus-visible:shadow-focus focus-visible:outline-none`,onClick:()=>{e({status:t.status,taskId:t.taskId})},type:`button`,children:[(0,Q.jsx)(gi,{collapsible:!1,status:ir(t.status),children:(0,Q.jsx)(vi,{title:t.nickname})}),n.length===0?null:(0,Q.jsx)(`p`,{className:`pb-2 text-caption text-muted-foreground`,children:n.join(` · `)})]},t.taskId)})})]})})}function hs({canRetry:e,isRefreshing:t,isRetrying:n,onRetry:r,servers:i}){if(i.length===0)return null;let a=T.t(n?`inspector.mcpReloading`:`inspector.mcpReload`,{ns:`conversation`});return(0,Q.jsx)(_s,{action:e?(0,Q.jsxs)(K,{children:[(0,Q.jsx)(q,{asChild:!0,children:(0,Q.jsx)(X,{"aria-label":a,disabled:t||n,onClick:r,size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,Q.jsx)(w,{"aria-hidden":`true`,className:t||n?`animate-spin`:void 0})})}),(0,Q.jsx)(J,{children:a})]}):null,icon:(0,Q.jsx)(Dn,{className:`size-3.5`}),title:`MCP`,children:(0,Q.jsx)(fs,{ariaLabel:T.t(`inspector.mcpEnabled`,{ns:`conversation`}),getKey:e=>e.name,items:i,renderItem:e=>(0,Q.jsx)(gs,{server:e})})})}function gs({server:e}){let t=[T.t(`inspector.mcpStatus.${e.status}`,{ns:`conversation`}),T.t(`inspector.mcpToolCount`,{count:e.toolCount,ns:`conversation`})],n=e.status===`connected`?(0,Q.jsx)(_,{"aria-hidden":`true`,className:`size-3.5 text-brand`}):e.status===`starting`?(0,Q.jsx)(h,{"aria-hidden":`true`,className:`size-3.5 animate-spin text-muted-foreground`}):e.status===`failed`?(0,Q.jsx)(gn,{"aria-hidden":`true`,className:`size-3.5 text-danger`}):e.status===`authenticationRequired`?(0,Q.jsx)(hn,{"aria-hidden":`true`,className:`size-3.5 text-warning`}):(0,Q.jsx)(hn,{"aria-hidden":`true`,className:`size-3.5 text-muted-foreground`});return(0,Q.jsxs)(`div`,{"aria-label":e.name,className:`flex min-h-10 items-start gap-2 rounded-control px-2 py-1.5 transition-colors hover:bg-control-hover`,"data-mcp-server-row":``,"data-mcp-status":e.status,children:[(0,Q.jsx)(`span`,{className:`mt-0.5 shrink-0`,children:n}),(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Q.jsx)(`p`,{className:`truncate text-label font-medium text-foreground`,children:e.displayName}),(0,Q.jsx)(`p`,{className:`text-caption text-muted-foreground`,children:t.join(` · `)})]})]})}function _s({action:e,children:t,icon:n,title:r}){return(0,Q.jsxs)(`section`,{"aria-label":r,children:[(0,Q.jsxs)(`div`,{className:`mb-2 flex min-h-7 items-center justify-between gap-2 text-xs font-medium text-foreground`,children:[(0,Q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,Q.jsx)(`span`,{className:`text-muted-foreground`,children:n}),r]}),e]}),(0,Q.jsx)(`div`,{className:`space-y-0.5`,children:t})]})}async function vs(e,t){let n=await fetch(e,{credentials:`same-origin`,signal:t});if(!n.ok)throw Error(`Attachment request failed with HTTP ${String(n.status)}`);let r=await n.arrayBuffer();if(r.byteLength>1048576)throw RangeError(`Attachment is too large to preview`);return new TextDecoder(`utf-8`,{fatal:!0}).decode(r)}function ys({name:e,triggerChildren:t,triggerClassName:n,url:r}){k(`conversation`);let[i,a]=(0,Z.useState)(!1),o=(0,Z.useId)(),s=c({enabled:i,queryFn:({signal:e})=>vs(r,e),queryKey:[`task-attachment-source`,r],staleTime:3e4}),l=T.t(`projectDialog.closeSource`,{ns:`workbench`});return(0,Q.jsxs)(gt,{onOpenChange:a,open:i,children:[(0,Q.jsx)(Vt,{asChild:!0,children:(0,Q.jsx)(X,{"aria-label":T.t(`timeline.openAttachment`,{name:e,ns:`conversation`}),className:n,"data-attachment-open":`source`,type:`button`,variant:`ghost`,children:t})}),(0,Q.jsx)(yt,{"aria-labelledby":o,className:`h-[min(82dvh,54rem)] max-w-[72rem] overflow-hidden p-0`,children:s.data===void 0?(0,Q.jsxs)(`section`,{className:`grid h-full min-h-0 grid-rows-[auto_minmax(0,1fr)] bg-raised`,children:[(0,Q.jsxs)(`header`,{className:`flex min-h-toolbar items-center gap-3 px-3 shadow-toolbar sm:px-4`,children:[(0,Q.jsx)(_e,{"aria-hidden":`true`,className:`size-4 shrink-0 text-muted-foreground`}),(0,Q.jsx)(Jt,{className:`min-w-0 flex-1 truncate text-body-small`,id:o,children:e}),(0,Q.jsx)(bs,{label:l,onClose:()=>{a(!1)}})]}),(0,Q.jsx)(`div`,{className:`grid min-h-0 place-items-center text-body-small ${s.error===null?`text-muted-foreground`:`text-danger`}`,role:s.error===null?`status`:`alert`,children:T.t(s.error===null?`projectDialog.loadingSource`:`projectDialog.loadSourceError`,{ns:`workbench`})})]}):(0,Q.jsx)(fe,{className:`grid h-full min-h-0 grid-rows-[auto_minmax(0,1fr)] rounded-none bg-content shadow-none`,code:s.data,language:en(e),showLineNumbers:!0,children:(0,Q.jsxs)(pe,{className:`min-h-toolbar gap-3 bg-raised px-3 shadow-toolbar sm:px-4`,children:[(0,Q.jsxs)(he,{className:`min-w-0 flex-1`,children:[(0,Q.jsx)(_e,{"aria-hidden":`true`,className:`size-4 shrink-0 text-muted-foreground`}),(0,Q.jsx)(Jt,{asChild:!0,children:(0,Q.jsx)(`h2`,{className:`truncate text-body-small font-semibold`,id:o,title:e,children:(0,Q.jsx)(ue,{children:e})})})]}),(0,Q.jsxs)(me,{children:[(0,Q.jsx)(de,{}),(0,Q.jsx)(bs,{label:l,onClose:()=>{a(!1)}})]})]})})})]})}function bs({label:e,onClose:t}){return(0,Q.jsxs)(K,{children:[(0,Q.jsx)(q,{asChild:!0,children:(0,Q.jsx)(X,{"aria-label":e,onClick:t,size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,Q.jsx)(A,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,Q.jsx)(J,{children:e})]})}function xs(e){return{admin:T.t(`inspector.sourceRole.admin`,{ns:`conversation`}),repo:T.t(`inspector.sourceRole.repo`,{ns:`conversation`}),system:T.t(`inspector.sourceRole.system`,{ns:`conversation`}),user:T.t(`inspector.sourceRole.user`,{ns:`conversation`})}[e]}function Ss(e,t){let n=[],r=new Map(t.map(e=>[e.name,e])),i=new Set,a=new Set;for(let t of e)for(let e of t.items)if(!(e.type!==`message`||e.role!==`user`)){for(let t of e.skills??[]){if(i.has(t.name))continue;i.add(t.name);let e=r.get(t.name);n.push({detail:e===void 0?`Skill`:`Skill · ${xs(e.scope)}`,id:`skill:${t.name}`,kind:`skill`,name:e?.displayName??t.name,...e?.description===void 0?{}:{tooltip:e.description}})}for(let t of e.attachments??[])a.has(t.id)||(a.add(t.id),n.push({attachment:t,detail:T.t(`inspector.attachmentDetail`,{ns:`conversation`}),id:`attachment:${t.id}`,kind:`attachment`,name:t.name}))}return n}var Cs=`flex h-auto min-h-10 w-full items-center justify-start gap-2 rounded-control px-2 py-1.5 text-left transition-colors hover:bg-control-hover`;function ws({source:e}){return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`span`,{className:`shrink-0 text-muted-foreground`,children:e.kind===`skill`?(0,Q.jsx)(De,{"aria-hidden":`true`,className:`size-3.5 text-brand`}):(0,Q.jsx)(be,{"aria-hidden":`true`,className:`size-3.5`})}),(0,Q.jsxs)(`div`,{className:`min-w-0`,children:[(0,Q.jsx)(`p`,{className:`truncate text-label font-medium text-foreground`,title:e.name,children:e.name}),(0,Q.jsx)(`p`,{className:`truncate text-caption text-muted-foreground`,children:e.detail})]})]})}function Ts({attachmentUrl:e,onOpenAttachment:t,source:n}){if(n.kind===`attachment`&&e!==void 0){let r=(0,Q.jsx)(ws,{source:n}),i=Lt(n.attachment);return i===`image`?(0,Q.jsx)(wo,{name:n.name,triggerChildren:r,triggerClassName:Cs,url:e}):i===`source`?(0,Q.jsx)(ys,{name:n.name,triggerChildren:r,triggerClassName:Cs,url:e}):(0,Q.jsx)(X,{"aria-label":T.t(`timeline.openAttachment`,{name:n.name,ns:`conversation`}),className:Cs,"data-attachment-open":`system`,onClick:()=>{t(n.attachment.id)},type:`button`,variant:`ghost`,children:r})}return n.kind===`skill`&&n.tooltip!==void 0?(0,Q.jsxs)(K,{children:[(0,Q.jsx)(q,{asChild:!0,children:(0,Q.jsx)(`div`,{"aria-description":n.tooltip,className:Cs,children:(0,Q.jsx)(ws,{source:n})})}),(0,Q.jsx)(J,{side:`top`,children:n.tooltip})]}):(0,Q.jsx)(`div`,{className:Cs,children:(0,Q.jsx)(ws,{source:n})})}function Es({onOpenAttachment:e,projectId:t,skills:n,taskId:r,turns:i}){let a=(0,Z.useMemo)(()=>Ss(i,n),[n,i]);return a.length===0?null:(0,Q.jsx)(_s,{icon:(0,Q.jsx)(xe,{className:`size-3.5`}),title:T.t(`inspector.source`,{ns:`conversation`}),children:(0,Q.jsx)(fs,{ariaLabel:T.t(`inspector.contextSources`,{ns:`conversation`}),getKey:e=>e.id,items:a,renderItem:n=>(0,Q.jsx)(`div`,{"data-inspector-source-row":``,children:(0,Q.jsx)(Ts,{...n.kind===`attachment`&&t!==void 0&&r!==void 0?{attachmentUrl:f(``,t,r,n.attachment.id)}:{},onOpenAttachment:e,source:n})})})})}function Ds({className:e=``,...t}){return(0,Q.jsx)(`div`,{className:Y(e),"data-ai-queue":``,...t})}function Os({className:e=``,...t}){return(0,Q.jsx)(`ul`,{className:Y(`space-y-0.5`,e),...t})}function ks({className:e=``,status:t,...n}){return(0,Q.jsx)(`li`,{className:Y(`grid min-h-8 grid-cols-[1.125rem_minmax(0,1fr)] items-start gap-2 rounded-control px-2 py-1.5 transition-colors hover:bg-control-hover`,e),"data-status":t,...n})}function As({className:e=``,label:t,status:n,...r}){let i=n===`completed`?(0,Q.jsx)(_,{"aria-hidden":`true`,className:`size-3.5`}):n===`in_progress`?(0,Q.jsx)(h,{"aria-hidden":`true`,className:`size-3.5 animate-spin`}):(0,Q.jsx)(g,{"aria-hidden":`true`,className:`size-3.5`});return(0,Q.jsx)(`span`,{"aria-label":t,className:Y(`mt-0.5 inline-flex size-4 shrink-0 items-center justify-center`,n===`in_progress`?`text-brand`:n===`completed`?`text-muted-foreground`:`text-subtle-foreground`,e),role:`img`,...r,children:i})}function js({className:e=``,status:t,...n}){return(0,Q.jsx)(`span`,{className:Y(`min-w-0 break-words text-label leading-5`,t===`completed`?`text-muted-foreground`:`text-foreground`,e),...n})}function Ms({plan:e}){return(0,Q.jsx)(_s,{icon:(0,Q.jsx)(Cn,{className:`size-3.5`}),title:T.t(`inspector.plan`,{ns:`conversation`}),children:(0,Q.jsxs)(Ds,{children:[e.explanation===null||e.explanation.trim()===``?null:(0,Q.jsx)(`p`,{className:`px-2 pb-1.5 text-caption leading-5 text-muted-foreground`,children:e.explanation}),(0,Q.jsx)(Os,{children:e.steps.map((e,t)=>(0,Q.jsxs)(ks,{status:e.status,children:[(0,Q.jsx)(As,{label:T.t(`inspector.planStatus.${e.status}`,{ns:`conversation`}),status:e.status}),(0,Q.jsx)(js,{status:e.status,children:e.text})]},`${String(t)}:${e.text}`))})]})})}function Ns(e){let t=new Map;for(let n of e){let e=t.get(n.path);if(e===void 0){t.set(n.path,n);continue}t.set(n.path,{diff:[e.diff,n.diff].filter(e=>e!==``).join(`
8
+ `),kind:e.kind===n.kind?e.kind:`update`,path:n.path})}return[...t.values()]}function Ps(e,t){let n=[...e?.unstaged??[],...e?.staged??[]],r=t!==void 0&&t.snapshot===e?.snapshot?[...t.unstaged,...t.staged]:n.every(e=>e.diff!==``)?n:void 0,i=r?.reduce((e,t)=>{let n=rn(t);return{additions:e.additions+n.additions,removals:e.removals+n.removals}},{additions:0,removals:0}),a=Ns(r??n);return{changeStats:i,displayChanges:a,fileChangesByPath:new Map(a.map(e=>[e.path,e]))}}function Fs({changeCount:e,changeStats:t,onCommitChanges:n,onOpenChanges:r}){return e===0?null:(0,Q.jsx)(_s,{action:(0,Q.jsxs)(X,{"aria-label":T.t(`inspector.commitChanges`,{count:e,ns:`conversation`}),className:`h-6 gap-1 px-1.5 text-caption font-medium`,id:`workbench-commit-changes`,onClick:n,size:`toolbar`,type:`button`,variant:`ghost`,children:[(0,Q.jsx)(Se,{"aria-hidden":`true`,className:`size-3.5`}),T.t(`inspector.commit`,{ns:`conversation`})]}),icon:(0,Q.jsx)(bn,{className:`size-3.5`}),title:T.t(`inspector.gitChanges`,{ns:`conversation`}),children:(0,Q.jsxs)(X,{"aria-label":T.t(`inspector.openChanges`,{count:e,ns:`conversation`}),className:`w-full gap-1.5`,contentAlign:`start`,"data-open-inspector-changes":``,onClick:r,size:`toolbar`,type:`button`,variant:`ghost`,children:[(0,Q.jsx)(`span`,{children:T.t(`inspector.gitChangesCount`,{count:e,ns:`conversation`})}),t===void 0?null:(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(`span`,{className:`font-medium text-diff-added`,children:[`+`,t.additions]}),(0,Q.jsxs)(`span`,{className:`font-medium text-diff-removed`,children:[`-`,t.removals]})]})]})})}function Is(e){let t=Math.floor(e/60),n=e%60;return t===0?T.t(`inspector.goalSeconds`,{count:n,ns:`conversation`}):T.t(`inspector.goalDuration`,{minutes:t,ns:`conversation`,seconds:n})}function Ls({goal:e,onClear:t,onStatusChange:n}){let[r,i]=(0,Z.useState)(null),[a,o]=(0,Z.useState)(null),s=new Intl.NumberFormat(T.language),c=T.t(`inspector.goalStatus.${e.status}`,{ns:`conversation`}),l=e.status===`active`?`paused`:`active`,u=e.status===`active`||e.status===`paused`||e.status===`blocked`,d=T.t(e.status===`active`?`inspector.goalPause`:`inspector.goalResume`,{ns:`conversation`}),f=async(e,t)=>{i(e),o(null);try{await t()}catch(e){o(e instanceof Error?e:Error(`Goal mutation failed`))}finally{i(null)}};return(0,Q.jsx)(_s,{action:(0,Q.jsxs)(`div`,{className:`flex items-center gap-0.5`,children:[u?(0,Q.jsxs)(K,{children:[(0,Q.jsx)(q,{asChild:!0,children:(0,Q.jsx)(X,{"aria-label":d,disabled:r!==null,onClick:()=>void f(`status`,()=>n(l)),size:`icon-sm`,type:`button`,variant:`ghost`,children:e.status===`active`?(0,Q.jsx)(ae,{"aria-hidden":`true`,className:`size-3.5`}):(0,Q.jsx)(F,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,Q.jsx)(J,{children:d})]}):null,(0,Q.jsxs)(K,{children:[(0,Q.jsx)(q,{asChild:!0,children:(0,Q.jsx)(X,{"aria-label":T.t(`inspector.goalClear`,{ns:`conversation`}),className:`hover:text-danger`,disabled:r!==null,onClick:()=>void f(`clear`,t),size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,Q.jsx)(j,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,Q.jsx)(J,{children:T.t(`inspector.goalClear`,{ns:`conversation`})})]})]}),icon:(0,Q.jsx)(V,{className:`size-3.5`}),title:T.t(`inspector.goal`,{ns:`conversation`}),children:(0,Q.jsxs)(`div`,{className:`space-y-2 px-2 py-1`,children:[(0,Q.jsx)(`p`,{className:`whitespace-pre-wrap break-words text-label leading-5 text-foreground`,children:e.objective}),(0,Q.jsxs)(`div`,{className:`flex flex-wrap items-center gap-x-3 gap-y-1 text-caption text-muted-foreground`,children:[(0,Q.jsxs)(`span`,{className:`inline-flex items-center gap-1`,children:[(0,Q.jsx)(`span`,{"aria-hidden":`true`,className:`size-1.5 rounded-full bg-brand`}),c]}),(0,Q.jsxs)(`span`,{className:`inline-flex items-center gap-1`,children:[(0,Q.jsx)(I,{"aria-hidden":`true`,className:`size-3`}),Is(e.timeUsedSeconds)]}),(0,Q.jsx)(`span`,{children:e.tokenBudget===null?T.t(`inspector.goalTokens`,{ns:`conversation`,used:s.format(e.tokensUsed)}):T.t(`inspector.goalTokenBudget`,{budget:s.format(e.tokenBudget),ns:`conversation`,used:s.format(e.tokensUsed)})})]}),a===null?null:(0,Q.jsx)(`p`,{className:`text-caption text-danger`,role:`alert`,children:T.t(`inspector.goalMutationFailed`,{ns:`conversation`})})]})})}var Rs={project:yn,changes:Se,context:dn,file:_e,history:R};function zs({activeTab:e,availableTabs:t,onCloseFile:n,onTabChange:r}){return(0,Q.jsx)(`div`,{className:`flex min-w-0 flex-1 items-center gap-0.5 overflow-x-auto`,role:`tablist`,children:t.map(t=>{let i=Rs[t],a=t===`file`&&n!==void 0;return(0,Z.createElement)(`div`,{...a?{"aria-label":T.t(`inspector.file`,{ns:`conversation`}),role:`group`}:{},className:`relative flex shrink-0 items-center`,key:t},(0,Q.jsxs)(X,{"aria-selected":e===t,className:`rounded-control ${a?`pr-6`:``} ${e===t?`bg-control-hover text-foreground`:``}`,onClick:()=>{r(t)},role:`tab`,size:`toolbar`,type:`button`,variant:`ghost`,children:[(0,Q.jsx)(i,{"aria-hidden":`true`}),(0,Q.jsx)(`span`,{children:T.t(`inspector.${t}`,{ns:`conversation`})})]}),a?(0,Q.jsxs)(K,{children:[(0,Q.jsx)(q,{asChild:!0,children:(0,Q.jsx)(X,{"aria-label":T.t(`inspector.closeFile`,{ns:`conversation`}),className:`absolute right-1 size-4`,onClick:n,size:`embedded`,type:`button`,variant:`ghost`,children:(0,Q.jsx)(A,{className:`size-3`,"aria-hidden":`true`})})}),(0,Q.jsx)(J,{children:T.t(`inspector.closeFile`,{ns:`conversation`})})]}):null)})})}function Bs({onClose:e}){if(e===void 0)return null;let t=T.t(`shell.closeInspector`,{ns:`workbench`});return(0,Q.jsxs)(K,{children:[(0,Q.jsx)(q,{asChild:!0,children:(0,Q.jsx)(X,{"aria-label":t,onClick:e,size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,Q.jsx)(Ce,{"aria-hidden":`true`})})}),(0,Q.jsx)(J,{children:t})]})}function Vs({activeTab:e,availableTabs:t,contextOnly:n,onClose:r,onCloseFile:i,onTabChange:a}){return n&&t.length===1?(0,Q.jsx)(`div`,{className:`absolute right-2 top-2 z-10 min-[1101px]:hidden`,children:(0,Q.jsx)(Bs,{onClose:r})}):(0,Q.jsxs)(`div`,{className:`flex h-workbench-header w-full min-w-0 shrink-0 items-center gap-2 overflow-hidden px-1.5`,children:[(0,Q.jsx)(zs,{activeTab:e,availableTabs:t,...i===void 0?{}:{onCloseFile:i},onTabChange:a}),(0,Q.jsx)(`div`,{className:`shrink-0 min-[1101px]:hidden`,children:(0,Q.jsx)(Bs,{onClose:r})})]})}var Hs=Object.defineProperty,Us=Object.defineProperties,Ws=Object.getOwnPropertyDescriptors,Gs=Object.getOwnPropertySymbols,Ks=Object.prototype.hasOwnProperty,qs=Object.prototype.propertyIsEnumerable,Js=(e,t,n)=>t in e?Hs(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,$=(e,t)=>{for(var n in t||={})Ks.call(t,n)&&Js(e,n,t[n]);if(Gs)for(var n of Gs(t))qs.call(t,n)&&Js(e,n,t[n]);return e},Ys=(e,t)=>Us(e,Ws(t)),Xs=(e,t,n)=>new Promise((r,i)=>{var a=e=>{try{s(n.next(e))}catch(e){i(e)}},o=e=>{try{s(n.throw(e))}catch(e){i(e)}},s=e=>e.done?r(e.value):Promise.resolve(e.value).then(a,o);s((n=n.apply(e,t)).next())});function Zs(e,t){return typeof e==`function`?e(t):e}function Qs(e,t){return n=>{t.setState(t=>Ys($({},t),{[e]:Zs(n,t[e])}))}}var $s=(e,t=100,n=1e3)=>new Promise(r=>{let i,a=setInterval(()=>{e()&&(r(),clearInterval(a),clearTimeout(i))},t);i=setTimeout(()=>{clearInterval(a),r()},n)}),ec=`Headless Tree: `,tc=e=>Error(ec+e),nc=e=>console.warn(ec+e),rc={key:`tree`,getInitialState:e=>$({expandedItems:[],focusedItem:null},e),getDefaultConfig:(e,t)=>$({setExpandedItems:Qs(`expandedItems`,t),setFocusedItem:Qs(`focusedItem`,t)},e),stateHandlerNames:{expandedItems:`setExpandedItems`,focusedItem:`setFocusedItem`},treeInstance:{getItemsMeta:({tree:e})=>{let{rootItemId:t}=e.getConfig(),{expandedItems:n}=e.getState(),r=[],i=new Set(n),a=(t,n,o,s,c)=>{if(n.includes(t)){nc(`Circular reference for ${n.join(`.`)}`);return}if(r.push({itemId:t,level:o,index:r.length,parentId:n.at(-1),setSize:s,posInSet:c}),i.has(t)){let r=e.retrieveChildrenIds(t)??[],i=0;for(let e of r)a(e,n.concat(t),o+1,r.length,i++)}},o=e.retrieveChildrenIds(t),s=0;for(let e of o)a(e,[t],0,o.length,s++);return r},getFocusedItem:({tree:e})=>{let t=e.getState().focusedItem;return(t===null?null:e.getItemInstance(t))??e.getItems()[0]},getRootItem:({tree:e})=>{let{rootItemId:t}=e.getConfig();return e.getItemInstance(t)},focusNextItem:({tree:e})=>{var t;let n=e.getFocusedItem().getItemMeta();if(!n)return;let r=Math.min(n.index+1,e.getItems().length-1);(t=e.getItems()[r])==null||t.setFocused()},focusPreviousItem:({tree:e})=>{var t;let n=e.getFocusedItem().getItemMeta();if(!n)return;let r=Math.max(n.index-1,0);(t=e.getItems()[r])==null||t.setFocused()},updateDomFocus:({tree:e})=>{setTimeout(()=>Xs(null,null,function*(){var t,n,r,i;let a=e.getFocusedItem();(n=(t=e.getConfig()).scrollToItem)==null||n.call(t,a),yield $s(()=>a.getElement()!==null,20,500);let o=a.getElement();if(!o){(r=e.getItems()[0])==null||r.setFocused(),(i=e.getItems()[0]?.getElement())==null||i.focus();return}o.focus()}))},getContainerProps:({prev:e,tree:t},n)=>Ys($({},e?.()),{role:`tree`,"aria-label":n??``,ref:t.registerElement}),isSearchOpen:()=>!1},itemInstance:{scrollTo:(e,t)=>Xs(null,[e,t],function*({tree:e,item:t},n){var r,i,a;(i=(r=e.getConfig()).scrollToItem)==null||i.call(r,t),yield $s(()=>t.getElement()!==null,20),(a=t.getElement())==null||a.scrollIntoView(n)}),getId:({itemId:e})=>e,getKey:({itemId:e})=>e,getProps:({item:e,prev:t})=>{let n=e.getItemMeta();return Ys($({},t?.()),{ref:e.registerElement,role:`treeitem`,"aria-setsize":n.setSize,"aria-posinset":n.posInSet+1,"aria-selected":`false`,"aria-label":e.getItemName(),"aria-level":n.level+1,"aria-expanded":e.isFolder()?e.isExpanded():void 0,tabIndex:e.isFocused()?0:-1,onClick:t=>{e.setFocused(),e.primaryAction(),!(t.ctrlKey||t.shiftKey||t.metaKey)&&e.isFolder()&&(e.isExpanded()?e.collapse():e.expand())}})},expand:({tree:e,item:t,itemId:n})=>{t.isFolder()&&(e.getState().loadingItemChildrens?.includes(n)||(e.applySubStateUpdate(`expandedItems`,e=>[...e,n]),e.rebuildTree()))},collapse:({tree:e,item:t,itemId:n})=>{t.isFolder()&&(e.applySubStateUpdate(`expandedItems`,e=>e.filter(e=>e!==n)),e.rebuildTree())},getItemData:({tree:e,itemId:t})=>e.retrieveItemData(t),equals:({item:e},t)=>e.getId()===t?.getId(),isExpanded:({tree:e,itemId:t})=>e.getState().expandedItems.includes(t),isDescendentOf:({item:e},t)=>{let n=e.getParent();return!!(n?.getId()===t||n?.isDescendentOf(t))},isFocused:({tree:e,item:t,itemId:n})=>e.getState().focusedItem===n||e.getState().focusedItem===null&&t.getItemMeta().index===0,isFolder:({tree:e,item:t,itemId:n})=>n===e.getConfig().rootItemId||e.getConfig().isItemFolder(t),getItemName:({tree:e,item:t})=>e.getConfig().getItemName(t),setFocused:({tree:e,itemId:t})=>{e.applySubStateUpdate(`focusedItem`,t)},primaryAction:({tree:e,item:t})=>{var n;return(n=e.getConfig()).onPrimaryAction?.call(n,t)},getParent:({tree:e,item:t})=>t.getItemMeta().parentId?e.getItemInstance(t.getItemMeta().parentId):void 0,getIndexInParent:({item:e})=>e.getItemMeta().posInSet,getChildren:({tree:e,itemId:t})=>e.retrieveChildrenIds(t).map(t=>e.getItemInstance(t)),getTree:({tree:e})=>e,getItemAbove:({tree:e,item:t})=>e.getItems()[t.getItemMeta().index-1],getItemBelow:({tree:e,item:t})=>e.getItems()[t.getItemMeta().index+1]},hotkeys:{focusNextItem:{hotkey:`ArrowDown`,canRepeat:!0,preventDefault:!0,isEnabled:e=>!(e.isSearchOpen?.call(e)??!1)&&!e.getState().dnd,handler:(e,t)=>{t.focusNextItem(),t.updateDomFocus()}},focusPreviousItem:{hotkey:`ArrowUp`,canRepeat:!0,preventDefault:!0,isEnabled:e=>!(e.isSearchOpen?.call(e)??!1)&&!e.getState().dnd,handler:(e,t)=>{t.focusPreviousItem(),t.updateDomFocus()}},expandOrDown:{hotkey:`ArrowRight`,canRepeat:!0,handler:(e,t)=>{let n=t.getFocusedItem();n.isExpanded()||!n.isFolder()?(t.focusNextItem(),t.updateDomFocus()):n.expand()}},collapseOrUp:{hotkey:`ArrowLeft`,canRepeat:!0,handler:(e,t)=>{var n;let r=t.getFocusedItem();(!r.isExpanded()||!r.isFolder())&&r.getItemMeta().level!==0?((n=r.getParent())==null||n.setFocused(),t.updateDomFocus()):r.collapse()}},focusFirstItem:{hotkey:`Home`,handler:(e,t)=>{var n;(n=t.getItems()[0])==null||n.setFocused(),t.updateDomFocus()}},focusLastItem:{hotkey:`End`,handler:(e,t)=>{var n;(n=t.getItems()[t.getItems().length-1])==null||n.setFocused(),t.updateDomFocus()}}}},ic=(e,t,n)=>{let r={};return[r,()=>{let i=n(r);featureLoop:for(let n=0;n<e.length;n++){let a=e[n][t];if(!a)continue featureLoop;methodLoop:for(let[e,t]of Object.entries(a)){if(!t)continue methodLoop;let n=r[e];r[e]=(...e)=>t(Ys($({},i),{prev:n}),...e)}}}]},ac=e=>{let t=e?.map(e=>e.key);for(let n of e??[]){let e=n.deps?.find(e=>!t?.includes(e));if(e)throw tc(`${n.key} needs ${e}`)}},oc=(e,t)=>{let n=e.length;for(let r=0;r<n;r++)for(let i=r+1;i<n;i++)t(e[i],e[r])<0&&([e[r],e[i]]=[e[i],e[r]]);return e},sc=e=>(t,n)=>n.key&&t.overwrites?.includes(n.key)?1:t.key&&n.overwrites?.includes(t.key)?-1:e.indexOf(t)-e.indexOf(n),cc=(e=[])=>oc(e,sc(e)),lc=e=>{let t=e.instanceBuilder??ic,n=[rc,...cc(e.features)];ac(n);let r=[...n],[i,a]=t(r,`treeInstance`,e=>({tree:e})),o=n.reduce((e,t)=>t.getInitialState?.call(t,e,i)??e,e.initialState??e.state??{}),s=n.reduce((e,t)=>t.getDefaultConfig?.call(t,e,i)??e,e),c=n.reduce((e,t)=>$($({},e),t.stateHandlerNames),{}),l,u={current:{}},d=!1,f={},p=[],m={},h={},g={},_={},v=()=>{p=[],g={};let[e,n]=t(r,`itemInstance`,e=>({item:e,tree:i,itemId:s.rootItemId}));n(),f[s.rootItemId]=e,g[s.rootItemId]={itemId:s.rootItemId,index:-1,parentId:null,level:-1,posInSet:0,setSize:1};for(let e of i.getItemsMeta())if(g[e.itemId]=e,f[e.itemId])p.push(f[e.itemId]);else{let[n,a]=t(r,`itemInstance`,t=>({item:t,tree:i,itemId:e.itemId}));a(),f[e.itemId]=n,p.push(n)}d=!1},y=e=>{for(let t of n)e(t)};r.unshift({key:`main`,treeInstance:{getState:()=>o,setState:({},e)=>{var t;(t=s.setState)==null||t.call(s,o)},setMounted:({},e)=>{var t;let n=u.current;n.isMounted=e,e&&((t=n.waitingForMount)==null||t.forEach(e=>e()),n.waitingForMount=[])},applySubStateUpdate:({},e,t)=>{let n=()=>{o[e]=typeof t==`function`?t(o[e]):t;let n=s[c[e]];n?.(o[e])},r=u.current;r.isMounted?n():(r.waitingForMount??=[],r.waitingForMount.push(n))},rebuildTree:()=>{var e;let t=u.current;t.isMounted?(v(),(e=s.setState)==null||e.call(s,o)):(t.waitingForMount??=[],t.waitingForMount.push(()=>{var e;v(),(e=s.setState)==null||e.call(s,o)}))},scheduleRebuildTree:()=>{d=!0},getConfig:()=>s,setConfig:(e,t)=>{var n;let r=typeof t==`function`?t(s):t,i=r.state?.expandedItems&&r.state?.expandedItems!==o.expandedItems;s=r,r.state&&(o=$($({},o),r.state)),i&&(v(),(n=s.setState)==null||n.call(s,o))},getItemInstance:({},e)=>{let n=f[e];if(!n){let[n,a]=t(r,`itemInstance`,t=>({item:t,tree:i,itemId:e}));return a(),n}return n},getItems:()=>(d&&v(),p),registerElement:({},e)=>{l!==e&&(l&&!e?y(e=>e.onTreeUnmount?.call(e,i,l)):!l&&e&&y(t=>t.onTreeMount?.call(t,i,e)),l=e)},getElement:()=>l,getDataRef:()=>u,getHotkeyPresets:()=>_},itemInstance:{registerElement:({itemId:e,item:t},n)=>{if(m[e]===n)return;let r=m[e];r&&!n?y(e=>e.onItemUnmount?.call(e,t,r,i)):!r&&n&&y(e=>e.onItemMount?.call(e,t,n,i)),m[e]=n},getElement:({itemId:e})=>m[e],getDataRef:({itemId:e})=>h[e]??(h[e]={current:{}}),getItemMeta:({itemId:e})=>g[e]??{itemId:e,parentId:null,level:-1,index:-1,posInSet:0,setSize:1}}});for(let e of r)Object.assign(_,e.hotkeys??{});return a(),i},uc={key:`selection`,getInitialState:e=>$({selectedItems:[]},e),getDefaultConfig:(e,t)=>$({setSelectedItems:Qs(`selectedItems`,t)},e),stateHandlerNames:{selectedItems:`setSelectedItems`},treeInstance:{setSelectedItems:({tree:e},t)=>{e.applySubStateUpdate(`selectedItems`,t)},getSelectedItems:({tree:e})=>e.getState().selectedItems.map(e.getItemInstance)},itemInstance:{select:({tree:e,itemId:t})=>{let{selectedItems:n}=e.getState();e.setSelectedItems(n.includes(t)?n:[...n,t])},deselect:({tree:e,itemId:t})=>{let{selectedItems:n}=e.getState();e.setSelectedItems(n.filter(e=>e!==t))},isSelected:({tree:e,itemId:t})=>{let{selectedItems:n}=e.getState();return n.includes(t)},selectUpTo:({tree:e,item:t,itemId:n},r)=>{let i=t.getItemMeta().index,a=e.getDataRef();if(!a.current.selectUpToAnchorId){a.current.selectUpToAnchorId=n,e.setSelectedItems([n]);return}let o=e.getItemInstance(a.current.selectUpToAnchorId).getItemMeta().index,[s,c]=i<o?[i,o]:[o,i],l=e.getItems().slice(s,c+1).map(e=>e.getItemMeta().itemId);if(!r){e.setSelectedItems(l);return}let{selectedItems:u}=e.getState(),d=[...new Set([...u,...l])];e.setSelectedItems(d)},toggleSelect:({item:e})=>{e.isSelected()?e.deselect():e.select()},getProps:({tree:e,item:t,itemId:n,prev:r})=>Ys($({},r?.()),{"aria-selected":t.isSelected()?`true`:`false`,onClick:i=>{var a,o;i.shiftKey?t.selectUpTo(i.ctrlKey||i.metaKey):i.ctrlKey||i.metaKey?t.toggleSelect():e.setSelectedItems([n]),i.shiftKey||(e.getDataRef().current.selectUpToAnchorId=n),(o=(a=r?.())?.onClick)==null||o.call(a,i)}})},hotkeys:{toggleSelectedItem:{hotkey:`Control+Space`,preventDefault:!0,handler:(e,t)=>{t.getFocusedItem().toggleSelect()}},selectUpwards:{hotkey:`Shift+ArrowUp`,handler:(e,t)=>{let n=t.getFocusedItem(),r=n.getItemAbove();r&&(n.isSelected()&&r.isSelected()?n.deselect():r.select(),r.setFocused(),t.updateDomFocus())}},selectDownwards:{hotkey:`Shift+ArrowDown`,handler:(e,t)=>{let n=t.getFocusedItem(),r=n.getItemBelow();r&&(n.isSelected()&&r.isSelected()?n.deselect():r.select(),r.setFocused(),t.updateDomFocus())}},selectAll:{hotkey:`Control+KeyA`,preventDefault:!0,handler:(e,t)=>{t.setSelectedItems(t.getItems().map(e=>e.getId()))}}}},dc=e=>e.code!==``&&e.code!==`Unidentified`?e.code:e.key,fc={letter:/^Key[A-Z]$/,letterornumber:/^(Key[A-Z]|Digit[0-9])$/,plus:/^(NumpadAdd|Plus)$/,minus:/^(NumpadSubtract|Minus)$/,control:/^(ControlLeft|ControlRight)$/,shift:/^(ShiftLeft|ShiftRight)$/,metaorcontrol:/^(MetaLeft|MetaRight|ControlLeft|ControlRight)$/,enter:/^(Enter|NumpadEnter)$/},pc=new Set([`MetaLeft`,`MetaRight`,`Meta`,`ControlLeft`,`ControlRight`,`Control`,`AltLeft`,`AltRight`,`Alt`,`ShiftLeft`,`ShiftRight`,`Shift`]),mc=(e,t,n)=>{let r=n.hotkey.toLowerCase().split(`+`),i=r.every(t=>{if(t in fc)return[...e].some(e=>fc[t].test(e));let n=[...e].map(e=>e.toLowerCase());return n.includes(t.toLowerCase())||n.includes(`key${t.toLowerCase()}`)}),a=!n.isEnabled||n.isEnabled(t);return i&&a&&e.size===r.length},hc=(e,t,n,r)=>Object.entries($($({},n),r)).find(([,n])=>mc(e,t,n))?.[0],gc={clearPressedKeys:e=>{e.current.pressedKeys=new Set},dispatchKeyDown:(e,t,n,r={})=>{var i,a;let{isInputFocused:o=!1,releaseAfterDispatch:s=!1}=r,{ignoreHotkeysOnInputs:c,onTreeHotkey:l,hotkeys:u}=e.getConfig();if(o&&c)return;let d=dc({code:n.code??``,key:n.key??``});(i=t.current).pressedKeys??(i.pressedKeys=new Set);let f=!t.current.pressedKeys.has(d);d&&t.current.pressedKeys.add(d);let p=hc(t.current.pressedKeys,e,e.getHotkeyPresets(),u);if(s&&d&&t.current.pressedKeys.delete(d),!p)return;let m=$($({},e.getHotkeyPresets()[p]),u?.[p]);m&&(!m.allowWhenInputFocused&&o||!m.canRepeat&&!f||(m.preventDefault&&((a=n.preventDefault)==null||a.call(n)),m.handler(n,e),l?.(p,n)))},dispatchKeyUp:(e,t)=>{var n;let r=dc({code:t.code??``,key:t.key??``});r&&((n=e.current).pressedKeys??(n.pressedKeys=new Set),pc.has(r)&&(e.current.pressedKeys=new Set([...e.current.pressedKeys].filter(e=>pc.has(e)))),e.current.pressedKeys.delete(r))}},_c={key:`hotkeys-core`,onTreeMount:(e,t)=>{let n=e.getDataRef(),r=t=>{let r=t.target instanceof HTMLInputElement;gc.dispatchKeyDown(e,n,t,{isInputFocused:r,releaseAfterDispatch:r})},i=e=>{gc.dispatchKeyUp(n,e)},a=()=>{gc.clearPressedKeys(n)};t.addEventListener(`keydown`,r),document.addEventListener(`keyup`,i),window.addEventListener(`focus`,a),n.current.keydownHandler=r,n.current.keyupHandler=i,n.current.resetHandler=a},onTreeUnmount:(e,t)=>{let n=e.getDataRef();n.current.keyupHandler&&(document.removeEventListener(`keyup`,n.current.keyupHandler),delete n.current.keyupHandler),n.current.keydownHandler&&(t.removeEventListener(`keydown`,n.current.keydownHandler),delete n.current.keydownHandler),n.current.resetHandler&&(window.removeEventListener(`focus`,n.current.resetHandler),delete n.current.resetHandler)}},vc=e=>{var t,n,r,i;let a=e.getDataRef();return(t=a.current).itemData??(t.itemData={}),(n=a.current).childrenIds??(n.childrenIds={}),(r=a.current).loadingDataSubs??(r.loadingDataSubs={}),(i=a.current).loadingChildrenSubs??(i.loadingChildrenSubs={}),a},yc=(e,t)=>Xs(null,null,function*(){var n,r;let i=e.getConfig(),a=vc(e);if(e.getState().loadingItemData.includes(t))return new Promise(e=>{var n;(n=a.current.loadingDataSubs)[t]??(n[t]=[]),a.current.loadingDataSubs[t].push(()=>{e(a.current.itemData[t])})});a.current.itemData[t]||e.applySubStateUpdate(`loadingItemData`,e=>[...e,t]);let o=yield i.dataLoader.getItem(t);return a.current.itemData[t]=o,(n=i.onLoadedItem)==null||n.call(i,t,o),e.applySubStateUpdate(`loadingItemData`,e=>e.filter(e=>e!==t)),(r=a.current.loadingDataSubs[t])==null||r.forEach(e=>e()),o}),bc=(e,t)=>Xs(null,null,function*(){var n,r,i;let a=e.getConfig(),o=vc(e),s;if(e.getState().loadingItemChildrens.includes(t))return new Promise(e=>{var n;(n=o.current.loadingChildrenSubs)[t]??(n[t]=[]),o.current.loadingChildrenSubs[t].push(()=>{e(o.current.childrenIds[t])})});if(o.current.childrenIds[t]||e.applySubStateUpdate(`loadingItemChildrens`,e=>[...e,t]),`getChildrenWithData`in a.dataLoader){let r=yield a.dataLoader.getChildrenWithData(t);s=r.map(e=>e.id),o.current.childrenIds[t]=s,r.forEach(({id:e,data:t})=>{var n;o.current.itemData[e]=t,(n=a.onLoadedItem)==null||n.call(a,e,t)}),(n=a.onLoadedChildren)==null||n.call(a,t,s),e.rebuildTree(),e.applySubStateUpdate(`loadingItemData`,e=>e.filter(e=>!s.includes(e)))}else s=yield a.dataLoader.getChildren(t),o.current.childrenIds[t]=s,(r=a.onLoadedChildren)==null||r.call(a,t,s),e.rebuildTree();return e.applySubStateUpdate(`loadingItemChildrens`,e=>e.filter(e=>e!==t)),(i=o.current.loadingChildrenSubs[t])==null||i.forEach(e=>e()),s}),xc={key:`async-data-loader`,getInitialState:e=>$({loadingItemData:[],loadingItemChildrens:[]},e),getDefaultConfig:(e,t)=>$({setLoadingItemData:Qs(`loadingItemData`,t),setLoadingItemChildrens:Qs(`loadingItemChildrens`,t)},e),stateHandlerNames:{loadingItemData:`setLoadingItemData`,loadingItemChildrens:`setLoadingItemChildrens`},treeInstance:{waitForItemDataLoaded:({tree:e},t)=>e.loadItemData(t),waitForItemChildrenLoaded:({tree:e},t)=>e.loadChildrenIds(t),loadItemData:(e,t)=>Xs(null,[e,t],function*({tree:e},t){return vc(e).current.itemData[t]??(yield yc(e,t))}),loadChildrenIds:(e,t)=>Xs(null,[e,t],function*({tree:e},t){return vc(e).current.childrenIds[t]??(yield bc(e,t))}),retrieveItemData:({tree:e},t,n=!1)=>{let r=e.getConfig(),i=vc(e);return i.current.itemData[t]?i.current.itemData[t]:(!e.getState().loadingItemData.includes(t)&&!n&&setTimeout(()=>yc(e,t)),r.createLoadingItemData?.call(r)??null)},retrieveChildrenIds:({tree:e},t,n=!1)=>{let r=vc(e);return r.current.childrenIds[t]?r.current.childrenIds[t]:(e.getState().loadingItemChildrens.includes(t)||n||setTimeout(()=>bc(e,t)),[])}},itemInstance:{isLoading:({tree:e,item:t})=>e.getState().loadingItemData.includes(t.getItemMeta().itemId)||e.getState().loadingItemChildrens.includes(t.getItemMeta().itemId),invalidateItemData:(e,t)=>Xs(null,[e,t],function*({tree:e,itemId:t},n){var r;n||(r=vc(e).current.itemData)==null||delete r[t],yield yc(e,t)}),invalidateChildrenIds:(e,t)=>Xs(null,[e,t],function*({tree:e,itemId:t},n){var r;n||(r=vc(e).current.childrenIds)==null||delete r[t],yield bc(e,t)}),updateCachedChildrenIds:({tree:e,itemId:t},n,r)=>{vc(e).current.childrenIds[t]=n,r||e.rebuildTree()},updateCachedData:({tree:e,itemId:t},n,r)=>{vc(e).current.itemData[t]=n,r||e.rebuildTree()},hasLoadedData:({tree:e,itemId:t})=>e.getDataRef().current.itemData[t]!==void 0}},Sc=(e,t)=>{for(let n in e)typeof e[n]==`function`&&(t&&n in t?e[n]=t[n]:t[n]=e[n]);return e},Cc={key:`prop-memoization`,overwrites:[`main`,`async-data-loader`,`sync-data-loader`,`drag-and-drop`,`expand-all`,`hotkeys-core`,`renaming`,`search`,`selection`],treeInstance:{getContainerProps:({tree:e,prev:t},n)=>{var r,i;let a=e.getDataRef(),o=t?.(n)??{};return(r=a.current).memo??(r.memo={}),(i=a.current.memo).tree??(i.tree={}),Sc(o,a.current.memo.tree)},getSearchInputElementProps:({tree:e,prev:t})=>{var n,r;let i=e.getDataRef(),a=t?.()??{};return(n=i.current).memo??(n.memo={}),(r=i.current.memo).search??(r.search={}),Sc(a,i.current.memo.search)}},itemInstance:{getProps:({item:e,prev:t})=>{var n,r;let i=e.getDataRef(),a=t?.()??{};return(n=i.current).memo??(n.memo={}),(r=i.current.memo).item??(r.item={}),Sc(a,i.current.memo.item)},getDragHandleProps:({item:e,prev:t})=>{var n,r;let i=e.getDataRef(),a=t?.()??{};return(n=i.current).memo??(n.memo={}),(r=i.current.memo).drag??(r.drag={}),Sc(a,i.current.memo.drag)},getRenameInputProps:({item:e,prev:t})=>{var n,r;let i=e.getDataRef(),a=t?.()??{};return(n=i.current).memo??(n.memo={}),(r=i.current.memo).rename??(r.rename={}),Sc(a,i.current.memo.rename)}}},wc=()=>{},Tc=(e,t,n,r)=>{for(let i=r;i>=0;i--)if(e[i][t]?.[n])return i;return null},Ec=(e,t,n,r,i,a)=>{let o=Tc(e,t,r,i-1);return(e[i][t]?.[r])(Ys($({},n),{prev:o===null?null:(...i)=>Ec(e,t,n,r,o,i)}),...a)},Dc=(e,t,n)=>{let r={},i=new Proxy({},{has(n,r){return typeof r==`symbol`||r===`toJSON`?!1:!!Tc(e,t,r,e.length-1)},get(n,i){if(typeof i!=`symbol`)return i===`toJSON`?{}:(...n)=>{let a=Tc(e,t,i,e.length-1);if(a===null)throw tc(`feature missing for method ${i}`);return Ec(e,t,r,i,a,n)}}});return Object.assign(r,n(i)),[i,wc]},Oc=Object.defineProperty,kc=Object.defineProperties,Ac=Object.getOwnPropertyDescriptors,jc=Object.getOwnPropertySymbols,Mc=Object.prototype.hasOwnProperty,Nc=Object.prototype.propertyIsEnumerable,Pc=(e,t,n)=>t in e?Oc(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Fc=(e,t)=>{for(var n in t||={})Mc.call(t,n)&&Pc(e,n,t[n]);if(jc)for(var n of jc(t))Nc.call(t,n)&&Pc(e,n,t[n]);return e},Ic=(e,t)=>kc(e,Ac(t)),Lc=e=>{let[t]=(0,Z.useState)(()=>({current:lc(e)})),[n,r]=(0,Z.useState)(()=>t.current.getState());return(0,Z.useEffect)(()=>(t.current.setMounted(!0),t.current.rebuildTree(),()=>{t.current.setMounted(!1)}),[t]),t.current.setConfig(t=>Ic(Fc(Fc({},t),e),{state:Fc(Fc({},n),e.state),setState:t=>{var n;r(t),(n=e.setState)==null||n.call(e,t)}})),t.current},Rc=`\0project-file-tree-root`,zc=`\0project-file-tree-project-root`,Bc=`\0project-file-tree-status:`;function Vc(e,t){return typeof e==`function`?e(t):e}function Hc(e){return e.kind===`status`?e.status===`empty`?T.t(`inspector.emptyFolder`,{ns:`conversation`}):T.t(`inspector.readFolderError`,{name:e.name,ns:`conversation`}):e.name}function Uc(e){return e.split(`/`).at(-1)??e}function Wc(e){return e.path}function Gc(e,t){return`${Bc}${t}:${e??`root`}`}function Kc(e){return{kind:`entry`,name:Uc(e.path),path:e.path,type:e.type}}function qc(e){return e instanceof Error?e.message:String(e)}function Jc({client:e,projectId:t,projectName:n,queryClient:r,rootPath:i}){let a=new Map,o={kind:`root`,name:n,type:`directory`};return a.set(zc,o),{async getChildrenWithData(s){if(s===`\0project-file-tree-root`)return[{data:o,id:zc}];let c=a.get(s);if(c?.type===`file`||c?.type===`status`)return[];let l=s===`\0project-file-tree-project-root`?null:s;try{let o=await r.fetchQuery(Xe(t,i,l,e));if(o.entries.length===0){let e=Gc(l,`empty`),t={directoryPath:l,kind:`status`,name:l===null?n:Uc(l),status:`empty`,type:`status`};return a.set(e,t),[{data:t,id:e}]}return o.entries.map(e=>{let t=Wc(e),n=Kc(e);return a.set(t,n),{data:n,id:t}})}catch(e){let t=Gc(l,`error`),r={directoryPath:l,kind:`status`,message:qc(e),name:l===null?n:Uc(l),status:`error`,type:`status`};return a.set(t,r),[{data:r,id:t}]}},getItem(e){return Promise.resolve(a.get(e)??{kind:`entry`,name:Uc(e),path:e,type:`directory`})}}}function Yc(e,t){let n=[...e].filter(e=>!t.has(e));return new Set([...t].filter(e=>!n.some(t=>e.startsWith(`${t}/`))))}function Xc(e,t){let n=t.filter(e=>e.kind===`entry`),r=new Map;for(let t of e.values()){let e=t.path.replaceAll(`\\`,`/`),i;for(let t of n)(t.path===e||t.type===`directory`&&e.startsWith(`${t.path}/`))&&(i===void 0||t.path.length>i.path.length)&&(i=t);if(i===void 0)continue;let a=r.get(i.path),o=rn(t);r.set(i.path,{additions:(a?.additions??0)+o.additions,removals:(a?.removals??0)+o.removals})}return r}function Zc({path:e,stats:t}){return(0,Q.jsxs)(`span`,{"aria-label":T.t(`inspector.changeIndicator`,{additions:t.additions,ns:`conversation`,path:e,removals:t.removals}),className:`ml-auto flex shrink-0 items-center gap-1 pl-2 text-meta group-hover/file-tree-node:invisible group-focus-within/file-tree-node:invisible`,children:[(0,Q.jsxs)(`span`,{className:`font-medium text-diff-added`,children:[`+`,t.additions]}),(0,Q.jsxs)(`span`,{className:`font-medium text-diff-removed`,children:[`-`,t.removals]})]})}function Qc({onMenuOpen:e,onOpenProjectPath:t,onReferenceProjectPath:n,onRefreshProject:r,projectName:i,projectOpenApps:a,projectOpenPending:o,projectPath:s,refreshing:c=!1}){let l=(0,Z.useRef)(!1),[u,d]=(0,Z.useState)(!1),f=c||u,p=T.t(`inspector.refreshProject`,{name:i,ns:`conversation`});return(0,Q.jsxs)(St,{children:[(0,Q.jsxs)(K,{children:[(0,Q.jsx)(q,{asChild:!0,children:(0,Q.jsx)(X,{"aria-label":p,className:`size-5 shrink-0 transition-opacity ${f?`pointer-events-auto opacity-100`:`pointer-events-none opacity-0 group-hover/file-tree-node:pointer-events-auto group-hover/file-tree-node:opacity-100 group-focus-within/file-tree-node:pointer-events-auto group-focus-within/file-tree-node:opacity-100 focus-visible:pointer-events-auto focus-visible:opacity-100`}`,disabled:f,onClick:()=>{l.current||(l.current=!0,d(!0),Promise.resolve().then(r).finally(()=>{l.current=!1,d(!1)}))},size:`embedded`,type:`button`,variant:`embedded`,children:(0,Q.jsx)(w,{"aria-hidden":`true`,className:`size-3.5 ${f?`animate-spin`:``}`})})}),(0,Q.jsx)(J,{side:`left`,children:p})]}),(0,Q.jsx)(Kn,{apps:a,isPending:o,onOpen:e,onReference:n,onSelect:t,target:{absolutePath:s,path:s,relativePath:`.`,type:`directory`}})]})}function $c(e,t){return e.kind===`status`?null:e.kind===`root`?{absolutePath:t.path,path:t.path,relativePath:`.`,type:`directory`}:{absolutePath:Wn(t.path,e.path),path:e.path,relativePath:e.path,...e.type===`file`?{reference:{name:e.name,path:e.path,rootId:t.id,rootPath:t.path}}:{},type:e.type}}function el({children:e,isPending:t,onClose:n}){return(0,Q.jsx)(gt,{onOpenChange:e=>{!e&&!t&&n()},open:!0,children:(0,Q.jsx)(yt,{className:`max-w-96 p-4`,onEscapeKeyDown:e=>{t&&e.preventDefault()},onInteractOutside:e=>{t&&e.preventDefault()},children:e})})}function tl({initialName:e,isPending:t,onClose:n,onRename:r,targetType:i}){let{t:a}=k(`workbench`),[o,s]=(0,Z.useState)(e),c=o.trim(),l=c===`.`||c===`..`||/[/\\]/u.test(c);return(0,Q.jsx)(el,{isPending:t,onClose:n,targetType:i,children:(0,Q.jsxs)(`form`,{className:`grid gap-4`,onSubmit:t=>{t.preventDefault(),!l&&c!==e&&r(c)},children:[(0,Q.jsxs)(kt,{children:[(0,Q.jsx)(Jt,{children:a(`projectFile.renameTitle`)}),(0,Q.jsx)(ot,{children:a(`projectFile.renameDescription.${i}`)})]}),(0,Q.jsx)(_t,{"aria-label":a(`projectFile.name`),autoFocus:!0,disabled:t,maxLength:255,onChange:e=>{s(e.currentTarget.value)},value:o}),(0,Q.jsxs)(Fe,{children:[(0,Q.jsx)(X,{disabled:t,onClick:n,type:`button`,variant:`ghost`,children:a(`actions.cancel`)}),(0,Q.jsx)(X,{disabled:t||l||c.length===0||c===e,type:`submit`,children:a(`openMenu.rename`)})]})]})})}function nl({isPending:e,name:t,onClose:n,onDelete:r,targetType:i}){let{t:a}=k(`workbench`);return(0,Q.jsxs)(el,{isPending:e,onClose:n,targetType:i,children:[(0,Q.jsxs)(kt,{children:[(0,Q.jsx)(Jt,{children:a(`projectFile.deleteTitle`,{name:t})}),(0,Q.jsx)(ot,{children:a(`projectFile.deleteDescription.${i}`)})]}),(0,Q.jsxs)(Fe,{children:[(0,Q.jsx)(X,{disabled:e,onClick:n,type:`button`,variant:`ghost`,children:a(`actions.cancel`)}),(0,Q.jsx)(X,{disabled:e,onClick:r,type:`button`,variant:`destructive`,children:a(`openMenu.delete`)})]})]})}function rl(e){let t=e.lastIndexOf(`/`);return t===-1?null:e.slice(0,t)}function il({client:e,name:t,onRefreshDirectory:n,path:r,projectId:i,projectPath:a,targetType:o}){let[s,c]=(0,Z.useState)(null),d=(0,Z.useRef)(null),f=l({mutationFn:async t=>{if(r===null)throw TypeError(`Project file path is unavailable`);let n={idempotencyKey:d.current??u()};return t.action===`rename`&&t.name!==void 0?e.renameProjectFile(i,a,{name:t.name,path:r},n):e.deleteProjectFile(i,a,{path:r},n)},onSuccess:()=>{c(null),d.current=null,r!==null&&n(rl(r))}}),p=e=>{d.current=u(),c(e)},m=()=>{f.isPending||(c(null),d.current=null)};return{dialog:r===null||s===null?null:s===`rename`?(0,Q.jsx)(tl,{initialName:t,isPending:f.isPending,onClose:m,onRename:e=>{f.mutate({action:`rename`,name:e})},targetType:o}):(0,Q.jsx)(nl,{isPending:f.isPending,name:t,onClose:m,onDelete:()=>{f.mutate({action:`delete`})},targetType:o}),isPending:f.isPending,openDelete:()=>{p(`delete`)},openRename:()=>{p(`rename`)}}}var al=16,ol=8,sl={height:600,width:320},cl=(0,Z.memo)(function({changeStatsByPath:e,client:t,item:n,onOpenProjectPath:r,onReferenceProjectPath:i,onRefreshDirectory:a,onRefreshProject:o,onSelect:s,projectOpenApps:c,projectOpenPending:l,projectId:u,projectPath:d,projectRootId:f,projectRefreshing:p}){let g=n.getItemData(),_=Hc(g),y=$c(g,{id:f,path:d}),b=y?.type===`file`?()=>{At({onOpenSystemDefault:e=>{r(`system-default`,e)},projectId:u,reference:{lineNumber:null,path:y.path},rootPath:d})}:void 0,x=g.kind===`root`?e=>{r(e)}:r,{ref:C,...E}=n.getProps(),D=n.getItemMeta().level,k=n.isFolder(),A=n.isExpanded(),j=n.isLoading(),M=g.kind===`status`?g.name:_,ee=g.kind===`entry`?e.get(g.path):void 0,N=il({client:t,name:_,onRefreshDirectory:a,path:g.kind===`entry`?g.path:null,projectId:u,projectPath:d,targetType:g.type===`status`?`file`:g.type});if(g.kind===`status`)return(0,Q.jsxs)(`div`,{...E,className:`flex h-7 items-center gap-2 pr-1.5 text-caption ${g.status===`error`?`text-diff-removed`:`text-muted-foreground`}`,ref:C,style:{paddingLeft:D*al+6},children:[(0,Q.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:_}),g.status===`error`?(0,Q.jsxs)(K,{children:[(0,Q.jsx)(q,{asChild:!0,children:(0,Q.jsx)(X,{"aria-label":T.t(`inspector.refreshFolder`,{name:M,ns:`conversation`}),onClick:e=>{e.stopPropagation(),a(g.directoryPath)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,Q.jsx)(w,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,Q.jsx)(J,{children:T.t(`inspector.refreshFolder`,{name:M,ns:`conversation`})})]}):null]});let P=(0,Q.jsxs)(`div`,{...E,className:`group/file-tree-node flex h-7 w-full items-center gap-1 rounded-control pr-1.5 text-left transition-colors hover:bg-control-hover focus-visible:shadow-focus focus-visible:outline-none ${n.isSelected()?`bg-control`:``}`,onContextMenu:e=>{E.onContextMenu?.(e),s(n.getId())},onKeyDown:e=>{E.onKeyDown?.(e),e.target===e.currentTarget&&(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),n.primaryAction(),k&&(A?n.collapse():n.expand()))},ref:C,style:{paddingLeft:D*al+2},children:[k?(0,Q.jsx)(X,{"aria-label":T.t(A?`agentComponents.folderCollapse`:`agentComponents.folderExpand`,{name:_,ns:`conversation`}),className:`inline-grid size-5 shrink-0 place-items-center rounded-control text-muted-foreground hover:text-foreground focus-visible:shadow-focus focus-visible:outline-none`,onClick:e=>{e.stopPropagation(),A?n.collapse():n.expand()},size:`embedded`,type:`button`,variant:`embedded`,children:j?(0,Q.jsx)(h,{"aria-hidden":`true`,className:`size-3.5 animate-spin`}):(0,Q.jsx)(S,{"aria-hidden":`true`,className:`size-3.5 transition-transform ${A?`rotate-90`:``}`})}):(0,Q.jsx)(`span`,{"aria-hidden":`true`,className:`size-5 shrink-0`}),k?A?(0,Q.jsx)(m,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-brand`}):(0,Q.jsx)(v,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-brand`}):(0,Q.jsx)(O,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-muted-foreground`}),(0,Q.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,title:g.kind===`entry`?g.path:_,children:_}),g.kind===`entry`&&ee!==void 0?(0,Q.jsx)(Zc,{path:g.path,stats:ee}):null,g.kind===`root`?(0,Q.jsx)(Qc,{onMenuOpen:()=>{s(n.getId())},onOpenProjectPath:r,onReferenceProjectPath:i,onRefreshProject:o,projectName:_,projectOpenApps:c,projectOpenPending:l,projectPath:d,refreshing:p}):y===null?null:(0,Q.jsx)(St,{children:(0,Q.jsx)(Kn,{apps:c,isPending:l,onDelete:N.openDelete,onOpen:()=>{s(n.getId())},...b===void 0?{}:{onOpenInNewWindow:b},onReference:i,onRename:N.openRename,onSelect:r,target:y})})]});return(0,Q.jsxs)(Q.Fragment,{children:[y===null?P:(0,Q.jsx)(Xn,{apps:c,isPending:l,onOpen:()=>{s(n.getId())},onReference:i,...b===void 0?{}:{onOpenInNewWindow:b},onSelect:x,target:y,...g.kind===`entry`?{onDelete:N.openDelete,onRename:N.openRename}:{},children:P}),N.dialog]})});function ll({client:e,expandedPaths:t,fileChangesByPath:n,onExpandedPathsChange:r,onOpenFileDiff:i,onOpenProjectFile:a,onOpenProjectPath:o,onReferenceProjectPath:c,onRefreshProject:l,projectId:u,projectName:d,projectOpenApps:f,projectOpenPending:p,projectPath:m,projectRootId:g,projectRefreshing:_=!1}){k(`conversation`);let v=s(),y=(0,Z.useRef)(null),b=(0,Z.useRef)(()=>void 0),[x,S]=(0,Z.useState)(!0),[C,w]=(0,Z.useState)([]),E=(0,Z.useMemo)(()=>Jc({client:e,projectId:u,projectName:d,queryClient:v,rootPath:m}),[e,u,d,m,v]),D=(0,Z.useMemo)(()=>[...x?[zc]:[],...t],[t,x]),O=(0,Z.useCallback)(e=>{let n=Vc(e,D);S(n.includes(zc)),r(Yc(t,new Set(n.filter(e=>e!==zc))))},[D,t,r]),A=(0,Z.useCallback)(e=>{let t=Vc(e,C).at(-1)??C.at(-1);w(t===void 0?[]:[t])},[C]),j=Lc({createLoadingItemData:()=>({kind:`root`,name:d,type:`directory`}),dataLoader:E,features:[xc,uc,_c,Cc],getItemName:e=>Hc(e.getItemData()),indent:al,instanceBuilder:Dc,isItemFolder:e=>e.getItemData().type===`directory`,onPrimaryAction:e=>{let t=e.getItemData();if(t.kind!==`entry`||t.type!==`file`)return;let r=n.get(t.path);r===void 0?a(t.path):i(r)},rootItemId:Rc,scrollToItem:e=>{b.current(e.getId())},setExpandedItems:O,setSelectedItems:A,state:{expandedItems:D,selectedItems:C}}),M=j.getItems(),ee=(0,Z.useMemo)(()=>n.size===0?new Map:Xc(n,M.map(e=>e.getItemData())),[n,M]),N=(0,Z.useMemo)(()=>new Map(M.map((e,t)=>[e.getId(),t])),[M]),P=Qr({count:M.length,estimateSize:()=>28,getItemKey:e=>M[e]?.getKey()??e,getScrollElement:()=>y.current,initialRect:sl,overscan:ol});b.current=e=>{let t=N.get(e);t!==void 0&&P.scrollToIndex(t,{align:`auto`})};let te=(0,Z.useCallback)(async(e,t=!1)=>{await v.invalidateQueries({exact:!0,queryKey:[`projects`,u,m,`file-tree`,e],refetchType:`none`});let n=e??`\0project-file-tree-project-root`;await j.getItemInstance(n).invalidateChildrenIds(t)},[u,m,v,j]),ne=(0,Z.useCallback)(()=>Promise.all([Promise.resolve(l()),te(null,!0),...[...t].map(e=>te(e,!0))]),[t,l,te]),{ref:F,...I}=j.getContainerProps(T.t(`inspector.fileTree`,{ns:`conversation`}));return(0,Q.jsxs)(`div`,{...I,className:`h-full w-full cursor-default overflow-y-auto font-mono text-label text-foreground`,"data-project-file-tree":``,ref:e=>{y.current=e,F?.(e)},children:[M.length===0?(0,Q.jsxs)(`div`,{"aria-expanded":x,"aria-label":T.t(`inspector.projectFilesLoading`,{ns:`conversation`}),"aria-selected":`false`,className:`flex h-7 items-center gap-1.5 px-1.5 text-muted-foreground`,role:`treeitem`,children:[(0,Q.jsx)(h,{"aria-hidden":`true`,className:`size-3.5 animate-spin`}),(0,Q.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:d})]}):null,(0,Q.jsx)(`div`,{className:`relative w-full`,style:{height:P.getTotalSize()},children:P.getVirtualItems().map(t=>{let n=M[t.index];return n===void 0?null:(0,Q.jsx)(`div`,{className:`absolute left-0 top-0 w-full`,"data-index":t.index,style:{height:28,transform:`translateY(${String(t.start)}px)`},children:(0,Q.jsx)(cl,{changeStatsByPath:ee,client:e,item:n,onOpenProjectPath:o,onReferenceProjectPath:c,onRefreshDirectory:e=>{te(e)},onRefreshProject:ne,onSelect:e=>{w([e])},projectOpenApps:f,projectOpenPending:p,projectId:u,projectPath:m,projectRootId:g,projectRefreshing:_})},t.key)})})]})}var ul=new Set,dl=new Map,fl=(0,Z.lazy)(async()=>({default:(await n(()=>import(`./git-history-panel-QiNKxo_n.js`),__vite__mapDeps([9,1,2,3,10,11,12,13,14,15,16,17,18,19,20,21,22,8,23]))).GitHistoryPanel})),pl=(0,Z.lazy)(async()=>({default:(await n(()=>import(`./workbench-inspector-changes-DFZ_PDdt.js`),__vite__mapDeps([24,1,3,10,11,12,13,14,25,26,18,2,19,20,21,22,17,27,28,29]))).WorkbenchInspectorChanges}));function ml({backgroundTerminals:e=[],backgroundTerminalsError:t=null,backgroundTerminalsPending:n=!1,contextOnly:r=!1,expandedFileTreePaths:i=ul,fileSelection:a=null,gitStatus:o,gitStatusDetails:s,gitStatusDetailsError:c=null,gitStatusDetailsPending:l=!1,gitStatusError:u=null,gitStatusPending:d=!1,gitStatusRefreshing:f=!1,gitClient:p,mcpServers:m=[],mcpServersRetryAvailable:h=!0,mcpServersRefreshing:g=!1,mcpServersRetrying:_=!1,onFileTreeExpandedChange:v=()=>void 0,onClearGoal:y=()=>Promise.resolve(),onGoalStatusChange:b=()=>Promise.resolve(),onOpenFileDiff:x=()=>void 0,onOpenTaskAttachment:S=()=>void 0,onOpenProjectPath:C=()=>void 0,onOpenProjectFile:E=()=>void 0,onReferenceProjectPath:D=()=>void 0,onOpenSubagent:O=()=>void 0,onReloadMcpServers:A=()=>void 0,onRefreshGitStatus:j=()=>void 0,onRefreshProject:M=()=>void 0,onCommitChanges:ee=()=>void 0,onClose:N,onCloseFile:P,onTerminateBackgroundTerminal:te=()=>Promise.resolve(),onTabChange:ne=()=>void 0,projectId:F,projectName:I,projectOpenApps:L=[],projectOpenPending:re=!1,projectPath:R,projectRootId:z,sourceRootPath:ie,projectRefreshing:ae=!1,skills:B=[],subagents:oe=[],tab:se=`project`,task:V,taskId:ce,terminatingTerminalId:le=null}){k(`conversation`);let ue=cr(ce,o,{contextOnly:r,fileOpen:a!==null}),{activeTab:H}=lr({contextOnly:r,fileOpen:a!==null,gitStatus:o,inspectorOpen:!0,requestedTab:se,taskId:ce}),de=o!==void 0&&o.repositoryMode!==`none`,{changeStats:fe,displayChanges:pe,fileChangesByPath:me}=(0,Z.useMemo)(()=>de&&(H===`context`||H===`project`)?Ps(o,s):{changeStats:void 0,displayChanges:[],fileChangesByPath:dl},[H,o,s,de]),he=R.split(/[\\/]/u).filter(Boolean).at(-1)??I,U=(0,Q.jsxs)(`div`,{className:`h-full space-y-5 overflow-y-auto p-2.5`,children:[V?.goal===null||V?.goal===void 0?null:(0,Q.jsx)(Ls,{goal:V.goal,onClear:y,onStatusChange:b}),de&&pe.length>0?(0,Q.jsx)(Fs,{changeCount:pe.length,changeStats:fe,onCommitChanges:ee,onOpenChanges:()=>{ne(`changes`)}}):null,e.length>0||n||t!==null?(0,Q.jsx)(ps,{error:t,isPending:n,onTerminate:te,terminals:e,terminatingTerminalId:le}):null,oe.length>0?(0,Q.jsx)(ms,{onOpenSubagent:O,subagents:oe}):null,(0,Q.jsx)(hs,{canRetry:h,isRefreshing:g,isRetrying:_,onRetry:A,servers:m}),(0,Q.jsx)(Es,{onOpenAttachment:S,...F===void 0?{}:{projectId:F},skills:B,...ce===void 0?{}:{taskId:ce},turns:V?.turns??[]}),V?.plan===null||V?.plan===void 0?null:(0,Q.jsx)(Ms,{plan:V.plan})]});return(0,Q.jsxs)(`aside`,{"aria-label":T.t(`inspector.title`,{ns:`conversation`}),className:`workbench-inspector relative z-30 flex min-h-0 flex-col bg-panel shadow-divider-reverse`,children:[(0,Q.jsx)(Vs,{activeTab:H,availableTabs:ue,contextOnly:r,onClose:N,...P===void 0?{}:{onCloseFile:P},onTabChange:ne}),(0,Q.jsx)(`div`,{className:`min-h-0 flex-1 overflow-hidden`,role:r?void 0:`tabpanel`,children:H===`file`&&a!==null?a.kind===`diff`?(0,Q.jsx)(us,{change:a.change}):(0,Q.jsx)(ge,{client:p??Nt,previewKind:a.kind,projectId:F??I,reference:a.reference,...ie===void 0?{}:{rootPath:ie}}):H===`project`?(0,Q.jsx)(`div`,{className:`flex h-full min-h-0 flex-col`,children:(0,Q.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col`,children:[u===null?d&&o===void 0?(0,Q.jsx)(`p`,{className:`mb-2 px-4 text-caption text-muted-foreground`,children:T.t(`inspector.gitLoading`,{ns:`conversation`})}):null:(0,Q.jsxs)(`div`,{className:`mx-2.5 mb-2 flex items-center gap-2 rounded-control bg-control px-2 py-2`,children:[(0,Q.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,Q.jsx)(`p`,{className:`text-label text-diff-removed`,children:T.t(`inspector.gitChangesRetrying`,{ns:`conversation`})})}),(0,Q.jsxs)(K,{children:[(0,Q.jsx)(q,{asChild:!0,children:(0,Q.jsx)(X,{"aria-label":T.t(`inspector.refreshGit`,{ns:`conversation`}),disabled:f,onClick:j,size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,Q.jsx)(w,{"aria-hidden":`true`,className:`size-3.5 ${f?`animate-spin`:``}`})})}),(0,Q.jsx)(J,{children:T.t(`inspector.refreshGit`,{ns:`conversation`})})]})]}),(0,Q.jsx)(`div`,{className:`min-h-0 flex-1 px-2.5 pb-2.5`,children:(0,Q.jsx)(ll,{client:p??Nt,expandedPaths:i,fileChangesByPath:me,onExpandedPathsChange:v,onOpenFileDiff:x,onOpenProjectFile:E,onOpenProjectPath:C,onReferenceProjectPath:D,onRefreshProject:M,projectId:F??I,projectName:he,projectOpenApps:L,projectOpenPending:re,projectPath:R,projectRootId:z,projectRefreshing:ae},`${F??I}:${R}`)})]})}):H===`changes`?(0,Q.jsx)(Z.Suspense,{fallback:null,children:(0,Q.jsx)(pl,{client:p,detailsError:c,detailsPending:l,detailsStatus:s,gitStatus:o,gitStatusError:u,onOpenFileDiff:x,projectId:F,rootPath:R})}):H===`history`&&F!==void 0?(0,Q.jsx)(Z.Suspense,{fallback:null,children:(0,Q.jsx)(fl,{...p===void 0?{}:{client:p},projectId:F,rootPath:R})}):U})]})}function hl(e,t){return`${e}\u0000${t}`}function gl(e,t,n){let r=new Map,i=new Map(t.map(e=>[hl(e.projectId,e.id),e.title]));for(let t of e){let e=t.roots[0]?.path;e!==void 0&&r.set(t.id,e)}let a=[],o=!1,s=!1,c=!1,l=!1;for(let e of n.values()){let t=e.pendingApprovalRequestIds.size>0||e.attention===`approval`,n=e.attention===`completed`;if(l||=t,o||=e.attention===`failed`,c||=e.isRunning,s||=n,!e.isRunning&&!t&&!n)continue;let u=r.get(e.projectId);u===void 0&&e.projectId!==`temporary`||a.push({projectId:e.projectId,...u===void 0?{}:{rootPath:u},status:t?`waiting`:n?`completed`:`running`,taskId:e.taskId,taskName:i.get(hl(e.projectId,e.taskId))??e.taskId})}return{animationName:l?`waiting`:o?`failed`:c?`running`:s?`review`:`idle`,tasks:a}}var _l=`codexly.workbench-pet-position`,vl={version:1,xRatio:1,yRatio:1};function yl(e){return typeof e==`number`&&Number.isFinite(e)&&e>=0&&e<=1}function bl(e){try{let t=JSON.parse(e.getItem(`codexly.workbench-pet-position`)??`null`);return t?.version===1&&yl(t.xRatio)&&yl(t.yRatio)?{version:1,xRatio:t.xRatio,yRatio:t.yRatio}:vl}catch{return vl}}function xl(e,t){try{e.setItem(_l,JSON.stringify(t))}catch{}}function Sl(e){return{x:Math.max(0,e.width-e.petWidth),y:Math.max(0,e.height-e.petHeight)}}function Cl(e,t){let n=Sl(t);return{x:Math.min(n.x,Math.max(0,e.x)),y:Math.min(n.y,Math.max(0,e.y))}}function wl(e,t){let n=Sl(t);return{x:n.x*e.xRatio,y:n.y*e.yRatio}}function Tl(e,t){let n=Sl(t),r=Cl(e,t);return{version:1,xRatio:n.x===0?1:r.x/n.x,yRatio:n.y===0?1:r.y/n.y}}function El(e,t){return e.status===t.status?0:e.status===`completed`?-1:+(t.status===`completed`)}function Dl({activity:e,localAccess:t,onTaskSelect:n}){let{t:r}=k(`workbench`),i=(0,Q.jsxs)(`button`,{"aria-label":r(`pet.openTask`,{name:e.taskName,status:r(`pet.status.${e.status}`)}),className:`workbench-pet-bubble-button flex h-full w-full min-w-0 appearance-none items-center gap-2 rounded-control border border-separator-strong bg-raised px-2.5 text-left text-body-small text-foreground shadow-control`,onClick:()=>{n(e.projectId,e.taskId)},type:`button`,children:[e.status===`waiting`?(0,Q.jsx)(N,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-warning`}):e.status===`completed`?(0,Q.jsx)(_,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-task-completed`}):(0,Q.jsx)(h,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-brand motion-safe:animate-spin`}),(0,Q.jsx)(`span`,{className:`min-w-0 truncate`,children:e.taskName})]});return t&&e.rootPath!==void 0?(0,Q.jsxs)(K,{children:[(0,Q.jsx)(q,{asChild:!0,children:i}),(0,Q.jsx)(J,{children:e.rootPath})]}):i}function Ol({localAccess:e,onTaskSelect:t,placement:n,tasks:r}){let{t:i}=k(`workbench`);if(r.length===0)return null;let a=r.filter(e=>e.status===`waiting`).length,o=r.toSorted(El);return(0,Q.jsxs)(`div`,{className:`workbench-pet-bubbles ${n===`above`?`bottom-full pb-2`:`top-full pt-2`}`,"data-placement":n,onPointerDown:e=>{e.stopPropagation()},children:[(0,Q.jsx)(`span`,{"aria-live":`polite`,className:`sr-only`,children:i(`pet.activitySummary`,{count:r.length,waiting:a})}),(0,Q.jsx)(`ol`,{"aria-label":i(`pet.activeTasks`),className:`workbench-pet-bubble-list max-h-[40dvh] overflow-y-auto`,children:o.map((n,r)=>(0,Q.jsx)(`li`,{className:`workbench-pet-bubble-item`,style:{zIndex:o.length-r},children:(0,Q.jsx)(Dl,{activity:n,localAccess:e,onTaskSelect:t})},`${n.projectId}:${n.taskId}`))})]})}var kl=4;function Al(e,t){let n=e.animations[t];if(n===void 0)return 0;let r=n.loopStart??n.frames.length;return n.frames.slice(0,r).reduce((e,t)=>e+t.durationMs,0)}function jl(e,t){e.style.transform=`translate3d(${String(t.x)}px, ${String(t.y)}px, 0)`}function Ml(e,t){return e.y<Math.min(160,t.height*.4)}function Nl({activity:e,localAccess:t,onTaskSelect:n,pet:r}){let{t:i}=k(`workbench`),a=(0,Z.useRef)(null),o=(0,Z.useRef)(null),s=(0,Z.useRef)(null),c=(0,Z.useRef)(null),l=(0,Z.useRef)(null),u=(0,Z.useRef)(null),d=(0,Z.useRef)(null),f=(0,Z.useRef)({x:0,y:0}),p=(0,Z.useRef)(vl),m=(0,Z.useRef)(null),h=(0,Z.useRef)(e.animationName),[g,_]=(0,Z.useState)(e.animationName),[v,y]=(0,Z.useState)(!1),[b,x]=(0,Z.useState)(!1);(0,Z.useEffect)(()=>{h.current=e.animationName,l.current===null&&u.current===null&&_(e.animationName)},[e.animationName]),(0,Z.useEffect)(()=>{let e=a.current,t=s.current;if(e===null||t===null)return;p.current=bl(window.localStorage);let n=()=>{let n={height:e.clientHeight,petHeight:t.offsetHeight,petWidth:t.offsetWidth,width:e.clientWidth};c.current=n,f.current=wl(p.current,n),jl(t,f.current),y(Ml(f.current,n)),x(!0)};n();let r=new ResizeObserver(n);return r.observe(e),r.observe(t),()=>{r.disconnect()}},[r.assetId]),(0,Z.useEffect)(()=>()=>{m.current!==null&&cancelAnimationFrame(m.current),u.current!==null&&clearTimeout(u.current);let e=s.current,t=d.current,n=c.current;if(e!==null&&t!==null&&(f.current=t,jl(e,t)),n!==null){let e=Tl(f.current,n);xl(window.localStorage,e)}},[]);let S=()=>{m.current=null;let e=s.current,t=d.current;e===null||t===null||(d.current=null,f.current=t,jl(e,t))},C=e=>{d.current=e,m.current??=requestAnimationFrame(S)},w=()=>{let e=c.current;e!==null&&(p.current=Tl(f.current,e),xl(window.localStorage,p.current))},T=e=>{let t=o.current;if(l.current?.pointerId!==e||t===null)return;l.current=null,t.removeAttribute(`data-dragging`),m.current!==null&&cancelAnimationFrame(m.current),S(),w();let n=c.current;n!==null&&y(Ml(f.current,n)),_(`jumping`),u.current!==null&&clearTimeout(u.current),u.current=setTimeout(()=>{u.current=null,_(h.current)},Math.max(1,Al(r,`jumping`)))};return(0,Q.jsx)(`div`,{className:`workbench-pet-layer`,children:(0,Q.jsx)(`div`,{className:`workbench-pet-boundary`,ref:a,children:(0,Q.jsxs)(`div`,{className:`workbench-pet-positioner`,"data-animation":g,ref:s,style:{opacity:+!!b},children:[(0,Q.jsx)(Ol,{localAccess:t,onTaskSelect:n,placement:v?`below`:`above`,tasks:e.tasks}),(0,Q.jsx)(`button`,{"aria-label":i(`pet.move`,{name:r.displayName}),className:`workbench-pet-target`,onKeyDown:e=>{let t=c.current,n=s.current;if(!(t===null||n===null)){if(e.key===`Home`)e.preventDefault(),p.current=vl,f.current=wl(vl,t);else if([`ArrowDown`,`ArrowLeft`,`ArrowRight`,`ArrowUp`].includes(e.key)){e.preventDefault();let n=e.shiftKey?24:8;f.current=Cl({x:f.current.x+(e.key===`ArrowRight`?n:e.key===`ArrowLeft`?-n:0),y:f.current.y+(e.key===`ArrowDown`?n:e.key===`ArrowUp`?-n:0)},t)}else return;jl(n,f.current),w(),y(Ml(f.current,t))}},onLostPointerCapture:e=>{T(e.pointerId)},onPointerCancel:e=>{T(e.pointerId)},onPointerDown:e=>{let t=s.current,n=a.current;if(t===null||n===null)return;let r={height:n.clientHeight,petHeight:t.offsetHeight,petWidth:t.offsetWidth,width:n.clientWidth};c.current=r,l.current={bounds:r,directionChosen:!1,origin:f.current,pointerId:e.pointerId,startX:e.clientX,startY:e.clientY},e.currentTarget.setPointerCapture(e.pointerId),e.currentTarget.setAttribute(`data-dragging`,``)},onPointerMove:e=>{let t=l.current;if(t?.pointerId!==e.pointerId)return;let n=e.clientX-t.startX,r=e.clientY-t.startY;C(Cl({x:t.origin.x+n,y:t.origin.y+r},t.bounds)),!t.directionChosen&&Math.abs(n)>=kl&&(t.directionChosen=!0,_(n<0?`running-left`:`running-right`))},onPointerUp:e=>{T(e.pointerId)},ref:o,type:`button`,children:(0,Q.jsx)(on,{animationName:g,pet:r})})]})})})}function Pl({petId:e}){let t=bt(),{projects:n,tasks:r}=at(),{taskActivity:i}=tt(),a=o(),s=c(an()),l=(0,Z.useMemo)(()=>gl(n,r,i),[n,i,r]),u=s.data?.data.find(t=>t.id===e&&t.availability===`ready`),d=(0,Z.useCallback)((e,t)=>{a({params:{projectId:e,taskId:t},to:`/p/$projectId/t/$taskId`})},[a]);return u===void 0?null:(0,Q.jsx)(Nl,{activity:l,localAccess:t.status?.mode===`local`,onTaskSelect:d,pet:u})}function Fl({settings:e}){return e?.enabled===!0?(0,Q.jsx)(Pl,{petId:e.selectedPetId}):null}function Il(e,t){let n=[],r=[];for(let i of rt(e))t!==null&&i.projectId!==t||(i.status===`approval`?n:r).push(i);return{approval:n,running:r}}function Ll(e,t=Date.now()){let n=Date.parse(e);if(!Number.isFinite(n)||!Number.isFinite(t))return null;let r=Math.max(0,Math.floor((t-n)/6e4));if(r<1)return`<1m`;if(r<60)return`${String(r)}m`;let i=Math.floor(r/60),a=r%60;if(i<24)return`${String(i)}h${a>0?` ${String(a)}m`:``}`;let o=Math.floor(i/24),s=i%24;return`${String(o)}d${s>0?` ${String(s)}h`:``}`}var Rl=`__all_projects__`,zl=6e4,Bl=new Map;function Vl({children:e,count:t,emptyLabel:n,emptyState:r,icon:i,label:a,onScroll:o,tone:s}){return(0,Q.jsxs)(`section`,{className:`task-board-column`,"data-tone":s,children:[(0,Q.jsxs)(`header`,{className:`task-board-column-header`,children:[(0,Q.jsx)(`span`,{className:`task-board-column-icon`,"aria-hidden":`true`,children:i}),(0,Q.jsxs)(`h2`,{className:`text-body-small font-semibold`,id:`task-board-${s}`,children:[a,` `,t]})]}),(0,Q.jsx)(`div`,{"aria-labelledby":`task-board-${s}`,className:`task-board-column-list`,onScroll:o,role:`list`,children:t===0?r??(0,Q.jsx)(`div`,{className:`task-board-empty`,children:n}):e})]})}function Hl(e,t){let n=Bl.get(t);return n===void 0&&(n=new Intl.DateTimeFormat(t,{day:`numeric`,hour:`2-digit`,minute:`2-digit`,month:`short`}),Bl.set(t,n)),n.format(new Date(e))}function Ul(e){let[t,n]=(0,Z.useState)(Date.now);return(0,Z.useEffect)(()=>{if(!e)return;let t,r=()=>{t!==void 0&&window.clearInterval(t),document.visibilityState===`visible`&&(n(Date.now()),t=window.setInterval(()=>{n(Date.now())},zl))};return r(),document.addEventListener(`visibilitychange`,r),()=>{document.removeEventListener(`visibilitychange`,r),t!==void 0&&window.clearInterval(t)}},[e]),t}function Wl({id:e,onOpen:t,pinned:n=!1,projectName:r,runningFor:i,statusLabel:a,title:o,tone:s,unviewed:c=!1,updatedAt:l}){let{t:u,i18n:d}=k(`workbench`);return(0,Q.jsx)(`div`,{role:`listitem`,children:(0,Q.jsxs)(`div`,{className:`task-board-card`,"data-attention":c?`new-completion`:void 0,"data-tone":s,children:[(0,Q.jsxs)(K,{children:[(0,Q.jsx)(q,{asChild:!0,children:(0,Q.jsx)(`button`,{"aria-label":u(s===`todo`?`taskBoard.openTodo`:`taskBoard.openTask`,{task:o,todo:o}),className:`task-board-card-open`,onClick:t,type:`button`})}),(0,Q.jsx)(J,{className:`break-words`,children:o})]}),(0,Q.jsxs)(`span`,{className:`task-board-card-topline`,children:[(0,Q.jsxs)(K,{children:[(0,Q.jsx)(q,{asChild:!0,children:(0,Q.jsxs)(`button`,{"aria-label":u(`taskBoard.copyTaskId`,{id:e}),className:`task-board-card-id`,onClick:()=>void navigator.clipboard.writeText(e).catch(()=>void 0),type:`button`,children:[`ID: `,e]})}),(0,Q.jsx)(J,{children:u(`taskBoard.copyTaskIdHint`)})]}),(0,Q.jsxs)(`span`,{className:`task-board-card-status`,children:[(0,Q.jsx)(`span`,{"aria-hidden":`true`,className:`task-board-card-status-dot`}),c?u(`taskBoard.newCompleted`):a]})]}),(0,Q.jsx)(`span`,{className:`task-board-card-title`,title:o,children:o}),(0,Q.jsxs)(`span`,{className:`task-board-card-footer`,children:[(0,Q.jsxs)(`span`,{className:`task-board-card-project`,title:r,children:[(0,Q.jsx)(vn,{"aria-hidden":`true`}),(0,Q.jsx)(`span`,{children:r})]}),(0,Q.jsxs)(`span`,{className:`task-board-card-facts`,children:[n?(0,Q.jsx)(ee,{"aria-label":u(`taskBoard.pinned`)}):null,i===void 0?null:(0,Q.jsxs)(`span`,{className:`task-board-card-fact`,children:[(0,Q.jsx)(I,{"aria-hidden":`true`}),i]}),i!==void 0||l===void 0?null:(0,Q.jsxs)(`time`,{className:`task-board-card-fact`,dateTime:new Date(l).toISOString(),children:[(0,Q.jsx)(I,{"aria-hidden":`true`}),Hl(l,d.language)]})]})]})]})})}function Gl({onRetry:e}){let{t}=k(`workbench`);return(0,Q.jsx)(`div`,{role:`listitem`,children:(0,Q.jsxs)(`div`,{className:`task-board-column-error`,role:`alert`,children:[(0,Q.jsx)(N,{"aria-hidden":`true`}),(0,Q.jsx)(`span`,{children:t(`taskBoard.completedLoadError`)}),(0,Q.jsx)(X,{"aria-label":t(`taskBoard.retryCompleted`),onClick:e,size:`icon-toolbar`,type:`button`,variant:`ghost`,children:(0,Q.jsx)(D,{"aria-hidden":`true`})})]})})}function Kl(e){let{t}=k(`workbench`),n=(0,Z.useRef)(!1);(0,Z.useEffect)(()=>{e.isLoadingMoreCompleted||(n.current=!1)},[e.isLoadingMoreCompleted]);let r=(0,Z.useMemo)(()=>new Map(e.projects.map(e=>[e.id,e.name])),[e.projects]),i=t=>e.selectedProjectId===null?t:t.filter(t=>t.projectId===e.selectedProjectId),a=i(e.todos),o=i(e.running),s=i(e.approval),c=i(e.completed),l=Ul(o.length>0),u=(n,i)=>{let a=`startedAt`in n&&typeof n.startedAt==`string`?n.startedAt:void 0,o=`updatedAt`in n&&typeof n.updatedAt==`string`?n.updatedAt:void 0;return(0,Q.jsx)(Wl,{id:n.id,onOpen:()=>{e.onOpenTask(n)},pinned:`pinned`in n&&n.pinned,projectName:r.get(n.projectId)??n.projectId,statusLabel:t(`taskBoard.${i}`),title:n.title,tone:i,unviewed:i===`completed`&&e.isTaskUnviewed(n.projectId,n.id),...a===void 0?{}:{runningFor:t(`taskBoard.runningFor`,{duration:Ll(a,l)??`-`})},...o===void 0?{}:{updatedAt:o}},`${n.projectId}:${n.id}`)};return(0,Q.jsxs)(`section`,{"aria-label":t(`taskBoard.label`),className:`task-board`,children:[(0,Q.jsxs)(`div`,{className:`task-board-toolbar`,children:[(0,Q.jsxs)(ft,{onValueChange:t=>{e.onProjectFilterChange(t===Rl?null:t)},value:e.selectedProjectId??Rl,children:[(0,Q.jsxs)(Wt,{"aria-label":t(`taskBoard.projectFilter`),className:`task-board-project-filter`,size:`sm`,children:[(0,Q.jsx)(Sn,{"aria-hidden":`true`,className:`size-3.5`}),(0,Q.jsx)(Je,{})]}),(0,Q.jsxs)(mt,{align:`start`,children:[(0,Q.jsx)(Ye,{value:Rl,children:t(`taskBoard.allProjects`)}),e.projects.map(e=>(0,Q.jsx)(Ye,{value:e.id,children:e.name},e.id))]})]}),(0,Q.jsxs)(X,{onClick:()=>{e.onCreateTask(e.selectedProjectId)},size:`sm`,type:`button`,children:[(0,Q.jsx)(M,{"aria-hidden":`true`,className:`size-3.5`}),t(`sidebar.newTask`)]})]}),(0,Q.jsxs)(`div`,{className:`task-board-grid`,children:[(0,Q.jsx)(Vl,{count:a.length,emptyLabel:t(`taskBoard.emptyTodos`),icon:(0,Q.jsx)(L,{className:`size-3.5`}),label:t(`taskBoard.todo`),tone:`todo`,children:a.map(n=>{let i=ie(n.record,t(`composer.attachmentCount`,{count:n.record.draft.attachments.length}));return(0,Q.jsx)(Wl,{id:n.record.id,onOpen:()=>{e.onOpenTodo(n)},projectName:r.get(n.projectId)??n.projectId,statusLabel:t(`taskBoard.todo`),title:i,tone:`todo`,updatedAt:n.record.updatedAt},`${n.projectId}:${n.record.id}`)})}),(0,Q.jsx)(Vl,{count:o.length,emptyLabel:t(`taskBoard.emptyRunning`),icon:(0,Q.jsx)(ln,{className:`size-3.5`}),label:t(`taskBoard.running`),tone:`running`,children:o.map(e=>u(e,`running`))}),(0,Q.jsx)(Vl,{count:s.length,emptyLabel:t(`taskBoard.emptyApproval`),icon:(0,Q.jsx)(N,{className:`size-3.5`}),label:t(`taskBoard.approval`),tone:`approval`,children:s.map(e=>u(e,`approval`))}),(0,Q.jsxs)(Vl,{count:c.length,emptyLabel:t(e.isCompletedPending?`taskBoard.loading`:`taskBoard.emptyCompleted`),emptyState:e.completedError?(0,Q.jsx)(Gl,{onRetry:e.onRetryCompleted}):void 0,icon:(0,Q.jsx)(_,{className:`size-3.5`}),label:t(`taskBoard.completed`),onScroll:t=>{let r=t.currentTarget;r.scrollHeight-r.scrollTop-r.clientHeight<=32&&e.hasNextCompletedPage&&!e.isLoadingMoreCompleted&&!n.current&&(n.current=!0,e.onLoadMoreCompleted().catch(()=>{n.current=!1}))},tone:`completed`,children:[c.map(e=>u(e,`completed`)),e.completedError?(0,Q.jsx)(Gl,{onRetry:e.onRetryCompleted}):null,e.isLoadingMoreCompleted?(0,Q.jsxs)(`div`,{className:`task-board-page-loading`,role:`status`,children:[(0,Q.jsx)(h,{"aria-hidden":`true`,className:`size-3.5 animate-spin`}),t(`taskBoard.loadingMore`)]}):null]})]})]})}function ql({projectId:e}){let t=o(),{projects:n}=at(),[r,i]=(0,Z.useState)(null),a=xt((0,Z.useMemo)(()=>n.map(e=>e.id),[n])),s=Ft(r),{taskActivity:c}=tt(),l=(0,Z.useMemo)(()=>Il(c,null),[c]),u=(0,Z.useMemo)(()=>{let e=new Set([...l.approval,...l.running].map(e=>`${e.projectId}\u0000${e.id}`));return s.tasks.filter(t=>!e.has(`${t.projectId}\u0000${t.id}`))},[s.tasks,l.approval,l.running]);return(0,Z.useEffect)(()=>{s.error!==null&&It(`task_board_completed_tasks_failed`,s.error,{projectId:r})},[s.error,r]),(0,Q.jsx)(Kl,{approval:l.approval,completed:u,completedError:s.error!==null,hasNextCompletedPage:s.hasNextPage,isCompletedPending:s.isPending,isLoadingMoreCompleted:s.isFetchingNextPage,isTaskUnviewed:(e,t)=>Ve(c,e,t).attention===`completed`,onCreateTask:n=>{let r=n??e;t(r===`temporary`?{to:`/temporary`}:{params:{projectId:r},to:`/p/$projectId`})},onLoadMoreCompleted:async()=>{await s.fetchNextPage()},onOpenTask:e=>{t({params:{projectId:e.projectId,taskId:e.id},to:`/p/$projectId/t/$taskId`})},onOpenTodo:e=>{t({params:{projectId:e.projectId,todoId:e.record.id},to:`/p/$projectId/todo/$todoId`})},onProjectFilterChange:i,onRetryCompleted:()=>void s.refetch(),projects:n,running:l.running,selectedProjectId:r,todos:a})}function Jl({board:e,context:t,scheduled:n,skillsMarket:r,taskId:i,temporary:a}){let{globalSettings:o,inspectorOpen:s,projectOpenCapabilitiesQuery:c,projectPathOpenLockRef:l,projectPathOpenMutation:u,setInspectorOpen:d,setSidebarOpen:f,setTaskRenameOpen:p,sidebarOpen:m,t:h,title:g}=t,_=e||r||n,v=n?h(`scheduledTasks.title`):r?h(`skillsMarket.title`):e?h(`taskBoard.title`):g;return(0,Q.jsxs)(`header`,{className:`flex h-workbench-header shrink-0 items-center justify-between gap-3 bg-content px-2.5 shadow-toolbar sm:px-3`,children:[(0,Q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,Q.jsxs)(K,{children:[(0,Q.jsx)(q,{asChild:!0,children:(0,Q.jsx)(X,{"aria-label":h(m?`shell.collapseSidebar`:`shell.expandSidebar`),id:`workbench-sidebar-toggle`,onClick:()=>{f(e=>!e)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,Q.jsx)(Tn,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,Q.jsx)(J,{children:h(m?`shell.collapseSidebar`:`shell.expandSidebar`)})]},m?`sidebar-open`:`sidebar-closed`),(0,Q.jsx)(`h1`,{"aria-label":v,className:`min-w-0 text-body-small font-semibold text-foreground`,children:i===void 0||_?(0,Q.jsx)(`span`,{className:`block truncate`,children:v}):(0,Q.jsxs)(X,{"aria-label":h(`shell.renameTask`,{title:g}),className:`group flex max-w-full items-center gap-1 rounded-control px-1 py-0.5 text-left hover:bg-control-hover focus-visible:shadow-focus`,id:`workbench-task-title-rename`,onClick:()=>{p(!0)},type:`button`,variant:`ghost`,children:[(0,Q.jsx)(`span`,{className:`truncate`,children:g}),(0,Q.jsx)(E,{"aria-hidden":`true`,className:`size-3 shrink-0 text-muted-foreground transition-colors group-hover:text-foreground`})]})})]}),_?null:(0,Q.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1`,children:[(0,Q.jsx)(Jn,{apps:c.data?.apps??[],className:`hidden min-workbench:flex`,...o===void 0?{}:{defaultOpenAppId:o.defaultOpenAppId},hidden:a,isDetecting:c.isPending,isPending:u.isPending,onSelect:e=>{u.reset(),l.current.run(()=>u.mutateAsync({appId:e,path:void 0})).catch(()=>void 0)}}),(0,Q.jsxs)(K,{children:[(0,Q.jsx)(q,{asChild:!0,children:(0,Q.jsx)(X,{"aria-label":h(s?`shell.collapseInspector`:`shell.expandInspector`),id:`workbench-inspector-toggle`,onClick:()=>{d(e=>!e)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,Q.jsx)(En,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,Q.jsx)(J,{children:h(s?`shell.collapseInspector`:`shell.expandInspector`)})]},s?`inspector-open`:`inspector-closed`)]})]})}var Yl=(0,Z.lazy)(()=>n(()=>import(`./skills-market-container-BwT-U8XF.js`).then(e=>({default:e.SkillsMarketContainer})),__vite__mapDeps([30,1,2,3,14,13,18,10,11,12,19,20,21,22,31])));function Xl(e){return(0,Q.jsx)(Z.Suspense,{fallback:(0,Q.jsx)(`div`,{"aria-busy":`true`,className:`flex-1`}),children:(0,Q.jsx)(Yl,{...e})})}var Zl=(0,Z.lazy)(()=>n(()=>import(`./scheduled-tasks-container-Ddieo85Q.js`).then(e=>({default:e.ScheduledTasksContainer})),__vite__mapDeps([32,1,2,3,10,11,12,13,19,33,14,18,20,21,22,34,25,26,35,27,36,37,38,39,40,41])));function Ql(e){return(0,Q.jsx)(Z.Suspense,{fallback:(0,Q.jsx)(`div`,{"aria-busy":`true`,className:`flex-1`}),children:(0,Q.jsx)(Zl,{...e})})}function $l({board:e,context:t,extensionSection:n,projectId:r,scheduled:i,taskId:a,temporary:s,todoId:c}){let l=(0,Z.useRef)(null),u=o(),{appInfoQuery:d,backgroundTerminals:f,beginNewChatSubmission:p,capabilities:m,client:h,closeInspector:g,closeSidebar:_,draftSettings:v,error:y,fastModeAvailable:b,fastModeDefault:x,expandedFileTreePaths:S,gitStatusQuery:C,globalSettings:w,globalSettingsQuery:T,handleNewChatSubmissionStateChange:E,handleNewTaskProjectChange:D,handleTaskCreated:O,handleTaskStarted:k,inspectorOpen:A,inspectorMaximumWidth:j,inspectorTab:M,inspectorTask:ee,inspectorWidth:N,mcpServersQuery:P,mcpServersReloadMutation:te,models:ne,modelsQuery:F,newChatSubmissionStartedAt:I,openFileDiff:L,openProjectFileDiff:re,openFileReview:R,openMessageFileReference:z,openProjectFile:ie,openProjectFolder:ae,pendingTaskSelection:B,projectDefaultsQuery:oe,projectFolderOpenDisabled:V,projectName:ce,projectRoots:le,projectOpenCapabilitiesQuery:ue,projectPath:H,projectPathOpenLockRef:de,projectPathOpenMutation:fe,taskAttachmentOpenMutation:pe,projectTaskState:me,projects:he,refreshProjectGitStatus:ge,requestNotificationPermission:U,retry:_e,runtime:ve,selectedRootPath:W,selectedRootId:ye,selectedInspectorFile:be,setFileTreeExpansion:xe,setGlobalSettingsSection:Se,setInspectorOpen:Ce,setInspectorTab:we,setInspectorWidth:Te,setInspectorFileSelection:Ee,setSidebarWidth:De,setSelectedRootId:Oe,setSubagentDialogSelection:ke,sidebarConnectionState:Ae,sidebarOpen:je,sidebarWidth:Me,skillsQuery:G,startingSnapshot:Ne,subagents:Pe,taskLaunchState:Fe,updateDraftSettings:Ie,updateProjectTaskDefaults:Le,workbenchShellRef:K,t:Re}=t,Be=n!==void 0,Ve=e||Be||i;return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(`div`,{className:`workbench-shell h-full min-h-0 overflow-hidden bg-window`,hidden:t.globalSettingsSection!==null,inert:t.globalSettingsSection!==null,"data-inspector-open":!Ve&&A,"data-sidebar-open":je,ref:K,style:{"--inspector-open-width":`${String(N)}px`,"--sidebar-open-width":`${String(Me)}px`},children:[(0,Q.jsx)(ze,{...d.data===void 0?{}:{appInfo:d.data},connectionState:Ae,onClose:_,onOpenSettings:e=>{Se(e)},projectId:r,...a===void 0&&B?.projectId===r?{taskId:B.taskId}:a===void 0?{}:{taskId:a}}),je?(0,Q.jsx)(X,{variant:`ghost`,"aria-label":Re(`shell.closeSidebar`),className:`workbench-sidebar-scrim`,onClick:_,type:`button`}):null,je?(0,Q.jsx)($o,{direction:1,label:Re(`shell.resizeSidebar`),maximumWidth:fr.maximum,minimumWidth:fr.minimum,onResize:e=>{K.current?.style.setProperty(`--sidebar-open-width`,`${String(e)}px`)},onResizeEnd:e=>{K.current?.removeAttribute(`data-resizing-panel`),De(e)},onResizeStart:()=>{K.current?.setAttribute(`data-resizing-panel`,`sidebar`)},panel:`sidebar`,width:Me}):null,(0,Q.jsxs)(`main`,{"aria-label":Re(i?`scheduledTasks.title`:Be?`skillsMarket.title`:e?`taskBoard.label`:`shell.timeline`),className:`flex min-h-0 min-w-0 flex-col bg-content`,children:[(0,Q.jsx)(Jl,{board:e,context:t,scheduled:i,skillsMarket:Be,temporary:s,...a===void 0?{}:{taskId:a}}),i?(0,Q.jsx)(Ql,{context:t,projectId:r,temporary:s}):Be?(0,Q.jsx)(Xl,{section:n,onSectionChange:e=>{u(s?{params:{section:e},to:`/temporary/extensions/$section`}:{params:{projectId:r,section:e},to:`/p/$projectId/extensions/$section`})},...s?{}:{projectId:r},...W===void 0?{}:{rootPath:W}}):e?(0,Q.jsx)(ql,{projectId:r}):y!==null||(me?.error??null)!==null||F.error!==null||G.error!==null||!s&&oe.error!==null||a===void 0&&T.error!==null?(0,Q.jsx)(zt,{onRetry:()=>void _e()}):a===void 0?(0,Q.jsxs)(Q.Fragment,{children:[s?(0,Q.jsx)(Jo,{projectId:r,scopeName:Re(`shell.temporaryTask`),temporary:!0,...I===void 0?{}:{submissionStartedAt:I}}):(0,Q.jsx)(Jo,{onProjectChange:D,projectId:r,projects:he,...I===void 0?{}:{submissionStartedAt:I}}),(0,Q.jsx)(se,{capabilities:m,client:h,composerRef:l,followUpBehavior:w?.followUpBehavior??`queue`,fastModeAvailable:b,fastModeDefault:x,...c===void 0?{}:{initialTodoId:c},models:ne,modelsError:null,modelsPending:F.isPending||!s&&oe.isPending||T.isPending,onSettingsChange:Ie,onFastModeChange:(e,t)=>Le(t,e),onOpenProjectPath:ae,onProjectRootChange:Oe,onRequestNotificationPermission:U,onDirectSubmission:p,onSubmissionStateChange:E,onTaskCreated:O,onTaskStarted:k,projectId:r,projectName:ce,projectPath:H,projectPathOpenDisabled:V,projectRoots:le,projectToolsEnabled:!s,selectedProjectRootId:ye??``,...C.data===void 0?{}:{gitStatus:C.data},settings:v,skills:G.data?.data??[]})]}):(0,Q.jsx)(cs,{capabilities:m,client:h,composerRef:l,fallbackSettings:v,followUpBehavior:w?.followUpBehavior??`queue`,fastModeAvailable:b,fastModeDefault:x,models:ne,modelsError:F.error,modelsPending:F.isPending,onRequestNotificationPermission:U,onProjectTaskDefaultsChange:Le,onOpenProjectPath:ae,onProjectRootChange:Oe,onTaskStarted:k,projectId:r,projectPath:H,projectPathOpenDisabled:V,projectRoots:le,projectToolsEnabled:!s,selectedProjectRootId:ye??``,...C.data===void 0?{}:{gitStatus:C.data},runtime:ve,skills:G.data?.data??[],startingSnapshot:Ne,startingPrompt:Fe,taskId:a,onOpenFileDiff:L,onOpenSourceFile:z,onReviewFileChanges:R})]}),!Ve&&A?(0,Q.jsx)(X,{variant:`ghost`,"aria-label":Re(`shell.closeInspector`),className:`workbench-inspector-scrim`,onClick:g,type:`button`}):null,!Ve&&A?(0,Q.jsx)($o,{direction:-1,label:Re(`shell.resizeInspector`),maximumWidth:j,minimumWidth:pr.minimum,onResize:e=>{K.current?.style.setProperty(`--inspector-open-width`,`${String(e)}px`)},onResizeEnd:e=>{K.current?.removeAttribute(`data-resizing-panel`),Te(e)},onResizeStart:()=>{K.current?.setAttribute(`data-resizing-panel`,`inspector`)},panel:`inspector`,width:N}):null,!Ve&&A?(0,Q.jsx)(ml,{backgroundTerminals:f.terminals,backgroundTerminalsError:f.error,backgroundTerminalsPending:f.isPending,contextOnly:s,expandedFileTreePaths:S,gitStatusError:C.error,gitStatusDetails:t.gitStatusDetailsQuery.data,gitStatusDetailsError:t.gitStatusDetailsQuery.error,gitStatusDetailsPending:t.gitStatusDetailsQuery.isFetching,gitStatusPending:C.isPending,gitStatusRefreshing:C.isFetching,gitClient:h,mcpServers:P.data?.data??[],mcpServersRetryAvailable:a!==void 0,mcpServersRefreshing:P.isFetching&&!P.isPending,mcpServersRetrying:te.isPending,onClose:g,onCloseFile:()=>{Ee(null)},fileSelection:be,onFileTreeExpandedChange:e=>{xe({paths:new Set(e),scope:`${r}:${W??`temporary`}`})},onClearGoal:()=>a===void 0?Promise.resolve():h.clearTaskGoal(r,a).then(()=>void 0),onGoalStatusChange:e=>a===void 0?Promise.resolve():h.updateTaskGoal(r,a,{status:e}).then(()=>void 0),onReloadMcpServers:()=>{te.mutate()},onOpenFileDiff:re,onOpenProjectPath:(e,t)=>{fe.reset(),de.current.run(()=>fe.mutateAsync({appId:e,path:t})).catch(()=>void 0)},onOpenProjectFile:ie,onOpenTaskAttachment:e=>{a!==void 0&&pe.mutate({attachmentId:e,taskId:a})},onReferenceProjectPath:e=>{l.current?.referenceProjectPath(e)},onRefreshGitStatus:()=>{W!==void 0&&ge(r,W)},onRefreshProject:()=>W===void 0?Promise.resolve():ge(r,W),onCommitChanges:()=>{we(`changes`),Ce(!0)},onTerminateBackgroundTerminal:f.terminateTerminal,onTabChange:we,onOpenSubagent:e=>{a!==void 0&&ke({parentTaskId:a,projectId:r,selection:e})},projectName:ce,projectId:r,projectOpenApps:ue.data?.apps??[],projectOpenPending:fe.isPending,projectPath:H,projectRootId:ye??``,...W===void 0?{}:{sourceRootPath:W},skills:G.data?.data??[],subagents:Pe,tab:M,terminatingTerminalId:f.terminatingTerminalId,...ee===void 0?{}:{task:ee},...a===void 0?{}:{taskId:a},...C.data===void 0?{}:{gitStatus:C.data}},`${r}:${a??`draft`}`):null,(0,Q.jsx)(Fl,{settings:w?.pet}),(0,Q.jsx)(ss,{context:t,projectId:r,...a===void 0?{}:{taskId:a}})]}),t.globalSettingsSection===null?null:(0,Q.jsx)(Dr,{context:t,projectToolsEnabled:!s})]})}function eu({board:e=!1,extensionSection:t,projectId:n,scheduled:r=!1,taskId:i,temporary:a=!1,todoId:o}){let s=i===void 0?{projectId:n}:{projectId:n,taskId:i};return(0,Q.jsx)($l,{board:e,context:wr(xr({...s,temporary:a}),{...s,temporary:a}),...t===void 0?{}:{extensionSection:t},scheduled:r,...s,temporary:a,...o===void 0?{}:{todoId:o}})}export{eu as WorkbenchShell};