@bryanhu/codexly 0.23.0 → 0.24.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 (222) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/README.md +21 -14
  3. package/README.zh-CN.md +26 -19
  4. package/dist/{chunk-HGSPZCBB.js → chunk-MDJUQPOL.js} +16 -4
  5. package/dist/{chunk-PRIMEL2G.js → chunk-YG3QMLCD.js} +432 -43
  6. package/dist/cli.js +7 -7
  7. package/dist/providers/codex/index.js +1 -1
  8. package/dist/server/index.js +2 -2
  9. package/dist/web/.vite/manifest.json +111 -111
  10. package/dist/web/.vite/manifest.json.br +0 -0
  11. package/dist/web/.vite/manifest.json.gz +0 -0
  12. package/dist/web/assets/{agent-settings-panel-Ci9mJOS-.js → agent-settings-panel-STxloEc6.js} +1 -1
  13. package/dist/web/assets/agent-settings-panel-STxloEc6.js.br +0 -0
  14. package/dist/web/assets/agent-settings-panel-STxloEc6.js.gz +0 -0
  15. package/dist/web/assets/{attachments-uWbRsPJj.js → attachments-CSV8KBYa.js} +1 -1
  16. package/dist/web/assets/attachments-CSV8KBYa.js.br +0 -0
  17. package/dist/web/assets/attachments-CSV8KBYa.js.gz +0 -0
  18. package/dist/web/assets/{background-image-picker-qGpdQPQi.js → background-image-picker-JDrclQ6O.js} +1 -1
  19. package/dist/web/assets/background-image-picker-JDrclQ6O.js.br +0 -0
  20. package/dist/web/assets/background-image-picker-JDrclQ6O.js.gz +0 -0
  21. package/dist/web/assets/{bing-wallpaper-queries-uesKD16x.js → bing-wallpaper-queries-BqjgHv5k.js} +1 -1
  22. package/dist/web/assets/bing-wallpaper-queries-BqjgHv5k.js.br +0 -0
  23. package/dist/web/assets/bing-wallpaper-queries-BqjgHv5k.js.gz +0 -0
  24. package/dist/web/assets/{button-group-075rCj_f.js → button-group-mjeW2BTr.js} +1 -1
  25. package/dist/web/assets/button-group-mjeW2BTr.js.br +0 -0
  26. package/dist/web/assets/button-group-mjeW2BTr.js.gz +0 -0
  27. package/dist/web/assets/{code-block-C9eTeWWd.js → code-block-CmzWecTa.js} +1 -1
  28. package/dist/web/assets/code-block-CmzWecTa.js.br +0 -0
  29. package/dist/web/assets/code-block-CmzWecTa.js.gz +0 -0
  30. package/dist/web/assets/{commit-settings-panel-CaMMU0oA.js → commit-settings-panel-BQRIgAaq.js} +1 -1
  31. package/dist/web/assets/commit-settings-panel-BQRIgAaq.js.br +0 -0
  32. package/dist/web/assets/commit-settings-panel-BQRIgAaq.js.gz +0 -0
  33. package/dist/web/assets/{context-menu-Dj3lnor1.js → context-menu-Dfbnk16V.js} +1 -1
  34. package/dist/web/assets/context-menu-Dfbnk16V.js.br +0 -0
  35. package/dist/web/assets/context-menu-Dfbnk16V.js.gz +0 -0
  36. package/dist/web/assets/{file-review-dialog-D8XVZ21M.js → file-review-dialog-Bv3Hor8O.js} +1 -1
  37. package/dist/web/assets/file-review-dialog-Bv3Hor8O.js.br +0 -0
  38. package/dist/web/assets/file-review-dialog-Bv3Hor8O.js.gz +0 -0
  39. package/dist/web/assets/{git-history-panel-D2fKSR66.js → git-history-panel-CofR8yva.js} +1 -1
  40. package/dist/web/assets/git-history-panel-CofR8yva.js.br +0 -0
  41. package/dist/web/assets/git-history-panel-CofR8yva.js.gz +0 -0
  42. package/dist/web/assets/{global-search-dialog-BxT-UjpZ.js → global-search-dialog-m_blFw9z.js} +2 -2
  43. package/dist/web/assets/global-search-dialog-m_blFw9z.js.br +0 -0
  44. package/dist/web/assets/global-search-dialog-m_blFw9z.js.gz +0 -0
  45. package/dist/web/assets/{global-settings-about-DiblprcD.js → global-settings-about-CJkWRRdz.js} +1 -1
  46. package/dist/web/assets/global-settings-about-CJkWRRdz.js.br +0 -0
  47. package/dist/web/assets/global-settings-about-CJkWRRdz.js.gz +0 -0
  48. package/dist/web/assets/{global-settings-fields-D5T5SPXY.js → global-settings-fields-DqWp3WpN.js} +1 -1
  49. package/dist/web/assets/global-settings-fields-DqWp3WpN.js.br +0 -0
  50. package/dist/web/assets/global-settings-fields-DqWp3WpN.js.gz +0 -0
  51. package/dist/web/assets/{global-settings-model-COz331Sr.js → global-settings-model-CqgHQlxF.js} +1 -1
  52. package/dist/web/assets/global-settings-model-CqgHQlxF.js.br +0 -0
  53. package/dist/web/assets/global-settings-model-CqgHQlxF.js.gz +0 -0
  54. package/dist/web/assets/{global-settings-page-DEBGBxSg.js → global-settings-page-BiVZofyf.js} +2 -2
  55. package/dist/web/assets/global-settings-page-BiVZofyf.js.br +0 -0
  56. package/dist/web/assets/global-settings-page-BiVZofyf.js.gz +0 -0
  57. package/dist/web/assets/{global-settings-pets-DwJnj_6N.js → global-settings-pets-DkdiEzFY.js} +1 -1
  58. package/dist/web/assets/global-settings-pets-DkdiEzFY.js.br +0 -0
  59. package/dist/web/assets/global-settings-pets-DkdiEzFY.js.gz +0 -0
  60. package/dist/web/assets/{history-task-timeline-oQRRdMbY.js → history-task-timeline-BrLtwo5_.js} +1 -1
  61. package/dist/web/assets/history-task-timeline-BrLtwo5_.js.br +0 -0
  62. package/dist/web/assets/history-task-timeline-BrLtwo5_.js.gz +0 -0
  63. package/dist/web/assets/{index-DRfXjZ2a.js → index-D9lOU2_n.js} +3 -3
  64. package/dist/web/assets/index-D9lOU2_n.js.br +0 -0
  65. package/dist/web/assets/index-D9lOU2_n.js.gz +0 -0
  66. package/dist/web/assets/{installed-skills-pane-v1IcvRKL.js → installed-skills-pane-BRcMSvrv.js} +1 -1
  67. package/dist/web/assets/installed-skills-pane-BRcMSvrv.js.br +0 -0
  68. package/dist/web/assets/installed-skills-pane-BRcMSvrv.js.gz +0 -0
  69. package/dist/web/assets/{lazy-message-response-B6dT9kbf.js → lazy-message-response-C3PwDwxE.js} +2 -2
  70. package/dist/web/assets/lazy-message-response-C3PwDwxE.js.br +0 -0
  71. package/dist/web/assets/lazy-message-response-C3PwDwxE.js.gz +0 -0
  72. package/dist/web/assets/{mcp-management-pane-DiPUaZAO.js → mcp-management-pane-CIXkOpXu.js} +1 -1
  73. package/dist/web/assets/mcp-management-pane-CIXkOpXu.js.br +0 -0
  74. package/dist/web/assets/mcp-management-pane-CIXkOpXu.js.gz +0 -0
  75. package/dist/web/assets/message-response-AwJefMK2.js +7 -0
  76. package/dist/web/assets/message-response-AwJefMK2.js.br +0 -0
  77. package/dist/web/assets/message-response-AwJefMK2.js.gz +0 -0
  78. package/dist/web/assets/{official-plugins-pane-Cis1hRgm.js → official-plugins-pane-C4i4LhS5.js} +1 -1
  79. package/dist/web/assets/official-plugins-pane-C4i4LhS5.js.br +0 -0
  80. package/dist/web/assets/official-plugins-pane-C4i4LhS5.js.gz +0 -0
  81. package/dist/web/assets/{personalization-settings-panel-BB5nguhA.js → personalization-settings-panel-BVty2pDz.js} +1 -1
  82. package/dist/web/assets/personalization-settings-panel-BVty2pDz.js.br +0 -0
  83. package/dist/web/assets/personalization-settings-panel-BVty2pDz.js.gz +0 -0
  84. package/dist/web/assets/{project-file-popup-page-CAcF7DIa.js → project-file-popup-page-hTRv5v3H.js} +1 -1
  85. package/dist/web/assets/project-file-popup-page-hTRv5v3H.js.br +0 -0
  86. package/dist/web/assets/project-file-popup-page-hTRv5v3H.js.gz +0 -0
  87. package/dist/web/assets/{project-source-dialog-DbOmvJBS.js → project-source-dialog-wuXJolJb.js} +1 -1
  88. package/dist/web/assets/project-source-dialog-wuXJolJb.js.br +0 -0
  89. package/dist/web/assets/project-source-dialog-wuXJolJb.js.gz +0 -0
  90. package/dist/web/assets/{project-source-panel-DGafRUDi.js → project-source-panel-PKAa_dbo.js} +1 -1
  91. package/dist/web/assets/project-source-panel-PKAa_dbo.js.br +0 -0
  92. package/dist/web/assets/project-source-panel-PKAa_dbo.js.gz +0 -0
  93. package/dist/web/assets/{prompt-input-DwT-XwSc.js → prompt-input-BHn4OExn.js} +1 -1
  94. package/dist/web/assets/prompt-input-BHn4OExn.js.br +0 -0
  95. package/dist/web/assets/prompt-input-BHn4OExn.js.gz +0 -0
  96. package/dist/web/assets/{prompt-input-controls-CLasQrSj.js → prompt-input-controls-D4wqb_zQ.js} +1 -1
  97. package/dist/web/assets/prompt-input-controls-D4wqb_zQ.js.br +0 -0
  98. package/dist/web/assets/prompt-input-controls-D4wqb_zQ.js.gz +0 -0
  99. package/dist/web/assets/{scheduled-task-date-time-picker-CnSPVHna.js → scheduled-task-date-time-picker-jo6dkC-Z.js} +1 -1
  100. package/dist/web/assets/scheduled-task-date-time-picker-jo6dkC-Z.js.br +0 -0
  101. package/dist/web/assets/scheduled-task-date-time-picker-jo6dkC-Z.js.gz +0 -0
  102. package/dist/web/assets/{scheduled-task-schedule-BnMdRADi.js → scheduled-task-schedule-DD3Zt60h.js} +1 -1
  103. package/dist/web/assets/scheduled-task-schedule-DD3Zt60h.js.br +0 -0
  104. package/dist/web/assets/{scheduled-task-schedule-BnMdRADi.js.gz → scheduled-task-schedule-DD3Zt60h.js.gz} +0 -0
  105. package/dist/web/assets/{scheduled-tasks-container-CNCzsjiP.js → scheduled-tasks-container-CDsipwUR.js} +2 -2
  106. package/dist/web/assets/scheduled-tasks-container-CDsipwUR.js.br +0 -0
  107. package/dist/web/assets/scheduled-tasks-container-CDsipwUR.js.gz +0 -0
  108. package/dist/web/assets/{settings-personalization-CB_nnUys.js → settings-personalization-BbAIVND-.js} +1 -1
  109. package/dist/web/assets/settings-personalization-BbAIVND-.js.br +0 -0
  110. package/dist/web/assets/settings-personalization-BbAIVND-.js.gz +0 -0
  111. package/dist/web/assets/{sheet-JpH2S7eZ.js → sheet-C6eLtEHx.js} +1 -1
  112. package/dist/web/assets/sheet-C6eLtEHx.js.br +0 -0
  113. package/dist/web/assets/sheet-C6eLtEHx.js.gz +0 -0
  114. package/dist/web/assets/{skills-market-container-BgtnwdI7.js → skills-market-container-DFzLg008.js} +2 -2
  115. package/dist/web/assets/skills-market-container-DFzLg008.js.br +0 -0
  116. package/dist/web/assets/skills-market-container-DFzLg008.js.gz +0 -0
  117. package/dist/web/assets/{task-timeline-store-BN41mX3t.js → task-timeline-store-Cj_Bcaqi.js} +1 -1
  118. package/dist/web/assets/task-timeline-store-Cj_Bcaqi.js.br +0 -0
  119. package/dist/web/assets/task-timeline-store-Cj_Bcaqi.js.gz +0 -0
  120. package/dist/web/assets/{third-party-marketplace-pane-CAI6XIWR.js → third-party-marketplace-pane-CoP9DTWX.js} +1 -1
  121. package/dist/web/assets/third-party-marketplace-pane-CoP9DTWX.js.br +0 -0
  122. package/dist/web/assets/third-party-marketplace-pane-CoP9DTWX.js.gz +0 -0
  123. package/dist/web/assets/workbench-composer-C6Sv8xDL.js +8 -0
  124. package/dist/web/assets/workbench-composer-C6Sv8xDL.js.br +0 -0
  125. package/dist/web/assets/workbench-composer-C6Sv8xDL.js.gz +0 -0
  126. package/dist/web/assets/{workbench-inspector-changes-Bl5nS-_2.js → workbench-inspector-changes-7z5diDTC.js} +1 -1
  127. package/dist/web/assets/workbench-inspector-changes-7z5diDTC.js.br +0 -0
  128. package/dist/web/assets/workbench-inspector-changes-7z5diDTC.js.gz +0 -0
  129. package/dist/web/assets/{workbench-pet-canvas-CnwZR5HG.js → workbench-pet-canvas-dWliFlKE.js} +1 -1
  130. package/dist/web/assets/workbench-pet-canvas-dWliFlKE.js.br +0 -0
  131. package/dist/web/assets/workbench-pet-canvas-dWliFlKE.js.gz +0 -0
  132. package/dist/web/assets/workbench-shell-fA7tfnac.js +3 -0
  133. package/dist/web/assets/workbench-shell-fA7tfnac.js.br +0 -0
  134. package/dist/web/assets/workbench-shell-fA7tfnac.js.gz +0 -0
  135. package/dist/web/index.html +1 -1
  136. package/dist/web/index.html.br +0 -0
  137. package/dist/web/index.html.gz +0 -0
  138. package/package.json +2 -2
  139. package/dist/web/assets/agent-settings-panel-Ci9mJOS-.js.br +0 -0
  140. package/dist/web/assets/agent-settings-panel-Ci9mJOS-.js.gz +0 -0
  141. package/dist/web/assets/attachments-uWbRsPJj.js.br +0 -0
  142. package/dist/web/assets/attachments-uWbRsPJj.js.gz +0 -0
  143. package/dist/web/assets/background-image-picker-qGpdQPQi.js.br +0 -0
  144. package/dist/web/assets/background-image-picker-qGpdQPQi.js.gz +0 -0
  145. package/dist/web/assets/bing-wallpaper-queries-uesKD16x.js.br +0 -0
  146. package/dist/web/assets/bing-wallpaper-queries-uesKD16x.js.gz +0 -0
  147. package/dist/web/assets/button-group-075rCj_f.js.br +0 -0
  148. package/dist/web/assets/button-group-075rCj_f.js.gz +0 -0
  149. package/dist/web/assets/code-block-C9eTeWWd.js.br +0 -0
  150. package/dist/web/assets/code-block-C9eTeWWd.js.gz +0 -0
  151. package/dist/web/assets/commit-settings-panel-CaMMU0oA.js.br +0 -0
  152. package/dist/web/assets/commit-settings-panel-CaMMU0oA.js.gz +0 -0
  153. package/dist/web/assets/context-menu-Dj3lnor1.js.br +0 -0
  154. package/dist/web/assets/context-menu-Dj3lnor1.js.gz +0 -0
  155. package/dist/web/assets/file-review-dialog-D8XVZ21M.js.br +0 -0
  156. package/dist/web/assets/file-review-dialog-D8XVZ21M.js.gz +0 -0
  157. package/dist/web/assets/git-history-panel-D2fKSR66.js.br +0 -0
  158. package/dist/web/assets/git-history-panel-D2fKSR66.js.gz +0 -0
  159. package/dist/web/assets/global-search-dialog-BxT-UjpZ.js.br +0 -0
  160. package/dist/web/assets/global-search-dialog-BxT-UjpZ.js.gz +0 -0
  161. package/dist/web/assets/global-settings-about-DiblprcD.js.br +0 -0
  162. package/dist/web/assets/global-settings-about-DiblprcD.js.gz +0 -0
  163. package/dist/web/assets/global-settings-fields-D5T5SPXY.js.br +0 -0
  164. package/dist/web/assets/global-settings-fields-D5T5SPXY.js.gz +0 -0
  165. package/dist/web/assets/global-settings-model-COz331Sr.js.br +0 -0
  166. package/dist/web/assets/global-settings-model-COz331Sr.js.gz +0 -0
  167. package/dist/web/assets/global-settings-page-DEBGBxSg.js.br +0 -0
  168. package/dist/web/assets/global-settings-page-DEBGBxSg.js.gz +0 -0
  169. package/dist/web/assets/global-settings-pets-DwJnj_6N.js.br +0 -0
  170. package/dist/web/assets/global-settings-pets-DwJnj_6N.js.gz +0 -0
  171. package/dist/web/assets/history-task-timeline-oQRRdMbY.js.br +0 -0
  172. package/dist/web/assets/history-task-timeline-oQRRdMbY.js.gz +0 -0
  173. package/dist/web/assets/index-DRfXjZ2a.js.br +0 -0
  174. package/dist/web/assets/index-DRfXjZ2a.js.gz +0 -0
  175. package/dist/web/assets/installed-skills-pane-v1IcvRKL.js.br +0 -0
  176. package/dist/web/assets/installed-skills-pane-v1IcvRKL.js.gz +0 -0
  177. package/dist/web/assets/lazy-message-response-B6dT9kbf.js.br +0 -0
  178. package/dist/web/assets/lazy-message-response-B6dT9kbf.js.gz +0 -0
  179. package/dist/web/assets/mcp-management-pane-DiPUaZAO.js.br +0 -0
  180. package/dist/web/assets/mcp-management-pane-DiPUaZAO.js.gz +0 -0
  181. package/dist/web/assets/message-response-BZZGbaVm.js +0 -7
  182. package/dist/web/assets/message-response-BZZGbaVm.js.br +0 -0
  183. package/dist/web/assets/message-response-BZZGbaVm.js.gz +0 -0
  184. package/dist/web/assets/official-plugins-pane-Cis1hRgm.js.br +0 -0
  185. package/dist/web/assets/official-plugins-pane-Cis1hRgm.js.gz +0 -0
  186. package/dist/web/assets/personalization-settings-panel-BB5nguhA.js.br +0 -0
  187. package/dist/web/assets/personalization-settings-panel-BB5nguhA.js.gz +0 -0
  188. package/dist/web/assets/project-file-popup-page-CAcF7DIa.js.br +0 -0
  189. package/dist/web/assets/project-file-popup-page-CAcF7DIa.js.gz +0 -0
  190. package/dist/web/assets/project-source-dialog-DbOmvJBS.js.br +0 -0
  191. package/dist/web/assets/project-source-dialog-DbOmvJBS.js.gz +0 -0
  192. package/dist/web/assets/project-source-panel-DGafRUDi.js.br +0 -0
  193. package/dist/web/assets/project-source-panel-DGafRUDi.js.gz +0 -0
  194. package/dist/web/assets/prompt-input-DwT-XwSc.js.br +0 -0
  195. package/dist/web/assets/prompt-input-DwT-XwSc.js.gz +0 -0
  196. package/dist/web/assets/prompt-input-controls-CLasQrSj.js.br +0 -0
  197. package/dist/web/assets/prompt-input-controls-CLasQrSj.js.gz +0 -0
  198. package/dist/web/assets/scheduled-task-date-time-picker-CnSPVHna.js.br +0 -0
  199. package/dist/web/assets/scheduled-task-date-time-picker-CnSPVHna.js.gz +0 -0
  200. package/dist/web/assets/scheduled-task-schedule-BnMdRADi.js.br +0 -0
  201. package/dist/web/assets/scheduled-tasks-container-CNCzsjiP.js.br +0 -0
  202. package/dist/web/assets/scheduled-tasks-container-CNCzsjiP.js.gz +0 -0
  203. package/dist/web/assets/settings-personalization-CB_nnUys.js.br +0 -0
  204. package/dist/web/assets/settings-personalization-CB_nnUys.js.gz +0 -0
  205. package/dist/web/assets/sheet-JpH2S7eZ.js.br +0 -0
  206. package/dist/web/assets/sheet-JpH2S7eZ.js.gz +0 -0
  207. package/dist/web/assets/skills-market-container-BgtnwdI7.js.br +0 -0
  208. package/dist/web/assets/skills-market-container-BgtnwdI7.js.gz +0 -0
  209. package/dist/web/assets/task-timeline-store-BN41mX3t.js.br +0 -0
  210. package/dist/web/assets/task-timeline-store-BN41mX3t.js.gz +0 -0
  211. package/dist/web/assets/third-party-marketplace-pane-CAI6XIWR.js.br +0 -0
  212. package/dist/web/assets/third-party-marketplace-pane-CAI6XIWR.js.gz +0 -0
  213. package/dist/web/assets/workbench-composer-dKix0zGK.js +0 -8
  214. package/dist/web/assets/workbench-composer-dKix0zGK.js.br +0 -0
  215. package/dist/web/assets/workbench-composer-dKix0zGK.js.gz +0 -0
  216. package/dist/web/assets/workbench-inspector-changes-Bl5nS-_2.js.br +0 -0
  217. package/dist/web/assets/workbench-inspector-changes-Bl5nS-_2.js.gz +0 -0
  218. package/dist/web/assets/workbench-pet-canvas-CnwZR5HG.js.br +0 -0
  219. package/dist/web/assets/workbench-pet-canvas-CnwZR5HG.js.gz +0 -0
  220. package/dist/web/assets/workbench-shell-B8lBrj2O.js +0 -3
  221. package/dist/web/assets/workbench-shell-B8lBrj2O.js.br +0 -0
  222. package/dist/web/assets/workbench-shell-B8lBrj2O.js.gz +0 -0
@@ -0,0 +1,3 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/history-task-timeline-BrLtwo5_.js","assets/rolldown-runtime-CNC7AqOf.js","assets/react-runtime-DaCTDC27.js","assets/initial-deps-CB2J2rjl.js","assets/initial-deps-CNK9MBOP.js","assets/initial-deps-Cq4pSOi-.js","assets/initial-deps-BM3gt1hz.js","assets/initial-deps-E80pA8LY.js","assets/task-timeline-store-Cj_Bcaqi.js","assets/initial-deps-DipJkDUX.js","assets/attachments-CSV8KBYa.js","assets/index-D9lOU2_n.js","assets/initial-deps-Bx4af_YG.js","assets/initial-deps-BYSU0u1N.js","assets/scheduled-task-floating-ui~index~workbench-shell~workbench-inspector-changes~project-file-p~m6x4vffh-DAfditVv.js","assets/index-Cm5l38kF.css","assets/prompt-reference-token-Cxx6C-IR.js","assets/copy-BynT2kGi.js","assets/external-link-DcCR8cO8.js","assets/file-pen-line-Dm4cCdyM.js","assets/files-BQtgYZvR.js","assets/git-fork-93orhLsV.js","assets/history-BWOEYMB7.js","assets/info-BbsecYYN.js","assets/file-change-D7aZLgtG.js","assets/lazy-message-response-C3PwDwxE.js","assets/code-block-CmzWecTa.js","assets/search-highlight-Zgr_0184.js","assets/search-highlight-Ct60jVKA.css","assets/history-location-BlnZi6Z-.js","assets/patch-diff-viewer-CwDRm5oN.js","assets/engine-compile-DcaAFSGO.js","assets/lib-DE0ZEvGM.js","assets/code-languages-DVcuYjhn.js","assets/shiki-bundle-DdeD2OLK.js","assets/git-history-panel-CofR8yva.js","assets/file-review-dialog-Bv3Hor8O.js","assets/file-code-corner-DrXDbEPu.js","assets/file-navigation-view-preference-BrQTIoOu.js","assets/context-menu-Dfbnk16V.js","assets/workbench-inspector-changes-7z5diDTC.js","assets/prompt-input-controls-D4wqb_zQ.js","assets/sparkles-B6-DOZ3B.js","assets/upload-ixXXjamH.js","assets/button-group-mjeW2BTr.js","assets/skills-market-container-DFzLg008.js","assets/skills-market-container-C8okZy75.css","assets/scheduled-tasks-container-CDsipwUR.js","assets/scheduled-task-schedule-DD3Zt60h.js","assets/workbench-composer-C6Sv8xDL.js","assets/approval-mode-CKJY6q52.js","assets/prompt-input-BHn4OExn.js","assets/sliders-horizontal-DzlaBxiO.js","assets/scheduled-tasks-container-CVGTy7-W.css"])))=>i.map(i=>d[i]);
2
+ import{a as e}from"./rolldown-runtime-CNC7AqOf.js";import{t}from"./initial-deps-Bx4af_YG.js";import{i as n,t as r}from"./react-runtime-DaCTDC27.js";import{b as i,l as a,o,r as s}from"./initial-deps-CB2J2rjl.js";import{u as c}from"./initial-deps-BM3gt1hz.js";import{i as l,o as u}from"./initial-deps-DipJkDUX.js";import{A as d,E as f,G as p,I as m,L as h,O as g,P as _,R as v,U as y,V as b,_ as x,b as S,et as C,g as w,it as T,j as E,s as D,st as O,u as k,v as A,y as j,z as M}from"./initial-deps-E80pA8LY.js";import{c as ee}from"./attachments-CSV8KBYa.js";import{t as N}from"./bot-DS7Hjc6u.js";import{_ as P,a as te,c as ne,d as F,f as I,g as re,h as ie,i as L,l as R,m as ae,n as oe,o as z,p as se,r as B,s as V,t as H,u as ce,v as le}from"./task-timeline-store-Cj_Bcaqi.js";import{a as ue,c as U,n as de,r as fe,s as pe,t as me}from"./workbench-composer-C6Sv8xDL.js";import{n as he,t as ge}from"./project-source-panel-PKAa_dbo.js";import{t as _e}from"./copy-BynT2kGi.js";import{t as ve}from"./external-link-DcCR8cO8.js";import{t as ye}from"./file-code-corner-DrXDbEPu.js";import{v as W,y as be}from"./prompt-input-controls-D4wqb_zQ.js";import{t as xe}from"./files-BQtgYZvR.js";import{i as Se,r as Ce,t as we}from"./file-review-dialog-Bv3Hor8O.js";import{t as Te}from"./history-BWOEYMB7.js";import{t as Ee}from"./sparkles-B6-DOZ3B.js";import{a as De,c as Oe,i as ke,n as Ae,o as je,r as G,s as Me,t as Ne}from"./context-menu-Dfbnk16V.js";import{$ as Pe,A as K,At as Fe,B as Ie,Bt as Le,Ct as Re,D as ze,E as Be,Et as Ve,F as He,Ft as Ue,G as We,H as q,Ht as Ge,I as Ke,It as qe,J as Je,Jt as Ye,K as Xe,L as Ze,Lt as Qe,Mt as $e,Nt as et,O as tt,P as nt,Pt as rt,Q as it,Qt as at,R as ot,Rt as st,T as ct,U as J,Ut as lt,Vt as ut,W as Y,Wt as dt,X as ft,Y as pt,Yt as mt,Z as ht,_t as gt,a as _t,an as vt,bt as yt,et as bt,f as xt,fn as St,ft as Ct,g as wt,gn as Tt,h as Et,hn as Dt,in as Ot,it as kt,jt as At,mn as jt,nn as Mt,nt as Nt,on as Pt,p as Ft,pn as It,pt as Lt,qt as Rt,rn as zt,rt as Bt,sn as Vt,st as Ht,tn as Ut,tt as Wt,vt as X,w as Gt,wt as Kt,xt as qt,yt as Jt,zt as Yt}from"./index-D9lOU2_n.js";import{t as Xt}from"./code-languages-DVcuYjhn.js";import{n as Zt,t as Qt}from"./file-change-D7aZLgtG.js";import{r as $t,t as en}from"./workbench-pet-canvas-dWliFlKE.js";import{t as tn}from"./history-location-BlnZi6Z-.js";import{a as nn,i as rn,n as an,o as on,r as sn,t as cn}from"./code-block-CmzWecTa.js";import{t as ln}from"./project-source-dialog-wuXJolJb.js";import{t as un}from"./button-group-mjeW2BTr.js";var dn=C(`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`}]]),fn=C(`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`}]]),pn=C(`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`}]]),mn=C(`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`}]]),hn=C(`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`}]]),gn=C(`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`}]]),_n=C(`list-filter`,[[`path`,{d:`M2 5h20`,key:`1fs1ex`}],[`path`,{d:`M6 12h12`,key:`8npq4p`}],[`path`,{d:`M9 19h6`,key:`456am0`}]]),vn=C(`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`}]]),yn=C(`panel-left`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M9 3v18`,key:`fh3hqa`}]]),bn=C(`panel-right`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M15 3v18`,key:`14nvp0`}]]),xn=C(`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`}]]),Z=e(n(),1);async function Sn(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(at(n,r,null,i.snapshot,!0,t)))[o].find(e=>e.path===a.path&&e.kind===a.kind)??a}function Cn(e,t){return[`projects`,e,`tasks`,t,`launch`]}function wn(e){return{...Ve({...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:[]}}var Tn=`(max-width: 760px)`,En=`(max-width: 1100px)`,Dn={default:288,maximum:400,minimum:220},On={default:320,minimum:320};function kn(e){return typeof window>`u`||!window.matchMedia(e).matches}function An(e,t){return Math.max(On.minimum,Math.floor((e-t)/2))}function jn({inspectorInitiallyOpen:e=!0}={}){let[t,n]=(0,Z.useState)(()=>kn(Tn)),[r,i]=(0,Z.useState)(()=>e&&kn(`(max-width: 1100px)`)),[a,o]=(0,Z.useState)(Dn.default),[s,c]=(0,Z.useState)(On.default),[l,u]=(0,Z.useState)(()=>typeof window>`u`?1440:window.innerWidth),d=(0,Z.useRef)(null),f=An(l,t?a:0);return(0,Z.useLayoutEffect)(()=>{let e=d.current;if(e===null)return;let t=()=>{u(e.getBoundingClientRect().width)};t();let n=new ResizeObserver(t);return n.observe(e),()=>{n.disconnect()}},[]),(0,Z.useLayoutEffect)(()=>{c(e=>Math.min(e,f))},[f]),{inspectorMaximumWidth:f,inspectorOpen:r,inspectorWidth:s,setInspectorOpen:i,setInspectorWidth:c,setSidebarOpen:n,setSidebarWidth:o,sidebarOpen:t,sidebarWidth:a,workbenchShellRef:d}}function Mn(e,t){return{...e,fastMode:t}}function Nn(e,t,n){return e?n??!1:t??n??!1}function Pn(e,{projectId:t,taskId:n,temporary:r=!1}){let{activeTaskRenameLockRef:i,client:a,getNewChatSubmissionStartedAt:o,globalSettingsQuery:s,gitStatusQuery:c,markTaskRunning:l,modelsQuery:d,navigate:f,projectDefaultsMutation:p,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,setProjectFileDiffDialogSelection:D,setProjectFileDialogSelection:O,setSidebarOpen:k,setTaskRenameOpen:A,taskLaunchState:j}=e,M=(0,Z.useCallback)(e=>{C({change:e,kind:`diff`,projectId:t}),T(`file`),w(!0)},[t,C,w,T]),ee=(0,Z.useCallback)(e=>{x!==void 0&&Sn(v,a,t,x,c.data,e).then(e=>{D({change:e,projectId:t})}).catch(e=>{Kt(e instanceof Error?e:Error(`Git diff is unavailable`))})},[a,c.data,t,v,x,D]),N=(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`){Ft({onOpenSystemDefault:r,projectId:t,reference:e,...x===void 0?{}:{rootPath:x}});return}let i=wt(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]),P=(0,Z.useCallback)((e,n)=>{let r=wt(e);if(r===`system`){let t=_.current;t.reset(),g.current.run(()=>t.mutateAsync({appId:`system-default`,path:e})).catch(()=>void 0);return}O({...n===void 0?{}:{change:n},kind:r,projectId:t,reference:{lineNumber:null,path:e}})},[t,g,_,O]),te=(0,Z.useCallback)(e=>{S({changes:e,projectId:t})},[t,S]),ne=()=>{A(!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});vt(v,r.task,r.taskCatalog.data),ne()}catch{}}),I=(0,Z.useCallback)(e=>{v.setQueryData([`projects`,e.projectId,`tasks`],t=>Vt(t,e)),v.setQueryData([`projects`,e.projectId,`tasks`,Dt],t=>t===void 0?void 0:[e,...t.filter(t=>t.id!==e.id)])},[v]),re=(0,Z.useCallback)(e=>{I(e),E({projectId:e.projectId,taskId:e.id})},[I,E]),ie=(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(Cn(e.projectId,e.id),r),v.setQueryData(Yt(e.projectId,e.id,a).queryKey,{checkpoint:u,snapshot:wn(r)})}n!==void 0&&l(t,e.id),E(void 0),f({...r?{params:{taskId:e.id},to:`/temporary/t/$taskId`}:{params:{projectId:t,taskId:e.id},to:`/p/$projectId/t/$taskId`}})},[I,a,o,l,f,t,v,E,r]),L=d.data?.data??[],R=s.data?.settings,ae=m.data?.settings,oe=h.data!==void 0&&u(h.data),z=r?R:ae,se=L.find(e=>e.id===z?.model)??L.find(e=>e.isDefault)??L[0],B=(0,Z.useMemo)(()=>({approvalPolicy:z?.approvalPolicy??R?.approvalPolicy??`on-request`,approvalsReviewer:z?.approvalsReviewer??R?.approvalsReviewer??`user`,model:se?.id??z?.model??``,reasoningEffort:z?.reasoningEffort??se?.defaultReasoningEffort??``,sandboxMode:z?.sandboxMode??`workspace-write`}),[se,z,R]),[V,H]=(0,Z.useState)(),ce=r?V??B:B,le=Nn(r,ae?.fastMode,R?.fastMode),ue=async(e,t)=>{r||await p.mutateAsync(Mn(e,t))},U=async(e,t,n)=>{if(r){H(e);return}await ue(e,n)},de=(0,Z.useCallback)(e=>{f({params:{projectId:e},to:`/p/$projectId`})},[f]),pe=()=>{k(!1),requestAnimationFrame(()=>{document.querySelector(`#workbench-sidebar-toggle`)?.focus()})},me=()=>{w(!1),requestAnimationFrame(()=>{document.querySelector(`#workbench-inspector-toggle`)?.focus()})},he=j?.turn.id?b.store!==void 0&&fe(b.store.getState(),j.turn.id).length>0:!1;return(0,Z.useEffect)(()=>{n!==void 0&&he&&v.removeQueries({exact:!0,queryKey:Cn(t,n)})},[he,t,v,n]),(0,Z.useEffect)(()=>{let e=Fn(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(Tn),t=window.matchMedia(En),n=()=>{e.matches&&k(!1),t.matches&&w(!1)};return e.addEventListener(`change`,n),t.addEventListener(`change`,n),()=>{e.removeEventListener(`change`,n),t.removeEventListener(`change`,n)}},[w,k]),{...e,closeInspector:me,closeSidebar:pe,closeTaskRenameDialog:ne,draftSettings:ce,fastModeDefault:le,fastModeAvailable:oe,globalSettings:R,handleNewTaskProjectChange:de,handleTaskCreated:re,handleTaskStarted:ie,models:L,openFileDiff:M,openProjectFileDiff:ee,openFileReview:te,openMessageFileReference:N,openProjectFile:P,renameActiveTask:F,updateDraftSettings:U,updateProjectTaskDefaults:ue}}function Fn(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 Q=r(),In=(0,Z.lazy)(()=>qt().then(e=>({default:e.GlobalSettingsPage})));function Ln({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)(In,{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 Rn=(0,Z.lazy)(()=>t(()=>import(`./history-task-timeline-BrLtwo5_.js`).then(e=>({default:e.HistoryTaskTimeline})),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29]))),zn=()=>void 0,Bn=()=>void 0,Vn=()=>void 0,Hn=()=>Promise.resolve();function Un(e){T(`conversation`);let t=tn(t=>t.location?.projectId===e.projectId&&t.location.taskId===e.taskId?t.location:null);if(t!==null)return(0,Q.jsx)(Z.Suspense,{fallback:(0,Q.jsx)(B,{message:O.t(`timeline.loading`,{ns:`conversation`}),role:`status`}),children:(0,Q.jsx)(Rn,{location:t,...e.onOpenFileDiff===void 0?{}:{onOpenFileDiff:e.onOpenFileDiff},...e.onOpenSourceFile===void 0?{}:{onOpenSourceFile:e.onOpenSourceFile},...e.onReviewFileChanges===void 0?{}:{onReviewFileChanges:e.onReviewFileChanges}})});if(e.taskId===void 0)return e.submissionStartedAt===void 0?`temporary`in e?(0,Q.jsx)(oe,{scopeName:e.scopeName}):(0,Q.jsx)(oe,{onProjectChange:e.onProjectChange,projectId:e.projectId,projects:e.projects}):(0,Q.jsx)(se,{"aria-label":O.t(`timeline.conversation`,{ns:`conversation`}),conversationId:`${e.projectId}:new-chat`,children:(0,Q.jsx)(ae,{className:`gap-6`,children:(0,Q.jsxs)(I,{from:`assistant`,children:[(0,Q.jsx)(L,{completedAt:null,startedAt:e.submissionStartedAt}),(0,Q.jsx)(R,{})]})})});let{onBuildPlan:n,onForkTask:r,onOpenFileDiff:i,onOpenSourceFile:a,onReviewFileChanges:o,onResolvePendingRequest:s,runtime:c,scrollToBottomSignal:l,submissionStartedAt:u,submissionTurnId:d,startingSnapshot:f}=e;return c===void 0?(0,Q.jsx)(B,{message:O.t(`timeline.loading`,{ns:`conversation`}),role:`status`}):(0,Q.jsx)(Wn,{onOpenFileDiff:i??zn,onOpenSourceFile:a??Bn,onReviewFileChanges:o??Vn,onResolvePendingRequest:s??Hn,...n===void 0?{}:{onBuildPlan:n},...r===void 0?{}:{onForkTask:r},runtime:c,scrollToBottomSignal:l,submissionStartedAt:u,submissionTurnId:d,startingSnapshot:f})}function Wn({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)(B,{message:O.t(`timeline.loading`,{ns:`conversation`}),role:`status`}):(0,Q.jsx)(Gn,{connected:!1,snapshot:u}):o.store===void 0?(0,Q.jsx)(B,{message:O.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:O.t(`timeline.reconnecting`,{ns:`conversation`})}):null,(0,Q.jsx)(H,{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)(B,{message:O.t(`timeline.loadError`,{ns:`conversation`}),role:`alert`})}function Gn({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}){T(`conversation`);let c=(0,Z.useMemo)(()=>Lt({projectId:s.projectId,taskId:s.id},{checkpoint:{sequence:0,sessionId:`starting-snapshot`},snapshot:s}),[s]);return(0,Q.jsx)(H,{connected:e,...t===void 0?{}:{onBuildPlan:t},...n===void 0?{}:{onForkTask:n},onOpenFileDiff:r,onOpenSourceFile:i,onReviewFileChanges:a,onResolvePendingRequest:o,store:c})}var Kn=8;function qn(e,t,n){return Math.min(n,Math.max(t,e))}function Jn({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=qn(c+(t.key===`ArrowLeft`?-8:Kn)*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=qn(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 Yn=(0,Z.lazy)(()=>t(()=>import(`./patch-diff-viewer-CwDRm5oN.js`),__vite__mapDeps([30,1,12,2,31,32,33,34,24])));function Xn({change:e,onClose:t}){let{t:n}=T(`workbench`);if(e===null)return null;let r=Zt(e.path),{additions:i,removals:a}=Qt(e),o=`file-diff-dialog-title`;return(0,Q.jsx)(it,{onOpenChange:e=>{e||t()},open:!0,children:(0,Q.jsx)(Pe,{"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)(ye,{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)(Bt,{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)(q,{children:[(0,Q.jsx)(Y,{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)(D,{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)(Yn,{change:e})})})]})})})}function Zn({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 Qn({onClose:e,projectId:t,projectRuntime:n,selection:r}){return r===null?null:(0,Q.jsx)($n,{onClose:e,projectId:t,projectRuntime:n,selection:r})}function $n({onClose:e,projectId:t,projectRuntime:n,selection:r}){let{t:i}=T(`workbench`),a=Ct(t,r.taskId,n),o=`subagent-output-dialog-title`,s;return s=a.error===null?a.isPending||a.metadata===void 0?(0,Q.jsx)(Zn,{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)(Un,{projectId:t,runtime:a,taskId:r.taskId})]}):(0,Q.jsx)(Zn,{message:i(`subagentOutput.error`),role:`alert`}),(0,Q.jsx)(it,{onOpenChange:t=>{t||e()},open:!0,children:(0,Q.jsx)(Pe,{"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)(Bt,{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)(ce,{collapsible:!1,status:V(r.status),children:(0,Q.jsx)(F,{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)(D,{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 er({context:e,projectId:t,taskId:n}){let{client:r,closeTaskRenameDialog:i,openProjectFileDiff:a,projectRuntime:o,renameActiveTask:s,renameMutation:c,selectedFileReview:l,selectedProjectFileDiffDialog:u,selectedProjectFileDialog:d,selectedRootPath:f,selectedSubagent:p,setFileReviewSelection:m,setProjectFileDiffDialogSelection:h,setProjectFileDialogSelection:g,setSubagentDialogSelection:_,taskRenameOpen:v,title:y}=e,b=d?.change,x=b===void 0?void 0:()=>{a(b)};return(0,Q.jsxs)(Q.Fragment,{children:[d===null?null:(0,Q.jsx)(ln,{client:r,onClose:()=>{g(null)},...x===void 0?{}:{onOpenDiff:x},previewKind:d.kind,projectId:t,reference:d.reference,...f===void 0?{}:{rootPath:f}}),(0,Q.jsx)(Xn,{change:u?.change??null,onClose:()=>{h(null)}}),l===null?null:(0,Q.jsx)(we,{changes:l,onClose:()=>{m(null)}}),(0,Q.jsx)(Qn,{onClose:()=>{_(null)},projectId:t,projectRuntime:o,selection:p}),v&&n!==void 0?(0,Q.jsx)(Ie,{initialTitle:y,isPending:c.isPending,onClose:i,onRename:e=>void s(e)},`${t}:${n}`):null]})}var tr=1500;function nr(e,t){return e||t>0?tr:!1}function rr(e,t,n,r){return e&&r!==void 0&&t!==n}function ir(e,t,n,r,i=!0){let l=a(),u=(0,Z.useRef)(r),d=(0,Z.useRef)(new Map),f=(0,Z.useRef)(et()),p=o({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 nr(r,e.state.data?.data.length??0)}}),m=s({mutationFn:async r=>{if(n===void 0)throw Error(`Background terminal termination requires a task`);let i=d.current.get(r)??c();return d.current.set(r,i),e.terminateBackgroundTerminal(t,n,r,{idempotencyKey:i})},onSuccess:e=>{l.setQueryData([`projects`,t,`tasks`,n,`background-terminals`],e.terminals)}}),h=p.refetch,g=m.mutateAsync;(0,Z.useEffect)(()=>{let e=rr(i,u.current,r,n);u.current=r,e&&h()},[i,r,h,n]);let _=(0,Z.useCallback)(e=>f.current.run(async()=>{try{await g(e),d.current.delete(e)}catch{}}),[g]);return{error:p.error,isPending:p.isPending,terminals:p.data?.data??[],terminatingTerminalId:m.isPending&&typeof m.variables==`string`?m.variables:null,terminateTerminal:_}}function ar(e,t,n,r){return n&&e!==t&&r(),t}function or(e,t=window){let n=()=>{e()};return t.addEventListener(`focus`,n),()=>{t.removeEventListener(`focus`,n)}}function sr({enabled:e,refresh:t,scopeKey:n}){let r=(0,Z.useRef)(n);(0,Z.useEffect)(()=>{r.current=ar(r.current,n,e,t)},[e,t,n]),(0,Z.useEffect)(()=>{if(e)return or(t)},[e,t])}function cr({disabled:e,onDelete:t,onRename:n}){let{t:r}=T(`workbench`);return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(ke,{}),(0,Q.jsxs)(G,{disabled:e,onSelect:n,children:[(0,Q.jsx)(S,{"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)(k,{"aria-hidden":`true`,className:`size-4`}),(0,Q.jsx)(`span`,{children:r(`openMenu.delete`)})]})]})}function lr({disabled:e,onDelete:t,onRename:n}){let{t:r}=T(`workbench`);return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(nt,{}),(0,Q.jsxs)(K,{disabled:e,onSelect:n,children:[(0,Q.jsx)(S,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,Q.jsx)(`span`,{children:r(`openMenu.rename`)})]}),(0,Q.jsxs)(K,{className:`text-danger`,disabled:e,onSelect:t,children:[(0,Q.jsx)(k,{"aria-hidden":`true`,className:`size-4`}),(0,Q.jsx)(`span`,{children:r(`openMenu.delete`)})]})]})}var ur={editor:he,"file-manager":d,"system-default":ve,terminal:P,tool:re};function dr(e,t){return t===`file`?e:e.filter(e=>e.kind!==`system-default`)}function fr(e){return e.find(e=>e.kind===`file-manager`)}function pr(e){return e.split(/[\\/]/u).at(-1)??e}function mr(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 hr(e){navigator.clipboard.writeText(e).catch(()=>void 0)}function gr({apps:e,isPending:t,onOpen:n,onDelete:r,onOpenInNewWindow:i,onReference:a,onRename:o,onSelect:s,target:c}){let{t:l}=T(`workbench`);return(0,Q.jsxs)(ze,{modal:!1,onOpenChange:e=>{e&&n()},children:[(0,Q.jsxs)(q,{children:[(0,Q.jsx)(ot,{asChild:!0,children:(0,Q.jsx)(Y,{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)(_,{"aria-hidden":`true`,className:`size-3.5`})})})}),(0,Q.jsx)(J,{side:`left`,children:l(`openMenu.moreActions`)})]}),(0,Q.jsx)(_r,{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 _r({apps:e,isPending:t,onDelete:n,onOpenInNewWindow:r,onReference:i,onRename:a,onSelect:o,target:s}){let{t:c}=T(`workbench`),l=dr(e,s.type),u=c(`openMenu.targetLabel`,{path:s.path}),f=pr(s.path),p=s.reference;return(0,Q.jsxs)(tt,{align:`end`,"aria-label":u,className:`w-52`,children:[(0,Q.jsxs)(K,{onSelect:()=>{hr(f)},children:[(0,Q.jsx)(_e,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,Q.jsx)(`span`,{children:c(`openMenu.copyName`)})]}),(0,Q.jsxs)(K,{onSelect:()=>{hr(s.relativePath)},children:[(0,Q.jsx)(_e,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,Q.jsx)(`span`,{children:c(`openMenu.copyRelativePath`)})]}),(0,Q.jsxs)(K,{onSelect:()=>{hr(s.absolutePath)},children:[(0,Q.jsx)(_e,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,Q.jsx)(`span`,{children:c(`openMenu.copyAbsolutePath`)})]}),l.length===0?null:(0,Q.jsxs)(He,{children:[(0,Q.jsxs)(Ze,{children:[(0,Q.jsx)(d,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,Q.jsx)(`span`,{children:c(`openMenu.open`)})]}),(0,Q.jsx)(Ke,{children:l.map(e=>{let n=ur[e.kind],r=e.kind===`system-default`?c(`openMenu.systemDefault`):e.name;return(0,Q.jsxs)(K,{"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)(K,{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,p===void 0?null:(0,Q.jsxs)(K,{onSelect:()=>{i(p)},children:[(0,Q.jsx)(fn,{"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)(lr,{disabled:t,onDelete:n,onRename:a})]})}function vr({apps:e,className:t=``,defaultOpenAppId:n,hidden:r=!1,isDetecting:i,isPending:a,onSelect:o}){let{t:s}=T(`workbench`),c=dr(e,`directory`);if(r||!i&&c.length===0)return null;let 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}),f=l?.name??u,m=l===void 0?d:ur[l.kind];return(0,Q.jsxs)(ze,{modal:!1,children:[(0,Q.jsxs)(un,{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)(m,{"aria-hidden":`true`}),(0,Q.jsx)(`span`,{className:`hidden truncate sm:inline`,children:f})]}),(0,Q.jsx)(ot,{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)(p,{"aria-hidden":`true`})})})]}),(0,Q.jsx)(tt,{align:`end`,"aria-label":s(`openMenu.choose`),className:`w-52`,children:c.map(e=>{let t=ur[e.kind];return(0,Q.jsxs)(K,{"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 yr({apps:e,ariaLabel:t,isPending:n,onDelete:r,onOpenInNewWindow:i,onReference:a,onRename:o,onSelect:s,target:c}){let{t:l}=T(`workbench`),u=dr(e,c.type),f=pr(c.path),p=c.reference;return(0,Q.jsxs)(Ae,{"aria-label":t,className:`w-52`,children:[(0,Q.jsxs)(G,{onSelect:()=>{hr(f)},children:[(0,Q.jsx)(_e,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,Q.jsx)(`span`,{children:l(`openMenu.copyName`)})]}),(0,Q.jsxs)(G,{onSelect:()=>{hr(c.relativePath)},children:[(0,Q.jsx)(_e,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,Q.jsx)(`span`,{children:l(`openMenu.copyRelativePath`)})]}),(0,Q.jsxs)(G,{onSelect:()=>{hr(c.absolutePath)},children:[(0,Q.jsx)(_e,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,Q.jsx)(`span`,{children:l(`openMenu.copyAbsolutePath`)})]}),u.length===0?null:(0,Q.jsxs)(De,{children:[(0,Q.jsxs)(Me,{children:[(0,Q.jsx)(d,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,Q.jsx)(`span`,{children:l(`openMenu.open`)})]}),(0,Q.jsx)(je,{children:u.map(e=>{let t=ur[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,p===void 0?null:(0,Q.jsxs)(G,{onSelect:()=>{a(p)},children:[(0,Q.jsx)(fn,{"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)(cr,{disabled:n,onDelete:r,onRename:o})]})}function br({apps:e,children:t,isPending:n,onOpen:r,onDelete:i,onOpenInNewWindow:a,onReference:o,onRename:s,onSelect:c,target:l}){let{t:u}=T(`workbench`);return(0,Q.jsxs)(Ne,{modal:!1,onOpenChange:e=>{e&&r()},children:[(0,Q.jsx)(Oe,{asChild:!0,onContextMenu:e=>{e.stopPropagation()},children:t}),(0,Q.jsx)(yr,{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}})]})}function xr({activePanel:e,gitStatus:t,temporary:n}){return!n&&e&&t!==void 0&&t.repositoryMode!==`none`&&t.staged.length+t.unstaged.length>0}function Sr(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):(o.push(`project`),e!==void 0&&o.push(`context`),a&&o.push(`changes`),i&&o.push(`history`),r&&o.push(`file`),o)}function Cr({contextOnly:e=!1,fileOpen:t=!1,gitStatus:n,inspectorOpen:r,requestedTab:i,taskId:a}){let o=Sr(a,n,{contextOnly:e,fileOpen:t}),s=e?i===`file`&&t?`file`:`context`:o.includes(i)?i:i===`changes`&&n?.repositoryMode!==`none`?o[0]??`project`:`project`;return{activeTab:s,changes:r&&s===`changes`,context:r&&s===`context`,file:r&&s===`file`,history:r&&s===`history`,project:r&&s===`project`}}function wr(){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 Tr=new Set;function Er({projectId:e,taskId:t,temporary:n=!1}){let{t:r}=T(`workbench`),c=yt(),{capabilities:l,client:u,error:d,isPending:f,projects:p,projectTaskStates:m,tasks:h}=Qe(),g=p.find(t=>t.id===e),{selectedRootIds:_,setSelectedProjectRoot:v}=st(),y=Re(g,_),b=n?void 0:y?.id,x=n?void 0:y?.path,{markTaskRunning:S,projectRuntime:C,refreshProjectGitStatus:w,requestNotificationPermission:E,retry:D,viewTask:O}=Ue(),k=i(),A=a(),{inspectorMaximumWidth:j,inspectorOpen:M,inspectorWidth:ee,setInspectorOpen:N,setInspectorWidth:P,setSidebarOpen:ne,setSidebarWidth:F,sidebarOpen:I,sidebarWidth:re,workbenchShellRef:ie}=jn({inspectorInitiallyOpen:!n}),L=`${e}:${t??`draft`}`,R=`project`,[ae,oe]=(0,Z.useState)({scopeKey:L,tab:R}),[z,se]=(0,Z.useState)(null),B=ae.scopeKey===L?ae.tab:R,V=o(Ut(e,x??``,u,!n&&x!==void 0));sr({enabled:!n&&x!==void 0,refresh:V.refetch,scopeKey:`${e}:${t??`draft`}:${x??``}`});let H=Cr({contextOnly:n,fileOpen:z?.projectId===e,gitStatus:V.data,inspectorOpen:M,requestedTab:B,taskId:t});(0,Z.useLayoutEffect)(()=>{n&&N(!1)},[N,t,n]);let ce=o(St(u)),le=s({...It(u),onSuccess(e){A.setQueryData([`app-info`],e)}}),ue=o(jt(u,le.isPending)),U=o(dt(u)),de=o(xt()),fe=o(Ge(e,t,u,H.context)),pe=s({...lt(e,t,u),onSuccess(n){A.setQueryData([`projects`,e,`tasks`,t??null,`mcp-servers`],n)}}),me=o(ut(u)),he=o(Mt(e,u,!n)),ge=s({meta:{actionNotification:{successMessage:!1}},mutationFn:({appId:t,path:n})=>u.openProject(e,x,n===void 0?{appId:t}:{appId:t,path:n})}),_e=s({meta:{actionNotification:{successMessage:!1}},mutationFn:({attachmentId:t,taskId:n})=>u.openTaskAttachment(e,n,t)}),ve=(0,Z.useRef)(ge);ve.current=ge;let ye=(0,Z.useRef)(et()),W=fr(he.data?.apps??[]),be=(0,Z.useCallback)(()=>{if(W===void 0)return;let e=ve.current;e.reset(),ye.current.run(()=>e.mutateAsync({appId:W.id,path:void 0})).catch(()=>void 0)},[W,ye,ve]),xe=o({...zt(e,u),enabled:l?.skills.list===!0}),Se=o(Ye(e,u,!n)),Ce=s({...Rt(e,u),onSuccess(t){A.setQueryData([`projects`,e,`defaults`],t)}}),we=s({...Le(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)}}),Te=t===void 0?void 0:A.getQueryData(Cn(e,t)),Ee=Ct(e,t,C),De=(0,Z.useMemo)(()=>Te===void 0?void 0:wn(Te),[Te]),Oe=m.get(e),ke=Be({hasActiveTask:t!==void 0,projectDataFailed:d!==null||(Oe?.error??null)!==null,projectDataPending:f||Oe?.isPending===!0,taskConnectionState:Ee.connectionState}),Ae=ir(u,e,t,Ee.metadata?.status===`running`||De?.status===`running`,H.context),je=`${e}:${x??`temporary`}`,[G,Me]=(0,Z.useState)(()=>({paths:new Set,scope:je})),Ne=G.scope===je?G.paths:Tr,{beginSubmission:Pe,getStartedAt:K,handleSubmissionStateChange:Fe,startedAt:Ie}=wr(),[ze,Ve]=(0,Z.useState)(),[He,We]=(0,Z.useState)(!1),[q,Ke]=(0,Z.useState)(null),[qe,Je]=(0,Z.useState)(null),[Xe,Ze]=(0,Z.useState)(null),[$e,tt]=(0,Z.useState)(null),[nt,rt]=(0,Z.useState)(null),it=(0,Z.useCallback)(t=>{v(e,t),Je(null),Ze(null),tt(null),se(null)},[e,v]),ot=o(at(e,x??``,null,V.data?.snapshot??``,xr({activePanel:H.project||H.changes,gitStatus:V.data,temporary:n}),u)),ct=(0,Z.useCallback)(e=>{oe({scopeKey:L,tab:e})},[L]);(0,Z.useLayoutEffect)(()=>{O(e,t)},[e,t,O]);let J=n?r(`shell.temporaryTask`):g?.name??e,Y=x??``,ft=h.find(n=>n.projectId===e&&n.id===t)?.title??Ee.metadata?.title??r(`shell.newChat`),pt=s(Ot(u)),mt=(0,Z.useRef)(et()),ht=qe?.projectId===e?qe:null,gt=Xe?.projectId===e?Xe:null,_t=z?.projectId===e?z:null,vt=$e?.projectId===e?$e.changes:null,bt=(0,Z.useMemo)(()=>(Ee.itemStructureRevision,Ee.metadata,M?Ee.readSnapshot()??De:De),[M,Ee,De]),wt=(0,Z.useMemo)(()=>te(bt),[bt]),Tt=nt?.projectId===e&&nt.parentTaskId===t?{...nt.selection,status:wt.find(e=>e.taskId===nt.selection.taskId)?.status??nt.selection.status}:null;return{access:c,activeTaskRenameLockRef:mt,appInfoQuery:ce,appUpdateMutation:le,appUpdateProgressQuery:ue,backgroundTerminals:Ae,beginNewChatSubmission:Pe,capabilities:l,client:u,error:d,expandedFileTreePaths:Ne,fileReviewSelection:$e,getNewChatSubmissionStartedAt:K,gitStatusQuery:V,gitStatusDetailsQuery:ot,globalSettingsMutation:we,globalSettingsSection:q,globalSettingsQuery:me,handleNewChatSubmissionStateChange:Fe,inspectorOpen:M,inspectorMaximumWidth:j,inspectorTab:B,inspectorTask:bt,inspectorWidth:ee,isPending:f,markTaskRunning:S,mcpServersQuery:fe,mcpServersReloadMutation:pe,modelsQuery:U,navigate:k,newChatSubmissionStartedAt:Ie,openProjectFolder:be,pendingTaskSelection:ze,projectDefaultsMutation:Ce,projectDefaultsQuery:Se,projectName:J,projectRoots:g?.roots??[],projectOpenCapabilitiesQuery:he,providerConnectionQuery:de,projectFolderOpenAvailable:W!==void 0,projectFolderOpenDisabled:W===void 0||ge.isPending,projectPath:Y,projectPathOpenLockRef:ye,projectPathOpenMutation:ge,projectPathOpenMutationRef:ve,taskAttachmentOpenMutation:_e,projectRuntime:C,projectTaskState:Oe,projects:p,queryClient:A,refreshProjectGitStatus:w,renameMutation:pt,requestNotificationPermission:E,retry:D,runtime:Ee,selectedFileReview:vt,selectedInspectorFile:_t,selectedProjectFileDiffDialog:gt,selectedProjectFileDialog:ht,selectedRootId:b,selectedRootPath:x,selectedSubagent:Tt,setFileReviewSelection:tt,setFileTreeExpansion:Me,setGlobalSettingsSection:Ke,setInspectorOpen:N,setInspectorTab:ct,setInspectorWidth:P,setPendingTaskSelection:Ve,setSidebarOpen:ne,setSidebarWidth:F,setInspectorFileSelection:se,setProjectFileDiffDialogSelection:Ze,setProjectFileDialogSelection:Je,setSelectedRootId:it,setSubagentDialogSelection:rt,setTaskRenameOpen:We,sidebarConnectionState:ke,sidebarOpen:I,sidebarWidth:re,skillsQuery:xe,startingSnapshot:De,subagents:wt,taskLaunchState:Te,temporary:n,taskRenameOpen:He,tasks:h,t:r,title:ft,viewTask:O,workbenchShellRef:ie}}var Dr=(0,Z.memo)(function({capabilities:e,client:t,composerRef:n,fallbackSettings:r,fastModeAvailable:i,fastModeDefault:o,followUpBehavior:c,models:l,modelsError:u,modelsPending:d,onRequestNotificationPermission:f,onProjectTaskDefaultsChange:p,onOpenProjectPath:m,onProjectRootChange:h,onTaskStarted:g,projectId:_,projectPath:v,projectPathOpenAvailable:y,projectPathOpenDisabled:b,projectRoots:x,projectToolsEnabled:S,selectedProjectRootId:C,gitStatus:w,runtime:T,skills:E,startingSnapshot:D,startingPrompt:O,taskId:k,onOpenFileDiff:A,onOpenSourceFile:j,onReviewFileChanges:M}){let ee=a(),N=`${_}:${k}`,[P,te]=(0,Z.useState)(0),{beginSubmission:ne,getStartedAt:F,handleSubmissionStateChange:I,startedAt:re}=wr(),[ie,L]=(0,Z.useState)(()=>({prompt:O,taskScope:N})),R=ie.taskScope===N?ie.prompt:O,ae=re??R?.submissionStartedAt,oe=re===void 0?R?.turn.id:void 0;(0,Z.useEffect)(()=>{let e=T.store;if(e===void 0||R===void 0)return;let t=e.getState(),n=T.readSnapshot();if(n===void 0||t.checkpoint===null)return;let r=Ve(n,R.turn,{...R.input,messageAttachments:R.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)},[T,R]);let z=s({mutationFn:({settings:e,fastMode:n})=>t.updateTaskSettingsAndDefaults(_,k,{settings:e,fastMode:n}),mutationKey:[`projects`,_,`tasks`,k,`settings-and-defaults`],meta:{actionNotification:{successMessage:!1}},scope:{id:`task-settings:${N}`},onSuccess(e){T.store?.getState().setTaskSettings(e.settings),ee.setQueryData([`projects`,_,`defaults`],{settings:e.defaults})}}),se=(e,n,r)=>t.resolvePendingRequest(e,n,{idempotencyKey:r}).then(()=>void 0);return(0,Q.jsxs)(Q.Fragment,{children:[(0,Z.createElement)(Un,{onBuildPlan:()=>n.current?.buildPlan()??Promise.resolve(!1),...e?.tasks.fork===!0?{onForkTask:async(e,n)=>{g((await t.forkTask(_,k,{lastTurnId:e},{idempotencyKey:n})).task)}}:{},onOpenFileDiff:A,onOpenSourceFile:j,onReviewFileChanges:M,onResolvePendingRequest:se,projectId:_,key:N,runtime:T,scrollToBottomSignal:P,...ae===void 0?{}:{submissionStartedAt:ae},...oe===void 0?{}:{submissionTurnId:oe},taskId:k,...D===void 0?{}:{startingSnapshot:D}}),(0,Q.jsx)(me,{composerRef:n,capabilities:e,client:t,followUpBehavior:c,fastModeAvailable:i,fastModeDefault:o,models:l,modelsError:u,modelsPending:d||T.isPending,onDirectSubmission:()=>{ne(),te(e=>e+1)},onOpenProjectPath:m,onProjectRootChange:h,onRequestNotificationPermission:f,onFastModeChange:(e,t)=>p(t,e),onSettingsChange:(e,t,n)=>z.mutateAsync({settings:e,fastMode:n}).then(()=>void 0),onSubmissionStateChange:I,onTaskStarted:g,onTurnStarted:(e,t,n)=>{let r=F()??e.startedAt;L({prompt:{input:t,messageAttachments:n,...r===null?{}:{submissionStartedAt:r},turn:e},taskScope:N})},projectId:_,projectPath:v,projectPathOpenAvailable:y,projectPathOpenDisabled:b,projectRoots:x,projectToolsEnabled:S,selectedProjectRootId:C,...w===void 0?{}:{gitStatus:w},runtime:T,settings:T.metadata?.settings??D?.settings??r,skills:E,taskId:k})]})}),Or=(0,Z.lazy)(()=>t(()=>import(`./patch-diff-viewer-CwDRm5oN.js`),__vite__mapDeps([30,1,12,2,31,32,33,34,24])));function kr({change:e}){let{t}=T(`workbench`),{additions:n,removals:r}=Qt(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)(nn,{className:`min-h-toolbar gap-3 overflow-hidden bg-raised px-3 shadow-toolbar sm:px-4`,children:[(0,Q.jsxs)(on,{className:`w-0 flex-1 overflow-hidden`,children:[(0,Q.jsx)(ye,{className:`size-4 shrink-0 text-muted-foreground`,"aria-hidden":`true`}),(0,Q.jsxs)(q,{children:[(0,Q.jsx)(Y,{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:Zt(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)(Or,{change:e})})})]})}var Ar=5;function jr({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,Ar)).map(e=>(0,Q.jsx)(`div`,{children:r(e)},t(e))),i||n.length<=Ar?null:(0,Q.jsx)(X,{className:`w-full`,onClick:()=>{a(!0)},size:`sm`,type:`button`,variant:`ghost`,children:O.t(`inspector.showMore`,{ns:`conversation`})})]})}function Mr({error:e,isPending:t,onTerminate:n,terminals:r,terminatingTerminalId:i}){return(0,Q.jsx)(Ir,{icon:(0,Q.jsx)(le,{className:`size-3.5`}),title:O.t(`inspector.terminals`,{ns:`conversation`}),children:(0,Q.jsx)(`section`,{"aria-label":O.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:O.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:O.t(`inspector.terminalError`,{ns:`conversation`})}):(0,Q.jsx)(`div`,{className:`space-y-1`,children:r.map(e=>{let t=i===e.id?O.t(`inspector.terminalStopping`,{command:e.command,ns:`conversation`}):O.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)(f,{"aria-label":O.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)(q,{children:[(0,Q.jsx)(Y,{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)(W,{"aria-hidden":`true`,className:`size-3`})})}),(0,Q.jsx)(J,{children:t})]})]},e.id)})})})})}function Nr({onOpenSubagent:e,subagents:t}){return(0,Q.jsx)(Ir,{icon:(0,Q.jsx)(N,{className:`size-3.5`}),title:O.t(`inspector.subagents`,{ns:`conversation`}),children:(0,Q.jsxs)(`section`,{"aria-label":O.t(`inspector.subagents`,{ns:`conversation`}),children:[(0,Q.jsx)(`p`,{className:`mb-1 px-2 text-caption text-muted-foreground`,children:O.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:z(t.model),t.reasoningEffort].filter(e=>e!==void 0);return(0,Q.jsxs)(X,{variant:`ghost`,"aria-haspopup":`dialog`,"aria-label":O.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)(ce,{collapsible:!1,status:V(t.status),children:(0,Q.jsx)(F,{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 Pr({canRetry:e,isRefreshing:t,isRetrying:n,onRetry:r,servers:i}){if(i.length===0)return null;let a=O.t(n?`inspector.mcpReloading`:`inspector.mcpReload`,{ns:`conversation`});return(0,Q.jsx)(Ir,{action:e?(0,Q.jsxs)(q,{children:[(0,Q.jsx)(Y,{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)(x,{"aria-hidden":`true`,className:t||n?`animate-spin`:void 0})})}),(0,Q.jsx)(J,{children:a})]}):null,icon:(0,Q.jsx)(xn,{className:`size-3.5`}),title:`MCP`,children:(0,Q.jsx)(jr,{ariaLabel:O.t(`inspector.mcpEnabled`,{ns:`conversation`}),getKey:e=>e.name,items:i,renderItem:e=>(0,Q.jsx)(Fr,{server:e})})})}function Fr({server:e}){let t=[O.t(`inspector.mcpStatus.${e.status}`,{ns:`conversation`}),O.t(`inspector.mcpToolCount`,{count:e.toolCount,ns:`conversation`})],n=e.status===`connected`?(0,Q.jsx)(M,{"aria-hidden":`true`,className:`size-3.5 text-brand`}):e.status===`starting`?(0,Q.jsx)(f,{"aria-hidden":`true`,className:`size-3.5 animate-spin text-muted-foreground`}):e.status===`failed`?(0,Q.jsx)(v,{"aria-hidden":`true`,className:`size-3.5 text-danger`}):e.status===`authenticationRequired`?(0,Q.jsx)(mn,{"aria-hidden":`true`,className:`size-3.5 text-warning`}):(0,Q.jsx)(mn,{"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 Ir({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 Lr(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 Rr({name:e,triggerChildren:t,triggerClassName:n,url:r}){T(`conversation`);let[i,a]=(0,Z.useState)(!1),s=(0,Z.useId)(),c=o({enabled:i,queryFn:({signal:e})=>Lr(r,e),queryKey:[`task-attachment-source`,r],staleTime:3e4}),l=O.t(`projectDialog.closeSource`,{ns:`workbench`});return(0,Q.jsxs)(it,{onOpenChange:a,open:i,children:[(0,Q.jsx)(kt,{asChild:!0,children:(0,Q.jsx)(X,{"aria-label":O.t(`timeline.openAttachment`,{name:e,ns:`conversation`}),className:n,"data-attachment-open":`source`,type:`button`,variant:`ghost`,children:t})}),(0,Q.jsx)(Pe,{"aria-labelledby":s,className:`h-[min(82dvh,54rem)] max-w-[72rem] overflow-hidden p-0`,children:c.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)(ye,{"aria-hidden":`true`,className:`size-4 shrink-0 text-muted-foreground`}),(0,Q.jsx)(Bt,{className:`min-w-0 flex-1 truncate text-body-small`,id:s,children:e}),(0,Q.jsx)(zr,{label:l,onClose:()=>{a(!1)}})]}),(0,Q.jsx)(`div`,{className:`grid min-h-0 place-items-center text-body-small ${c.error===null?`text-muted-foreground`:`text-danger`}`,role:c.error===null?`status`:`alert`,children:O.t(c.error===null?`projectDialog.loadingSource`:`projectDialog.loadSourceError`,{ns:`workbench`})})]}):(0,Q.jsx)(cn,{className:`grid h-full min-h-0 grid-rows-[auto_minmax(0,1fr)] rounded-none bg-content shadow-none`,code:c.data,language:Xt(e),showLineNumbers:!0,children:(0,Q.jsxs)(nn,{className:`min-h-toolbar gap-3 bg-raised px-3 shadow-toolbar sm:px-4`,children:[(0,Q.jsxs)(on,{className:`min-w-0 flex-1`,children:[(0,Q.jsx)(ye,{"aria-hidden":`true`,className:`size-4 shrink-0 text-muted-foreground`}),(0,Q.jsx)(Bt,{asChild:!0,children:(0,Q.jsx)(`h2`,{className:`truncate text-body-small font-semibold`,id:s,title:e,children:(0,Q.jsx)(rn,{children:e})})})]}),(0,Q.jsxs)(an,{children:[(0,Q.jsx)(sn,{}),(0,Q.jsx)(zr,{label:l,onClose:()=>{a(!1)}})]})]})})})]})}function zr({label:e,onClose:t}){return(0,Q.jsxs)(q,{children:[(0,Q.jsx)(Y,{asChild:!0,children:(0,Q.jsx)(X,{"aria-label":e,onClick:t,size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,Q.jsx)(D,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,Q.jsx)(J,{children:e})]})}function Br(e){return{admin:O.t(`inspector.sourceRole.admin`,{ns:`conversation`}),repo:O.t(`inspector.sourceRole.repo`,{ns:`conversation`}),system:O.t(`inspector.sourceRole.system`,{ns:`conversation`}),user:O.t(`inspector.sourceRole.user`,{ns:`conversation`})}[e]}function Vr(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 · ${Br(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:O.t(`inspector.attachmentDetail`,{ns:`conversation`}),id:`attachment:${t.id}`,kind:`attachment`,name:t.name}))}return n}var Hr=`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 Ur({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)(Ee,{"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 Wr({attachmentUrl:e,onOpenAttachment:t,source:n}){if(n.kind===`attachment`&&e!==void 0){let r=(0,Q.jsx)(Ur,{source:n}),i=Et(n.attachment);return i===`image`?(0,Q.jsx)(ne,{name:n.name,triggerChildren:r,triggerClassName:Hr,url:e}):i===`source`?(0,Q.jsx)(Rr,{name:n.name,triggerChildren:r,triggerClassName:Hr,url:e}):(0,Q.jsx)(X,{"aria-label":O.t(`timeline.openAttachment`,{name:n.name,ns:`conversation`}),className:Hr,"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)(q,{children:[(0,Q.jsx)(Y,{asChild:!0,children:(0,Q.jsx)(`div`,{"aria-description":n.tooltip,className:Hr,children:(0,Q.jsx)(Ur,{source:n})})}),(0,Q.jsx)(J,{side:`top`,children:n.tooltip})]}):(0,Q.jsx)(`div`,{className:Hr,children:(0,Q.jsx)(Ur,{source:n})})}function Gr({onOpenAttachment:e,projectId:t,skills:n,taskId:r,turns:i}){let a=(0,Z.useMemo)(()=>Vr(i,n),[n,i]);return a.length===0?null:(0,Q.jsx)(Ir,{icon:(0,Q.jsx)(xe,{className:`size-3.5`}),title:O.t(`inspector.source`,{ns:`conversation`}),children:(0,Q.jsx)(jr,{ariaLabel:O.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)(Wr,{...n.kind===`attachment`&&t!==void 0&&r!==void 0?{attachmentUrl:l(``,t,r,n.attachment.id)}:{},onOpenAttachment:e,source:n})})})})}function Kr({className:e=``,...t}){return(0,Q.jsx)(`div`,{className:Jt(e),"data-ai-queue":``,...t})}function qr({className:e=``,...t}){return(0,Q.jsx)(`ul`,{className:Jt(`space-y-0.5`,e),...t})}function Jr({className:e=``,status:t,...n}){return(0,Q.jsx)(`li`,{className:Jt(`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 Yr({className:e=``,label:t,status:n,...r}){let i=n===`completed`?(0,Q.jsx)(M,{"aria-hidden":`true`,className:`size-3.5`}):n===`in_progress`?(0,Q.jsx)(f,{"aria-hidden":`true`,className:`size-3.5 animate-spin`}):(0,Q.jsx)(h,{"aria-hidden":`true`,className:`size-3.5`});return(0,Q.jsx)(`span`,{"aria-label":t,className:Jt(`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 Xr({className:e=``,status:t,...n}){return(0,Q.jsx)(`span`,{className:Jt(`min-w-0 break-words text-label leading-5`,t===`completed`?`text-muted-foreground`:`text-foreground`,e),...n})}function Zr({plan:e}){return(0,Q.jsx)(Ir,{icon:(0,Q.jsx)(vn,{className:`size-3.5`}),title:O.t(`inspector.plan`,{ns:`conversation`}),children:(0,Q.jsxs)(Kr,{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)(qr,{children:e.steps.map((e,t)=>(0,Q.jsxs)(Jr,{status:e.status,children:[(0,Q.jsx)(Yr,{label:O.t(`inspector.planStatus.${e.status}`,{ns:`conversation`}),status:e.status}),(0,Q.jsx)(Xr,{status:e.status,children:e.text})]},`${String(t)}:${e.text}`))})]})})}function Qr(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(`
3
+ `),kind:e.kind===n.kind?e.kind:`update`,path:n.path})}return[...t.values()]}function $r(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=Qt(t);return{additions:e.additions+n.additions,removals:e.removals+n.removals}},{additions:0,removals:0}),a=Qr(r??n);return{changeStats:i,displayChanges:a,fileChangesByPath:new Map(a.map(e=>[e.path,e]))}}function ei({changeCount:e,changeStats:t,onCommitChanges:n,onReviewChanges:r}){return e===0?null:(0,Q.jsxs)(`section`,{"aria-label":O.t(`inspector.gitChanges`,{ns:`conversation`}),className:`flex h-8 items-center justify-between gap-2`,children:[(0,Q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1.5`,children:[(0,Q.jsx)(`span`,{className:`block text-xs font-medium text-foreground`,"data-git-change-count":``,children:O.t(`inspector.gitChangedFilesCount`,{count:e,ns:`conversation`})}),t===void 0?null:(0,Q.jsxs)(`div`,{className:`flex items-center gap-1.5 text-caption`,"data-git-change-stats":``,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]})]})]}),(0,Q.jsxs)(`div`,{className:`flex shrink-0 items-center gap-0.5`,children:[(0,Q.jsx)(X,{"aria-label":O.t(`inspector.reviewChanges`,{count:e,ns:`conversation`}),className:`h-6 px-1.5 text-caption font-medium`,onClick:r,size:`toolbar`,type:`button`,variant:`secondary`,children:O.t(`timeline.review`,{ns:`conversation`})}),(0,Q.jsx)(X,{"aria-label":O.t(`inspector.commitChanges`,{count:e,ns:`conversation`}),className:`h-6 px-1.5 text-caption font-medium`,id:`workbench-commit-changes`,onClick:n,size:`toolbar`,type:`button`,variant:`secondary`,children:O.t(`inspector.commit`,{ns:`conversation`})})]})]})}function ti(e){let t=Math.floor(e/60),n=e%60;return t===0?O.t(`inspector.goalSeconds`,{count:n,ns:`conversation`}):O.t(`inspector.goalDuration`,{minutes:t,ns:`conversation`,seconds:n})}function ni({goal:e,onClear:t,onStatusChange:n}){let[r,i]=(0,Z.useState)(null),[a,o]=(0,Z.useState)(null),s=new Intl.NumberFormat(O.language),c=O.t(`inspector.goalStatus.${e.status}`,{ns:`conversation`}),l=e.status===`active`?`paused`:`active`,u=e.status===`active`||e.status===`paused`||e.status===`blocked`,d=O.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)(Ir,{action:(0,Q.jsxs)(`div`,{className:`flex items-center gap-0.5`,children:[u?(0,Q.jsxs)(q,{children:[(0,Q.jsx)(Y,{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)(U,{"aria-hidden":`true`,className:`size-3.5`}):(0,Q.jsx)(pe,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,Q.jsx)(J,{children:d})]}):null,(0,Q.jsxs)(q,{children:[(0,Q.jsx)(Y,{asChild:!0,children:(0,Q.jsx)(X,{"aria-label":O.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)(k,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,Q.jsx)(J,{children:O.t(`inspector.goalClear`,{ns:`conversation`})})]})]}),icon:(0,Q.jsx)(ue,{className:`size-3.5`}),title:O.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)(m,{"aria-hidden":`true`,className:`size-3`}),ti(e.timeUsedSeconds)]}),(0,Q.jsx)(`span`,{children:e.tokenBudget===null?O.t(`inspector.goalTokens`,{ns:`conversation`,used:s.format(e.tokensUsed)}):O.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:O.t(`inspector.goalMutationFailed`,{ns:`conversation`})})]})})}var ri={project:gn,changes:Se,context:pn,file:ye,history:Te};function ii({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=ri[t],a=t===`file`&&n!==void 0;return(0,Z.createElement)(`div`,{...a?{"aria-label":O.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:O.t(`inspector.${t}`,{ns:`conversation`})})]}),a?(0,Q.jsxs)(q,{children:[(0,Q.jsx)(Y,{asChild:!0,children:(0,Q.jsx)(X,{"aria-label":O.t(`inspector.closeFile`,{ns:`conversation`}),className:`absolute right-1 size-4`,onClick:n,size:`embedded`,type:`button`,variant:`ghost`,children:(0,Q.jsx)(D,{className:`size-3`,"aria-hidden":`true`})})}),(0,Q.jsx)(J,{children:O.t(`inspector.closeFile`,{ns:`conversation`})})]}):null)})})}function ai({onClose:e}){if(e===void 0)return null;let t=O.t(`shell.closeInspector`,{ns:`workbench`});return(0,Q.jsxs)(q,{children:[(0,Q.jsx)(Y,{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 oi({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)(ai,{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)(ii,{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)(ai,{onClose:r})})]})}var si=Object.defineProperty,ci=Object.defineProperties,li=Object.getOwnPropertyDescriptors,ui=Object.getOwnPropertySymbols,di=Object.prototype.hasOwnProperty,fi=Object.prototype.propertyIsEnumerable,pi=(e,t,n)=>t in e?si(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,$=(e,t)=>{for(var n in t||={})di.call(t,n)&&pi(e,n,t[n]);if(ui)for(var n of ui(t))fi.call(t,n)&&pi(e,n,t[n]);return e},mi=(e,t)=>ci(e,li(t)),hi=(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 gi(e,t){return typeof e==`function`?e(t):e}function _i(e,t){return n=>{t.setState(t=>mi($({},t),{[e]:gi(n,t[e])}))}}var vi=(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)}),yi=`Headless Tree: `,bi=e=>Error(yi+e),xi=e=>console.warn(yi+e),Si={key:`tree`,getInitialState:e=>$({expandedItems:[],focusedItem:null},e),getDefaultConfig:(e,t)=>$({setExpandedItems:_i(`expandedItems`,t),setFocusedItem:_i(`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)){xi(`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(()=>hi(null,null,function*(){var t,n,r,i;let a=e.getFocusedItem();(n=(t=e.getConfig()).scrollToItem)==null||n.call(t,a),yield vi(()=>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)=>mi($({},e?.()),{role:`tree`,"aria-label":n??``,ref:t.registerElement}),isSearchOpen:()=>!1},itemInstance:{scrollTo:(e,t)=>hi(null,[e,t],function*({tree:e,item:t},n){var r,i,a;(i=(r=e.getConfig()).scrollToItem)==null||i.call(r,t),yield vi(()=>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 mi($({},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()}}}},Ci=(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(mi($({},i),{prev:n}),...e)}}}]},wi=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 bi(`${n.key} needs ${e}`)}},Ti=(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},Ei=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),Di=(e=[])=>Ti(e,Ei(e)),Oi=e=>{let t=e.instanceBuilder??Ci,n=[Si,...Di(e.features)];wi(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},ki={key:`selection`,getInitialState:e=>$({selectedItems:[]},e),getDefaultConfig:(e,t)=>$({setSelectedItems:_i(`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})=>mi($({},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()))}}}},Ai=e=>e.code!==``&&e.code!==`Unidentified`?e.code:e.key,ji={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)$/},Mi=new Set([`MetaLeft`,`MetaRight`,`Meta`,`ControlLeft`,`ControlRight`,`Control`,`AltLeft`,`AltRight`,`Alt`,`ShiftLeft`,`ShiftRight`,`Shift`]),Ni=(e,t,n)=>{let r=n.hotkey.toLowerCase().split(`+`),i=r.every(t=>{if(t in ji)return[...e].some(e=>ji[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},Pi=(e,t,n,r)=>Object.entries($($({},n),r)).find(([,n])=>Ni(e,t,n))?.[0],Fi={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=Ai({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=Pi(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=Ai({code:t.code??``,key:t.key??``});r&&((n=e.current).pressedKeys??(n.pressedKeys=new Set),Mi.has(r)&&(e.current.pressedKeys=new Set([...e.current.pressedKeys].filter(e=>Mi.has(e)))),e.current.pressedKeys.delete(r))}},Ii={key:`hotkeys-core`,onTreeMount:(e,t)=>{let n=e.getDataRef(),r=t=>{let r=t.target instanceof HTMLInputElement;Fi.dispatchKeyDown(e,n,t,{isInputFocused:r,releaseAfterDispatch:r})},i=e=>{Fi.dispatchKeyUp(n,e)},a=()=>{Fi.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)}},Li=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},Ri=(e,t)=>hi(null,null,function*(){var n,r;let i=e.getConfig(),a=Li(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}),zi=(e,t)=>hi(null,null,function*(){var n,r,i;let a=e.getConfig(),o=Li(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}),Bi={key:`async-data-loader`,getInitialState:e=>$({loadingItemData:[],loadingItemChildrens:[]},e),getDefaultConfig:(e,t)=>$({setLoadingItemData:_i(`loadingItemData`,t),setLoadingItemChildrens:_i(`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)=>hi(null,[e,t],function*({tree:e},t){return Li(e).current.itemData[t]??(yield Ri(e,t))}),loadChildrenIds:(e,t)=>hi(null,[e,t],function*({tree:e},t){return Li(e).current.childrenIds[t]??(yield zi(e,t))}),retrieveItemData:({tree:e},t,n=!1)=>{let r=e.getConfig(),i=Li(e);return i.current.itemData[t]?i.current.itemData[t]:(!e.getState().loadingItemData.includes(t)&&!n&&setTimeout(()=>Ri(e,t)),r.createLoadingItemData?.call(r)??null)},retrieveChildrenIds:({tree:e},t,n=!1)=>{let r=Li(e);return r.current.childrenIds[t]?r.current.childrenIds[t]:(e.getState().loadingItemChildrens.includes(t)||n||setTimeout(()=>zi(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)=>hi(null,[e,t],function*({tree:e,itemId:t},n){var r;n||(r=Li(e).current.itemData)==null||delete r[t],yield Ri(e,t)}),invalidateChildrenIds:(e,t)=>hi(null,[e,t],function*({tree:e,itemId:t},n){var r;n||(r=Li(e).current.childrenIds)==null||delete r[t],yield zi(e,t)}),updateCachedChildrenIds:({tree:e,itemId:t},n,r)=>{Li(e).current.childrenIds[t]=n,r||e.rebuildTree()},updateCachedData:({tree:e,itemId:t},n,r)=>{Li(e).current.itemData[t]=n,r||e.rebuildTree()},hasLoadedData:({tree:e,itemId:t})=>e.getDataRef().current.itemData[t]!==void 0}},Vi=(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},Hi={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={}),Vi(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={}),Vi(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={}),Vi(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={}),Vi(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={}),Vi(a,i.current.memo.rename)}}},Ui=()=>{},Wi=(e,t,n,r)=>{for(let i=r;i>=0;i--)if(e[i][t]?.[n])return i;return null},Gi=(e,t,n,r,i,a)=>{let o=Wi(e,t,r,i-1);return(e[i][t]?.[r])(mi($({},n),{prev:o===null?null:(...i)=>Gi(e,t,n,r,o,i)}),...a)},Ki=(e,t,n)=>{let r={},i=new Proxy({},{has(n,r){return typeof r==`symbol`||r===`toJSON`?!1:!!Wi(e,t,r,e.length-1)},get(n,i){if(typeof i!=`symbol`)return i===`toJSON`?{}:(...n)=>{let a=Wi(e,t,i,e.length-1);if(a===null)throw bi(`feature missing for method ${i}`);return Gi(e,t,r,i,a,n)}}});return Object.assign(r,n(i)),[i,Ui]},qi=Object.defineProperty,Ji=Object.defineProperties,Yi=Object.getOwnPropertyDescriptors,Xi=Object.getOwnPropertySymbols,Zi=Object.prototype.hasOwnProperty,Qi=Object.prototype.propertyIsEnumerable,$i=(e,t,n)=>t in e?qi(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,ea=(e,t)=>{for(var n in t||={})Zi.call(t,n)&&$i(e,n,t[n]);if(Xi)for(var n of Xi(t))Qi.call(t,n)&&$i(e,n,t[n]);return e},ta=(e,t)=>Ji(e,Yi(t)),na=e=>{let[t]=(0,Z.useState)(()=>({current:Oi(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=>ta(ea(ea({},t),e),{state:ea(ea({},n),e.state),setState:t=>{var n;r(t),(n=e.setState)==null||n.call(e,t)}})),t.current},ra=`\0project-file-tree-root`,ia=`\0project-file-tree-project-root`,aa=`\0project-file-tree-status:`;function oa(e,t){return typeof e==`function`?e(t):e}function sa(e){return e.kind===`status`?e.status===`empty`?O.t(`inspector.emptyFolder`,{ns:`conversation`}):O.t(`inspector.readFolderError`,{name:e.name,ns:`conversation`}):e.name}function ca(e){return e.split(`/`).at(-1)??e}function la(e){return e.path}function ua(e,t){return`${aa}${t}:${e??`root`}`}function da(e){return{kind:`entry`,name:ca(e.path),path:e.path,type:e.type}}function fa(e){return e instanceof Error?e.message:String(e)}function pa({client:e,projectId:t,projectName:n,queryClient:r,rootPath:i}){let a=new Map,o={kind:`root`,name:n,type:`directory`};return a.set(ia,o),{async getChildrenWithData(s){if(s===`\0project-file-tree-root`)return[{data:o,id:ia}];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(mt(t,i,l,e));if(o.entries.length===0){let e=ua(l,`empty`),t={directoryPath:l,kind:`status`,name:l===null?n:ca(l),status:`empty`,type:`status`};return a.set(e,t),[{data:t,id:e}]}return o.entries.map(e=>{let t=la(e),n=da(e);return a.set(t,n),{data:n,id:t}})}catch(e){let t=ua(l,`error`),r={directoryPath:l,kind:`status`,message:fa(e),name:l===null?n:ca(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:ca(e),path:e,type:`directory`})}}}function ma(e,t){let n=[...e].filter(e=>!t.has(e));return new Set([...t].filter(e=>!n.some(t=>e.startsWith(`${t}/`))))}function ha(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=Qt(t);r.set(i.path,{additions:(a?.additions??0)+o.additions,removals:(a?.removals??0)+o.removals})}return r}function ga({path:e,stats:t}){return(0,Q.jsxs)(`span`,{"aria-label":O.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 _a({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=O.t(`inspector.refreshProject`,{name:i,ns:`conversation`});return(0,Q.jsxs)(Ht,{children:[(0,Q.jsxs)(q,{children:[(0,Q.jsx)(Y,{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)(x,{"aria-hidden":`true`,className:`size-3.5 ${f?`animate-spin`:``}`})})}),(0,Q.jsx)(J,{side:`left`,children:p})]}),(0,Q.jsx)(gr,{apps:a,isPending:o,onOpen:e,onReference:n,onSelect:t,target:{absolutePath:s,path:s,relativePath:`.`,type:`directory`}})]})}function va(e,t){return e.kind===`status`?null:e.kind===`root`?{absolutePath:t.path,path:t.path,relativePath:`.`,type:`directory`}:{absolutePath:mr(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 ya({children:e,isPending:t,onClose:n}){return(0,Q.jsx)(it,{onOpenChange:e=>{!e&&!t&&n()},open:!0,children:(0,Q.jsx)(Pe,{className:`max-w-96 p-4`,onEscapeKeyDown:e=>{t&&e.preventDefault()},onInteractOutside:e=>{t&&e.preventDefault()},children:e})})}function ba({initialName:e,isPending:t,onClose:n,onRename:r,targetType:i}){let{t:a}=T(`workbench`),[o,s]=(0,Z.useState)(e),c=o.trim(),l=c===`.`||c===`..`||/[/\\]/u.test(c);return(0,Q.jsx)(ya,{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)(Nt,{children:[(0,Q.jsx)(Bt,{children:a(`projectFile.renameTitle`)}),(0,Q.jsx)(bt,{children:a(`projectFile.renameDescription.${i}`)})]}),(0,Q.jsx)(ht,{"aria-label":a(`projectFile.name`),autoFocus:!0,disabled:t,maxLength:255,onChange:e=>{s(e.currentTarget.value)},value:o}),(0,Q.jsxs)(Wt,{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 xa({isPending:e,name:t,onClose:n,onDelete:r,targetType:i}){let{t:a}=T(`workbench`);return(0,Q.jsxs)(ya,{isPending:e,onClose:n,targetType:i,children:[(0,Q.jsxs)(Nt,{children:[(0,Q.jsx)(Bt,{children:a(`projectFile.deleteTitle`,{name:t})}),(0,Q.jsx)(bt,{children:a(`projectFile.deleteDescription.${i}`)})]}),(0,Q.jsxs)(Wt,{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 Sa({client:e,name:t,onRefreshDirectory:n,path:r,projectId:i,projectPath:a,targetType:o}){let[l,u]=(0,Z.useState)(null),d=(0,Z.useRef)(null),f=s({mutationFn:async t=>{if(r===null)throw TypeError(`Project file path is unavailable`);let n={idempotencyKey:d.current??c()};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:({tree:e})=>{u(null),d.current=null,n(e.path,e)}}),p=e=>{d.current=c(),u(e)},m=()=>{f.isPending||(u(null),d.current=null)};return{dialog:r===null||l===null?null:l===`rename`?(0,Q.jsx)(ba,{initialName:t,isPending:f.isPending,onClose:m,onRename:e=>{f.mutate({action:`rename`,name:e})},targetType:o}):(0,Q.jsx)(xa,{isPending:f.isPending,name:t,onClose:m,onDelete:()=>{f.mutate({action:`delete`})},targetType:o}),isPending:f.isPending,openDelete:()=>{p(`delete`)},openRename:()=>{p(`rename`)}}}var Ca=16,wa=8,Ta={height:600,width:320},Ea=(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:p,projectRootId:m,projectRefreshing:h}){let _=n.getItemData(),v=sa(_),b=va(_,{id:m,path:p}),S=b?.type===`file`?()=>{Ft({onOpenSystemDefault:e=>{r(`system-default`,e)},projectId:u,reference:{lineNumber:null,path:b.path},rootPath:p})}:void 0,C=_.kind===`root`?e=>{r(e)}:r,{ref:w,...T}=n.getProps(),D=n.getItemMeta().level,k=n.isFolder(),A=n.isExpanded(),j=n.isLoading(),M=_.kind===`status`?_.name:v,ee=_.kind===`entry`?e.get(_.path):void 0,N=Sa({client:t,name:v,onRefreshDirectory:a,path:_.kind===`entry`?_.path:null,projectId:u,projectPath:p,targetType:_.type===`status`?`file`:_.type});if(_.kind===`status`)return(0,Q.jsxs)(`div`,{...T,className:`flex h-7 items-center gap-2 pr-1.5 text-caption ${_.status===`error`?`text-diff-removed`:`text-muted-foreground`}`,ref:w,style:{paddingLeft:D*Ca+6},children:[(0,Q.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:v}),_.status===`error`?(0,Q.jsxs)(q,{children:[(0,Q.jsx)(Y,{asChild:!0,children:(0,Q.jsx)(X,{"aria-label":O.t(`inspector.refreshFolder`,{name:M,ns:`conversation`}),onClick:e=>{e.stopPropagation(),a(_.directoryPath)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,Q.jsx)(x,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,Q.jsx)(J,{children:O.t(`inspector.refreshFolder`,{name:M,ns:`conversation`})})]}):null]});let P=(0,Q.jsxs)(`div`,{...T,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=>{T.onContextMenu?.(e),s(n.getId())},onKeyDown:e=>{T.onKeyDown?.(e),e.target===e.currentTarget&&(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),n.primaryAction(),k&&(A?n.collapse():n.expand()))},ref:w,style:{paddingLeft:D*Ca+2},children:[k?(0,Q.jsx)(X,{"aria-label":O.t(A?`agentComponents.folderCollapse`:`agentComponents.folderExpand`,{name:v,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)(f,{"aria-hidden":`true`,className:`size-3.5 animate-spin`}):(0,Q.jsx)(y,{"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)(d,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-brand`}):(0,Q.jsx)(g,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-brand`}):(0,Q.jsx)(E,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-muted-foreground`}),(0,Q.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,title:_.kind===`entry`?_.path:v,children:v}),_.kind===`entry`&&ee!==void 0?(0,Q.jsx)(ga,{path:_.path,stats:ee}):null,_.kind===`root`?(0,Q.jsx)(_a,{onMenuOpen:()=>{s(n.getId())},onOpenProjectPath:r,onReferenceProjectPath:i,onRefreshProject:o,projectName:v,projectOpenApps:c,projectOpenPending:l,projectPath:p,refreshing:h}):b===null?null:(0,Q.jsx)(Ht,{children:(0,Q.jsx)(gr,{apps:c,isPending:l,onDelete:N.openDelete,onOpen:()=>{s(n.getId())},...S===void 0?{}:{onOpenInNewWindow:S},onReference:i,onRename:N.openRename,onSelect:r,target:b})})]});return(0,Q.jsxs)(Q.Fragment,{children:[b===null?P:(0,Q.jsx)(br,{apps:c,isPending:l,onOpen:()=>{s(n.getId())},onReference:i,...S===void 0?{}:{onOpenInNewWindow:S},onSelect:C,target:b,..._.kind===`entry`?{onDelete:N.openDelete,onRename:N.openRename}:{},children:P}),N.dialog]})});function Da({client:e,expandedPaths:t,fileChangesByPath:n,onExpandedPathsChange:r,onOpenProjectFile:i,onOpenProjectPath:o,onReferenceProjectPath:s,onRefreshProject:c,projectId:l,projectName:u,projectOpenApps:d,projectOpenPending:p,projectPath:m,projectRootId:h,projectRefreshing:g=!1}){T(`conversation`);let _=a(),v=(0,Z.useRef)(null),y=(0,Z.useRef)(()=>void 0),[b,x]=(0,Z.useState)(!0),[S,C]=(0,Z.useState)([]),w=(0,Z.useMemo)(()=>pa({client:e,projectId:l,projectName:u,queryClient:_,rootPath:m}),[e,l,u,m,_]),E=(0,Z.useMemo)(()=>[...b?[ia]:[],...t],[t,b]),D=(0,Z.useCallback)(e=>{let n=oa(e,E);x(n.includes(ia)),r(ma(t,new Set(n.filter(e=>e!==ia))))},[E,t,r]),k=(0,Z.useCallback)(e=>{let t=oa(e,S).at(-1)??S.at(-1);C(t===void 0?[]:[t])},[S]),A=na({createLoadingItemData:()=>({kind:`root`,name:u,type:`directory`}),dataLoader:w,features:[Bi,ki,Ii,Hi],getItemName:e=>sa(e.getItemData()),indent:Ca,instanceBuilder:Ki,isItemFolder:e=>e.getItemData().type===`directory`,onPrimaryAction:e=>{let t=e.getItemData();t.kind!==`entry`||t.type!==`file`||i(t.path,n.get(t.path))},rootItemId:ra,scrollToItem:e=>{y.current(e.getId())},setExpandedItems:D,setSelectedItems:k,state:{expandedItems:E,selectedItems:S}}),j=A.getItems(),M=(0,Z.useMemo)(()=>n.size===0?new Map:ha(n,j.map(e=>e.getItemData())),[n,j]),ee=(0,Z.useMemo)(()=>new Map(j.map((e,t)=>[e.getId(),t])),[j]),N=ie({count:j.length,estimateSize:()=>28,getItemKey:e=>j[e]?.getKey()??e,getScrollElement:()=>v.current,initialRect:Ta,overscan:wa});y.current=e=>{let t=ee.get(e);t!==void 0&&N.scrollToIndex(t,{align:`auto`})};let P=(0,Z.useCallback)(async(e,t=!1,n)=>{let r=[`projects`,l,m,`file-tree`,e];n===void 0?await _.invalidateQueries({exact:!0,queryKey:r,refetchType:`none`}):_.setQueryData(r,n);let i=e??`\0project-file-tree-project-root`;await A.getItemInstance(i).invalidateChildrenIds(t)},[l,m,_,A]),te=(0,Z.useCallback)(()=>Promise.all([Promise.resolve(c()),P(null,!0),...[...t].map(e=>P(e,!0))]),[t,c,P]),{ref:ne,...F}=A.getContainerProps(O.t(`inspector.fileTree`,{ns:`conversation`}));return(0,Q.jsxs)(`div`,{...F,className:`h-full w-full cursor-default overflow-y-auto font-mono text-label text-foreground`,"data-project-file-tree":``,ref:e=>{v.current=e,ne?.(e)},children:[j.length===0?(0,Q.jsxs)(`div`,{"aria-expanded":b,"aria-label":O.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)(f,{"aria-hidden":`true`,className:`size-3.5 animate-spin`}),(0,Q.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:u})]}):null,(0,Q.jsx)(`div`,{className:`relative w-full`,style:{height:N.getTotalSize()},children:N.getVirtualItems().map(t=>{let n=j[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)(Ea,{changeStatsByPath:M,client:e,item:n,onOpenProjectPath:o,onReferenceProjectPath:s,onRefreshDirectory:(e,t)=>{P(e,!1,t)},onRefreshProject:te,onSelect:e=>{C([e])},projectOpenApps:d,projectOpenPending:p,projectId:l,projectPath:m,projectRootId:h,projectRefreshing:g})},t.key)})})]})}var Oa=new Set,ka=new Map,Aa=(0,Z.lazy)(async()=>({default:(await t(()=>import(`./git-history-panel-CofR8yva.js`),__vite__mapDeps([35,1,12,2,3,4,5,6,7,17,36,37,20,38,11,9,13,14,15,24,39]))).GitHistoryPanel})),ja=(0,Z.lazy)(async()=>({default:(await t(()=>import(`./workbench-inspector-changes-7z5diDTC.js`),__vite__mapDeps([40,1,2,3,4,5,6,7,19,41,11,12,9,13,14,15,38,42,43,44]))).WorkbenchInspectorChanges}));function Ma({backgroundTerminals:e=[],backgroundTerminalsError:t=null,backgroundTerminalsPending:n=!1,contextOnly:r=!1,expandedFileTreePaths:i=Oa,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:S=()=>void 0,onOpenTaskAttachment:C=()=>void 0,onOpenProjectPath:w=()=>void 0,onOpenProjectFile:E=()=>void 0,onReferenceProjectPath:D=()=>void 0,onOpenSubagent:k=()=>void 0,onReloadMcpServers:A=()=>void 0,onRefreshGitStatus:j=()=>void 0,onRefreshProject:M=()=>void 0,onCommitChanges:ee=()=>void 0,onReviewChanges:N=()=>void 0,onClose:P,onCloseFile:te,onTerminateBackgroundTerminal:ne=()=>Promise.resolve(),onTabChange:F=()=>void 0,projectId:I,projectName:re,projectOpenApps:ie=[],projectOpenPending:L=!1,projectPath:R,projectRootId:ae,sourceRootPath:oe,projectRefreshing:z=!1,skills:se=[],subagents:B=[],tab:V=`project`,task:H,taskId:ce,terminatingTerminalId:le=null}){T(`conversation`);let ue=Sr(ce,o,{contextOnly:r,fileOpen:a!==null}),{activeTab:U}=Cr({contextOnly:r,fileOpen:a!==null,gitStatus:o,inspectorOpen:!0,requestedTab:V,taskId:ce}),de=o!==void 0&&o.repositoryMode!==`none`,{changeStats:fe,displayChanges:pe,fileChangesByPath:me}=(0,Z.useMemo)(()=>de&&U===`project`?$r(o,s):{changeStats:void 0,displayChanges:[],fileChangesByPath:ka},[U,o,s,de]),he=R.split(/[\\/]/u).filter(Boolean).at(-1)??re,_e=(0,Q.jsxs)(`div`,{className:`h-full space-y-5 overflow-y-auto p-2.5`,children:[H?.goal===null||H?.goal===void 0?null:(0,Q.jsx)(ni,{goal:H.goal,onClear:y,onStatusChange:b}),e.length>0||n||t!==null?(0,Q.jsx)(Mr,{error:t,isPending:n,onTerminate:ne,terminals:e,terminatingTerminalId:le}):null,B.length>0?(0,Q.jsx)(Nr,{onOpenSubagent:k,subagents:B}):null,(0,Q.jsx)(Pr,{canRetry:h,isRefreshing:g,isRetrying:_,onRetry:A,servers:m}),(0,Q.jsx)(Gr,{onOpenAttachment:C,...I===void 0?{}:{projectId:I},skills:se,...ce===void 0?{}:{taskId:ce},turns:H?.turns??[]}),H?.plan===null||H?.plan===void 0?null:(0,Q.jsx)(Zr,{plan:H.plan})]});return(0,Q.jsxs)(`aside`,{"aria-label":O.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)(oi,{activeTab:U,availableTabs:ue,contextOnly:r,onClose:P,...te===void 0?{}:{onCloseFile:te},onTabChange:F}),(0,Q.jsx)(`div`,{className:`min-h-0 flex-1 overflow-hidden`,role:r?void 0:`tabpanel`,children:U===`file`&&a!==null?a.kind===`diff`?(0,Q.jsx)(kr,{change:a.change}):(0,Q.jsx)(ge,{client:p??Tt,previewKind:a.kind,projectId:I??re,reference:a.reference,...oe===void 0?{}:{rootPath:oe}}):U===`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:O.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:O.t(`inspector.gitChangesRetrying`,{ns:`conversation`})})}),(0,Q.jsxs)(q,{children:[(0,Q.jsx)(Y,{asChild:!0,children:(0,Q.jsx)(X,{"aria-label":O.t(`inspector.refreshGit`,{ns:`conversation`}),disabled:f,onClick:j,size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,Q.jsx)(x,{"aria-hidden":`true`,className:`size-3.5 ${f?`animate-spin`:``}`})})}),(0,Q.jsx)(J,{children:O.t(`inspector.refreshGit`,{ns:`conversation`})})]})]}),de&&pe.length>0?(0,Q.jsx)(`div`,{className:`px-2.5 pb-1`,children:(0,Q.jsx)(ei,{changeCount:pe.length,changeStats:fe,onCommitChanges:ee,onReviewChanges:()=>{N(pe)}})}):null,(0,Q.jsx)(`div`,{className:`min-h-0 flex-1 px-2.5 pb-2.5`,children:(0,Q.jsx)(Da,{client:p??Tt,expandedPaths:i,fileChangesByPath:me,onExpandedPathsChange:v,onOpenProjectFile:E,onOpenProjectPath:w,onReferenceProjectPath:D,onRefreshProject:M,projectId:I??re,projectName:he,projectOpenApps:ie,projectOpenPending:L,projectPath:R,projectRootId:ae,projectRefreshing:z},`${I??re}:${R}`)})]})}):U===`changes`?(0,Q.jsx)(Z.Suspense,{fallback:null,children:(0,Q.jsx)(ja,{client:p,detailsError:c,detailsPending:l,detailsStatus:s,gitStatus:o,gitStatusError:u,onOpenFileDiff:S,projectId:I,rootPath:R})}):U===`history`&&I!==void 0?(0,Q.jsx)(Z.Suspense,{fallback:null,children:(0,Q.jsx)(Aa,{...p===void 0?{}:{client:p},projectId:I,rootPath:R})}):_e})]})}function Na(e,t){return`${e}\u0000${t}`}function Pa(e,t,n){let r=new Map,i=new Map(t.map(e=>[Na(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(Na(e.projectId,e.taskId))??e.taskId})}return{animationName:l?`waiting`:o?`failed`:c?`running`:s?`review`:`idle`,tasks:a}}var Fa=`codexly.workbench-pet-position`,Ia={version:1,xRatio:1,yRatio:1};function La(e){return typeof e==`number`&&Number.isFinite(e)&&e>=0&&e<=1}function Ra(e){try{let t=JSON.parse(e.getItem(`codexly.workbench-pet-position`)??`null`);return t?.version===1&&La(t.xRatio)&&La(t.yRatio)?{version:1,xRatio:t.xRatio,yRatio:t.yRatio}:Ia}catch{return Ia}}function za(e,t){try{e.setItem(Fa,JSON.stringify(t))}catch{}}function Ba(e){return{x:Math.max(0,e.width-e.petWidth),y:Math.max(0,e.height-e.petHeight)}}function Va(e,t){let n=Ba(t);return{x:Math.min(n.x,Math.max(0,e.x)),y:Math.min(n.y,Math.max(0,e.y))}}function Ha(e,t){let n=Ba(t);return{x:n.x*e.xRatio,y:n.y*e.yRatio}}function Ua(e,t){let n=Ba(t),r=Va(e,t);return{version:1,xRatio:n.x===0?1:r.x/n.x,yRatio:n.y===0?1:r.y/n.y}}function Wa(e,t){return e.status===t.status?0:e.status===`completed`?-1:+(t.status===`completed`)}function Ga({activity:e,localAccess:t,onTaskSelect:n}){let{t:r}=T(`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)(b,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-warning`}):e.status===`completed`?(0,Q.jsx)(M,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-task-completed`}):(0,Q.jsx)(f,{"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)(q,{children:[(0,Q.jsx)(Y,{asChild:!0,children:i}),(0,Q.jsx)(J,{children:e.rootPath})]}):i}function Ka({localAccess:e,onTaskSelect:t,placement:n,tasks:r}){let{t:i}=T(`workbench`);if(r.length===0)return null;let a=r.filter(e=>e.status===`waiting`).length,o=r.toSorted(Wa);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)(Ga,{activity:n,localAccess:e,onTaskSelect:t})},`${n.projectId}:${n.taskId}`))})]})}var qa=4;function Ja(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 Ya(e,t){e.style.transform=`translate3d(${String(t.x)}px, ${String(t.y)}px, 0)`}function Xa(e,t){return e.y<Math.min(160,t.height*.4)}function Za({activity:e,localAccess:t,onTaskSelect:n,pet:r}){let{t:i}=T(`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)(Ia),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=Ra(Gt());let n=()=>{let n={height:e.clientHeight,petHeight:t.offsetHeight,petWidth:t.offsetWidth,width:e.clientWidth};c.current=n,f.current=Ha(p.current,n),Ya(t,f.current),y(Xa(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,Ya(e,t)),n!==null){let e=Ua(f.current,n);za(Gt(),e)}},[]);let S=()=>{m.current=null;let e=s.current,t=d.current;e===null||t===null||(d.current=null,f.current=t,Ya(e,t))},C=e=>{d.current=e,m.current??=requestAnimationFrame(S)},w=()=>{let e=c.current;e!==null&&(p.current=Ua(f.current,e),za(Gt(),p.current))},E=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(Xa(f.current,n)),_(`jumping`),u.current!==null&&clearTimeout(u.current),u.current=setTimeout(()=>{u.current=null,_(h.current)},Math.max(1,Ja(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)(Ka,{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=Ia,f.current=Ha(Ia,t);else if([`ArrowDown`,`ArrowLeft`,`ArrowRight`,`ArrowUp`].includes(e.key)){e.preventDefault();let n=e.shiftKey?24:8;f.current=Va({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;Ya(n,f.current),w(),y(Xa(f.current,t))}},onLostPointerCapture:e=>{E(e.pointerId)},onPointerCancel:e=>{E(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(Va({x:t.origin.x+n,y:t.origin.y+r},t.bounds)),!t.directionChosen&&Math.abs(n)>=qa&&(t.directionChosen=!0,_(n<0?`running-left`:`running-right`))},onPointerUp:e=>{E(e.pointerId)},ref:o,type:`button`,children:(0,Q.jsx)(en,{animationName:g,pet:r})})]})})})}function Qa({petId:e}){let t=yt(),{projects:n,tasks:r}=Qe(),{taskActivity:a}=qe(),s=i(),c=o($t()),l=(0,Z.useMemo)(()=>Pa(n,r,a),[n,a,r]),u=c.data?.data.find(t=>t.id===e&&t.availability===`ready`),d=(0,Z.useCallback)((e,t)=>{s({params:{projectId:e,taskId:t},to:`/p/$projectId/t/$taskId`})},[s]);return u===void 0?null:(0,Q.jsx)(Za,{activity:l,localAccess:t.status?.mode===`local`,onTaskSelect:d,pet:u})}function $a({settings:e}){return e?.enabled===!0?(0,Q.jsx)(Qa,{petId:e.selectedPetId}):null}function eo(e,t){let n=[],r=[];for(let i of At(e))t!==null&&i.projectId!==t||(i.status===`approval`?n:r).push(i);return{approval:n,running:r}}function to(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 no=`__all_projects__`,ro=6e4,io=new Map;function ao({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 oo(e,t){let n=io.get(t);return n===void 0&&(n=new Intl.DateTimeFormat(t,{day:`numeric`,hour:`2-digit`,minute:`2-digit`,month:`short`}),io.set(t,n)),n.format(new Date(e))}function so(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())},ro))};return r(),document.addEventListener(`visibilitychange`,r),()=>{document.removeEventListener(`visibilitychange`,r),t!==void 0&&window.clearInterval(t)}},[e]),t}function co({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}=T(`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)(q,{children:[(0,Q.jsx)(Y,{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)(q,{children:[(0,Q.jsx)(Y,{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)(hn,{"aria-hidden":`true`}),(0,Q.jsx)(`span`,{children:r})]}),(0,Q.jsxs)(`span`,{className:`task-board-card-facts`,children:[n?(0,Q.jsx)(j,{"aria-label":u(`taskBoard.pinned`)}):null,i===void 0?null:(0,Q.jsxs)(`span`,{className:`task-board-card-fact`,children:[(0,Q.jsx)(m,{"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)(m,{"aria-hidden":`true`}),oo(l,d.language)]})]})]})]})})}function lo({onRetry:e}){let{t}=T(`workbench`);return(0,Q.jsx)(`div`,{role:`listitem`,children:(0,Q.jsxs)(`div`,{className:`task-board-column-error`,role:`alert`,children:[(0,Q.jsx)(b,{"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)(w,{"aria-hidden":`true`})})]})})}function uo(e){let{t}=T(`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=so(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)(co,{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:to(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)(We,{onValueChange:t=>{e.onProjectFilterChange(t===no?null:t)},value:e.selectedProjectId??no,children:[(0,Q.jsxs)(pt,{"aria-label":t(`taskBoard.projectFilter`),className:`task-board-project-filter`,size:`sm`,children:[(0,Q.jsx)(_n,{"aria-hidden":`true`,className:`size-3.5`}),(0,Q.jsx)(ft,{})]}),(0,Q.jsxs)(Xe,{align:`start`,children:[(0,Q.jsx)(Je,{value:no,children:t(`taskBoard.allProjects`)}),e.projects.map(e=>(0,Q.jsx)(Je,{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)(A,{"aria-hidden":`true`,className:`size-3.5`}),t(`sidebar.newTask`)]})]}),(0,Q.jsxs)(`div`,{className:`task-board-grid`,children:[(0,Q.jsx)(ao,{count:a.length,emptyLabel:t(`taskBoard.emptyTodos`),icon:(0,Q.jsx)(ee,{className:`size-3.5`}),label:t(`taskBoard.todo`),tone:`todo`,children:a.map(n=>{let i=de(n.record,t(`composer.attachmentCount`,{count:n.record.draft.attachments.length}));return(0,Q.jsx)(co,{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)(ao,{count:o.length,emptyLabel:t(`taskBoard.emptyRunning`),icon:(0,Q.jsx)(dn,{className:`size-3.5`}),label:t(`taskBoard.running`),tone:`running`,children:o.map(e=>u(e,`running`))}),(0,Q.jsx)(ao,{count:s.length,emptyLabel:t(`taskBoard.emptyApproval`),icon:(0,Q.jsx)(b,{className:`size-3.5`}),label:t(`taskBoard.approval`),tone:`approval`,children:s.map(e=>u(e,`approval`))}),(0,Q.jsxs)(ao,{count:c.length,emptyLabel:t(e.isCompletedPending?`taskBoard.loading`:`taskBoard.emptyCompleted`),emptyState:e.completedError?(0,Q.jsx)(lo,{onRetry:e.onRetryCompleted}):void 0,icon:(0,Q.jsx)(M,{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)(lo,{onRetry:e.onRetryCompleted}):null,e.isLoadingMoreCompleted?(0,Q.jsxs)(`div`,{className:`task-board-page-loading`,role:`status`,children:[(0,Q.jsx)(f,{"aria-hidden":`true`,className:`size-3.5 animate-spin`}),t(`taskBoard.loadingMore`)]}):null]})]})]})}function fo({projectId:e}){let t=i(),{projects:n}=Qe(),[r,a]=(0,Z.useState)(null),o=_t((0,Z.useMemo)(()=>n.map(e=>e.id),[n])),s=rt(r),{taskActivity:c}=qe(),l=(0,Z.useMemo)(()=>eo(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&&$e(`task_board_completed_tasks_failed`,s.error,{projectId:r})},[s.error,r]),(0,Q.jsx)(uo,{approval:l.approval,completed:u,completedError:s.error!==null,hasNextCompletedPage:s.hasNextPage,isCompletedPending:s.isPending,isLoadingMoreCompleted:s.isFetchingNextPage,isTaskUnviewed:(e,t)=>Fe(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:a,onRetryCompleted:()=>void s.refetch(),projects:n,running:l.running,selectedProjectId:r,todos:o})}function po({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)(q,{children:[(0,Q.jsx)(Y,{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)(yn,{"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)(S,{"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)(vr,{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)(q,{children:[(0,Q.jsx)(Y,{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)(bn,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,Q.jsx)(J,{children:h(s?`shell.collapseInspector`:`shell.expandInspector`)})]},s?`inspector-open`:`inspector-closed`)]})]})}var mo=(0,Z.lazy)(()=>t(()=>import(`./skills-market-container-DFzLg008.js`).then(e=>({default:e.SkillsMarketContainer})),__vite__mapDeps([45,1,12,2,7,6,11,3,4,5,9,13,14,15,46])));function ho(e){return(0,Q.jsx)(Z.Suspense,{fallback:(0,Q.jsx)(`div`,{"aria-busy":`true`,className:`flex-1`}),children:(0,Q.jsx)(mo,{...e})})}var go=(0,Z.lazy)(()=>t(()=>import(`./scheduled-tasks-container-CDsipwUR.js`).then(e=>({default:e.ScheduledTasksContainer})),__vite__mapDeps([47,1,12,2,3,4,5,6,9,48,7,11,13,14,15,49,10,16,19,41,21,42,50,51,18,22,52,53])));function _o(e){return(0,Q.jsx)(Z.Suspense,{fallback:(0,Q.jsx)(`div`,{"aria-busy":`true`,className:`flex-1`}),children:(0,Q.jsx)(go,{...e})})}function vo({board:e,context:t,extensionSection:n,projectId:r,scheduled:a,taskId:o,temporary:s,todoId:c}){let l=(0,Z.useRef)(null),u=i(),{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:re,openProjectFileDiff:ie,openFileReview:L,openMessageFileReference:R,openProjectFile:ae,openProjectFolder:oe,pendingTaskSelection:z,projectDefaultsQuery:se,projectFolderOpenAvailable:B,projectFolderOpenDisabled:V,projectName:H,projectRoots:ce,projectOpenCapabilitiesQuery:le,projectPath:ue,projectPathOpenLockRef:U,projectPathOpenMutation:de,taskAttachmentOpenMutation:fe,projectTaskState:pe,projects:he,refreshProjectGitStatus:ge,requestNotificationPermission:_e,retry:ve,runtime:ye,selectedRootPath:W,selectedRootId:be,selectedInspectorFile:xe,setFileTreeExpansion:Se,setGlobalSettingsSection:Ce,setInspectorOpen:we,setInspectorTab:Te,setInspectorWidth:Ee,setInspectorFileSelection:De,setSidebarWidth:Oe,setSelectedRootId:ke,setSubagentDialogSelection:Ae,sidebarConnectionState:je,sidebarOpen:G,sidebarWidth:Me,skillsQuery:Ne,startingSnapshot:Pe,subagents:K,taskLaunchState:Fe,updateDraftSettings:Ie,updateProjectTaskDefaults:Le,workbenchShellRef:Re,t:ze}=t,Be=n!==void 0,Ve=e||Be||a;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":G,ref:Re,style:{"--inspector-open-width":`${String(N)}px`,"--sidebar-open-width":`${String(Me)}px`},children:[(0,Q.jsx)(ct,{...d.data===void 0?{}:{appInfo:d.data},connectionState:je,onClose:_,onOpenSettings:e=>{Ce(e)},projectId:r,...o===void 0&&z?.projectId===r?{taskId:z.taskId}:o===void 0?{}:{taskId:o}}),G?(0,Q.jsx)(X,{variant:`ghost`,"aria-label":ze(`shell.closeSidebar`),className:`workbench-sidebar-scrim`,onClick:_,type:`button`}):null,G?(0,Q.jsx)(Jn,{direction:1,label:ze(`shell.resizeSidebar`),maximumWidth:Dn.maximum,minimumWidth:Dn.minimum,onResize:e=>{Re.current?.style.setProperty(`--sidebar-open-width`,`${String(e)}px`)},onResizeEnd:e=>{Re.current?.removeAttribute(`data-resizing-panel`),Oe(e)},onResizeStart:()=>{Re.current?.setAttribute(`data-resizing-panel`,`sidebar`)},panel:`sidebar`,width:Me}):null,(0,Q.jsxs)(`main`,{"aria-label":ze(a?`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)(po,{board:e,context:t,scheduled:a,skillsMarket:Be,temporary:s,...o===void 0?{}:{taskId:o}}),a?(0,Q.jsx)(_o,{context:t,projectId:r,temporary:s}):Be?(0,Q.jsx)(ho,{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)(fo,{projectId:r}):y!==null||(pe?.error??null)!==null||F.error!==null||Ne.error!==null||!s&&se.error!==null||o===void 0&&T.error!==null?(0,Q.jsx)(gt,{onRetry:()=>void ve()}):o===void 0?(0,Q.jsxs)(Q.Fragment,{children:[s?(0,Q.jsx)(Un,{projectId:r,scopeName:ze(`shell.temporaryTask`),temporary:!0,...I===void 0?{}:{submissionStartedAt:I}}):(0,Q.jsx)(Un,{onProjectChange:D,projectId:r,projects:he,...I===void 0?{}:{submissionStartedAt:I}}),(0,Q.jsx)(me,{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&&se.isPending||T.isPending,onSettingsChange:Ie,onFastModeChange:(e,t)=>Le(t,e),onOpenProjectPath:oe,onProjectRootChange:ke,onRequestNotificationPermission:_e,onDirectSubmission:p,onSubmissionStateChange:E,onTaskCreated:O,onTaskStarted:k,projectId:r,projectName:H,projectPath:ue,projectPathOpenAvailable:B,projectPathOpenDisabled:V,projectRoots:ce,projectToolsEnabled:!s,selectedProjectRootId:be??``,...C.data===void 0?{}:{gitStatus:C.data},settings:v,skills:Ne.data?.data??[]})]}):(0,Q.jsx)(Dr,{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:_e,onProjectTaskDefaultsChange:Le,onOpenProjectPath:oe,onProjectRootChange:ke,onTaskStarted:k,projectId:r,projectPath:ue,projectPathOpenAvailable:B,projectPathOpenDisabled:V,projectRoots:ce,projectToolsEnabled:!s,selectedProjectRootId:be??``,...C.data===void 0?{}:{gitStatus:C.data},runtime:ye,skills:Ne.data?.data??[],startingSnapshot:Pe,startingPrompt:Fe,taskId:o,onOpenFileDiff:re,onOpenSourceFile:R,onReviewFileChanges:L})]}),!Ve&&A?(0,Q.jsx)(X,{variant:`ghost`,"aria-label":ze(`shell.closeInspector`),className:`workbench-inspector-scrim`,onClick:g,type:`button`}):null,!Ve&&A?(0,Q.jsx)(Jn,{direction:-1,label:ze(`shell.resizeInspector`),maximumWidth:j,minimumWidth:On.minimum,onResize:e=>{Re.current?.style.setProperty(`--inspector-open-width`,`${String(e)}px`)},onResizeEnd:e=>{Re.current?.removeAttribute(`data-resizing-panel`),Ee(e)},onResizeStart:()=>{Re.current?.setAttribute(`data-resizing-panel`,`inspector`)},panel:`inspector`,width:N}):null,!Ve&&A?(0,Q.jsx)(Ma,{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:o!==void 0,mcpServersRefreshing:P.isFetching&&!P.isPending,mcpServersRetrying:te.isPending,onClose:g,onCloseFile:()=>{De(null)},fileSelection:xe,onFileTreeExpandedChange:e=>{Se({paths:new Set(e),scope:`${r}:${W??`temporary`}`})},onClearGoal:()=>o===void 0?Promise.resolve():h.clearTaskGoal(r,o).then(()=>void 0),onGoalStatusChange:e=>o===void 0?Promise.resolve():h.updateTaskGoal(r,o,{status:e}).then(()=>void 0),onReloadMcpServers:()=>{te.mutate()},onOpenFileDiff:ie,onOpenProjectPath:(e,t)=>{de.reset(),U.current.run(()=>de.mutateAsync({appId:e,path:t})).catch(()=>void 0)},onOpenProjectFile:ae,onOpenTaskAttachment:e=>{o!==void 0&&fe.mutate({attachmentId:e,taskId:o})},onReferenceProjectPath:e=>{l.current?.referenceProjectPath(e)},onRefreshGitStatus:()=>{W!==void 0&&ge(r,W)},onRefreshProject:()=>W===void 0?Promise.resolve():ge(r,W),onCommitChanges:()=>{Te(`changes`),we(!0)},onReviewChanges:L,onTerminateBackgroundTerminal:f.terminateTerminal,onTabChange:Te,onOpenSubagent:e=>{o!==void 0&&Ae({parentTaskId:o,projectId:r,selection:e})},projectName:H,projectId:r,projectOpenApps:le.data?.apps??[],projectOpenPending:de.isPending,projectPath:ue,projectRootId:be??``,...W===void 0?{}:{sourceRootPath:W},skills:Ne.data?.data??[],subagents:K,tab:M,terminatingTerminalId:f.terminatingTerminalId,...ee===void 0?{}:{task:ee},...o===void 0?{}:{taskId:o},...C.data===void 0?{}:{gitStatus:C.data}},`${r}:${o??`draft`}`):null,(0,Q.jsx)($a,{settings:w?.pet}),(0,Q.jsx)(er,{context:t,projectId:r,...o===void 0?{}:{taskId:o}})]}),t.globalSettingsSection===null?null:(0,Q.jsx)(Ln,{context:t,projectToolsEnabled:!s})]})}function yo({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)(vo,{board:e,context:Pn(Er({...s,temporary:a}),{...s,temporary:a}),...t===void 0?{}:{extensionSection:t},scheduled:r,...s,temporary:a,...o===void 0?{}:{todoId:o}})}export{yo as WorkbenchShell};
@@ -7,7 +7,7 @@
7
7
  <meta name="theme-color" content="#181818" media="(prefers-color-scheme: dark)" />
8
8
  <link rel="icon" href="/favicon.svg?v=4" type="image/svg+xml" />
9
9
  <title>Codexly</title>
10
- <script type="module" crossorigin src="/assets/index-DRfXjZ2a.js"></script>
10
+ <script type="module" crossorigin src="/assets/index-D9lOU2_n.js"></script>
11
11
  <link rel="modulepreload" crossorigin href="/assets/rolldown-runtime-CNC7AqOf.js">
12
12
  <link rel="modulepreload" crossorigin href="/assets/initial-deps-Bx4af_YG.js">
13
13
  <link rel="modulepreload" crossorigin href="/assets/react-runtime-DaCTDC27.js">
Binary file
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bryanhu/codexly",
3
- "version": "0.23.0",
3
+ "version": "0.24.0",
4
4
  "description": "通过 Web 操作本地 Coding Agent 的应用",
5
5
  "type": "module",
6
6
  "author": "BryanHu",
@@ -36,7 +36,7 @@
36
36
  "access": "public"
37
37
  },
38
38
  "dependencies": {
39
- "@openai/codex": "0.154.0",
39
+ "@openai/codex": "0.155.1",
40
40
  "better-sqlite3": "13.0.3"
41
41
  },
42
42
  "devDependencies": {
@@ -1,7 +0,0 @@
1
- import{a as e}from"./rolldown-runtime-CNC7AqOf.js";import{i as t,r as n,t as r}from"./react-runtime-DaCTDC27.js";import{C as i,it as a,j as o}from"./initial-deps-E80pA8LY.js";import{t as s}from"./external-link-DcCR8cO8.js";import{c,n as l,r as u,t as d}from"./context-menu-Dj3lnor1.js";import{vt as f}from"./index-DRfXjZ2a.js";import{a as p,i as m,n as h,o as g,s as _}from"./chunk-BO2N2NFS-D6bbuE0-.js";import{t as ee}from"./prompt-reference-token-Cxx6C-IR.js";var v=e(t(),1),te=e(n(),1),y=r(),b=/^::code-comment\{(.*)\}\s*$/,x=/([a-z]+)=(?:"((?:\\.|[^"\\])*)"|(\d+))/g,S=[`/apps/`,`/packages/`,`/src/`,`/tests/`,`/.superwork/`],C=8,w=12;function ne(e){try{return JSON.parse(`"${e}"`)}catch{return e}}function T(e){let t=new Map;for(let n of e.matchAll(x)){let e=n[1],r=n[2],i=n[3];e!==void 0&&t.set(e,r===void 0?i??``:ne(r))}let n=t.get(`body`),r=t.get(`file`),i=t.get(`title`);if(n===void 0||r===void 0||i===void 0)return null;let a=e=>{let n=t.get(e);return n===void 0?null:Number.parseInt(n,10)};return{body:n,end:a(`end`),file:r,priority:a(`priority`),start:a(`start`),title:i}}function E(e){let t=b.exec(e)?.[1];return t===void 0?null:T(t)}function D(e){for(let t of S){let n=e.indexOf(t);if(n>=0)return e.slice(n+1)}return e.split(/[\\/]/).at(-1)??e}function O(e){let t=D(e.file);return e.start===null?t:`${t}:${e.end===null||e.end===e.start?String(e.start):`${String(e.start)}-${String(e.end)}`}`}function k(e){return e.replace(/^\[P\d+\]\s*/,``)}function A({comment:e,commentIndex:t}){let n=(0,v.useRef)(null),r=(0,v.useRef)(null),i=(0,v.useId)(),[a,o]=(0,v.useState)(!1),[s,c]=(0,v.useState)(),l=k(e.title),u=O(e),d=(0,v.useCallback)(()=>{let e=n.current,t=r.current;if(e===null||t===null)return;let i=e.getBoundingClientRect(),a=t.getBoundingClientRect(),o=Math.max(w,window.innerWidth-a.width-w),s=Math.min(Math.max(i.left,w),o),l=i.bottom+C+a.height<=window.innerHeight-w?i.bottom+C:i.top-a.height-C,u=Math.max(w,window.innerHeight-a.height-w);c({left:s,top:Math.min(Math.max(l,w),u)})},[]);return(0,v.useLayoutEffect)(()=>{if(!a){c(void 0);return}return d(),window.addEventListener(`resize`,d),window.addEventListener(`scroll`,d,!0),()=>{window.removeEventListener(`resize`,d),window.removeEventListener(`scroll`,d,!0)}},[a,d]),(0,y.jsxs)(`li`,{"aria-describedby":a?i:void 0,className:`flex min-w-0 cursor-pointer items-center gap-3 rounded-control px-1 py-2 text-body-small transition-colors hover:bg-control-hover focus-visible:bg-control-hover`,onBlur:()=>{o(!1)},onFocus:()=>{o(!0)},onMouseEnter:()=>{o(!0)},onMouseLeave:()=>{o(!1)},ref:n,tabIndex:0,children:[(0,y.jsx)(`span`,{className:`shrink-0 rounded-control border border-separator-strong px-1.5 py-0.5 text-label text-muted-foreground`,children:e.priority===null?`--`:`P${String(e.priority)}`}),(0,y.jsx)(`span`,{className:`min-w-0 shrink font-semibold text-foreground`,children:l}),(0,y.jsx)(`span`,{className:`min-w-0 truncate text-muted-foreground`,children:u}),a&&typeof document<`u`?(0,te.createPortal)((0,y.jsxs)(`div`,{className:`pointer-events-none fixed z-50 w-[min(28rem,calc(100vw-1.5rem))] rounded-surface border border-separator-strong bg-raised p-3 text-left shadow-floating`,"data-floating-surface":!0,id:i,ref:r,role:`tooltip`,style:s===void 0?{left:0,top:0,visibility:`hidden`}:{left:s.left,top:s.top},children:[(0,y.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,y.jsx)(`span`,{className:`rounded-control border border-separator-strong px-1.5 py-0.5 text-label text-muted-foreground`,children:e.priority===null?`--`:`P${String(e.priority)}`}),(0,y.jsx)(`p`,{className:`font-semibold text-foreground`,children:l})]}),(0,y.jsx)(`p`,{className:`mt-2 break-all font-mono text-meta text-muted-foreground`,children:u}),(0,y.jsx)(m,{className:`mt-2 text-body-small leading-5 text-foreground [&_a]:text-brand [&_a]:underline [&_a]:underline-offset-2 [&_code]:font-mono [&_code]:text-body-small [&>*:first-child]:mt-0 [&>*:last-child]:mb-0`,controls:!1,children:e.body})]}),document.body):null]},`${e.file}:${String(e.start)}:${String(t)}`)}function j({comments:e}){let{t}=a(`conversation`);return e.length===0?null:(0,y.jsxs)(`section`,{"aria-label":t(`agentComponents.codeComments`,{count:e.length}),className:`my-4 overflow-hidden rounded-surface border border-separator-strong bg-raised`,"data-code-comments":`true`,children:[(0,y.jsxs)(`header`,{className:`flex min-h-12 items-center gap-3 border-b border-separator px-4 text-body font-semibold`,children:[(0,y.jsx)(`span`,{className:`grid size-8 place-items-center rounded-control bg-control`,children:(0,y.jsx)(i,{className:`size-4 text-muted-foreground`,"aria-hidden":`true`})}),(0,y.jsx)(`span`,{children:t(`agentComponents.codeComments`,{count:e.length})})]}),(0,y.jsx)(`ol`,{className:`divide-y divide-separator px-4 py-1`,children:e.map((e,t)=>(0,y.jsx)(A,{comment:e,commentIndex:t},`${e.file}:${String(e.start)}:${String(t)}`))})]})}var M=/(?<=\]\()(?:[a-z]:[\\/]|\\\\)[^)\r\n]+?\.[a-z0-9]+(?::\d+(?::\d+)?)?(?=\))/gi,N=/(?<=\]\()(?![a-z][a-z0-9+.-]*:|\/|#)[^)\r\n]+?\.[a-z0-9]+(?::\d+(?::\d+)?)?(?=\))/gi,P=/(?<=\]\()\/(?!\/)[^)\r\n]+?\.[a-z0-9]+(?::\d+(?::\d+)?)?(?=\))/gi,F=/\s+|\S+/gu,I=/^\s+$/u,L=/\n{3,}/g,R=/\[\^[\w-]{1,200}\](?!:)/,z=/\[\^[\w-]{1,200}\]:/,B=`/__codexly_unc__/`,V=`/__codexly_relative__/`;function H(e){return e.replace(M,e=>{let t=e.replaceAll(`\\`,`/`);return/^[a-z]:/i.test(t)?`/${t}`:`${B}${t.slice(2)}`}).replace(N,e=>`${V}${e}`).replace(P,e=>e.replaceAll(` `,`%20`).replaceAll(` `,`%09`))}var U=class e{output;trailingWhitespace;constructor(e=``,t=``){this.output=e,this.trailingWhitespace=t}append(e){let t=[],n=this.output.length>0;for(let r of e.matchAll(F)){let e=r[0];if(I.test(e)){this.trailingWhitespace+=e;continue}n&&this.trailingWhitespace.length>0&&t.push(this.trailingWhitespace.replace(L,`
2
-
3
- `)),this.trailingWhitespace=``,t.push(e),n=!0}t.length>0&&(this.output+=t.join(``))}clone(){return new e(this.output,this.trailingWhitespace)}materialize(){return this.output}};function W(e,t,n){let r=E(e);return r===null?n.discardBlankLines&&e.trim().length===0?!0:(n.whitespace.append(`${H(e)}${t?`
4
- `:``}`),!1):(n.comments.push(r),t&&n.whitespace.append(`
5
- `),!0)}var G=class{cachedResult={comments:[],markdown:``};committedComments=[];discardBlankLines=!1;pendingLine=``;previousSource=``;whitespace=new U;process(e){if(e===this.previousSource)return this.cachedResult;e.startsWith(this.previousSource)||this.reset(),this.pendingLine+=e.slice(this.previousSource.length),this.previousSource=e;let t=this.pendingLine.indexOf(`
6
- `);for(;t>=0;){let e=this.pendingLine.slice(0,t);this.pendingLine=this.pendingLine.slice(t+1),this.discardBlankLines=W(e,!0,{comments:this.committedComments,discardBlankLines:this.discardBlankLines,whitespace:this.whitespace}),t=this.pendingLine.indexOf(`
7
- `)}let n=[...this.committedComments],r=this.whitespace.clone();return this.pendingLine.length>0&&W(this.pendingLine,!1,{comments:n,discardBlankLines:this.discardBlankLines,whitespace:r}),this.cachedResult={comments:n,markdown:r.materialize()},this.cachedResult}reset(){this.cachedResult={comments:[],markdown:``},this.committedComments=[],this.discardBlankLines=!1,this.pendingLine=``,this.previousSource=``,this.whitespace=new U}};function K(e=_){let t=[],n=``;return r=>{if(r===n)return t;let i=0,a=Math.min(n.length,r.length);for(;i<a&&n.charCodeAt(i)===r.charCodeAt(i);)i+=1;let o=0,s=0;for(;o<t.length&&s+(t[o]?.length??0)<=i;)s+=t[o]?.length??0,o+=1;o>0&&(--o,s-=t[o]?.length??0);let c=r.slice(s);return t=R.test(c)||z.test(c)?[r]:[...t.slice(0,o),...e(c)],n=r,t}}var q=(0,v.createContext)(null);function J({children:e,onOpen:t,reference:n}){let{t:r}=a(`workbench`);return(0,y.jsxs)(d,{modal:!1,children:[(0,y.jsx)(c,{asChild:!0,children:e}),(0,y.jsx)(l,{"aria-label":r(`openMenu.targetLabel`,{path:n.path}),children:(0,y.jsxs)(u,{onSelect:()=>{t(n,`popup`)},children:[(0,y.jsx)(s,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,y.jsx)(`span`,{children:r(`openMenu.openInNewWindow`)})]})})]})}var Y=/^(?<path>(?:\/|[a-z]:[\\/]|\\\\).+?\.[a-z0-9]+?)(?::(?<line>\d+)(?::\d+)?)?$/i,X=`/__codexly_prompt_reference__/`,Z=/(^|\s)@(?<path>[^\s,!?;:,。!?;:、()[\]{}"'`]+)(?=$|\s|[,!?;:,。!?;:、()[\]{}"'`])/gu,re={code:{copy:!0,download:!1},mermaid:!1,table:!1};function ie(e){try{return decodeURIComponent(e)}catch{return e}}function ae(e){if(e===void 0)return null;let t=ie(e);if(t.startsWith(X))return{lineNumber:null,path:t.slice(30),prompt:!0};let n=Y.exec(t)?.groups;if(n===void 0)return null;let r=n.path,i=r?.startsWith(`/__codexly_unc__/`)?`//${r.slice(B.length)}`:r?.startsWith(`/__codexly_relative__/`)?r.slice(V.length):r?.match(/^\/[a-z]:[\\/]/i)?r.slice(1):r;return i===void 0?null:{lineNumber:n.line??null,path:i,prompt:!1}}function oe(e){let t=[],n=0;for(let r of e.matchAll(Z)){let i=r.groups?.path;if(i===void 0)continue;let a=r.index+(r[1]?.length??0);a>n&&t.push({type:`text`,value:e.slice(n,a)}),t.push({children:[{type:`text`,value:i.split(`/`).at(-1)??i}],type:`link`,url:`${X}${encodeURIComponent(i)}`}),n=a+i.length+1}return n<e.length&&t.push({type:`text`,value:e.slice(n)}),t}function se(){return e=>{let t=e=>{e.type===`link`||e.type===`linkReference`||e.children===void 0||(e.children=e.children.flatMap(e=>e.type===`text`&&e.value!==void 0?oe(e.value):(t(e),e)))};t(e)}}function Q(){return e=>{let t=(e,n)=>{if(e.type===`html`){e.type=n===`paragraph`?`inlineCode`:`code`,e.type===`code`&&(e.lang=`xml`);return}for(let n of e.children??[])t(n,e.type)};t(e)}}function ce({children:e,className:t=``,href:n,node:r,...i}){let a=ae(n),s=(0,v.useContext)(q);if(a!==null){if(a.prompt){let n=`${ee} relative top-0.5 select-none ${t}`,r=(0,y.jsxs)(y.Fragment,{children:[(0,y.jsx)(o,{"aria-hidden":`true`,className:`size-4 shrink-0`}),(0,y.jsx)(`span`,{className:`truncate`,children:e})]});if(s!==null){let e={lineNumber:null,path:a.path};return(0,y.jsx)(J,{onOpen:s,reference:e,children:(0,y.jsx)(f,{variant:`embedded`,"aria-label":`@${a.path}`,className:`${n} cursor-pointer hover:bg-control-hover`,"data-prompt-file-reference":a.path,onClick:()=>{s(e)},size:`embedded`,title:a.path,type:`button`,children:r})})}return(0,y.jsx)(`span`,{className:n,"data-prompt-file-reference":a.path,title:a.path,children:r})}let n=(0,y.jsxs)(y.Fragment,{children:[(0,y.jsx)(`span`,{children:e}),a.lineNumber===null?null:(0,y.jsx)(`span`,{className:`markdown-file-reference__line`,children:`(line ${a.lineNumber})`})]});if(s!==null){let e={lineNumber:a.lineNumber===null?null:Number(a.lineNumber),path:a.path};return(0,y.jsx)(J,{onOpen:s,reference:e,children:(0,y.jsx)(f,{variant:`ghost`,className:`markdown-file-reference cursor-pointer text-brand underline decoration-transparent underline-offset-2 transition-colors hover:text-brand-strong hover:decoration-current ${t}`,"data-file-reference":`true`,onClick:()=>{s(e)},title:a.path,type:`button`,children:n})})}return(0,y.jsx)(`span`,{className:`markdown-file-reference text-brand ${t}`,"data-file-reference":`true`,title:a.path,children:n})}return(0,y.jsx)(`a`,{className:`font-medium text-brand underline decoration-current/35 underline-offset-2 transition-colors hover:text-brand-strong ${t}`,href:n,rel:`noopener noreferrer`,target:`_blank`,...i,children:e})}function le(e){let t=(0,v.useContext)(p),n=(0,v.useMemo)(()=>({...t,isAnimating:!1}),[t]);return(0,y.jsx)(p.Provider,{value:n,children:(0,y.jsx)(g,{...e})})}function ue({children:e,className:t=``,components:n,onOpenFileReference:r,parseMarkdownIntoBlocksFn:i,promptFileReferences:a=!1,remarkPlugins:o,...s}){let c=(0,v.useMemo)(()=>new G,[]),l=(0,v.useMemo)(()=>K(),[]),u=c.process(e??``),d=(0,v.useMemo)(()=>({...n,a:ce}),[n]),f=(0,v.useMemo)(()=>[...Object.values(h),Q,...a?[se]:[],...o??[]],[a,o]);return(0,y.jsxs)(q.Provider,{value:r??null,children:[(0,y.jsx)(m,{className:`size-full break-words [&_blockquote]:border-l-2 [&_blockquote]:border-separator [&_blockquote]:pl-3 [&_code]:font-mono [&_code]:text-body-small [&_h1]:text-xl [&_h1]:font-semibold [&_h2]:text-lg [&_h2]:font-semibold [&_h3]:font-semibold [&_img]:block [&_img]:h-auto [&_img]:max-w-full [&_img]:object-contain [&_pre]:overflow-x-auto [&>*:first-child]:mt-0 [&>*:last-child]:mb-0 ${t}`,controls:re,...s,BlockComponent:le,components:d,parseMarkdownIntoBlocksFn:i??l,remarkPlugins:f,children:u.markdown}),(0,y.jsx)(j,{comments:u.comments})]})}var $=(0,v.memo)(ue,(e,t)=>e.children===t.children&&e.isAnimating===t.isAnimating&&e.mode===t.mode&&e.onOpenFileReference===t.onOpenFileReference&&e.promptFileReferences===t.promptFileReferences);$.displayName=`MessageResponse`;export{$ as MessageResponse,$ as default};