@bryanhu/codexly 0.2.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 +14 -1
  2. package/dist/{chunk-AWQWQU2B.js → chunk-6HXWAD7A.js} +78 -3
  3. package/dist/{chunk-MH54VCZJ.js → chunk-DR6HEQ7V.js} +52 -1
  4. package/dist/{chunk-TEPSAXZZ.js → chunk-VZLNYRY3.js} +1 -1
  5. package/dist/{chunk-2P25XCI6.js → chunk-Y7HG5THF.js} +126 -9
  6. package/dist/cli.js +5 -5
  7. package/dist/client/index.js +25 -3
  8. package/dist/protocol/index.js +1 -1
  9. package/dist/providers/codex/index.js +2 -2
  10. package/dist/server/index.js +4 -4
  11. package/dist/web/.vite/manifest.json +108 -108
  12. package/dist/web/.vite/manifest.json.br +0 -0
  13. package/dist/web/.vite/manifest.json.gz +0 -0
  14. package/dist/web/assets/button-B0Zy5xUw.js +1 -0
  15. package/dist/web/assets/button-B0Zy5xUw.js.br +0 -0
  16. package/dist/web/assets/button-B0Zy5xUw.js.gz +0 -0
  17. package/dist/web/assets/{button-group-CvflSgg8.js → button-group-Czp67RFV.js} +1 -1
  18. package/dist/web/assets/button-group-Czp67RFV.js.br +0 -0
  19. package/dist/web/assets/button-group-Czp67RFV.js.gz +0 -0
  20. package/dist/web/assets/{checkbox-CCES4UbV.js → checkbox-J-dVFT8h.js} +1 -1
  21. package/dist/web/assets/checkbox-J-dVFT8h.js.br +0 -0
  22. package/dist/web/assets/checkbox-J-dVFT8h.js.gz +0 -0
  23. package/dist/web/assets/{chunk-BO2N2NFS-BWAdG1_E.js → chunk-BO2N2NFS-Cv0xdEIU.js} +5 -5
  24. package/dist/web/assets/chunk-BO2N2NFS-Cv0xdEIU.js.br +0 -0
  25. package/dist/web/assets/chunk-BO2N2NFS-Cv0xdEIU.js.gz +0 -0
  26. package/dist/web/assets/{code-highlighter-CHF26Qu6.js → code-highlighter-XA2cEb7n.js} +1 -1
  27. package/dist/web/assets/code-highlighter-XA2cEb7n.js.br +0 -0
  28. package/dist/web/assets/code-highlighter-XA2cEb7n.js.gz +0 -0
  29. package/dist/web/assets/{code-languages-0g9buMoI.js → code-languages-B1bG8xP9.js} +1 -1
  30. package/dist/web/assets/code-languages-B1bG8xP9.js.br +0 -0
  31. package/dist/web/assets/code-languages-B1bG8xP9.js.gz +0 -0
  32. package/dist/web/assets/es2015-D1QRD4rq.js +41 -0
  33. package/dist/web/assets/es2015-D1QRD4rq.js.br +0 -0
  34. package/dist/web/assets/es2015-D1QRD4rq.js.gz +0 -0
  35. package/dist/web/assets/{file-CdvUKvsI.js → file-fDjkn3KE.js} +1 -1
  36. package/dist/web/assets/file-fDjkn3KE.js.br +2 -0
  37. package/dist/web/assets/file-fDjkn3KE.js.gz +0 -0
  38. package/dist/web/assets/{file-review-dialog-D2A8VOae.js → file-review-dialog-a4LVk4QA.js} +2 -2
  39. package/dist/web/assets/file-review-dialog-a4LVk4QA.js.br +0 -0
  40. package/dist/web/assets/file-review-dialog-a4LVk4QA.js.gz +0 -0
  41. package/dist/web/assets/{file-tree-AZsgAlZn.js → file-tree-Dh8mZi4H.js} +1 -1
  42. package/dist/web/assets/file-tree-Dh8mZi4H.js.br +0 -0
  43. package/dist/web/assets/file-tree-Dh8mZi4H.js.gz +0 -0
  44. package/dist/web/assets/{git-commit-horizontal-C0Tc8kLo.js → git-commit-horizontal-DqCudnTd.js} +1 -1
  45. package/dist/web/assets/git-commit-horizontal-DqCudnTd.js.br +0 -0
  46. package/dist/web/assets/git-commit-horizontal-DqCudnTd.js.gz +0 -0
  47. package/dist/web/assets/{git-history-panel-CeJ0MXUi.js → git-history-panel-C0BqsVJw.js} +2 -2
  48. package/dist/web/assets/git-history-panel-C0BqsVJw.js.br +0 -0
  49. package/dist/web/assets/git-history-panel-C0BqsVJw.js.gz +0 -0
  50. package/dist/web/assets/{global-settings-dialog-BdOP1wS8.js → global-settings-dialog-DAk0qzab.js} +1 -1
  51. package/dist/web/assets/global-settings-dialog-DAk0qzab.js.br +0 -0
  52. package/dist/web/assets/global-settings-dialog-DAk0qzab.js.gz +0 -0
  53. package/dist/web/assets/{highlighted-body-OFNGDK62-CBB2e5gz.js → highlighted-body-OFNGDK62-3Xd1uGCw.js} +1 -1
  54. package/dist/web/assets/highlighted-body-OFNGDK62-3Xd1uGCw.js.br +0 -0
  55. package/dist/web/assets/highlighted-body-OFNGDK62-3Xd1uGCw.js.gz +0 -0
  56. package/dist/web/assets/{index-CoRYl0EO.js → index-C9MtcGVc.js} +3 -3
  57. package/dist/web/assets/index-C9MtcGVc.js.br +0 -0
  58. package/dist/web/assets/index-C9MtcGVc.js.gz +0 -0
  59. package/dist/web/assets/index-DAs_avwK.css +2 -0
  60. package/dist/web/assets/index-DAs_avwK.css.br +0 -0
  61. package/dist/web/assets/index-DAs_avwK.css.gz +0 -0
  62. package/dist/web/assets/{lazy-message-response-Be__rdOq.js → lazy-message-response-BDqsH4Ww.js} +2 -2
  63. package/dist/web/assets/lazy-message-response-BDqsH4Ww.js.br +0 -0
  64. package/dist/web/assets/lazy-message-response-BDqsH4Ww.js.gz +0 -0
  65. package/dist/web/assets/mermaid-GHXKKRXX-Cp6mRHuL.js +1 -0
  66. package/dist/web/assets/mermaid-GHXKKRXX-Cp6mRHuL.js.br +0 -0
  67. package/dist/web/assets/mermaid-GHXKKRXX-Cp6mRHuL.js.gz +0 -0
  68. package/dist/web/assets/message-response-DyFE9GSy.js +7 -0
  69. package/dist/web/assets/message-response-DyFE9GSy.js.br +0 -0
  70. package/dist/web/assets/message-response-DyFE9GSy.js.gz +0 -0
  71. package/dist/web/assets/{patch-diff-viewer-BlbG4Z8Q.js → patch-diff-viewer-DHfvCO4S.js} +2 -2
  72. package/dist/web/assets/patch-diff-viewer-DHfvCO4S.js.br +0 -0
  73. package/dist/web/assets/patch-diff-viewer-DHfvCO4S.js.gz +0 -0
  74. package/dist/web/assets/{prompt-input-controls-DRwTXxuF.js → prompt-input-controls-CLj9lxlf.js} +1 -1
  75. package/dist/web/assets/prompt-input-controls-CLj9lxlf.js.br +0 -0
  76. package/dist/web/assets/prompt-input-controls-CLj9lxlf.js.gz +0 -0
  77. package/dist/web/assets/{provider-connection-queries-bzb4TYim.js → provider-connection-queries-C2Fn0xx2.js} +1 -1
  78. package/dist/web/assets/provider-connection-queries-C2Fn0xx2.js.br +0 -0
  79. package/dist/web/assets/provider-connection-queries-C2Fn0xx2.js.gz +0 -0
  80. package/dist/web/assets/{shiki-bundle-BndEhlUP.js → shiki-bundle-CNYWcrCX.js} +1 -1
  81. package/dist/web/assets/shiki-bundle-CNYWcrCX.js.br +0 -0
  82. package/dist/web/assets/shiki-bundle-CNYWcrCX.js.gz +0 -0
  83. package/dist/web/assets/{workbench-inspector-changes-8ZkoC9AD.js → workbench-inspector-changes-fibkZGwp.js} +1 -1
  84. package/dist/web/assets/workbench-inspector-changes-fibkZGwp.js.br +0 -0
  85. package/dist/web/assets/workbench-inspector-changes-fibkZGwp.js.gz +0 -0
  86. package/dist/web/assets/workbench-shell-eo1pFJFk.js +13 -0
  87. package/dist/web/assets/workbench-shell-eo1pFJFk.js.br +0 -0
  88. package/dist/web/assets/workbench-shell-eo1pFJFk.js.gz +0 -0
  89. package/dist/web/index.html +8 -8
  90. package/dist/web/index.html.br +0 -0
  91. package/dist/web/index.html.gz +0 -0
  92. package/package.json +1 -1
  93. package/dist/web/assets/button-DPWbWvQN.js +0 -1
  94. package/dist/web/assets/button-DPWbWvQN.js.br +0 -0
  95. package/dist/web/assets/button-DPWbWvQN.js.gz +0 -0
  96. package/dist/web/assets/button-group-CvflSgg8.js.br +0 -0
  97. package/dist/web/assets/button-group-CvflSgg8.js.gz +0 -0
  98. package/dist/web/assets/checkbox-CCES4UbV.js.br +0 -0
  99. package/dist/web/assets/checkbox-CCES4UbV.js.gz +0 -0
  100. package/dist/web/assets/chunk-BO2N2NFS-BWAdG1_E.js.br +0 -0
  101. package/dist/web/assets/chunk-BO2N2NFS-BWAdG1_E.js.gz +0 -0
  102. package/dist/web/assets/code-highlighter-CHF26Qu6.js.br +0 -0
  103. package/dist/web/assets/code-highlighter-CHF26Qu6.js.gz +0 -0
  104. package/dist/web/assets/code-languages-0g9buMoI.js.br +0 -0
  105. package/dist/web/assets/code-languages-0g9buMoI.js.gz +0 -0
  106. package/dist/web/assets/es2015-DsWAjMth.js +0 -41
  107. package/dist/web/assets/es2015-DsWAjMth.js.br +0 -0
  108. package/dist/web/assets/es2015-DsWAjMth.js.gz +0 -0
  109. package/dist/web/assets/file-CdvUKvsI.js.br +0 -0
  110. package/dist/web/assets/file-CdvUKvsI.js.gz +0 -0
  111. package/dist/web/assets/file-review-dialog-D2A8VOae.js.br +0 -0
  112. package/dist/web/assets/file-review-dialog-D2A8VOae.js.gz +0 -0
  113. package/dist/web/assets/file-tree-AZsgAlZn.js.br +0 -0
  114. package/dist/web/assets/file-tree-AZsgAlZn.js.gz +0 -0
  115. package/dist/web/assets/git-commit-horizontal-C0Tc8kLo.js.br +0 -0
  116. package/dist/web/assets/git-commit-horizontal-C0Tc8kLo.js.gz +0 -0
  117. package/dist/web/assets/git-history-panel-CeJ0MXUi.js.br +0 -0
  118. package/dist/web/assets/git-history-panel-CeJ0MXUi.js.gz +0 -0
  119. package/dist/web/assets/global-settings-dialog-BdOP1wS8.js.br +0 -0
  120. package/dist/web/assets/global-settings-dialog-BdOP1wS8.js.gz +0 -0
  121. package/dist/web/assets/highlighted-body-OFNGDK62-CBB2e5gz.js.br +0 -0
  122. package/dist/web/assets/highlighted-body-OFNGDK62-CBB2e5gz.js.gz +0 -0
  123. package/dist/web/assets/index-BoX8xH2D.css +0 -2
  124. package/dist/web/assets/index-BoX8xH2D.css.br +0 -0
  125. package/dist/web/assets/index-BoX8xH2D.css.gz +0 -0
  126. package/dist/web/assets/index-CoRYl0EO.js.br +0 -0
  127. package/dist/web/assets/index-CoRYl0EO.js.gz +0 -0
  128. package/dist/web/assets/lazy-message-response-Be__rdOq.js.br +0 -0
  129. package/dist/web/assets/lazy-message-response-Be__rdOq.js.gz +0 -0
  130. package/dist/web/assets/mermaid-GHXKKRXX-C4HZuN1f.js +0 -1
  131. package/dist/web/assets/mermaid-GHXKKRXX-C4HZuN1f.js.br +0 -0
  132. package/dist/web/assets/mermaid-GHXKKRXX-C4HZuN1f.js.gz +0 -0
  133. package/dist/web/assets/message-response-UwCHtKG1.js +0 -7
  134. package/dist/web/assets/message-response-UwCHtKG1.js.br +0 -0
  135. package/dist/web/assets/message-response-UwCHtKG1.js.gz +0 -0
  136. package/dist/web/assets/patch-diff-viewer-BlbG4Z8Q.js.br +0 -0
  137. package/dist/web/assets/patch-diff-viewer-BlbG4Z8Q.js.gz +0 -0
  138. package/dist/web/assets/prompt-input-controls-DRwTXxuF.js.br +0 -0
  139. package/dist/web/assets/prompt-input-controls-DRwTXxuF.js.gz +0 -0
  140. package/dist/web/assets/provider-connection-queries-bzb4TYim.js.br +0 -0
  141. package/dist/web/assets/provider-connection-queries-bzb4TYim.js.gz +0 -0
  142. package/dist/web/assets/shiki-bundle-BndEhlUP.js.br +0 -0
  143. package/dist/web/assets/shiki-bundle-BndEhlUP.js.gz +0 -0
  144. package/dist/web/assets/workbench-inspector-changes-8ZkoC9AD.js.br +0 -0
  145. package/dist/web/assets/workbench-inspector-changes-8ZkoC9AD.js.gz +0 -0
  146. package/dist/web/assets/workbench-shell-BLSbA9u6.js +0 -13
  147. package/dist/web/assets/workbench-shell-BLSbA9u6.js.br +0 -0
  148. package/dist/web/assets/workbench-shell-BLSbA9u6.js.gz +0 -0
@@ -1,13 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/code-highlighter-CHF26Qu6.js","assets/engine-compile-DQ0HPfe0.js","assets/lib-DrPFkMXk.js","assets/rolldown-runtime-QTnfLwEv.js","assets/code-languages-0g9buMoI.js","assets/index-CoRYl0EO.js","assets/react-runtime-CVaUQXZF.js","assets/button-DPWbWvQN.js","assets/bundle-mjs-rHxsej31.js","assets/es2015-DsWAjMth.js","assets/checkbox-CCES4UbV.js","assets/file-tree-AZsgAlZn.js","assets/file-CdvUKvsI.js","assets/provider-connection-queries-bzb4TYim.js","assets/index-BoX8xH2D.css","assets/github-dark-C-LZuMrd.js","assets/github-light-EUqPIrTm.js","assets/patch-diff-viewer-BlbG4Z8Q.js","assets/shiki-bundle-BndEhlUP.js","assets/file-change-D7aZLgtG.js","assets/git-history-panel-CeJ0MXUi.js","assets/file-review-dialog-D2A8VOae.js","assets/git-commit-horizontal-C0Tc8kLo.js","assets/workbench-inspector-changes-8ZkoC9AD.js","assets/button-group-CvflSgg8.js","assets/prompt-input-controls-DRwTXxuF.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-DPWbWvQN.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 ee,yt as B}from"./es2015-DsWAjMth.js";import{i as V,l as H,n as U,o as W,r as G,s as K,t as q,u as J}from"./checkbox-CCES4UbV.js";import{E as te,H as ne,M as re,N as ie,Q as ae,R as oe,T as se,U as ce,Z as le,_ as ue,b as de,c as fe,et as pe,h as me,i as he,k as ge,m as _e,n as ve,r as ye,s as be,t as xe,tt as Se,u as Ce,v as we,w as Te,x as Ee,y as De}from"./file-tree-AZsgAlZn.js";import{a as Oe,i as ke,n as Ae,o as Y,r as je,s as Me,t as Ne}from"./lazy-message-response-Be__rdOq.js";import{i as Pe,l as X,o as Fe,u as Ie}from"./provider-connection-queries-bzb4TYim.js";import{a as Le,i as Re,r as ze,t as Be}from"./file-review-dialog-D2A8VOae.js";import{n as Ve,r as He,t as Ue}from"./button-group-CvflSgg8.js";import{_ as We,a as Ge,b as Ke,c as qe,d as Je,f as Ye,g as Xe,h as Ze,i as Qe,l as $e,n as et,o as tt,p as nt,r as rt,s as it,t as at,u as ot,v as st,x as ct,y as lt}from"./prompt-input-controls-DRwTXxuF.js";import{t as ut}from"./file-CdvUKvsI.js";import{t as dt}from"./git-commit-horizontal-C0Tc8kLo.js";import{$ as ft,A as pt,B as mt,C as ht,D as gt,F as _t,G as vt,H as yt,I as bt,K as xt,L as St,M as Ct,N as wt,O as Tt,P as Et,Q as Dt,R as Ot,S as kt,T as At,U as jt,V as Mt,W as Nt,X as Pt,Z as Ft,_ as It,_t as Lt,a as Rt,at as zt,b as Bt,bt as Vt,c as Ht,ct as Ut,d as Wt,dt as Gt,et as Kt,f as qt,ft as Jt,g as Yt,gt as Xt,h as Zt,ht as Qt,it as $t,j as en,k as tn,l as nn,lt as rn,m as an,mt as on,o as sn,ot as cn,p as ln,pt as un,q as dn,rt as fn,st as pn,u as mn,ut as hn,v as gn,vt as _n,w as vn,x as yn,y as bn,yt as xn,z as Sn}from"./index-CoRYl0EO.js";import{t as Cn}from"./code-languages-0g9buMoI.js";import{i as wn,n as Tn,t as En}from"./file-change-D7aZLgtG.js";import{t as Dn}from"./prompt-reference-token-Cxx6C-IR.js";var On=c(`arrow-down`,[[`path`,{d:`M12 5v14`,key:`s699le`}],[`path`,{d:`m19 12-7 7-7-7`,key:`1idqje`}]]),kn=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`}]]),An=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`}]]),jn=c(`braces`,[[`path`,{d:`M8 3H7a2 2 0 0 0-2 2v5a2 2 0 0 1-2 2 2 2 0 0 1 2 2v5c0 1.1.9 2 2 2h1`,key:`ezmyqa`}],[`path`,{d:`M16 21h1a2 2 0 0 0 2-2v-5c0-1.1.9-2 2-2a2 2 0 0 1-2-2V5a2 2 0 0 0-2-2h-1`,key:`e1hn23`}]]),Mn=c(`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`}]]),Nn=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`}]]),Pn=c(`chevrons-up-down`,[[`path`,{d:`m7 15 5 5 5-5`,key:`1hf1tw`}],[`path`,{d:`m7 9 5-5 5 5`,key:`sgt6xg`}]]),Fn=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`}]]),In=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`}]]),Ln=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`}]]),Rn=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`}]]),zn=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`}]]),Bn=c(`clock`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 6v6l4 2`,key:`mmk7yg`}]]),Vn=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`}]]),Hn=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`}]]),Un=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`}]]),Wn=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`}]]),Gn=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`}]]),Kn=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`}]]),qn=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`}]]),Jn=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`}]]),Yn=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`}]]),Xn=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`}]]),Zn=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`}]]),Qn=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`}]]),$n=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`}]]),er=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`}]]),tr=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`}]]),nr=c(`panel-left`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M9 3v18`,key:`fh3hqa`}]]),rr=c(`panel-right`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M15 3v18`,key:`14nvp0`}]]),ir=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`}]]),ar=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`}]]),or=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`}]]),sr=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`}]]),cr=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`}]]),lr=c(`terminal`,[[`path`,{d:`M12 19h8`,key:`baeox8`}],[`path`,{d:`m4 17 6-6-6-6`,key:`1yngyt`}]]),ur=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`}]]),dr=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`}]]),fr=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`}]]),Z=e(n(),1),Q=i(),pr=Object.defineProperty,mr=(e,t)=>pr(e,`name`,{value:t,configurable:!0}),hr=`Collapsible`,[gr,_r]=D(hr),[vr,yr]=gr(hr),br=Z.forwardRef(mr(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:hr});return(0,Q.jsx)(vr,{scope:n,disabled:a,contentId:z(),open:c,onOpenToggle:Z.useCallback(()=>l(e=>!e),[l]),children:(0,Q.jsx)(p.div,{"data-state":Er(c),"data-disabled":a?``:void 0,...s,ref:t})})},`Collapsible`)),xr=`CollapsibleTrigger`,Sr=Z.forwardRef(mr(function(e,t){let{__scopeCollapsible:n,...r}=e,i=yr(xr,n);return(0,Q.jsx)(p.button,{type:`button`,"aria-controls":i.open?i.contentId:void 0,"aria-expanded":i.open||!1,"data-state":Er(i.open),"data-disabled":i.disabled?``:void 0,disabled:i.disabled,...r,ref:t,onClick:h(e.onClick,i.onOpenToggle)})},`CollapsibleTrigger`)),Cr=`CollapsibleContent`,wr=Z.forwardRef(mr(function(e,t){let{forceMount:n,...r}=e,i=yr(Cr,e.__scopeCollapsible);return(0,Q.jsx)(F,{present:n||i.open,children:({present:e})=>(0,Q.jsx)(Tr,{...r,ref:t,present:e})})},`CollapsibleContent`)),Tr=Z.forwardRef(mr(function(e,t){let{__scopeCollapsible:n,present:r,children:i,...o}=e,s=yr(Cr,n),[c,l]=Z.useState(r),u=Z.useRef(null),d=a(t,u),f=Z.useRef(0),m=f.current,h=Z.useRef(0),g=h.current,_=s.open||c,v=Z.useRef(_),y=Z.useRef(void 0);return Z.useEffect(()=>{let e=requestAnimationFrame(()=>v.current=!1);return()=>cancelAnimationFrame(e)},[]),ee(()=>{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,Q.jsx)(p.div,{"data-state":Er(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 Er(e){return e?`open`:`closed`}mr(Er,`getState`);var Dr=br,Or=Sr,kr=wr,Ar=Object.defineProperty,jr=(e,t)=>Ar(e,`name`,{value:t,configurable:!0}),Mr=`ContextMenu`,[Nr,Pr]=D(Mr,[vt]),Fr=vt(),[Ir,Lr]=Nr(Mr),Rr=jr(e=>{let{__scopeContextMenu:t,children:n,onOpenChange:r,open:i,dir:a,modal:o=!0}=e,s=Z.useRef(!1),[c,l]=R({prop:i,defaultProp:!1,onChange:r,caller:Mr}),u=Fr(t);return(0,Q.jsx)(Ir,{scope:t,open:c,onOpenChange:l,modal:o,hasInteractedRef:s,children:(0,Q.jsx)(Mt,{...u,dir:a,open:c,onOpenChange:l,modal:o,children:n})})},`ContextMenu`),zr=`ContextMenuTrigger`,Br=Z.forwardRef(jr(function(e,t){let{__scopeContextMenu:n,disabled:r=!1,...i}=e,a=Lr(zr,n),o=Fr(n),[s,c]=Z.useState({x:0,y:0}),l=Z.useMemo(()=>({current:{getBoundingClientRect:jr(()=>DOMRect.fromRect({width:0,height:0,...s}),`getBoundingClientRect`)}}),[s]),u=Z.useRef(0),d=Z.useCallback(()=>window.clearTimeout(u.current),[]),f=jr(e=>{a.hasInteractedRef.current=!0,c({x:e.clientX,y:e.clientY}),a.onOpenChange(!0)},`handleOpen`);return Z.useEffect(()=>d,[d]),Z.useEffect(()=>void(r&&d()),[r,d]),(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(St,{...o,virtualRef:l}),(0,Q.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,Yr(e=>{d(),a.open&&a.onOpenChange(!1),u.current=window.setTimeout(()=>f(e),700)})),onPointerMove:r?e.onPointerMove:h(e.onPointerMove,Yr(d)),onPointerCancel:r?e.onPointerCancel:h(e.onPointerCancel,Yr(d)),onPointerUp:r?e.onPointerUp:h(e.onPointerUp,Yr(d))})]})},`ContextMenuTrigger`)),Vr=jr(e=>{let{__scopeContextMenu:t,...n}=e,r=Fr(t);return(0,Q.jsx)(mt,{...r,...n})},`ContextMenuPortal`),Hr=`ContextMenuContent`,Ur=Z.forwardRef(jr(function(e,t){let{__scopeContextMenu:n,...r}=e,i=Lr(Hr,n),a=Fr(n),o=Z.useRef(!1);return(0,Q.jsx)(Ot,{...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`)),Wr=Z.forwardRef(jr(function(e,t){let{__scopeContextMenu:n,...r}=e,i=Fr(n);return(0,Q.jsx)(Sn,{...i,...r,ref:t})},`ContextMenuItem`)),Gr=`ContextMenuSub`,Kr=jr(e=>{let{__scopeContextMenu:t,children:n,onOpenChange:r,open:i,defaultOpen:a}=e,o=Fr(t),[s,c]=R({prop:i,defaultProp:a??!1,onChange:r,caller:Gr});return(0,Q.jsx)(yt,{...o,open:s,onOpenChange:c,children:n})},`ContextMenuSub`),qr=Z.forwardRef(jr(function(e,t){let{__scopeContextMenu:n,...r}=e,i=Fr(n);return(0,Q.jsx)(Nt,{...i,...r,ref:t})},`ContextMenuSubTrigger`)),Jr=Z.forwardRef(jr(function(e,t){let{__scopeContextMenu:n,...r}=e,i=Fr(n);return(0,Q.jsx)(jt,{...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 Yr(e){return t=>t.pointerType===`mouse`?void 0:e(t)}jr(Yr,`whenTouchOrPen`);var Xr=Rr,Zr=Br,Qr=Vr,$r=Ur,ei=Wr,ti=Kr,ni=qr,ri=Jr,ii=new Set([`gif`,`jpeg`,`jpg`,`png`,`webp`]),ai=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 oi(e){let t=e.split(/[\\/]/u).at(-1)?.toLowerCase()??``,n=t.includes(`.`)?t.split(`.`).at(-1)??``:``;return ii.has(n)?`image`:ai.has(n)?`system`:`source`}function si(e){return e.kind===`image`?`image`:e.kind===`text`?`source`:e.size>1048576?`system`:oi(e.name)===`source`?`source`:`system`}async function ci(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(ge(n,r,null,i.snapshot,!0,t)))[o].find(e=>e.path===a.path&&e.kind===a.kind)??a}var li=1500;function ui(e,t){return e||t>0?li:!1}function di(e,t,n,r){return e&&r!==void 0&&t!==n}function fi(e,t,n,r,i=!0){let a=(0,Z.useRef)(r),o=(0,Z.useRef)(new Map),s=(0,Z.useRef)(H()),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 ui(r,e.state.data?.data.length??0)}}),l=J({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,Z.useEffect)(()=>{let e=di(i,a.current,r,n);a.current=r,e&&u()},[i,r,u,n]);let f=(0,Z.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 pi(e){return(0,Q.jsx)(Xr,{"data-slot":`context-menu`,...e})}function mi(e){return(0,Q.jsx)(Zr,{"data-slot":`context-menu-trigger`,...e})}function hi(e){return(0,Q.jsx)(ti,{"data-slot":`context-menu-sub`,...e})}function gi({children:e,...t}){return typeof document>`u`?(0,Q.jsx)(Q.Fragment,{children:e}):(0,Q.jsx)(Qr,{"data-slot":`context-menu-portal`,...t,children:e})}function _i({children:e,className:t,collisionPadding:n=8,...r}){return(0,Q.jsx)(gi,{children:(0,Q.jsx)($r,{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 vi({className:e,...t}){return(0,Q.jsx)(ei,{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 yi({children:e,className:t,...n}){return(0,Q.jsxs)(ni,{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,Q.jsx)(Ce,{"aria-hidden":`true`,className:`ml-auto size-3.5 text-muted-foreground`})]})}function bi({children:e,className:t,collisionPadding:n=8,sideOffset:r=0,...i}){return(0,Q.jsx)(gi,{children:(0,Q.jsx)(ri,{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 xi={editor:Vn,"file-manager":fe,"system-default":Un,terminal:lr,tool:dr};function Si(e,t){return t===`file`?e:e.filter(e=>e.kind!==`system-default`)}function Ci(e){return e.find(e=>e.kind===`file-manager`)}function wi({apps:e,className:t=``,defaultOpenAppId:n,isDetecting:r,isPending:i,onSelect:a}){let{t:o}=u(`workbench`),s=Si(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?fe:xi[c.kind];return(0,Q.jsxs)(mn,{modal:!1,children:[(0,Q.jsxs)(Ue,{className:`shrink-0 ${t}`,children:[(0,Q.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,Q.jsx)(p,{"aria-hidden":`true`}),(0,Q.jsx)(`span`,{className:`hidden truncate sm:inline`,children:f})]}),(0,Q.jsx)(yn,{asChild:!0,children:(0,Q.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,Q.jsx)(w,{"aria-hidden":`true`})})})]}),(0,Q.jsx)(Wt,{align:`end`,"aria-label":o(`openMenu.choose`),className:`w-52`,children:s.map(e=>{let t=xi[e.kind];return(0,Q.jsxs)(ln,{"aria-label":e.name,disabled:i,onSelect:()=>{a(e.id)},children:[(0,Q.jsx)(t,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,Q.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:e.name})]},e.id)})})]})}function Ti(e){return e.split(/[\\/]/u).at(-1)??e}function Ei(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 Di(e){navigator.clipboard.writeText(e).catch(()=>void 0)}function Oi({apps:e,ariaLabel:t,isPending:n,onReference:r,onSelect:i,target:a}){let{t:o}=u(`workbench`),s=Si(e,a.type),c=Ti(a.path),l=a.reference;return(0,Q.jsxs)(_i,{"aria-label":t,className:`w-52`,children:[(0,Q.jsxs)(vi,{onSelect:()=>{Di(c)},children:[(0,Q.jsx)(Hn,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,Q.jsx)(`span`,{children:o(`openMenu.copyName`)})]}),(0,Q.jsxs)(vi,{onSelect:()=>{Di(a.relativePath)},children:[(0,Q.jsx)(Hn,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,Q.jsx)(`span`,{children:o(`openMenu.copyRelativePath`)})]}),(0,Q.jsxs)(vi,{onSelect:()=>{Di(a.absolutePath)},children:[(0,Q.jsx)(Hn,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,Q.jsx)(`span`,{children:o(`openMenu.copyAbsolutePath`)})]}),(0,Q.jsxs)(hi,{children:[(0,Q.jsxs)(yi,{children:[(0,Q.jsx)(fe,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,Q.jsx)(`span`,{children:o(`openMenu.open`)})]}),(0,Q.jsx)(bi,{children:s.map(e=>{let t=xi[e.kind],r=e.kind===`system-default`?o(`openMenu.systemDefault`):e.name;return(0,Q.jsxs)(vi,{"aria-label":r,disabled:n,onSelect:()=>{i(e.id,a.path)},children:[(0,Q.jsx)(t,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,Q.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:r})]},e.id)})})]}),l===void 0?null:(0,Q.jsxs)(vi,{onSelect:()=>{r(l)},children:[(0,Q.jsx)(kn,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,Q.jsx)(`span`,{children:o(`openMenu.reference`)})]})]})}function ki({apps:e,isPending:t,onOpen:n,onReference:r,onSelect:i,target:a}){let{t:o}=u(`workbench`),s=Si(e,a.type),c=o(`openMenu.targetLabel`,{path:a.path}),d=Ti(a.path),f=a.reference;return(0,Q.jsxs)(mn,{modal:!1,onOpenChange:e=>{e&&n()},children:[(0,Q.jsxs)(N,{children:[(0,Q.jsx)(yn,{asChild:!0,children:(0,Q.jsx)(P,{asChild:!0,children:(0,Q.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,Q.jsx)($t,{"aria-hidden":`true`,className:`size-3.5`})})})}),(0,Q.jsx)(I,{side:`left`,children:o(`openMenu.moreActions`)})]}),(0,Q.jsxs)(Wt,{align:`end`,"aria-label":c,className:`w-52`,children:[(0,Q.jsxs)(ln,{onSelect:()=>{Di(d)},children:[(0,Q.jsx)(Hn,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,Q.jsx)(`span`,{children:o(`openMenu.copyName`)})]}),(0,Q.jsxs)(ln,{onSelect:()=>{Di(a.relativePath)},children:[(0,Q.jsx)(Hn,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,Q.jsx)(`span`,{children:o(`openMenu.copyRelativePath`)})]}),(0,Q.jsxs)(ln,{onSelect:()=>{Di(a.absolutePath)},children:[(0,Q.jsx)(Hn,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,Q.jsx)(`span`,{children:o(`openMenu.copyAbsolutePath`)})]}),(0,Q.jsxs)(gn,{children:[(0,Q.jsxs)(Bt,{children:[(0,Q.jsx)(fe,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,Q.jsx)(`span`,{children:o(`openMenu.open`)})]}),(0,Q.jsx)(bn,{children:s.map(e=>{let n=xi[e.kind],r=e.kind===`system-default`?o(`openMenu.systemDefault`):e.name;return(0,Q.jsxs)(ln,{"aria-label":r,disabled:t,onSelect:()=>{i(e.id,a.path)},children:[(0,Q.jsx)(n,{className:`size-4 text-muted-foreground`,"aria-hidden":`true`}),(0,Q.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:r})]},e.id)})})]}),f===void 0?null:(0,Q.jsxs)(ln,{onSelect:()=>{r(f)},children:[(0,Q.jsx)(kn,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,Q.jsx)(`span`,{children:o(`openMenu.reference`)})]})]})]})}function Ai({apps:e,children:t,isPending:n,onOpen:r,onReference:i,onSelect:a,target:o}){let{t:s}=u(`workbench`);return(0,Q.jsxs)(pi,{modal:!1,onOpenChange:e=>{e&&r()},children:[(0,Q.jsx)(mi,{asChild:!0,onContextMenu:e=>{e.stopPropagation()},children:t}),(0,Q.jsx)(Oi,{apps:e,ariaLabel:s(`openMenu.targetLabel`,{path:o.path}),isPending:n,onReference:i,onSelect:a,target:o})]})}var ji=new Set([`agent/close`,`agent/resume`,`agent/send_input`,`agent/spawn`,`agent/wait`]);function Mi(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 Ni(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function Pi(e){return e===`pending`||e===`running`||e===`completed`||e===`failed`||e===`declined`||e===`interrupted`}function Fi(e){if(!ji.has(e.name))return null;let t=Ni(e.input)?e.input:{},n=Ni(e.output)?e.output:{};return{agents:(Array.isArray(n.agents)?n.agents:[]).flatMap(e=>{if(!Ni(e))return[];let t=e.taskId,n=e.status;if(typeof t!=`string`||!Pi(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 Ii(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=Fi(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 Li(e){return e.split(`-`).map(e=>e===`gpt`?`GPT`:`${e.charAt(0).toUpperCase()}${e.slice(1)}`).join(`-`)}function Ri(e){return e===`pending`?`pending`:e===`running`?`in_progress`:e===`failed`||e===`declined`||e===`interrupted`?`error`:`completed`}function zi(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`:Ri(e)}function Bi(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=zi(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 Vi({activePanel:e,gitStatus:t,temporary:n}){return!n&&e&&t!==void 0&&t.repositoryMode!==`none`&&t.staged.length+t.unstaged.length>0}function Hi(e,t,{contextOnly:n=!1,fileOpen:r=!1}={}){let i=t!==void 0&&t.repositoryMode!==`none`,a=i&&t.staged.length+t.unstaged.length>0,o=[];return n?(o.push(`context`),r&&o.push(`file`),o):(e!==void 0&&o.push(`context`),o.push(`project`),a&&o.push(`changes`),i&&o.push(`history`),r&&o.push(`file`),o)}function Ui({contextOnly:e=!1,fileOpen:t=!1,gitStatus:n,inspectorOpen:r,requestedTab:i,taskId:a}){let o=Hi(a,n,{contextOnly:e,fileOpen:t}),s=e?i===`file`&&t?`file`:`context`:o.includes(i)?i:`project`;return{activeTab:s,changes:r&&s===`changes`,context:r&&s===`context`,file:r&&s===`file`,history:r&&s===`history`,project:r&&s===`project`}}var Wi=`(max-width: 760px)`,Gi=`(max-width: 1100px)`,Ki={default:288,maximum:400,minimum:220},qi={default:320,minimum:320};function Ji(e){return typeof window>`u`||!window.matchMedia(e).matches}function Yi(e,t){return Math.max(qi.minimum,Math.floor((e-t)/2))}function Xi(){let[e,t]=(0,Z.useState)(()=>Ji(Wi)),[n,r]=(0,Z.useState)(()=>Ji(Gi)),[i,a]=(0,Z.useState)(Ki.default),[o,s]=(0,Z.useState)(qi.default),[c,l]=(0,Z.useState)(()=>typeof window>`u`?1440:window.innerWidth),u=(0,Z.useRef)(null),d=Yi(c,e?i:0);return(0,Z.useLayoutEffect)(()=>{let e=u.current;if(e===null)return;let t=()=>{l(e.getBoundingClientRect().width)};t();let n=new ResizeObserver(t);return n.observe(e),()=>{n.disconnect()}},[]),(0,Z.useLayoutEffect)(()=>{s(e=>Math.min(e,d))},[d]),{inspectorMaximumWidth:d,inspectorOpen:n,inspectorWidth:o,setInspectorOpen:r,setInspectorWidth:s,setSidebarOpen:t,setSidebarWidth:a,sidebarOpen:e,sidebarWidth:i,workbenchShellRef:u}}function Zi(){let[e,t]=(0,Z.useState)(),n=(0,Z.useRef)(void 0),r=(0,Z.useCallback)(()=>{let e=new Date().toISOString();n.current=e,t(e)},[]),i=(0,Z.useCallback)(e=>{if(e){if(n.current===void 0){let e=new Date().toISOString();n.current=e,t(e)}return}n.current=void 0,t(void 0)},[]);return{beginSubmission:r,getStartedAt:(0,Z.useCallback)(()=>n.current,[]),handleSubmissionStateChange:i,startedAt:e}}var Qi=new Set;function $i(e,t){return[`projects`,e,`tasks`,t,`launch`]}function ea({projectId:e,taskId:t,temporary:n=!1}){let{t:r}=u(`workbench`),i=pn(),{capabilities:a,client:o,error:s,isPending:c,projects:l,projectTaskStates:d,tasks:f}=Xt(),p=l.find(t=>t.id===e),{selectedRootIds:m,setSelectedProjectRoot:h}=Lt(),g=hn(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}=Qt(),T=Vt(),E=L(),{inspectorMaximumWidth:D,inspectorOpen:O,inspectorWidth:k,setInspectorOpen:A,setInspectorWidth:M,setSidebarOpen:N,setSidebarWidth:P,sidebarOpen:F,sidebarWidth:I,workbenchShellRef:R}=Xi(),z=`${e}:${t??`draft`}`,ee=t===void 0?`project`:`context`,[B,V]=(0,Z.useState)({scopeKey:z,tab:ee}),[U,W]=(0,Z.useState)(null),G=B.scopeKey===z?B.tab:ee,K=j(re(e,v??``,o,!n&&v!==void 0)),q=Ui({contextOnly:n,fileOpen:U?.projectId===e,gitStatus:K.data,inspectorOpen:O,requestedTab:G,taskId:t}),te=j(_e(o)),ae=J({...me(o),onSuccess(e){E.setQueryData([`app-info`],e)}}),ce=j(Ee(o)),le=j(Pe()),fe=j(De(e,t,o,q.context)),pe=J({...de(e,t,o),onSuccess(n){E.setQueryData([`projects`,e,`tasks`,t??null,`mcp-servers`],n)}}),he=j(we(o)),ve=j(ie(e,o,!n)),ye=J({meta:{actionNotification:{successMessage:!1}},mutationFn:({appId:t,path:n})=>o.openProject(e,v,n===void 0?{appId:t}:{appId:t,path:n})}),be=J({meta:{actionNotification:{successMessage:!1}},mutationFn:({attachmentId:t,taskId:n})=>o.openTaskAttachment(e,n,t)}),xe=(0,Z.useRef)(ye);xe.current=ye;let Se=(0,Z.useRef)(H()),Ce=Ci(ve.data?.apps??[]),Oe=(0,Z.useCallback)(()=>{if(Ce===void 0)return;let e=xe.current;e.reset(),Se.current.run(()=>e.mutateAsync({appId:Ce.id,path:void 0})).catch(()=>void 0)},[Ce,Se,xe]),ke=j({...oe(e,o),enabled:a?.skills.list===!0}),Ae=j(se(e,o,!n)),Y=J({...Te(e,o),onSuccess(t){E.setQueryData([`projects`,e,`defaults`],t)}}),je=J({...ue(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]})}}),Me=xt(e,t,b),Ne=t===void 0?void 0:E.getQueryData($i(e,t)),X=(0,Z.useMemo)(()=>Ne===void 0?void 0:Gt({...Ne.task,contextUsage:null,plan:null,pendingRequests:[],settings:Ne.settings,status:`running`,turns:[Ne.turn],turnsNextCursor:null},Ne.turn,{...Ne.input,messageAttachments:Ne.messageAttachments}),[Ne]),Fe=d.get(e),Ie=nn({hasActiveTask:t!==void 0,projectDataFailed:s!==null||(Fe?.error??null)!==null,projectDataPending:c||Fe?.isPending===!0,taskConnectionState:Me.connectionState}),Le=fi(o,e,t,Me.snapshot?.status===`running`||X?.status===`running`,q.context),Re=`${e}:${v??`temporary`}`,[ze,Be]=(0,Z.useState)(()=>({paths:new Set,scope:Re})),Ve=ze.scope===Re?ze.paths:Qi,{beginSubmission:He,getStartedAt:Ue,handleSubmissionStateChange:We,startedAt:Ge}=Zi(),[Ke,qe]=(0,Z.useState)(),[Je,Ye]=(0,Z.useState)(!1),[Xe,Ze]=(0,Z.useState)(null),[Qe,$e]=(0,Z.useState)(null),[et,tt]=(0,Z.useState)(null),[nt,rt]=(0,Z.useState)(null),it=(0,Z.useCallback)(t=>{h(e,t),$e(null),tt(null),W(null)},[e,h]),at=j(ge(e,v??``,null,K.data?.snapshot??``,Vi({activePanel:q.context||q.project||q.changes,gitStatus:K.data,temporary:n}),o)),ot=(0,Z.useCallback)(e=>{V({scopeKey:z,tab:e})},[z]);(0,Z.useLayoutEffect)(()=>{w(e,t)},[e,t,w]);let st=n?r(`shell.temporaryTask`):p?.name??e,ct=v??``,lt=f.find(n=>n.projectId===e&&n.id===t)?.title??Me.snapshot?.title??r(`shell.newChat`),ut=J(ne(o)),dt=(0,Z.useRef)(H()),ft=Qe!==null&&Qe.projectId===e?Qe:null,pt=U!==null&&U.projectId===e?U:null,mt=et!==null&&et.projectId===e?et.changes:null,ht=(0,Z.useMemo)(()=>Ii(Me.snapshot??X),[Me.snapshot,X]),gt=nt!==null&&nt.projectId===e&&nt.parentTaskId===t?{...nt.selection,status:ht.find(e=>e.taskId===nt.selection.taskId)?.status??nt.selection.status}:null;return{access:i,activeTaskRenameLockRef:dt,appInfoQuery:te,appUpdateMutation:ae,backgroundTerminals:Le,beginNewChatSubmission:He,capabilities:a,client:o,error:s,expandedFileTreePaths:Ve,fileReviewSelection:et,getNewChatSubmissionStartedAt:Ue,gitStatusQuery:K,gitStatusDetailsQuery:at,globalSettingsMutation:je,globalSettingsSection:Xe,globalSettingsQuery:he,handleNewChatSubmissionStateChange:We,inspectorOpen:O,inspectorMaximumWidth:D,inspectorTab:G,inspectorTask:Me.snapshot??X,inspectorWidth:k,isPending:c,markTaskRunning:y,mcpServersQuery:fe,mcpServersReloadMutation:pe,modelsQuery:ce,navigate:T,newChatSubmissionStartedAt:Ge,openProjectFolder:Oe,pendingTaskSelection:Ke,projectDefaultsMutation:Y,projectDefaultsQuery:Ae,projectName:st,projectRoots:p?.roots??[],projectOpenCapabilitiesQuery:ve,providerConnectionQuery:le,projectFolderOpenDisabled:Ce===void 0||ye.isPending,projectPath:ct,projectPathOpenLockRef:Se,projectPathOpenMutation:ye,projectPathOpenMutationRef:xe,taskAttachmentOpenMutation:be,projectRuntime:b,projectTaskState:Fe,projects:l,queryClient:E,refreshProjectGitStatus:x,renameMutation:ut,requestNotificationPermission:S,retry:C,runtime:Me,selectedFileReview:mt,selectedInspectorFile:pt,selectedProjectFileDialog:ft,selectedRootId:_,selectedRootPath:v,selectedSubagent:gt,setFileReviewSelection:tt,setFileTreeExpansion:Be,setGlobalSettingsSection:Ze,setInspectorOpen:A,setInspectorTab:ot,setInspectorWidth:M,setPendingTaskSelection:qe,setSidebarOpen:N,setSidebarWidth:P,setInspectorFileSelection:W,setProjectFileDialogSelection:$e,setSelectedRootId:it,setSubagentDialogSelection:rt,setTaskRenameOpen:Ye,sidebarConnectionState:Ie,sidebarOpen:F,sidebarWidth:I,skillsQuery:ke,startingSnapshot:X,subagents:ht,taskLaunchState:Ne,temporary:n,taskRenameOpen:Je,tasks:f,t:r,title:lt,viewTask:w,workbenchShellRef:R}}function ta(e,t){return{...e,fastMode:t}}function na(e,t,n){return e?n??!1:t??n??!1}function ra(e,{projectId:t,taskId:n,temporary:r=!1}){let{activeTaskRenameLockRef:i,client:a,getNewChatSubmissionStartedAt:o,globalSettingsQuery:s,gitStatusQuery:c,markTaskRunning:l,modelsQuery:u,navigate:d,projectDefaultsMutation:p,projectDefaultsQuery:m,providerConnectionQuery:h,projectPathOpenLockRef:g,projectPathOpenMutationRef:_,queryClient:v,renameMutation:y,runtime:b,selectedRootPath:x,setFileReviewSelection:S,setInspectorFileSelection:C,setInspectorOpen:w,setInspectorTab:T,setPendingTaskSelection:D,setProjectFileDialogSelection:O,setSidebarOpen:k,setTaskRenameOpen:A,taskLaunchState:j}=e,M=(0,Z.useCallback)(e=>{C({change:e,kind:`diff`,projectId:t}),T(`file`),w(!0)},[t,C,w,T]),N=(0,Z.useCallback)(e=>{x!==void 0&&ci(v,a,t,x,c.data,e).then(e=>{O({change:e,kind:`diff`,projectId:t})}).catch(e=>{W(e instanceof Error?e:Error(`Git diff is unavailable`))})},[a,c.data,t,v,x,O]),P=(0,Z.useCallback)(e=>{let n=oi(e.path);if(n===`system`){let t=_.current;t.reset(),g.current.run(()=>t.mutateAsync({appId:`system-default`,path:e.path})).catch(()=>void 0);return}C({kind:n,projectId:t,reference:e}),T(`file`),w(!0)},[t,g,_,w,T,C]),F=(0,Z.useCallback)(e=>{let n=oi(e);if(n===`system`){let t=_.current;t.reset(),g.current.run(()=>t.mutateAsync({appId:`system-default`,path:e})).catch(()=>void 0);return}O({kind:n,projectId:t,reference:{lineNumber:null,path:e}})},[t,g,_,O]),I=(0,Z.useCallback)(e=>{S({changes:e,projectId:t})},[t,S]),L=()=>{A(!1),requestAnimationFrame(()=>{document.querySelector(`#workbench-task-title-rename`)?.focus()})},R=e=>i.current.run(async()=>{if(n!==void 0)try{let r=await y.mutateAsync({projectId:t,taskId:n,title:e});le(v,r.task),L()}catch{}}),z=(0,Z.useCallback)(e=>{v.setQueryData([`projects`,e.projectId,`tasks`],t=>Se(t,e)),v.setQueryData([`projects`,e.projectId,`tasks`,f],t=>t===void 0?void 0:[e,...t.filter(t=>t.id!==e.id)])},[v]),ee=(0,Z.useCallback)(e=>{z(e),D({projectId:e.projectId,taskId:e.id})},[z,D]),B=(0,Z.useCallback)((e,n,i,a,s=[])=>{if(z(e),n!==void 0&&i!==void 0&&a!==void 0){let r=o()??n.startedAt;v.setQueryData($i(t,e.id),{input:i,messageAttachments:s,settings:a,...r===null?{}:{submissionStartedAt:r},task:e,turn:n})}n!==void 0&&l(t,e.id),D(void 0),d({...r?{params:{taskId:e.id},to:`/temporary/t/$taskId`}:{params:{projectId:t,taskId:e.id},to:`/p/$projectId/t/$taskId`}})},[z,o,l,d,t,v,D,r]),V=u.data?.data??[],H=s.data?.settings,U=m.data?.settings,G=h.data!==void 0&&E(h.data),K=r?H:U,q=V.find(e=>e.id===K?.model)??V.find(e=>e.isDefault)??V[0],J=(0,Z.useMemo)(()=>({approvalPolicy:K?.approvalPolicy??H?.approvalPolicy??`on-request`,approvalsReviewer:K?.approvalsReviewer??H?.approvalsReviewer??`user`,model:q?.id??K?.model??``,reasoningEffort:K?.reasoningEffort??q?.defaultReasoningEffort??``,sandboxMode:K?.sandboxMode??`workspace-write`}),[q,K,H]),[te,ne]=(0,Z.useState)(),re=r?te??J:J,ie=na(r,U?.fastMode,H?.fastMode),oe=async(e,t)=>{r||await p.mutateAsync(ta(e,t))},se=async(e,t,n)=>{if(r){ne(e);return}await oe(e,n)},ce=(0,Z.useCallback)(e=>{d({params:{projectId:e},to:`/p/$projectId`})},[d]),ue=()=>{k(!1),requestAnimationFrame(()=>{document.querySelector(`#workbench-sidebar-toggle`)?.focus()})},de=()=>{w(!1),requestAnimationFrame(()=>{document.querySelector(`#workbench-inspector-toggle`)?.focus()})},fe=j?.turn.id?b.snapshot?.turns.find(e=>e.id===j.turn.id)?.items.some(e=>e.type===`message`&&e.role===`user`)===!0:!1;return(0,Z.useEffect)(()=>{n!==void 0&&fe&&v.removeQueries({exact:!0,queryKey:$i(t,n)})},[fe,t,v,n]),(0,Z.useEffect)(()=>{let e=b.snapshot;n===void 0||e===void 0||v.setQueryData([`projects`,t,`tasks`],t=>ae(t,e))},[t,v,b.snapshot,n]),(0,Z.useEffect)(()=>{let e=window.matchMedia(Wi),t=window.matchMedia(Gi),n=()=>{e.matches&&k(!1),t.matches&&w(!1)};return e.addEventListener(`change`,n),t.addEventListener(`change`,n),()=>{e.removeEventListener(`change`,n),t.removeEventListener(`change`,n)}},[w,k]),{...e,closeInspector:de,closeSidebar:ue,closeTaskRenameDialog:L,draftSettings:re,fastModeDefault:ie,fastModeAvailable:G,globalSettings:H,handleNewTaskProjectChange:ce,handleTaskCreated:ee,handleTaskStarted:B,models:V,openFileDiff:M,openProjectFileDiff:N,openFileReview:I,openMessageFileReference:P,openProjectFile:F,renameActiveTask:R,updateDraftSettings:se,updateProjectTaskDefaults:oe}}var ia=e(r(),1);function aa(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 oa(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 sa(e,t){if(e===void 0)throw Error(`Unexpected undefined${t?`: ${t}`:``}`);return e}var ca=(e,t)=>Math.abs(e-t)<1.01,la=(e,t,n)=>{let r;return function(...i){e.clearTimeout(r),r=e.setTimeout(()=>t.apply(this,i),n)}},ua,da=()=>{if(ua!==void 0)return ua;if(typeof navigator>`u`)return ua=!1;if(/iP(hone|od|ad)/.test(navigator.userAgent))return ua=!0;let e=navigator.maxTouchPoints;return ua=navigator.platform===`MacIntel`&&e!==void 0&&e>0},fa=e=>{let{offsetWidth:t,offsetHeight:n}=e;return{width:t,height:n}},pa=e=>e,ma=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},ha=(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(fa(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(fa(n))};e.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(r):r()});return a.observe(n,{box:`border-box`}),()=>{a.unobserve(n)}},ga={passive:!0},_a=typeof window>`u`||`onscrollend`in window,va=(e,t,n)=>{let r=e.scrollElement;if(!r)return;let i=e.targetWindow;if(!i)return;let a=e.options.useScrollendEvent&&_a,o=0,s=a?null:la(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,ga),a&&r.addEventListener(`scrollend`,u,ga),()=>{r.removeEventListener(`scroll`,l),a&&r.removeEventListener(`scrollend`,u)}},ya=(e,t)=>va(e,t,t=>{let{horizontal:n,isRtl:r}=e.options;return n?t.scrollLeft*(r&&-1||1):t.scrollTop}),ba=(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`]},xa=(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})},Sa=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:pa,rangeExtractor:ma,onChange:()=>{},measureElement:ba,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=oa(()=>(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,!(!da()||this.targetWindow==null)&&(this._iosJustTouchEnded=!0,this._iosTouchEndTimerId=this.targetWindow.setTimeout(()=>{this._iosJustTouchEnded=!1,this._iosTouchEndTimerId=null,this._flushIosDeferredIfReady()},150))};e.addEventListener(`touchstart`,t,ga),e.addEventListener(`touchend`,n,ga),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&&(da()&&(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=oa(()=>[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=oa(()=>[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=aa(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=oa(()=>[this.getMeasurements(),this.getSize(),this.getScrollOffset(),this.options.lanes],(e,t,n,r)=>e.length===0||t===0?(this.range=null,null):(this.range=Ta(e,t,n,r,r===1&&this._flatMeasurements!=null?this._flatMeasurements:null),this.range),{key:!1,debug:()=>this.options.debug}),this.getVirtualIndexes=oa(()=>{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=oa(()=>[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 sa(t[Ca(0,t.length-1,r?e=>n[e*2]:e=>sa(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:da()&&(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&&ca(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()}},Ca=(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 wa(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 Ta(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=wa(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=Ca(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 Ea=typeof document<`u`?Z.useLayoutEffect:Z.useEffect;function Da({useFlushSync:e=!0,directDomUpdates:t=!1,directDomUpdatesMode:n=`transform`,...r}){let i=Z.useReducer(e=>e+1,0)[1],a=Z.useRef({enabled:t,mode:n,container:null,lastSize:null,lastPositions:new WeakMap,prevRange:null});a.current.enabled=t,a.current.mode=n;let o=e=>{let t=a.current;if(!t.enabled||!t.container)return;let n=e.getTotalSize();if(n!==t.lastSize){t.lastSize=n;let r=e.options.horizontal?`width`:`height`;t.container.style[r]=`${n}px`}},s=e=>{let t=a.current;if(!t.enabled||!t.container)return;o(e);let n=!!e.options.horizontal,r=t.mode===`transform`,i=n?`left`:`top`,s=e.options.scrollMargin,c=e.getVirtualItems();for(let a of c){let o=a.start-s,c=e.elementsCache.get(a.key);c&&t.lastPositions.get(c)!==o&&(t.lastPositions.set(c,o),r?c.style.transform=n?`translate3d(${o}px, 0, 0)`:`translate3d(0, ${o}px, 0)`:c.style[i]=`${o}px`)}},c={...r,onChange:(t,n)=>{var o;let c=a.current,l=!0;if(c.enabled){s(t);let e=t.range,n=c.prevRange;l=!n||n.isScrolling!==t.isScrolling||n.startIndex!==e?.startIndex||n.endIndex!==e?.endIndex,l&&(c.prevRange=e?{startIndex:e.startIndex,endIndex:e.endIndex,isScrolling:t.isScrolling}:null)}l&&(e&&n?(0,ia.flushSync)(i):i()),(o=r.onChange)==null||o.call(r,t,n)}},[l]=Z.useState(()=>{let e=new Sa(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),Ea(()=>l._didMount(),[]),Ea(()=>(o(l),l._willUpdate())),Ea(()=>{s(l)}),l}function Oa(e){return Da({observeElementRect:ha,observeElementOffset:ya,scrollToFn:xa,...e})}var ka=24;function Aa(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<ka)},pauseFollowing(){a(!1)},scrollToBottom(e){o(e,`smooth`)}}}var ja=(0,Z.createContext)(null),Ma={height:768,width:1024},Na=300,Pa=24,Fa=3;function Ia(){let e=(0,Z.useContext)(ja);if(e===null)throw Error(`Conversation virtual components must be used within Conversation`);return e}function La({children:e,className:t=``,conversationId:n,onScroll:r,scrollToBottomSignal:i,style:a,...o}){let s=(0,Z.useRef)(null),c=(0,Z.useRef)(i),[l,u]=(0,Z.useState)(!0),[d,f]=(0,Z.useState)(0),p=(0,Z.useRef)(void 0),m=p.current??=Aa(u),h=(0,Z.useCallback)(()=>{let e=s.current;e!==null&&m.scrollToBottom(e)},[m]),g=(0,Z.useCallback)(()=>{m.pauseFollowing()},[m]),_=(0,Z.useMemo)(()=>({atBottom:l,containerRef:s,pauseFollowing:g,scrollbarWidth:d,scrollToBottom:h}),[l,g,d,h]);return(0,Z.useLayoutEffect)(()=>{let e=s.current;if(e===null)return;m.handleConversationChange(e);let t=-1,n=0,r=0,i=0,a=()=>{m.handleContentResize(e);let o=e.scrollHeight;if(n=o===t?n+1:0,t=o,r+=1,n>=2||r>=60){m.handleConversationRenderComplete(e);return}i=requestAnimationFrame(a)};return i=requestAnimationFrame(a),()=>{cancelAnimationFrame(i)}},[m,n]),(0,Z.useLayoutEffect)(()=>{if(i===void 0||i===c.current)return;c.current=i;let e=s.current;e!==null&&m.scrollToBottom(e)},[m,i]),(0,Z.useEffect)(()=>{let e=s.current;if(e===null)return;let t=e.querySelector(`[data-conversation-content]`)??e.firstElementChild,n=()=>{let t=Math.max(0,e.offsetWidth-e.clientWidth);f(e=>e===t?e:t)},r=new ResizeObserver(()=>{n(),m.handleContentResize(e)});return n(),r.observe(e),t!==null&&r.observe(t),()=>{r.disconnect()}},[m]),(0,Q.jsx)(ja.Provider,{value:_,children:(0,Q.jsx)(`div`,{className:`relative min-h-0 flex-1 overflow-y-auto overscroll-contain ${t}`,onScroll:e=>{let t=e.currentTarget;m.handleScroll(t),r?.(e)},ref:s,role:`log`,"aria-live":`off`,style:{...a,overflowAnchor:`none`},...o,children:e})})}function Ra({className:e=``,...t}){return(0,Q.jsx)(`div`,{className:`mx-auto flex w-full max-w-content flex-col px-4 py-6 sm:px-6 sm:py-7 ${e}`,...t})}function za({className:e=``,estimateSize:t,footer:n,getItemKey:r,items:i,renderNavigation:a,renderItem:o,...s}){let{containerRef:c,pauseFollowing:l,scrollbarWidth:u}=Ia(),d=(0,Z.useRef)(0),f=(0,Z.useCallback)(()=>c.current,[c]),p=(0,Z.useCallback)(e=>t?.(i[e],e)??Na,[t,i]),m=(0,Z.useCallback)(e=>r(i[e],e),[r,i]),h=Oa({anchorTo:`end`,count:i.length,estimateSize:p,followOnAppend:`auto`,gap:Pa,getItemKey:m,getScrollElement:f,initialRect:Ma,overscan:Fa,scrollEndThreshold:24}),g=(0,Z.useCallback)((e,t)=>{let n=c.current;if(n===null)return;cancelAnimationFrame(d.current);let r=()=>Array.from(n.querySelectorAll(`[data-conversation-anchor]`)).find(e=>e.dataset.conversationAnchor===t),i=r();if(i!==void 0){l(),i.scrollIntoView({block:`start`});return}l(),h.scrollToIndex(e,{align:`start`});let a=12,o=()=>{let t=r();if(t!==void 0){t.scrollIntoView({block:`start`});return}--a,a>0&&(h.scrollToIndex(e,{align:`start`}),d.current=requestAnimationFrame(o))};d.current=requestAnimationFrame(o)},[c,l,h]);return(0,Z.useEffect)(()=>()=>{cancelAnimationFrame(d.current)},[]),(0,Q.jsxs)(Q.Fragment,{children:[a?.(g,u,c),(0,Q.jsxs)(`div`,{className:`mx-auto w-full max-w-content px-4 py-6 sm:px-6 sm:py-7 ${e}`,"data-conversation-content":``,...s,children:[(0,Q.jsx)(`div`,{className:`relative w-full`,style:{height:h.getTotalSize()},children:h.getVirtualItems().map(e=>(0,Q.jsx)(`div`,{className:`absolute left-0 top-0 w-full`,"data-index":e.index,ref:h.measureElement,style:{transform:`translateY(${String(e.start)}px)`},children:o(i[e.index],e.index)},e.key))}),n===void 0?null:(0,Q.jsx)(`div`,{className:i.length===0?`space-y-6`:`mt-6 space-y-6`,children:n})]})]})}function Ba({className:e=``,onClick:t,type:n=`button`,...r}){let i=(0,Z.useContext)(ja),{t:a}=u(`conversation`);return i?.atBottom===!1?(0,Q.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,Q.jsx)(On,{className:`size-4`,"aria-hidden":`true`}),(0,Q.jsx)(`span`,{className:`sr-only`,children:a(`agentComponents.scrollToBottom`)})]}):null}function Va({className:e=``,from:t,...n}){return(0,Q.jsx)(`article`,{className:`group/message flex w-full flex-col ${t===`user`?`items-end`:`items-start`} ${e}`,"data-role":t,...n})}function Ha({className:e=``,...t}){return(0,Q.jsx)(`div`,{className:`max-w-full text-body leading-6 text-foreground group-data-[role=user]/message:max-w-[var(--ui-layout-message-width)] group-data-[role=user]/message:rounded-surface group-data-[role=user]/message:bg-control group-data-[role=user]/message:px-3.5 group-data-[role=user]/message:py-2.5 ${e}`,...t})}function Ua({className:e=``,...t}){return(0,Q.jsx)(`div`,{className:`flex items-center gap-1 ${e}`,...t})}function Wa({className:e=``,label:t,tooltip:n,type:r=`button`,...i}){return(0,Q.jsxs)(N,{children:[(0,Q.jsx)(P,{asChild:!0,children:(0,Q.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,Q.jsx)(I,{children:n})]})}(0,Z.createContext)(null);var Ga=(0,Z.createContext)(null);function Ka({children:e,className:t=``,collapsible:n=!0,defaultOpen:r=!1,status:i,...a}){let o=(0,Z.useMemo)(()=>({collapsible:n,status:i}),[n,i]),s=`group/task w-full text-label text-foreground ${t}`;return(0,Q.jsx)(Ga.Provider,{value:o,children:n?(0,Q.jsx)(`details`,{className:s,"data-ai-task":``,"data-status":i,open:r,...a,children:e}):(0,Q.jsx)(`div`,{className:s,"data-ai-task":``,"data-status":i,...a,children:e})})}var qa={completed:{icon:(0,Q.jsx)(G,{className:`size-3.5`,"aria-hidden":`true`}),labelKey:`agentComponents.status.completed`},error:{icon:(0,Q.jsx)(zn,{className:`size-3.5`,"aria-hidden":`true`}),labelKey:`agentComponents.status.error`},in_progress:{icon:(0,Q.jsx)(In,{className:`size-3.5 animate-spin`,"aria-hidden":`true`}),labelKey:`agentComponents.status.inProgress`},pending:{icon:(0,Q.jsx)(zt,{className:`size-3.5`,"aria-hidden":`true`}),labelKey:`agentComponents.status.pending`}};function Ja({className:e=``,suffix:t,title:n,...r}){let i=(0,Z.useContext)(Ga),{t:a}=u(`conversation`);if(i===null)throw Error(`TaskTrigger must be used within Task`);let o=qa[i.status],s=`flex min-h-9 w-full list-none items-center gap-2 py-1 [&::-webkit-details-marker]:hidden ${i.collapsible?`cursor-pointer`:``} ${e}`,c=(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(`span`,{className:`shrink-0 ${i.status===`error`?`text-danger`:`text-muted-foreground`}`,children:[o.icon,(0,Q.jsx)(`span`,{className:`sr-only`,children:a(o.labelKey)})]}),(0,Q.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-medium`,children:n}),t,i.collapsible?(0,Q.jsx)(Ce,{className:`size-3.5 shrink-0 text-muted-foreground transition-transform group-open/task:rotate-90`,"aria-hidden":`true`}):null]});return i.collapsible?(0,Q.jsx)(`summary`,{className:s,...r,children:c}):(0,Q.jsx)(`div`,{className:s,...r,children:c})}function Ya({className:e=``,...t}){return(0,Q.jsx)(`div`,{className:`pb-1 pl-5 ${e}`,...t})}function Xa({className:e=``,...t}){return(0,Q.jsx)(`div`,{className:`min-w-0 [overflow-wrap:anywhere] border-l border-separator py-1 pl-3 text-meta leading-5 text-muted-foreground ${e}`,...t})}function Za({onProjectChange:e,projectId:t,projects:n,scopeName:r}){let i=r??n.find(e=>e.id===t)?.name??``;return(0,Q.jsx)(`section`,{className:`grid min-h-0 flex-1 place-items-center px-6`,"aria-label":d.t(`timeline.conversation`,{ns:`conversation`}),children:(0,Q.jsxs)(`div`,{className:`w-full max-w-xl text-center`,children:[(0,Q.jsx)(tr,{"aria-hidden":`true`,className:`mx-auto size-12 text-muted-foreground/55`,strokeWidth:1.35}),(0,Q.jsxs)(`h2`,{className:`mt-5 flex flex-wrap items-center justify-center text-balance text-xl font-normal leading-tight text-foreground`,children:[d.t(`timeline.emptyBefore`,{ns:`conversation`}),(0,Q.jsxs)(`span`,{className:`group relative mx-1 inline-block max-w-full rounded-control focus-within:shadow-focus`,children:[(0,Q.jsx)(`span`,{"aria-hidden":`true`,className:`block max-w-full truncate whitespace-pre font-sans font-normal text-foreground underline decoration-current/35 underline-offset-4 transition-colors group-hover:decoration-current`,children:i}),r===void 0?(0,Q.jsx)(`select`,{"aria-label":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,Q.jsx)(`option`,{value:e.id,children:e.name},e.id))}):null]}),d.t(`timeline.emptyAfter`,{ns:`conversation`})]})]})})}function Qa({message:e,role:t}){return(0,Q.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 $a(e){return e===`pending`?`input-streaming`:e===`running`?`input-available`:e===`declined`?`output-denied`:e===`failed`||e===`interrupted`?`output-error`:`output-available`}function eo(e){return e===`pending`?`pending`:e===`running`?`in_progress`:e===`failed`||e===`declined`||e===`interrupted`?`error`:`completed`}function to(e){return typeof e==`string`?e:JSON.stringify(e,null,2)}function no({item:e,operation:t}){let n=zi(e.status,t.agents),r=Bi(e.status,t.agents);return(0,Q.jsx)(Ka,{collapsible:!1,status:n,children:(0,Q.jsx)(Ja,{title:`${Mi(t.name)} · ${r}`})})}var ro=1e3,io=new Map;function ao(e){let t=io.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 io.set(e,n),n}function oo(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 so({completedAt:e,expanded:t,onToggle:n,startedAt:r}){let[i,a]=(0,Z.useState)(()=>Date.now());if((0,Z.useEffect)(()=>{if(r===null||e!==null)return;let t=globalThis.setInterval(()=>{a(Date.now())},ro);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=oo(Math.max(0,Math.floor((s-o)/1e3))),l=(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(`span`,{children:[d.t(`timeline.processing`,{ns:`conversation`}),`\xA0`]}),(0,Q.jsx)(`time`,{dateTime:c.dateTime,children:c.label})]}),u=`mb-4 flex w-full items-center border-b border-separator pb-2.5 text-label font-medium text-muted-foreground`;return n===void 0?(0,Q.jsx)(`div`,{className:u,"data-turn-processing-time":``,children:l}):(0,Q.jsxs)(`button`,{"aria-expanded":t??!1,"aria-label":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,Q.jsx)(Ce,{"aria-hidden":`true`,className:`ms-auto size-3.5 transition-transform ${t?`rotate-90`:``}`})]})}function co(e,t,n){return e===`user`?t.startedAt??n:t.completedAt??n}function lo({lastTurnId:e,modeLabel:t,onForkTask:n,text:r,timestamp:i}){let[a,s]=(0,Z.useState)(!1),c=(0,Z.useRef)(null),l=(0,Z.useRef)(H()),u=i===void 0?void 0:new Date(i),f=o(),p=u===void 0?void 0:ao(f),m=()=>l.current.run(async()=>{try{await navigator.clipboard.writeText(r),K()}catch(e){W(e)}}),h=()=>l.current.run(async()=>{if(!(e===void 0||n===void 0)){c.current??=x(),s(!0);try{await n(e,c.current),K()}catch(e){W(e)}finally{s(!1)}}});return(0,Q.jsxs)(Ua,{className:`mt-2 text-label text-muted-foreground`,children:[(0,Q.jsx)(Wa,{label:d.t(`timeline.copyMessage`,{ns:`conversation`}),onClick:()=>{m()},tooltip:d.t(`timeline.copyMessage`,{ns:`conversation`}),children:(0,Q.jsx)(Hn,{className:`size-3.5`,"aria-hidden":`true`})}),e===void 0||n===void 0?null:(0,Q.jsx)(Wa,{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,Q.jsx)(Y,{className:`size-3.5`,"aria-hidden":`true`})}),t===void 0?null:(0,Q.jsx)(`span`,{children:t}),i===void 0||u===void 0?null:(0,Q.jsx)(`time`,{dateTime:i,title:p?.full.format(u),children:p?.time.format(u)})]})}var uo=(0,Z.memo)(function({as:e=`p`,children:t,className:n=``,duration:r=2,spread:i=2,style:a,...o}){let s=(0,Z.useMemo)(()=>({"--ui-shimmer-duration":`${String(r)}s`,"--ui-shimmer-spread":`${String(i)}em`,...a}),[r,i,a]);return(0,Q.jsx)(e,{className:`agent-shimmer inline-block ${n}`,"data-agent-shimmer":``,style:s,...o,children:t})});uo.displayName=`Shimmer`;function fo(e){return e===`__CODEXLY_PENDING_COMMAND__`?d.t(`timeline.commandPending`,{ns:`conversation`}):e}function po(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:fo(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:fo(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 mo({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,Q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2 text-muted-foreground`,role:`status`,children:[e?.type===`command`?(0,Q.jsx)(sr,{"aria-hidden":`true`,className:`size-3.5 shrink-0`}):null,(0,Q.jsx)(uo,{"aria-label":n,as:`span`,className:`min-w-0 truncate text-body-small`,children:t})]})}function ho(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 go({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,Q.jsxs)(Ka,{collapsible:!0,defaultOpen:e.status!==`approved`,status:n,children:[(0,Q.jsx)(Ja,{title:d.t(`timeline.approvalReview.title`,{ns:`conversation`,status:t})}),(0,Q.jsxs)(Ya,{children:[(0,Q.jsx)(Xa,{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,Q.jsx)(Xa,{children:d.t(`timeline.approvalReview.risk`,{level:d.t(`timeline.approvalReview.riskLevel.${e.riskLevel}`,{ns:`conversation`}),ns:`conversation`})}),e.userAuthorization===void 0?null:(0,Q.jsx)(Xa,{children:d.t(`timeline.approvalReview.authorization`,{level:d.t(`timeline.approvalReview.authorizationLevel.${e.userAuthorization}`,{ns:`conversation`}),ns:`conversation`})}),e.rationale===void 0?null:(0,Q.jsx)(Xa,{children:d.t(`timeline.approvalReview.rationale`,{ns:`conversation`,rationale:e.rationale})})]})]})}function _o({isLastTurnItem:e,role:t,turnStatus:n}){let r=t===`assistant`&&e&&n===`running`;return{isAnimating:r,mode:r?`streaming`:`static`}}var vo=(0,Z.createContext)(`approval-requested`);function yo(e){for(let t of Z.Children.toArray(e))if((0,Z.isValidElement)(t)&&t.type===xo)return typeof t.props.children==`string`?t.props.children:d.t(`agentComponents.approval`,{ns:`conversation`});return d.t(`agentComponents.approval`,{ns:`conversation`})}function bo({approval:e,children:t,className:n=``,state:r,...i}){let{t:a}=u(`conversation`),o=yo(t);return(0,Q.jsx)(vo.Provider,{value:r,children:(0,Q.jsx)(`section`,{"aria-label":a(`agentComponents.approvalRequest`,{title:o}),className:`w-full rounded-surface bg-control px-3.5 py-3 shadow-sm ${n}`,"data-approval-id":e.id,"data-state":r,...i,children:t})})}function xo({children:e,className:t=``,...n}){return(0,Q.jsxs)(`h3`,{className:`flex items-center gap-2 text-label font-semibold text-foreground ${t}`,...n,children:[(0,Q.jsx)(or,{className:`size-4 text-muted-foreground`,"aria-hidden":`true`}),e]})}function So({className:e=``,...t}){return(0,Q.jsx)(`div`,{className:`mt-2 break-words rounded-control bg-raised px-3 py-2 text-body-small leading-5 text-foreground shadow-sm ${e}`,...t})}function Co({children:e,className:t=``,...n}){let r=(0,Z.useContext)(vo),{t:i}=u(`conversation`);return r!==`approval-rejected`&&r!==`approval-expired`?null:(0,Q.jsxs)(`div`,{className:`mt-2 flex items-center gap-1.5 text-label text-muted-foreground ${t}`,...n,children:[(0,Q.jsx)(zn,{className:`size-3.5`,"aria-hidden":`true`}),e??i(`agentComponents.approvalRejected`)]})}function wo({className:e=``,...t}){return(0,Q.jsx)(`div`,{className:`mt-3 flex flex-wrap justify-end gap-2 ${e}`,...t})}function To({className:e=``,ref:t,tone:n=`neutral`,type:r=`button`,...i}){return(0,Q.jsx)(l,{className:e,ref:t,size:`compact`,type:r,variant:n===`danger`?`destructive`:n===`primary`?`default`:`secondary`,...i})}var Eo=[`network`,`file_system`];function Do(e,t){let n=new Set(e);return{grantedPermissions:Eo.filter(e=>n.has(e)),scope:t}}function Oo(e,t){return e.status===`expired`?`approval-expired`:e.status===`resolved`?`approval-resolved`:t?`approval-submitting`:`approval-requested`}function ko(e){return Eo.filter(t=>t===`network`?e.permissions.network!==null:e.permissions.fileSystem!==null)}function Ao({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 jo({permissions:e}){let{t}=u(`workbench`);return(0,Q.jsxs)(`div`,{className:`mt-2 space-y-1 pl-6 font-mono text-meta text-muted-foreground`,children:[[...(e.read??[]).map(e=>({access:`read`,path:e})),...(e.write??[]).map(e=>({access:`write`,path:e}))].map((e,n)=>(0,Q.jsxs)(`div`,{className:`break-all`,children:[(0,Q.jsx)(`span`,{className:`font-sans font-medium text-foreground`,children:t(`pending.permissionAccess.${e.access}`)}),` `,e.path]},`${e.access}:${e.path}:${String(n)}`)),e.entries.map((e,n)=>(0,Q.jsxs)(`div`,{className:`break-all`,children:[(0,Q.jsx)(`span`,{className:`font-sans font-medium text-foreground`,children:t(`pending.permissionAccess.${e.access}`)}),` `,(0,Q.jsx)(Ao,{path:e.path})]},`${e.access}:${String(n)}`)),e.globScanMaxDepth===null?null:(0,Q.jsx)(`div`,{className:`font-sans`,children:t(`pending.permissionGlobDepth`,{depth:e.globScanMaxDepth})})]})}function Mo({interactive:e,onResolve:t,request:n}){let{t:r}=u(`workbench`),i=ko(n),[a,o]=(0,Z.useState)(()=>new Set(i)),[s,c]=(0,Z.useState)(!1),[l,d]=(0,Z.useState)(),f=(0,Z.useRef)(null),p=(0,Z.useRef)(H()),m=e&&n.status===`pending`&&!s,h=m&&a.size>0;(0,Z.useEffect)(()=>{h&&f.current?.focus()},[h,n.requestId]);let g=e=>p.current.run(async()=>{if(!m||e!==`deny`&&a.size===0)return;let r=Do(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),K()}catch(e){W(e),c(!1)}}),_=(e,t)=>{o(n=>{let r=new Set(n);return t?r.add(e):r.delete(e),r})};return(0,Q.jsxs)(bo,{approval:{id:n.requestId},state:Oo(n,s),children:[(0,Q.jsx)(xo,{children:r(`pending.permissionApproval`)}),(0,Q.jsxs)(So,{children:[(0,Q.jsxs)(`div`,{className:`space-y-3`,children:[n.permissions.network===null?null:(0,Q.jsx)(`div`,{children:(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(q,{"aria-label":r(`pending.networkPermission`),checked:a.has(`network`),disabled:!m,id:`${n.requestId}-network`,onCheckedChange:e=>{_(`network`,e===!0)}}),(0,Q.jsx)(`label`,{className:`font-medium`,htmlFor:`${n.requestId}-network`,children:r(`pending.networkPermission`)})]})}),n.permissions.fileSystem===null?null:(0,Q.jsxs)(`div`,{children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(q,{"aria-label":r(`pending.fileSystemPermission`),checked:a.has(`file_system`),disabled:!m,id:`${n.requestId}-file-system`,onCheckedChange:e=>{_(`file_system`,e===!0)}}),(0,Q.jsx)(`label`,{className:`font-medium`,htmlFor:`${n.requestId}-file-system`,children:r(`pending.fileSystemPermission`)})]}),(0,Q.jsx)(jo,{permissions:n.permissions.fileSystem})]})]}),n.reason===null?null:(0,Q.jsx)(`p`,{className:`mt-2 text-label text-muted-foreground`,children:n.reason})]}),n.status===`expired`?(0,Q.jsx)(Co,{children:r(`pending.expired`)}):(0,Q.jsxs)(Q.Fragment,{children:[e?null:(0,Q.jsx)(`p`,{className:`mt-2 text-label text-muted-foreground`,children:r(`pending.previousPending`)}),(0,Q.jsxs)(wo,{children:[(0,Q.jsx)(To,{disabled:!m,onClick:()=>void g(`deny`),tone:`danger`,children:r(`pending.deny`)}),(0,Q.jsx)(To,{disabled:!h,onClick:()=>void g(`session`),children:r(`pending.allowSession`)}),(0,Q.jsx)(To,{disabled:!h,onClick:()=>void g(`turn`),ref:f,tone:`primary`,children:r(`pending.allowTurn`)})]})]})]})}function No(e,t,n=x){let r=JSON.stringify(t);return e?.fingerprint===r?e:{fingerprint:r,key:n()}}function Po(e,t){return e.status===`expired`?`approval-expired`:e.status===`resolved`?`approval-resolved`:t?`approval-submitting`:`approval-requested`}function Fo({interactive:e,onResolve:t,request:n}){let[r,i]=(0,Z.useState)(!1),[a,o]=(0,Z.useState)(),s=(0,Z.useRef)(H()),c=e&&n.status===`pending`&&!r;return{canSubmit:c,resolve:e=>s.current.run(async()=>{if(!c)return;let r=No(a,e);o(r),i(!0);try{await t(n,e,r.key),K()}catch(e){W(e),i(!1)}}),submitting:r}}function Io(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 Lo({field:e}){return e.description===null?null:(0,Q.jsx)(`p`,{className:`mt-0.5 text-meta text-muted-foreground`,children:e.description})}function Ro(e){return e.format===`email`?`email`:e.format===`uri`?`url`:e.format===`date`?`date`:`text`}function zo({content:e,controlPrefix:t,disabled:n,field:r,setContent:i}){let a=`mcp-field-${t}-${r.id}`,o=e=>{i(t=>e===void 0?Object.fromEntries(Object.entries(t).filter(([e])=>e!==r.id)):{...t,[r.id]:e})};if(r.type===`boolean`)return(0,Q.jsxs)(`label`,{className:`flex min-h-11 cursor-pointer items-center gap-2.5 rounded-control bg-raised px-3 py-2 text-label text-foreground`,htmlFor:a,children:[(0,Q.jsx)(`input`,{checked:e[r.id]===!0,disabled:n,id:a,onChange:e=>{o(e.target.checked)},type:`checkbox`}),(0,Q.jsxs)(`span`,{children:[(0,Q.jsx)(`span`,{className:`block font-medium`,children:r.title}),(0,Q.jsx)(Lo,{field:r})]})]});if(r.type===`select`){let t=r.options.findIndex(t=>t.value===e[r.id]);return(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`label`,{className:`text-label font-medium text-foreground`,htmlFor:a,children:r.title}),(0,Q.jsx)(Lo,{field:r}),(0,Q.jsxs)(`select`,{className:`mt-2 h-11 w-full rounded-control border border-separator-strong bg-raised px-2.5 text-label text-foreground outline-none focus-visible:border-brand focus-visible:shadow-focus workbench:h-8`,disabled:n,id:a,onChange:e=>{let t=r.options[Number(e.target.value)];o(t?.value)},required:r.required,value:t<0?``:String(t),children:[(0,Q.jsx)(`option`,{disabled:r.required,value:``,children:`--`}),r.options.map((e,t)=>(0,Q.jsx)(`option`,{value:t,children:e.label},e.value))]})]})}if(r.type===`multi_select`){let t=e[r.id],i=Array.isArray(t)?t:[];return(0,Q.jsxs)(`fieldset`,{children:[(0,Q.jsx)(`legend`,{className:`text-label font-medium text-foreground`,children:r.title}),(0,Q.jsx)(Lo,{field:r}),(0,Q.jsx)(`div`,{className:`mt-2 grid grid-cols-1 gap-2 @sm:grid-cols-2`,children:r.options.map(e=>(0,Q.jsxs)(`label`,{className:`flex min-h-11 cursor-pointer items-center gap-2 rounded-control bg-raised px-3 py-2 text-label text-foreground`,children:[(0,Q.jsx)(`input`,{checked:i.includes(e.value),disabled:n,onChange:t=>{o(t.target.checked?[...i,e.value]:i.filter(t=>t!==e.value))},type:`checkbox`}),e.label]},e.value))})]})}let s=e[r.id];return(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`label`,{className:`text-label font-medium text-foreground`,htmlFor:a,children:r.title}),(0,Q.jsx)(Lo,{field:r}),(0,Q.jsx)(Fe,{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`?Ro(r):`number`,value:typeof s==`number`||typeof s==`string`?s:``,variant:`compact`})]})}function Bo({interactive:e,onResolve:t,request:n}){let{t:r}=u(`workbench`),[i,a]=(0,Z.useState)(()=>Io(n.fields)),{canSubmit:o,resolve:s,submitting:c}=Fo({interactive:e,onResolve:t,request:n});return(0,Q.jsxs)(bo,{approval:{id:n.requestId},className:`@container`,state:Po(n,c),children:[(0,Q.jsx)(xo,{children:r(`pending.mcpForm`,{server:n.serverName})}),(0,Q.jsx)(So,{children:n.message}),n.status===`expired`?(0,Q.jsx)(Co,{children:r(`pending.expired`)}):(0,Q.jsxs)(`form`,{className:`mt-3 space-y-3`,onSubmit:e=>{e.preventDefault(),s({action:`accept`,content:i})},children:[n.fields.map(t=>(0,Q.jsx)(zo,{content:i,controlPrefix:n.requestId,disabled:!e||c,field:t,setContent:a},t.id)),e?null:(0,Q.jsx)(`p`,{className:`text-label text-muted-foreground`,children:r(`pending.previousPending`)}),(0,Q.jsxs)(wo,{children:[(0,Q.jsx)(To,{disabled:!o,onClick:()=>void s({action:`cancel`,content:null}),type:`button`,children:r(`pending.cancel`)}),(0,Q.jsx)(To,{disabled:!o,onClick:()=>void s({action:`decline`,content:null}),tone:`danger`,type:`button`,children:r(`pending.deny`)}),(0,Q.jsx)(To,{disabled:!o,tone:`primary`,type:`submit`,children:r(`pending.submitAnswers`)})]})]})]})}function Vo({interactive:e,onResolve:t,request:n}){let{t:r}=u(`workbench`),{canSubmit:i,resolve:a,submitting:o}=Fo({interactive:e,onResolve:t,request:n});return(0,Q.jsxs)(bo,{approval:{id:n.requestId},state:Po(n,o),children:[(0,Q.jsx)(xo,{children:r(`pending.mcpRequest`,{server:n.serverName})}),(0,Q.jsxs)(So,{children:[(0,Q.jsx)(`p`,{children:n.message}),n.mode===`unsupported`?(0,Q.jsx)(`p`,{className:`mt-2 text-label text-muted-foreground`,children:r(`pending.unsupportedForm`)}):null]}),n.status===`expired`?(0,Q.jsx)(Co,{children:r(`pending.expired`)}):(0,Q.jsxs)(Q.Fragment,{children:[e?null:(0,Q.jsx)(`p`,{className:`mt-2 text-label text-muted-foreground`,children:r(`pending.previousPending`)}),(0,Q.jsxs)(wo,{children:[(0,Q.jsx)(To,{disabled:!i,onClick:()=>void a({action:`cancel`,content:null}),children:r(`pending.cancel`)}),(0,Q.jsx)(To,{disabled:!i,onClick:()=>void a({action:`decline`,content:null}),tone:`danger`,children:r(`pending.deny`)}),n.mode===`url`?(0,Q.jsx)(l,{asChild:!0,size:`compact`,children:(0,Q.jsxs)(`a`,{"aria-disabled":!i,href:n.url,onClick:e=>{if(!i){e.preventDefault();return}a({action:`accept`,content:{}})},rel:`noreferrer noopener`,target:`_blank`,children:[(0,Q.jsx)(Un,{"aria-hidden":`true`}),r(`pending.openUrl`)]})}):null]})]})]})}function Ho(e){return e.request.mode===`form`?(0,Q.jsx)(Bo,{...e,request:e.request}):(0,Q.jsx)(Vo,{...e})}function Uo(e,t){return e.status===`expired`?`approval-expired`:e.status===`resolved`?`approval-resolved`:t?`approval-submitting`:`approval-requested`}function Wo(e){switch(e){case`http`:return`HTTP`;case`https`:return`HTTPS`;case`socks5Tcp`:return`SOCKS5 TCP`;case`socks5Udp`:return`SOCKS5 UDP`}}function Go({interactive:e,onResolve:t,request:n}){let{t:r}=u(`workbench`),[i,a]=(0,Z.useState)(!1),[o,s]=(0,Z.useState)(),c=(0,Z.useRef)(null),l=(0,Z.useRef)(H()),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`):`${Wo(d.protocol)}\n${d.host}`,m=e&&n.status===`pending`&&!i,h=m&&n.availableDecisions.includes(`allow`);(0,Z.useEffect)(()=>{h&&c.current?.focus()},[h,n.requestId]);let g=e=>l.current.run(async()=>{if(!m)return;let r={decision:e},i=No(o,r);s(i),a(!0);try{await t(n,r,i.key),K()}catch(e){W(e),a(!1)}});return(0,Q.jsxs)(bo,{approval:{id:n.requestId},state:Uo(n,i),children:[(0,Q.jsx)(xo,{children:f}),(0,Q.jsxs)(So,{children:[(0,Q.jsx)(`pre`,{className:`whitespace-pre-wrap font-mono text-meta`,children:p}),n.type===`command_approval`&&n.additionalPermissions!=null?(0,Q.jsxs)(`div`,{className:`mt-3 space-y-2 border-t border-border pt-2`,children:[(0,Q.jsx)(`p`,{className:`text-label font-medium text-foreground`,children:r(`pending.additionalPermissions`)}),n.additionalPermissions.network===null?null:(0,Q.jsx)(`p`,{className:`text-label text-muted-foreground`,children:r(`pending.networkPermission`)}),n.additionalPermissions.fileSystem===null?null:(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`p`,{className:`text-label text-muted-foreground`,children:r(`pending.fileSystemPermission`)}),(0,Q.jsx)(jo,{permissions:n.additionalPermissions.fileSystem})]})]}):null,n.reason===null?null:(0,Q.jsx)(`p`,{className:`mt-2 text-label text-muted-foreground`,children:n.reason})]}),n.status===`expired`?(0,Q.jsx)(Co,{children:r(`pending.expired`)}):(0,Q.jsxs)(Q.Fragment,{children:[e?null:(0,Q.jsx)(`p`,{className:`mt-2 text-label text-muted-foreground`,children:r(`pending.previousPending`)}),(0,Q.jsxs)(wo,{children:[n.availableDecisions.includes(`deny`)?(0,Q.jsx)(To,{disabled:!m,onClick:()=>void g(`deny`),tone:`danger`,children:r(`pending.deny`)}):null,n.availableDecisions.includes(`allow_for_session`)?(0,Q.jsx)(To,{disabled:!m,onClick:()=>void g(`allow_for_session`),children:r(`pending.allowSession`)}):null,n.availableDecisions.includes(`allow`)?(0,Q.jsx)(To,{disabled:!m,onClick:()=>void g(`allow`),ref:c,tone:`primary`,children:r(`pending.allow`)}):null]})]})]})}function Ko({interactive:e,onResolve:t,request:n}){let{t:r}=u(`workbench`),[i,a]=(0,Z.useState)({}),[o,s]=(0,Z.useState)(!1),[c,d]=(0,Z.useState)(),f=(0,Z.useRef)(H()),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=No(c,e);d(r);try{await t(n,e,r.key),K()}catch(e){W(e),s(!1)}});return n.status===`pending`?(0,Q.jsxs)(`form`,{className:`w-full rounded-surface bg-control px-3.5 py-3 shadow-sm`,onSubmit:e=>{e.preventDefault(),g()},children:[(0,Q.jsx)(`h3`,{className:`text-label font-semibold text-foreground`,children:r(`pending.inputRequired`)}),(0,Q.jsx)(`div`,{className:`mt-3 space-y-4`,children:n.questions.map(e=>(0,Q.jsxs)(`fieldset`,{children:[(0,Q.jsx)(`legend`,{className:`text-body-small font-medium text-foreground`,children:e.prompt}),(0,Q.jsx)(`p`,{className:`mt-0.5 text-meta text-muted-foreground`,children:e.header}),e.type===`choice`?(0,Q.jsxs)(`div`,{className:`mt-2 space-y-1.5`,children:[e.options.map((t,n)=>(0,Q.jsxs)(`label`,{"aria-label":t.label,className:`flex cursor-pointer items-start gap-2 rounded-control bg-raised px-2.5 py-2 text-label`,htmlFor:`${e.id}-option-${String(n)}`,children:[(0,Q.jsx)(`input`,{className:`mt-0.5 size-4 shrink-0 accent-primary`,checked:i[e.id]===t.label,disabled:h,id:`${e.id}-option-${String(n)}`,name:e.id,onChange:()=>{a(n=>({...n,[e.id]:t.label}))},type:`radio`,value:t.label}),(0,Q.jsxs)(`span`,{children:[(0,Q.jsx)(`span`,{className:`block font-medium text-foreground`,children:t.label}),(0,Q.jsx)(`span`,{className:`block text-muted-foreground`,children:t.description})]})]},t.label)),e.isOther?(0,Q.jsx)(Fe,{"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,Q.jsx)(`div`,{className:`mt-2 grid grid-cols-2 rounded-control bg-raised p-0.5`,children:e.options.map(t=>(0,Q.jsx)(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,Q.jsx)(Fe,{"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,Q.jsx)(`p`,{className:`mt-3 text-label text-muted-foreground`,children:r(`pending.previousPending`)}),(0,Q.jsx)(`div`,{className:`mt-3 flex justify-end`,children:(0,Q.jsx)(l,{disabled:!m,size:`compact`,type:`submit`,children:r(`pending.submitAnswers`)})})]}):(0,Q.jsx)(`section`,{className:`w-full rounded-surface bg-control px-3.5 py-3 text-label text-muted-foreground`,children:n.status===`expired`?r(`pending.expired`):r(`pending.processed`)})}function qo(e){return e.request.status===`resolved`?null:e.request.type===`user_input`?(0,Q.jsx)(Ko,{interactive:e.interactive,onResolve:e.onResolve,request:e.request}):e.request.type===`permissions_approval`?(0,Q.jsx)(Mo,{interactive:e.interactive,onResolve:e.onResolve,request:e.request}):e.request.type===`mcp_elicitation`?(0,Q.jsx)(Ho,{interactive:e.interactive,onResolve:e.onResolve,request:e.request}):(0,Q.jsx)(Go,{interactive:e.interactive,onResolve:e.onResolve,request:e.request})}function Jo({change:e,onOpen:t}){let n=Tn(e.path),r=d.t(`timeline.fileOperation.${e.kind}`,{ns:`conversation`}),{additions:i,removals:a}=En(e);return(0,Q.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,Q.jsx)(He,{className:`size-3.5 shrink-0 text-muted-foreground`,"aria-hidden":`true`}),(0,Q.jsx)(`span`,{className:`shrink-0 text-muted-foreground`,children:r}),(0,Q.jsx)(`span`,{className:`min-w-0 truncate font-medium`,children:n}),(0,Q.jsxs)(`span`,{className:`ml-auto shrink-0 text-diff-added`,children:[`+`,i]}),(0,Q.jsxs)(`span`,{className:`shrink-0 text-diff-removed`,children:[`-`,a]})]})}function Yo({changes:e,onOpenFileDiff:t,onReviewFileChanges:n}){let[r,i]=(0,Z.useState)(!1),a=wn(e),o=r?a.changes:a.changes.slice(0,3),s=a.changes.length-o.length;return(0,Q.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,Q.jsxs)(`header`,{className:`flex min-h-16 items-center gap-3 px-3 py-2.5 shadow-toolbar`,children:[(0,Q.jsx)(`span`,{className:`grid size-9 shrink-0 place-items-center rounded-control bg-control text-muted-foreground`,children:(0,Q.jsx)(Re,{className:`size-4`,"aria-hidden":`true`})}),(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Q.jsx)(`h3`,{className:`text-body-small font-semibold`,children:d.t(`timeline.editedFiles`,{count:a.changes.length,ns:`conversation`})}),(0,Q.jsxs)(`p`,{className:`mt-0.5 text-label text-muted-foreground`,children:[(0,Q.jsxs)(`span`,{className:`text-diff-added`,children:[`+`,a.additions]}),` `,(0,Q.jsxs)(`span`,{className:`text-diff-removed`,children:[`-`,a.removals]})]})]}),(0,Q.jsx)(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,Q.jsxs)(`div`,{className:`space-y-1 p-2`,children:[o.map(e=>(0,Q.jsx)(Jo,{change:e,onOpen:t},e.path)),s>0?(0,Q.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,Q.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 Xo(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 Zo({error:e,isLoading:t,onLoad:n}){return(0,Q.jsxs)(`div`,{className:`mx-auto flex w-full max-w-content flex-col items-center gap-2 px-4 pt-5 sm:px-6 sm:pt-6`,children:[(0,Q.jsxs)(l,{disabled:t,onClick:()=>void n(),size:`compact`,type:`button`,variant:`ghost`,children:[t?(0,Q.jsx)(m,{"aria-hidden":`true`,className:`animate-spin`}):(0,Q.jsx)(Xn,{"aria-hidden":`true`}),d.t(t?`timeline.loadingOlder`:`timeline.loadOlder`,{ns:`conversation`})]}),e===null?null:(0,Q.jsx)(`p`,{className:`text-label text-danger`,role:`alert`,children:d.t(`timeline.loadOlderError`,{ns:`conversation`})})]})}var Qo=44,$o={height:360,width:44},es=2;function ts(e){return e.type===`review`?ho(e):e.type!==`message`||e.role!==`user`?null:[...(e.skills??[]).map(e=>`$${e.name}`),e.text,...(e.attachments??[]).map(e=>e.name)].filter(e=>e.length>0).join(`
4
- `)}function ns(e){let t=[];return e.turnIds.forEach((n,r)=>{for(let i of e.itemKeysByTurnId[n]??[]){let n=e.itemStoresByKey.get(i)?.peek();if(n===void 0)continue;let a=ts(n);a!==null&&t.push({anchorId:i,preview:a,turnIndex:r})}}),t}function rs(e,t){let[n,r]=(0,Z.useState)(e[0]?.anchorId??null),i=(0,Z.useRef)(0);return(0,Z.useEffect)(()=>{let n=t.current;if(n===null)return;let a=new Map(e.map((e,t)=>[e.anchorId,t])),o=()=>{let t=n.getBoundingClientRect().top+Math.min(n.clientHeight*.25,160),i=0;for(let e of n.querySelectorAll(`[data-conversation-anchor]`)){let n=e.dataset.conversationAnchor,r=n===void 0?void 0:a.get(n);if(r!==void 0){if(e.getBoundingClientRect().top>t)break;i=r}}r(e[i]?.anchorId??null)},s=()=>{cancelAnimationFrame(i.current),i.current=requestAnimationFrame(o)};s(),n.addEventListener(`scroll`,s,{passive:!0});let c=new ResizeObserver(s);return c.observe(n),()=>{n.removeEventListener(`scroll`,s),c.disconnect(),cancelAnimationFrame(i.current)}},[e,t]),n}function is({items:e,onNavigate:t,scrollContainerRef:n,scrollbarWidth:r}){let{t:i}=u(`conversation`),a=(0,Z.useRef)(null),o=(0,Z.useCallback)(()=>a.current,[]),s=Oa({count:e.length,estimateSize:()=>Qo,getItemKey:t=>e[t]?.anchorId??t,getScrollElement:o,initialRect:$o,overscan:es}),c=rs(e,n);if(e.length<=1)return null;let d=(0,Q.jsx)(`nav`,{"aria-label":i(`timeline.quickNavigation`),className:`task-timeline-navigation`,"data-timeline-navigation":``,ref:a,style:{"--conversation-scrollbar-width":`${String(r)}px`},children:(0,Q.jsx)(`div`,{className:`relative w-full`,style:{height:s.getTotalSize()},children:s.getVirtualItems().map(n=>{let r=e[n.index];return r===void 0?null:(0,Q.jsx)(`div`,{className:`absolute left-0 top-0 flex h-2 w-full`,"data-index":n.index,ref:s.measureElement,style:{transform:`translateY(${String(n.start)}px)`},children:(0,Q.jsxs)(N,{delayDuration:100,children:[(0,Q.jsx)(P,{asChild:!0,children:(0,Q.jsx)(l,{"aria-label":i(`timeline.jumpToMessage`,{index:n.index+1}),"aria-current":r.anchorId===c?`location`:void 0,className:`h-2 w-full justify-end`,"data-timeline-navigation-item":r.anchorId,onClick:()=>{t(r)},size:`embedded`,type:`button`,variant:`embedded`,children:(0,Q.jsx)(`span`,{"aria-hidden":`true`,className:`task-timeline-navigation-marker`})})}),(0,Q.jsx)(I,{className:`border border-separator-strong bg-raised px-3 py-2 text-body leading-6 text-foreground shadow-floating`,side:`left`,children:(0,Q.jsx)(`span`,{className:`line-clamp-6 whitespace-pre-wrap`,children:r.preview})})]})},n.key)})})});return typeof document>`u`?d:(0,ia.createPortal)(d,document.querySelector(`.workbench-shell`)??document.body)}function as(e){return e?.type===`command`||e?.type===`tool`}function os(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(as(t(a))){r.push(a);continue}i(),n.push({itemKey:a,type:`item`})}return i(),n}function ss(e){let t=0,n=0,r=!1,i=0;for(let a of e)as(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 cs(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 ls({collapseAfterItemKey:e,children:t,itemKeys:n,store:r}){let[i,a]=(0,Z.useState)(!1),o=(0,Z.useMemo)(()=>{let e=r.getState().itemStoresByKey;return n.flatMap(t=>e.get(t)??[])},[n,r]),s=(0,Z.useMemo)(()=>e===void 0?void 0:r.getState().itemStoresByKey.get(e),[e,r]),c=(0,Z.useMemo)(()=>s===void 0?o:[...o,s],[s,o]),l=(0,Z.useCallback)(e=>{let t=c.map(t=>t.subscribe(e));return()=>{for(let e of t)e()}},[c]),u=(0,Z.useCallback)(()=>c.map(e=>e.getState().revision).join(`,`),[c]);(0,Z.useSyncExternalStore)(l,u,u);let f=ss(o.map(e=>e.peek())),p=s?.peek();if(!(p?.type===`message`&&p.role===`assistant`&&p.text.trim().length>0))return(0,Q.jsx)(Z.Fragment,{children:t});if(f.isActive)return(0,Q.jsx)(`div`,{className:`space-y-4`,"data-operation-group-active":``,children:t});let m=cs(f);return(0,Q.jsxs)(`details`,{className:`group/operation w-full`,"data-operation-group":``,onToggle:e=>{a(e.currentTarget.open)},open:i,children:[(0,Q.jsxs)(`summary`,{"aria-expanded":i,"aria-label":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,Q.jsx)($n,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-muted-foreground`}),(0,Q.jsx)(`span`,{className:`min-w-0 flex-1 font-medium`,children:m}),f.failedCount===0?(0,Q.jsx)(Fn,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-muted-foreground`}):(0,Q.jsx)(zn,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-danger`}),(0,Q.jsx)(Ce,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-muted-foreground transition-transform group-open/operation:rotate-90`})]}),i?(0,Q.jsx)(`div`,{className:`mt-2 space-y-4 border-l border-separator pl-3`,children:t}):null]})}var us=(0,Z.createContext)(void 0);function ds(){let e=(0,Z.useContext)(us);if(e===void 0)throw Error(`Attachment components must be used inside Attachment`);return e}function fs({className:e=``,...t}){return(0,Q.jsx)(`div`,{className:`flex max-w-full flex-wrap gap-1.5 px-1 pb-1 ${e}`,"data-attachments":`true`,...t})}function ps({className:e=``,data:t,onRemove:n,...r}){return(0,Q.jsx)(us.Provider,{value:{data:t,...n===void 0?{}:{onRemove:n}},children:(0,Q.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 ms({className:e=``,...t}){let{data:n}=ds();return(0,Q.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,Q.jsx)(`img`,{alt:``,className:`size-full object-cover`,height:28,src:n.previewUrl,width:28}):(0,Q.jsx)(Wn,{className:`size-4 text-muted-foreground`,"aria-hidden":`true`})})}function hs({className:e=``,...t}){let{data:n}=ds(),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,Q.jsxs)(`div`,{className:`min-w-0 flex-1 ${e}`,...t,children:[(0,Q.jsx)(`div`,{className:`truncate font-medium`,children:n.name}),(0,Q.jsx)(`div`,{className:`text-caption text-muted-foreground`,children:r})]})}function gs({children:e,className:t=``,onClick:n,type:r=`button`,...i}){let{data:a,onRemove:o}=ds(),{t:s}=u(`conversation`);return(0,Q.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,Q.jsx)(Dt,{className:`size-3.5`,"aria-hidden":`true`})})}var _s=(0,Z.createContext)(null);function vs({children:e,className:t=``,defaultOpen:n,isStreaming:r=!1,open:i,...a}){let o=(0,Z.useMemo)(()=>({isStreaming:r}),[r]);return(0,Q.jsx)(_s.Provider,{value:o,children:(0,Q.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 ys({className:e=``,...t}){return(0,Q.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 bs({children:e,className:t=``,...n}){return(0,Q.jsx)(`h3`,{className:`text-body-small font-semibold ${(0,Z.useContext)(_s)?.isStreaming===!0?`animate-pulse`:``} ${t}`,...n,children:e})}function xs({children:e,className:t=``,...n}){return(0,Q.jsx)(`p`,{className:`mt-1 text-body-small leading-5 text-muted-foreground ${(0,Z.useContext)(_s)?.isStreaming===!0?`animate-pulse`:``} ${t}`,...n,children:e})}function Ss({children:e,className:t=``,...n}){return(0,Q.jsx)(`span`,{"aria-hidden":`true`,className:`ml-auto inline-flex size-7 shrink-0 items-center justify-center text-muted-foreground ${t}`,...n,children:e??(0,Q.jsx)(Pn,{className:`size-4`})})}function Cs({className:e=``,...t}){return(0,Q.jsx)(`div`,{className:s(`overflow-x-auto border-t border-separator px-4 py-4`,e),...t})}function ws({className:e=``,...t}){return(0,Q.jsx)(`div`,{className:s(`flex items-center px-4 pb-4`,e),...t})}function Ts({className:e=``,...t}){return(0,Q.jsx)(`div`,{className:s(`flex items-center`,e),...t})}var Es=(0,Z.createContext)(null);function Ds({children:e,className:t,defaultOpen:n=!1,isStreaming:r=!1,...i}){let a=(0,Z.useMemo)(()=>({isStreaming:r}),[r]);return(0,Q.jsx)(Es.Provider,{value:a,children:(0,Q.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 Os({className:e,title:t,...n}){let r=(0,Z.useContext)(Es);if(r===null)throw Error(`ReasoningTrigger must be used within Reasoning`);return(0,Q.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,Q.jsx)(m,{"aria-hidden":`true`,className:`size-3.5 shrink-0 animate-spin`}):(0,Q.jsx)(Mn,{"aria-hidden":`true`,className:`size-3.5 shrink-0`}),(0,Q.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-medium`,children:t}),(0,Q.jsx)(Ce,{"aria-hidden":`true`,className:`size-3.5 shrink-0 transition-transform group-open/reasoning:rotate-90`})]})}function ks({className:e,...t}){return(0,Q.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 As=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 js(e){return typeof e==`string`?e:e.materialize()}function Ms(){let e=new As.default,t=[],n=``,r=()=>{e=new As.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=Ns(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=Ps(e),{complete:s,pending:c}=Is(`${n}${r.text}`);n=c;let u=e.ansiToJson(s,{remove_empty:!0}),d=u[0];d!==void 0&&!s.startsWith(`\x1B[`)&&Fs(d,o),t.push({entries:u,id:r.id,leadingPendingSequence:a,leadingState:o,text:r.text})}return t.flatMap(e=>e.entries)}}}function Ns(e){let t=new As.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 Ps(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 Fs(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 Is(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 Ls=(0,Z.createContext)(null);function Rs(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 zs({output:e}){let t=(0,Z.useRef)(Ms());return(0,Q.jsx)(`span`,{className:`block whitespace-pre-wrap break-words`,children:(0,Z.useMemo)(()=>typeof e==`string`?As.default.ansiToJson(e,{remove_empty:!0}):t.current.parse(e.chunks,e.startIndex),[e]).map((e,t)=>{let n=Rs(e);return Object.keys(n).length===0?e.content:(0,Q.jsx)(`span`,{style:n,children:e.content},`${t.toString()}:${e.content.length.toString()}`)})})}function Bs(){let e=(0,Z.useContext)(Ls);if(e===null)throw Error(`Terminal components must be rendered inside Terminal`);return e}function Vs({autoScroll:e=!0,children:t,className:n=``,isStreaming:r=!1,output:i,...a}){let o=(0,Z.useMemo)(()=>({autoScroll:e,isStreaming:r,output:i}),[e,r,i]);return(0,Q.jsx)(Ls.Provider,{value:o,children:(0,Q.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 Hs({className:e=``,...t}){return(0,Q.jsx)(`div`,{className:`flex min-h-8 items-center border-b border-separator px-2.5 ${e}`,...t})}function Us({className:e=``,...t}){return(0,Q.jsx)(`div`,{className:`text-meta font-medium text-muted-foreground ${e}`,...t})}function Ws({className:e=``,...t}){return(0,Q.jsx)(`div`,{className:`ml-auto flex items-center ${e}`,...t})}function Gs({className:e=``,onClick:t,onCopy:n,onError:r,timeout:i=2e3,...a}){let{output:o}=Bs(),{t:s}=u(`conversation`),[c,d]=(0,Z.useState)(!1),f=(0,Z.useRef)(null);(0,Z.useEffect)(()=>()=>{f.current!==null&&clearTimeout(f.current)},[]);let p=async()=>{try{await navigator.clipboard.writeText(js(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,Q.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,Q.jsx)(G,{className:`size-3.5`,"aria-hidden":`true`}):(0,Q.jsx)(Hn,{className:`size-3.5`,"aria-hidden":`true`})})}function Ks({children:e,className:t=``,...n}){let{autoScroll:r,isStreaming:i,output:a}=Bs(),{t:o}=u(`conversation`),s=(0,Z.useRef)(null);return(0,Z.useEffect)(()=>{if(!r)return;let e=s.current;e!==null&&(e.scrollTop=e.scrollHeight)},[r,a]),(0,Q.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,Q.jsx)(zs,{output:a}),i?(0,Q.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 qs=24*1024*1024,Js=512*1024;function Ys(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 Xs(e,t){return`${e}:${String(t.length)}:${Ys(t)}`}var Zs=class{maxSourceBytes;#e;constructor(e=qs,t=128,n=Js){this.maxSourceBytes=n,this.#e=new Jt({getRetainedBytes:(e,t)=>on(e)+un(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(Xs(e,t));return n?.source===t?n.tokenized:void 0}set(e,t,n){return on(t)>this.maxSourceBytes?!1:this.#e.set(Xs(e,t),{source:t,tokenized:n})}},Qs=(0,Z.createContext)(null),$s=new Zs;function ec(){let e=(0,Z.useContext)(Qs);if(e===null)throw Error(`CodeBlock components must be rendered inside CodeBlock`);return e}function tc(e){return{background:`transparent`,foreground:`inherit`,lines:e.split(`
5
- `).map(e=>e===``?[]:[{content:e,offset:0}])}}function nc(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 rc(e,t){if(t===`text`)return tc(e);let n=$s.get(t,e);if(n!==void 0)return n;let{highlightCode:r}=await rn(async()=>{let{highlightCode:e}=await import(`./code-highlighter-CHF26Qu6.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 $s.set(t,e,i),i}function ic({className:e=``,code:t,highlightedLine:n=null,language:r,showLineNumbers:i=!1,...a}){let o=(0,Z.useMemo)(()=>tc(t),[t]),[s,c]=(0,Z.useState)(o);return(0,Z.useEffect)(()=>{let e=!0;return c(o),rc(t,r).then(t=>{e&&c(t)}).catch(()=>{}),()=>{e=!1}},[t,r,o]),(0,Q.jsx)(`div`,{className:`relative min-h-0 overflow-auto ${e}`,...a,children:(0,Q.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,Q.jsx)(`code`,{children:s.lines.map((e,t)=>{let r=t+1,a=r===n;return(0,Q.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,Q.jsx)(`span`,{"aria-hidden":`true`,className:`select-none pr-4 text-right ${a?`text-brand`:`text-muted-foreground`}`,children:r}):null,(0,Q.jsx)(`span`,{className:`whitespace-pre`,children:e.length===0?` `:e.map((e,t)=>(0,Q.jsx)(`span`,{style:nc(e),children:e.content},`${String(r)}-${String(t)}`))})]},r)})})})})}function ac({children:e,className:t=``,code:n,highlightedLine:r=null,language:i,showLineNumbers:a=!1,style:o,...s}){let c=(0,Z.useMemo)(()=>({code:n}),[n]);return(0,Q.jsx)(Qs.Provider,{value:c,children:(0,Q.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,Q.jsx)(ic,{code:n,highlightedLine:r,language:i,showLineNumbers:a})]})})}function oc({className:e=``,...t}){return(0,Q.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 sc({className:e=``,...t}){return(0,Q.jsx)(`div`,{className:`flex min-w-0 items-center gap-2 ${e}`,...t})}function cc({className:e=``,...t}){return(0,Q.jsx)(`span`,{className:`truncate font-mono ${e}`,...t})}function lc({className:e=``,...t}){return(0,Q.jsx)(`div`,{className:`ml-auto flex items-center gap-1 ${e}`,...t})}function uc({children:e,className:t=``,onClick:n,onCopy:r,onError:i,timeout:a=2e3,...o}){let{code:s}=ec(),[c,d]=(0,Z.useState)(!1),{t:f}=u(`conversation`),p=(0,Z.useRef)(null);(0,Z.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,Q.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,Q.jsx)(G,{className:`size-3.5`,"aria-hidden":`true`}):(0,Q.jsx)(Hn,{className:`size-3.5`,"aria-hidden":`true`}))})}var dc=(0,Z.createContext)(null);function fc({className:e=``,defaultOpen:t=!1,onToggle:n,...r}){let[i,a]=(0,Z.useState)(t);return(0,Q.jsx)(dc.Provider,{value:i,children:(0,Q.jsx)(`details`,{className:`group/tool w-full rounded-surface bg-control px-3 py-1 ${e}`,onToggle:e=>{n?.(e),e.defaultPrevented||a(e.currentTarget.open)},open:i,...r})})}var pc={"approval-requested":{icon:(0,Q.jsx)(Bn,{className:`size-3.5 text-warning`,"aria-hidden":`true`}),labelKey:`agentComponents.status.waitingApproval`},"approval-responded":{icon:(0,Q.jsx)(Fn,{className:`size-3.5 text-brand`,"aria-hidden":`true`}),labelKey:`agentComponents.status.responded`},"input-available":{icon:(0,Q.jsx)(In,{className:`size-3.5 animate-spin`,"aria-hidden":`true`}),labelKey:`agentComponents.status.running`},"input-streaming":{icon:(0,Q.jsx)(zt,{className:`size-3.5`,"aria-hidden":`true`}),labelKey:`agentComponents.status.pending`},"output-available":{icon:(0,Q.jsx)(Fn,{className:`size-3.5`,"aria-hidden":`true`}),labelKey:`agentComponents.status.completed`},"output-denied":{icon:(0,Q.jsx)(zn,{className:`size-3.5 text-warning`,"aria-hidden":`true`}),labelKey:`agentComponents.status.denied`},"output-error":{icon:(0,Q.jsx)(zn,{className:`size-3.5 text-danger`,"aria-hidden":`true`}),labelKey:`agentComponents.status.error`}};function mc({className:e=``,state:t,title:n,...r}){let i=pc[t],{t:a}=u(`conversation`);return(0,Q.jsxs)(`summary`,{className:`flex min-h-9 cursor-pointer list-none items-center gap-2 text-label text-foreground [&::-webkit-details-marker]:hidden ${e}`,...r,children:[(0,Q.jsx)(dr,{className:`size-3.5 text-muted-foreground`,"aria-hidden":`true`}),(0,Q.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-medium`,children:n}),(0,Q.jsxs)(`span`,{className:`inline-flex items-center gap-1 ${t===`output-error`?`text-danger`:`text-muted-foreground`}`,children:[i.icon,a(i.labelKey)]}),(0,Q.jsx)(Ce,{className:`size-3.5 text-muted-foreground transition-transform group-open/tool:rotate-90`,"aria-hidden":`true`})]})}function hc({children:e}){return(0,Z.useContext)(dc)===!1?null:e}function gc({className:e=``,...t}){return(0,Q.jsx)(hc,{children:(0,Q.jsx)(`div`,{className:`mb-2 space-y-4 rounded-control bg-raised px-3 py-3 text-muted-foreground shadow-sm ${e}`,...t})})}function _c(e){try{return JSON.stringify(e,null,2)}catch{return String(e)}}function vc({className:e=``,input:t,...n}){let{t:r}=u(`conversation`);return(0,Q.jsxs)(`div`,{className:`space-y-2 overflow-hidden ${e}`,...n,children:[(0,Q.jsx)(`h4`,{className:`text-meta font-medium uppercase tracking-wide text-muted-foreground`,children:r(`agentComponents.toolInput`)}),(0,Q.jsx)(ac,{code:_c(t),language:`json`})]})}function yc({className:e=``,errorText:t,output:n,...r}){let{t:i}=u(`conversation`);if(n===void 0&&t===void 0)return null;let a=(0,Z.isValidElement)(n)?n:n===void 0?null:(0,Q.jsx)(ac,{code:_c(n),language:`json`});return(0,Q.jsxs)(`div`,{className:`space-y-2 ${e}`,...r,children:[(0,Q.jsx)(`h4`,{className:`text-meta font-medium uppercase tracking-wide ${t===void 0?`text-muted-foreground`:`text-danger`}`,children:i(t===void 0?`agentComponents.toolResult`:`agentComponents.toolError`)}),(0,Q.jsxs)(`div`,{className:`overflow-x-auto rounded-surface text-meta [&_table]:w-full ${t===void 0?`text-foreground`:`bg-danger/10 p-3 text-danger`}`,children:[t===void 0?null:(0,Q.jsx)(`div`,{className:`whitespace-pre-wrap`,children:t}),a]})]})}function bc({attachment:e,children:t,className:n,url:r}){return(0,Q.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,Q.jsxs)(ps,{className:`h-12 max-w-64 pe-3 shadow-control`,data:{...e,previewUrl:r},children:[(0,Q.jsx)(ms,{}),(0,Q.jsx)(hs,{})]})})}function xc({name:e,triggerChildren:t,triggerClassName:n,url:r}){let{t:i}=u(`conversation`),[a,o]=(0,Z.useState)(!1),s=(0,Z.useId)();return(0,Q.jsxs)(pt,{onOpenChange:o,open:a,children:[(0,Q.jsx)(bt,{asChild:!0,children:(0,Q.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,Q.jsx)(`img`,{alt:e,className:`size-full object-cover`,decoding:`async`,height:160,loading:`lazy`,src:r,width:160})})}),(0,Q.jsx)(en,{"aria-labelledby":s,className:`h-[min(92dvh,54rem)] max-w-[72rem] overflow-hidden p-0`,"data-message-image-preview":``,children:(0,Q.jsxs)(`section`,{className:`grid size-full grid-rows-[auto_minmax(0,1fr)] bg-raised`,children:[(0,Q.jsxs)(`header`,{className:`flex min-h-toolbar items-center gap-3 px-3 shadow-toolbar sm:px-4`,children:[(0,Q.jsx)(_t,{className:`min-w-0 flex-1 truncate text-body-small`,id:s,children:e}),(0,Q.jsxs)(N,{children:[(0,Q.jsx)(P,{asChild:!0,children:(0,Q.jsx)(l,{"aria-label":i(`timeline.closeImagePreview`),onClick:()=>{o(!1)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,Q.jsx)(Dt,{className:`size-3.5`,"aria-hidden":`true`})})}),(0,Q.jsx)(I,{children:i(`timeline.closeImagePreview`)})]})]}),(0,Q.jsx)(`div`,{className:`grid min-h-0 place-items-center overflow-hidden bg-content p-2`,children:(0,Q.jsx)(`img`,{alt:e,className:`block size-full object-contain`,decoding:`async`,src:r})})]})})]})}var Sc=Dn;function Cc({className:e=``,displayName:t,name:n,...r}){return(0,Q.jsxs)(`span`,{className:`${Sc} ${e}`,...r,children:[(0,Q.jsx)(An,{"aria-hidden":`true`,className:`size-4 shrink-0`}),(0,Q.jsx)(`span`,{className:`truncate`,children:t??`$${n}`})]})}var wc=`whitespace-pre-wrap!`;function Tc({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=_o({isLastTurnItem:t,role:n.role,turnStatus:l}),u=r.length>0||n.text.length>0?(0,Q.jsxs)(`div`,{children:[r.length===0?null:(0,Q.jsx)(`span`,{className:`inline`,"aria-label":d.t(`timeline.skillsUsed`,{ns:`conversation`}),children:r.map(e=>(0,Q.jsx)(Cc,{className:`relative top-1 me-1.5 bg-raised px-2 text-body leading-6`,"data-message-skill":e.name,"data-skill-token":``,name:e.name},e.name))}),n.text.length===0?null:(0,Q.jsx)(Ne,{className:s(r.length>0&&`inline [&>p:first-child]:inline`,n.role===`user`&&wc),...i,onOpenFileReference:a,promptFileReferences:n.role===`user`,children:n.text})]}):null,f=e.length===0?null:(0,Q.jsx)(fs,{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,Q.jsx)(xc,{name:e.name,url:t},e.id):(0,Q.jsx)(bc,{attachment:e,url:t},e.id)})});return n.role===`assistant`?(0,Q.jsx)(Ha,{className:`w-full`,children:(0,Q.jsxs)(`div`,{className:`flex min-w-0 w-full flex-col gap-2`,children:[f,u]})}):(0,Q.jsxs)(`div`,{className:`flex w-full flex-col items-end gap-2`,children:[f,u===null?null:(0,Q.jsx)(Ha,{"data-message-text":`true`,children:u})]})}case`review`:return(0,Q.jsx)(Ha,{children:(0,Q.jsx)(`p`,{children:ho(n)})});case`reasoning`:return n.summary.trim().length===0?null:(0,Q.jsxs)(Ds,{isStreaming:l===`running`,children:[(0,Q.jsx)(Os,{title:d.t(l===`running`?`timeline.reasoningStreaming`:`timeline.reasoning`,{ns:`conversation`})}),(0,Q.jsx)(ks,{children:(0,Q.jsx)(Ne,{mode:l===`running`?`streaming`:`static`,children:n.summary})})]});case`approval_review`:return(0,Q.jsx)(go,{item:n});case`command`:{let t=fo(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,Q.jsxs)(fc,{children:[(0,Q.jsx)(mc,{state:$a(n.status),title:t}),(0,Q.jsx)(hc,{children:(0,Q.jsxs)(`div`,{className:`mb-2 space-y-4`,children:[(0,Q.jsx)(vc,{input:{command:n.command,cwd:n.cwd}}),(0,Q.jsxs)(Vs,{isStreaming:a,output:r,children:[(0,Q.jsxs)(Hs,{children:[(0,Q.jsx)(Us,{children:d.t(`timeline.output`,{ns:`conversation`})}),(0,Q.jsx)(Ws,{children:(0,Q.jsx)(Gs,{})})]}),(0,Q.jsx)(Ks,{children:i?(0,Q.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,Q.jsx)(`div`,{className:`space-y-1`,children:n.changes.map(e=>(0,Q.jsx)(Jo,{change:e,onOpen:i},e.path))}):null:n.status!==`pending`&&n.status!==`running`?null:(0,Q.jsxs)(Ka,{collapsible:n.changes.length>0,status:`in_progress`,children:[(0,Q.jsx)(Ja,{title:d.t(`timeline.editingFiles`,{count:n.changes.length,ns:`conversation`})}),n.changes.length===0?null:(0,Q.jsx)(Ya,{children:n.changes.map(e=>(0,Q.jsx)(Xa,{className:`break-all font-mono`,children:e.path},e.path))})]});case`tool`:{let e=Fi(n);if(e!==null)return(0,Q.jsx)(no,{item:n,operation:e});let t=n.status===`failed`||n.status===`declined`||n.status===`interrupted`,r=t&&n.output!==void 0?to(n.output):void 0;return(0,Q.jsxs)(fc,{children:[(0,Q.jsx)(mc,{state:$a(n.status),title:n.progress===void 0?n.name:`${n.name} · ${n.progress}`}),(0,Q.jsxs)(gc,{children:[n.progress===void 0?null:(0,Q.jsx)(`p`,{className:`text-label leading-5 text-muted-foreground`,role:`status`,children:n.progress}),n.input===void 0?null:(0,Q.jsx)(vc,{input:n.input}),(0,Q.jsx)(yc,{errorText:r,output:t?void 0:n.output})]})]})}case`plan`:{let e=l===`running`&&t;return(0,Q.jsxs)(vs,{defaultOpen:!0,isStreaming:e,children:[(0,Q.jsxs)(ys,{children:[(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(Wn,{"aria-hidden":`true`,className:`size-4 shrink-0`}),(0,Q.jsx)(bs,{children:d.t(`timeline.plan`,{ns:`conversation`})})]}),(0,Q.jsx)(xs,{children:e?d.t(`timeline.planGenerating`,{ns:`conversation`}):d.t(`timeline.planReady`,{ns:`conversation`})})]}),(0,Q.jsx)(Ss,{})]}),(0,Q.jsx)(Cs,{children:(0,Q.jsx)(Ne,{mode:e?`streaming`:`static`,children:n.text})}),e||r===void 0?null:(0,Q.jsx)(ws,{className:`justify-end`,children:(0,Q.jsx)(Ts,{children:(0,Q.jsx)(Ec,{onBuildPlan:r})})})]})}case`activity`:return n.transient===!0&&n.status!==`pending`&&n.status!==`running`?null:(0,Q.jsxs)(Ka,{collapsible:n.detail!==void 0,status:eo(n.status??`completed`),children:[(0,Q.jsx)(Ja,{title:n.label}),n.detail===void 0?null:(0,Q.jsx)(Ya,{children:(0,Q.jsx)(Xa,{children:n.detail})})]});case`runtime_status`:{let e=eo(n.status);return n.kind===`safety_buffering`?(0,Q.jsxs)(Ka,{collapsible:n.fasterModel!==void 0,status:e,children:[(0,Q.jsx)(Ja,{title:d.t(`timeline.runtimeStatus.safetyBuffering`,{model:n.model,ns:`conversation`})}),n.fasterModel===void 0?null:(0,Q.jsx)(Ya,{children:(0,Q.jsx)(Xa,{children:d.t(`timeline.runtimeStatus.fasterModel`,{model:n.fasterModel,ns:`conversation`})})})]}):n.kind===`model_rerouted`?(0,Q.jsx)(Ka,{collapsible:!1,status:e,children:(0,Q.jsx)(Ja,{title:d.t(`timeline.runtimeStatus.modelRerouted`,{fromModel:n.fromModel,ns:`conversation`,toModel:n.toModel})})}):(0,Q.jsxs)(Ka,{collapsible:n.detail!==void 0||n.durationMs!==void 0,status:e,children:[(0,Q.jsx)(Ja,{title:d.t(`timeline.runtimeStatus.hook`,{eventName:n.eventName,ns:`conversation`})}),n.detail===void 0&&n.durationMs===void 0?null:(0,Q.jsxs)(Ya,{children:[n.detail===void 0?null:(0,Q.jsx)(Xa,{children:n.detail}),n.durationMs===void 0?null:(0,Q.jsx)(Xa,{children:d.t(`timeline.runtimeStatus.duration`,{duration:n.durationMs,ns:`conversation`})})]})]})}}}function Ec({onBuildPlan:e}){let[t,n]=(0,Z.useState)(!1);return(0,Q.jsxs)(l,{disabled:t,onClick:()=>{n(!0),e().then(e=>{e||n(!1)},()=>{n(!1)})},type:`button`,children:[t?(0,Q.jsx)(m,{"aria-hidden":`true`,className:`size-3.5 animate-spin`}):null,d.t(`timeline.buildPlan`,{ns:`conversation`})]})}function Dc(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 Oc(e){return Pt(e,e=>e.revision),e.read()}function kc(e){return[...(e.skills??[]).map(e=>`$${e.name}`),e.text].filter(e=>e.length>0).join(`
6
- `)}function Ac({isLastTurnItem:e,itemStore:t,onBuildPlan:n,onOpenFileDiff:r,onOpenSourceFile:i,projectId:a,taskId:o,turnStatus:s}){Pt(t,e=>e.revision);let c=t.peek(),l=c.type===`command`?c:t.read(),u=c.type===`command`?t.readCommandOutput():void 0;return(0,Q.jsx)(Tc,{...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 jc({isLastTurnItem:e,itemKey:t,onBuildPlan:n,onOpenFileDiff:r,onOpenSourceFile:i,projectId:a,store:o,taskId:s,turnStatus:c}){let l=Pt(o,e=>e.itemStoresByKey.get(t));return l===void 0?null:(0,Q.jsx)(Ac,{isLastTurnItem:e,itemStore:l,...n===void 0?{}:{onBuildPlan:n},onOpenFileDiff:r,onOpenSourceFile:i,projectId:a,taskId:s,turnStatus:c})}function Mc({anchorId:e,itemStore:t,latestSnapshotTimestamp:n,onOpenFileDiff:r,onOpenSourceFile:i,projectId:a,taskId:o,turn:s}){let c=Oc(t);if(c.type!==`review`&&(c.type!==`message`||c.role!==`user`))return null;let l=c.type===`review`?ho(c):kc(c);return(0,Q.jsxs)(Va,{"data-conversation-anchor":e,from:`user`,children:[(0,Q.jsx)(Tc,{isLastTurnItem:!1,item:c,onOpenFileDiff:r,onOpenSourceFile:i,projectId:a,taskId:o,turnStatus:s.status}),(0,Q.jsx)(lo,{...c.type===`review`?{modeLabel:d.t(`timeline.reviewMode`,{ns:`conversation`})}:{timestamp:co(`user`,s,n)},text:l})]})}function Nc({itemKey:e,latestSnapshotTimestamp:t,onOpenFileDiff:n,onOpenSourceFile:r,projectId:i,store:a,taskId:o,turn:s}){let c=Pt(a,t=>t.itemStoresByKey.get(e));return c===void 0?null:(0,Q.jsx)(Mc,{anchorId:e,itemStore:c,latestSnapshotTimestamp:t,onOpenFileDiff:n,onOpenSourceFile:r,projectId:i,taskId:o,turn:s})}function Pc({itemKeys:e,store:t}){let n=Pt(t,t=>{let n=po(e.flatMap((e,n)=>{let r=t.itemStoresByKey.get(e)?.peek();return r===void 0?[]:[{item:r,itemIndex:n}]}));return n===void 0?``:`${n.type}\u0000${n.label}`}),r=n.indexOf(`\0`);return(0,Q.jsx)(mo,{operation:r<0?void 0:{label:n.slice(r+1),type:n.slice(0,r)}})}function Fc({itemKeys:e,lastTurnItemKey:t,onBuildPlan:n,onOpenFileDiff:r,onOpenSourceFile:i,projectId:a,store:o,taskId:s,turnStatus:c}){let l=o.getState().itemStoresByKey;return os(e,e=>l.get(e)?.peek()).map(u=>{let d=(u.type===`item`?[u.itemKey]:u.itemKeys).map(e=>(0,Q.jsx)(jc,{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,Q.jsx)(Z.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,Z.createElement)(ls,{...p===void 0?{}:{collapseAfterItemKey:p},itemKeys:u.itemKeys,key:u.key,store:o},d)})}var Ic=e=>e;function Lc({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(`
7
-
8
- `);return(0,Q.jsxs)(Va,{from:`assistant`,children:[p?(0,Q.jsx)(so,{completedAt:_.completedAt,startedAt:_.startedAt,...d?{expanded:l,onToggle:c}:{}}):null,x.length>0||m?(0,Q.jsxs)(`div`,{className:`w-full space-y-4`,children:[(0,Q.jsx)(Fc,{itemKeys:x,lastTurnItemKey:t,...a===void 0?{}:{onBuildPlan:a},onOpenFileDiff:r,onOpenSourceFile:o,projectId:f,store:h,taskId:g,turnStatus:_.status}),m?(0,Q.jsx)(Pc,{itemKeys:e,store:h}):null]}):null,_.status!==`running`&&b.length>0?(0,Q.jsx)(Yo,{changes:b,onOpenFileDiff:r,onReviewFileChanges:s}):null,_.status!==`running`&&S.trim().length>0?(0,Q.jsx)(lo,{lastTurnId:_.id,...i===void 0?{}:{onForkTask:i},text:S,timestamp:co(`assistant`,_,n)}):null]})}function Rc({onBuildPlan:e,onForkTask:t,onOpenFileDiff:n,onOpenSourceFile:r,onReviewFileChanges:i,projectId:a,store:o,taskId:s,turnId:c,turnIndex:l,suppressEmptyRunningStatus:u}){let d=Pt(o,e=>e.turnsById[c]),f=Pt(o,e=>e.itemKeysByTurnId[c]??[]),[p,m]=(0,Z.useState)(!1);if(d===void 0)return null;let h=o.getState().snapshotMetadata?.updatedAt??``,g=o.getState().itemStoresByKey,_=Dc(f,g),v=new Set(Xo(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,Q.jsxs)(`section`,{"aria-label":`Turn ${String(l+1)}`,className:`space-y-4`,"data-status":d.status,children:[_.map((c,l)=>c.type===`user`?(0,Q.jsx)(Nc,{itemKey:c.itemKey,latestSnapshotTimestamp:h,onOpenFileDiff:n,onOpenSourceFile:r,projectId:a,store:o,taskId:s,turn:d},c.itemKey):(0,Q.jsx)(Lc,{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,Q.jsxs)(Va,{from:`assistant`,children:[(0,Q.jsx)(so,{completedAt:d.completedAt,startedAt:d.startedAt}),(0,Q.jsx)(`div`,{className:`w-full space-y-4`,children:(0,Q.jsx)(mo,{})})]}):null,d.error===null?null:(0,Q.jsx)(`div`,{className:`rounded-surface bg-control px-3 py-2 text-label leading-5 text-danger`,role:`alert`,children:(0,Q.jsx)(`p`,{children:d.error})})]})}function zc({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,Q.jsxs)(`div`,{className:`flex items-start gap-2 border-l-2 px-3 py-2 text-label leading-5 ${t?`border-warning text-warning`:`border-separator-strong text-muted-foreground`}`,role:t?`alert`:`status`,children:[t?(0,Q.jsx)(ur,{"aria-hidden":`true`,className:`mt-0.5 size-3.5 shrink-0`}):(0,Q.jsx)(Oe,{"aria-hidden":`true`,className:`mt-0.5 size-3.5 shrink-0`}),(0,Q.jsxs)(`div`,{className:`min-w-0`,children:[(0,Q.jsx)(`p`,{className:`font-medium text-foreground`,children:r}),(0,Q.jsx)(`p`,{className:`break-words`,children:n})]})]})}function Bc({store:e}){return Pt(e,e=>e.notices).map(e=>(0,Q.jsx)(zc,{notice:e},`${e.sessionId}:${String(e.sequence)}`))}function Vc({connected:e,onResolvePendingRequest:t,store:n}){let r=Pt(n,e=>e.pendingRequestIds),i=Pt(n,e=>e.pendingRequestsById),a=r.flatMap(e=>{let t=i[e];return t===void 0||t.status===`resolved`?[]:[t]}),o=a.findIndex(e=>e.status===`pending`);return a.map((n,r)=>(0,Q.jsx)(qo,{interactive:e&&n.status===`pending`&&r===o,onResolve:t,request:n},n.requestId))}function Hc({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=Pt(p,e=>e.turnIds),y=Pt(p,e=>e.itemStructureRevision),b=Pt(p,e=>e.pendingRequestIds),x=Pt(p,e=>e.pendingRequestsById),S=Pt(p,e=>e.notices),C=b.some(e=>x[e]?.status!==`resolved`),w=(0,Z.useMemo)(()=>ns(p.getState()),[y,p]),T=Pt(p,e=>{if(h===void 0)return`awaiting-turn`;let t=e.turnsById[h];return t===void 0?`awaiting-turn`:Dc(e.itemKeysByTurnId[h]??[],e.itemStoresByKey).some(e=>e.type===`assistant`)?`assistant-started`:t.status===`failed`||t.status===`interrupted`?`finished`:`awaiting-assistant`}),E=m!==void 0&&(T===`awaiting-turn`||T===`awaiting-assistant`),D=S.length>0;return v.length===0&&!C&&!E&&!D&&!t?(0,Q.jsx)(Qa,{message:d.t(`timeline.noHistory`,{ns:`conversation`}),role:`status`}):(0,Q.jsxs)(La,{"aria-label":d.t(`timeline.conversation`,{ns:`conversation`}),conversationId:`${g}:${_}`,...f===void 0?{}:{scrollToBottomSignal:f},children:[t?(0,Q.jsx)(Zo,{error:u,isLoading:n,onLoad:l}):null,(0,Q.jsx)(za,{...C||E||D?{footer:(0,Q.jsxs)(Q.Fragment,{children:[D?(0,Q.jsx)(Bc,{store:p}):null,C?(0,Q.jsx)(Vc,{connected:e,onResolvePendingRequest:c,store:p}):null,E?(0,Q.jsxs)(Va,{from:`assistant`,children:[(0,Q.jsx)(so,{completedAt:null,startedAt:m}),(0,Q.jsx)(mo,{})]}):null]})}:{},getItemKey:Ic,items:v,renderNavigation:(e,t,n)=>(0,Q.jsx)(is,{items:w,scrollContainerRef:n,scrollbarWidth:t,onNavigate:t=>{e(t.turnIndex,t.anchorId)}}),renderItem:(t,n)=>(0,Q.jsx)(Rc,{...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:E&&t===h})}),(0,Q.jsx)(Ba,{})]})}var Uc=()=>void 0,Wc=()=>void 0,Gc=()=>void 0,Kc=()=>Promise.resolve();function qc(e){if(u(`conversation`),e.taskId===void 0)return e.submissionStartedAt===void 0?`temporary`in e?(0,Q.jsx)(Za,{scopeName:e.scopeName}):(0,Q.jsx)(Za,{onProjectChange:e.onProjectChange,projectId:e.projectId,projects:e.projects}):(0,Q.jsx)(La,{"aria-label":d.t(`timeline.conversation`,{ns:`conversation`}),conversationId:`${e.projectId}:new-chat`,children:(0,Q.jsx)(Ra,{className:`gap-6`,children:(0,Q.jsxs)(Va,{from:`assistant`,children:[(0,Q.jsx)(so,{completedAt:null,startedAt:e.submissionStartedAt}),(0,Q.jsx)(mo,{})]})})});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,Q.jsx)(Qa,{message:d.t(`timeline.loading`,{ns:`conversation`}),role:`status`}):(0,Q.jsx)(Jc,{onOpenFileDiff:r??Uc,onOpenSourceFile:i??Wc,onReviewFileChanges:a??Gc,onResolvePendingRequest:o??Kc,...t===void 0?{}:{onBuildPlan:t},...n===void 0?{}:{onForkTask:n},runtime:s,scrollToBottomSignal:c,submissionStartedAt:l,submissionTurnId:f,startingSnapshot:p})}function Jc({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,Q.jsx)(Qa,{message:d.t(`timeline.loading`,{ns:`conversation`}),role:`status`}):(0,Q.jsx)(Yc,{connected:!1,snapshot:u}):o.store===void 0?(0,Q.jsx)(Qa,{message:d.t(`timeline.loading`,{ns:`conversation`}),role:`status`}):(0,Q.jsxs)(Q.Fragment,{children:[o.connectionState===`reconnecting`?(0,Q.jsx)(`div`,{className:`bg-control px-3 py-1.5 text-center text-label text-muted-foreground`,role:`status`,children:d.t(`timeline.reconnecting`,{ns:`conversation`})}):null,(0,Q.jsx)(Hc,{connected:o.connectionState===`connected`,hasOlderHistory:o.hasOlderHistory,isLoadingOlderHistory:o.isLoadingOlderHistory,olderHistoryError:o.olderHistoryError,...e===void 0?{}:{onBuildPlan:e},...t===void 0?{}:{onForkTask:t},onOpenFileDiff:n,onOpenSourceFile:r,onReviewFileChanges:i,onResolvePendingRequest:a,onLoadOlderHistory:o.loadOlderHistory,...s===void 0?{}:{scrollToBottomSignal:s},store:o.store,...c===void 0?{}:{submissionStartedAt:c},...l===void 0?{}:{submissionTurnId:l}})]}):(0,Q.jsx)(Qa,{message:d.t(`timeline.loadError`,{ns:`conversation`}),role:`alert`})}function Yc({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,Z.useMemo)(()=>dn({projectId:s.projectId,taskId:s.id},{checkpoint:{sequence:0,sessionId:`starting-snapshot`},snapshot:s}),[s]);return(0,Q.jsx)(Hc,{connected:e,...t===void 0?{}:{onBuildPlan:t},...n===void 0?{}:{onForkTask:n},onOpenFileDiff:r,onOpenSourceFile:i,onReviewFileChanges:a,onResolvePendingRequest:o,store:c})}function Xc(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 Zc(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 Qc(e){return e.flatMap(e=>e.type===`message`&&e.role===`user`?[e.id]:[])}function $c(e,t){if(t===void 0)return[];let n=e?.turns.find(e=>e.id===t);return Qc(n?.items??[])}function el(e,t){return t===void 0?[]:Qc((e.itemKeysByTurnId[t]??[]).flatMap(t=>{let n=e.getItemByKey(t);return n===void 0?[]:[n]}))}function tl(e,t){if(e.status!==`awaiting-response`)return!1;let n=new Set(e.userMessageIds);return t.some(e=>!n.has(e))}function nl(e,t){return e.status===`awaiting-response`&&tl(e,$c(t,e.turnId))}function rl(e){return e.status===`queued`?{files:e.files,skills:e.skills,text:e.text}:void 0}var il=1e3,al=`Pasted text.txt`;function ol(e){return e===void 0?d.t(`composer.placeholder`,{ns:`workbench`}):d.t(`composer.followUpPlaceholder`,{ns:`workbench`})}function sl(e,t,n=x){return e?.fingerprint===t?e:{fingerprint:t,key:n()}}function cl(e,t){if(e!==void 0)return e.supportedReasoningEfforts.some(e=>e.id===t)?t:e.defaultReasoningEffort}function ll(e){return je(e)}function ul(e,t){return Ae(e,t)}function dl(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 fl(e,t,n,r){return e===`running`?t?n===`queue`?`queue`:r?`steer`:`blocked`:`interrupt`:t?`start`:`blocked`}function pl(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 ml(e){return{attachmentsDisabled:e===`submitting`,draftInputDisabled:e===`submitting`,turnControlsDisabled:e===`reconnecting`||e===`submitting`}}function hl(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 gl(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 _l(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 vl(e,t,n,r,i){return e.interruptTurn(t,n,r,{idempotencyKey:i})}function yl(e,t,n,r,i,a){return e.steerTurn(t,n,r,i,{idempotencyKey:a})}function bl({directoryStates:e,entries:t,expandedPaths:n,onRetry:r}){let{t:i}=u(`workbench`);return t.map(t=>{if(t.type===`file`)return(0,Q.jsx)(ye,{name:t.name,path:t.path},t.path);let a=e.get(t.path),o=n.has(t.path);return(0,Q.jsx)(he,{name:t.name,path:t.path,trailing:o&&a?.isFetching===!0?(0,Q.jsx)(m,{"aria-hidden":`true`,className:`size-3.5 animate-spin`}):void 0,children:o?a?.error!==null&&a?.error!==void 0?(0,Q.jsxs)(`div`,{className:`flex min-h-9 items-center justify-between gap-2 px-2 py-1`,children:[(0,Q.jsx)(`p`,{className:`min-w-0 text-caption text-danger`,role:`alert`,children:i(`hostAttachmentPicker.loadBranchError`)}),(0,Q.jsxs)(l,{className:`shrink-0`,onClick:()=>{r(t.path)},size:`sm`,type:`button`,variant:`ghost`,children:[(0,Q.jsx)(ft,{"aria-hidden":`true`,"data-icon":`inline-start`}),i(`actions.retry`)]})]}):a?.data===void 0?(0,Q.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,Q.jsx)(`p`,{className:`px-2 py-1.5 text-caption text-muted-foreground`,children:i(`hostAttachmentPicker.empty`)}):(0,Q.jsx)(bl,{directoryStates:e,entries:a.data.entries,expandedPaths:n,onRetry:r}):null},t.path)})}function xl({directoryStates:e,expandedPaths:t,listing:n,onExpandedChange:r,onRetry:i,onSelect:a,selectedPath:o}){let{t:s}=u(`workbench`),c=(0,Z.useMemo)(()=>new Map(e.map(e=>[e.path,e])),[e]);return(0,Q.jsx)(xe,{"aria-label":s(`hostAttachmentPicker.treeLabel`),expanded:t,onExpandedChange:r,onSelect:a,...o===void 0?{}:{selectedPath:o},children:(0,Q.jsx)(bl,{directoryStates:c,entries:n.entries,expandedPaths:t,onRetry:i})})}function Sl({client:e,kind:t,onAdd:n,onClose:r,projectId:i}){let{t:a}=u(`workbench`),[o,s]=(0,Z.useState)(),[c,d]=(0,Z.useState)(),[f,p]=(0,Z.useState)(!1),[h,g]=(0,Z.useState)(()=>new Set),[_,v]=(0,Z.useState)(),[y,b]=(0,Z.useState)(!1),x=(0,Z.useRef)(!1),S=(0,Z.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,Z.useMemo)(()=>[...h],[h]),D=xn({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,Z.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=sl(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,K()}catch(e){W(e)}finally{x.current=!1,b(!1)}};return(0,Q.jsx)(pt,{onOpenChange:e=>{!e&&!y&&r()},open:!0,children:(0,Q.jsxs)(en,{"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,Q.jsxs)(Et,{className:`px-4 pb-3 pt-4 sm:px-5 sm:pt-5`,children:[(0,Q.jsx)(_t,{id:`host-attachment-picker-title`,children:a(t===`image`?`hostAttachmentPicker.imageTitle`:`hostAttachmentPicker.fileTitle`)}),(0,Q.jsx)(Ct,{className:`sr-only`,children:a(`hostAttachmentPicker.description`)})]}),(0,Q.jsx)(ht,{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,Q.jsx)(`div`,{className:`min-h-0 overflow-y-auto px-3 py-2 sm:px-4`,children:C.isPending?(0,Q.jsxs)(`p`,{className:`flex min-h-32 items-center justify-center gap-2 text-body-small text-muted-foreground`,role:`status`,children:[(0,Q.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,Q.jsx)(`p`,{className:`grid min-h-32 place-items-center text-body-small text-muted-foreground`,children:a(`hostAttachmentPicker.empty`)}):(0,Q.jsx)(xl,{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,Q.jsxs)(`div`,{className:`flex min-h-32 flex-col items-center justify-center gap-3 text-center`,children:[(0,Q.jsx)(`p`,{className:`text-body-small text-danger`,role:`alert`,children:a(`hostAttachmentPicker.loadError`)}),(0,Q.jsxs)(l,{onClick:()=>void C.refetch(),type:`button`,variant:`outline`,children:[(0,Q.jsx)(ft,{"aria-hidden":`true`,"data-icon":`inline-start`}),a(`actions.retry`)]})]})}),(0,Q.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,Q.jsx)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-1`,children:(0,Q.jsx)(`p`,{"aria-live":`polite`,className:`truncate font-mono text-caption text-foreground`,title:_,children:_??a(`hostAttachmentPicker.noSelection`)})}),(0,Q.jsxs)(wt,{className:`w-full flex-col-reverse sm:w-auto sm:flex-row`,children:[(0,Q.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,Q.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,Q.jsx)(m,{"aria-hidden":`true`,className:`animate-spin`,"data-icon":`inline-start`}):t===`image`?(0,Q.jsx)(Ke,{"aria-hidden":`true`,"data-icon":`inline-start`}):(0,Q.jsx)(ct,{"aria-hidden":`true`,"data-icon":`inline-start`}),a(y?`hostAttachmentPicker.importing`:`hostAttachmentPicker.add`)]})]})]})]})})}function Cl(e,t){return wl([...t.flatMap(e=>[{skill:e,type:`skill`},{text:` `,type:`text`}]),...e===``?[]:[{text:e,type:`text`}]])}function wl(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 Tl(e){return`$${e.name}`}function El(e){return`${e.rootId}\u0000${e.path}`}function Dl(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 Ol(e){return e.type===`text`?e.text.length:e.type===`skill`?Tl(e.skill).length:Dl(e.file).length}function kl(e,t){let n=[],r=[],i=0;for(let a of e){let e=Ol(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[wl(n),wl(r)]}function Al(e,t){let n=0;for(let r of e){let e=n+Ol(r);if(t.start>=n&&t.end<=e)return r.type===`text`;n=e}return!1}function jl(e,t,n){let[r]=kl(e,t.start),[,i]=kl(e,t.end),a=e.some(e=>e.type===`skill`&&e.skill.id===n.id);return wl([...r,...a?[]:[{skill:n,type:`skill`}],...i])}function Ml(e,t,n){let[r]=kl(e,t.start),[,i]=kl(e,t.end),a=e.some(e=>e.type===`file`&&El(e.file)===El(n));return wl([...r,...a?[]:[{file:n,type:`file`}],...i])}function Nl(e,t){if(e.some(e=>e.type===`file`&&El(e.file)===El(t)))return e;let n=Rl(e);return wl([...e,...n===``||/\s$/u.test(n)?[]:[{text:` `,type:`text`}],{file:t,type:`file`}])}function Pl(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?wl(i):e}function Fl(e,t){let[n]=kl(e,t.start),[,r]=kl(e,t.end);return wl([...n,...r])}function Il(e,t){return wl(e.filter(e=>e.type!==`skill`||e.skill.id!==t))}function Ll(e,t){let n=El(t);return wl(e.filter(e=>e.type!==`file`||El(e.file)!==n))}function Rl(e){return e.map(e=>e.type===`text`?e.text:e.type===`skill`?Tl(e.skill):Dl(e.file)).join(``)}function zl(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`?Dl(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 Bl(e){let t=zl(e);return t.text===``&&t.skills.length===0}var Vl=new Set([`DIV`,`P`]);function Hl(e,t){let n=document.createElement(`span`);if(n.className=`${Sc} 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=Tl(e),n.setAttribute(`aria-label`,d.t(`skillEditor.tokenLabel`,{name:e.displayName,ns:`workbench`,text:Tl(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 Ul(e,t){let n=document.createElement(`span`);if(n.className=`${Sc} 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=Dl(e),n.setAttribute(`aria-label`,Dl(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 Wl(){let e=document.createElement(`span`);return e.dataset.promptCaretAnchor=``,e.textContent=`​`,e}function Gl(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(Hl(e.skill,n),Wl()):i.push(Ul(e.file,r),Wl());e.replaceChildren(...i),e.dataset.empty=String(t.length===0),e.dataset.serializedValue=Rl(t)}function Kl(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(El({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(`
9
- `);return}Vl.has(e.tagName)&&r.length>0&&i(`
10
- `),e.childNodes.forEach(a)};return e.childNodes.forEach(a),wl(r)}function ql(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+ql(t),0)}function Jl(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+ql(t),0);i=!0;return}if(e instanceof Element&&e.contains(t)){e.childNodes.forEach(a);return}r+=ql(e)}};return e.childNodes.forEach(a),r}function Yl(e){let t=document.getSelection();return Jl(e,t?.anchorNode??null,t?.anchorOffset??0)??e.dataset.serializedValue?.length??0}function Xl(e,t){let n=Math.max(0,t);for(let[t,r]of[...e.childNodes].entries()){let i=ql(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 Zl(e,t){let[n,r]=Xl(e,t),i=document.createRange();i.setStart(n,r),i.collapse(!0);let a=document.getSelection();a?.removeAllRanges(),a?.addRange(i)}function Ql(e,t){e.focus(),document.execCommand(`insertText`,!1,t)}function $l(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 eu=(0,Z.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,Z.useRef)(null),p=(0,Z.useRef)(null),m=(0,Z.useRef)(null),h=(0,Z.useRef)(t),g=(0,Z.useRef)(c),_=(0,Z.useRef)(new Map),v=(0,Z.useRef)(new Map),y=(0,Z.useRef)(void 0),b=(0,Z.useCallback)(e=>{for(let t of e)t.type===`skill`?_.current.set(t.skill.id,t.skill):t.type===`file`&&v.current.set(El(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=Kl(e,_.current,v.current),n=Pl(t,g.current),i=Yl(e);n!==t&&(Gl(e,n,p.current,m.current),Zl(e,Math.min(i,Rl(n).length))),h.current=n,e.dataset.empty=String(n.length===0);let a=Rl(n);e.dataset.serializedValue=a,r(n,a,Yl(e))},S=(0,Z.useCallback)((e,t)=>{let n=f.current;n!==null&&(b(e),h.current=e,Gl(n,e,p.current,m.current),t!==void 0&&Zl(n,t))},[b]);(0,Z.useImperativeHandle)(d,()=>({focus(e){let t=f.current;t?.focus(),t!==null&&e!==void 0&&Zl(t,e)},getContent(){let e=f.current;return e===null?h.current:Kl(e,_.current,v.current)},replace:S}),[S]),(0,Z.useLayoutEffect)(()=>{y.current!==l&&(y.current=l,S(t))},[t,S,l]),(0,Z.useLayoutEffect)(()=>{let e=f.current;if(e===null||c.length===0)return;let t=Kl(e,_.current,v.current),n=Pl(t,c);if(n===t)return;let i=Yl(e);Gl(e,n,p.current,m.current),document.activeElement===e&&Zl(e,Math.min(i,Rl(n).length)),h.current=n;let a=Rl(n);e.dataset.serializedValue=a,r(n,a,Yl(e))},[r,c]);let C=(e,t)=>{let n=[...e.childNodes].slice(0,[...e.childNodes].indexOf(t)).reduce((e,t)=>e+ql(t),0),r=t.dataset.promptSkillId,i=t.dataset.promptFilePath,a=t.dataset.promptFileRootId,o=r===void 0?i!==void 0&&a!==void 0?Ll(h.current,{path:i,rootId:a}):h.current:Il(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(),Ql(e.currentTarget,e.clipboardData.getData(`text/plain`))))},E=e=>{if(a?.(e),!(e.defaultPrevented||Ze(e.nativeEvent)||n)){if(e.key===`End`&&!(e.altKey||e.ctrlKey||e.metaKey||e.shiftKey)){let t=e.currentTarget,n=document.getSelection(),r=Rl(h.current),i=h.current.at(-1),a=i!==void 0&&i.type!==`text`?r.length-Ol(i):void 0,o=Yl(t);if(n?.isCollapsed===!0&&a!==void 0&&o<=a&&r.slice(o,a).trim()===``){e.preventDefault(),Zl(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(),Xe(e)?($l(e.currentTarget),x()):e.currentTarget.closest(`form`)?.requestSubmit())}};return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(An,{"aria-hidden":`true`,className:`hidden size-4 shrink-0`,ref:p}),(0,Q.jsx)(ut,{"aria-hidden":`true`,className:`hidden size-4 shrink-0`,ref:m}),(0,Q.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=Rl(Kl(t,_.current,v.current)),a=Jl(t,r.startContainer,r.startOffset),o=Jl(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})]})}),tu=(e,t)=>[`projects`,e,t,`git-status`],nu=(e,t)=>[`projects`,e,t,`git-worktrees`];function ru(e,t,n,r){e.setQueryData([`projects`],e=>pe(e,r.project)),e.setQueryData(nu(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 iu(e,t,n,r,i,a){if(i.repositoryMode!==`root`||i.branch===a||!i.branches.includes(a))return!1;let o=tu(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 au(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=tu(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 ou(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 ru(t,n,r,s),await t.invalidateQueries({exact:!0,queryKey:tu(n,r),refetchType:`none`}),s.project}async function su(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 ru(t,n,r,o),o.project}function cu({client:e,gitStatus:t,isCurrentScope:n,projectId:r,routeScope:i,rootPath:a}){let o=Vt(),s=L(),{projects:c}=Xt(),l=(0,Z.useRef)(H()),[u,d]=(0,Z.useState)(),[f,p]=(0,Z.useState)(),[m,h]=(0,Z.useState)(),[g,_]=(0,Z.useState)(),[v,y]=(0,Z.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:nu(r,a),staleTime:5e3}),S=x.data?.worktrees??[];return(0,Z.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,Z.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 au(e,s,r,a,t,o);return n&&K(),n}catch(e){return W(e),await s.invalidateQueries({exact:!0,queryKey:tu(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 ou(e,s,r,a,t,o);return n===void 0?!1:(K(),y({projectId:n.id,routeScope:c}),!0)}catch(e){return W(e),await s.invalidateQueries({exact:!0,queryKey:nu(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 iu(e,s,r,a,t,o)&&K()}catch(e){W(e),await s.invalidateQueries({exact:!0,queryKey:tu(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 su(e,s,r,a,S,t);if(n===void 0)return;K(),y({projectId:n.id,routeScope:o})}catch(e){W(e),await s.invalidateQueries({exact:!0,queryKey:nu(r,a)}).catch(()=>void 0)}finally{n(o)&&_(void 0)}})},switchingWorktree:g,worktrees:S,worktreesError:x.error,worktreesPending:x.isPending}}async function lu(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 uu({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})=>lu(t,r,l??``,e),queryKey:d,staleTime:1/0}),[p,m]=(0,Z.useState)([]),[h,g]=(0,Z.useState)(),_=(0,Z.useMemo)(()=>l===void 0?[]:(f.data??[]).map(e=>Xc(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,Z.useEffect)(()=>{o?.store===void 0&&m(e=>e.filter(e=>e.scope!==a||!nl(e.prompt,o?.snapshot)))},[a,o?.snapshot,o?.store]),(0,Z.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`||!tl(t.prompt,el(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=rl(e);if(t===void 0)return;let r=Cl(t.text,t.skills);g({id:e.id,scope:a}),i(r,Rl(r).length),n(t.files),requestAnimationFrame(()=>{s.current?.focus(Rl(r).length)})},D=e=>{m(t=>{let n=Zc(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 du({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 fu(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 pu(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 mu(e,t){return pu(e,t,`/`)}function hu(e,t){return pu(e,t,`@`)}function gu(e,t){let n=t.trim().toLocaleLowerCase();return n===``?e:e.filter(e=>[e.label,...e.keywords].some(e=>e.toLocaleLowerCase().includes(n)))}function _u(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 vu(e,t,n){return n===0?0:(e+t+n)%n}function yu({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)})},ee=t=>{let n=fu(t,e,d!==void 0);return n.available&&j===`running`?{available:!1,reason:c(`composer.taskRunning`)}:n},B=async e=>{let r=S;if(ee(e).available){if(e.action===`plan`||e.action===`goal`){let t=m;if(t===void 0)return;let n=A.current?.getContent()??y;b(Fl(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=sl(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)&&K(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)}})}},V=e=>M.run(async()=>{let o=S;n(),p(),F(!0),I(null);let s=sl(N.current.get(`review`),JSON.stringify({target:e,taskId:d??a}));N.current.set(`review`,s);try{let n=await _l(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}),K(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)}}),H=e=>{let t=m;if(t===void 0)return;let n=jl(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:B,executeReviewTarget:V,getCommandAvailability:ee,selectActiveCommandItem:()=>{if(C())return;if(x===`scopes`){u===0?V({type:`uncommitted_changes`}):u===1&&f.length>0&&(w(0),k(`branches`));return}if(x===`branches`){let e=f[u];e!==void 0&&V({branch:e,type:`base_branch`});return}let e=g[u];if(e!==void 0){B(e);return}let t=_[u-g.length];t!==void 0&&H(t)},selectSkill:H}}function bu(e,t){return e===t}function xu(e,t){let[n,r]=(0,Z.useState)(!1),[i,a]=(0,Z.useState)(null),[o,s]=(0,Z.useState)(),[c,l]=(0,Z.useState)(),u=(0,Z.useRef)(e);u.current=e;let d=(0,Z.useRef)(void 0),f=(0,Z.useRef)(void 0),p=(0,Z.useRef)(void 0),m=(0,Z.useRef)(void 0),h=(0,Z.useRef)(new Map),g=(0,Z.useRef)(new Map),_=(0,Z.useRef)(new Map),v=(0,Z.useMemo)(()=>H(),[e]);(0,Z.useEffect)(()=>{t?.(n)},[n,t]),(0,Z.useEffect)(()=>()=>{t?.(!1)},[t]);let y=(0,Z.useCallback)(e=>bu(u.current,e),[]),b=(0,Z.useCallback)(e=>{a(e),e!==null&&W(e)},[]);return{actionLock:v,commandAttempts:_,interruptAttempt:m,isCurrentScope:y,isSubmitting:n,mutationError:i,pendingTaskState:o,reset:(0,Z.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 Su(e,t,n,r,i,a){return M({enabled:a,placeholderData:B,queryFn:({signal:a})=>e.searchProjectFiles(t,n,i,r,{signal:a}),queryKey:[`projects`,t,n,`file-search`,r,i],staleTime:3e4})}function Cu(e,t,n,r){e.stopProjectFileSearch(t,n,r).catch(()=>void 0)}function wu(e,t,n,r,i){let a=(0,Z.useMemo)(()=>({enabled:i,id:x(),projectId:t,rootPath:n}),[i,t,n]).id,[o,s]=(0,Z.useState)({enabled:!1,query:r});(0,Z.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,Z.useEffect)(()=>{if(i)return()=>{Cu(e,t,n,a)}},[e,i,t,n,a]);let c=o.enabled&&o.query===r;return j(Su(e,t,n,a,o.query,i&&c))}function Tu(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(wl(o))}}return r}function Eu(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 Du(e,t,n){let r=Math.max(0,Math.min(t,e.length));if(n===`previous`){let t=e.indexOf(`
11
- `);return t<0||r<=t}return r>=e.lastIndexOf(`
12
- `)+1}var Ou=[];function ku({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=Rt(a,d),m=sn(),h=m.read(p),[g,_]=(0,Z.useState)(),[v,y]=(0,Z.useState)(0),[b,x]=(0,Z.useState)(h.attachments),[S,C]=(0,Z.useState)(),[w,T]=(0,Z.useState)(!1),[E,D]=(0,Z.useState)(!1),[O,k]=(0,Z.useState)(),[A,j]=(0,Z.useState)(``),[M,N]=(0,Z.useState)(null),[P,F]=(0,Z.useState)(``),[I,L]=(0,Z.useState)(),[R,z]=(0,Z.useState)(h.content),[ee,B]=(0,Z.useState)(null),[V,H]=(0,Z.useState)(),U=xu(f,i),{isSubmitting:W,mutationError:G,pendingTaskState:K,reset:q,setIsSubmitting:J,setMutationError:te,setPendingTaskState:ne,setSubmittedTurnState:re,submittedTurnState:ie}=U,ae=(0,Z.useId)(),oe=(0,Z.useRef)(null),se=(0,Z.useRef)(null),ce=(0,Z.useRef)(h.content),le=(0,Z.useRef)(f),ue=(0,Z.useRef)(p),de=ie?.scope===f?ie.turnId:void 0,fe=K?.scope===f?K.task:void 0,pe=hl(c?.snapshot,de),me=d??fe?.id,{canInterrupt:he,canSubmit:ge,canSteer:_e}=dl(e,me!==void 0),ve=c?.connectionState??`connected`,ye=pl({activeTurnId:pe,connectionState:ve,isSubmitting:W,mutationFailed:G!==null||c?.error!==null}),be=zl(R),xe=g?.scope===f?g.settings:l,Se=V?.scope===f?V.mode:void 0,Ce=r.find(e=>e.id===xe.model)??r.find(e=>e.isDefault)??r[0],we=cl(Ce,xe.reasoningEffort),Te=c?.snapshot?.contextUsage,Ee=(0,Z.useMemo)(()=>Tu(c?.snapshot?.turns??[],u),[c?.snapshot?.turns,u]),De=b.length,{attachmentsDisabled:Oe,draftInputDisabled:ke,turnControlsDisabled:Ae}=ml(ye),Y=wu(t,a,o,A,E&&s&&!Ae),je=Y.data?.data??Ou,Me=_u(e?.skills.use===!0?u:[],P),Ne=gu(du({projectToolsEnabled:s}),P),Pe=n?.baseBranches??[],X=E?je.length:M===`scopes`?2:M===`branches`?Pe.length:Me.length+Ne.length,Fe=!w&&!E||X===0?void 0:`${ae}-item-${String(v)}`,Ie=(0,Z.useCallback)(e=>{x(e),m.update(p,t=>({...t,attachments:e}))},[m,p]),Le=(0,Z.useCallback)(()=>{T(!1),F(``),L(void 0),N(null)},[]),Re=(0,Z.useCallback)(()=>{D(!1),k(void 0),j(``)},[]),ze=(0,Z.useCallback)((e,t)=>{z(e),m.update(p,t=>({...t,content:e})),se.current?.replace(e,t)},[m,p]),Be=(0,Z.useCallback)(e=>{let t=Eu(ee,e,Ee.length);if(t===null&&ee===null)return!1;ee===null&&(ce.current=se.current?.getContent()??R);let n=t===null?ce.current:Ee[t];return n===void 0?!1:(B(t),ze(n,Rl(n).length),!0)},[R,Ee,ee,ze]),Ve=(0,Z.useCallback)(e=>{if(O===void 0)return;let t=Ml(se.current?.getContent()??R,O,e),n=O.start+Dl(e).length;ze(t,n),Re(),requestAnimationFrame(()=>{se.current?.focus(n)})},[Re,O,R,ze]),He=(0,Z.useCallback)(e=>{let t=Nl(se.current?.getContent()??R,e),n=Rl(t).length;Le(),Re(),B(null),ze(t,n),requestAnimationFrame(()=>{se.current?.focus(n)})},[Le,Re,R,ze]),Ue=(0,Z.useCallback)(()=>{if(!E)return!1;let e=je[v];return e!==void 0&&Ve(e),!0},[v,E,je,Ve]),We=(0,Z.useCallback)((e,t,n)=>{z(e),B(null),m.update(p,t=>({...t,content:e}));let r=hu(t,n);if(s&&r!==null&&Al(e,r)){y(0),T(!1),F(``),L(void 0),N(null),D(!0),k(r),j(r.query);return}Re();let i=mu(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)},[Re,m,p,s]),Ge=(0,Z.useCallback)(()=>{m.update(p,e=>({...e,attachments:[],content:[]})),z([]),B(null),ce.current=[],x([]),se.current?.replace([])},[m,p]);return(0,Z.useLayoutEffect)(()=>{if(le.current===f)return;le.current=f;let e=ue.current!==p;if(e){ue.current=p;let e=m.read(p);z(e.content),B(null),ce.current=e.content,x(e.attachments),C(void 0),se.current?.replace(e.content),_(void 0),H(void 0),y(0),T(!1),D(!1),k(void 0),j(``),N(null),F(``),L(void 0)}q(e)},[m,p,q,f]),{activeCommandIndex:v,activeCommandItemId:Fe,activeSettings:xe,activeTaskId:me,activeTurnId:pe,attachmentCount:De,attachmentPickerKind:S,attachments:b,attachmentsDisabled:Oe,baseBranches:Pe,canInterrupt:he,canSteer:_e,canSubmit:ge,clearComposerInput:Ge,closeCommandMenu:Le,closeFileMenu:Re,commandMenuId:ae,commandMenuOpen:w,commandSlashCommand:I,commandSurfaceRef:oe,composerController:U,composerDraftStore:m,composerScope:p,connectionState:ve,contextUsage:Te,draftInputDisabled:ke,filteredCommands:Ne,filteredSkills:Me,fileMenuOpen:E,fileMention:O,fileQuery:A,fileSearchError:Y.error,fileSearchPending:Y.isPending,fileSearchResults:je,handleAttachmentsChange:Ie,handlePromptChange:We,isSubmitting:W,menuItemCount:X,mutationError:G,navigatePromptHistory:Be,pendingTask:fe,composerMode:Se,promptContent:R,promptSubmission:be,referenceProjectPath:He,replacePromptContent:ze,reviewMenuMode:M,routeScope:f,selectedModel:Ce,selectedReasoningEffort:we,selectActiveFileReference:Ue,selectFileReference:Ve,setActiveCommandIndex:y,setAttachmentPickerKind:C,setAttachments:x,setCommandMenuOpen:T,setFileMenuOpen:D,setFileMention:k,setFileQuery:j,setCommandQuery:F,setCommandSlashCommand:L,setIsSubmitting:J,setMutationError:te,setPendingTaskState:ne,setComposerModeState:H,setPromptContent:z,setReviewMenuMode:N,setSettingsOverride:_,setSubmittedTurnState:re,skillEditorRef:se,state:ye,turnControlsDisabled:Ae}}function Au(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 ju(e,t){return e.source===`host`?e.attachment:t(e)}function Mu({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:ee,uploadAttempts:B,uploadedAttachments:V}=c,H=async(c,M,H={})=>{let U=C,W=M===void 0?zl(D.current?.getContent()??S):void 0,G=(W?.text??c.text).trim(),K=H.composerMode===null?void 0:H.composerMode??_;if(K===`goal`&&(G.length===0||G.length>4e3))return F(Error(A(G.length===0?`composer.goalObjectiveRequired`:`composer.goalObjectiveTooLong`))),!1;let q=M??W?.skills??[],J=G!==``||c.files.length>0||q.length>0,te=H.forceAction??fl(O,J,l,i);if(te===`blocked`||te===`interrupt`||!J||T===void 0||E===void 0||j||te!==`steer`&&!a||te===`steer`&&(!i||n===void 0||r===void 0))return!1;te!==`queue`&&H.requestTimelineScroll!==!1&&d?.(),f(),P(!0),F(null);let ne,re;try{re=await Promise.all(c.files.map(e=>ju(e,async e=>{let t=V.current.get(e.id);if(t!==void 0)return t;let n=B.current.get(e.id)??x();B.current.set(e.id,n);let r=await s.uploadAttachment(b,{content:e.file,kind:e.kind,name:e.name},{idempotencyKey:n});return N(U)&&V.current.set(e.id,r.attachment),r.attachment}))),ne={attachments:re.map(e=>({id:e.id})),skills:q.map(e=>({id:e.id,name:e.name})),text:G,type:`prompt`}}catch(e){return N(U)&&(F(e instanceof Error?e:Error(A(`composer.attachmentUploadFailed`))),P(!1)),!1}if(te===`queue`)try{let e=await w(ne,x());return e&&N(U)&&(o(),V.current.clear(),B.current.clear()),e}catch(e){return N(U)&&F(e instanceof Error?e:Error(`Prompt queueing failed`)),!1}finally{N(U)&&P(!1)}if(te===`steer`){if(n===void 0||r===void 0)return!1;let t=sl(ee.current,JSON.stringify({input:ne,taskId:n,turnId:r}));ee.current=t;try{return await yl(s,b,n,r,ne,t.key),N(U)&&(y({files:c.files,...H.queuedPromptId===void 0?{}:{id:H.queuedPromptId},skills:q,text:G,turnId:r,userMessageIds:e}),H.clearInputOnSuccess!==!1&&o(),ee.current=void 0,V.current.clear(),B.current.clear()),!0}catch(e){return N(U)&&F(e instanceof Error?e:Error(`Prompt steering failed`)),!1}finally{N(U)&&P(!1)}}let ie=Au(t,T.id,E,K,u),ae=sl(z.current,JSON.stringify({input:ne,options:ie}));z.current=ae;let oe=n===void 0?sl(R.current,b):void 0;R.current=oe;try{let e=await gl(s,{idempotencyKeys:{...oe===void 0?{}:{startTask:oe.key},startTurn:ae.key},input:ne,onTaskCreated(e){N(U)&&(I({scope:U,task:e}),R.current=void 0,p?.(e))},projectId:b,...n===void 0?{}:{taskId:n},turnOptions:ie});if(N(U)&&(H.clearInputOnSuccess!==!1&&o(),ie.goalMode===!0&&v(),L({scope:U,turnId:e.turn.id})),h?.(e.turn,ne,re),N(U)&&(z.current=void 0,V.current.clear(),B.current.clear()),k===void 0){let t=e.createdTask??g;t!==void 0&&m(t,e.turn,ne,ie,re)}return!0}catch(e){return N(U)&&F(e instanceof Error?e:Error(`Prompt submission failed`)),!1}finally{N(U)&&P(!1)}};return(e,t,n={})=>M.run(()=>H(e,t,n)).then(e=>e??!1)}var Nu=(0,Z.createContext)(null);function Pu(){let e=(0,Z.useContext)(Nu);if(e===null)throw Error(`Context components must be used within Context`);return e}function Fu({children:e,className:t=``,maxTokens:n,usedTokens:r,...i}){let a=(0,Z.useMemo)(()=>({maxTokens:n,usedTokens:r}),[n,r]);return(0,Q.jsx)(Nu.Provider,{value:a,children:(0,Q.jsx)(`span`,{className:`inline-flex shrink-0 ${t}`,...i,children:e})})}function Iu(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:`${Lu(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:`${Lu(n)} / ${Lu(t)} tokens`}}function Lu(e){return new Intl.NumberFormat(`en-US`,{maximumFractionDigits:1,notation:`compact`}).format(e)}var Ru=7,zu=2*Math.PI*Ru;function Bu(){u(`conversation`);let e=zu*(1-(Iu(Pu()).percentage??0)/100);return(0,Q.jsxs)(`svg`,{className:`size-4.5 -rotate-90`,viewBox:`0 0 20 20`,"aria-hidden":`true`,children:[(0,Q.jsx)(`circle`,{cx:`10`,cy:`10`,fill:`none`,r:Ru,stroke:`currentColor`,strokeOpacity:`0.24`,strokeWidth:`3`}),(0,Q.jsx)(`circle`,{cx:`10`,cy:`10`,fill:`none`,r:Ru,stroke:`currentColor`,strokeDasharray:zu,strokeDashoffset:e,strokeLinecap:`round`,strokeWidth:`3`})]})}function Vu({children:e,className:t=``,...n}){return(0,Q.jsx)(`span`,{className:`flex flex-col gap-0.5 px-0.5 py-0.5 tabular-nums ${t}`,...n,children:e})}function Hu({children:e,className:t=``,...n}){u(`conversation`);let r=Iu(Pu());return(0,Q.jsx)(`span`,{className:`contents ${t}`,...n,children:e??(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`span`,{className:`text-body-small font-medium`,children:r.summary}),r.tokenCount===null?null:(0,Q.jsx)(`span`,{className:`text-label text-muted-foreground`,children:r.tokenCount})]})})}function Uu({children:e,className:t=``,...n}){u(`conversation`);let r=Iu(Pu());return(0,Q.jsxs)(N,{children:[(0,Q.jsx)(P,{asChild:!0,children:(0,Q.jsx)(l,{...n,"aria-label":r.accessibleLabel,className:t,size:`icon-sm`,type:n.type??`button`,variant:`ghost`,children:e??(0,Q.jsx)(Bu,{})})}),(0,Q.jsx)(I,{className:`bg-raised text-foreground`,children:(0,Q.jsx)(Vu,{children:(0,Q.jsx)(Hu,{})})})]})}function Wu({isPending:e,onClose:t,onCreate:n}){let{t:r}=u(`workbench`),[i,a]=(0,Z.useState)(``),o=(0,Z.useRef)(!1),s=i.trim();return(0,Q.jsx)(pt,{onOpenChange:n=>{!n&&!e&&!o.current&&t()},open:!0,children:(0,Q.jsx)(en,{"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,Q.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,Q.jsxs)(Et,{children:[(0,Q.jsx)(_t,{id:`create-branch-title`,children:r(`composer.createBranch`)}),(0,Q.jsx)(Ct,{children:r(`composer.createBranchDescription`)})]}),(0,Q.jsxs)(`label`,{className:`grid gap-1.5 text-label font-medium text-foreground`,htmlFor:`create-branch-name`,children:[r(`composer.branchName`),(0,Q.jsx)(Fe,{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,Q.jsxs)(wt,{children:[(0,Q.jsx)(l,{disabled:e,onClick:t,type:`button`,variant:`ghost`,children:r(`actions.cancel`)}),(0,Q.jsx)(l,{disabled:e||s.length===0,type:`submit`,children:r(`composer.createAndSwitchBranch`)})]})]})})})}function Gu({isPending:e,onClose:t,onCreate:n}){let{t:r}=u(`workbench`),[i,a]=(0,Z.useState)(``),o=(0,Z.useRef)(!1),s=i.trim();return(0,Q.jsx)(pt,{onOpenChange:n=>{!n&&!e&&!o.current&&t()},open:!0,children:(0,Q.jsx)(en,{"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,Q.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,Q.jsxs)(Et,{children:[(0,Q.jsx)(_t,{id:`create-worktree-title`,children:r(`composer.createWorktree`)}),(0,Q.jsx)(Ct,{children:r(`composer.createWorktreeDescription`)})]}),(0,Q.jsxs)(`label`,{className:`grid gap-1.5 text-label font-medium text-foreground`,htmlFor:`create-worktree-branch`,children:[r(`composer.branchName`),(0,Q.jsx)(Fe,{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,Q.jsxs)(wt,{children:[(0,Q.jsx)(l,{disabled:e,onClick:t,type:`button`,variant:`ghost`,children:r(`actions.cancel`)}),(0,Q.jsx)(l,{disabled:e||s.length===0,type:`submit`,children:r(`composer.createAndSwitchWorktree`)})]})]})})})}function Ku({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,Z.useState)(!1),[v,y]=(0,Z.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,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(mn,{children:[(0,Q.jsx)(yn,{asChild:!0,children:(0,Q.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,Q.jsx)(m,{"aria-hidden":`true`,className:`size-3 shrink-0 animate-spin`,"data-icon":`inline-start`}):(0,Q.jsx)(Jn,{"aria-hidden":`true`,className:`size-3 shrink-0`,"data-icon":`inline-start`}),(0,Q.jsx)(`span`,{className:`truncate`,children:S}),(0,Q.jsx)(Pn,{"aria-hidden":`true`,className:`size-3 shrink-0`,"data-icon":`inline-end`})]})}),(0,Q.jsxs)(Wt,{align:`start`,className:`max-h-72 w-72 max-w-[calc(100vw-1rem)] overflow-y-auto`,side:`top`,children:[(0,Q.jsx)(qt,{children:(0,Q.jsx)(an,{children:h(`composer.branchSwitcherMenu`)})}),(0,Q.jsx)(Zt,{onValueChange:e=>{e!==b&&r(e)},value:b,children:n.branches.map(e=>(0,Q.jsx)(Yt,{disabled:e===b||C,title:e,value:e,children:(0,Q.jsx)(`span`,{className:`truncate`,children:e})},e))}),(0,Q.jsx)(It,{}),(0,Q.jsxs)(qt,{children:[(0,Q.jsx)(an,{children:h(`composer.worktreeSwitcherMenu`)}),p?(0,Q.jsxs)(ln,{disabled:!0,children:[(0,Q.jsx)(m,{"aria-hidden":`true`,className:`size-3.5 animate-spin`}),h(`composer.worktreeListLoading`)]}):f===null?w.length===0?(0,Q.jsx)(ln,{disabled:!0,children:h(`composer.worktreeListEmpty`)}):w.map(e=>(0,Q.jsxs)(ln,{disabled:C,onSelect:()=>{a(e.path)},title:e.path,children:[(0,Q.jsx)(Y,{"aria-hidden":`true`,className:`size-3.5`}),(0,Q.jsxs)(`span`,{className:`grid min-w-0 flex-1`,children:[(0,Q.jsx)(`span`,{className:`truncate`,children:e.branch??h(`composer.detachedHead`)}),(0,Q.jsx)(`span`,{className:`truncate text-caption text-muted-foreground`,children:e.path})]})]},e.path)):(0,Q.jsx)(ln,{disabled:!0,children:h(`composer.worktreeListFailed`)})]}),(0,Q.jsx)(It,{}),(0,Q.jsxs)(ln,{disabled:C,onSelect:()=>{_(!0)},children:[(0,Q.jsx)(U,{"aria-hidden":`true`,className:`size-3.5 text-muted-foreground`}),h(`composer.createBranch`)]}),(0,Q.jsxs)(ln,{disabled:C,onSelect:()=>{y(!0)},children:[(0,Q.jsx)(Y,{"aria-hidden":`true`,className:`size-3.5 text-muted-foreground`}),h(`composer.createWorktree`)]})]})]}),g?(0,Q.jsx)(Wu,{isPending:e!==void 0,onClose:()=>{_(!1)},onCreate:i}):null,v?(0,Q.jsx)(Gu,{isPending:t!==void 0,onClose:()=>{y(!1)},onCreate:o}):null]}):(0,Q.jsxs)(`span`,{className:`inline-flex min-w-0 shrink items-center gap-1`,children:[(0,Q.jsx)(Jn,{"aria-hidden":`true`,className:`size-3 shrink-0`}),(0,Q.jsx)(`span`,{className:`truncate`,children:S})]})}var qu=`(max-width: 760px)`;function Ju(){let[e,t]=(0,Z.useState)(()=>typeof window<`u`&&window.matchMedia(qu).matches);return(0,Z.useEffect)(()=>{let e=window.matchMedia(qu),n=()=>{t(e.matches)};return n(),e.addEventListener(`change`,n),()=>{e.removeEventListener(`change`,n)}},[]),e}function Yu({accessibleLabel:e,disabled:t,effortLabel:n,modelLabel:r,...i}){return(0,Q.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,Q.jsx)(`span`,{className:`min-w-0 truncate`,children:r}),n===``?null:(0,Q.jsx)(`span`,{className:`shrink-0 text-muted-foreground`,children:n}),(0,Q.jsx)(w,{"aria-hidden":`true`,className:`size-3 shrink-0 text-muted-foreground`})]})}function Xu(e,t,n){let r=e.find(e=>e.id===n),i=cl(r,t.reasoningEffort);if(!(r===void 0||i===void 0))return{...t,model:r.id,reasoningEffort:i}}function Zu(e,t,n){if(e?.supportedReasoningEfforts.some(e=>e.id===n))return{...t,reasoningEffort:n}}function Qu({activeSettings:e,disabled:t,models:n,modelsPending:r,onSettingsChange:i,selectedModel:a,selectedReasoningEffort:o}){let{t:s}=u([`workbench`,`settings`]),c=Ju(),[d,f]=(0,Z.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=Xu(n,e,t);r!==void 0&&i(r,`model`)},v=t=>{let n=Zu(a,e,t);n!==void 0&&i(n,`reasoningEffort`)};return c?(0,Q.jsxs)(pt,{onOpenChange:f,open:d,children:[(0,Q.jsx)(bt,{asChild:!0,children:(0,Q.jsx)(Yu,{accessibleLabel:g,disabled:h,effortLabel:m,modelLabel:p})}),(0,Q.jsxs)(en,{className:`w-[calc(100%-1rem)] max-w-xs gap-2 p-3`,children:[(0,Q.jsx)(_t,{className:`text-body`,children:s(`composer.modelAndReasoningMenu`)}),(0,Q.jsx)(Ct,{className:`sr-only`,children:g}),(0,Q.jsxs)(`div`,{"aria-label":s(`composer.modelSelect`),className:`grid gap-0.5`,role:`radiogroup`,children:[(0,Q.jsx)(`div`,{className:`px-2 py-1 text-label font-medium text-muted-foreground`,children:s(`composer.model`)}),n.map(e=>(0,Q.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,Q.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,title:e.displayName,children:e.displayName}),e.id===a?.id?(0,Q.jsx)(G,{"aria-hidden":`true`,className:`size-3.5`}):null]},e.id))]}),(0,Q.jsxs)(`div`,{"aria-label":s(`composer.reasonEffortSelect`),className:`grid gap-0.5 border-t border-separator pt-1.5`,role:`radiogroup`,children:[(0,Q.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,Q.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,Q.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:t}),e.id===o?(0,Q.jsx)(G,{"aria-hidden":`true`,className:`size-3.5`}):null]},e.id)})]})]})]}):(0,Q.jsxs)(mn,{children:[(0,Q.jsx)(yn,{asChild:!0,children:(0,Q.jsx)(Yu,{accessibleLabel:g,disabled:h,effortLabel:m,modelLabel:p})}),(0,Q.jsxs)(Wt,{align:`end`,"aria-label":s(`composer.modelAndReasoningMenu`),className:`w-40`,side:`top`,children:[(0,Q.jsxs)(gn,{children:[(0,Q.jsxs)(Bt,{"aria-label":s(`composer.modelSelect`),children:[(0,Q.jsx)(`span`,{className:`font-medium`,children:s(`composer.model`)}),(0,Q.jsx)(`span`,{className:`ml-auto max-w-28 truncate text-muted-foreground`,children:p})]}),(0,Q.jsx)(bn,{"aria-label":s(`composer.modelSelect`),className:`w-40 max-w-[calc(100vw-1rem)]`,children:(0,Q.jsx)(Zt,{onValueChange:_,...a===void 0?{}:{value:a.id},children:n.map(e=>(0,Q.jsx)(Yt,{indicator:`check`,value:e.id,children:(0,Q.jsx)(`span`,{className:`min-w-0 truncate`,title:e.displayName,children:e.displayName})},e.id))})})]}),(0,Q.jsxs)(gn,{children:[(0,Q.jsxs)(Bt,{"aria-label":s(`composer.reasonEffortSelect`),children:[(0,Q.jsx)(`span`,{className:`font-medium`,children:s(`composer.reasoningEffort`)}),(0,Q.jsx)(`span`,{className:`ml-auto truncate text-muted-foreground`,children:m})]}),(0,Q.jsx)(bn,{"aria-label":s(`composer.reasonEffortSelect`),className:`min-w-28 w-28 max-w-[calc(100vw-1rem)]`,children:(0,Q.jsx)(Zt,{onValueChange:v,...o===void 0?{}:{value:o},children:a?.supportedReasoningEfforts.map(e=>(0,Q.jsx)(Yt,{indicator:`check`,value:e.id,children:(0,Q.jsx)(`span`,{className:`min-w-0 truncate`,children:s(`settings:effort.${e.id}`,{defaultValue:e.id})})},e.id))})})]})]})]})}function $u({disabled:e,onSettingsChange:t,sandboxModeSelectable:n,settings:r}){let{t:i}=u([`workbench`,`settings`]);return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(Je,{"aria-label":i(`composer.approvalMode`),className:`max-workbench:px-0.5`,disabled:e,onChange:e=>{t(ul(r,e.currentTarget.value),`approvalPolicy`)},value:ll(r),children:[(0,Q.jsx)(`option`,{value:`on-request`,children:i(`settings:approval.onRequest`)}),(0,Q.jsx)(`option`,{value:`auto-review`,children:i(`settings:approval.autoReview`)}),(0,Q.jsx)(`option`,{value:`never`,children:i(`settings:approval.never`)})]}),n?(0,Q.jsx)(Q.Fragment,{children:(0,Q.jsxs)(Je,{"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,Q.jsx)(`option`,{value:`read-only`,children:i(`settings:sandbox.readOnly`)}),(0,Q.jsx)(`option`,{value:`workspace-write`,children:i(`settings:sandbox.workspaceWrite`)}),(0,Q.jsx)(`option`,{value:`danger-full-access`,children:i(`settings:sandbox.dangerFullAccess`)})]})}):null]})}function ed(e){return e.split(/[\\/]/u).filter(Boolean).at(-1)??e}function td({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,Q.jsxs)(vn,{onValueChange:e,value:n,children:[(0,Q.jsxs)(Tt,{"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,Q.jsx)(Gn,{"aria-hidden":`true`}),(0,Q.jsx)(tn,{children:ed(i.path)})]}),(0,Q.jsx)(At,{position:`popper`,children:t.map((e,t)=>(0,Q.jsx)(gt,{textValue:e.path,value:e.id,children:(0,Q.jsxs)(`span`,{className:`flex min-w-0 flex-col`,children:[(0,Q.jsx)(`span`,{className:`truncate`,children:ed(e.path)}),(0,Q.jsxs)(`span`,{className:`truncate font-mono text-caption text-muted-foreground`,children:[t===0?`${r(`projectPicker.primaryRoot`)} · `:``,e.path]})]})},e.id))})]})}function nd({action:e}){let t=`size-4 shrink-0 text-brand`;switch(e){case`review`:return(0,Q.jsx)(Nn,{"aria-hidden":`true`,className:t});case`initialize`:return(0,Q.jsx)(ct,{"aria-hidden":`true`,className:t});case`compact`:return(0,Q.jsx)(Ln,{"aria-hidden":`true`,className:t});case`fork`:return(0,Q.jsx)(Y,{"aria-hidden":`true`,className:t});case`plan`:return(0,Q.jsx)(Qn,{"aria-hidden":`true`,className:t});case`goal`:return(0,Q.jsx)(cr,{"aria-hidden":`true`,className:t})}}function rd({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?cr:Qn;return(0,Q.jsxs)(N,{children:[(0,Q.jsx)(P,{asChild:!0,children:(0,Q.jsxs)(rt,{"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,Q.jsx)(s,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-brand`}),(0,Q.jsx)(`span`,{className:`max-workbench:hidden`,children:a}),(0,Q.jsx)(Dt,{"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,Q.jsx)(I,{children:o})]})}function id({disabled:e,enabled:t,onChange:n}){let{t:r}=u(`workbench`),i=r(t?`composer.disableFastMode`:`composer.enableFastMode`);return(0,Q.jsxs)(N,{children:[(0,Q.jsx)(P,{asChild:!0,children:(0,Q.jsx)(rt,{"aria-label":i,"aria-pressed":t,className:t?`text-brand`:`text-muted-foreground`,"data-fast-mode":``,disabled:e,onClick:()=>{n(!t)},children:(0,Q.jsx)(fr,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,Q.jsx)(I,{children:i})]})}function ad(){let{t:e}=u(`workbench`),t=We();return t.files.length===0?null:(0,Q.jsx)(ot,{children:(0,Q.jsx)(fs,{"aria-label":e(`composer.addedAttachments`),children:t.files.map(e=>(0,Q.jsxs)(ps,{data:e,onRemove:()=>{t.remove(e.id)},children:[(0,Q.jsx)(ms,{}),(0,Q.jsx)(hs,{}),(0,Q.jsx)(gs,{disabled:t.disabled})]},e.id))})})}function od({props:e}){let{t}=u(`workbench`);return!e.commandMenuOpen||e.turnControlsDisabled?null:(0,Q.jsx)(Qe,{"aria-label":t(`composer.commandInput`),className:`absolute inset-x-0 bottom-full z-20 mb-2`,id:e.commandMenuId,children:(0,Q.jsx)(qe,{children:e.reviewMenuMode===`scopes`?(0,Q.jsxs)(tt,{label:t(`composer.reviewScopeGroup`),children:[(0,Q.jsxs)(it,{active:e.activeCommandIndex===0,id:`${e.commandMenuId}-item-0`,onClick:()=>{e.onExecuteReview({type:`uncommitted_changes`})},children:[(0,Q.jsx)(Nn,{"aria-hidden":`true`,className:`size-4 shrink-0 text-brand`}),(0,Q.jsx)(`span`,{className:`font-medium`,children:t(`composer.reviewUncommitted`)})]}),(0,Q.jsxs)(it,{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,Q.jsx)(Jn,{"aria-hidden":`true`,className:`size-4 shrink-0 text-brand`}),(0,Q.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,Q.jsx)(`span`,{className:`font-medium`,children:t(`composer.baseBranchReview`)}),(0,Q.jsx)(`span`,{className:`truncate text-caption text-muted-foreground`,children:e.baseBranches[0]??t(`composer.noBaseBranch`)})]})]})]}):e.reviewMenuMode===`branches`?(0,Q.jsx)(tt,{label:t(`composer.reviewBaseBranchGroup`),children:e.baseBranches.map((t,n)=>(0,Q.jsxs)(it,{active:e.activeCommandIndex===n,id:`${e.commandMenuId}-item-${String(n)}`,onClick:()=>{e.onExecuteReview({branch:t,type:`base_branch`})},children:[(0,Q.jsx)(Jn,{"aria-hidden":`true`,className:`size-4 shrink-0 text-brand`}),(0,Q.jsx)(`span`,{className:`truncate font-medium`,children:t})]},t))}):(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(tt,{label:t(`composer.commandGroup`),children:e.filteredCommands.map((t,n)=>{let r=e.getCommandAvailability(t);return(0,Q.jsxs)(it,{active:n===e.activeCommandIndex,"aria-description":r.reason,disabled:!r.available,id:`${e.commandMenuId}-item-${String(n)}`,onClick:()=>{e.onExecuteCommand(t)},children:[(0,Q.jsx)(nd,{action:t.action}),(0,Q.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,Q.jsx)(`span`,{className:`font-medium`,children:t.label}),(0,Q.jsx)(`span`,{className:`text-caption text-muted-foreground`,children:r.reason??t.description})]})]},t.id)})}),e.filteredSkills.length===0?null:(0,Q.jsx)(tt,{label:`Skills`,children:e.filteredSkills.map((t,n)=>{let r=e.filteredCommands.length+n;return(0,Q.jsxs)(it,{active:r===e.activeCommandIndex,id:`${e.commandMenuId}-item-${String(r)}`,onClick:()=>{e.onSelectSkill(t)},children:[(0,Q.jsx)(Ve,{"aria-hidden":`true`,className:`size-4 shrink-0 text-brand`}),(0,Q.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,Q.jsx)(`span`,{className:`font-medium text-brand`,children:t.displayName}),(0,Q.jsxs)(`span`,{className:`block max-w-full truncate text-caption text-muted-foreground`,children:[`/`,t.name,` · `,t.description]})]})]},t.id)})}),e.menuItemCount===0?(0,Q.jsx)(Ge,{children:t(`composer.commandNoMatch`)}):null]})})})}function sd(e,t){let n=e.slice(0,Math.max(0,e.length-t.length)).replace(/\/$/u,``);return n===``?`.`:n}function cd({props:e}){let{t}=u(`workbench`);return!e.fileMenuOpen||e.turnControlsDisabled?null:(0,Q.jsx)(Qe,{"aria-label":t(`composer.fileSearch`),className:`absolute inset-x-0 bottom-full z-20 mb-2`,id:e.commandMenuId,children:(0,Q.jsx)(qe,{children:e.fileSearchPending?(0,Q.jsx)(Ge,{children:t(`composer.fileSearchLoading`)}):e.fileSearchError===null?e.fileSearchResults.length===0?(0,Q.jsx)(Ge,{children:t(`composer.fileSearchEmpty`)}):(0,Q.jsx)(tt,{label:t(`composer.fileSearchGroup`),children:e.fileSearchResults.map((t,n)=>(0,Q.jsxs)(it,{active:n===e.activeCommandIndex,id:`${e.commandMenuId}-item-${String(n)}`,onClick:()=>{e.onSelectFileReference(t)},children:[(0,Q.jsx)(ut,{"aria-hidden":`true`,className:`size-4 shrink-0 text-muted-foreground`}),(0,Q.jsxs)(`span`,{className:`flex min-w-0 flex-1 items-baseline gap-2`,children:[(0,Q.jsx)(`span`,{className:`shrink-0 font-medium text-foreground`,children:t.name}),(0,Q.jsx)(`span`,{className:`min-w-0 truncate text-caption text-muted-foreground`,children:sd(t.path,t.name)})]})]},t.path))}):(0,Q.jsx)(Ge,{children:t(`composer.fileSearchFailed`)})})})}function ld(e,t){return e.text||e.skills.map(e=>`$${e.name}`).join(` `)||t}function ud({disabled:e,onOpen:t,projectPath:n}){let{t:r}=u(`workbench`),i=r(`composer.openProjectFolder`);return(0,Q.jsxs)(N,{children:[(0,Q.jsx)(P,{asChild:!0,children:(0,Q.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,Q.jsx)(be,{"aria-hidden":`true`,className:`size-3 shrink-0`}),(0,Q.jsx)(`span`,{className:`truncate`,children:n})]})}),(0,Q.jsx)(I,{children:i})]})}function dd({onOpen:e,onRootChange:t,projectPath:n,projectPathOpenDisabled:r,roots:i,selectedRootId:a}){return(0,Q.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-1`,"data-composer-project-root-controls":``,children:[(0,Q.jsx)(td,{onChange:t,roots:i,value:a}),(0,Q.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,Q.jsx)(ud,{disabled:r,onOpen:e,projectPath:n})})]})}function fd(e){let{t}=u([`workbench`,`settings`]);return(0,Q.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,Q.jsxs)(`div`,{className:`relative mx-auto w-full max-w-content`,ref:e.commandSurfaceRef,children:[(0,Q.jsx)(od,{props:e}),(0,Q.jsx)(cd,{props:e}),e.queuedPrompts.length===0?null:(0,Q.jsx)(`div`,{"aria-label":t(`composer.queuedMessages`),className:`mb-2 space-y-1.5`,role:`list`,children:e.queuedPrompts.map((n,r)=>{let i=ld(n,t(`composer.attachmentCount`,{count:n.files.length}));return(0,Q.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,Q.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-label text-foreground`,children:i}),n.status===`awaiting-response`?(0,Q.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,Q.jsx)(m,{"aria-hidden":`true`,className:`size-3.5 animate-spin`}),t(`composer.waitingToSend`)]}):(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(N,{children:[(0,Q.jsx)(P,{asChild:!0,children:(0,Q.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,Q.jsx)(V,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,Q.jsx)(I,{children:t(`composer.moveQueuedUpTooltip`)})]}),(0,Q.jsxs)(N,{children:[(0,Q.jsx)(P,{asChild:!0,children:(0,Q.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,Q.jsx)(On,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,Q.jsx)(I,{children:t(`composer.moveQueuedDownTooltip`)})]}),(0,Q.jsxs)(N,{children:[(0,Q.jsx)(P,{asChild:!0,children:(0,Q.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,Q.jsx)(Kt,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,Q.jsx)(I,{children:t(`composer.editQueuedTooltip`)})]}),(0,Q.jsxs)(N,{children:[(0,Q.jsx)(P,{asChild:!0,children:(0,Q.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,Q.jsx)(ar,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,Q.jsx)(I,{children:t(`composer.steerNowTooltip`)})]}),(0,Q.jsxs)(N,{children:[(0,Q.jsx)(P,{asChild:!0,children:(0,Q.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,Q.jsx)(Dt,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,Q.jsx)(I,{children:t(`composer.cancelQueuedTooltip`)})]})]})]},n.id)})}),(0,Q.jsxs)(ke,{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:il,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:al,children:[(0,Q.jsx)(ad,{}),(0,Q.jsxs)(et,{children:[(0,Q.jsx)(`input`,{name:`message`,type:`hidden`,value:e.promptSubmissionText}),(0,Q.jsx)(eu,{"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(!Ze(t.nativeEvent)){if(e.commandMenuOpen||e.fileMenuOpen){if(t.key===`ArrowDown`||t.key===`ArrowUp`){t.preventDefault(),e.setActiveCommandIndex(n=>vu(n,t.key===`ArrowDown`?1:-1,e.menuItemCount));return}t.key===`Enter`&&!Xe(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)&&Du(i,Yl(t.currentTarget),r)&&e.onPromptHistoryNavigate(r)&&t.preventDefault()}}},placeholder:ol(e.taskId),ref:e.skillEditorRef,skills:e.skills,scope:e.composerScope})]}),(0,Q.jsxs)($e,{className:`max-workbench:gap-0.5 max-workbench:px-1 max-[360px]:!gap-0 max-[360px]:!px-0`,children:[(0,Q.jsxs)(nt,{className:`max-workbench:shrink-0 max-workbench:gap-0.5 max-[360px]:!gap-0`,children:[(0,Q.jsx)(at,{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,Q.jsx)($u,{disabled:e.turnControlsDisabled,onSettingsChange:e.onSettingsChange,sandboxModeSelectable:e.sandboxModeSelectable,settings:e.activeSettings}),e.composerMode===void 0?null:(0,Q.jsx)(rd,{disabled:e.turnControlsDisabled,mode:e.composerMode,onRemove:e.onComposerModeRemove}),e.fastModeAvailable?(0,Q.jsx)(id,{disabled:e.turnControlsDisabled,enabled:e.fastModeEnabled,onChange:e.onFastModeChange}):null]}),(0,Q.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,Q.jsx)(Qu,{activeSettings:e.activeSettings,disabled:e.turnControlsDisabled,models:e.models,modelsPending:e.modelsPending,onSettingsChange:e.onSettingsChange,selectedModel:e.selectedModel,selectedReasoningEffort:e.selectedReasoningEffort}),(0,Q.jsx)(Ye,{"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,Q.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,Q.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,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`div`,{className:`flex min-w-0 shrink items-center gap-0.5`,children:(0,Q.jsx)(Ku,{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,Q.jsx)(dd,{onOpen:e.onOpenProjectPath,onRootChange:e.onProjectRootChange,projectPath:e.projectPath,projectPathOpenDisabled:e.projectPathOpenDisabled,roots:e.projectRoots,selectedRootId:e.selectedProjectRootId})]}):null,(0,Q.jsx)(Fu,{className:`ml-auto`,maxTokens:e.contextUsage?.contextWindow,usedTokens:e.contextUsage?.usedTokens,children:(0,Q.jsx)(Uu,{})})]})]})}function pd({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=ku({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:ee,attachmentsDisabled:B,baseBranches:V,canInterrupt:H,canSteer:U,canSubmit:W,clearComposerInput:G,closeCommandMenu:K,closeFileMenu:q,commandMenuId:J,commandMenuOpen:te,commandSurfaceRef:ne,composerMode:re,composerController:ie,composerScope:ae,contextUsage:oe,draftInputDisabled:se,filteredCommands:ce,filteredSkills:le,fileMenuOpen:ue,fileSearchError:de,fileSearchPending:fe,fileSearchResults:pe,handleAttachmentsChange:me,handlePromptChange:he,isSubmitting:ge,menuItemCount:_e,navigatePromptHistory:ve,pendingTask:ye,promptContent:be,promptSubmission:xe,referenceProjectPath:Se,reviewMenuMode:Ce,routeScope:we,selectedModel:Te,selectedReasoningEffort:Ee,selectFileReference:De,setActiveCommandIndex:Oe,setAttachmentPickerKind:ke,setIsSubmitting:Ae,setMutationError:Y,setComposerModeState:je,setReviewMenuMode:Me,setSettingsOverride:Ne,skillEditorRef:Pe,state:X,turnControlsDisabled:Fe}=M,[Ie,Le]=(0,Z.useState)(),Re=Ie?.scope===ae?Ie.enabled:i,ze=r&&Re,{actionLock:Be,interruptAttempt:Ve,isCurrentScope:He}=ie,Ue=(e,t)=>{Ne({scope:we,settings:e}),Y(null),Promise.resolve(h(e,t,Re)).catch(()=>void 0)},We=cu({client:n,gitStatus:E,isCurrentScope:He,projectId:b,rootPath:x,routeScope:we});(0,Z.useEffect)(()=>{Fe&&(K(),q())},[K,q,Fe]),(0,Z.useEffect)(()=>{if(!te&&!ue)return;let e=e=>{e.key===`Escape`&&(e.preventDefault(),K(),q())},t=e=>{let t=e.target;t instanceof Node&&!ne.current?.contains(t)&&(K(),q())};return document.addEventListener(`keydown`,e,!0),document.addEventListener(`pointerdown`,t,!0),()=>{document.removeEventListener(`keydown`,e,!0),document.removeEventListener(`pointerdown`,t,!0)}},[K,q,te,ne,ue]);let Ge=uu({activeTurnId:L,client:n,handleAttachmentsChange:me,projectId:b,replacePromptContent:M.replacePromptContent,routeScope:we,runtime:D,skillEditorRef:Pe,skills:k,taskId:A});(0,Z.useEffect)(()=>{Ge.queueError!==null&&Y(Ge.queueError)},[Ge.queueError,Y]);let Ke=Mu({activeUserMessageIds:D?.store===void 0?$c(D?.snapshot,L):el(D.store.getState(),L),activeSettings:F,activeTaskId:I,activeTurnId:L,canSteer:U,canSubmit:W,clearComposerInput:G,client:n,controller:ie,composerMode:re,followUpBehavior:a,fastMode:ze,onDirectSubmission:l,onGoalStarted:()=>{je(void 0)},onSteerAccepted:Ge.onSteerAccepted,onRequestNotificationPermission:m,onTaskCreated:_,onTaskStarted:v,onTurnStarted:y,pendingTask:ye,projectId:b,promptContent:be,routeScope:we,selectedModel:Te,selectedReasoningEffort:Ee,saveQueuedSubmission:Ge.saveQueuedSubmission,skillEditorRef:Pe,state:X,taskId:A,t:j,turnControlsDisabled:Fe});(0,Z.useImperativeHandle)(e,()=>({buildPlan:()=>(je(void 0),Ke({files:[],text:j(`composer.buildPlanPrompt`)},[],{composerMode:null,forceAction:`start`})),referenceProjectPath:Se}));let{executePromptCommand:qe,executeReviewTarget:Je,getCommandAvailability:Ye,selectActiveCommandItem:Xe,selectSkill:Ze}=yu({capabilities:t,client:n,onRequestNotificationPermission:m,onTaskCreated:_,onTaskStarted:v,projectId:b,session:M,submitPrompt:Ke,t:j,taskId:A}),Qe=async()=>{let e=we;!H||I===void 0||L===void 0||Fe||await Be.run(async()=>{let t=`${I}:${L}`;Ae(!0),Y(null);let r=sl(Ve.current,t);Ve.current=r;try{await vl(n,b,I,L,r.key)}catch(t){He(e)&&Y(t instanceof Error?t:Error(`Turn interruption failed`))}finally{He(e)&&Ae(!1)}})},$e=!Bl(be)||R>0,et=fl(X,$e,a,U),tt=(0,Q.jsx)(fd,{activeCommandIndex:N,activeCommandItemId:P,activeSettings:F,activeTurnId:L,attachments:ee,attachmentsDisabled:B,baseBranches:V,canInterrupt:H,canSteer:U,canSubmit:W,commandMenuId:J,commandMenuOpen:te,commandSurfaceRef:ne,composerMode:re,composerScope:ae,contextUsage:oe,creatingBranch:We.creatingBranch,creatingWorktree:We.creatingWorktree,draftInputDisabled:se,filteredCommands:ce,filteredSkills:le,fileMenuOpen:ue,fileSearchError:de,fileSearchPending:fe,fileSearchResults:pe,fastModeAvailable:r,fastModeEnabled:ze,getCommandAvailability:Ye,gitStatus:E,hasComposerInput:$e,isSubmitting:ge,menuItemCount:_e,moveQueuedPrompt:(e,t)=>{Ge.moveQueuedPrompt(e,t).catch(Y)},models:o,modelsError:s,modelsPending:c,editQueuedPrompt:Ge.editQueuedPrompt,onComposerModeRemove:()=>{je(void 0)},onAttachmentsChange:me,onBranchCreate:We.createBranch,onBranchChange:e=>{We.switchBranch(e)},onWorktreeChange:e=>{We.switchWorktree(e)},onWorktreeCreate:We.createWorktree,onExecuteCommand:e=>{qe(e)},onExecuteReview:e=>{Je(e)},onFastModeChange:e=>{Le({enabled:e,scope:ae}),Promise.resolve(d(e,F)).catch(()=>void 0)},onInterrupt:()=>{Qe()},onOpenProjectPath:f,onProjectRootChange:p,onOpenReviewBranches:()=>{Oe(0),Me(`branches`)},onPromptChange:he,onPromptHistoryNavigate:ve,onSelectActiveCommand:Xe,onSelectAttachmentKind:ke,onSelectFileReference:De,onSelectSkill:Ze,onSettingsChange:Ue,onSubmit:e=>void Ke(e),onViewError:e=>{Y(e)},projectPath:x,projectPathOpenDisabled:S,projectRoots:C,projectToolsEnabled:w,promptContent:be,promptSubmissionText:xe.text,queuedPrompts:Ge.queuedPrompts,removeQueuedPrompt:e=>{Ge.removeQueuedPrompt(e).catch(Y)},reviewMenuMode:Ce,sandboxModeSelectable:!0,selectedModel:Te,selectedReasoningEffort:Ee,selectedProjectRootId:T,setActiveCommandIndex:Oe,skills:k,skillEditorRef:Pe,state:X,steerQueuedPrompt:e=>{Ge.sendQueuedPrompt(e,Ke).catch(Y)},submitAction:et,switchingBranch:We.switchingBranch,switchingWorktree:We.switchingWorktree,taskId:A,turnControlsDisabled:Fe,worktrees:We.worktrees,worktreesError:We.worktreesError,worktreesPending:We.worktreesPending});return z===void 0?tt:(0,Q.jsxs)(Q.Fragment,{children:[tt,(0,Q.jsx)(Sl,{client:n,kind:z,onAdd:e=>{He(we)&&(me([...ee,e]),ke(void 0))},onClose:()=>{ke(void 0)},projectId:b})]})}var md=8;function hd(e,t,n){return Math.min(n,Math.max(t,e))}function gd({direction:e,label:t,maximumWidth:n,minimumWidth:r,onResize:i,onResizeEnd:a,onResizeStart:o,panel:s,width:c}){let l=(0,Z.useRef)(null),u=e=>{let t=l.current;t?.pointerId===e.pointerId&&(l.current=null,e.currentTarget.hasPointerCapture(e.pointerId)&&e.currentTarget.releasePointerCapture(e.pointerId),a(t.currentWidth))};return(0,Q.jsx)(`div`,{"aria-label":t,"aria-orientation":`vertical`,"aria-valuemax":n,"aria-valuemin":r,"aria-valuenow":c,className:`workbench-panel-resizer workbench-panel-resizer--${s}`,onKeyDown:t=>{if(t.key!==`ArrowLeft`&&t.key!==`ArrowRight`)return;t.preventDefault();let o=hd(c+(t.key===`ArrowLeft`?-8:md)*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=hd(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 _d=(0,Z.lazy)(()=>rn(()=>import(`./patch-diff-viewer-BlbG4Z8Q.js`),__vite__mapDeps([17,3,6,5,7,8,9,10,11,12,13,14,1,2,4,18,19])));function vd({change:e,onClose:t}){let{t:n}=u(`workbench`);if(e===null)return null;let r=Tn(e.path),{additions:i,removals:a}=En(e),o=`file-diff-dialog-title`;return(0,Q.jsx)(pt,{onOpenChange:e=>{e||t()},open:!0,children:(0,Q.jsx)(en,{"aria-labelledby":o,className:`h-[min(82dvh,54rem)] max-w-[72rem] overflow-hidden p-0`,children:(0,Q.jsxs)(`section`,{className:`grid h-full min-h-0 w-full min-w-0 grid-rows-[auto_minmax(0,1fr)] bg-raised`,children:[(0,Q.jsxs)(`header`,{className:`flex min-h-toolbar min-w-0 items-center gap-3 px-3 shadow-toolbar sm:px-4`,children:[(0,Q.jsx)(Le,{className:`size-4 shrink-0 text-muted-foreground`,"aria-hidden":`true`}),(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Q.jsx)(_t,{className:`truncate text-body-small`,id:o,title:e.path,children:r}),(0,Q.jsx)(`p`,{className:`truncate text-caption text-muted-foreground`,title:e.path,children:e.path})]}),(0,Q.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 text-label font-medium`,children:[(0,Q.jsxs)(`span`,{className:`text-diff-added`,children:[`+`,i]}),(0,Q.jsxs)(`span`,{className:`text-diff-removed`,children:[`-`,a]}),(0,Q.jsxs)(N,{children:[(0,Q.jsx)(P,{asChild:!0,children:(0,Q.jsx)(l,{"aria-label":n(`diff.close`),onClick:t,size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,Q.jsx)(Dt,{className:`size-3.5`,"aria-hidden":`true`})})}),(0,Q.jsx)(I,{children:n(`diff.close`)})]})]})]}),(0,Q.jsx)(`div`,{className:`min-h-0 min-w-0 overflow-auto bg-content`,children:(0,Q.jsx)(Z.Suspense,{fallback:(0,Q.jsx)(`div`,{className:`grid min-h-48 place-items-center text-body-small text-muted-foreground`,role:`status`,children:n(`diff.loading`)}),children:(0,Q.jsx)(_d,{change:e})})})]})})})}var yd=`codexly:workbench:markdown-preview:v1`;function bd(){try{return typeof window>`u`?void 0:window.localStorage}catch{return}}function xd(e){if(e===void 0)return!1;try{let t=JSON.parse(e.getItem(yd)??`null`);return Cd(t)?t.preview:!1}catch{return!1}}function Sd(e,t){if(t===void 0)return;let n={preview:e,version:1};try{t.setItem(yd,JSON.stringify(n))}catch{}}function Cd(e){if(typeof e!=`object`||!e)return!1;let t=e;return t.version===1&&typeof t.preview==`boolean`}function wd(e){return e.split(/[\\/]/u).at(-1)??e}function Td({actions:e,lineNumber:t,onClose:n,previewKind:r,sourcePath:i,sourceStatus:a}){let{t:o}=u(`workbench`);return(0,Q.jsxs)(oc,{className:`min-h-toolbar gap-3 overflow-hidden bg-raised px-3 shadow-toolbar sm:px-4`,children:[(0,Q.jsxs)(sc,{className:`w-0 flex-1 overflow-hidden`,children:[r===`image`?(0,Q.jsx)(Zn,{className:`size-4 shrink-0 text-muted-foreground`,"aria-hidden":`true`}):(0,Q.jsx)(Le,{className:`size-4 shrink-0 text-muted-foreground`,"aria-hidden":`true`}),(0,Q.jsxs)(N,{children:[(0,Q.jsx)(P,{asChild:!0,children:(0,Q.jsxs)(`div`,{className:`w-0 flex-1 overflow-hidden`,children:[(0,Q.jsx)(`h2`,{className:`truncate text-body-small font-semibold`,children:(0,Q.jsxs)(cc,{children:[wd(i),t===null?null:` (line ${String(t)})`]})}),(0,Q.jsx)(`p`,{className:`truncate text-caption text-muted-foreground`,children:i})]})}),(0,Q.jsx)(I,{className:`break-all`,children:i})]})]}),a===null?null:(0,Q.jsx)(`span`,{className:`shrink-0 text-label ${a===`error`?`text-danger`:`text-warning`}`,role:a===`error`?`alert`:`status`,children:o(a===`loading`?`projectDialog.loadingMoreSource`:a===`error`?`projectDialog.loadMoreSourceError`:`projectDialog.sourcePartial`)}),(0,Q.jsxs)(lc,{children:[e,n===void 0?null:(0,Q.jsxs)(N,{children:[(0,Q.jsx)(P,{asChild:!0,children:(0,Q.jsx)(l,{"aria-label":o(r===`image`?`projectDialog.closeImagePreview`:`projectDialog.closeSource`),onClick:n,size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,Q.jsx)(Dt,{className:`size-3.5`,"aria-hidden":`true`})})}),(0,Q.jsx)(I,{children:o(r===`image`?`projectDialog.closeImagePreview`:`projectDialog.closeSource`)})]})]})]})}var Ed=400;function Dd(e){return e.scrollHeight-e.scrollTop-e.clientHeight<=Ed}function Od(e,t){return e.nextCursor===null||e.nextCursor===t?void 0:e.nextCursor}function kd(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 Ad({client:e,onClose:t,previewKind:n,projectId:r,reference:i,rootPath:a}){let{t:o}=u(`workbench`),s=(0,Z.useRef)(null),[c,d]=(0,Z.useState)(()=>xd(bd())),[f,p]=(0,Z.useState)(!1),m=_n({enabled:n===`source`,getNextPageParam:(e,t,n)=>Od(e,n),initialPageParam:void 0,queryFn:async({pageParam:t,signal:n})=>e.readProjectSourceFile(r,a,i.path,t,{signal:n}),queryKey:[`projects`,r,a??null,`source-file`,i.path],staleTime:3e4}),h=m.data?.pages,_=m.fetchNextPage,v=m.hasNextPage,y=m.isFetchingNextPage,b=(0,Z.useMemo)(()=>h===void 0?void 0:kd(h),[h]),x=b?.path??i.path,S=b?.content??``,C=wd(x),w=g(``,r,i.path,a),T=Cn(x),E=(T===`markdown`||T===`mdx`)&&b?.nextCursor===null,D=E&&c;(0,Z.useEffect)(()=>{p(!1)},[n,i.path]),(0,Z.useEffect)(()=>{let e=i.lineNumber;if(b===void 0||e===null||D)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,b,D]);let O=b===void 0?null:y?`loading`:m.isFetchNextPageError?`error`:v?`partial`:null,k={lineNumber:i.lineNumber,...t===void 0?{}:{onClose:t},previewKind:n,sourcePath:x,sourceStatus:O},A=e=>{if(n!==`source`||!v||y)return;let t=e.target;!(t instanceof HTMLElement)||!Dd(t)||_()},j=e=>{d(e),Sd(e,bd())};return(0,Q.jsx)(`section`,{"aria-label":x,className:`h-full min-h-0 bg-raised`,onScrollCapture:A,ref:s,children:n===`image`?(0,Q.jsxs)(`div`,{className:`grid h-full min-h-0 grid-rows-[auto_minmax(0,1fr)] bg-content`,children:[(0,Q.jsx)(Td,{...k}),(0,Q.jsx)(`div`,{className:`grid min-h-0 place-items-center overflow-hidden p-4 sm:p-6`,children:f?(0,Q.jsx)(`div`,{className:`text-body-small text-danger`,role:`alert`,children:o(`projectDialog.loadImageError`)}):(0,Q.jsx)(`img`,{alt:C,className:`block size-full object-contain`,decoding:`async`,onError:()=>{p(!0)},src:w})})]}):b===void 0&&m.isPending?(0,Q.jsxs)(`div`,{className:`grid h-full min-h-0 grid-rows-[auto_minmax(0,1fr)]`,children:[(0,Q.jsx)(Td,{...k}),(0,Q.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,Q.jsxs)(`div`,{className:`grid h-full min-h-0 grid-rows-[auto_minmax(0,1fr)]`,children:[(0,Q.jsx)(Td,{...k}),(0,Q.jsx)(`div`,{className:`grid min-h-48 place-items-center text-body-small text-danger`,role:`alert`,children:o(`projectDialog.loadSourceError`)})]}):D?(0,Q.jsxs)(`div`,{className:`grid h-full min-h-0 grid-rows-[auto_minmax(0,1fr)] bg-content`,children:[(0,Q.jsx)(Td,{...k,actions:(0,Q.jsxs)(N,{children:[(0,Q.jsx)(P,{asChild:!0,children:(0,Q.jsx)(l,{"aria-label":o(`projectDialog.showRawContent`),onClick:()=>{j(!1)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,Q.jsx)(Vn,{className:`size-3.5`,"aria-hidden":`true`})})}),(0,Q.jsx)(I,{children:o(`projectDialog.showRawContent`)})]})}),(0,Q.jsx)(`div`,{className:`min-h-0 overflow-auto px-5 py-4 sm:px-8 sm:py-6`,children:(0,Q.jsx)(Ne,{className:`mx-auto max-w-4xl`,children:S})})]}):(0,Q.jsx)(ac,{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,Q.jsx)(Td,{...k,actions:(0,Q.jsxs)(Q.Fragment,{children:[E?(0,Q.jsxs)(N,{children:[(0,Q.jsx)(P,{asChild:!0,children:(0,Q.jsx)(l,{"aria-label":o(`projectDialog.previewMarkdown`),onClick:()=>{j(!0)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,Q.jsx)(fn,{className:`size-3.5`,"aria-hidden":`true`})})}),(0,Q.jsx)(I,{children:o(`projectDialog.previewMarkdown`)})]}):null,(0,Q.jsx)(uc,{})]})})})})}function jd(e){return e.split(/[\\/]/u).at(-1)??e}function Md({client:e,onClose:t,previewKind:n,projectId:r,reference:i,rootPath:a}){let o=`project-source-dialog-title`;return(0,Q.jsx)(pt,{onOpenChange:e=>{e||t()},open:!0,children:(0,Q.jsxs)(en,{"aria-labelledby":o,className:`h-[min(82dvh,54rem)] max-w-[72rem] overflow-hidden p-0`,children:[(0,Q.jsx)(_t,{className:`sr-only`,id:o,children:jd(i.path)}),(0,Q.jsx)(Ad,{client:e,onClose:t,previewKind:n,projectId:r,reference:i,...a===void 0?{}:{rootPath:a}})]})})}function Nd({message:e,role:t}){return(0,Q.jsx)(`div`,{className:`grid min-h-0 flex-1 place-items-center px-6 text-sm text-muted-foreground`,role:t,children:e})}function Pd({onClose:e,projectId:t,projectRuntime:n,selection:r}){return r===null?null:(0,Q.jsx)(Fd,{onClose:e,projectId:t,projectRuntime:n,selection:r})}function Fd({onClose:e,projectId:t,projectRuntime:n,selection:r}){let{t:i}=u(`workbench`),a=xt(t,r.taskId,n),o=`subagent-output-dialog-title`,s;return s=a.error===null?a.isPending||a.snapshot===void 0?(0,Q.jsx)(Nd,{message:i(`subagentOutput.loading`),role:`status`}):(0,Q.jsxs)(Q.Fragment,{children:[a.connectionState===`reconnecting`?(0,Q.jsx)(`div`,{className:`bg-control px-3 py-1.5 text-center text-label text-muted-foreground`,role:`status`,children:i(`subagentOutput.reconnecting`)}):null,(0,Q.jsx)(qc,{projectId:t,runtime:a,taskId:r.taskId})]}):(0,Q.jsx)(Nd,{message:i(`subagentOutput.error`),role:`alert`}),(0,Q.jsx)(pt,{onOpenChange:t=>{t||e()},open:!0,children:(0,Q.jsx)(en,{"aria-labelledby":o,className:`h-[min(86dvh,58rem)] max-w-[76rem] overflow-hidden p-0`,"data-subagent-output-dialog":``,children:(0,Q.jsxs)(`section`,{className:`grid h-full min-h-0 grid-rows-[auto_minmax(0,1fr)] bg-raised`,children:[(0,Q.jsxs)(`header`,{className:`flex min-h-toolbar items-center gap-3 px-3 shadow-toolbar sm:px-4`,children:[(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Q.jsx)(_t,{className:`truncate text-body-small`,id:o,children:i(`subagentOutput.title`)}),(0,Q.jsx)(`p`,{className:`truncate text-caption text-muted-foreground`,title:r.taskId,children:r.taskId})]}),(0,Q.jsx)(Ka,{collapsible:!1,status:Ri(r.status),children:(0,Q.jsx)(Ja,{title:i(`subagentOutput.task`,{taskId:r.taskId})})}),(0,Q.jsx)(l,{"aria-label":i(`subagentOutput.close`),onClick:e,size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,Q.jsx)(Dt,{className:`size-3.5`,"aria-hidden":`true`})})]}),(0,Q.jsx)(`div`,{className:`flex min-h-0 flex-col overflow-hidden bg-content`,children:s})]})})})}var Id=(0,Z.lazy)(()=>Ut().then(e=>({default:e.GlobalSettingsDialog})));function Ld({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,selectedFileReview:y,selectedProjectFileDialog:b,selectedRootPath:x,selectedSubagent:S,setFileReviewSelection:C,setGlobalSettingsSection:w,setProjectFileDialogSelection:T,setSubagentDialogSelection:E,taskRenameOpen:D,title:O}=e;return(0,Q.jsxs)(Q.Fragment,{children:[b?.kind===`diff`?(0,Q.jsx)(vd,{change:b.change,onClose:()=>{T(null)}}):b===null?null:(0,Q.jsx)(Md,{client:s,onClose:()=>{T(null)},previewKind:b.kind,projectId:t,reference:b.reference,...x===void 0?{}:{rootPath:x}}),y===null?null:(0,Q.jsx)(Be,{changes:y,onClose:()=>{C(null)}}),(0,Q.jsx)(Pd,{onClose:()=>{E(null)},projectId:t,projectRuntime:g,selection:S}),D&&r!==void 0?(0,Q.jsx)(kt,{initialTitle:O,isPending:v.isPending,onClose:c,onRename:e=>void _(e)},`${t}:${r}`):null,u===null?null:(0,Q.jsx)(Z.Suspense,{fallback:null,children:(0,Q.jsx)(Id,{...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`;w(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 Rd=(0,Z.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,Z.useState)(0),{beginSubmission:P,getStartedAt:F,handleSubmissionStateChange:I,startedAt:R}=Zi(),[z,ee]=(0,Z.useState)(()=>({prompt:T,taskScope:j})),B=z.taskScope===j?z.prompt:T,V=R??B?.submissionStartedAt,H=R===void 0?B?.turn.id:void 0,U=S.snapshot===void 0||B===void 0?S.snapshot:Gt(S.snapshot,B.turn,{...B.input,messageAttachments:B.messageAttachments}),W=U===S.snapshot?S:{...S,snapshot:U};(0,Z.useEffect)(()=>{let e=S.store;if(e===void 0||B===void 0)return;let t=e.getState(),n=t.reconstructSnapshot();if(n===void 0||t.checkpoint===null)return;let r=Gt(n,B.turn,{...B.input,messageAttachments:B.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,B]);let G=J({...ce(h,E,t),onSuccess(e){A.setQueryData([`projects`,h,`tasks`,E],t=>t===void 0?t:{...t,snapshot:{...t.snapshot,settings:e.settings}})}}),K=(e,n,r)=>t.resolvePendingRequest(e,n,{idempotencyKey:r}).then(()=>void 0);return(0,Q.jsxs)(Q.Fragment,{children:[(0,Z.createElement)(qc,{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:K,projectId:h,key:j,runtime:W,scrollToBottomSignal:M,...V===void 0?{}:{submissionStartedAt:V},...H===void 0?{}:{submissionTurnId:H},taskId:E,...w===void 0?{}:{startingSnapshot:w}}),(0,Q.jsx)(pd,{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([G.mutateAsync(e),d(e,n)]).then(()=>void 0),onSubmissionStateChange:I,onTaskStarted:m,onTurnStarted:(e,t,n)=>{let r=F()??e.startedAt;ee({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:W,settings:U?.settings??w?.settings??r,skills:C,taskId:E})]})}),zd=(0,Z.lazy)(()=>rn(()=>import(`./patch-diff-viewer-BlbG4Z8Q.js`),__vite__mapDeps([17,3,6,5,7,8,9,10,11,12,13,14,1,2,4,18,19])));function Bd({change:e}){let{t}=u(`workbench`),{additions:n,removals:r}=En(e);return(0,Q.jsxs)(`section`,{"aria-label":e.path,className:`grid h-full min-h-0 min-w-0 grid-rows-[auto_minmax(0,1fr)] bg-raised`,children:[(0,Q.jsxs)(oc,{className:`min-h-toolbar gap-3 overflow-hidden bg-raised px-3 shadow-toolbar sm:px-4`,children:[(0,Q.jsxs)(sc,{className:`w-0 flex-1 overflow-hidden`,children:[(0,Q.jsx)(Le,{className:`size-4 shrink-0 text-muted-foreground`,"aria-hidden":`true`}),(0,Q.jsxs)(N,{children:[(0,Q.jsx)(P,{asChild:!0,children:(0,Q.jsxs)(`div`,{className:`w-0 flex-1 overflow-hidden`,children:[(0,Q.jsx)(`h2`,{className:`truncate text-body-small font-semibold`,children:Tn(e.path)}),(0,Q.jsx)(`p`,{className:`truncate text-caption text-muted-foreground`,children:e.path})]})}),(0,Q.jsx)(I,{className:`break-all`,children:e.path})]})]}),(0,Q.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 text-label font-medium`,children:[(0,Q.jsxs)(`span`,{className:`text-diff-added`,children:[`+`,n]}),(0,Q.jsxs)(`span`,{className:`text-diff-removed`,children:[`-`,r]})]})]}),(0,Q.jsx)(`div`,{className:`min-h-0 min-w-0 overflow-auto bg-content`,children:(0,Q.jsx)(Z.Suspense,{fallback:(0,Q.jsx)(`div`,{className:`grid min-h-48 place-items-center text-body-small text-muted-foreground`,role:`status`,children:t(`diff.loading`)}),children:(0,Q.jsx)(zd,{change:e})})})]})}function Vd(e){return(0,Q.jsx)(Dr,{"data-slot":`collapsible`,...e})}function Hd(e){return(0,Q.jsx)(Or,{"data-slot":`collapsible-trigger`,...e})}function Ud(e){return(0,Q.jsx)(kr,{"data-slot":`collapsible-content`,...e})}function Wd({error:e,isPending:t,onTerminate:n,terminals:r,terminatingTerminalId:i}){return(0,Q.jsx)(Zd,{icon:(0,Q.jsx)(sr,{className:`size-3.5`}),title:d.t(`inspector.terminals`,{ns:`conversation`}),children:(0,Q.jsx)(`section`,{"aria-label":d.t(`inspector.terminals`,{ns:`conversation`}),children:t&&r.length===0?(0,Q.jsx)(`p`,{className:`px-2 py-2 text-caption text-muted-foreground`,children:d.t(`inspector.terminalLoading`,{ns:`conversation`})}):e!==null&&r.length===0?(0,Q.jsx)(`p`,{className:`px-2 py-2 text-caption text-diff-removed`,children:d.t(`inspector.terminalError`,{ns:`conversation`})}):(0,Q.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,Q.jsxs)(`div`,{className:`flex items-center gap-1 rounded-control px-2 py-1.5 hover:bg-control-hover`,children:[(0,Q.jsx)(m,{"aria-label":d.t(`inspector.terminalRunning`,{ns:`conversation`}),className:`size-3.5 shrink-0 animate-spin text-muted-foreground`}),(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Q.jsx)(`p`,{className:`truncate text-label font-medium text-foreground`,title:e.command,children:e.command}),(0,Q.jsx)(`p`,{className:`truncate text-caption text-muted-foreground`,title:e.cwd,children:e.cwd})]}),(0,Q.jsxs)(N,{children:[(0,Q.jsx)(P,{asChild:!0,children:(0,Q.jsx)(l,{"aria-label":t,disabled:i!==null,onClick:()=>void n(e.id),size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,Q.jsx)(st,{"aria-hidden":`true`,className:`size-3`})})}),(0,Q.jsx)(I,{children:t})]})]},e.id)})})})})}function Gd({onOpenSubagent:e,subagents:t}){return(0,Q.jsx)(Zd,{icon:(0,Q.jsx)(Me,{className:`size-3.5`}),title:d.t(`inspector.subagents`,{ns:`conversation`}),children:(0,Q.jsxs)(`section`,{"aria-label":d.t(`inspector.subagents`,{ns:`conversation`}),children:[(0,Q.jsx)(`p`,{className:`mb-1 px-2 text-caption text-muted-foreground`,children:d.t(`inspector.subagentCount`,{count:t.length,ns:`conversation`})}),(0,Q.jsx)(`div`,{className:`space-y-1`,children:t.map(t=>{let n=[t.model===void 0?void 0:Li(t.model),t.reasoningEffort].filter(e=>e!==void 0);return(0,Q.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,Q.jsx)(Ka,{collapsible:!1,status:Ri(t.status),children:(0,Q.jsx)(Ja,{title:t.nickname})}),n.length===0?null:(0,Q.jsx)(`p`,{className:`pb-2 text-caption text-muted-foreground`,children:n.join(` · `)})]},t.taskId)})})]})})}function Kd({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,Q.jsx)(Zd,{action:e?(0,Q.jsxs)(N,{children:[(0,Q.jsx)(P,{asChild:!0,children:(0,Q.jsx)(l,{"aria-label":s,disabled:r||i,onClick:a,size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,Q.jsx)(X,{"aria-hidden":`true`,className:r||i?`animate-spin`:void 0})})}),(0,Q.jsx)(I,{children:s})]}):null,icon:(0,Q.jsx)(ir,{className:`size-3.5`}),title:`MCP`,children:n&&o.length===0?(0,Q.jsxs)(`p`,{className:`flex min-h-9 items-center gap-2 px-2 py-2 text-caption text-muted-foreground`,children:[(0,Q.jsx)(m,{"aria-hidden":`true`,className:`size-3.5 animate-spin`}),d.t(`inspector.mcpLoading`,{ns:`conversation`})]}):t!==null&&o.length===0?(0,Q.jsx)(Yd,{error:t,titleKey:`inspector.mcpError`}):o.length===0?(0,Q.jsx)(`p`,{className:`px-2 py-2 text-caption text-muted-foreground`,children:d.t(`inspector.mcpEmpty`,{ns:`conversation`})}):(0,Q.jsx)(`div`,{"aria-label":d.t(`inspector.mcpEnabled`,{ns:`conversation`}),className:`space-y-0.5`,children:o.map(e=>(0,Q.jsx)(Xd,{server:e},e.name))})})}function qd(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 Jd({error:e}){return(0,Q.jsxs)(Vd,{children:[(0,Q.jsx)(Hd,{asChild:!0,children:(0,Q.jsxs)(l,{className:`group h-7 justify-start px-0 text-caption`,type:`button`,variant:`link`,children:[(0,Q.jsx)(Ce,{"aria-hidden":`true`,className:`transition-transform group-data-[state=open]:rotate-90`,"data-icon":`inline-start`}),d.t(`inspector.mcpErrorLog`,{ns:`conversation`})]})}),(0,Q.jsx)(Ud,{className:`data-[state=closed]:hidden`,forceMount:!0,children:(0,Q.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 Yd({error:e,titleKey:t}){let n=qd(e);return(0,Q.jsxs)(`div`,{className:`flex items-start gap-2 px-2 py-1.5`,role:`alert`,children:[(0,Q.jsx)(cn,{"aria-hidden":`true`,className:`mt-0.5 size-3.5 shrink-0 text-danger`}),(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Q.jsx)(`p`,{className:`text-label font-medium text-danger`,children:d.t(t,{ns:`conversation`})}),(0,Q.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,Q.jsx)(`p`,{className:`mt-1 text-meta text-muted-foreground`,children:n})]})]})}function Xd({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,Q.jsxs)(`div`,{className:`flex min-h-10 items-start gap-2 rounded-control px-2 py-1.5`,children:[(0,Q.jsx)(`span`,{className:`mt-0.5 shrink-0`,children:e.status===`ready`?(0,Q.jsx)(Ie,{"aria-hidden":`true`,className:`size-3.5 text-brand`}):e.status===`starting`?(0,Q.jsx)(m,{"aria-hidden":`true`,className:`size-3.5 animate-spin text-muted-foreground`}):e.status===`failed`?(0,Q.jsx)(zn,{"aria-hidden":`true`,className:`size-3.5 text-danger`}):(0,Q.jsx)(Rn,{"aria-hidden":`true`,className:`size-3.5 text-warning`})}),(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Q.jsx)(`p`,{className:`truncate text-label font-medium text-foreground`,title:e.name,children:e.name}),(0,Q.jsx)(`p`,{className:`text-caption text-muted-foreground`,children:t.join(` · `)}),e.failureReason===null?null:(0,Q.jsx)(`p`,{className:`text-caption text-danger`,children:d.t(`inspector.mcpFailureReason.${e.failureReason}`,{ns:`conversation`})}),e.error===null?null:(0,Q.jsx)(Jd,{error:e.error})]})]})}function Zd({action:e,children:t,icon:n,title:r}){return(0,Q.jsxs)(`section`,{"aria-label":r,children:[(0,Q.jsxs)(`div`,{className:`mb-2 flex min-h-7 items-center justify-between gap-2 text-xs font-medium text-foreground`,children:[(0,Q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,Q.jsx)(`span`,{className:`text-muted-foreground`,children:n}),r]}),e]}),(0,Q.jsx)(`div`,{className:`space-y-0.5`,children:t})]})}async function Qd(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 $d({name:e,triggerChildren:t,triggerClassName:n,url:r}){u(`conversation`);let[i,a]=(0,Z.useState)(!1),o=(0,Z.useId)(),s=j({enabled:i,queryFn:({signal:e})=>Qd(r,e),queryKey:[`task-attachment-source`,r],staleTime:3e4}),c=d.t(`projectDialog.closeSource`,{ns:`workbench`});return(0,Q.jsxs)(pt,{onOpenChange:a,open:i,children:[(0,Q.jsx)(bt,{asChild:!0,children:(0,Q.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,Q.jsx)(en,{"aria-labelledby":o,className:`h-[min(82dvh,54rem)] max-w-[72rem] overflow-hidden p-0`,children:s.data===void 0?(0,Q.jsxs)(`section`,{className:`grid h-full min-h-0 grid-rows-[auto_minmax(0,1fr)] bg-raised`,children:[(0,Q.jsxs)(`header`,{className:`flex min-h-toolbar items-center gap-3 px-3 shadow-toolbar sm:px-4`,children:[(0,Q.jsx)(Le,{"aria-hidden":`true`,className:`size-4 shrink-0 text-muted-foreground`}),(0,Q.jsx)(_t,{className:`min-w-0 flex-1 truncate text-body-small`,id:o,children:e}),(0,Q.jsx)(ef,{label:c,onClose:()=>{a(!1)}})]}),(0,Q.jsx)(`div`,{className:`grid min-h-0 place-items-center text-body-small ${s.error===null?`text-muted-foreground`:`text-danger`}`,role:s.error===null?`status`:`alert`,children:d.t(s.error===null?`projectDialog.loadingSource`:`projectDialog.loadSourceError`,{ns:`workbench`})})]}):(0,Q.jsx)(ac,{className:`grid h-full min-h-0 grid-rows-[auto_minmax(0,1fr)] rounded-none bg-content shadow-none`,code:s.data,language:Cn(e),showLineNumbers:!0,children:(0,Q.jsxs)(oc,{className:`min-h-toolbar gap-3 bg-raised px-3 shadow-toolbar sm:px-4`,children:[(0,Q.jsxs)(sc,{className:`min-w-0 flex-1`,children:[(0,Q.jsx)(Le,{"aria-hidden":`true`,className:`size-4 shrink-0 text-muted-foreground`}),(0,Q.jsx)(_t,{asChild:!0,children:(0,Q.jsx)(`h2`,{className:`truncate text-body-small font-semibold`,id:o,title:e,children:(0,Q.jsx)(cc,{children:e})})})]}),(0,Q.jsxs)(lc,{children:[(0,Q.jsx)(uc,{}),(0,Q.jsx)(ef,{label:c,onClose:()=>{a(!1)}})]})]})})})]})}function ef({label:e,onClose:t}){return(0,Q.jsxs)(N,{children:[(0,Q.jsx)(P,{asChild:!0,children:(0,Q.jsx)(l,{"aria-label":e,onClick:t,size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,Q.jsx)(Dt,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,Q.jsx)(I,{children:e})]})}function tf(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 nf(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 · ${tf(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 rf=`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 af({source:e}){return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`span`,{className:`shrink-0 text-muted-foreground`,children:e.kind===`project`?(0,Q.jsx)(Kn,{"aria-hidden":`true`,className:`size-3.5`}):e.kind===`skill`?(0,Q.jsx)(Ve,{"aria-hidden":`true`,className:`size-3.5 text-brand`}):(0,Q.jsx)(lt,{"aria-hidden":`true`,className:`size-3.5`})}),(0,Q.jsxs)(`div`,{className:`min-w-0`,children:[(0,Q.jsx)(`p`,{className:`truncate text-label font-medium text-foreground`,title:e.name,children:e.name}),e.kind===`project`?(0,Q.jsxs)(`p`,{className:`truncate text-caption text-muted-foreground`,title:e.detail,children:[(0,Q.jsx)(`span`,{children:d.t(`inspector.projectDirectory`,{ns:`conversation`})}),(0,Q.jsx)(`span`,{"aria-hidden":`true`,children:` · `}),(0,Q.jsx)(`span`,{children:e.detail})]}):(0,Q.jsx)(`p`,{className:`truncate text-caption text-muted-foreground`,children:e.detail})]})]})}function of({attachmentUrl:e,onOpenAttachment:t,source:n}){if(n.kind===`attachment`&&e!==void 0){let r=(0,Q.jsx)(af,{source:n}),i=si(n.attachment);return i===`image`?(0,Q.jsx)(xc,{name:n.name,triggerChildren:r,triggerClassName:rf,url:e}):i===`source`?(0,Q.jsx)($d,{name:n.name,triggerChildren:r,triggerClassName:rf,url:e}):(0,Q.jsx)(l,{"aria-label":d.t(`timeline.openAttachment`,{name:n.name,ns:`conversation`}),className:rf,"data-attachment-open":`system`,onClick:()=>{t(n.attachment.id)},type:`button`,variant:`ghost`,children:r})}return(0,Q.jsx)(`div`,{className:`flex min-h-10 items-center gap-2 rounded-control px-2 py-1.5`,children:(0,Q.jsx)(af,{source:n})})}function sf({onOpenAttachment:e,projectId:t,projectName:n,projectPath:r,skills:i,taskId:a,turns:o}){let s=(0,Z.useMemo)(()=>nf(n,r,o,i),[n,r,i,o]);return(0,Q.jsx)(Zd,{icon:(0,Q.jsx)(Kn,{className:`size-3.5`}),title:d.t(`inspector.source`,{ns:`conversation`}),children:(0,Q.jsx)(`div`,{"aria-label":d.t(`inspector.contextSources`,{ns:`conversation`}),className:`space-y-0.5`,children:s.map(n=>(0,Z.createElement)(of,{...n.kind===`attachment`&&t!==void 0&&a!==void 0?{attachmentUrl:y(``,t,a,n.attachment.id)}:{},key:n.id,onOpenAttachment:e,source:n}))})})}function cf({className:e=``,...t}){return(0,Q.jsx)(`div`,{className:s(e),"data-ai-queue":``,...t})}function lf({className:e=``,...t}){return(0,Q.jsx)(`ul`,{className:s(`space-y-0.5`,e),...t})}function uf({className:e=``,status:t,...n}){return(0,Q.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 df({className:e=``,label:t,status:n,...r}){let i=n===`completed`?(0,Q.jsx)(Ie,{"aria-hidden":`true`,className:`size-3.5`}):n===`in_progress`?(0,Q.jsx)(m,{"aria-hidden":`true`,className:`size-3.5 animate-spin`}):(0,Q.jsx)(zt,{"aria-hidden":`true`,className:`size-3.5`});return(0,Q.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 ff({className:e=``,status:t,...n}){return(0,Q.jsx)(`span`,{className:s(`min-w-0 break-words text-label leading-5`,t===`completed`?`text-muted-foreground`:`text-foreground`,e),...n})}function pf({plan:e}){return(0,Q.jsx)(Zd,{icon:(0,Q.jsx)(er,{className:`size-3.5`}),title:d.t(`inspector.plan`,{ns:`conversation`}),children:(0,Q.jsxs)(cf,{children:[e.explanation===null||e.explanation.trim()===``?null:(0,Q.jsx)(`p`,{className:`px-2 pb-1.5 text-caption leading-5 text-muted-foreground`,children:e.explanation}),(0,Q.jsx)(lf,{children:e.steps.map((e,t)=>(0,Q.jsxs)(uf,{status:e.status,children:[(0,Q.jsx)(df,{label:d.t(`inspector.planStatus.${e.status}`,{ns:`conversation`}),status:e.status}),(0,Q.jsx)(ff,{status:e.status,children:e.text})]},`${String(t)}:${e.text}`))})]})})}function mf(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(`
13
- `),kind:e.kind===n.kind?e.kind:`update`,path:n.path})}return[...t.values()]}function hf(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=En(t);return{additions:e.additions+n.additions,removals:e.removals+n.removals}},{additions:0,removals:0}),a=mf(r??n);return{changeStats:i,displayChanges:a,fileChangesByPath:new Map(a.map(e=>[e.path,e]))}}function gf({changeCount:e,changeStats:t,onCommitChanges:n}){return e===0?null:(0,Q.jsx)(Zd,{action:(0,Q.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,Q.jsx)(dt,{"aria-hidden":`true`,className:`size-3.5`}),d.t(`inspector.commit`,{ns:`conversation`})]}),icon:(0,Q.jsx)(Yn,{className:`size-3.5`}),title:d.t(`inspector.gitChanges`,{ns:`conversation`}),children:(0,Q.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,Q.jsx)(`span`,{children:d.t(`inspector.gitChangesCount`,{count:e,ns:`conversation`})}),t===void 0?null:(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(`span`,{className:`font-medium text-diff-added`,children:[`+`,t.additions]}),(0,Q.jsxs)(`span`,{className:`font-medium text-diff-removed`,children:[`-`,t.removals]})]})]})})}var _f={project:qn,changes:dt,context:jn,file:Le,history:Xn};function vf({activeTab:e,availableTabs:t,onCloseFile:n,onTabChange:r}){return(0,Q.jsx)(`div`,{className:`flex min-w-0 flex-1 items-center gap-0.5 overflow-x-auto`,role:`tablist`,children:t.map(t=>{let i=_f[t],a=t===`file`&&n!==void 0;return(0,Z.createElement)(`div`,{...a?{"aria-label":d.t(`inspector.file`,{ns:`conversation`}),role:`group`}:{},className:`relative flex shrink-0 items-center`,key:t},(0,Q.jsxs)(l,{"aria-selected":e===t,className:`rounded-control ${a?`pr-6`:``} ${e===t?`bg-control-hover text-foreground`:``}`,onClick:()=>{r(t)},role:`tab`,size:`toolbar`,type:`button`,variant:`ghost`,children:[(0,Q.jsx)(i,{"aria-hidden":`true`}),(0,Q.jsx)(`span`,{children:d.t(`inspector.${t}`,{ns:`conversation`})})]}),a?(0,Q.jsxs)(N,{children:[(0,Q.jsx)(P,{asChild:!0,children:(0,Q.jsx)(l,{"aria-label":d.t(`inspector.closeFile`,{ns:`conversation`}),className:`absolute right-1 size-4`,onClick:n,size:`embedded`,type:`button`,variant:`ghost`,children:(0,Q.jsx)(Dt,{className:`size-3`,"aria-hidden":`true`})})}),(0,Q.jsx)(I,{children:d.t(`inspector.closeFile`,{ns:`conversation`})})]}):null)})})}function yf({onClose:e}){if(e===void 0)return null;let t=d.t(`shell.closeInspector`,{ns:`workbench`});return(0,Q.jsxs)(N,{children:[(0,Q.jsx)(P,{asChild:!0,children:(0,Q.jsx)(l,{"aria-label":t,onClick:e,size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,Q.jsx)(ze,{"aria-hidden":`true`})})}),(0,Q.jsx)(I,{children:t})]})}function bf({activeTab:e,availableTabs:t,contextOnly:n,onClose:r,onCloseFile:i,onTabChange:a}){return n&&t.length===1?(0,Q.jsx)(`div`,{className:`absolute right-2 top-2 z-10 min-[1101px]:hidden`,children:(0,Q.jsx)(yf,{onClose:r})}):(0,Q.jsxs)(`div`,{className:`flex min-h-workbench-header w-full min-w-0 items-center gap-2 overflow-hidden px-1.5`,children:[(0,Q.jsx)(vf,{activeTab:e,availableTabs:t,...i===void 0?{}:{onCloseFile:i},onTabChange:a}),(0,Q.jsx)(`div`,{className:`shrink-0 min-[1101px]:hidden`,children:(0,Q.jsx)(yf,{onClose:r})})]})}var xf=Object.defineProperty,Sf=Object.defineProperties,Cf=Object.getOwnPropertyDescriptors,wf=Object.getOwnPropertySymbols,Tf=Object.prototype.hasOwnProperty,Ef=Object.prototype.propertyIsEnumerable,Df=(e,t,n)=>t in e?xf(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,$=(e,t)=>{for(var n in t||={})Tf.call(t,n)&&Df(e,n,t[n]);if(wf)for(var n of wf(t))Ef.call(t,n)&&Df(e,n,t[n]);return e},Of=(e,t)=>Sf(e,Cf(t)),kf=(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 Af(e,t){return typeof e==`function`?e(t):e}function jf(e,t){return n=>{t.setState(t=>Of($({},t),{[e]:Af(n,t[e])}))}}var Mf=(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)}),Nf=`Headless Tree: `,Pf=e=>Error(Nf+e),Ff=e=>console.warn(Nf+e),If={key:`tree`,getInitialState:e=>$({expandedItems:[],focusedItem:null},e),getDefaultConfig:(e,t)=>$({setExpandedItems:jf(`expandedItems`,t),setFocusedItem:jf(`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)){Ff(`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(()=>kf(null,null,function*(){var t,n,r,i;let a=e.getFocusedItem();(n=(t=e.getConfig()).scrollToItem)==null||n.call(t,a),yield Mf(()=>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)=>Of($({},e?.()),{role:`tree`,"aria-label":n??``,ref:t.registerElement}),isSearchOpen:()=>!1},itemInstance:{scrollTo:(e,t)=>kf(null,[e,t],function*({tree:e,item:t},n){var r,i,a;(i=(r=e.getConfig()).scrollToItem)==null||i.call(r,t),yield Mf(()=>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 Of($({},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()}}}},Lf=(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(Of($({},i),{prev:n}),...e)}}}]},Rf=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 Pf(`${n.key} needs ${e}`)}},zf=(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},Bf=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),Vf=(e=[])=>zf(e,Bf(e)),Hf=e=>{let t=e.instanceBuilder??Lf,n=[If,...Vf(e.features)];Rf(n);let r=[...n],[i,a]=t(r,`treeInstance`,e=>({tree:e})),o=n.reduce((e,t)=>t.getInitialState?.call(t,e,i)??e,e.initialState??e.state??{}),s=n.reduce((e,t)=>t.getDefaultConfig?.call(t,e,i)??e,e),c=n.reduce((e,t)=>$($({},e),t.stateHandlerNames),{}),l,u={current:{}},d=!1,f={},p=[],m={},h={},g={},_={},v=()=>{p=[],g={};let[e,n]=t(r,`itemInstance`,e=>({item:e,tree:i,itemId:s.rootItemId}));n(),f[s.rootItemId]=e,g[s.rootItemId]={itemId:s.rootItemId,index:-1,parentId:null,level:-1,posInSet:0,setSize:1};for(let e of i.getItemsMeta())if(g[e.itemId]=e,f[e.itemId])p.push(f[e.itemId]);else{let[n,a]=t(r,`itemInstance`,t=>({item:t,tree:i,itemId:e.itemId}));a(),f[e.itemId]=n,p.push(n)}d=!1},y=e=>{for(let t of n)e(t)};r.unshift({key:`main`,treeInstance:{getState:()=>o,setState:({},e)=>{var t;(t=s.setState)==null||t.call(s,o)},setMounted:({},e)=>{var t;let n=u.current;n.isMounted=e,e&&((t=n.waitingForMount)==null||t.forEach(e=>e()),n.waitingForMount=[])},applySubStateUpdate:({},e,t)=>{let n=()=>{o[e]=typeof t==`function`?t(o[e]):t;let n=s[c[e]];n?.(o[e])},r=u.current;r.isMounted?n():(r.waitingForMount??=[],r.waitingForMount.push(n))},rebuildTree:()=>{var e;let t=u.current;t.isMounted?(v(),(e=s.setState)==null||e.call(s,o)):(t.waitingForMount??=[],t.waitingForMount.push(()=>{var e;v(),(e=s.setState)==null||e.call(s,o)}))},scheduleRebuildTree:()=>{d=!0},getConfig:()=>s,setConfig:(e,t)=>{var n;let r=typeof t==`function`?t(s):t,i=r.state?.expandedItems&&r.state?.expandedItems!==o.expandedItems;s=r,r.state&&(o=$($({},o),r.state)),i&&(v(),(n=s.setState)==null||n.call(s,o))},getItemInstance:({},e)=>{let n=f[e];if(!n){let[n,a]=t(r,`itemInstance`,t=>({item:t,tree:i,itemId:e}));return a(),n}return n},getItems:()=>(d&&v(),p),registerElement:({},e)=>{l!==e&&(l&&!e?y(e=>e.onTreeUnmount?.call(e,i,l)):!l&&e&&y(t=>t.onTreeMount?.call(t,i,e)),l=e)},getElement:()=>l,getDataRef:()=>u,getHotkeyPresets:()=>_},itemInstance:{registerElement:({itemId:e,item:t},n)=>{if(m[e]===n)return;let r=m[e];r&&!n?y(e=>e.onItemUnmount?.call(e,t,r,i)):!r&&n&&y(e=>e.onItemMount?.call(e,t,n,i)),m[e]=n},getElement:({itemId:e})=>m[e],getDataRef:({itemId:e})=>h[e]??(h[e]={current:{}}),getItemMeta:({itemId:e})=>g[e]??{itemId:e,parentId:null,level:-1,index:-1,posInSet:0,setSize:1}}});for(let e of r)Object.assign(_,e.hotkeys??{});return a(),i},Uf={key:`selection`,getInitialState:e=>$({selectedItems:[]},e),getDefaultConfig:(e,t)=>$({setSelectedItems:jf(`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})=>Of($({},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()))}}}},Wf=e=>e.code!==``&&e.code!==`Unidentified`?e.code:e.key,Gf={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`]),qf=(e,t,n)=>{let r=n.hotkey.toLowerCase().split(`+`),i=r.every(t=>{if(t in Gf)return[...e].some(e=>Gf[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($($({},n),r)).find(([,n])=>qf(e,t,n))?.[0],Yf={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=Wf({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=$($({},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=Wf({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))}},Xf={key:`hotkeys-core`,onTreeMount:(e,t)=>{let n=e.getDataRef(),r=t=>{let r=t.target instanceof HTMLInputElement;Yf.dispatchKeyDown(e,n,t,{isInputFocused:r,releaseAfterDispatch:r})},i=e=>{Yf.dispatchKeyUp(n,e)},a=()=>{Yf.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)}},Zf=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},Qf=(e,t)=>kf(null,null,function*(){var n,r;let i=e.getConfig(),a=Zf(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}),$f=(e,t)=>kf(null,null,function*(){var n,r,i;let a=e.getConfig(),o=Zf(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}),ep={key:`async-data-loader`,getInitialState:e=>$({loadingItemData:[],loadingItemChildrens:[]},e),getDefaultConfig:(e,t)=>$({setLoadingItemData:jf(`loadingItemData`,t),setLoadingItemChildrens:jf(`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)=>kf(null,[e,t],function*({tree:e},t){return Zf(e).current.itemData[t]??(yield Qf(e,t))}),loadChildrenIds:(e,t)=>kf(null,[e,t],function*({tree:e},t){return Zf(e).current.childrenIds[t]??(yield $f(e,t))}),retrieveItemData:({tree:e},t,n=!1)=>{let r=e.getConfig(),i=Zf(e);return i.current.itemData[t]?i.current.itemData[t]:(!e.getState().loadingItemData.includes(t)&&!n&&setTimeout(()=>Qf(e,t)),r.createLoadingItemData?.call(r)??null)},retrieveChildrenIds:({tree:e},t,n=!1)=>{let r=Zf(e);return r.current.childrenIds[t]?r.current.childrenIds[t]:(e.getState().loadingItemChildrens.includes(t)||n||setTimeout(()=>$f(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)=>kf(null,[e,t],function*({tree:e,itemId:t},n){var r;n||(r=Zf(e).current.itemData)==null||delete r[t],yield Qf(e,t)}),invalidateChildrenIds:(e,t)=>kf(null,[e,t],function*({tree:e,itemId:t},n){var r;n||(r=Zf(e).current.childrenIds)==null||delete r[t],yield $f(e,t)}),updateCachedChildrenIds:({tree:e,itemId:t},n,r)=>{Zf(e).current.childrenIds[t]=n,r||e.rebuildTree()},updateCachedData:({tree:e,itemId:t},n,r)=>{Zf(e).current.itemData[t]=n,r||e.rebuildTree()},hasLoadedData:({tree:e,itemId:t})=>e.getDataRef().current.itemData[t]!==void 0}},tp=(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},np={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={}),tp(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={}),tp(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={}),tp(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={}),tp(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={}),tp(a,i.current.memo.rename)}}},rp=()=>{},ip=(e,t,n,r)=>{for(let i=r;i>=0;i--)if(e[i][t]?.[n])return i;return null},ap=(e,t,n,r,i,a)=>{let o=ip(e,t,r,i-1);return(e[i][t]?.[r])(Of($({},n),{prev:o===null?null:(...i)=>ap(e,t,n,r,o,i)}),...a)},op=(e,t,n)=>{let r={},i=new Proxy({},{has(n,r){return typeof r==`symbol`||r===`toJSON`?!1:!!ip(e,t,r,e.length-1)},get(n,i){if(typeof i!=`symbol`)return i===`toJSON`?{}:(...n)=>{let a=ip(e,t,i,e.length-1);if(a===null)throw Pf(`feature missing for method ${i}`);return ap(e,t,r,i,a,n)}}});return Object.assign(r,n(i)),[i,rp]},sp=Object.defineProperty,cp=Object.defineProperties,lp=Object.getOwnPropertyDescriptors,up=Object.getOwnPropertySymbols,dp=Object.prototype.hasOwnProperty,fp=Object.prototype.propertyIsEnumerable,pp=(e,t,n)=>t in e?sp(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,mp=(e,t)=>{for(var n in t||={})dp.call(t,n)&&pp(e,n,t[n]);if(up)for(var n of up(t))fp.call(t,n)&&pp(e,n,t[n]);return e},hp=(e,t)=>cp(e,lp(t)),gp=e=>{let[t]=(0,Z.useState)(()=>({current:Hf(e)})),[n,r]=(0,Z.useState)(()=>t.current.getState());return(0,Z.useEffect)(()=>(t.current.setMounted(!0),t.current.rebuildTree(),()=>{t.current.setMounted(!1)}),[t]),t.current.setConfig(t=>hp(mp(mp({},t),e),{state:mp(mp({},n),e.state),setState:t=>{var n;r(t),(n=e.setState)==null||n.call(e,t)}})),t.current},_p=`\0project-file-tree-root`,vp=`\0project-file-tree-project-root`,yp=`\0project-file-tree-status:`;function bp(e){return e.split(`/`).at(-1)??e}function xp(e){return e.path}function Sp(e,t){return`${yp}${t}:${e??`root`}`}function Cp(e){return{kind:`entry`,name:bp(e.path),path:e.path,type:e.type}}function wp(e){return e instanceof Error?e.message:String(e)}function Tp({client:e,projectId:t,projectName:n,queryClient:r,rootPath:i}){let a=new Map,o={kind:`root`,name:n,type:`directory`};return a.set(vp,o),{async getChildrenWithData(s){if(s===`\0project-file-tree-root`)return[{data:o,id:vp}];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(te(t,i,l,e));if(o.entries.length===0){let e=Sp(l,`empty`),t={directoryPath:l,kind:`status`,name:l===null?n:bp(l),status:`empty`,type:`status`};return a.set(e,t),[{data:t,id:e}]}return o.entries.map(e=>{let t=xp(e),n=Cp(e);return a.set(t,n),{data:n,id:t}})}catch(e){let t=Sp(l,`error`),r={directoryPath:l,kind:`status`,message:wp(e),name:l===null?n:bp(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:bp(e),path:e,type:`directory`})}}}function Ep(e,t){let n=[...e].filter(e=>!t.has(e));return new Set([...t].filter(e=>!n.some(t=>e.startsWith(`${t}/`))))}function Dp(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=En(t);r.set(i.path,{additions:(a?.additions??0)+o.additions,removals:(a?.removals??0)+o.removals})}return r}function Op({path:e,stats:t}){return(0,Q.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,Q.jsxs)(`span`,{className:`font-medium text-diff-added`,children:[`+`,t.additions]}),(0,Q.jsxs)(`span`,{className:`font-medium text-diff-removed`,children:[`-`,t.removals]})]})}function kp({onMenuOpen:e,onOpenProjectPath:t,onReferenceProjectPath:n,onRefreshProject:r,projectName:i,projectOpenApps:a,projectOpenPending:o,projectPath:s,refreshing:c=!1}){let u=(0,Z.useRef)(!1),[f,p]=(0,Z.useState)(!1),m=c||f,h=d.t(`inspector.refreshProject`,{name:i,ns:`conversation`});return(0,Q.jsxs)(ve,{children:[(0,Q.jsxs)(N,{children:[(0,Q.jsx)(P,{asChild:!0,children:(0,Q.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,Q.jsx)(X,{"aria-hidden":`true`,className:`size-3.5 ${m?`animate-spin`:``}`})})}),(0,Q.jsx)(I,{side:`left`,children:h})]}),(0,Q.jsx)(ki,{apps:a,isPending:o,onOpen:e,onReference:n,onSelect:t,target:{absolutePath:s,path:s,relativePath:`.`,type:`directory`}})]})}function Ap(e,t){return e.kind===`status`?null:e.kind===`root`?{absolutePath:t.path,path:t.path,relativePath:`.`,type:`directory`}:{absolutePath:Ei(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 jp=16,Mp=8,Np={height:600,width:320};function Pp(e,t){return typeof e==`function`?e(t):e}function Fp(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 Ip=(0,Z.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=Fp(h),_=Ap(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,Q.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*jp+6},children:[(0,Q.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:g}),h.status===`error`?(0,Q.jsxs)(N,{children:[(0,Q.jsx)(P,{asChild:!0,children:(0,Q.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,Q.jsx)(X,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,Q.jsx)(I,{children:d.t(`inspector.refreshFolder`,{name:T,ns:`conversation`})})]}):null]});let D=(0,Q.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*jp+2},children:[S?(0,Q.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,Q.jsx)(m,{"aria-hidden":`true`,className:`size-3.5 animate-spin`}):(0,Q.jsx)(Ce,{"aria-hidden":`true`,className:`size-3.5 transition-transform ${C?`rotate-90`:``}`})}):(0,Q.jsx)(`span`,{"aria-hidden":`true`,className:`size-5 shrink-0`}),S?C?(0,Q.jsx)(fe,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-brand`}):(0,Q.jsx)(be,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-brand`}):(0,Q.jsx)(ut,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-muted-foreground`}),(0,Q.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,Q.jsx)(Op,{path:h.path,stats:E}):null,h.kind===`root`?(0,Q.jsx)(kp,{onMenuOpen:()=>{o(t.getId())},onOpenProjectPath:n,onReferenceProjectPath:r,onRefreshProject:a,projectName:g,projectOpenApps:s,projectOpenPending:c,projectPath:u,refreshing:p}):_===null?null:(0,Q.jsx)(ve,{children:(0,Q.jsx)(ki,{apps:s,isPending:c,onOpen:()=>{o(t.getId())},onReference:r,onSelect:n,target:_})})]});return _===null?D:(0,Q.jsx)(Ai,{apps:s,isPending:c,onOpen:()=>{o(t.getId())},onReference:r,onSelect:v,target:_,children:D})});function Lp({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,Z.useRef)(null),x=(0,Z.useRef)(()=>void 0),[S,C]=(0,Z.useState)(!0),[w,T]=(0,Z.useState)([]),E=(0,Z.useMemo)(()=>Tp({client:e,projectId:l,projectName:f,queryClient:y,rootPath:g}),[e,l,f,g,y]),D=(0,Z.useMemo)(()=>[...S?[vp]:[],...t],[t,S]),O=(0,Z.useCallback)(e=>{let n=Pp(e,D);C(n.includes(vp)),r(Ep(t,new Set(n.filter(e=>e!==vp))))},[D,t,r]),k=(0,Z.useCallback)(e=>{let t=Pp(e,w).at(-1)??w.at(-1);T(t===void 0?[]:[t])},[w]),A=gp({createLoadingItemData:()=>({kind:`root`,name:f,type:`directory`}),dataLoader:E,features:[ep,Uf,Xf,np],getItemName:e=>Fp(e.getItemData()),indent:jp,instanceBuilder:op,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:_p,scrollToItem:e=>{x.current(e.getId())},setExpandedItems:O,setSelectedItems:k,state:{expandedItems:D,selectedItems:w}}),j=A.getItems(),M=(0,Z.useMemo)(()=>n.size===0?new Map:Dp(n,j.map(e=>e.getItemData())),[n,j]),N=(0,Z.useMemo)(()=>new Map(j.map((e,t)=>[e.getId(),t])),[j]),P=Oa({count:j.length,estimateSize:()=>28,getItemKey:e=>j[e]?.getKey()??e,getScrollElement:()=>b.current,initialRect:Np,overscan:Mp});x.current=e=>{let t=N.get(e);t!==void 0&&P.scrollToIndex(t,{align:`auto`})};let F=(0,Z.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,Z.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,Q.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,Q.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,Q.jsx)(m,{"aria-hidden":`true`,className:`size-3.5 animate-spin`}),(0,Q.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:f})]}):null,(0,Q.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,Q.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,Q.jsx)(Ip,{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 Rp=new Set,zp=new Map,Bp=(0,Z.lazy)(async()=>({default:(await rn(()=>import(`./git-history-panel-CeJ0MXUi.js`),__vite__mapDeps([20,3,6,7,8,9,11,12,21,5,10,13,14,19,22]))).GitHistoryPanel})),Vp=(0,Z.lazy)(async()=>({default:(await rn(()=>import(`./workbench-inspector-changes-8ZkoC9AD.js`),__vite__mapDeps([23,3,6,7,8,9,10,11,12,24,25,5,13,14]))).WorkbenchInspectorChanges}));function Hp({backgroundTerminals:e=[],backgroundTerminalsError:t=null,backgroundTerminalsPending:n=!1,contextOnly:r=!1,expandedFileTreePaths:i=Rp,fileSelection:a=null,gitStatus:o,gitStatusDetails:s,gitStatusDetailsError:c=null,gitStatusDetailsPending:f=!1,gitStatusError:p=null,gitStatusPending:m=!1,gitStatusRefreshing:h=!1,gitClient:g,mcpServers:_=[],mcpServersError:v=null,mcpServersPending:y=!1,mcpServersRetryAvailable:b=!0,mcpServersRefreshing:x=!1,mcpServersRetrying:C=!1,onFileTreeExpandedChange:w=()=>void 0,onOpenFileDiff:T=()=>void 0,onOpenTaskAttachment:E=()=>void 0,onOpenProjectPath:D=()=>void 0,onOpenProjectFile:O=()=>void 0,onReferenceProjectPath:k=()=>void 0,onOpenSubagent:A=()=>void 0,onReloadMcpServers:j=()=>void 0,onRefreshGitStatus:M=()=>void 0,onRefreshProject:F=()=>void 0,onCommitChanges:L=()=>void 0,onClose:R,onCloseFile:z,onTerminateBackgroundTerminal:ee=()=>Promise.resolve(),onTabChange:B=()=>void 0,projectId:V,projectName:H,projectOpenApps:U=[],projectOpenPending:W=!1,projectPath:G,projectRootId:K,sourceRootPath:q,projectRefreshing:J=!1,skills:te=[],subagents:ne=[],tab:re=`project`,task:ie,taskId:ae,terminatingTerminalId:oe=null}){u(`conversation`);let se=Hi(ae,o,{contextOnly:r,fileOpen:a!==null}),{activeTab:ce}=Ui({contextOnly:r,fileOpen:a!==null,gitStatus:o,inspectorOpen:!0,requestedTab:re,taskId:ae}),le=o!==void 0&&o.repositoryMode!==`none`,{changeStats:ue,displayChanges:de,fileChangesByPath:fe}=(0,Z.useMemo)(()=>le&&(ce===`context`||ce===`project`)?hf(o,s):{changeStats:void 0,displayChanges:[],fileChangesByPath:zp},[ce,o,s,le]),pe=G.split(/[\\/]/u).filter(Boolean).at(-1)??H,me=(0,Q.jsxs)(`div`,{className:`h-full space-y-5 overflow-y-auto p-2.5`,children:[le&&de.length>0?(0,Q.jsx)(gf,{changeCount:de.length,changeStats:ue,onCommitChanges:L}):null,e.length>0||n||t!==null?(0,Q.jsx)(Wd,{error:t,isPending:n,onTerminate:ee,terminals:e,terminatingTerminalId:oe}):null,ne.length>0?(0,Q.jsx)(Gd,{onOpenSubagent:A,subagents:ne}):null,(0,Q.jsx)(Kd,{canRetry:b,error:v,isPending:y,isRefreshing:x,isRetrying:C,onRetry:j,servers:_}),(0,Q.jsx)(sf,{onOpenAttachment:E,...V===void 0?{}:{projectId:V},projectName:H,projectPath:G,skills:te,...ae===void 0?{}:{taskId:ae},turns:ie?.turns??[]}),ie?.plan===null||ie?.plan===void 0?null:(0,Q.jsx)(pf,{plan:ie.plan})]});return(0,Q.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,Q.jsx)(bf,{activeTab:ce,availableTabs:se,contextOnly:r,onClose:R,...z===void 0?{}:{onCloseFile:z},onTabChange:B}),(0,Q.jsx)(`div`,{className:`min-h-0 overflow-hidden`,role:r?void 0:`tabpanel`,children:ce===`file`&&a!==null?a.kind===`diff`?(0,Q.jsx)(Bd,{change:a.change}):(0,Q.jsx)(Ad,{client:g??S,previewKind:a.kind,projectId:V??H,reference:a.reference,...q===void 0?{}:{rootPath:q}}):ce===`project`?(0,Q.jsx)(`div`,{className:`flex h-full min-h-0 flex-col`,children:(0,Q.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col`,children:[p===null?m&&o===void 0?(0,Q.jsx)(`p`,{className:`mb-2 px-4 text-caption text-muted-foreground`,children:d.t(`inspector.gitLoading`,{ns:`conversation`})}):null:(0,Q.jsxs)(`div`,{className:`mx-2.5 mb-2 flex items-center gap-2 rounded-control bg-control px-2 py-2`,children:[(0,Q.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,Q.jsx)(`p`,{className:`text-label text-diff-removed`,children:d.t(`inspector.gitChangesRetrying`,{ns:`conversation`})})}),(0,Q.jsxs)(N,{children:[(0,Q.jsx)(P,{asChild:!0,children:(0,Q.jsx)(l,{"aria-label":d.t(`inspector.refreshGit`,{ns:`conversation`}),disabled:h,onClick:M,size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,Q.jsx)(X,{"aria-hidden":`true`,className:`size-3.5 ${h?`animate-spin`:``}`})})}),(0,Q.jsx)(I,{children:d.t(`inspector.refreshGit`,{ns:`conversation`})})]})]}),(0,Q.jsx)(`div`,{className:`min-h-0 flex-1 px-2.5 pb-2.5`,children:(0,Q.jsx)(Lp,{client:g??S,expandedPaths:i,fileChangesByPath:fe,onExpandedPathsChange:w,onOpenFileDiff:T,onOpenProjectFile:O,onOpenProjectPath:D,onReferenceProjectPath:k,onRefreshProject:F,projectId:V??H,projectName:pe,projectOpenApps:U,projectOpenPending:W,projectPath:G,projectRootId:K,projectRefreshing:J},`${V??H}:${G}`)})]})}):ce===`changes`?(0,Q.jsx)(Z.Suspense,{fallback:null,children:(0,Q.jsx)(Vp,{client:g,detailsError:c,detailsPending:f,detailsStatus:s,gitStatus:o,gitStatusError:p,onOpenFileDiff:T,projectId:V,rootPath:G})}):ce===`history`&&V!==void 0?(0,Q.jsx)(Z.Suspense,{fallback:null,children:(0,Q.jsx)(Bp,{...g===void 0?{}:{client:g},projectId:V,rootPath:G})}):me})]})}function Up({context:e,projectId:t,taskId:n,temporary:r}){let i=(0,Z.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,openProjectFileDiff:z,openFileReview:ee,openMessageFileReference:B,openProjectFile:V,openProjectFolder:H,pendingTaskSelection:U,projectDefaultsQuery:W,projectFolderOpenDisabled:G,projectName:K,projectRoots:q,projectOpenCapabilitiesQuery:J,projectPath:te,projectPathOpenLockRef:ne,projectPathOpenMutation:re,taskAttachmentOpenMutation:ie,projectTaskState:ae,projects:oe,refreshProjectGitStatus:se,requestNotificationPermission:ce,retry:le,runtime:ue,selectedRootPath:de,selectedRootId:fe,selectedInspectorFile:pe,setFileTreeExpansion:me,setGlobalSettingsSection:he,setInspectorOpen:ge,setInspectorTab:_e,setInspectorWidth:ve,setInspectorFileSelection:ye,setSidebarOpen:be,setSidebarWidth:xe,setSelectedRootId:Se,setSubagentDialogSelection:Ce,setTaskRenameOpen:we,sidebarConnectionState:Te,sidebarOpen:Ee,sidebarWidth:De,skillsQuery:Oe,startingSnapshot:ke,subagents:Ae,taskLaunchState:Y,title:je,updateDraftSettings:Me,updateProjectTaskDefaults:Ne,workbenchShellRef:Pe,t:X}=e;return(0,Q.jsxs)(`div`,{className:`workbench-shell h-full min-h-0 overflow-hidden bg-window`,"data-inspector-open":T,"data-sidebar-open":Ee,ref:Pe,style:{"--inspector-open-width":`${String(k)}px`,"--sidebar-open-width":`${String(De)}px`},children:[(0,Q.jsx)(Ht,{...a.data===void 0?{}:{appInfo:a.data},connectionState:Te,onClose:f,onOpenSettings:e=>{he(e)},projectId:t,...n===void 0&&U?.projectId===t?{taskId:U.taskId}:n===void 0?{}:{taskId:n}}),Ee?(0,Q.jsx)(l,{variant:`ghost`,"aria-label":X(`shell.closeSidebar`),className:`workbench-sidebar-scrim`,onClick:f,type:`button`}):null,Ee?(0,Q.jsx)(gd,{direction:1,label:X(`shell.resizeSidebar`),maximumWidth:Ki.maximum,minimumWidth:Ki.minimum,onResize:e=>{Pe.current?.style.setProperty(`--sidebar-open-width`,`${String(e)}px`)},onResizeEnd:e=>{Pe.current?.removeAttribute(`data-resizing-panel`),xe(e)},onResizeStart:()=>{Pe.current?.setAttribute(`data-resizing-panel`,`sidebar`)},panel:`sidebar`,width:De}):null,(0,Q.jsxs)(`main`,{"aria-label":X(`shell.timeline`),className:`flex min-h-0 min-w-0 flex-col bg-content`,children:[(0,Q.jsxs)(`header`,{className:`flex h-workbench-header shrink-0 items-center justify-between gap-3 bg-content px-2.5 shadow-toolbar sm:px-3`,children:[(0,Q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,Q.jsxs)(N,{children:[(0,Q.jsx)(P,{asChild:!0,children:(0,Q.jsx)(l,{"aria-label":X(Ee?`shell.collapseSidebar`:`shell.expandSidebar`),id:`workbench-sidebar-toggle`,onClick:()=>{be(e=>!e)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,Q.jsx)(nr,{className:`size-3.5`,"aria-hidden":`true`})})}),(0,Q.jsx)(I,{children:X(Ee?`shell.collapseSidebar`:`shell.expandSidebar`)})]},Ee?`sidebar-open`:`sidebar-closed`),(0,Q.jsx)(`h1`,{"aria-label":je,className:`min-w-0 text-body-small font-semibold text-foreground`,children:n===void 0?(0,Q.jsx)(`span`,{className:`block truncate`,children:je}):(0,Q.jsxs)(l,{variant:`ghost`,"aria-label":X(`shell.renameTask`,{title:je}),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:()=>{we(!0)},type:`button`,children:[(0,Q.jsx)(`span`,{className:`truncate`,children:je}),(0,Q.jsx)(Kt,{"aria-hidden":`true`,className:`size-3 shrink-0 text-muted-foreground transition-colors group-hover:text-foreground`})]})})]}),(0,Q.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1`,children:[(0,Q.jsx)(wi,{apps:J.data?.apps??[],className:`hidden min-workbench:flex`,...y===void 0?{}:{defaultOpenAppId:y.defaultOpenAppId},isDetecting:J.isPending,isPending:re.isPending,onSelect:e=>{re.reset(),ne.current.run(()=>re.mutateAsync({appId:e,path:void 0})).catch(()=>void 0)}}),(0,Q.jsxs)(N,{children:[(0,Q.jsx)(P,{asChild:!0,children:(0,Q.jsx)(l,{"aria-label":X(T?`shell.collapseInspector`:`shell.expandInspector`),id:`workbench-inspector-toggle`,onClick:()=>{ge(e=>!e)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,Q.jsx)(rr,{className:`size-3.5`,"aria-hidden":`true`})})}),(0,Q.jsx)(I,{children:X(T?`shell.collapseInspector`:`shell.expandInspector`)})]},T?`inspector-open`:`inspector-closed`)]})]}),m!==null||(ae?.error??null)!==null||F.error!==null||Oe.error!==null||!r&&W.error!==null||n===void 0&&b.error!==null?(0,Q.jsx)(Ft,{onRetry:()=>void le()}):n===void 0?(0,Q.jsxs)(Q.Fragment,{children:[r?(0,Q.jsx)(qc,{projectId:t,scopeName:X(`shell.temporaryTask`),temporary:!0,...L===void 0?{}:{submissionStartedAt:L}}):(0,Q.jsx)(qc,{onProjectChange:S,projectId:t,projects:oe,...L===void 0?{}:{submissionStartedAt:L}}),(0,Q.jsx)(pd,{capabilities:c,client:u,composerRef:i,followUpBehavior:y?.followUpBehavior??`queue`,fastModeAvailable:h,fastModeDefault:g,models:M,modelsError:null,modelsPending:F.isPending||!r&&W.isPending||b.isPending,onSettingsChange:Me,onFastModeChange:(e,t)=>Ne(t,e),onOpenProjectPath:H,onProjectRootChange:Se,onRequestNotificationPermission:ce,onDirectSubmission:s,onSubmissionStateChange:x,onTaskCreated:C,onTaskStarted:w,projectId:t,projectPath:te,projectPathOpenDisabled:G,projectRoots:q,projectToolsEnabled:!r,selectedProjectRootId:fe??``,...v.data===void 0?{}:{gitStatus:v.data},settings:p,skills:Oe.data?.data??[]})]}):(0,Q.jsx)(Rd,{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:ce,onProjectTaskDefaultsChange:Ne,onOpenProjectPath:H,onProjectRootChange:Se,onTaskStarted:w,projectId:t,projectPath:te,projectPathOpenDisabled:G,projectRoots:q,projectToolsEnabled:!r,selectedProjectRootId:fe??``,...v.data===void 0?{}:{gitStatus:v.data},runtime:ue,skills:Oe.data?.data??[],startingSnapshot:ke,startingPrompt:Y,taskId:n,onOpenFileDiff:R,onOpenSourceFile:B,onReviewFileChanges:ee})]}),T?(0,Q.jsx)(l,{variant:`ghost`,"aria-label":X(`shell.closeInspector`),className:`workbench-inspector-scrim`,onClick:d,type:`button`}):null,T?(0,Q.jsx)(gd,{direction:-1,label:X(`shell.resizeInspector`),maximumWidth:E,minimumWidth:qi.minimum,onResize:e=>{Pe.current?.style.setProperty(`--inspector-open-width`,`${String(e)}px`)},onResizeEnd:e=>{Pe.current?.removeAttribute(`data-resizing-panel`),ve(e)},onResizeStart:()=>{Pe.current?.setAttribute(`data-resizing-panel`,`inspector`)},panel:`inspector`,width:k}):null,T?(0,Q.jsx)(Hp,{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,onCloseFile:()=>{ye(null)},fileSelection:pe,onFileTreeExpandedChange:e=>{me({paths:new Set(e),scope:`${t}:${de??`temporary`}`})},onReloadMcpServers:()=>{j.mutate()},onOpenFileDiff:z,onOpenProjectPath:(e,t)=>{re.reset(),ne.current.run(()=>re.mutateAsync({appId:e,path:t})).catch(()=>void 0)},onOpenProjectFile:V,onOpenTaskAttachment:e=>{n!==void 0&&ie.mutate({attachmentId:e,taskId:n})},onReferenceProjectPath:e=>{i.current?.referenceProjectPath(e)},onRefreshGitStatus:()=>{de!==void 0&&se(t,de)},onRefreshProject:()=>de===void 0?Promise.resolve():se(t,de),onCommitChanges:()=>{_e(`changes`),ge(!0)},onTerminateBackgroundTerminal:o.terminateTerminal,onTabChange:_e,onOpenSubagent:e=>{n!==void 0&&Ce({parentTaskId:n,projectId:t,selection:e})},projectName:K,projectId:t,projectOpenApps:J.data?.apps??[],projectOpenPending:re.isPending,projectPath:te,projectRootId:fe??``,...de===void 0?{}:{sourceRootPath:de},skills:Oe.data?.data??[],subagents:Ae,tab: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,Q.jsx)(Ld,{context:e,projectId:t,projectToolsEnabled:!r,...n===void 0?{}:{taskId:n}})]})}function Wp({projectId:e,taskId:t,temporary:n=!1}){let r=t===void 0?{projectId:e}:{projectId:e,taskId:t};return(0,Q.jsx)(Up,{context:ra(ea({...r,temporary:n}),{...r,temporary:n}),...r,temporary:n})}export{Wp as WorkbenchShell};