@bryanhu/codexly 0.1.0 → 0.3.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 (148) hide show
  1. package/CHANGELOG.md +34 -1
  2. package/README.md +40 -6
  3. package/README.zh-CN.md +1 -1
  4. package/dist/{chunk-K63YBMTG.js → chunk-6HXWAD7A.js} +78 -3
  5. package/dist/{chunk-MH54VCZJ.js → chunk-DR6HEQ7V.js} +52 -1
  6. package/dist/{chunk-TEPSAXZZ.js → chunk-VZLNYRY3.js} +1 -1
  7. package/dist/{chunk-42AR5IS7.js → chunk-Y7HG5THF.js} +139 -17
  8. package/dist/cli.js +5 -5
  9. package/dist/client/index.js +25 -3
  10. package/dist/protocol/index.js +1 -1
  11. package/dist/providers/codex/index.js +2 -2
  12. package/dist/server/index.js +4 -4
  13. package/dist/web/.vite/manifest.json +108 -108
  14. package/dist/web/.vite/manifest.json.br +0 -0
  15. package/dist/web/.vite/manifest.json.gz +0 -0
  16. package/dist/web/assets/button-B0Zy5xUw.js +1 -0
  17. package/dist/web/assets/button-B0Zy5xUw.js.br +0 -0
  18. package/dist/web/assets/button-B0Zy5xUw.js.gz +0 -0
  19. package/dist/web/assets/{button-group-D2LfHIjt.js → button-group-Czp67RFV.js} +1 -1
  20. package/dist/web/assets/button-group-Czp67RFV.js.br +0 -0
  21. package/dist/web/assets/button-group-Czp67RFV.js.gz +0 -0
  22. package/dist/web/assets/{checkbox-Bvl7MRXT.js → checkbox-J-dVFT8h.js} +1 -1
  23. package/dist/web/assets/checkbox-J-dVFT8h.js.br +0 -0
  24. package/dist/web/assets/checkbox-J-dVFT8h.js.gz +0 -0
  25. package/dist/web/assets/{chunk-BO2N2NFS-C72FSBge.js → chunk-BO2N2NFS-Cv0xdEIU.js} +5 -5
  26. package/dist/web/assets/chunk-BO2N2NFS-Cv0xdEIU.js.br +0 -0
  27. package/dist/web/assets/{chunk-BO2N2NFS-C72FSBge.js.gz → chunk-BO2N2NFS-Cv0xdEIU.js.gz} +0 -0
  28. package/dist/web/assets/{code-highlighter-Cm0xdvAd.js → code-highlighter-XA2cEb7n.js} +1 -1
  29. package/dist/web/assets/code-highlighter-XA2cEb7n.js.br +0 -0
  30. package/dist/web/assets/code-highlighter-XA2cEb7n.js.gz +0 -0
  31. package/dist/web/assets/{code-languages-CfwYbccP.js → code-languages-B1bG8xP9.js} +1 -1
  32. package/dist/web/assets/code-languages-B1bG8xP9.js.br +0 -0
  33. package/dist/web/assets/code-languages-B1bG8xP9.js.gz +0 -0
  34. package/dist/web/assets/es2015-D1QRD4rq.js +41 -0
  35. package/dist/web/assets/es2015-D1QRD4rq.js.br +0 -0
  36. package/dist/web/assets/es2015-D1QRD4rq.js.gz +0 -0
  37. package/dist/web/assets/{file-CEs2ZXvf.js → file-fDjkn3KE.js} +1 -1
  38. package/dist/web/assets/file-fDjkn3KE.js.br +2 -0
  39. package/dist/web/assets/file-fDjkn3KE.js.gz +0 -0
  40. package/dist/web/assets/{file-review-dialog-CTL5FpHU.js → file-review-dialog-a4LVk4QA.js} +2 -2
  41. package/dist/web/assets/file-review-dialog-a4LVk4QA.js.br +0 -0
  42. package/dist/web/assets/file-review-dialog-a4LVk4QA.js.gz +0 -0
  43. package/dist/web/assets/{file-tree-DRpR7Mu2.js → file-tree-Dh8mZi4H.js} +1 -1
  44. package/dist/web/assets/file-tree-Dh8mZi4H.js.br +0 -0
  45. package/dist/web/assets/file-tree-Dh8mZi4H.js.gz +0 -0
  46. package/dist/web/assets/{git-commit-horizontal-CQWH7rsr.js → git-commit-horizontal-DqCudnTd.js} +1 -1
  47. package/dist/web/assets/git-commit-horizontal-DqCudnTd.js.br +0 -0
  48. package/dist/web/assets/git-commit-horizontal-DqCudnTd.js.gz +0 -0
  49. package/dist/web/assets/{git-history-panel-BsIopLeA.js → git-history-panel-C0BqsVJw.js} +2 -2
  50. package/dist/web/assets/git-history-panel-C0BqsVJw.js.br +0 -0
  51. package/dist/web/assets/git-history-panel-C0BqsVJw.js.gz +0 -0
  52. package/dist/web/assets/{global-settings-dialog-CJA_j2dA.js → global-settings-dialog-DAk0qzab.js} +1 -1
  53. package/dist/web/assets/global-settings-dialog-DAk0qzab.js.br +0 -0
  54. package/dist/web/assets/global-settings-dialog-DAk0qzab.js.gz +0 -0
  55. package/dist/web/assets/{highlighted-body-OFNGDK62-NQRGdW--.js → highlighted-body-OFNGDK62-3Xd1uGCw.js} +1 -1
  56. package/dist/web/assets/highlighted-body-OFNGDK62-3Xd1uGCw.js.br +0 -0
  57. package/dist/web/assets/highlighted-body-OFNGDK62-3Xd1uGCw.js.gz +0 -0
  58. package/dist/web/assets/{index-C_O4z_mI.js → index-C9MtcGVc.js} +3 -3
  59. package/dist/web/assets/index-C9MtcGVc.js.br +0 -0
  60. package/dist/web/assets/index-C9MtcGVc.js.gz +0 -0
  61. package/dist/web/assets/{index-B3NtDmQp.css → index-DAs_avwK.css} +1 -1
  62. package/dist/web/assets/index-DAs_avwK.css.br +0 -0
  63. package/dist/web/assets/index-DAs_avwK.css.gz +0 -0
  64. package/dist/web/assets/{lazy-message-response-Cy_8wxLM.js → lazy-message-response-BDqsH4Ww.js} +2 -2
  65. package/dist/web/assets/lazy-message-response-BDqsH4Ww.js.br +0 -0
  66. package/dist/web/assets/lazy-message-response-BDqsH4Ww.js.gz +0 -0
  67. package/dist/web/assets/mermaid-GHXKKRXX-Cp6mRHuL.js +1 -0
  68. package/dist/web/assets/mermaid-GHXKKRXX-Cp6mRHuL.js.br +0 -0
  69. package/dist/web/assets/mermaid-GHXKKRXX-Cp6mRHuL.js.gz +0 -0
  70. package/dist/web/assets/message-response-DyFE9GSy.js +7 -0
  71. package/dist/web/assets/message-response-DyFE9GSy.js.br +0 -0
  72. package/dist/web/assets/message-response-DyFE9GSy.js.gz +0 -0
  73. package/dist/web/assets/{patch-diff-viewer-BHcdOhhw.js → patch-diff-viewer-DHfvCO4S.js} +2 -2
  74. package/dist/web/assets/patch-diff-viewer-DHfvCO4S.js.br +0 -0
  75. package/dist/web/assets/patch-diff-viewer-DHfvCO4S.js.gz +0 -0
  76. package/dist/web/assets/{prompt-input-controls-CrypM5HZ.js → prompt-input-controls-CLj9lxlf.js} +1 -1
  77. package/dist/web/assets/prompt-input-controls-CLj9lxlf.js.br +0 -0
  78. package/dist/web/assets/prompt-input-controls-CLj9lxlf.js.gz +0 -0
  79. package/dist/web/assets/{provider-connection-queries-C40YvSEy.js → provider-connection-queries-C2Fn0xx2.js} +1 -1
  80. package/dist/web/assets/provider-connection-queries-C2Fn0xx2.js.br +0 -0
  81. package/dist/web/assets/provider-connection-queries-C2Fn0xx2.js.gz +0 -0
  82. package/dist/web/assets/{shiki-bundle-DzEBOJSk.js → shiki-bundle-CNYWcrCX.js} +1 -1
  83. package/dist/web/assets/shiki-bundle-CNYWcrCX.js.br +0 -0
  84. package/dist/web/assets/shiki-bundle-CNYWcrCX.js.gz +0 -0
  85. package/dist/web/assets/{workbench-inspector-changes-RHaBVG45.js → workbench-inspector-changes-fibkZGwp.js} +1 -1
  86. package/dist/web/assets/workbench-inspector-changes-fibkZGwp.js.br +0 -0
  87. package/dist/web/assets/workbench-inspector-changes-fibkZGwp.js.gz +0 -0
  88. package/dist/web/assets/workbench-shell-eo1pFJFk.js +13 -0
  89. package/dist/web/assets/workbench-shell-eo1pFJFk.js.br +0 -0
  90. package/dist/web/assets/workbench-shell-eo1pFJFk.js.gz +0 -0
  91. package/dist/web/index.html +8 -8
  92. package/dist/web/index.html.br +0 -0
  93. package/dist/web/index.html.gz +0 -0
  94. package/package.json +1 -1
  95. package/dist/web/assets/button-CG0GNEOD.js +0 -1
  96. package/dist/web/assets/button-CG0GNEOD.js.br +0 -0
  97. package/dist/web/assets/button-CG0GNEOD.js.gz +0 -0
  98. package/dist/web/assets/button-group-D2LfHIjt.js.br +0 -0
  99. package/dist/web/assets/button-group-D2LfHIjt.js.gz +0 -0
  100. package/dist/web/assets/checkbox-Bvl7MRXT.js.br +0 -0
  101. package/dist/web/assets/checkbox-Bvl7MRXT.js.gz +0 -0
  102. package/dist/web/assets/chunk-BO2N2NFS-C72FSBge.js.br +0 -0
  103. package/dist/web/assets/code-highlighter-Cm0xdvAd.js.br +0 -0
  104. package/dist/web/assets/code-highlighter-Cm0xdvAd.js.gz +0 -0
  105. package/dist/web/assets/code-languages-CfwYbccP.js.br +0 -0
  106. package/dist/web/assets/code-languages-CfwYbccP.js.gz +0 -0
  107. package/dist/web/assets/es2015-CIXyxC_2.js +0 -41
  108. package/dist/web/assets/es2015-CIXyxC_2.js.br +0 -0
  109. package/dist/web/assets/es2015-CIXyxC_2.js.gz +0 -0
  110. package/dist/web/assets/file-CEs2ZXvf.js.br +0 -0
  111. package/dist/web/assets/file-CEs2ZXvf.js.gz +0 -0
  112. package/dist/web/assets/file-review-dialog-CTL5FpHU.js.br +0 -0
  113. package/dist/web/assets/file-review-dialog-CTL5FpHU.js.gz +0 -0
  114. package/dist/web/assets/file-tree-DRpR7Mu2.js.br +0 -0
  115. package/dist/web/assets/file-tree-DRpR7Mu2.js.gz +0 -0
  116. package/dist/web/assets/git-commit-horizontal-CQWH7rsr.js.br +0 -0
  117. package/dist/web/assets/git-commit-horizontal-CQWH7rsr.js.gz +0 -0
  118. package/dist/web/assets/git-history-panel-BsIopLeA.js.br +0 -0
  119. package/dist/web/assets/git-history-panel-BsIopLeA.js.gz +0 -0
  120. package/dist/web/assets/global-settings-dialog-CJA_j2dA.js.br +0 -0
  121. package/dist/web/assets/global-settings-dialog-CJA_j2dA.js.gz +0 -0
  122. package/dist/web/assets/highlighted-body-OFNGDK62-NQRGdW--.js.br +0 -0
  123. package/dist/web/assets/highlighted-body-OFNGDK62-NQRGdW--.js.gz +0 -0
  124. package/dist/web/assets/index-B3NtDmQp.css.br +0 -0
  125. package/dist/web/assets/index-B3NtDmQp.css.gz +0 -0
  126. package/dist/web/assets/index-C_O4z_mI.js.br +0 -0
  127. package/dist/web/assets/index-C_O4z_mI.js.gz +0 -0
  128. package/dist/web/assets/lazy-message-response-Cy_8wxLM.js.br +0 -0
  129. package/dist/web/assets/lazy-message-response-Cy_8wxLM.js.gz +0 -0
  130. package/dist/web/assets/mermaid-GHXKKRXX-D0CV54MY.js +0 -1
  131. package/dist/web/assets/mermaid-GHXKKRXX-D0CV54MY.js.br +0 -0
  132. package/dist/web/assets/mermaid-GHXKKRXX-D0CV54MY.js.gz +0 -0
  133. package/dist/web/assets/message-response-CBOOkYPm.js +0 -7
  134. package/dist/web/assets/message-response-CBOOkYPm.js.br +0 -0
  135. package/dist/web/assets/message-response-CBOOkYPm.js.gz +0 -0
  136. package/dist/web/assets/patch-diff-viewer-BHcdOhhw.js.br +0 -0
  137. package/dist/web/assets/patch-diff-viewer-BHcdOhhw.js.gz +0 -0
  138. package/dist/web/assets/prompt-input-controls-CrypM5HZ.js.br +0 -0
  139. package/dist/web/assets/prompt-input-controls-CrypM5HZ.js.gz +0 -0
  140. package/dist/web/assets/provider-connection-queries-C40YvSEy.js.br +0 -0
  141. package/dist/web/assets/provider-connection-queries-C40YvSEy.js.gz +0 -0
  142. package/dist/web/assets/shiki-bundle-DzEBOJSk.js.br +0 -0
  143. package/dist/web/assets/shiki-bundle-DzEBOJSk.js.gz +0 -0
  144. package/dist/web/assets/workbench-inspector-changes-RHaBVG45.js.br +0 -0
  145. package/dist/web/assets/workbench-inspector-changes-RHaBVG45.js.gz +0 -0
  146. package/dist/web/assets/workbench-shell--6Y1cx2L.js +0 -12
  147. package/dist/web/assets/workbench-shell--6Y1cx2L.js.br +0 -0
  148. package/dist/web/assets/workbench-shell--6Y1cx2L.js.gz +0 -0
@@ -1,12 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/code-highlighter-Cm0xdvAd.js","assets/engine-compile-DQ0HPfe0.js","assets/lib-DrPFkMXk.js","assets/rolldown-runtime-QTnfLwEv.js","assets/code-languages-CfwYbccP.js","assets/index-C_O4z_mI.js","assets/react-runtime-CVaUQXZF.js","assets/button-CG0GNEOD.js","assets/bundle-mjs-rHxsej31.js","assets/es2015-CIXyxC_2.js","assets/checkbox-Bvl7MRXT.js","assets/file-tree-DRpR7Mu2.js","assets/file-CEs2ZXvf.js","assets/provider-connection-queries-C40YvSEy.js","assets/index-B3NtDmQp.css","assets/github-dark-C-LZuMrd.js","assets/github-light-EUqPIrTm.js","assets/patch-diff-viewer-BHcdOhhw.js","assets/shiki-bundle-DzEBOJSk.js","assets/file-change-D7aZLgtG.js","assets/git-history-panel-BsIopLeA.js","assets/file-review-dialog-CTL5FpHU.js","assets/git-commit-horizontal-CQWH7rsr.js","assets/workbench-inspector-changes-RHaBVG45.js","assets/button-group-D2LfHIjt.js","assets/prompt-input-controls-CrypM5HZ.js"])))=>i.map(i=>d[i]);
2
- import{r as e,t}from"./rolldown-runtime-QTnfLwEv.js";import{i as n,r,t as i}from"./react-runtime-CVaUQXZF.js";import{a,l as o,n as s,s as c,t as l,u,y as d}from"./button-CG0GNEOD.js";import{A as f,C as p,D as m,E as h,F as g,G as _,H as v,I as y,K as b,L as x,M as S,N as C,O as w,P as T,R as E,T as D,U as O,V as k,W as A,X as j,Y as M,a as N,c as P,d as F,o as I,st as L,u as R,v as z,y as B,yt as V}from"./es2015-CIXyxC_2.js";import{i as H,l as U,n as W,o as G,r as K,s as q,t as ee,u as te}from"./checkbox-Bvl7MRXT.js";import{E as J,H as Y,M as ne,N as re,Q as ie,R as ae,T as oe,U as se,Z as ce,_ as le,b as ue,c as de,et as fe,h as pe,i as me,k as he,m as ge,n as _e,r as ve,s as ye,t as be,tt as xe,u as Se,v as Ce,w as we,x as Te,y as Ee}from"./file-tree-DRpR7Mu2.js";import{a as De,i as Oe,n as ke,o as X,r as Ae,s as je,t as Z}from"./lazy-message-response-Cy_8wxLM.js";import{i as Me,l as Ne,o as Pe,u as Fe}from"./provider-connection-queries-C40YvSEy.js";import{a as Ie,i as Le,r as Re,t as ze}from"./file-review-dialog-CTL5FpHU.js";import{n as Be,r as Ve,t as He}from"./button-group-D2LfHIjt.js";import{_ as Ue,a as We,b as Ge,c as Ke,d as qe,f as Je,g as Ye,h as Xe,i as Ze,l as Qe,n as $e,o as et,p as tt,r as nt,s as rt,t as it,u as at,v as ot,x as st,y as ct}from"./prompt-input-controls-CrypM5HZ.js";import{t as lt}from"./file-CEs2ZXvf.js";import{t as ut}from"./git-commit-horizontal-CQWH7rsr.js";import{$ as dt,A as ft,B as pt,C as mt,D as ht,F as gt,G as _t,H as vt,I as yt,K as bt,L as xt,M as St,N as Ct,O as wt,P as Tt,Q as Et,R as Dt,S as Ot,T as kt,U as At,V as jt,W as Mt,X as Nt,Z as Pt,_ as Ft,_t as It,a as Lt,at as Rt,b as zt,bt as Bt,c as Vt,ct as Ht,d as Ut,dt as Wt,et as Gt,f as Kt,ft as qt,g as Jt,gt as Yt,h as Xt,ht as Zt,it as Qt,j as $t,k as en,l as tn,lt as nn,m as rn,mt as an,o as on,ot as sn,p as cn,pt as ln,q as un,rt as dn,st as fn,u as pn,ut as mn,v as hn,vt as gn,w as _n,x as vn,y as yn,yt as bn,z as xn}from"./index-C_O4z_mI.js";import{t as Sn}from"./code-languages-CfwYbccP.js";import{i as Cn,n as wn,t as Tn}from"./file-change-D7aZLgtG.js";import{t as En}from"./prompt-reference-token-Cxx6C-IR.js";var Dn=c(`arrow-down`,[[`path`,{d:`M12 5v14`,key:`s699le`}],[`path`,{d:`m19 12-7 7-7-7`,key:`1idqje`}]]),On=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`}]]),kn=c(`box`,[[`path`,{d:`M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z`,key:`hh9hay`}],[`path`,{d:`m3.3 7 8.7 5 8.7-5`,key:`g66t2b`}],[`path`,{d:`M12 22V12`,key:`d0xqtd`}]]),An=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`}]]),jn=c(`brain-circuit`,[[`path`,{d:`M12 5a3 3 0 1 0-5.997.125 4 4 0 0 0-2.526 5.77 4 4 0 0 0 .556 6.588A4 4 0 1 0 12 18Z`,key:`l5xja`}],[`path`,{d:`M9 13a4.5 4.5 0 0 0 3-4`,key:`10igwf`}],[`path`,{d:`M6.003 5.125A3 3 0 0 0 6.401 6.5`,key:`105sqy`}],[`path`,{d:`M3.477 10.896a4 4 0 0 1 .585-.396`,key:`ql3yin`}],[`path`,{d:`M6 18a4 4 0 0 1-1.967-.516`,key:`2e4loj`}],[`path`,{d:`M12 13h4`,key:`1ku699`}],[`path`,{d:`M12 18h6a2 2 0 0 1 2 2v1`,key:`105ag5`}],[`path`,{d:`M12 8h8`,key:`1lhi5i`}],[`path`,{d:`M16 8V5a2 2 0 0 1 2-2`,key:`u6izg6`}],[`circle`,{cx:`16`,cy:`13`,r:`.5`,key:`ry7gng`}],[`circle`,{cx:`18`,cy:`3`,r:`.5`,key:`1aiba7`}],[`circle`,{cx:`20`,cy:`21`,r:`.5`,key:`yhc1fs`}],[`circle`,{cx:`20`,cy:`8`,r:`.5`,key:`1e43v0`}]]),Mn=c(`bug`,[[`path`,{d:`M12 20v-9`,key:`1qisl0`}],[`path`,{d:`M14 7a4 4 0 0 1 4 4v3a6 6 0 0 1-12 0v-3a4 4 0 0 1 4-4z`,key:`uouzyp`}],[`path`,{d:`M14.12 3.88 16 2`,key:`qol33r`}],[`path`,{d:`M21 21a4 4 0 0 0-3.81-4`,key:`1b0z45`}],[`path`,{d:`M21 5a4 4 0 0 1-3.55 3.97`,key:`5cxbf6`}],[`path`,{d:`M22 13h-4`,key:`1jl80f`}],[`path`,{d:`M3 21a4 4 0 0 1 3.81-4`,key:`1fjd4g`}],[`path`,{d:`M3 5a4 4 0 0 0 3.55 3.97`,key:`1d7oge`}],[`path`,{d:`M6 13H2`,key:`82j7cp`}],[`path`,{d:`m8 2 1.88 1.88`,key:`fmnt4t`}],[`path`,{d:`M9 7.13V6a3 3 0 1 1 6 0v1.13`,key:`1vgav8`}]]),Nn=c(`chevrons-up-down`,[[`path`,{d:`m7 15 5 5 5-5`,key:`1hf1tw`}],[`path`,{d:`m7 9 5-5 5 5`,key:`sgt6xg`}]]),Pn=c(`circle-check-big`,[[`path`,{d:`M21.801 10A10 10 0 1 1 17 3.335`,key:`yps3ct`}],[`path`,{d:`m9 11 3 3L22 4`,key:`1pflzl`}]]),Fn=c(`circle-dashed`,[[`path`,{d:`M10.1 2.182a10 10 0 0 1 3.8 0`,key:`5ilxe3`}],[`path`,{d:`M13.9 21.818a10 10 0 0 1-3.8 0`,key:`11zvb9`}],[`path`,{d:`M17.609 3.721a10 10 0 0 1 2.69 2.7`,key:`1iw5b2`}],[`path`,{d:`M2.182 13.9a10 10 0 0 1 0-3.8`,key:`c0bmvh`}],[`path`,{d:`M20.279 17.609a10 10 0 0 1-2.7 2.69`,key:`1ruxm7`}],[`path`,{d:`M21.818 10.1a10 10 0 0 1 0 3.8`,key:`qkgqxc`}],[`path`,{d:`M3.721 6.391a10 10 0 0 1 2.7-2.69`,key:`1mcia2`}],[`path`,{d:`M6.391 20.279a10 10 0 0 1-2.69-2.7`,key:`1fvljs`}]]),In=c(`circle-gauge`,[[`path`,{d:`M15.6 2.7a10 10 0 1 0 5.7 5.7`,key:`1e0p6d`}],[`circle`,{cx:`12`,cy:`12`,r:`2`,key:`1c9p78`}],[`path`,{d:`M13.4 10.6 19 5`,key:`1kr7tw`}]]),Ln=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`}]]),Rn=c(`circle-x`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m15 9-6 6`,key:`1uzhvr`}],[`path`,{d:`m9 9 6 6`,key:`z0biqf`}]]),zn=c(`clock`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 6v6l4 2`,key:`mmk7yg`}]]),Bn=c(`code-xml`,[[`path`,{d:`m18 16 4-4-4-4`,key:`1inbqp`}],[`path`,{d:`m6 8-4 4 4 4`,key:`15zrgr`}],[`path`,{d:`m14.5 4-5 16`,key:`e7oirm`}]]),Vn=c(`copy`,[[`rect`,{width:`14`,height:`14`,x:`8`,y:`8`,rx:`2`,ry:`2`,key:`17jyea`}],[`path`,{d:`M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2`,key:`zix9uf`}]]),Hn=c(`external-link`,[[`path`,{d:`M15 3h6v6`,key:`1q9fwt`}],[`path`,{d:`M10 14 21 3`,key:`gplh6r`}],[`path`,{d:`M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6`,key:`a6xqqp`}]]),Un=c(`file-text`,[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M10 9H8`,key:`b1mrlr`}],[`path`,{d:`M16 13H8`,key:`t4e002`}],[`path`,{d:`M16 17H8`,key:`z1uh3a`}]]),Wn=c(`folder-kanban`,[[`path`,{d:`M4 20h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.93a2 2 0 0 1-1.66-.9l-.82-1.2A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13c0 1.1.9 2 2 2Z`,key:`1fr9dc`}],[`path`,{d:`M8 10v4`,key:`tgpxqk`}],[`path`,{d:`M12 10v2`,key:`hh53o1`}],[`path`,{d:`M16 10v6`,key:`1d6xys`}]]),Gn=c(`folder-root`,[[`path`,{d:`M4 20h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.93a2 2 0 0 1-1.66-.9l-.82-1.2A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13c0 1.1.9 2 2 2Z`,key:`1fr9dc`}],[`circle`,{cx:`12`,cy:`13`,r:`2`,key:`1c1ljs`}],[`path`,{d:`M12 15v5`,key:`11xva1`}]]),Kn=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`}]]),qn=c(`git-branch`,[[`path`,{d:`M15 6a9 9 0 0 0-9 9V3`,key:`1cii5b`}],[`circle`,{cx:`18`,cy:`6`,r:`3`,key:`1h7g24`}],[`circle`,{cx:`6`,cy:`18`,r:`3`,key:`fqmcym`}]]),Jn=c(`git-compare-arrows`,[[`circle`,{cx:`5`,cy:`6`,r:`3`,key:`1qnov2`}],[`path`,{d:`M12 6h5a2 2 0 0 1 2 2v7`,key:`1yj91y`}],[`path`,{d:`m15 9-3-3 3-3`,key:`1lwv8l`}],[`circle`,{cx:`19`,cy:`18`,r:`3`,key:`1qljk2`}],[`path`,{d:`M12 18H7a2 2 0 0 1-2-2V9`,key:`16sdep`}],[`path`,{d:`m9 15 3 3-3 3`,key:`1m3kbl`}]]),Yn=c(`history`,[[`path`,{d:`M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8`,key:`1357e3`}],[`path`,{d:`M3 3v5h5`,key:`1xhq8a`}],[`path`,{d:`M12 7v5l4 2`,key:`1fdv2h`}]]),Xn=c(`image`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,ry:`2`,key:`1m3agn`}],[`circle`,{cx:`9`,cy:`9`,r:`2`,key:`af1f0g`}],[`path`,{d:`m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21`,key:`1xmnt7`}]]),Zn=c(`lightbulb`,[[`path`,{d:`M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5`,key:`1gvzjb`}],[`path`,{d:`M9 18h6`,key:`x1upvd`}],[`path`,{d:`M10 22h4`,key:`ceow96`}]]),Qn=c(`list-checks`,[[`path`,{d:`M13 5h8`,key:`a7qcls`}],[`path`,{d:`M13 12h8`,key:`h98zly`}],[`path`,{d:`M13 19h8`,key:`c3s6r1`}],[`path`,{d:`m3 17 2 2 4-4`,key:`1jhpwq`}],[`path`,{d:`m3 7 2 2 4-4`,key:`1obspn`}]]),$n=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`}]]),er=c(`message-square-code`,[[`path`,{d:`M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z`,key:`18887p`}],[`path`,{d:`m10 8-3 3 3 3`,key:`fp6dz7`}],[`path`,{d:`m14 14 3-3-3-3`,key:`1yrceu`}]]),tr=c(`panel-left`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M9 3v18`,key:`fh3hqa`}]]),nr=c(`panel-right`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M15 3v18`,key:`14nvp0`}]]),rr=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`}]]),ir=c(`send-horizontal`,[[`path`,{d:`M3.714 3.048a.498.498 0 0 0-.683.627l2.843 7.627a2 2 0 0 1 0 1.396l-2.842 7.627a.498.498 0 0 0 .682.627l18-8.5a.5.5 0 0 0 0-.904z`,key:`117uat`}],[`path`,{d:`M6 12h16`,key:`s4cdu5`}]]),ar=c(`shield-question-mark`,[[`path`,{d:`M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z`,key:`oel41y`}],[`path`,{d:`M9.1 9a3 3 0 0 1 5.82 1c0 2-3 3-3 3`,key:`mhlwft`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]]),or=c(`square-terminal`,[[`path`,{d:`m7 11 2-2-2-2`,key:`1lz0vl`}],[`path`,{d:`M11 13h4`,key:`1p7l4v`}],[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,ry:`2`,key:`1m3agn`}]]),sr=c(`target`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`circle`,{cx:`12`,cy:`12`,r:`6`,key:`1vlfrh`}],[`circle`,{cx:`12`,cy:`12`,r:`2`,key:`1c9p78`}]]),cr=c(`terminal`,[[`path`,{d:`M12 19h8`,key:`baeox8`}],[`path`,{d:`m4 17 6-6-6-6`,key:`1yngyt`}]]),lr=c(`triangle-alert`,[[`path`,{d:`m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3`,key:`wmoenq`}],[`path`,{d:`M12 9v4`,key:`juzpu7`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]]),ur=c(`wrench`,[[`path`,{d:`M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z`,key:`1ngwbx`}]]),dr=c(`zap`,[[`path`,{d:`M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z`,key:`1xq2db`}]]),Q=e(n(),1),$=i(),fr=Object.defineProperty,pr=(e,t)=>fr(e,`name`,{value:t,configurable:!0}),mr=`Collapsible`,[hr,gr]=D(mr),[_r,vr]=hr(mr),yr=Q.forwardRef(pr(function(e,t){let{__scopeCollapsible:n,open:r,defaultOpen:i,disabled:a,onOpenChange:o,...s}=e,[c,l]=R({prop:r,defaultProp:i??!1,onChange:o,caller:mr});return(0,$.jsx)(_r,{scope:n,disabled:a,contentId:z(),open:c,onOpenToggle:Q.useCallback(()=>l(e=>!e),[l]),children:(0,$.jsx)(p.div,{"data-state":Tr(c),"data-disabled":a?``:void 0,...s,ref:t})})},`Collapsible`)),br=`CollapsibleTrigger`,xr=Q.forwardRef(pr(function(e,t){let{__scopeCollapsible:n,...r}=e,i=vr(br,n);return(0,$.jsx)(p.button,{type:`button`,"aria-controls":i.open?i.contentId:void 0,"aria-expanded":i.open||!1,"data-state":Tr(i.open),"data-disabled":i.disabled?``:void 0,disabled:i.disabled,...r,ref:t,onClick:h(e.onClick,i.onOpenToggle)})},`CollapsibleTrigger`)),Sr=`CollapsibleContent`,Cr=Q.forwardRef(pr(function(e,t){let{forceMount:n,...r}=e,i=vr(Sr,e.__scopeCollapsible);return(0,$.jsx)(F,{present:n||i.open,children:({present:e})=>(0,$.jsx)(wr,{...r,ref:t,present:e})})},`CollapsibleContent`)),wr=Q.forwardRef(pr(function(e,t){let{__scopeCollapsible:n,present:r,children:i,...o}=e,s=vr(Sr,n),[c,l]=Q.useState(r),u=Q.useRef(null),d=a(t,u),f=Q.useRef(0),m=f.current,h=Q.useRef(0),g=h.current,_=s.open||c,v=Q.useRef(_),y=Q.useRef(void 0);return Q.useEffect(()=>{let e=requestAnimationFrame(()=>v.current=!1);return()=>cancelAnimationFrame(e)},[]),B(()=>{let e=u.current;if(e){y.current=y.current||{transitionDuration:e.style.transitionDuration,animationName:e.style.animationName},e.style.transitionDuration=`0s`,e.style.animationName=`none`;let t=e.getBoundingClientRect();f.current=t.height,h.current=t.width,v.current||(e.style.transitionDuration=y.current.transitionDuration,e.style.animationName=y.current.animationName),l(r)}},[s.open,r]),(0,$.jsx)(p.div,{"data-state":Tr(s.open),"data-disabled":s.disabled?``:void 0,id:s.contentId,hidden:!_,...o,ref:d,style:{"--radix-collapsible-content-height":m?`${m}px`:void 0,"--radix-collapsible-content-width":g?`${g}px`:void 0,...e.style},children:_&&i})},`CollapsibleContentImpl`));function Tr(e){return e?`open`:`closed`}pr(Tr,`getState`);var Er=yr,Dr=xr,Or=Cr,kr=Object.defineProperty,Ar=(e,t)=>kr(e,`name`,{value:t,configurable:!0}),jr=`ContextMenu`,[Mr,Nr]=D(jr,[_t]),Pr=_t(),[Fr,Ir]=Mr(jr),Lr=Ar(e=>{let{__scopeContextMenu:t,children:n,onOpenChange:r,open:i,dir:a,modal:o=!0}=e,s=Q.useRef(!1),[c,l]=R({prop:i,defaultProp:!1,onChange:r,caller:jr}),u=Pr(t);return(0,$.jsx)(Fr,{scope:t,open:c,onOpenChange:l,modal:o,hasInteractedRef:s,children:(0,$.jsx)(jt,{...u,dir:a,open:c,onOpenChange:l,modal:o,children:n})})},`ContextMenu`),Rr=`ContextMenuTrigger`,zr=Q.forwardRef(Ar(function(e,t){let{__scopeContextMenu:n,disabled:r=!1,...i}=e,a=Ir(Rr,n),o=Pr(n),[s,c]=Q.useState({x:0,y:0}),l=Q.useMemo(()=>({current:{getBoundingClientRect:Ar(()=>DOMRect.fromRect({width:0,height:0,...s}),`getBoundingClientRect`)}}),[s]),u=Q.useRef(0),d=Q.useCallback(()=>window.clearTimeout(u.current),[]),f=Ar(e=>{a.hasInteractedRef.current=!0,c({x:e.clientX,y:e.clientY}),a.onOpenChange(!0)},`handleOpen`);return Q.useEffect(()=>d,[d]),Q.useEffect(()=>void(r&&d()),[r,d]),(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(xt,{...o,virtualRef:l}),(0,$.jsx)(p.span,{"data-state":a.open?`open`:`closed`,"data-disabled":r?``:void 0,...i,ref:t,style:{WebkitTouchCallout:`none`,...e.style},onContextMenu:r?e.onContextMenu:h(e.onContextMenu,e=>{d(),f(e),e.preventDefault()}),onPointerDown:r?e.onPointerDown:h(e.onPointerDown,Jr(e=>{d(),a.open&&a.onOpenChange(!1),u.current=window.setTimeout(()=>f(e),700)})),onPointerMove:r?e.onPointerMove:h(e.onPointerMove,Jr(d)),onPointerCancel:r?e.onPointerCancel:h(e.onPointerCancel,Jr(d)),onPointerUp:r?e.onPointerUp:h(e.onPointerUp,Jr(d))})]})},`ContextMenuTrigger`)),Br=Ar(e=>{let{__scopeContextMenu:t,...n}=e,r=Pr(t);return(0,$.jsx)(pt,{...r,...n})},`ContextMenuPortal`),Vr=`ContextMenuContent`,Hr=Q.forwardRef(Ar(function(e,t){let{__scopeContextMenu:n,...r}=e,i=Ir(Vr,n),a=Pr(n),o=Q.useRef(!1);return(0,$.jsx)(Dt,{...a,...r,ref:t,side:`right`,sideOffset:2,align:`start`,onCloseAutoFocus:t=>{e.onCloseAutoFocus?.(t),!t.defaultPrevented&&o.current&&t.preventDefault(),o.current=!1},onInteractOutside:t=>{e.onInteractOutside?.(t),!t.defaultPrevented&&!i.modal&&(o.current=!0)},style:{...e.style,"--radix-context-menu-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-context-menu-content-available-width":`var(--radix-popper-available-width)`,"--radix-context-menu-content-available-height":`var(--radix-popper-available-height)`,"--radix-context-menu-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-context-menu-trigger-height":`var(--radix-popper-anchor-height)`}})},`ContextMenuContent`)),Ur=Q.forwardRef(Ar(function(e,t){let{__scopeContextMenu:n,...r}=e,i=Pr(n);return(0,$.jsx)(xn,{...i,...r,ref:t})},`ContextMenuItem`)),Wr=`ContextMenuSub`,Gr=Ar(e=>{let{__scopeContextMenu:t,children:n,onOpenChange:r,open:i,defaultOpen:a}=e,o=Pr(t),[s,c]=R({prop:i,defaultProp:a??!1,onChange:r,caller:Wr});return(0,$.jsx)(vt,{...o,open:s,onOpenChange:c,children:n})},`ContextMenuSub`),Kr=Q.forwardRef(Ar(function(e,t){let{__scopeContextMenu:n,...r}=e,i=Pr(n);return(0,$.jsx)(Mt,{...i,...r,ref:t})},`ContextMenuSubTrigger`)),qr=Q.forwardRef(Ar(function(e,t){let{__scopeContextMenu:n,...r}=e,i=Pr(n);return(0,$.jsx)(At,{...i,...r,ref:t,style:{...e.style,"--radix-context-menu-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-context-menu-content-available-width":`var(--radix-popper-available-width)`,"--radix-context-menu-content-available-height":`var(--radix-popper-available-height)`,"--radix-context-menu-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-context-menu-trigger-height":`var(--radix-popper-anchor-height)`}})},`ContextMenuSubContent`));function Jr(e){return t=>t.pointerType===`mouse`?void 0:e(t)}Ar(Jr,`whenTouchOrPen`);var Yr=Lr,Xr=zr,Zr=Br,Qr=Hr,$r=Ur,ei=Gr,ti=Kr,ni=qr,ri=new Set([`gif`,`jpeg`,`jpg`,`png`,`webp`]),ii=new Set(`7z.avi.dmg.doc.docm.docx.exe.gz.key.mov.mp3.mp4.numbers.odp.ods.odt.pages.pdf.pkg.ppt.pptm.pptx.rar.tar.tgz.wav.xls.xlsb.xlsm.xlsx.zip`.split(`.`));function ai(e){let t=e.split(/[\\/]/u).at(-1)?.toLowerCase()??``,n=t.includes(`.`)?t.split(`.`).at(-1)??``:``;return ri.has(n)?`image`:ii.has(n)?`system`:`source`}function oi(e){return e.kind===`image`?`image`:e.kind===`text`?`source`:e.size>1048576?`system`:ai(e.name)===`source`?`source`:`system`}var si=1500;function ci(e,t){return e||t>0?si:!1}function li(e,t,n,r){return e&&r!==void 0&&t!==n}function ui(e,t,n,r,i=!0){let a=(0,Q.useRef)(r),o=(0,Q.useRef)(new Map),s=(0,Q.useRef)(U()),c=j({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 ci(r,e.state.data?.data.length??0)}}),l=te({mutationFn:async r=>{if(n===void 0)return;let i=o.current.get(r)??x();o.current.set(r,i),await e.terminateBackgroundTerminal(t,n,r,{idempotencyKey:i})}}),u=c.refetch,d=l.mutateAsync;(0,Q.useEffect)(()=>{let e=li(i,a.current,r,n);a.current=r,e&&u()},[i,r,u,n]);let f=(0,Q.useCallback)(e=>s.current.run(async()=>{try{await d(e),o.current.delete(e),await u()}catch{}}),[u,d]);return{error:c.error,isPending:c.isPending,terminals:c.data?.data??[],terminatingTerminalId:l.isPending&&typeof l.variables==`string`?l.variables:null,terminateTerminal:f}}function di(e){return(0,$.jsx)(Yr,{"data-slot":`context-menu`,...e})}function fi(e){return(0,$.jsx)(Xr,{"data-slot":`context-menu-trigger`,...e})}function pi(e){return(0,$.jsx)(ei,{"data-slot":`context-menu-sub`,...e})}function mi({children:e,...t}){return typeof document>`u`?(0,$.jsx)($.Fragment,{children:e}):(0,$.jsx)(Zr,{"data-slot":`context-menu-portal`,...t,children:e})}function hi({children:e,className:t,collisionPadding:n=8,...r}){return(0,$.jsx)(mi,{children:(0,$.jsx)(Qr,{className:s(`z-50 max-h-[var(--radix-context-menu-content-available-height)] min-w-32 overflow-x-hidden overflow-y-auto rounded-surface border border-separator-strong bg-raised p-1.5 text-foreground shadow-floating outline-none`,t),collisionPadding:n,"data-slot":`context-menu-content`,...r,children:e})})}function gi({className:e,...t}){return(0,$.jsx)($r,{className:s(`flex cursor-default select-none items-center gap-2.5 rounded-control px-2 py-1.5 text-body-small outline-none transition-colors data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[highlighted]:bg-control-hover [&_svg]:pointer-events-none [&_svg]:shrink-0`,e),"data-slot":`context-menu-item`,...t})}function _i({children:e,className:t,...n}){return(0,$.jsxs)(ti,{className:s(`flex cursor-default select-none items-center gap-2.5 rounded-control px-2 py-1.5 text-body-small outline-none transition-colors data-[state=open]:bg-control-hover data-[highlighted]:bg-control-hover [&_svg]:pointer-events-none [&_svg]:shrink-0`,t),"data-slot":`context-menu-sub-trigger`,...n,children:[e,(0,$.jsx)(Se,{"aria-hidden":`true`,className:`ml-auto size-3.5 text-muted-foreground`})]})}function vi({children:e,className:t,collisionPadding:n=8,sideOffset:r=0,...i}){return(0,$.jsx)(mi,{children:(0,$.jsx)(ni,{className:s(`z-50 min-w-40 max-h-[calc(100dvh-1rem)] overflow-y-auto rounded-surface border border-separator-strong bg-raised p-1.5 text-foreground shadow-floating outline-none`,t),collisionPadding:n,"data-slot":`context-menu-sub-content`,sideOffset:r,...i,children:e})})}var yi={editor:Bn,"file-manager":de,"system-default":Hn,terminal:cr,tool:ur};function bi(e,t){return t===`file`?e:e.filter(e=>e.kind!==`system-default`)}function xi(e){return e.find(e=>e.kind===`file-manager`)}function Si({apps:e,className:t=``,defaultOpenAppId:n,isDetecting:r,isPending:i,onSelect:a}){let{t:o}=u(`workbench`),s=bi(e,`directory`),c=s.find(e=>e.id===n)??s[0],d=r?o(`openMenu.detect`):c===void 0?o(`openMenu.none`):o(`openMenu.openIn`,{app:c.name}),f=c?.name??d,p=c===void 0?de:yi[c.kind];return(0,$.jsxs)(pn,{modal:!1,children:[(0,$.jsxs)(He,{className:`shrink-0 ${t}`,children:[(0,$.jsxs)(l,{"aria-label":d,className:`max-w-28 rounded-r-none border-r-0 max-workbench:min-w-11 max-workbench:px-0`,disabled:c===void 0||i,onClick:()=>{c!==void 0&&a(c.id)},size:`toolbar`,title:d,type:`button`,variant:`outline`,children:[(0,$.jsx)(p,{"aria-hidden":`true`}),(0,$.jsx)(`span`,{className:`hidden truncate sm:inline`,children:f})]}),(0,$.jsx)(vn,{asChild:!0,children:(0,$.jsx)(l,{"aria-label":o(`openMenu.choose`),className:`rounded-l-none`,disabled:s.length===0||i,size:`icon-toolbar`,type:`button`,variant:`outline`,children:(0,$.jsx)(w,{"aria-hidden":`true`})})})]}),(0,$.jsx)(Ut,{align:`end`,"aria-label":o(`openMenu.choose`),className:`w-52`,children:s.map(e=>{let t=yi[e.kind];return(0,$.jsxs)(cn,{"aria-label":e.name,disabled:i,onSelect:()=>{a(e.id)},children:[(0,$.jsx)(t,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:e.name})]},e.id)})})]})}function Ci(e){return e.split(/[\\/]/u).at(-1)??e}function wi(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 Ti(e){navigator.clipboard.writeText(e).catch(()=>void 0)}function Ei({apps:e,ariaLabel:t,isPending:n,onReference:r,onSelect:i,target:a}){let{t:o}=u(`workbench`),s=bi(e,a.type),c=Ci(a.path),l=a.reference;return(0,$.jsxs)(hi,{"aria-label":t,className:`w-52`,children:[(0,$.jsxs)(gi,{onSelect:()=>{Ti(c)},children:[(0,$.jsx)(Vn,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{children:o(`openMenu.copyName`)})]}),(0,$.jsxs)(gi,{onSelect:()=>{Ti(a.relativePath)},children:[(0,$.jsx)(Vn,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{children:o(`openMenu.copyRelativePath`)})]}),(0,$.jsxs)(gi,{onSelect:()=>{Ti(a.absolutePath)},children:[(0,$.jsx)(Vn,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{children:o(`openMenu.copyAbsolutePath`)})]}),(0,$.jsxs)(pi,{children:[(0,$.jsxs)(_i,{children:[(0,$.jsx)(de,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{children:o(`openMenu.open`)})]}),(0,$.jsx)(vi,{children:s.map(e=>{let t=yi[e.kind],r=e.kind===`system-default`?o(`openMenu.systemDefault`):e.name;return(0,$.jsxs)(gi,{"aria-label":r,disabled:n,onSelect:()=>{i(e.id,a.path)},children:[(0,$.jsx)(t,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:r})]},e.id)})})]}),l===void 0?null:(0,$.jsxs)(gi,{onSelect:()=>{r(l)},children:[(0,$.jsx)(On,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{children:o(`openMenu.reference`)})]})]})}function Di({apps:e,isPending:t,onOpen:n,onReference:r,onSelect:i,target:a}){let{t:o}=u(`workbench`),s=bi(e,a.type),c=o(`openMenu.targetLabel`,{path:a.path}),d=Ci(a.path),f=a.reference;return(0,$.jsxs)(pn,{modal:!1,onOpenChange:e=>{e&&n()},children:[(0,$.jsxs)(N,{children:[(0,$.jsx)(vn,{asChild:!0,children:(0,$.jsx)(P,{asChild:!0,children:(0,$.jsx)(l,{"aria-label":c,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,$.jsx)(Qt,{"aria-hidden":`true`,className:`size-3.5`})})})}),(0,$.jsx)(I,{side:`left`,children:o(`openMenu.moreActions`)})]}),(0,$.jsxs)(Ut,{align:`end`,"aria-label":c,className:`w-52`,children:[(0,$.jsxs)(cn,{onSelect:()=>{Ti(d)},children:[(0,$.jsx)(Vn,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{children:o(`openMenu.copyName`)})]}),(0,$.jsxs)(cn,{onSelect:()=>{Ti(a.relativePath)},children:[(0,$.jsx)(Vn,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{children:o(`openMenu.copyRelativePath`)})]}),(0,$.jsxs)(cn,{onSelect:()=>{Ti(a.absolutePath)},children:[(0,$.jsx)(Vn,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{children:o(`openMenu.copyAbsolutePath`)})]}),(0,$.jsxs)(hn,{children:[(0,$.jsxs)(zt,{children:[(0,$.jsx)(de,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{children:o(`openMenu.open`)})]}),(0,$.jsx)(yn,{children:s.map(e=>{let n=yi[e.kind],r=e.kind===`system-default`?o(`openMenu.systemDefault`):e.name;return(0,$.jsxs)(cn,{"aria-label":r,disabled:t,onSelect:()=>{i(e.id,a.path)},children:[(0,$.jsx)(n,{className:`size-4 text-muted-foreground`,"aria-hidden":`true`}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:r})]},e.id)})})]}),f===void 0?null:(0,$.jsxs)(cn,{onSelect:()=>{r(f)},children:[(0,$.jsx)(On,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{children:o(`openMenu.reference`)})]})]})]})}function Oi({apps:e,children:t,isPending:n,onOpen:r,onReference:i,onSelect:a,target:o}){let{t:s}=u(`workbench`);return(0,$.jsxs)(di,{modal:!1,onOpenChange:e=>{e&&r()},children:[(0,$.jsx)(fi,{asChild:!0,onContextMenu:e=>{e.stopPropagation()},children:t}),(0,$.jsx)(Ei,{apps:e,ariaLabel:s(`openMenu.targetLabel`,{path:o.path}),isPending:n,onReference:i,onSelect:a,target:o})]})}var ki=new Set([`agent/close`,`agent/resume`,`agent/send_input`,`agent/spawn`,`agent/wait`]);function Ai(e){return d.t({"agent/close":`subagent.operationTitles.close`,"agent/resume":`subagent.operationTitles.resume`,"agent/send_input":`subagent.operationTitles.sendInput`,"agent/spawn":`subagent.operationTitles.spawn`,"agent/wait":`subagent.operationTitles.wait`}[e],{ns:`conversation`})}function ji(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function Mi(e){return e===`pending`||e===`running`||e===`completed`||e===`failed`||e===`declined`||e===`interrupted`}function Ni(e){if(!ki.has(e.name))return null;let t=ji(e.input)?e.input:{},n=ji(e.output)?e.output:{};return{agents:(Array.isArray(n.agents)?n.agents:[]).flatMap(e=>{if(!ji(e))return[];let t=e.taskId,n=e.status;if(typeof t!=`string`||!Mi(n))return[];let r=e.message,i=e.nickname;return[{...typeof r==`string`?{message:r}:{},...typeof i==`string`?{nickname:i}:{},status:n,taskId:t}]}),...typeof t.model==`string`?{model:t.model}:{},name:e.name,...typeof t.prompt==`string`?{prompt:t.prompt}:{},...typeof t.reasoningEffort==`string`?{reasoningEffort:t.reasoningEffort}:{}}}function Pi(e){if(e===void 0)return[];let t=new Map;for(let n of e.turns)for(let e of n.items){if(e.type!==`tool`)continue;let n=Ni(e);if(n!==null){if(n.name===`agent/close`){for(let e of n.agents)t.delete(e.taskId);continue}for(let e of n.agents){let r=t.get(e.taskId);t.set(e.taskId,{...r?.model===void 0?{}:{model:r.model},...r?.reasoningEffort===void 0?{}:{reasoningEffort:r.reasoningEffort},...n.model===void 0?{}:{model:n.model},...n.reasoningEffort===void 0?{}:{reasoningEffort:n.reasoningEffort},nickname:e.nickname??r?.nickname??d.t(`subagent.defaultName`,{index:t.size+1,ns:`conversation`}),status:e.status,taskId:e.taskId})}}}return[...t.values()]}function Fi(e){return e.split(`-`).map(e=>e===`gpt`?`GPT`:`${e.charAt(0).toUpperCase()}${e.slice(1)}`).join(`-`)}function Ii(e){return e===`pending`?`pending`:e===`running`?`in_progress`:e===`failed`||e===`declined`||e===`interrupted`?`error`:`completed`}function Li(e,t){return t.some(e=>e.status===`running`||e.status===`pending`)?`in_progress`:t.some(e=>e.status===`failed`||e.status===`declined`||e.status===`interrupted`)?`error`:Ii(e)}function Ri(e,t){if(t.length===0)return e===`pending`||e===`running`?d.t(`subagent.orchestrating`,{ns:`conversation`}):d.t(`subagent.operationCompleted`,{ns:`conversation`});let n=Li(e,t);return n===`in_progress`||n===`pending`?d.t(`subagent.operationRunning`,{count:t.length,ns:`conversation`}):n===`error`?d.t(`subagent.operationFailed`,{count:t.length,ns:`conversation`}):d.t(`subagent.operationSucceeded`,{count:t.length,ns:`conversation`})}function zi({activePanel:e,gitStatus:t,temporary:n}){return!n&&e&&t!==void 0&&t.repositoryMode!==`none`&&t.staged.length+t.unstaged.length>0}function Bi(e,t){let n=t!==void 0&&t.repositoryMode!==`none`,r=n&&t.staged.length+t.unstaged.length>0,i=[];return e!==void 0&&i.push(`context`),i.push(`project`),r&&i.push(`changes`),n&&i.push(`history`),i}function Vi({contextOnly:e=!1,gitStatus:t,inspectorOpen:n,requestedTab:r,taskId:i}){let a=Bi(i,t),o=e?`context`:a.includes(r)?r:`project`;return{activeTab:o,changes:n&&o===`changes`,context:n&&o===`context`,history:n&&o===`history`,project:n&&o===`project`}}var Hi=`(max-width: 760px)`,Ui=`(max-width: 1100px)`,Wi={default:288,maximum:400,minimum:220},Gi={default:320,minimum:320};function Ki(e){return typeof window>`u`||!window.matchMedia(e).matches}function qi(e,t){return Math.max(Gi.minimum,Math.floor((e-t)/2))}function Ji(){let[e,t]=(0,Q.useState)(()=>Ki(Hi)),[n,r]=(0,Q.useState)(()=>Ki(Ui)),[i,a]=(0,Q.useState)(Wi.default),[o,s]=(0,Q.useState)(Gi.default),[c,l]=(0,Q.useState)(()=>typeof window>`u`?1440:window.innerWidth),u=(0,Q.useRef)(null),d=qi(c,e?i:0);return(0,Q.useLayoutEffect)(()=>{let e=u.current;if(e===null)return;let t=()=>{l(e.getBoundingClientRect().width)};t();let n=new ResizeObserver(t);return n.observe(e),()=>{n.disconnect()}},[]),(0,Q.useLayoutEffect)(()=>{s(e=>Math.min(e,d))},[d]),{inspectorMaximumWidth:d,inspectorOpen:n,inspectorWidth:o,setInspectorOpen:r,setInspectorWidth:s,setSidebarOpen:t,setSidebarWidth:a,sidebarOpen:e,sidebarWidth:i,workbenchShellRef:u}}function Yi(){let[e,t]=(0,Q.useState)(),n=(0,Q.useRef)(void 0),r=(0,Q.useCallback)(()=>{let e=new Date().toISOString();n.current=e,t(e)},[]),i=(0,Q.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,Q.useCallback)(()=>n.current,[]),handleSubmissionStateChange:i,startedAt:e}}var Xi=new Set;function Zi(e,t){return[`projects`,e,`tasks`,t,`launch`]}function Qi({projectId:e,taskId:t,temporary:n=!1}){let{t:r}=u(`workbench`),i=fn(),{capabilities:a,client:o,error:s,isPending:c,projects:l,projectTaskStates:d,tasks:f}=Yt(),p=l.find(t=>t.id===e),{selectedRootIds:m,setSelectedProjectRoot:h}=It(),g=mn(p,m),_=n?void 0:g?.id,v=n?void 0:g?.path,{markTaskRunning:y,projectRuntime:b,refreshProjectGitStatus:x,requestNotificationPermission:S,retry:C,viewTask:w}=Zt(),T=Bt(),E=L(),{inspectorMaximumWidth:D,inspectorOpen:O,inspectorWidth:k,setInspectorOpen:A,setInspectorWidth:M,setSidebarOpen:N,setSidebarWidth:P,sidebarOpen:F,sidebarWidth:I,workbenchShellRef:R}=Ji(),z=`${e}:${t??`draft`}`,B=t===void 0?`project`:`context`,[V,H]=(0,Q.useState)({scopeKey:z,tab:B}),W=V.scopeKey===z?V.tab:B,G=j(ne(e,v??``,o,!n&&v!==void 0)),K=Vi({contextOnly:n,gitStatus:G.data,inspectorOpen:O,requestedTab:W,taskId:t}),q=j(ge(o)),ee=te({...pe(o),onSuccess(e){E.setQueryData([`app-info`],e)}}),J=j(Te(o)),ie=j(Me()),se=j(Ee(e,t,o,K.context)),ce=te({...ue(e,t,o),onSuccess(n){E.setQueryData([`projects`,e,`tasks`,t??null,`mcp-servers`],n)}}),de=j(Ce(o)),fe=j(re(e,o,!n)),me=te({meta:{actionNotification:{successMessage:!1}},mutationFn:({appId:t,path:n})=>o.openProject(e,v,n===void 0?{appId:t}:{appId:t,path:n})}),_e=te({meta:{actionNotification:{successMessage:!1}},mutationFn:({attachmentId:t,taskId:n})=>o.openTaskAttachment(e,n,t)}),ve=(0,Q.useRef)(me);ve.current=me;let ye=(0,Q.useRef)(U()),be=xi(fe.data?.apps??[]),xe=(0,Q.useCallback)(()=>{if(be===void 0)return;let e=ve.current;e.reset(),ye.current.run(()=>e.mutateAsync({appId:be.id,path:void 0})).catch(()=>void 0)},[be,ye,ve]),Se=j({...ae(e,o),enabled:a?.skills.list===!0}),De=j(oe(e,o,!n)),Oe=te({...we(e,o),onSuccess(t){E.setQueryData([`projects`,e,`defaults`],t)}}),ke=te({...le(o),async onSuccess(n){E.setQueryData([`settings`],n),await E.invalidateQueries({exact:!0,queryKey:[`projects`,e,`defaults`]}),t!==void 0&&await E.invalidateQueries({exact:!0,queryKey:[`projects`,e,`tasks`,t]})}}),X=bt(e,t,b),Ae=t===void 0?void 0:E.getQueryData(Zi(e,t)),je=(0,Q.useMemo)(()=>Ae===void 0?void 0:Wt({...Ae.task,contextUsage:null,plan:null,pendingRequests:[],settings:Ae.settings,status:`running`,turns:[Ae.turn],turnsNextCursor:null},Ae.turn,{...Ae.input,messageAttachments:Ae.messageAttachments}),[Ae]),Z=d.get(e),Ne=tn({hasActiveTask:t!==void 0,projectDataFailed:s!==null||(Z?.error??null)!==null,projectDataPending:c||Z?.isPending===!0,taskConnectionState:X.connectionState}),Pe=ui(o,e,t,X.snapshot?.status===`running`||je?.status===`running`,K.context),Fe=`${e}:${v??`temporary`}`,[Ie,Le]=(0,Q.useState)(()=>({paths:new Set,scope:Fe})),Re=Ie.scope===Fe?Ie.paths:Xi,{beginSubmission:ze,getStartedAt:Be,handleSubmissionStateChange:Ve,startedAt:He}=Yi(),[Ue,We]=(0,Q.useState)(),[Ge,Ke]=(0,Q.useState)(!1),[qe,Je]=(0,Q.useState)(null),[Ye,Xe]=(0,Q.useState)(null),[Ze,Qe]=(0,Q.useState)(null),[$e,et]=(0,Q.useState)(null),[tt,nt]=(0,Q.useState)(null),rt=(0,Q.useCallback)(t=>{h(e,t),Xe(null),Qe(null),et(null)},[e,h]),it=j(he(e,v??``,null,G.data?.snapshot??``,zi({activePanel:K.context||K.project||K.changes,gitStatus:G.data,temporary:n}),o)),at=(0,Q.useCallback)(e=>{H({scopeKey:z,tab:e})},[z]);(0,Q.useLayoutEffect)(()=>{w(e,t)},[e,t,w]);let ot=n?r(`shell.temporaryTask`):p?.name??e,st=v??``,ct=f.find(n=>n.projectId===e&&n.id===t)?.title??X.snapshot?.title??r(`shell.newChat`),lt=te(Y(o)),ut=(0,Q.useRef)(U()),dt=Ye!==null&&Ye.projectId===e?Ye.change:null,ft=$e!==null&&$e.projectId===e?$e:null,pt=Ze!==null&&Ze.projectId===e?Ze.changes:null,mt=(0,Q.useMemo)(()=>Pi(X.snapshot??je),[X.snapshot,je]),ht=tt!==null&&tt.projectId===e&&tt.parentTaskId===t?{...tt.selection,status:mt.find(e=>e.taskId===tt.selection.taskId)?.status??tt.selection.status}:null;return{access:i,activeTaskRenameLockRef:ut,appInfoQuery:q,appUpdateMutation:ee,backgroundTerminals:Pe,beginNewChatSubmission:ze,capabilities:a,client:o,error:s,expandedFileTreePaths:Re,fileDiffSelection:Ye,fileReviewSelection:Ze,getNewChatSubmissionStartedAt:Be,gitStatusQuery:G,gitStatusDetailsQuery:it,globalSettingsMutation:ke,globalSettingsSection:qe,globalSettingsQuery:de,handleNewChatSubmissionStateChange:Ve,inspectorOpen:O,inspectorMaximumWidth:D,inspectorTab:W,inspectorTask:X.snapshot??je,inspectorWidth:k,isPending:c,markTaskRunning:y,mcpServersQuery:se,mcpServersReloadMutation:ce,modelsQuery:J,navigate:T,newChatSubmissionStartedAt:He,openProjectFolder:xe,pendingTaskSelection:Ue,projectDefaultsMutation:Oe,projectDefaultsQuery:De,projectName:ot,projectRoots:p?.roots??[],projectOpenCapabilitiesQuery:fe,providerConnectionQuery:ie,projectFolderOpenDisabled:be===void 0||me.isPending,projectPath:st,projectPathOpenLockRef:ye,projectPathOpenMutation:me,projectPathOpenMutationRef:ve,taskAttachmentOpenMutation:_e,projectRuntime:b,projectTaskState:Z,projects:l,queryClient:E,refreshProjectGitStatus:x,renameMutation:lt,requestNotificationPermission:S,retry:C,runtime:X,selectedFileChange:dt,selectedFileReview:pt,selectedRootId:_,selectedRootPath:v,selectedSourceFile:ft,selectedSubagent:ht,setFileDiffSelection:Xe,setFileReviewSelection:Qe,setFileTreeExpansion:Le,setGlobalSettingsSection:Je,setInspectorOpen:A,setInspectorTab:at,setInspectorWidth:M,setPendingTaskSelection:We,setSidebarOpen:N,setSidebarWidth:P,setSourceFileSelection:et,setSelectedRootId:rt,setSubagentDialogSelection:nt,setTaskRenameOpen:Ke,sidebarConnectionState:Ne,sidebarOpen:F,sidebarWidth:I,skillsQuery:Se,startingSnapshot:je,subagents:mt,taskLaunchState:Ae,temporary:n,taskRenameOpen:Ge,tasks:f,t:r,title:ct,viewTask:w,workbenchShellRef:R}}function $i(e,t){return{...e,fastMode:t}}function ea(e,t,n){return e?n??!1:t??n??!1}function ta(e,{projectId:t,taskId:n,temporary:r=!1}){let{activeTaskRenameLockRef:i,getNewChatSubmissionStartedAt:a,globalSettingsQuery:o,markTaskRunning:s,modelsQuery:c,navigate:l,projectDefaultsMutation:u,projectDefaultsQuery:d,providerConnectionQuery:p,projectPathOpenLockRef:m,projectPathOpenMutationRef:h,queryClient:g,renameMutation:_,runtime:v,setFileDiffSelection:y,setFileReviewSelection:b,setInspectorOpen:x,setPendingTaskSelection:S,setSidebarOpen:C,setSourceFileSelection:w,setTaskRenameOpen:T,taskLaunchState:D}=e,O=(0,Q.useCallback)(e=>{y({change:e,projectId:t})},[t,y]),k=(0,Q.useCallback)(e=>{let n=ai(e.path);if(n===`system`){let t=h.current;t.reset(),m.current.run(()=>t.mutateAsync({appId:`system-default`,path:e.path})).catch(()=>void 0);return}w({kind:n,projectId:t,reference:e})},[t,m,h,w]),A=(0,Q.useCallback)(e=>{b({changes:e,projectId:t})},[t,b]),j=()=>{T(!1),requestAnimationFrame(()=>{document.querySelector(`#workbench-task-title-rename`)?.focus()})},M=e=>i.current.run(async()=>{if(n!==void 0)try{let r=await _.mutateAsync({projectId:t,taskId:n,title:e});ce(g,r.task),j()}catch{}}),N=(0,Q.useCallback)(e=>{g.setQueryData([`projects`,e.projectId,`tasks`],t=>xe(t,e)),g.setQueryData([`projects`,e.projectId,`tasks`,f],t=>t===void 0?void 0:[e,...t.filter(t=>t.id!==e.id)])},[g]),P=(0,Q.useCallback)(e=>{N(e),S({projectId:e.projectId,taskId:e.id})},[N,S]),F=(0,Q.useCallback)((e,n,i,o,c=[])=>{if(N(e),n!==void 0&&i!==void 0&&o!==void 0){let r=a()??n.startedAt;g.setQueryData(Zi(t,e.id),{input:i,messageAttachments:c,settings:o,...r===null?{}:{submissionStartedAt:r},task:e,turn:n})}n!==void 0&&s(t,e.id),S(void 0),l({...r?{params:{taskId:e.id},to:`/temporary/t/$taskId`}:{params:{projectId:t,taskId:e.id},to:`/p/$projectId/t/$taskId`}})},[N,a,s,l,t,g,S,r]),I=c.data?.data??[],L=o.data?.settings,R=d.data?.settings,z=p.data!==void 0&&E(p.data),B=r?L:R,V=I.find(e=>e.id===B?.model)??I.find(e=>e.isDefault)??I[0],H=(0,Q.useMemo)(()=>({approvalPolicy:B?.approvalPolicy??L?.approvalPolicy??`on-request`,approvalsReviewer:B?.approvalsReviewer??L?.approvalsReviewer??`user`,model:V?.id??B?.model??``,reasoningEffort:B?.reasoningEffort??V?.defaultReasoningEffort??``,sandboxMode:B?.sandboxMode??`workspace-write`}),[V,B,L]),[U,W]=(0,Q.useState)(),G=r?U??H:H,K=ea(r,R?.fastMode,L?.fastMode),q=async(e,t)=>{r||await u.mutateAsync($i(e,t))},ee=async(e,t,n)=>{if(r){W(e);return}await q(e,n)},te=(0,Q.useCallback)(e=>{l({params:{projectId:e},to:`/p/$projectId`})},[l]),J=()=>{C(!1),requestAnimationFrame(()=>{document.querySelector(`#workbench-sidebar-toggle`)?.focus()})},Y=()=>{x(!1),requestAnimationFrame(()=>{document.querySelector(`#workbench-inspector-toggle`)?.focus()})},ne=D?.turn.id?v.snapshot?.turns.find(e=>e.id===D.turn.id)?.items.some(e=>e.type===`message`&&e.role===`user`)===!0:!1;return(0,Q.useEffect)(()=>{n!==void 0&&ne&&g.removeQueries({exact:!0,queryKey:Zi(t,n)})},[ne,t,g,n]),(0,Q.useEffect)(()=>{let e=v.snapshot;n===void 0||e===void 0||g.setQueryData([`projects`,t,`tasks`],t=>ie(t,e))},[t,g,v.snapshot,n]),(0,Q.useEffect)(()=>{let e=window.matchMedia(Hi),t=window.matchMedia(Ui),n=()=>{e.matches&&C(!1),t.matches&&x(!1)};return e.addEventListener(`change`,n),t.addEventListener(`change`,n),()=>{e.removeEventListener(`change`,n),t.removeEventListener(`change`,n)}},[x,C]),{...e,closeInspector:Y,closeSidebar:J,closeTaskRenameDialog:j,draftSettings:G,fastModeDefault:K,fastModeAvailable:z,globalSettings:L,handleNewTaskProjectChange:te,handleTaskCreated:P,handleTaskStarted:F,models:I,openFileDiff:O,openFileReview:A,openMessageFileReference:k,renameActiveTask:M,updateDraftSettings:ee,updateProjectTaskDefaults:q}}var na=e(r(),1);function ra(e,t,n){let r=Array(e);return new Proxy(r,{get(r,i,a){if(typeof i==`string`){let a=i.charCodeAt(0);if(a>=48&&a<=57){let a=+i;if(Number.isInteger(a)&&a>=0&&a<e){let e=r[a];if(!e){let i=t[a*2];e=r[a]={index:a,key:n(a),start:i,size:t[a*2+1],end:i+t[a*2+1],lane:0}}return e}}if(i===`length`)return e}return Reflect.get(r,i,a)}})}function ia(e,t,n){let r=n.initialDeps??[],i,a=!0;function o(){let o=e();return o.length!==r.length||o.some((e,t)=>r[t]!==e)?(r=o,i=t(...o),n?.onChange&&!(a&&n.skipInitialOnChange)&&n.onChange(i),a=!1,i):i}return o.updateDeps=e=>{r=e},o}function aa(e,t){if(e===void 0)throw Error(`Unexpected undefined${t?`: ${t}`:``}`);return e}var oa=(e,t)=>Math.abs(e-t)<1.01,sa=(e,t,n)=>{let r;return function(...i){e.clearTimeout(r),r=e.setTimeout(()=>t.apply(this,i),n)}},ca,la=()=>{if(ca!==void 0)return ca;if(typeof navigator>`u`)return ca=!1;if(/iP(hone|od|ad)/.test(navigator.userAgent))return ca=!0;let e=navigator.maxTouchPoints;return ca=navigator.platform===`MacIntel`&&e!==void 0&&e>0},ua=e=>{let{offsetWidth:t,offsetHeight:n}=e;return{width:t,height:n}},da=e=>e,fa=e=>{let t=Math.max(e.startIndex-e.overscan,0),n=Math.min(e.endIndex+e.overscan,e.count-1)-t+1,r=Array(n);for(let e=0;e<n;e++)r[e]=t+e;return r},pa=(e,t)=>{let n=e.scrollElement;if(!n)return;let r=e.targetWindow;if(!r)return;let i=e=>{let{width:n,height:r}=e;t({width:Math.round(n),height:Math.round(r)})};if(i(ua(n)),!r.ResizeObserver)return()=>{};let a=new r.ResizeObserver(t=>{let r=()=>{let e=t[0];if(e?.borderBoxSize){let t=e.borderBoxSize[0];if(t){i({width:t.inlineSize,height:t.blockSize});return}}i(ua(n))};e.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(r):r()});return a.observe(n,{box:`border-box`}),()=>{a.unobserve(n)}},ma={passive:!0},ha=typeof window>`u`||`onscrollend`in window,ga=(e,t,n)=>{let r=e.scrollElement;if(!r)return;let i=e.targetWindow;if(!i)return;let a=e.options.useScrollendEvent&&ha,o=0,s=a?null:sa(i,()=>t(o,!1),e.options.isScrollingResetDelay),c=e=>()=>{o=n(r),s?.(),t(o,e)},l=c(!0),u=c(!1);return r.addEventListener(`scroll`,l,ma),a&&r.addEventListener(`scrollend`,u,ma),()=>{r.removeEventListener(`scroll`,l),a&&r.removeEventListener(`scrollend`,u)}},_a=(e,t)=>ga(e,t,t=>{let{horizontal:n,isRtl:r}=e.options;return n?t.scrollLeft*(r&&-1||1):t.scrollTop}),va=(e,t,n)=>{if(n.options.useCachedMeasurements){let t=n.indexFromElement(e),r=n.options.getItemKey(t);return n.itemSizeCache.get(r)??n.options.estimateSize(t)}if(t?.borderBoxSize){let e=t.borderBoxSize[0];if(e)return Math.round(e[n.options.horizontal?`inlineSize`:`blockSize`])}if(!t){let t=n.indexFromElement(e),r=n.options.getItemKey(t),i=n.itemSizeCache.get(r);if(i!==void 0)return i}return e[n.options.horizontal?`offsetWidth`:`offsetHeight`]},ya=(e,{adjustments:t=0,behavior:n},r)=>{var i,a;(a=(i=r.scrollElement)?.scrollTo)==null||a.call(i,{[r.options.horizontal?`left`:`top`]:e+t,behavior:n})},ba=class{constructor(e){this.unsubs=[],this.scrollElement=null,this.targetWindow=null,this.isScrolling=!1,this.scrollState=null,this.measurementsCache=[],this._flatMeasurements=null,this.itemSizeCache=new Map,this.itemSizeCacheVersion=0,this.laneAssignments=new Map,this.pendingMin=null,this.prevLanes=void 0,this.lanesChangedFlag=!1,this.lanesSettling=!1,this.pendingScrollAnchor=null,this.scrollRect=null,this.scrollOffset=null,this.scrollDirection=null,this.scrollAdjustments=0,this._iosDeferredAdjustment=0,this._iosTouching=!1,this._iosJustTouchEnded=!1,this._iosTouchEndTimerId=null,this._intendedScrollOffset=null,this.elementsCache=new Map,this.now=()=>{var e;return((e=this.targetWindow?.performance)?.now)?.call(e)??Date.now()},this.observer=(()=>{let e=null,t=()=>e||(!this.targetWindow||!this.targetWindow.ResizeObserver?null:e=new this.targetWindow.ResizeObserver(e=>{e.forEach(e=>{let t=()=>{let t=e.target,n=this.indexFromElement(t);if(!t.isConnected){this.observer.unobserve(t);for(let[e,n]of this.elementsCache)if(n===t){this.elementsCache.delete(e);break}return}this.shouldMeasureDuringScroll(n)&&this.resizeItem(n,this.options.measureElement(t,e,this))};this.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(t):t()})}));return{disconnect:()=>{var n;(n=t())==null||n.disconnect(),e=null},observe:e=>t()?.observe(e,{box:`border-box`}),unobserve:e=>t()?.unobserve(e)}})(),this.range=null,this.setOptions=e=>{let t={debug:!1,initialOffset:0,overscan:1,paddingStart:0,paddingEnd:0,scrollPaddingStart:0,scrollPaddingEnd:0,horizontal:!1,getItemKey:da,rangeExtractor:fa,onChange:()=>{},measureElement:va,initialRect:{width:0,height:0},scrollMargin:0,gap:0,indexAttribute:`data-index`,initialMeasurementsCache:[],lanes:1,anchorTo:`start`,followOnAppend:!1,scrollEndThreshold:1,isScrollingResetDelay:150,enabled:!0,isRtl:!1,useScrollendEvent:!1,useAnimationFrameWithResizeObserver:!1,laneAssignmentMode:`estimate`,useCachedMeasurements:!1};for(let n in e){let r=e[n];r!==void 0&&(t[n]=r)}let n=this.options,r=null,i=null,a=!1;if(n!==void 0&&n.enabled&&t.enabled&&t.anchorTo===`end`&&this.scrollElement!==null){let e=n.count,o=t.count,s=this.getMeasurements(),c=e>0?s[0]?.key??n.getItemKey(0):null,l=e>0?s[e-1]?.key??n.getItemKey(e-1):null;if(o!==e||e>0&&o>0&&(t.getItemKey(0)!==c||t.getItemKey(o-1)!==l)){a=!0;let c=e>0?this.getVirtualItemForOffset(this.getScrollOffset())??s[0]:null;c&&(r=[c.key,this.getScrollOffset()-c.start]);let u=t.followOnAppend===!0?`auto`:t.followOnAppend||null;u&&o>e&&this.isAtEnd(n.scrollEndThreshold)&&(e===0||t.getItemKey(o-1)!==l)&&(i=u)}}this.options=t,a&&(this.pendingMin=0,this.itemSizeCacheVersion++);let o=!1,s=0;if(r&&this.scrollOffset!==null){let[e,t]=r,n=this.getMeasurements(),{count:i,getItemKey:a}=this.options,c=0;for(;c<i&&a(c)!==e;)c++;if(c<i){let e=n[c];if(e){let n=Math.max(0,e.start+t);n!==this.scrollOffset&&(s=n-this.scrollOffset,this.scrollOffset=n,o=!0)}}}(o||i)&&(this.pendingScrollAnchor=[o?r[0]:null,o?r[1]:0,i,s])},this.notify=e=>{var t,n;(n=(t=this.options).onChange)==null||n.call(t,this,e)},this.maybeNotify=ia(()=>(this.calculateRange(),[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]),e=>{this.notify(e)},{key:!1,debug:()=>this.options.debug,initialDeps:[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]}),this.cleanup=()=>{this.unsubs.filter(Boolean).forEach(e=>e()),this.unsubs=[],this.observer.disconnect(),this.rafId!=null&&this.targetWindow&&(this.targetWindow.cancelAnimationFrame(this.rafId),this.rafId=null),this.scrollState=null,this._iosDeferredAdjustment=0,this._iosTouching=!1,this._iosJustTouchEnded=!1,this.scrollElement=null,this.targetWindow=null},this._didMount=()=>()=>{this.cleanup()},this._willUpdate=()=>{let e=this.options.enabled?this.options.getScrollElement():null;if(this.scrollElement!==e){if(this.cleanup(),!e){this.maybeNotify();return}if(this.scrollElement=e,this.scrollElement&&`ownerDocument`in this.scrollElement?this.targetWindow=this.scrollElement.ownerDocument.defaultView:this.targetWindow=this.scrollElement?.window??null,this.elementsCache.forEach(e=>{this.observer.observe(e)}),this.unsubs.push(this.options.observeElementRect(this,e=>{this.scrollRect=e,this.maybeNotify()})),this.unsubs.push(this.options.observeElementOffset(this,(e,t)=>{if(t&&this._intendedScrollOffset===null&&e===this.scrollOffset)return;this._intendedScrollOffset!==null&&Math.abs(e-this._intendedScrollOffset)<1.5&&(e=this._intendedScrollOffset),this._intendedScrollOffset=null,this.scrollAdjustments=0;let n=this.getScrollOffset();this.scrollDirection=t?n===e?this.scrollDirection:n<e?`forward`:`backward`:null,this.scrollOffset=e,this.isScrolling=t,this._flushIosDeferredIfReady(),this.scrollState&&this.scheduleScrollReconcile(),this.maybeNotify()})),`addEventListener`in this.scrollElement){let e=this.scrollElement,t=()=>{this._iosTouching=!0,this._iosJustTouchEnded=!1,this._iosTouchEndTimerId!==null&&this.targetWindow!=null&&(this.targetWindow.clearTimeout(this._iosTouchEndTimerId),this._iosTouchEndTimerId=null)},n=()=>{this._iosTouching=!1,!(!la()||this.targetWindow==null)&&(this._iosJustTouchEnded=!0,this._iosTouchEndTimerId=this.targetWindow.setTimeout(()=>{this._iosJustTouchEnded=!1,this._iosTouchEndTimerId=null,this._flushIosDeferredIfReady()},150))};e.addEventListener(`touchstart`,t,ma),e.addEventListener(`touchend`,n,ma),this.unsubs.push(()=>{e.removeEventListener(`touchstart`,t),e.removeEventListener(`touchend`,n),this._iosTouchEndTimerId!==null&&this.targetWindow!=null&&(this.targetWindow.clearTimeout(this._iosTouchEndTimerId),this._iosTouchEndTimerId=null)})}this._scrollToOffset(this.getScrollOffset(),{adjustments:void 0,behavior:void 0})}let t=this.pendingScrollAnchor;if(this.pendingScrollAnchor=null,t&&this.scrollElement&&this.options.enabled){let[e,n,r,i]=t;e!==null&&!r&&(la()&&(this.isScrolling||this._iosTouching||this._iosJustTouchEnded)?i!==0&&(this._iosDeferredAdjustment+=i):this._scrollToOffset(this.getScrollOffset(),{adjustments:void 0,behavior:void 0})),r&&this.scrollToEnd({behavior:r})}},this._flushIosDeferredIfReady=()=>{if(this._iosDeferredAdjustment===0||this.isScrolling||this._iosTouching||this._iosJustTouchEnded)return;let e=this.getScrollOffset(),t=this.getMaxScrollOffset();if(e<0||e>t)return;if(this._iosDeferredAdjustment<0&&e>=t-1){this._iosDeferredAdjustment=0;return}let n=this._iosDeferredAdjustment;this._iosDeferredAdjustment=0,this._scrollToOffset(e,{adjustments:this.scrollAdjustments+=n,behavior:void 0})},this.rafId=null,this.getSize=()=>this.options.enabled?(this.scrollRect=this.scrollRect??this.options.initialRect,this.scrollRect[this.options.horizontal?`width`:`height`]):(this.scrollRect=null,0),this.getScrollOffset=()=>this.options.enabled?(this.scrollOffset=this.scrollOffset??(typeof this.options.initialOffset==`function`?this.options.initialOffset():this.options.initialOffset),this.scrollOffset):(this.scrollOffset=null,0),this.getMeasurementOptions=ia(()=>[this.options.count,this.options.paddingStart,this.options.scrollMargin,this.options.getItemKey,this.options.enabled,this.options.lanes,this.options.laneAssignmentMode,this.options.gap],(e,t,n,r,i,a,o,s)=>(this.prevLanes!==void 0&&this.prevLanes!==a&&(this.lanesChangedFlag=!0),this.prevLanes=a,this.pendingMin=null,{count:e,paddingStart:t,scrollMargin:n,getItemKey:r,enabled:i,lanes:a,laneAssignmentMode:o,gap:s}),{key:!1}),this.getMeasurements=ia(()=>[this.getMeasurementOptions(),this.itemSizeCacheVersion],({count:e,paddingStart:t,scrollMargin:n,getItemKey:r,enabled:i,lanes:a,laneAssignmentMode:o,gap:s},c)=>{let l=this.itemSizeCache;if(!i)return this.measurementsCache=[],this.itemSizeCache.clear(),this.laneAssignments.clear(),[];if(this.laneAssignments.size>e)for(let t of this.laneAssignments.keys())t>=e&&this.laneAssignments.delete(t);this.lanesChangedFlag&&(this.lanesChangedFlag=!1,this.lanesSettling=!0,this.measurementsCache=[],this.itemSizeCache.clear(),this.laneAssignments.clear(),this.pendingMin=null),this.measurementsCache.length===0&&!this.lanesSettling&&(this.measurementsCache=this.options.initialMeasurementsCache,this.measurementsCache.forEach(e=>{this.itemSizeCache.set(e.key,e.size)}));let u=this.lanesSettling?0:this.pendingMin??0;if(this.pendingMin=null,this.lanesSettling&&this.measurementsCache.length===e&&(this.lanesSettling=!1),a===1){let i=e*2,a=this._flatMeasurements;if(!a||a.length<i){let e=new Float64Array(i);a&&u>0&&e.set(a.subarray(0,u*2)),a=e,this._flatMeasurements=a}let o;if(u===0)o=t+n;else{let e=u-1;o=a[e*2]+a[e*2+1]+s}for(let t=u;t<e;t++){let e=r(t),n=l.get(e),i=typeof n==`number`?n:this.options.estimateSize(t);a[t*2]=o,a[t*2+1]=i,o+=i+s}let c=ra(e,a,r);return this.measurementsCache=c,c}let d=this.measurementsCache.slice(0,u),f=Array(a).fill(void 0),p=new Float64Array(a),m=0;for(let e=0;e<u;e++){let t=d[e];t&&(f[t.lane]===void 0&&m++,f[t.lane]=e,p[t.lane]=t.end)}for(let i=u;i<e;i++){let e=r(i),c=this.laneAssignments.get(i),u,h,g=o===`estimate`||l.has(e);if(c!==void 0&&this.options.lanes>1){u=c;let e=f[u],r=e===void 0?void 0:d[e];h=r?r.end+s:t+n}else if(m===a){let e=0,t=p[0],n=f[0];for(let r=1;r<a;r++){let i=p[r];(i<t||i===t&&f[r]<n)&&(e=r,t=i,n=f[r])}u=e,h=t+s,g&&this.laneAssignments.set(i,u)}else u=i%this.options.lanes,h=t+n,g&&this.laneAssignments.set(i,u);let _=l.get(e),v=typeof _==`number`?_:this.options.estimateSize(i),y=h+v;d[i]={index:i,start:h,size:v,end:y,key:e,lane:u},f[u]===void 0&&m++,f[u]=i,p[u]=y}return this.measurementsCache=d,d},{key:!1,debug:()=>this.options.debug}),this.calculateRange=ia(()=>[this.getMeasurements(),this.getSize(),this.getScrollOffset(),this.options.lanes],(e,t,n,r)=>e.length===0||t===0?(this.range=null,null):(this.range=Ca(e,t,n,r,r===1&&this._flatMeasurements!=null?this._flatMeasurements:null),this.range),{key:!1,debug:()=>this.options.debug}),this.getVirtualIndexes=ia(()=>{let e=null,t=null,n=this.calculateRange();return n&&(e=n.startIndex,t=n.endIndex),this.maybeNotify.updateDeps([this.isScrolling,e,t]),[this.options.rangeExtractor,this.options.overscan,this.options.count,e,t]},(e,t,n,r,i)=>r===null||i===null?[]:e({startIndex:r,endIndex:i,overscan:t,count:n}),{key:!1,debug:()=>this.options.debug}),this.indexFromElement=e=>{let t=this.options.indexAttribute,n=e.getAttribute(t);return n?parseInt(n,10):(console.warn(`Missing attribute name '${t}={index}' on measured element.`),-1)},this.shouldMeasureDuringScroll=e=>{if(!this.scrollState||this.scrollState.behavior!==`smooth`)return!0;let t=this.scrollState.index??this.getVirtualItemForOffset(this.scrollState.lastTargetOffset)?.index;if(t!==void 0&&this.range){let n=Math.max(this.options.overscan,Math.ceil((this.range.endIndex-this.range.startIndex)/2)),r=Math.max(0,t-n),i=Math.min(this.options.count-1,t+n);return e>=r&&e<=i}return!0},this.measureElement=e=>{if(!e){this.elementsCache.forEach((e,t)=>{e.isConnected||(this.observer.unobserve(e),this.elementsCache.delete(t))});return}let t=this.indexFromElement(e),n=this.options.getItemKey(t),r=this.elementsCache.get(n);r!==e&&(r&&this.observer.unobserve(r),this.observer.observe(e),this.elementsCache.set(n,e)),(!this.isScrolling||this.scrollState)&&this.shouldMeasureDuringScroll(t)&&this.resizeItem(t,this.options.measureElement(e,void 0,this))},this.resizeItem=(e,t)=>{if(e<0||e>=this.options.count)return;let n,r,i,a=this._flatMeasurements;if(this.options.lanes===1&&a!==null)i=this.options.getItemKey(e),r=a[e*2],n=a[e*2+1];else{let t=this.measurementsCache[e];if(!t)return;i=t.key,r=t.start,n=t.size}let o=this.itemSizeCache.get(i)??n,s=t-o;if(s!==0){let a=this.options.anchorTo===`end`&&this.scrollState?.behavior!==`smooth`&&this.getVirtualDistanceFromEnd()<=this.options.scrollEndThreshold,c=a?this.getTotalSize():0,l=this.getScrollOffset()+this.scrollAdjustments,u=this.itemSizeCache.has(i)?r+o<=l&&this.scrollDirection!==`backward`:r<l,d=this.scrollState?.behavior!==`smooth`&&(this.shouldAdjustScrollPositionOnItemSizeChange===void 0?u:this.shouldAdjustScrollPositionOnItemSizeChange(this.measurementsCache[e]??{index:e,key:i,start:r,size:n,end:r+n,lane:0},s,this));(this.pendingMin===null||e<this.pendingMin)&&(this.pendingMin=e),this.itemSizeCache.set(i,t),this.itemSizeCacheVersion++;let f=!1;a?f=this.applyScrollAdjustment(this.getTotalSize()-c):d&&(f=this.applyScrollAdjustment(s)),this.notify(f)}},this.getVirtualItems=ia(()=>[this.getVirtualIndexes(),this.getMeasurements()],(e,t)=>{let n=[];for(let r=0,i=e.length;r<i;r++){let i=t[e[r]];n.push(i)}return n},{key:!1,debug:()=>this.options.debug}),this.getVirtualItemForOffset=e=>{let t=this.getMeasurements();if(t.length===0)return;let n=this._flatMeasurements,r=this.options.lanes===1&&n!=null;return aa(t[xa(0,t.length-1,r?e=>n[e*2]:e=>aa(t[e]).start,e)])},this.getMaxScrollOffset=()=>{if(!this.scrollElement)return 0;if(`scrollHeight`in this.scrollElement)return this.options.horizontal?this.scrollElement.scrollWidth-this.scrollElement.clientWidth:this.scrollElement.scrollHeight-this.scrollElement.clientHeight;{let e=this.scrollElement.document.documentElement;return this.options.horizontal?e.scrollWidth-this.scrollElement.innerWidth:e.scrollHeight-this.scrollElement.innerHeight}},this.getVirtualDistanceFromEnd=()=>Math.max(this.getTotalSize()-this.getSize()-this.getScrollOffset(),0),this.getDistanceFromEnd=()=>Math.max(this.getMaxScrollOffset()-this.getScrollOffset(),0),this.isAtEnd=(e=this.options.scrollEndThreshold)=>this.getDistanceFromEnd()<=e,this.getOffsetForAlignment=(e,t,n=0)=>{if(!this.scrollElement)return 0;let r=this.getSize(),i=this.getScrollOffset();t===`auto`&&(t=e>=i+r?`end`:`start`),t===`center`?e+=(n-r)/2:t===`end`&&(e-=r);let a=this.getMaxScrollOffset();return Math.max(Math.min(a,e),0)},this.getOffsetForIndex=(e,t=`auto`)=>{e=Math.max(0,Math.min(e,this.options.count-1));let n=this.getSize(),r=this.getScrollOffset(),i=this.measurementsCache[e];if(!i)return;if(t===`auto`)if(i.end>=r+n-this.options.scrollPaddingEnd)t=`end`;else if(i.start<=r+this.options.scrollPaddingStart)t=`start`;else return[r,t];if(t===`end`&&e===this.options.count-1)return[this.getMaxScrollOffset(),t];let a=t===`end`?i.end+this.options.scrollPaddingEnd:i.start-this.options.scrollPaddingStart;return[this.getOffsetForAlignment(a,t,i.size),t]},this.scrollToOffset=(e,{align:t=`start`,behavior:n=`auto`}={})=>{this._iosDeferredAdjustment=0;let r=this.getOffsetForAlignment(e,t),i=this.now();this.scrollState={index:null,align:t,behavior:n,startedAt:i,lastTargetOffset:r,stableFrames:0},this._scrollToOffset(r,{adjustments:void 0,behavior:n}),this.scheduleScrollReconcile()},this.scrollToIndex=(e,{align:t=`auto`,behavior:n=`auto`}={})=>{this._iosDeferredAdjustment=0,e=Math.max(0,Math.min(e,this.options.count-1));let r=this.getOffsetForIndex(e,t);if(!r)return;let[i,a]=r,o=this.now();this.scrollState={index:e,align:a,behavior:n,startedAt:o,lastTargetOffset:i,stableFrames:0},this._scrollToOffset(i,{adjustments:void 0,behavior:n}),this.scheduleScrollReconcile()},this.scrollBy=(e,{behavior:t=`auto`}={})=>{let n=this.getScrollOffset()+e,r=this.now();this.scrollState={index:null,align:`start`,behavior:t,startedAt:r,lastTargetOffset:n,stableFrames:0},this._scrollToOffset(n,{adjustments:void 0,behavior:t}),this.scheduleScrollReconcile()},this.scrollToEnd=({behavior:e=`auto`}={})=>{if(this.options.count>0){this.scrollToIndex(this.options.count-1,{align:`end`,behavior:e});return}this.scrollToOffset(Math.max(this.getTotalSize()-this.getSize(),0),{behavior:e})},this.getTotalSize=()=>{let e=this.getMeasurements(),t;if(e.length===0)t=this.options.paddingStart;else if(this.options.lanes===1){let n=e.length-1,r=this._flatMeasurements;t=r==null?e[n]?.end??0:r[n*2]+r[n*2+1]}else{let n=Array(this.options.lanes).fill(null),r=e.length-1;for(;r>=0&&n.some(e=>e===null);){let t=e[r];n[t.lane]===null&&(n[t.lane]=t.end),r--}t=Math.max(...n.filter(e=>e!==null))}return Math.max(t-this.options.scrollMargin+this.options.paddingEnd,0)},this.takeSnapshot=()=>{let e=[];if(this.itemSizeCache.size===0)return e;let t=this.getMeasurements();for(let n of t)n&&this.itemSizeCache.has(n.key)&&e.push({index:n.index,key:n.key,start:n.start,size:n.size,end:n.end,lane:n.lane});return e},this._scrollToOffset=(e,{adjustments:t,behavior:n})=>{this._intendedScrollOffset=e+(t??0),this.options.scrollToFn(e,{behavior:n,adjustments:t},this)},this.measure=()=>{this.pendingMin=null,this.itemSizeCache.clear(),this.laneAssignments.clear(),this.itemSizeCacheVersion++,this.notify(!1)},this.setOptions(e)}applyScrollAdjustment(e,t){return e===0?!1:la()&&(this.isScrolling||this._iosTouching||this._iosJustTouchEnded)?(this._iosDeferredAdjustment+=e,!1):(this._scrollToOffset(this.getScrollOffset(),{adjustments:this.scrollAdjustments+=e,behavior:t}),this.scrollOffset!==null&&(this.scrollOffset+=this.scrollAdjustments,this.scrollOffset<0&&(this.scrollOffset=0),this.scrollAdjustments=0),!0)}scheduleScrollReconcile(){if(!this.targetWindow){this.scrollState=null;return}this.rafId??=this.targetWindow.requestAnimationFrame(()=>{this.rafId=null,this.reconcileScroll()})}reconcileScroll(){if(!this.scrollState||!this.scrollElement)return;if(this.now()-this.scrollState.startedAt>5e3){this.scrollState=null;return}let e=this.scrollState.index==null?void 0:this.getOffsetForIndex(this.scrollState.index,this.scrollState.align),t=e?e[0]:this.scrollState.lastTargetOffset,n=t!==this.scrollState.lastTargetOffset;if(!n&&oa(t,this.getScrollOffset())){if(this.scrollState.stableFrames++,this.scrollState.stableFrames>=1){this.getScrollOffset()!==t&&this._scrollToOffset(t,{adjustments:void 0,behavior:`auto`}),this.scrollState=null;return}}else if(this.scrollState.stableFrames=0,n){let e=this.getSize()||600,n=Math.abs(t-this.getScrollOffset()),r=this.scrollState.behavior===`smooth`&&n>e;this.scrollState.lastTargetOffset=t,r||(this.scrollState.behavior=`auto`),this._scrollToOffset(t,{adjustments:void 0,behavior:r?`smooth`:`auto`})}this.scheduleScrollReconcile()}},xa=(e,t,n,r)=>{for(;e<=t;){let i=(e+t)/2|0,a=n(i);if(a<r)e=i+1;else if(a>r)t=i-1;else return i}return e>0?e-1:0};function Sa(e,t,n){let r=0;for(;r<=t;){let i=(r+t)/2|0,a=e[i*2];if(a<n)r=i+1;else if(a>n)t=i-1;else return i}return r>0?r-1:0}function Ca(e,t,n,r,i){let a=e.length-1;if(e.length<=r)return{startIndex:0,endIndex:a};if(r===1&&i!==null){let e=Sa(i,a,n),r=e,o=n+t;for(;r<a&&i[r*2]+i[r*2+1]<o;)r++;return{startIndex:e,endIndex:r}}let o=xa(0,a,t=>e[t].start,n),s=o;if(r===1)for(;s<a&&e[s].end<n+t;)s++;else if(r>1){let i=Array(r).fill(0);for(;s<a&&i.some(e=>e<n+t);){let t=e[s];i[t.lane]=t.end,s++}let c=Array(r).fill(n+t);for(;o>=0&&c.some(e=>e>=n);){let t=e[o];c[t.lane]=t.start,o--}o=Math.max(0,o-o%r),s=Math.min(a,s+(r-1-s%r))}return{startIndex:o,endIndex:s}}var wa=typeof document<`u`?Q.useLayoutEffect:Q.useEffect;function Ta({useFlushSync:e=!0,directDomUpdates:t=!1,directDomUpdatesMode:n=`transform`,...r}){let i=Q.useReducer(e=>e+1,0)[1],a=Q.useRef({enabled:t,mode:n,container:null,lastSize:null,lastPositions:new WeakMap,prevRange:null});a.current.enabled=t,a.current.mode=n;let o=e=>{let t=a.current;if(!t.enabled||!t.container)return;let n=e.getTotalSize();if(n!==t.lastSize){t.lastSize=n;let r=e.options.horizontal?`width`:`height`;t.container.style[r]=`${n}px`}},s=e=>{let t=a.current;if(!t.enabled||!t.container)return;o(e);let n=!!e.options.horizontal,r=t.mode===`transform`,i=n?`left`:`top`,s=e.options.scrollMargin,c=e.getVirtualItems();for(let a of c){let o=a.start-s,c=e.elementsCache.get(a.key);c&&t.lastPositions.get(c)!==o&&(t.lastPositions.set(c,o),r?c.style.transform=n?`translate3d(${o}px, 0, 0)`:`translate3d(0, ${o}px, 0)`:c.style[i]=`${o}px`)}},c={...r,onChange:(t,n)=>{var o;let c=a.current,l=!0;if(c.enabled){s(t);let e=t.range,n=c.prevRange;l=!n||n.isScrolling!==t.isScrolling||n.startIndex!==e?.startIndex||n.endIndex!==e?.endIndex,l&&(c.prevRange=e?{startIndex:e.startIndex,endIndex:e.endIndex,isScrolling:t.isScrolling}:null)}l&&(e&&n?(0,na.flushSync)(i):i()),(o=r.onChange)==null||o.call(r,t,n)}},[l]=Q.useState(()=>{let e=new ba(c);return Object.assign(e,{containerRef:t=>{let n=a.current;if(n.container=t,n.lastSize=null,t&&n.enabled){let r=e.getTotalSize();n.lastSize=r;let i=e.options.horizontal?`width`:`height`;t.style[i]=`${r}px`}}})});return l.setOptions(c),wa(()=>l._didMount(),[]),wa(()=>(o(l),l._willUpdate())),wa(()=>{s(l)}),l}function Ea(e){return Ta({observeElementRect:pa,observeElementOffset:_a,scrollToFn:ya,...e})}var Da=24;function Oa(e){let t=!1,n,r,i=!0,a=t=>{i=t,e(t)},o=(e,t)=>{n=e.clientHeight,r=e.scrollHeight,e.scrollTo({behavior:t,top:e.scrollHeight}),a(!0)};return{handleConversationChange(e){t=!0,o(e,`auto`)},handleConversationRenderComplete(e){o(e,`auto`),t=!1},handleContentResize(e){n=e.clientHeight,r=e.scrollHeight,i&&o(e,`auto`)},handleScroll(e){if(t){o(e,`auto`);return}let s=n!==void 0&&e.clientHeight!==n,c=r!==void 0&&e.scrollHeight>r;if(n=e.clientHeight,r=e.scrollHeight,i&&(c||s)){o(e,`auto`);return}let l=e.scrollHeight-e.scrollTop-e.clientHeight;a(l<Da)},scrollToBottom(e){o(e,`smooth`)}}}var ka=(0,Q.createContext)(null),Aa={height:768,width:1024},ja=300,Ma=24,Na=3;function Pa(){let e=(0,Q.useContext)(ka);if(e===null)throw Error(`Conversation virtual components must be used within Conversation`);return e}function Fa({children:e,className:t=``,conversationId:n,onScroll:r,scrollToBottomSignal:i,style:a,...o}){let s=(0,Q.useRef)(null),c=(0,Q.useRef)(i),[l,u]=(0,Q.useState)(!0),d=(0,Q.useRef)(void 0),f=d.current??=Oa(u),p=(0,Q.useCallback)(()=>{let e=s.current;e!==null&&f.scrollToBottom(e)},[f]),m=(0,Q.useMemo)(()=>({atBottom:l,containerRef:s,scrollToBottom:p}),[l,p]);return(0,Q.useLayoutEffect)(()=>{let e=s.current;if(e===null)return;f.handleConversationChange(e);let t=-1,n=0,r=0,i=0,a=()=>{f.handleContentResize(e);let o=e.scrollHeight;if(n=o===t?n+1:0,t=o,r+=1,n>=2||r>=60){f.handleConversationRenderComplete(e);return}i=requestAnimationFrame(a)};return i=requestAnimationFrame(a),()=>{cancelAnimationFrame(i)}},[f,n]),(0,Q.useLayoutEffect)(()=>{if(i===void 0||i===c.current)return;c.current=i;let e=s.current;e!==null&&f.scrollToBottom(e)},[f,i]),(0,Q.useEffect)(()=>{let e=s.current;if(e===null)return;let t=e.firstElementChild,n=new ResizeObserver(()=>{f.handleContentResize(e)});return n.observe(e),t!==null&&n.observe(t),()=>{n.disconnect()}},[f]),(0,$.jsx)(ka.Provider,{value:m,children:(0,$.jsx)(`div`,{className:`relative min-h-0 flex-1 overflow-y-auto overscroll-contain ${t}`,onScroll:e=>{let t=e.currentTarget;f.handleScroll(t),r?.(e)},ref:s,role:`log`,"aria-live":`off`,style:{...a,overflowAnchor:`none`},...o,children:e})})}function Ia({className:e=``,...t}){return(0,$.jsx)(`div`,{className:`mx-auto flex w-full max-w-content flex-col px-4 py-6 sm:px-6 sm:py-7 ${e}`,...t})}function La({className:e=``,estimateSize:t,footer:n,getItemKey:r,items:i,renderItem:a,...o}){let s=Pa(),c=(0,Q.useCallback)(()=>s.containerRef.current,[s.containerRef]),l=(0,Q.useCallback)(e=>t?.(i[e],e)??ja,[t,i]),u=(0,Q.useCallback)(e=>r(i[e],e),[r,i]),d=Ea({anchorTo:`end`,count:i.length,estimateSize:l,followOnAppend:`auto`,gap:Ma,getItemKey:u,getScrollElement:c,initialRect:Aa,overscan:Na,scrollEndThreshold:24});return(0,$.jsxs)(`div`,{className:`mx-auto w-full max-w-content px-4 py-6 sm:px-6 sm:py-7 ${e}`,...o,children:[(0,$.jsx)(`div`,{className:`relative w-full`,style:{height:d.getTotalSize()},children:d.getVirtualItems().map(e=>(0,$.jsx)(`div`,{className:`absolute left-0 top-0 w-full`,"data-index":e.index,ref:d.measureElement,style:{transform:`translateY(${String(e.start)}px)`},children:a(i[e.index],e.index)},e.key))}),n===void 0?null:(0,$.jsx)(`div`,{className:i.length===0?`space-y-6`:`mt-6 space-y-6`,children:n})]})}function Ra({className:e=``,onClick:t,type:n=`button`,...r}){let i=(0,Q.useContext)(ka),{t:a}=u(`conversation`);return i?.atBottom===!1?(0,$.jsxs)(l,{variant:`ghost`,className:`sticky bottom-3 left-1/2 z-10 grid size-8 -translate-x-1/2 place-items-center rounded-pill bg-raised text-muted-foreground shadow-floating transition-colors hover:bg-control-hover hover:text-foreground ${e}`,title:a(`agentComponents.scrollToBottom`),type:n,...r,onClick:e=>{i.scrollToBottom(),t?.(e)},children:[(0,$.jsx)(Dn,{className:`size-4`,"aria-hidden":`true`}),(0,$.jsx)(`span`,{className:`sr-only`,children:a(`agentComponents.scrollToBottom`)})]}):null}function za({className:e=``,from:t,...n}){return(0,$.jsx)(`article`,{className:`group/message flex w-full flex-col ${t===`user`?`items-end`:`items-start`} ${e}`,"data-role":t,...n})}function Ba({className:e=``,...t}){return(0,$.jsx)(`div`,{className:`max-w-full text-body leading-6 text-foreground group-data-[role=user]/message:max-w-[var(--ui-layout-message-width)] group-data-[role=user]/message:rounded-surface group-data-[role=user]/message:bg-control group-data-[role=user]/message:px-3.5 group-data-[role=user]/message:py-2.5 ${e}`,...t})}function Va({className:e=``,...t}){return(0,$.jsx)(`div`,{className:`flex items-center gap-1 ${e}`,...t})}function Ha({className:e=``,label:t,tooltip:n,type:r=`button`,...i}){return(0,$.jsxs)(N,{children:[(0,$.jsx)(P,{asChild:!0,children:(0,$.jsx)(l,{variant:`ghost`,"aria-label":t??n,className:`grid size-7 place-items-center rounded-control text-muted-foreground transition-colors hover:bg-control-hover hover:text-foreground ${e}`,type:r,...i})}),n===void 0?null:(0,$.jsx)(I,{children:n})]})}(0,Q.createContext)(null);var Ua=(0,Q.createContext)(null);function Wa({children:e,className:t=``,collapsible:n=!0,defaultOpen:r=!1,status:i,...a}){let o=(0,Q.useMemo)(()=>({collapsible:n,status:i}),[n,i]),s=`group/task w-full text-label text-foreground ${t}`;return(0,$.jsx)(Ua.Provider,{value:o,children:n?(0,$.jsx)(`details`,{className:s,"data-ai-task":``,"data-status":i,open:r,...a,children:e}):(0,$.jsx)(`div`,{className:s,"data-ai-task":``,"data-status":i,...a,children:e})})}var Ga={completed:{icon:(0,$.jsx)(K,{className:`size-3.5`,"aria-hidden":`true`}),labelKey:`agentComponents.status.completed`},error:{icon:(0,$.jsx)(Rn,{className:`size-3.5`,"aria-hidden":`true`}),labelKey:`agentComponents.status.error`},in_progress:{icon:(0,$.jsx)(Fn,{className:`size-3.5 animate-spin`,"aria-hidden":`true`}),labelKey:`agentComponents.status.inProgress`},pending:{icon:(0,$.jsx)(Rt,{className:`size-3.5`,"aria-hidden":`true`}),labelKey:`agentComponents.status.pending`}};function Ka({className:e=``,suffix:t,title:n,...r}){let i=(0,Q.useContext)(Ua),{t:a}=u(`conversation`);if(i===null)throw Error(`TaskTrigger must be used within Task`);let o=Ga[i.status],s=`flex min-h-9 w-full list-none items-center gap-2 py-1 [&::-webkit-details-marker]:hidden ${i.collapsible?`cursor-pointer`:``} ${e}`,c=(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`span`,{className:`shrink-0 ${i.status===`error`?`text-danger`:`text-muted-foreground`}`,children:[o.icon,(0,$.jsx)(`span`,{className:`sr-only`,children:a(o.labelKey)})]}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-medium`,children:n}),t,i.collapsible?(0,$.jsx)(Se,{className:`size-3.5 shrink-0 text-muted-foreground transition-transform group-open/task:rotate-90`,"aria-hidden":`true`}):null]});return i.collapsible?(0,$.jsx)(`summary`,{className:s,...r,children:c}):(0,$.jsx)(`div`,{className:s,...r,children:c})}function qa({className:e=``,...t}){return(0,$.jsx)(`div`,{className:`pb-1 pl-5 ${e}`,...t})}function Ja({className:e=``,...t}){return(0,$.jsx)(`div`,{className:`min-w-0 [overflow-wrap:anywhere] border-l border-separator py-1 pl-3 text-meta leading-5 text-muted-foreground ${e}`,...t})}function Ya({onProjectChange:e,projectId:t,projects:n,scopeName:r}){let i=r??n.find(e=>e.id===t)?.name??``;return(0,$.jsx)(`section`,{className:`grid min-h-0 flex-1 place-items-center px-6`,"aria-label":d.t(`timeline.conversation`,{ns:`conversation`}),children:(0,$.jsxs)(`div`,{className:`w-full max-w-xl text-center`,children:[(0,$.jsx)(er,{"aria-hidden":`true`,className:`mx-auto size-12 text-muted-foreground/55`,strokeWidth:1.35}),(0,$.jsxs)(`h2`,{className:`mt-5 flex flex-wrap items-center justify-center text-balance text-xl font-normal leading-tight text-foreground`,children:[d.t(`timeline.emptyBefore`,{ns:`conversation`}),(0,$.jsxs)(`span`,{className:`group relative mx-1 inline-block max-w-full rounded-control focus-within:shadow-focus`,children:[(0,$.jsx)(`span`,{"aria-hidden":`true`,className:`block max-w-full truncate whitespace-pre font-sans font-normal text-foreground underline decoration-current/35 underline-offset-4 transition-colors group-hover:decoration-current`,children:i}),r===void 0?(0,$.jsx)(`select`,{"aria-label":d.t(`timeline.selectProject`,{ns:`conversation`}),className:`absolute inset-0 size-full min-w-0 cursor-pointer appearance-none opacity-0 outline-none`,onChange:n=>{let r=n.currentTarget.value;r!==t&&e(r)},value:t,children:n.map(e=>(0,$.jsx)(`option`,{value:e.id,children:e.name},e.id))}):null]}),d.t(`timeline.emptyAfter`,{ns:`conversation`})]})]})})}function Xa({message:e,role:t}){return(0,$.jsx)(`section`,{"aria-label":d.t(`timeline.conversation`,{ns:`conversation`}),className:`grid min-h-0 flex-1 place-items-center px-6 text-sm text-muted-foreground`,role:t,children:e})}function Za(e){return e===`pending`?`input-streaming`:e===`running`?`input-available`:e===`declined`?`output-denied`:e===`failed`||e===`interrupted`?`output-error`:`output-available`}function Qa(e){return e===`pending`?`pending`:e===`running`?`in_progress`:e===`failed`||e===`declined`||e===`interrupted`?`error`:`completed`}function $a(e){return typeof e==`string`?e:JSON.stringify(e,null,2)}function eo({item:e,operation:t}){let n=Li(e.status,t.agents),r=Ri(e.status,t.agents);return(0,$.jsx)(Wa,{collapsible:!1,status:n,children:(0,$.jsx)(Ka,{title:`${Ai(t.name)} · ${r}`})})}var to=1e3,no=new Map;function ro(e){let t=no.get(e);if(t!==void 0)return t;let n={full:new Intl.DateTimeFormat(e,{dateStyle:`medium`,timeStyle:`medium`}),time:new Intl.DateTimeFormat(e,{hour:`2-digit`,hour12:!1,minute:`2-digit`})};return no.set(e,n),n}function io(e){let t=Math.floor(e/3600),n=Math.floor(e%3600/60),r=e%60;return{dateTime:`PT${t>0?`${String(t)}H`:``}${n>0?`${String(n)}M`:``}${String(r)}S`,label:t>0?`${String(t)}h ${String(n)}m ${String(r)}s`:n>0?`${String(n)}m ${String(r)}s`:`${String(r)}s`}}function ao({completedAt:e,expanded:t,onToggle:n,startedAt:r}){let[i,a]=(0,Q.useState)(()=>Date.now());if((0,Q.useEffect)(()=>{if(r===null||e!==null)return;let t=globalThis.setInterval(()=>{a(Date.now())},to);return()=>{globalThis.clearInterval(t)}},[e,r]),r===null)return null;let o=Date.parse(r),s=e===null?i:Date.parse(e);if(!Number.isFinite(o)||!Number.isFinite(s))return null;let c=io(Math.max(0,Math.floor((s-o)/1e3))),l=(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`span`,{children:[d.t(`timeline.processing`,{ns:`conversation`}),`\xA0`]}),(0,$.jsx)(`time`,{dateTime:c.dateTime,children:c.label})]}),u=`mb-4 flex w-full items-center border-b border-separator pb-2.5 text-label font-medium text-muted-foreground`;return n===void 0?(0,$.jsx)(`div`,{className:u,"data-turn-processing-time":``,children:l}):(0,$.jsxs)(`button`,{"aria-expanded":t??!1,"aria-label":d.t(t?`timeline.collapseProcess`:`timeline.expandProcess`,{ns:`conversation`}),className:`${u} cursor-pointer text-left transition-colors hover:text-foreground focus-visible:shadow-focus`,"data-turn-processing-time":``,onClick:n,type:`button`,children:[l,(0,$.jsx)(Se,{"aria-hidden":`true`,className:`ms-auto size-3.5 transition-transform ${t?`rotate-90`:``}`})]})}function oo(e,t,n){return e===`user`?t.startedAt??n:t.completedAt??n}function so({lastTurnId:e,modeLabel:t,onForkTask:n,text:r,timestamp:i}){let[a,s]=(0,Q.useState)(!1),c=(0,Q.useRef)(null),l=(0,Q.useRef)(U()),u=i===void 0?void 0:new Date(i),f=o(),p=u===void 0?void 0:ro(f),m=()=>l.current.run(async()=>{try{await navigator.clipboard.writeText(r),q()}catch(e){G(e)}}),h=()=>l.current.run(async()=>{if(!(e===void 0||n===void 0)){c.current??=x(),s(!0);try{await n(e,c.current),q()}catch(e){G(e)}finally{s(!1)}}});return(0,$.jsxs)(Va,{className:`mt-2 text-label text-muted-foreground`,children:[(0,$.jsx)(Ha,{label:d.t(`timeline.copyMessage`,{ns:`conversation`}),onClick:()=>{m()},tooltip:d.t(`timeline.copyMessage`,{ns:`conversation`}),children:(0,$.jsx)(Vn,{className:`size-3.5`,"aria-hidden":`true`})}),e===void 0||n===void 0?null:(0,$.jsx)(Ha,{disabled:a,label:a?d.t(`timeline.forking`,{ns:`conversation`}):d.t(`timeline.fork`,{ns:`conversation`}),onClick:()=>{h()},tooltip:d.t(`timeline.fork`,{ns:`conversation`}),children:(0,$.jsx)(X,{className:`size-3.5`,"aria-hidden":`true`})}),t===void 0?null:(0,$.jsx)(`span`,{children:t}),i===void 0||u===void 0?null:(0,$.jsx)(`time`,{dateTime:i,title:p?.full.format(u),children:p?.time.format(u)})]})}var co=(0,Q.memo)(function({as:e=`p`,children:t,className:n=``,duration:r=2,spread:i=2,style:a,...o}){let s=(0,Q.useMemo)(()=>({"--ui-shimmer-duration":`${String(r)}s`,"--ui-shimmer-spread":`${String(i)}em`,...a}),[r,i,a]);return(0,$.jsx)(e,{className:`agent-shimmer inline-block ${n}`,"data-agent-shimmer":``,style:s,...o,children:t})});co.displayName=`Shimmer`;function lo(e){return e===`__CODEXLY_PENDING_COMMAND__`?d.t(`timeline.commandPending`,{ns:`conversation`}):e}function uo(e){let t=e.findLast(({item:e})=>e.type===`command`||e.type===`tool`||e.type===`activity`?e.status===`pending`||e.status===`running`:e.type===`approval_review`&&e.status===`in_progress`)?.item;if(t?.type===`command`)return{label:lo(t.command),type:`command`};if(t?.type===`tool`)return{label:t.name,type:`operation`};if(t?.type===`activity`)return{label:t.label,type:`operation`};if(t?.type===`approval_review`)return{label:d.t(`timeline.approvalReview.reviewing`,{ns:`conversation`}),type:`operation`};if(e.at(-1)?.item?.type===`plan`)return{label:d.t(`timeline.planGenerating`,{ns:`conversation`}),type:`operation`};let n=e.findLast(({item:e})=>e.type===`message`&&e.role===`assistant`)?.itemIndex??-1,r=e.findLast(({item:e,itemIndex:t})=>t>n&&(e.type===`command`||e.type===`tool`||e.type===`activity`&&e.transient!==!0))?.item;if(r?.type===`command`)return{label:lo(r.command),type:`command`};if(r?.type===`tool`)return{label:r.name,type:`operation`};if(r?.type===`activity`)return{label:r.label,type:`operation`}}function fo({operation:e}){let t=e===void 0?d.t(`timeline.running`,{ns:`conversation`}):d.t(`timeline.runningOperation`,{ns:`conversation`,operation:e.label}),n=e===void 0?d.t(`timeline.aiRunning`,{ns:`conversation`}):d.t(`timeline.aiRunningOperation`,{ns:`conversation`,operation:e.label});return(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2 text-muted-foreground`,role:`status`,children:[e?.type===`command`?(0,$.jsx)(or,{"aria-hidden":`true`,className:`size-3.5 shrink-0`}):null,(0,$.jsx)(co,{"aria-label":n,as:`span`,className:`min-w-0 truncate text-body-small`,children:t})]})}function po(e){let t=e.target;return t.type===`uncommitted_changes`?d.t(`timeline.reviewPrompt.uncommitted`,{ns:`conversation`}):t.type===`base_branch`?d.t(`timeline.reviewPrompt.baseBranch`,{branch:t.branch,ns:`conversation`}):t.type===`commit`?t.title===void 0?d.t(`timeline.reviewPrompt.commit`,{ns:`conversation`,sha:t.sha}):d.t(`timeline.reviewPrompt.commitWithTitle`,{ns:`conversation`,sha:t.sha,title:t.title}):d.t(`timeline.reviewPrompt.custom`,{instructions:t.instructions,ns:`conversation`})}function mo({item:e}){let t=d.t(`timeline.approvalReview.status.${e.status}`,{ns:`conversation`}),n=e.status===`in_progress`?`in_progress`:e.status===`approved`?`completed`:`error`;return(0,$.jsxs)(Wa,{collapsible:!0,defaultOpen:e.status!==`approved`,status:n,children:[(0,$.jsx)(Ka,{title:d.t(`timeline.approvalReview.title`,{ns:`conversation`,status:t})}),(0,$.jsxs)(qa,{children:[(0,$.jsx)(Ja,{children:d.t(`timeline.approvalReview.actionDetail`,{action:d.t(`timeline.approvalReview.action.${e.action.type}`,{ns:`conversation`}),detail:e.action.detail,ns:`conversation`})}),e.riskLevel===void 0?null:(0,$.jsx)(Ja,{children:d.t(`timeline.approvalReview.risk`,{level:d.t(`timeline.approvalReview.riskLevel.${e.riskLevel}`,{ns:`conversation`}),ns:`conversation`})}),e.userAuthorization===void 0?null:(0,$.jsx)(Ja,{children:d.t(`timeline.approvalReview.authorization`,{level:d.t(`timeline.approvalReview.authorizationLevel.${e.userAuthorization}`,{ns:`conversation`}),ns:`conversation`})}),e.rationale===void 0?null:(0,$.jsx)(Ja,{children:d.t(`timeline.approvalReview.rationale`,{ns:`conversation`,rationale:e.rationale})})]})]})}function ho({isLastTurnItem:e,role:t,turnStatus:n}){let r=t===`assistant`&&e&&n===`running`;return{isAnimating:r,mode:r?`streaming`:`static`}}var go=(0,Q.createContext)(`approval-requested`);function _o(e){for(let t of Q.Children.toArray(e))if((0,Q.isValidElement)(t)&&t.type===yo)return typeof t.props.children==`string`?t.props.children:d.t(`agentComponents.approval`,{ns:`conversation`});return d.t(`agentComponents.approval`,{ns:`conversation`})}function vo({approval:e,children:t,className:n=``,state:r,...i}){let{t:a}=u(`conversation`),o=_o(t);return(0,$.jsx)(go.Provider,{value:r,children:(0,$.jsx)(`section`,{"aria-label":a(`agentComponents.approvalRequest`,{title:o}),className:`w-full rounded-surface bg-control px-3.5 py-3 shadow-sm ${n}`,"data-approval-id":e.id,"data-state":r,...i,children:t})})}function yo({children:e,className:t=``,...n}){return(0,$.jsxs)(`h3`,{className:`flex items-center gap-2 text-label font-semibold text-foreground ${t}`,...n,children:[(0,$.jsx)(ar,{className:`size-4 text-muted-foreground`,"aria-hidden":`true`}),e]})}function bo({className:e=``,...t}){return(0,$.jsx)(`div`,{className:`mt-2 break-words rounded-control bg-raised px-3 py-2 text-body-small leading-5 text-foreground shadow-sm ${e}`,...t})}function xo({children:e,className:t=``,...n}){let r=(0,Q.useContext)(go),{t:i}=u(`conversation`);return r!==`approval-rejected`&&r!==`approval-expired`?null:(0,$.jsxs)(`div`,{className:`mt-2 flex items-center gap-1.5 text-label text-muted-foreground ${t}`,...n,children:[(0,$.jsx)(Rn,{className:`size-3.5`,"aria-hidden":`true`}),e??i(`agentComponents.approvalRejected`)]})}function So({className:e=``,...t}){return(0,$.jsx)(`div`,{className:`mt-3 flex flex-wrap justify-end gap-2 ${e}`,...t})}function Co({className:e=``,ref:t,tone:n=`neutral`,type:r=`button`,...i}){return(0,$.jsx)(l,{className:e,ref:t,size:`compact`,type:r,variant:n===`danger`?`destructive`:n===`primary`?`default`:`secondary`,...i})}var wo=[`network`,`file_system`];function To(e,t){let n=new Set(e);return{grantedPermissions:wo.filter(e=>n.has(e)),scope:t}}function Eo(e,t){return e.status===`expired`?`approval-expired`:e.status===`resolved`?`approval-resolved`:t?`approval-submitting`:`approval-requested`}function Do(e){return wo.filter(t=>t===`network`?e.permissions.network!==null:e.permissions.fileSystem!==null)}function Oo({path:e}){let{t}=u(`workbench`);if(e.type===`path`||e.type===`glob`)return e.value;let n=e.kind===`root`?t(`pending.permissionRoot`):e.kind===`minimal`?t(`pending.permissionMinimal`):e.kind===`project_roots`?t(`pending.permissionProjectRoots`):e.kind===`tmpdir`?t(`pending.permissionTmpdir`):e.kind===`slash_tmp`?`/tmp`:e.path??t(`pending.permissionUnknownPath`);return e.subpath===null||e.subpath.length===0?n:`${n}/${e.subpath}`}function ko({permissions:e}){let{t}=u(`workbench`);return(0,$.jsxs)(`div`,{className:`mt-2 space-y-1 pl-6 font-mono text-meta text-muted-foreground`,children:[[...(e.read??[]).map(e=>({access:`read`,path:e})),...(e.write??[]).map(e=>({access:`write`,path:e}))].map((e,n)=>(0,$.jsxs)(`div`,{className:`break-all`,children:[(0,$.jsx)(`span`,{className:`font-sans font-medium text-foreground`,children:t(`pending.permissionAccess.${e.access}`)}),` `,e.path]},`${e.access}:${e.path}:${String(n)}`)),e.entries.map((e,n)=>(0,$.jsxs)(`div`,{className:`break-all`,children:[(0,$.jsx)(`span`,{className:`font-sans font-medium text-foreground`,children:t(`pending.permissionAccess.${e.access}`)}),` `,(0,$.jsx)(Oo,{path:e.path})]},`${e.access}:${String(n)}`)),e.globScanMaxDepth===null?null:(0,$.jsx)(`div`,{className:`font-sans`,children:t(`pending.permissionGlobDepth`,{depth:e.globScanMaxDepth})})]})}function Ao({interactive:e,onResolve:t,request:n}){let{t:r}=u(`workbench`),i=Do(n),[a,o]=(0,Q.useState)(()=>new Set(i)),[s,c]=(0,Q.useState)(!1),[l,d]=(0,Q.useState)(),f=(0,Q.useRef)(null),p=(0,Q.useRef)(U()),m=e&&n.status===`pending`&&!s,h=m&&a.size>0;(0,Q.useEffect)(()=>{h&&f.current?.focus()},[h,n.requestId]);let g=e=>p.current.run(async()=>{if(!m||e!==`deny`&&a.size===0)return;let r=To(e===`deny`?[]:[...a],e===`deny`?`turn`:e),i=JSON.stringify(r),o=l?.fingerprint===i?l:{fingerprint:i,key:x()};d(o),c(!0);try{await t(n,r,o.key),q()}catch(e){G(e),c(!1)}}),_=(e,t)=>{o(n=>{let r=new Set(n);return t?r.add(e):r.delete(e),r})};return(0,$.jsxs)(vo,{approval:{id:n.requestId},state:Eo(n,s),children:[(0,$.jsx)(yo,{children:r(`pending.permissionApproval`)}),(0,$.jsxs)(bo,{children:[(0,$.jsxs)(`div`,{className:`space-y-3`,children:[n.permissions.network===null?null:(0,$.jsx)(`div`,{children:(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(ee,{"aria-label":r(`pending.networkPermission`),checked:a.has(`network`),disabled:!m,id:`${n.requestId}-network`,onCheckedChange:e=>{_(`network`,e===!0)}}),(0,$.jsx)(`label`,{className:`font-medium`,htmlFor:`${n.requestId}-network`,children:r(`pending.networkPermission`)})]})}),n.permissions.fileSystem===null?null:(0,$.jsxs)(`div`,{children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(ee,{"aria-label":r(`pending.fileSystemPermission`),checked:a.has(`file_system`),disabled:!m,id:`${n.requestId}-file-system`,onCheckedChange:e=>{_(`file_system`,e===!0)}}),(0,$.jsx)(`label`,{className:`font-medium`,htmlFor:`${n.requestId}-file-system`,children:r(`pending.fileSystemPermission`)})]}),(0,$.jsx)(ko,{permissions:n.permissions.fileSystem})]})]}),n.reason===null?null:(0,$.jsx)(`p`,{className:`mt-2 text-label text-muted-foreground`,children:n.reason})]}),n.status===`expired`?(0,$.jsx)(xo,{children:r(`pending.expired`)}):(0,$.jsxs)($.Fragment,{children:[e?null:(0,$.jsx)(`p`,{className:`mt-2 text-label text-muted-foreground`,children:r(`pending.previousPending`)}),(0,$.jsxs)(So,{children:[(0,$.jsx)(Co,{disabled:!m,onClick:()=>void g(`deny`),tone:`danger`,children:r(`pending.deny`)}),(0,$.jsx)(Co,{disabled:!h,onClick:()=>void g(`session`),children:r(`pending.allowSession`)}),(0,$.jsx)(Co,{disabled:!h,onClick:()=>void g(`turn`),ref:f,tone:`primary`,children:r(`pending.allowTurn`)})]})]})]})}function jo(e,t,n=x){let r=JSON.stringify(t);return e?.fingerprint===r?e:{fingerprint:r,key:n()}}function Mo(e,t){return e.status===`expired`?`approval-expired`:e.status===`resolved`?`approval-resolved`:t?`approval-submitting`:`approval-requested`}function No({interactive:e,onResolve:t,request:n}){let[r,i]=(0,Q.useState)(!1),[a,o]=(0,Q.useState)(),s=(0,Q.useRef)(U()),c=e&&n.status===`pending`&&!r;return{canSubmit:c,resolve:e=>s.current.run(async()=>{if(!c)return;let r=jo(a,e);o(r),i(!0);try{await t(n,e,r.key),q()}catch(e){G(e),i(!1)}}),submitting:r}}function Po(e){let t={};for(let n of e)n.type===`boolean`?t[n.id]=n.defaultValue??!1:n.type===`multi_select`?t[n.id]=n.defaultValue:n.defaultValue===null?n.required&&n.type===`string`&&(t[n.id]=``):t[n.id]=n.defaultValue;return t}function Fo({field:e}){return e.description===null?null:(0,$.jsx)(`p`,{className:`mt-0.5 text-meta text-muted-foreground`,children:e.description})}function Io(e){return e.format===`email`?`email`:e.format===`uri`?`url`:e.format===`date`?`date`:`text`}function Lo({content:e,controlPrefix:t,disabled:n,field:r,setContent:i}){let a=`mcp-field-${t}-${r.id}`,o=e=>{i(t=>e===void 0?Object.fromEntries(Object.entries(t).filter(([e])=>e!==r.id)):{...t,[r.id]:e})};if(r.type===`boolean`)return(0,$.jsxs)(`label`,{className:`flex min-h-11 cursor-pointer items-center gap-2.5 rounded-control bg-raised px-3 py-2 text-label text-foreground`,htmlFor:a,children:[(0,$.jsx)(`input`,{checked:e[r.id]===!0,disabled:n,id:a,onChange:e=>{o(e.target.checked)},type:`checkbox`}),(0,$.jsxs)(`span`,{children:[(0,$.jsx)(`span`,{className:`block font-medium`,children:r.title}),(0,$.jsx)(Fo,{field:r})]})]});if(r.type===`select`){let t=r.options.findIndex(t=>t.value===e[r.id]);return(0,$.jsxs)(`div`,{children:[(0,$.jsx)(`label`,{className:`text-label font-medium text-foreground`,htmlFor:a,children:r.title}),(0,$.jsx)(Fo,{field:r}),(0,$.jsxs)(`select`,{className:`mt-2 h-11 w-full rounded-control border border-separator-strong bg-raised px-2.5 text-label text-foreground outline-none focus-visible:border-brand focus-visible:shadow-focus workbench:h-8`,disabled:n,id:a,onChange:e=>{let t=r.options[Number(e.target.value)];o(t?.value)},required:r.required,value:t<0?``:String(t),children:[(0,$.jsx)(`option`,{disabled:r.required,value:``,children:`--`}),r.options.map((e,t)=>(0,$.jsx)(`option`,{value:t,children:e.label},e.value))]})]})}if(r.type===`multi_select`){let t=e[r.id],i=Array.isArray(t)?t:[];return(0,$.jsxs)(`fieldset`,{children:[(0,$.jsx)(`legend`,{className:`text-label font-medium text-foreground`,children:r.title}),(0,$.jsx)(Fo,{field:r}),(0,$.jsx)(`div`,{className:`mt-2 grid grid-cols-1 gap-2 @sm:grid-cols-2`,children:r.options.map(e=>(0,$.jsxs)(`label`,{className:`flex min-h-11 cursor-pointer items-center gap-2 rounded-control bg-raised px-3 py-2 text-label text-foreground`,children:[(0,$.jsx)(`input`,{checked:i.includes(e.value),disabled:n,onChange:t=>{o(t.target.checked?[...i,e.value]:i.filter(t=>t!==e.value))},type:`checkbox`}),e.label]},e.value))})]})}let s=e[r.id];return(0,$.jsxs)(`div`,{children:[(0,$.jsx)(`label`,{className:`text-label font-medium text-foreground`,htmlFor:a,children:r.title}),(0,$.jsx)(Fo,{field:r}),(0,$.jsx)(Pe,{className:`mt-2 max-workbench:h-11`,disabled:n,id:a,max:r.type===`string`?void 0:r.maximum??void 0,maxLength:r.type===`string`?r.maxLength??void 0:void 0,min:r.type===`string`?void 0:r.minimum??void 0,minLength:r.type===`string`?r.minLength??void 0:void 0,onChange:e=>{if(r.type===`string`){o(e.target.value);return}o(e.target.value===``?void 0:e.target.valueAsNumber)},required:r.required,step:r.type===`integer`?1:r.type===`number`?`any`:void 0,type:r.type===`string`?Io(r):`number`,value:typeof s==`number`||typeof s==`string`?s:``,variant:`compact`})]})}function Ro({interactive:e,onResolve:t,request:n}){let{t:r}=u(`workbench`),[i,a]=(0,Q.useState)(()=>Po(n.fields)),{canSubmit:o,resolve:s,submitting:c}=No({interactive:e,onResolve:t,request:n});return(0,$.jsxs)(vo,{approval:{id:n.requestId},className:`@container`,state:Mo(n,c),children:[(0,$.jsx)(yo,{children:r(`pending.mcpForm`,{server:n.serverName})}),(0,$.jsx)(bo,{children:n.message}),n.status===`expired`?(0,$.jsx)(xo,{children:r(`pending.expired`)}):(0,$.jsxs)(`form`,{className:`mt-3 space-y-3`,onSubmit:e=>{e.preventDefault(),s({action:`accept`,content:i})},children:[n.fields.map(t=>(0,$.jsx)(Lo,{content:i,controlPrefix:n.requestId,disabled:!e||c,field:t,setContent:a},t.id)),e?null:(0,$.jsx)(`p`,{className:`text-label text-muted-foreground`,children:r(`pending.previousPending`)}),(0,$.jsxs)(So,{children:[(0,$.jsx)(Co,{disabled:!o,onClick:()=>void s({action:`cancel`,content:null}),type:`button`,children:r(`pending.cancel`)}),(0,$.jsx)(Co,{disabled:!o,onClick:()=>void s({action:`decline`,content:null}),tone:`danger`,type:`button`,children:r(`pending.deny`)}),(0,$.jsx)(Co,{disabled:!o,tone:`primary`,type:`submit`,children:r(`pending.submitAnswers`)})]})]})]})}function zo({interactive:e,onResolve:t,request:n}){let{t:r}=u(`workbench`),{canSubmit:i,resolve:a,submitting:o}=No({interactive:e,onResolve:t,request:n});return(0,$.jsxs)(vo,{approval:{id:n.requestId},state:Mo(n,o),children:[(0,$.jsx)(yo,{children:r(`pending.mcpRequest`,{server:n.serverName})}),(0,$.jsxs)(bo,{children:[(0,$.jsx)(`p`,{children:n.message}),n.mode===`unsupported`?(0,$.jsx)(`p`,{className:`mt-2 text-label text-muted-foreground`,children:r(`pending.unsupportedForm`)}):null]}),n.status===`expired`?(0,$.jsx)(xo,{children:r(`pending.expired`)}):(0,$.jsxs)($.Fragment,{children:[e?null:(0,$.jsx)(`p`,{className:`mt-2 text-label text-muted-foreground`,children:r(`pending.previousPending`)}),(0,$.jsxs)(So,{children:[(0,$.jsx)(Co,{disabled:!i,onClick:()=>void a({action:`cancel`,content:null}),children:r(`pending.cancel`)}),(0,$.jsx)(Co,{disabled:!i,onClick:()=>void a({action:`decline`,content:null}),tone:`danger`,children:r(`pending.deny`)}),n.mode===`url`?(0,$.jsx)(l,{asChild:!0,size:`compact`,children:(0,$.jsxs)(`a`,{"aria-disabled":!i,href:n.url,onClick:e=>{if(!i){e.preventDefault();return}a({action:`accept`,content:{}})},rel:`noreferrer noopener`,target:`_blank`,children:[(0,$.jsx)(Hn,{"aria-hidden":`true`}),r(`pending.openUrl`)]})}):null]})]})]})}function Bo(e){return e.request.mode===`form`?(0,$.jsx)(Ro,{...e,request:e.request}):(0,$.jsx)(zo,{...e})}function Vo(e,t){return e.status===`expired`?`approval-expired`:e.status===`resolved`?`approval-resolved`:t?`approval-submitting`:`approval-requested`}function Ho(e){switch(e){case`http`:return`HTTP`;case`https`:return`HTTPS`;case`socks5Tcp`:return`SOCKS5 TCP`;case`socks5Udp`:return`SOCKS5 UDP`}}function Uo({interactive:e,onResolve:t,request:n}){let{t:r}=u(`workbench`),[i,a]=(0,Q.useState)(!1),[o,s]=(0,Q.useState)(),c=(0,Q.useRef)(null),l=(0,Q.useRef)(U()),d=n.type===`command_approval`?n.networkAccess:null,f=d===null?n.type===`command_approval`?r(`pending.commandApproval`):r(`pending.fileChangeApproval`):r(`pending.networkApproval`),p=d===null?n.type===`command_approval`?[n.command,n.cwd].filter(Boolean).join(`
3
- `):n.grantRoot??r(`pending.fileChangeFallback`):`${Ho(d.protocol)}\n${d.host}`,m=e&&n.status===`pending`&&!i,h=m&&n.availableDecisions.includes(`allow`);(0,Q.useEffect)(()=>{h&&c.current?.focus()},[h,n.requestId]);let g=e=>l.current.run(async()=>{if(!m)return;let r={decision:e},i=jo(o,r);s(i),a(!0);try{await t(n,r,i.key),q()}catch(e){G(e),a(!1)}});return(0,$.jsxs)(vo,{approval:{id:n.requestId},state:Vo(n,i),children:[(0,$.jsx)(yo,{children:f}),(0,$.jsxs)(bo,{children:[(0,$.jsx)(`pre`,{className:`whitespace-pre-wrap font-mono text-meta`,children:p}),n.type===`command_approval`&&n.additionalPermissions!=null?(0,$.jsxs)(`div`,{className:`mt-3 space-y-2 border-t border-border pt-2`,children:[(0,$.jsx)(`p`,{className:`text-label font-medium text-foreground`,children:r(`pending.additionalPermissions`)}),n.additionalPermissions.network===null?null:(0,$.jsx)(`p`,{className:`text-label text-muted-foreground`,children:r(`pending.networkPermission`)}),n.additionalPermissions.fileSystem===null?null:(0,$.jsxs)(`div`,{children:[(0,$.jsx)(`p`,{className:`text-label text-muted-foreground`,children:r(`pending.fileSystemPermission`)}),(0,$.jsx)(ko,{permissions:n.additionalPermissions.fileSystem})]})]}):null,n.reason===null?null:(0,$.jsx)(`p`,{className:`mt-2 text-label text-muted-foreground`,children:n.reason})]}),n.status===`expired`?(0,$.jsx)(xo,{children:r(`pending.expired`)}):(0,$.jsxs)($.Fragment,{children:[e?null:(0,$.jsx)(`p`,{className:`mt-2 text-label text-muted-foreground`,children:r(`pending.previousPending`)}),(0,$.jsxs)(So,{children:[n.availableDecisions.includes(`deny`)?(0,$.jsx)(Co,{disabled:!m,onClick:()=>void g(`deny`),tone:`danger`,children:r(`pending.deny`)}):null,n.availableDecisions.includes(`allow_for_session`)?(0,$.jsx)(Co,{disabled:!m,onClick:()=>void g(`allow_for_session`),children:r(`pending.allowSession`)}):null,n.availableDecisions.includes(`allow`)?(0,$.jsx)(Co,{disabled:!m,onClick:()=>void g(`allow`),ref:c,tone:`primary`,children:r(`pending.allow`)}):null]})]})]})}function Wo({interactive:e,onResolve:t,request:n}){let{t:r}=u(`workbench`),[i,a]=(0,Q.useState)({}),[o,s]=(0,Q.useState)(!1),[c,d]=(0,Q.useState)(),f=(0,Q.useRef)(U()),p=n.questions.every(e=>(i[e.id]??``).trim()!==``),m=e&&n.status===`pending`&&p&&!o,h=!e||o,g=()=>f.current.run(async()=>{if(!m)return;s(!0);let e={answers:Object.fromEntries(n.questions.map(e=>[e.id,[(i[e.id]??``).trim()]]))},r=jo(c,e);d(r);try{await t(n,e,r.key),q()}catch(e){G(e),s(!1)}});return n.status===`pending`?(0,$.jsxs)(`form`,{className:`w-full rounded-surface bg-control px-3.5 py-3 shadow-sm`,onSubmit:e=>{e.preventDefault(),g()},children:[(0,$.jsx)(`h3`,{className:`text-label font-semibold text-foreground`,children:r(`pending.inputRequired`)}),(0,$.jsx)(`div`,{className:`mt-3 space-y-4`,children:n.questions.map(e=>(0,$.jsxs)(`fieldset`,{children:[(0,$.jsx)(`legend`,{className:`text-body-small font-medium text-foreground`,children:e.prompt}),(0,$.jsx)(`p`,{className:`mt-0.5 text-meta text-muted-foreground`,children:e.header}),e.type===`choice`?(0,$.jsxs)(`div`,{className:`mt-2 space-y-1.5`,children:[e.options.map((t,n)=>(0,$.jsxs)(`label`,{"aria-label":t.label,className:`flex cursor-pointer items-start gap-2 rounded-control bg-raised px-2.5 py-2 text-label`,htmlFor:`${e.id}-option-${String(n)}`,children:[(0,$.jsx)(`input`,{className:`mt-0.5 size-4 shrink-0 accent-primary`,checked:i[e.id]===t.label,disabled:h,id:`${e.id}-option-${String(n)}`,name:e.id,onChange:()=>{a(n=>({...n,[e.id]:t.label}))},type:`radio`,value:t.label}),(0,$.jsxs)(`span`,{children:[(0,$.jsx)(`span`,{className:`block font-medium text-foreground`,children:t.label}),(0,$.jsx)(`span`,{className:`block text-muted-foreground`,children:t.description})]})]},t.label)),e.isOther?(0,$.jsx)(Pe,{"aria-label":r(`pending.otherAnswer`,{header:e.header}),disabled:h,onChange:t=>{a(n=>({...n,[e.id]:t.target.value}))},placeholder:r(`pending.other`),type:`text`,value:e.options.some(t=>t.label===i[e.id])?``:i[e.id]??``,variant:`compact`}):null]}):e.type===`confirmation`?(0,$.jsx)(`div`,{className:`mt-2 grid grid-cols-2 rounded-control bg-raised p-0.5`,children:e.options.map(t=>(0,$.jsx)(l,{variant:`ghost`,"aria-pressed":i[e.id]===t.label,className:`h-8 rounded-control text-label font-medium text-foreground aria-pressed:bg-foreground aria-pressed:text-raised`,disabled:h,onClick:()=>{a(n=>({...n,[e.id]:t.label}))},type:`button`,children:t.label},t.label))}):(0,$.jsx)(Pe,{"aria-label":e.prompt,className:`mt-2`,disabled:h,onChange:t=>{a(n=>({...n,[e.id]:t.target.value}))},type:e.isSecret?`password`:`text`,value:i[e.id]??``,variant:`compact`})]},e.id))}),e?null:(0,$.jsx)(`p`,{className:`mt-3 text-label text-muted-foreground`,children:r(`pending.previousPending`)}),(0,$.jsx)(`div`,{className:`mt-3 flex justify-end`,children:(0,$.jsx)(l,{disabled:!m,size:`compact`,type:`submit`,children:r(`pending.submitAnswers`)})})]}):(0,$.jsx)(`section`,{className:`w-full rounded-surface bg-control px-3.5 py-3 text-label text-muted-foreground`,children:n.status===`expired`?r(`pending.expired`):r(`pending.processed`)})}function Go(e){return e.request.status===`resolved`?null:e.request.type===`user_input`?(0,$.jsx)(Wo,{interactive:e.interactive,onResolve:e.onResolve,request:e.request}):e.request.type===`permissions_approval`?(0,$.jsx)(Ao,{interactive:e.interactive,onResolve:e.onResolve,request:e.request}):e.request.type===`mcp_elicitation`?(0,$.jsx)(Bo,{interactive:e.interactive,onResolve:e.onResolve,request:e.request}):(0,$.jsx)(Uo,{interactive:e.interactive,onResolve:e.onResolve,request:e.request})}function Ko({change:e,onOpen:t}){let n=wn(e.path),r=d.t(`timeline.fileOperation.${e.kind}`,{ns:`conversation`}),{additions:i,removals:a}=Tn(e);return(0,$.jsxs)(l,{variant:`ghost`,"aria-haspopup":`dialog`,"aria-label":d.t(`timeline.fileChange`,{additions:i,name:n,ns:`conversation`,operation:r,removals:a}),className:`flex min-h-9 w-full items-center gap-2 rounded-control bg-control px-2.5 text-left text-label text-foreground transition-colors hover:bg-control-hover`,"data-file-change":e.kind,onClick:()=>{t(e)},type:`button`,children:[(0,$.jsx)(Ve,{className:`size-3.5 shrink-0 text-muted-foreground`,"aria-hidden":`true`}),(0,$.jsx)(`span`,{className:`shrink-0 text-muted-foreground`,children:r}),(0,$.jsx)(`span`,{className:`min-w-0 truncate font-medium`,children:n}),(0,$.jsxs)(`span`,{className:`ml-auto shrink-0 text-diff-added`,children:[`+`,i]}),(0,$.jsxs)(`span`,{className:`shrink-0 text-diff-removed`,children:[`-`,a]})]})}function qo({changes:e,onOpenFileDiff:t,onReviewFileChanges:n}){let[r,i]=(0,Q.useState)(!1),a=Cn(e),o=r?a.changes:a.changes.slice(0,3),s=a.changes.length-o.length;return(0,$.jsxs)(`section`,{"aria-label":d.t(`timeline.changedFiles`,{count:a.changes.length,ns:`conversation`}),className:`mt-4 w-full overflow-hidden rounded-surface border border-separator-strong bg-raised shadow-control`,children:[(0,$.jsxs)(`header`,{className:`flex min-h-16 items-center gap-3 px-3 py-2.5 shadow-toolbar`,children:[(0,$.jsx)(`span`,{className:`grid size-9 shrink-0 place-items-center rounded-control bg-control text-muted-foreground`,children:(0,$.jsx)(Le,{className:`size-4`,"aria-hidden":`true`})}),(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(`h3`,{className:`text-body-small font-semibold`,children:d.t(`timeline.editedFiles`,{count:a.changes.length,ns:`conversation`})}),(0,$.jsxs)(`p`,{className:`mt-0.5 text-label text-muted-foreground`,children:[(0,$.jsxs)(`span`,{className:`text-diff-added`,children:[`+`,a.additions]}),` `,(0,$.jsxs)(`span`,{className:`text-diff-removed`,children:[`-`,a.removals]})]})]}),(0,$.jsx)(l,{variant:`ghost`,"aria-haspopup":`dialog`,className:`h-8 rounded-control bg-control px-3 text-label font-semibold text-foreground transition-colors hover:bg-control-hover`,onClick:()=>{n(a.changes)},type:`button`,children:d.t(`timeline.review`,{ns:`conversation`})})]}),(0,$.jsxs)(`div`,{className:`space-y-1 p-2`,children:[o.map(e=>(0,$.jsx)(Ko,{change:e,onOpen:t},e.path)),s>0?(0,$.jsx)(l,{variant:`ghost`,className:`h-8 w-full rounded-control px-2.5 text-left text-label font-medium text-muted-foreground transition-colors hover:bg-control-hover hover:text-foreground`,onClick:()=>{i(!0)},type:`button`,children:d.t(`timeline.moreFiles`,{count:s,ns:`conversation`})}):null,r&&a.changes.length>3?(0,$.jsx)(l,{variant:`ghost`,className:`h-8 w-full rounded-control px-2.5 text-left text-label font-medium text-muted-foreground transition-colors hover:bg-control-hover hover:text-foreground`,onClick:()=>{i(!1)},type:`button`,children:d.t(`timeline.collapseFiles`,{ns:`conversation`})}):null]})]})}function Jo(e,t){if(t===`running`)return[];let n=e.findLastIndex(e=>e.type===`message`&&e.role===`assistant`&&e.phase===`final_answer`);return n<0?[]:e.slice(0,n).flatMap(e=>e.type===`message`?e.role===`assistant`&&e.phase===`commentary`?[e.id]:[]:e.type===`file_change`||e.type===`review`||e.type===`activity`&&e.transient===!0?[]:[e.id])}function Yo({error:e,isLoading:t,onLoad:n}){return(0,$.jsxs)(`div`,{className:`mx-auto flex w-full max-w-content flex-col items-center gap-2 px-4 pt-5 sm:px-6 sm:pt-6`,children:[(0,$.jsxs)(l,{disabled:t,onClick:()=>void n(),size:`compact`,type:`button`,variant:`ghost`,children:[t?(0,$.jsx)(m,{"aria-hidden":`true`,className:`animate-spin`}):(0,$.jsx)(Yn,{"aria-hidden":`true`}),d.t(t?`timeline.loadingOlder`:`timeline.loadOlder`,{ns:`conversation`})]}),e===null?null:(0,$.jsx)(`p`,{className:`text-label text-danger`,role:`alert`,children:d.t(`timeline.loadOlderError`,{ns:`conversation`})})]})}function Xo(e){return e?.type===`command`||e?.type===`tool`}function Zo(e,t){let n=[],r=[],i=()=>{let e=r[0];e!==void 0&&(n.push(r.length===1?{itemKey:e,type:`item`}:{itemKeys:r,key:e,type:`operation_group`}),r=[])};for(let a of e){if(Xo(t(a))){r.push(a);continue}i(),n.push({itemKey:a,type:`item`})}return i(),n}function Qo(e){let t=0,n=0,r=!1,i=0;for(let a of e)Xo(a)&&(a.type===`command`?t+=1:i+=1,a.status===`pending`||a.status===`running`?r=!0:(a.status===`failed`||a.status===`declined`||a.status===`interrupted`)&&(n+=1));return{commandCount:t,failedCount:n,isActive:r,toolCount:i}}function $o(e){let t=e.toolCount>0&&e.commandCount>0?d.t(`timeline.operationGroup.summary`,{commandCount:e.commandCount,ns:`conversation`,toolCount:e.toolCount}):e.toolCount>0?d.t(`timeline.operationGroup.toolsOnly`,{count:e.toolCount,ns:`conversation`}):d.t(`timeline.operationGroup.commandsOnly`,{count:e.commandCount,ns:`conversation`});return e.failedCount===0?t:`${t}${d.t(`timeline.operationGroup.failed`,{count:e.failedCount,ns:`conversation`})}`}function es({collapseAfterItemKey:e,children:t,itemKeys:n,store:r}){let[i,a]=(0,Q.useState)(!1),o=(0,Q.useMemo)(()=>{let e=r.getState().itemStoresByKey;return n.flatMap(t=>e.get(t)??[])},[n,r]),s=(0,Q.useMemo)(()=>e===void 0?void 0:r.getState().itemStoresByKey.get(e),[e,r]),c=(0,Q.useMemo)(()=>s===void 0?o:[...o,s],[s,o]),l=(0,Q.useCallback)(e=>{let t=c.map(t=>t.subscribe(e));return()=>{for(let e of t)e()}},[c]),u=(0,Q.useCallback)(()=>c.map(e=>e.getState().revision).join(`,`),[c]);(0,Q.useSyncExternalStore)(l,u,u);let f=Qo(o.map(e=>e.peek())),p=s?.peek();if(!(p?.type===`message`&&p.role===`assistant`&&p.text.trim().length>0))return(0,$.jsx)(Q.Fragment,{children:t});if(f.isActive)return(0,$.jsx)(`div`,{className:`space-y-4`,"data-operation-group-active":``,children:t});let m=$o(f);return(0,$.jsxs)(`details`,{className:`group/operation w-full`,"data-operation-group":``,onToggle:e=>{a(e.currentTarget.open)},open:i,children:[(0,$.jsxs)(`summary`,{"aria-expanded":i,"aria-label":d.t(i?`timeline.operationGroup.collapse`:`timeline.operationGroup.expand`,{ns:`conversation`,summary:m}),className:`flex min-h-9 cursor-pointer list-none items-center gap-2 rounded-surface bg-control px-3 py-1 text-label text-foreground transition-colors hover:bg-control-hover focus-visible:shadow-focus [&::-webkit-details-marker]:hidden`,children:[(0,$.jsx)(Qn,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-muted-foreground`}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 font-medium`,children:m}),f.failedCount===0?(0,$.jsx)(Pn,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-muted-foreground`}):(0,$.jsx)(Rn,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-danger`}),(0,$.jsx)(Se,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-muted-foreground transition-transform group-open/operation:rotate-90`})]}),i?(0,$.jsx)(`div`,{className:`mt-2 space-y-4 border-l border-separator pl-3`,children:t}):null]})}var ts=(0,Q.createContext)(void 0);function ns(){let e=(0,Q.useContext)(ts);if(e===void 0)throw Error(`Attachment components must be used inside Attachment`);return e}function rs({className:e=``,...t}){return(0,$.jsx)(`div`,{className:`flex max-w-full flex-wrap gap-1.5 px-1 pb-1 ${e}`,"data-attachments":`true`,...t})}function is({className:e=``,data:t,onRemove:n,...r}){return(0,$.jsx)(ts.Provider,{value:{data:t,...n===void 0?{}:{onRemove:n}},children:(0,$.jsx)(`div`,{className:`flex h-10 max-w-56 items-center gap-2 rounded-control bg-control px-1.5 text-label text-foreground ${e}`,...r})})}function as({className:e=``,...t}){let{data:n}=ns();return(0,$.jsx)(`div`,{className:`grid size-7 shrink-0 place-items-center overflow-hidden rounded-control bg-raised ${e}`,"data-attachment-preview":n.mediaType.startsWith(`image/`)?`image`:`file`,...t,children:n.mediaType.startsWith(`image/`)?(0,$.jsx)(`img`,{alt:``,className:`size-full object-cover`,height:28,src:n.previewUrl,width:28}):(0,$.jsx)(Un,{className:`size-4 text-muted-foreground`,"aria-hidden":`true`})})}function os({className:e=``,...t}){let{data:n}=ns(),r=n.size<1024?`${String(n.size)} B`:n.size<1024*1024?`${(n.size/1024).toFixed(1)} KB`:`${(n.size/(1024*1024)).toFixed(1)} MB`;return(0,$.jsxs)(`div`,{className:`min-w-0 flex-1 ${e}`,...t,children:[(0,$.jsx)(`div`,{className:`truncate font-medium`,children:n.name}),(0,$.jsx)(`div`,{className:`text-caption text-muted-foreground`,children:r})]})}function ss({children:e,className:t=``,onClick:n,type:r=`button`,...i}){let{data:a,onRemove:o}=ns(),{t:s}=u(`conversation`);return(0,$.jsx)(l,{variant:`ghost`,"aria-label":s(`agentComponents.removeAttachment`,{name:a.name}),className:`grid size-6 shrink-0 place-items-center rounded-control text-muted-foreground hover:bg-control-hover hover:text-foreground ${t}`,onClick:e=>{n?.(e),e.defaultPrevented||o?.()},type:r,...i,children:e??(0,$.jsx)(Et,{className:`size-3.5`,"aria-hidden":`true`})})}var cs=(0,Q.createContext)(null);function ls({children:e,className:t=``,defaultOpen:n,isStreaming:r=!1,open:i,...a}){let o=(0,Q.useMemo)(()=>({isStreaming:r}),[r]);return(0,$.jsx)(cs.Provider,{value:o,children:(0,$.jsx)(`details`,{className:s(`group/plan w-full overflow-hidden rounded-surface border border-separator bg-panel`,t),"data-ai-plan":``,"data-ai-plan-card":``,"data-streaming":r,open:i??n,...a,children:e})})}function us({className:e=``,...t}){return(0,$.jsx)(`summary`,{className:s(`flex min-h-14 cursor-pointer list-none items-start gap-4 px-4 py-3.5 text-foreground transition-colors hover:bg-control-hover/45 [&::-webkit-details-marker]:hidden`,e),...t})}function ds({children:e,className:t=``,...n}){return(0,$.jsx)(`h3`,{className:`text-body-small font-semibold ${(0,Q.useContext)(cs)?.isStreaming===!0?`animate-pulse`:``} ${t}`,...n,children:e})}function fs({children:e,className:t=``,...n}){return(0,$.jsx)(`p`,{className:`mt-1 text-body-small leading-5 text-muted-foreground ${(0,Q.useContext)(cs)?.isStreaming===!0?`animate-pulse`:``} ${t}`,...n,children:e})}function ps({children:e,className:t=``,...n}){return(0,$.jsx)(`span`,{"aria-hidden":`true`,className:`ml-auto inline-flex size-7 shrink-0 items-center justify-center text-muted-foreground ${t}`,...n,children:e??(0,$.jsx)(Nn,{className:`size-4`})})}function ms({className:e=``,...t}){return(0,$.jsx)(`div`,{className:s(`overflow-x-auto border-t border-separator px-4 py-4`,e),...t})}function hs({className:e=``,...t}){return(0,$.jsx)(`div`,{className:s(`flex items-center px-4 pb-4`,e),...t})}function gs({className:e=``,...t}){return(0,$.jsx)(`div`,{className:s(`flex items-center`,e),...t})}var _s=(0,Q.createContext)(null);function vs({children:e,className:t,defaultOpen:n=!1,isStreaming:r=!1,...i}){let a=(0,Q.useMemo)(()=>({isStreaming:r}),[r]);return(0,$.jsx)(_s.Provider,{value:a,children:(0,$.jsx)(`details`,{className:s(`group/reasoning w-full text-muted-foreground`,t),"data-ai-reasoning":``,"data-streaming":r,open:r||n,...i,children:e})})}function ys({className:e,title:t,...n}){let r=(0,Q.useContext)(_s);if(r===null)throw Error(`ReasoningTrigger must be used within Reasoning`);return(0,$.jsxs)(`summary`,{className:s(`flex min-h-9 cursor-pointer list-none items-center gap-2 py-1 text-label transition-colors hover:text-foreground [&::-webkit-details-marker]:hidden`,e),...n,children:[r.isStreaming?(0,$.jsx)(m,{"aria-hidden":`true`,className:`size-3.5 shrink-0 animate-spin`}):(0,$.jsx)(jn,{"aria-hidden":`true`,className:`size-3.5 shrink-0`}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-medium`,children:t}),(0,$.jsx)(Se,{"aria-hidden":`true`,className:`size-3.5 shrink-0 transition-transform group-open/reasoning:rotate-90`})]})}function bs({className:e,...t}){return(0,$.jsx)(`div`,{className:s(`ml-1.5 border-l border-separator py-1 pl-4 text-body-small leading-6 text-muted-foreground`,e),...t})}var xs=e(t(((e,t)=>{var n=[[{color:`0, 0, 0`,class:`ansi-black`},{color:`187, 0, 0`,class:`ansi-red`},{color:`0, 187, 0`,class:`ansi-green`},{color:`187, 187, 0`,class:`ansi-yellow`},{color:`0, 0, 187`,class:`ansi-blue`},{color:`187, 0, 187`,class:`ansi-magenta`},{color:`0, 187, 187`,class:`ansi-cyan`},{color:`255,255,255`,class:`ansi-white`}],[{color:`85, 85, 85`,class:`ansi-bright-black`},{color:`255, 85, 85`,class:`ansi-bright-red`},{color:`0, 255, 0`,class:`ansi-bright-green`},{color:`255, 255, 85`,class:`ansi-bright-yellow`},{color:`85, 85, 255`,class:`ansi-bright-blue`},{color:`255, 85, 255`,class:`ansi-bright-magenta`},{color:`85, 255, 255`,class:`ansi-bright-cyan`},{color:`255, 255, 255`,class:`ansi-bright-white`}]],r=/(https?:\/\/(?:[A-Za-z0-9#;/?:@=+$',_.!~*()[\]-]|&amp;|%[A-Fa-f0-9]{2})+)/gm;t.exports=class e{static escapeForHtml(t){return new e().escapeForHtml(t)}static linkify(t){return new e().linkify(t)}static ansiToHtml(t,n){return new e().ansiToHtml(t,n)}static ansiToJson(t,n){return new e().ansiToJson(t,n)}static ansiToText(t){return new e().ansiToText(t)}constructor(){this.fg=this.bg=this.fg_truecolor=this.bg_truecolor=null,this.bright=0,this.decorations=[]}setupPalette(){this.PALETTE_COLORS=[];for(let e=0;e<2;++e)for(let t=0;t<8;++t)this.PALETTE_COLORS.push(n[e][t].color);let e=[0,95,135,175,215,255],t=(t,n,r)=>e[t]+`, `+e[n]+`, `+e[r];for(let e=0;e<6;++e)for(let n=0;n<6;++n)for(let r=0;r<6;++r)this.PALETTE_COLORS.push(t(e,n,r));let r=8;for(let e=0;e<24;++e,r+=10)this.PALETTE_COLORS.push(r+`, `+r+`, `+r)}escapeForHtml(e){return e.replace(/[&<>\"]/gm,e=>e==`&`?`&amp;`:e==`"`?`&quot;`:e==`<`?`&lt;`:e==`>`?`&gt;`:``)}linkify(e){return e.replace(r,e=>`<a href="${e}">${e}</a>`)}ansiToHtml(e,t){return this.process(e,t,!0)}ansiToJson(e,t){return t||={},t.json=!0,t.clearLine=!1,this.process(e,t,!0)}ansiToText(e){return this.process(e,{},!1)}process(e,t,n){let r=this,i=e.split(/\033\[/),a=i.shift();t??={},t.clearLine=/\r/.test(e);let o=i.map(e=>this.processChunk(e,t,n));if(t&&t.json){let e=r.processChunkJson(``);return e.content=a,e.clearLine=t.clearLine,o.unshift(e),t.remove_empty&&(o=o.filter(e=>!e.isEmpty())),o}else o.unshift(a);return o.join(``)}processChunkJson(e,t,r){t=t===void 0?{}:t;let i=t.use_classes=t.use_classes!==void 0&&t.use_classes,a=t.key=i?`class`:`color`,o={content:e,fg:null,bg:null,fg_truecolor:null,bg_truecolor:null,isInverted:!1,clearLine:t.clearLine,decoration:null,decorations:[],was_processed:!1,isEmpty:()=>!o.content},s=e.match(/^([!\x3c-\x3f]*)([\d;]*)([\x20-\x2c]*[\x40-\x7e])([\s\S]*)/m);if(!s)return o;o.content=s[4];let c=s[2].split(`;`);if(s[1]!==``||s[3]!==`m`||!r)return o;let l=this;for(;c.length>0;){let e=c.shift(),t=parseInt(e);if(isNaN(t)||t===0)l.fg=l.bg=null,l.decorations=[];else if(t===1)l.decorations.push(`bold`);else if(t===2)l.decorations.push(`dim`);else if(t===3)l.decorations.push(`italic`);else if(t===4)l.decorations.push(`underline`);else if(t===5)l.decorations.push(`blink`);else if(t===7)l.decorations.push(`reverse`);else if(t===8)l.decorations.push(`hidden`);else if(t===9)l.decorations.push(`strikethrough`);else if(t===21)l.removeDecoration(`bold`);else if(t===22)l.removeDecoration(`bold`),l.removeDecoration(`dim`);else if(t===23)l.removeDecoration(`italic`);else if(t===24)l.removeDecoration(`underline`);else if(t===25)l.removeDecoration(`blink`);else if(t===27)l.removeDecoration(`reverse`);else if(t===28)l.removeDecoration(`hidden`);else if(t===29)l.removeDecoration(`strikethrough`);else if(t===39)l.fg=null;else if(t===49)l.bg=null;else if(t>=30&&t<38)l.fg=n[0][t%10][a];else if(t>=90&&t<98)l.fg=n[1][t%10][a];else if(t>=40&&t<48)l.bg=n[0][t%10][a];else if(t>=100&&t<108)l.bg=n[1][t%10][a];else if(t===38||t===48){let e=t===38;if(c.length>=1){let t=c.shift();if(t===`5`&&c.length>=1){let t=parseInt(c.shift());if(t>=0&&t<=255)if(!i)this.PALETTE_COLORS||l.setupPalette(),e?l.fg=this.PALETTE_COLORS[t]:l.bg=this.PALETTE_COLORS[t];else{let r=t>=16?`ansi-palette-`+t:n[+(t>7)][t%8].class;e?l.fg=r:l.bg=r}}else if(t===`2`&&c.length>=3){let t=parseInt(c.shift()),n=parseInt(c.shift()),r=parseInt(c.shift());if(t>=0&&t<=255&&n>=0&&n<=255&&r>=0&&r<=255){let a=t+`, `+n+`, `+r;i?e?(l.fg=`ansi-truecolor`,l.fg_truecolor=a):(l.bg=`ansi-truecolor`,l.bg_truecolor=a):e?l.fg=a:l.bg=a}}}}}return l.fg===null&&l.bg===null&&l.decorations.length===0?o:(o.fg=l.fg,o.bg=l.bg,o.fg_truecolor=l.fg_truecolor,o.bg_truecolor=l.bg_truecolor,o.decorations=l.decorations,o.decoration=l.decorations.slice(-1).pop()||null,o.was_processed=!0,o)}processChunk(e,t,r){t||={};let i=this.processChunkJson(e,t,r),a=t.use_classes;if(i.decorations=i.decorations.filter(e=>{if(e===`reverse`){i.fg||=n[0][7][a?`class`:`color`],i.bg||=n[0][0][a?`class`:`color`];let e=i.fg;i.fg=i.bg,i.bg=e;let t=i.fg_truecolor;return i.fg_truecolor=i.bg_truecolor,i.bg_truecolor=t,i.isInverted=!0,!1}return!0}),t.json)return i;if(i.isEmpty())return``;if(!i.was_processed)return i.content;let o=[],s=[],c=[],l={},u=e=>{let t=[],n;for(n in e)e.hasOwnProperty(n)&&t.push(`data-`+n+`="`+this.escapeForHtml(e[n])+`"`);return t.length>0?` `+t.join(` `):``};return i.isInverted&&(l[`ansi-is-inverted`]=`true`),i.fg&&(a?(o.push(i.fg+`-fg`),i.fg_truecolor!==null&&(l[`ansi-truecolor-fg`]=i.fg_truecolor,i.fg_truecolor=null)):o.push(`color:rgb(`+i.fg+`)`)),i.bg&&(a?(o.push(i.bg+`-bg`),i.bg_truecolor!==null&&(l[`ansi-truecolor-bg`]=i.bg_truecolor,i.bg_truecolor=null)):o.push(`background-color:rgb(`+i.bg+`)`)),i.decorations.forEach(e=>{if(a){s.push(`ansi-`+e);return}e===`bold`?s.push(`font-weight:bold`):e===`dim`?s.push(`opacity:0.5`):e===`italic`?s.push(`font-style:italic`):e===`hidden`?s.push(`visibility:hidden`):e===`strikethrough`?c.push(`line-through`):c.push(e)}),c.length&&s.push(`text-decoration:`+c.join(` `)),a?`<span class="`+o.concat(s).join(` `)+`"`+u(l)+`>`+i.content+`</span>`:`<span style="`+o.concat(s).join(`;`)+`"`+u(l)+`>`+i.content+`</span>`}removeDecoration(e){let t=this.decorations.indexOf(e);t>=0&&this.decorations.splice(t,1)}}}))(),1);function Ss(e){return typeof e==`string`?e:e.materialize()}function Cs(){let e=new xs.default,t=[],n=``,r=()=>{e=new xs.default,t=[],n=``};return{parse(i,a=0){let o=i[a];if(o===void 0)return r(),[];let s=t.findIndex(e=>e.id===o.id&&e.text===o.text);t.length>0&&s<0?r():s>0&&(t=t.slice(s));let c=0;for(let e of t){let t=i[a+c];if(t?.id!==e.id||t.text!==e.text)break;c+=1}if(c<t.length){let i=t[c];i===void 0?r():(e=ws(i.leadingState),n=i.leadingPendingSequence,t=t.slice(0,c))}let l=a+c;for(;l<i.length;l+=1){let r=i[l];if(r===void 0)continue;let a=n,o=Ts(e),{complete:s,pending:c}=Ds(`${n}${r.text}`);n=c;let u=e.ansiToJson(s,{remove_empty:!0}),d=u[0];d!==void 0&&!s.startsWith(`\x1B[`)&&Es(d,o),t.push({entries:u,id:r.id,leadingPendingSequence:a,leadingState:o,text:r.text})}return t.flatMap(e=>e.entries)}}}function ws(e){let t=new xs.default,n=t;return n.bg=e.bg,n.bg_truecolor=e.bg_truecolor,n.decorations=[...e.decorations],n.fg=e.fg,n.fg_truecolor=e.fg_truecolor,t}function Ts(e){let t=e;return{bg:t.bg,bg_truecolor:t.bg_truecolor,decorations:[...t.decorations],fg:t.fg,fg_truecolor:t.fg_truecolor}}function Es(e,t){t.fg===null&&t.bg===null&&t.decorations.length===0||(t.fg!==null&&(e.fg=t.fg),t.bg!==null&&(e.bg=t.bg),t.fg_truecolor!==null&&(e.fg_truecolor=t.fg_truecolor),t.bg_truecolor!==null&&(e.bg_truecolor=t.bg_truecolor),e.decorations=[...t.decorations],e.decoration=t.decorations.at(-1)??null,e.was_processed=!0)}function Ds(e){let t=e.lastIndexOf(`\x1B`);if(t<0)return{complete:e,pending:``};let n=e.slice(t);if(n===`\x1B`||n===`\x1B[`)return{complete:e.slice(0,t),pending:n};if(!n.startsWith(`\x1B[`))return{complete:e,pending:``};for(let t=2;t<n.length;t+=1){let r=n.charCodeAt(t);if(r>=64&&r<=126)return{complete:e,pending:``}}return{complete:e.slice(0,t),pending:n}}var Os=(0,Q.createContext)(null);function ks(e){let t=new Set(e.decorations),n=e.fg_truecolor||e.fg,r=e.bg_truecolor||e.bg,i=t.has(`reverse`),a=i?r:n,o=i?n:r,s=[t.has(`underline`)?`underline`:null,t.has(`strikethrough`)?`line-through`:null].filter(e=>e!==null);return{...o?{backgroundColor:`rgb(${o})`}:{},...a?{color:`rgb(${a})`}:{},...t.has(`bold`)?{fontWeight:700}:{},...t.has(`dim`)?{opacity:.5}:{},...t.has(`hidden`)?{visibility:`hidden`}:{},...t.has(`italic`)?{fontStyle:`italic`}:{},...s.length>0?{textDecorationLine:s.join(` `)}:{}}}function As({output:e}){let t=(0,Q.useRef)(Cs());return(0,$.jsx)(`span`,{className:`block whitespace-pre-wrap break-words`,children:(0,Q.useMemo)(()=>typeof e==`string`?xs.default.ansiToJson(e,{remove_empty:!0}):t.current.parse(e.chunks,e.startIndex),[e]).map((e,t)=>{let n=ks(e);return Object.keys(n).length===0?e.content:(0,$.jsx)(`span`,{style:n,children:e.content},`${t.toString()}:${e.content.length.toString()}`)})})}function js(){let e=(0,Q.useContext)(Os);if(e===null)throw Error(`Terminal components must be rendered inside Terminal`);return e}function Ms({autoScroll:e=!0,children:t,className:n=``,isStreaming:r=!1,output:i,...a}){let o=(0,Q.useMemo)(()=>({autoScroll:e,isStreaming:r,output:i}),[e,r,i]);return(0,$.jsx)(Os.Provider,{value:o,children:(0,$.jsx)(`div`,{className:`mb-2 overflow-hidden rounded-control bg-raised text-foreground shadow-sm ${n}`,"data-streaming":r,"data-terminal":``,...a,children:t})})}function Ns({className:e=``,...t}){return(0,$.jsx)(`div`,{className:`flex min-h-8 items-center border-b border-separator px-2.5 ${e}`,...t})}function Ps({className:e=``,...t}){return(0,$.jsx)(`div`,{className:`text-meta font-medium text-muted-foreground ${e}`,...t})}function Fs({className:e=``,...t}){return(0,$.jsx)(`div`,{className:`ml-auto flex items-center ${e}`,...t})}function Is({className:e=``,onClick:t,onCopy:n,onError:r,timeout:i=2e3,...a}){let{output:o}=js(),{t:s}=u(`conversation`),[c,d]=(0,Q.useState)(!1),f=(0,Q.useRef)(null);(0,Q.useEffect)(()=>()=>{f.current!==null&&clearTimeout(f.current)},[]);let p=async()=>{try{await navigator.clipboard.writeText(Ss(o)),d(!0),n?.(),f.current!==null&&clearTimeout(f.current),f.current=setTimeout(()=>{d(!1)},i)}catch(e){r?.(e instanceof Error?e:Error(`Unable to copy terminal output`))}};return(0,$.jsx)(l,{variant:`ghost`,"aria-label":s(c?`agentComponents.copiedOutput`:`agentComponents.copyOutput`),className:`grid size-7 place-items-center rounded-control text-muted-foreground transition-colors hover:bg-control-hover hover:text-foreground ${e}`,onClick:e=>{t?.(e),e.defaultPrevented||p()},title:s(c?`agentComponents.copied`:`agentComponents.copyOutput`),type:`button`,...a,children:c?(0,$.jsx)(K,{className:`size-3.5`,"aria-hidden":`true`}):(0,$.jsx)(Vn,{className:`size-3.5`,"aria-hidden":`true`})})}function Ls({children:e,className:t=``,...n}){let{autoScroll:r,isStreaming:i,output:a}=js(),{t:o}=u(`conversation`),s=(0,Q.useRef)(null);return(0,Q.useEffect)(()=>{if(!r)return;let e=s.current;e!==null&&(e.scrollTop=e.scrollHeight)},[r,a]),(0,$.jsxs)(`div`,{"aria-busy":i,"aria-live":i?`polite`:`off`,className:`max-h-72 overflow-auto px-3 py-2 font-mono text-meta leading-5 ${t}`,ref:s,...n,children:[(0,$.jsx)(As,{output:a}),i?(0,$.jsx)(`span`,{"aria-label":o(`agentComponents.streamingOutput`),className:`ml-0.5 inline-block h-3.5 w-1.5 animate-pulse bg-muted-foreground align-middle`,role:`status`}):null,e]})}var Rs=24*1024*1024,zs=512*1024;function Bs(e){let t=2166136261;for(let n=0;n<e.length;n+=1)t^=e.charCodeAt(n),t=Math.imul(t,16777619);return(t>>>0).toString(16)}function Vs(e,t){return`${e}:${String(t.length)}:${Bs(t)}`}var Hs=class{maxSourceBytes;#e;constructor(e=Rs,t=128,n=zs){this.maxSourceBytes=n,this.#e=new qt({getRetainedBytes:(e,t)=>an(e)+ln(t),maxBytes:e,maxEntries:t})}get retainedBytes(){return this.#e.retainedBytes}get size(){return this.#e.size}get(e,t){let n=this.#e.get(Vs(e,t));return n?.source===t?n.tokenized:void 0}set(e,t,n){return an(t)>this.maxSourceBytes?!1:this.#e.set(Vs(e,t),{source:t,tokenized:n})}},Us=(0,Q.createContext)(null),Ws=new Hs;function Gs(){let e=(0,Q.useContext)(Us);if(e===null)throw Error(`CodeBlock components must be rendered inside CodeBlock`);return e}function Ks(e){return{background:`transparent`,foreground:`inherit`,lines:e.split(`
4
- `).map(e=>e===``?[]:[{content:e,offset:0}])}}function qs(e){let t=e.htmlStyle,n=e.color??t?.color,r=t?.[`--shiki-dark`],i=e.bgColor??t?.backgroundColor,a=t?.[`--shiki-dark-bg`];return{...t,backgroundColor:i===void 0||a===void 0?i:`light-dark(${i}, ${a})`,color:n===void 0||r===void 0?n:`light-dark(${n}, ${r})`}}async function Js(e,t){if(t===`text`)return Ks(e);let n=Ws.get(t,e);if(n!==void 0)return n;let{highlightCode:r}=await nn(async()=>{let{highlightCode:e}=await import(`./code-highlighter-Cm0xdvAd.js`);return{highlightCode:e}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16])),i=await r(e,t);return Ws.set(t,e,i),i}function Ys({className:e=``,code:t,highlightedLine:n=null,language:r,showLineNumbers:i=!1,...a}){let o=(0,Q.useMemo)(()=>Ks(t),[t]),[s,c]=(0,Q.useState)(o);return(0,Q.useEffect)(()=>{let e=!0;return c(o),Js(t,r).then(t=>{e&&c(t)}).catch(()=>{}),()=>{e=!1}},[t,r,o]),(0,$.jsx)(`div`,{className:`relative min-h-0 overflow-auto ${e}`,...a,children:(0,$.jsx)(`pre`,{className:`m-0 min-w-max bg-transparent py-3 font-mono text-body-small leading-6 text-foreground`,style:{backgroundColor:s.background,color:s.foreground},children:(0,$.jsx)(`code`,{children:s.lines.map((e,t)=>{let r=t+1,a=r===n;return(0,$.jsxs)(`span`,{className:`block min-h-6 px-3 ${i?`grid grid-cols-[4rem_minmax(0,1fr)]`:``} ${a?`bg-brand-soft text-brand-strong`:``}`,"data-code-line":r,"data-highlighted":a?`true`:void 0,children:[i?(0,$.jsx)(`span`,{"aria-hidden":`true`,className:`select-none pr-4 text-right ${a?`text-brand`:`text-muted-foreground`}`,children:r}):null,(0,$.jsx)(`span`,{className:`whitespace-pre`,children:e.length===0?` `:e.map((e,t)=>(0,$.jsx)(`span`,{style:qs(e),children:e.content},`${String(r)}-${String(t)}`))})]},r)})})})})}function Xs({children:e,className:t=``,code:n,highlightedLine:r=null,language:i,showLineNumbers:a=!1,style:o,...s}){let c=(0,Q.useMemo)(()=>({code:n}),[n]);return(0,$.jsx)(Us.Provider,{value:c,children:(0,$.jsxs)(`div`,{className:`relative w-full overflow-hidden rounded-surface bg-raised text-foreground shadow-sm ${t}`,"data-language":i,style:{containIntrinsicSize:`auto 200px`,contentVisibility:`auto`,...o},...s,children:[e,(0,$.jsx)(Ys,{code:n,highlightedLine:r,language:i,showLineNumbers:a})]})})}function Zs({className:e=``,...t}){return(0,$.jsx)(`div`,{className:`flex min-h-8 items-center justify-between border-b border-separator bg-control px-3 text-label text-muted-foreground ${e}`,...t})}function Qs({className:e=``,...t}){return(0,$.jsx)(`div`,{className:`flex min-w-0 items-center gap-2 ${e}`,...t})}function $s({className:e=``,...t}){return(0,$.jsx)(`span`,{className:`truncate font-mono ${e}`,...t})}function ec({className:e=``,...t}){return(0,$.jsx)(`div`,{className:`ml-auto flex items-center gap-1 ${e}`,...t})}function tc({children:e,className:t=``,onClick:n,onCopy:r,onError:i,timeout:a=2e3,...o}){let{code:s}=Gs(),[c,d]=(0,Q.useState)(!1),{t:f}=u(`conversation`),p=(0,Q.useRef)(null);(0,Q.useEffect)(()=>()=>{p.current!==null&&clearTimeout(p.current)},[]);let m=async()=>{try{await navigator.clipboard.writeText(s),d(!0),r?.(),p.current!==null&&clearTimeout(p.current),p.current=setTimeout(()=>{d(!1)},a)}catch(e){i?.(e instanceof Error?e:Error(`Unable to copy code`))}};return(0,$.jsx)(l,{variant:`ghost`,"aria-label":f(c?`agentComponents.copiedCode`:`agentComponents.copyCode`),className:`grid size-7 shrink-0 place-items-center rounded-control text-muted-foreground transition-colors hover:bg-control-hover hover:text-foreground ${t}`,onClick:e=>{n?.(e),e.defaultPrevented||m()},type:`button`,...o,children:e??(c?(0,$.jsx)(K,{className:`size-3.5`,"aria-hidden":`true`}):(0,$.jsx)(Vn,{className:`size-3.5`,"aria-hidden":`true`}))})}var nc=(0,Q.createContext)(null);function rc({className:e=``,defaultOpen:t=!1,onToggle:n,...r}){let[i,a]=(0,Q.useState)(t);return(0,$.jsx)(nc.Provider,{value:i,children:(0,$.jsx)(`details`,{className:`group/tool w-full rounded-surface bg-control px-3 py-1 ${e}`,onToggle:e=>{n?.(e),e.defaultPrevented||a(e.currentTarget.open)},open:i,...r})})}var ic={"approval-requested":{icon:(0,$.jsx)(zn,{className:`size-3.5 text-warning`,"aria-hidden":`true`}),labelKey:`agentComponents.status.waitingApproval`},"approval-responded":{icon:(0,$.jsx)(Pn,{className:`size-3.5 text-brand`,"aria-hidden":`true`}),labelKey:`agentComponents.status.responded`},"input-available":{icon:(0,$.jsx)(Fn,{className:`size-3.5 animate-spin`,"aria-hidden":`true`}),labelKey:`agentComponents.status.running`},"input-streaming":{icon:(0,$.jsx)(Rt,{className:`size-3.5`,"aria-hidden":`true`}),labelKey:`agentComponents.status.pending`},"output-available":{icon:(0,$.jsx)(Pn,{className:`size-3.5`,"aria-hidden":`true`}),labelKey:`agentComponents.status.completed`},"output-denied":{icon:(0,$.jsx)(Rn,{className:`size-3.5 text-warning`,"aria-hidden":`true`}),labelKey:`agentComponents.status.denied`},"output-error":{icon:(0,$.jsx)(Rn,{className:`size-3.5 text-danger`,"aria-hidden":`true`}),labelKey:`agentComponents.status.error`}};function ac({className:e=``,state:t,title:n,...r}){let i=ic[t],{t:a}=u(`conversation`);return(0,$.jsxs)(`summary`,{className:`flex min-h-9 cursor-pointer list-none items-center gap-2 text-label text-foreground [&::-webkit-details-marker]:hidden ${e}`,...r,children:[(0,$.jsx)(ur,{className:`size-3.5 text-muted-foreground`,"aria-hidden":`true`}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-medium`,children:n}),(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1 ${t===`output-error`?`text-danger`:`text-muted-foreground`}`,children:[i.icon,a(i.labelKey)]}),(0,$.jsx)(Se,{className:`size-3.5 text-muted-foreground transition-transform group-open/tool:rotate-90`,"aria-hidden":`true`})]})}function oc({children:e}){return(0,Q.useContext)(nc)===!1?null:e}function sc({className:e=``,...t}){return(0,$.jsx)(oc,{children:(0,$.jsx)(`div`,{className:`mb-2 space-y-4 rounded-control bg-raised px-3 py-3 text-muted-foreground shadow-sm ${e}`,...t})})}function cc(e){try{return JSON.stringify(e,null,2)}catch{return String(e)}}function lc({className:e=``,input:t,...n}){let{t:r}=u(`conversation`);return(0,$.jsxs)(`div`,{className:`space-y-2 overflow-hidden ${e}`,...n,children:[(0,$.jsx)(`h4`,{className:`text-meta font-medium uppercase tracking-wide text-muted-foreground`,children:r(`agentComponents.toolInput`)}),(0,$.jsx)(Xs,{code:cc(t),language:`json`})]})}function uc({className:e=``,errorText:t,output:n,...r}){let{t:i}=u(`conversation`);if(n===void 0&&t===void 0)return null;let a=(0,Q.isValidElement)(n)?n:n===void 0?null:(0,$.jsx)(Xs,{code:cc(n),language:`json`});return(0,$.jsxs)(`div`,{className:`space-y-2 ${e}`,...r,children:[(0,$.jsx)(`h4`,{className:`text-meta font-medium uppercase tracking-wide ${t===void 0?`text-muted-foreground`:`text-danger`}`,children:i(t===void 0?`agentComponents.toolResult`:`agentComponents.toolError`)}),(0,$.jsxs)(`div`,{className:`overflow-x-auto rounded-surface text-meta [&_table]:w-full ${t===void 0?`text-foreground`:`bg-danger/10 p-3 text-danger`}`,children:[t===void 0?null:(0,$.jsx)(`div`,{className:`whitespace-pre-wrap`,children:t}),a]})]})}function dc({attachment:e,children:t,className:n,url:r}){return(0,$.jsx)(`a`,{"aria-label":d.t(`timeline.downloadAttachment`,{name:e.name,ns:`conversation`}),className:s(`block max-w-full rounded-control transition-opacity hover:opacity-90 focus-visible:shadow-focus`,n),"data-message-attachment":e.kind,download:e.name,href:r,children:t??(0,$.jsxs)(is,{className:`h-12 max-w-64 pe-3 shadow-control`,data:{...e,previewUrl:r},children:[(0,$.jsx)(as,{}),(0,$.jsx)(os,{})]})})}function fc({name:e,triggerChildren:t,triggerClassName:n,url:r}){let{t:i}=u(`conversation`),[a,o]=(0,Q.useState)(!1),s=(0,Q.useId)();return(0,$.jsxs)(ft,{onOpenChange:o,open:a,children:[(0,$.jsx)(yt,{asChild:!0,children:(0,$.jsx)(l,{"aria-label":i(`timeline.showImage`,{name:e}),className:n??`block size-40 max-w-full cursor-zoom-in overflow-hidden rounded-surface bg-control p-0 shadow-control transition-opacity hover:opacity-90 focus-visible:shadow-focus`,"data-message-attachment":`image`,type:`button`,variant:`ghost`,children:t??(0,$.jsx)(`img`,{alt:e,className:`size-full object-cover`,decoding:`async`,height:160,loading:`lazy`,src:r,width:160})})}),(0,$.jsx)($t,{"aria-labelledby":s,className:`h-[min(92dvh,54rem)] max-w-[72rem] overflow-hidden p-0`,"data-message-image-preview":``,children:(0,$.jsxs)(`section`,{className:`grid size-full grid-rows-[auto_minmax(0,1fr)] bg-raised`,children:[(0,$.jsxs)(`header`,{className:`flex min-h-toolbar items-center gap-3 px-3 shadow-toolbar sm:px-4`,children:[(0,$.jsx)(gt,{className:`min-w-0 flex-1 truncate text-body-small`,id:s,children:e}),(0,$.jsxs)(N,{children:[(0,$.jsx)(P,{asChild:!0,children:(0,$.jsx)(l,{"aria-label":i(`timeline.closeImagePreview`),onClick:()=>{o(!1)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(Et,{className:`size-3.5`,"aria-hidden":`true`})})}),(0,$.jsx)(I,{children:i(`timeline.closeImagePreview`)})]})]}),(0,$.jsx)(`div`,{className:`grid min-h-0 place-items-center overflow-hidden bg-content p-2`,children:(0,$.jsx)(`img`,{alt:e,className:`block size-full object-contain`,decoding:`async`,src:r})})]})})]})}var pc=En;function mc({className:e=``,displayName:t,name:n,...r}){return(0,$.jsxs)(`span`,{className:`${pc} ${e}`,...r,children:[(0,$.jsx)(kn,{"aria-hidden":`true`,className:`size-4 shrink-0`}),(0,$.jsx)(`span`,{className:`truncate`,children:t??`$${n}`})]})}var hc=`whitespace-pre-wrap!`;function gc({commandOutput:e,isLastTurnItem:t,item:n,onBuildPlan:r,onOpenFileDiff:i,onOpenSourceFile:a,projectId:o,taskId:c,turnStatus:l}){switch(n.type){case`message`:{let e=n.attachments??[],r=n.role===`user`?n.skills??[]:[],i=ho({isLastTurnItem:t,role:n.role,turnStatus:l}),u=r.length>0||n.text.length>0?(0,$.jsxs)(`div`,{children:[r.length===0?null:(0,$.jsx)(`span`,{className:`inline`,"aria-label":d.t(`timeline.skillsUsed`,{ns:`conversation`}),children:r.map(e=>(0,$.jsx)(mc,{className:`relative top-1 me-1.5 bg-raised px-2 text-body leading-6`,"data-message-skill":e.name,"data-skill-token":``,name:e.name},e.name))}),n.text.length===0?null:(0,$.jsx)(Z,{className:s(r.length>0&&`inline [&>p:first-child]:inline`,n.role===`user`&&hc),...i,onOpenFileReference:a,promptFileReferences:n.role===`user`,children:n.text})]}):null,f=e.length===0?null:(0,$.jsx)(rs,{className:`${n.role===`user`?`justify-end`:`justify-start`} gap-2 px-0 pb-0`,"aria-label":d.t(`timeline.attachments`,{ns:`conversation`}),children:e.map(e=>{let t=y(``,o,c,e.id);return e.kind===`image`?(0,$.jsx)(fc,{name:e.name,url:t},e.id):(0,$.jsx)(dc,{attachment:e,url:t},e.id)})});return n.role===`assistant`?(0,$.jsx)(Ba,{className:`w-full`,children:(0,$.jsxs)(`div`,{className:`flex min-w-0 w-full flex-col gap-2`,children:[f,u]})}):(0,$.jsxs)(`div`,{className:`flex w-full flex-col items-end gap-2`,children:[f,u===null?null:(0,$.jsx)(Ba,{"data-message-text":`true`,children:u})]})}case`review`:return(0,$.jsx)(Ba,{children:(0,$.jsx)(`p`,{children:po(n)})});case`reasoning`:return n.summary.trim().length===0?null:(0,$.jsxs)(vs,{isStreaming:l===`running`,children:[(0,$.jsx)(ys,{title:d.t(l===`running`?`timeline.reasoningStreaming`:`timeline.reasoning`,{ns:`conversation`})}),(0,$.jsx)(bs,{children:(0,$.jsx)(Z,{mode:l===`running`?`streaming`:`static`,children:n.summary})})]});case`approval_review`:return(0,$.jsx)(mo,{item:n});case`command`:{let t=lo(n.command),r=n.output===`__CODEXLY_RETAINED_COMMAND_OUTPUT__`?d.t(`timeline.outputRetained`,{ns:`conversation`}):e?.hasOutput?e:n.output??n.cwd,i=e?.outputTruncated??n.outputTruncated,a=l===`running`&&n.status===`running`;return(0,$.jsxs)(rc,{children:[(0,$.jsx)(ac,{state:Za(n.status),title:t}),(0,$.jsx)(oc,{children:(0,$.jsxs)(`div`,{className:`mb-2 space-y-4`,children:[(0,$.jsx)(lc,{input:{command:n.command,cwd:n.cwd}}),(0,$.jsxs)(Ms,{isStreaming:a,output:r,children:[(0,$.jsxs)(Ns,{children:[(0,$.jsx)(Ps,{children:d.t(`timeline.output`,{ns:`conversation`})}),(0,$.jsx)(Fs,{children:(0,$.jsx)(Is,{})})]}),(0,$.jsx)(Ls,{children:i?(0,$.jsx)(`p`,{className:`mt-2 text-warning`,children:d.t(`timeline.outputTruncated`,{ns:`conversation`})}):null})]})]})})]})}case`file_change`:return n.status===`completed`?l===`running`?(0,$.jsx)(`div`,{className:`space-y-1`,children:n.changes.map(e=>(0,$.jsx)(Ko,{change:e,onOpen:i},e.path))}):null:n.status!==`pending`&&n.status!==`running`?null:(0,$.jsxs)(Wa,{collapsible:n.changes.length>0,status:`in_progress`,children:[(0,$.jsx)(Ka,{title:d.t(`timeline.editingFiles`,{count:n.changes.length,ns:`conversation`})}),n.changes.length===0?null:(0,$.jsx)(qa,{children:n.changes.map(e=>(0,$.jsx)(Ja,{className:`break-all font-mono`,children:e.path},e.path))})]});case`tool`:{let e=Ni(n);if(e!==null)return(0,$.jsx)(eo,{item:n,operation:e});let t=n.status===`failed`||n.status===`declined`||n.status===`interrupted`,r=t&&n.output!==void 0?$a(n.output):void 0;return(0,$.jsxs)(rc,{children:[(0,$.jsx)(ac,{state:Za(n.status),title:n.progress===void 0?n.name:`${n.name} · ${n.progress}`}),(0,$.jsxs)(sc,{children:[n.progress===void 0?null:(0,$.jsx)(`p`,{className:`text-label leading-5 text-muted-foreground`,role:`status`,children:n.progress}),n.input===void 0?null:(0,$.jsx)(lc,{input:n.input}),(0,$.jsx)(uc,{errorText:r,output:t?void 0:n.output})]})]})}case`plan`:{let e=l===`running`&&t;return(0,$.jsxs)(ls,{defaultOpen:!0,isStreaming:e,children:[(0,$.jsxs)(us,{children:[(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(Un,{"aria-hidden":`true`,className:`size-4 shrink-0`}),(0,$.jsx)(ds,{children:d.t(`timeline.plan`,{ns:`conversation`})})]}),(0,$.jsx)(fs,{children:e?d.t(`timeline.planGenerating`,{ns:`conversation`}):d.t(`timeline.planReady`,{ns:`conversation`})})]}),(0,$.jsx)(ps,{})]}),(0,$.jsx)(ms,{children:(0,$.jsx)(Z,{mode:e?`streaming`:`static`,children:n.text})}),e||r===void 0?null:(0,$.jsx)(hs,{className:`justify-end`,children:(0,$.jsx)(gs,{children:(0,$.jsx)(_c,{onBuildPlan:r})})})]})}case`activity`:return n.transient===!0&&n.status!==`pending`&&n.status!==`running`?null:(0,$.jsxs)(Wa,{collapsible:n.detail!==void 0,status:Qa(n.status??`completed`),children:[(0,$.jsx)(Ka,{title:n.label}),n.detail===void 0?null:(0,$.jsx)(qa,{children:(0,$.jsx)(Ja,{children:n.detail})})]});case`runtime_status`:{let e=Qa(n.status);return n.kind===`safety_buffering`?(0,$.jsxs)(Wa,{collapsible:n.fasterModel!==void 0,status:e,children:[(0,$.jsx)(Ka,{title:d.t(`timeline.runtimeStatus.safetyBuffering`,{model:n.model,ns:`conversation`})}),n.fasterModel===void 0?null:(0,$.jsx)(qa,{children:(0,$.jsx)(Ja,{children:d.t(`timeline.runtimeStatus.fasterModel`,{model:n.fasterModel,ns:`conversation`})})})]}):n.kind===`model_rerouted`?(0,$.jsx)(Wa,{collapsible:!1,status:e,children:(0,$.jsx)(Ka,{title:d.t(`timeline.runtimeStatus.modelRerouted`,{fromModel:n.fromModel,ns:`conversation`,toModel:n.toModel})})}):(0,$.jsxs)(Wa,{collapsible:n.detail!==void 0||n.durationMs!==void 0,status:e,children:[(0,$.jsx)(Ka,{title:d.t(`timeline.runtimeStatus.hook`,{eventName:n.eventName,ns:`conversation`})}),n.detail===void 0&&n.durationMs===void 0?null:(0,$.jsxs)(qa,{children:[n.detail===void 0?null:(0,$.jsx)(Ja,{children:n.detail}),n.durationMs===void 0?null:(0,$.jsx)(Ja,{children:d.t(`timeline.runtimeStatus.duration`,{duration:n.durationMs,ns:`conversation`})})]})]})}}}function _c({onBuildPlan:e}){let[t,n]=(0,Q.useState)(!1);return(0,$.jsxs)(l,{disabled:t,onClick:()=>{n(!0),e().then(e=>{e||n(!1)},()=>{n(!1)})},type:`button`,children:[t?(0,$.jsx)(m,{"aria-hidden":`true`,className:`size-3.5 animate-spin`}):null,d.t(`timeline.buildPlan`,{ns:`conversation`})]})}function vc(e,t){let n=[],r=[],i=()=>{let e=r[0];e!==void 0&&(n.push({itemKeys:r,key:e,type:`assistant`}),r=[])};for(let a of e){let e=t.get(a)?.peek();if(e?.type===`review`||e?.type===`message`&&e.role===`user`){i(),n.push({itemKey:a,type:`user`});continue}r.push(a)}return i(),n}function yc(e){return Nt(e,e=>e.revision),e.read()}function bc(e){return[...(e.skills??[]).map(e=>`$${e.name}`),e.text].filter(e=>e.length>0).join(`
5
- `)}function xc({isLastTurnItem:e,itemStore:t,onBuildPlan:n,onOpenFileDiff:r,onOpenSourceFile:i,projectId:a,taskId:o,turnStatus:s}){Nt(t,e=>e.revision);let c=t.peek(),l=c.type===`command`?c:t.read(),u=c.type===`command`?t.readCommandOutput():void 0;return(0,$.jsx)(gc,{...u===void 0?{}:{commandOutput:u},isLastTurnItem:e,item:l,...n===void 0?{}:{onBuildPlan:n},onOpenFileDiff:r,onOpenSourceFile:i,projectId:a,taskId:o,turnStatus:s})}function Sc({isLastTurnItem:e,itemKey:t,onBuildPlan:n,onOpenFileDiff:r,onOpenSourceFile:i,projectId:a,store:o,taskId:s,turnStatus:c}){let l=Nt(o,e=>e.itemStoresByKey.get(t));return l===void 0?null:(0,$.jsx)(xc,{isLastTurnItem:e,itemStore:l,...n===void 0?{}:{onBuildPlan:n},onOpenFileDiff:r,onOpenSourceFile:i,projectId:a,taskId:s,turnStatus:c})}function Cc({itemStore:e,latestSnapshotTimestamp:t,onOpenFileDiff:n,onOpenSourceFile:r,projectId:i,taskId:a,turn:o}){let s=yc(e);if(s.type!==`review`&&(s.type!==`message`||s.role!==`user`))return null;let c=s.type===`review`?po(s):bc(s);return(0,$.jsxs)(za,{from:`user`,children:[(0,$.jsx)(gc,{isLastTurnItem:!1,item:s,onOpenFileDiff:n,onOpenSourceFile:r,projectId:i,taskId:a,turnStatus:o.status}),(0,$.jsx)(so,{...s.type===`review`?{modeLabel:d.t(`timeline.reviewMode`,{ns:`conversation`})}:{timestamp:oo(`user`,o,t)},text:c})]})}function wc({itemKey:e,latestSnapshotTimestamp:t,onOpenFileDiff:n,onOpenSourceFile:r,projectId:i,store:a,taskId:o,turn:s}){let c=Nt(a,t=>t.itemStoresByKey.get(e));return c===void 0?null:(0,$.jsx)(Cc,{itemStore:c,latestSnapshotTimestamp:t,onOpenFileDiff:n,onOpenSourceFile:r,projectId:i,taskId:o,turn:s})}function Tc({itemKeys:e,store:t}){let n=Nt(t,t=>{let n=uo(e.flatMap((e,n)=>{let r=t.itemStoresByKey.get(e)?.peek();return r===void 0?[]:[{item:r,itemIndex:n}]}));return n===void 0?``:`${n.type}\u0000${n.label}`}),r=n.indexOf(`\0`);return(0,$.jsx)(fo,{operation:r<0?void 0:{label:n.slice(r+1),type:n.slice(0,r)}})}function Ec({itemKeys:e,lastTurnItemKey:t,onBuildPlan:n,onOpenFileDiff:r,onOpenSourceFile:i,projectId:a,store:o,taskId:s,turnStatus:c}){let l=o.getState().itemStoresByKey;return Zo(e,e=>l.get(e)?.peek()).map(u=>{let d=(u.type===`item`?[u.itemKey]:u.itemKeys).map(e=>(0,$.jsx)(Sc,{isLastTurnItem:e===t,itemKey:e,...n===void 0?{}:{onBuildPlan:n},onOpenFileDiff:r,onOpenSourceFile:i,projectId:a,store:o,taskId:s,turnStatus:c},e));if(u.type===`item`)return d[0]??null;if(c!==`running`)return(0,$.jsx)(Q.Fragment,{children:d},u.key);let f=e.indexOf(u.itemKeys.at(-1)??u.key),p=e.slice(f+1).find(e=>{let t=l.get(e)?.peek();return t?.type===`message`&&t.role===`assistant`});return(0,Q.createElement)(es,{...p===void 0?{}:{collapseAfterItemKey:p},itemKeys:u.itemKeys,key:u.key,store:o},d)})}var Dc=e=>e;function Oc({itemKeys:e,lastTurnItemKey:t,latestSnapshotTimestamp:n,onOpenFileDiff:r,onForkTask:i,onBuildPlan:a,onOpenSourceFile:o,onReviewFileChanges:s,onToggleProcess:c,processExpanded:l,processItemKeys:u,processToggleAvailable:d,projectId:f,showProcessingTime:p,showRunningShimmer:m,store:h,taskId:g,turn:_}){let v=h.getState().itemStoresByKey,y=[],b=[],x=_.status===`running`||l?e:e.filter(e=>!u.has(e));if(_.status!==`running`)for(let e of x){let t=v.get(e)?.read();t?.type===`message`&&t.role===`assistant`?y.push(t.text):t?.type===`file_change`&&t.status===`completed`&&b.push(...t.changes)}let S=y.join(`
6
-
7
- `);return(0,$.jsxs)(za,{from:`assistant`,children:[p?(0,$.jsx)(ao,{completedAt:_.completedAt,startedAt:_.startedAt,...d?{expanded:l,onToggle:c}:{}}):null,x.length>0||m?(0,$.jsxs)(`div`,{className:`w-full space-y-4`,children:[(0,$.jsx)(Ec,{itemKeys:x,lastTurnItemKey:t,...a===void 0?{}:{onBuildPlan:a},onOpenFileDiff:r,onOpenSourceFile:o,projectId:f,store:h,taskId:g,turnStatus:_.status}),m?(0,$.jsx)(Tc,{itemKeys:e,store:h}):null]}):null,_.status!==`running`&&b.length>0?(0,$.jsx)(qo,{changes:b,onOpenFileDiff:r,onReviewFileChanges:s}):null,_.status!==`running`&&S.trim().length>0?(0,$.jsx)(so,{lastTurnId:_.id,...i===void 0?{}:{onForkTask:i},text:S,timestamp:oo(`assistant`,_,n)}):null]})}function kc({onBuildPlan:e,onForkTask:t,onOpenFileDiff:n,onOpenSourceFile:r,onReviewFileChanges:i,projectId:a,store:o,taskId:s,turnId:c,turnIndex:l,suppressEmptyRunningStatus:u}){let d=Nt(o,e=>e.turnsById[c]),f=Nt(o,e=>e.itemKeysByTurnId[c]??[]),[p,m]=(0,Q.useState)(!1);if(d===void 0)return null;let h=o.getState().snapshotMetadata?.updatedAt??``,g=o.getState().itemStoresByKey,_=vc(f,g),v=new Set(Jo(f.flatMap(e=>g.get(e)?.peek()??[]),d.status)),y=new Set(f.filter(e=>v.has(g.get(e)?.peek().id??``))),b=y.size>0,x=_.findIndex(e=>e.type===`assistant`),S=x>=0,C=f.at(-1);return(0,$.jsxs)(`section`,{"aria-label":`Turn ${String(l+1)}`,className:`space-y-4`,"data-status":d.status,children:[_.map((c,l)=>c.type===`user`?(0,$.jsx)(wc,{itemKey:c.itemKey,latestSnapshotTimestamp:h,onOpenFileDiff:n,onOpenSourceFile:r,projectId:a,store:o,taskId:s,turn:d},c.itemKey):(0,$.jsx)(Oc,{itemKeys:c.itemKeys,lastTurnItemKey:C,latestSnapshotTimestamp:h,...d.status===`completed`&&e!==void 0?{onBuildPlan:e}:{},onOpenFileDiff:n,onToggleProcess:()=>{m(e=>!e)},...d.status!==`running`&&t!==void 0?{onForkTask:t}:{},onOpenSourceFile:r,onReviewFileChanges:i,projectId:a,processExpanded:p,processItemKeys:y,processToggleAvailable:b,showProcessingTime:l===x,showRunningShimmer:d.status===`running`&&l===_.length-1,store:o,taskId:s,turn:d},c.key)),d.status===`running`&&!S&&!u?(0,$.jsxs)(za,{from:`assistant`,children:[(0,$.jsx)(ao,{completedAt:d.completedAt,startedAt:d.startedAt}),(0,$.jsx)(`div`,{className:`w-full space-y-4`,children:(0,$.jsx)(fo,{})})]}):null,d.error===null?null:(0,$.jsx)(`div`,{className:`rounded-surface bg-control px-3 py-2 text-label leading-5 text-danger`,role:`alert`,children:(0,$.jsx)(`p`,{children:d.error})})]})}function Ac({notice:e}){let t=e.payload.level===`warning`,n=e.payload.code===`model_verification`?d.t(`timeline.notice.modelVerification`,{ns:`conversation`}):e.payload.code===`strict_review_required`?d.t(`timeline.notice.strictReviewRequired`,{ns:`conversation`}):e.payload.message,r=d.t(`timeline.notice.${e.payload.code}`,{ns:`conversation`});return(0,$.jsxs)(`div`,{className:`flex items-start gap-2 border-l-2 px-3 py-2 text-label leading-5 ${t?`border-warning text-warning`:`border-separator-strong text-muted-foreground`}`,role:t?`alert`:`status`,children:[t?(0,$.jsx)(lr,{"aria-hidden":`true`,className:`mt-0.5 size-3.5 shrink-0`}):(0,$.jsx)(De,{"aria-hidden":`true`,className:`mt-0.5 size-3.5 shrink-0`}),(0,$.jsxs)(`div`,{className:`min-w-0`,children:[(0,$.jsx)(`p`,{className:`font-medium text-foreground`,children:r}),(0,$.jsx)(`p`,{className:`break-words`,children:n})]})]})}function jc({store:e}){return Nt(e,e=>e.notices).map(e=>(0,$.jsx)(Ac,{notice:e},`${e.sessionId}:${String(e.sequence)}`))}function Mc({connected:e,onResolvePendingRequest:t,store:n}){let r=Nt(n,e=>e.pendingRequestIds),i=Nt(n,e=>e.pendingRequestsById),a=r.flatMap(e=>{let t=i[e];return t===void 0||t.status===`resolved`?[]:[t]}),o=a.findIndex(e=>e.status===`pending`);return a.map((n,r)=>(0,$.jsx)(Go,{interactive:e&&n.status===`pending`&&r===o,onResolve:t,request:n},n.requestId))}function Nc({connected:e,hasOlderHistory:t=!1,isLoadingOlderHistory:n=!1,onBuildPlan:r,onForkTask:i,onOpenFileDiff:a,onOpenSourceFile:o,onReviewFileChanges:s,onResolvePendingRequest:c,onLoadOlderHistory:l=()=>Promise.resolve(),olderHistoryError:u=null,scrollToBottomSignal:f,store:p,submissionStartedAt:m,submissionTurnId:h}){let g=p.getState().projectId,_=p.getState().taskId,v=Nt(p,e=>e.turnIds),y=Nt(p,e=>e.pendingRequestIds),b=Nt(p,e=>e.pendingRequestsById),x=Nt(p,e=>e.notices),S=y.some(e=>b[e]?.status!==`resolved`),C=Nt(p,e=>{if(h===void 0)return`awaiting-turn`;let t=e.turnsById[h];return t===void 0?`awaiting-turn`:vc(e.itemKeysByTurnId[h]??[],e.itemStoresByKey).some(e=>e.type===`assistant`)?`assistant-started`:t.status===`failed`||t.status===`interrupted`?`finished`:`awaiting-assistant`}),w=m!==void 0&&(C===`awaiting-turn`||C===`awaiting-assistant`),T=x.length>0;return v.length===0&&!S&&!w&&!T&&!t?(0,$.jsx)(Xa,{message:d.t(`timeline.noHistory`,{ns:`conversation`}),role:`status`}):(0,$.jsxs)(Fa,{"aria-label":d.t(`timeline.conversation`,{ns:`conversation`}),conversationId:`${g}:${_}`,...f===void 0?{}:{scrollToBottomSignal:f},children:[t?(0,$.jsx)(Yo,{error:u,isLoading:n,onLoad:l}):null,(0,$.jsx)(La,{...S||w||T?{footer:(0,$.jsxs)($.Fragment,{children:[T?(0,$.jsx)(jc,{store:p}):null,S?(0,$.jsx)(Mc,{connected:e,onResolvePendingRequest:c,store:p}):null,w?(0,$.jsxs)(za,{from:`assistant`,children:[(0,$.jsx)(ao,{completedAt:null,startedAt:m}),(0,$.jsx)(fo,{})]}):null]})}:{},getItemKey:Dc,items:v,renderItem:(t,n)=>(0,$.jsx)(kc,{...e&&t===v.at(-1)&&r!==void 0?{onBuildPlan:r}:{},...e&&i!==void 0?{onForkTask:i}:{},onOpenFileDiff:a,onOpenSourceFile:o,onReviewFileChanges:s,projectId:g,store:p,taskId:_,turnId:t,turnIndex:n,suppressEmptyRunningStatus:w&&t===h})}),(0,$.jsx)(Ra,{})]})}var Pc=()=>void 0,Fc=()=>void 0,Ic=()=>void 0,Lc=()=>Promise.resolve();function Rc(e){if(u(`conversation`),e.taskId===void 0)return e.submissionStartedAt===void 0?`temporary`in e?(0,$.jsx)(Ya,{scopeName:e.scopeName}):(0,$.jsx)(Ya,{onProjectChange:e.onProjectChange,projectId:e.projectId,projects:e.projects}):(0,$.jsx)(Fa,{"aria-label":d.t(`timeline.conversation`,{ns:`conversation`}),conversationId:`${e.projectId}:new-chat`,children:(0,$.jsx)(Ia,{className:`gap-6`,children:(0,$.jsxs)(za,{from:`assistant`,children:[(0,$.jsx)(ao,{completedAt:null,startedAt:e.submissionStartedAt}),(0,$.jsx)(fo,{})]})})});let{onBuildPlan:t,onForkTask:n,onOpenFileDiff:r,onOpenSourceFile:i,onReviewFileChanges:a,onResolvePendingRequest:o,runtime:s,scrollToBottomSignal:c,submissionStartedAt:l,submissionTurnId:f,startingSnapshot:p}=e;return s===void 0?(0,$.jsx)(Xa,{message:d.t(`timeline.loading`,{ns:`conversation`}),role:`status`}):(0,$.jsx)(zc,{onOpenFileDiff:r??Pc,onOpenSourceFile:i??Fc,onReviewFileChanges:a??Ic,onResolvePendingRequest:o??Lc,...t===void 0?{}:{onBuildPlan:t},...n===void 0?{}:{onForkTask:n},runtime:s,scrollToBottomSignal:c,submissionStartedAt:l,submissionTurnId:f,startingSnapshot:p})}function zc({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.snapshot===void 0?u===void 0?(0,$.jsx)(Xa,{message:d.t(`timeline.loading`,{ns:`conversation`}),role:`status`}):(0,$.jsx)(Bc,{connected:!1,snapshot:u}):o.store===void 0?(0,$.jsx)(Xa,{message:d.t(`timeline.loading`,{ns:`conversation`}),role:`status`}):(0,$.jsxs)($.Fragment,{children:[o.connectionState===`reconnecting`?(0,$.jsx)(`div`,{className:`bg-control px-3 py-1.5 text-center text-label text-muted-foreground`,role:`status`,children:d.t(`timeline.reconnecting`,{ns:`conversation`})}):null,(0,$.jsx)(Nc,{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,$.jsx)(Xa,{message:d.t(`timeline.loadError`,{ns:`conversation`}),role:`alert`})}function Bc({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}){u(`conversation`);let c=(0,Q.useMemo)(()=>un({projectId:s.projectId,taskId:s.id},{checkpoint:{sequence:0,sessionId:`starting-snapshot`},snapshot:s}),[s]);return(0,$.jsx)(Nc,{connected:e,...t===void 0?{}:{onBuildPlan:t},...n===void 0?{}:{onForkTask:n},onOpenFileDiff:r,onOpenSourceFile:i,onReviewFileChanges:a,onResolvePendingRequest:o,store:c})}function Vc(e,t,n,r,i){let a=new Map(i.map(e=>[e.id,e]));return{files:e.attachments.map(e=>({attachment:e,...e,previewUrl:r(t,n,e.id),source:`host`})),id:e.id,skills:e.skills.map(e=>a.get(e.id)??{description:``,displayName:e.name,id:e.id,name:e.name,scope:`repo`}),status:`queued`,text:e.text}}function Hc(e,t,n){let r={files:t.files,id:t.id??n(),skills:t.skills,status:`awaiting-response`,text:t.text,turnId:t.turnId,userMessageIds:t.userMessageIds};return t.id===void 0||!e.some(e=>e.id===t.id)?[...e,r]:e.map(e=>e.id===t.id?r:e)}function Uc(e){return e.flatMap(e=>e.type===`message`&&e.role===`user`?[e.id]:[])}function Wc(e,t){if(t===void 0)return[];let n=e?.turns.find(e=>e.id===t);return Uc(n?.items??[])}function Gc(e,t){return t===void 0?[]:Uc((e.itemKeysByTurnId[t]??[]).flatMap(t=>{let n=e.getItemByKey(t);return n===void 0?[]:[n]}))}function Kc(e,t){if(e.status!==`awaiting-response`)return!1;let n=new Set(e.userMessageIds);return t.some(e=>!n.has(e))}function qc(e,t){return e.status===`awaiting-response`&&Kc(e,Wc(t,e.turnId))}function Jc(e){return e.status===`queued`?{files:e.files,skills:e.skills,text:e.text}:void 0}var Yc=1e3,Xc=`Pasted text.txt`;function Zc(e){return e===void 0?d.t(`composer.placeholder`,{ns:`workbench`}):d.t(`composer.followUpPlaceholder`,{ns:`workbench`})}function Qc(e,t,n=x){return e?.fingerprint===t?e:{fingerprint:t,key:n()}}function $c(e,t){if(e!==void 0)return e.supportedReasoningEfforts.some(e=>e.id===t)?t:e.defaultReasoningEffort}function el(e){return Ae(e)}function tl(e,t){return ke(e,t)}function nl(e,t){return{canInterrupt:e?.turns.interrupt??!1,canSubmit:e!==void 0&&e.turns.start&&(t||e.tasks.start),canSteer:e?.turns.steer===!0&&t}}function rl(e,t,n,r){return e===`running`?t?n===`queue`?`queue`:r?`steer`:`blocked`:`interrupt`:t?`start`:`blocked`}function il(e){return e.isSubmitting===!0?`submitting`:e.connectionState===`closed`||e.connectionState===`connecting`||e.connectionState===`reconnecting`?`reconnecting`:e.activeTurnId===void 0?e.mutationFailed===!0?`failed`:`idle`:`running`}function al(e){return{attachmentsDisabled:e===`submitting`,draftInputDisabled:e===`submitting`,turnControlsDisabled:e===`reconnecting`||e===`submitting`}}function ol(e,t){let n=e?.turns.findLast(e=>e.status===`running`);if(n!==void 0)return n.id;let r=e?.turns.find(e=>e.id===t);return r===void 0||r.status===`running`?t:void 0}async function sl(e,t){let n=t.taskId,r;if(n===void 0){let i=t.idempotencyKeys.startTask;if(i===void 0)throw Error(`Task creation requires an idempotency key`);let a=await e.startTask(t.projectId,{idempotencyKey:i});r=a.task,n=a.task.id,t.onTaskCreated?.(a.task)}let i=await e.startTurn(t.projectId,n,t.input,t.turnOptions,{idempotencyKey:t.idempotencyKeys.startTurn});return{...r===void 0?{}:{createdTask:r},taskId:n,turn:i.turn}}async function cl(e,t){let n=t.taskId,r;if(n===void 0){let i=await e.startTask(t.projectId,{idempotencyKey:t.idempotencyKey});r=i.task,n=i.task.id,t.onTaskCreated?.(i.task)}let i=await e.startReview(t.projectId,n,{target:t.target},{idempotencyKey:t.idempotencyKey});return{...r===void 0?{}:{createdTask:r},taskId:n,turn:i.turn}}function ll(e,t,n,r,i){return e.interruptTurn(t,n,r,{idempotencyKey:i})}function ul(e,t,n,r,i,a){return e.steerTurn(t,n,r,i,{idempotencyKey:a})}function dl({directoryStates:e,entries:t,expandedPaths:n,onRetry:r}){let{t:i}=u(`workbench`);return t.map(t=>{if(t.type===`file`)return(0,$.jsx)(ve,{name:t.name,path:t.path},t.path);let a=e.get(t.path),o=n.has(t.path);return(0,$.jsx)(me,{name:t.name,path:t.path,trailing:o&&a?.isFetching===!0?(0,$.jsx)(m,{"aria-hidden":`true`,className:`size-3.5 animate-spin`}):void 0,children:o?a?.error!==null&&a?.error!==void 0?(0,$.jsxs)(`div`,{className:`flex min-h-9 items-center justify-between gap-2 px-2 py-1`,children:[(0,$.jsx)(`p`,{className:`min-w-0 text-caption text-danger`,role:`alert`,children:i(`hostAttachmentPicker.loadBranchError`)}),(0,$.jsxs)(l,{className:`shrink-0`,onClick:()=>{r(t.path)},size:`sm`,type:`button`,variant:`ghost`,children:[(0,$.jsx)(dt,{"aria-hidden":`true`,"data-icon":`inline-start`}),i(`actions.retry`)]})]}):a?.data===void 0?(0,$.jsx)(`p`,{className:`px-2 py-1.5 text-caption text-muted-foreground`,role:`status`,children:i(`hostAttachmentPicker.loadingBranch`)}):a.data.entries.length===0?(0,$.jsx)(`p`,{className:`px-2 py-1.5 text-caption text-muted-foreground`,children:i(`hostAttachmentPicker.empty`)}):(0,$.jsx)(dl,{directoryStates:e,entries:a.data.entries,expandedPaths:n,onRetry:r}):null},t.path)})}function fl({directoryStates:e,expandedPaths:t,listing:n,onExpandedChange:r,onRetry:i,onSelect:a,selectedPath:o}){let{t:s}=u(`workbench`),c=(0,Q.useMemo)(()=>new Map(e.map(e=>[e.path,e])),[e]);return(0,$.jsx)(be,{"aria-label":s(`hostAttachmentPicker.treeLabel`),expanded:t,onExpandedChange:r,onSelect:a,...o===void 0?{}:{selectedPath:o},children:(0,$.jsx)(dl,{directoryStates:c,entries:n.entries,expandedPaths:t,onRetry:i})})}function pl({client:e,kind:t,onAdd:n,onClose:r,projectId:i}){let{t:a}=u(`workbench`),[o,s]=(0,Q.useState)(),[c,d]=(0,Q.useState)(),[f,p]=(0,Q.useState)(!1),[h,g]=(0,Q.useState)(()=>new Set),[_,v]=(0,Q.useState)(),[y,b]=(0,Q.useState)(!1),x=(0,Q.useRef)(!1),S=(0,Q.useRef)(void 0),C=j({queryFn:({signal:n})=>e.listHostFiles(t,o,{includeHidden:f,signal:n}),queryKey:[`host-files`,t,o??null,f],staleTime:3e4}),w=C.data,E=(0,Q.useMemo)(()=>[...h],[h]),D=bn({queries:E.map(n=>({queryFn:({signal:r})=>e.listHostFiles(t,n,{includeHidden:f,signal:r}),queryKey:[`host-files`,t,n,f],staleTime:3e4}))}),O=E.map((e,t)=>{let n=D[t];return{...n?.data===void 0?{}:{data:n.data},error:n?.error??null,isFetching:n?.isFetching??!1,path:e}}),k=(0,Q.useMemo)(()=>new Set([w,...O.map(e=>e.data)].filter(e=>e!==void 0).flatMap(e=>e.entries.flatMap(e=>e.type===`file`?[e.path]:[]))),[O,w]),A=c??o??w?.path??``,M=()=>{let e=w?.parentPath;e!=null&&(s(e),d(void 0),g(new Set),v(void 0))},N=e=>{s(e),d(void 0),g(new Set),v(void 0)},P=()=>{let e=A.trim();e.length!==0&&(s(e),d(void 0),g(new Set),v(void 0))},F=()=>{p(e=>!e),v(void 0)},I=async()=>{if(_===void 0||x.current)return;x.current=!0,b(!0);let r=Qc(S.current,`${i}:${t}:${_}`);S.current=r;try{let a=await e.importHostAttachment(i,t,_,{idempotencyKey:r.key});if(a.attachment.kind!==t)throw TypeError(`Imported attachment kind does not match the selection`);n({attachment:a.attachment,...a.attachment,previewUrl:t===`image`?T(``,i,a.attachment.id):``,source:`host`}),S.current=void 0,q()}catch(e){G(e)}finally{x.current=!1,b(!1)}};return(0,$.jsx)(ft,{onOpenChange:e=>{!e&&!y&&r()},open:!0,children:(0,$.jsxs)($t,{"aria-labelledby":`host-attachment-picker-title`,className:`grid h-[min(84dvh,42rem)] max-w-2xl grid-rows-[auto_auto_minmax(0,1fr)_auto] gap-0 overflow-hidden p-0`,onEscapeKeyDown:e=>{y&&e.preventDefault()},onInteractOutside:e=>{y&&e.preventDefault()},children:[(0,$.jsxs)(Tt,{className:`px-4 pb-3 pt-4 sm:px-5 sm:pt-5`,children:[(0,$.jsx)(gt,{id:`host-attachment-picker-title`,children:a(t===`image`?`hostAttachmentPicker.imageTitle`:`hostAttachmentPicker.fileTitle`)}),(0,$.jsx)(St,{className:`sr-only`,children:a(`hostAttachmentPicker.description`)})]}),(0,$.jsx)(mt,{disabled:y,includeHidden:f,labels:{filesystemRoot:a(`hostAttachmentPicker.filesystemRoot`),goToPath:a(`hostAttachmentPicker.goToPath`),hideHidden:a(`hostAttachmentPicker.hideHidden`),parent:a(`hostAttachmentPicker.parent`),pathLabel:a(`hostAttachmentPicker.pathLabel`),pathPlaceholder:a(`hostAttachmentPicker.pathPlaceholder`),showHidden:a(`hostAttachmentPicker.showHidden`)},listing:w,onNavigateParent:M,onNavigatePath:P,onNavigateRoot:N,onPathChange:d,onToggleHidden:F,path:A}),(0,$.jsx)(`div`,{className:`min-h-0 overflow-y-auto px-3 py-2 sm:px-4`,children:C.isPending?(0,$.jsxs)(`p`,{className:`flex min-h-32 items-center justify-center gap-2 text-body-small text-muted-foreground`,role:`status`,children:[(0,$.jsx)(m,{"aria-hidden":`true`,className:`size-4 animate-spin`}),a(`hostAttachmentPicker.loading`)]}):C.error===null?w===void 0?null:w.entries.length===0?(0,$.jsx)(`p`,{className:`grid min-h-32 place-items-center text-body-small text-muted-foreground`,children:a(`hostAttachmentPicker.empty`)}):(0,$.jsx)(fl,{directoryStates:O,expandedPaths:h,listing:w,onExpandedChange:g,onRetry:e=>{let t=E.indexOf(e);D[t]?.refetch()},onSelect:e=>{k.has(e)&&v(e)},..._===void 0?{}:{selectedPath:_}}):(0,$.jsxs)(`div`,{className:`flex min-h-32 flex-col items-center justify-center gap-3 text-center`,children:[(0,$.jsx)(`p`,{className:`text-body-small text-danger`,role:`alert`,children:a(`hostAttachmentPicker.loadError`)}),(0,$.jsxs)(l,{onClick:()=>void C.refetch(),type:`button`,variant:`outline`,children:[(0,$.jsx)(dt,{"aria-hidden":`true`,"data-icon":`inline-start`}),a(`actions.retry`)]})]})}),(0,$.jsxs)(`div`,{className:`flex flex-col gap-3 border-t border-separator bg-raised px-4 py-3 sm:flex-row sm:items-center sm:px-5`,children:[(0,$.jsx)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-1`,children:(0,$.jsx)(`p`,{"aria-live":`polite`,className:`truncate font-mono text-caption text-foreground`,title:_,children:_??a(`hostAttachmentPicker.noSelection`)})}),(0,$.jsxs)(Ct,{className:`w-full flex-col-reverse sm:w-auto sm:flex-row`,children:[(0,$.jsx)(l,{className:`h-10 w-full sm:h-8 sm:w-auto`,disabled:y,onClick:r,type:`button`,variant:`outline`,children:a(`actions.cancel`)}),(0,$.jsxs)(l,{className:`h-10 w-full sm:h-8 sm:w-auto`,disabled:_===void 0||y,onClick:()=>void I(),type:`button`,children:[y?(0,$.jsx)(m,{"aria-hidden":`true`,className:`animate-spin`,"data-icon":`inline-start`}):t===`image`?(0,$.jsx)(Ge,{"aria-hidden":`true`,"data-icon":`inline-start`}):(0,$.jsx)(st,{"aria-hidden":`true`,"data-icon":`inline-start`}),a(y?`hostAttachmentPicker.importing`:`hostAttachmentPicker.add`)]})]})]})]})})}function ml(e,t){return hl([...t.flatMap(e=>[{skill:e,type:`skill`},{text:` `,type:`text`}]),...e===``?[]:[{text:e,type:`text`}]])}function hl(e){let t=[];for(let n of e){if(n.type===`text`){if(n.text===``)continue;let e=t.at(-1);e?.type===`text`?t[t.length-1]={text:e.text+n.text,type:`text`}:t.push(n);continue}t.push(n)}return t}function gl(e){return`$${e.name}`}function _l(e){return`${e.rootId}\u0000${e.path}`}function vl(e){let t=e.rootPath.includes(`\\`)&&!e.rootPath.includes(`/`),n=t?`\\`:`/`;return`@${e.rootPath.replace(/[\\/]+$/u,``)}${n}${t?e.path.replace(/\//gu,`\\`).replace(/^\\+/u,``):e.path.replace(/\\/gu,`/`).replace(/^\/+/u,``)}`}function yl(e){return e.type===`text`?e.text.length:e.type===`skill`?gl(e.skill).length:vl(e.file).length}function bl(e,t){let n=[],r=[],i=0;for(let a of e){let e=yl(a),o=i+e;if(t<=i)r.push(a);else if(t>=o)n.push(a);else if(a.type===`text`){let e=t-i;n.push({text:a.text.slice(0,e),type:`text`}),r.push({text:a.text.slice(e),type:`text`})}else(t-i<e/2?r:n).push(a);i=o}return[hl(n),hl(r)]}function xl(e,t){let n=0;for(let r of e){let e=n+yl(r);if(t.start>=n&&t.end<=e)return r.type===`text`;n=e}return!1}function Sl(e,t,n){let[r]=bl(e,t.start),[,i]=bl(e,t.end),a=e.some(e=>e.type===`skill`&&e.skill.id===n.id);return hl([...r,...a?[]:[{skill:n,type:`skill`}],...i])}function Cl(e,t,n){let[r]=bl(e,t.start),[,i]=bl(e,t.end),a=e.some(e=>e.type===`file`&&_l(e.file)===_l(n));return hl([...r,...a?[]:[{file:n,type:`file`}],...i])}function wl(e,t){if(e.some(e=>e.type===`file`&&_l(e.file)===_l(t)))return e;let n=kl(e);return hl([...e,...n===``||/\s$/u.test(n)?[]:[{text:` `,type:`text`}],{file:t,type:`file`}])}function Tl(e,t){let n=new Map(t.map(e=>[e.name,e])),r=new Set(e.flatMap(e=>e.type===`skill`?[e.skill.id]:[])),i=[],a=!1;for(let t of e){if(t.type!==`text`){i.push(t);continue}let e=0;for(let o of t.text.matchAll(/\$([^\s$]+)/gu)){let s=o.index,c=o[1],l=t.text[s-1],u=c===void 0?void 0:n.get(c);if(u===void 0||l!==void 0&&!/\s/u.test(l))continue;let d=s+o[0].length;i.push({text:t.text.slice(e,s),type:`text`}),r.has(u.id)||(i.push({skill:u,type:`skill`}),r.add(u.id)),e=d,a=!0}i.push({text:t.text.slice(e),type:`text`})}return a?hl(i):e}function El(e,t){let[n]=bl(e,t.start),[,r]=bl(e,t.end);return hl([...n,...r])}function Dl(e,t){return hl(e.filter(e=>e.type!==`skill`||e.skill.id!==t))}function Ol(e,t){let n=_l(t);return hl(e.filter(e=>e.type!==`file`||_l(e.file)!==n))}function kl(e){return e.map(e=>e.type===`text`?e.text:e.type===`skill`?gl(e.skill):vl(e.file)).join(``)}function Al(e){let t=[],n=``,r=!1;for(let i of e){if(i.type===`skill`){t.push(i.skill);continue}let e=i.type===`file`?vl(i.file):i.text;e!==``&&((i.type===`file`&&n!==``&&!/\s$/u.test(n)||r&&!/^\s/u.test(e))&&(n+=` `),n+=e,r=i.type===`file`)}return{skills:t,text:n.trim()}}function jl(e){let t=Al(e);return t.text===``&&t.skills.length===0}var Ml=new Set([`DIV`,`P`]);function Nl(e,t){let n=document.createElement(`span`);if(n.className=`${pc} relative top-0.5 cursor-pointer select-none hover:bg-control-hover`,n.contentEditable=`false`,n.dataset.promptSkillId=e.id,n.dataset.promptSkillName=e.name,n.dataset.serializedText=gl(e),n.setAttribute(`aria-label`,d.t(`skillEditor.tokenLabel`,{name:e.displayName,ns:`workbench`,text:gl(e)})),n.setAttribute(`role`,`button`),n.tabIndex=-1,t!==null){let e=t.cloneNode(!0);e.classList.remove(`hidden`),n.append(e)}let r=document.createElement(`span`);return r.className=`truncate`,r.textContent=e.displayName,n.append(r),n}function Pl(e,t){let n=document.createElement(`span`);if(n.className=`${pc} relative top-0.5 cursor-pointer select-none hover:bg-control-hover`,n.contentEditable=`false`,n.dataset.promptFilePath=e.path,n.dataset.promptFileRootId=e.rootId,n.dataset.serializedText=vl(e),n.setAttribute(`aria-label`,vl(e)),n.setAttribute(`role`,`button`),n.tabIndex=-1,t!==null){let e=t.cloneNode(!0);e.classList.remove(`hidden`),n.append(e)}let r=document.createElement(`span`);return r.className=`truncate`,r.textContent=e.name,n.append(r),n}function Fl(){let e=document.createElement(`span`);return e.dataset.promptCaretAnchor=``,e.textContent=`​`,e}function Il(e,t,n,r){let i=[];for(let e of t)e.type===`text`?i.push(document.createTextNode(e.text)):e.type===`skill`?i.push(Nl(e.skill,n),Fl()):i.push(Pl(e.file,r),Fl());e.replaceChildren(...i),e.dataset.empty=String(t.length===0),e.dataset.serializedValue=kl(t)}function Ll(e,t,n){let r=[],i=e=>{e!==``&&r.push({text:e,type:`text`})},a=e=>{if(e.nodeType===Node.TEXT_NODE){i(e.textContent??``);return}if(!(e instanceof HTMLElement))return;let o=e.dataset.promptSkillId;if(o!==void 0){let e=t.get(o);e!==void 0&&r.push({skill:e,type:`skill`});return}let s=e.dataset.promptFilePath,c=e.dataset.promptFileRootId;if(s!==void 0&&c!==void 0){let e=n.get(_l({path:s,rootId:c}));e!==void 0&&r.push({file:e,type:`file`});return}if(e.dataset.promptCaretAnchor!==void 0){let t=e.textContent;i(t.startsWith(`​`)?t.slice(1):t);return}if(e.tagName===`BR`){i(`
8
- `);return}Ml.has(e.tagName)&&r.length>0&&i(`
9
- `),e.childNodes.forEach(a)};return e.childNodes.forEach(a),hl(r)}function Rl(e){if(e.nodeType===Node.TEXT_NODE)return e.textContent?.length??0;if(!(e instanceof HTMLElement))return 0;let t=e.dataset.serializedText;if(t!==void 0)return t.length;if(e.dataset.promptCaretAnchor!==void 0){let t=e.textContent;return t.startsWith(`​`)?t.length-1:t.length}return e.tagName===`BR`?1:[...e.childNodes].reduce((e,t)=>e+Rl(t),0)}function zl(e,t,n){if(t===null||!e.contains(t))return;let r=0,i=!1,a=e=>{if(!i){if(e===t){if(e.nodeType===Node.TEXT_NODE){let t=e.textContent??``,i=e.parentElement?.dataset.promptCaretAnchor!==void 0&&t.startsWith(`​`)?1:0;r+=Math.max(0,Math.min(n,t.length)-i)}else r+=[...e.childNodes].slice(0,n).reduce((e,t)=>e+Rl(t),0);i=!0;return}if(e instanceof Element&&e.contains(t)){e.childNodes.forEach(a);return}r+=Rl(e)}};return e.childNodes.forEach(a),r}function Bl(e){let t=document.getSelection();return zl(e,t?.anchorNode??null,t?.anchorOffset??0)??e.dataset.serializedValue?.length??0}function Vl(e,t){let n=Math.max(0,t);for(let[t,r]of[...e.childNodes].entries()){let i=Rl(r);if(n===0){if(r instanceof HTMLElement&&r.dataset.promptCaretAnchor!==void 0){let e=r.firstChild;if(e!==null)return[e,1]}return[e,t]}if(r.nodeType===Node.TEXT_NODE&&n<=i)return[r,n];if(n<i)return n<i/2?[e,t]:[e,t+1];n-=i}return[e,e.childNodes.length]}function Hl(e,t){let[n,r]=Vl(e,t),i=document.createRange();i.setStart(n,r),i.collapse(!0);let a=document.getSelection();a?.removeAllRanges(),a?.addRange(i)}function Ul(e,t){e.focus(),document.execCommand(`insertText`,!1,t)}function Wl(e){let t=document.getSelection(),n=t?.rangeCount===0?void 0:t?.getRangeAt(0),r=document.createElement(`br`),i=document.createElement(`span`),a=document.createTextNode(`​`);if(i.dataset.promptCaretAnchor=``,i.append(a),n===void 0||!e.contains(n.commonAncestorContainer)){e.append(r,i);let n=document.createRange();n.setStart(a,1),n.collapse(!0),t?.removeAllRanges(),t?.addRange(n);return}n.deleteContents(),n.insertNode(r),r.after(i),n.setStart(a,1),n.collapse(!0),t?.removeAllRanges(),t?.addRange(n)}var Gl=(0,Q.forwardRef)(function({className:e=``,content:t,disabled:n=!1,onChange:r,onClick:i,onKeyDown:a,onPaste:o,placeholder:s,skills:c,scope:l,...u},d){let f=(0,Q.useRef)(null),p=(0,Q.useRef)(null),m=(0,Q.useRef)(null),h=(0,Q.useRef)(t),g=(0,Q.useRef)(c),_=(0,Q.useRef)(new Map),v=(0,Q.useRef)(new Map),y=(0,Q.useRef)(void 0),b=(0,Q.useCallback)(e=>{for(let t of e)t.type===`skill`?_.current.set(t.skill.id,t.skill):t.type===`file`&&v.current.set(_l(t.file),t.file)},[]);g.current=c;for(let e of c)_.current.set(e.id,e);b(t);let x=()=>{let e=f.current;if(e===null)return;let t=Ll(e,_.current,v.current),n=Tl(t,g.current),i=Bl(e);n!==t&&(Il(e,n,p.current,m.current),Hl(e,Math.min(i,kl(n).length))),h.current=n,e.dataset.empty=String(n.length===0);let a=kl(n);e.dataset.serializedValue=a,r(n,a,Bl(e))},S=(0,Q.useCallback)((e,t)=>{let n=f.current;n!==null&&(b(e),h.current=e,Il(n,e,p.current,m.current),t!==void 0&&Hl(n,t))},[b]);(0,Q.useImperativeHandle)(d,()=>({focus(e){let t=f.current;t?.focus(),t!==null&&e!==void 0&&Hl(t,e)},getContent(){let e=f.current;return e===null?h.current:Ll(e,_.current,v.current)},replace:S}),[S]),(0,Q.useLayoutEffect)(()=>{y.current!==l&&(y.current=l,S(t))},[t,S,l]),(0,Q.useLayoutEffect)(()=>{let e=f.current;if(e===null||c.length===0)return;let t=Ll(e,_.current,v.current),n=Tl(t,c);if(n===t)return;let i=Bl(e);Il(e,n,p.current,m.current),document.activeElement===e&&Hl(e,Math.min(i,kl(n).length)),h.current=n;let a=kl(n);e.dataset.serializedValue=a,r(n,a,Bl(e))},[r,c]);let C=(e,t)=>{let n=[...e.childNodes].slice(0,[...e.childNodes].indexOf(t)).reduce((e,t)=>e+Rl(t),0),r=t.dataset.promptSkillId,i=t.dataset.promptFilePath,a=t.dataset.promptFileRootId,o=r===void 0?i!==void 0&&a!==void 0?Ol(h.current,{path:i,rootId:a}):h.current:Dl(h.current,r);S(o,n),x()},w=e=>{let t=e.target,n=t instanceof Element?t.closest(`[data-prompt-skill-id], [data-prompt-file-path]`):null;if(n===null)return!1;e.preventDefault();let r=f.current;return r===null||C(r,n),!0},T=e=>{o?.(e),!(e.defaultPrevented||n)&&(e.clipboardData.files.length>0||(e.preventDefault(),Ul(e.currentTarget,e.clipboardData.getData(`text/plain`))))},E=e=>{if(a?.(e),!(e.defaultPrevented||Xe(e.nativeEvent)||n)){if(e.key===`End`&&!(e.altKey||e.ctrlKey||e.metaKey||e.shiftKey)){let t=e.currentTarget,n=document.getSelection(),r=kl(h.current),i=h.current.at(-1),a=i!==void 0&&i.type!==`text`?r.length-yl(i):void 0,o=Bl(t);if(n?.isCollapsed===!0&&a!==void 0&&o<=a&&r.slice(o,a).trim()===``){e.preventDefault(),Hl(t,r.length);return}}if(e.key===`Backspace`){let t=document.getSelection(),n=t?.anchorNode,r=n?.parentElement,i=r?.previousElementSibling,a=i instanceof HTMLElement&&(i.dataset.promptSkillId!==void 0||i.dataset.promptFilePath!==void 0);if(t?.isCollapsed===!0&&t.anchorOffset===1&&r?.dataset.promptCaretAnchor!==void 0&&n?.textContent?.startsWith(`​`)===!0&&i instanceof HTMLElement&&a){e.preventDefault(),C(e.currentTarget,i);return}}e.key===`Enter`&&(e.preventDefault(),Ye(e)?(Wl(e.currentTarget),x()):e.currentTarget.closest(`form`)?.requestSubmit())}};return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(kn,{"aria-hidden":`true`,className:`hidden size-4 shrink-0`,ref:p}),(0,$.jsx)(lt,{"aria-hidden":`true`,className:`hidden size-4 shrink-0`,ref:m}),(0,$.jsx)(`div`,{...u,"aria-disabled":n||void 0,"aria-multiline":`true`,className:`max-h-40 min-h-12 w-full overflow-y-auto whitespace-pre-wrap break-words bg-transparent px-1 py-1 text-sm leading-5 text-foreground outline-none before:pointer-events-none before:text-muted-foreground/60 data-[empty=true]:before:content-[attr(data-placeholder)] ${n?`cursor-not-allowed opacity-60`:``} ${e}`,contentEditable:!n,"data-empty":t.length===0,"data-placeholder":s,"data-prompt-skill-editor":``,onClick:e=>{w(e)||i?.(e)},onCopy:e=>{let t=f.current,n=document.getSelection();if(t===null||n===null||n.rangeCount===0)return;let r=n.getRangeAt(0);if(!t.contains(r.commonAncestorContainer))return;let i=kl(Ll(t,_.current,v.current)),a=zl(t,r.startContainer,r.startOffset),o=zl(t,r.endContainer,r.endOffset);a===void 0||o===void 0||a===o||(e.preventDefault(),e.clipboardData.setData(`text/plain`,i.slice(a,o)))},onInput:x,onKeyDown:E,onPaste:T,ref:f,role:`textbox`,spellCheck:`true`,suppressContentEditableWarning:!0,tabIndex:n?-1:0})]})}),Kl=(e,t)=>[`projects`,e,t,`git-status`],ql=(e,t)=>[`projects`,e,t,`git-worktrees`];function Jl(e,t,n,r){e.setQueryData([`projects`],e=>fe(e,r.project)),e.setQueryData(ql(t,n),e=>{let t=e?.worktrees??[],n=t.findIndex(e=>e.path===r.worktree.path);return{worktrees:n<0?[...t,r.worktree]:t.map((e,t)=>t===n?r.worktree:e)}})}async function Yl(e,t,n,r,i,a){if(i.repositoryMode!==`root`||i.branch===a||!i.branches.includes(a))return!1;let o=Kl(n,r);await t.cancelQueries({exact:!0,queryKey:o});let s=await e.switchProjectBranch(n,r,{branch:a,expectedSnapshot:i.snapshot});return t.setQueryData(o,s),!0}async function Xl(e,t,n,r,i,a){let o=a.trim();if(i.repositoryMode!==`root`||o.length===0||i.branches.includes(o))return!1;let s=Kl(n,r);await t.cancelQueries({exact:!0,queryKey:s});let c=await e.createProjectBranch(n,r,{branch:o,expectedSnapshot:i.snapshot});return t.setQueryData(s,c),!0}async function Zl(e,t,n,r,i,a){let o=a.trim();if(i.repositoryMode!==`root`||o.length===0)return;let s=await e.createProjectWorktree(n,r,{branch:o,expectedSnapshot:i.snapshot});return Jl(t,n,r,s),await t.invalidateQueries({exact:!0,queryKey:Kl(n,r),refetchType:`none`}),s.project}async function Ql(e,t,n,r,i,a){if(i.find(e=>e.path===a&&!e.current)===void 0)return;let o=await e.switchProjectWorktree(n,r,{path:a});return Jl(t,n,r,o),o.project}function $l({client:e,gitStatus:t,isCurrentScope:n,projectId:r,routeScope:i,rootPath:a}){let o=Bt(),s=L(),{projects:c}=Yt(),l=(0,Q.useRef)(U()),[u,d]=(0,Q.useState)(),[f,p]=(0,Q.useState)(),[m,h]=(0,Q.useState)(),[g,_]=(0,Q.useState)(),[v,y]=(0,Q.useState)(),b=u!==void 0||f!==void 0||m!==void 0||g!==void 0,x=j({enabled:t?.repositoryMode===`root`,queryFn:({signal:t})=>e.listProjectWorktrees(r,a,{signal:t}),queryKey:ql(r,a),staleTime:5e3}),S=x.data?.worktrees??[];return(0,Q.useEffect)(()=>{let e=v?.routeScope===i?v.projectId:void 0;e===void 0||!c.some(t=>t.id===e)||o({params:{projectId:e},to:`/p/$projectId`})},[o,c,i,v]),(0,Q.useEffect)(()=>{d(void 0),p(void 0),h(void 0),_(void 0),y(void 0)},[i]),{createBranch:async o=>{let c=i;return t===void 0||b?!1:await l.current.run(async()=>{d(o);try{let n=await Xl(e,s,r,a,t,o);return n&&q(),n}catch(e){return G(e),await s.invalidateQueries({exact:!0,queryKey:Kl(r,a)}).catch(()=>void 0),!1}finally{n(c)&&d(void 0)}})??!1},creatingBranch:u,createWorktree:async o=>{let c=i;return t===void 0||b?!1:await l.current.run(async()=>{p(o);try{let n=await Zl(e,s,r,a,t,o);return n===void 0?!1:(q(),y({projectId:n.id,routeScope:c}),!0)}catch(e){return G(e),await s.invalidateQueries({exact:!0,queryKey:ql(r,a)}).catch(()=>void 0),!1}finally{n(c)&&p(void 0)}})??!1},creatingWorktree:f,switchBranch:async o=>{let c=i;t===void 0||b||await l.current.run(async()=>{h(o);try{await Yl(e,s,r,a,t,o)&&q()}catch(e){G(e),await s.invalidateQueries({exact:!0,queryKey:Kl(r,a)}).catch(()=>void 0)}finally{n(c)&&h(void 0)}})},switchingBranch:m,switchWorktree:async t=>{let o=i;b||await l.current.run(async()=>{_(t);try{let n=await Ql(e,s,r,a,S,t);if(n===void 0)return;q(),y({projectId:n.id,routeScope:o})}catch(e){G(e),await s.invalidateQueries({exact:!0,queryKey:ql(r,a)}).catch(()=>void 0)}finally{n(o)&&_(void 0)}})},switchingWorktree:g,worktrees:S,worktreesError:x.error,worktreesPending:x.isPending}}async function eu(e,t,n,r){let i=[],a;do{let o=await e.listQueuedSubmissions(t,n,{...a===void 0?{}:{cursor:a},limit:100},{signal:r});i.push(...o.data),a=o.nextCursor??void 0}while(a!==void 0);return i}function tu({activeTurnId:e,client:t,handleAttachmentsChange:n,projectId:r,replacePromptContent:i,routeScope:a,runtime:o,skillEditorRef:s,skills:c,taskId:l}){let u=L(),d=C(r,l??``),f=j({enabled:l!==void 0,queryFn:({signal:e})=>eu(t,r,l??``,e),queryKey:d,staleTime:1/0}),[p,m]=(0,Q.useState)([]),[h,g]=(0,Q.useState)(),_=(0,Q.useMemo)(()=>l===void 0?[]:(f.data??[]).map(e=>Vc(e,r,l,t.getTaskAttachmentUrl.bind(t),c)),[t,r,f.data,c,l]),v=p.filter(e=>e.scope===a).map(e=>e.prompt),y=new Set(v.map(e=>e.id)),b=[..._.filter(e=>!y.has(e.id)),...v];(0,Q.useEffect)(()=>{o?.store===void 0&&m(e=>e.filter(e=>e.scope!==a||!qc(e.prompt,o?.snapshot)))},[a,o?.snapshot,o?.store]),(0,Q.useEffect)(()=>{let e=o?.store;if(e!==void 0)return e.subscribe(e=>{m(t=>t.filter(t=>t.scope!==a||t.prompt.status!==`awaiting-response`||!Kc(t.prompt,Gc(e,t.prompt.turnId))))})},[a,o?.store]);let S=async()=>{await u.invalidateQueries({exact:!0,queryKey:d})},w=async(e,n)=>{if(l===void 0)return!1;let i=h?.scope===a?h.id:void 0;return i===void 0?await t.addQueuedSubmission(r,l,e,n,{idempotencyKey:x()}):(await t.updateQueuedSubmission(r,l,i,e,{idempotencyKey:x()}),g(void 0)),await S(),!0},T=async e=>{l!==void 0&&(await t.deleteQueuedSubmission(r,l,e,{idempotencyKey:x()}),await S())},E=e=>{let t=Jc(e);if(t===void 0)return;let r=ml(t.text,t.skills);g({id:e.id,scope:a}),i(r,kl(r).length),n(t.files),requestAnimationFrame(()=>{s.current?.focus(kl(r).length)})},D=e=>{m(t=>{let n=Hc(t.filter(e=>e.scope===a).map(e=>e.prompt),e,x);return[...t.filter(e=>e.scope!==a),...n.map(e=>({prompt:e,scope:a}))]})};return{editQueuedPrompt:E,moveQueuedPrompt:async(e,n)=>{if(l===void 0)return;let i=_.map(e=>e.id),a=i.indexOf(e),o=a+n;if(a<0||o<0||o>=i.length)return;let s=i[a],c=i[o];s===void 0||c===void 0||(i[a]=c,i[o]=s,await t.reorderQueuedSubmissions(r,l,i,{idempotencyKey:x()}),await S())},onSteerAccepted:D,queueError:f.error,queuedPrompts:b,removeQueuedPrompt:T,saveQueuedSubmission:w,sendQueuedPrompt:async(n,i)=>{if(n.status!==`queued`||l===void 0)return;if(e!==void 0){if(!await i({files:n.files,text:n.text},n.skills,{clearInputOnSuccess:!1,forceAction:`steer`,queuedPromptId:n.id,requestTimelineScroll:!1}))return;await T(n.id);return}let a=await t.startQueuedSubmission(r,l,n.id,{idempotencyKey:x()});D({files:n.files,id:n.id,skills:n.skills,text:n.text,turnId:a.turn.id,userMessageIds:[]}),await S()}}}function nu({projectToolsEnabled:e=!0}={}){let t=e=>d.t(e,{ns:`workbench`}),n=[{action:`review`,description:t(`promptCommand.review.description`),id:`review-code`,keywords:[`review`,`code review`,`审查`,`代码审查`],label:t(`promptCommand.review.label`)},{action:`initialize`,description:t(`promptCommand.initialize.description`),id:`initialize`,keywords:[`init`,`initialize`,`初始化`,`AGENTS.md`],label:t(`promptCommand.initialize.label`)},{action:`compact`,description:t(`promptCommand.compact.description`),id:`compact`,keywords:[`compact`,`context`,`压缩`,`上下文`],label:t(`promptCommand.compact.label`)},{action:`fork`,description:t(`promptCommand.fork.description`),id:`copy-task`,keywords:[`fork`,`copy`,`复制`,`任务`],label:t(`promptCommand.fork.label`)},{action:`plan`,description:t(`promptCommand.plan.description`),id:`plan`,keywords:[`plan`,`planning`,`计划`,`规划`],label:t(`promptCommand.plan.label`)},{action:`goal`,description:t(`promptCommand.goal.description`),id:`goal`,keywords:[`goal`,`objective`,`目标`,`长期任务`],label:t(`promptCommand.goal.label`)}];return e?n:n.filter(e=>e.action!==`review`&&e.action!==`initialize`)}function ru(e,t,n){return t===void 0?{available:!1,reason:d.t(`promptCommand.availability.notReady`,{ns:`workbench`})}:e.action!==`initialize`&&e.action!==`goal`&&e.action!==`plan`&&e.action!==`review`&&!n?{available:!1,reason:d.t(`promptCommand.availability.noTask`,{ns:`workbench`})}:(e.action===`initialize`?t.turns.start&&(n||t.tasks.start):e.action===`review`?t.turns.review&&(n||t.tasks.start):e.action===`compact`?t.turns.compact:e.action===`plan`||e.action===`goal`?t.turns.start:t.tasks.fork)?{available:!0}:{available:!1,reason:d.t(`promptCommand.availability.unsupported`,{ns:`workbench`})}}function iu(e,t,n){if(t<0||t>e.length)return null;let r=e.slice(0,t),i=r.lastIndexOf(n);if(i<0)return null;let a=r[i-1],o=r.slice(i+1);return a!==void 0&&!/\s/u.test(a)||/\s/u.test(o)?null:{end:t,query:o,start:i}}function au(e,t){return iu(e,t,`/`)}function ou(e,t){return iu(e,t,`@`)}function su(e,t){let n=t.trim().toLocaleLowerCase();return n===``?e:e.filter(e=>[e.label,...e.keywords].some(e=>e.toLocaleLowerCase().includes(n)))}function cu(e,t){let n=t.trim().toLocaleLowerCase();return n===``?e:e.filter(e=>[e.displayName,e.name,e.description].some(e=>e.toLocaleLowerCase().includes(n)))}function lu(e,t,n){return n===0?0:(e+t+n)%n}function uu({capabilities:e,client:t,onRequestNotificationPermission:n,onTaskCreated:r,onTaskStarted:i,projectId:a,session:o,submitPrompt:s,t:c,taskId:l}){let{activeCommandIndex:u,activeTaskId:d,baseBranches:f,closeCommandMenu:p,commandSlashCommand:m,composerController:h,filteredCommands:g,filteredSkills:_,pendingTask:v,promptContent:y,replacePromptContent:b,reviewMenuMode:x,routeScope:S,selectActiveFileReference:C,setActiveCommandIndex:w,setCommandMenuOpen:T,setCommandQuery:E,setCommandSlashCommand:D,setComposerModeState:O,setReviewMenuMode:k,skillEditorRef:A,state:j}=o,{actionLock:M,commandAttempts:N,isCurrentScope:P,setIsSubmitting:F,setMutationError:I,setPendingTaskState:L,setSubmittedTurnState:R}=h,z=e=>{requestAnimationFrame(()=>{A.current?.focus(e)})},B=t=>{let n=ru(t,e,d!==void 0);return n.available&&j===`running`?{available:!1,reason:c(`composer.taskRunning`)}:n},V=async e=>{let r=S;if(B(e).available){if(e.action===`plan`||e.action===`goal`){let t=m;if(t===void 0)return;let n=A.current?.getContent()??y;b(El(n,t),t.start),O({mode:e.action,scope:S}),p(),z(t.start);return}if(E(``),D(void 0),b([]),e.action===`review`){w(0),k(`scopes`);return}if(T(!1),k(null),e.action===`initialize`){await s({files:[],text:c(`composer.initializingAgentsPrompt`)},[]);return}d!==void 0&&await M.run(async()=>{e.action===`compact`&&n(),F(!0),I(null);let o=Qc(N.current.get(e.action),`${e.action}:${d}`);N.current.set(e.action,o);try{e.action===`compact`?(await t.compactTask(a,d,{idempotencyKey:o.key}),P(r)&&q(c(`composer.compacting`))):i((await t.forkTask(a,d,{},{idempotencyKey:o.key})).task),P(r)&&N.current.delete(e.action)}catch(e){P(r)&&I(e instanceof Error?e:Error(`Task command failed`))}finally{P(r)&&F(!1)}})}},H=e=>M.run(async()=>{let o=S;n(),p(),F(!0),I(null);let s=Qc(N.current.get(`review`),JSON.stringify({target:e,taskId:d??a}));N.current.set(`review`,s);try{let n=await cl(t,{idempotencyKey:s.key,onTaskCreated(e){P(o)&&(L({scope:o,task:e}),r?.(e))},projectId:a,target:e,...d===void 0?{}:{taskId:d}});if(P(o)&&(N.current.delete(`review`),R({scope:o,turnId:n.turn.id}),q(c(`composer.reviewStarted`)),l===void 0)){let e=n.createdTask??v;e!==void 0&&i(e,n.turn)}}catch(e){P(o)&&I(e instanceof Error?e:Error(`Review command failed`))}finally{P(o)&&F(!1)}}),U=e=>{let t=m;if(t===void 0)return;let n=Sl(A.current?.getContent()??y,t,e),r=t.start+`$${e.name}`.length;b(n,r),T(!1),E(``),D(void 0),z(r)};return{executePromptCommand:V,executeReviewTarget:H,getCommandAvailability:B,selectActiveCommandItem:()=>{if(C())return;if(x===`scopes`){u===0?H({type:`uncommitted_changes`}):u===1&&f.length>0&&(w(0),k(`branches`));return}if(x===`branches`){let e=f[u];e!==void 0&&H({branch:e,type:`base_branch`});return}let e=g[u];if(e!==void 0){V(e);return}let t=_[u-g.length];t!==void 0&&U(t)},selectSkill:U}}function du(e,t){return e===t}function fu(e,t){let[n,r]=(0,Q.useState)(!1),[i,a]=(0,Q.useState)(null),[o,s]=(0,Q.useState)(),[c,l]=(0,Q.useState)(),u=(0,Q.useRef)(e);u.current=e;let d=(0,Q.useRef)(void 0),f=(0,Q.useRef)(void 0),p=(0,Q.useRef)(void 0),m=(0,Q.useRef)(void 0),h=(0,Q.useRef)(new Map),g=(0,Q.useRef)(new Map),_=(0,Q.useRef)(new Map),v=(0,Q.useMemo)(()=>U(),[e]);(0,Q.useEffect)(()=>{t?.(n)},[n,t]),(0,Q.useEffect)(()=>()=>{t?.(!1)},[t]);let y=(0,Q.useCallback)(e=>du(u.current,e),[]),b=(0,Q.useCallback)(e=>{a(e),e!==null&&G(e)},[]);return{actionLock:v,commandAttempts:_,interruptAttempt:m,isCurrentScope:y,isSubmitting:n,mutationError:i,pendingTaskState:o,reset:(0,Q.useCallback)(e=>{r(!1),b(null),e&&(s(void 0),l(void 0)),d.current=void 0,f.current=void 0,p.current=void 0,m.current=void 0,h.current.clear(),g.current.clear(),_.current.clear()},[b]),setIsSubmitting:r,setMutationError:b,setPendingTaskState:s,setSubmittedTurnState:l,startTaskAttempt:d,startTurnAttempt:f,steerTurnAttempt:p,submittedTurnState:c,uploadAttempts:g,uploadedAttachments:h}}function pu(e,t,n,r,i,a){return M({enabled:a,placeholderData:V,queryFn:({signal:a})=>e.searchProjectFiles(t,n,i,r,{signal:a}),queryKey:[`projects`,t,n,`file-search`,r,i],staleTime:3e4})}function mu(e,t,n,r){e.stopProjectFileSearch(t,n,r).catch(()=>void 0)}function hu(e,t,n,r,i){let a=(0,Q.useMemo)(()=>({enabled:i,id:x(),projectId:t,rootPath:n}),[i,t,n]).id,[o,s]=(0,Q.useState)({enabled:!1,query:r});(0,Q.useEffect)(()=>{if(!i){s(e=>!e.enabled&&e.query===r?e:{enabled:!1,query:r});return}let e=setTimeout(()=>{s({enabled:!0,query:r})},150);return()=>{clearTimeout(e)}},[i,r]),(0,Q.useEffect)(()=>{if(i)return()=>{mu(e,t,n,a)}},[e,i,t,n,a]);let c=o.enabled&&o.query===r;return j(pu(e,t,n,a,o.query,i&&c))}function gu(e,t){let n=new Map(t.map(e=>[e.name,e])),r=[];for(let t=e.length-1;t>=0;--t){let i=e[t];if(i!==void 0)for(let e=i.items.length-1;e>=0;--e){let t=i.items[e];if(t?.type!==`message`||t.role!==`user`)continue;let a=t.skills??[];if(t.text===``&&a.length===0)continue;let o=[];for(let[e,r]of a.entries()){let i=n.get(r.name);o.push(i===void 0?{text:`$${r.name}`,type:`text`}:{skill:i,type:`skill`}),(e<a.length-1||t.text!==``)&&o.push({text:` `,type:`text`})}t.text!==``&&o.push({text:t.text,type:`text`}),r.push(hl(o))}}return r}function _u(e,t,n){return n===0||e===null&&t===`next`?null:e===null?0:t===`previous`?Math.min(e+1,n-1):e===0?null:e-1}function vu(e,t,n){let r=Math.max(0,Math.min(t,e.length));if(n===`previous`){let t=e.indexOf(`
10
- `);return t<0||r<=t}return r>=e.lastIndexOf(`
11
- `)+1}var yu=[];function bu({capabilities:e,client:t,gitStatus:n,models:r,onSubmissionStateChange:i,projectId:a,projectPath:o,projectToolsEnabled:s,runtime:c,settings:l,skills:u,taskId:d}){let f=`${a}:${d??`draft`}:${o}`,p=Lt(a,d),m=on(),h=m.read(p),[g,_]=(0,Q.useState)(),[v,y]=(0,Q.useState)(0),[b,x]=(0,Q.useState)(h.attachments),[S,C]=(0,Q.useState)(),[w,T]=(0,Q.useState)(!1),[E,D]=(0,Q.useState)(!1),[O,k]=(0,Q.useState)(),[A,j]=(0,Q.useState)(``),[M,N]=(0,Q.useState)(null),[P,F]=(0,Q.useState)(``),[I,L]=(0,Q.useState)(),[R,z]=(0,Q.useState)(h.content),[B,V]=(0,Q.useState)(null),[H,U]=(0,Q.useState)(),W=fu(f,i),{isSubmitting:G,mutationError:K,pendingTaskState:q,reset:ee,setIsSubmitting:te,setMutationError:J,setPendingTaskState:Y,setSubmittedTurnState:ne,submittedTurnState:re}=W,ie=(0,Q.useId)(),ae=(0,Q.useRef)(null),oe=(0,Q.useRef)(null),se=(0,Q.useRef)(h.content),ce=(0,Q.useRef)(f),le=(0,Q.useRef)(p),ue=re?.scope===f?re.turnId:void 0,de=q?.scope===f?q.task:void 0,fe=ol(c?.snapshot,ue),pe=d??de?.id,{canInterrupt:me,canSubmit:he,canSteer:ge}=nl(e,pe!==void 0),_e=c?.connectionState??`connected`,ve=il({activeTurnId:fe,connectionState:_e,isSubmitting:G,mutationFailed:K!==null||c?.error!==null}),ye=Al(R),be=g?.scope===f?g.settings:l,xe=H?.scope===f?H.mode:void 0,Se=r.find(e=>e.id===be.model)??r.find(e=>e.isDefault)??r[0],Ce=$c(Se,be.reasoningEffort),we=c?.snapshot?.contextUsage,Te=(0,Q.useMemo)(()=>gu(c?.snapshot?.turns??[],u),[c?.snapshot?.turns,u]),Ee=b.length,{attachmentsDisabled:De,draftInputDisabled:Oe,turnControlsDisabled:ke}=al(ve),X=hu(t,a,o,A,E&&s&&!ke),Ae=X.data?.data??yu,je=cu(e?.skills.use===!0?u:[],P),Z=su(nu({projectToolsEnabled:s}),P),Me=n?.baseBranches??[],Ne=E?Ae.length:M===`scopes`?2:M===`branches`?Me.length:je.length+Z.length,Pe=!w&&!E||Ne===0?void 0:`${ie}-item-${String(v)}`,Fe=(0,Q.useCallback)(e=>{x(e),m.update(p,t=>({...t,attachments:e}))},[m,p]),Ie=(0,Q.useCallback)(()=>{T(!1),F(``),L(void 0),N(null)},[]),Le=(0,Q.useCallback)(()=>{D(!1),k(void 0),j(``)},[]),Re=(0,Q.useCallback)((e,t)=>{z(e),m.update(p,t=>({...t,content:e})),oe.current?.replace(e,t)},[m,p]),ze=(0,Q.useCallback)(e=>{let t=_u(B,e,Te.length);if(t===null&&B===null)return!1;B===null&&(se.current=oe.current?.getContent()??R);let n=t===null?se.current:Te[t];return n===void 0?!1:(V(t),Re(n,kl(n).length),!0)},[R,Te,B,Re]),Be=(0,Q.useCallback)(e=>{if(O===void 0)return;let t=Cl(oe.current?.getContent()??R,O,e),n=O.start+vl(e).length;Re(t,n),Le(),requestAnimationFrame(()=>{oe.current?.focus(n)})},[Le,O,R,Re]),Ve=(0,Q.useCallback)(e=>{let t=wl(oe.current?.getContent()??R,e),n=kl(t).length;Ie(),Le(),V(null),Re(t,n),requestAnimationFrame(()=>{oe.current?.focus(n)})},[Ie,Le,R,Re]),He=(0,Q.useCallback)(()=>{if(!E)return!1;let e=Ae[v];return e!==void 0&&Be(e),!0},[v,E,Ae,Be]),Ue=(0,Q.useCallback)((e,t,n)=>{z(e),V(null),m.update(p,t=>({...t,content:e}));let r=ou(t,n);if(s&&r!==null&&xl(e,r)){y(0),T(!1),F(``),L(void 0),N(null),D(!0),k(r),j(r.query);return}Le();let i=au(t,n);if(i===null){T(!1),N(null),F(``),L(void 0);return}y(0),T(!0),N(null),F(i.query),L(i)},[Le,m,p,s]),We=(0,Q.useCallback)(()=>{m.update(p,e=>({...e,attachments:[],content:[]})),z([]),V(null),se.current=[],x([]),oe.current?.replace([])},[m,p]);return(0,Q.useLayoutEffect)(()=>{if(ce.current===f)return;ce.current=f;let e=le.current!==p;if(e){le.current=p;let e=m.read(p);z(e.content),V(null),se.current=e.content,x(e.attachments),C(void 0),oe.current?.replace(e.content),_(void 0),U(void 0),y(0),T(!1),D(!1),k(void 0),j(``),N(null),F(``),L(void 0)}ee(e)},[m,p,ee,f]),{activeCommandIndex:v,activeCommandItemId:Pe,activeSettings:be,activeTaskId:pe,activeTurnId:fe,attachmentCount:Ee,attachmentPickerKind:S,attachments:b,attachmentsDisabled:De,baseBranches:Me,canInterrupt:me,canSteer:ge,canSubmit:he,clearComposerInput:We,closeCommandMenu:Ie,closeFileMenu:Le,commandMenuId:ie,commandMenuOpen:w,commandSlashCommand:I,commandSurfaceRef:ae,composerController:W,composerDraftStore:m,composerScope:p,connectionState:_e,contextUsage:we,draftInputDisabled:Oe,filteredCommands:Z,filteredSkills:je,fileMenuOpen:E,fileMention:O,fileQuery:A,fileSearchError:X.error,fileSearchPending:X.isPending,fileSearchResults:Ae,handleAttachmentsChange:Fe,handlePromptChange:Ue,isSubmitting:G,menuItemCount:Ne,mutationError:K,navigatePromptHistory:ze,pendingTask:de,composerMode:xe,promptContent:R,promptSubmission:ye,referenceProjectPath:Ve,replacePromptContent:Re,reviewMenuMode:M,routeScope:f,selectedModel:Se,selectedReasoningEffort:Ce,selectActiveFileReference:He,selectFileReference:Be,setActiveCommandIndex:y,setAttachmentPickerKind:C,setAttachments:x,setCommandMenuOpen:T,setFileMenuOpen:D,setFileMention:k,setFileQuery:j,setCommandQuery:F,setCommandSlashCommand:L,setIsSubmitting:te,setMutationError:J,setPendingTaskState:Y,setComposerModeState:U,setPromptContent:z,setReviewMenuMode:N,setSettingsOverride:_,setSubmittedTurnState:ne,skillEditorRef:oe,state:ve,turnControlsDisabled:ke}}function xu(e,t,n,r,i){return{...e,...r===`plan`?{collaborationMode:`plan`}:{},...r===`goal`?{goalMode:!0}:{},...i?{fastMode:!0}:{},model:t,reasoningEffort:n??e.reasoningEffort}}async function Su(e,t){return e.source===`host`?e.attachment:t(e)}function Cu({activeUserMessageIds:e,activeSettings:t,activeTaskId:n,activeTurnId:r,canSteer:i,canSubmit:a,clearComposerInput:o,client:s,controller:c,followUpBehavior:l,fastMode:u,onDirectSubmission:d,onRequestNotificationPermission:f,onTaskCreated:p,onTaskStarted:m,onTurnStarted:h,pendingTask:g,composerMode:_,onGoalStarted:v,onSteerAccepted:y,projectId:b,promptContent:S,routeScope:C,saveQueuedSubmission:w,selectedModel:T,selectedReasoningEffort:E,skillEditorRef:D,state:O,taskId:k,t:A,turnControlsDisabled:j}){let{actionLock:M,isCurrentScope:N,setIsSubmitting:P,setMutationError:F,setPendingTaskState:I,setSubmittedTurnState:L,startTaskAttempt:R,startTurnAttempt:z,steerTurnAttempt:B,uploadAttempts:V,uploadedAttachments:H}=c,U=async(c,M,U={})=>{let W=C,G=M===void 0?Al(D.current?.getContent()??S):void 0,K=(G?.text??c.text).trim(),q=U.composerMode===null?void 0:U.composerMode??_;if(q===`goal`&&(K.length===0||K.length>4e3))return F(Error(A(K.length===0?`composer.goalObjectiveRequired`:`composer.goalObjectiveTooLong`))),!1;let ee=M??G?.skills??[],te=K!==``||c.files.length>0||ee.length>0,J=U.forceAction??rl(O,te,l,i);if(J===`blocked`||J===`interrupt`||!te||T===void 0||E===void 0||j||J!==`steer`&&!a||J===`steer`&&(!i||n===void 0||r===void 0))return!1;J!==`queue`&&U.requestTimelineScroll!==!1&&d?.(),f(),P(!0),F(null);let Y,ne;try{ne=await Promise.all(c.files.map(e=>Su(e,async e=>{let t=H.current.get(e.id);if(t!==void 0)return t;let n=V.current.get(e.id)??x();V.current.set(e.id,n);let r=await s.uploadAttachment(b,{content:e.file,kind:e.kind,name:e.name},{idempotencyKey:n});return N(W)&&H.current.set(e.id,r.attachment),r.attachment}))),Y={attachments:ne.map(e=>({id:e.id})),skills:ee.map(e=>({id:e.id,name:e.name})),text:K,type:`prompt`}}catch(e){return N(W)&&(F(e instanceof Error?e:Error(A(`composer.attachmentUploadFailed`))),P(!1)),!1}if(J===`queue`)try{let e=await w(Y,x());return e&&N(W)&&(o(),H.current.clear(),V.current.clear()),e}catch(e){return N(W)&&F(e instanceof Error?e:Error(`Prompt queueing failed`)),!1}finally{N(W)&&P(!1)}if(J===`steer`){if(n===void 0||r===void 0)return!1;let t=Qc(B.current,JSON.stringify({input:Y,taskId:n,turnId:r}));B.current=t;try{return await ul(s,b,n,r,Y,t.key),N(W)&&(y({files:c.files,...U.queuedPromptId===void 0?{}:{id:U.queuedPromptId},skills:ee,text:K,turnId:r,userMessageIds:e}),U.clearInputOnSuccess!==!1&&o(),B.current=void 0,H.current.clear(),V.current.clear()),!0}catch(e){return N(W)&&F(e instanceof Error?e:Error(`Prompt steering failed`)),!1}finally{N(W)&&P(!1)}}let re=xu(t,T.id,E,q,u),ie=Qc(z.current,JSON.stringify({input:Y,options:re}));z.current=ie;let ae=n===void 0?Qc(R.current,b):void 0;R.current=ae;try{let e=await sl(s,{idempotencyKeys:{...ae===void 0?{}:{startTask:ae.key},startTurn:ie.key},input:Y,onTaskCreated(e){N(W)&&(I({scope:W,task:e}),R.current=void 0,p?.(e))},projectId:b,...n===void 0?{}:{taskId:n},turnOptions:re});if(N(W)&&(U.clearInputOnSuccess!==!1&&o(),re.goalMode===!0&&v(),L({scope:W,turnId:e.turn.id})),h?.(e.turn,Y,ne),N(W)&&(z.current=void 0,H.current.clear(),V.current.clear()),k===void 0){let t=e.createdTask??g;t!==void 0&&m(t,e.turn,Y,re,ne)}return!0}catch(e){return N(W)&&F(e instanceof Error?e:Error(`Prompt submission failed`)),!1}finally{N(W)&&P(!1)}};return(e,t,n={})=>M.run(()=>U(e,t,n)).then(e=>e??!1)}var wu=(0,Q.createContext)(null);function Tu(){let e=(0,Q.useContext)(wu);if(e===null)throw Error(`Context components must be used within Context`);return e}function Eu({children:e,className:t=``,maxTokens:n,usedTokens:r,...i}){let a=(0,Q.useMemo)(()=>({maxTokens:n,usedTokens:r}),[n,r]);return(0,$.jsx)(wu.Provider,{value:a,children:(0,$.jsx)(`span`,{className:`inline-flex shrink-0 ${t}`,...i,children:e})})}function Du(e){let{maxTokens:t,usedTokens:n}=e;if(t==null||t<=0||n===void 0)return{accessibleLabel:d.t(`agentComponents.contextUnknown`,{ns:`conversation`}),percentage:null,summary:d.t(`agentComponents.contextWaiting`,{ns:`conversation`}),tokenCount:n===void 0?null:`${Ou(n)} tokens`};let r=Math.min(100,Math.max(0,Math.round(n/t*100)));return{accessibleLabel:d.t(`agentComponents.contextPercent`,{ns:`conversation`,percentage:r}),percentage:r,summary:d.t(`agentComponents.contextSummary`,{ns:`conversation`,percentage:r}),tokenCount:`${Ou(n)} / ${Ou(t)} tokens`}}function Ou(e){return new Intl.NumberFormat(`en-US`,{maximumFractionDigits:1,notation:`compact`}).format(e)}var ku=7,Au=2*Math.PI*ku;function ju(){u(`conversation`);let e=Au*(1-(Du(Tu()).percentage??0)/100);return(0,$.jsxs)(`svg`,{className:`size-4.5 -rotate-90`,viewBox:`0 0 20 20`,"aria-hidden":`true`,children:[(0,$.jsx)(`circle`,{cx:`10`,cy:`10`,fill:`none`,r:ku,stroke:`currentColor`,strokeOpacity:`0.24`,strokeWidth:`3`}),(0,$.jsx)(`circle`,{cx:`10`,cy:`10`,fill:`none`,r:ku,stroke:`currentColor`,strokeDasharray:Au,strokeDashoffset:e,strokeLinecap:`round`,strokeWidth:`3`})]})}function Mu({children:e,className:t=``,...n}){return(0,$.jsx)(`span`,{className:`flex flex-col gap-0.5 px-0.5 py-0.5 tabular-nums ${t}`,...n,children:e})}function Nu({children:e,className:t=``,...n}){u(`conversation`);let r=Du(Tu());return(0,$.jsx)(`span`,{className:`contents ${t}`,...n,children:e??(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`span`,{className:`text-body-small font-medium`,children:r.summary}),r.tokenCount===null?null:(0,$.jsx)(`span`,{className:`text-label text-muted-foreground`,children:r.tokenCount})]})})}function Pu({children:e,className:t=``,...n}){u(`conversation`);let r=Du(Tu());return(0,$.jsxs)(N,{children:[(0,$.jsx)(P,{asChild:!0,children:(0,$.jsx)(l,{...n,"aria-label":r.accessibleLabel,className:t,size:`icon-sm`,type:n.type??`button`,variant:`ghost`,children:e??(0,$.jsx)(ju,{})})}),(0,$.jsx)(I,{className:`bg-raised text-foreground`,children:(0,$.jsx)(Mu,{children:(0,$.jsx)(Nu,{})})})]})}function Fu({isPending:e,onClose:t,onCreate:n}){let{t:r}=u(`workbench`),[i,a]=(0,Q.useState)(``),o=(0,Q.useRef)(!1),s=i.trim();return(0,$.jsx)(ft,{onOpenChange:n=>{!n&&!e&&!o.current&&t()},open:!0,children:(0,$.jsx)($t,{"aria-labelledby":`create-branch-title`,className:`max-w-96 p-4`,onEscapeKeyDown:t=>{(e||o.current)&&t.preventDefault()},onInteractOutside:t=>{(e||o.current)&&t.preventDefault()},children:(0,$.jsxs)(`form`,{className:`grid gap-4`,onSubmit:e=>{e.preventDefault(),!(s.length===0||o.current)&&(o.current=!0,n(s).then(e=>{o.current=!1,e&&t()}))},children:[(0,$.jsxs)(Tt,{children:[(0,$.jsx)(gt,{id:`create-branch-title`,children:r(`composer.createBranch`)}),(0,$.jsx)(St,{children:r(`composer.createBranchDescription`)})]}),(0,$.jsxs)(`label`,{className:`grid gap-1.5 text-label font-medium text-foreground`,htmlFor:`create-branch-name`,children:[r(`composer.branchName`),(0,$.jsx)(Pe,{autoCapitalize:`none`,autoComplete:`off`,autoCorrect:`off`,autoFocus:!0,disabled:e,id:`create-branch-name`,maxLength:1024,name:`branch`,onChange:e=>{a(e.currentTarget.value)},placeholder:`feat/my-feature`,spellCheck:!1,value:i,variant:`outline`})]}),(0,$.jsxs)(Ct,{children:[(0,$.jsx)(l,{disabled:e,onClick:t,type:`button`,variant:`ghost`,children:r(`actions.cancel`)}),(0,$.jsx)(l,{disabled:e||s.length===0,type:`submit`,children:r(`composer.createAndSwitchBranch`)})]})]})})})}function Iu({isPending:e,onClose:t,onCreate:n}){let{t:r}=u(`workbench`),[i,a]=(0,Q.useState)(``),o=(0,Q.useRef)(!1),s=i.trim();return(0,$.jsx)(ft,{onOpenChange:n=>{!n&&!e&&!o.current&&t()},open:!0,children:(0,$.jsx)($t,{"aria-labelledby":`create-worktree-title`,className:`max-w-96 p-4`,onEscapeKeyDown:t=>{(e||o.current)&&t.preventDefault()},onInteractOutside:t=>{(e||o.current)&&t.preventDefault()},children:(0,$.jsxs)(`form`,{className:`grid gap-4`,onSubmit:e=>{e.preventDefault(),!(s.length===0||o.current)&&(o.current=!0,n(s).then(e=>{o.current=!1,e&&t()}))},children:[(0,$.jsxs)(Tt,{children:[(0,$.jsx)(gt,{id:`create-worktree-title`,children:r(`composer.createWorktree`)}),(0,$.jsx)(St,{children:r(`composer.createWorktreeDescription`)})]}),(0,$.jsxs)(`label`,{className:`grid gap-1.5 text-label font-medium text-foreground`,htmlFor:`create-worktree-branch`,children:[r(`composer.branchName`),(0,$.jsx)(Pe,{autoCapitalize:`none`,autoComplete:`off`,autoCorrect:`off`,autoFocus:!0,disabled:e,id:`create-worktree-branch`,maxLength:1024,name:`branch`,onChange:e=>{a(e.currentTarget.value)},placeholder:`feat/my-feature`,spellCheck:!1,value:i,variant:`outline`})]}),(0,$.jsxs)(Ct,{children:[(0,$.jsx)(l,{disabled:e,onClick:t,type:`button`,variant:`ghost`,children:r(`actions.cancel`)}),(0,$.jsx)(l,{disabled:e||s.length===0,type:`submit`,children:r(`composer.createAndSwitchWorktree`)})]})]})})})}function Lu({creatingBranch:e,creatingWorktree:t,gitStatus:n,onBranchChange:r,onBranchCreate:i,onWorktreeChange:a,onWorktreeCreate:o,switchingBranch:s,switchingWorktree:c,worktrees:d,worktreesError:f,worktreesPending:p}){let{t:h}=u(`workbench`),[g,_]=(0,Q.useState)(!1),[v,y]=(0,Q.useState)(!1);if(n===void 0||n.repositoryMode===`none`)return null;let b=n.branch,x=n.repositoryMode===`root`&&b!==null,S=b??h(`composer.gitBranchMissing`),C=s!==void 0||e!==void 0||c!==void 0||t!==void 0,w=d.filter(e=>!e.current);return x?(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(pn,{children:[(0,$.jsx)(vn,{asChild:!0,children:(0,$.jsxs)(l,{"aria-label":h(`composer.branchSwitcherLabel`,{branch:b}),className:`inline-flex h-6 max-w-28 min-w-0 items-center gap-1 rounded-control px-1 text-caption text-muted-foreground hover:bg-control-hover hover:text-foreground sm:max-w-40`,disabled:C,type:`button`,variant:`ghost`,children:[C?(0,$.jsx)(m,{"aria-hidden":`true`,className:`size-3 shrink-0 animate-spin`,"data-icon":`inline-start`}):(0,$.jsx)(qn,{"aria-hidden":`true`,className:`size-3 shrink-0`,"data-icon":`inline-start`}),(0,$.jsx)(`span`,{className:`truncate`,children:S}),(0,$.jsx)(Nn,{"aria-hidden":`true`,className:`size-3 shrink-0`,"data-icon":`inline-end`})]})}),(0,$.jsxs)(Ut,{align:`start`,className:`max-h-72 w-72 max-w-[calc(100vw-1rem)] overflow-y-auto`,side:`top`,children:[(0,$.jsx)(Kt,{children:(0,$.jsx)(rn,{children:h(`composer.branchSwitcherMenu`)})}),(0,$.jsx)(Xt,{onValueChange:e=>{e!==b&&r(e)},value:b,children:n.branches.map(e=>(0,$.jsx)(Jt,{disabled:e===b||C,title:e,value:e,children:(0,$.jsx)(`span`,{className:`truncate`,children:e})},e))}),(0,$.jsx)(Ft,{}),(0,$.jsxs)(Kt,{children:[(0,$.jsx)(rn,{children:h(`composer.worktreeSwitcherMenu`)}),p?(0,$.jsxs)(cn,{disabled:!0,children:[(0,$.jsx)(m,{"aria-hidden":`true`,className:`size-3.5 animate-spin`}),h(`composer.worktreeListLoading`)]}):f===null?w.length===0?(0,$.jsx)(cn,{disabled:!0,children:h(`composer.worktreeListEmpty`)}):w.map(e=>(0,$.jsxs)(cn,{disabled:C,onSelect:()=>{a(e.path)},title:e.path,children:[(0,$.jsx)(X,{"aria-hidden":`true`,className:`size-3.5`}),(0,$.jsxs)(`span`,{className:`grid min-w-0 flex-1`,children:[(0,$.jsx)(`span`,{className:`truncate`,children:e.branch??h(`composer.detachedHead`)}),(0,$.jsx)(`span`,{className:`truncate text-caption text-muted-foreground`,children:e.path})]})]},e.path)):(0,$.jsx)(cn,{disabled:!0,children:h(`composer.worktreeListFailed`)})]}),(0,$.jsx)(Ft,{}),(0,$.jsxs)(cn,{disabled:C,onSelect:()=>{_(!0)},children:[(0,$.jsx)(W,{"aria-hidden":`true`,className:`size-3.5 text-muted-foreground`}),h(`composer.createBranch`)]}),(0,$.jsxs)(cn,{disabled:C,onSelect:()=>{y(!0)},children:[(0,$.jsx)(X,{"aria-hidden":`true`,className:`size-3.5 text-muted-foreground`}),h(`composer.createWorktree`)]})]})]}),g?(0,$.jsx)(Fu,{isPending:e!==void 0,onClose:()=>{_(!1)},onCreate:i}):null,v?(0,$.jsx)(Iu,{isPending:t!==void 0,onClose:()=>{y(!1)},onCreate:o}):null]}):(0,$.jsxs)(`span`,{className:`inline-flex min-w-0 shrink items-center gap-1`,children:[(0,$.jsx)(qn,{"aria-hidden":`true`,className:`size-3 shrink-0`}),(0,$.jsx)(`span`,{className:`truncate`,children:S})]})}var Ru=`(max-width: 760px)`;function zu(){let[e,t]=(0,Q.useState)(()=>typeof window<`u`&&window.matchMedia(Ru).matches);return(0,Q.useEffect)(()=>{let e=window.matchMedia(Ru),n=()=>{t(e.matches)};return n(),e.addEventListener(`change`,n),()=>{e.removeEventListener(`change`,n)}},[]),e}function Bu({accessibleLabel:e,disabled:t,effortLabel:n,modelLabel:r,...i}){return(0,$.jsxs)(l,{...i,"aria-label":e,className:`min-w-0 max-w-44 max-workbench:gap-0.5 max-workbench:px-1`,"data-slot":`composer-model-selector`,disabled:t,size:`sm`,type:`button`,variant:`ghost`,children:[(0,$.jsx)(`span`,{className:`min-w-0 truncate`,children:r}),n===``?null:(0,$.jsx)(`span`,{className:`shrink-0 text-muted-foreground`,children:n}),(0,$.jsx)(w,{"aria-hidden":`true`,className:`size-3 shrink-0 text-muted-foreground`})]})}function Vu(e,t,n){let r=e.find(e=>e.id===n),i=$c(r,t.reasoningEffort);if(!(r===void 0||i===void 0))return{...t,model:r.id,reasoningEffort:i}}function Hu(e,t,n){if(e?.supportedReasoningEfforts.some(e=>e.id===n))return{...t,reasoningEffort:n}}function Uu({activeSettings:e,disabled:t,models:n,modelsPending:r,onSettingsChange:i,selectedModel:a,selectedReasoningEffort:o}){let{t:s}=u([`workbench`,`settings`]),c=zu(),[d,f]=(0,Q.useState)(!1),p=a?.displayName??s(r?`composer.modelLoading`:`composer.noModels`),m=o===void 0?``:s(`settings:effort.${o}`,{defaultValue:o}),h=t||r||a===void 0,g=s(`composer.modelAndReasoningSelect`,{effort:m,model:p}),_=t=>{let r=Vu(n,e,t);r!==void 0&&i(r,`model`)},v=t=>{let n=Hu(a,e,t);n!==void 0&&i(n,`reasoningEffort`)};return c?(0,$.jsxs)(ft,{onOpenChange:f,open:d,children:[(0,$.jsx)(yt,{asChild:!0,children:(0,$.jsx)(Bu,{accessibleLabel:g,disabled:h,effortLabel:m,modelLabel:p})}),(0,$.jsxs)($t,{className:`w-[calc(100%-1rem)] max-w-xs gap-2 p-3`,children:[(0,$.jsx)(gt,{className:`text-body`,children:s(`composer.modelAndReasoningMenu`)}),(0,$.jsx)(St,{className:`sr-only`,children:g}),(0,$.jsxs)(`div`,{"aria-label":s(`composer.modelSelect`),className:`grid gap-0.5`,role:`radiogroup`,children:[(0,$.jsx)(`div`,{className:`px-2 py-1 text-label font-medium text-muted-foreground`,children:s(`composer.model`)}),n.map(e=>(0,$.jsxs)(l,{"aria-checked":e.id===a?.id,className:`w-full`,contentAlign:`start`,onClick:()=>{_(e.id),f(!1)},role:`radio`,size:`sm`,type:`button`,variant:`ghost`,children:[(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,title:e.displayName,children:e.displayName}),e.id===a?.id?(0,$.jsx)(K,{"aria-hidden":`true`,className:`size-3.5`}):null]},e.id))]}),(0,$.jsxs)(`div`,{"aria-label":s(`composer.reasonEffortSelect`),className:`grid gap-0.5 border-t border-separator pt-1.5`,role:`radiogroup`,children:[(0,$.jsx)(`div`,{className:`px-2 py-1 text-label font-medium text-muted-foreground`,children:s(`composer.reasoningEffort`)}),a?.supportedReasoningEfforts.map(e=>{let t=s(`settings:effort.${e.id}`,{defaultValue:e.id});return(0,$.jsxs)(l,{"aria-checked":e.id===o,className:`w-full`,contentAlign:`start`,onClick:()=>{v(e.id),f(!1)},role:`radio`,size:`sm`,type:`button`,variant:`ghost`,children:[(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:t}),e.id===o?(0,$.jsx)(K,{"aria-hidden":`true`,className:`size-3.5`}):null]},e.id)})]})]})]}):(0,$.jsxs)(pn,{children:[(0,$.jsx)(vn,{asChild:!0,children:(0,$.jsx)(Bu,{accessibleLabel:g,disabled:h,effortLabel:m,modelLabel:p})}),(0,$.jsxs)(Ut,{align:`end`,"aria-label":s(`composer.modelAndReasoningMenu`),className:`w-40`,side:`top`,children:[(0,$.jsxs)(hn,{children:[(0,$.jsxs)(zt,{"aria-label":s(`composer.modelSelect`),children:[(0,$.jsx)(`span`,{className:`font-medium`,children:s(`composer.model`)}),(0,$.jsx)(`span`,{className:`ml-auto max-w-28 truncate text-muted-foreground`,children:p})]}),(0,$.jsx)(yn,{"aria-label":s(`composer.modelSelect`),className:`w-40 max-w-[calc(100vw-1rem)]`,children:(0,$.jsx)(Xt,{onValueChange:_,...a===void 0?{}:{value:a.id},children:n.map(e=>(0,$.jsx)(Jt,{indicator:`check`,value:e.id,children:(0,$.jsx)(`span`,{className:`min-w-0 truncate`,title:e.displayName,children:e.displayName})},e.id))})})]}),(0,$.jsxs)(hn,{children:[(0,$.jsxs)(zt,{"aria-label":s(`composer.reasonEffortSelect`),children:[(0,$.jsx)(`span`,{className:`font-medium`,children:s(`composer.reasoningEffort`)}),(0,$.jsx)(`span`,{className:`ml-auto truncate text-muted-foreground`,children:m})]}),(0,$.jsx)(yn,{"aria-label":s(`composer.reasonEffortSelect`),className:`min-w-28 w-28 max-w-[calc(100vw-1rem)]`,children:(0,$.jsx)(Xt,{onValueChange:v,...o===void 0?{}:{value:o},children:a?.supportedReasoningEfforts.map(e=>(0,$.jsx)(Jt,{indicator:`check`,value:e.id,children:(0,$.jsx)(`span`,{className:`min-w-0 truncate`,children:s(`settings:effort.${e.id}`,{defaultValue:e.id})})},e.id))})})]})]})]})}function Wu({disabled:e,onSettingsChange:t,sandboxModeSelectable:n,settings:r}){let{t:i}=u([`workbench`,`settings`]);return(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(qe,{"aria-label":i(`composer.approvalMode`),className:`max-workbench:px-0.5`,disabled:e,onChange:e=>{t(tl(r,e.currentTarget.value),`approvalPolicy`)},value:el(r),children:[(0,$.jsx)(`option`,{value:`on-request`,children:i(`settings:approval.onRequest`)}),(0,$.jsx)(`option`,{value:`auto-review`,children:i(`settings:approval.autoReview`)}),(0,$.jsx)(`option`,{value:`never`,children:i(`settings:approval.never`)})]}),n?(0,$.jsx)($.Fragment,{children:(0,$.jsxs)(qe,{"aria-label":i(`composer.sandboxMode`),className:`max-workbench:px-0.5`,disabled:e,onChange:e=>{t({...r,sandboxMode:e.currentTarget.value},`sandboxMode`)},value:r.sandboxMode,children:[(0,$.jsx)(`option`,{value:`read-only`,children:i(`settings:sandbox.readOnly`)}),(0,$.jsx)(`option`,{value:`workspace-write`,children:i(`settings:sandbox.workspaceWrite`)}),(0,$.jsx)(`option`,{value:`danger-full-access`,children:i(`settings:sandbox.dangerFullAccess`)})]})}):null]})}function Gu(e){return e.split(/[\\/]/u).filter(Boolean).at(-1)??e}function Ku({onChange:e,roots:t,value:n}){let{t:r}=u(`workbench`);if(t.length<2)return null;let i=t.find(e=>e.id===n)??t[0];return i===void 0?null:(0,$.jsxs)(_n,{onValueChange:e,value:n,children:[(0,$.jsxs)(wt,{"aria-label":r(`shell.selectProjectRoot`),className:`min-w-0 max-w-28 shrink border-0 bg-transparent shadow-none hover:bg-control-hover sm:max-w-40`,size:`toolbar`,title:i.path,children:[(0,$.jsx)(Wn,{"aria-hidden":`true`}),(0,$.jsx)(en,{children:Gu(i.path)})]}),(0,$.jsx)(kt,{position:`popper`,children:t.map((e,t)=>(0,$.jsx)(ht,{textValue:e.path,value:e.id,children:(0,$.jsxs)(`span`,{className:`flex min-w-0 flex-col`,children:[(0,$.jsx)(`span`,{className:`truncate`,children:Gu(e.path)}),(0,$.jsxs)(`span`,{className:`truncate font-mono text-caption text-muted-foreground`,children:[t===0?`${r(`projectPicker.primaryRoot`)} · `:``,e.path]})]})},e.id))})]})}function qu({action:e}){let t=`size-4 shrink-0 text-brand`;switch(e){case`review`:return(0,$.jsx)(Mn,{"aria-hidden":`true`,className:t});case`initialize`:return(0,$.jsx)(st,{"aria-hidden":`true`,className:t});case`compact`:return(0,$.jsx)(In,{"aria-hidden":`true`,className:t});case`fork`:return(0,$.jsx)(X,{"aria-hidden":`true`,className:t});case`plan`:return(0,$.jsx)(Zn,{"aria-hidden":`true`,className:t});case`goal`:return(0,$.jsx)(sr,{"aria-hidden":`true`,className:t})}}function Ju({disabled:e,mode:t,onRemove:n}){let{t:r}=u(`workbench`),i=t===`goal`,a=r(i?`composer.goalMode`:`composer.planMode`),o=r(i?`composer.cancelGoalMode`:`composer.cancelPlanMode`),s=i?sr:Zn;return(0,$.jsxs)(N,{children:[(0,$.jsx)(P,{asChild:!0,children:(0,$.jsxs)(nt,{"aria-label":o,className:`group/composer-mode gap-1 px-1.5 text-foreground max-workbench:gap-0.5`,...i?{"data-goal-mode":``}:{"data-plan-mode":``},disabled:e,onClick:n,children:[(0,$.jsx)(s,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-brand`}),(0,$.jsx)(`span`,{className:`max-workbench:hidden`,children:a}),(0,$.jsx)(Et,{"aria-hidden":`true`,className:`size-3 shrink-0 opacity-0 transition-opacity group-hover/composer-mode:opacity-100 group-focus-visible/composer-mode:opacity-100`})]})}),(0,$.jsx)(I,{children:o})]})}function Yu({disabled:e,enabled:t,onChange:n}){let{t:r}=u(`workbench`),i=r(t?`composer.disableFastMode`:`composer.enableFastMode`);return(0,$.jsxs)(N,{children:[(0,$.jsx)(P,{asChild:!0,children:(0,$.jsx)(nt,{"aria-label":i,"aria-pressed":t,className:t?`text-brand`:`text-muted-foreground`,"data-fast-mode":``,disabled:e,onClick:()=>{n(!t)},children:(0,$.jsx)(dr,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,$.jsx)(I,{children:i})]})}function Xu(){let{t:e}=u(`workbench`),t=Ue();return t.files.length===0?null:(0,$.jsx)(at,{children:(0,$.jsx)(rs,{"aria-label":e(`composer.addedAttachments`),children:t.files.map(e=>(0,$.jsxs)(is,{data:e,onRemove:()=>{t.remove(e.id)},children:[(0,$.jsx)(as,{}),(0,$.jsx)(os,{}),(0,$.jsx)(ss,{disabled:t.disabled})]},e.id))})})}function Zu({props:e}){let{t}=u(`workbench`);return!e.commandMenuOpen||e.turnControlsDisabled?null:(0,$.jsx)(Ze,{"aria-label":t(`composer.commandInput`),className:`absolute inset-x-0 bottom-full z-20 mb-2`,id:e.commandMenuId,children:(0,$.jsx)(Ke,{children:e.reviewMenuMode===`scopes`?(0,$.jsxs)(et,{label:t(`composer.reviewScopeGroup`),children:[(0,$.jsxs)(rt,{active:e.activeCommandIndex===0,id:`${e.commandMenuId}-item-0`,onClick:()=>{e.onExecuteReview({type:`uncommitted_changes`})},children:[(0,$.jsx)(Mn,{"aria-hidden":`true`,className:`size-4 shrink-0 text-brand`}),(0,$.jsx)(`span`,{className:`font-medium`,children:t(`composer.reviewUncommitted`)})]}),(0,$.jsxs)(rt,{active:e.activeCommandIndex===1,"aria-description":e.baseBranches.length===0?t(`composer.noBaseBranch`):e.baseBranches[0],disabled:e.baseBranches.length===0,id:`${e.commandMenuId}-item-1`,onClick:e.onOpenReviewBranches,children:[(0,$.jsx)(qn,{"aria-hidden":`true`,className:`size-4 shrink-0 text-brand`}),(0,$.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,$.jsx)(`span`,{className:`font-medium`,children:t(`composer.baseBranchReview`)}),(0,$.jsx)(`span`,{className:`truncate text-caption text-muted-foreground`,children:e.baseBranches[0]??t(`composer.noBaseBranch`)})]})]})]}):e.reviewMenuMode===`branches`?(0,$.jsx)(et,{label:t(`composer.reviewBaseBranchGroup`),children:e.baseBranches.map((t,n)=>(0,$.jsxs)(rt,{active:e.activeCommandIndex===n,id:`${e.commandMenuId}-item-${String(n)}`,onClick:()=>{e.onExecuteReview({branch:t,type:`base_branch`})},children:[(0,$.jsx)(qn,{"aria-hidden":`true`,className:`size-4 shrink-0 text-brand`}),(0,$.jsx)(`span`,{className:`truncate font-medium`,children:t})]},t))}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(et,{label:t(`composer.commandGroup`),children:e.filteredCommands.map((t,n)=>{let r=e.getCommandAvailability(t);return(0,$.jsxs)(rt,{active:n===e.activeCommandIndex,"aria-description":r.reason,disabled:!r.available,id:`${e.commandMenuId}-item-${String(n)}`,onClick:()=>{e.onExecuteCommand(t)},children:[(0,$.jsx)(qu,{action:t.action}),(0,$.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,$.jsx)(`span`,{className:`font-medium`,children:t.label}),(0,$.jsx)(`span`,{className:`text-caption text-muted-foreground`,children:r.reason??t.description})]})]},t.id)})}),e.filteredSkills.length===0?null:(0,$.jsx)(et,{label:`Skills`,children:e.filteredSkills.map((t,n)=>{let r=e.filteredCommands.length+n;return(0,$.jsxs)(rt,{active:r===e.activeCommandIndex,id:`${e.commandMenuId}-item-${String(r)}`,onClick:()=>{e.onSelectSkill(t)},children:[(0,$.jsx)(Be,{"aria-hidden":`true`,className:`size-4 shrink-0 text-brand`}),(0,$.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,$.jsx)(`span`,{className:`font-medium text-brand`,children:t.displayName}),(0,$.jsxs)(`span`,{className:`block max-w-full truncate text-caption text-muted-foreground`,children:[`/`,t.name,` · `,t.description]})]})]},t.id)})}),e.menuItemCount===0?(0,$.jsx)(We,{children:t(`composer.commandNoMatch`)}):null]})})})}function Qu(e,t){let n=e.slice(0,Math.max(0,e.length-t.length)).replace(/\/$/u,``);return n===``?`.`:n}function $u({props:e}){let{t}=u(`workbench`);return!e.fileMenuOpen||e.turnControlsDisabled?null:(0,$.jsx)(Ze,{"aria-label":t(`composer.fileSearch`),className:`absolute inset-x-0 bottom-full z-20 mb-2`,id:e.commandMenuId,children:(0,$.jsx)(Ke,{children:e.fileSearchPending?(0,$.jsx)(We,{children:t(`composer.fileSearchLoading`)}):e.fileSearchError===null?e.fileSearchResults.length===0?(0,$.jsx)(We,{children:t(`composer.fileSearchEmpty`)}):(0,$.jsx)(et,{label:t(`composer.fileSearchGroup`),children:e.fileSearchResults.map((t,n)=>(0,$.jsxs)(rt,{active:n===e.activeCommandIndex,id:`${e.commandMenuId}-item-${String(n)}`,onClick:()=>{e.onSelectFileReference(t)},children:[(0,$.jsx)(lt,{"aria-hidden":`true`,className:`size-4 shrink-0 text-muted-foreground`}),(0,$.jsxs)(`span`,{className:`flex min-w-0 flex-1 items-baseline gap-2`,children:[(0,$.jsx)(`span`,{className:`shrink-0 font-medium text-foreground`,children:t.name}),(0,$.jsx)(`span`,{className:`min-w-0 truncate text-caption text-muted-foreground`,children:Qu(t.path,t.name)})]})]},t.path))}):(0,$.jsx)(We,{children:t(`composer.fileSearchFailed`)})})})}function ed(e,t){return e.text||e.skills.map(e=>`$${e.name}`).join(` `)||t}function td({disabled:e,onOpen:t,projectPath:n}){let{t:r}=u(`workbench`),i=r(`composer.openProjectFolder`);return(0,$.jsxs)(N,{children:[(0,$.jsx)(P,{asChild:!0,children:(0,$.jsxs)(l,{"aria-label":i,className:`h-6 w-fit min-w-0 max-w-full shrink gap-1 rounded-control px-1 text-caption text-muted-foreground hover:bg-control-hover hover:text-foreground`,contentAlign:`start`,disabled:e,onClick:t,type:`button`,variant:`ghost`,children:[(0,$.jsx)(ye,{"aria-hidden":`true`,className:`size-3 shrink-0`}),(0,$.jsx)(`span`,{className:`truncate`,children:n})]})}),(0,$.jsx)(I,{children:i})]})}function nd({onOpen:e,onRootChange:t,projectPath:n,projectPathOpenDisabled:r,roots:i,selectedRootId:a}){return(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-1`,"data-composer-project-root-controls":``,children:[(0,$.jsx)(Ku,{onChange:t,roots:i,value:a}),(0,$.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,$.jsx)(td,{disabled:r,onOpen:e,projectPath:n})})]})}function rd(e){let{t}=u([`workbench`,`settings`]);return(0,$.jsxs)(`section`,{className:`shrink-0 bg-content px-1 pb-2 max-[360px]:px-0 sm:px-5`,"aria-label":t(`composer.landmark`),children:[(0,$.jsxs)(`div`,{className:`relative mx-auto w-full max-w-content`,ref:e.commandSurfaceRef,children:[(0,$.jsx)(Zu,{props:e}),(0,$.jsx)($u,{props:e}),e.queuedPrompts.length===0?null:(0,$.jsx)(`div`,{"aria-label":t(`composer.queuedMessages`),className:`mb-2 space-y-1.5`,role:`list`,children:e.queuedPrompts.map((n,r)=>{let i=ed(n,t(`composer.attachmentCount`,{count:n.files.length}));return(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2 rounded-control border border-separator bg-control px-2 py-1.5`,role:`listitem`,children:[(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-label text-foreground`,children:i}),n.status===`awaiting-response`?(0,$.jsxs)(`span`,{"aria-label":t(`composer.waitingToSend`),className:`inline-flex shrink-0 items-center gap-1 text-caption text-muted-foreground`,role:`status`,children:[(0,$.jsx)(m,{"aria-hidden":`true`,className:`size-3.5 animate-spin`}),t(`composer.waitingToSend`)]}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(N,{children:[(0,$.jsx)(P,{asChild:!0,children:(0,$.jsx)(l,{"aria-label":t(`composer.moveQueuedUp`,{summary:i}),disabled:e.isSubmitting||r===0,onClick:()=>{e.moveQueuedPrompt(n.id,-1)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(H,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,$.jsx)(I,{children:t(`composer.moveQueuedUpTooltip`)})]}),(0,$.jsxs)(N,{children:[(0,$.jsx)(P,{asChild:!0,children:(0,$.jsx)(l,{"aria-label":t(`composer.moveQueuedDown`,{summary:i}),disabled:e.isSubmitting||r===e.queuedPrompts.length-1,onClick:()=>{e.moveQueuedPrompt(n.id,1)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(Dn,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,$.jsx)(I,{children:t(`composer.moveQueuedDownTooltip`)})]}),(0,$.jsxs)(N,{children:[(0,$.jsx)(P,{asChild:!0,children:(0,$.jsx)(l,{"aria-label":t(`composer.editQueued`,{summary:i}),disabled:e.isSubmitting,onClick:()=>{e.editQueuedPrompt(n)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(Gt,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,$.jsx)(I,{children:t(`composer.editQueuedTooltip`)})]}),(0,$.jsxs)(N,{children:[(0,$.jsx)(P,{asChild:!0,children:(0,$.jsx)(l,{"aria-label":t(`composer.steerNow`,{summary:i}),className:`hover:text-brand`,disabled:e.isSubmitting||e.taskId===void 0||(e.activeTurnId===void 0?!e.canSubmit:!e.canSteer),onClick:()=>{e.steerQueuedPrompt(n)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(ir,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,$.jsx)(I,{children:t(`composer.steerNowTooltip`)})]}),(0,$.jsxs)(N,{children:[(0,$.jsx)(P,{asChild:!0,children:(0,$.jsx)(l,{"aria-label":t(`composer.cancelQueued`,{summary:i}),className:`hover:text-danger`,disabled:e.isSubmitting,onClick:()=>{e.removeQueuedPrompt(n.id)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(Et,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,$.jsx)(I,{children:t(`composer.cancelQueuedTooltip`)})]})]})]},n.id)})}),(0,$.jsxs)(Oe,{attachments:e.attachments,"aria-busy":e.state===`submitting`||e.state===`reconnecting`,className:`w-full`,"data-state":e.state,disabled:e.attachmentsDisabled,fileAccept:k,globalDrop:!0,imageAccept:v,largePasteCharacterThreshold:Yc,maxFileSize:O,maxFileTotalSize:A,maxImageSize:_,maxImages:20,maxImageTotalSize:b,multiple:!0,onAttachmentsChange:e.onAttachmentsChange,onError:t=>{e.onViewError(Error(t.message))},onSubmit:e.onSubmit,pastedTextFileName:Xc,children:[(0,$.jsx)(Xu,{}),(0,$.jsxs)($e,{children:[(0,$.jsx)(`input`,{name:`message`,type:`hidden`,value:e.promptSubmissionText}),(0,$.jsx)(Gl,{"aria-activedescendant":e.activeCommandItemId,"aria-controls":e.commandMenuOpen||e.fileMenuOpen?e.commandMenuId:void 0,"aria-expanded":e.commandMenuOpen||e.fileMenuOpen,"aria-haspopup":`listbox`,"aria-label":t(`composer.taskInput`),content:e.promptContent,disabled:e.draftInputDisabled,onChange:e.onPromptChange,onKeyDown:t=>{if(!Xe(t.nativeEvent)){if(e.commandMenuOpen||e.fileMenuOpen){if(t.key===`ArrowDown`||t.key===`ArrowUp`){t.preventDefault(),e.setActiveCommandIndex(n=>lu(n,t.key===`ArrowDown`?1:-1,e.menuItemCount));return}t.key===`Enter`&&!Ye(t)&&(t.preventDefault(),e.onSelectActiveCommand());return}if((t.key===`ArrowDown`||t.key===`ArrowUp`)&&!(t.altKey||t.ctrlKey||t.metaKey||t.shiftKey)){let n=document.getSelection(),r=t.key===`ArrowUp`?`previous`:`next`,i=t.currentTarget.dataset.serializedValue??``;n?.isCollapsed===!0&&t.currentTarget.contains(n.anchorNode)&&vu(i,Bl(t.currentTarget),r)&&e.onPromptHistoryNavigate(r)&&t.preventDefault()}}},placeholder:Zc(e.taskId),ref:e.skillEditorRef,skills:e.skills,scope:e.composerScope})]}),(0,$.jsxs)(Qe,{className:`max-workbench:gap-0.5 max-workbench:px-1 max-[360px]:!gap-0 max-[360px]:!px-0`,children:[(0,$.jsxs)(tt,{className:`max-workbench:shrink-0 max-workbench:gap-0.5 max-[360px]:!gap-0`,children:[(0,$.jsx)(it,{className:`max-workbench:w-8 max-workbench:min-w-8 max-workbench:px-0 max-[360px]:!w-6 max-[360px]:!min-w-6`,disabled:e.attachmentsDisabled,onSelectKind:e.onSelectAttachmentKind}),(0,$.jsx)(Wu,{disabled:e.turnControlsDisabled,onSettingsChange:e.onSettingsChange,sandboxModeSelectable:e.sandboxModeSelectable,settings:e.activeSettings}),e.composerMode===void 0?null:(0,$.jsx)(Ju,{disabled:e.turnControlsDisabled,mode:e.composerMode,onRemove:e.onComposerModeRemove}),e.fastModeAvailable?(0,$.jsx)(Yu,{disabled:e.turnControlsDisabled,enabled:e.fastModeEnabled,onChange:e.onFastModeChange}):null]}),(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1 max-workbench:shrink-0 max-workbench:gap-0.5 max-[360px]:!gap-0`,children:[(0,$.jsx)(Uu,{activeSettings:e.activeSettings,disabled:e.turnControlsDisabled,models:e.models,modelsPending:e.modelsPending,onSettingsChange:e.onSettingsChange,selectedModel:e.selectedModel,selectedReasoningEffort:e.selectedReasoningEffort}),(0,$.jsx)(Je,{"aria-label":e.submitAction===`queue`?t(`composer.queueMessage`):e.submitAction===`steer`?t(`composer.sendSteer`):e.submitAction===`interrupt`?t(`composer.stop`):t(`composer.submit`),disabled:e.turnControlsDisabled||e.submitAction===`blocked`||e.submitAction===`start`&&(!e.canSubmit||e.selectedModel===void 0||e.selectedReasoningEffort===void 0)||e.submitAction===`interrupt`&&(!e.canInterrupt||e.activeTurnId===void 0),className:`max-workbench:w-8 max-workbench:min-w-8 max-[360px]:!w-6 max-[360px]:!min-w-6`,onClick:e.submitAction===`interrupt`?e.onInterrupt:void 0,status:e.state===`running`&&e.hasComposerInput?`idle`:e.state,type:e.submitAction===`interrupt`?`button`:`submit`})]})]})]})]}),e.modelsError===null?null:(0,$.jsx)(`p`,{className:`mx-auto mt-1 w-full max-w-content px-1 text-caption text-danger`,role:`alert`,children:t(`composer.modelListFailed`)}),(0,$.jsxs)(`div`,{className:`mx-auto mt-1.5 flex h-9 w-full max-w-content min-w-0 items-center gap-3 px-1 text-caption text-muted-foreground`,children:[e.projectToolsEnabled?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`div`,{className:`flex min-w-0 shrink items-center gap-0.5`,children:(0,$.jsx)(Lu,{creatingBranch:e.creatingBranch,creatingWorktree:e.creatingWorktree,gitStatus:e.gitStatus,onBranchChange:e.onBranchChange,onBranchCreate:e.onBranchCreate,onWorktreeChange:e.onWorktreeChange,onWorktreeCreate:e.onWorktreeCreate,switchingBranch:e.switchingBranch,switchingWorktree:e.switchingWorktree,worktrees:e.worktrees,worktreesError:e.worktreesError,worktreesPending:e.worktreesPending})}),(0,$.jsx)(nd,{onOpen:e.onOpenProjectPath,onRootChange:e.onProjectRootChange,projectPath:e.projectPath,projectPathOpenDisabled:e.projectPathOpenDisabled,roots:e.projectRoots,selectedRootId:e.selectedProjectRootId})]}):null,(0,$.jsx)(Eu,{className:`ml-auto`,maxTokens:e.contextUsage?.contextWindow,usedTokens:e.contextUsage?.usedTokens,children:(0,$.jsx)(Pu,{})})]})]})}function id({composerRef:e,capabilities:t,client:n,fastModeAvailable:r,fastModeDefault:i,followUpBehavior:a,models:o,modelsError:s,modelsPending:c,onDirectSubmission:l,onFastModeChange:d,onOpenProjectPath:f,onProjectRootChange:p,onRequestNotificationPermission:m,onSettingsChange:h,onSubmissionStateChange:g,onTaskCreated:_,onTaskStarted:v,onTurnStarted:y,projectId:b,projectPath:x,projectPathOpenDisabled:S,projectRoots:C,projectToolsEnabled:w=!0,selectedProjectRootId:T,gitStatus:E,runtime:D,settings:O,skills:k,taskId:A}){let{t:j}=u([`workbench`,`settings`]),M=bu({capabilities:t,client:n,gitStatus:E,models:o,onSubmissionStateChange:g,projectId:b,projectPath:x,projectToolsEnabled:w,runtime:D,settings:O,skills:k,taskId:A}),{activeCommandIndex:N,activeCommandItemId:P,activeSettings:F,activeTaskId:I,activeTurnId:L,attachmentCount:R,attachmentPickerKind:z,attachments:B,attachmentsDisabled:V,baseBranches:H,canInterrupt:U,canSteer:W,canSubmit:G,clearComposerInput:K,closeCommandMenu:q,closeFileMenu:ee,commandMenuId:te,commandMenuOpen:J,commandSurfaceRef:Y,composerMode:ne,composerController:re,composerScope:ie,contextUsage:ae,draftInputDisabled:oe,filteredCommands:se,filteredSkills:ce,fileMenuOpen:le,fileSearchError:ue,fileSearchPending:de,fileSearchResults:fe,handleAttachmentsChange:pe,handlePromptChange:me,isSubmitting:he,menuItemCount:ge,navigatePromptHistory:_e,pendingTask:ve,promptContent:ye,promptSubmission:be,referenceProjectPath:xe,reviewMenuMode:Se,routeScope:Ce,selectedModel:we,selectedReasoningEffort:Te,selectFileReference:Ee,setActiveCommandIndex:De,setAttachmentPickerKind:Oe,setIsSubmitting:ke,setMutationError:X,setComposerModeState:Ae,setReviewMenuMode:je,setSettingsOverride:Z,skillEditorRef:Me,state:Ne,turnControlsDisabled:Pe}=M,[Fe,Ie]=(0,Q.useState)(),Le=Fe?.scope===ie?Fe.enabled:i,Re=r&&Le,{actionLock:ze,interruptAttempt:Be,isCurrentScope:Ve}=re,He=(e,t)=>{Z({scope:Ce,settings:e}),X(null),Promise.resolve(h(e,t,Le)).catch(()=>void 0)},Ue=$l({client:n,gitStatus:E,isCurrentScope:Ve,projectId:b,rootPath:x,routeScope:Ce});(0,Q.useEffect)(()=>{Pe&&(q(),ee())},[q,ee,Pe]),(0,Q.useEffect)(()=>{if(!J&&!le)return;let e=e=>{e.key===`Escape`&&(e.preventDefault(),q(),ee())},t=e=>{let t=e.target;t instanceof Node&&!Y.current?.contains(t)&&(q(),ee())};return document.addEventListener(`keydown`,e,!0),document.addEventListener(`pointerdown`,t,!0),()=>{document.removeEventListener(`keydown`,e,!0),document.removeEventListener(`pointerdown`,t,!0)}},[q,ee,J,Y,le]);let We=tu({activeTurnId:L,client:n,handleAttachmentsChange:pe,projectId:b,replacePromptContent:M.replacePromptContent,routeScope:Ce,runtime:D,skillEditorRef:Me,skills:k,taskId:A});(0,Q.useEffect)(()=>{We.queueError!==null&&X(We.queueError)},[We.queueError,X]);let Ge=Cu({activeUserMessageIds:D?.store===void 0?Wc(D?.snapshot,L):Gc(D.store.getState(),L),activeSettings:F,activeTaskId:I,activeTurnId:L,canSteer:W,canSubmit:G,clearComposerInput:K,client:n,controller:re,composerMode:ne,followUpBehavior:a,fastMode:Re,onDirectSubmission:l,onGoalStarted:()=>{Ae(void 0)},onSteerAccepted:We.onSteerAccepted,onRequestNotificationPermission:m,onTaskCreated:_,onTaskStarted:v,onTurnStarted:y,pendingTask:ve,projectId:b,promptContent:ye,routeScope:Ce,selectedModel:we,selectedReasoningEffort:Te,saveQueuedSubmission:We.saveQueuedSubmission,skillEditorRef:Me,state:Ne,taskId:A,t:j,turnControlsDisabled:Pe});(0,Q.useImperativeHandle)(e,()=>({buildPlan:()=>(Ae(void 0),Ge({files:[],text:j(`composer.buildPlanPrompt`)},[],{composerMode:null,forceAction:`start`})),referenceProjectPath:xe}));let{executePromptCommand:Ke,executeReviewTarget:qe,getCommandAvailability:Je,selectActiveCommandItem:Ye,selectSkill:Xe}=uu({capabilities:t,client:n,onRequestNotificationPermission:m,onTaskCreated:_,onTaskStarted:v,projectId:b,session:M,submitPrompt:Ge,t:j,taskId:A}),Ze=async()=>{let e=Ce;!U||I===void 0||L===void 0||Pe||await ze.run(async()=>{let t=`${I}:${L}`;ke(!0),X(null);let r=Qc(Be.current,t);Be.current=r;try{await ll(n,b,I,L,r.key)}catch(t){Ve(e)&&X(t instanceof Error?t:Error(`Turn interruption failed`))}finally{Ve(e)&&ke(!1)}})},Qe=!jl(ye)||R>0,$e=rl(Ne,Qe,a,W),et=(0,$.jsx)(rd,{activeCommandIndex:N,activeCommandItemId:P,activeSettings:F,activeTurnId:L,attachments:B,attachmentsDisabled:V,baseBranches:H,canInterrupt:U,canSteer:W,canSubmit:G,commandMenuId:te,commandMenuOpen:J,commandSurfaceRef:Y,composerMode:ne,composerScope:ie,contextUsage:ae,creatingBranch:Ue.creatingBranch,creatingWorktree:Ue.creatingWorktree,draftInputDisabled:oe,filteredCommands:se,filteredSkills:ce,fileMenuOpen:le,fileSearchError:ue,fileSearchPending:de,fileSearchResults:fe,fastModeAvailable:r,fastModeEnabled:Re,getCommandAvailability:Je,gitStatus:E,hasComposerInput:Qe,isSubmitting:he,menuItemCount:ge,moveQueuedPrompt:(e,t)=>{We.moveQueuedPrompt(e,t).catch(X)},models:o,modelsError:s,modelsPending:c,editQueuedPrompt:We.editQueuedPrompt,onComposerModeRemove:()=>{Ae(void 0)},onAttachmentsChange:pe,onBranchCreate:Ue.createBranch,onBranchChange:e=>{Ue.switchBranch(e)},onWorktreeChange:e=>{Ue.switchWorktree(e)},onWorktreeCreate:Ue.createWorktree,onExecuteCommand:e=>{Ke(e)},onExecuteReview:e=>{qe(e)},onFastModeChange:e=>{Ie({enabled:e,scope:ie}),Promise.resolve(d(e,F)).catch(()=>void 0)},onInterrupt:()=>{Ze()},onOpenProjectPath:f,onProjectRootChange:p,onOpenReviewBranches:()=>{De(0),je(`branches`)},onPromptChange:me,onPromptHistoryNavigate:_e,onSelectActiveCommand:Ye,onSelectAttachmentKind:Oe,onSelectFileReference:Ee,onSelectSkill:Xe,onSettingsChange:He,onSubmit:e=>void Ge(e),onViewError:e=>{X(e)},projectPath:x,projectPathOpenDisabled:S,projectRoots:C,projectToolsEnabled:w,promptContent:ye,promptSubmissionText:be.text,queuedPrompts:We.queuedPrompts,removeQueuedPrompt:e=>{We.removeQueuedPrompt(e).catch(X)},reviewMenuMode:Se,sandboxModeSelectable:!0,selectedModel:we,selectedReasoningEffort:Te,selectedProjectRootId:T,setActiveCommandIndex:De,skills:k,skillEditorRef:Me,state:Ne,steerQueuedPrompt:e=>{We.sendQueuedPrompt(e,Ge).catch(X)},submitAction:$e,switchingBranch:Ue.switchingBranch,switchingWorktree:Ue.switchingWorktree,taskId:A,turnControlsDisabled:Pe,worktrees:Ue.worktrees,worktreesError:Ue.worktreesError,worktreesPending:Ue.worktreesPending});return z===void 0?et:(0,$.jsxs)($.Fragment,{children:[et,(0,$.jsx)(pl,{client:n,kind:z,onAdd:e=>{Ve(Ce)&&(pe([...B,e]),Oe(void 0))},onClose:()=>{Oe(void 0)},projectId:b})]})}var ad=8;function od(e,t,n){return Math.min(n,Math.max(t,e))}function sd({direction:e,label:t,maximumWidth:n,minimumWidth:r,onResize:i,onResizeEnd:a,onResizeStart:o,panel:s,width:c}){let l=(0,Q.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,$.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=od(c+(t.key===`ArrowLeft`?-8:ad)*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=od(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 cd=(0,Q.lazy)(()=>nn(()=>import(`./patch-diff-viewer-BHcdOhhw.js`),__vite__mapDeps([17,3,6,5,7,8,9,10,11,12,13,14,1,2,4,18,19])));function ld({change:e,onClose:t}){let{t:n}=u(`workbench`);if(e===null)return null;let r=wn(e.path),{additions:i,removals:a}=Tn(e),o=`file-diff-dialog-title`;return(0,$.jsx)(ft,{onOpenChange:e=>{e||t()},open:!0,children:(0,$.jsx)($t,{"aria-labelledby":o,className:`h-[min(82dvh,54rem)] max-w-[72rem] overflow-hidden p-0`,children:(0,$.jsxs)(`section`,{className:`grid h-full min-h-0 w-full min-w-0 grid-rows-[auto_minmax(0,1fr)] bg-raised`,children:[(0,$.jsxs)(`header`,{className:`flex min-w-0 min-h-toolbar items-center gap-3 px-3 shadow-toolbar sm:px-4`,children:[(0,$.jsx)(Ie,{className:`size-4 shrink-0 text-muted-foreground`,"aria-hidden":`true`}),(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(gt,{className:`truncate text-body-small`,id:o,title:e.path,children:r}),(0,$.jsx)(`p`,{className:`truncate text-caption text-muted-foreground`,title:e.path,children:e.path})]}),(0,$.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 text-label font-medium`,children:[(0,$.jsxs)(`span`,{className:`text-diff-added`,children:[`+`,i]}),(0,$.jsxs)(`span`,{className:`text-diff-removed`,children:[`-`,a]}),(0,$.jsxs)(N,{children:[(0,$.jsx)(P,{asChild:!0,children:(0,$.jsx)(l,{"aria-label":n(`diff.close`),onClick:t,size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(Et,{className:`size-3.5`,"aria-hidden":`true`})})}),(0,$.jsx)(I,{children:n(`diff.close`)})]})]})]}),(0,$.jsx)(`div`,{className:`min-h-0 min-w-0 overflow-auto bg-content`,children:(0,$.jsx)(Q.Suspense,{fallback:(0,$.jsx)(`div`,{className:`grid min-h-48 place-items-center text-body-small text-muted-foreground`,role:`status`,children:n(`diff.loading`)}),children:(0,$.jsx)(cd,{change:e})})})]})})})}function ud(e){return e.split(/[\\/]/u).at(-1)??e}function dd({actions:e,lineNumber:t,onClose:n,previewKind:r,sourcePath:i,titleId:a,sourceStatus:o}){let{t:s}=u(`workbench`);return(0,$.jsxs)(Zs,{className:`min-h-toolbar gap-3 bg-raised px-3 shadow-toolbar sm:px-4`,children:[(0,$.jsxs)(Qs,{className:`min-w-0 flex-1`,children:[r===`image`?(0,$.jsx)(Xn,{className:`size-4 shrink-0 text-muted-foreground`,"aria-hidden":`true`}):(0,$.jsx)(Ie,{className:`size-4 shrink-0 text-muted-foreground`,"aria-hidden":`true`}),(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(gt,{asChild:!0,children:(0,$.jsx)(`h2`,{className:`truncate text-body-small font-semibold`,id:a,title:i,children:(0,$.jsxs)($s,{children:[ud(i),t===null?null:` (line ${String(t)})`]})})}),(0,$.jsx)(`p`,{className:`truncate text-caption text-muted-foreground`,title:i,children:i})]})]}),o===null?null:(0,$.jsx)(`span`,{className:`shrink-0 text-label ${o===`error`?`text-danger`:`text-warning`}`,role:o===`error`?`alert`:`status`,children:s(o===`loading`?`projectDialog.loadingMoreSource`:o===`error`?`projectDialog.loadMoreSourceError`:`projectDialog.sourcePartial`)}),(0,$.jsxs)(ec,{children:[e,(0,$.jsxs)(N,{children:[(0,$.jsx)(P,{asChild:!0,children:(0,$.jsx)(l,{"aria-label":s(r===`image`?`projectDialog.closeImagePreview`:`projectDialog.closeSource`),onClick:n,size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(Et,{className:`size-3.5`,"aria-hidden":`true`})})}),(0,$.jsx)(I,{children:s(r===`image`?`projectDialog.closeImagePreview`:`projectDialog.closeSource`)})]})]})]})}var fd=400;function pd(e){return e.scrollHeight-e.scrollTop-e.clientHeight<=fd}function md(e,t){return e.nextCursor===null||e.nextCursor===t?void 0:e.nextCursor}function hd(e){let t=e[0],n=e.at(-1);if(!(t===void 0||n===void 0))return{content:e.map(e=>e.content).join(``),nextCursor:n.nextCursor,path:t.path}}function gd({client:e,onClose:t,previewKind:n,projectId:r,reference:i,rootPath:a}){let{t:o}=u(`workbench`),s=(0,Q.useRef)(null),[c,d]=(0,Q.useState)(null),[f,p]=(0,Q.useState)(!1),m=gn({enabled:i!==null&&n===`source`,getNextPageParam:(e,t,n)=>md(e,n),initialPageParam:void 0,queryFn:async({pageParam:t,signal:n})=>{if(i===null)throw Error(`Source file reference is required`);return e.readProjectSourceFile(r,a,i.path,t,{signal:n})},queryKey:[`projects`,r,a??null,`source-file`,i?.path??null],staleTime:3e4}),h=m.data?.pages,_=m.fetchNextPage,v=m.hasNextPage,y=m.isFetchingNextPage,b=(0,Q.useMemo)(()=>h===void 0?void 0:hd(h),[h]);if((0,Q.useEffect)(()=>{p(!1)},[n,i?.path]),(0,Q.useEffect)(()=>{let e=i?.lineNumber;if(b===void 0||e==null||c===b.path)return;let t=s.current?.querySelector(`[data-code-line="${String(e)}"]`);if(t!=null){t.scrollIntoView({block:`center`});return}v&&!y&&_()},[_,v,y,i?.lineNumber,c,b]),i===null)return null;let x=b?.path??i.path,S=b?.content??``,C=ud(x),w=g(``,r,i.path,a),T=Sn(x),E=(T===`markdown`||T===`mdx`)&&b?.nextCursor===null,D=E&&c===x,O=`project-source-dialog-title`,k=()=>{d(null),t()},A=b===void 0?null:y?`loading`:m.isFetchNextPageError?`error`:v?`partial`:null,j={lineNumber:i.lineNumber,onClose:k,previewKind:n,sourcePath:x,titleId:O,sourceStatus:A};return(0,$.jsx)(ft,{onOpenChange:e=>{e||k()},open:!0,children:(0,$.jsx)($t,{"aria-labelledby":O,className:`h-[min(82dvh,54rem)] max-w-[72rem] overflow-hidden p-0`,onEscapeKeyDown:e=>{e.preventDefault(),k()},onKeyDown:e=>{e.key===`Escape`&&(e.preventDefault(),e.stopPropagation(),k())},onScrollCapture:e=>{if(n!==`source`||!v||y)return;let t=e.target;!(t instanceof HTMLElement)||!pd(t)||_()},ref:s,children:(0,$.jsx)(`section`,{className:`h-full min-h-0 bg-raised`,children:n===`image`?(0,$.jsxs)(`div`,{className:`grid h-full min-h-0 grid-rows-[auto_minmax(0,1fr)] bg-content`,children:[(0,$.jsx)(dd,{...j}),(0,$.jsx)(`div`,{className:`grid min-h-0 place-items-center overflow-hidden p-4 sm:p-6`,children:f?(0,$.jsx)(`div`,{className:`text-body-small text-danger`,role:`alert`,children:o(`projectDialog.loadImageError`)}):(0,$.jsx)(`img`,{alt:C,className:`block size-full object-contain`,decoding:`async`,onError:()=>{p(!0)},src:w})})]}):b===void 0&&m.isPending?(0,$.jsxs)(`div`,{className:`grid h-full min-h-0 grid-rows-[auto_minmax(0,1fr)]`,children:[(0,$.jsx)(dd,{...j}),(0,$.jsx)(`div`,{className:`grid min-h-48 place-items-center text-body-small text-muted-foreground`,role:`status`,children:o(`projectDialog.loadingSource`)})]}):b===void 0&&m.error!==null?(0,$.jsxs)(`div`,{className:`grid h-full min-h-0 grid-rows-[auto_minmax(0,1fr)]`,children:[(0,$.jsx)(dd,{...j}),(0,$.jsx)(`div`,{className:`grid min-h-48 place-items-center text-body-small text-danger`,role:`alert`,children:o(`projectDialog.loadSourceError`)})]}):D?(0,$.jsxs)(`div`,{className:`grid h-full min-h-0 grid-rows-[auto_minmax(0,1fr)] bg-content`,children:[(0,$.jsx)(dd,{...j,actions:(0,$.jsxs)(N,{children:[(0,$.jsx)(P,{asChild:!0,children:(0,$.jsx)(l,{"aria-label":o(`projectDialog.showRawContent`),onClick:()=>{d(null)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(Bn,{className:`size-3.5`,"aria-hidden":`true`})})}),(0,$.jsx)(I,{children:o(`projectDialog.showRawContent`)})]})}),(0,$.jsx)(`div`,{className:`min-h-0 overflow-auto px-5 py-4 sm:px-8 sm:py-6`,children:(0,$.jsx)(Z,{className:`mx-auto max-w-4xl`,children:S})})]}):(0,$.jsx)(Xs,{className:`grid h-full min-h-0 grid-rows-[auto_minmax(0,1fr)] rounded-none bg-content shadow-none`,code:S,highlightedLine:i.lineNumber,language:T,showLineNumbers:!0,children:(0,$.jsx)(dd,{...j,actions:(0,$.jsxs)($.Fragment,{children:[E?(0,$.jsxs)(N,{children:[(0,$.jsx)(P,{asChild:!0,children:(0,$.jsx)(l,{"aria-label":o(`projectDialog.previewMarkdown`),onClick:()=>{d(x)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(dn,{className:`size-3.5`,"aria-hidden":`true`})})}),(0,$.jsx)(I,{children:o(`projectDialog.previewMarkdown`)})]}):null,(0,$.jsx)(tc,{})]})})})})})})}function _d({message:e,role:t}){return(0,$.jsx)(`div`,{className:`grid min-h-0 flex-1 place-items-center px-6 text-sm text-muted-foreground`,role:t,children:e})}function vd({onClose:e,projectId:t,projectRuntime:n,selection:r}){return r===null?null:(0,$.jsx)(yd,{onClose:e,projectId:t,projectRuntime:n,selection:r})}function yd({onClose:e,projectId:t,projectRuntime:n,selection:r}){let{t:i}=u(`workbench`),a=bt(t,r.taskId,n),o=`subagent-output-dialog-title`,s;return s=a.error===null?a.isPending||a.snapshot===void 0?(0,$.jsx)(_d,{message:i(`subagentOutput.loading`),role:`status`}):(0,$.jsxs)($.Fragment,{children:[a.connectionState===`reconnecting`?(0,$.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,$.jsx)(Rc,{projectId:t,runtime:a,taskId:r.taskId})]}):(0,$.jsx)(_d,{message:i(`subagentOutput.error`),role:`alert`}),(0,$.jsx)(ft,{onOpenChange:t=>{t||e()},open:!0,children:(0,$.jsx)($t,{"aria-labelledby":o,className:`h-[min(86dvh,58rem)] max-w-[76rem] overflow-hidden p-0`,"data-subagent-output-dialog":``,children:(0,$.jsxs)(`section`,{className:`grid h-full min-h-0 grid-rows-[auto_minmax(0,1fr)] bg-raised`,children:[(0,$.jsxs)(`header`,{className:`flex min-h-toolbar items-center gap-3 px-3 shadow-toolbar sm:px-4`,children:[(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(gt,{className:`truncate text-body-small`,id:o,children:i(`subagentOutput.title`)}),(0,$.jsx)(`p`,{className:`truncate text-caption text-muted-foreground`,title:r.taskId,children:r.taskId})]}),(0,$.jsx)(Wa,{collapsible:!1,status:Ii(r.status),children:(0,$.jsx)(Ka,{title:i(`subagentOutput.task`,{taskId:r.taskId})})}),(0,$.jsx)(l,{"aria-label":i(`subagentOutput.close`),onClick:e,size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(Et,{className:`size-3.5`,"aria-hidden":`true`})})]}),(0,$.jsx)(`div`,{className:`flex min-h-0 flex-col overflow-hidden bg-content`,children:s})]})})})}var bd=(0,Q.lazy)(()=>Ht().then(e=>({default:e.GlobalSettingsDialog})));function xd({context:e,projectId:t,projectToolsEnabled:n,taskId:r}){let{access:i,appInfoQuery:a,appUpdateMutation:o,client:s,closeTaskRenameDialog:c,globalSettingsMutation:l,globalSettingsSection:u,globalSettingsQuery:d,fastModeAvailable:f,models:p,modelsQuery:m,projectOpenCapabilitiesQuery:h,projectRuntime:g,renameActiveTask:_,renameMutation:v,selectedFileChange:y,selectedFileReview:b,selectedSourceFile:x,selectedRootPath:S,selectedSubagent:C,setFileDiffSelection:w,setFileReviewSelection:T,setGlobalSettingsSection:E,setSourceFileSelection:D,setSubagentDialogSelection:O,taskRenameOpen:k,title:A}=e;return(0,$.jsxs)($.Fragment,{children:[y===null?null:(0,$.jsx)(ld,{change:y,onClose:()=>{w(null)}}),b===null?null:(0,$.jsx)(ze,{changes:b,onClose:()=>{T(null)}}),x===null?null:(0,$.jsx)(gd,{client:s,onClose:()=>{D(null)},projectId:t,previewKind:x.kind,reference:x.reference,...S===void 0?{}:{rootPath:S}}),(0,$.jsx)(vd,{onClose:()=>{O(null)},projectId:t,projectRuntime:g,selection:C}),k&&r!==void 0?(0,$.jsx)(Ot,{initialTitle:A,isPending:v.isPending,onClose:c,onRename:e=>void _(e)},`${t}:${r}`):null,u===null?null:(0,$.jsx)(Q.Suspense,{fallback:null,children:(0,$.jsx)(bd,{...i.status===void 0?{}:{accessMode:i.status.mode},...a.data===void 0?{}:{appInfo:a.data},appInfoError:a.error,apps:n?h.data?.apps??[]:[],error:d.error??m.error??(n?h.error:null),isPending:d.isPending||m.isPending||n&&h.isPending,fastModeAvailable:f,initialSection:u,isAppInfoPending:a.isPending,isAppUpdatePending:o.isPending,models:p,onClose:()=>{let e=u===`about`?`#global-settings-about-trigger`:`#global-settings-trigger`;E(null),requestAnimationFrame(()=>{document.querySelector(e)?.focus()})},onLogoutAccess:i.logout,onRetry:()=>Promise.all([d.refetch(),m.refetch(),...n?[h.refetch()]:[]]),onRetryAppInfo:()=>a.refetch(),onSave:e=>l.mutateAsync(e).then(()=>void 0),onUpdate:e=>o.mutateAsync(e).then(()=>void 0),...d.data===void 0?{}:{settings:d.data.settings}})})]})}var Sd=(0,Q.memo)(function({capabilities:e,client:t,composerRef:n,fallbackSettings:r,fastModeAvailable:i,fastModeDefault:a,followUpBehavior:o,models:s,modelsError:c,modelsPending:l,onRequestNotificationPermission:u,onProjectTaskDefaultsChange:d,onOpenProjectPath:f,onProjectRootChange:p,onTaskStarted:m,projectId:h,projectPath:g,projectPathOpenDisabled:_,projectRoots:v,projectToolsEnabled:y,selectedProjectRootId:b,gitStatus:x,runtime:S,skills:C,startingSnapshot:w,startingPrompt:T,taskId:E,onOpenFileDiff:D,onOpenSourceFile:O,onReviewFileChanges:k}){let A=L(),j=`${h}:${E}`,[M,N]=(0,Q.useState)(0),{beginSubmission:P,getStartedAt:F,handleSubmissionStateChange:I,startedAt:R}=Yi(),[z,B]=(0,Q.useState)(()=>({prompt:T,taskScope:j})),V=z.taskScope===j?z.prompt:T,H=R??V?.submissionStartedAt,U=R===void 0?V?.turn.id:void 0,W=S.snapshot===void 0||V===void 0?S.snapshot:Wt(S.snapshot,V.turn,{...V.input,messageAttachments:V.messageAttachments}),G=W===S.snapshot?S:{...S,snapshot:W};(0,Q.useEffect)(()=>{let e=S.store;if(e===void 0||V===void 0)return;let t=e.getState(),n=t.reconstructSnapshot();if(n===void 0||t.checkpoint===null)return;let r=Wt(n,V.turn,{...V.input,messageAttachments:V.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)},[S.snapshot,S.store,V]);let K=te({...se(h,E,t),onSuccess(e){A.setQueryData([`projects`,h,`tasks`,E],t=>t===void 0?t:{...t,snapshot:{...t.snapshot,settings:e.settings}})}}),q=(e,n,r)=>t.resolvePendingRequest(e,n,{idempotencyKey:r}).then(()=>void 0);return(0,$.jsxs)($.Fragment,{children:[(0,Q.createElement)(Rc,{onBuildPlan:()=>n.current?.buildPlan()??Promise.resolve(!1),...e?.tasks.fork===!0?{onForkTask:async(e,n)=>{m((await t.forkTask(h,E,{lastTurnId:e},{idempotencyKey:n})).task)}}:{},onOpenFileDiff:D,onOpenSourceFile:O,onReviewFileChanges:k,onResolvePendingRequest:q,projectId:h,key:j,runtime:G,scrollToBottomSignal:M,...H===void 0?{}:{submissionStartedAt:H},...U===void 0?{}:{submissionTurnId:U},taskId:E,...w===void 0?{}:{startingSnapshot:w}}),(0,$.jsx)(id,{composerRef:n,capabilities:e,client:t,followUpBehavior:o,fastModeAvailable:i,fastModeDefault:a,models:s,modelsError:c,modelsPending:l||S.isPending,onDirectSubmission:()=>{P(),N(e=>e+1)},onOpenProjectPath:f,onProjectRootChange:p,onRequestNotificationPermission:u,onFastModeChange:(e,t)=>d(t,e),onSettingsChange:(e,t,n)=>Promise.all([K.mutateAsync(e),d(e,n)]).then(()=>void 0),onSubmissionStateChange:I,onTaskStarted:m,onTurnStarted:(e,t,n)=>{let r=F()??e.startedAt;B({prompt:{input:t,messageAttachments:n,...r===null?{}:{submissionStartedAt:r},turn:e},taskScope:j})},projectId:h,projectPath:g,projectPathOpenDisabled:_,projectRoots:v,projectToolsEnabled:y,selectedProjectRootId:b,...x===void 0?{}:{gitStatus:x},runtime:G,settings:W?.settings??w?.settings??r,skills:C,taskId:E})]})});function Cd(e){return(0,$.jsx)(Er,{"data-slot":`collapsible`,...e})}function wd(e){return(0,$.jsx)(Dr,{"data-slot":`collapsible-trigger`,...e})}function Td(e){return(0,$.jsx)(Or,{"data-slot":`collapsible-content`,...e})}function Ed({error:e,isPending:t,onTerminate:n,terminals:r,terminatingTerminalId:i}){return(0,$.jsx)(Nd,{icon:(0,$.jsx)(or,{className:`size-3.5`}),title:d.t(`inspector.terminals`,{ns:`conversation`}),children:(0,$.jsx)(`section`,{"aria-label":d.t(`inspector.terminals`,{ns:`conversation`}),children:t&&r.length===0?(0,$.jsx)(`p`,{className:`px-2 py-2 text-caption text-muted-foreground`,children:d.t(`inspector.terminalLoading`,{ns:`conversation`})}):e!==null&&r.length===0?(0,$.jsx)(`p`,{className:`px-2 py-2 text-caption text-diff-removed`,children:d.t(`inspector.terminalError`,{ns:`conversation`})}):(0,$.jsx)(`div`,{className:`space-y-1`,children:r.map(e=>{let t=i===e.id?d.t(`inspector.terminalStopping`,{command:e.command,ns:`conversation`}):d.t(`inspector.terminalStop`,{command:e.command,ns:`conversation`});return(0,$.jsxs)(`div`,{className:`flex items-center gap-1 rounded-control px-2 py-1.5 hover:bg-control-hover`,children:[(0,$.jsx)(m,{"aria-label":d.t(`inspector.terminalRunning`,{ns:`conversation`}),className:`size-3.5 shrink-0 animate-spin text-muted-foreground`}),(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(`p`,{className:`truncate text-label font-medium text-foreground`,title:e.command,children:e.command}),(0,$.jsx)(`p`,{className:`truncate text-caption text-muted-foreground`,title:e.cwd,children:e.cwd})]}),(0,$.jsxs)(N,{children:[(0,$.jsx)(P,{asChild:!0,children:(0,$.jsx)(l,{"aria-label":t,disabled:i!==null,onClick:()=>void n(e.id),size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(ot,{"aria-hidden":`true`,className:`size-3`})})}),(0,$.jsx)(I,{children:t})]})]},e.id)})})})})}function Dd({onOpenSubagent:e,subagents:t}){return(0,$.jsx)(Nd,{icon:(0,$.jsx)(je,{className:`size-3.5`}),title:d.t(`inspector.subagents`,{ns:`conversation`}),children:(0,$.jsxs)(`section`,{"aria-label":d.t(`inspector.subagents`,{ns:`conversation`}),children:[(0,$.jsx)(`p`,{className:`mb-1 px-2 text-caption text-muted-foreground`,children:d.t(`inspector.subagentCount`,{count:t.length,ns:`conversation`})}),(0,$.jsx)(`div`,{className:`space-y-1`,children:t.map(t=>{let n=[t.model===void 0?void 0:Fi(t.model),t.reasoningEffort].filter(e=>e!==void 0);return(0,$.jsxs)(l,{variant:`ghost`,"aria-haspopup":`dialog`,"aria-label":d.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,$.jsx)(Wa,{collapsible:!1,status:Ii(t.status),children:(0,$.jsx)(Ka,{title:t.nickname})}),n.length===0?null:(0,$.jsx)(`p`,{className:`pb-2 text-caption text-muted-foreground`,children:n.join(` · `)})]},t.taskId)})})]})})}function Od({canRetry:e,error:t,isPending:n,isRefreshing:r,isRetrying:i,onRetry:a,servers:o}){let s=d.t(i?`inspector.mcpReloading`:`inspector.mcpReload`,{ns:`conversation`});return(0,$.jsx)(Nd,{action:e?(0,$.jsxs)(N,{children:[(0,$.jsx)(P,{asChild:!0,children:(0,$.jsx)(l,{"aria-label":s,disabled:r||i,onClick:a,size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(Ne,{"aria-hidden":`true`,className:r||i?`animate-spin`:void 0})})}),(0,$.jsx)(I,{children:s})]}):null,icon:(0,$.jsx)(rr,{className:`size-3.5`}),title:`MCP`,children:n&&o.length===0?(0,$.jsxs)(`p`,{className:`flex min-h-9 items-center gap-2 px-2 py-2 text-caption text-muted-foreground`,children:[(0,$.jsx)(m,{"aria-hidden":`true`,className:`size-3.5 animate-spin`}),d.t(`inspector.mcpLoading`,{ns:`conversation`})]}):t!==null&&o.length===0?(0,$.jsx)(jd,{error:t,titleKey:`inspector.mcpError`}):o.length===0?(0,$.jsx)(`p`,{className:`px-2 py-2 text-caption text-muted-foreground`,children:d.t(`inspector.mcpEmpty`,{ns:`conversation`})}):(0,$.jsx)(`div`,{"aria-label":d.t(`inspector.mcpEnabled`,{ns:`conversation`}),className:`space-y-0.5`,children:o.map(e=>(0,$.jsx)(Md,{server:e},e.name))})})}function kd(e){let t=[];return`code`in e&&typeof e.code==`string`&&t.push(e.code),`status`in e&&typeof e.status==`number`&&t.push(`HTTP ${String(e.status)}`),t.length===0?null:t.join(` · `)}function Ad({error:e}){return(0,$.jsxs)(Cd,{children:[(0,$.jsx)(wd,{asChild:!0,children:(0,$.jsxs)(l,{className:`group h-7 justify-start px-0 text-caption`,type:`button`,variant:`link`,children:[(0,$.jsx)(Se,{"aria-hidden":`true`,className:`transition-transform group-data-[state=open]:rotate-90`,"data-icon":`inline-start`}),d.t(`inspector.mcpErrorLog`,{ns:`conversation`})]})}),(0,$.jsx)(Td,{className:`data-[state=closed]:hidden`,forceMount:!0,children:(0,$.jsx)(`pre`,{className:`max-h-44 overflow-auto whitespace-pre-wrap break-words rounded-control bg-control px-2 py-1.5 font-mono text-meta leading-5 text-foreground`,children:e})})]})}function jd({error:e,titleKey:t}){let n=kd(e);return(0,$.jsxs)(`div`,{className:`flex items-start gap-2 px-2 py-1.5`,role:`alert`,children:[(0,$.jsx)(sn,{"aria-hidden":`true`,className:`mt-0.5 size-3.5 shrink-0 text-danger`}),(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(`p`,{className:`text-label font-medium text-danger`,children:d.t(t,{ns:`conversation`})}),(0,$.jsx)(`pre`,{className:`mt-1 max-h-44 overflow-auto whitespace-pre-wrap break-words font-mono text-meta leading-5 text-foreground`,children:e.message}),n===null?null:(0,$.jsx)(`p`,{className:`mt-1 text-meta text-muted-foreground`,children:n})]})]})}function Md({server:e}){let t=[d.t(`inspector.mcpStatus.${e.status}`,{ns:`conversation`}),...e.status===`ready`?[d.t(`inspector.mcpToolCount`,{count:e.toolCount,ns:`conversation`})]:[],...e.authStatus===null?[]:[d.t(`inspector.mcpAuth.${e.authStatus}`,{ns:`conversation`})],...e.version===null?[]:[d.t(`inspector.mcpVersion`,{ns:`conversation`,version:e.version})]];return(0,$.jsxs)(`div`,{className:`flex min-h-10 items-start gap-2 rounded-control px-2 py-1.5`,children:[(0,$.jsx)(`span`,{className:`mt-0.5 shrink-0`,children:e.status===`ready`?(0,$.jsx)(Fe,{"aria-hidden":`true`,className:`size-3.5 text-brand`}):e.status===`starting`?(0,$.jsx)(m,{"aria-hidden":`true`,className:`size-3.5 animate-spin text-muted-foreground`}):e.status===`failed`?(0,$.jsx)(Rn,{"aria-hidden":`true`,className:`size-3.5 text-danger`}):(0,$.jsx)(Ln,{"aria-hidden":`true`,className:`size-3.5 text-warning`})}),(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(`p`,{className:`truncate text-label font-medium text-foreground`,title:e.name,children:e.name}),(0,$.jsx)(`p`,{className:`text-caption text-muted-foreground`,children:t.join(` · `)}),e.failureReason===null?null:(0,$.jsx)(`p`,{className:`text-caption text-danger`,children:d.t(`inspector.mcpFailureReason.${e.failureReason}`,{ns:`conversation`})}),e.error===null?null:(0,$.jsx)(Ad,{error:e.error})]})]})}function Nd({action:e,children:t,icon:n,title:r}){return(0,$.jsxs)(`section`,{"aria-label":r,children:[(0,$.jsxs)(`div`,{className:`mb-2 flex min-h-7 items-center justify-between gap-2 text-xs font-medium text-foreground`,children:[(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,$.jsx)(`span`,{className:`text-muted-foreground`,children:n}),r]}),e]}),(0,$.jsx)(`div`,{className:`space-y-0.5`,children:t})]})}async function Pd(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 Fd({name:e,triggerChildren:t,triggerClassName:n,url:r}){u(`conversation`);let[i,a]=(0,Q.useState)(!1),o=(0,Q.useId)(),s=j({enabled:i,queryFn:({signal:e})=>Pd(r,e),queryKey:[`task-attachment-source`,r],staleTime:3e4}),c=d.t(`projectDialog.closeSource`,{ns:`workbench`});return(0,$.jsxs)(ft,{onOpenChange:a,open:i,children:[(0,$.jsx)(yt,{asChild:!0,children:(0,$.jsx)(l,{"aria-label":d.t(`timeline.openAttachment`,{name:e,ns:`conversation`}),className:n,"data-attachment-open":`source`,type:`button`,variant:`ghost`,children:t})}),(0,$.jsx)($t,{"aria-labelledby":o,className:`h-[min(82dvh,54rem)] max-w-[72rem] overflow-hidden p-0`,children:s.data===void 0?(0,$.jsxs)(`section`,{className:`grid h-full min-h-0 grid-rows-[auto_minmax(0,1fr)] bg-raised`,children:[(0,$.jsxs)(`header`,{className:`flex min-h-toolbar items-center gap-3 px-3 shadow-toolbar sm:px-4`,children:[(0,$.jsx)(Ie,{"aria-hidden":`true`,className:`size-4 shrink-0 text-muted-foreground`}),(0,$.jsx)(gt,{className:`min-w-0 flex-1 truncate text-body-small`,id:o,children:e}),(0,$.jsx)(Id,{label:c,onClose:()=>{a(!1)}})]}),(0,$.jsx)(`div`,{className:`grid min-h-0 place-items-center text-body-small ${s.error===null?`text-muted-foreground`:`text-danger`}`,role:s.error===null?`status`:`alert`,children:d.t(s.error===null?`projectDialog.loadingSource`:`projectDialog.loadSourceError`,{ns:`workbench`})})]}):(0,$.jsx)(Xs,{className:`grid h-full min-h-0 grid-rows-[auto_minmax(0,1fr)] rounded-none bg-content shadow-none`,code:s.data,language:Sn(e),showLineNumbers:!0,children:(0,$.jsxs)(Zs,{className:`min-h-toolbar gap-3 bg-raised px-3 shadow-toolbar sm:px-4`,children:[(0,$.jsxs)(Qs,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(Ie,{"aria-hidden":`true`,className:`size-4 shrink-0 text-muted-foreground`}),(0,$.jsx)(gt,{asChild:!0,children:(0,$.jsx)(`h2`,{className:`truncate text-body-small font-semibold`,id:o,title:e,children:(0,$.jsx)($s,{children:e})})})]}),(0,$.jsxs)(ec,{children:[(0,$.jsx)(tc,{}),(0,$.jsx)(Id,{label:c,onClose:()=>{a(!1)}})]})]})})})]})}function Id({label:e,onClose:t}){return(0,$.jsxs)(N,{children:[(0,$.jsx)(P,{asChild:!0,children:(0,$.jsx)(l,{"aria-label":e,onClick:t,size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(Et,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,$.jsx)(I,{children:e})]})}function Ld(e){return{admin:d.t(`inspector.sourceRole.admin`,{ns:`conversation`}),repo:d.t(`inspector.sourceRole.repo`,{ns:`conversation`}),system:d.t(`inspector.sourceRole.system`,{ns:`conversation`}),user:d.t(`inspector.sourceRole.user`,{ns:`conversation`})}[e]}function Rd(e,t,n,r){let i=t===``?[]:[{detail:t,id:`project:${t}`,kind:`project`,name:e}],a=new Map(r.map(e=>[e.name,e])),o=new Set,s=new Set;for(let e of n)for(let t of e.items)if(!(t.type!==`message`||t.role!==`user`)){for(let e of t.skills??[]){if(o.has(e.name))continue;o.add(e.name);let t=a.get(e.name);i.push({detail:t===void 0?`Skill`:`Skill · ${Ld(t.scope)}`,id:`skill:${e.name}`,kind:`skill`,name:t?.displayName??e.name})}for(let e of t.attachments??[])s.has(e.id)||(s.add(e.id),i.push({attachment:e,detail:d.t(`inspector.attachmentDetail`,{ns:`conversation`}),id:`attachment:${e.id}`,kind:`attachment`,name:e.name}))}return i}var zd=`flex h-auto min-h-10 w-full items-center justify-start gap-2 rounded-control px-2 py-1.5 text-left hover:bg-control-hover`;function Bd({source:e}){return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`span`,{className:`shrink-0 text-muted-foreground`,children:e.kind===`project`?(0,$.jsx)(Gn,{"aria-hidden":`true`,className:`size-3.5`}):e.kind===`skill`?(0,$.jsx)(Be,{"aria-hidden":`true`,className:`size-3.5 text-brand`}):(0,$.jsx)(ct,{"aria-hidden":`true`,className:`size-3.5`})}),(0,$.jsxs)(`div`,{className:`min-w-0`,children:[(0,$.jsx)(`p`,{className:`truncate text-label font-medium text-foreground`,title:e.name,children:e.name}),e.kind===`project`?(0,$.jsxs)(`p`,{className:`truncate text-caption text-muted-foreground`,title:e.detail,children:[(0,$.jsx)(`span`,{children:d.t(`inspector.projectDirectory`,{ns:`conversation`})}),(0,$.jsx)(`span`,{"aria-hidden":`true`,children:` · `}),(0,$.jsx)(`span`,{children:e.detail})]}):(0,$.jsx)(`p`,{className:`truncate text-caption text-muted-foreground`,children:e.detail})]})]})}function Vd({attachmentUrl:e,onOpenAttachment:t,source:n}){if(n.kind===`attachment`&&e!==void 0){let r=(0,$.jsx)(Bd,{source:n}),i=oi(n.attachment);return i===`image`?(0,$.jsx)(fc,{name:n.name,triggerChildren:r,triggerClassName:zd,url:e}):i===`source`?(0,$.jsx)(Fd,{name:n.name,triggerChildren:r,triggerClassName:zd,url:e}):(0,$.jsx)(l,{"aria-label":d.t(`timeline.openAttachment`,{name:n.name,ns:`conversation`}),className:zd,"data-attachment-open":`system`,onClick:()=>{t(n.attachment.id)},type:`button`,variant:`ghost`,children:r})}return(0,$.jsx)(`div`,{className:`flex min-h-10 items-center gap-2 rounded-control px-2 py-1.5`,children:(0,$.jsx)(Bd,{source:n})})}function Hd({onOpenAttachment:e,projectId:t,projectName:n,projectPath:r,skills:i,taskId:a,turns:o}){let s=(0,Q.useMemo)(()=>Rd(n,r,o,i),[n,r,i,o]);return(0,$.jsx)(Nd,{icon:(0,$.jsx)(Gn,{className:`size-3.5`}),title:d.t(`inspector.source`,{ns:`conversation`}),children:(0,$.jsx)(`div`,{"aria-label":d.t(`inspector.contextSources`,{ns:`conversation`}),className:`space-y-0.5`,children:s.map(n=>(0,Q.createElement)(Vd,{...n.kind===`attachment`&&t!==void 0&&a!==void 0?{attachmentUrl:y(``,t,a,n.attachment.id)}:{},key:n.id,onOpenAttachment:e,source:n}))})})}function Ud({className:e=``,...t}){return(0,$.jsx)(`div`,{className:s(e),"data-ai-queue":``,...t})}function Wd({className:e=``,...t}){return(0,$.jsx)(`ul`,{className:s(`space-y-0.5`,e),...t})}function Gd({className:e=``,status:t,...n}){return(0,$.jsx)(`li`,{className:s(`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 Kd({className:e=``,label:t,status:n,...r}){let i=n===`completed`?(0,$.jsx)(Fe,{"aria-hidden":`true`,className:`size-3.5`}):n===`in_progress`?(0,$.jsx)(m,{"aria-hidden":`true`,className:`size-3.5 animate-spin`}):(0,$.jsx)(Rt,{"aria-hidden":`true`,className:`size-3.5`});return(0,$.jsx)(`span`,{"aria-label":t,className:s(`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 qd({className:e=``,status:t,...n}){return(0,$.jsx)(`span`,{className:s(`min-w-0 break-words text-label leading-5`,t===`completed`?`text-muted-foreground`:`text-foreground`,e),...n})}function Jd({plan:e}){return(0,$.jsx)(Nd,{icon:(0,$.jsx)($n,{className:`size-3.5`}),title:d.t(`inspector.plan`,{ns:`conversation`}),children:(0,$.jsxs)(Ud,{children:[e.explanation===null||e.explanation.trim()===``?null:(0,$.jsx)(`p`,{className:`px-2 pb-1.5 text-caption leading-5 text-muted-foreground`,children:e.explanation}),(0,$.jsx)(Wd,{children:e.steps.map((e,t)=>(0,$.jsxs)(Gd,{status:e.status,children:[(0,$.jsx)(Kd,{label:d.t(`inspector.planStatus.${e.status}`,{ns:`conversation`}),status:e.status}),(0,$.jsx)(qd,{status:e.status,children:e.text})]},`${String(t)}:${e.text}`))})]})})}function Yd(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(`
12
- `),kind:e.kind===n.kind?e.kind:`update`,path:n.path})}return[...t.values()]}function Xd(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=Tn(t);return{additions:e.additions+n.additions,removals:e.removals+n.removals}},{additions:0,removals:0}),a=Yd(r??n);return{changeStats:i,displayChanges:a,fileChangesByPath:new Map(a.map(e=>[e.path,e]))}}function Zd({changeCount:e,changeStats:t,onCommitChanges:n}){return e===0?null:(0,$.jsx)(Nd,{action:(0,$.jsxs)(l,{"aria-label":d.t(`inspector.commitChanges`,{count:e,ns:`conversation`}),className:`h-6 gap-1 px-1.5 text-caption font-medium`,id:`workbench-commit-changes`,onClick:n,size:`toolbar`,type:`button`,variant:`ghost`,children:[(0,$.jsx)(ut,{"aria-hidden":`true`,className:`size-3.5`}),d.t(`inspector.commit`,{ns:`conversation`})]}),icon:(0,$.jsx)(Jn,{className:`size-3.5`}),title:d.t(`inspector.gitChanges`,{ns:`conversation`}),children:(0,$.jsxs)(`div`,{"aria-label":d.t(`inspector.changeStats`,{ns:`conversation`}),className:`flex min-h-6 items-center gap-1.5 px-2 text-caption text-muted-foreground`,children:[(0,$.jsx)(`span`,{children:d.t(`inspector.gitChangesCount`,{count:e,ns:`conversation`})}),t===void 0?null:(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`span`,{className:`font-medium text-diff-added`,children:[`+`,t.additions]}),(0,$.jsxs)(`span`,{className:`font-medium text-diff-removed`,children:[`-`,t.removals]})]})]})})}var Qd={project:Kn,changes:ut,context:An,history:Yn};function $d({activeTab:e,availableTabs:t,onTabChange:n}){return(0,$.jsx)(`div`,{className:`flex min-w-0 flex-1 items-center gap-0.5 overflow-x-auto`,role:`tablist`,children:t.map(t=>{let r=Qd[t];return(0,$.jsxs)(l,{"aria-selected":e===t,className:`rounded-control ${e===t?`bg-control-hover text-foreground`:``}`,onClick:()=>{n(t)},role:`tab`,size:`toolbar`,type:`button`,variant:`ghost`,children:[(0,$.jsx)(r,{"aria-hidden":`true`}),(0,$.jsx)(`span`,{children:d.t(`inspector.${t}`,{ns:`conversation`})})]},t)})})}function ef({onClose:e}){if(e===void 0)return null;let t=d.t(`shell.closeInspector`,{ns:`workbench`});return(0,$.jsxs)(N,{children:[(0,$.jsx)(P,{asChild:!0,children:(0,$.jsx)(l,{"aria-label":t,onClick:e,size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(Re,{"aria-hidden":`true`})})}),(0,$.jsx)(I,{children:t})]})}function tf({activeTab:e,availableTabs:t,contextOnly:n,onClose:r,onTabChange:i}){return n?(0,$.jsx)(`div`,{className:`absolute right-2 top-2 z-10 min-[1101px]:hidden`,children:(0,$.jsx)(ef,{onClose:r})}):(0,$.jsxs)(`div`,{className:`flex min-h-workbench-header w-full min-w-0 items-center gap-2 overflow-hidden px-1.5`,children:[(0,$.jsx)($d,{activeTab:e,availableTabs:t,onTabChange:i}),(0,$.jsx)(`div`,{className:`shrink-0 min-[1101px]:hidden`,children:(0,$.jsx)(ef,{onClose:r})})]})}var nf=Object.defineProperty,rf=Object.defineProperties,af=Object.getOwnPropertyDescriptors,of=Object.getOwnPropertySymbols,sf=Object.prototype.hasOwnProperty,cf=Object.prototype.propertyIsEnumerable,lf=(e,t,n)=>t in e?nf(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,uf=(e,t)=>{for(var n in t||={})sf.call(t,n)&&lf(e,n,t[n]);if(of)for(var n of of(t))cf.call(t,n)&&lf(e,n,t[n]);return e},df=(e,t)=>rf(e,af(t)),ff=(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 pf(e,t){return typeof e==`function`?e(t):e}function mf(e,t){return n=>{t.setState(t=>df(uf({},t),{[e]:pf(n,t[e])}))}}var hf=(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)}),gf=`Headless Tree: `,_f=e=>Error(gf+e),vf=e=>console.warn(gf+e),yf={key:`tree`,getInitialState:e=>uf({expandedItems:[],focusedItem:null},e),getDefaultConfig:(e,t)=>uf({setExpandedItems:mf(`expandedItems`,t),setFocusedItem:mf(`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)){vf(`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(()=>ff(null,null,function*(){var t,n,r,i;let a=e.getFocusedItem();(n=(t=e.getConfig()).scrollToItem)==null||n.call(t,a),yield hf(()=>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)=>df(uf({},e?.()),{role:`tree`,"aria-label":n??``,ref:t.registerElement}),isSearchOpen:()=>!1},itemInstance:{scrollTo:(e,t)=>ff(null,[e,t],function*({tree:e,item:t},n){var r,i,a;(i=(r=e.getConfig()).scrollToItem)==null||i.call(r,t),yield hf(()=>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 df(uf({},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()}}}},bf=(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(df(uf({},i),{prev:n}),...e)}}}]},xf=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 _f(`${n.key} needs ${e}`)}},Sf=(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},Cf=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),wf=(e=[])=>Sf(e,Cf(e)),Tf=e=>{let t=e.instanceBuilder??bf,n=[yf,...wf(e.features)];xf(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)=>uf(uf({},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=uf(uf({},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},Ef={key:`selection`,getInitialState:e=>uf({selectedItems:[]},e),getDefaultConfig:(e,t)=>uf({setSelectedItems:mf(`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})=>df(uf({},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()))}}}},Df=e=>e.code!==``&&e.code!==`Unidentified`?e.code:e.key,Of={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)$/},kf=new Set([`MetaLeft`,`MetaRight`,`Meta`,`ControlLeft`,`ControlRight`,`Control`,`AltLeft`,`AltRight`,`Alt`,`ShiftLeft`,`ShiftRight`,`Shift`]),Af=(e,t,n)=>{let r=n.hotkey.toLowerCase().split(`+`),i=r.every(t=>{if(t in Of)return[...e].some(e=>Of[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},jf=(e,t,n,r)=>Object.entries(uf(uf({},n),r)).find(([,n])=>Af(e,t,n))?.[0],Mf={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=Df({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=jf(t.current.pressedKeys,e,e.getHotkeyPresets(),u);if(s&&d&&t.current.pressedKeys.delete(d),!p)return;let m=uf(uf({},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=Df({code:t.code??``,key:t.key??``});r&&((n=e.current).pressedKeys??(n.pressedKeys=new Set),kf.has(r)&&(e.current.pressedKeys=new Set([...e.current.pressedKeys].filter(e=>kf.has(e)))),e.current.pressedKeys.delete(r))}},Nf={key:`hotkeys-core`,onTreeMount:(e,t)=>{let n=e.getDataRef(),r=t=>{let r=t.target instanceof HTMLInputElement;Mf.dispatchKeyDown(e,n,t,{isInputFocused:r,releaseAfterDispatch:r})},i=e=>{Mf.dispatchKeyUp(n,e)},a=()=>{Mf.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)}},Pf=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},Ff=(e,t)=>ff(null,null,function*(){var n,r;let i=e.getConfig(),a=Pf(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}),If=(e,t)=>ff(null,null,function*(){var n,r,i;let a=e.getConfig(),o=Pf(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}),Lf={key:`async-data-loader`,getInitialState:e=>uf({loadingItemData:[],loadingItemChildrens:[]},e),getDefaultConfig:(e,t)=>uf({setLoadingItemData:mf(`loadingItemData`,t),setLoadingItemChildrens:mf(`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)=>ff(null,[e,t],function*({tree:e},t){return Pf(e).current.itemData[t]??(yield Ff(e,t))}),loadChildrenIds:(e,t)=>ff(null,[e,t],function*({tree:e},t){return Pf(e).current.childrenIds[t]??(yield If(e,t))}),retrieveItemData:({tree:e},t,n=!1)=>{let r=e.getConfig(),i=Pf(e);return i.current.itemData[t]?i.current.itemData[t]:(!e.getState().loadingItemData.includes(t)&&!n&&setTimeout(()=>Ff(e,t)),r.createLoadingItemData?.call(r)??null)},retrieveChildrenIds:({tree:e},t,n=!1)=>{let r=Pf(e);return r.current.childrenIds[t]?r.current.childrenIds[t]:(e.getState().loadingItemChildrens.includes(t)||n||setTimeout(()=>If(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)=>ff(null,[e,t],function*({tree:e,itemId:t},n){var r;n||(r=Pf(e).current.itemData)==null||delete r[t],yield Ff(e,t)}),invalidateChildrenIds:(e,t)=>ff(null,[e,t],function*({tree:e,itemId:t},n){var r;n||(r=Pf(e).current.childrenIds)==null||delete r[t],yield If(e,t)}),updateCachedChildrenIds:({tree:e,itemId:t},n,r)=>{Pf(e).current.childrenIds[t]=n,r||e.rebuildTree()},updateCachedData:({tree:e,itemId:t},n,r)=>{Pf(e).current.itemData[t]=n,r||e.rebuildTree()},hasLoadedData:({tree:e,itemId:t})=>e.getDataRef().current.itemData[t]!==void 0}},Rf=(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},zf={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={}),Rf(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={}),Rf(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={}),Rf(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={}),Rf(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={}),Rf(a,i.current.memo.rename)}}},Bf=()=>{},Vf=(e,t,n,r)=>{for(let i=r;i>=0;i--)if(e[i][t]?.[n])return i;return null},Hf=(e,t,n,r,i,a)=>{let o=Vf(e,t,r,i-1);return(e[i][t]?.[r])(df(uf({},n),{prev:o===null?null:(...i)=>Hf(e,t,n,r,o,i)}),...a)},Uf=(e,t,n)=>{let r={},i=new Proxy({},{has(n,r){return typeof r==`symbol`||r===`toJSON`?!1:!!Vf(e,t,r,e.length-1)},get(n,i){if(typeof i!=`symbol`)return i===`toJSON`?{}:(...n)=>{let a=Vf(e,t,i,e.length-1);if(a===null)throw _f(`feature missing for method ${i}`);return Hf(e,t,r,i,a,n)}}});return Object.assign(r,n(i)),[i,Bf]},Wf=Object.defineProperty,Gf=Object.defineProperties,Kf=Object.getOwnPropertyDescriptors,qf=Object.getOwnPropertySymbols,Jf=Object.prototype.hasOwnProperty,Yf=Object.prototype.propertyIsEnumerable,Xf=(e,t,n)=>t in e?Wf(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Zf=(e,t)=>{for(var n in t||={})Jf.call(t,n)&&Xf(e,n,t[n]);if(qf)for(var n of qf(t))Yf.call(t,n)&&Xf(e,n,t[n]);return e},Qf=(e,t)=>Gf(e,Kf(t)),$f=e=>{let[t]=(0,Q.useState)(()=>({current:Tf(e)})),[n,r]=(0,Q.useState)(()=>t.current.getState());return(0,Q.useEffect)(()=>(t.current.setMounted(!0),t.current.rebuildTree(),()=>{t.current.setMounted(!1)}),[t]),t.current.setConfig(t=>Qf(Zf(Zf({},t),e),{state:Zf(Zf({},n),e.state),setState:t=>{var n;r(t),(n=e.setState)==null||n.call(e,t)}})),t.current},ep=`\0project-file-tree-root`,tp=`\0project-file-tree-project-root`,np=`\0project-file-tree-status:`;function rp(e){return e.split(`/`).at(-1)??e}function ip(e){return e.path}function ap(e,t){return`${np}${t}:${e??`root`}`}function op(e){return{kind:`entry`,name:rp(e.path),path:e.path,type:e.type}}function sp(e){return e instanceof Error?e.message:String(e)}function cp({client:e,projectId:t,projectName:n,queryClient:r,rootPath:i}){let a=new Map,o={kind:`root`,name:n,type:`directory`};return a.set(tp,o),{async getChildrenWithData(s){if(s===`\0project-file-tree-root`)return[{data:o,id:tp}];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(J(t,i,l,e));if(o.entries.length===0){let e=ap(l,`empty`),t={directoryPath:l,kind:`status`,name:l===null?n:rp(l),status:`empty`,type:`status`};return a.set(e,t),[{data:t,id:e}]}return o.entries.map(e=>{let t=ip(e),n=op(e);return a.set(t,n),{data:n,id:t}})}catch(e){let t=ap(l,`error`),r={directoryPath:l,kind:`status`,message:sp(e),name:l===null?n:rp(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:rp(e),path:e,type:`directory`})}}}function lp(e,t){let n=[...e].filter(e=>!t.has(e));return new Set([...t].filter(e=>!n.some(t=>e.startsWith(`${t}/`))))}function up(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=Tn(t);r.set(i.path,{additions:(a?.additions??0)+o.additions,removals:(a?.removals??0)+o.removals})}return r}function dp({path:e,stats:t}){return(0,$.jsxs)(`span`,{"aria-label":d.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,$.jsxs)(`span`,{className:`font-medium text-diff-added`,children:[`+`,t.additions]}),(0,$.jsxs)(`span`,{className:`font-medium text-diff-removed`,children:[`-`,t.removals]})]})}function fp({onMenuOpen:e,onOpenProjectPath:t,onReferenceProjectPath:n,onRefreshProject:r,projectName:i,projectOpenApps:a,projectOpenPending:o,projectPath:s,refreshing:c=!1}){let u=(0,Q.useRef)(!1),[f,p]=(0,Q.useState)(!1),m=c||f,h=d.t(`inspector.refreshProject`,{name:i,ns:`conversation`});return(0,$.jsxs)(_e,{children:[(0,$.jsxs)(N,{children:[(0,$.jsx)(P,{asChild:!0,children:(0,$.jsx)(l,{"aria-label":h,className:`size-5 shrink-0 transition-opacity ${m?`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:m,onClick:()=>{u.current||(u.current=!0,p(!0),Promise.resolve().then(r).finally(()=>{u.current=!1,p(!1)}))},size:`embedded`,type:`button`,variant:`embedded`,children:(0,$.jsx)(Ne,{"aria-hidden":`true`,className:`size-3.5 ${m?`animate-spin`:``}`})})}),(0,$.jsx)(I,{side:`left`,children:h})]}),(0,$.jsx)(Di,{apps:a,isPending:o,onOpen:e,onReference:n,onSelect:t,target:{absolutePath:s,path:s,relativePath:`.`,type:`directory`}})]})}function pp(e,t){return e.kind===`status`?null:e.kind===`root`?{absolutePath:t.path,path:t.path,relativePath:`.`,type:`directory`}:{absolutePath:wi(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}}var mp=16,hp=8,gp={height:600,width:320};function _p(e,t){return typeof e==`function`?e(t):e}function vp(e){return e.kind===`status`?e.status===`empty`?d.t(`inspector.emptyFolder`,{ns:`conversation`}):d.t(`inspector.readFolderError`,{name:e.name,ns:`conversation`}):e.name}var yp=(0,Q.memo)(function({changeStatsByPath:e,item:t,onOpenProjectPath:n,onReferenceProjectPath:r,onRefreshDirectory:i,onRefreshProject:a,onSelect:o,projectOpenApps:s,projectOpenPending:c,projectPath:u,projectRootId:f,projectRefreshing:p}){let h=t.getItemData(),g=vp(h),_=pp(h,{id:f,path:u}),v=h.kind===`root`?e=>{n(e)}:n,{ref:y,...b}=t.getProps(),x=t.getItemMeta().level,S=t.isFolder(),C=t.isExpanded(),w=t.isLoading(),T=h.kind===`status`?h.name:g,E=h.kind===`entry`?e.get(h.path):void 0;if(h.kind===`status`)return(0,$.jsxs)(`div`,{...b,className:`flex h-7 items-center gap-2 pr-1.5 text-caption ${h.status===`error`?`text-diff-removed`:`text-muted-foreground`}`,ref:y,style:{paddingLeft:x*mp+6},children:[(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:g}),h.status===`error`?(0,$.jsxs)(N,{children:[(0,$.jsx)(P,{asChild:!0,children:(0,$.jsx)(l,{"aria-label":d.t(`inspector.refreshFolder`,{name:T,ns:`conversation`}),onClick:e=>{e.stopPropagation(),i(h.directoryPath)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(Ne,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,$.jsx)(I,{children:d.t(`inspector.refreshFolder`,{name:T,ns:`conversation`})})]}):null]});let D=(0,$.jsxs)(`div`,{...b,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 ${t.isSelected()?`bg-control`:``}`,onContextMenu:e=>{b.onContextMenu?.(e),o(t.getId())},onKeyDown:e=>{b.onKeyDown?.(e),e.target===e.currentTarget&&(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),t.primaryAction(),S&&(C?t.collapse():t.expand()))},ref:y,style:{paddingLeft:x*mp+2},children:[S?(0,$.jsx)(l,{"aria-label":d.t(C?`agentComponents.folderCollapse`:`agentComponents.folderExpand`,{name:g,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(),C?t.collapse():t.expand()},size:`embedded`,type:`button`,variant:`embedded`,children:w?(0,$.jsx)(m,{"aria-hidden":`true`,className:`size-3.5 animate-spin`}):(0,$.jsx)(Se,{"aria-hidden":`true`,className:`size-3.5 transition-transform ${C?`rotate-90`:``}`})}):(0,$.jsx)(`span`,{"aria-hidden":`true`,className:`size-5 shrink-0`}),S?C?(0,$.jsx)(de,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-brand`}):(0,$.jsx)(ye,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-brand`}):(0,$.jsx)(lt,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-muted-foreground`}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,title:h.kind===`entry`?h.path:g,children:g}),h.kind===`entry`&&E!==void 0?(0,$.jsx)(dp,{path:h.path,stats:E}):null,h.kind===`root`?(0,$.jsx)(fp,{onMenuOpen:()=>{o(t.getId())},onOpenProjectPath:n,onReferenceProjectPath:r,onRefreshProject:a,projectName:g,projectOpenApps:s,projectOpenPending:c,projectPath:u,refreshing:p}):_===null?null:(0,$.jsx)(_e,{children:(0,$.jsx)(Di,{apps:s,isPending:c,onOpen:()=>{o(t.getId())},onReference:r,onSelect:n,target:_})})]});return _===null?D:(0,$.jsx)(Oi,{apps:s,isPending:c,onOpen:()=>{o(t.getId())},onReference:r,onSelect:v,target:_,children:D})});function bp({client:e,expandedPaths:t,fileChangesByPath:n,onExpandedPathsChange:r,onOpenFileDiff:i,onOpenProjectFile:a,onOpenProjectPath:o,onReferenceProjectPath:s,onRefreshProject:c,projectId:l,projectName:f,projectOpenApps:p,projectOpenPending:h,projectPath:g,projectRootId:_,projectRefreshing:v=!1}){u(`conversation`);let y=L(),b=(0,Q.useRef)(null),x=(0,Q.useRef)(()=>void 0),[S,C]=(0,Q.useState)(!0),[w,T]=(0,Q.useState)([]),E=(0,Q.useMemo)(()=>cp({client:e,projectId:l,projectName:f,queryClient:y,rootPath:g}),[e,l,f,g,y]),D=(0,Q.useMemo)(()=>[...S?[tp]:[],...t],[t,S]),O=(0,Q.useCallback)(e=>{let n=_p(e,D);C(n.includes(tp)),r(lp(t,new Set(n.filter(e=>e!==tp))))},[D,t,r]),k=(0,Q.useCallback)(e=>{let t=_p(e,w).at(-1)??w.at(-1);T(t===void 0?[]:[t])},[w]),A=$f({createLoadingItemData:()=>({kind:`root`,name:f,type:`directory`}),dataLoader:E,features:[Lf,Ef,Nf,zf],getItemName:e=>vp(e.getItemData()),indent:mp,instanceBuilder:Uf,isItemFolder:e=>e.getItemData().type===`directory`,onPrimaryAction:e=>{let t=e.getItemData();if(t.kind!==`entry`||t.type!==`file`)return;let r=n.get(t.path);r===void 0?a(t.path):i(r)},rootItemId:ep,scrollToItem:e=>{x.current(e.getId())},setExpandedItems:O,setSelectedItems:k,state:{expandedItems:D,selectedItems:w}}),j=A.getItems(),M=(0,Q.useMemo)(()=>n.size===0?new Map:up(n,j.map(e=>e.getItemData())),[n,j]),N=(0,Q.useMemo)(()=>new Map(j.map((e,t)=>[e.getId(),t])),[j]),P=Ea({count:j.length,estimateSize:()=>28,getItemKey:e=>j[e]?.getKey()??e,getScrollElement:()=>b.current,initialRect:gp,overscan:hp});x.current=e=>{let t=N.get(e);t!==void 0&&P.scrollToIndex(t,{align:`auto`})};let F=(0,Q.useCallback)(async(e,t=!1)=>{await y.invalidateQueries({exact:!0,queryKey:[`projects`,l,g,`file-tree`,e],refetchType:`none`});let n=e??`\0project-file-tree-project-root`;await A.getItemInstance(n).invalidateChildrenIds(t)},[l,g,y,A]),I=(0,Q.useCallback)(()=>Promise.all([Promise.resolve(c()),F(null,!0),...[...t].map(e=>F(e,!0))]),[t,c,F]),{ref:R,...z}=A.getContainerProps(d.t(`inspector.fileTree`,{ns:`conversation`}));return(0,$.jsxs)(`div`,{...z,className:`h-full w-full cursor-default overflow-y-auto font-mono text-label text-foreground`,"data-project-file-tree":``,ref:e=>{b.current=e,R?.(e)},children:[j.length===0?(0,$.jsxs)(`div`,{"aria-expanded":S,"aria-label":d.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,$.jsx)(m,{"aria-hidden":`true`,className:`size-3.5 animate-spin`}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:f})]}):null,(0,$.jsx)(`div`,{className:`relative w-full`,style:{height:P.getTotalSize()},children:P.getVirtualItems().map(e=>{let t=j[e.index];return t===void 0?null:(0,$.jsx)(`div`,{className:`absolute left-0 top-0 w-full`,"data-index":e.index,style:{height:28,transform:`translateY(${String(e.start)}px)`},children:(0,$.jsx)(yp,{changeStatsByPath:M,item:t,onOpenProjectPath:o,onReferenceProjectPath:s,onRefreshDirectory:e=>{F(e)},onRefreshProject:I,onSelect:e=>{T([e])},projectOpenApps:p,projectOpenPending:h,projectPath:g,projectRootId:_,projectRefreshing:v})},e.key)})})]})}var xp=new Set,Sp=new Map,Cp=(0,Q.lazy)(async()=>({default:(await nn(()=>import(`./git-history-panel-BsIopLeA.js`),__vite__mapDeps([20,3,6,7,8,9,11,12,21,5,10,13,14,19,22]))).GitHistoryPanel})),wp=(0,Q.lazy)(async()=>({default:(await nn(()=>import(`./workbench-inspector-changes-RHaBVG45.js`),__vite__mapDeps([23,3,6,7,8,9,10,11,12,24,25,5,13,14]))).WorkbenchInspectorChanges}));function Tp({backgroundTerminals:e=[],backgroundTerminalsError:t=null,backgroundTerminalsPending:n=!1,contextOnly:r=!1,expandedFileTreePaths:i=xp,gitStatus:a,gitStatusDetails:o,gitStatusDetailsError:s=null,gitStatusDetailsPending:c=!1,gitStatusError:f=null,gitStatusPending:p=!1,gitStatusRefreshing:m=!1,gitClient:h,mcpServers:g=[],mcpServersError:_=null,mcpServersPending:v=!1,mcpServersRetryAvailable:y=!0,mcpServersRefreshing:b=!1,mcpServersRetrying:x=!1,onFileTreeExpandedChange:C=()=>void 0,onOpenFileDiff:w=()=>void 0,onOpenTaskAttachment:T=()=>void 0,onOpenProjectPath:E=()=>void 0,onOpenProjectFile:D=()=>void 0,onReferenceProjectPath:O=()=>void 0,onOpenSubagent:k=()=>void 0,onReloadMcpServers:A=()=>void 0,onRefreshGitStatus:j=()=>void 0,onRefreshProject:M=()=>void 0,onCommitChanges:F=()=>void 0,onClose:L,onTerminateBackgroundTerminal:R=()=>Promise.resolve(),onTabChange:z=()=>void 0,projectId:B,projectName:V,projectOpenApps:H=[],projectOpenPending:U=!1,projectPath:W,projectRootId:G,projectRefreshing:K=!1,skills:q=[],subagents:ee=[],tab:te=`project`,task:J,taskId:Y,terminatingTerminalId:ne=null}){u(`conversation`);let re=Bi(Y,a),{activeTab:ie}=Vi({contextOnly:r,gitStatus:a,inspectorOpen:!0,requestedTab:te,taskId:Y}),ae=a!==void 0&&a.repositoryMode!==`none`,{changeStats:oe,displayChanges:se,fileChangesByPath:ce}=(0,Q.useMemo)(()=>ae&&(ie===`context`||ie===`project`)?Xd(a,o):{changeStats:void 0,displayChanges:[],fileChangesByPath:Sp},[ie,a,o,ae]),le=W.split(/[\\/]/u).filter(Boolean).at(-1)??V,ue=(0,$.jsxs)(`div`,{className:`h-full space-y-5 overflow-y-auto p-2.5`,children:[ae&&se.length>0?(0,$.jsx)(Zd,{changeCount:se.length,changeStats:oe,onCommitChanges:F}):null,e.length>0||n||t!==null?(0,$.jsx)(Ed,{error:t,isPending:n,onTerminate:R,terminals:e,terminatingTerminalId:ne}):null,ee.length>0?(0,$.jsx)(Dd,{onOpenSubagent:k,subagents:ee}):null,(0,$.jsx)(Od,{canRetry:y,error:_,isPending:v,isRefreshing:b,isRetrying:x,onRetry:A,servers:g}),(0,$.jsx)(Hd,{onOpenAttachment:T,...B===void 0?{}:{projectId:B},projectName:V,projectPath:W,skills:q,...Y===void 0?{}:{taskId:Y},turns:J?.turns??[]}),J?.plan===null||J?.plan===void 0?null:(0,$.jsx)(Jd,{plan:J.plan})]});return(0,$.jsxs)(`aside`,{"aria-label":d.t(`inspector.title`,{ns:`conversation`}),className:`workbench-inspector relative z-30 grid min-h-0 bg-panel shadow-divider-reverse ${r?`grid-rows-[minmax(0,1fr)]`:`grid-rows-[auto_minmax(0,1fr)]`}`,children:[(0,$.jsx)(tf,{activeTab:ie,availableTabs:re,contextOnly:r,onClose:L,onTabChange:z}),(0,$.jsx)(`div`,{className:`min-h-0 overflow-hidden`,role:r?void 0:`tabpanel`,children:ie===`project`?(0,$.jsx)(`div`,{className:`flex h-full min-h-0 flex-col`,children:(0,$.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col`,children:[f===null?p&&a===void 0?(0,$.jsx)(`p`,{className:`mb-2 px-4 text-caption text-muted-foreground`,children:d.t(`inspector.gitLoading`,{ns:`conversation`})}):null:(0,$.jsxs)(`div`,{className:`mx-2.5 mb-2 flex items-center gap-2 rounded-control bg-control px-2 py-2`,children:[(0,$.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,$.jsx)(`p`,{className:`text-label text-diff-removed`,children:d.t(`inspector.gitChangesRetrying`,{ns:`conversation`})})}),(0,$.jsxs)(N,{children:[(0,$.jsx)(P,{asChild:!0,children:(0,$.jsx)(l,{"aria-label":d.t(`inspector.refreshGit`,{ns:`conversation`}),disabled:m,onClick:j,size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(Ne,{"aria-hidden":`true`,className:`size-3.5 ${m?`animate-spin`:``}`})})}),(0,$.jsx)(I,{children:d.t(`inspector.refreshGit`,{ns:`conversation`})})]})]}),(0,$.jsx)(`div`,{className:`min-h-0 flex-1 px-2.5 pb-2.5`,children:(0,$.jsx)(bp,{client:h??S,expandedPaths:i,fileChangesByPath:ce,onExpandedPathsChange:C,onOpenFileDiff:w,onOpenProjectFile:D,onOpenProjectPath:E,onReferenceProjectPath:O,onRefreshProject:M,projectId:B??V,projectName:le,projectOpenApps:H,projectOpenPending:U,projectPath:W,projectRootId:G,projectRefreshing:K},`${B??V}:${W}`)})]})}):ie===`changes`?(0,$.jsx)(Q.Suspense,{fallback:null,children:(0,$.jsx)(wp,{client:h,detailsError:s,detailsPending:c,detailsStatus:o,gitStatus:a,gitStatusError:f,onOpenFileDiff:w,projectId:B,rootPath:W})}):ie===`history`&&B!==void 0?(0,$.jsx)(Q.Suspense,{fallback:null,children:(0,$.jsx)(Cp,{...h===void 0?{}:{client:h},projectId:B,rootPath:W})}):ue})]})}async function Ep(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(he(n,r,null,i.snapshot,!0,t)))[o].find(e=>e.path===a.path&&e.kind===a.kind)??a}function Dp({context:e,projectId:t,taskId:n,temporary:r}){let i=(0,Q.useRef)(null),{appInfoQuery:a,backgroundTerminals:o,beginNewChatSubmission:s,capabilities:c,client:u,closeInspector:d,closeSidebar:f,draftSettings:p,error:m,fastModeAvailable:h,fastModeDefault:g,expandedFileTreePaths:_,gitStatusQuery:v,globalSettings:y,globalSettingsQuery:b,handleNewChatSubmissionStateChange:x,handleNewTaskProjectChange:S,handleTaskCreated:C,handleTaskStarted:w,inspectorOpen:T,inspectorMaximumWidth:E,inspectorTab:D,inspectorTask:O,inspectorWidth:k,mcpServersQuery:A,mcpServersReloadMutation:j,models:M,modelsQuery:F,newChatSubmissionStartedAt:L,openFileDiff:R,openFileReview:z,openMessageFileReference:B,openProjectFolder:V,pendingTaskSelection:H,projectDefaultsQuery:U,projectFolderOpenDisabled:W,projectName:K,projectRoots:q,projectOpenCapabilitiesQuery:ee,projectPath:te,projectPathOpenLockRef:J,projectPathOpenMutation:Y,queryClient:ne,taskAttachmentOpenMutation:re,projectTaskState:ie,projects:ae,refreshProjectGitStatus:oe,requestNotificationPermission:se,retry:ce,runtime:le,selectedRootPath:ue,selectedRootId:de,setFileTreeExpansion:fe,setGlobalSettingsSection:pe,setInspectorOpen:me,setInspectorTab:he,setInspectorWidth:ge,setSidebarOpen:_e,setSidebarWidth:ve,setSelectedRootId:ye,setSubagentDialogSelection:be,setTaskRenameOpen:xe,sidebarConnectionState:Se,sidebarOpen:Ce,sidebarWidth:we,skillsQuery:Te,startingSnapshot:Ee,subagents:De,taskLaunchState:Oe,title:ke,updateDraftSettings:X,updateProjectTaskDefaults:Ae,workbenchShellRef:je,t:Z}=e,Me=e=>{ue!==void 0&&Ep(ne,u,t,ue,v.data,e).then(R).catch(e=>{G(e instanceof Error?e:Error(`Git diff is unavailable`))})};return(0,$.jsxs)(`div`,{className:`workbench-shell h-full min-h-0 overflow-hidden bg-window`,"data-inspector-open":T,"data-sidebar-open":Ce,ref:je,style:{"--inspector-open-width":`${String(k)}px`,"--sidebar-open-width":`${String(we)}px`},children:[(0,$.jsx)(Vt,{...a.data===void 0?{}:{appInfo:a.data},connectionState:Se,onClose:f,onOpenSettings:e=>{pe(e)},projectId:t,...n===void 0&&H?.projectId===t?{taskId:H.taskId}:n===void 0?{}:{taskId:n}}),Ce?(0,$.jsx)(l,{variant:`ghost`,"aria-label":Z(`shell.closeSidebar`),className:`workbench-sidebar-scrim`,onClick:f,type:`button`}):null,Ce?(0,$.jsx)(sd,{direction:1,label:Z(`shell.resizeSidebar`),maximumWidth:Wi.maximum,minimumWidth:Wi.minimum,onResize:e=>{je.current?.style.setProperty(`--sidebar-open-width`,`${String(e)}px`)},onResizeEnd:e=>{je.current?.removeAttribute(`data-resizing-panel`),ve(e)},onResizeStart:()=>{je.current?.setAttribute(`data-resizing-panel`,`sidebar`)},panel:`sidebar`,width:we}):null,(0,$.jsxs)(`main`,{"aria-label":Z(`shell.timeline`),className:`flex min-h-0 min-w-0 flex-col bg-content`,children:[(0,$.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,$.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,$.jsxs)(N,{children:[(0,$.jsx)(P,{asChild:!0,children:(0,$.jsx)(l,{"aria-label":Z(Ce?`shell.collapseSidebar`:`shell.expandSidebar`),id:`workbench-sidebar-toggle`,onClick:()=>{_e(e=>!e)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(tr,{className:`size-3.5`,"aria-hidden":`true`})})}),(0,$.jsx)(I,{children:Z(Ce?`shell.collapseSidebar`:`shell.expandSidebar`)})]},Ce?`sidebar-open`:`sidebar-closed`),(0,$.jsx)(`h1`,{"aria-label":ke,className:`min-w-0 text-body-small font-semibold text-foreground`,children:n===void 0?(0,$.jsx)(`span`,{className:`block truncate`,children:ke}):(0,$.jsxs)(l,{variant:`ghost`,"aria-label":Z(`shell.renameTask`,{title:ke}),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:()=>{xe(!0)},type:`button`,children:[(0,$.jsx)(`span`,{className:`truncate`,children:ke}),(0,$.jsx)(Gt,{"aria-hidden":`true`,className:`size-3 shrink-0 text-muted-foreground transition-colors group-hover:text-foreground`})]})})]}),(0,$.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1`,children:[(0,$.jsx)(Si,{apps:ee.data?.apps??[],className:`hidden min-workbench:flex`,...y===void 0?{}:{defaultOpenAppId:y.defaultOpenAppId},isDetecting:ee.isPending,isPending:Y.isPending,onSelect:e=>{Y.reset(),J.current.run(()=>Y.mutateAsync({appId:e,path:void 0})).catch(()=>void 0)}}),(0,$.jsxs)(N,{children:[(0,$.jsx)(P,{asChild:!0,children:(0,$.jsx)(l,{"aria-label":Z(T?`shell.collapseInspector`:`shell.expandInspector`),id:`workbench-inspector-toggle`,onClick:()=>{me(e=>!e)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(nr,{className:`size-3.5`,"aria-hidden":`true`})})}),(0,$.jsx)(I,{children:Z(T?`shell.collapseInspector`:`shell.expandInspector`)})]},T?`inspector-open`:`inspector-closed`)]})]}),m!==null||(ie?.error??null)!==null||F.error!==null||Te.error!==null||!r&&U.error!==null||n===void 0&&b.error!==null?(0,$.jsx)(Pt,{onRetry:()=>void ce()}):n===void 0?(0,$.jsxs)($.Fragment,{children:[r?(0,$.jsx)(Rc,{projectId:t,scopeName:Z(`shell.temporaryTask`),temporary:!0,...L===void 0?{}:{submissionStartedAt:L}}):(0,$.jsx)(Rc,{onProjectChange:S,projectId:t,projects:ae,...L===void 0?{}:{submissionStartedAt:L}}),(0,$.jsx)(id,{capabilities:c,client:u,composerRef:i,followUpBehavior:y?.followUpBehavior??`queue`,fastModeAvailable:h,fastModeDefault:g,models:M,modelsError:null,modelsPending:F.isPending||!r&&U.isPending||b.isPending,onSettingsChange:X,onFastModeChange:(e,t)=>Ae(t,e),onOpenProjectPath:V,onProjectRootChange:ye,onRequestNotificationPermission:se,onDirectSubmission:s,onSubmissionStateChange:x,onTaskCreated:C,onTaskStarted:w,projectId:t,projectPath:te,projectPathOpenDisabled:W,projectRoots:q,projectToolsEnabled:!r,selectedProjectRootId:de??``,...v.data===void 0?{}:{gitStatus:v.data},settings:p,skills:Te.data?.data??[]})]}):(0,$.jsx)(Sd,{capabilities:c,client:u,composerRef:i,fallbackSettings:p,followUpBehavior:y?.followUpBehavior??`queue`,fastModeAvailable:h,fastModeDefault:g,models:M,modelsError:F.error,modelsPending:F.isPending,onRequestNotificationPermission:se,onProjectTaskDefaultsChange:Ae,onOpenProjectPath:V,onProjectRootChange:ye,onTaskStarted:w,projectId:t,projectPath:te,projectPathOpenDisabled:W,projectRoots:q,projectToolsEnabled:!r,selectedProjectRootId:de??``,...v.data===void 0?{}:{gitStatus:v.data},runtime:le,skills:Te.data?.data??[],startingSnapshot:Ee,startingPrompt:Oe,taskId:n,onOpenFileDiff:R,onOpenSourceFile:B,onReviewFileChanges:z})]}),T?(0,$.jsx)(l,{variant:`ghost`,"aria-label":Z(`shell.closeInspector`),className:`workbench-inspector-scrim`,onClick:d,type:`button`}):null,T?(0,$.jsx)(sd,{direction:-1,label:Z(`shell.resizeInspector`),maximumWidth:E,minimumWidth:Gi.minimum,onResize:e=>{je.current?.style.setProperty(`--inspector-open-width`,`${String(e)}px`)},onResizeEnd:e=>{je.current?.removeAttribute(`data-resizing-panel`),ge(e)},onResizeStart:()=>{je.current?.setAttribute(`data-resizing-panel`,`inspector`)},panel:`inspector`,width:k}):null,T?(0,$.jsx)(Tp,{backgroundTerminals:o.terminals,backgroundTerminalsError:o.error,backgroundTerminalsPending:o.isPending,contextOnly:r,expandedFileTreePaths:_,gitStatusError:v.error,gitStatusDetails:e.gitStatusDetailsQuery.data,gitStatusDetailsError:e.gitStatusDetailsQuery.error,gitStatusDetailsPending:e.gitStatusDetailsQuery.isFetching,gitStatusPending:v.isPending,gitStatusRefreshing:v.isFetching,gitClient:u,mcpServers:A.data?.data??[],mcpServersError:A.error,mcpServersPending:n!==void 0&&A.isPending,mcpServersRetryAvailable:n!==void 0,mcpServersRefreshing:A.isFetching&&!A.isPending,mcpServersRetrying:j.isPending,onClose:d,onFileTreeExpandedChange:e=>{fe({paths:new Set(e),scope:`${t}:${ue??`temporary`}`})},onReloadMcpServers:()=>{j.mutate()},onOpenFileDiff:Me,onOpenProjectPath:(e,t)=>{Y.reset(),J.current.run(()=>Y.mutateAsync({appId:e,path:t})).catch(()=>void 0)},onOpenProjectFile:e=>{B({lineNumber:null,path:e})},onOpenTaskAttachment:e=>{n!==void 0&&re.mutate({attachmentId:e,taskId:n})},onReferenceProjectPath:e=>{i.current?.referenceProjectPath(e)},onRefreshGitStatus:()=>{ue!==void 0&&oe(t,ue)},onRefreshProject:()=>ue===void 0?Promise.resolve():oe(t,ue),onCommitChanges:()=>{he(`changes`),me(!0)},onTerminateBackgroundTerminal:o.terminateTerminal,onTabChange:he,onOpenSubagent:e=>{n!==void 0&&be({parentTaskId:n,projectId:t,selection:e})},projectName:K,projectId:t,projectOpenApps:ee.data?.apps??[],projectOpenPending:Y.isPending,projectPath:te,projectRootId:de??``,skills:Te.data?.data??[],subagents:De,tab:r?`context`:D,terminatingTerminalId:o.terminatingTerminalId,...O===void 0?{}:{task:O},...n===void 0?{}:{taskId:n},...v.data===void 0?{}:{gitStatus:v.data}},`${t}:${n??`draft`}`):null,(0,$.jsx)(xd,{context:e,projectId:t,projectToolsEnabled:!r,...n===void 0?{}:{taskId:n}})]})}function Op({projectId:e,taskId:t,temporary:n=!1}){let r=t===void 0?{projectId:e}:{projectId:e,taskId:t};return(0,$.jsx)(Dp,{context:ta(Qi({...r,temporary:n}),{...r,temporary:n}),...r,temporary:n})}export{Op as WorkbenchShell};