@bryanhu/codexly 0.7.0 → 0.9.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.
- package/CHANGELOG.md +24 -1
- package/README.md +2 -2
- package/README.zh-CN.md +2 -2
- package/dist/{chunk-NAHIDASP.js → chunk-7XFCPPAG.js} +37 -2
- package/dist/{chunk-CGZ44LHJ.js → chunk-HEWCIXCQ.js} +45 -12
- package/dist/cli.js +5 -4
- package/dist/providers/codex/index.js +1 -1
- package/dist/server/index.js +2 -2
- package/dist/web/.vite/manifest.json +176 -175
- package/dist/web/.vite/manifest.json.br +0 -0
- package/dist/web/.vite/manifest.json.gz +0 -0
- package/dist/web/assets/{button-group-b2-xCzBP.js → button-group-CYhxptHg.js} +1 -1
- package/dist/web/assets/button-group-CYhxptHg.js.br +0 -0
- package/dist/web/assets/button-group-CYhxptHg.js.gz +0 -0
- package/dist/web/assets/check-BOdEYGxk.js +1 -0
- package/dist/web/assets/check-BOdEYGxk.js.br +0 -0
- package/dist/web/assets/check-BOdEYGxk.js.gz +0 -0
- package/dist/web/assets/{checkbox-Cft8ypsb.js → checkbox-nYXSVVQi.js} +1 -1
- package/dist/web/assets/checkbox-nYXSVVQi.js.br +0 -0
- package/dist/web/assets/checkbox-nYXSVVQi.js.gz +0 -0
- package/dist/web/assets/{chunk-BO2N2NFS-bEY6272A.js → chunk-BO2N2NFS-C9-C2tVf.js} +4 -4
- package/dist/web/assets/chunk-BO2N2NFS-C9-C2tVf.js.br +0 -0
- package/dist/web/assets/chunk-BO2N2NFS-C9-C2tVf.js.gz +0 -0
- package/dist/web/assets/{code-highlighter-Cm84nMIT.js → code-highlighter-Bc0RuXH6.js} +1 -1
- package/dist/web/assets/code-highlighter-Bc0RuXH6.js.br +0 -0
- package/dist/web/assets/code-highlighter-Bc0RuXH6.js.gz +0 -0
- package/dist/web/assets/{code-languages-D5Nrl7sO.js → code-languages-Dyc6uij-.js} +1 -1
- package/dist/web/assets/code-languages-Dyc6uij-.js.br +0 -0
- package/dist/web/assets/code-languages-Dyc6uij-.js.gz +0 -0
- package/dist/web/assets/{context-menu-CZuXyHCN.js → context-menu-B-oGuenT.js} +1 -1
- package/dist/web/assets/context-menu-B-oGuenT.js.br +0 -0
- package/dist/web/assets/context-menu-B-oGuenT.js.gz +0 -0
- package/dist/web/assets/{dist-ByRtqJXv.js → dist-CaAkD3UC.js} +1 -1
- package/dist/web/assets/dist-CaAkD3UC.js.br +0 -0
- package/dist/web/assets/dist-CaAkD3UC.js.gz +0 -0
- package/dist/web/assets/dist-Cib4eRMP.js +1 -0
- package/dist/web/assets/dist-Cib4eRMP.js.br +0 -0
- package/dist/web/assets/dist-Cib4eRMP.js.gz +0 -0
- package/dist/web/assets/{es2015-Cd8ehGwJ.js → es2015-Ru0tXs3G.js} +1 -1
- package/dist/web/assets/es2015-Ru0tXs3G.js.br +0 -0
- package/dist/web/assets/es2015-Ru0tXs3G.js.gz +0 -0
- package/dist/web/assets/{file-code-corner-D1h7_C7f.js → file-code-corner-Bs_lkoMS.js} +1 -1
- package/dist/web/assets/file-code-corner-Bs_lkoMS.js.br +0 -0
- package/dist/web/assets/file-code-corner-Bs_lkoMS.js.gz +0 -0
- package/dist/web/assets/{file-navigation-view-preference-BikLLmlP.js → file-navigation-view-preference-CMQ7btc9.js} +1 -1
- package/dist/web/assets/file-navigation-view-preference-CMQ7btc9.js.br +0 -0
- package/dist/web/assets/file-navigation-view-preference-CMQ7btc9.js.gz +0 -0
- package/dist/web/assets/file-review-dialog-DO97in5h.js +2 -0
- package/dist/web/assets/file-review-dialog-DO97in5h.js.br +0 -0
- package/dist/web/assets/file-review-dialog-DO97in5h.js.gz +0 -0
- package/dist/web/assets/{file-tree-CbuG5nkz.js → file-tree-CqppWhX1.js} +1 -1
- package/dist/web/assets/file-tree-CqppWhX1.js.br +0 -0
- package/dist/web/assets/file-tree-CqppWhX1.js.gz +0 -0
- package/dist/web/assets/{git-commit-horizontal-BJGxHnV4.js → git-commit-horizontal-BezTHHvd.js} +1 -1
- package/dist/web/assets/git-commit-horizontal-BezTHHvd.js.br +0 -0
- package/dist/web/assets/git-commit-horizontal-BezTHHvd.js.gz +0 -0
- package/dist/web/assets/git-history-panel-CqKWTKwH.js +2 -0
- package/dist/web/assets/git-history-panel-CqKWTKwH.js.br +0 -0
- package/dist/web/assets/git-history-panel-CqKWTKwH.js.gz +0 -0
- package/dist/web/assets/global-settings-dialog-CcncTTuP.js +1 -0
- package/dist/web/assets/global-settings-dialog-CcncTTuP.js.br +0 -0
- package/dist/web/assets/global-settings-dialog-CcncTTuP.js.gz +0 -0
- package/dist/web/assets/{highlighted-body-OFNGDK62-oKnqW5V8.js → highlighted-body-OFNGDK62-D6sPM03A.js} +1 -1
- package/dist/web/assets/highlighted-body-OFNGDK62-D6sPM03A.js.br +0 -0
- package/dist/web/assets/highlighted-body-OFNGDK62-D6sPM03A.js.gz +0 -0
- package/dist/web/assets/index-C4ygqQbj.css +2 -0
- package/dist/web/assets/index-C4ygqQbj.css.br +0 -0
- package/dist/web/assets/index-C4ygqQbj.css.gz +0 -0
- package/dist/web/assets/{index-C1A_OTjT.js → index-D07js1WI.js} +3 -3
- package/dist/web/assets/index-D07js1WI.js.br +0 -0
- package/dist/web/assets/index-D07js1WI.js.gz +0 -0
- package/dist/web/assets/{lazy-message-response-DNUwJy0d.js → lazy-message-response-BCtctszr.js} +2 -2
- package/dist/web/assets/lazy-message-response-BCtctszr.js.br +0 -0
- package/dist/web/assets/lazy-message-response-BCtctszr.js.gz +0 -0
- package/dist/web/assets/loader-circle-B1P6CG7G.js +1 -0
- package/dist/web/assets/loader-circle-B1P6CG7G.js.br +0 -0
- package/dist/web/assets/loader-circle-B1P6CG7G.js.gz +0 -0
- package/dist/web/assets/mermaid-GHXKKRXX-DPTLsg8Y.js +1 -0
- package/dist/web/assets/mermaid-GHXKKRXX-DPTLsg8Y.js.br +1 -0
- package/dist/web/assets/mermaid-GHXKKRXX-DPTLsg8Y.js.gz +0 -0
- package/dist/web/assets/{message-response-DVL8_J3z.js → message-response-Bx5gf4FU.js} +1 -1
- package/dist/web/assets/message-response-Bx5gf4FU.js.br +0 -0
- package/dist/web/assets/message-response-Bx5gf4FU.js.gz +0 -0
- package/dist/web/assets/{patch-diff-viewer-BgNx-ffs.js → patch-diff-viewer-DGu83IBP.js} +2 -2
- package/dist/web/assets/patch-diff-viewer-DGu83IBP.js.br +0 -0
- package/dist/web/assets/patch-diff-viewer-DGu83IBP.js.gz +0 -0
- package/dist/web/assets/{project-file-popup-page-BwPTSc8o.js → project-file-popup-page-CVtCt_XU.js} +1 -1
- package/dist/web/assets/project-file-popup-page-CVtCt_XU.js.br +0 -0
- package/dist/web/assets/project-file-popup-page-CVtCt_XU.js.gz +0 -0
- package/dist/web/assets/{project-source-panel-DWDcX3T9.js → project-source-panel-BEBbL2Id.js} +3 -3
- package/dist/web/assets/project-source-panel-BEBbL2Id.js.br +0 -0
- package/dist/web/assets/project-source-panel-BEBbL2Id.js.gz +0 -0
- package/dist/web/assets/{prompt-input-controls-CT6f-1tO.js → prompt-input-controls-CJyoVdGf.js} +1 -1
- package/dist/web/assets/prompt-input-controls-CJyoVdGf.js.br +0 -0
- package/dist/web/assets/prompt-input-controls-CJyoVdGf.js.gz +0 -0
- package/dist/web/assets/{prompt-reference-token-CTm_xv2R.js → prompt-reference-token-DvdGBAjJ.js} +1 -1
- package/dist/web/assets/prompt-reference-token-DvdGBAjJ.js.br +0 -0
- package/dist/web/assets/prompt-reference-token-DvdGBAjJ.js.gz +0 -0
- package/dist/web/assets/{provider-connection-queries-CLpiOnBN.js → provider-connection-queries-CSumXgIL.js} +1 -1
- package/dist/web/assets/provider-connection-queries-CSumXgIL.js.br +0 -0
- package/dist/web/assets/provider-connection-queries-CSumXgIL.js.gz +0 -0
- package/dist/web/assets/{shiki-bundle-Dhkx9AYM.js → shiki-bundle-4bLwaf7_.js} +1 -1
- package/dist/web/assets/shiki-bundle-4bLwaf7_.js.br +0 -0
- package/dist/web/assets/shiki-bundle-4bLwaf7_.js.gz +0 -0
- package/dist/web/assets/{tooltip-BU1Qoscx.js → tooltip-D3tWiAWP.js} +1 -1
- package/dist/web/assets/tooltip-D3tWiAWP.js.br +0 -0
- package/dist/web/assets/tooltip-D3tWiAWP.js.gz +0 -0
- package/dist/web/assets/{upload-BDX8w8rQ.js → upload-C2JxJnmn.js} +1 -1
- package/dist/web/assets/upload-C2JxJnmn.js.br +0 -0
- package/dist/web/assets/upload-C2JxJnmn.js.gz +0 -0
- package/dist/web/assets/{useInfiniteQuery-Bj31MvqL.js → useInfiniteQuery-Bu9BuQ4a.js} +1 -1
- package/dist/web/assets/useInfiniteQuery-Bu9BuQ4a.js.br +0 -0
- package/dist/web/assets/useInfiniteQuery-Bu9BuQ4a.js.gz +0 -0
- package/dist/web/assets/workbench-inspector-changes-BLY-8Tfn.js +2 -0
- package/dist/web/assets/workbench-inspector-changes-BLY-8Tfn.js.br +0 -0
- package/dist/web/assets/workbench-inspector-changes-BLY-8Tfn.js.gz +0 -0
- package/dist/web/assets/{workbench-pet-canvas-CO4nVH5z.js → workbench-pet-canvas-BLh6Qsla.js} +1 -1
- package/dist/web/assets/workbench-pet-canvas-BLh6Qsla.js.br +0 -0
- package/dist/web/assets/workbench-pet-canvas-BLh6Qsla.js.gz +0 -0
- package/dist/web/assets/{workbench-shell-DVC3DE5a.js → workbench-shell-DSfvZh4Q.js} +8 -8
- package/dist/web/assets/workbench-shell-DSfvZh4Q.js.br +0 -0
- package/dist/web/assets/workbench-shell-DSfvZh4Q.js.gz +0 -0
- package/dist/web/index.html +12 -12
- package/dist/web/index.html.br +0 -0
- package/dist/web/index.html.gz +0 -0
- package/package.json +1 -1
- package/dist/web/assets/button-group-b2-xCzBP.js.br +0 -0
- package/dist/web/assets/button-group-b2-xCzBP.js.gz +0 -0
- package/dist/web/assets/check-DExH7zwT.js +0 -1
- package/dist/web/assets/check-DExH7zwT.js.br +0 -0
- package/dist/web/assets/check-DExH7zwT.js.gz +0 -0
- package/dist/web/assets/checkbox-Cft8ypsb.js.br +0 -0
- package/dist/web/assets/checkbox-Cft8ypsb.js.gz +0 -0
- package/dist/web/assets/chunk-BO2N2NFS-bEY6272A.js.br +0 -0
- package/dist/web/assets/chunk-BO2N2NFS-bEY6272A.js.gz +0 -0
- package/dist/web/assets/code-highlighter-Cm84nMIT.js.br +0 -0
- package/dist/web/assets/code-highlighter-Cm84nMIT.js.gz +0 -0
- package/dist/web/assets/code-languages-D5Nrl7sO.js.br +0 -0
- package/dist/web/assets/code-languages-D5Nrl7sO.js.gz +0 -0
- package/dist/web/assets/context-menu-CZuXyHCN.js.br +0 -0
- package/dist/web/assets/context-menu-CZuXyHCN.js.gz +0 -0
- package/dist/web/assets/dist-ByRtqJXv.js.br +0 -0
- package/dist/web/assets/dist-ByRtqJXv.js.gz +0 -0
- package/dist/web/assets/dist-hozmU7_C.js +0 -1
- package/dist/web/assets/dist-hozmU7_C.js.br +0 -0
- package/dist/web/assets/dist-hozmU7_C.js.gz +0 -0
- package/dist/web/assets/es2015-Cd8ehGwJ.js.br +0 -0
- package/dist/web/assets/es2015-Cd8ehGwJ.js.gz +0 -0
- package/dist/web/assets/file-code-corner-D1h7_C7f.js.br +0 -0
- package/dist/web/assets/file-code-corner-D1h7_C7f.js.gz +0 -0
- package/dist/web/assets/file-navigation-view-preference-BikLLmlP.js.br +0 -0
- package/dist/web/assets/file-navigation-view-preference-BikLLmlP.js.gz +0 -0
- package/dist/web/assets/file-review-dialog-DVVtiNEL.js +0 -2
- package/dist/web/assets/file-review-dialog-DVVtiNEL.js.br +0 -0
- package/dist/web/assets/file-review-dialog-DVVtiNEL.js.gz +0 -0
- package/dist/web/assets/file-tree-CbuG5nkz.js.br +0 -0
- package/dist/web/assets/file-tree-CbuG5nkz.js.gz +0 -0
- package/dist/web/assets/git-commit-horizontal-BJGxHnV4.js.br +0 -0
- package/dist/web/assets/git-commit-horizontal-BJGxHnV4.js.gz +0 -0
- package/dist/web/assets/git-history-panel-4j8odsDb.js +0 -2
- package/dist/web/assets/git-history-panel-4j8odsDb.js.br +0 -0
- package/dist/web/assets/git-history-panel-4j8odsDb.js.gz +0 -0
- package/dist/web/assets/global-settings-dialog-Dhqfe3qK.js +0 -1
- package/dist/web/assets/global-settings-dialog-Dhqfe3qK.js.br +0 -0
- package/dist/web/assets/global-settings-dialog-Dhqfe3qK.js.gz +0 -0
- package/dist/web/assets/highlighted-body-OFNGDK62-oKnqW5V8.js.br +0 -0
- package/dist/web/assets/highlighted-body-OFNGDK62-oKnqW5V8.js.gz +0 -0
- package/dist/web/assets/index-C1A_OTjT.js.br +0 -0
- package/dist/web/assets/index-C1A_OTjT.js.gz +0 -0
- package/dist/web/assets/index-lKikkWES.css +0 -2
- package/dist/web/assets/index-lKikkWES.css.br +0 -0
- package/dist/web/assets/index-lKikkWES.css.gz +0 -0
- package/dist/web/assets/lazy-message-response-DNUwJy0d.js.br +0 -0
- package/dist/web/assets/lazy-message-response-DNUwJy0d.js.gz +0 -0
- package/dist/web/assets/loader-circle-CYc50iXi.js +0 -1
- package/dist/web/assets/loader-circle-CYc50iXi.js.br +0 -0
- package/dist/web/assets/loader-circle-CYc50iXi.js.gz +0 -0
- package/dist/web/assets/mermaid-GHXKKRXX-8A2qFznr.js +0 -1
- package/dist/web/assets/mermaid-GHXKKRXX-8A2qFznr.js.br +0 -0
- package/dist/web/assets/mermaid-GHXKKRXX-8A2qFznr.js.gz +0 -0
- package/dist/web/assets/message-response-DVL8_J3z.js.br +0 -0
- package/dist/web/assets/message-response-DVL8_J3z.js.gz +0 -0
- package/dist/web/assets/patch-diff-viewer-BgNx-ffs.js.br +0 -0
- package/dist/web/assets/patch-diff-viewer-BgNx-ffs.js.gz +0 -0
- package/dist/web/assets/project-file-popup-page-BwPTSc8o.js.br +0 -0
- package/dist/web/assets/project-file-popup-page-BwPTSc8o.js.gz +0 -0
- package/dist/web/assets/project-source-panel-DWDcX3T9.js.br +0 -0
- package/dist/web/assets/project-source-panel-DWDcX3T9.js.gz +0 -0
- package/dist/web/assets/prompt-input-controls-CT6f-1tO.js.br +0 -0
- package/dist/web/assets/prompt-input-controls-CT6f-1tO.js.gz +0 -0
- package/dist/web/assets/prompt-reference-token-CTm_xv2R.js.br +0 -0
- package/dist/web/assets/prompt-reference-token-CTm_xv2R.js.gz +0 -0
- package/dist/web/assets/provider-connection-queries-CLpiOnBN.js.br +0 -0
- package/dist/web/assets/provider-connection-queries-CLpiOnBN.js.gz +0 -0
- package/dist/web/assets/shiki-bundle-Dhkx9AYM.js.br +0 -0
- package/dist/web/assets/shiki-bundle-Dhkx9AYM.js.gz +0 -0
- package/dist/web/assets/tooltip-BU1Qoscx.js.br +0 -0
- package/dist/web/assets/tooltip-BU1Qoscx.js.gz +0 -0
- package/dist/web/assets/upload-BDX8w8rQ.js.br +0 -0
- package/dist/web/assets/upload-BDX8w8rQ.js.gz +0 -0
- package/dist/web/assets/useInfiniteQuery-Bj31MvqL.js.br +0 -0
- package/dist/web/assets/useInfiniteQuery-Bj31MvqL.js.gz +0 -0
- package/dist/web/assets/workbench-inspector-changes-CWIx9Os6.js +0 -2
- package/dist/web/assets/workbench-inspector-changes-CWIx9Os6.js.br +0 -0
- package/dist/web/assets/workbench-inspector-changes-CWIx9Os6.js.gz +0 -0
- package/dist/web/assets/workbench-pet-canvas-CO4nVH5z.js.br +0 -0
- package/dist/web/assets/workbench-pet-canvas-CO4nVH5z.js.gz +0 -0
- package/dist/web/assets/workbench-shell-DVC3DE5a.js.br +0 -0
- package/dist/web/assets/workbench-shell-DVC3DE5a.js.gz +0 -0
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/patch-diff-viewer-
|
|
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{D as a,E as o,I as s,S as c,_ as l,g as u,l as d,m as f,n as p,t as m,u as h,v as g,w as _,y as v}from"./dist-hozmU7_C.js";import{C as y,D as b,R as x,S,X as C,b as w,d as T,g as E,h as D,i as O,l as k,n as A,p as j,s as ee,t as M,u as N,w as P,x as F,y as I}from"./tooltip-BU1Qoscx.js";import{a as L,c as R,l as z,n as B,o as V,r as H,t as U}from"./checkbox-Cft8ypsb.js";import{n as W,r as G,t as K}from"./loader-circle-CYc50iXi.js";import{a as q,c as J,i as te,l as ne,o as Y,r as re,s as ie,t as ae}from"./workbench-pet-canvas-CO4nVH5z.js";import{t as X}from"./check-DExH7zwT.js";import{v as Z,y as oe}from"./dist-ByRtqJXv.js";import{c as se,i as ce,n as le,r as ue,s as de,t as fe}from"./file-tree-CbuG5nkz.js";import{i as pe,l as me,o as he,s as ge,u as _e}from"./provider-connection-queries-CLpiOnBN.js";import{a as ve,c as ye,i as be,n as xe,o as Se,r as Ce,s as we,t as Te}from"./project-source-panel-DWDcX3T9.js";import{n as Ee,t as De}from"./file-code-corner-D1h7_C7f.js";import{n as Oe,t as ke}from"./prompt-reference-token-CTm_xv2R.js";import{n as Ae,t as je}from"./button-group-b2-xCzBP.js";import{S as Me,_ as Ne,a as Pe,b as Fe,c as Ie,d as Le,f as Re,g as ze,h as Be,i as Ve,l as He,n as Ue,o as We,p as Ge,r as Ke,s as qe,t as Je,u as Ye,v as Xe,x as Ze,y as Qe}from"./prompt-input-controls-CT6f-1tO.js";import{i as $e,r as et,t as tt}from"./file-review-dialog-DVVtiNEL.js";import{t as nt}from"./git-commit-horizontal-BJGxHnV4.js";import{t as rt}from"./lazy-message-response-DNUwJy0d.js";import{a as it,c as at,i as ot,n as st,o as ct,r as lt,s as ut,t as dt}from"./context-menu-CZuXyHCN.js";import{$ as ft,A as pt,At as mt,B as ht,Bt as gt,C as _t,Ct as vt,D as yt,E as bt,Et as xt,G as St,Gt as Ct,H as wt,Ht as Tt,I as Et,K as Dt,Kt as Ot,L as kt,Lt as At,M as jt,N as Mt,O as Nt,P as Pt,Pt as Ft,Q as It,R as Lt,Rt,S as zt,St as Bt,T as Vt,Tt as Ht,U as Ut,Ut as Wt,V as Gt,Vt as Kt,W as qt,Wt as Jt,X as Yt,Z as Xt,_ as Zt,_t as Qt,a as $t,at as en,b as tn,bt as nn,c as rn,ct as an,d as on,dt as sn,et as cn,gt as ln,ht as un,it as dn,j as fn,jt as pn,k as mn,kt as hn,lt as gn,o as _n,ot as vn,q as yn,qt as bn,st as xn,u as Sn,ut as Cn,v as wn,vt as Tn,w as En,wt as Dn,x as On,xt as kn,y as An,yt as jn,z as Mn,zt as Nn}from"./index-C1A_OTjT.js";import{t as Pn}from"./code-languages-D5Nrl7sO.js";import{i as Fn,n as In,t as Ln}from"./file-change-D7aZLgtG.js";var Rn=_(`arrow-down`,[[`path`,{d:`M12 5v14`,key:`s699le`}],[`path`,{d:`m19 12-7 7-7-7`,key:`1idqje`}]]),zn=_(`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`}]]),Bn=_(`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`}]]),Vn=_(`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`}]]),Hn=_(`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`}]]),Un=_(`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`}]]),Wn=_(`chevrons-up-down`,[[`path`,{d:`m7 15 5 5 5-5`,key:`1hf1tw`}],[`path`,{d:`m7 9 5-5 5 5`,key:`sgt6xg`}]]),Gn=_(`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`}]]),Kn=_(`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`}]]),qn=_(`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`}]]),Jn=_(`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`}]]),Yn=_(`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`}]]),Xn=_(`clock-3`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 6v6h4`,key:`135r8i`}]]),Zn=_(`clock`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 6v6l4 2`,key:`mmk7yg`}]]),Qn=_(`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`}]]),$n=_(`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`}]]),er=_(`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`}]]),tr=_(`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`}]]),nr=_(`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`}]]),rr=_(`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`}]]),ir=_(`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`}]]),ar=_(`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`}]]),or=_(`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`}]]),sr=_(`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`}]]),cr=_(`panel-left`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M9 3v18`,key:`fh3hqa`}]]),lr=_(`panel-right`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M15 3v18`,key:`14nvp0`}]]),ur=_(`pause`,[[`rect`,{x:`14`,y:`3`,width:`5`,height:`18`,rx:`1`,key:`kaeet6`}],[`rect`,{x:`5`,y:`3`,width:`5`,height:`18`,rx:`1`,key:`1wsw3u`}]]),dr=_(`play`,[[`path`,{d:`M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z`,key:`10ikf1`}]]),fr=_(`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`}]]),pr=_(`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`}]]),mr=_(`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`}]]),hr=_(`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`}]]),gr=_(`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`}]]),_r=_(`terminal`,[[`path`,{d:`M12 19h8`,key:`baeox8`}],[`path`,{d:`m4 17 6-6-6-6`,key:`1yngyt`}]]),vr=_(`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`}]]),yr=_(`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`}]]),br=_(`zap`,[[`path`,{d:`M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z`,key:`1xq2db`}]]),Q=e(n(),1),$=i(),xr=Object.defineProperty,Sr=(e,t)=>xr(e,`name`,{value:t,configurable:!0}),Cr=`Collapsible`,[wr,Tr]=u(Cr),[Er,Dr]=wr(Cr),Or=Q.forwardRef(Sr(function(e,t){let{__scopeCollapsible:n,open:r,defaultOpen:i,disabled:a,onOpenChange:o,...s}=e,[c,l]=m({prop:r,defaultProp:i??!1,onChange:o,caller:Cr});return(0,$.jsx)(Er,{scope:n,disabled:a,contentId:d(),open:c,onOpenToggle:Q.useCallback(()=>l(e=>!e),[l]),children:(0,$.jsx)(f.div,{"data-state":Pr(c),"data-disabled":a?``:void 0,...s,ref:t})})},`Collapsible`)),kr=`CollapsibleTrigger`,Ar=Q.forwardRef(Sr(function(e,t){let{__scopeCollapsible:n,...r}=e,i=Dr(kr,n);return(0,$.jsx)(f.button,{type:`button`,"aria-controls":i.open?i.contentId:void 0,"aria-expanded":i.open||!1,"data-state":Pr(i.open),"data-disabled":i.disabled?``:void 0,disabled:i.disabled,...r,ref:t,onClick:l(e.onClick,i.onOpenToggle)})},`CollapsibleTrigger`)),jr=`CollapsibleContent`,Mr=Q.forwardRef(Sr(function(e,t){let{forceMount:n,...r}=e,i=Dr(jr,e.__scopeCollapsible);return(0,$.jsx)(p,{present:n||i.open,children:({present:e})=>(0,$.jsx)(Nr,{...r,ref:t,present:e})})},`CollapsibleContent`)),Nr=Q.forwardRef(Sr(function(e,t){let{__scopeCollapsible:n,present:r,children:i,...a}=e,o=Dr(jr,n),[s,l]=Q.useState(r),u=Q.useRef(null),d=c(t,u),p=Q.useRef(0),m=p.current,g=Q.useRef(0),_=g.current,v=o.open||s,y=Q.useRef(v),b=Q.useRef(void 0);return Q.useEffect(()=>{let e=requestAnimationFrame(()=>y.current=!1);return()=>cancelAnimationFrame(e)},[]),h(()=>{let e=u.current;if(e){b.current=b.current||{transitionDuration:e.style.transitionDuration,animationName:e.style.animationName},e.style.transitionDuration=`0s`,e.style.animationName=`none`;let t=e.getBoundingClientRect();p.current=t.height,g.current=t.width,y.current||(e.style.transitionDuration=b.current.transitionDuration,e.style.animationName=b.current.animationName),l(r)}},[o.open,r]),(0,$.jsx)(f.div,{"data-state":Pr(o.open),"data-disabled":o.disabled?``:void 0,id:o.contentId,hidden:!v,...a,ref:d,style:{"--radix-collapsible-content-height":m?`${m}px`:void 0,"--radix-collapsible-content-width":_?`${_}px`:void 0,...e.style},children:v&&i})},`CollapsibleContentImpl`));function Pr(e){return e?`open`:`closed`}Sr(Pr,`getState`);var Fr=Or,Ir=Ar,Lr=Mr;function Rr(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:e.status,text:e.text}}function zr(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 Br(e){return e.flatMap(e=>e.type===`message`&&e.role===`user`?[e.id]:[])}function Vr(e,t){return t===void 0?[]:Br((e.itemKeysByTurnId[t]??[]).flatMap(t=>{let n=e.getItemByKey(t);return n===void 0?[]:[n]}))}function Hr(e,t){if(e.status!==`awaiting-response`)return!1;let n=new Set(e.userMessageIds);return t.some(e=>!n.has(e))}function Ur(e,t,n){return n===`interrupted`||Hr(e,t)}function Wr(e,t){return e.status===`awaiting-response`&&Ur(e,Vr(t,e.turnId),t.turnsById[e.turnId]?.status)}function Gr(e){return e.status===`queued`||e.status===`editing`?{files:e.files,skills:e.skills,text:e.text}:void 0}async function Kr(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(Ft(n,r,null,i.snapshot,!0,t)))[o].find(e=>e.path===a.path&&e.kind===a.kind)??a}var qr=1500;function Jr(e,t){return e||t>0?qr:!1}function Yr(e,t,n,r){return e&&r!==void 0&&t!==n}function Xr(e,t,n,r,i=!0){let a=(0,Q.useRef)(r),o=(0,Q.useRef)(new Map),s=(0,Q.useRef)(R()),c=G({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 Jr(r,e.state.data?.data.length??0)}}),l=z({mutationFn:async r=>{if(n===void 0)return;let i=o.current.get(r)??D();o.current.set(r,i),await e.terminateBackgroundTerminal(t,n,r,{idempotencyKey:i})}}),u=c.refetch,d=l.mutateAsync;(0,Q.useEffect)(()=>{let e=Yr(i,a.current,r,n);a.current=r,e&&u()},[i,r,u,n]);let f=(0,Q.useCallback)(e=>s.current.run(async()=>{try{await d(e),o.current.delete(e),await u()}catch{}}),[u,d]);return{error:c.error,isPending:c.isPending,terminals:c.data?.data??[],terminatingTerminalId:l.isPending&&typeof l.variables==`string`?l.variables:null,terminateTerminal:f}}function Zr({disabled:e,onDelete:t,onRename:n}){let{t:r}=a(`workbench`);return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(ot,{}),(0,$.jsxs)(lt,{disabled:e,onSelect:n,children:[(0,$.jsx)(cn,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{children:r(`openMenu.rename`)})]}),(0,$.jsxs)(lt,{className:`text-danger`,disabled:e,onSelect:t,children:[(0,$.jsx)(ge,{"aria-hidden":`true`,className:`size-4`}),(0,$.jsx)(`span`,{children:r(`openMenu.delete`)})]})]})}function Qr({disabled:e,onDelete:t,onRename:n}){let{t:r}=a(`workbench`);return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(bt,{}),(0,$.jsxs)(zt,{disabled:e,onSelect:n,children:[(0,$.jsx)(cn,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{children:r(`openMenu.rename`)})]}),(0,$.jsxs)(zt,{className:`text-danger`,disabled:e,onSelect:t,children:[(0,$.jsx)(ge,{"aria-hidden":`true`,className:`size-4`}),(0,$.jsx)(`span`,{children:r(`openMenu.delete`)})]})]})}var $r={editor:ye,"file-manager":se,"system-default":Oe,terminal:_r,tool:yr};function ei(e,t){return t===`file`?e:e.filter(e=>e.kind!==`system-default`)}function ti(e){return e.find(e=>e.kind===`file-manager`)}function ni(e){return e.split(/[\\/]/u).at(-1)??e}function ri(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 ii(e){navigator.clipboard.writeText(e).catch(()=>void 0)}function ai({apps:e,isPending:t,onOpen:n,onDelete:r,onOpenInNewWindow:i,onReference:o,onRename:s,onSelect:c,target:l}){let{t:u}=a(`workbench`);return(0,$.jsxs)(An,{modal:!1,onOpenChange:e=>{e&&n()},children:[(0,$.jsxs)(M,{children:[(0,$.jsx)(pt,{asChild:!0,children:(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":u(`openMenu.targetLabel`,{path:l.path}),className:`pointer-events-none size-5 shrink-0 opacity-0 transition-opacity group-hover/file-tree-node:pointer-events-auto group-hover/file-tree-node:opacity-100 group-focus-within/file-tree-node:pointer-events-auto group-focus-within/file-tree-node:opacity-100 focus-visible:pointer-events-auto focus-visible:opacity-100 data-[state=open]:pointer-events-auto data-[state=open]:opacity-100`,size:`embedded`,type:`button`,variant:`embedded`,children:(0,$.jsx)(dn,{"aria-hidden":`true`,className:`size-3.5`})})})}),(0,$.jsx)(A,{side:`left`,children:u(`openMenu.moreActions`)})]}),(0,$.jsx)(oi,{apps:e,isPending:t,onReference:o,onSelect:c,target:l,...r===void 0||s===void 0?{}:{onDelete:r,onRename:s},...i===void 0?{}:{onOpenInNewWindow:i}})]})}function oi({apps:e,isPending:t,onDelete:n,onOpenInNewWindow:r,onReference:i,onRename:o,onSelect:s,target:c}){let{t:l}=a(`workbench`),u=ei(e,c.type),d=l(`openMenu.targetLabel`,{path:c.path}),f=ni(c.path),p=c.reference;return(0,$.jsxs)(tn,{align:`end`,"aria-label":d,className:`w-52`,children:[(0,$.jsxs)(zt,{onSelect:()=>{ii(f)},children:[(0,$.jsx)(Ee,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{children:l(`openMenu.copyName`)})]}),(0,$.jsxs)(zt,{onSelect:()=>{ii(c.relativePath)},children:[(0,$.jsx)(Ee,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{children:l(`openMenu.copyRelativePath`)})]}),(0,$.jsxs)(zt,{onSelect:()=>{ii(c.absolutePath)},children:[(0,$.jsx)(Ee,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{children:l(`openMenu.copyAbsolutePath`)})]}),(0,$.jsxs)(yt,{children:[(0,$.jsxs)(mn,{children:[(0,$.jsx)(se,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{children:l(`openMenu.open`)})]}),(0,$.jsx)(Nt,{children:u.map(e=>{let n=$r[e.kind],r=e.kind===`system-default`?l(`openMenu.systemDefault`):e.name;return(0,$.jsxs)(zt,{"aria-label":r,disabled:t,onSelect:()=>{s(e.id,c.path)},children:[(0,$.jsx)(n,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:r})]},e.id)})})]}),c.type===`file`&&r!==void 0?(0,$.jsxs)(zt,{onSelect:r,children:[(0,$.jsx)(Oe,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{children:l(`openMenu.openInNewWindow`)})]}):null,p===void 0?null:(0,$.jsxs)(zt,{onSelect:()=>{i(p)},children:[(0,$.jsx)(zn,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{children:l(`openMenu.reference`)})]}),n===void 0||o===void 0?null:(0,$.jsx)(Qr,{disabled:t,onDelete:n,onRename:o})]})}function si({apps:e,className:t=``,defaultOpenAppId:n,hidden:r=!1,isDetecting:i,isPending:o,onSelect:s}){let{t:c}=a(`workbench`);if(r)return null;let l=ei(e,`directory`),u=l.find(e=>e.id===n)??l[0],d=i?c(`openMenu.detect`):u===void 0?c(`openMenu.none`):c(`openMenu.openIn`,{app:u.name}),f=u?.name??d,p=u===void 0?se:$r[u.kind];return(0,$.jsxs)(An,{modal:!1,children:[(0,$.jsxs)(je,{className:`shrink-0 ${t}`,children:[(0,$.jsxs)(g,{"aria-label":d,className:`max-w-28 rounded-r-none border-r-0 max-workbench:min-w-11 max-workbench:px-0`,disabled:u===void 0||o,onClick:()=>{u!==void 0&&s(u.id)},size:`toolbar`,title:d,type:`button`,variant:`outline`,children:[(0,$.jsx)(p,{"aria-hidden":`true`}),(0,$.jsx)(`span`,{className:`hidden truncate sm:inline`,children:f})]}),(0,$.jsx)(pt,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":c(`openMenu.choose`),className:`rounded-l-none`,disabled:l.length===0||o,size:`icon-toolbar`,type:`button`,variant:`outline`,children:(0,$.jsx)(W,{"aria-hidden":`true`})})})]}),(0,$.jsx)(tn,{align:`end`,"aria-label":c(`openMenu.choose`),className:`w-52`,children:l.map(e=>{let t=$r[e.kind];return(0,$.jsxs)(zt,{"aria-label":e.name,disabled:o,onSelect:()=>{s(e.id)},children:[(0,$.jsx)(t,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:e.name})]},e.id)})})]})}function ci({apps:e,ariaLabel:t,isPending:n,onDelete:r,onOpenInNewWindow:i,onReference:o,onRename:s,onSelect:c,target:l}){let{t:u}=a(`workbench`),d=ei(e,l.type),f=ni(l.path),p=l.reference;return(0,$.jsxs)(st,{"aria-label":t,className:`w-52`,children:[(0,$.jsxs)(lt,{onSelect:()=>{ii(f)},children:[(0,$.jsx)(Ee,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{children:u(`openMenu.copyName`)})]}),(0,$.jsxs)(lt,{onSelect:()=>{ii(l.relativePath)},children:[(0,$.jsx)(Ee,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{children:u(`openMenu.copyRelativePath`)})]}),(0,$.jsxs)(lt,{onSelect:()=>{ii(l.absolutePath)},children:[(0,$.jsx)(Ee,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{children:u(`openMenu.copyAbsolutePath`)})]}),(0,$.jsxs)(it,{children:[(0,$.jsxs)(ut,{children:[(0,$.jsx)(se,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{children:u(`openMenu.open`)})]}),(0,$.jsx)(ct,{children:d.map(e=>{let t=$r[e.kind],r=e.kind===`system-default`?u(`openMenu.systemDefault`):e.name;return(0,$.jsxs)(lt,{"aria-label":r,disabled:n,onSelect:()=>{c(e.id,l.path)},children:[(0,$.jsx)(t,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:r})]},e.id)})})]}),l.type===`file`&&i!==void 0?(0,$.jsxs)(lt,{onSelect:i,children:[(0,$.jsx)(Oe,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{children:u(`openMenu.openInNewWindow`)})]}):null,p===void 0?null:(0,$.jsxs)(lt,{onSelect:()=>{o(p)},children:[(0,$.jsx)(zn,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{children:u(`openMenu.reference`)})]}),r===void 0||s===void 0?null:(0,$.jsx)(Zr,{disabled:n,onDelete:r,onRename:s})]})}function li({apps:e,children:t,isPending:n,onOpen:r,onDelete:i,onOpenInNewWindow:o,onReference:s,onRename:c,onSelect:l,target:u}){let{t:d}=a(`workbench`);return(0,$.jsxs)(dt,{modal:!1,onOpenChange:e=>{e&&r()},children:[(0,$.jsx)(at,{asChild:!0,onContextMenu:e=>{e.stopPropagation()},children:t}),(0,$.jsx)(ci,{apps:e,ariaLabel:d(`openMenu.targetLabel`,{path:u.path}),isPending:n,onReference:s,...o===void 0?{}:{onOpenInNewWindow:o},onSelect:l,target:u,...i===void 0||c===void 0?{}:{onDelete:i,onRename:c}})]})}var ui=new Set([`agent/close`,`agent/resume`,`agent/send_input`,`agent/spawn`,`agent/wait`]);function di(e){return s.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 fi(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 mi(e){if(!ui.has(e.name))return null;let t=fi(e.input)?e.input:{},n=fi(e.output)?e.output:{};return{agents:(Array.isArray(n.agents)?n.agents:[]).flatMap(e=>{if(!fi(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 hi(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=mi(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??s.t(`subagent.defaultName`,{index:t.size+1,ns:`conversation`}),status:e.status,taskId:e.taskId})}}}return[...t.values()]}function gi(e){return e.split(`-`).map(e=>e===`gpt`?`GPT`:`${e.charAt(0).toUpperCase()}${e.slice(1)}`).join(`-`)}function _i(e){return e===`pending`?`pending`:e===`running`?`in_progress`:e===`failed`||e===`declined`||e===`interrupted`?`error`:`completed`}function vi(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`:_i(e)}function yi(e,t){if(t.length===0)return e===`pending`||e===`running`?s.t(`subagent.orchestrating`,{ns:`conversation`}):s.t(`subagent.operationCompleted`,{ns:`conversation`});let n=vi(e,t);return n===`in_progress`||n===`pending`?s.t(`subagent.operationRunning`,{count:t.length,ns:`conversation`}):n===`error`?s.t(`subagent.operationFailed`,{count:t.length,ns:`conversation`}):s.t(`subagent.operationSucceeded`,{count:t.length,ns:`conversation`})}function bi({activePanel:e,gitStatus:t,temporary:n}){return!n&&e&&t!==void 0&&t.repositoryMode!==`none`&&t.staged.length+t.unstaged.length>0}function xi(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 Si({contextOnly:e=!1,fileOpen:t=!1,gitStatus:n,inspectorOpen:r,requestedTab:i,taskId:a}){let o=xi(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 Ci=`(max-width: 760px)`,wi=`(max-width: 1100px)`,Ti={default:288,maximum:400,minimum:220},Ei={default:320,minimum:320};function Di(e){return typeof window>`u`||!window.matchMedia(e).matches}function Oi(e,t){return Math.max(Ei.minimum,Math.floor((e-t)/2))}function ki(){let[e,t]=(0,Q.useState)(()=>Di(Ci)),[n,r]=(0,Q.useState)(()=>Di(wi)),[i,a]=(0,Q.useState)(Ti.default),[o,s]=(0,Q.useState)(Ei.default),[c,l]=(0,Q.useState)(()=>typeof window>`u`?1440:window.innerWidth),u=(0,Q.useRef)(null),d=Oi(c,e?i:0);return(0,Q.useLayoutEffect)(()=>{let e=u.current;if(e===null)return;let t=()=>{l(e.getBoundingClientRect().width)};t();let n=new ResizeObserver(t);return n.observe(e),()=>{n.disconnect()}},[]),(0,Q.useLayoutEffect)(()=>{s(e=>Math.min(e,d))},[d]),{inspectorMaximumWidth:d,inspectorOpen:n,inspectorWidth:o,setInspectorOpen:r,setInspectorWidth:s,setSidebarOpen:t,setSidebarWidth:a,sidebarOpen:e,sidebarWidth:i,workbenchShellRef:u}}function Ai(){let[e,t]=(0,Q.useState)(),n=(0,Q.useRef)(void 0),r=(0,Q.useCallback)(()=>{let e=new Date().toISOString();n.current=e,t(e)},[]),i=(0,Q.useCallback)(e=>{if(e){if(n.current===void 0){let e=new Date().toISOString();n.current=e,t(e)}return}n.current=void 0,t(void 0)},[]);return{beginSubmission:r,getStartedAt:(0,Q.useCallback)(()=>n.current,[]),handleSubmissionStateChange:i,startedAt:e}}var ji=new Set;function Mi(e,t){return[`projects`,e,`tasks`,t,`launch`]}function Ni(e){return{...sn({...e.task,contextUsage:null,goal:null,plan:null,pendingRequests:[],settings:e.settings,status:`running`,turns:[e.turn],turnsNextCursor:null},e.turn,{...e.input,messageAttachments:e.messageAttachments}),pendingRequests:[]}}function Pi({projectId:e,taskId:t,temporary:n=!1}){let{t:r}=a(`workbench`),i=xn(),{capabilities:o,client:s,error:c,isPending:l,projects:u,projectTaskStates:d,tasks:f}=Qt(),p=u.find(t=>t.id===e),{selectedRootIds:m,setSelectedProjectRoot:h}=Tn(),g=Cn(p,m),_=n?void 0:g?.id,v=n?void 0:g?.path,{markTaskRunning:y,projectRuntime:b,refreshProjectGitStatus:S,requestNotificationPermission:C,retry:w,viewTask:T}=un(),E=bn(),D=x(),{inspectorMaximumWidth:O,inspectorOpen:k,inspectorWidth:A,setInspectorOpen:j,setInspectorWidth:ee,setSidebarOpen:M,setSidebarWidth:N,sidebarOpen:P,sidebarWidth:F,workbenchShellRef:I}=ki(),L=`${e}:${t??`draft`}`,B=t===void 0?`project`:`context`,[V,H]=(0,Q.useState)({scopeKey:L,tab:B}),[U,W]=(0,Q.useState)(null),K=V.scopeKey===L?V.tab:B,q=G(At(e,v??``,s,!n&&v!==void 0)),J=Si({contextOnly:n,fileOpen:U?.projectId===e,gitStatus:q.data,inspectorOpen:k,requestedTab:K,taskId:t}),te=G(nn(s)),ne=z({...kn(s),onSuccess(e){D.setQueryData([`app-info`],e)}}),Y=G(xt(s)),re=G(pe()),ie=G(Dn(e,t,s,J.context)),ae=z({...Ht(e,t,s),onSuccess(n){D.setQueryData([`projects`,e,`tasks`,t??null,`mcp-servers`],n)}}),X=G(vt(s)),Z=G(Rt(e,s,!n)),oe=z({meta:{actionNotification:{successMessage:!1}},mutationFn:({appId:t,path:n})=>s.openProject(e,v,n===void 0?{appId:t}:{appId:t,path:n})}),se=z({meta:{actionNotification:{successMessage:!1}},mutationFn:({attachmentId:t,taskId:n})=>s.openTaskAttachment(e,n,t)}),ce=(0,Q.useRef)(oe);ce.current=oe;let le=(0,Q.useRef)(R()),ue=ti(Z.data?.apps??[]),de=(0,Q.useCallback)(()=>{if(ue===void 0)return;let e=ce.current;e.reset(),le.current.run(()=>e.mutateAsync({appId:ue.id,path:void 0})).catch(()=>void 0)},[ue,le,ce]),fe=G({...Nn(e,s),enabled:o?.skills.list===!0}),me=G(mt(e,s,!n)),he=z({...hn(e,s),onSuccess(t){D.setQueryData([`projects`,e,`defaults`],t)}}),ge=z({...Bt(s),async onSuccess(n){D.setQueryData([`settings`],n),await D.invalidateQueries({exact:!0,queryKey:[`projects`,e,`defaults`]}),t!==void 0&&await b.refreshTaskSnapshot(e,t)}}),_e=t===void 0?void 0:D.getQueryData(Mi(e,t)),ve=Dt(e,t,b),ye=(0,Q.useMemo)(()=>_e===void 0?void 0:Ni(_e),[_e]),be=d.get(e),xe=wn({hasActiveTask:t!==void 0,projectDataFailed:c!==null||(be?.error??null)!==null,projectDataPending:l||be?.isPending===!0,taskConnectionState:ve.connectionState}),Se=Xr(s,e,t,ve.metadata?.status===`running`||ye?.status===`running`,J.context),Ce=`${e}:${v??`temporary`}`,[we,Te]=(0,Q.useState)(()=>({paths:new Set,scope:Ce})),Ee=we.scope===Ce?we.paths:ji,{beginSubmission:De,getStartedAt:Oe,handleSubmissionStateChange:ke,startedAt:Ae}=Ai(),[je,Me]=(0,Q.useState)(),[Ne,Pe]=(0,Q.useState)(!1),[Fe,Ie]=(0,Q.useState)(null),[Le,Re]=(0,Q.useState)(null),[ze,Be]=(0,Q.useState)(null),[Ve,He]=(0,Q.useState)(null),Ue=(0,Q.useCallback)(t=>{h(e,t),Re(null),Be(null),W(null)},[e,h]),We=G(Ft(e,v??``,null,q.data?.snapshot??``,bi({activePanel:J.context||J.project||J.changes,gitStatus:q.data,temporary:n}),s)),Ge=(0,Q.useCallback)(e=>{H({scopeKey:L,tab:e})},[L]);(0,Q.useLayoutEffect)(()=>{T(e,t)},[e,t,T]);let Ke=n?r(`shell.temporaryTask`):p?.name??e,qe=v??``,Je=f.find(n=>n.projectId===e&&n.id===t)?.title??ve.metadata?.title??r(`shell.newChat`),Ye=z(gt(s)),Xe=(0,Q.useRef)(R()),Ze=Le?.projectId===e?Le:null,Qe=U?.projectId===e?U:null,$e=ze?.projectId===e?ze.changes:null,et=(0,Q.useMemo)(()=>(ve.itemStructureRevision,ve.metadata,k?ve.readSnapshot()??ye:ye),[k,ve,ye]),tt=(0,Q.useMemo)(()=>hi(et),[et]),nt=Ve?.projectId===e&&Ve.parentTaskId===t?{...Ve.selection,status:tt.find(e=>e.taskId===Ve.selection.taskId)?.status??Ve.selection.status}:null;return{access:i,activeTaskRenameLockRef:Xe,appInfoQuery:te,appUpdateMutation:ne,backgroundTerminals:Se,beginNewChatSubmission:De,capabilities:o,client:s,error:c,expandedFileTreePaths:Ee,fileReviewSelection:ze,getNewChatSubmissionStartedAt:Oe,gitStatusQuery:q,gitStatusDetailsQuery:We,globalSettingsMutation:ge,globalSettingsSection:Fe,globalSettingsQuery:X,handleNewChatSubmissionStateChange:ke,inspectorOpen:k,inspectorMaximumWidth:O,inspectorTab:K,inspectorTask:et,inspectorWidth:A,isPending:l,markTaskRunning:y,mcpServersQuery:ie,mcpServersReloadMutation:ae,modelsQuery:Y,navigate:E,newChatSubmissionStartedAt:Ae,openProjectFolder:de,pendingTaskSelection:je,projectDefaultsMutation:he,projectDefaultsQuery:me,projectName:Ke,projectRoots:p?.roots??[],projectOpenCapabilitiesQuery:Z,providerConnectionQuery:re,projectFolderOpenDisabled:ue===void 0||oe.isPending,projectPath:qe,projectPathOpenLockRef:le,projectPathOpenMutation:oe,projectPathOpenMutationRef:ce,taskAttachmentOpenMutation:se,projectRuntime:b,projectTaskState:be,projects:u,queryClient:D,refreshProjectGitStatus:S,renameMutation:Ye,requestNotificationPermission:C,retry:w,runtime:ve,selectedFileReview:$e,selectedInspectorFile:Qe,selectedProjectFileDialog:Ze,selectedRootId:_,selectedRootPath:v,selectedSubagent:nt,setFileReviewSelection:Be,setFileTreeExpansion:Te,setGlobalSettingsSection:Ie,setInspectorOpen:j,setInspectorTab:Ge,setInspectorWidth:ee,setPendingTaskSelection:Me,setSidebarOpen:M,setSidebarWidth:N,setInspectorFileSelection:W,setProjectFileDialogSelection:Re,setSelectedRootId:Ue,setSubagentDialogSelection:He,setTaskRenameOpen:Pe,sidebarConnectionState:xe,sidebarOpen:P,sidebarWidth:F,skillsQuery:fe,startingSnapshot:ye,subagents:tt,taskLaunchState:_e,temporary:n,taskRenameOpen:Ne,tasks:f,t:r,title:Je,viewTask:T,workbenchShellRef:I}}function Fi(e,t){return{...e,fastMode:t}}function Ii(e,t,n){return e?n??!1:t??n??!1}function Li(e,{projectId:t,taskId:n,temporary:r=!1}){let{activeTaskRenameLockRef:i,client:a,getNewChatSubmissionStartedAt:o,globalSettingsQuery:s,gitStatusQuery:c,markTaskRunning:l,modelsQuery:u,navigate:d,projectDefaultsMutation:f,projectDefaultsQuery:p,providerConnectionQuery:m,projectPathOpenLockRef:h,projectPathOpenMutationRef:g,queryClient:_,renameMutation:v,runtime:y,selectedRootPath:b,setFileReviewSelection:x,setInspectorFileSelection:S,setInspectorOpen:C,setInspectorTab:w,setPendingTaskSelection:T,setProjectFileDialogSelection:D,setSidebarOpen:O,setTaskRenameOpen:k,taskLaunchState:A}=e,j=(0,Q.useCallback)(e=>{S({change:e,kind:`diff`,projectId:t}),w(`file`),C(!0)},[t,S,C,w]),M=(0,Q.useCallback)(e=>{b!==void 0&&Kr(_,a,t,b,c.data,e).then(e=>{D({change:e,kind:`diff`,projectId:t})}).catch(e=>{L(e instanceof Error?e:Error(`Git diff is unavailable`))})},[a,c.data,t,_,b,D]),N=(0,Q.useCallback)((e,n)=>{let r=e=>{let t=g.current;t.reset(),h.current.run(()=>t.mutateAsync({appId:`system-default`,path:e})).catch(()=>void 0)};if(n===`popup`){rn({onOpenSystemDefault:r,projectId:t,reference:e,...b===void 0?{}:{rootPath:b}});return}let i=on(e.path);if(i===`system`){r(e.path);return}S({kind:i,projectId:t,reference:e}),w(`file`),C(!0)},[t,h,g,b,C,w,S]),P=(0,Q.useCallback)(e=>{let n=on(e);if(n===`system`){let t=g.current;t.reset(),h.current.run(()=>t.mutateAsync({appId:`system-default`,path:e})).catch(()=>void 0);return}D({kind:n,projectId:t,reference:{lineNumber:null,path:e}})},[t,h,g,D]),F=(0,Q.useCallback)(e=>{x({changes:e,projectId:t})},[t,x]),I=()=>{k(!1),requestAnimationFrame(()=>{document.querySelector(`#workbench-task-title-rename`)?.focus()})},R=e=>i.current.run(async()=>{if(n!==void 0)try{let r=await v.mutateAsync({projectId:t,taskId:n,title:e});Tt(_,r.task),I()}catch{}}),z=(0,Q.useCallback)(e=>{_.setQueryData([`projects`,e.projectId,`tasks`],t=>Ct(t,e)),_.setQueryData([`projects`,e.projectId,`tasks`,ee],t=>t===void 0?void 0:[e,...t.filter(t=>t.id!==e.id)])},[_]),B=(0,Q.useCallback)(e=>{z(e),T({projectId:e.projectId,taskId:e.id})},[z,T]),V=(0,Q.useCallback)((e,n,i,s,c=[],u)=>{if(z(e),n!==void 0&&i!==void 0&&s!==void 0&&u!==void 0){let t=o()??n.startedAt,r={checkpoint:u,input:i,messageAttachments:c,settings:s,...t===null?{}:{submissionStartedAt:t},task:e,turn:n};_.setQueryData(Mi(e.projectId,e.id),r),_.setQueryData(jn(e.projectId,e.id,a).queryKey,{checkpoint:u,snapshot:Ni(r)})}n!==void 0&&l(t,e.id),T(void 0),d({...r?{params:{taskId:e.id},to:`/temporary/t/$taskId`}:{params:{projectId:t,taskId:e.id},to:`/p/$projectId/t/$taskId`}})},[z,a,o,l,d,t,_,T,r]),H=u.data?.data??[],U=s.data?.settings,W=p.data?.settings,G=m.data!==void 0&&E(m.data),K=r?U:W,q=H.find(e=>e.id===K?.model)??H.find(e=>e.isDefault)??H[0],J=(0,Q.useMemo)(()=>({approvalPolicy:K?.approvalPolicy??U?.approvalPolicy??`on-request`,approvalsReviewer:K?.approvalsReviewer??U?.approvalsReviewer??`user`,model:q?.id??K?.model??``,reasoningEffort:K?.reasoningEffort??q?.defaultReasoningEffort??``,sandboxMode:K?.sandboxMode??`workspace-write`}),[q,K,U]),[te,ne]=(0,Q.useState)(),Y=r?te??J:J,re=Ii(r,W?.fastMode,U?.fastMode),ie=async(e,t)=>{r||await f.mutateAsync(Fi(e,t))},ae=async(e,t,n)=>{if(r){ne(e);return}await ie(e,n)},X=(0,Q.useCallback)(e=>{d({params:{projectId:e},to:`/p/$projectId`})},[d]),Z=()=>{O(!1),requestAnimationFrame(()=>{document.querySelector(`#workbench-sidebar-toggle`)?.focus()})},oe=()=>{C(!1),requestAnimationFrame(()=>{document.querySelector(`#workbench-inspector-toggle`)?.focus()})},se=A?.turn.id?y.store!==void 0&&Vr(y.store.getState(),A.turn.id).length>0:!1;return(0,Q.useEffect)(()=>{n!==void 0&&se&&_.removeQueries({exact:!0,queryKey:Mi(t,n)})},[se,t,_,n]),(0,Q.useEffect)(()=>{let e=Ri(y.store?.getState());n===void 0||e===void 0||_.setQueryData([`projects`,t,`tasks`],t=>Wt(t,e))},[t,_,y.itemStructureRevision,y.metadata,y.store,n]),(0,Q.useEffect)(()=>{let e=window.matchMedia(Ci),t=window.matchMedia(wi),n=()=>{e.matches&&O(!1),t.matches&&C(!1)};return e.addEventListener(`change`,n),t.addEventListener(`change`,n),()=>{e.removeEventListener(`change`,n),t.removeEventListener(`change`,n)}},[C,O]),{...e,closeInspector:oe,closeSidebar:Z,closeTaskRenameDialog:I,draftSettings:Y,fastModeDefault:re,fastModeAvailable:G,globalSettings:U,handleNewTaskProjectChange:X,handleTaskCreated:B,handleTaskStarted:V,models:H,openFileDiff:j,openProjectFileDiff:M,openFileReview:F,openMessageFileReference:N,openProjectFile:P,renameActiveTask:R,updateDraftSettings:ae,updateProjectTaskDefaults:ie}}function Ri(e){let t=e?.snapshotMetadata;if(!(e===void 0||t==null))return{id:t.id,projectId:t.projectId,title:t.title,turns:e.turnIds.flatMap(t=>{let n=e.turnsById[t];if(n===void 0)return[];let r=(e.itemKeysByTurnId[t]??[]).flatMap(t=>{let n=e.getItemByKey(t);return n?.type===`message`?[n]:[]});return[{...n,items:r}]}),updatedAt:t.updatedAt}}var zi=e(r(),1);function Bi(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 Vi(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 Hi(e,t){if(e===void 0)throw Error(`Unexpected undefined${t?`: ${t}`:``}`);return e}var Ui=(e,t)=>Math.abs(e-t)<1.01,Wi=(e,t,n)=>{let r;return function(...i){e.clearTimeout(r),r=e.setTimeout(()=>t.apply(this,i),n)}},Gi,Ki=()=>{if(Gi!==void 0)return Gi;if(typeof navigator>`u`)return Gi=!1;if(/iP(hone|od|ad)/.test(navigator.userAgent))return Gi=!0;let e=navigator.maxTouchPoints;return Gi=navigator.platform===`MacIntel`&&e!==void 0&&e>0},qi=e=>{let{offsetWidth:t,offsetHeight:n}=e;return{width:t,height:n}},Ji=e=>e,Yi=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},Xi=(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(qi(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(qi(n))};e.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(r):r()});return a.observe(n,{box:`border-box`}),()=>{a.unobserve(n)}},Zi={passive:!0},Qi=typeof window>`u`||`onscrollend`in window,$i=(e,t,n)=>{let r=e.scrollElement;if(!r)return;let i=e.targetWindow;if(!i)return;let a=e.options.useScrollendEvent&&Qi,o=0,s=a?null:Wi(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,Zi),a&&r.addEventListener(`scrollend`,u,Zi),()=>{r.removeEventListener(`scroll`,l),a&&r.removeEventListener(`scrollend`,u)}},ea=(e,t)=>$i(e,t,t=>{let{horizontal:n,isRtl:r}=e.options;return n?t.scrollLeft*(r&&-1||1):t.scrollTop}),ta=(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`]},na=(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})},ra=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:Ji,rangeExtractor:Yi,onChange:()=>{},measureElement:ta,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=Vi(()=>(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,!(!Ki()||this.targetWindow==null)&&(this._iosJustTouchEnded=!0,this._iosTouchEndTimerId=this.targetWindow.setTimeout(()=>{this._iosJustTouchEnded=!1,this._iosTouchEndTimerId=null,this._flushIosDeferredIfReady()},150))};e.addEventListener(`touchstart`,t,Zi),e.addEventListener(`touchend`,n,Zi),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&&(Ki()&&(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=Vi(()=>[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=Vi(()=>[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=Bi(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=Vi(()=>[this.getMeasurements(),this.getSize(),this.getScrollOffset(),this.options.lanes],(e,t,n,r)=>e.length===0||t===0?(this.range=null,null):(this.range=oa(e,t,n,r,r===1&&this._flatMeasurements!=null?this._flatMeasurements:null),this.range),{key:!1,debug:()=>this.options.debug}),this.getVirtualIndexes=Vi(()=>{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=Vi(()=>[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 Hi(t[ia(0,t.length-1,r?e=>n[e*2]:e=>Hi(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:Ki()&&(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&&Ui(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()}},ia=(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 aa(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 oa(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=aa(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=ia(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 sa=typeof document<`u`?Q.useLayoutEffect:Q.useEffect;function ca({useFlushSync:e=!0,directDomUpdates:t=!1,directDomUpdatesMode:n=`transform`,...r}){let i=Q.useReducer(e=>e+1,0)[1],a=Q.useRef({enabled:t,mode:n,container:null,lastSize:null,lastPositions:new WeakMap,prevRange:null});a.current.enabled=t,a.current.mode=n;let o=e=>{let t=a.current;if(!t.enabled||!t.container)return;let n=e.getTotalSize();if(n!==t.lastSize){t.lastSize=n;let r=e.options.horizontal?`width`:`height`;t.container.style[r]=`${n}px`}},s=e=>{let t=a.current;if(!t.enabled||!t.container)return;o(e);let n=!!e.options.horizontal,r=t.mode===`transform`,i=n?`left`:`top`,s=e.options.scrollMargin,c=e.getVirtualItems();for(let a of c){let o=a.start-s,c=e.elementsCache.get(a.key);c&&t.lastPositions.get(c)!==o&&(t.lastPositions.set(c,o),r?c.style.transform=n?`translate3d(${o}px, 0, 0)`:`translate3d(0, ${o}px, 0)`:c.style[i]=`${o}px`)}},c={...r,onChange:(t,n)=>{var o;let c=a.current,l=!0;if(c.enabled){s(t);let e=t.range,n=c.prevRange;l=!n||n.isScrolling!==t.isScrolling||n.startIndex!==e?.startIndex||n.endIndex!==e?.endIndex,l&&(c.prevRange=e?{startIndex:e.startIndex,endIndex:e.endIndex,isScrolling:t.isScrolling}:null)}l&&(e&&n?(0,zi.flushSync)(i):i()),(o=r.onChange)==null||o.call(r,t,n)}},[l]=Q.useState(()=>{let e=new ra(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),sa(()=>l._didMount(),[]),sa(()=>(o(l),l._willUpdate())),sa(()=>{s(l)}),l}function la(e){return ca({observeElementRect:Xi,observeElementOffset:ea,scrollToFn:na,...e})}var ua=24;function da(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<ua)},pauseFollowing(){a(!1)},scrollToBottom(e){o(e,`smooth`)}}}var fa=(0,Q.createContext)(null),pa={height:768,width:1024},ma=300,ha=24,ga=3;function _a(){let e=(0,Q.useContext)(fa);if(e===null)throw Error(`Conversation virtual components must be used within Conversation`);return e}function va({children:e,className:t=``,conversationId:n,onScroll:r,scrollToBottomSignal:i,style:a,...o}){let s=(0,Q.useRef)(null),c=(0,Q.useRef)(i),[l,u]=(0,Q.useState)(!0),[d,f]=(0,Q.useState)(0),p=(0,Q.useRef)(void 0),m=p.current??=da(u),h=(0,Q.useCallback)(()=>{let e=s.current;e!==null&&m.scrollToBottom(e)},[m]),g=(0,Q.useCallback)(()=>{m.pauseFollowing()},[m]),_=(0,Q.useMemo)(()=>({atBottom:l,containerRef:s,pauseFollowing:g,scrollbarWidth:d,scrollToBottom:h}),[l,g,d,h]);return(0,Q.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,Q.useLayoutEffect)(()=>{if(i===void 0||i===c.current)return;c.current=i;let e=s.current;e!==null&&m.scrollToBottom(e)},[m,i]),(0,Q.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,$.jsx)(fa.Provider,{value:_,children:(0,$.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 ya({className:e=``,...t}){return(0,$.jsx)(`div`,{className:`mx-auto flex w-full max-w-content flex-col px-4 py-6 sm:px-6 sm:py-7 ${e}`,...t})}function ba({className:e=``,estimateSize:t,footer:n,getItemKey:r,items:i,renderNavigation:a,renderItem:o,...s}){let{containerRef:c,pauseFollowing:l,scrollbarWidth:u}=_a(),d=(0,Q.useRef)(0),f=(0,Q.useCallback)(()=>c.current,[c]),p=(0,Q.useCallback)(e=>t?.(i[e],e)??ma,[t,i]),m=(0,Q.useCallback)(e=>r(i[e],e),[r,i]),h=la({anchorTo:`end`,count:i.length,estimateSize:p,followOnAppend:`auto`,gap:ha,getItemKey:m,getScrollElement:f,initialRect:pa,overscan:ga,scrollEndThreshold:24}),g=(0,Q.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,Q.useEffect)(()=>()=>{cancelAnimationFrame(d.current)},[]),(0,$.jsxs)($.Fragment,{children:[a?.(g,u,c),(0,$.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,$.jsx)(`div`,{className:`relative w-full`,style:{height:h.getTotalSize()},children:h.getVirtualItems().map(e=>(0,$.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,$.jsx)(`div`,{className:i.length===0?`space-y-6`:`mt-6 space-y-6`,children:n})]})]})}function xa({className:e=``,onClick:t,type:n=`button`,...r}){let i=(0,Q.useContext)(fa),{t:o}=a(`conversation`);return i?.atBottom===!1?(0,$.jsxs)(g,{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:o(`agentComponents.scrollToBottom`),type:n,...r,onClick:e=>{i.scrollToBottom(),t?.(e)},children:[(0,$.jsx)(Rn,{className:`size-4`,"aria-hidden":`true`}),(0,$.jsx)(`span`,{className:`sr-only`,children:o(`agentComponents.scrollToBottom`)})]}):null}function Sa({className:e=``,from:t,...n}){return(0,$.jsx)(`article`,{className:`group/message flex w-full flex-col ${t===`user`?`items-end`:`items-start`} ${e}`,"data-role":t,...n})}function Ca({className:e=``,...t}){return(0,$.jsx)(`div`,{className:`max-w-full text-body leading-6 text-foreground group-data-[role=user]/message:max-w-[var(--ui-layout-message-width)] group-data-[role=user]/message:rounded-surface group-data-[role=user]/message:bg-control group-data-[role=user]/message:px-3.5 group-data-[role=user]/message:py-2.5 ${e}`,...t})}function wa({className:e=``,...t}){return(0,$.jsx)(`div`,{className:`flex items-center gap-1 ${e}`,...t})}function Ta({className:e=``,label:t,tooltip:n,type:r=`button`,...i}){return(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{variant:`ghost`,"aria-label":t??n,className:`grid size-7 place-items-center rounded-control text-muted-foreground transition-colors hover:bg-control-hover hover:text-foreground ${e}`,type:r,...i})}),n===void 0?null:(0,$.jsx)(A,{children:n})]})}(0,Q.createContext)(null);var Ea=(0,Q.createContext)(null);function Da({children:e,className:t=``,collapsible:n=!0,defaultOpen:r=!1,status:i,...a}){let o=(0,Q.useMemo)(()=>({collapsible:n,status:i}),[n,i]),s=`group/task w-full text-label text-foreground ${t}`;return(0,$.jsx)(Ea.Provider,{value:o,children:n?(0,$.jsx)(`details`,{className:s,"data-ai-task":``,"data-status":i,open:r,...a,children:e}):(0,$.jsx)(`div`,{className:s,"data-ai-task":``,"data-status":i,...a,children:e})})}var Oa={completed:{icon:(0,$.jsx)(X,{className:`size-3.5`,"aria-hidden":`true`}),labelKey:`agentComponents.status.completed`},error:{icon:(0,$.jsx)(Yn,{className:`size-3.5`,"aria-hidden":`true`}),labelKey:`agentComponents.status.error`},in_progress:{icon:(0,$.jsx)(Kn,{className:`size-3.5 animate-spin`,"aria-hidden":`true`}),labelKey:`agentComponents.status.inProgress`},pending:{icon:(0,$.jsx)(en,{className:`size-3.5`,"aria-hidden":`true`}),labelKey:`agentComponents.status.pending`}};function ka({className:e=``,suffix:t,title:n,...r}){let i=(0,Q.useContext)(Ea),{t:o}=a(`conversation`);if(i===null)throw Error(`TaskTrigger must be used within Task`);let s=Oa[i.status],c=`flex min-h-9 w-full list-none items-center gap-2 py-1 [&::-webkit-details-marker]:hidden ${i.collapsible?`cursor-pointer`:``} ${e}`,l=(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`span`,{className:`shrink-0 ${i.status===`error`?`text-danger`:`text-muted-foreground`}`,children:[s.icon,(0,$.jsx)(`span`,{className:`sr-only`,children:o(s.labelKey)})]}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-medium`,children:n}),t,i.collapsible?(0,$.jsx)(oe,{className:`size-3.5 shrink-0 text-muted-foreground transition-transform group-open/task:rotate-90`,"aria-hidden":`true`}):null]});return i.collapsible?(0,$.jsx)(`summary`,{className:c,...r,children:l}):(0,$.jsx)(`div`,{className:c,...r,children:l})}function Aa({className:e=``,...t}){return(0,$.jsx)(`div`,{className:`pb-1 pl-5 ${e}`,...t})}function ja({className:e=``,...t}){return(0,$.jsx)(`div`,{className:`min-w-0 [overflow-wrap:anywhere] border-l border-separator py-1 pl-3 text-meta leading-5 text-muted-foreground ${e}`,...t})}function Ma({onProjectChange:e,projectId:t,projects:n,scopeName:r}){let i=r??n.find(e=>e.id===t)?.name??``;return(0,$.jsx)(`section`,{className:`grid min-h-0 flex-1 place-items-center px-6`,"aria-label":s.t(`timeline.conversation`,{ns:`conversation`}),children:(0,$.jsxs)(`div`,{className:`w-full max-w-xl text-center`,children:[(0,$.jsx)(sr,{"aria-hidden":`true`,className:`mx-auto size-12 text-muted-foreground/55`,strokeWidth:1.35}),(0,$.jsxs)(`h2`,{className:`mt-5 flex flex-wrap items-center justify-center text-balance text-xl font-normal leading-tight text-foreground`,children:[s.t(`timeline.emptyBefore`,{ns:`conversation`}),(0,$.jsxs)(`span`,{className:`group relative mx-1 inline-block max-w-full rounded-control focus-within:shadow-focus`,children:[(0,$.jsx)(`span`,{"aria-hidden":`true`,className:`block max-w-full truncate whitespace-pre font-sans font-normal text-foreground underline decoration-current/35 underline-offset-4 transition-colors group-hover:decoration-current`,children:i}),r===void 0?(0,$.jsx)(`select`,{"aria-label":s.t(`timeline.selectProject`,{ns:`conversation`}),className:`absolute inset-0 size-full min-w-0 cursor-pointer appearance-none opacity-0 outline-none`,onChange:n=>{let r=n.currentTarget.value;r!==t&&e(r)},value:t,children:n.map(e=>(0,$.jsx)(`option`,{value:e.id,children:e.name},e.id))}):null]}),s.t(`timeline.emptyAfter`,{ns:`conversation`})]})]})})}function Na({message:e,role:t}){return(0,$.jsx)(`section`,{"aria-label":s.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 Pa(e){return e===`pending`?`input-streaming`:e===`running`?`input-available`:e===`declined`?`output-denied`:e===`failed`||e===`interrupted`?`output-error`:`output-available`}function Fa(e){return e===`pending`?`pending`:e===`running`?`in_progress`:e===`failed`||e===`declined`||e===`interrupted`?`error`:`completed`}function Ia(e){return typeof e==`string`?e:JSON.stringify(e,null,2)}function La({item:e,operation:t}){let n=vi(e.status,t.agents),r=yi(e.status,t.agents);return(0,$.jsx)(Da,{collapsible:!1,status:n,children:(0,$.jsx)(ka,{title:`${di(t.name)} · ${r}`})})}var Ra=1e3,za=new Map;function Ba(e){let t=za.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 za.set(e,n),n}function Va(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 Ha({completedAt:e,expanded:t,onToggle:n,startedAt:r}){let[i,a]=(0,Q.useState)(()=>Date.now());if((0,Q.useEffect)(()=>{if(r===null||e!==null)return;let t=globalThis.setInterval(()=>{a(Date.now())},Ra);return()=>{globalThis.clearInterval(t)}},[e,r]),r===null)return null;let o=Date.parse(r),c=e===null?i:Date.parse(e);if(!Number.isFinite(o)||!Number.isFinite(c))return null;let l=Va(Math.max(0,Math.floor((c-o)/1e3))),u=(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`span`,{children:[s.t(`timeline.processing`,{ns:`conversation`}),`\xA0`]}),(0,$.jsx)(`time`,{dateTime:l.dateTime,children:l.label})]}),d=`mb-4 flex w-full items-center border-b border-separator pb-2.5 text-label font-medium text-muted-foreground`;return n===void 0?(0,$.jsx)(`div`,{className:d,"data-turn-processing-time":``,children:u}):(0,$.jsxs)(`button`,{"aria-expanded":t??!1,"aria-label":s.t(t?`timeline.collapseProcess`:`timeline.expandProcess`,{ns:`conversation`}),className:`${d} cursor-pointer text-left transition-colors hover:text-foreground focus-visible:shadow-focus`,"data-turn-processing-time":``,onClick:n,type:`button`,children:[u,(0,$.jsx)(oe,{"aria-hidden":`true`,className:`ms-auto size-3.5 transition-transform ${t?`rotate-90`:``}`})]})}function Ua(e,t,n){return e===`user`?t.startedAt??n:t.completedAt??n}function Wa({lastTurnId:e,modeLabel:t,onForkTask:n,text:r,timestamp:i}){let[a,c]=(0,Q.useState)(!1),l=(0,Q.useRef)(null),u=(0,Q.useRef)(R()),d=i===void 0?void 0:new Date(i),f=o(),p=d===void 0?void 0:Ba(f),m=()=>u.current.run(async()=>{try{await navigator.clipboard.writeText(r),V()}catch(e){L(e)}}),h=()=>u.current.run(async()=>{if(!(e===void 0||n===void 0)){l.current??=D(),c(!0);try{await n(e,l.current),V()}catch(e){L(e)}finally{c(!1)}}});return(0,$.jsxs)(wa,{className:`mt-2 text-label text-muted-foreground`,children:[(0,$.jsx)(Ta,{label:s.t(`timeline.copyMessage`,{ns:`conversation`}),onClick:()=>{m()},tooltip:s.t(`timeline.copyMessage`,{ns:`conversation`}),children:(0,$.jsx)(Ee,{className:`size-3.5`,"aria-hidden":`true`})}),e===void 0||n===void 0?null:(0,$.jsx)(Ta,{disabled:a,label:a?s.t(`timeline.forking`,{ns:`conversation`}):s.t(`timeline.fork`,{ns:`conversation`}),onClick:()=>{h()},tooltip:s.t(`timeline.fork`,{ns:`conversation`}),children:(0,$.jsx)(J,{className:`size-3.5`,"aria-hidden":`true`})}),t===void 0?null:(0,$.jsx)(`span`,{children:t}),i===void 0||d===void 0?null:(0,$.jsx)(`time`,{dateTime:i,title:p?.full.format(d),children:p?.time.format(d)})]})}var Ga=(0,Q.memo)(function({as:e=`p`,children:t,className:n=``,duration:r=2,spread:i=2,style:a,...o}){let s=(0,Q.useMemo)(()=>({"--ui-shimmer-duration":`${String(r)}s`,"--ui-shimmer-spread":`${String(i)}em`,...a}),[r,i,a]);return(0,$.jsx)(e,{className:`agent-shimmer inline-block ${n}`,"data-agent-shimmer":``,style:s,...o,children:t})});Ga.displayName=`Shimmer`;function Ka(e){return e===`__CODEXLY_PENDING_COMMAND__`?s.t(`timeline.commandPending`,{ns:`conversation`}):e}function qa(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:Ka(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:s.t(`timeline.approvalReview.reviewing`,{ns:`conversation`}),type:`operation`};if(e.at(-1)?.item?.type===`plan`)return{label:s.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:Ka(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 Ja({operation:e}){let t=e===void 0?s.t(`timeline.running`,{ns:`conversation`}):s.t(`timeline.runningOperation`,{ns:`conversation`,operation:e.label}),n=e===void 0?s.t(`timeline.aiRunning`,{ns:`conversation`}):s.t(`timeline.aiRunningOperation`,{ns:`conversation`,operation:e.label});return(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2 text-muted-foreground`,role:`status`,children:[e?.type===`command`?(0,$.jsx)(hr,{"aria-hidden":`true`,className:`size-3.5 shrink-0`}):null,(0,$.jsx)(Ga,{"aria-label":n,as:`span`,className:`min-w-0 truncate text-body-small`,children:t})]})}function Ya(e){let t=e.target;return t.type===`uncommitted_changes`?s.t(`timeline.reviewPrompt.uncommitted`,{ns:`conversation`}):t.type===`base_branch`?s.t(`timeline.reviewPrompt.baseBranch`,{branch:t.branch,ns:`conversation`}):t.type===`commit`?t.title===void 0?s.t(`timeline.reviewPrompt.commit`,{ns:`conversation`,sha:t.sha}):s.t(`timeline.reviewPrompt.commitWithTitle`,{ns:`conversation`,sha:t.sha,title:t.title}):s.t(`timeline.reviewPrompt.custom`,{instructions:t.instructions,ns:`conversation`})}function Xa({item:e}){let t=s.t(`timeline.approvalReview.status.${e.status}`,{ns:`conversation`}),n=e.status===`in_progress`?`in_progress`:e.status===`approved`?`completed`:`error`;return(0,$.jsxs)(Da,{collapsible:!0,defaultOpen:e.status!==`approved`,status:n,children:[(0,$.jsx)(ka,{title:s.t(`timeline.approvalReview.title`,{ns:`conversation`,status:t})}),(0,$.jsxs)(Aa,{children:[(0,$.jsx)(ja,{children:s.t(`timeline.approvalReview.actionDetail`,{action:s.t(`timeline.approvalReview.action.${e.action.type}`,{ns:`conversation`}),detail:e.action.detail,ns:`conversation`})}),e.riskLevel===void 0?null:(0,$.jsx)(ja,{children:s.t(`timeline.approvalReview.risk`,{level:s.t(`timeline.approvalReview.riskLevel.${e.riskLevel}`,{ns:`conversation`}),ns:`conversation`})}),e.userAuthorization===void 0?null:(0,$.jsx)(ja,{children:s.t(`timeline.approvalReview.authorization`,{level:s.t(`timeline.approvalReview.authorizationLevel.${e.userAuthorization}`,{ns:`conversation`}),ns:`conversation`})}),e.rationale===void 0?null:(0,$.jsx)(ja,{children:s.t(`timeline.approvalReview.rationale`,{ns:`conversation`,rationale:e.rationale})})]})]})}function Za({isLastTurnItem:e,role:t,turnStatus:n}){let r=t===`assistant`&&e&&n===`running`;return{isAnimating:r,mode:r?`streaming`:`static`}}var Qa=(0,Q.createContext)(`approval-requested`);function $a(e){for(let t of Q.Children.toArray(e))if((0,Q.isValidElement)(t)&&t.type===to)return typeof t.props.children==`string`?t.props.children:s.t(`agentComponents.approval`,{ns:`conversation`});return s.t(`agentComponents.approval`,{ns:`conversation`})}function eo({approval:e,children:t,className:n=``,state:r,...i}){let{t:o}=a(`conversation`),s=$a(t);return(0,$.jsx)(Qa.Provider,{value:r,children:(0,$.jsx)(`section`,{"aria-label":o(`agentComponents.approvalRequest`,{title:s}),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 to({children:e,className:t=``,...n}){return(0,$.jsxs)(`h3`,{className:`flex items-center gap-2 text-label font-semibold text-foreground ${t}`,...n,children:[(0,$.jsx)(mr,{className:`size-4 text-muted-foreground`,"aria-hidden":`true`}),e]})}function no({className:e=``,...t}){return(0,$.jsx)(`div`,{className:`mt-2 break-words rounded-control bg-raised px-3 py-2 text-body-small leading-5 text-foreground shadow-sm ${e}`,...t})}function ro({children:e,className:t=``,...n}){let r=(0,Q.useContext)(Qa),{t:i}=a(`conversation`);return r!==`approval-rejected`&&r!==`approval-expired`?null:(0,$.jsxs)(`div`,{className:`mt-2 flex items-center gap-1.5 text-label text-muted-foreground ${t}`,...n,children:[(0,$.jsx)(Yn,{className:`size-3.5`,"aria-hidden":`true`}),e??i(`agentComponents.approvalRejected`)]})}function io({className:e=``,...t}){return(0,$.jsx)(`div`,{className:`mt-3 flex flex-wrap justify-end gap-2 ${e}`,...t})}function ao({className:e=``,ref:t,tone:n=`neutral`,type:r=`button`,...i}){return(0,$.jsx)(g,{className:e,ref:t,size:`compact`,type:r,variant:n===`danger`?`destructive`:n===`primary`?`default`:`secondary`,...i})}var oo=[`network`,`file_system`];function so(e,t){let n=new Set(e);return{grantedPermissions:oo.filter(e=>n.has(e)),scope:t}}function co(e,t){return e.status===`expired`?`approval-expired`:e.status===`resolved`?`approval-resolved`:t?`approval-submitting`:`approval-requested`}function lo(e){return oo.filter(t=>t===`network`?e.permissions.network!==null:e.permissions.fileSystem!==null)}function uo({path:e}){let{t}=a(`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 fo({permissions:e}){let{t}=a(`workbench`);return(0,$.jsxs)(`div`,{className:`mt-2 space-y-1 pl-6 font-mono text-meta text-muted-foreground`,children:[[...(e.read??[]).map(e=>({access:`read`,path:e})),...(e.write??[]).map(e=>({access:`write`,path:e}))].map((e,n)=>(0,$.jsxs)(`div`,{className:`break-all`,children:[(0,$.jsx)(`span`,{className:`font-sans font-medium text-foreground`,children:t(`pending.permissionAccess.${e.access}`)}),` `,e.path]},`${e.access}:${e.path}:${String(n)}`)),e.entries.map((e,n)=>(0,$.jsxs)(`div`,{className:`break-all`,children:[(0,$.jsx)(`span`,{className:`font-sans font-medium text-foreground`,children:t(`pending.permissionAccess.${e.access}`)}),` `,(0,$.jsx)(uo,{path:e.path})]},`${e.access}:${String(n)}`)),e.globScanMaxDepth===null?null:(0,$.jsx)(`div`,{className:`font-sans`,children:t(`pending.permissionGlobDepth`,{depth:e.globScanMaxDepth})})]})}function po({interactive:e,onResolve:t,request:n}){let{t:r}=a(`workbench`),i=lo(n),[o,s]=(0,Q.useState)(()=>new Set(i)),[c,l]=(0,Q.useState)(!1),[u,d]=(0,Q.useState)(),f=(0,Q.useRef)(null),p=(0,Q.useRef)(R()),m=e&&n.status===`pending`&&!c,h=m&&o.size>0;(0,Q.useEffect)(()=>{h&&f.current?.focus()},[h,n.requestId]);let g=e=>p.current.run(async()=>{if(!m||e!==`deny`&&o.size===0)return;let r=so(e===`deny`?[]:[...o],e===`deny`?`turn`:e),i=JSON.stringify(r),a=u?.fingerprint===i?u:{fingerprint:i,key:D()};d(a),l(!0);try{await t(n,r,a.key),V()}catch(e){L(e),l(!1)}}),_=(e,t)=>{s(n=>{let r=new Set(n);return t?r.add(e):r.delete(e),r})};return(0,$.jsxs)(eo,{approval:{id:n.requestId},state:co(n,c),children:[(0,$.jsx)(to,{children:r(`pending.permissionApproval`)}),(0,$.jsxs)(no,{children:[(0,$.jsxs)(`div`,{className:`space-y-3`,children:[n.permissions.network===null?null:(0,$.jsx)(`div`,{children:(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(U,{"aria-label":r(`pending.networkPermission`),checked:o.has(`network`),disabled:!m,id:`${n.requestId}-network`,onCheckedChange:e=>{_(`network`,e===!0)}}),(0,$.jsx)(`label`,{className:`font-medium`,htmlFor:`${n.requestId}-network`,children:r(`pending.networkPermission`)})]})}),n.permissions.fileSystem===null?null:(0,$.jsxs)(`div`,{children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(U,{"aria-label":r(`pending.fileSystemPermission`),checked:o.has(`file_system`),disabled:!m,id:`${n.requestId}-file-system`,onCheckedChange:e=>{_(`file_system`,e===!0)}}),(0,$.jsx)(`label`,{className:`font-medium`,htmlFor:`${n.requestId}-file-system`,children:r(`pending.fileSystemPermission`)})]}),(0,$.jsx)(fo,{permissions:n.permissions.fileSystem})]})]}),n.reason===null?null:(0,$.jsx)(`p`,{className:`mt-2 text-label text-muted-foreground`,children:n.reason})]}),n.status===`expired`?(0,$.jsx)(ro,{children:r(`pending.expired`)}):(0,$.jsxs)($.Fragment,{children:[e?null:(0,$.jsx)(`p`,{className:`mt-2 text-label text-muted-foreground`,children:r(`pending.previousPending`)}),(0,$.jsxs)(io,{children:[(0,$.jsx)(ao,{disabled:!m,onClick:()=>void g(`deny`),tone:`danger`,children:r(`pending.deny`)}),(0,$.jsx)(ao,{disabled:!h,onClick:()=>void g(`session`),children:r(`pending.allowSession`)}),(0,$.jsx)(ao,{disabled:!h,onClick:()=>void g(`turn`),ref:f,tone:`primary`,children:r(`pending.allowTurn`)})]})]})]})}function mo(e,t,n=D){let r=JSON.stringify(t);return e?.fingerprint===r?e:{fingerprint:r,key:n()}}function ho(e,t){return e.status===`expired`?`approval-expired`:e.status===`resolved`?`approval-resolved`:t?`approval-submitting`:`approval-requested`}function go({interactive:e,onResolve:t,request:n}){let[r,i]=(0,Q.useState)(!1),[a,o]=(0,Q.useState)(),s=(0,Q.useRef)(R()),c=e&&n.status===`pending`&&!r;return{canSubmit:c,resolve:e=>s.current.run(async()=>{if(!c)return;let r=mo(a,e);o(r),i(!0);try{await t(n,e,r.key),V()}catch(e){L(e),i(!1)}}),submitting:r}}function _o(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 vo({field:e}){return e.description===null?null:(0,$.jsx)(`p`,{className:`mt-0.5 text-meta text-muted-foreground`,children:e.description})}function yo(e){return e.format===`email`?`email`:e.format===`uri`?`url`:e.format===`date`?`date`:`text`}function bo({content:e,controlPrefix:t,disabled:n,field:r,setContent:i}){let a=`mcp-field-${t}-${r.id}`,o=e=>{i(t=>e===void 0?Object.fromEntries(Object.entries(t).filter(([e])=>e!==r.id)):{...t,[r.id]:e})};if(r.type===`boolean`)return(0,$.jsxs)(`label`,{className:`flex min-h-11 cursor-pointer items-center gap-2.5 rounded-control bg-raised px-3 py-2 text-label text-foreground`,htmlFor:a,children:[(0,$.jsx)(`input`,{checked:e[r.id]===!0,disabled:n,id:a,onChange:e=>{o(e.target.checked)},type:`checkbox`}),(0,$.jsxs)(`span`,{children:[(0,$.jsx)(`span`,{className:`block font-medium`,children:r.title}),(0,$.jsx)(vo,{field:r})]})]});if(r.type===`select`){let t=r.options.findIndex(t=>t.value===e[r.id]);return(0,$.jsxs)(`div`,{children:[(0,$.jsx)(`label`,{className:`text-label font-medium text-foreground`,htmlFor:a,children:r.title}),(0,$.jsx)(vo,{field:r}),(0,$.jsxs)(`select`,{className:`mt-2 h-11 w-full rounded-control border border-separator-strong bg-raised px-2.5 text-label text-foreground outline-none focus-visible:border-brand focus-visible:shadow-focus workbench:h-8`,disabled:n,id:a,onChange:e=>{let t=r.options[Number(e.target.value)];o(t?.value)},required:r.required,value:t<0?``:String(t),children:[(0,$.jsx)(`option`,{disabled:r.required,value:``,children:`--`}),r.options.map((e,t)=>(0,$.jsx)(`option`,{value:t,children:e.label},e.value))]})]})}if(r.type===`multi_select`){let t=e[r.id],i=Array.isArray(t)?t:[];return(0,$.jsxs)(`fieldset`,{children:[(0,$.jsx)(`legend`,{className:`text-label font-medium text-foreground`,children:r.title}),(0,$.jsx)(vo,{field:r}),(0,$.jsx)(`div`,{className:`mt-2 grid grid-cols-1 gap-2 @sm:grid-cols-2`,children:r.options.map(e=>(0,$.jsxs)(`label`,{className:`flex min-h-11 cursor-pointer items-center gap-2 rounded-control bg-raised px-3 py-2 text-label text-foreground`,children:[(0,$.jsx)(`input`,{checked:i.includes(e.value),disabled:n,onChange:t=>{o(t.target.checked?[...i,e.value]:i.filter(t=>t!==e.value))},type:`checkbox`}),e.label]},e.value))})]})}let s=e[r.id];return(0,$.jsxs)(`div`,{children:[(0,$.jsx)(`label`,{className:`text-label font-medium text-foreground`,htmlFor:a,children:r.title}),(0,$.jsx)(vo,{field:r}),(0,$.jsx)(he,{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`?yo(r):`number`,value:typeof s==`number`||typeof s==`string`?s:``,variant:`compact`})]})}function xo({interactive:e,onResolve:t,request:n}){let{t:r}=a(`workbench`),[i,o]=(0,Q.useState)(()=>_o(n.fields)),{canSubmit:s,resolve:c,submitting:l}=go({interactive:e,onResolve:t,request:n});return(0,$.jsxs)(eo,{approval:{id:n.requestId},className:`@container`,state:ho(n,l),children:[(0,$.jsx)(to,{children:r(`pending.mcpForm`,{server:n.serverName})}),(0,$.jsx)(no,{children:n.message}),n.status===`expired`?(0,$.jsx)(ro,{children:r(`pending.expired`)}):(0,$.jsxs)(`form`,{className:`mt-3 space-y-3`,onSubmit:e=>{e.preventDefault(),c({action:`accept`,content:i})},children:[n.fields.map(t=>(0,$.jsx)(bo,{content:i,controlPrefix:n.requestId,disabled:!e||l,field:t,setContent:o},t.id)),e?null:(0,$.jsx)(`p`,{className:`text-label text-muted-foreground`,children:r(`pending.previousPending`)}),(0,$.jsxs)(io,{children:[(0,$.jsx)(ao,{disabled:!s,onClick:()=>void c({action:`cancel`,content:null}),type:`button`,children:r(`pending.cancel`)}),(0,$.jsx)(ao,{disabled:!s,onClick:()=>void c({action:`decline`,content:null}),tone:`danger`,type:`button`,children:r(`pending.deny`)}),(0,$.jsx)(ao,{disabled:!s,tone:`primary`,type:`submit`,children:r(`pending.submitAnswers`)})]})]})]})}function So({interactive:e,onResolve:t,request:n}){let{t:r}=a(`workbench`),{canSubmit:i,resolve:o,submitting:s}=go({interactive:e,onResolve:t,request:n});return(0,$.jsxs)(eo,{approval:{id:n.requestId},state:ho(n,s),children:[(0,$.jsx)(to,{children:r(`pending.mcpRequest`,{server:n.serverName})}),(0,$.jsxs)(no,{children:[(0,$.jsx)(`p`,{children:n.message}),n.mode===`unsupported`?(0,$.jsx)(`p`,{className:`mt-2 text-label text-muted-foreground`,children:r(`pending.unsupportedForm`)}):null]}),n.status===`expired`?(0,$.jsx)(ro,{children:r(`pending.expired`)}):(0,$.jsxs)($.Fragment,{children:[e?null:(0,$.jsx)(`p`,{className:`mt-2 text-label text-muted-foreground`,children:r(`pending.previousPending`)}),(0,$.jsxs)(io,{children:[(0,$.jsx)(ao,{disabled:!i,onClick:()=>void o({action:`cancel`,content:null}),children:r(`pending.cancel`)}),(0,$.jsx)(ao,{disabled:!i,onClick:()=>void o({action:`decline`,content:null}),tone:`danger`,children:r(`pending.deny`)}),n.mode===`url`?(0,$.jsx)(g,{asChild:!0,size:`compact`,children:(0,$.jsxs)(`a`,{"aria-disabled":!i,href:n.url,onClick:e=>{if(!i){e.preventDefault();return}o({action:`accept`,content:{}})},rel:`noreferrer noopener`,target:`_blank`,children:[(0,$.jsx)(Oe,{"aria-hidden":`true`}),r(`pending.openUrl`)]})}):null]})]})]})}function Co(e){return e.request.mode===`form`?(0,$.jsx)(xo,{...e,request:e.request}):(0,$.jsx)(So,{...e})}function wo(e,t){return e.status===`expired`?`approval-expired`:e.status===`resolved`?`approval-resolved`:t?`approval-submitting`:`approval-requested`}function To(e){switch(e){case`http`:return`HTTP`;case`https`:return`HTTPS`;case`socks5Tcp`:return`SOCKS5 TCP`;case`socks5Udp`:return`SOCKS5 UDP`}}function Eo({interactive:e,onResolve:t,request:n}){let{t:r}=a(`workbench`),[i,o]=(0,Q.useState)(!1),[s,c]=(0,Q.useState)(),l=(0,Q.useRef)(null),u=(0,Q.useRef)(R()),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(`
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/patch-diff-viewer-DGu83IBP.js","assets/rolldown-runtime-QTnfLwEv.js","assets/react-runtime-CVaUQXZF.js","assets/index-D07js1WI.js","assets/dist-Cib4eRMP.js","assets/bundle-mjs-rHxsej31.js","assets/tooltip-D3tWiAWP.js","assets/useInfiniteQuery-Bu9BuQ4a.js","assets/checkbox-nYXSVVQi.js","assets/check-BOdEYGxk.js","assets/loader-circle-B1P6CG7G.js","assets/dist-CaAkD3UC.js","assets/es2015-Ru0tXs3G.js","assets/file-tree-CqppWhX1.js","assets/provider-connection-queries-CSumXgIL.js","assets/index-C4ygqQbj.css","assets/engine-compile-Bqjaa_8Z.js","assets/lib-DrPFkMXk.js","assets/code-languages-Dyc6uij-.js","assets/shiki-bundle-4bLwaf7_.js","assets/file-change-D7aZLgtG.js","assets/git-history-panel-CqKWTKwH.js","assets/file-code-corner-Bs_lkoMS.js","assets/file-review-dialog-DO97in5h.js","assets/file-navigation-view-preference-CMQ7btc9.js","assets/git-commit-horizontal-BezTHHvd.js","assets/context-menu-B-oGuenT.js","assets/workbench-inspector-changes-BLY-8Tfn.js","assets/button-group-CYhxptHg.js","assets/prompt-input-controls-CJyoVdGf.js","assets/upload-C2JxJnmn.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{D as a,E as o,I as s,S as c,_ as l,g as u,l as d,m as f,n as p,t as m,u as h,v as g,w as _,y as v}from"./dist-Cib4eRMP.js";import{C as y,D as b,R as x,S,X as C,b as w,d as T,g as E,h as D,i as O,l as k,n as A,p as j,s as ee,t as M,u as N,w as P,x as F,y as I}from"./tooltip-D3tWiAWP.js";import{a as L,c as R,l as z,n as B,o as V,r as H,t as U}from"./checkbox-nYXSVVQi.js";import{n as W,r as G,t as K}from"./loader-circle-B1P6CG7G.js";import{a as q,c as J,i as te,l as ne,o as Y,r as re,s as ie,t as ae}from"./workbench-pet-canvas-BLh6Qsla.js";import{t as X}from"./check-BOdEYGxk.js";import{v as Z,y as oe}from"./dist-CaAkD3UC.js";import{c as se,i as ce,n as le,r as ue,s as de,t as fe}from"./file-tree-CqppWhX1.js";import{i as pe,l as me,o as he,s as ge,u as _e}from"./provider-connection-queries-CSumXgIL.js";import{a as ve,c as ye,i as be,n as xe,o as Se,r as Ce,s as we,t as Te}from"./project-source-panel-BEBbL2Id.js";import{n as Ee,t as De}from"./file-code-corner-Bs_lkoMS.js";import{n as Oe,t as ke}from"./prompt-reference-token-DvdGBAjJ.js";import{n as Ae,t as je}from"./button-group-CYhxptHg.js";import{S as Me,_ as Ne,a as Pe,b as Fe,c as Ie,d as Le,f as Re,g as ze,h as Be,i as Ve,l as He,n as Ue,o as We,p as Ge,r as Ke,s as qe,t as Je,u as Ye,v as Xe,x as Ze,y as Qe}from"./prompt-input-controls-CJyoVdGf.js";import{i as $e,r as et,t as tt}from"./file-review-dialog-DO97in5h.js";import{t as nt}from"./git-commit-horizontal-BezTHHvd.js";import{t as rt}from"./lazy-message-response-BCtctszr.js";import{a as it,c as at,i as ot,n as st,o as ct,r as lt,s as ut,t as dt}from"./context-menu-B-oGuenT.js";import{$ as ft,A as pt,B as mt,Bt as ht,C as gt,Ct as _t,D as vt,Dt as yt,E as bt,Et as xt,F as St,G as Ct,Gt as wt,H as Tt,Ht as Et,I as Dt,It as Ot,J as kt,Jt as At,K as jt,Kt as Mt,M as Nt,Mt as Pt,N as Ft,Nt as It,O as Lt,Ot as Rt,P as zt,Q as Bt,R as Vt,S as Ht,St as Ut,T as Wt,Tt as Gt,U as Kt,Ut as qt,V as Jt,Vt as Yt,W as Xt,Wt as Zt,Y as Qt,Yt as $t,_t as en,a as tn,b as nn,bt as rn,c as an,ct as on,d as sn,dt as cn,et as ln,ft as un,j as dn,jt as fn,k as pn,lt as mn,nt as hn,o as gn,ot as _n,pt as vn,q as yn,qt as bn,st as xn,tt as Sn,u as Cn,ut as wn,vt as Tn,w as En,wt as Dn,x as On,xt as kn,y as An,yt as jn,z as Mn,zt as Nn}from"./index-D07js1WI.js";import{t as Pn}from"./code-languages-Dyc6uij-.js";import{i as Fn,n as In,t as Ln}from"./file-change-D7aZLgtG.js";var Rn=_(`arrow-down`,[[`path`,{d:`M12 5v14`,key:`s699le`}],[`path`,{d:`m19 12-7 7-7-7`,key:`1idqje`}]]),zn=_(`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`}]]),Bn=_(`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`}]]),Vn=_(`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`}]]),Hn=_(`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`}]]),Un=_(`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`}]]),Wn=_(`chevrons-up-down`,[[`path`,{d:`m7 15 5 5 5-5`,key:`1hf1tw`}],[`path`,{d:`m7 9 5-5 5 5`,key:`sgt6xg`}]]),Gn=_(`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`}]]),Kn=_(`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`}]]),qn=_(`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`}]]),Jn=_(`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`}]]),Yn=_(`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`}]]),Xn=_(`clock-3`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 6v6h4`,key:`135r8i`}]]),Zn=_(`clock`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 6v6l4 2`,key:`mmk7yg`}]]),Qn=_(`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`}]]),$n=_(`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`}]]),er=_(`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`}]]),tr=_(`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`}]]),nr=_(`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`}]]),rr=_(`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`}]]),ir=_(`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`}]]),ar=_(`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`}]]),or=_(`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`}]]),sr=_(`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`}]]),cr=_(`panel-left`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M9 3v18`,key:`fh3hqa`}]]),lr=_(`panel-right`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M15 3v18`,key:`14nvp0`}]]),ur=_(`pause`,[[`rect`,{x:`14`,y:`3`,width:`5`,height:`18`,rx:`1`,key:`kaeet6`}],[`rect`,{x:`5`,y:`3`,width:`5`,height:`18`,rx:`1`,key:`1wsw3u`}]]),dr=_(`play`,[[`path`,{d:`M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z`,key:`10ikf1`}]]),fr=_(`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`}]]),pr=_(`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`}]]),mr=_(`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`}]]),hr=_(`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`}]]),gr=_(`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`}]]),_r=_(`terminal`,[[`path`,{d:`M12 19h8`,key:`baeox8`}],[`path`,{d:`m4 17 6-6-6-6`,key:`1yngyt`}]]),vr=_(`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`}]]),yr=_(`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`}]]),br=_(`zap`,[[`path`,{d:`M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z`,key:`1xq2db`}]]),Q=e(n(),1),$=i(),xr=Object.defineProperty,Sr=(e,t)=>xr(e,`name`,{value:t,configurable:!0}),Cr=`Collapsible`,[wr,Tr]=u(Cr),[Er,Dr]=wr(Cr),Or=Q.forwardRef(Sr(function(e,t){let{__scopeCollapsible:n,open:r,defaultOpen:i,disabled:a,onOpenChange:o,...s}=e,[c,l]=m({prop:r,defaultProp:i??!1,onChange:o,caller:Cr});return(0,$.jsx)(Er,{scope:n,disabled:a,contentId:d(),open:c,onOpenToggle:Q.useCallback(()=>l(e=>!e),[l]),children:(0,$.jsx)(f.div,{"data-state":Pr(c),"data-disabled":a?``:void 0,...s,ref:t})})},`Collapsible`)),kr=`CollapsibleTrigger`,Ar=Q.forwardRef(Sr(function(e,t){let{__scopeCollapsible:n,...r}=e,i=Dr(kr,n);return(0,$.jsx)(f.button,{type:`button`,"aria-controls":i.open?i.contentId:void 0,"aria-expanded":i.open||!1,"data-state":Pr(i.open),"data-disabled":i.disabled?``:void 0,disabled:i.disabled,...r,ref:t,onClick:l(e.onClick,i.onOpenToggle)})},`CollapsibleTrigger`)),jr=`CollapsibleContent`,Mr=Q.forwardRef(Sr(function(e,t){let{forceMount:n,...r}=e,i=Dr(jr,e.__scopeCollapsible);return(0,$.jsx)(p,{present:n||i.open,children:({present:e})=>(0,$.jsx)(Nr,{...r,ref:t,present:e})})},`CollapsibleContent`)),Nr=Q.forwardRef(Sr(function(e,t){let{__scopeCollapsible:n,present:r,children:i,...a}=e,o=Dr(jr,n),[s,l]=Q.useState(r),u=Q.useRef(null),d=c(t,u),p=Q.useRef(0),m=p.current,g=Q.useRef(0),_=g.current,v=o.open||s,y=Q.useRef(v),b=Q.useRef(void 0);return Q.useEffect(()=>{let e=requestAnimationFrame(()=>y.current=!1);return()=>cancelAnimationFrame(e)},[]),h(()=>{let e=u.current;if(e){b.current=b.current||{transitionDuration:e.style.transitionDuration,animationName:e.style.animationName},e.style.transitionDuration=`0s`,e.style.animationName=`none`;let t=e.getBoundingClientRect();p.current=t.height,g.current=t.width,y.current||(e.style.transitionDuration=b.current.transitionDuration,e.style.animationName=b.current.animationName),l(r)}},[o.open,r]),(0,$.jsx)(f.div,{"data-state":Pr(o.open),"data-disabled":o.disabled?``:void 0,id:o.contentId,hidden:!v,...a,ref:d,style:{"--radix-collapsible-content-height":m?`${m}px`:void 0,"--radix-collapsible-content-width":_?`${_}px`:void 0,...e.style},children:v&&i})},`CollapsibleContentImpl`));function Pr(e){return e?`open`:`closed`}Sr(Pr,`getState`);var Fr=Or,Ir=Ar,Lr=Mr;function Rr(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:e.status,text:e.text}}function zr(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 Br(e){return e.flatMap(e=>e.type===`message`&&e.role===`user`?[e.id]:[])}function Vr(e,t){return t===void 0?[]:Br((e.itemKeysByTurnId[t]??[]).flatMap(t=>{let n=e.getItemByKey(t);return n===void 0?[]:[n]}))}function Hr(e,t){if(e.status!==`awaiting-response`)return!1;let n=new Set(e.userMessageIds);return t.some(e=>!n.has(e))}function Ur(e,t,n){return n===`interrupted`||Hr(e,t)}function Wr(e,t){return e.status===`awaiting-response`&&Ur(e,Vr(t,e.turnId),t.turnsById[e.turnId]?.status)}function Gr(e){return e.status===`queued`||e.status===`editing`?{files:e.files,skills:e.skills,text:e.text}:void 0}async function Kr(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(Ot(n,r,null,i.snapshot,!0,t)))[o].find(e=>e.path===a.path&&e.kind===a.kind)??a}var qr=1500;function Jr(e,t){return e||t>0?qr:!1}function Yr(e,t,n,r){return e&&r!==void 0&&t!==n}function Xr(e,t,n,r,i=!0){let a=(0,Q.useRef)(r),o=(0,Q.useRef)(new Map),s=(0,Q.useRef)(R()),c=G({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 Jr(r,e.state.data?.data.length??0)}}),l=z({mutationFn:async r=>{if(n===void 0)return;let i=o.current.get(r)??D();o.current.set(r,i),await e.terminateBackgroundTerminal(t,n,r,{idempotencyKey:i})}}),u=c.refetch,d=l.mutateAsync;(0,Q.useEffect)(()=>{let e=Yr(i,a.current,r,n);a.current=r,e&&u()},[i,r,u,n]);let f=(0,Q.useCallback)(e=>s.current.run(async()=>{try{await d(e),o.current.delete(e),await u()}catch{}}),[u,d]);return{error:c.error,isPending:c.isPending,terminals:c.data?.data??[],terminatingTerminalId:l.isPending&&typeof l.variables==`string`?l.variables:null,terminateTerminal:f}}function Zr({disabled:e,onDelete:t,onRename:n}){let{t:r}=a(`workbench`);return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(ot,{}),(0,$.jsxs)(lt,{disabled:e,onSelect:n,children:[(0,$.jsx)(hn,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{children:r(`openMenu.rename`)})]}),(0,$.jsxs)(lt,{className:`text-danger`,disabled:e,onSelect:t,children:[(0,$.jsx)(ge,{"aria-hidden":`true`,className:`size-4`}),(0,$.jsx)(`span`,{children:r(`openMenu.delete`)})]})]})}function Qr({disabled:e,onDelete:t,onRename:n}){let{t:r}=a(`workbench`);return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Lt,{}),(0,$.jsxs)(En,{disabled:e,onSelect:n,children:[(0,$.jsx)(hn,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{children:r(`openMenu.rename`)})]}),(0,$.jsxs)(En,{className:`text-danger`,disabled:e,onSelect:t,children:[(0,$.jsx)(ge,{"aria-hidden":`true`,className:`size-4`}),(0,$.jsx)(`span`,{children:r(`openMenu.delete`)})]})]})}var $r={editor:ye,"file-manager":se,"system-default":Oe,terminal:_r,tool:yr};function ei(e,t){return t===`file`?e:e.filter(e=>e.kind!==`system-default`)}function ti(e){return e.find(e=>e.kind===`file-manager`)}function ni(e){return e.split(/[\\/]/u).at(-1)??e}function ri(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 ii(e){navigator.clipboard.writeText(e).catch(()=>void 0)}function ai({apps:e,isPending:t,onOpen:n,onDelete:r,onOpenInNewWindow:i,onReference:o,onRename:s,onSelect:c,target:l}){let{t:u}=a(`workbench`);return(0,$.jsxs)(On,{modal:!1,onOpenChange:e=>{e&&n()},children:[(0,$.jsxs)(M,{children:[(0,$.jsx)(Nt,{asChild:!0,children:(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":u(`openMenu.targetLabel`,{path:l.path}),className:`pointer-events-none size-5 shrink-0 opacity-0 transition-opacity group-hover/file-tree-node:pointer-events-auto group-hover/file-tree-node:opacity-100 group-focus-within/file-tree-node:pointer-events-auto group-focus-within/file-tree-node:opacity-100 focus-visible:pointer-events-auto focus-visible:opacity-100 data-[state=open]:pointer-events-auto data-[state=open]:opacity-100`,size:`embedded`,type:`button`,variant:`embedded`,children:(0,$.jsx)(_n,{"aria-hidden":`true`,className:`size-3.5`})})})}),(0,$.jsx)(A,{side:`left`,children:u(`openMenu.moreActions`)})]}),(0,$.jsx)(oi,{apps:e,isPending:t,onReference:o,onSelect:c,target:l,...r===void 0||s===void 0?{}:{onDelete:r,onRename:s},...i===void 0?{}:{onOpenInNewWindow:i}})]})}function oi({apps:e,isPending:t,onDelete:n,onOpenInNewWindow:r,onReference:i,onRename:o,onSelect:s,target:c}){let{t:l}=a(`workbench`),u=ei(e,c.type),d=l(`openMenu.targetLabel`,{path:c.path}),f=ni(c.path),p=c.reference;return(0,$.jsxs)(Ht,{align:`end`,"aria-label":d,className:`w-52`,children:[(0,$.jsxs)(En,{onSelect:()=>{ii(f)},children:[(0,$.jsx)(Ee,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{children:l(`openMenu.copyName`)})]}),(0,$.jsxs)(En,{onSelect:()=>{ii(c.relativePath)},children:[(0,$.jsx)(Ee,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{children:l(`openMenu.copyRelativePath`)})]}),(0,$.jsxs)(En,{onSelect:()=>{ii(c.absolutePath)},children:[(0,$.jsx)(Ee,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{children:l(`openMenu.copyAbsolutePath`)})]}),(0,$.jsxs)(pn,{children:[(0,$.jsxs)(dn,{children:[(0,$.jsx)(se,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{children:l(`openMenu.open`)})]}),(0,$.jsx)(pt,{children:u.map(e=>{let n=$r[e.kind],r=e.kind===`system-default`?l(`openMenu.systemDefault`):e.name;return(0,$.jsxs)(En,{"aria-label":r,disabled:t,onSelect:()=>{s(e.id,c.path)},children:[(0,$.jsx)(n,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:r})]},e.id)})})]}),c.type===`file`&&r!==void 0?(0,$.jsxs)(En,{onSelect:r,children:[(0,$.jsx)(Oe,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{children:l(`openMenu.openInNewWindow`)})]}):null,p===void 0?null:(0,$.jsxs)(En,{onSelect:()=>{i(p)},children:[(0,$.jsx)(zn,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{children:l(`openMenu.reference`)})]}),n===void 0||o===void 0?null:(0,$.jsx)(Qr,{disabled:t,onDelete:n,onRename:o})]})}function si({apps:e,className:t=``,defaultOpenAppId:n,hidden:r=!1,isDetecting:i,isPending:o,onSelect:s}){let{t:c}=a(`workbench`);if(r)return null;let l=ei(e,`directory`),u=l.find(e=>e.id===n)??l[0],d=i?c(`openMenu.detect`):u===void 0?c(`openMenu.none`):c(`openMenu.openIn`,{app:u.name}),f=u?.name??d,p=u===void 0?se:$r[u.kind];return(0,$.jsxs)(On,{modal:!1,children:[(0,$.jsxs)(je,{className:`shrink-0 ${t}`,children:[(0,$.jsxs)(g,{"aria-label":d,className:`max-w-28 rounded-r-none border-r-0 max-workbench:min-w-11 max-workbench:px-0`,disabled:u===void 0||o,onClick:()=>{u!==void 0&&s(u.id)},size:`toolbar`,title:d,type:`button`,variant:`outline`,children:[(0,$.jsx)(p,{"aria-hidden":`true`}),(0,$.jsx)(`span`,{className:`hidden truncate sm:inline`,children:f})]}),(0,$.jsx)(Nt,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":c(`openMenu.choose`),className:`rounded-l-none`,disabled:l.length===0||o,size:`icon-toolbar`,type:`button`,variant:`outline`,children:(0,$.jsx)(W,{"aria-hidden":`true`})})})]}),(0,$.jsx)(Ht,{align:`end`,"aria-label":c(`openMenu.choose`),className:`w-52`,children:l.map(e=>{let t=$r[e.kind];return(0,$.jsxs)(En,{"aria-label":e.name,disabled:o,onSelect:()=>{s(e.id)},children:[(0,$.jsx)(t,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:e.name})]},e.id)})})]})}function ci({apps:e,ariaLabel:t,isPending:n,onDelete:r,onOpenInNewWindow:i,onReference:o,onRename:s,onSelect:c,target:l}){let{t:u}=a(`workbench`),d=ei(e,l.type),f=ni(l.path),p=l.reference;return(0,$.jsxs)(st,{"aria-label":t,className:`w-52`,children:[(0,$.jsxs)(lt,{onSelect:()=>{ii(f)},children:[(0,$.jsx)(Ee,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{children:u(`openMenu.copyName`)})]}),(0,$.jsxs)(lt,{onSelect:()=>{ii(l.relativePath)},children:[(0,$.jsx)(Ee,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{children:u(`openMenu.copyRelativePath`)})]}),(0,$.jsxs)(lt,{onSelect:()=>{ii(l.absolutePath)},children:[(0,$.jsx)(Ee,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{children:u(`openMenu.copyAbsolutePath`)})]}),(0,$.jsxs)(it,{children:[(0,$.jsxs)(ut,{children:[(0,$.jsx)(se,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{children:u(`openMenu.open`)})]}),(0,$.jsx)(ct,{children:d.map(e=>{let t=$r[e.kind],r=e.kind===`system-default`?u(`openMenu.systemDefault`):e.name;return(0,$.jsxs)(lt,{"aria-label":r,disabled:n,onSelect:()=>{c(e.id,l.path)},children:[(0,$.jsx)(t,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:r})]},e.id)})})]}),l.type===`file`&&i!==void 0?(0,$.jsxs)(lt,{onSelect:i,children:[(0,$.jsx)(Oe,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{children:u(`openMenu.openInNewWindow`)})]}):null,p===void 0?null:(0,$.jsxs)(lt,{onSelect:()=>{o(p)},children:[(0,$.jsx)(zn,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,$.jsx)(`span`,{children:u(`openMenu.reference`)})]}),r===void 0||s===void 0?null:(0,$.jsx)(Zr,{disabled:n,onDelete:r,onRename:s})]})}function li({apps:e,children:t,isPending:n,onOpen:r,onDelete:i,onOpenInNewWindow:o,onReference:s,onRename:c,onSelect:l,target:u}){let{t:d}=a(`workbench`);return(0,$.jsxs)(dt,{modal:!1,onOpenChange:e=>{e&&r()},children:[(0,$.jsx)(at,{asChild:!0,onContextMenu:e=>{e.stopPropagation()},children:t}),(0,$.jsx)(ci,{apps:e,ariaLabel:d(`openMenu.targetLabel`,{path:u.path}),isPending:n,onReference:s,...o===void 0?{}:{onOpenInNewWindow:o},onSelect:l,target:u,...i===void 0||c===void 0?{}:{onDelete:i,onRename:c}})]})}var ui=new Set([`agent/close`,`agent/resume`,`agent/send_input`,`agent/spawn`,`agent/wait`]);function di(e){return s.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 fi(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 mi(e){if(!ui.has(e.name))return null;let t=fi(e.input)?e.input:{},n=fi(e.output)?e.output:{};return{agents:(Array.isArray(n.agents)?n.agents:[]).flatMap(e=>{if(!fi(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 hi(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=mi(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??s.t(`subagent.defaultName`,{index:t.size+1,ns:`conversation`}),status:e.status,taskId:e.taskId})}}}return[...t.values()]}function gi(e){return e.split(`-`).map(e=>e===`gpt`?`GPT`:`${e.charAt(0).toUpperCase()}${e.slice(1)}`).join(`-`)}function _i(e){return e===`pending`?`pending`:e===`running`?`in_progress`:e===`failed`||e===`declined`||e===`interrupted`?`error`:`completed`}function vi(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`:_i(e)}function yi(e,t){if(t.length===0)return e===`pending`||e===`running`?s.t(`subagent.orchestrating`,{ns:`conversation`}):s.t(`subagent.operationCompleted`,{ns:`conversation`});let n=vi(e,t);return n===`in_progress`||n===`pending`?s.t(`subagent.operationRunning`,{count:t.length,ns:`conversation`}):n===`error`?s.t(`subagent.operationFailed`,{count:t.length,ns:`conversation`}):s.t(`subagent.operationSucceeded`,{count:t.length,ns:`conversation`})}function bi({activePanel:e,gitStatus:t,temporary:n}){return!n&&e&&t!==void 0&&t.repositoryMode!==`none`&&t.staged.length+t.unstaged.length>0}function xi(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 Si({contextOnly:e=!1,fileOpen:t=!1,gitStatus:n,inspectorOpen:r,requestedTab:i,taskId:a}){let o=xi(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 Ci=`(max-width: 760px)`,wi=`(max-width: 1100px)`,Ti={default:288,maximum:400,minimum:220},Ei={default:320,minimum:320};function Di(e){return typeof window>`u`||!window.matchMedia(e).matches}function Oi(e,t){return Math.max(Ei.minimum,Math.floor((e-t)/2))}function ki(){let[e,t]=(0,Q.useState)(()=>Di(Ci)),[n,r]=(0,Q.useState)(()=>Di(wi)),[i,a]=(0,Q.useState)(Ti.default),[o,s]=(0,Q.useState)(Ei.default),[c,l]=(0,Q.useState)(()=>typeof window>`u`?1440:window.innerWidth),u=(0,Q.useRef)(null),d=Oi(c,e?i:0);return(0,Q.useLayoutEffect)(()=>{let e=u.current;if(e===null)return;let t=()=>{l(e.getBoundingClientRect().width)};t();let n=new ResizeObserver(t);return n.observe(e),()=>{n.disconnect()}},[]),(0,Q.useLayoutEffect)(()=>{s(e=>Math.min(e,d))},[d]),{inspectorMaximumWidth:d,inspectorOpen:n,inspectorWidth:o,setInspectorOpen:r,setInspectorWidth:s,setSidebarOpen:t,setSidebarWidth:a,sidebarOpen:e,sidebarWidth:i,workbenchShellRef:u}}function Ai(){let[e,t]=(0,Q.useState)(),n=(0,Q.useRef)(void 0),r=(0,Q.useCallback)(()=>{let e=new Date().toISOString();n.current=e,t(e)},[]),i=(0,Q.useCallback)(e=>{if(e){if(n.current===void 0){let e=new Date().toISOString();n.current=e,t(e)}return}n.current=void 0,t(void 0)},[]);return{beginSubmission:r,getStartedAt:(0,Q.useCallback)(()=>n.current,[]),handleSubmissionStateChange:i,startedAt:e}}var ji=new Set;function Mi(e,t){return[`projects`,e,`tasks`,t,`launch`]}function Ni(e){return{...vn({...e.task,contextUsage:null,goal:null,plan:null,pendingRequests:[],settings:e.settings,status:`running`,turns:[e.turn],turnsNextCursor:null},e.turn,{...e.input,messageAttachments:e.messageAttachments}),pendingRequests:[]}}function Pi({projectId:e,taskId:t,temporary:n=!1}){let{t:r}=a(`workbench`),i=mn(),{capabilities:o,client:s,error:c,isPending:l,projects:u,projectTaskStates:d,tasks:f}=jn(),p=u.find(t=>t.id===e),{selectedRootIds:m,setSelectedProjectRoot:h}=rn(),g=un(p,m),_=n?void 0:g?.id,v=n?void 0:g?.path,{markTaskRunning:y,projectRuntime:b,refreshProjectGitStatus:S,requestNotificationPermission:C,retry:w,viewTask:T}=en(),E=$t(),D=x(),{inspectorMaximumWidth:O,inspectorOpen:k,inspectorWidth:A,setInspectorOpen:j,setInspectorWidth:ee,setSidebarOpen:M,setSidebarWidth:N,sidebarOpen:P,sidebarWidth:F,workbenchShellRef:I}=ki(),L=`${e}:${t??`draft`}`,B=t===void 0?`project`:`context`,[V,H]=(0,Q.useState)({scopeKey:L,tab:B}),[U,W]=(0,Q.useState)(null),K=V.scopeKey===L?V.tab:B,q=G(Nn(e,v??``,s,!n&&v!==void 0)),J=Si({contextOnly:n,fileOpen:U?.projectId===e,gitStatus:q.data,inspectorOpen:k,requestedTab:K,taskId:t}),te=G(Ut(s)),ne=z({..._t(s),onSuccess(e){D.setQueryData([`app-info`],e)}}),Y=G(Rt(s)),re=G(pe()),ie=G(xt(e,t,s,J.context)),ae=z({...yt(e,t,s),onSuccess(n){D.setQueryData([`projects`,e,`tasks`,t??null,`mcp-servers`],n)}}),X=G(Gt(s)),Z=G(ht(e,s,!n)),oe=z({meta:{actionNotification:{successMessage:!1}},mutationFn:({appId:t,path:n})=>s.openProject(e,v,n===void 0?{appId:t}:{appId:t,path:n})}),se=z({meta:{actionNotification:{successMessage:!1}},mutationFn:({attachmentId:t,taskId:n})=>s.openTaskAttachment(e,n,t)}),ce=(0,Q.useRef)(oe);ce.current=oe;let le=(0,Q.useRef)(R()),ue=ti(Z.data?.apps??[]),de=(0,Q.useCallback)(()=>{if(ue===void 0)return;let e=ce.current;e.reset(),le.current.run(()=>e.mutateAsync({appId:ue.id,path:void 0})).catch(()=>void 0)},[ue,le,ce]),fe=G({...Yt(e,s),enabled:o?.skills.list===!0}),me=G(Pt(e,s,!n)),he=z({...fn(e,s),onSuccess(t){D.setQueryData([`projects`,e,`defaults`],t)}}),ge=z({...Dn(s),async onSuccess(n){D.setQueryData([`settings`],n),await D.invalidateQueries({exact:!0,queryKey:[`projects`,e,`defaults`]}),t!==void 0&&await b.refreshTaskSnapshot(e,t)}}),_e=t===void 0?void 0:D.getQueryData(Mi(e,t)),ve=kt(e,t,b),ye=(0,Q.useMemo)(()=>_e===void 0?void 0:Ni(_e),[_e]),be=d.get(e),xe=nn({hasActiveTask:t!==void 0,projectDataFailed:c!==null||(be?.error??null)!==null,projectDataPending:l||be?.isPending===!0,taskConnectionState:ve.connectionState}),Se=Xr(s,e,t,ve.metadata?.status===`running`||ye?.status===`running`,J.context),Ce=`${e}:${v??`temporary`}`,[we,Te]=(0,Q.useState)(()=>({paths:new Set,scope:Ce})),Ee=we.scope===Ce?we.paths:ji,{beginSubmission:De,getStartedAt:Oe,handleSubmissionStateChange:ke,startedAt:Ae}=Ai(),[je,Me]=(0,Q.useState)(),[Ne,Pe]=(0,Q.useState)(!1),[Fe,Ie]=(0,Q.useState)(null),[Le,Re]=(0,Q.useState)(null),[ze,Be]=(0,Q.useState)(null),[Ve,He]=(0,Q.useState)(null),Ue=(0,Q.useCallback)(t=>{h(e,t),Re(null),Be(null),W(null)},[e,h]),We=G(Ot(e,v??``,null,q.data?.snapshot??``,bi({activePanel:J.context||J.project||J.changes,gitStatus:q.data,temporary:n}),s)),Ge=(0,Q.useCallback)(e=>{H({scopeKey:L,tab:e})},[L]);(0,Q.useLayoutEffect)(()=>{T(e,t)},[e,t,T]);let Ke=n?r(`shell.temporaryTask`):p?.name??e,qe=v??``,Je=f.find(n=>n.projectId===e&&n.id===t)?.title??ve.metadata?.title??r(`shell.newChat`),Ye=z(Et(s)),Xe=(0,Q.useRef)(R()),Ze=Le?.projectId===e?Le:null,Qe=U?.projectId===e?U:null,$e=ze?.projectId===e?ze.changes:null,et=(0,Q.useMemo)(()=>(ve.itemStructureRevision,ve.metadata,k?ve.readSnapshot()??ye:ye),[k,ve,ye]),tt=(0,Q.useMemo)(()=>hi(et),[et]),nt=Ve?.projectId===e&&Ve.parentTaskId===t?{...Ve.selection,status:tt.find(e=>e.taskId===Ve.selection.taskId)?.status??Ve.selection.status}:null;return{access:i,activeTaskRenameLockRef:Xe,appInfoQuery:te,appUpdateMutation:ne,backgroundTerminals:Se,beginNewChatSubmission:De,capabilities:o,client:s,error:c,expandedFileTreePaths:Ee,fileReviewSelection:ze,getNewChatSubmissionStartedAt:Oe,gitStatusQuery:q,gitStatusDetailsQuery:We,globalSettingsMutation:ge,globalSettingsSection:Fe,globalSettingsQuery:X,handleNewChatSubmissionStateChange:ke,inspectorOpen:k,inspectorMaximumWidth:O,inspectorTab:K,inspectorTask:et,inspectorWidth:A,isPending:l,markTaskRunning:y,mcpServersQuery:ie,mcpServersReloadMutation:ae,modelsQuery:Y,navigate:E,newChatSubmissionStartedAt:Ae,openProjectFolder:de,pendingTaskSelection:je,projectDefaultsMutation:he,projectDefaultsQuery:me,projectName:Ke,projectRoots:p?.roots??[],projectOpenCapabilitiesQuery:Z,providerConnectionQuery:re,projectFolderOpenDisabled:ue===void 0||oe.isPending,projectPath:qe,projectPathOpenLockRef:le,projectPathOpenMutation:oe,projectPathOpenMutationRef:ce,taskAttachmentOpenMutation:se,projectRuntime:b,projectTaskState:be,projects:u,queryClient:D,refreshProjectGitStatus:S,renameMutation:Ye,requestNotificationPermission:C,retry:w,runtime:ve,selectedFileReview:$e,selectedInspectorFile:Qe,selectedProjectFileDialog:Ze,selectedRootId:_,selectedRootPath:v,selectedSubagent:nt,setFileReviewSelection:Be,setFileTreeExpansion:Te,setGlobalSettingsSection:Ie,setInspectorOpen:j,setInspectorTab:Ge,setInspectorWidth:ee,setPendingTaskSelection:Me,setSidebarOpen:M,setSidebarWidth:N,setInspectorFileSelection:W,setProjectFileDialogSelection:Re,setSelectedRootId:Ue,setSubagentDialogSelection:He,setTaskRenameOpen:Pe,sidebarConnectionState:xe,sidebarOpen:P,sidebarWidth:F,skillsQuery:fe,startingSnapshot:ye,subagents:tt,taskLaunchState:_e,temporary:n,taskRenameOpen:Ne,tasks:f,t:r,title:Je,viewTask:T,workbenchShellRef:I}}function Fi(e,t){return{...e,fastMode:t}}function Ii(e,t,n){return e?n??!1:t??n??!1}function Li(e,{projectId:t,taskId:n,temporary:r=!1}){let{activeTaskRenameLockRef:i,client:a,getNewChatSubmissionStartedAt:o,globalSettingsQuery:s,gitStatusQuery:c,markTaskRunning:l,modelsQuery:u,navigate:d,projectDefaultsMutation:f,projectDefaultsQuery:p,providerConnectionQuery:m,projectPathOpenLockRef:h,projectPathOpenMutationRef:g,queryClient:_,renameMutation:v,runtime:y,selectedRootPath:b,setFileReviewSelection:x,setInspectorFileSelection:S,setInspectorOpen:C,setInspectorTab:w,setPendingTaskSelection:T,setProjectFileDialogSelection:D,setSidebarOpen:O,setTaskRenameOpen:k,taskLaunchState:A}=e,j=(0,Q.useCallback)(e=>{S({change:e,kind:`diff`,projectId:t}),w(`file`),C(!0)},[t,S,C,w]),M=(0,Q.useCallback)(e=>{b!==void 0&&Kr(_,a,t,b,c.data,e).then(e=>{D({change:e,kind:`diff`,projectId:t})}).catch(e=>{L(e instanceof Error?e:Error(`Git diff is unavailable`))})},[a,c.data,t,_,b,D]),N=(0,Q.useCallback)((e,n)=>{let r=e=>{let t=g.current;t.reset(),h.current.run(()=>t.mutateAsync({appId:`system-default`,path:e})).catch(()=>void 0)};if(n===`popup`){an({onOpenSystemDefault:r,projectId:t,reference:e,...b===void 0?{}:{rootPath:b}});return}let i=sn(e.path);if(i===`system`){r(e.path);return}S({kind:i,projectId:t,reference:e}),w(`file`),C(!0)},[t,h,g,b,C,w,S]),P=(0,Q.useCallback)(e=>{let n=sn(e);if(n===`system`){let t=g.current;t.reset(),h.current.run(()=>t.mutateAsync({appId:`system-default`,path:e})).catch(()=>void 0);return}D({kind:n,projectId:t,reference:{lineNumber:null,path:e}})},[t,h,g,D]),F=(0,Q.useCallback)(e=>{x({changes:e,projectId:t})},[t,x]),I=()=>{k(!1),requestAnimationFrame(()=>{document.querySelector(`#workbench-task-title-rename`)?.focus()})},R=e=>i.current.run(async()=>{if(n!==void 0)try{let r=await v.mutateAsync({projectId:t,taskId:n,title:e});Zt(_,r.task),I()}catch{}}),z=(0,Q.useCallback)(e=>{_.setQueryData([`projects`,e.projectId,`tasks`],t=>bn(t,e)),_.setQueryData([`projects`,e.projectId,`tasks`,ee],t=>t===void 0?void 0:[e,...t.filter(t=>t.id!==e.id)])},[_]),B=(0,Q.useCallback)(e=>{z(e),T({projectId:e.projectId,taskId:e.id})},[z,T]),V=(0,Q.useCallback)((e,n,i,s,c=[],u)=>{if(z(e),n!==void 0&&i!==void 0&&s!==void 0&&u!==void 0){let t=o()??n.startedAt,r={checkpoint:u,input:i,messageAttachments:c,settings:s,...t===null?{}:{submissionStartedAt:t},task:e,turn:n};_.setQueryData(Mi(e.projectId,e.id),r),_.setQueryData(kn(e.projectId,e.id,a).queryKey,{checkpoint:u,snapshot:Ni(r)})}n!==void 0&&l(t,e.id),T(void 0),d({...r?{params:{taskId:e.id},to:`/temporary/t/$taskId`}:{params:{projectId:t,taskId:e.id},to:`/p/$projectId/t/$taskId`}})},[z,a,o,l,d,t,_,T,r]),H=u.data?.data??[],U=s.data?.settings,W=p.data?.settings,G=m.data!==void 0&&E(m.data),K=r?U:W,q=H.find(e=>e.id===K?.model)??H.find(e=>e.isDefault)??H[0],J=(0,Q.useMemo)(()=>({approvalPolicy:K?.approvalPolicy??U?.approvalPolicy??`on-request`,approvalsReviewer:K?.approvalsReviewer??U?.approvalsReviewer??`user`,model:q?.id??K?.model??``,reasoningEffort:K?.reasoningEffort??q?.defaultReasoningEffort??``,sandboxMode:K?.sandboxMode??`workspace-write`}),[q,K,U]),[te,ne]=(0,Q.useState)(),Y=r?te??J:J,re=Ii(r,W?.fastMode,U?.fastMode),ie=async(e,t)=>{r||await f.mutateAsync(Fi(e,t))},ae=async(e,t,n)=>{if(r){ne(e);return}await ie(e,n)},X=(0,Q.useCallback)(e=>{d({params:{projectId:e},to:`/p/$projectId`})},[d]),Z=()=>{O(!1),requestAnimationFrame(()=>{document.querySelector(`#workbench-sidebar-toggle`)?.focus()})},oe=()=>{C(!1),requestAnimationFrame(()=>{document.querySelector(`#workbench-inspector-toggle`)?.focus()})},se=A?.turn.id?y.store!==void 0&&Vr(y.store.getState(),A.turn.id).length>0:!1;return(0,Q.useEffect)(()=>{n!==void 0&&se&&_.removeQueries({exact:!0,queryKey:Mi(t,n)})},[se,t,_,n]),(0,Q.useEffect)(()=>{let e=Ri(y.store?.getState());n===void 0||e===void 0||_.setQueryData([`projects`,t,`tasks`],t=>wt(t,e))},[t,_,y.itemStructureRevision,y.metadata,y.store,n]),(0,Q.useEffect)(()=>{let e=window.matchMedia(Ci),t=window.matchMedia(wi),n=()=>{e.matches&&O(!1),t.matches&&C(!1)};return e.addEventListener(`change`,n),t.addEventListener(`change`,n),()=>{e.removeEventListener(`change`,n),t.removeEventListener(`change`,n)}},[C,O]),{...e,closeInspector:oe,closeSidebar:Z,closeTaskRenameDialog:I,draftSettings:Y,fastModeDefault:re,fastModeAvailable:G,globalSettings:U,handleNewTaskProjectChange:X,handleTaskCreated:B,handleTaskStarted:V,models:H,openFileDiff:j,openProjectFileDiff:M,openFileReview:F,openMessageFileReference:N,openProjectFile:P,renameActiveTask:R,updateDraftSettings:ae,updateProjectTaskDefaults:ie}}function Ri(e){let t=e?.snapshotMetadata;if(!(e===void 0||t==null))return{id:t.id,projectId:t.projectId,title:t.title,turns:e.turnIds.flatMap(t=>{let n=e.turnsById[t];if(n===void 0)return[];let r=(e.itemKeysByTurnId[t]??[]).flatMap(t=>{let n=e.getItemByKey(t);return n?.type===`message`?[n]:[]});return[{...n,items:r}]}),updatedAt:t.updatedAt}}var zi=e(r(),1);function Bi(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 Vi(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 Hi(e,t){if(e===void 0)throw Error(`Unexpected undefined${t?`: ${t}`:``}`);return e}var Ui=(e,t)=>Math.abs(e-t)<1.01,Wi=(e,t,n)=>{let r;return function(...i){e.clearTimeout(r),r=e.setTimeout(()=>t.apply(this,i),n)}},Gi,Ki=()=>{if(Gi!==void 0)return Gi;if(typeof navigator>`u`)return Gi=!1;if(/iP(hone|od|ad)/.test(navigator.userAgent))return Gi=!0;let e=navigator.maxTouchPoints;return Gi=navigator.platform===`MacIntel`&&e!==void 0&&e>0},qi=e=>{let{offsetWidth:t,offsetHeight:n}=e;return{width:t,height:n}},Ji=e=>e,Yi=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},Xi=(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(qi(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(qi(n))};e.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(r):r()});return a.observe(n,{box:`border-box`}),()=>{a.unobserve(n)}},Zi={passive:!0},Qi=typeof window>`u`||`onscrollend`in window,$i=(e,t,n)=>{let r=e.scrollElement;if(!r)return;let i=e.targetWindow;if(!i)return;let a=e.options.useScrollendEvent&&Qi,o=0,s=a?null:Wi(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,Zi),a&&r.addEventListener(`scrollend`,u,Zi),()=>{r.removeEventListener(`scroll`,l),a&&r.removeEventListener(`scrollend`,u)}},ea=(e,t)=>$i(e,t,t=>{let{horizontal:n,isRtl:r}=e.options;return n?t.scrollLeft*(r&&-1||1):t.scrollTop}),ta=(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`]},na=(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})},ra=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:Ji,rangeExtractor:Yi,onChange:()=>{},measureElement:ta,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=Vi(()=>(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,!(!Ki()||this.targetWindow==null)&&(this._iosJustTouchEnded=!0,this._iosTouchEndTimerId=this.targetWindow.setTimeout(()=>{this._iosJustTouchEnded=!1,this._iosTouchEndTimerId=null,this._flushIosDeferredIfReady()},150))};e.addEventListener(`touchstart`,t,Zi),e.addEventListener(`touchend`,n,Zi),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&&(Ki()&&(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=Vi(()=>[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=Vi(()=>[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=Bi(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=Vi(()=>[this.getMeasurements(),this.getSize(),this.getScrollOffset(),this.options.lanes],(e,t,n,r)=>e.length===0||t===0?(this.range=null,null):(this.range=oa(e,t,n,r,r===1&&this._flatMeasurements!=null?this._flatMeasurements:null),this.range),{key:!1,debug:()=>this.options.debug}),this.getVirtualIndexes=Vi(()=>{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=Vi(()=>[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 Hi(t[ia(0,t.length-1,r?e=>n[e*2]:e=>Hi(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:Ki()&&(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&&Ui(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()}},ia=(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 aa(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 oa(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=aa(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=ia(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 sa=typeof document<`u`?Q.useLayoutEffect:Q.useEffect;function ca({useFlushSync:e=!0,directDomUpdates:t=!1,directDomUpdatesMode:n=`transform`,...r}){let i=Q.useReducer(e=>e+1,0)[1],a=Q.useRef({enabled:t,mode:n,container:null,lastSize:null,lastPositions:new WeakMap,prevRange:null});a.current.enabled=t,a.current.mode=n;let o=e=>{let t=a.current;if(!t.enabled||!t.container)return;let n=e.getTotalSize();if(n!==t.lastSize){t.lastSize=n;let r=e.options.horizontal?`width`:`height`;t.container.style[r]=`${n}px`}},s=e=>{let t=a.current;if(!t.enabled||!t.container)return;o(e);let n=!!e.options.horizontal,r=t.mode===`transform`,i=n?`left`:`top`,s=e.options.scrollMargin,c=e.getVirtualItems();for(let a of c){let o=a.start-s,c=e.elementsCache.get(a.key);c&&t.lastPositions.get(c)!==o&&(t.lastPositions.set(c,o),r?c.style.transform=n?`translate3d(${o}px, 0, 0)`:`translate3d(0, ${o}px, 0)`:c.style[i]=`${o}px`)}},c={...r,onChange:(t,n)=>{var o;let c=a.current,l=!0;if(c.enabled){s(t);let e=t.range,n=c.prevRange;l=!n||n.isScrolling!==t.isScrolling||n.startIndex!==e?.startIndex||n.endIndex!==e?.endIndex,l&&(c.prevRange=e?{startIndex:e.startIndex,endIndex:e.endIndex,isScrolling:t.isScrolling}:null)}l&&(e&&n?(0,zi.flushSync)(i):i()),(o=r.onChange)==null||o.call(r,t,n)}},[l]=Q.useState(()=>{let e=new ra(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),sa(()=>l._didMount(),[]),sa(()=>(o(l),l._willUpdate())),sa(()=>{s(l)}),l}function la(e){return ca({observeElementRect:Xi,observeElementOffset:ea,scrollToFn:na,...e})}var ua=24;function da(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<ua)},pauseFollowing(){a(!1)},scrollToBottom(e){o(e,`smooth`)}}}var fa=(0,Q.createContext)(null),pa={height:768,width:1024},ma=300,ha=24,ga=3;function _a(){let e=(0,Q.useContext)(fa);if(e===null)throw Error(`Conversation virtual components must be used within Conversation`);return e}function va({children:e,className:t=``,conversationId:n,onScroll:r,scrollToBottomSignal:i,style:a,...o}){let s=(0,Q.useRef)(null),c=(0,Q.useRef)(i),[l,u]=(0,Q.useState)(!0),[d,f]=(0,Q.useState)(0),p=(0,Q.useRef)(void 0),m=p.current??=da(u),h=(0,Q.useCallback)(()=>{let e=s.current;e!==null&&m.scrollToBottom(e)},[m]),g=(0,Q.useCallback)(()=>{m.pauseFollowing()},[m]),_=(0,Q.useMemo)(()=>({atBottom:l,containerRef:s,pauseFollowing:g,scrollbarWidth:d,scrollToBottom:h}),[l,g,d,h]);return(0,Q.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,Q.useLayoutEffect)(()=>{if(i===void 0||i===c.current)return;c.current=i;let e=s.current;e!==null&&m.scrollToBottom(e)},[m,i]),(0,Q.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,$.jsx)(fa.Provider,{value:_,children:(0,$.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 ya({className:e=``,...t}){return(0,$.jsx)(`div`,{className:`mx-auto flex w-full max-w-content flex-col px-4 py-6 sm:px-6 sm:py-7 ${e}`,...t})}function ba({className:e=``,estimateSize:t,footer:n,getItemKey:r,items:i,renderNavigation:a,renderItem:o,...s}){let{containerRef:c,pauseFollowing:l,scrollbarWidth:u}=_a(),d=(0,Q.useRef)(0),f=(0,Q.useCallback)(()=>c.current,[c]),p=(0,Q.useCallback)(e=>t?.(i[e],e)??ma,[t,i]),m=(0,Q.useCallback)(e=>r(i[e],e),[r,i]),h=la({anchorTo:`end`,count:i.length,estimateSize:p,followOnAppend:`auto`,gap:ha,getItemKey:m,getScrollElement:f,initialRect:pa,overscan:ga,scrollEndThreshold:24}),g=(0,Q.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,Q.useEffect)(()=>()=>{cancelAnimationFrame(d.current)},[]),(0,$.jsxs)($.Fragment,{children:[a?.(g,u,c),(0,$.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,$.jsx)(`div`,{className:`relative w-full`,style:{height:h.getTotalSize()},children:h.getVirtualItems().map(e=>(0,$.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,$.jsx)(`div`,{className:i.length===0?`space-y-6`:`mt-6 space-y-6`,children:n})]})]})}function xa({className:e=``,onClick:t,type:n=`button`,...r}){let i=(0,Q.useContext)(fa),{t:o}=a(`conversation`);return i?.atBottom===!1?(0,$.jsxs)(g,{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:o(`agentComponents.scrollToBottom`),type:n,...r,onClick:e=>{i.scrollToBottom(),t?.(e)},children:[(0,$.jsx)(Rn,{className:`size-4`,"aria-hidden":`true`}),(0,$.jsx)(`span`,{className:`sr-only`,children:o(`agentComponents.scrollToBottom`)})]}):null}function Sa({className:e=``,from:t,...n}){return(0,$.jsx)(`article`,{className:`group/message flex w-full flex-col ${t===`user`?`items-end`:`items-start`} ${e}`,"data-role":t,...n})}function Ca({className:e=``,...t}){return(0,$.jsx)(`div`,{className:`max-w-full text-body leading-6 text-foreground group-data-[role=user]/message:max-w-[var(--ui-layout-message-width)] group-data-[role=user]/message:rounded-surface group-data-[role=user]/message:bg-control group-data-[role=user]/message:px-3.5 group-data-[role=user]/message:py-2.5 ${e}`,...t})}function wa({className:e=``,...t}){return(0,$.jsx)(`div`,{className:`flex items-center gap-1 ${e}`,...t})}function Ta({className:e=``,label:t,tooltip:n,type:r=`button`,...i}){return(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{variant:`ghost`,"aria-label":t??n,className:`grid size-7 place-items-center rounded-control text-muted-foreground transition-colors hover:bg-control-hover hover:text-foreground ${e}`,type:r,...i})}),n===void 0?null:(0,$.jsx)(A,{children:n})]})}(0,Q.createContext)(null);var Ea=(0,Q.createContext)(null);function Da({children:e,className:t=``,collapsible:n=!0,defaultOpen:r=!1,status:i,...a}){let o=(0,Q.useMemo)(()=>({collapsible:n,status:i}),[n,i]),s=`group/task w-full text-label text-foreground ${t}`;return(0,$.jsx)(Ea.Provider,{value:o,children:n?(0,$.jsx)(`details`,{className:s,"data-ai-task":``,"data-status":i,open:r,...a,children:e}):(0,$.jsx)(`div`,{className:s,"data-ai-task":``,"data-status":i,...a,children:e})})}var Oa={completed:{icon:(0,$.jsx)(X,{className:`size-3.5`,"aria-hidden":`true`}),labelKey:`agentComponents.status.completed`},error:{icon:(0,$.jsx)(Yn,{className:`size-3.5`,"aria-hidden":`true`}),labelKey:`agentComponents.status.error`},in_progress:{icon:(0,$.jsx)(Kn,{className:`size-3.5 animate-spin`,"aria-hidden":`true`}),labelKey:`agentComponents.status.inProgress`},pending:{icon:(0,$.jsx)(xn,{className:`size-3.5`,"aria-hidden":`true`}),labelKey:`agentComponents.status.pending`}};function ka({className:e=``,suffix:t,title:n,...r}){let i=(0,Q.useContext)(Ea),{t:o}=a(`conversation`);if(i===null)throw Error(`TaskTrigger must be used within Task`);let s=Oa[i.status],c=`flex min-h-9 w-full list-none items-center gap-2 py-1 [&::-webkit-details-marker]:hidden ${i.collapsible?`cursor-pointer`:``} ${e}`,l=(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`span`,{className:`shrink-0 ${i.status===`error`?`text-danger`:`text-muted-foreground`}`,children:[s.icon,(0,$.jsx)(`span`,{className:`sr-only`,children:o(s.labelKey)})]}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-medium`,children:n}),t,i.collapsible?(0,$.jsx)(oe,{className:`size-3.5 shrink-0 text-muted-foreground transition-transform group-open/task:rotate-90`,"aria-hidden":`true`}):null]});return i.collapsible?(0,$.jsx)(`summary`,{className:c,...r,children:l}):(0,$.jsx)(`div`,{className:c,...r,children:l})}function Aa({className:e=``,...t}){return(0,$.jsx)(`div`,{className:`pb-1 pl-5 ${e}`,...t})}function ja({className:e=``,...t}){return(0,$.jsx)(`div`,{className:`min-w-0 [overflow-wrap:anywhere] border-l border-separator py-1 pl-3 text-meta leading-5 text-muted-foreground ${e}`,...t})}function Ma({onProjectChange:e,projectId:t,projects:n,scopeName:r}){let i=r??n.find(e=>e.id===t)?.name??``;return(0,$.jsx)(`section`,{className:`grid min-h-0 flex-1 place-items-center px-6`,"aria-label":s.t(`timeline.conversation`,{ns:`conversation`}),children:(0,$.jsxs)(`div`,{className:`w-full max-w-xl text-center`,children:[(0,$.jsx)(sr,{"aria-hidden":`true`,className:`mx-auto size-12 text-muted-foreground/55`,strokeWidth:1.35}),(0,$.jsxs)(`h2`,{className:`mt-5 flex flex-wrap items-center justify-center text-balance text-xl font-normal leading-tight text-foreground`,children:[s.t(`timeline.emptyBefore`,{ns:`conversation`}),(0,$.jsxs)(`span`,{className:`group relative mx-1 inline-block max-w-full rounded-control focus-within:shadow-focus`,children:[(0,$.jsx)(`span`,{"aria-hidden":`true`,className:`block max-w-full truncate whitespace-pre font-sans font-normal text-foreground underline decoration-current/35 underline-offset-4 transition-colors group-hover:decoration-current`,children:i}),r===void 0?(0,$.jsx)(`select`,{"aria-label":s.t(`timeline.selectProject`,{ns:`conversation`}),className:`absolute inset-0 size-full min-w-0 cursor-pointer appearance-none opacity-0 outline-none`,onChange:n=>{let r=n.currentTarget.value;r!==t&&e(r)},value:t,children:n.map(e=>(0,$.jsx)(`option`,{value:e.id,children:e.name},e.id))}):null]}),s.t(`timeline.emptyAfter`,{ns:`conversation`})]})]})})}function Na({message:e,role:t}){return(0,$.jsx)(`section`,{"aria-label":s.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 Pa(e){return e===`pending`?`input-streaming`:e===`running`?`input-available`:e===`declined`?`output-denied`:e===`failed`||e===`interrupted`?`output-error`:`output-available`}function Fa(e){return e===`pending`?`pending`:e===`running`?`in_progress`:e===`failed`||e===`declined`||e===`interrupted`?`error`:`completed`}function Ia(e){return typeof e==`string`?e:JSON.stringify(e,null,2)}function La({item:e,operation:t}){let n=vi(e.status,t.agents),r=yi(e.status,t.agents);return(0,$.jsx)(Da,{collapsible:!1,status:n,children:(0,$.jsx)(ka,{title:`${di(t.name)} · ${r}`})})}var Ra=1e3,za=new Map;function Ba(e){let t=za.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 za.set(e,n),n}function Va(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 Ha({completedAt:e,expanded:t,onToggle:n,startedAt:r}){let[i,a]=(0,Q.useState)(()=>Date.now());if((0,Q.useEffect)(()=>{if(r===null||e!==null)return;let t=globalThis.setInterval(()=>{a(Date.now())},Ra);return()=>{globalThis.clearInterval(t)}},[e,r]),r===null)return null;let o=Date.parse(r),c=e===null?i:Date.parse(e);if(!Number.isFinite(o)||!Number.isFinite(c))return null;let l=Va(Math.max(0,Math.floor((c-o)/1e3))),u=(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`span`,{children:[s.t(`timeline.processing`,{ns:`conversation`}),`\xA0`]}),(0,$.jsx)(`time`,{dateTime:l.dateTime,children:l.label})]}),d=`mb-4 flex w-full items-center border-b border-separator pb-2.5 text-label font-medium text-muted-foreground`;return n===void 0?(0,$.jsx)(`div`,{className:d,"data-turn-processing-time":``,children:u}):(0,$.jsxs)(`button`,{"aria-expanded":t??!1,"aria-label":s.t(t?`timeline.collapseProcess`:`timeline.expandProcess`,{ns:`conversation`}),className:`${d} cursor-pointer text-left transition-colors hover:text-foreground focus-visible:shadow-focus`,"data-turn-processing-time":``,onClick:n,type:`button`,children:[u,(0,$.jsx)(oe,{"aria-hidden":`true`,className:`ms-auto size-3.5 transition-transform ${t?`rotate-90`:``}`})]})}function Ua(e,t,n){return e===`user`?t.startedAt??n:t.completedAt??n}function Wa({lastTurnId:e,modeLabel:t,onForkTask:n,text:r,timestamp:i}){let[a,c]=(0,Q.useState)(!1),l=(0,Q.useRef)(null),u=(0,Q.useRef)(R()),d=i===void 0?void 0:new Date(i),f=o(),p=d===void 0?void 0:Ba(f),m=()=>u.current.run(async()=>{try{await navigator.clipboard.writeText(r),V()}catch(e){L(e)}}),h=()=>u.current.run(async()=>{if(!(e===void 0||n===void 0)){l.current??=D(),c(!0);try{await n(e,l.current),V()}catch(e){L(e)}finally{c(!1)}}});return(0,$.jsxs)(wa,{className:`mt-2 text-label text-muted-foreground`,children:[(0,$.jsx)(Ta,{label:s.t(`timeline.copyMessage`,{ns:`conversation`}),onClick:()=>{m()},tooltip:s.t(`timeline.copyMessage`,{ns:`conversation`}),children:(0,$.jsx)(Ee,{className:`size-3.5`,"aria-hidden":`true`})}),e===void 0||n===void 0?null:(0,$.jsx)(Ta,{disabled:a,label:a?s.t(`timeline.forking`,{ns:`conversation`}):s.t(`timeline.fork`,{ns:`conversation`}),onClick:()=>{h()},tooltip:s.t(`timeline.fork`,{ns:`conversation`}),children:(0,$.jsx)(J,{className:`size-3.5`,"aria-hidden":`true`})}),t===void 0?null:(0,$.jsx)(`span`,{children:t}),i===void 0||d===void 0?null:(0,$.jsx)(`time`,{dateTime:i,title:p?.full.format(d),children:p?.time.format(d)})]})}var Ga=(0,Q.memo)(function({as:e=`p`,children:t,className:n=``,duration:r=2,spread:i=2,style:a,...o}){let s=(0,Q.useMemo)(()=>({"--ui-shimmer-duration":`${String(r)}s`,"--ui-shimmer-spread":`${String(i)}em`,...a}),[r,i,a]);return(0,$.jsx)(e,{className:`agent-shimmer inline-block ${n}`,"data-agent-shimmer":``,style:s,...o,children:t})});Ga.displayName=`Shimmer`;function Ka(e){return e===`__CODEXLY_PENDING_COMMAND__`?s.t(`timeline.commandPending`,{ns:`conversation`}):e}function qa(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:Ka(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:s.t(`timeline.approvalReview.reviewing`,{ns:`conversation`}),type:`operation`};if(e.at(-1)?.item?.type===`plan`)return{label:s.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:Ka(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 Ja({operation:e}){let t=e===void 0?s.t(`timeline.running`,{ns:`conversation`}):s.t(`timeline.runningOperation`,{ns:`conversation`,operation:e.label}),n=e===void 0?s.t(`timeline.aiRunning`,{ns:`conversation`}):s.t(`timeline.aiRunningOperation`,{ns:`conversation`,operation:e.label});return(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2 text-muted-foreground`,role:`status`,children:[e?.type===`command`?(0,$.jsx)(hr,{"aria-hidden":`true`,className:`size-3.5 shrink-0`}):null,(0,$.jsx)(Ga,{"aria-label":n,as:`span`,className:`min-w-0 truncate text-body-small`,children:t})]})}function Ya(e){let t=e.target;return t.type===`uncommitted_changes`?s.t(`timeline.reviewPrompt.uncommitted`,{ns:`conversation`}):t.type===`base_branch`?s.t(`timeline.reviewPrompt.baseBranch`,{branch:t.branch,ns:`conversation`}):t.type===`commit`?t.title===void 0?s.t(`timeline.reviewPrompt.commit`,{ns:`conversation`,sha:t.sha}):s.t(`timeline.reviewPrompt.commitWithTitle`,{ns:`conversation`,sha:t.sha,title:t.title}):s.t(`timeline.reviewPrompt.custom`,{instructions:t.instructions,ns:`conversation`})}function Xa({item:e}){let t=s.t(`timeline.approvalReview.status.${e.status}`,{ns:`conversation`}),n=e.status===`in_progress`?`in_progress`:e.status===`approved`?`completed`:`error`;return(0,$.jsxs)(Da,{collapsible:!0,defaultOpen:e.status!==`approved`,status:n,children:[(0,$.jsx)(ka,{title:s.t(`timeline.approvalReview.title`,{ns:`conversation`,status:t})}),(0,$.jsxs)(Aa,{children:[(0,$.jsx)(ja,{children:s.t(`timeline.approvalReview.actionDetail`,{action:s.t(`timeline.approvalReview.action.${e.action.type}`,{ns:`conversation`}),detail:e.action.detail,ns:`conversation`})}),e.riskLevel===void 0?null:(0,$.jsx)(ja,{children:s.t(`timeline.approvalReview.risk`,{level:s.t(`timeline.approvalReview.riskLevel.${e.riskLevel}`,{ns:`conversation`}),ns:`conversation`})}),e.userAuthorization===void 0?null:(0,$.jsx)(ja,{children:s.t(`timeline.approvalReview.authorization`,{level:s.t(`timeline.approvalReview.authorizationLevel.${e.userAuthorization}`,{ns:`conversation`}),ns:`conversation`})}),e.rationale===void 0?null:(0,$.jsx)(ja,{children:s.t(`timeline.approvalReview.rationale`,{ns:`conversation`,rationale:e.rationale})})]})]})}function Za({isLastTurnItem:e,role:t,turnStatus:n}){let r=t===`assistant`&&e&&n===`running`;return{isAnimating:r,mode:r?`streaming`:`static`}}var Qa=(0,Q.createContext)(`approval-requested`);function $a(e){for(let t of Q.Children.toArray(e))if((0,Q.isValidElement)(t)&&t.type===to)return typeof t.props.children==`string`?t.props.children:s.t(`agentComponents.approval`,{ns:`conversation`});return s.t(`agentComponents.approval`,{ns:`conversation`})}function eo({approval:e,children:t,className:n=``,state:r,...i}){let{t:o}=a(`conversation`),s=$a(t);return(0,$.jsx)(Qa.Provider,{value:r,children:(0,$.jsx)(`section`,{"aria-label":o(`agentComponents.approvalRequest`,{title:s}),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 to({children:e,className:t=``,...n}){return(0,$.jsxs)(`h3`,{className:`flex items-center gap-2 text-label font-semibold text-foreground ${t}`,...n,children:[(0,$.jsx)(mr,{className:`size-4 text-muted-foreground`,"aria-hidden":`true`}),e]})}function no({className:e=``,...t}){return(0,$.jsx)(`div`,{className:`mt-2 break-words rounded-control bg-raised px-3 py-2 text-body-small leading-5 text-foreground shadow-sm ${e}`,...t})}function ro({children:e,className:t=``,...n}){let r=(0,Q.useContext)(Qa),{t:i}=a(`conversation`);return r!==`approval-rejected`&&r!==`approval-expired`?null:(0,$.jsxs)(`div`,{className:`mt-2 flex items-center gap-1.5 text-label text-muted-foreground ${t}`,...n,children:[(0,$.jsx)(Yn,{className:`size-3.5`,"aria-hidden":`true`}),e??i(`agentComponents.approvalRejected`)]})}function io({className:e=``,...t}){return(0,$.jsx)(`div`,{className:`mt-3 flex flex-wrap justify-end gap-2 ${e}`,...t})}function ao({className:e=``,ref:t,tone:n=`neutral`,type:r=`button`,...i}){return(0,$.jsx)(g,{className:e,ref:t,size:`compact`,type:r,variant:n===`danger`?`destructive`:n===`primary`?`default`:`secondary`,...i})}var oo=[`network`,`file_system`];function so(e,t){let n=new Set(e);return{grantedPermissions:oo.filter(e=>n.has(e)),scope:t}}function co(e,t){return e.status===`expired`?`approval-expired`:e.status===`resolved`?`approval-resolved`:t?`approval-submitting`:`approval-requested`}function lo(e){return oo.filter(t=>t===`network`?e.permissions.network!==null:e.permissions.fileSystem!==null)}function uo({path:e}){let{t}=a(`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 fo({permissions:e}){let{t}=a(`workbench`);return(0,$.jsxs)(`div`,{className:`mt-2 space-y-1 pl-6 font-mono text-meta text-muted-foreground`,children:[[...(e.read??[]).map(e=>({access:`read`,path:e})),...(e.write??[]).map(e=>({access:`write`,path:e}))].map((e,n)=>(0,$.jsxs)(`div`,{className:`break-all`,children:[(0,$.jsx)(`span`,{className:`font-sans font-medium text-foreground`,children:t(`pending.permissionAccess.${e.access}`)}),` `,e.path]},`${e.access}:${e.path}:${String(n)}`)),e.entries.map((e,n)=>(0,$.jsxs)(`div`,{className:`break-all`,children:[(0,$.jsx)(`span`,{className:`font-sans font-medium text-foreground`,children:t(`pending.permissionAccess.${e.access}`)}),` `,(0,$.jsx)(uo,{path:e.path})]},`${e.access}:${String(n)}`)),e.globScanMaxDepth===null?null:(0,$.jsx)(`div`,{className:`font-sans`,children:t(`pending.permissionGlobDepth`,{depth:e.globScanMaxDepth})})]})}function po({interactive:e,onResolve:t,request:n}){let{t:r}=a(`workbench`),i=lo(n),[o,s]=(0,Q.useState)(()=>new Set(i)),[c,l]=(0,Q.useState)(!1),[u,d]=(0,Q.useState)(),f=(0,Q.useRef)(null),p=(0,Q.useRef)(R()),m=e&&n.status===`pending`&&!c,h=m&&o.size>0;(0,Q.useEffect)(()=>{h&&f.current?.focus()},[h,n.requestId]);let g=e=>p.current.run(async()=>{if(!m||e!==`deny`&&o.size===0)return;let r=so(e===`deny`?[]:[...o],e===`deny`?`turn`:e),i=JSON.stringify(r),a=u?.fingerprint===i?u:{fingerprint:i,key:D()};d(a),l(!0);try{await t(n,r,a.key),V()}catch(e){L(e),l(!1)}}),_=(e,t)=>{s(n=>{let r=new Set(n);return t?r.add(e):r.delete(e),r})};return(0,$.jsxs)(eo,{approval:{id:n.requestId},state:co(n,c),children:[(0,$.jsx)(to,{children:r(`pending.permissionApproval`)}),(0,$.jsxs)(no,{children:[(0,$.jsxs)(`div`,{className:`space-y-3`,children:[n.permissions.network===null?null:(0,$.jsx)(`div`,{children:(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(U,{"aria-label":r(`pending.networkPermission`),checked:o.has(`network`),disabled:!m,id:`${n.requestId}-network`,onCheckedChange:e=>{_(`network`,e===!0)}}),(0,$.jsx)(`label`,{className:`font-medium`,htmlFor:`${n.requestId}-network`,children:r(`pending.networkPermission`)})]})}),n.permissions.fileSystem===null?null:(0,$.jsxs)(`div`,{children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(U,{"aria-label":r(`pending.fileSystemPermission`),checked:o.has(`file_system`),disabled:!m,id:`${n.requestId}-file-system`,onCheckedChange:e=>{_(`file_system`,e===!0)}}),(0,$.jsx)(`label`,{className:`font-medium`,htmlFor:`${n.requestId}-file-system`,children:r(`pending.fileSystemPermission`)})]}),(0,$.jsx)(fo,{permissions:n.permissions.fileSystem})]})]}),n.reason===null?null:(0,$.jsx)(`p`,{className:`mt-2 text-label text-muted-foreground`,children:n.reason})]}),n.status===`expired`?(0,$.jsx)(ro,{children:r(`pending.expired`)}):(0,$.jsxs)($.Fragment,{children:[e?null:(0,$.jsx)(`p`,{className:`mt-2 text-label text-muted-foreground`,children:r(`pending.previousPending`)}),(0,$.jsxs)(io,{children:[(0,$.jsx)(ao,{disabled:!m,onClick:()=>void g(`deny`),tone:`danger`,children:r(`pending.deny`)}),(0,$.jsx)(ao,{disabled:!h,onClick:()=>void g(`session`),children:r(`pending.allowSession`)}),(0,$.jsx)(ao,{disabled:!h,onClick:()=>void g(`turn`),ref:f,tone:`primary`,children:r(`pending.allowTurn`)})]})]})]})}function mo(e,t,n=D){let r=JSON.stringify(t);return e?.fingerprint===r?e:{fingerprint:r,key:n()}}function ho(e,t){return e.status===`expired`?`approval-expired`:e.status===`resolved`?`approval-resolved`:t?`approval-submitting`:`approval-requested`}function go({interactive:e,onResolve:t,request:n}){let[r,i]=(0,Q.useState)(!1),[a,o]=(0,Q.useState)(),s=(0,Q.useRef)(R()),c=e&&n.status===`pending`&&!r;return{canSubmit:c,resolve:e=>s.current.run(async()=>{if(!c)return;let r=mo(a,e);o(r),i(!0);try{await t(n,e,r.key),V()}catch(e){L(e),i(!1)}}),submitting:r}}function _o(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 vo({field:e}){return e.description===null?null:(0,$.jsx)(`p`,{className:`mt-0.5 text-meta text-muted-foreground`,children:e.description})}function yo(e){return e.format===`email`?`email`:e.format===`uri`?`url`:e.format===`date`?`date`:`text`}function bo({content:e,controlPrefix:t,disabled:n,field:r,setContent:i}){let a=`mcp-field-${t}-${r.id}`,o=e=>{i(t=>e===void 0?Object.fromEntries(Object.entries(t).filter(([e])=>e!==r.id)):{...t,[r.id]:e})};if(r.type===`boolean`)return(0,$.jsxs)(`label`,{className:`flex min-h-11 cursor-pointer items-center gap-2.5 rounded-control bg-raised px-3 py-2 text-label text-foreground`,htmlFor:a,children:[(0,$.jsx)(`input`,{checked:e[r.id]===!0,disabled:n,id:a,onChange:e=>{o(e.target.checked)},type:`checkbox`}),(0,$.jsxs)(`span`,{children:[(0,$.jsx)(`span`,{className:`block font-medium`,children:r.title}),(0,$.jsx)(vo,{field:r})]})]});if(r.type===`select`){let t=r.options.findIndex(t=>t.value===e[r.id]);return(0,$.jsxs)(`div`,{children:[(0,$.jsx)(`label`,{className:`text-label font-medium text-foreground`,htmlFor:a,children:r.title}),(0,$.jsx)(vo,{field:r}),(0,$.jsxs)(`select`,{className:`mt-2 h-11 w-full rounded-control border border-separator-strong bg-raised px-2.5 text-label text-foreground outline-none focus-visible:border-brand focus-visible:shadow-focus workbench:h-8`,disabled:n,id:a,onChange:e=>{let t=r.options[Number(e.target.value)];o(t?.value)},required:r.required,value:t<0?``:String(t),children:[(0,$.jsx)(`option`,{disabled:r.required,value:``,children:`--`}),r.options.map((e,t)=>(0,$.jsx)(`option`,{value:t,children:e.label},e.value))]})]})}if(r.type===`multi_select`){let t=e[r.id],i=Array.isArray(t)?t:[];return(0,$.jsxs)(`fieldset`,{children:[(0,$.jsx)(`legend`,{className:`text-label font-medium text-foreground`,children:r.title}),(0,$.jsx)(vo,{field:r}),(0,$.jsx)(`div`,{className:`mt-2 grid grid-cols-1 gap-2 @sm:grid-cols-2`,children:r.options.map(e=>(0,$.jsxs)(`label`,{className:`flex min-h-11 cursor-pointer items-center gap-2 rounded-control bg-raised px-3 py-2 text-label text-foreground`,children:[(0,$.jsx)(`input`,{checked:i.includes(e.value),disabled:n,onChange:t=>{o(t.target.checked?[...i,e.value]:i.filter(t=>t!==e.value))},type:`checkbox`}),e.label]},e.value))})]})}let s=e[r.id];return(0,$.jsxs)(`div`,{children:[(0,$.jsx)(`label`,{className:`text-label font-medium text-foreground`,htmlFor:a,children:r.title}),(0,$.jsx)(vo,{field:r}),(0,$.jsx)(he,{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`?yo(r):`number`,value:typeof s==`number`||typeof s==`string`?s:``,variant:`compact`})]})}function xo({interactive:e,onResolve:t,request:n}){let{t:r}=a(`workbench`),[i,o]=(0,Q.useState)(()=>_o(n.fields)),{canSubmit:s,resolve:c,submitting:l}=go({interactive:e,onResolve:t,request:n});return(0,$.jsxs)(eo,{approval:{id:n.requestId},className:`@container`,state:ho(n,l),children:[(0,$.jsx)(to,{children:r(`pending.mcpForm`,{server:n.serverName})}),(0,$.jsx)(no,{children:n.message}),n.status===`expired`?(0,$.jsx)(ro,{children:r(`pending.expired`)}):(0,$.jsxs)(`form`,{className:`mt-3 space-y-3`,onSubmit:e=>{e.preventDefault(),c({action:`accept`,content:i})},children:[n.fields.map(t=>(0,$.jsx)(bo,{content:i,controlPrefix:n.requestId,disabled:!e||l,field:t,setContent:o},t.id)),e?null:(0,$.jsx)(`p`,{className:`text-label text-muted-foreground`,children:r(`pending.previousPending`)}),(0,$.jsxs)(io,{children:[(0,$.jsx)(ao,{disabled:!s,onClick:()=>void c({action:`cancel`,content:null}),type:`button`,children:r(`pending.cancel`)}),(0,$.jsx)(ao,{disabled:!s,onClick:()=>void c({action:`decline`,content:null}),tone:`danger`,type:`button`,children:r(`pending.deny`)}),(0,$.jsx)(ao,{disabled:!s,tone:`primary`,type:`submit`,children:r(`pending.submitAnswers`)})]})]})]})}function So({interactive:e,onResolve:t,request:n}){let{t:r}=a(`workbench`),{canSubmit:i,resolve:o,submitting:s}=go({interactive:e,onResolve:t,request:n});return(0,$.jsxs)(eo,{approval:{id:n.requestId},state:ho(n,s),children:[(0,$.jsx)(to,{children:r(`pending.mcpRequest`,{server:n.serverName})}),(0,$.jsxs)(no,{children:[(0,$.jsx)(`p`,{children:n.message}),n.mode===`unsupported`?(0,$.jsx)(`p`,{className:`mt-2 text-label text-muted-foreground`,children:r(`pending.unsupportedForm`)}):null]}),n.status===`expired`?(0,$.jsx)(ro,{children:r(`pending.expired`)}):(0,$.jsxs)($.Fragment,{children:[e?null:(0,$.jsx)(`p`,{className:`mt-2 text-label text-muted-foreground`,children:r(`pending.previousPending`)}),(0,$.jsxs)(io,{children:[(0,$.jsx)(ao,{disabled:!i,onClick:()=>void o({action:`cancel`,content:null}),children:r(`pending.cancel`)}),(0,$.jsx)(ao,{disabled:!i,onClick:()=>void o({action:`decline`,content:null}),tone:`danger`,children:r(`pending.deny`)}),n.mode===`url`?(0,$.jsx)(g,{asChild:!0,size:`compact`,children:(0,$.jsxs)(`a`,{"aria-disabled":!i,href:n.url,onClick:e=>{if(!i){e.preventDefault();return}o({action:`accept`,content:{}})},rel:`noreferrer noopener`,target:`_blank`,children:[(0,$.jsx)(Oe,{"aria-hidden":`true`}),r(`pending.openUrl`)]})}):null]})]})]})}function Co(e){return e.request.mode===`form`?(0,$.jsx)(xo,{...e,request:e.request}):(0,$.jsx)(So,{...e})}function wo(e,t){return e.status===`expired`?`approval-expired`:e.status===`resolved`?`approval-resolved`:t?`approval-submitting`:`approval-requested`}function To(e){switch(e){case`http`:return`HTTP`;case`https`:return`HTTPS`;case`socks5Tcp`:return`SOCKS5 TCP`;case`socks5Udp`:return`SOCKS5 UDP`}}function Eo({interactive:e,onResolve:t,request:n}){let{t:r}=a(`workbench`),[i,o]=(0,Q.useState)(!1),[s,c]=(0,Q.useState)(),l=(0,Q.useRef)(null),u=(0,Q.useRef)(R()),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
3
|
`):n.grantRoot??r(`pending.fileChangeFallback`):`${To(d.protocol)}\n${d.host}`,m=e&&n.status===`pending`&&!i,h=m&&n.availableDecisions.includes(`allow`);(0,Q.useEffect)(()=>{h&&l.current?.focus()},[h,n.requestId]);let g=e=>u.current.run(async()=>{if(!m)return;let r={decision:e},i=mo(s,r);c(i),o(!0);try{await t(n,r,i.key),V()}catch(e){L(e),o(!1)}});return(0,$.jsxs)(eo,{approval:{id:n.requestId},state:wo(n,i),children:[(0,$.jsx)(to,{children:f}),(0,$.jsxs)(no,{children:[(0,$.jsx)(`pre`,{className:`whitespace-pre-wrap font-mono text-meta`,children:p}),n.type===`command_approval`&&n.additionalPermissions!=null?(0,$.jsxs)(`div`,{className:`mt-3 space-y-2 border-t border-border pt-2`,children:[(0,$.jsx)(`p`,{className:`text-label font-medium text-foreground`,children:r(`pending.additionalPermissions`)}),n.additionalPermissions.network===null?null:(0,$.jsx)(`p`,{className:`text-label text-muted-foreground`,children:r(`pending.networkPermission`)}),n.additionalPermissions.fileSystem===null?null:(0,$.jsxs)(`div`,{children:[(0,$.jsx)(`p`,{className:`text-label text-muted-foreground`,children:r(`pending.fileSystemPermission`)}),(0,$.jsx)(fo,{permissions:n.additionalPermissions.fileSystem})]})]}):null,n.reason===null?null:(0,$.jsx)(`p`,{className:`mt-2 text-label text-muted-foreground`,children:n.reason})]}),n.status===`expired`?(0,$.jsx)(ro,{children:r(`pending.expired`)}):(0,$.jsxs)($.Fragment,{children:[e?null:(0,$.jsx)(`p`,{className:`mt-2 text-label text-muted-foreground`,children:r(`pending.previousPending`)}),(0,$.jsxs)(io,{children:[n.availableDecisions.includes(`deny`)?(0,$.jsx)(ao,{disabled:!m,onClick:()=>void g(`deny`),tone:`danger`,children:r(`pending.deny`)}):null,n.availableDecisions.includes(`allow_for_session`)?(0,$.jsx)(ao,{disabled:!m,onClick:()=>void g(`allow_for_session`),children:r(`pending.allowSession`)}):null,n.availableDecisions.includes(`allow`)?(0,$.jsx)(ao,{disabled:!m,onClick:()=>void g(`allow`),ref:l,tone:`primary`,children:r(`pending.allow`)}):null]})]})]})}function Do({interactive:e,onResolve:t,request:n}){let{t:r}=a(`workbench`),[i,o]=(0,Q.useState)({}),[s,c]=(0,Q.useState)(!1),[l,u]=(0,Q.useState)(),d=(0,Q.useRef)(R()),f=n.questions.every(e=>(i[e.id]??``).trim()!==``),p=e&&n.status===`pending`&&f&&!s,m=!e||s,h=()=>d.current.run(async()=>{if(!p)return;c(!0);let e={answers:Object.fromEntries(n.questions.map(e=>[e.id,[(i[e.id]??``).trim()]]))},r=mo(l,e);u(r);try{await t(n,e,r.key),V()}catch(e){L(e),c(!1)}});return n.status===`pending`?(0,$.jsxs)(`form`,{className:`w-full rounded-surface bg-control px-3.5 py-3 shadow-sm`,onSubmit:e=>{e.preventDefault(),h()},children:[(0,$.jsx)(`h3`,{className:`text-label font-semibold text-foreground`,children:r(`pending.inputRequired`)}),(0,$.jsx)(`div`,{className:`mt-3 space-y-4`,children:n.questions.map(e=>(0,$.jsxs)(`fieldset`,{children:[(0,$.jsx)(`legend`,{className:`text-body-small font-medium text-foreground`,children:e.prompt}),(0,$.jsx)(`p`,{className:`mt-0.5 text-meta text-muted-foreground`,children:e.header}),e.type===`choice`?(0,$.jsxs)(`div`,{className:`mt-2 space-y-1.5`,children:[e.options.map((t,n)=>(0,$.jsxs)(`label`,{"aria-label":t.label,className:`flex cursor-pointer items-start gap-2 rounded-control bg-raised px-2.5 py-2 text-label`,htmlFor:`${e.id}-option-${String(n)}`,children:[(0,$.jsx)(`input`,{className:`mt-0.5 size-4 shrink-0 accent-primary`,checked:i[e.id]===t.label,disabled:m,id:`${e.id}-option-${String(n)}`,name:e.id,onChange:()=>{o(n=>({...n,[e.id]:t.label}))},type:`radio`,value:t.label}),(0,$.jsxs)(`span`,{children:[(0,$.jsx)(`span`,{className:`block font-medium text-foreground`,children:t.label}),(0,$.jsx)(`span`,{className:`block text-muted-foreground`,children:t.description})]})]},t.label)),e.isOther?(0,$.jsx)(he,{"aria-label":r(`pending.otherAnswer`,{header:e.header}),disabled:m,onChange:t=>{o(n=>({...n,[e.id]:t.target.value}))},placeholder:r(`pending.other`),type:`text`,value:e.options.some(t=>t.label===i[e.id])?``:i[e.id]??``,variant:`compact`}):null]}):e.type===`confirmation`?(0,$.jsx)(`div`,{className:`mt-2 grid grid-cols-2 rounded-control bg-raised p-0.5`,children:e.options.map(t=>(0,$.jsx)(g,{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:m,onClick:()=>{o(n=>({...n,[e.id]:t.label}))},type:`button`,children:t.label},t.label))}):(0,$.jsx)(he,{"aria-label":e.prompt,className:`mt-2`,disabled:m,onChange:t=>{o(n=>({...n,[e.id]:t.target.value}))},type:e.isSecret?`password`:`text`,value:i[e.id]??``,variant:`compact`})]},e.id))}),e?null:(0,$.jsx)(`p`,{className:`mt-3 text-label text-muted-foreground`,children:r(`pending.previousPending`)}),(0,$.jsx)(`div`,{className:`mt-3 flex justify-end`,children:(0,$.jsx)(g,{disabled:!p,size:`compact`,type:`submit`,children:r(`pending.submitAnswers`)})})]}):(0,$.jsx)(`section`,{className:`w-full rounded-surface bg-control px-3.5 py-3 text-label text-muted-foreground`,children:n.status===`expired`?r(`pending.expired`):r(`pending.processed`)})}function Oo(e){return e.request.status===`resolved`?null:e.request.type===`user_input`?(0,$.jsx)(Do,{interactive:e.interactive,onResolve:e.onResolve,request:e.request}):e.request.type===`permissions_approval`?(0,$.jsx)(po,{interactive:e.interactive,onResolve:e.onResolve,request:e.request}):e.request.type===`mcp_elicitation`?(0,$.jsx)(Co,{interactive:e.interactive,onResolve:e.onResolve,request:e.request}):(0,$.jsx)(Eo,{interactive:e.interactive,onResolve:e.onResolve,request:e.request})}function ko({change:e,onOpen:t}){let n=In(e.path),r=s.t(`timeline.fileOperation.${e.kind}`,{ns:`conversation`}),{additions:i,removals:a}=Ln(e);return(0,$.jsxs)(g,{variant:`ghost`,"aria-haspopup":`dialog`,"aria-label":s.t(`timeline.fileChange`,{additions:i,name:n,ns:`conversation`,operation:r,removals:a}),className:`flex min-h-9 w-full items-center gap-2 rounded-control bg-control px-2.5 text-left text-label text-foreground transition-colors hover:bg-control-hover`,"data-file-change":e.kind,onClick:()=>{t(e)},type:`button`,children:[(0,$.jsx)(Ae,{className:`size-3.5 shrink-0 text-muted-foreground`,"aria-hidden":`true`}),(0,$.jsx)(`span`,{className:`shrink-0 text-muted-foreground`,children:r}),(0,$.jsx)(`span`,{className:`min-w-0 truncate font-medium`,children:n}),(0,$.jsxs)(`span`,{className:`ml-auto shrink-0 text-diff-added`,children:[`+`,i]}),(0,$.jsxs)(`span`,{className:`shrink-0 text-diff-removed`,children:[`-`,a]})]})}function Ao({changes:e,onOpenFileDiff:t,onReviewFileChanges:n}){let[r,i]=(0,Q.useState)(!1),a=Fn(e),o=r?a.changes:a.changes.slice(0,3),c=a.changes.length-o.length;return(0,$.jsxs)(`section`,{"aria-label":s.t(`timeline.changedFiles`,{count:a.changes.length,ns:`conversation`}),className:`mt-4 w-full overflow-hidden rounded-surface border border-separator-strong bg-raised shadow-control`,children:[(0,$.jsxs)(`header`,{className:`flex min-h-16 items-center gap-3 px-3 py-2.5 shadow-toolbar`,children:[(0,$.jsx)(`span`,{className:`grid size-9 shrink-0 place-items-center rounded-control bg-control text-muted-foreground`,children:(0,$.jsx)($e,{className:`size-4`,"aria-hidden":`true`})}),(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(`h3`,{className:`text-body-small font-semibold`,children:s.t(`timeline.editedFiles`,{count:a.changes.length,ns:`conversation`})}),(0,$.jsxs)(`p`,{className:`mt-0.5 text-label text-muted-foreground`,children:[(0,$.jsxs)(`span`,{className:`text-diff-added`,children:[`+`,a.additions]}),` `,(0,$.jsxs)(`span`,{className:`text-diff-removed`,children:[`-`,a.removals]})]})]}),(0,$.jsx)(g,{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:s.t(`timeline.review`,{ns:`conversation`})})]}),(0,$.jsxs)(`div`,{className:`space-y-1 p-2`,children:[o.map(e=>(0,$.jsx)(ko,{change:e,onOpen:t},e.path)),c>0?(0,$.jsx)(g,{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:s.t(`timeline.moreFiles`,{count:c,ns:`conversation`})}):null,r&&a.changes.length>3?(0,$.jsx)(g,{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:s.t(`timeline.collapseFiles`,{ns:`conversation`})}):null]})]})}function jo(e,t){if(t===`running`)return[];let n=e.findLastIndex(e=>e.type===`message`&&e.role===`assistant`&&e.phase===`final_answer`);return n<0?[]:e.slice(0,n).flatMap(e=>e.type===`message`?e.role===`assistant`&&e.phase===`commentary`?[e.id]:[]:e.type===`file_change`||e.type===`review`||e.type===`activity`&&e.transient===!0?[]:[e.id])}function Mo({error:e,isLoading:t,onLoad:n}){return(0,$.jsxs)(`div`,{className:`mx-auto flex w-full max-w-content flex-col items-center gap-2 px-4 pt-5 sm:px-6 sm:pt-6`,children:[(0,$.jsxs)(g,{disabled:t,onClick:()=>void n(),size:`compact`,type:`button`,variant:`ghost`,children:[t?(0,$.jsx)(K,{"aria-hidden":`true`,className:`animate-spin`}):(0,$.jsx)(rr,{"aria-hidden":`true`}),s.t(t?`timeline.loadingOlder`:`timeline.loadOlder`,{ns:`conversation`})]}),e===null?null:(0,$.jsx)(`p`,{className:`text-label text-danger`,role:`alert`,children:s.t(`timeline.loadOlderError`,{ns:`conversation`})})]})}var No=44,Po={height:360,width:44},Fo=2;function Io(e){return e.type===`review`?Ya(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 Lo(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=Io(n);a!==null&&t.push({anchorId:i,preview:a,turnIndex:r})}}),t}function Ro(e,t){let[n,r]=(0,Q.useState)(e[0]?.anchorId??null),i=(0,Q.useRef)(0);return(0,Q.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 zo({items:e,onNavigate:t,scrollContainerRef:n,scrollbarWidth:r}){let{t:i}=a(`conversation`),o=(0,Q.useRef)(null),s=(0,Q.useCallback)(()=>o.current,[]),c=la({count:e.length,estimateSize:()=>No,getItemKey:t=>e[t]?.anchorId??t,getScrollElement:s,initialRect:Po,overscan:Fo}),l=Ro(e,n);if(e.length<=1)return null;let u=(0,$.jsx)(`nav`,{"aria-label":i(`timeline.quickNavigation`),className:`task-timeline-navigation`,"data-timeline-navigation":``,ref:o,style:{"--conversation-scrollbar-width":`${String(r)}px`},children:(0,$.jsx)(`div`,{className:`relative w-full`,style:{height:c.getTotalSize()},children:c.getVirtualItems().map(n=>{let r=e[n.index];return r===void 0?null:(0,$.jsx)(`div`,{className:`absolute left-0 top-0 flex h-2 w-full`,"data-index":n.index,ref:c.measureElement,style:{transform:`translateY(${String(n.start)}px)`},children:(0,$.jsxs)(M,{delayDuration:100,children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":i(`timeline.jumpToMessage`,{index:n.index+1}),"aria-current":r.anchorId===l?`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,$.jsx)(`span`,{"aria-hidden":`true`,className:`task-timeline-navigation-marker`})})}),(0,$.jsx)(A,{className:`border border-separator-strong bg-raised px-3 py-2 text-body leading-6 text-foreground shadow-floating`,side:`left`,children:(0,$.jsx)(`span`,{className:`line-clamp-6 whitespace-pre-wrap`,children:r.preview})})]})},n.key)})})});return typeof document>`u`?u:(0,zi.createPortal)(u,document.querySelector(`.workbench-shell`)??document.body)}function Bo(e){return e?.type===`command`||e?.type===`tool`}function Vo(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(Bo(t(a))){r.push(a);continue}i(),n.push({itemKey:a,type:`item`})}return i(),n}function Ho(e){let t=0,n=0,r=!1,i=0;for(let a of e)Bo(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 Uo(e){let t=e.toolCount>0&&e.commandCount>0?s.t(`timeline.operationGroup.summary`,{commandCount:e.commandCount,ns:`conversation`,toolCount:e.toolCount}):e.toolCount>0?s.t(`timeline.operationGroup.toolsOnly`,{count:e.toolCount,ns:`conversation`}):s.t(`timeline.operationGroup.commandsOnly`,{count:e.commandCount,ns:`conversation`});return e.failedCount===0?t:`${t}${s.t(`timeline.operationGroup.failed`,{count:e.failedCount,ns:`conversation`})}`}function Wo({collapseAfterItemKey:e,children:t,itemKeys:n,store:r}){let[i,a]=(0,Q.useState)(!1),o=(0,Q.useMemo)(()=>{let e=r.getState().itemStoresByKey;return n.flatMap(t=>e.get(t)??[])},[n,r]),c=(0,Q.useMemo)(()=>e===void 0?void 0:r.getState().itemStoresByKey.get(e),[e,r]),l=(0,Q.useMemo)(()=>c===void 0?o:[...o,c],[c,o]),u=(0,Q.useCallback)(e=>{let t=l.map(t=>t.subscribe(e));return()=>{for(let e of t)e()}},[l]),d=(0,Q.useCallback)(()=>l.map(e=>e.getState().revision).join(`,`),[l]);(0,Q.useSyncExternalStore)(u,d,d);let f=Ho(o.map(e=>e.peek())),p=c?.peek();if(!(p?.type===`message`&&p.role===`assistant`&&p.text.trim().length>0))return(0,$.jsx)(Q.Fragment,{children:t});if(f.isActive)return(0,$.jsx)(`div`,{className:`space-y-4`,"data-operation-group-active":``,children:t});let m=Uo(f);return(0,$.jsxs)(`details`,{className:`group/operation w-full`,"data-operation-group":``,onToggle:e=>{a(e.currentTarget.open)},open:i,children:[(0,$.jsxs)(`summary`,{"aria-expanded":i,"aria-label":s.t(i?`timeline.operationGroup.collapse`:`timeline.operationGroup.expand`,{ns:`conversation`,summary:m}),className:`flex min-h-9 cursor-pointer list-none items-center gap-2 rounded-surface bg-control px-3 py-1 text-label text-foreground transition-colors hover:bg-control-hover focus-visible:shadow-focus [&::-webkit-details-marker]:hidden`,children:[(0,$.jsx)(ar,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-muted-foreground`}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 font-medium`,children:m}),f.failedCount===0?(0,$.jsx)(Gn,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-muted-foreground`}):(0,$.jsx)(Yn,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-danger`}),(0,$.jsx)(oe,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-muted-foreground transition-transform group-open/operation:rotate-90`})]}),i?(0,$.jsx)(`div`,{className:`mt-2 space-y-4 border-l border-separator pl-3`,children:t}):null]})}var Go=(0,Q.createContext)(void 0);function Ko(){let e=(0,Q.useContext)(Go);if(e===void 0)throw Error(`Attachment components must be used inside Attachment`);return e}function qo({className:e=``,...t}){return(0,$.jsx)(`div`,{className:`flex max-w-full flex-wrap gap-1.5 px-1 pb-1 ${e}`,"data-attachments":`true`,...t})}function Jo({className:e=``,data:t,onRemove:n,...r}){return(0,$.jsx)(Go.Provider,{value:{data:t,...n===void 0?{}:{onRemove:n}},children:(0,$.jsx)(`div`,{className:`flex h-10 max-w-56 items-center gap-2 rounded-control bg-control px-1.5 text-label text-foreground ${e}`,...r})})}function Yo({className:e=``,...t}){let{data:n}=Ko();return(0,$.jsx)(`div`,{className:`grid size-7 shrink-0 place-items-center overflow-hidden rounded-control bg-raised ${e}`,"data-attachment-preview":n.mediaType.startsWith(`image/`)?`image`:`file`,...t,children:n.mediaType.startsWith(`image/`)?(0,$.jsx)(`img`,{alt:``,className:`size-full object-cover`,height:28,src:n.previewUrl,width:28}):(0,$.jsx)(Qn,{className:`size-4 text-muted-foreground`,"aria-hidden":`true`})})}function Xo({className:e=``,...t}){let{data:n}=Ko(),r=n.size<1024?`${String(n.size)} B`:n.size<1024*1024?`${(n.size/1024).toFixed(1)} KB`:`${(n.size/(1024*1024)).toFixed(1)} MB`;return(0,$.jsxs)(`div`,{className:`min-w-0 flex-1 ${e}`,...t,children:[(0,$.jsx)(`div`,{className:`truncate font-medium`,children:n.name}),(0,$.jsx)(`div`,{className:`text-caption text-muted-foreground`,children:r})]})}function Zo({children:e,className:t=``,onClick:n,type:r=`button`,...i}){let{data:o,onRemove:s}=Ko(),{t:c}=a(`conversation`);return(0,$.jsx)(g,{variant:`ghost`,"aria-label":c(`agentComponents.removeAttachment`,{name:o.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||s?.()},type:r,...i,children:e??(0,$.jsx)(It,{className:`size-3.5`,"aria-hidden":`true`})})}var Qo=(0,Q.createContext)(null);function $o({children:e,className:t=``,defaultOpen:n,isStreaming:r=!1,open:i,...a}){let o=(0,Q.useMemo)(()=>({isStreaming:r}),[r]);return(0,$.jsx)(Qo.Provider,{value:o,children:(0,$.jsx)(`details`,{className:v(`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 es({className:e=``,...t}){return(0,$.jsx)(`summary`,{className:v(`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 ts({children:e,className:t=``,...n}){return(0,$.jsx)(`h3`,{className:`text-body-small font-semibold ${(0,Q.useContext)(Qo)?.isStreaming===!0?`animate-pulse`:``} ${t}`,...n,children:e})}function ns({children:e,className:t=``,...n}){return(0,$.jsx)(`p`,{className:`mt-1 text-body-small leading-5 text-muted-foreground ${(0,Q.useContext)(Qo)?.isStreaming===!0?`animate-pulse`:``} ${t}`,...n,children:e})}function rs({children:e,className:t=``,...n}){return(0,$.jsx)(`span`,{"aria-hidden":`true`,className:`ml-auto inline-flex size-7 shrink-0 items-center justify-center text-muted-foreground ${t}`,...n,children:e??(0,$.jsx)(Wn,{className:`size-4`})})}function is({className:e=``,...t}){return(0,$.jsx)(`div`,{className:v(`overflow-x-auto border-t border-separator px-4 py-4`,e),...t})}function as({className:e=``,...t}){return(0,$.jsx)(`div`,{className:v(`flex items-center px-4 pb-4`,e),...t})}function os({className:e=``,...t}){return(0,$.jsx)(`div`,{className:v(`flex items-center`,e),...t})}var ss=(0,Q.createContext)(null);function cs({children:e,className:t,defaultOpen:n=!1,isStreaming:r=!1,...i}){let a=(0,Q.useMemo)(()=>({isStreaming:r}),[r]);return(0,$.jsx)(ss.Provider,{value:a,children:(0,$.jsx)(`details`,{className:v(`group/reasoning w-full text-muted-foreground`,t),"data-ai-reasoning":``,"data-streaming":r,open:r||n,...i,children:e})})}function ls({className:e,title:t,...n}){let r=(0,Q.useContext)(ss);if(r===null)throw Error(`ReasoningTrigger must be used within Reasoning`);return(0,$.jsxs)(`summary`,{className:v(`flex min-h-9 cursor-pointer list-none items-center gap-2 py-1 text-label transition-colors hover:text-foreground [&::-webkit-details-marker]:hidden`,e),...n,children:[r.isStreaming?(0,$.jsx)(K,{"aria-hidden":`true`,className:`size-3.5 shrink-0 animate-spin`}):(0,$.jsx)(Hn,{"aria-hidden":`true`,className:`size-3.5 shrink-0`}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-medium`,children:t}),(0,$.jsx)(oe,{"aria-hidden":`true`,className:`size-3.5 shrink-0 transition-transform group-open/reasoning:rotate-90`})]})}function us({className:e,...t}){return(0,$.jsx)(`div`,{className:v(`ml-1.5 border-l border-separator py-1 pl-4 text-body-small leading-6 text-muted-foreground`,e),...t})}var ds=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#;/?:@=+$',_.!~*()[\]-]|&|%[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==`&`?`&`:e==`"`?`"`:e==`<`?`<`:e==`>`?`>`:``)}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 fs(e){return typeof e==`string`?e:e.materialize()}function ps(){let e=new ds.default,t=[],n=``,r=()=>{e=new ds.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=ms(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=hs(e),{complete:s,pending:c}=_s(`${n}${r.text}`);n=c;let u=e.ansiToJson(s,{remove_empty:!0}),d=u[0];d!==void 0&&!s.startsWith(`\x1B[`)&&gs(d,o),t.push({entries:u,id:r.id,leadingPendingSequence:a,leadingState:o,text:r.text})}return t.flatMap(e=>e.entries)}}}function ms(e){let t=new ds.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 hs(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 gs(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 _s(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 vs=(0,Q.createContext)(null);function ys(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 bs({output:e}){let t=(0,Q.useRef)(ps());return(0,$.jsx)(`span`,{className:`whitespace-pre-wrap break-words`,children:(0,Q.useMemo)(()=>typeof e==`string`?ds.default.ansiToJson(e,{remove_empty:!0}):t.current.parse(e.chunks,e.startIndex),[e]).map((e,t)=>{let n=ys(e);return Object.keys(n).length===0?e.content:(0,$.jsx)(`span`,{style:n,children:e.content},`${t.toString()}:${e.content.length.toString()}`)})})}function xs(){let e=(0,Q.useContext)(vs);if(e===null)throw Error(`Terminal components must be rendered inside Terminal`);return e}function Ss({autoScroll:e=!0,children:t,className:n=``,isStreaming:r=!1,output:i,...a}){let o=(0,Q.useMemo)(()=>({autoScroll:e,isStreaming:r,output:i}),[e,r,i]);return(0,$.jsx)(vs.Provider,{value:o,children:(0,$.jsx)(`div`,{className:`mb-2 flex flex-col overflow-hidden rounded-surface border border-terminal-separator bg-terminal text-terminal-foreground shadow-sm ${n}`,"data-slot":`terminal`,"data-streaming":r,"data-terminal":``,...a,children:t})})}function Cs({className:e=``,...t}){return(0,$.jsx)(`div`,{className:`flex min-h-9 items-center justify-between border-b border-terminal-separator bg-terminal-header px-3 ${e}`,"data-slot":`terminal-header`,...t})}function ws({children:e,className:t=``,...n}){return(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-meta font-medium text-terminal-muted ${t}`,"data-slot":`terminal-title`,...n,children:[(0,$.jsx)(_r,{className:`size-3.5`,"aria-hidden":`true`}),e]})}function Ts({className:e=``,...t}){return(0,$.jsx)(`div`,{className:`ml-auto flex items-center gap-1 ${e}`,"data-slot":`terminal-actions`,...t})}function Es({children:e,className:t=``,onClick:n,onCopy:r,onError:i,timeout:o=2e3,...s}){let{output:c}=xs(),{t:l}=a(`conversation`),[u,d]=(0,Q.useState)(!1),f=(0,Q.useRef)(null);(0,Q.useEffect)(()=>()=>{f.current!==null&&clearTimeout(f.current)},[]);let p=async()=>{try{await navigator.clipboard.writeText(fs(c)),d(!0),r?.(),f.current!==null&&clearTimeout(f.current),f.current=setTimeout(()=>{d(!1)},o)}catch(e){i?.(e instanceof Error?e:Error(`Unable to copy terminal output`))}};return(0,$.jsx)(g,{size:`icon-sm`,variant:`ghost`,"aria-label":l(u?`agentComponents.copiedOutput`:`agentComponents.copyOutput`),className:`text-terminal-muted hover:bg-terminal-control-hover hover:text-terminal-foreground ${t}`,"data-slot":`terminal-copy-button`,onClick:e=>{n?.(e),e.defaultPrevented||p()},title:l(u?`agentComponents.copied`:`agentComponents.copyOutput`),type:`button`,...s,children:e??(u?(0,$.jsx)(X,{className:`size-3.5`,"aria-hidden":`true`}):(0,$.jsx)(Ee,{className:`size-3.5`,"aria-hidden":`true`}))})}var Ds=8;function Os(e){return e.scrollHeight-e.clientHeight-e.scrollTop<=Ds}function ks({children:e,className:t=``,onScroll:n,...r}){let{autoScroll:i,isStreaming:o,output:s}=xs(),{t:c}=a(`conversation`),l=(0,Q.useRef)(null),u=(0,Q.useRef)(!0);return(0,Q.useEffect)(()=>{if(!i||!u.current)return;let e=l.current;e!==null&&(e.scrollTop=e.scrollHeight)},[i,typeof s==`string`?s:s.version]),(0,$.jsxs)(`div`,{"aria-busy":o,"aria-live":o?`polite`:`off`,className:`max-h-96 overflow-auto overscroll-contain p-3 font-mono text-meta leading-5 ${t}`,"data-slot":`terminal-content`,onScroll:e=>{n?.(e),e.defaultPrevented||(u.current=Os(e.currentTarget))},ref:l,...r,children:[(0,$.jsxs)(`pre`,{className:`m-0 whitespace-pre-wrap break-words font-inherit`,children:[(0,$.jsx)(bs,{output:s}),o?(0,$.jsx)(`span`,{"aria-label":c(`agentComponents.streamingOutput`),className:`ml-0.5 inline-block h-3.5 w-1.5 animate-pulse bg-terminal-foreground align-middle`,role:`status`}):null]}),e]})}var As=(0,Q.createContext)(null);function js({className:e=``,defaultOpen:t=!1,onToggle:n,...r}){let[i,a]=(0,Q.useState)(t);return(0,$.jsx)(As.Provider,{value:i,children:(0,$.jsx)(`details`,{className:`group/tool w-full rounded-surface bg-control px-3 py-1 ${e}`,onToggle:e=>{n?.(e),e.defaultPrevented||a(e.currentTarget.open)},open:i,...r})})}var Ms={"approval-requested":{icon:(0,$.jsx)(Zn,{className:`size-3.5 text-warning`,"aria-hidden":`true`}),labelKey:`agentComponents.status.waitingApproval`},"approval-responded":{icon:(0,$.jsx)(Gn,{className:`size-3.5 text-brand`,"aria-hidden":`true`}),labelKey:`agentComponents.status.responded`},"input-available":{icon:(0,$.jsx)(Kn,{className:`size-3.5 animate-spin`,"aria-hidden":`true`}),labelKey:`agentComponents.status.running`},"input-streaming":{icon:(0,$.jsx)(en,{className:`size-3.5`,"aria-hidden":`true`}),labelKey:`agentComponents.status.pending`},"output-available":{icon:(0,$.jsx)(Gn,{className:`size-3.5`,"aria-hidden":`true`}),labelKey:`agentComponents.status.completed`},"output-denied":{icon:(0,$.jsx)(Yn,{className:`size-3.5 text-warning`,"aria-hidden":`true`}),labelKey:`agentComponents.status.denied`},"output-error":{icon:(0,$.jsx)(Yn,{className:`size-3.5 text-danger`,"aria-hidden":`true`}),labelKey:`agentComponents.status.error`}};function Ns({className:e=``,state:t,title:n,...r}){let i=Ms[t],{t:o}=a(`conversation`);return(0,$.jsxs)(`summary`,{className:`flex min-h-9 cursor-pointer list-none items-center gap-2 text-label text-foreground [&::-webkit-details-marker]:hidden ${e}`,...r,children:[(0,$.jsx)(yr,{className:`size-3.5 text-muted-foreground`,"aria-hidden":`true`}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-medium`,children:n}),(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1 ${t===`output-error`?`text-danger`:`text-muted-foreground`}`,children:[i.icon,o(i.labelKey)]}),(0,$.jsx)(oe,{className:`size-3.5 text-muted-foreground transition-transform group-open/tool:rotate-90`,"aria-hidden":`true`})]})}function Ps({children:e}){return(0,Q.useContext)(As)===!1?null:e}function Fs({className:e=``,...t}){return(0,$.jsx)(Ps,{children:(0,$.jsx)(`div`,{className:`mb-2 space-y-4 rounded-control bg-raised px-3 py-3 text-muted-foreground shadow-sm ${e}`,...t})})}function Is(e){try{return JSON.stringify(e,null,2)}catch{return String(e)}}function Ls({className:e=``,input:t,...n}){let{t:r}=a(`conversation`);return(0,$.jsxs)(`div`,{className:`space-y-2 overflow-hidden ${e}`,...n,children:[(0,$.jsx)(`h4`,{className:`text-meta font-medium uppercase tracking-wide text-muted-foreground`,children:r(`agentComponents.toolInput`)}),(0,$.jsx)(xe,{code:Is(t),language:`json`})]})}function Rs({className:e=``,errorText:t,output:n,...r}){let{t:i}=a(`conversation`);if(n===void 0&&t===void 0)return null;let o=(0,Q.isValidElement)(n)?n:n===void 0?null:(0,$.jsx)(xe,{code:Is(n),language:`json`});return(0,$.jsxs)(`div`,{className:`space-y-2 ${e}`,...r,children:[(0,$.jsx)(`h4`,{className:`text-meta font-medium uppercase tracking-wide ${t===void 0?`text-muted-foreground`:`text-danger`}`,children:i(t===void 0?`agentComponents.toolResult`:`agentComponents.toolError`)}),(0,$.jsxs)(`div`,{className:`overflow-x-auto rounded-surface text-meta [&_table]:w-full ${t===void 0?`text-foreground`:`bg-danger/10 p-3 text-danger`}`,children:[t===void 0?null:(0,$.jsx)(`div`,{className:`whitespace-pre-wrap`,children:t}),o]})]})}function zs({attachment:e,children:t,className:n,url:r}){return(0,$.jsx)(`a`,{"aria-label":s.t(`timeline.downloadAttachment`,{name:e.name,ns:`conversation`}),className:v(`block max-w-full rounded-control transition-opacity hover:opacity-90 focus-visible:shadow-focus`,n),"data-message-attachment":e.kind,download:e.name,href:r,children:t??(0,$.jsxs)(Jo,{className:`h-12 max-w-64 pe-3 shadow-control`,data:{...e,previewUrl:r},children:[(0,$.jsx)(Yo,{}),(0,$.jsx)(Xo,{})]})})}function Bs({name:e,triggerChildren:t,triggerClassName:n,url:r}){let{t:i}=a(`conversation`),[o,s]=(0,Q.useState)(!1),c=(0,Q.useId)();return(0,$.jsxs)(Mn,{onOpenChange:s,open:o,children:[(0,$.jsx)(St,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":i(`timeline.showImage`,{name:e}),className:n??`block size-40 max-w-full cursor-zoom-in overflow-hidden rounded-surface bg-control p-0 shadow-control transition-opacity hover:opacity-90 focus-visible:shadow-focus`,"data-message-attachment":`image`,type:`button`,variant:`ghost`,children:t??(0,$.jsx)(`img`,{alt:e,className:`size-full object-cover`,decoding:`async`,height:160,loading:`lazy`,src:r,width:160})})}),(0,$.jsx)(ht,{"aria-labelledby":c,className:`h-[min(92dvh,54rem)] max-w-[72rem] overflow-hidden p-0`,"data-message-image-preview":``,children:(0,$.jsxs)(`section`,{className:`grid size-full grid-rows-[auto_minmax(0,1fr)] bg-raised`,children:[(0,$.jsxs)(`header`,{className:`flex min-h-toolbar items-center gap-3 px-3 shadow-toolbar sm:px-4`,children:[(0,$.jsx)(qt,{className:`min-w-0 flex-1 truncate text-body-small`,id:c,children:e}),(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":i(`timeline.closeImagePreview`),onClick:()=>{s(!1)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(It,{className:`size-3.5`,"aria-hidden":`true`})})}),(0,$.jsx)(A,{children:i(`timeline.closeImagePreview`)})]})]}),(0,$.jsx)(`div`,{className:`grid min-h-0 place-items-center overflow-hidden bg-content p-2`,children:(0,$.jsx)(`img`,{alt:e,className:`block size-full object-contain`,decoding:`async`,src:r})})]})})]})}var Vs=ke;function Hs({className:e=``,displayName:t,name:n,...r}){return(0,$.jsxs)(`span`,{className:`${Vs} ${e}`,...r,children:[(0,$.jsx)(Bn,{"aria-hidden":`true`,className:`size-4 shrink-0`}),(0,$.jsx)(`span`,{className:`truncate`,children:t??`$${n}`})]})}var Us=`whitespace-pre-wrap!`;function Ws({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=Za({isLastTurnItem:t,role:n.role,turnStatus:l}),u=r.length>0||n.text.length>0?(0,$.jsxs)(`div`,{children:[r.length===0?null:(0,$.jsx)(`span`,{className:`inline`,"aria-label":s.t(`timeline.skillsUsed`,{ns:`conversation`}),children:r.map(e=>(0,$.jsx)(Hs,{className:`relative top-1 me-1.5 bg-raised px-2 text-body leading-6`,"data-message-skill":e.name,"data-skill-token":``,name:e.name},e.name))}),n.text.length===0?null:(0,$.jsx)(rt,{className:v(r.length>0&&`inline [&>p:first-child]:inline`,n.role===`user`&&Us),...i,onOpenFileReference:a,promptFileReferences:n.role===`user`,children:n.text})]}):null,d=e.length===0?null:(0,$.jsx)(qo,{className:`${n.role===`user`?`justify-end`:`justify-start`} gap-2 px-0 pb-0`,"aria-label":s.t(`timeline.attachments`,{ns:`conversation`}),children:e.map(e=>{let t=j(``,o,c,e.id);return e.kind===`image`?(0,$.jsx)(Bs,{name:e.name,url:t},e.id):(0,$.jsx)(zs,{attachment:e,url:t},e.id)})});return n.role===`assistant`?(0,$.jsx)(Ca,{className:`w-full`,children:(0,$.jsxs)(`div`,{className:`flex min-w-0 w-full flex-col gap-2`,children:[d,u]})}):(0,$.jsxs)(`div`,{className:`flex w-full flex-col items-end gap-2`,children:[d,u===null?null:(0,$.jsx)(Ca,{"data-message-text":`true`,children:u})]})}case`review`:return(0,$.jsx)(Ca,{children:(0,$.jsx)(`p`,{children:Ya(n)})});case`reasoning`:return n.summary.trim().length===0?null:(0,$.jsxs)(cs,{isStreaming:l===`running`,children:[(0,$.jsx)(ls,{title:s.t(l===`running`?`timeline.reasoningStreaming`:`timeline.reasoning`,{ns:`conversation`})}),(0,$.jsx)(us,{children:(0,$.jsx)(rt,{mode:l===`running`?`streaming`:`static`,children:n.summary})})]});case`approval_review`:return(0,$.jsx)(Xa,{item:n});case`command`:{let t=Ka(n.command),r=n.output===`__CODEXLY_RETAINED_COMMAND_OUTPUT__`?s.t(`timeline.outputRetained`,{ns:`conversation`}):e?.hasOutput?e:n.output??n.cwd,i=e?.outputOmitted??n.outputOmitted,a=i.bytes>0||i.lines>0,o=l===`running`&&n.status===`running`;return(0,$.jsxs)(js,{children:[(0,$.jsx)(Ns,{state:Pa(n.status),title:t}),(0,$.jsx)(Ps,{children:(0,$.jsxs)(`div`,{className:`mb-2 space-y-4`,children:[(0,$.jsx)(Ls,{input:{command:n.command,cwd:n.cwd}}),(0,$.jsxs)(Ss,{isStreaming:o,output:r,children:[(0,$.jsxs)(Cs,{children:[(0,$.jsx)(ws,{children:s.t(`timeline.output`,{ns:`conversation`})}),(0,$.jsx)(Ts,{children:(0,$.jsx)(Es,{})})]}),(0,$.jsx)(ks,{children:a?(0,$.jsx)(`p`,{className:`mt-2 text-warning`,children:s.t(`timeline.outputOmitted`,{bytes:i.bytes,lines:i.lines,ns:`conversation`})}):null})]})]})})]})}case`file_change`:return n.status===`completed`?l===`running`?(0,$.jsx)(`div`,{className:`space-y-1`,children:n.changes.map(e=>(0,$.jsx)(ko,{change:e,onOpen:i},e.path))}):null:n.status!==`pending`&&n.status!==`running`?null:(0,$.jsxs)(Da,{collapsible:n.changes.length>0,status:`in_progress`,children:[(0,$.jsx)(ka,{title:s.t(`timeline.editingFiles`,{count:n.changes.length,ns:`conversation`})}),n.changes.length===0?null:(0,$.jsx)(Aa,{children:n.changes.map(e=>(0,$.jsx)(ja,{className:`break-all font-mono`,children:e.path},e.path))})]});case`tool`:{let e=mi(n);if(e!==null)return(0,$.jsx)(La,{item:n,operation:e});let t=n.status===`failed`||n.status===`declined`||n.status===`interrupted`,r=t&&n.output!==void 0?Ia(n.output):void 0;return(0,$.jsxs)(js,{children:[(0,$.jsx)(Ns,{state:Pa(n.status),title:n.progress===void 0?n.name:`${n.name} · ${n.progress}`}),(0,$.jsxs)(Fs,{children:[n.progress===void 0?null:(0,$.jsx)(`p`,{className:`text-label leading-5 text-muted-foreground`,role:`status`,children:n.progress}),n.input===void 0?null:(0,$.jsx)(Ls,{input:n.input}),(0,$.jsx)(Rs,{errorText:r,output:t?void 0:n.output})]})]})}case`plan`:{let e=l===`running`&&t;return(0,$.jsxs)($o,{defaultOpen:!0,isStreaming:e,children:[(0,$.jsxs)(es,{children:[(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(Qn,{"aria-hidden":`true`,className:`size-4 shrink-0`}),(0,$.jsx)(ts,{children:s.t(`timeline.plan`,{ns:`conversation`})})]}),(0,$.jsx)(ns,{children:e?s.t(`timeline.planGenerating`,{ns:`conversation`}):s.t(`timeline.planReady`,{ns:`conversation`})})]}),(0,$.jsx)(rs,{})]}),(0,$.jsx)(is,{children:(0,$.jsx)(rt,{mode:e?`streaming`:`static`,children:n.text})}),e||r===void 0?null:(0,$.jsx)(as,{className:`justify-end`,children:(0,$.jsx)(os,{children:(0,$.jsx)(Gs,{onBuildPlan:r})})})]})}case`activity`:return n.transient===!0&&n.status!==`pending`&&n.status!==`running`?null:(0,$.jsxs)(Da,{collapsible:n.detail!==void 0,status:Fa(n.status??`completed`),children:[(0,$.jsx)(ka,{title:n.label}),n.detail===void 0?null:(0,$.jsx)(Aa,{children:(0,$.jsx)(ja,{children:n.detail})})]});case`runtime_status`:{let e=Fa(n.status);return n.kind===`safety_buffering`?(0,$.jsxs)(Da,{collapsible:n.fasterModel!==void 0,status:e,children:[(0,$.jsx)(ka,{title:s.t(`timeline.runtimeStatus.safetyBuffering`,{model:n.model,ns:`conversation`})}),n.fasterModel===void 0?null:(0,$.jsx)(Aa,{children:(0,$.jsx)(ja,{children:s.t(`timeline.runtimeStatus.fasterModel`,{model:n.fasterModel,ns:`conversation`})})})]}):n.kind===`model_rerouted`?(0,$.jsx)(Da,{collapsible:!1,status:e,children:(0,$.jsx)(ka,{title:s.t(`timeline.runtimeStatus.modelRerouted`,{fromModel:n.fromModel,ns:`conversation`,toModel:n.toModel})})}):(0,$.jsxs)(Da,{collapsible:n.detail!==void 0||n.durationMs!==void 0,status:e,children:[(0,$.jsx)(ka,{title:s.t(`timeline.runtimeStatus.hook`,{eventName:n.eventName,ns:`conversation`})}),n.detail===void 0&&n.durationMs===void 0?null:(0,$.jsxs)(Aa,{children:[n.detail===void 0?null:(0,$.jsx)(ja,{children:n.detail}),n.durationMs===void 0?null:(0,$.jsx)(ja,{children:s.t(`timeline.runtimeStatus.duration`,{duration:n.durationMs,ns:`conversation`})})]})]})}}}function Gs({onBuildPlan:e}){let[t,n]=(0,Q.useState)(!1);return(0,$.jsxs)(g,{disabled:t,onClick:()=>{n(!0),e().then(e=>{e||n(!1)},()=>{n(!1)})},type:`button`,children:[t?(0,$.jsx)(K,{"aria-hidden":`true`,className:`size-3.5 animate-spin`}):null,s.t(`timeline.buildPlan`,{ns:`conversation`})]})}function Ks(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 qs(e){return Yt(e,e=>e.revision),e.read()}function Js(e){return[...(e.skills??[]).map(e=>`$${e.name}`),e.text].filter(e=>e.length>0).join(`
|
|
5
|
-
`)}function Ys({isLastTurnItem:e,itemStore:t,onBuildPlan:n,onOpenFileDiff:r,onOpenSourceFile:i,projectId:a,taskId:o,turnStatus:s}){
|
|
4
|
+
`)}function Lo(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=Io(n);a!==null&&t.push({anchorId:i,preview:a,turnIndex:r})}}),t}function Ro(e,t){let[n,r]=(0,Q.useState)(e[0]?.anchorId??null),i=(0,Q.useRef)(0);return(0,Q.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 zo({items:e,onNavigate:t,scrollContainerRef:n,scrollbarWidth:r}){let{t:i}=a(`conversation`),o=(0,Q.useRef)(null),s=(0,Q.useCallback)(()=>o.current,[]),c=la({count:e.length,estimateSize:()=>No,getItemKey:t=>e[t]?.anchorId??t,getScrollElement:s,initialRect:Po,overscan:Fo}),l=Ro(e,n);if(e.length<=1)return null;let u=(0,$.jsx)(`nav`,{"aria-label":i(`timeline.quickNavigation`),className:`task-timeline-navigation`,"data-timeline-navigation":``,ref:o,style:{"--conversation-scrollbar-width":`${String(r)}px`},children:(0,$.jsx)(`div`,{className:`relative w-full`,style:{height:c.getTotalSize()},children:c.getVirtualItems().map(n=>{let r=e[n.index];return r===void 0?null:(0,$.jsx)(`div`,{className:`absolute left-0 top-0 flex h-2 w-full`,"data-index":n.index,ref:c.measureElement,style:{transform:`translateY(${String(n.start)}px)`},children:(0,$.jsxs)(M,{delayDuration:100,children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":i(`timeline.jumpToMessage`,{index:n.index+1}),"aria-current":r.anchorId===l?`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,$.jsx)(`span`,{"aria-hidden":`true`,className:`task-timeline-navigation-marker`})})}),(0,$.jsx)(A,{className:`border border-separator-strong bg-raised px-3 py-2 text-body leading-6 text-foreground shadow-floating`,side:`left`,children:(0,$.jsx)(`span`,{className:`line-clamp-6 whitespace-pre-wrap`,children:r.preview})})]})},n.key)})})});return typeof document>`u`?u:(0,zi.createPortal)(u,document.querySelector(`.workbench-shell`)??document.body)}function Bo(e){return e?.type===`command`||e?.type===`tool`}function Vo(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(Bo(t(a))){r.push(a);continue}i(),n.push({itemKey:a,type:`item`})}return i(),n}function Ho(e){let t=0,n=0,r=!1,i=0;for(let a of e)Bo(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 Uo(e){let t=e.toolCount>0&&e.commandCount>0?s.t(`timeline.operationGroup.summary`,{commandCount:e.commandCount,ns:`conversation`,toolCount:e.toolCount}):e.toolCount>0?s.t(`timeline.operationGroup.toolsOnly`,{count:e.toolCount,ns:`conversation`}):s.t(`timeline.operationGroup.commandsOnly`,{count:e.commandCount,ns:`conversation`});return e.failedCount===0?t:`${t}${s.t(`timeline.operationGroup.failed`,{count:e.failedCount,ns:`conversation`})}`}function Wo({collapseAfterItemKey:e,children:t,itemKeys:n,store:r}){let[i,a]=(0,Q.useState)(!1),o=(0,Q.useMemo)(()=>{let e=r.getState().itemStoresByKey;return n.flatMap(t=>e.get(t)??[])},[n,r]),c=(0,Q.useMemo)(()=>e===void 0?void 0:r.getState().itemStoresByKey.get(e),[e,r]),l=(0,Q.useMemo)(()=>c===void 0?o:[...o,c],[c,o]),u=(0,Q.useCallback)(e=>{let t=l.map(t=>t.subscribe(e));return()=>{for(let e of t)e()}},[l]),d=(0,Q.useCallback)(()=>l.map(e=>e.getState().revision).join(`,`),[l]);(0,Q.useSyncExternalStore)(u,d,d);let f=Ho(o.map(e=>e.peek())),p=c?.peek();if(!(p?.type===`message`&&p.role===`assistant`&&p.text.trim().length>0))return(0,$.jsx)(Q.Fragment,{children:t});if(f.isActive)return(0,$.jsx)(`div`,{className:`space-y-4`,"data-operation-group-active":``,children:t});let m=Uo(f);return(0,$.jsxs)(`details`,{className:`group/operation w-full`,"data-operation-group":``,onToggle:e=>{a(e.currentTarget.open)},open:i,children:[(0,$.jsxs)(`summary`,{"aria-expanded":i,"aria-label":s.t(i?`timeline.operationGroup.collapse`:`timeline.operationGroup.expand`,{ns:`conversation`,summary:m}),className:`flex min-h-9 cursor-pointer list-none items-center gap-2 rounded-surface bg-control px-3 py-1 text-label text-foreground transition-colors hover:bg-control-hover focus-visible:shadow-focus [&::-webkit-details-marker]:hidden`,children:[(0,$.jsx)(ar,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-muted-foreground`}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 font-medium`,children:m}),f.failedCount===0?(0,$.jsx)(Gn,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-muted-foreground`}):(0,$.jsx)(Yn,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-danger`}),(0,$.jsx)(oe,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-muted-foreground transition-transform group-open/operation:rotate-90`})]}),i?(0,$.jsx)(`div`,{className:`mt-2 space-y-4 border-l border-separator pl-3`,children:t}):null]})}var Go=(0,Q.createContext)(void 0);function Ko(){let e=(0,Q.useContext)(Go);if(e===void 0)throw Error(`Attachment components must be used inside Attachment`);return e}function qo({className:e=``,...t}){return(0,$.jsx)(`div`,{className:`flex max-w-full flex-wrap gap-1.5 px-1 pb-1 ${e}`,"data-attachments":`true`,...t})}function Jo({className:e=``,data:t,onRemove:n,...r}){return(0,$.jsx)(Go.Provider,{value:{data:t,...n===void 0?{}:{onRemove:n}},children:(0,$.jsx)(`div`,{className:`flex h-10 max-w-56 items-center gap-2 rounded-control bg-control px-1.5 text-label text-foreground ${e}`,...r})})}function Yo({className:e=``,...t}){let{data:n}=Ko();return(0,$.jsx)(`div`,{className:`grid size-7 shrink-0 place-items-center overflow-hidden rounded-control bg-raised ${e}`,"data-attachment-preview":n.mediaType.startsWith(`image/`)?`image`:`file`,...t,children:n.mediaType.startsWith(`image/`)?(0,$.jsx)(`img`,{alt:``,className:`size-full object-cover`,height:28,src:n.previewUrl,width:28}):(0,$.jsx)(Qn,{className:`size-4 text-muted-foreground`,"aria-hidden":`true`})})}function Xo({className:e=``,...t}){let{data:n}=Ko(),r=n.size<1024?`${String(n.size)} B`:n.size<1024*1024?`${(n.size/1024).toFixed(1)} KB`:`${(n.size/(1024*1024)).toFixed(1)} MB`;return(0,$.jsxs)(`div`,{className:`min-w-0 flex-1 ${e}`,...t,children:[(0,$.jsx)(`div`,{className:`truncate font-medium`,children:n.name}),(0,$.jsx)(`div`,{className:`text-caption text-muted-foreground`,children:r})]})}function Zo({children:e,className:t=``,onClick:n,type:r=`button`,...i}){let{data:o,onRemove:s}=Ko(),{t:c}=a(`conversation`);return(0,$.jsx)(g,{variant:`ghost`,"aria-label":c(`agentComponents.removeAttachment`,{name:o.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||s?.()},type:r,...i,children:e??(0,$.jsx)(ln,{className:`size-3.5`,"aria-hidden":`true`})})}var Qo=(0,Q.createContext)(null);function $o({children:e,className:t=``,defaultOpen:n,isStreaming:r=!1,open:i,...a}){let o=(0,Q.useMemo)(()=>({isStreaming:r}),[r]);return(0,$.jsx)(Qo.Provider,{value:o,children:(0,$.jsx)(`details`,{className:v(`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 es({className:e=``,...t}){return(0,$.jsx)(`summary`,{className:v(`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 ts({children:e,className:t=``,...n}){return(0,$.jsx)(`h3`,{className:`text-body-small font-semibold ${(0,Q.useContext)(Qo)?.isStreaming===!0?`animate-pulse`:``} ${t}`,...n,children:e})}function ns({children:e,className:t=``,...n}){return(0,$.jsx)(`p`,{className:`mt-1 text-body-small leading-5 text-muted-foreground ${(0,Q.useContext)(Qo)?.isStreaming===!0?`animate-pulse`:``} ${t}`,...n,children:e})}function rs({children:e,className:t=``,...n}){return(0,$.jsx)(`span`,{"aria-hidden":`true`,className:`ml-auto inline-flex size-7 shrink-0 items-center justify-center text-muted-foreground ${t}`,...n,children:e??(0,$.jsx)(Wn,{className:`size-4`})})}function is({className:e=``,...t}){return(0,$.jsx)(`div`,{className:v(`overflow-x-auto border-t border-separator px-4 py-4`,e),...t})}function as({className:e=``,...t}){return(0,$.jsx)(`div`,{className:v(`flex items-center px-4 pb-4`,e),...t})}function os({className:e=``,...t}){return(0,$.jsx)(`div`,{className:v(`flex items-center`,e),...t})}var ss=(0,Q.createContext)(null);function cs({children:e,className:t,defaultOpen:n=!1,isStreaming:r=!1,...i}){let a=(0,Q.useMemo)(()=>({isStreaming:r}),[r]);return(0,$.jsx)(ss.Provider,{value:a,children:(0,$.jsx)(`details`,{className:v(`group/reasoning w-full text-muted-foreground`,t),"data-ai-reasoning":``,"data-streaming":r,open:r||n,...i,children:e})})}function ls({className:e,title:t,...n}){let r=(0,Q.useContext)(ss);if(r===null)throw Error(`ReasoningTrigger must be used within Reasoning`);return(0,$.jsxs)(`summary`,{className:v(`flex min-h-9 cursor-pointer list-none items-center gap-2 py-1 text-label transition-colors hover:text-foreground [&::-webkit-details-marker]:hidden`,e),...n,children:[r.isStreaming?(0,$.jsx)(K,{"aria-hidden":`true`,className:`size-3.5 shrink-0 animate-spin`}):(0,$.jsx)(Hn,{"aria-hidden":`true`,className:`size-3.5 shrink-0`}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-medium`,children:t}),(0,$.jsx)(oe,{"aria-hidden":`true`,className:`size-3.5 shrink-0 transition-transform group-open/reasoning:rotate-90`})]})}function us({className:e,...t}){return(0,$.jsx)(`div`,{className:v(`ml-1.5 border-l border-separator py-1 pl-4 text-body-small leading-6 text-muted-foreground`,e),...t})}var ds=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#;/?:@=+$',_.!~*()[\]-]|&|%[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==`&`?`&`:e==`"`?`"`:e==`<`?`<`:e==`>`?`>`:``)}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 fs(e){return typeof e==`string`?e:e.materialize()}function ps(){let e=new ds.default,t=[],n=``,r=()=>{e=new ds.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=ms(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=hs(e),{complete:s,pending:c}=_s(`${n}${r.text}`);n=c;let u=e.ansiToJson(s,{remove_empty:!0}),d=u[0];d!==void 0&&!s.startsWith(`\x1B[`)&&gs(d,o),t.push({entries:u,id:r.id,leadingPendingSequence:a,leadingState:o,text:r.text})}return t.flatMap(e=>e.entries)}}}function ms(e){let t=new ds.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 hs(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 gs(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 _s(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 vs=(0,Q.createContext)(null);function ys(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 bs({output:e}){let t=(0,Q.useRef)(ps());return(0,$.jsx)(`span`,{className:`whitespace-pre-wrap break-words`,children:(0,Q.useMemo)(()=>typeof e==`string`?ds.default.ansiToJson(e,{remove_empty:!0}):t.current.parse(e.chunks,e.startIndex),[e]).map((e,t)=>{let n=ys(e);return Object.keys(n).length===0?e.content:(0,$.jsx)(`span`,{style:n,children:e.content},`${t.toString()}:${e.content.length.toString()}`)})})}function xs(){let e=(0,Q.useContext)(vs);if(e===null)throw Error(`Terminal components must be rendered inside Terminal`);return e}function Ss({autoScroll:e=!0,children:t,className:n=``,isStreaming:r=!1,output:i,...a}){let o=(0,Q.useMemo)(()=>({autoScroll:e,isStreaming:r,output:i}),[e,r,i]);return(0,$.jsx)(vs.Provider,{value:o,children:(0,$.jsx)(`div`,{className:`mb-2 flex flex-col overflow-hidden rounded-surface border border-terminal-separator bg-terminal text-terminal-foreground shadow-sm ${n}`,"data-slot":`terminal`,"data-streaming":r,"data-terminal":``,...a,children:t})})}function Cs({className:e=``,...t}){return(0,$.jsx)(`div`,{className:`flex min-h-9 items-center justify-between border-b border-terminal-separator bg-terminal-header px-3 ${e}`,"data-slot":`terminal-header`,...t})}function ws({children:e,className:t=``,...n}){return(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-meta font-medium text-terminal-muted ${t}`,"data-slot":`terminal-title`,...n,children:[(0,$.jsx)(_r,{className:`size-3.5`,"aria-hidden":`true`}),e]})}function Ts({className:e=``,...t}){return(0,$.jsx)(`div`,{className:`ml-auto flex items-center gap-1 ${e}`,"data-slot":`terminal-actions`,...t})}function Es({children:e,className:t=``,onClick:n,onCopy:r,onError:i,timeout:o=2e3,...s}){let{output:c}=xs(),{t:l}=a(`conversation`),[u,d]=(0,Q.useState)(!1),f=(0,Q.useRef)(null);(0,Q.useEffect)(()=>()=>{f.current!==null&&clearTimeout(f.current)},[]);let p=async()=>{try{await navigator.clipboard.writeText(fs(c)),d(!0),r?.(),f.current!==null&&clearTimeout(f.current),f.current=setTimeout(()=>{d(!1)},o)}catch(e){i?.(e instanceof Error?e:Error(`Unable to copy terminal output`))}};return(0,$.jsx)(g,{size:`icon-sm`,variant:`ghost`,"aria-label":l(u?`agentComponents.copiedOutput`:`agentComponents.copyOutput`),className:`text-terminal-muted hover:bg-terminal-control-hover hover:text-terminal-foreground ${t}`,"data-slot":`terminal-copy-button`,onClick:e=>{n?.(e),e.defaultPrevented||p()},title:l(u?`agentComponents.copied`:`agentComponents.copyOutput`),type:`button`,...s,children:e??(u?(0,$.jsx)(X,{className:`size-3.5`,"aria-hidden":`true`}):(0,$.jsx)(Ee,{className:`size-3.5`,"aria-hidden":`true`}))})}var Ds=8;function Os(e){return e.scrollHeight-e.clientHeight-e.scrollTop<=Ds}function ks({children:e,className:t=``,onScroll:n,...r}){let{autoScroll:i,isStreaming:o,output:s}=xs(),{t:c}=a(`conversation`),l=(0,Q.useRef)(null),u=(0,Q.useRef)(!0);return(0,Q.useEffect)(()=>{if(!i||!u.current)return;let e=l.current;e!==null&&(e.scrollTop=e.scrollHeight)},[i,typeof s==`string`?s:s.version]),(0,$.jsxs)(`div`,{"aria-busy":o,"aria-live":o?`polite`:`off`,className:`max-h-96 overflow-auto overscroll-contain p-3 font-mono text-meta leading-5 ${t}`,"data-slot":`terminal-content`,onScroll:e=>{n?.(e),e.defaultPrevented||(u.current=Os(e.currentTarget))},ref:l,...r,children:[(0,$.jsxs)(`pre`,{className:`m-0 whitespace-pre-wrap break-words font-inherit`,children:[(0,$.jsx)(bs,{output:s}),o?(0,$.jsx)(`span`,{"aria-label":c(`agentComponents.streamingOutput`),className:`ml-0.5 inline-block h-3.5 w-1.5 animate-pulse bg-terminal-foreground align-middle`,role:`status`}):null]}),e]})}var As=(0,Q.createContext)(null);function js({className:e=``,defaultOpen:t=!1,onToggle:n,...r}){let[i,a]=(0,Q.useState)(t);return(0,$.jsx)(As.Provider,{value:i,children:(0,$.jsx)(`details`,{className:`group/tool w-full rounded-surface bg-control px-3 py-1 ${e}`,onToggle:e=>{n?.(e),e.defaultPrevented||a(e.currentTarget.open)},open:i,...r})})}var Ms={"approval-requested":{icon:(0,$.jsx)(Zn,{className:`size-3.5 text-warning`,"aria-hidden":`true`}),labelKey:`agentComponents.status.waitingApproval`},"approval-responded":{icon:(0,$.jsx)(Gn,{className:`size-3.5 text-brand`,"aria-hidden":`true`}),labelKey:`agentComponents.status.responded`},"input-available":{icon:(0,$.jsx)(Kn,{className:`size-3.5 animate-spin`,"aria-hidden":`true`}),labelKey:`agentComponents.status.running`},"input-streaming":{icon:(0,$.jsx)(xn,{className:`size-3.5`,"aria-hidden":`true`}),labelKey:`agentComponents.status.pending`},"output-available":{icon:(0,$.jsx)(Gn,{className:`size-3.5`,"aria-hidden":`true`}),labelKey:`agentComponents.status.completed`},"output-denied":{icon:(0,$.jsx)(Yn,{className:`size-3.5 text-warning`,"aria-hidden":`true`}),labelKey:`agentComponents.status.denied`},"output-error":{icon:(0,$.jsx)(Yn,{className:`size-3.5 text-danger`,"aria-hidden":`true`}),labelKey:`agentComponents.status.error`}};function Ns({className:e=``,state:t,title:n,...r}){let i=Ms[t],{t:o}=a(`conversation`);return(0,$.jsxs)(`summary`,{className:`flex min-h-9 cursor-pointer list-none items-center gap-2 text-label text-foreground [&::-webkit-details-marker]:hidden ${e}`,...r,children:[(0,$.jsx)(yr,{className:`size-3.5 text-muted-foreground`,"aria-hidden":`true`}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-medium`,children:n}),(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1 ${t===`output-error`?`text-danger`:`text-muted-foreground`}`,children:[i.icon,o(i.labelKey)]}),(0,$.jsx)(oe,{className:`size-3.5 text-muted-foreground transition-transform group-open/tool:rotate-90`,"aria-hidden":`true`})]})}function Ps({children:e}){return(0,Q.useContext)(As)===!1?null:e}function Fs({className:e=``,...t}){return(0,$.jsx)(Ps,{children:(0,$.jsx)(`div`,{className:`mb-2 space-y-4 rounded-control bg-raised px-3 py-3 text-muted-foreground shadow-sm ${e}`,...t})})}function Is(e){try{return JSON.stringify(e,null,2)}catch{return String(e)}}function Ls({className:e=``,input:t,...n}){let{t:r}=a(`conversation`);return(0,$.jsxs)(`div`,{className:`space-y-2 overflow-hidden ${e}`,...n,children:[(0,$.jsx)(`h4`,{className:`text-meta font-medium uppercase tracking-wide text-muted-foreground`,children:r(`agentComponents.toolInput`)}),(0,$.jsx)(xe,{code:Is(t),language:`json`})]})}function Rs({className:e=``,errorText:t,output:n,...r}){let{t:i}=a(`conversation`);if(n===void 0&&t===void 0)return null;let o=(0,Q.isValidElement)(n)?n:n===void 0?null:(0,$.jsx)(xe,{code:Is(n),language:`json`});return(0,$.jsxs)(`div`,{className:`space-y-2 ${e}`,...r,children:[(0,$.jsx)(`h4`,{className:`text-meta font-medium uppercase tracking-wide ${t===void 0?`text-muted-foreground`:`text-danger`}`,children:i(t===void 0?`agentComponents.toolResult`:`agentComponents.toolError`)}),(0,$.jsxs)(`div`,{className:`overflow-x-auto rounded-surface text-meta [&_table]:w-full ${t===void 0?`text-foreground`:`bg-danger/10 p-3 text-danger`}`,children:[t===void 0?null:(0,$.jsx)(`div`,{className:`whitespace-pre-wrap`,children:t}),o]})]})}function zs({attachment:e,children:t,className:n,url:r}){return(0,$.jsx)(`a`,{"aria-label":s.t(`timeline.downloadAttachment`,{name:e.name,ns:`conversation`}),className:v(`block max-w-full rounded-control transition-opacity hover:opacity-90 focus-visible:shadow-focus`,n),"data-message-attachment":e.kind,download:e.name,href:r,children:t??(0,$.jsxs)(Jo,{className:`h-12 max-w-64 pe-3 shadow-control`,data:{...e,previewUrl:r},children:[(0,$.jsx)(Yo,{}),(0,$.jsx)(Xo,{})]})})}function Bs({name:e,triggerChildren:t,triggerClassName:n,url:r}){let{t:i}=a(`conversation`),[o,s]=(0,Q.useState)(!1),c=(0,Q.useId)();return(0,$.jsxs)(Jt,{onOpenChange:s,open:o,children:[(0,$.jsx)(yn,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":i(`timeline.showImage`,{name:e}),className:n??`block size-40 max-w-full cursor-zoom-in overflow-hidden rounded-surface bg-control p-0 shadow-control transition-opacity hover:opacity-90 focus-visible:shadow-focus`,"data-message-attachment":`image`,type:`button`,variant:`ghost`,children:t??(0,$.jsx)(`img`,{alt:e,className:`size-full object-cover`,decoding:`async`,height:160,loading:`lazy`,src:r,width:160})})}),(0,$.jsx)(Tt,{"aria-labelledby":c,className:`h-[min(92dvh,54rem)] max-w-[72rem] overflow-hidden p-0`,"data-message-image-preview":``,children:(0,$.jsxs)(`section`,{className:`grid size-full grid-rows-[auto_minmax(0,1fr)] bg-raised`,children:[(0,$.jsxs)(`header`,{className:`flex min-h-toolbar items-center gap-3 px-3 shadow-toolbar sm:px-4`,children:[(0,$.jsx)(jt,{className:`min-w-0 flex-1 truncate text-body-small`,id:c,children:e}),(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":i(`timeline.closeImagePreview`),onClick:()=>{s(!1)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(ln,{className:`size-3.5`,"aria-hidden":`true`})})}),(0,$.jsx)(A,{children:i(`timeline.closeImagePreview`)})]})]}),(0,$.jsx)(`div`,{className:`grid min-h-0 place-items-center overflow-hidden bg-content p-2`,children:(0,$.jsx)(`img`,{alt:e,className:`block size-full object-contain`,decoding:`async`,src:r})})]})})]})}var Vs=ke;function Hs({className:e=``,displayName:t,name:n,...r}){return(0,$.jsxs)(`span`,{className:`${Vs} ${e}`,...r,children:[(0,$.jsx)(Bn,{"aria-hidden":`true`,className:`size-4 shrink-0`}),(0,$.jsx)(`span`,{className:`truncate`,children:t??`$${n}`})]})}var Us=`whitespace-pre-wrap!`;function Ws({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=Za({isLastTurnItem:t,role:n.role,turnStatus:l}),u=r.length>0||n.text.length>0?(0,$.jsxs)(`div`,{children:[r.length===0?null:(0,$.jsx)(`span`,{className:`inline`,"aria-label":s.t(`timeline.skillsUsed`,{ns:`conversation`}),children:r.map(e=>(0,$.jsx)(Hs,{className:`relative top-1 me-1.5 bg-raised px-2 text-body leading-6`,"data-message-skill":e.name,"data-skill-token":``,name:e.name},e.name))}),n.text.length===0?null:(0,$.jsx)(rt,{className:v(r.length>0&&`inline [&>p:first-child]:inline`,n.role===`user`&&Us),...i,onOpenFileReference:a,promptFileReferences:n.role===`user`,children:n.text})]}):null,d=e.length===0?null:(0,$.jsx)(qo,{className:`${n.role===`user`?`justify-end`:`justify-start`} gap-2 px-0 pb-0`,"aria-label":s.t(`timeline.attachments`,{ns:`conversation`}),children:e.map(e=>{let t=j(``,o,c,e.id);return e.kind===`image`?(0,$.jsx)(Bs,{name:e.name,url:t},e.id):(0,$.jsx)(zs,{attachment:e,url:t},e.id)})});return n.role===`assistant`?(0,$.jsx)(Ca,{className:`w-full`,children:(0,$.jsxs)(`div`,{className:`flex min-w-0 w-full flex-col gap-2`,children:[d,u]})}):(0,$.jsxs)(`div`,{className:`flex w-full flex-col items-end gap-2`,children:[d,u===null?null:(0,$.jsx)(Ca,{"data-message-text":`true`,children:u})]})}case`review`:return(0,$.jsx)(Ca,{children:(0,$.jsx)(`p`,{children:Ya(n)})});case`reasoning`:return n.summary.trim().length===0?null:(0,$.jsxs)(cs,{isStreaming:l===`running`,children:[(0,$.jsx)(ls,{title:s.t(l===`running`?`timeline.reasoningStreaming`:`timeline.reasoning`,{ns:`conversation`})}),(0,$.jsx)(us,{children:(0,$.jsx)(rt,{mode:l===`running`?`streaming`:`static`,children:n.summary})})]});case`approval_review`:return(0,$.jsx)(Xa,{item:n});case`command`:{let t=Ka(n.command),r=n.output===`__CODEXLY_RETAINED_COMMAND_OUTPUT__`?s.t(`timeline.outputRetained`,{ns:`conversation`}):e?.hasOutput?e:n.output??n.cwd,i=e?.outputOmitted??n.outputOmitted,a=i.bytes>0||i.lines>0,o=l===`running`&&n.status===`running`;return(0,$.jsxs)(js,{children:[(0,$.jsx)(Ns,{state:Pa(n.status),title:t}),(0,$.jsx)(Ps,{children:(0,$.jsxs)(`div`,{className:`mb-2 space-y-4`,children:[(0,$.jsx)(Ls,{input:{command:n.command,cwd:n.cwd}}),(0,$.jsxs)(Ss,{isStreaming:o,output:r,children:[(0,$.jsxs)(Cs,{children:[(0,$.jsx)(ws,{children:s.t(`timeline.output`,{ns:`conversation`})}),(0,$.jsx)(Ts,{children:(0,$.jsx)(Es,{})})]}),(0,$.jsx)(ks,{children:a?(0,$.jsx)(`p`,{className:`mt-2 text-warning`,children:s.t(`timeline.outputOmitted`,{bytes:i.bytes,lines:i.lines,ns:`conversation`})}):null})]})]})})]})}case`file_change`:return n.status===`completed`?l===`running`?(0,$.jsx)(`div`,{className:`space-y-1`,children:n.changes.map(e=>(0,$.jsx)(ko,{change:e,onOpen:i},e.path))}):null:n.status!==`pending`&&n.status!==`running`?null:(0,$.jsxs)(Da,{collapsible:n.changes.length>0,status:`in_progress`,children:[(0,$.jsx)(ka,{title:s.t(`timeline.editingFiles`,{count:n.changes.length,ns:`conversation`})}),n.changes.length===0?null:(0,$.jsx)(Aa,{children:n.changes.map(e=>(0,$.jsx)(ja,{className:`break-all font-mono`,children:e.path},e.path))})]});case`tool`:{let e=mi(n);if(e!==null)return(0,$.jsx)(La,{item:n,operation:e});let t=n.status===`failed`||n.status===`declined`||n.status===`interrupted`,r=t&&n.output!==void 0?Ia(n.output):void 0;return(0,$.jsxs)(js,{children:[(0,$.jsx)(Ns,{state:Pa(n.status),title:n.progress===void 0?n.name:`${n.name} · ${n.progress}`}),(0,$.jsxs)(Fs,{children:[n.progress===void 0?null:(0,$.jsx)(`p`,{className:`text-label leading-5 text-muted-foreground`,role:`status`,children:n.progress}),n.input===void 0?null:(0,$.jsx)(Ls,{input:n.input}),(0,$.jsx)(Rs,{errorText:r,output:t?void 0:n.output})]})]})}case`plan`:{let e=l===`running`&&t;return(0,$.jsxs)($o,{defaultOpen:!0,isStreaming:e,children:[(0,$.jsxs)(es,{children:[(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(Qn,{"aria-hidden":`true`,className:`size-4 shrink-0`}),(0,$.jsx)(ts,{children:s.t(`timeline.plan`,{ns:`conversation`})})]}),(0,$.jsx)(ns,{children:e?s.t(`timeline.planGenerating`,{ns:`conversation`}):s.t(`timeline.planReady`,{ns:`conversation`})})]}),(0,$.jsx)(rs,{})]}),(0,$.jsx)(is,{children:(0,$.jsx)(rt,{mode:e?`streaming`:`static`,children:n.text})}),e||r===void 0?null:(0,$.jsx)(as,{className:`justify-end`,children:(0,$.jsx)(os,{children:(0,$.jsx)(Gs,{onBuildPlan:r})})})]})}case`activity`:return n.transient===!0&&n.status!==`pending`&&n.status!==`running`?null:(0,$.jsxs)(Da,{collapsible:n.detail!==void 0,status:Fa(n.status??`completed`),children:[(0,$.jsx)(ka,{title:n.label}),n.detail===void 0?null:(0,$.jsx)(Aa,{children:(0,$.jsx)(ja,{children:n.detail})})]});case`runtime_status`:{let e=Fa(n.status);return n.kind===`safety_buffering`?(0,$.jsxs)(Da,{collapsible:n.fasterModel!==void 0,status:e,children:[(0,$.jsx)(ka,{title:s.t(`timeline.runtimeStatus.safetyBuffering`,{model:n.model,ns:`conversation`})}),n.fasterModel===void 0?null:(0,$.jsx)(Aa,{children:(0,$.jsx)(ja,{children:s.t(`timeline.runtimeStatus.fasterModel`,{model:n.fasterModel,ns:`conversation`})})})]}):n.kind===`model_rerouted`?(0,$.jsx)(Da,{collapsible:!1,status:e,children:(0,$.jsx)(ka,{title:s.t(`timeline.runtimeStatus.modelRerouted`,{fromModel:n.fromModel,ns:`conversation`,toModel:n.toModel})})}):(0,$.jsxs)(Da,{collapsible:n.detail!==void 0||n.durationMs!==void 0,status:e,children:[(0,$.jsx)(ka,{title:s.t(`timeline.runtimeStatus.hook`,{eventName:n.eventName,ns:`conversation`})}),n.detail===void 0&&n.durationMs===void 0?null:(0,$.jsxs)(Aa,{children:[n.detail===void 0?null:(0,$.jsx)(ja,{children:n.detail}),n.durationMs===void 0?null:(0,$.jsx)(ja,{children:s.t(`timeline.runtimeStatus.duration`,{duration:n.durationMs,ns:`conversation`})})]})]})}}}function Gs({onBuildPlan:e}){let[t,n]=(0,Q.useState)(!1);return(0,$.jsxs)(g,{disabled:t,onClick:()=>{n(!0),e().then(e=>{e||n(!1)},()=>{n(!1)})},type:`button`,children:[t?(0,$.jsx)(K,{"aria-hidden":`true`,className:`size-3.5 animate-spin`}):null,s.t(`timeline.buildPlan`,{ns:`conversation`})]})}function Ks(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 qs(e){return Bt(e,e=>e.revision),e.read()}function Js(e){return[...(e.skills??[]).map(e=>`$${e.name}`),e.text].filter(e=>e.length>0).join(`
|
|
5
|
+
`)}function Ys({isLastTurnItem:e,itemStore:t,onBuildPlan:n,onOpenFileDiff:r,onOpenSourceFile:i,projectId:a,taskId:o,turnStatus:s}){Bt(t,e=>e.revision);let c=t.peek(),l=c.type===`command`?c:t.read(),u=c.type===`command`?t.readCommandOutput():void 0;return(0,$.jsx)(Ws,{...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 Xs({isLastTurnItem:e,itemKey:t,onBuildPlan:n,onOpenFileDiff:r,onOpenSourceFile:i,projectId:a,store:o,taskId:s,turnStatus:c}){let l=Bt(o,e=>e.itemStoresByKey.get(t));return l===void 0?null:(0,$.jsx)(Ys,{isLastTurnItem:e,itemStore:l,...n===void 0?{}:{onBuildPlan:n},onOpenFileDiff:r,onOpenSourceFile:i,projectId:a,taskId:s,turnStatus:c})}function Zs({anchorId:e,itemStore:t,latestSnapshotTimestamp:n,onOpenFileDiff:r,onOpenSourceFile:i,projectId:a,taskId:o,turn:c}){let l=qs(t);if(l.type!==`review`&&(l.type!==`message`||l.role!==`user`))return null;let u=l.type===`review`?Ya(l):Js(l);return(0,$.jsxs)(Sa,{"data-conversation-anchor":e,from:`user`,children:[(0,$.jsx)(Ws,{isLastTurnItem:!1,item:l,onOpenFileDiff:r,onOpenSourceFile:i,projectId:a,taskId:o,turnStatus:c.status}),(0,$.jsx)(Wa,{...l.type===`review`?{modeLabel:s.t(`timeline.reviewMode`,{ns:`conversation`})}:{timestamp:Ua(`user`,c,n)},text:u})]})}function Qs({itemKey:e,latestSnapshotTimestamp:t,onOpenFileDiff:n,onOpenSourceFile:r,projectId:i,store:a,taskId:o,turn:s}){let c=Bt(a,t=>t.itemStoresByKey.get(e));return c===void 0?null:(0,$.jsx)(Zs,{anchorId:e,itemStore:c,latestSnapshotTimestamp:t,onOpenFileDiff:n,onOpenSourceFile:r,projectId:i,taskId:o,turn:s})}function $s({itemKeys:e,store:t}){let n=Bt(t,t=>{let n=qa(e.flatMap((e,n)=>{let r=t.itemStoresByKey.get(e)?.peek();return r===void 0?[]:[{item:r,itemIndex:n}]}));return n===void 0?``:`${n.type}\u0000${n.label}`}),r=n.indexOf(`\0`);return(0,$.jsx)(Ja,{operation:r<0?void 0:{label:n.slice(r+1),type:n.slice(0,r)}})}function ec({itemKeys:e,lastTurnItemKey:t,onBuildPlan:n,onOpenFileDiff:r,onOpenSourceFile:i,projectId:a,store:o,taskId:s,turnStatus:c}){let l=o.getState().itemStoresByKey;return Vo(e,e=>l.get(e)?.peek()).map(u=>{let d=(u.type===`item`?[u.itemKey]:u.itemKeys).map(e=>(0,$.jsx)(Xs,{isLastTurnItem:e===t,itemKey:e,...n===void 0?{}:{onBuildPlan:n},onOpenFileDiff:r,onOpenSourceFile:i,projectId:a,store:o,taskId:s,turnStatus:c},e));if(u.type===`item`)return d[0]??null;if(c!==`running`)return(0,$.jsx)(Q.Fragment,{children:d},u.key);let f=e.indexOf(u.itemKeys.at(-1)??u.key),p=e.slice(f+1).find(e=>{let t=l.get(e)?.peek();return t?.type===`message`&&t.role===`assistant`});return(0,Q.createElement)(Wo,{...p===void 0?{}:{collapseAfterItemKey:p},itemKeys:u.itemKeys,key:u.key,store:o},d)})}var tc=e=>e;function nc({itemKeys:e,lastTurnItemKey:t,latestSnapshotTimestamp:n,onOpenFileDiff:r,onForkTask:i,onBuildPlan:a,onOpenSourceFile:o,onReviewFileChanges:s,onToggleProcess:c,processExpanded:l,processItemKeys:u,processToggleAvailable:d,projectId:f,showProcessingTime:p,showRunningShimmer:m,store:h,taskId:g,turn:_}){let v=h.getState().itemStoresByKey,y=[],b=[],x=_.status===`running`||l?e:e.filter(e=>!u.has(e));if(_.status!==`running`)for(let e of x){let t=v.get(e)?.read();t?.type===`message`&&t.role===`assistant`?y.push(t.text):t?.type===`file_change`&&t.status===`completed`&&b.push(...t.changes)}let S=y.join(`
|
|
6
6
|
|
|
7
|
-
`);return(0,$.jsxs)(Sa,{from:`assistant`,children:[p?(0,$.jsx)(Ha,{completedAt:_.completedAt,startedAt:_.startedAt,...d?{expanded:l,onToggle:c}:{}}):null,x.length>0||m?(0,$.jsxs)(`div`,{className:`w-full space-y-4`,children:[(0,$.jsx)(ec,{itemKeys:x,lastTurnItemKey:t,...a===void 0?{}:{onBuildPlan:a},onOpenFileDiff:r,onOpenSourceFile:o,projectId:f,store:h,taskId:g,turnStatus:_.status}),m?(0,$.jsx)($s,{itemKeys:e,store:h}):null]}):null,_.status!==`running`&&b.length>0?(0,$.jsx)(Ao,{changes:b,onOpenFileDiff:r,onReviewFileChanges:s}):null,_.status!==`running`&&S.trim().length>0?(0,$.jsx)(Wa,{lastTurnId:_.id,...i===void 0?{}:{onForkTask:i},text:S,timestamp:Ua(`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=Yt(o,e=>e.turnsById[c]),f=Yt(o,e=>e.itemKeysByTurnId[c]??[]),[p,m]=(0,Q.useState)(!1);if(d===void 0)return null;let h=o.getState().snapshotMetadata?.updatedAt??``,g=o.getState().itemStoresByKey,_=Ks(f,g),v=new Set(jo(f.flatMap(e=>g.get(e)?.peek()??[]),d.status)),y=new Set(f.filter(e=>v.has(g.get(e)?.peek().id??``))),b=y.size>0,x=_.findIndex(e=>e.type===`assistant`),S=x>=0,C=f.at(-1);return(0,$.jsxs)(`section`,{"aria-label":`Turn ${String(l+1)}`,className:`space-y-4`,"data-status":d.status,children:[_.map((c,l)=>c.type===`user`?(0,$.jsx)(Qs,{itemKey:c.itemKey,latestSnapshotTimestamp:h,onOpenFileDiff:n,onOpenSourceFile:r,projectId:a,store:o,taskId:s,turn:d},c.itemKey):(0,$.jsx)(nc,{itemKeys:c.itemKeys,lastTurnItemKey:C,latestSnapshotTimestamp:h,...d.status===`completed`&&e!==void 0?{onBuildPlan:e}:{},onOpenFileDiff:n,onToggleProcess:()=>{m(e=>!e)},...d.status!==`running`&&t!==void 0?{onForkTask:t}:{},onOpenSourceFile:r,onReviewFileChanges:i,projectId:a,processExpanded:p,processItemKeys:y,processToggleAvailable:b,showProcessingTime:l===x,showRunningShimmer:d.status===`running`&&l===_.length-1,store:o,taskId:s,turn:d},c.key)),d.status===`running`&&!S&&!u?(0,$.jsxs)(Sa,{from:`assistant`,children:[(0,$.jsx)(Ha,{completedAt:d.completedAt,startedAt:d.startedAt}),(0,$.jsx)(`div`,{className:`w-full space-y-4`,children:(0,$.jsx)(Ja,{})})]}):null,d.error===null?null:(0,$.jsx)(`div`,{className:`rounded-surface bg-control px-3 py-2 text-label leading-5 text-danger`,role:`alert`,children:(0,$.jsx)(`p`,{children:d.error})})]})}function ic({notice:e}){let t=e.payload.level===`warning`,n=e.payload.code===`model_verification`?s.t(`timeline.notice.modelVerification`,{ns:`conversation`}):e.payload.code===`strict_review_required`?s.t(`timeline.notice.strictReviewRequired`,{ns:`conversation`}):e.payload.message,r=s.t(`timeline.notice.${e.payload.code}`,{ns:`conversation`});return(0,$.jsxs)(`div`,{className:`flex items-start gap-2 border-l-2 px-3 py-2 text-label leading-5 ${t?`border-warning text-warning`:`border-separator-strong text-muted-foreground`}`,role:t?`alert`:`status`,children:[t?(0,$.jsx)(vr,{"aria-hidden":`true`,className:`mt-0.5 size-3.5 shrink-0`}):(0,$.jsx)(ie,{"aria-hidden":`true`,className:`mt-0.5 size-3.5 shrink-0`}),(0,$.jsxs)(`div`,{className:`min-w-0`,children:[(0,$.jsx)(`p`,{className:`font-medium text-foreground`,children:r}),(0,$.jsx)(`p`,{className:`break-words`,children:n})]})]})}function ac({store:e}){return Yt(e,e=>e.notices).map(e=>(0,$.jsx)(ic,{notice:e},`${e.sessionId}:${String(e.sequence)}`))}function oc({connected:e,onResolvePendingRequest:t,store:n}){let r=Yt(n,e=>e.pendingRequestIds),i=Yt(n,e=>e.pendingRequestsById),a=r.flatMap(e=>{let t=i[e];return t===void 0||t.status===`resolved`?[]:[t]}),o=a.findIndex(e=>e.status===`pending`);return a.map((n,r)=>(0,$.jsx)(Oo,{interactive:e&&n.status===`pending`&&r===o,onResolve:t,request:n},n.requestId))}function sc({connected:e,hasOlderHistory:t=!1,isLoadingOlderHistory:n=!1,onBuildPlan:r,onForkTask:i,onOpenFileDiff:a,onOpenSourceFile:o,onReviewFileChanges:c,onResolvePendingRequest:l,onLoadOlderHistory:u=()=>Promise.resolve(),olderHistoryError:d=null,scrollToBottomSignal:f,store:p,submissionStartedAt:m,submissionTurnId:h}){let g=p.getState().projectId,_=p.getState().taskId,v=Yt(p,e=>e.turnIds),y=Yt(p,e=>e.itemStructureRevision),b=Yt(p,e=>e.pendingRequestIds),x=Yt(p,e=>e.pendingRequestsById),S=Yt(p,e=>e.notices),C=b.some(e=>x[e]?.status!==`resolved`),w=(0,Q.useMemo)(()=>Lo(p.getState()),[y,p]),T=Yt(p,e=>{if(h===void 0)return`awaiting-turn`;let t=e.turnsById[h];return t===void 0?`awaiting-turn`:Ks(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,$.jsx)(Na,{message:s.t(`timeline.noHistory`,{ns:`conversation`}),role:`status`}):(0,$.jsxs)(va,{"aria-label":s.t(`timeline.conversation`,{ns:`conversation`}),conversationId:`${g}:${_}`,...f===void 0?{}:{scrollToBottomSignal:f},children:[t?(0,$.jsx)(Mo,{error:d,isLoading:n,onLoad:u}):null,(0,$.jsx)(ba,{...C||E||D?{footer:(0,$.jsxs)($.Fragment,{children:[D?(0,$.jsx)(ac,{store:p}):null,C?(0,$.jsx)(oc,{connected:e,onResolvePendingRequest:l,store:p}):null,E?(0,$.jsxs)(Sa,{from:`assistant`,children:[(0,$.jsx)(Ha,{completedAt:null,startedAt:m}),(0,$.jsx)(Ja,{})]}):null]})}:{},getItemKey:tc,items:v,renderNavigation:(e,t,n)=>(0,$.jsx)(zo,{items:w,scrollContainerRef:n,scrollbarWidth:t,onNavigate:t=>{e(t.turnIndex,t.anchorId)}}),renderItem:(t,n)=>(0,$.jsx)(rc,{...e&&t===v.at(-1)&&r!==void 0?{onBuildPlan:r}:{},...e&&i!==void 0?{onForkTask:i}:{},onOpenFileDiff:a,onOpenSourceFile:o,onReviewFileChanges:c,projectId:g,store:p,taskId:_,turnId:t,turnIndex:n,suppressEmptyRunningStatus:E&&t===h})}),(0,$.jsx)(xa,{})]})}var cc=()=>void 0,lc=()=>void 0,uc=()=>void 0,dc=()=>Promise.resolve();function fc(e){if(a(`conversation`),e.taskId===void 0)return e.submissionStartedAt===void 0?`temporary`in e?(0,$.jsx)(Ma,{scopeName:e.scopeName}):(0,$.jsx)(Ma,{onProjectChange:e.onProjectChange,projectId:e.projectId,projects:e.projects}):(0,$.jsx)(va,{"aria-label":s.t(`timeline.conversation`,{ns:`conversation`}),conversationId:`${e.projectId}:new-chat`,children:(0,$.jsx)(ya,{className:`gap-6`,children:(0,$.jsxs)(Sa,{from:`assistant`,children:[(0,$.jsx)(Ha,{completedAt:null,startedAt:e.submissionStartedAt}),(0,$.jsx)(Ja,{})]})})});let{onBuildPlan:t,onForkTask:n,onOpenFileDiff:r,onOpenSourceFile:i,onReviewFileChanges:o,onResolvePendingRequest:c,runtime:l,scrollToBottomSignal:u,submissionStartedAt:d,submissionTurnId:f,startingSnapshot:p}=e;return l===void 0?(0,$.jsx)(Na,{message:s.t(`timeline.loading`,{ns:`conversation`}),role:`status`}):(0,$.jsx)(pc,{onOpenFileDiff:r??cc,onOpenSourceFile:i??lc,onReviewFileChanges:o??uc,onResolvePendingRequest:c??dc,...t===void 0?{}:{onBuildPlan:t},...n===void 0?{}:{onForkTask:n},runtime:l,scrollToBottomSignal:u,submissionStartedAt:d,submissionTurnId:f,startingSnapshot:p})}function pc({onBuildPlan:e,onForkTask:t,onOpenFileDiff:n,onOpenSourceFile:r,onReviewFileChanges:i,onResolvePendingRequest:a,runtime:o,scrollToBottomSignal:c,submissionStartedAt:l,submissionTurnId:u,startingSnapshot:d}){return o.error===null?o.isPending||o.metadata===void 0?d===void 0?(0,$.jsx)(Na,{message:s.t(`timeline.loading`,{ns:`conversation`}),role:`status`}):(0,$.jsx)(mc,{connected:!1,snapshot:d}):o.store===void 0?(0,$.jsx)(Na,{message:s.t(`timeline.loading`,{ns:`conversation`}),role:`status`}):(0,$.jsxs)($.Fragment,{children:[o.connectionState===`reconnecting`?(0,$.jsx)(`div`,{className:`bg-control px-3 py-1.5 text-center text-label text-muted-foreground`,role:`status`,children:s.t(`timeline.reconnecting`,{ns:`conversation`})}):null,(0,$.jsx)(sc,{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,...c===void 0?{}:{scrollToBottomSignal:c},store:o.store,...l===void 0?{}:{submissionStartedAt:l},...u===void 0?{}:{submissionTurnId:u}})]}):(0,$.jsx)(Na,{message:s.t(`timeline.loadError`,{ns:`conversation`}),role:`alert`})}function mc({connected:e=!0,onBuildPlan:t,onForkTask:n,onOpenFileDiff:r=()=>void 0,onOpenSourceFile:i=()=>void 0,onReviewFileChanges:o=()=>void 0,onResolvePendingRequest:s=()=>Promise.resolve(),snapshot:c}){a(`conversation`);let l=(0,Q.useMemo)(()=>yn({projectId:c.projectId,taskId:c.id},{checkpoint:{sequence:0,sessionId:`starting-snapshot`},snapshot:c}),[c]);return(0,$.jsx)(sc,{connected:e,...t===void 0?{}:{onBuildPlan:t},...n===void 0?{}:{onForkTask:n},onOpenFileDiff:r,onOpenSourceFile:i,onReviewFileChanges:o,onResolvePendingRequest:s,store:l})}var hc=1e3,gc=`Pasted text.txt`;function _c(e){return e===void 0?s.t(`composer.placeholder`,{ns:`workbench`}):s.t(`composer.followUpPlaceholder`,{ns:`workbench`})}function vc(e,t,n=D){return e?.fingerprint===t?e:{fingerprint:t,key:n()}}function yc(e,t){if(e!==void 0)return e.supportedReasoningEfforts.some(e=>e.id===t)?t:e.defaultReasoningEffort}function bc(e){return q(e)}function xc(e,t){return te(e,t)}function Sc(e,t){return{canInterrupt:e?.turns.interrupt??!1,canSubmit:e?.turns.start===!0&&(t||e.tasks.start),canSteer:e?.turns.steer===!0&&t}}function Cc(e,t,n,r){return e===`running`?t?n===`queue`?`queue`:r?`steer`:`blocked`:`interrupt`:t?`start`:`blocked`}function wc(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 Tc(e){return{attachmentsDisabled:e===`submitting`,draftInputDisabled:e===`submitting`,turnControlsDisabled:e===`reconnecting`||e===`submitting`}}async function Ec(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{checkpoint:i.checkpoint,...r===void 0?{}:{createdTask:r},taskId:n,turn:i.turn}}async function Dc(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 Oc(e,t,n,r,i){return e.interruptTurn(t,n,r,{idempotencyKey:i})}function kc(e,t,n,r,i,a){return e.steerTurn(t,n,r,i,{idempotencyKey:a})}function Ac({directoryStates:e,entries:t,expandedPaths:n,onRetry:r}){let{t:i}=a(`workbench`);return t.map(t=>{if(t.type===`file`)return(0,$.jsx)(ue,{name:t.name,path:t.path},t.path);let a=e.get(t.path),o=n.has(t.path);return(0,$.jsx)(ce,{name:t.name,path:t.path,trailing:o&&a?.isFetching===!0?(0,$.jsx)(K,{"aria-hidden":`true`,className:`size-3.5 animate-spin`}):void 0,children:o?a?.error!==null&&a?.error!==void 0?(0,$.jsxs)(`div`,{className:`flex min-h-9 items-center justify-between gap-2 px-2 py-1`,children:[(0,$.jsx)(`p`,{className:`min-w-0 text-caption text-danger`,role:`alert`,children:i(`hostAttachmentPicker.loadBranchError`)}),(0,$.jsxs)(g,{className:`shrink-0`,onClick:()=>{r(t.path)},size:`sm`,type:`button`,variant:`ghost`,children:[(0,$.jsx)(ft,{"aria-hidden":`true`,"data-icon":`inline-start`}),i(`actions.retry`)]})]}):a?.data===void 0?(0,$.jsx)(`p`,{className:`px-2 py-1.5 text-caption text-muted-foreground`,role:`status`,children:i(`hostAttachmentPicker.loadingBranch`)}):a.data.entries.length===0?(0,$.jsx)(`p`,{className:`px-2 py-1.5 text-caption text-muted-foreground`,children:i(`hostAttachmentPicker.empty`)}):(0,$.jsx)(Ac,{directoryStates:e,entries:a.data.entries,expandedPaths:n,onRetry:r}):null},t.path)})}function jc({directoryStates:e,expandedPaths:t,listing:n,onExpandedChange:r,onRetry:i,onSelect:o,selectedPath:s}){let{t:c}=a(`workbench`),l=(0,Q.useMemo)(()=>new Map(e.map(e=>[e.path,e])),[e]);return(0,$.jsx)(fe,{"aria-label":c(`hostAttachmentPicker.treeLabel`),expanded:t,onExpandedChange:r,onSelect:o,...s===void 0?{}:{selectedPath:s},children:(0,$.jsx)(Ac,{directoryStates:l,entries:n.entries,expandedPaths:t,onRetry:i})})}function Mc({client:e,kind:t,onAdd:n,onClose:r,projectId:i}){let{t:o}=a(`workbench`),[s,c]=(0,Q.useState)(),[l,u]=(0,Q.useState)(),[d,f]=(0,Q.useState)(!1),[p,m]=(0,Q.useState)(()=>new Set),[h,_]=(0,Q.useState)(),[v,y]=(0,Q.useState)(!1),b=(0,Q.useRef)(!1),x=(0,Q.useRef)(void 0),S=G({queryFn:({signal:n})=>e.listHostFiles(t,s,{includeHidden:d,signal:n}),queryKey:[`host-files`,t,s??null,d],staleTime:3e4}),C=S.data,w=(0,Q.useMemo)(()=>[...p],[p]),E=Ot({queries:w.map(n=>({queryFn:({signal:r})=>e.listHostFiles(t,n,{includeHidden:d,signal:r}),queryKey:[`host-files`,t,n,d],staleTime:3e4}))}),D=w.map((e,t)=>{let n=E[t];return{...n?.data===void 0?{}:{data:n.data},error:n?.error??null,isFetching:n?.isFetching??!1,path:e}}),O=(0,Q.useMemo)(()=>new Set([C,...D.map(e=>e.data)].filter(e=>e!==void 0).flatMap(e=>e.entries.flatMap(e=>e.type===`file`?[e.path]:[]))),[D,C]),k=l??s??C?.path??``,A=()=>{let e=C?.parentPath;e!=null&&(c(e),u(void 0),m(new Set),_(void 0))},j=e=>{c(e),u(void 0),m(new Set),_(void 0)},ee=()=>{let e=k.trim();e.length!==0&&(c(e),u(void 0),m(new Set),_(void 0))},M=()=>{f(e=>!e),_(void 0)},N=async()=>{if(h===void 0||b.current)return;b.current=!0,y(!0);let r=vc(x.current,`${i}:${t}:${h}`);x.current=r;try{let a=await e.importHostAttachment(i,t,h,{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`}),x.current=void 0,V()}catch(e){L(e)}finally{b.current=!1,y(!1)}};return(0,$.jsx)(Mn,{onOpenChange:e=>{!e&&!v&&r()},open:!0,children:(0,$.jsxs)(ht,{"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=>{v&&e.preventDefault()},onInteractOutside:e=>{v&&e.preventDefault()},children:[(0,$.jsxs)(Ut,{className:`px-4 pb-3 pt-4 sm:px-5 sm:pt-5`,children:[(0,$.jsx)(qt,{id:`host-attachment-picker-title`,children:o(t===`image`?`hostAttachmentPicker.imageTitle`:`hostAttachmentPicker.fileTitle`)}),(0,$.jsx)(Gt,{className:`sr-only`,children:o(`hostAttachmentPicker.description`)})]}),(0,$.jsx)(jt,{disabled:v,includeHidden:d,labels:{filesystemRoot:o(`hostAttachmentPicker.filesystemRoot`),goToPath:o(`hostAttachmentPicker.goToPath`),hideHidden:o(`hostAttachmentPicker.hideHidden`),parent:o(`hostAttachmentPicker.parent`),pathLabel:o(`hostAttachmentPicker.pathLabel`),pathPlaceholder:o(`hostAttachmentPicker.pathPlaceholder`),showHidden:o(`hostAttachmentPicker.showHidden`)},listing:C,onNavigateParent:A,onNavigatePath:ee,onNavigateRoot:j,onPathChange:u,onToggleHidden:M,path:k}),(0,$.jsx)(`div`,{className:`min-h-0 overflow-y-auto px-3 py-2 sm:px-4`,children:S.isPending?(0,$.jsxs)(`p`,{className:`flex min-h-32 items-center justify-center gap-2 text-body-small text-muted-foreground`,role:`status`,children:[(0,$.jsx)(K,{"aria-hidden":`true`,className:`size-4 animate-spin`}),o(`hostAttachmentPicker.loading`)]}):S.error===null?C===void 0?null:C.entries.length===0?(0,$.jsx)(`p`,{className:`grid min-h-32 place-items-center text-body-small text-muted-foreground`,children:o(`hostAttachmentPicker.empty`)}):(0,$.jsx)(jc,{directoryStates:D,expandedPaths:p,listing:C,onExpandedChange:m,onRetry:e=>{let t=w.indexOf(e);E[t]?.refetch()},onSelect:e=>{O.has(e)&&_(e)},...h===void 0?{}:{selectedPath:h}}):(0,$.jsxs)(`div`,{className:`flex min-h-32 flex-col items-center justify-center gap-3 text-center`,children:[(0,$.jsx)(`p`,{className:`text-body-small text-danger`,role:`alert`,children:o(`hostAttachmentPicker.loadError`)}),(0,$.jsxs)(g,{onClick:()=>void S.refetch(),type:`button`,variant:`outline`,children:[(0,$.jsx)(ft,{"aria-hidden":`true`,"data-icon":`inline-start`}),o(`actions.retry`)]})]})}),(0,$.jsxs)(`div`,{className:`flex flex-col gap-3 border-t border-separator bg-raised px-4 py-3 sm:flex-row sm:items-center sm:px-5`,children:[(0,$.jsx)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-1`,children:(0,$.jsx)(`p`,{"aria-live":`polite`,className:`truncate font-mono text-caption text-foreground`,title:h,children:h??o(`hostAttachmentPicker.noSelection`)})}),(0,$.jsxs)(wt,{className:`w-full flex-col-reverse sm:w-auto sm:flex-row`,children:[(0,$.jsx)(g,{className:`h-10 w-full sm:h-8 sm:w-auto`,disabled:v,onClick:r,type:`button`,variant:`outline`,children:o(`actions.cancel`)}),(0,$.jsxs)(g,{className:`h-10 w-full sm:h-8 sm:w-auto`,disabled:h===void 0||v,onClick:()=>void N(),type:`button`,children:[v?(0,$.jsx)(K,{"aria-hidden":`true`,className:`animate-spin`,"data-icon":`inline-start`}):t===`image`?(0,$.jsx)(Ze,{"aria-hidden":`true`,"data-icon":`inline-start`}):(0,$.jsx)(Me,{"aria-hidden":`true`,"data-icon":`inline-start`}),o(v?`hostAttachmentPicker.importing`:`hostAttachmentPicker.add`)]})]})]})]})})}function Nc(e,t){return Pc([...t.flatMap(e=>[{skill:e,type:`skill`},{text:` `,type:`text`}]),...e===``?[]:[{text:e,type:`text`}]])}function Pc(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 Fc(e){return`$${e.name}`}function Ic(e){return`${e.rootId}\u0000${e.path}`}function Lc(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 Rc(e){return e.type===`text`?e.text.length:e.type===`skill`?Fc(e.skill).length:Lc(e.file).length}function zc(e,t){let n=[],r=[],i=0;for(let a of e){let e=Rc(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[Pc(n),Pc(r)]}function Bc(e,t){let n=0;for(let r of e){let e=n+Rc(r);if(t.start>=n&&t.end<=e)return r.type===`text`;n=e}return!1}function Vc(e,t,n){let[r]=zc(e,t.start),[,i]=zc(e,t.end),a=e.some(e=>e.type===`skill`&&e.skill.id===n.id);return Pc([...r,...a?[]:[{skill:n,type:`skill`}],...i])}function Hc(e,t,n){let[r]=zc(e,t.start),[,i]=zc(e,t.end),a=e.some(e=>e.type===`file`&&Ic(e.file)===Ic(n));return Pc([...r,...a?[]:[{file:n,type:`file`}],...i])}function Uc(e,t){if(e.some(e=>e.type===`file`&&Ic(e.file)===Ic(t)))return e;let n=Jc(e);return Pc([...e,...n===``||/\s$/u.test(n)?[]:[{text:` `,type:`text`}],{file:t,type:`file`}])}function Wc(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?Pc(i):e}function Gc(e,t){let[n]=zc(e,t.start),[,r]=zc(e,t.end);return Pc([...n,...r])}function Kc(e,t){return Pc(e.filter(e=>e.type!==`skill`||e.skill.id!==t))}function qc(e,t){let n=Ic(t);return Pc(e.filter(e=>e.type!==`file`||Ic(e.file)!==n))}function Jc(e){return e.map(e=>e.type===`text`?e.text:e.type===`skill`?Fc(e.skill):Lc(e.file)).join(``)}function Yc(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`?Lc(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 Xc(e){let t=Yc(e);return t.text===``&&t.skills.length===0}var Zc=new Set([`DIV`,`P`]);function Qc(e){return e.nextSibling!==null||e.previousSibling===null?!1:e.nodeType===Node.TEXT_NODE?e.textContent===`
|
|
7
|
+
`);return(0,$.jsxs)(Sa,{from:`assistant`,children:[p?(0,$.jsx)(Ha,{completedAt:_.completedAt,startedAt:_.startedAt,...d?{expanded:l,onToggle:c}:{}}):null,x.length>0||m?(0,$.jsxs)(`div`,{className:`w-full space-y-4`,children:[(0,$.jsx)(ec,{itemKeys:x,lastTurnItemKey:t,...a===void 0?{}:{onBuildPlan:a},onOpenFileDiff:r,onOpenSourceFile:o,projectId:f,store:h,taskId:g,turnStatus:_.status}),m?(0,$.jsx)($s,{itemKeys:e,store:h}):null]}):null,_.status!==`running`&&b.length>0?(0,$.jsx)(Ao,{changes:b,onOpenFileDiff:r,onReviewFileChanges:s}):null,_.status!==`running`&&S.trim().length>0?(0,$.jsx)(Wa,{lastTurnId:_.id,...i===void 0?{}:{onForkTask:i},text:S,timestamp:Ua(`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=Bt(o,e=>e.turnsById[c]),f=Bt(o,e=>e.itemKeysByTurnId[c]??[]),[p,m]=(0,Q.useState)(!1);if(d===void 0)return null;let h=o.getState().snapshotMetadata?.updatedAt??``,g=o.getState().itemStoresByKey,_=Ks(f,g),v=new Set(jo(f.flatMap(e=>g.get(e)?.peek()??[]),d.status)),y=new Set(f.filter(e=>v.has(g.get(e)?.peek().id??``))),b=y.size>0,x=_.findIndex(e=>e.type===`assistant`),S=x>=0,C=f.at(-1);return(0,$.jsxs)(`section`,{"aria-label":`Turn ${String(l+1)}`,className:`space-y-4`,"data-status":d.status,children:[_.map((c,l)=>c.type===`user`?(0,$.jsx)(Qs,{itemKey:c.itemKey,latestSnapshotTimestamp:h,onOpenFileDiff:n,onOpenSourceFile:r,projectId:a,store:o,taskId:s,turn:d},c.itemKey):(0,$.jsx)(nc,{itemKeys:c.itemKeys,lastTurnItemKey:C,latestSnapshotTimestamp:h,...d.status===`completed`&&e!==void 0?{onBuildPlan:e}:{},onOpenFileDiff:n,onToggleProcess:()=>{m(e=>!e)},...d.status!==`running`&&t!==void 0?{onForkTask:t}:{},onOpenSourceFile:r,onReviewFileChanges:i,projectId:a,processExpanded:p,processItemKeys:y,processToggleAvailable:b,showProcessingTime:l===x,showRunningShimmer:d.status===`running`&&l===_.length-1,store:o,taskId:s,turn:d},c.key)),d.status===`running`&&!S&&!u?(0,$.jsxs)(Sa,{from:`assistant`,children:[(0,$.jsx)(Ha,{completedAt:d.completedAt,startedAt:d.startedAt}),(0,$.jsx)(`div`,{className:`w-full space-y-4`,children:(0,$.jsx)(Ja,{})})]}):null,d.error===null?null:(0,$.jsx)(`div`,{className:`rounded-surface bg-control px-3 py-2 text-label leading-5 text-danger`,role:`alert`,children:(0,$.jsx)(`p`,{children:d.error})})]})}function ic({notice:e}){let t=e.payload.level===`warning`,n=e.payload.code===`model_verification`?s.t(`timeline.notice.modelVerification`,{ns:`conversation`}):e.payload.code===`strict_review_required`?s.t(`timeline.notice.strictReviewRequired`,{ns:`conversation`}):e.payload.message,r=s.t(`timeline.notice.${e.payload.code}`,{ns:`conversation`});return(0,$.jsxs)(`div`,{className:`flex items-start gap-2 border-l-2 px-3 py-2 text-label leading-5 ${t?`border-warning text-warning`:`border-separator-strong text-muted-foreground`}`,role:t?`alert`:`status`,children:[t?(0,$.jsx)(vr,{"aria-hidden":`true`,className:`mt-0.5 size-3.5 shrink-0`}):(0,$.jsx)(ie,{"aria-hidden":`true`,className:`mt-0.5 size-3.5 shrink-0`}),(0,$.jsxs)(`div`,{className:`min-w-0`,children:[(0,$.jsx)(`p`,{className:`font-medium text-foreground`,children:r}),(0,$.jsx)(`p`,{className:`break-words`,children:n})]})]})}function ac({store:e}){return Bt(e,e=>e.notices).map(e=>(0,$.jsx)(ic,{notice:e},`${e.sessionId}:${String(e.sequence)}`))}function oc({connected:e,onResolvePendingRequest:t,store:n}){let r=Bt(n,e=>e.pendingRequestIds),i=Bt(n,e=>e.pendingRequestsById),a=r.flatMap(e=>{let t=i[e];return t===void 0||t.status===`resolved`?[]:[t]}),o=a.findIndex(e=>e.status===`pending`);return a.map((n,r)=>(0,$.jsx)(Oo,{interactive:e&&n.status===`pending`&&r===o,onResolve:t,request:n},n.requestId))}function sc({connected:e,hasOlderHistory:t=!1,isLoadingOlderHistory:n=!1,onBuildPlan:r,onForkTask:i,onOpenFileDiff:a,onOpenSourceFile:o,onReviewFileChanges:c,onResolvePendingRequest:l,onLoadOlderHistory:u=()=>Promise.resolve(),olderHistoryError:d=null,scrollToBottomSignal:f,store:p,submissionStartedAt:m,submissionTurnId:h}){let g=p.getState().projectId,_=p.getState().taskId,v=Bt(p,e=>e.turnIds),y=Bt(p,e=>e.itemStructureRevision),b=Bt(p,e=>e.pendingRequestIds),x=Bt(p,e=>e.pendingRequestsById),S=Bt(p,e=>e.notices),C=b.some(e=>x[e]?.status!==`resolved`),w=(0,Q.useMemo)(()=>Lo(p.getState()),[y,p]),T=Bt(p,e=>{if(h===void 0)return`awaiting-turn`;let t=e.turnsById[h];return t===void 0?`awaiting-turn`:Ks(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,$.jsx)(Na,{message:s.t(`timeline.noHistory`,{ns:`conversation`}),role:`status`}):(0,$.jsxs)(va,{"aria-label":s.t(`timeline.conversation`,{ns:`conversation`}),conversationId:`${g}:${_}`,...f===void 0?{}:{scrollToBottomSignal:f},children:[t?(0,$.jsx)(Mo,{error:d,isLoading:n,onLoad:u}):null,(0,$.jsx)(ba,{...C||E||D?{footer:(0,$.jsxs)($.Fragment,{children:[D?(0,$.jsx)(ac,{store:p}):null,C?(0,$.jsx)(oc,{connected:e,onResolvePendingRequest:l,store:p}):null,E?(0,$.jsxs)(Sa,{from:`assistant`,children:[(0,$.jsx)(Ha,{completedAt:null,startedAt:m}),(0,$.jsx)(Ja,{})]}):null]})}:{},getItemKey:tc,items:v,renderNavigation:(e,t,n)=>(0,$.jsx)(zo,{items:w,scrollContainerRef:n,scrollbarWidth:t,onNavigate:t=>{e(t.turnIndex,t.anchorId)}}),renderItem:(t,n)=>(0,$.jsx)(rc,{...e&&t===v.at(-1)&&r!==void 0?{onBuildPlan:r}:{},...e&&i!==void 0?{onForkTask:i}:{},onOpenFileDiff:a,onOpenSourceFile:o,onReviewFileChanges:c,projectId:g,store:p,taskId:_,turnId:t,turnIndex:n,suppressEmptyRunningStatus:E&&t===h})}),(0,$.jsx)(xa,{})]})}var cc=()=>void 0,lc=()=>void 0,uc=()=>void 0,dc=()=>Promise.resolve();function fc(e){if(a(`conversation`),e.taskId===void 0)return e.submissionStartedAt===void 0?`temporary`in e?(0,$.jsx)(Ma,{scopeName:e.scopeName}):(0,$.jsx)(Ma,{onProjectChange:e.onProjectChange,projectId:e.projectId,projects:e.projects}):(0,$.jsx)(va,{"aria-label":s.t(`timeline.conversation`,{ns:`conversation`}),conversationId:`${e.projectId}:new-chat`,children:(0,$.jsx)(ya,{className:`gap-6`,children:(0,$.jsxs)(Sa,{from:`assistant`,children:[(0,$.jsx)(Ha,{completedAt:null,startedAt:e.submissionStartedAt}),(0,$.jsx)(Ja,{})]})})});let{onBuildPlan:t,onForkTask:n,onOpenFileDiff:r,onOpenSourceFile:i,onReviewFileChanges:o,onResolvePendingRequest:c,runtime:l,scrollToBottomSignal:u,submissionStartedAt:d,submissionTurnId:f,startingSnapshot:p}=e;return l===void 0?(0,$.jsx)(Na,{message:s.t(`timeline.loading`,{ns:`conversation`}),role:`status`}):(0,$.jsx)(pc,{onOpenFileDiff:r??cc,onOpenSourceFile:i??lc,onReviewFileChanges:o??uc,onResolvePendingRequest:c??dc,...t===void 0?{}:{onBuildPlan:t},...n===void 0?{}:{onForkTask:n},runtime:l,scrollToBottomSignal:u,submissionStartedAt:d,submissionTurnId:f,startingSnapshot:p})}function pc({onBuildPlan:e,onForkTask:t,onOpenFileDiff:n,onOpenSourceFile:r,onReviewFileChanges:i,onResolvePendingRequest:a,runtime:o,scrollToBottomSignal:c,submissionStartedAt:l,submissionTurnId:u,startingSnapshot:d}){return o.error===null?o.isPending||o.metadata===void 0?d===void 0?(0,$.jsx)(Na,{message:s.t(`timeline.loading`,{ns:`conversation`}),role:`status`}):(0,$.jsx)(mc,{connected:!1,snapshot:d}):o.store===void 0?(0,$.jsx)(Na,{message:s.t(`timeline.loading`,{ns:`conversation`}),role:`status`}):(0,$.jsxs)($.Fragment,{children:[o.connectionState===`reconnecting`?(0,$.jsx)(`div`,{className:`bg-control px-3 py-1.5 text-center text-label text-muted-foreground`,role:`status`,children:s.t(`timeline.reconnecting`,{ns:`conversation`})}):null,(0,$.jsx)(sc,{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,...c===void 0?{}:{scrollToBottomSignal:c},store:o.store,...l===void 0?{}:{submissionStartedAt:l},...u===void 0?{}:{submissionTurnId:u}})]}):(0,$.jsx)(Na,{message:s.t(`timeline.loadError`,{ns:`conversation`}),role:`alert`})}function mc({connected:e=!0,onBuildPlan:t,onForkTask:n,onOpenFileDiff:r=()=>void 0,onOpenSourceFile:i=()=>void 0,onReviewFileChanges:o=()=>void 0,onResolvePendingRequest:s=()=>Promise.resolve(),snapshot:c}){a(`conversation`);let l=(0,Q.useMemo)(()=>Qt({projectId:c.projectId,taskId:c.id},{checkpoint:{sequence:0,sessionId:`starting-snapshot`},snapshot:c}),[c]);return(0,$.jsx)(sc,{connected:e,...t===void 0?{}:{onBuildPlan:t},...n===void 0?{}:{onForkTask:n},onOpenFileDiff:r,onOpenSourceFile:i,onReviewFileChanges:o,onResolvePendingRequest:s,store:l})}var hc=1e3,gc=`Pasted text.txt`;function _c(e){return e===void 0?s.t(`composer.placeholder`,{ns:`workbench`}):s.t(`composer.followUpPlaceholder`,{ns:`workbench`})}function vc(e,t,n=D){return e?.fingerprint===t?e:{fingerprint:t,key:n()}}function yc(e,t){if(e!==void 0)return e.supportedReasoningEfforts.some(e=>e.id===t)?t:e.defaultReasoningEffort}function bc(e){return q(e)}function xc(e,t){return te(e,t)}function Sc(e,t){return{canInterrupt:e?.turns.interrupt??!1,canSubmit:e?.turns.start===!0&&(t||e.tasks.start),canSteer:e?.turns.steer===!0&&t}}function Cc(e,t,n,r){return e===`running`?t?n===`queue`?`queue`:r?`steer`:`blocked`:`interrupt`:t?`start`:`blocked`}function wc(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 Tc(e){return{attachmentsDisabled:e===`submitting`,draftInputDisabled:e===`submitting`,turnControlsDisabled:e===`reconnecting`||e===`submitting`}}async function Ec(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{checkpoint:i.checkpoint,...r===void 0?{}:{createdTask:r},taskId:n,turn:i.turn}}async function Dc(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 Oc(e,t,n,r,i){return e.interruptTurn(t,n,r,{idempotencyKey:i})}function kc(e,t,n,r,i,a){return e.steerTurn(t,n,r,i,{idempotencyKey:a})}function Ac({directoryStates:e,entries:t,expandedPaths:n,onRetry:r}){let{t:i}=a(`workbench`);return t.map(t=>{if(t.type===`file`)return(0,$.jsx)(ue,{name:t.name,path:t.path},t.path);let a=e.get(t.path),o=n.has(t.path);return(0,$.jsx)(ce,{name:t.name,path:t.path,trailing:o&&a?.isFetching===!0?(0,$.jsx)(K,{"aria-hidden":`true`,className:`size-3.5 animate-spin`}):void 0,children:o?a?.error!==null&&a?.error!==void 0?(0,$.jsxs)(`div`,{className:`flex min-h-9 items-center justify-between gap-2 px-2 py-1`,children:[(0,$.jsx)(`p`,{className:`min-w-0 text-caption text-danger`,role:`alert`,children:i(`hostAttachmentPicker.loadBranchError`)}),(0,$.jsxs)(g,{className:`shrink-0`,onClick:()=>{r(t.path)},size:`sm`,type:`button`,variant:`ghost`,children:[(0,$.jsx)(Sn,{"aria-hidden":`true`,"data-icon":`inline-start`}),i(`actions.retry`)]})]}):a?.data===void 0?(0,$.jsx)(`p`,{className:`px-2 py-1.5 text-caption text-muted-foreground`,role:`status`,children:i(`hostAttachmentPicker.loadingBranch`)}):a.data.entries.length===0?(0,$.jsx)(`p`,{className:`px-2 py-1.5 text-caption text-muted-foreground`,children:i(`hostAttachmentPicker.empty`)}):(0,$.jsx)(Ac,{directoryStates:e,entries:a.data.entries,expandedPaths:n,onRetry:r}):null},t.path)})}function jc({directoryStates:e,expandedPaths:t,listing:n,onExpandedChange:r,onRetry:i,onSelect:o,selectedPath:s}){let{t:c}=a(`workbench`),l=(0,Q.useMemo)(()=>new Map(e.map(e=>[e.path,e])),[e]);return(0,$.jsx)(fe,{"aria-label":c(`hostAttachmentPicker.treeLabel`),expanded:t,onExpandedChange:r,onSelect:o,...s===void 0?{}:{selectedPath:s},children:(0,$.jsx)(Ac,{directoryStates:l,entries:n.entries,expandedPaths:t,onRetry:i})})}function Mc({client:e,kind:t,onAdd:n,onClose:r,projectId:i}){let{t:o}=a(`workbench`),[s,c]=(0,Q.useState)(),[l,u]=(0,Q.useState)(),[d,f]=(0,Q.useState)(!1),[p,m]=(0,Q.useState)(()=>new Set),[h,_]=(0,Q.useState)(),[v,y]=(0,Q.useState)(!1),b=(0,Q.useRef)(!1),x=(0,Q.useRef)(void 0),S=G({queryFn:({signal:n})=>e.listHostFiles(t,s,{includeHidden:d,signal:n}),queryKey:[`host-files`,t,s??null,d],staleTime:3e4}),C=S.data,w=(0,Q.useMemo)(()=>[...p],[p]),E=At({queries:w.map(n=>({queryFn:({signal:r})=>e.listHostFiles(t,n,{includeHidden:d,signal:r}),queryKey:[`host-files`,t,n,d],staleTime:3e4}))}),D=w.map((e,t)=>{let n=E[t];return{...n?.data===void 0?{}:{data:n.data},error:n?.error??null,isFetching:n?.isFetching??!1,path:e}}),O=(0,Q.useMemo)(()=>new Set([C,...D.map(e=>e.data)].filter(e=>e!==void 0).flatMap(e=>e.entries.flatMap(e=>e.type===`file`?[e.path]:[]))),[D,C]),k=l??s??C?.path??``,A=()=>{let e=C?.parentPath;e!=null&&(c(e),u(void 0),m(new Set),_(void 0))},j=e=>{c(e),u(void 0),m(new Set),_(void 0)},ee=()=>{let e=k.trim();e.length!==0&&(c(e),u(void 0),m(new Set),_(void 0))},M=()=>{f(e=>!e),_(void 0)},N=async()=>{if(h===void 0||b.current)return;b.current=!0,y(!0);let r=vc(x.current,`${i}:${t}:${h}`);x.current=r;try{let a=await e.importHostAttachment(i,t,h,{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`}),x.current=void 0,V()}catch(e){L(e)}finally{b.current=!1,y(!1)}};return(0,$.jsx)(Jt,{onOpenChange:e=>{!e&&!v&&r()},open:!0,children:(0,$.jsxs)(Tt,{"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=>{v&&e.preventDefault()},onInteractOutside:e=>{v&&e.preventDefault()},children:[(0,$.jsxs)(Ct,{className:`px-4 pb-3 pt-4 sm:px-5 sm:pt-5`,children:[(0,$.jsx)(jt,{id:`host-attachment-picker-title`,children:o(t===`image`?`hostAttachmentPicker.imageTitle`:`hostAttachmentPicker.fileTitle`)}),(0,$.jsx)(Kt,{className:`sr-only`,children:o(`hostAttachmentPicker.description`)})]}),(0,$.jsx)(zt,{disabled:v,includeHidden:d,labels:{filesystemRoot:o(`hostAttachmentPicker.filesystemRoot`),goToPath:o(`hostAttachmentPicker.goToPath`),hideHidden:o(`hostAttachmentPicker.hideHidden`),parent:o(`hostAttachmentPicker.parent`),pathLabel:o(`hostAttachmentPicker.pathLabel`),pathPlaceholder:o(`hostAttachmentPicker.pathPlaceholder`),showHidden:o(`hostAttachmentPicker.showHidden`)},listing:C,onNavigateParent:A,onNavigatePath:ee,onNavigateRoot:j,onPathChange:u,onToggleHidden:M,path:k}),(0,$.jsx)(`div`,{className:`min-h-0 overflow-y-auto px-3 py-2 sm:px-4`,children:S.isPending?(0,$.jsxs)(`p`,{className:`flex min-h-32 items-center justify-center gap-2 text-body-small text-muted-foreground`,role:`status`,children:[(0,$.jsx)(K,{"aria-hidden":`true`,className:`size-4 animate-spin`}),o(`hostAttachmentPicker.loading`)]}):S.error===null?C===void 0?null:C.entries.length===0?(0,$.jsx)(`p`,{className:`grid min-h-32 place-items-center text-body-small text-muted-foreground`,children:o(`hostAttachmentPicker.empty`)}):(0,$.jsx)(jc,{directoryStates:D,expandedPaths:p,listing:C,onExpandedChange:m,onRetry:e=>{let t=w.indexOf(e);E[t]?.refetch()},onSelect:e=>{O.has(e)&&_(e)},...h===void 0?{}:{selectedPath:h}}):(0,$.jsxs)(`div`,{className:`flex min-h-32 flex-col items-center justify-center gap-3 text-center`,children:[(0,$.jsx)(`p`,{className:`text-body-small text-danger`,role:`alert`,children:o(`hostAttachmentPicker.loadError`)}),(0,$.jsxs)(g,{onClick:()=>void S.refetch(),type:`button`,variant:`outline`,children:[(0,$.jsx)(Sn,{"aria-hidden":`true`,"data-icon":`inline-start`}),o(`actions.retry`)]})]})}),(0,$.jsxs)(`div`,{className:`flex flex-col gap-3 border-t border-separator bg-raised px-4 py-3 sm:flex-row sm:items-center sm:px-5`,children:[(0,$.jsx)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-1`,children:(0,$.jsx)(`p`,{"aria-live":`polite`,className:`truncate font-mono text-caption text-foreground`,title:h,children:h??o(`hostAttachmentPicker.noSelection`)})}),(0,$.jsxs)(Xt,{className:`w-full flex-col-reverse sm:w-auto sm:flex-row`,children:[(0,$.jsx)(g,{className:`h-10 w-full sm:h-8 sm:w-auto`,disabled:v,onClick:r,type:`button`,variant:`outline`,children:o(`actions.cancel`)}),(0,$.jsxs)(g,{className:`h-10 w-full sm:h-8 sm:w-auto`,disabled:h===void 0||v,onClick:()=>void N(),type:`button`,children:[v?(0,$.jsx)(K,{"aria-hidden":`true`,className:`animate-spin`,"data-icon":`inline-start`}):t===`image`?(0,$.jsx)(Ze,{"aria-hidden":`true`,"data-icon":`inline-start`}):(0,$.jsx)(Me,{"aria-hidden":`true`,"data-icon":`inline-start`}),o(v?`hostAttachmentPicker.importing`:`hostAttachmentPicker.add`)]})]})]})]})})}function Nc(e,t){return Pc([...t.flatMap(e=>[{skill:e,type:`skill`},{text:` `,type:`text`}]),...e===``?[]:[{text:e,type:`text`}]])}function Pc(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 Fc(e){return`$${e.name}`}function Ic(e){return`${e.rootId}\u0000${e.path}`}function Lc(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 Rc(e){return e.type===`text`?e.text.length:e.type===`skill`?Fc(e.skill).length:Lc(e.file).length}function zc(e,t){let n=[],r=[],i=0;for(let a of e){let e=Rc(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[Pc(n),Pc(r)]}function Bc(e,t){let n=0;for(let r of e){let e=n+Rc(r);if(t.start>=n&&t.end<=e)return r.type===`text`;n=e}return!1}function Vc(e,t,n){let[r]=zc(e,t.start),[,i]=zc(e,t.end),a=e.some(e=>e.type===`skill`&&e.skill.id===n.id);return Pc([...r,...a?[]:[{skill:n,type:`skill`}],...i])}function Hc(e,t,n){let[r]=zc(e,t.start),[,i]=zc(e,t.end),a=e.some(e=>e.type===`file`&&Ic(e.file)===Ic(n));return Pc([...r,...a?[]:[{file:n,type:`file`}],...i])}function Uc(e,t){if(e.some(e=>e.type===`file`&&Ic(e.file)===Ic(t)))return e;let n=Jc(e);return Pc([...e,...n===``||/\s$/u.test(n)?[]:[{text:` `,type:`text`}],{file:t,type:`file`}])}function Wc(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?Pc(i):e}function Gc(e,t){let[n]=zc(e,t.start),[,r]=zc(e,t.end);return Pc([...n,...r])}function Kc(e,t){return Pc(e.filter(e=>e.type!==`skill`||e.skill.id!==t))}function qc(e,t){let n=Ic(t);return Pc(e.filter(e=>e.type!==`file`||Ic(e.file)!==n))}function Jc(e){return e.map(e=>e.type===`text`?e.text:e.type===`skill`?Fc(e.skill):Lc(e.file)).join(``)}function Yc(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`?Lc(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 Xc(e){let t=Yc(e);return t.text===``&&t.skills.length===0}var Zc=new Set([`DIV`,`P`]);function Qc(e){return e.nextSibling!==null||e.previousSibling===null?!1:e.nodeType===Node.TEXT_NODE?e.textContent===`
|
|
8
8
|
`&&e.previousSibling.textContent?.endsWith(`
|
|
9
9
|
`)===!0:e instanceof HTMLElement&&e.tagName===`BR`&&(e.previousSibling.nodeName===`BR`||e.previousSibling.textContent?.endsWith(`
|
|
10
10
|
`)===!0)}function $c(e,t){let n=document.createElement(`span`);if(n.className=`${Vs} 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=Fc(e),n.setAttribute(`aria-label`,s.t(`skillEditor.tokenLabel`,{name:e.displayName,ns:`workbench`,text:Fc(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 el(e,t){let n=document.createElement(`span`);if(n.className=`${Vs} 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=Lc(e),n.setAttribute(`aria-label`,Lc(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 tl(){let e=document.createElement(`span`);return e.dataset.promptCaretAnchor=``,e.textContent=``,e}function nl(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($c(e.skill,n),tl()):i.push(el(e.file,r),tl());e.replaceChildren(...i),e.dataset.empty=String(t.length===0),e.dataset.serializedValue=Jc(t)}function rl(e,t,n){let r=[],i=e=>{e!==``&&r.push({text:e,type:`text`})},a=e=>{if(e.nodeType===Node.TEXT_NODE){Qc(e)||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(Ic({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`){Qc(e)||i(`
|
|
11
11
|
`);return}Zc.has(e.tagName)&&r.length>0&&i(`
|
|
12
|
-
`),e.childNodes.forEach(a)};return e.childNodes.forEach(a),Pc(r)}function il(e){if(e.nodeType===Node.TEXT_NODE)return Qc(e)?0: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`?+!Qc(e):[...e.childNodes].reduce((e,t)=>e+il(t),0)}function al(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+il(t),0);i=!0;return}if(e instanceof Element&&e.contains(t)){e.childNodes.forEach(a);return}r+=il(e)}};return e.childNodes.forEach(a),r}function ol(e){let t=document.getSelection();return al(e,t?.anchorNode??null,t?.anchorOffset??0)??e.dataset.serializedValue?.length??0}function sl(e,t){let n=Math.max(0,t);for(let[t,r]of[...e.childNodes].entries()){let i=il(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 cl(e,t){let[n,r]=sl(e,t),i=document.createRange();i.setStart(n,r),i.collapse(!0);let a=document.getSelection();a?.removeAllRanges(),a?.addRange(i)}function ll(e,t){e.focus(),document.execCommand(`insertText`,!1,t)}function ul(e){e.focus(),document.execCommand(`insertLineBreak`)}var dl=(0,Q.forwardRef)(function({className:e=``,content:t,disabled:n=!1,onChange:r,onClick:i,onKeyDown:a,onPaste:o,placeholder:s,skills:c,scope:l,...u},d){let f=(0,Q.useRef)(null),p=(0,Q.useRef)(null),m=(0,Q.useRef)(null),h=(0,Q.useRef)(t),g=(0,Q.useRef)(c),_=(0,Q.useRef)(new Map),v=(0,Q.useRef)(new Map),y=(0,Q.useRef)(void 0),b=(0,Q.useCallback)(e=>{for(let t of e)t.type===`skill`?_.current.set(t.skill.id,t.skill):t.type===`file`&&v.current.set(Ic(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=rl(e,_.current,v.current),n=Wc(t,g.current),i=ol(e);n!==t&&(nl(e,n,p.current,m.current),cl(e,Math.min(i,Jc(n).length))),h.current=n,e.dataset.empty=String(n.length===0);let a=Jc(n);e.dataset.serializedValue=a,r(n,a,ol(e))},S=(0,Q.useCallback)((e,t)=>{let n=f.current;n!==null&&(b(e),h.current=e,nl(n,e,p.current,m.current),n.dataset.empty=String(e.length===0),n.dataset.serializedValue=Jc(e),t!==void 0&&cl(n,t))},[b]);(0,Q.useImperativeHandle)(d,()=>({focus(e){let t=f.current;t?.focus(),t!==null&&e!==void 0&&cl(t,e)},getContent(){let e=f.current;return e===null?h.current:rl(e,_.current,v.current)},replace:S}),[S]),(0,Q.useLayoutEffect)(()=>{y.current!==l&&(y.current=l,S(t))},[t,S,l]),(0,Q.useLayoutEffect)(()=>{let e=f.current;if(e===null||c.length===0)return;let t=rl(e,_.current,v.current),n=Wc(t,c);if(n===t)return;let i=ol(e);nl(e,n,p.current,m.current),document.activeElement===e&&cl(e,Math.min(i,Jc(n).length)),h.current=n;let a=Jc(n);e.dataset.serializedValue=a,r(n,a,ol(e))},[r,c]);let C=(e,t)=>{let n=[...e.childNodes].slice(0,[...e.childNodes].indexOf(t)).reduce((e,t)=>e+il(t),0),r=t.dataset.promptSkillId,i=t.dataset.promptFilePath,a=t.dataset.promptFileRootId,o=r===void 0?i!==void 0&&a!==void 0?qc(h.current,{path:i,rootId:a}):h.current:Kc(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(),ll(e.currentTarget,e.clipboardData.getData(`text/plain`))))},E=e=>{if(a?.(e),!(e.defaultPrevented||Be(e.nativeEvent)||n)){if(e.key===`End`&&!(e.altKey||e.ctrlKey||e.metaKey||e.shiftKey)){let t=e.currentTarget,n=document.getSelection(),r=Jc(h.current),i=h.current.at(-1),a=i!==void 0&&i.type!==`text`?r.length-Rc(i):void 0,o=ol(t);if(n?.isCollapsed===!0&&a!==void 0&&o<=a&&r.slice(o,a).trim()===``){e.preventDefault(),cl(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(),ze(e)?(ul(e.currentTarget),x()):e.currentTarget.closest(`form`)?.requestSubmit())}};return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Bn,{"aria-hidden":`true`,className:`hidden size-4 shrink-0`,ref:p}),(0,$.jsx)(Z,{"aria-hidden":`true`,className:`hidden size-4 shrink-0`,ref:m}),(0,$.jsx)(`div`,{...u,"aria-disabled":n||void 0,"aria-multiline":`true`,className:`max-h-40 min-h-12 w-full overflow-y-auto whitespace-pre-wrap break-words bg-transparent px-1 py-1 text-sm leading-5 text-foreground outline-none before:pointer-events-none before:text-muted-foreground/60 data-[empty=true]:before:content-[attr(data-placeholder)] ${n?`cursor-not-allowed opacity-60`:``} ${e}`,contentEditable:!n,"data-empty":t.length===0,"data-placeholder":s,"data-prompt-skill-editor":``,onClick:e=>{w(e)||i?.(e)},onCopy:e=>{let t=f.current,n=document.getSelection();if(t===null||n===null||n.rangeCount===0)return;let r=n.getRangeAt(0);if(!t.contains(r.commonAncestorContainer))return;let i=Jc(rl(t,_.current,v.current)),a=al(t,r.startContainer,r.startOffset),o=al(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})]})}),fl=(e,t)=>[`projects`,e,t,`git-status`],pl=(e,t)=>[`projects`,e,t,`git-worktrees`];function ml(e,t,n,r){e.setQueryData([`projects`],e=>Jt(e,r.project)),e.setQueryData(pl(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 hl(e,t,n,r,i,a){if(i.repositoryMode!==`root`||i.branch===a||!i.branches.includes(a))return!1;let o=fl(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 gl(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=fl(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 _l(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 ml(t,n,r,s),await t.invalidateQueries({exact:!0,queryKey:fl(n,r),refetchType:`none`}),s.project}async function vl(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 ml(t,n,r,o),o.project}function yl({client:e,gitStatus:t,isCurrentScope:n,projectId:r,routeScope:i,rootPath:a}){let o=bn(),s=x(),{projects:c}=Qt(),l=(0,Q.useRef)(R()),[u,d]=(0,Q.useState)(),[f,p]=(0,Q.useState)(),[m,h]=(0,Q.useState)(),[g,_]=(0,Q.useState)(),[v,y]=(0,Q.useState)(),b=u!==void 0||f!==void 0||m!==void 0||g!==void 0,S=G({enabled:t?.repositoryMode===`root`,queryFn:({signal:t})=>e.listProjectWorktrees(r,a,{signal:t}),queryKey:pl(r,a),staleTime:5e3}).data?.worktrees??[];return(0,Q.useEffect)(()=>{let e=v?.routeScope===i?v.projectId:void 0;e===void 0||!c.some(t=>t.id===e)||o({params:{projectId:e},to:`/p/$projectId`})},[o,c,i,v]),(0,Q.useEffect)(()=>{d(void 0),p(void 0),h(void 0),_(void 0),y(void 0)},[i]),{createBranch:async o=>{let c=i;return t===void 0||b?!1:await l.current.run(async()=>{d(o);try{let n=await gl(e,s,r,a,t,o);return n&&V(),n}catch(e){return L(e),await s.invalidateQueries({exact:!0,queryKey:fl(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 _l(e,s,r,a,t,o);return n===void 0?!1:(V(),y({projectId:n.id,routeScope:c}),!0)}catch(e){return L(e),await s.invalidateQueries({exact:!0,queryKey:pl(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 hl(e,s,r,a,t,o)&&V()}catch(e){L(e),await s.invalidateQueries({exact:!0,queryKey:fl(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 vl(e,s,r,a,S,t);if(n===void 0)return;V(),y({projectId:n.id,routeScope:o})}catch(e){L(e),await s.invalidateQueries({exact:!0,queryKey:pl(r,a)}).catch(()=>void 0)}finally{n(o)&&_(void 0)}})},switchingWorktree:g,worktrees:S}}async function bl(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 xl({activeTurnId:e,client:t,handleAttachmentsChange:n,projectId:r,replacePromptContent:i,routeScope:a,runtime:o,skillEditorRef:s,skills:c,taskId:l}){let u=x(),d=N(r,l??``),f=G({enabled:l!==void 0,queryFn:({signal:e})=>bl(t,r,l??``,e),queryKey:d,staleTime:1/0}),[p,m]=(0,Q.useState)([]),h=(0,Q.useMemo)(()=>l===void 0?[]:(f.data??[]).map(e=>Rr(e,r,l,t.getTaskAttachmentUrl.bind(t),c)),[t,r,f.data,c,l]),g=p.filter(e=>e.scope===a).map(e=>e.prompt),_=new Set(g.map(e=>e.id)),v=h.find(e=>e.status===`editing`)?.id,y=[...h.filter(e=>!_.has(e.id)),...g];(0,Q.useEffect)(()=>{let e=o?.store;if(e!==void 0)return e.subscribe(e=>{m(t=>t.filter(t=>t.scope!==a||t.prompt.status!==`awaiting-response`||!Wr(t.prompt,e)))})},[a,o?.store]);let b=async()=>{await u.invalidateQueries({exact:!0,queryKey:d})},S=async(n,i)=>l===void 0?!1:(v===void 0?await t.addQueuedSubmission(r,l,n,i,{idempotencyKey:D()}):(await t.updateQueuedSubmission(r,l,v,n,`queued`,{idempotencyKey:D()}),e===void 0&&await t.startQueuedSubmission(r,l,v,{idempotencyKey:D()})),await b(),!0),C=async e=>{l!==void 0&&(await t.deleteQueuedSubmission(r,l,e,{idempotencyKey:D()}),await b())},w=async e=>{let a=Gr(e);if(a===void 0)return;let o=Nc(a.text,a.skills);if(l===void 0||e.status!==`queued`)return;let c=t.updateQueuedSubmission(r,l,e.id,{attachments:a.files.flatMap(e=>e.source===`host`?[{id:e.attachment.id}]:[]),skills:a.skills.map(({id:e,name:t})=>({id:e,name:t})),text:a.text,type:`prompt`},`editing`,{idempotencyKey:D()});i(o,Jc(o).length),n(a.files),requestAnimationFrame(()=>{s.current?.focus(Jc(o).length)}),await c,await b()},T=e=>{m(t=>{let n=zr(t.filter(e=>e.scope===a).map(e=>e.prompt),e,D);return[...t.filter(e=>e.scope!==a),...n.map(e=>({prompt:e,scope:a}))]})};return{editQueuedPrompt:w,editingId:v,moveQueuedPrompt:async(e,n)=>{if(l===void 0)return;let i=h.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:D()}),await b())},onSteerAccepted:T,queueError:f.error,queuedPrompts:y,removeQueuedPrompt:C,saveQueuedSubmission:S,sendQueuedPrompt:async(n,i)=>{let a=h.findIndex(e=>e.id===n.id),o=h.findIndex(e=>e.status===`editing`);if(n.status!==`queued`||l===void 0||o>=0&&a>=o)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 C(n.id);return}let s=await t.startQueuedSubmission(r,l,n.id,{idempotencyKey:D()});T({files:n.files,id:n.id,skills:n.skills,text:n.text,turnId:s.turn.id,userMessageIds:[]}),await b()}}}function Sl({projectToolsEnabled:e=!0}={}){let t=e=>s.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 Cl(e,t,n){return t===void 0?{available:!1,reason:s.t(`promptCommand.availability.notReady`,{ns:`workbench`})}:e.action!==`initialize`&&e.action!==`goal`&&e.action!==`plan`&&e.action!==`review`&&!n?{available:!1,reason:s.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===`goal`?t.goals.update&&t.turns.start:e.action===`plan`?t.turns.start:t.tasks.fork)?{available:!0}:{available:!1,reason:s.t(`promptCommand.availability.unsupported`,{ns:`workbench`})}}function wl(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 Tl(e,t){return wl(e,t,`/`)}function El(e,t){return wl(e,t,`@`)}function Dl(e,t){let n=t.trim().toLocaleLowerCase();return n===``?e:e.filter(e=>[e.label,...e.keywords].some(e=>e.toLocaleLowerCase().includes(n)))}function Ol(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 kl(e,t,n){return n===0?0:(e+t+n)%n}function Al({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:ee,commandAttempts:M,isCurrentScope:N,setIsSubmitting:P,setMutationError:F,setPendingTaskState:I,setSubmittedTurnState:L}=h,R=e=>{requestAnimationFrame(()=>{A.current?.focus(e)})},z=t=>{let n=Cl(t,e,d!==void 0);return n.available&&j===`running`?{available:!1,reason:c(`composer.taskRunning`)}:n},B=async e=>{let r=S;if(z(e).available){if(e.action===`plan`||e.action===`goal`){let t=m;if(t===void 0)return;let n=A.current?.getContent()??y;b(Gc(n,t),t.start),O({mode:e.action,scope:S}),p(),R(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 ee.run(async()=>{e.action===`compact`&&n(),P(!0),F(null);let o=vc(M.current.get(e.action),`${e.action}:${d}`);M.current.set(e.action,o);try{e.action===`compact`?(await t.compactTask(a,d,{idempotencyKey:o.key}),N(r)&&V(c(`composer.compacting`))):i((await t.forkTask(a,d,{},{idempotencyKey:o.key})).task),N(r)&&M.current.delete(e.action)}catch(e){N(r)&&F(e instanceof Error?e:Error(`Task command failed`))}finally{N(r)&&P(!1)}})}},H=e=>ee.run(async()=>{let o=S;n(),p(),P(!0),F(null);let s=vc(M.current.get(`review`),JSON.stringify({target:e,taskId:d??a}));M.current.set(`review`,s);try{let n=await Dc(t,{idempotencyKey:s.key,onTaskCreated(e){N(o)&&(I({scope:o,task:e}),r?.(e))},projectId:a,target:e,...d===void 0?{}:{taskId:d}});if(N(o)&&(M.current.delete(`review`),L({scope:o,turnId:n.turn.id}),V(c(`composer.reviewStarted`)),l===void 0)){let e=n.createdTask??v;e!==void 0&&i(e,n.turn)}}catch(e){N(o)&&F(e instanceof Error?e:Error(`Review command failed`))}finally{N(o)&&P(!1)}}),U=e=>{let t=m;if(t===void 0)return;let n=Vc(A.current?.getContent()??y,t,e),r=t.start+`$${e.name}`.length;b(n,r),T(!1),E(``),D(void 0),R(r)};return{executePromptCommand:B,executeReviewTarget:H,getCommandAvailability:z,selectActiveCommandItem:()=>{if(C())return;if(x===`scopes`){u===0?H({type:`uncommitted_changes`}):u===1&&f.length>0&&(w(0),k(`branches`));return}if(x===`branches`){let e=f[u];e!==void 0&&H({branch:e,type:`base_branch`});return}let e=g[u];if(e!==void 0){B(e);return}let t=_[u-g.length];t!==void 0&&U(t)},selectSkill:U}}function jl(e,t){return e===t}function Ml(e,t){let[n,r]=(0,Q.useState)(!1),[i,a]=(0,Q.useState)(null),[o,s]=(0,Q.useState)(),[c,l]=(0,Q.useState)(),u=(0,Q.useRef)(e);u.current=e;let d=(0,Q.useRef)(void 0),f=(0,Q.useRef)(void 0),p=(0,Q.useRef)(void 0),m=(0,Q.useRef)(void 0),h=(0,Q.useRef)(new Map),g=(0,Q.useRef)(new Map),_=(0,Q.useRef)(new Map),v=(0,Q.useMemo)(()=>R(),[e]);(0,Q.useEffect)(()=>{t?.(n)},[n,t]),(0,Q.useEffect)(()=>()=>{t?.(!1)},[t]);let y=(0,Q.useCallback)(e=>jl(u.current,e),[]),b=(0,Q.useCallback)(e=>{a(e),e!==null&&L(e)},[]);return{actionLock:v,commandAttempts:_,interruptAttempt:m,isCurrentScope:y,isSubmitting:n,mutationError:i,pendingTaskState:o,reset:(0,Q.useCallback)(e=>{r(!1),b(null),e&&(s(void 0),l(void 0)),d.current=void 0,f.current=void 0,p.current=void 0,m.current=void 0,h.current.clear(),g.current.clear(),_.current.clear()},[b]),setIsSubmitting:r,setMutationError:b,setPendingTaskState:s,setSubmittedTurnState:l,startTaskAttempt:d,startTurnAttempt:f,steerTurnAttempt:p,submittedTurnState:c,uploadAttempts:g,uploadedAttachments:h}}function Nl(e,t,n,r,i,a){return b({enabled:a,placeholderData:C,queryFn:({signal:a})=>e.searchProjectFiles(t,n,i,r,{signal:a}),queryKey:[`projects`,t,n,`file-search`,r,i],staleTime:3e4})}function Pl(e,t,n,r){e.stopProjectFileSearch(t,n,r).catch(()=>void 0)}function Fl(e,t,n,r,i){let a=(0,Q.useMemo)(()=>({enabled:i,id:D(),projectId:t,rootPath:n}),[i,t,n]).id,[o,s]=(0,Q.useState)({enabled:!1,query:r});(0,Q.useEffect)(()=>{if(!i){s(e=>!e.enabled&&e.query===r?e:{enabled:!1,query:r});return}let e=setTimeout(()=>{s({enabled:!0,query:r})},150);return()=>{clearTimeout(e)}},[i,r]),(0,Q.useEffect)(()=>{if(i)return()=>{Pl(e,t,n,a)}},[e,i,t,n,a]);let c=o.enabled&&o.query===r;return G(Nl(e,t,n,a,o.query,i&&c))}function Il(e,t){let n=new Map(t.map(e=>[e.name,e])),r=[];for(let t=e.turnIds.length-1;t>=0;--t){let i=e.turnIds[t];if(i===void 0)continue;let a=e.itemKeysByTurnId[i]??[];for(let t=a.length-1;t>=0;--t){let i=a[t];Ll(r,i===void 0?void 0:e.getItemByKey(i),n)}}return r}function Ll(e,t,n){if(t?.type!==`message`||t.role!==`user`)return;let r=t.skills??[];if(t.text===``&&r.length===0)return;let i=[];for(let[e,a]of r.entries()){let o=n.get(a.name);i.push(o===void 0?{text:`$${a.name}`,type:`text`}:{skill:o,type:`skill`}),(e<r.length-1||t.text!==``)&&i.push({text:` `,type:`text`})}t.text!==``&&i.push({text:t.text,type:`text`}),e.push(Pc(i))}function Rl(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 zl(e,t,n){let r=Math.max(0,Math.min(t,e.length));if(n===`previous`){let t=e.indexOf(`
|
|
12
|
+
`),e.childNodes.forEach(a)};return e.childNodes.forEach(a),Pc(r)}function il(e){if(e.nodeType===Node.TEXT_NODE)return Qc(e)?0: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`?+!Qc(e):[...e.childNodes].reduce((e,t)=>e+il(t),0)}function al(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+il(t),0);i=!0;return}if(e instanceof Element&&e.contains(t)){e.childNodes.forEach(a);return}r+=il(e)}};return e.childNodes.forEach(a),r}function ol(e){let t=document.getSelection();return al(e,t?.anchorNode??null,t?.anchorOffset??0)??e.dataset.serializedValue?.length??0}function sl(e,t){let n=Math.max(0,t);for(let[t,r]of[...e.childNodes].entries()){let i=il(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 cl(e,t){let[n,r]=sl(e,t),i=document.createRange();i.setStart(n,r),i.collapse(!0);let a=document.getSelection();a?.removeAllRanges(),a?.addRange(i)}function ll(e,t){e.focus(),document.execCommand(`insertText`,!1,t)}function ul(e){e.focus(),document.execCommand(`insertLineBreak`)}var dl=(0,Q.forwardRef)(function({className:e=``,content:t,disabled:n=!1,onChange:r,onClick:i,onKeyDown:a,onPaste:o,placeholder:s,skills:c,scope:l,...u},d){let f=(0,Q.useRef)(null),p=(0,Q.useRef)(null),m=(0,Q.useRef)(null),h=(0,Q.useRef)(t),g=(0,Q.useRef)(c),_=(0,Q.useRef)(new Map),v=(0,Q.useRef)(new Map),y=(0,Q.useRef)(void 0),b=(0,Q.useCallback)(e=>{for(let t of e)t.type===`skill`?_.current.set(t.skill.id,t.skill):t.type===`file`&&v.current.set(Ic(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=rl(e,_.current,v.current),n=Wc(t,g.current),i=ol(e);n!==t&&(nl(e,n,p.current,m.current),cl(e,Math.min(i,Jc(n).length))),h.current=n,e.dataset.empty=String(n.length===0);let a=Jc(n);e.dataset.serializedValue=a,r(n,a,ol(e))},S=(0,Q.useCallback)((e,t)=>{let n=f.current;n!==null&&(b(e),h.current=e,nl(n,e,p.current,m.current),n.dataset.empty=String(e.length===0),n.dataset.serializedValue=Jc(e),t!==void 0&&cl(n,t))},[b]);(0,Q.useImperativeHandle)(d,()=>({focus(e){let t=f.current;t?.focus(),t!==null&&e!==void 0&&cl(t,e)},getContent(){let e=f.current;return e===null?h.current:rl(e,_.current,v.current)},replace:S}),[S]),(0,Q.useLayoutEffect)(()=>{y.current!==l&&(y.current=l,S(t))},[t,S,l]),(0,Q.useLayoutEffect)(()=>{let e=f.current;if(e===null||c.length===0)return;let t=rl(e,_.current,v.current),n=Wc(t,c);if(n===t)return;let i=ol(e);nl(e,n,p.current,m.current),document.activeElement===e&&cl(e,Math.min(i,Jc(n).length)),h.current=n;let a=Jc(n);e.dataset.serializedValue=a,r(n,a,ol(e))},[r,c]);let C=(e,t)=>{let n=[...e.childNodes].slice(0,[...e.childNodes].indexOf(t)).reduce((e,t)=>e+il(t),0),r=t.dataset.promptSkillId,i=t.dataset.promptFilePath,a=t.dataset.promptFileRootId,o=r===void 0?i!==void 0&&a!==void 0?qc(h.current,{path:i,rootId:a}):h.current:Kc(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(),ll(e.currentTarget,e.clipboardData.getData(`text/plain`))))},E=e=>{if(a?.(e),!(e.defaultPrevented||Be(e.nativeEvent)||n)){if(e.key===`End`&&!(e.altKey||e.ctrlKey||e.metaKey||e.shiftKey)){let t=e.currentTarget,n=document.getSelection(),r=Jc(h.current),i=h.current.at(-1),a=i!==void 0&&i.type!==`text`?r.length-Rc(i):void 0,o=ol(t);if(n?.isCollapsed===!0&&a!==void 0&&o<=a&&r.slice(o,a).trim()===``){e.preventDefault(),cl(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(),ze(e)?(ul(e.currentTarget),x()):e.currentTarget.closest(`form`)?.requestSubmit())}};return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Bn,{"aria-hidden":`true`,className:`hidden size-4 shrink-0`,ref:p}),(0,$.jsx)(Z,{"aria-hidden":`true`,className:`hidden size-4 shrink-0`,ref:m}),(0,$.jsx)(`div`,{...u,"aria-disabled":n||void 0,"aria-multiline":`true`,className:`max-h-40 min-h-12 w-full overflow-y-auto whitespace-pre-wrap break-words bg-transparent px-1 py-1 text-sm leading-5 text-foreground outline-none before:pointer-events-none before:text-muted-foreground/60 data-[empty=true]:before:content-[attr(data-placeholder)] ${n?`cursor-not-allowed opacity-60`:``} ${e}`,contentEditable:!n,"data-empty":t.length===0,"data-placeholder":s,"data-prompt-skill-editor":``,onClick:e=>{w(e)||i?.(e)},onCopy:e=>{let t=f.current,n=document.getSelection();if(t===null||n===null||n.rangeCount===0)return;let r=n.getRangeAt(0);if(!t.contains(r.commonAncestorContainer))return;let i=Jc(rl(t,_.current,v.current)),a=al(t,r.startContainer,r.startOffset),o=al(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})]})}),fl=(e,t)=>[`projects`,e,t,`git-status`],pl=(e,t)=>[`projects`,e,t,`git-worktrees`];function ml(e,t,n,r){e.setQueryData([`projects`],e=>Mt(e,r.project)),e.setQueryData(pl(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 hl(e,t,n,r,i,a){if(i.repositoryMode!==`root`||i.branch===a||!i.branches.includes(a))return!1;let o=fl(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 gl(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=fl(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 _l(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 ml(t,n,r,s),await t.invalidateQueries({exact:!0,queryKey:fl(n,r),refetchType:`none`}),s.project}async function vl(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 ml(t,n,r,o),o.project}function yl({client:e,gitStatus:t,isCurrentScope:n,projectId:r,routeScope:i,rootPath:a}){let o=$t(),s=x(),{projects:c}=jn(),l=(0,Q.useRef)(R()),[u,d]=(0,Q.useState)(),[f,p]=(0,Q.useState)(),[m,h]=(0,Q.useState)(),[g,_]=(0,Q.useState)(),[v,y]=(0,Q.useState)(),b=u!==void 0||f!==void 0||m!==void 0||g!==void 0,S=G({enabled:t?.repositoryMode===`root`,queryFn:({signal:t})=>e.listProjectWorktrees(r,a,{signal:t}),queryKey:pl(r,a),staleTime:5e3}).data?.worktrees??[];return(0,Q.useEffect)(()=>{let e=v?.routeScope===i?v.projectId:void 0;e===void 0||!c.some(t=>t.id===e)||o({params:{projectId:e},to:`/p/$projectId`})},[o,c,i,v]),(0,Q.useEffect)(()=>{d(void 0),p(void 0),h(void 0),_(void 0),y(void 0)},[i]),{createBranch:async o=>{let c=i;return t===void 0||b?!1:await l.current.run(async()=>{d(o);try{let n=await gl(e,s,r,a,t,o);return n&&V(),n}catch(e){return L(e),await s.invalidateQueries({exact:!0,queryKey:fl(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 _l(e,s,r,a,t,o);return n===void 0?!1:(V(),y({projectId:n.id,routeScope:c}),!0)}catch(e){return L(e),await s.invalidateQueries({exact:!0,queryKey:pl(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 hl(e,s,r,a,t,o)&&V()}catch(e){L(e),await s.invalidateQueries({exact:!0,queryKey:fl(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 vl(e,s,r,a,S,t);if(n===void 0)return;V(),y({projectId:n.id,routeScope:o})}catch(e){L(e),await s.invalidateQueries({exact:!0,queryKey:pl(r,a)}).catch(()=>void 0)}finally{n(o)&&_(void 0)}})},switchingWorktree:g,worktrees:S}}async function bl(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 xl({activeTurnId:e,client:t,handleAttachmentsChange:n,projectId:r,replacePromptContent:i,routeScope:a,runtime:o,skillEditorRef:s,skills:c,taskId:l}){let u=x(),d=N(r,l??``),f=G({enabled:l!==void 0,queryFn:({signal:e})=>bl(t,r,l??``,e),queryKey:d,staleTime:1/0}),[p,m]=(0,Q.useState)([]),h=(0,Q.useMemo)(()=>l===void 0?[]:(f.data??[]).map(e=>Rr(e,r,l,t.getTaskAttachmentUrl.bind(t),c)),[t,r,f.data,c,l]),g=p.filter(e=>e.scope===a).map(e=>e.prompt),_=new Set(g.map(e=>e.id)),v=h.find(e=>e.status===`editing`)?.id,y=[...h.filter(e=>!_.has(e.id)),...g];(0,Q.useEffect)(()=>{let e=o?.store;if(e!==void 0)return e.subscribe(e=>{m(t=>t.filter(t=>t.scope!==a||t.prompt.status!==`awaiting-response`||!Wr(t.prompt,e)))})},[a,o?.store]);let b=async()=>{await u.invalidateQueries({exact:!0,queryKey:d})},S=async(n,i)=>l===void 0?!1:(v===void 0?await t.addQueuedSubmission(r,l,n,i,{idempotencyKey:D()}):(await t.updateQueuedSubmission(r,l,v,n,`queued`,{idempotencyKey:D()}),e===void 0&&await t.startQueuedSubmission(r,l,v,{idempotencyKey:D()})),await b(),!0),C=async e=>{l!==void 0&&(await t.deleteQueuedSubmission(r,l,e,{idempotencyKey:D()}),await b())},w=async e=>{let a=Gr(e);if(a===void 0)return;let o=Nc(a.text,a.skills);if(l===void 0||e.status!==`queued`)return;let c=t.updateQueuedSubmission(r,l,e.id,{attachments:a.files.flatMap(e=>e.source===`host`?[{id:e.attachment.id}]:[]),skills:a.skills.map(({id:e,name:t})=>({id:e,name:t})),text:a.text,type:`prompt`},`editing`,{idempotencyKey:D()});i(o,Jc(o).length),n(a.files),requestAnimationFrame(()=>{s.current?.focus(Jc(o).length)}),await c,await b()},T=e=>{m(t=>{let n=zr(t.filter(e=>e.scope===a).map(e=>e.prompt),e,D);return[...t.filter(e=>e.scope!==a),...n.map(e=>({prompt:e,scope:a}))]})};return{editQueuedPrompt:w,editingId:v,moveQueuedPrompt:async(e,n)=>{if(l===void 0)return;let i=h.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:D()}),await b())},onSteerAccepted:T,queueError:f.error,queuedPrompts:y,removeQueuedPrompt:C,saveQueuedSubmission:S,sendQueuedPrompt:async(n,i)=>{let a=h.findIndex(e=>e.id===n.id),o=h.findIndex(e=>e.status===`editing`);if(n.status!==`queued`||l===void 0||o>=0&&a>=o)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 C(n.id);return}let s=await t.startQueuedSubmission(r,l,n.id,{idempotencyKey:D()});T({files:n.files,id:n.id,skills:n.skills,text:n.text,turnId:s.turn.id,userMessageIds:[]}),await b()}}}function Sl({projectToolsEnabled:e=!0}={}){let t=e=>s.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 Cl(e,t,n){return t===void 0?{available:!1,reason:s.t(`promptCommand.availability.notReady`,{ns:`workbench`})}:e.action!==`initialize`&&e.action!==`goal`&&e.action!==`plan`&&e.action!==`review`&&!n?{available:!1,reason:s.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===`goal`?t.goals.update&&t.turns.start:e.action===`plan`?t.turns.start:t.tasks.fork)?{available:!0}:{available:!1,reason:s.t(`promptCommand.availability.unsupported`,{ns:`workbench`})}}function wl(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 Tl(e,t){return wl(e,t,`/`)}function El(e,t){return wl(e,t,`@`)}function Dl(e,t){let n=t.trim().toLocaleLowerCase();return n===``?e:e.filter(e=>[e.label,...e.keywords].some(e=>e.toLocaleLowerCase().includes(n)))}function Ol(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 kl(e,t,n){return n===0?0:(e+t+n)%n}function Al({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:ee,commandAttempts:M,isCurrentScope:N,setIsSubmitting:P,setMutationError:F,setPendingTaskState:I,setSubmittedTurnState:L}=h,R=e=>{requestAnimationFrame(()=>{A.current?.focus(e)})},z=t=>{let n=Cl(t,e,d!==void 0);return n.available&&j===`running`?{available:!1,reason:c(`composer.taskRunning`)}:n},B=async e=>{let r=S;if(z(e).available){if(e.action===`plan`||e.action===`goal`){let t=m;if(t===void 0)return;let n=A.current?.getContent()??y;b(Gc(n,t),t.start),O({mode:e.action,scope:S}),p(),R(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 ee.run(async()=>{e.action===`compact`&&n(),P(!0),F(null);let o=vc(M.current.get(e.action),`${e.action}:${d}`);M.current.set(e.action,o);try{e.action===`compact`?(await t.compactTask(a,d,{idempotencyKey:o.key}),N(r)&&V(c(`composer.compacting`))):i((await t.forkTask(a,d,{},{idempotencyKey:o.key})).task),N(r)&&M.current.delete(e.action)}catch(e){N(r)&&F(e instanceof Error?e:Error(`Task command failed`))}finally{N(r)&&P(!1)}})}},H=e=>ee.run(async()=>{let o=S;n(),p(),P(!0),F(null);let s=vc(M.current.get(`review`),JSON.stringify({target:e,taskId:d??a}));M.current.set(`review`,s);try{let n=await Dc(t,{idempotencyKey:s.key,onTaskCreated(e){N(o)&&(I({scope:o,task:e}),r?.(e))},projectId:a,target:e,...d===void 0?{}:{taskId:d}});if(N(o)&&(M.current.delete(`review`),L({scope:o,turnId:n.turn.id}),V(c(`composer.reviewStarted`)),l===void 0)){let e=n.createdTask??v;e!==void 0&&i(e,n.turn)}}catch(e){N(o)&&F(e instanceof Error?e:Error(`Review command failed`))}finally{N(o)&&P(!1)}}),U=e=>{let t=m;if(t===void 0)return;let n=Vc(A.current?.getContent()??y,t,e),r=t.start+`$${e.name}`.length;b(n,r),T(!1),E(``),D(void 0),R(r)};return{executePromptCommand:B,executeReviewTarget:H,getCommandAvailability:z,selectActiveCommandItem:()=>{if(C())return;if(x===`scopes`){u===0?H({type:`uncommitted_changes`}):u===1&&f.length>0&&(w(0),k(`branches`));return}if(x===`branches`){let e=f[u];e!==void 0&&H({branch:e,type:`base_branch`});return}let e=g[u];if(e!==void 0){B(e);return}let t=_[u-g.length];t!==void 0&&U(t)},selectSkill:U}}function jl(e,t){return e===t}function Ml(e,t){let[n,r]=(0,Q.useState)(!1),[i,a]=(0,Q.useState)(null),[o,s]=(0,Q.useState)(),[c,l]=(0,Q.useState)(),u=(0,Q.useRef)(e);u.current=e;let d=(0,Q.useRef)(void 0),f=(0,Q.useRef)(void 0),p=(0,Q.useRef)(void 0),m=(0,Q.useRef)(void 0),h=(0,Q.useRef)(new Map),g=(0,Q.useRef)(new Map),_=(0,Q.useRef)(new Map),v=(0,Q.useMemo)(()=>R(),[e]);(0,Q.useEffect)(()=>{t?.(n)},[n,t]),(0,Q.useEffect)(()=>()=>{t?.(!1)},[t]);let y=(0,Q.useCallback)(e=>jl(u.current,e),[]),b=(0,Q.useCallback)(e=>{a(e),e!==null&&L(e)},[]);return{actionLock:v,commandAttempts:_,interruptAttempt:m,isCurrentScope:y,isSubmitting:n,mutationError:i,pendingTaskState:o,reset:(0,Q.useCallback)(e=>{r(!1),b(null),e&&(s(void 0),l(void 0)),d.current=void 0,f.current=void 0,p.current=void 0,m.current=void 0,h.current.clear(),g.current.clear(),_.current.clear()},[b]),setIsSubmitting:r,setMutationError:b,setPendingTaskState:s,setSubmittedTurnState:l,startTaskAttempt:d,startTurnAttempt:f,steerTurnAttempt:p,submittedTurnState:c,uploadAttempts:g,uploadedAttachments:h}}function Nl(e,t,n,r,i,a){return b({enabled:a,placeholderData:C,queryFn:({signal:a})=>e.searchProjectFiles(t,n,i,r,{signal:a}),queryKey:[`projects`,t,n,`file-search`,r,i],staleTime:3e4})}function Pl(e,t,n,r){e.stopProjectFileSearch(t,n,r).catch(()=>void 0)}function Fl(e,t,n,r,i){let a=(0,Q.useMemo)(()=>({enabled:i,id:D(),projectId:t,rootPath:n}),[i,t,n]).id,[o,s]=(0,Q.useState)({enabled:!1,query:r});(0,Q.useEffect)(()=>{if(!i){s(e=>!e.enabled&&e.query===r?e:{enabled:!1,query:r});return}let e=setTimeout(()=>{s({enabled:!0,query:r})},150);return()=>{clearTimeout(e)}},[i,r]),(0,Q.useEffect)(()=>{if(i)return()=>{Pl(e,t,n,a)}},[e,i,t,n,a]);let c=o.enabled&&o.query===r;return G(Nl(e,t,n,a,o.query,i&&c))}function Il(e,t){let n=new Map(t.map(e=>[e.name,e])),r=[];for(let t=e.turnIds.length-1;t>=0;--t){let i=e.turnIds[t];if(i===void 0)continue;let a=e.itemKeysByTurnId[i]??[];for(let t=a.length-1;t>=0;--t){let i=a[t];Ll(r,i===void 0?void 0:e.getItemByKey(i),n)}}return r}function Ll(e,t,n){if(t?.type!==`message`||t.role!==`user`)return;let r=t.skills??[];if(t.text===``&&r.length===0)return;let i=[];for(let[e,a]of r.entries()){let o=n.get(a.name);i.push(o===void 0?{text:`$${a.name}`,type:`text`}:{skill:o,type:`skill`}),(e<r.length-1||t.text!==``)&&i.push({text:` `,type:`text`})}t.text!==``&&i.push({text:t.text,type:`text`}),e.push(Pc(i))}function Rl(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 zl(e,t,n){let r=Math.max(0,Math.min(t,e.length));if(n===`previous`){let t=e.indexOf(`
|
|
13
13
|
`);return t<0||r<=t}return r>=e.lastIndexOf(`
|
|
14
|
-
`)+1}var Bl=[];function Vl({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=$t(a,d),m=_n(),h=m.read(p),[g,_]=(0,Q.useState)(),[v,y]=(0,Q.useState)(0),[b,x]=(0,Q.useState)(h.attachments),[S,C]=(0,Q.useState)(),[w,T]=(0,Q.useState)(!1),[E,D]=(0,Q.useState)(!1),[O,k]=(0,Q.useState)(),[A,j]=(0,Q.useState)(``),[ee,M]=(0,Q.useState)(null),[N,P]=(0,Q.useState)(``),[F,I]=(0,Q.useState)(),[L,R]=(0,Q.useState)(h.content),[z,B]=(0,Q.useState)(null),[V,H]=(0,Q.useState)(),U=Ml(f,i),{isSubmitting:W,mutationError:G,pendingTaskState:K,reset:q,setIsSubmitting:J,setMutationError:te,setPendingTaskState:ne,setSubmittedTurnState:Y,submittedTurnState:re}=U,ie=(0,Q.useId)(),ae=(0,Q.useRef)(null),X=(0,Q.useRef)(null),Z=(0,Q.useRef)(h.content),oe=(0,Q.useRef)(f),se=(0,Q.useRef)(p),ce=re?.scope===f?re.turnId:void 0,le=K?.scope===f?K.task:void 0,ue=ce===void 0?void 0:c?.store?.getState().turnsById[ce]?.status,de=c?.activeTurnId??(ce!==void 0&&(ue===void 0||ue===`running`)?ce:void 0),fe=d??le?.id,{canInterrupt:pe,canSubmit:me,canSteer:he}=Sc(e,fe!==void 0),ge=c?.connectionState??`connected`,_e=wc({activeTurnId:de,connectionState:ge,isSubmitting:W,mutationFailed:G!==null||c?.error!==null}),ve=Yc(L),ye=g?.scope===f?g.settings:l,be=V?.scope===f?V.mode:void 0,xe=r.find(e=>e.id===ye.model)??r.find(e=>e.isDefault)??r[0],Se=yc(xe,ye.reasoningEffort),Ce=c?.metadata?.contextUsage,we=(0,Q.useMemo)(()=>c?.store===void 0?[]:Il(c.store.getState(),u),[c,u]),Te=b.length,{attachmentsDisabled:Ee,draftInputDisabled:De,turnControlsDisabled:Oe}=Tc(_e),ke=Fl(t,a,o,A,E&&s&&!Oe),Ae=ke.data?.data??Bl,je=Ol(e?.skills.use===!0?u:[],N),Me=Dl(Sl({projectToolsEnabled:s}),N),Ne=n?.baseBranches??[],Pe=E?Ae.length:ee===`scopes`?2:ee===`branches`?Ne.length:je.length+Me.length,Fe=!w&&!E||Pe===0?void 0:`${ie}-item-${String(v)}`,Ie=(0,Q.useCallback)(e=>{x(e),m.update(p,t=>({...t,attachments:e}))},[m,p]),Le=(0,Q.useCallback)(()=>{T(!1),P(``),I(void 0),M(null)},[]),Re=(0,Q.useCallback)(()=>{D(!1),k(void 0),j(``)},[]),ze=(0,Q.useCallback)((e,t)=>{R(e),m.update(p,t=>({...t,content:e})),X.current?.replace(e,t)},[m,p]),Be=(0,Q.useCallback)(e=>{let t=Rl(z,e,we.length);if(t===null&&z===null)return!1;z===null&&(Z.current=X.current?.getContent()??L);let n=t===null?Z.current:we[t];return n===void 0?!1:(B(t),ze(n,Jc(n).length),!0)},[L,we,z,ze]),Ve=(0,Q.useCallback)(e=>{if(O===void 0)return;let t=Hc(X.current?.getContent()??L,O,e),n=O.start+Lc(e).length;ze(t,n),Re(),requestAnimationFrame(()=>{X.current?.focus(n)})},[Re,O,L,ze]),He=(0,Q.useCallback)(e=>{let t=Uc(X.current?.getContent()??L,e),n=Jc(t).length;Le(),Re(),B(null),ze(t,n),requestAnimationFrame(()=>{X.current?.focus(n)})},[Le,Re,L,ze]),Ue=(0,Q.useCallback)(()=>{if(!E)return!1;let e=Ae[v];return e!==void 0&&Ve(e),!0},[v,E,Ae,Ve]),We=(0,Q.useCallback)((e,t,n)=>{R(e),B(null),m.update(p,t=>({...t,content:e}));let r=El(t,n);if(s&&r!==null&&Bc(e,r)){y(0),T(!1),P(``),I(void 0),M(null),D(!0),k(r),j(r.query);return}Re();let i=Tl(t,n);if(i===null){T(!1),M(null),P(``),I(void 0);return}y(0),T(!0),M(null),P(i.query),I(i)},[Re,m,p,s]),Ge=(0,Q.useCallback)(()=>{R([]),B(null),Z.current=[],x([]),X.current?.replace([]),m.clear(p)},[m,p]);return(0,Q.useLayoutEffect)(()=>{if(oe.current===f)return;oe.current=f;let e=se.current!==p;if(e){se.current=p;let e=m.read(p);R(e.content),B(null),Z.current=e.content,x(e.attachments),C(void 0),X.current?.replace(e.content),_(void 0),H(void 0),y(0),T(!1),D(!1),k(void 0),j(``),M(null),P(``),I(void 0)}q(e)},[m,p,q,f]),{activeCommandIndex:v,activeCommandItemId:Fe,activeSettings:ye,activeTaskId:fe,activeTurnId:de,attachmentCount:Te,attachmentPickerKind:S,attachments:b,attachmentsDisabled:Ee,baseBranches:Ne,canInterrupt:pe,canSteer:he,canSubmit:me,clearComposerInput:Ge,closeCommandMenu:Le,closeFileMenu:Re,commandMenuId:ie,commandMenuOpen:w,commandSlashCommand:F,commandSurfaceRef:ae,composerController:U,composerDraftStore:m,composerScope:p,connectionState:ge,contextUsage:Ce,draftInputDisabled:De,filteredCommands:Me,filteredSkills:je,fileMenuOpen:E,fileMention:O,fileQuery:A,fileSearchError:ke.error,fileSearchPending:ke.isPending,fileSearchResults:Ae,handleAttachmentsChange:Ie,handlePromptChange:We,isSubmitting:W,menuItemCount:Pe,mutationError:G,navigatePromptHistory:Be,pendingTask:le,composerMode:be,promptContent:L,promptSubmission:ve,referenceProjectPath:He,replacePromptContent:ze,reviewMenuMode:ee,routeScope:f,selectedModel:xe,selectedReasoningEffort:Se,selectActiveFileReference:Ue,selectFileReference:Ve,setActiveCommandIndex:y,setAttachmentPickerKind:C,setAttachments:x,setCommandMenuOpen:T,setFileMenuOpen:D,setFileMention:k,setFileQuery:j,setCommandQuery:P,setCommandSlashCommand:I,setIsSubmitting:J,setMutationError:te,setPendingTaskState:ne,setComposerModeState:H,setPromptContent:R,setReviewMenuMode:M,setSettingsOverride:_,setSubmittedTurnState:Y,skillEditorRef:X,state:_e,turnControlsDisabled:Oe}}function Hl(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 Ul(e,t){return e.source===`host`?e.attachment:t(e)}function Wl({activeUserMessageIds:e,activeSettings:t,activeTaskId:n,activeTurnId:r,canSteer:i,canSubmit:a,clearComposerInput:o,client:s,controller:c,followUpBehavior:l,editingQueuedSubmission:u,fastMode:d,onDirectSubmission:f,onRequestNotificationPermission:p,onTaskCreated:m,onTaskStarted:h,onTurnStarted:g,pendingTask:_,composerMode:v,onGoalStarted:y,onSteerAccepted:b,projectId:x,promptContent:S,routeScope:C,saveQueuedSubmission:w,selectedModel:T,selectedReasoningEffort:E,skillEditorRef:O,state:k,taskId:A,t:j,turnControlsDisabled:ee}){let{actionLock:M,isCurrentScope:N,setIsSubmitting:P,setMutationError:F,setPendingTaskState:I,setSubmittedTurnState:L,startTaskAttempt:R,startTurnAttempt:z,steerTurnAttempt:B,uploadAttempts:V,uploadedAttachments:H}=c,U=async(c,M,U={})=>{let W=C,G=M===void 0?Yc(O.current?.getContent()??S):void 0,K=(G?.text??c.text).trim(),q=U.composerMode===null?void 0:U.composerMode??v;if(q===`goal`&&(K.length===0||K.length>4e3))return F(Error(j(K.length===0?`composer.goalObjectiveRequired`:`composer.goalObjectiveTooLong`))),!1;let J=M??G?.skills??[];if(q===`goal`&&(c.files.length>0||J.length>0))return F(Error(j(`composer.goalStructuredInputUnsupported`))),!1;let te=K!==``||c.files.length>0||J.length>0,ne=U.forceAction??(u?`queue`:Cc(k,te,l,i));if(ne===`blocked`||ne===`interrupt`||!te||T===void 0||E===void 0||ee||ne!==`steer`&&!a||ne===`steer`&&(!i||n===void 0||r===void 0))return!1;ne!==`queue`&&U.requestTimelineScroll!==!1&&f?.(),p(),P(!0),F(null);let Y,re;try{re=await Promise.all(c.files.map(e=>Ul(e,async e=>{let t=H.current.get(e.id);if(t!==void 0)return t;let n=V.current.get(e.id)??D();V.current.set(e.id,n);let r=await s.uploadAttachment(x,{content:e.file,kind:e.kind,name:e.name},{idempotencyKey:n});return N(W)&&H.current.set(e.id,r.attachment),r.attachment}))),Y={attachments:re.map(e=>({id:e.id})),skills:J.map(e=>({id:e.id,name:e.name})),text:K,type:`prompt`}}catch(e){return N(W)&&(F(e instanceof Error?e:Error(j(`composer.attachmentUploadFailed`))),P(!1)),!1}if(ne===`queue`)try{let e=await w(Y,D());return e&&N(W)&&(o(),H.current.clear(),V.current.clear()),e}catch(e){return N(W)&&F(e instanceof Error?e:Error(`Prompt queueing failed`)),!1}finally{N(W)&&P(!1)}if(ne===`steer`){if(n===void 0||r===void 0)return!1;let t=vc(B.current,JSON.stringify({input:Y,taskId:n,turnId:r}));B.current=t;try{return await kc(s,x,n,r,Y,t.key),N(W)&&(b({files:c.files,...U.queuedPromptId===void 0?{}:{id:U.queuedPromptId},skills:J,text:K,turnId:r,userMessageIds:e}),U.clearInputOnSuccess!==!1&&o(),B.current=void 0,H.current.clear(),V.current.clear()),!0}catch(e){return N(W)&&F(e instanceof Error?e:Error(`Prompt steering failed`)),!1}finally{N(W)&&P(!1)}}let ie=Hl(t,T.id,E,q,d),ae=vc(z.current,JSON.stringify({input:Y,options:ie}));z.current=ae;let X=n===void 0?vc(R.current,x):void 0;R.current=X;try{let e=await Ec(s,{idempotencyKeys:{...X===void 0?{}:{startTask:X.key},startTurn:ae.key},input:Y,onTaskCreated(e){N(W)&&(I({scope:W,task:e}),R.current=void 0,m?.(e))},projectId:x,...n===void 0?{}:{taskId:n},turnOptions:ie});if(N(W)&&(U.clearInputOnSuccess!==!1&&o(),ie.goalMode===!0&&y(),L({scope:W,turnId:e.turn.id})),g?.(e.turn,Y,re),N(W)&&(z.current=void 0,H.current.clear(),V.current.clear()),A===void 0){let t=e.createdTask??_;t!==void 0&&h(t,e.turn,Y,ie,re,e.checkpoint)}return!0}catch(e){return N(W)&&F(e instanceof Error?e:Error(`Prompt submission failed`)),!1}finally{N(W)&&P(!1)}};return(e,t,n={})=>M.run(()=>U(e,t,n)).then(e=>e??!1)}var Gl=(0,Q.createContext)(null);function Kl(){let e=(0,Q.useContext)(Gl);if(e===null)throw Error(`Context components must be used within Context`);return e}function ql({children:e,className:t=``,maxTokens:n,usedTokens:r,...i}){let a=(0,Q.useMemo)(()=>({maxTokens:n,usedTokens:r}),[n,r]);return(0,$.jsx)(Gl.Provider,{value:a,children:(0,$.jsx)(`span`,{className:`inline-flex shrink-0 ${t}`,...i,children:e})})}function Jl(e){let{maxTokens:t,usedTokens:n}=e;if(t==null||t<=0||n===void 0)return{accessibleLabel:s.t(`agentComponents.contextUnknown`,{ns:`conversation`}),percentage:null,summary:s.t(`agentComponents.contextWaiting`,{ns:`conversation`}),tokenCount:n===void 0?null:`${Yl(n)} tokens`};let r=Math.min(100,Math.max(0,Math.round(n/t*100)));return{accessibleLabel:s.t(`agentComponents.contextPercent`,{ns:`conversation`,percentage:r}),percentage:r,summary:s.t(`agentComponents.contextSummary`,{ns:`conversation`,percentage:r}),tokenCount:`${Yl(n)} / ${Yl(t)} tokens`}}function Yl(e){return new Intl.NumberFormat(`en-US`,{maximumFractionDigits:1,notation:`compact`}).format(e)}var Xl=7,Zl=2*Math.PI*Xl;function Ql(){a(`conversation`);let e=Zl*(1-(Jl(Kl()).percentage??0)/100);return(0,$.jsxs)(`svg`,{className:`size-4.5 -rotate-90`,viewBox:`0 0 20 20`,"aria-hidden":`true`,children:[(0,$.jsx)(`circle`,{cx:`10`,cy:`10`,fill:`none`,r:Xl,stroke:`currentColor`,strokeOpacity:`0.24`,strokeWidth:`3`}),(0,$.jsx)(`circle`,{cx:`10`,cy:`10`,fill:`none`,r:Xl,stroke:`currentColor`,strokeDasharray:Zl,strokeDashoffset:e,strokeLinecap:`round`,strokeWidth:`3`})]})}function $l({children:e,className:t=``,...n}){return(0,$.jsx)(`span`,{className:`flex flex-col gap-0.5 px-0.5 py-0.5 tabular-nums ${t}`,...n,children:e})}function eu({children:e,className:t=``,...n}){a(`conversation`);let r=Jl(Kl());return(0,$.jsx)(`span`,{className:`contents ${t}`,...n,children:e??(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`span`,{className:`text-body-small font-medium`,children:r.summary}),r.tokenCount===null?null:(0,$.jsx)(`span`,{className:`text-label text-muted-foreground`,children:r.tokenCount})]})})}function tu({children:e,className:t=``,...n}){a(`conversation`);let r=Jl(Kl());return(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{...n,"aria-label":r.accessibleLabel,className:`tabular-nums ${t}`,size:`toolbar`,type:n.type??`button`,variant:`ghost`,children:e??(0,$.jsxs)($.Fragment,{children:[r.percentage===null?null:(0,$.jsxs)(`span`,{children:[r.percentage,`%`]}),(0,$.jsx)(Ql,{})]})})}),(0,$.jsx)(A,{className:`bg-raised text-foreground`,children:(0,$.jsx)($l,{children:(0,$.jsx)(eu,{})})})]})}function nu({isPending:e,onClose:t,onCreate:n}){let{t:r}=a(`workbench`),[i,o]=(0,Q.useState)(``),s=(0,Q.useRef)(!1),c=i.trim();return(0,$.jsx)(Mn,{onOpenChange:n=>{!n&&!e&&!s.current&&t()},open:!0,children:(0,$.jsx)(ht,{"aria-labelledby":`create-branch-title`,className:`max-w-96 p-4`,onEscapeKeyDown:t=>{(e||s.current)&&t.preventDefault()},onInteractOutside:t=>{(e||s.current)&&t.preventDefault()},children:(0,$.jsxs)(`form`,{className:`grid gap-4`,onSubmit:e=>{e.preventDefault(),!(c.length===0||s.current)&&(s.current=!0,n(c).then(e=>{s.current=!1,e&&t()}))},children:[(0,$.jsxs)(Ut,{children:[(0,$.jsx)(qt,{id:`create-branch-title`,children:r(`composer.createBranch`)}),(0,$.jsx)(Gt,{children:r(`composer.createBranchDescription`)})]}),(0,$.jsxs)(`label`,{className:`grid gap-1.5 text-label font-medium text-foreground`,htmlFor:`create-branch-name`,children:[r(`composer.branchName`),(0,$.jsx)(he,{autoCapitalize:`none`,autoComplete:`off`,autoCorrect:`off`,autoFocus:!0,disabled:e,id:`create-branch-name`,maxLength:1024,name:`branch`,onChange:e=>{o(e.currentTarget.value)},placeholder:`feat/my-feature`,spellCheck:!1,value:i,variant:`outline`})]}),(0,$.jsxs)(wt,{children:[(0,$.jsx)(g,{disabled:e,onClick:t,type:`button`,variant:`ghost`,children:r(`actions.cancel`)}),(0,$.jsx)(g,{disabled:e||c.length===0,type:`submit`,children:r(`composer.createAndSwitchBranch`)})]})]})})})}function ru({isPending:e,onClose:t,onCreate:n}){let{t:r}=a(`workbench`),[i,o]=(0,Q.useState)(``),s=(0,Q.useRef)(!1),c=i.trim();return(0,$.jsx)(Mn,{onOpenChange:n=>{!n&&!e&&!s.current&&t()},open:!0,children:(0,$.jsx)(ht,{"aria-labelledby":`create-worktree-title`,className:`max-w-96 p-4`,onEscapeKeyDown:t=>{(e||s.current)&&t.preventDefault()},onInteractOutside:t=>{(e||s.current)&&t.preventDefault()},children:(0,$.jsxs)(`form`,{className:`grid gap-4`,onSubmit:e=>{e.preventDefault(),!(c.length===0||s.current)&&(s.current=!0,n(c).then(e=>{s.current=!1,e&&t()}))},children:[(0,$.jsxs)(Ut,{children:[(0,$.jsx)(qt,{id:`create-worktree-title`,children:r(`composer.createWorktree`)}),(0,$.jsx)(Gt,{children:r(`composer.createWorktreeDescription`)})]}),(0,$.jsxs)(`label`,{className:`grid gap-1.5 text-label font-medium text-foreground`,htmlFor:`create-worktree-branch`,children:[r(`composer.branchName`),(0,$.jsx)(he,{autoCapitalize:`none`,autoComplete:`off`,autoCorrect:`off`,autoFocus:!0,disabled:e,id:`create-worktree-branch`,maxLength:1024,name:`branch`,onChange:e=>{o(e.currentTarget.value)},placeholder:`feat/my-feature`,spellCheck:!1,value:i,variant:`outline`})]}),(0,$.jsxs)(wt,{children:[(0,$.jsx)(g,{disabled:e,onClick:t,type:`button`,variant:`ghost`,children:r(`actions.cancel`)}),(0,$.jsx)(g,{disabled:e||c.length===0,type:`submit`,children:r(`composer.createAndSwitchWorktree`)})]})]})})})}function iu(e,t,n){return{branches:e.filter(e=>e!==t),worktrees:n.filter(e=>!e.current)}}function au({creatingBranch:e,creatingWorktree:t,gitStatus:n,onBranchChange:r,onBranchCreate:i,onWorktreeChange:o,onWorktreeCreate:s,switchingBranch:c,switchingWorktree:l,worktrees:u}){let{t:d}=a(`workbench`),[f,p]=(0,Q.useState)(!1),[m,h]=(0,Q.useState)(!1);if(n===void 0||n.repositoryMode===`none`)return null;let _=n.branch,v=n.repositoryMode===`root`&&_!==null,y=_??d(`composer.gitBranchMissing`),b=c!==void 0||e!==void 0||l!==void 0||t!==void 0,x=iu(n.branches,_,u);return v?(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(An,{children:[(0,$.jsx)(pt,{asChild:!0,children:(0,$.jsxs)(g,{"aria-label":d(`composer.branchSwitcherLabel`,{branch:_}),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:b,type:`button`,variant:`ghost`,children:[b?(0,$.jsx)(K,{"aria-hidden":`true`,className:`size-3 shrink-0 animate-spin`,"data-icon":`inline-start`}):(0,$.jsx)(tr,{"aria-hidden":`true`,className:`size-3 shrink-0`,"data-icon":`inline-start`}),(0,$.jsx)(`span`,{className:`truncate`,children:y}),(0,$.jsx)(Wn,{"aria-hidden":`true`,className:`size-3 shrink-0`,"data-icon":`inline-end`})]})}),(0,$.jsxs)(tn,{align:`start`,className:`max-h-72 w-72 max-w-[calc(100vw-1rem)] overflow-y-auto`,side:`top`,children:[x.branches.length===0?null:(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(On,{children:(0,$.jsx)(_t,{children:d(`composer.branchSwitcherMenu`)})}),(0,$.jsx)(En,{onValueChange:r,children:x.branches.map(e=>(0,$.jsx)(Vt,{disabled:b,title:e,value:e,children:(0,$.jsx)(`span`,{className:`truncate`,children:e})},e))}),(0,$.jsx)(bt,{})]}),x.worktrees.length===0?null:(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(On,{children:[(0,$.jsx)(_t,{children:d(`composer.worktreeSwitcherMenu`)}),x.worktrees.map(e=>(0,$.jsxs)(zt,{disabled:b,onSelect:()=>{o(e.path)},title:e.path,children:[(0,$.jsx)(J,{"aria-hidden":`true`,className:`size-3.5`}),(0,$.jsxs)(`span`,{className:`grid min-w-0 flex-1`,children:[(0,$.jsx)(`span`,{className:`truncate`,children:e.branch??d(`composer.detachedHead`)}),(0,$.jsx)(`span`,{className:`truncate text-caption text-muted-foreground`,children:e.path})]})]},e.path))]}),(0,$.jsx)(bt,{})]}),(0,$.jsxs)(zt,{disabled:b,onSelect:()=>{p(!0)},children:[(0,$.jsx)(B,{"aria-hidden":`true`,className:`size-3.5 text-muted-foreground`}),d(`composer.createBranch`)]}),(0,$.jsxs)(zt,{disabled:b,onSelect:()=>{h(!0)},children:[(0,$.jsx)(J,{"aria-hidden":`true`,className:`size-3.5 text-muted-foreground`}),d(`composer.createWorktree`)]})]})]}),f?(0,$.jsx)(nu,{isPending:e!==void 0,onClose:()=>{p(!1)},onCreate:i}):null,m?(0,$.jsx)(ru,{isPending:t!==void 0,onClose:()=>{h(!1)},onCreate:s}):null]}):(0,$.jsxs)(`span`,{className:`inline-flex min-w-0 shrink items-center gap-1`,children:[(0,$.jsx)(tr,{"aria-hidden":`true`,className:`size-3 shrink-0`}),(0,$.jsx)(`span`,{className:`truncate`,children:y})]})}var ou=`(max-width: 760px)`;function su(){let[e,t]=(0,Q.useState)(()=>typeof window>`u`?!1:window.matchMedia(ou).matches);return(0,Q.useEffect)(()=>{let e=window.matchMedia(ou),n=()=>{t(e.matches)};return n(),e.addEventListener(`change`,n),()=>{e.removeEventListener(`change`,n)}},[]),e}function cu({accessibleLabel:e,disabled:t,effortLabel:n,modelLabel:r,...i}){return(0,$.jsxs)(g,{...i,"aria-label":e,className:`min-w-0 max-w-44 max-workbench:gap-0.5 max-workbench:px-1`,"data-slot":`composer-model-selector`,disabled:t,size:`sm`,type:`button`,variant:`ghost`,children:[(0,$.jsx)(`span`,{className:`min-w-0 truncate`,children:r}),n===``?null:(0,$.jsx)(`span`,{className:`shrink-0 text-muted-foreground`,children:n}),(0,$.jsx)(W,{"aria-hidden":`true`,className:`size-3 shrink-0 text-muted-foreground`})]})}function lu(e,t,n){let r=e.find(e=>e.id===n),i=yc(r,t.reasoningEffort);if(!(r===void 0||i===void 0))return{...t,model:r.id,reasoningEffort:i}}function uu(e,t,n){if(e?.supportedReasoningEfforts.some(e=>e.id===n))return{...t,reasoningEffort:n}}function du({activeSettings:e,disabled:t,models:n,modelsPending:r,onSettingsChange:i,selectedModel:o,selectedReasoningEffort:s}){let{t:c}=a([`workbench`,`settings`]),l=su(),[u,d]=(0,Q.useState)(!1),f=o?.displayName??c(r?`composer.modelLoading`:`composer.noModels`),p=s===void 0?``:c(`settings:effort.${s}`,{defaultValue:s}),m=t||r||o===void 0,h=c(`composer.modelAndReasoningSelect`,{effort:p,model:f}),_=t=>{let r=lu(n,e,t);r!==void 0&&i(r,`model`)},v=t=>{let n=uu(o,e,t);n!==void 0&&i(n,`reasoningEffort`)};return l?(0,$.jsxs)(Mn,{onOpenChange:d,open:u,children:[(0,$.jsx)(St,{asChild:!0,children:(0,$.jsx)(cu,{accessibleLabel:h,disabled:m,effortLabel:p,modelLabel:f})}),(0,$.jsxs)(ht,{className:`w-[calc(100%-1rem)] max-w-xs gap-2 p-3`,children:[(0,$.jsx)(qt,{className:`text-body`,children:c(`composer.modelAndReasoningMenu`)}),(0,$.jsx)(Gt,{className:`sr-only`,children:h}),(0,$.jsxs)(`div`,{"aria-label":c(`composer.modelSelect`),className:`grid gap-0.5`,role:`radiogroup`,children:[(0,$.jsx)(`div`,{className:`px-2 py-1 text-label font-medium text-muted-foreground`,children:c(`composer.model`)}),n.map(e=>(0,$.jsxs)(g,{"aria-checked":e.id===o?.id,className:`w-full`,contentAlign:`start`,onClick:()=>{_(e.id),d(!1)},role:`radio`,size:`sm`,type:`button`,variant:`ghost`,children:[(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,title:e.displayName,children:e.displayName}),e.id===o?.id?(0,$.jsx)(X,{"aria-hidden":`true`,className:`size-3.5`}):null]},e.id))]}),(0,$.jsxs)(`div`,{"aria-label":c(`composer.reasonEffortSelect`),className:`grid gap-0.5 border-t border-separator pt-1.5`,role:`radiogroup`,children:[(0,$.jsx)(`div`,{className:`px-2 py-1 text-label font-medium text-muted-foreground`,children:c(`composer.reasoningEffort`)}),o?.supportedReasoningEfforts.map(e=>{let t=c(`settings:effort.${e.id}`,{defaultValue:e.id});return(0,$.jsxs)(g,{"aria-checked":e.id===s,className:`w-full`,contentAlign:`start`,onClick:()=>{v(e.id),d(!1)},role:`radio`,size:`sm`,type:`button`,variant:`ghost`,children:[(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:t}),e.id===s?(0,$.jsx)(X,{"aria-hidden":`true`,className:`size-3.5`}):null]},e.id)})]})]})]}):(0,$.jsxs)(An,{children:[(0,$.jsx)(pt,{asChild:!0,children:(0,$.jsx)(cu,{accessibleLabel:h,disabled:m,effortLabel:p,modelLabel:f})}),(0,$.jsxs)(tn,{align:`end`,"aria-label":c(`composer.modelAndReasoningMenu`),className:`w-40`,side:`top`,children:[(0,$.jsxs)(yt,{children:[(0,$.jsxs)(mn,{"aria-label":c(`composer.modelSelect`),children:[(0,$.jsx)(`span`,{className:`font-medium`,children:c(`composer.model`)}),(0,$.jsx)(`span`,{className:`ml-auto max-w-28 truncate text-muted-foreground`,children:f})]}),(0,$.jsx)(Nt,{"aria-label":c(`composer.modelSelect`),className:`w-40 max-w-[calc(100vw-1rem)]`,children:(0,$.jsx)(En,{onValueChange:_,...o===void 0?{}:{value:o.id},children:n.map(e=>(0,$.jsx)(Vt,{indicator:`check`,value:e.id,children:(0,$.jsx)(`span`,{className:`min-w-0 truncate`,title:e.displayName,children:e.displayName})},e.id))})})]}),(0,$.jsxs)(yt,{children:[(0,$.jsxs)(mn,{"aria-label":c(`composer.reasonEffortSelect`),children:[(0,$.jsx)(`span`,{className:`font-medium`,children:c(`composer.reasoningEffort`)}),(0,$.jsx)(`span`,{className:`ml-auto truncate text-muted-foreground`,children:p})]}),(0,$.jsx)(Nt,{"aria-label":c(`composer.reasonEffortSelect`),className:`min-w-28 w-28 max-w-[calc(100vw-1rem)]`,children:(0,$.jsx)(En,{onValueChange:v,...s===void 0?{}:{value:s},children:o?.supportedReasoningEfforts.map(e=>(0,$.jsx)(Vt,{indicator:`check`,value:e.id,children:(0,$.jsx)(`span`,{className:`min-w-0 truncate`,children:c(`settings:effort.${e.id}`,{defaultValue:e.id})})},e.id))})})]})]})]})}function fu({disabled:e,onSettingsChange:t,sandboxModeSelectable:n,settings:r}){let{t:i}=a([`workbench`,`settings`]);return(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(Le,{"aria-label":i(`composer.approvalMode`),className:`max-workbench:px-0.5`,disabled:e,onChange:e=>{t(xc(r,e.currentTarget.value),`approvalPolicy`)},value:bc(r),children:[(0,$.jsx)(`option`,{value:`on-request`,children:i(`settings:approval.onRequest`)}),(0,$.jsx)(`option`,{value:`auto-review`,children:i(`settings:approval.autoReview`)}),(0,$.jsx)(`option`,{value:`never`,children:i(`settings:approval.never`)})]}),n?(0,$.jsx)($.Fragment,{children:(0,$.jsxs)(Le,{"aria-label":i(`composer.sandboxMode`),className:`max-workbench:px-0.5`,disabled:e,onChange:e=>{t({...r,sandboxMode:e.currentTarget.value},`sandboxMode`)},value:r.sandboxMode,children:[(0,$.jsx)(`option`,{value:`read-only`,children:i(`settings:sandbox.readOnly`)}),(0,$.jsx)(`option`,{value:`workspace-write`,children:i(`settings:sandbox.workspaceWrite`)}),(0,$.jsx)(`option`,{value:`danger-full-access`,children:i(`settings:sandbox.dangerFullAccess`)})]})}):null]})}function pu(e){return e.split(/[\\/]/u).filter(Boolean).at(-1)??e}function mu({onChange:e,roots:t,value:n}){let{t:r}=a(`workbench`);if(t.length<2)return null;let i=t.find(e=>e.id===n)??t[0];return i===void 0?null:(0,$.jsxs)(Mt,{onValueChange:e,value:n,children:[(0,$.jsxs)(kt,{"aria-label":r(`shell.selectProjectRoot`),className:`min-w-0 max-w-28 shrink border-0 bg-transparent shadow-none hover:bg-control-hover sm:max-w-40`,size:`toolbar`,title:i.path,children:[(0,$.jsx)($n,{"aria-hidden":`true`}),(0,$.jsx)(Lt,{children:pu(i.path)})]}),(0,$.jsx)(Pt,{position:`popper`,children:t.map((e,t)=>(0,$.jsx)(Et,{textValue:e.path,value:e.id,children:(0,$.jsxs)(`span`,{className:`flex min-w-0 flex-col`,children:[(0,$.jsx)(`span`,{className:`truncate`,children:pu(e.path)}),(0,$.jsxs)(`span`,{className:`truncate font-mono text-caption text-muted-foreground`,children:[t===0?`${r(`projectPicker.primaryRoot`)} · `:``,e.path]})]})},e.id))})]})}function hu({action:e}){let t=`size-4 shrink-0 text-brand`;switch(e){case`review`:return(0,$.jsx)(Un,{"aria-hidden":`true`,className:t});case`initialize`:return(0,$.jsx)(Me,{"aria-hidden":`true`,className:t});case`compact`:return(0,$.jsx)(qn,{"aria-hidden":`true`,className:t});case`fork`:return(0,$.jsx)(J,{"aria-hidden":`true`,className:t});case`plan`:return(0,$.jsx)(ir,{"aria-hidden":`true`,className:t});case`goal`:return(0,$.jsx)(gr,{"aria-hidden":`true`,className:t})}}function gu({disabled:e,mode:t,onRemove:n}){let{t:r}=a(`workbench`),i=t===`goal`,o=r(i?`composer.goalMode`:`composer.planMode`),s=r(i?`composer.cancelGoalMode`:`composer.cancelPlanMode`),c=i?gr:ir;return(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsxs)(Ke,{"aria-label":s,className:`group/composer-mode gap-1 px-1.5 text-foreground max-workbench:gap-0.5`,...i?{"data-goal-mode":``}:{"data-plan-mode":``},disabled:e,onClick:n,children:[(0,$.jsx)(c,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-brand`}),(0,$.jsx)(`span`,{className:`max-workbench:hidden`,children:o}),(0,$.jsx)(It,{"aria-hidden":`true`,className:`size-3 shrink-0 opacity-0 transition-opacity group-hover/composer-mode:opacity-100 group-focus-visible/composer-mode:opacity-100`})]})}),(0,$.jsx)(A,{children:s})]})}function _u({goal:e}){let{t}=a(`workbench`);if(e.status===`complete`)return null;let n=t(`composer.goalStatus.${e.status}`);return(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsxs)(`span`,{"aria-label":t(`composer.goalStatusLabel`,{objective:e.objective,status:n}),className:`inline-flex h-8 min-w-0 items-center gap-1 px-1.5 text-body-small text-foreground max-workbench:gap-0.5`,"data-goal-status":e.status,children:[(0,$.jsx)(gr,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-brand`}),(0,$.jsx)(`span`,{className:`max-workbench:hidden`,children:n})]})}),(0,$.jsx)(A,{className:`max-w-72 break-words`,children:e.objective})]})}function vu({disabled:e,enabled:t,onChange:n}){let{t:r}=a(`workbench`),i=r(t?`composer.disableFastMode`:`composer.enableFastMode`);return(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(Ke,{"aria-label":i,"aria-pressed":t,className:t?`text-brand`:`text-muted-foreground`,"data-fast-mode":``,disabled:e,onClick:()=>{n(!t)},children:(0,$.jsx)(br,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,$.jsx)(A,{children:i})]})}function yu(){let{t:e}=a(`workbench`),t=Ne();return t.files.length===0?null:(0,$.jsx)(Ye,{children:(0,$.jsx)(qo,{"aria-label":e(`composer.addedAttachments`),children:t.files.map(e=>(0,$.jsxs)(Jo,{data:e,onRemove:()=>{t.remove(e.id)},children:[(0,$.jsx)(Yo,{}),(0,$.jsx)(Xo,{}),(0,$.jsx)(Zo,{disabled:t.disabled})]},e.id))})})}function bu({props:e}){let{t}=a(`workbench`);return!e.commandMenuOpen||e.turnControlsDisabled?null:(0,$.jsx)(Ve,{"aria-label":t(`composer.commandInput`),className:`absolute inset-x-0 bottom-full z-20 mb-2`,id:e.commandMenuId,children:(0,$.jsx)(Ie,{children:e.reviewMenuMode===`scopes`?(0,$.jsxs)(We,{label:t(`composer.reviewScopeGroup`),children:[(0,$.jsxs)(qe,{active:e.activeCommandIndex===0,id:`${e.commandMenuId}-item-0`,onClick:()=>{e.onExecuteReview({type:`uncommitted_changes`})},children:[(0,$.jsx)(Un,{"aria-hidden":`true`,className:`size-4 shrink-0 text-brand`}),(0,$.jsx)(`span`,{className:`font-medium`,children:t(`composer.reviewUncommitted`)})]}),(0,$.jsxs)(qe,{active:e.activeCommandIndex===1,"aria-description":e.baseBranches.length===0?t(`composer.noBaseBranch`):e.baseBranches[0],disabled:e.baseBranches.length===0,id:`${e.commandMenuId}-item-1`,onClick:e.onOpenReviewBranches,children:[(0,$.jsx)(tr,{"aria-hidden":`true`,className:`size-4 shrink-0 text-brand`}),(0,$.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,$.jsx)(`span`,{className:`font-medium`,children:t(`composer.baseBranchReview`)}),(0,$.jsx)(`span`,{className:`truncate text-caption text-muted-foreground`,children:e.baseBranches[0]??t(`composer.noBaseBranch`)})]})]})]}):e.reviewMenuMode===`branches`?(0,$.jsx)(We,{label:t(`composer.reviewBaseBranchGroup`),children:e.baseBranches.map((t,n)=>(0,$.jsxs)(qe,{active:e.activeCommandIndex===n,id:`${e.commandMenuId}-item-${String(n)}`,onClick:()=>{e.onExecuteReview({branch:t,type:`base_branch`})},children:[(0,$.jsx)(tr,{"aria-hidden":`true`,className:`size-4 shrink-0 text-brand`}),(0,$.jsx)(`span`,{className:`truncate font-medium`,children:t})]},t))}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(We,{label:t(`composer.commandGroup`),children:e.filteredCommands.map((t,n)=>{let r=e.getCommandAvailability(t);return(0,$.jsxs)(qe,{active:n===e.activeCommandIndex,"aria-description":r.reason,disabled:!r.available,id:`${e.commandMenuId}-item-${String(n)}`,onClick:()=>{e.onExecuteCommand(t)},children:[(0,$.jsx)(hu,{action:t.action}),(0,$.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,$.jsx)(`span`,{className:`font-medium`,children:t.label}),(0,$.jsx)(`span`,{className:`text-caption text-muted-foreground`,children:r.reason??t.description})]})]},t.id)})}),e.filteredSkills.length===0?null:(0,$.jsx)(We,{label:`Skills`,children:e.filteredSkills.map((t,n)=>{let r=e.filteredCommands.length+n;return(0,$.jsxs)(qe,{active:r===e.activeCommandIndex,id:`${e.commandMenuId}-item-${String(r)}`,onClick:()=>{e.onSelectSkill(t)},children:[(0,$.jsx)(Qe,{"aria-hidden":`true`,className:`size-4 shrink-0 text-brand`}),(0,$.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,$.jsx)(`span`,{className:`font-medium text-brand`,children:t.displayName}),(0,$.jsxs)(`span`,{className:`block max-w-full truncate text-caption text-muted-foreground`,children:[`/`,t.name,` · `,t.description]})]})]},t.id)})}),e.menuItemCount===0?(0,$.jsx)(Pe,{children:t(`composer.commandNoMatch`)}):null]})})})}function xu(e,t){let n=e.slice(0,Math.max(0,e.length-t.length)).replace(/\/$/u,``);return n===``?`.`:n}function Su({props:e}){let{t}=a(`workbench`);return!e.fileMenuOpen||e.turnControlsDisabled?null:(0,$.jsx)(Ve,{"aria-label":t(`composer.fileSearch`),className:`absolute inset-x-0 bottom-full z-20 mb-2`,id:e.commandMenuId,children:(0,$.jsx)(Ie,{children:e.fileSearchPending?(0,$.jsx)(Pe,{children:t(`composer.fileSearchLoading`)}):e.fileSearchError===null?e.fileSearchResults.length===0?(0,$.jsx)(Pe,{children:t(`composer.fileSearchEmpty`)}):(0,$.jsx)(We,{label:t(`composer.fileSearchGroup`),children:e.fileSearchResults.map((t,n)=>(0,$.jsxs)(qe,{active:n===e.activeCommandIndex,id:`${e.commandMenuId}-item-${String(n)}`,onClick:()=>{e.onSelectFileReference(t)},children:[(0,$.jsx)(Z,{"aria-hidden":`true`,className:`size-4 shrink-0 text-muted-foreground`}),(0,$.jsxs)(`span`,{className:`flex min-w-0 flex-1 items-baseline gap-2`,children:[(0,$.jsx)(`span`,{className:`shrink-0 font-medium text-foreground`,children:t.name}),(0,$.jsx)(`span`,{className:`min-w-0 truncate text-caption text-muted-foreground`,children:xu(t.path,t.name)})]})]},t.path))}):(0,$.jsx)(Pe,{children:t(`composer.fileSearchFailed`)})})})}function Cu(e,t){return e.text||e.skills.map(e=>`$${e.name}`).join(` `)||t}function wu({disabled:e,onOpen:t,projectPath:n}){let{t:r}=a(`workbench`),i=r(`composer.openProjectFolder`);return(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsxs)(g,{"aria-label":i,className:`h-6 w-fit min-w-0 max-w-full shrink gap-1 rounded-control px-1 text-caption text-muted-foreground hover:bg-control-hover hover:text-foreground`,contentAlign:`start`,disabled:e,onClick:t,type:`button`,variant:`ghost`,children:[(0,$.jsx)(de,{"aria-hidden":`true`,className:`size-3 shrink-0`}),(0,$.jsx)(`span`,{className:`truncate`,children:n})]})}),(0,$.jsx)(A,{children:i})]})}function Tu({onOpen:e,onRootChange:t,projectPath:n,projectPathOpenDisabled:r,roots:i,selectedRootId:a}){return(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-1`,"data-composer-project-root-controls":``,children:[(0,$.jsx)(mu,{onChange:t,roots:i,value:a}),(0,$.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,$.jsx)(wu,{disabled:r,onOpen:e,projectPath:n})})]})}function Eu(e){let{t}=a([`workbench`,`settings`]),n=e.queuedPrompts.findIndex(e=>e.status===`editing`);return(0,$.jsxs)(`section`,{className:`shrink-0 bg-content px-1 pb-2 max-[360px]:px-0 sm:px-5`,"aria-label":t(`composer.landmark`),children:[(0,$.jsxs)(`div`,{className:`relative mx-auto w-full max-w-content`,ref:e.commandSurfaceRef,children:[(0,$.jsx)(bu,{props:e}),(0,$.jsx)(Su,{props:e}),e.queuedPrompts.length===0?null:(0,$.jsx)(`div`,{"aria-label":t(`composer.queuedMessages`),className:`mb-2 space-y-1.5`,role:`list`,children:e.queuedPrompts.map((r,i)=>{let a=n>=0&&i>=n,o=Cu(r,t(`composer.attachmentCount`,{count:r.files.length}));return(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2 rounded-control border border-separator bg-control px-2 py-1.5`,role:`listitem`,children:[(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-label text-foreground`,children:o}),r.status===`awaiting-response`?(0,$.jsxs)(`span`,{"aria-label":t(`composer.waitingToSend`),className:`inline-flex shrink-0 items-center gap-1 text-caption text-muted-foreground`,role:`status`,children:[(0,$.jsx)(K,{"aria-hidden":`true`,className:`size-3.5 animate-spin`}),t(`composer.waitingToSend`)]}):r.status===`editing`?(0,$.jsxs)(`span`,{"aria-label":t(`composer.editingQueued`),className:`inline-flex shrink-0 items-center gap-1 text-caption text-brand`,role:`status`,children:[(0,$.jsx)(cn,{"aria-hidden":`true`,className:`size-3.5`}),t(`composer.editingQueued`)]}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":t(`composer.moveQueuedUp`,{summary:o}),disabled:e.isSubmitting||a||i===0,onClick:()=>{e.moveQueuedPrompt(r.id,-1)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(H,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,$.jsx)(A,{children:t(`composer.moveQueuedUpTooltip`)})]}),(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":t(`composer.moveQueuedDown`,{summary:o}),disabled:e.isSubmitting||i===e.queuedPrompts.length-1||a,onClick:()=>{e.moveQueuedPrompt(r.id,1)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(Rn,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,$.jsx)(A,{children:t(`composer.moveQueuedDownTooltip`)})]}),(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":t(`composer.editQueued`,{summary:o}),disabled:e.isSubmitting||n>=0,onClick:()=>{e.editQueuedPrompt(r)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(cn,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,$.jsx)(A,{children:t(`composer.editQueuedTooltip`)})]}),(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":t(`composer.steerNow`,{summary:o}),className:`hover:text-brand`,disabled:e.isSubmitting||a||e.taskId===void 0||(e.activeTurnId===void 0?!e.canSubmit:!e.canSteer),onClick:()=>{e.steerQueuedPrompt(r)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(pr,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,$.jsx)(A,{children:t(`composer.steerNowTooltip`)})]}),(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":t(`composer.cancelQueued`,{summary:o}),className:`hover:text-danger`,disabled:e.isSubmitting,onClick:()=>{e.removeQueuedPrompt(r.id)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(It,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,$.jsx)(A,{children:t(`composer.cancelQueuedTooltip`)})]})]})]},r.id)})}),(0,$.jsxs)(Y,{attachments:e.attachments,"aria-busy":e.state===`submitting`||e.state===`reconnecting`,className:`w-full`,"data-state":e.state,disabled:e.attachmentsDisabled,fileAccept:I,globalDrop:!0,imageAccept:w,largePasteCharacterThreshold:hc,maxFileSize:F,maxFileTotalSize:S,maxImageSize:y,maxImages:20,maxImageTotalSize:P,multiple:!0,onAttachmentsChange:e.onAttachmentsChange,onError:t=>{e.onViewError(Error(t.message))},onSubmit:e.onSubmit,pastedTextFileName:gc,children:[(0,$.jsx)(yu,{}),(0,$.jsxs)(Ue,{children:[(0,$.jsx)(`input`,{name:`message`,type:`hidden`,value:e.promptSubmissionText}),(0,$.jsx)(dl,{"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(!Be(t.nativeEvent)){if(e.commandMenuOpen||e.fileMenuOpen){if(t.key===`ArrowDown`||t.key===`ArrowUp`){t.preventDefault(),e.setActiveCommandIndex(n=>kl(n,t.key===`ArrowDown`?1:-1,e.menuItemCount));return}t.key===`Enter`&&!ze(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)&&zl(i,ol(t.currentTarget),r)&&e.onPromptHistoryNavigate(r)&&t.preventDefault()}}},placeholder:_c(e.taskId),ref:e.skillEditorRef,skills:e.skills,scope:e.composerScope})]}),(0,$.jsxs)(He,{className:`max-workbench:gap-0.5 max-workbench:px-1 max-[360px]:!gap-0 max-[360px]:!px-0`,children:[(0,$.jsxs)(Ge,{className:`max-workbench:shrink-0 max-workbench:gap-0.5 max-[360px]:!gap-0`,children:[(0,$.jsx)(Je,{className:`max-workbench:w-8 max-workbench:min-w-8 max-workbench:px-0 max-[360px]:!w-6 max-[360px]:!min-w-6`,disabled:e.attachmentsDisabled,onSelectKind:e.onSelectAttachmentKind}),(0,$.jsx)(fu,{disabled:e.turnControlsDisabled,onSettingsChange:e.onSettingsChange,sandboxModeSelectable:e.sandboxModeSelectable,settings:e.activeSettings}),e.composerMode===void 0?null:(0,$.jsx)(gu,{disabled:e.turnControlsDisabled,mode:e.composerMode,onRemove:e.onComposerModeRemove}),e.goal===null||e.goal===void 0?null:(0,$.jsx)(_u,{goal:e.goal}),e.fastModeAvailable?(0,$.jsx)(vu,{disabled:e.turnControlsDisabled,enabled:e.fastModeEnabled,onChange:e.onFastModeChange}):null]}),(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1 max-workbench:shrink-0 max-workbench:gap-0.5 max-[360px]:!gap-0`,children:[(0,$.jsx)(du,{activeSettings:e.activeSettings,disabled:e.turnControlsDisabled,models:e.models,modelsPending:e.modelsPending,onSettingsChange:e.onSettingsChange,selectedModel:e.selectedModel,selectedReasoningEffort:e.selectedReasoningEffort}),(0,$.jsx)(Re,{"aria-label":e.submitAction===`queue`?t(`composer.queueMessage`):e.submitAction===`steer`?t(`composer.sendSteer`):e.submitAction===`interrupt`?t(`composer.stop`):t(`composer.submit`),disabled:e.turnControlsDisabled||e.submitAction===`blocked`||e.submitAction===`start`&&(!e.canSubmit||e.selectedModel===void 0||e.selectedReasoningEffort===void 0)||e.submitAction===`interrupt`&&(!e.canInterrupt||e.activeTurnId===void 0),className:`max-workbench:w-8 max-workbench:min-w-8 max-[360px]:!w-6 max-[360px]:!min-w-6`,onClick:e.submitAction===`interrupt`?e.onInterrupt:void 0,status:e.state===`running`&&e.hasComposerInput?`idle`:e.state,type:e.submitAction===`interrupt`?`button`:`submit`})]})]})]})]}),e.modelsError===null?null:(0,$.jsx)(`p`,{className:`mx-auto mt-1 w-full max-w-content px-1 text-caption text-danger`,role:`alert`,children:t(`composer.modelListFailed`)}),(0,$.jsxs)(`div`,{className:`mx-auto mt-1.5 flex h-9 w-full max-w-content min-w-0 items-center gap-3 px-1 text-caption text-muted-foreground`,children:[e.projectToolsEnabled?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`div`,{className:`flex min-w-0 shrink items-center gap-0.5`,children:(0,$.jsx)(au,{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})}),(0,$.jsx)(Tu,{onOpen:e.onOpenProjectPath,onRootChange:e.onProjectRootChange,projectPath:e.projectPath,projectPathOpenDisabled:e.projectPathOpenDisabled,roots:e.projectRoots,selectedRootId:e.selectedProjectRootId})]}):null,(0,$.jsx)(ql,{className:`ml-auto`,maxTokens:e.contextUsage?.contextWindow,usedTokens:e.contextUsage?.usedTokens,children:(0,$.jsx)(tu,{})})]})]})}function Du({composerRef:e,capabilities:t,client:n,fastModeAvailable:r,fastModeDefault:i,followUpBehavior:o,models:s,modelsError:c,modelsPending:l,onDirectSubmission:u,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}=a([`workbench`,`settings`]),ee=Vl({capabilities:t,client:n,gitStatus:E,models:s,onSubmissionStateChange:g,projectId:b,projectPath:x,projectToolsEnabled:w,runtime:D,settings:O,skills:k,taskId:A}),{activeCommandIndex:M,activeCommandItemId:N,activeSettings:P,activeTaskId:F,activeTurnId:I,attachmentCount:L,attachmentPickerKind:R,attachments:z,attachmentsDisabled:B,baseBranches:V,canInterrupt:H,canSteer:U,canSubmit:W,clearComposerInput:G,closeCommandMenu:K,closeFileMenu:q,commandMenuId:J,commandMenuOpen:te,commandSurfaceRef:ne,composerMode:Y,composerController:re,composerScope:ie,contextUsage:ae,draftInputDisabled:X,filteredCommands:Z,filteredSkills:oe,fileMenuOpen:se,fileSearchError:ce,fileSearchPending:le,fileSearchResults:ue,handleAttachmentsChange:de,handlePromptChange:fe,isSubmitting:pe,menuItemCount:me,navigatePromptHistory:he,pendingTask:ge,promptContent:_e,promptSubmission:ve,referenceProjectPath:ye,reviewMenuMode:be,routeScope:xe,selectedModel:Se,selectedReasoningEffort:Ce,selectFileReference:we,setActiveCommandIndex:Te,setAttachmentPickerKind:Ee,setIsSubmitting:De,setMutationError:Oe,setComposerModeState:ke,setReviewMenuMode:Ae,setSettingsOverride:je,skillEditorRef:Me,state:Ne,turnControlsDisabled:Pe}=ee,[Fe,Ie]=(0,Q.useState)(),Le=Fe?.scope===ie?Fe.enabled:i,Re=r&&Le,{actionLock:ze,interruptAttempt:Be,isCurrentScope:Ve}=re,He=(e,t)=>{je({scope:xe,settings:e}),Oe(null),Promise.resolve(h(e,t,Le)).catch(()=>void 0)},Ue=yl({client:n,gitStatus:E,isCurrentScope:Ve,projectId:b,rootPath:x,routeScope:xe});(0,Q.useEffect)(()=>{Pe&&(K(),q())},[K,q,Pe]),(0,Q.useEffect)(()=>{if(!te&&!se)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,se]);let We=xl({activeTurnId:I,client:n,handleAttachmentsChange:de,projectId:b,replacePromptContent:ee.replacePromptContent,routeScope:xe,runtime:D,skillEditorRef:Me,skills:k,taskId:A});(0,Q.useEffect)(()=>{We.queueError!==null&&Oe(We.queueError)},[We.queueError,Oe]);let Ge=Wl({activeUserMessageIds:D?.store===void 0?[]:Vr(D.store.getState(),I),activeSettings:P,activeTaskId:F,activeTurnId:I,canSteer:U,canSubmit:W,clearComposerInput:G,client:n,controller:re,composerMode:Y,editingQueuedSubmission:We.editingId!==void 0,followUpBehavior:o,fastMode:Re,onDirectSubmission:u,onGoalStarted:()=>{ke(void 0)},onSteerAccepted:We.onSteerAccepted,onRequestNotificationPermission:m,onTaskCreated:_,onTaskStarted:v,onTurnStarted:y,pendingTask:ge,projectId:b,promptContent:_e,routeScope:xe,selectedModel:Se,selectedReasoningEffort:Ce,saveQueuedSubmission:We.saveQueuedSubmission,skillEditorRef:Me,state:Ne,taskId:A,t:j,turnControlsDisabled:Pe});(0,Q.useImperativeHandle)(e,()=>({buildPlan:()=>(ke(void 0),Ge({files:[],text:j(`composer.buildPlanPrompt`)},[],{composerMode:null,forceAction:`start`})),referenceProjectPath:ye}));let{executePromptCommand:Ke,executeReviewTarget:qe,getCommandAvailability:Je,selectActiveCommandItem:Ye,selectSkill:Xe}=Al({capabilities:t,client:n,onRequestNotificationPermission:m,onTaskCreated:_,onTaskStarted:v,projectId:b,session:ee,submitPrompt:Ge,t:j,taskId:A}),Ze=async()=>{let e=xe;!H||F===void 0||I===void 0||Pe||await ze.run(async()=>{let t=`${F}:${I}`;De(!0),Oe(null);let r=vc(Be.current,t);Be.current=r;try{await Oc(n,b,F,I,r.key)}catch(t){Ve(e)&&Oe(t instanceof Error?t:Error(`Turn interruption failed`))}finally{Ve(e)&&De(!1)}})},Qe=!Xc(_e)||L>0,$e=We.editingId===void 0?Cc(Ne,Qe,o,U):`queue`,et=(0,$.jsx)(Eu,{activeCommandIndex:M,activeCommandItemId:N,activeSettings:P,activeTurnId:I,attachments:z,attachmentsDisabled:B,baseBranches:V,canInterrupt:H,canSteer:U,canSubmit:W,commandMenuId:J,commandMenuOpen:te,commandSurfaceRef:ne,composerMode:Y,composerScope:ie,contextUsage:ae,creatingBranch:Ue.creatingBranch,creatingWorktree:Ue.creatingWorktree,draftInputDisabled:X,filteredCommands:Z,filteredSkills:oe,fileMenuOpen:se,fileSearchError:ce,fileSearchPending:le,fileSearchResults:ue,fastModeAvailable:r,fastModeEnabled:Re,getCommandAvailability:Je,gitStatus:E,goal:D?.metadata?.goal,hasComposerInput:Qe,isSubmitting:pe,menuItemCount:me,moveQueuedPrompt:(e,t)=>{We.moveQueuedPrompt(e,t).catch(Oe)},models:s,modelsError:c,modelsPending:l,editQueuedPrompt:e=>{We.editQueuedPrompt(e).catch(Oe)},onComposerModeRemove:()=>{ke(void 0)},onAttachmentsChange:de,onBranchCreate:Ue.createBranch,onBranchChange:e=>{Ue.switchBranch(e)},onWorktreeChange:e=>{Ue.switchWorktree(e)},onWorktreeCreate:Ue.createWorktree,onExecuteCommand:e=>{Ke(e)},onExecuteReview:e=>{qe(e)},onFastModeChange:e=>{Ie({enabled:e,scope:ie}),Promise.resolve(d(e,P)).catch(()=>void 0)},onInterrupt:()=>{Ze()},onOpenProjectPath:f,onProjectRootChange:p,onOpenReviewBranches:()=>{Te(0),Ae(`branches`)},onPromptChange:fe,onPromptHistoryNavigate:he,onSelectActiveCommand:Ye,onSelectAttachmentKind:Ee,onSelectFileReference:we,onSelectSkill:Xe,onSettingsChange:He,onSubmit:e=>void Ge(e),onViewError:e=>{Oe(e)},projectPath:x,projectPathOpenDisabled:S,projectRoots:C,projectToolsEnabled:w,promptContent:_e,promptSubmissionText:ve.text,queuedPrompts:We.queuedPrompts,removeQueuedPrompt:e=>{We.removeQueuedPrompt(e).catch(Oe)},reviewMenuMode:be,sandboxModeSelectable:!0,selectedModel:Se,selectedReasoningEffort:Ce,selectedProjectRootId:T,setActiveCommandIndex:Te,skills:k,skillEditorRef:Me,state:Ne,steerQueuedPrompt:e=>{We.sendQueuedPrompt(e,Ge).catch(Oe)},submitAction:$e,switchingBranch:Ue.switchingBranch,switchingWorktree:Ue.switchingWorktree,taskId:A,turnControlsDisabled:Pe,worktrees:Ue.worktrees});return R===void 0?et:(0,$.jsxs)($.Fragment,{children:[et,(0,$.jsx)(Mc,{client:n,kind:R,onAdd:e=>{Ve(xe)&&(de([...z,e]),Ee(void 0))},onClose:()=>{Ee(void 0)},projectId:b})]})}var Ou=8;function ku(e,t,n){return Math.min(n,Math.max(t,e))}function Au({direction:e,label:t,maximumWidth:n,minimumWidth:r,onResize:i,onResizeEnd:a,onResizeStart:o,panel:s,width:c}){let l=(0,Q.useRef)(null),u=e=>{let t=l.current;t?.pointerId===e.pointerId&&(l.current=null,e.currentTarget.hasPointerCapture(e.pointerId)&&e.currentTarget.releasePointerCapture(e.pointerId),a(t.currentWidth))};return(0,$.jsx)(`div`,{"aria-label":t,"aria-orientation":`vertical`,"aria-valuemax":n,"aria-valuemin":r,"aria-valuenow":c,className:`workbench-panel-resizer workbench-panel-resizer--${s}`,onKeyDown:t=>{if(t.key!==`ArrowLeft`&&t.key!==`ArrowRight`)return;t.preventDefault();let o=ku(c+(t.key===`ArrowLeft`?-8:Ou)*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=ku(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 ju=(0,Q.lazy)(()=>gn(()=>import(`./patch-diff-viewer-BgNx-ffs.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20])));function Mu({change:e,onClose:t}){let{t:n}=a(`workbench`);if(e===null)return null;let r=In(e.path),{additions:i,removals:o}=Ln(e),s=`file-diff-dialog-title`;return(0,$.jsx)(Mn,{onOpenChange:e=>{e||t()},open:!0,children:(0,$.jsx)(ht,{"aria-labelledby":s,className:`h-[min(82dvh,54rem)] max-w-[72rem] overflow-hidden p-0`,children:(0,$.jsxs)(`section`,{className:`grid h-full min-h-0 w-full min-w-0 grid-rows-[auto_minmax(0,1fr)] bg-raised`,children:[(0,$.jsxs)(`header`,{className:`flex min-h-toolbar min-w-0 items-center gap-3 px-3 shadow-toolbar sm:px-4`,children:[(0,$.jsx)(De,{className:`size-4 shrink-0 text-muted-foreground`,"aria-hidden":`true`}),(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(qt,{className:`truncate text-body-small`,id:s,title:e.path,children:r}),(0,$.jsx)(`p`,{className:`truncate text-caption text-muted-foreground`,title:e.path,children:e.path})]}),(0,$.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 text-label font-medium`,children:[(0,$.jsxs)(`span`,{className:`text-diff-added`,children:[`+`,i]}),(0,$.jsxs)(`span`,{className:`text-diff-removed`,children:[`-`,o]}),(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":n(`diff.close`),onClick:t,size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(It,{className:`size-3.5`,"aria-hidden":`true`})})}),(0,$.jsx)(A,{children:n(`diff.close`)})]})]})]}),(0,$.jsx)(`div`,{className:`min-h-0 min-w-0 overflow-auto bg-content`,children:(0,$.jsx)(Q.Suspense,{fallback:(0,$.jsx)(`div`,{className:`grid min-h-48 place-items-center text-body-small text-muted-foreground`,role:`status`,children:n(`diff.loading`)}),children:(0,$.jsx)(ju,{change:e})})})]})})})}function Nu(e){return e.split(/[\\/]/u).at(-1)??e}function Pu({client:e,onClose:t,previewKind:n,projectId:r,reference:i,rootPath:a}){let o=`project-source-dialog-title`;return(0,$.jsx)(Mn,{onOpenChange:e=>{e||t()},open:!0,children:(0,$.jsxs)(ht,{"aria-labelledby":o,className:`h-[min(82dvh,54rem)] max-w-[72rem] overflow-hidden p-0`,children:[(0,$.jsx)(qt,{className:`sr-only`,id:o,children:Nu(i.path)}),(0,$.jsx)(Te,{client:e,onClose:t,previewKind:n,projectId:r,reference:i,...a===void 0?{}:{rootPath:a}})]})})}function Fu({message:e,role:t}){return(0,$.jsx)(`div`,{className:`grid min-h-0 flex-1 place-items-center px-6 text-sm text-muted-foreground`,role:t,children:e})}function Iu({onClose:e,projectId:t,projectRuntime:n,selection:r}){return r===null?null:(0,$.jsx)(Lu,{onClose:e,projectId:t,projectRuntime:n,selection:r})}function Lu({onClose:e,projectId:t,projectRuntime:n,selection:r}){let{t:i}=a(`workbench`),o=Dt(t,r.taskId,n),s=`subagent-output-dialog-title`,c;return c=o.error===null?o.isPending||o.metadata===void 0?(0,$.jsx)(Fu,{message:i(`subagentOutput.loading`),role:`status`}):(0,$.jsxs)($.Fragment,{children:[o.connectionState===`reconnecting`?(0,$.jsx)(`div`,{className:`bg-control px-3 py-1.5 text-center text-label text-muted-foreground`,role:`status`,children:i(`subagentOutput.reconnecting`)}):null,(0,$.jsx)(fc,{projectId:t,runtime:o,taskId:r.taskId})]}):(0,$.jsx)(Fu,{message:i(`subagentOutput.error`),role:`alert`}),(0,$.jsx)(Mn,{onOpenChange:t=>{t||e()},open:!0,children:(0,$.jsx)(ht,{"aria-labelledby":s,className:`h-[min(86dvh,58rem)] max-w-[76rem] overflow-hidden p-0`,"data-subagent-output-dialog":``,children:(0,$.jsxs)(`section`,{className:`grid h-full min-h-0 grid-rows-[auto_minmax(0,1fr)] bg-raised`,children:[(0,$.jsxs)(`header`,{className:`flex min-h-toolbar items-center gap-3 px-3 shadow-toolbar sm:px-4`,children:[(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(qt,{className:`truncate text-body-small`,id:s,children:i(`subagentOutput.title`)}),(0,$.jsx)(`p`,{className:`truncate text-caption text-muted-foreground`,title:r.taskId,children:r.taskId})]}),(0,$.jsx)(Da,{collapsible:!1,status:_i(r.status),children:(0,$.jsx)(ka,{title:i(`subagentOutput.task`,{taskId:r.taskId})})}),(0,$.jsx)(g,{"aria-label":i(`subagentOutput.close`),onClick:e,size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(It,{className:`size-3.5`,"aria-hidden":`true`})})]}),(0,$.jsx)(`div`,{className:`flex min-h-0 flex-col overflow-hidden bg-content`,children:c})]})})})}var Ru=(0,Q.lazy)(()=>an().then(e=>({default:e.GlobalSettingsDialog})));function zu({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,$.jsxs)($.Fragment,{children:[b?.kind===`diff`?(0,$.jsx)(Mu,{change:b.change,onClose:()=>{T(null)}}):b===null?null:(0,$.jsx)(Pu,{client:s,onClose:()=>{T(null)},previewKind:b.kind,projectId:t,reference:b.reference,...x===void 0?{}:{rootPath:x}}),y===null?null:(0,$.jsx)(tt,{changes:y,onClose:()=>{C(null)}}),(0,$.jsx)(Iu,{onClose:()=>{E(null)},projectId:t,projectRuntime:g,selection:S}),D&&r!==void 0?(0,$.jsx)(fn,{initialTitle:O,isPending:v.isPending,onClose:c,onRename:e=>void _(e)},`${t}:${r}`):null,u===null?null:(0,$.jsx)(Q.Suspense,{fallback:null,children:(0,$.jsx)(Ru,{...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 Bu=(0,Q.memo)(function({capabilities:e,client:t,composerRef:n,fallbackSettings:r,fastModeAvailable:i,fastModeDefault:a,followUpBehavior:o,models:s,modelsError:c,modelsPending:l,onRequestNotificationPermission:u,onProjectTaskDefaultsChange:d,onOpenProjectPath:f,onProjectRootChange:p,onTaskStarted:m,projectId:h,projectPath:g,projectPathOpenDisabled:_,projectRoots:v,projectToolsEnabled:y,selectedProjectRootId:b,gitStatus:x,runtime:S,skills:C,startingSnapshot:w,startingPrompt:T,taskId:E,onOpenFileDiff:D,onOpenSourceFile:O,onReviewFileChanges:k}){let A=`${h}:${E}`,[j,ee]=(0,Q.useState)(0),{beginSubmission:M,getStartedAt:N,handleSubmissionStateChange:P,startedAt:F}=Ai(),[I,L]=(0,Q.useState)(()=>({prompt:T,taskScope:A})),R=I.taskScope===A?I.prompt:T,B=F??R?.submissionStartedAt,V=F===void 0?R?.turn.id:void 0;(0,Q.useEffect)(()=>{let e=S.store;if(e===void 0||R===void 0)return;let t=e.getState(),n=S.readSnapshot();if(n===void 0||t.checkpoint===null)return;let r=sn(n,R.turn,{...R.input,messageAttachments:R.messageAttachments});if(r===n)return;let i=t.connectionState,a=t.error;t.hydrate({checkpoint:t.checkpoint,snapshot:r}),e.getState().setConnectionState(i),e.getState().setError(a)},[S,R]);let H=z({...Kt(h,E,t),onSuccess(e){S.store?.getState().setTaskSettings(e.settings)}}),U=(e,n,r)=>t.resolvePendingRequest(e,n,{idempotencyKey:r}).then(()=>void 0);return(0,$.jsxs)($.Fragment,{children:[(0,Q.createElement)(fc,{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:U,projectId:h,key:A,runtime:S,scrollToBottomSignal:j,...B===void 0?{}:{submissionStartedAt:B},...V===void 0?{}:{submissionTurnId:V},taskId:E,...w===void 0?{}:{startingSnapshot:w}}),(0,$.jsx)(Du,{composerRef:n,capabilities:e,client:t,followUpBehavior:o,fastModeAvailable:i,fastModeDefault:a,models:s,modelsError:c,modelsPending:l||S.isPending,onDirectSubmission:()=>{M(),ee(e=>e+1)},onOpenProjectPath:f,onProjectRootChange:p,onRequestNotificationPermission:u,onFastModeChange:(e,t)=>d(t,e),onSettingsChange:(e,t,n)=>Promise.all([H.mutateAsync(e),d(e,n)]).then(()=>void 0),onSubmissionStateChange:P,onTaskStarted:m,onTurnStarted:(e,t,n)=>{let r=N()??e.startedAt;L({prompt:{input:t,messageAttachments:n,...r===null?{}:{submissionStartedAt:r},turn:e},taskScope:A})},projectId:h,projectPath:g,projectPathOpenDisabled:_,projectRoots:v,projectToolsEnabled:y,selectedProjectRootId:b,...x===void 0?{}:{gitStatus:x},runtime:S,settings:S.metadata?.settings??w?.settings??r,skills:C,taskId:E})]})}),Vu=(0,Q.lazy)(()=>gn(()=>import(`./patch-diff-viewer-BgNx-ffs.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20])));function Hu({change:e}){let{t}=a(`workbench`),{additions:n,removals:r}=Ln(e);return(0,$.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,$.jsxs)(Se,{className:`min-h-toolbar gap-3 overflow-hidden bg-raised px-3 shadow-toolbar sm:px-4`,children:[(0,$.jsxs)(we,{className:`w-0 flex-1 overflow-hidden`,children:[(0,$.jsx)(De,{className:`size-4 shrink-0 text-muted-foreground`,"aria-hidden":`true`}),(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsxs)(`div`,{className:`w-0 flex-1 overflow-hidden`,children:[(0,$.jsx)(`h2`,{className:`truncate text-body-small font-semibold`,children:In(e.path)}),(0,$.jsx)(`p`,{className:`truncate text-caption text-muted-foreground`,children:e.path})]})}),(0,$.jsx)(A,{className:`break-all`,children:e.path})]})]}),(0,$.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 text-label font-medium`,children:[(0,$.jsxs)(`span`,{className:`text-diff-added`,children:[`+`,n]}),(0,$.jsxs)(`span`,{className:`text-diff-removed`,children:[`-`,r]})]})]}),(0,$.jsx)(`div`,{className:`min-h-0 min-w-0 overflow-auto bg-content`,children:(0,$.jsx)(Q.Suspense,{fallback:(0,$.jsx)(`div`,{className:`grid min-h-48 place-items-center text-body-small text-muted-foreground`,role:`status`,children:t(`diff.loading`)}),children:(0,$.jsx)(Vu,{change:e})})})]})}function Uu(e){return(0,$.jsx)(Fr,{"data-slot":`collapsible`,...e})}function Wu(e){return(0,$.jsx)(Ir,{"data-slot":`collapsible-trigger`,...e})}function Gu(e){return(0,$.jsx)(Lr,{"data-slot":`collapsible-content`,...e})}var Ku=5;function qu({ariaLabel:e,getKey:t,items:n,renderItem:r}){let[i,a]=(0,Q.useState)(!1);return(0,$.jsxs)(`div`,{"aria-label":e,className:`space-y-0.5`,children:[(i?n:n.slice(0,Ku)).map(e=>(0,$.jsx)(`div`,{children:r(e)},t(e))),i||n.length<=Ku?null:(0,$.jsx)(g,{className:`w-full`,onClick:()=>{a(!0)},size:`sm`,type:`button`,variant:`ghost`,children:s.t(`inspector.showMore`,{ns:`conversation`})})]})}function Ju({error:e,isPending:t,onTerminate:n,terminals:r,terminatingTerminalId:i}){return(0,$.jsx)($u,{icon:(0,$.jsx)(hr,{className:`size-3.5`}),title:s.t(`inspector.terminals`,{ns:`conversation`}),children:(0,$.jsx)(`section`,{"aria-label":s.t(`inspector.terminals`,{ns:`conversation`}),children:t&&r.length===0?(0,$.jsx)(`p`,{className:`px-2 py-2 text-caption text-muted-foreground`,children:s.t(`inspector.terminalLoading`,{ns:`conversation`})}):e!==null&&r.length===0?(0,$.jsx)(`p`,{className:`px-2 py-2 text-caption text-diff-removed`,children:s.t(`inspector.terminalError`,{ns:`conversation`})}):(0,$.jsx)(`div`,{className:`space-y-1`,children:r.map(e=>{let t=i===e.id?s.t(`inspector.terminalStopping`,{command:e.command,ns:`conversation`}):s.t(`inspector.terminalStop`,{command:e.command,ns:`conversation`});return(0,$.jsxs)(`div`,{className:`flex items-center gap-1 rounded-control px-2 py-1.5 hover:bg-control-hover`,children:[(0,$.jsx)(K,{"aria-label":s.t(`inspector.terminalRunning`,{ns:`conversation`}),className:`size-3.5 shrink-0 animate-spin text-muted-foreground`}),(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(`p`,{className:`truncate text-label font-medium text-foreground`,title:e.command,children:e.command}),(0,$.jsx)(`p`,{className:`truncate text-caption text-muted-foreground`,title:e.cwd,children:e.cwd})]}),(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":t,disabled:i!==null,onClick:()=>void n(e.id),size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(Xe,{"aria-hidden":`true`,className:`size-3`})})}),(0,$.jsx)(A,{children:t})]})]},e.id)})})})})}function Yu({onOpenSubagent:e,subagents:t}){return(0,$.jsx)($u,{icon:(0,$.jsx)(ne,{className:`size-3.5`}),title:s.t(`inspector.subagents`,{ns:`conversation`}),children:(0,$.jsxs)(`section`,{"aria-label":s.t(`inspector.subagents`,{ns:`conversation`}),children:[(0,$.jsx)(`p`,{className:`mb-1 px-2 text-caption text-muted-foreground`,children:s.t(`inspector.subagentCount`,{count:t.length,ns:`conversation`})}),(0,$.jsx)(`div`,{className:`space-y-1`,children:t.map(t=>{let n=[t.model===void 0?void 0:gi(t.model),t.reasoningEffort].filter(e=>e!==void 0);return(0,$.jsxs)(g,{variant:`ghost`,"aria-haspopup":`dialog`,"aria-label":s.t(`inspector.subagentOutput`,{nickname:t.nickname,ns:`conversation`}),className:`w-full rounded-control px-2 text-left transition-colors hover:bg-control-hover focus-visible:shadow-focus focus-visible:outline-none`,onClick:()=>{e({status:t.status,taskId:t.taskId})},type:`button`,children:[(0,$.jsx)(Da,{collapsible:!1,status:_i(t.status),children:(0,$.jsx)(ka,{title:t.nickname})}),n.length===0?null:(0,$.jsx)(`p`,{className:`pb-2 text-caption text-muted-foreground`,children:n.join(` · `)})]},t.taskId)})})]})})}function Xu({canRetry:e,isRefreshing:t,isRetrying:n,onRetry:r,servers:i}){if(i.length===0)return null;let a=s.t(n?`inspector.mcpReloading`:`inspector.mcpReload`,{ns:`conversation`});return(0,$.jsx)($u,{action:e?(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":a,disabled:t||n,onClick:r,size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(me,{"aria-hidden":`true`,className:t||n?`animate-spin`:void 0})})}),(0,$.jsx)(A,{children:a})]}):null,icon:(0,$.jsx)(fr,{className:`size-3.5`}),title:`MCP`,children:(0,$.jsx)(qu,{ariaLabel:s.t(`inspector.mcpEnabled`,{ns:`conversation`}),getKey:e=>e.name,items:i,renderItem:e=>(0,$.jsx)(Qu,{server:e})})})}function Zu({error:e}){return(0,$.jsxs)(Uu,{children:[(0,$.jsx)(Wu,{asChild:!0,children:(0,$.jsxs)(g,{className:`group h-7 justify-start px-0 text-caption`,type:`button`,variant:`link`,children:[(0,$.jsx)(oe,{"aria-hidden":`true`,className:`transition-transform group-data-[state=open]:rotate-90`,"data-icon":`inline-start`}),s.t(`inspector.mcpErrorLog`,{ns:`conversation`})]})}),(0,$.jsx)(Gu,{className:`data-[state=closed]:hidden`,forceMount:!0,children:(0,$.jsx)(`pre`,{className:`max-h-44 overflow-auto whitespace-pre-wrap break-words rounded-control bg-control px-2 py-1.5 font-mono text-meta leading-5 text-foreground`,children:e})})]})}function Qu({server:e}){let t=[s.t(`inspector.mcpStatus.${e.status}`,{ns:`conversation`}),...e.status===`ready`?[s.t(`inspector.mcpToolCount`,{count:e.tools.length,ns:`conversation`})]:[],...e.authStatus===null?[]:[s.t(`inspector.mcpAuth.${e.authStatus}`,{ns:`conversation`})],...e.version===null?[]:[s.t(`inspector.mcpVersion`,{ns:`conversation`,version:e.version})]],n=e.status===`ready`?(0,$.jsx)(_e,{"aria-hidden":`true`,className:`size-3.5 text-brand`}):e.status===`starting`?(0,$.jsx)(K,{"aria-hidden":`true`,className:`size-3.5 animate-spin text-muted-foreground`}):e.status===`failed`?(0,$.jsx)(Yn,{"aria-hidden":`true`,className:`size-3.5 text-danger`}):(0,$.jsx)(Jn,{"aria-hidden":`true`,className:`size-3.5 text-warning`}),r=e.tools.join(` · `),i=(0,$.jsxs)(`div`,{"aria-label":e.name,...r.length===0?{}:{"aria-description":r},className:`flex min-h-10 items-start gap-2 rounded-control px-2 py-1.5 transition-colors hover:bg-control-hover`,"data-mcp-server-row":``,children:[(0,$.jsx)(`span`,{className:`mt-0.5 shrink-0`,children:n}),(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(`p`,{className:`truncate text-label font-medium text-foreground`,children:e.title??e.name}),(0,$.jsx)(`p`,{className:`text-caption text-muted-foreground`,children:t.join(` · `)}),e.failureReason===null?null:(0,$.jsx)(`p`,{className:`text-caption text-danger`,children:s.t(`inspector.mcpFailureReason.${e.failureReason}`,{ns:`conversation`})}),e.error===null?null:(0,$.jsx)(Zu,{error:e.error})]})]});return r.length===0?i:(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:i}),(0,$.jsx)(A,{side:`top`,children:r})]})}function $u({action:e,children:t,icon:n,title:r}){return(0,$.jsxs)(`section`,{"aria-label":r,children:[(0,$.jsxs)(`div`,{className:`mb-2 flex min-h-7 items-center justify-between gap-2 text-xs font-medium text-foreground`,children:[(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,$.jsx)(`span`,{className:`text-muted-foreground`,children:n}),r]}),e]}),(0,$.jsx)(`div`,{className:`space-y-0.5`,children:t})]})}async function ed(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 td({name:e,triggerChildren:t,triggerClassName:n,url:r}){a(`conversation`);let[i,o]=(0,Q.useState)(!1),c=(0,Q.useId)(),l=G({enabled:i,queryFn:({signal:e})=>ed(r,e),queryKey:[`task-attachment-source`,r],staleTime:3e4}),u=s.t(`projectDialog.closeSource`,{ns:`workbench`});return(0,$.jsxs)(Mn,{onOpenChange:o,open:i,children:[(0,$.jsx)(St,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":s.t(`timeline.openAttachment`,{name:e,ns:`conversation`}),className:n,"data-attachment-open":`source`,type:`button`,variant:`ghost`,children:t})}),(0,$.jsx)(ht,{"aria-labelledby":c,className:`h-[min(82dvh,54rem)] max-w-[72rem] overflow-hidden p-0`,children:l.data===void 0?(0,$.jsxs)(`section`,{className:`grid h-full min-h-0 grid-rows-[auto_minmax(0,1fr)] bg-raised`,children:[(0,$.jsxs)(`header`,{className:`flex min-h-toolbar items-center gap-3 px-3 shadow-toolbar sm:px-4`,children:[(0,$.jsx)(De,{"aria-hidden":`true`,className:`size-4 shrink-0 text-muted-foreground`}),(0,$.jsx)(qt,{className:`min-w-0 flex-1 truncate text-body-small`,id:c,children:e}),(0,$.jsx)(nd,{label:u,onClose:()=>{o(!1)}})]}),(0,$.jsx)(`div`,{className:`grid min-h-0 place-items-center text-body-small ${l.error===null?`text-muted-foreground`:`text-danger`}`,role:l.error===null?`status`:`alert`,children:s.t(l.error===null?`projectDialog.loadingSource`:`projectDialog.loadSourceError`,{ns:`workbench`})})]}):(0,$.jsx)(xe,{className:`grid h-full min-h-0 grid-rows-[auto_minmax(0,1fr)] rounded-none bg-content shadow-none`,code:l.data,language:Pn(e),showLineNumbers:!0,children:(0,$.jsxs)(Se,{className:`min-h-toolbar gap-3 bg-raised px-3 shadow-toolbar sm:px-4`,children:[(0,$.jsxs)(we,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(De,{"aria-hidden":`true`,className:`size-4 shrink-0 text-muted-foreground`}),(0,$.jsx)(qt,{asChild:!0,children:(0,$.jsx)(`h2`,{className:`truncate text-body-small font-semibold`,id:c,title:e,children:(0,$.jsx)(ve,{children:e})})})]}),(0,$.jsxs)(Ce,{children:[(0,$.jsx)(be,{}),(0,$.jsx)(nd,{label:u,onClose:()=>{o(!1)}})]})]})})})]})}function nd({label:e,onClose:t}){return(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":e,onClick:t,size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(It,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,$.jsx)(A,{children:e})]})}function rd(e){return{admin:s.t(`inspector.sourceRole.admin`,{ns:`conversation`}),repo:s.t(`inspector.sourceRole.repo`,{ns:`conversation`}),system:s.t(`inspector.sourceRole.system`,{ns:`conversation`}),user:s.t(`inspector.sourceRole.user`,{ns:`conversation`})}[e]}function id(e,t){let n=[],r=new Map(t.map(e=>[e.name,e])),i=new Set,a=new Set;for(let t of e)for(let e of t.items)if(!(e.type!==`message`||e.role!==`user`)){for(let t of e.skills??[]){if(i.has(t.name))continue;i.add(t.name);let e=r.get(t.name);n.push({detail:e===void 0?`Skill`:`Skill · ${rd(e.scope)}`,id:`skill:${t.name}`,kind:`skill`,name:e?.displayName??t.name,...e?.description===void 0?{}:{tooltip:e.description}})}for(let t of e.attachments??[])a.has(t.id)||(a.add(t.id),n.push({attachment:t,detail:s.t(`inspector.attachmentDetail`,{ns:`conversation`}),id:`attachment:${t.id}`,kind:`attachment`,name:t.name}))}return n}var ad=`flex h-auto min-h-10 w-full items-center justify-start gap-2 rounded-control px-2 py-1.5 text-left transition-colors hover:bg-control-hover`;function od({source:e}){return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`span`,{className:`shrink-0 text-muted-foreground`,children:e.kind===`skill`?(0,$.jsx)(Qe,{"aria-hidden":`true`,className:`size-3.5 text-brand`}):(0,$.jsx)(Fe,{"aria-hidden":`true`,className:`size-3.5`})}),(0,$.jsxs)(`div`,{className:`min-w-0`,children:[(0,$.jsx)(`p`,{className:`truncate text-label font-medium text-foreground`,title:e.name,children:e.name}),(0,$.jsx)(`p`,{className:`truncate text-caption text-muted-foreground`,children:e.detail})]})]})}function sd({attachmentUrl:e,onOpenAttachment:t,source:n}){if(n.kind===`attachment`&&e!==void 0){let r=(0,$.jsx)(od,{source:n}),i=Sn(n.attachment);return i===`image`?(0,$.jsx)(Bs,{name:n.name,triggerChildren:r,triggerClassName:ad,url:e}):i===`source`?(0,$.jsx)(td,{name:n.name,triggerChildren:r,triggerClassName:ad,url:e}):(0,$.jsx)(g,{"aria-label":s.t(`timeline.openAttachment`,{name:n.name,ns:`conversation`}),className:ad,"data-attachment-open":`system`,onClick:()=>{t(n.attachment.id)},type:`button`,variant:`ghost`,children:r})}return n.kind===`skill`&&n.tooltip!==void 0?(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(`div`,{"aria-description":n.tooltip,className:ad,children:(0,$.jsx)(od,{source:n})})}),(0,$.jsx)(A,{side:`top`,children:n.tooltip})]}):(0,$.jsx)(`div`,{className:ad,children:(0,$.jsx)(od,{source:n})})}function cd({onOpenAttachment:e,projectId:t,skills:n,taskId:r,turns:i}){let a=(0,Q.useMemo)(()=>id(i,n),[n,i]);return a.length===0?null:(0,$.jsx)($u,{icon:(0,$.jsx)($e,{className:`size-3.5`}),title:s.t(`inspector.source`,{ns:`conversation`}),children:(0,$.jsx)(qu,{ariaLabel:s.t(`inspector.contextSources`,{ns:`conversation`}),getKey:e=>e.id,items:a,renderItem:n=>(0,$.jsx)(`div`,{"data-inspector-source-row":``,children:(0,$.jsx)(sd,{...n.kind===`attachment`&&t!==void 0&&r!==void 0?{attachmentUrl:j(``,t,r,n.attachment.id)}:{},onOpenAttachment:e,source:n})})})})}function ld({className:e=``,...t}){return(0,$.jsx)(`div`,{className:v(e),"data-ai-queue":``,...t})}function ud({className:e=``,...t}){return(0,$.jsx)(`ul`,{className:v(`space-y-0.5`,e),...t})}function dd({className:e=``,status:t,...n}){return(0,$.jsx)(`li`,{className:v(`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 fd({className:e=``,label:t,status:n,...r}){let i=n===`completed`?(0,$.jsx)(_e,{"aria-hidden":`true`,className:`size-3.5`}):n===`in_progress`?(0,$.jsx)(K,{"aria-hidden":`true`,className:`size-3.5 animate-spin`}):(0,$.jsx)(en,{"aria-hidden":`true`,className:`size-3.5`});return(0,$.jsx)(`span`,{"aria-label":t,className:v(`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 pd({className:e=``,status:t,...n}){return(0,$.jsx)(`span`,{className:v(`min-w-0 break-words text-label leading-5`,t===`completed`?`text-muted-foreground`:`text-foreground`,e),...n})}function md({plan:e}){return(0,$.jsx)($u,{icon:(0,$.jsx)(or,{className:`size-3.5`}),title:s.t(`inspector.plan`,{ns:`conversation`}),children:(0,$.jsxs)(ld,{children:[e.explanation===null||e.explanation.trim()===``?null:(0,$.jsx)(`p`,{className:`px-2 pb-1.5 text-caption leading-5 text-muted-foreground`,children:e.explanation}),(0,$.jsx)(ud,{children:e.steps.map((e,t)=>(0,$.jsxs)(dd,{status:e.status,children:[(0,$.jsx)(fd,{label:s.t(`inspector.planStatus.${e.status}`,{ns:`conversation`}),status:e.status}),(0,$.jsx)(pd,{status:e.status,children:e.text})]},`${String(t)}:${e.text}`))})]})})}function hd(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(`
|
|
15
|
-
`),kind:e.kind===n.kind?e.kind:`update`,path:n.path})}return[...t.values()]}function gd(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=Ln(t);return{additions:e.additions+n.additions,removals:e.removals+n.removals}},{additions:0,removals:0}),a=hd(r??n);return{changeStats:i,displayChanges:a,fileChangesByPath:new Map(a.map(e=>[e.path,e]))}}function _d({changeCount:e,changeStats:t,onCommitChanges:n,onOpenChanges:r}){return e===0?null:(0,$.jsx)($u,{action:(0,$.jsxs)(g,{"aria-label":s.t(`inspector.commitChanges`,{count:e,ns:`conversation`}),className:`h-6 gap-1 px-1.5 text-caption font-medium`,id:`workbench-commit-changes`,onClick:n,size:`toolbar`,type:`button`,variant:`ghost`,children:[(0,$.jsx)(nt,{"aria-hidden":`true`,className:`size-3.5`}),s.t(`inspector.commit`,{ns:`conversation`})]}),icon:(0,$.jsx)(nr,{className:`size-3.5`}),title:s.t(`inspector.gitChanges`,{ns:`conversation`}),children:(0,$.jsxs)(g,{"aria-label":s.t(`inspector.openChanges`,{count:e,ns:`conversation`}),className:`w-full gap-1.5`,contentAlign:`start`,"data-open-inspector-changes":``,onClick:r,size:`toolbar`,type:`button`,variant:`ghost`,children:[(0,$.jsx)(`span`,{children:s.t(`inspector.gitChangesCount`,{count:e,ns:`conversation`})}),t===void 0?null:(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`span`,{className:`font-medium text-diff-added`,children:[`+`,t.additions]}),(0,$.jsxs)(`span`,{className:`font-medium text-diff-removed`,children:[`-`,t.removals]})]})]})})}function vd(e){let t=Math.floor(e/60),n=e%60;return t===0?s.t(`inspector.goalSeconds`,{count:n,ns:`conversation`}):s.t(`inspector.goalDuration`,{minutes:t,ns:`conversation`,seconds:n})}function yd({goal:e,onClear:t,onStatusChange:n}){let[r,i]=(0,Q.useState)(null),[a,o]=(0,Q.useState)(null),c=new Intl.NumberFormat(s.language),l=s.t(`inspector.goalStatus.${e.status}`,{ns:`conversation`}),u=e.status===`active`?`paused`:`active`,d=s.t(e.status===`active`?`inspector.goalPause`:`inspector.goalResume`,{ns:`conversation`}),f=async(e,t)=>{i(e),o(null);try{await t()}catch(e){o(e instanceof Error?e:Error(`Goal mutation failed`))}finally{i(null)}};return(0,$.jsx)($u,{action:(0,$.jsxs)(`div`,{className:`flex items-center gap-0.5`,children:[e.status===`active`||e.status===`paused`?(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":d,disabled:r!==null,onClick:()=>void f(`status`,()=>n(u)),size:`icon-sm`,type:`button`,variant:`ghost`,children:e.status===`active`?(0,$.jsx)(ur,{"aria-hidden":`true`,className:`size-3.5`}):(0,$.jsx)(dr,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,$.jsx)(A,{children:d})]}):null,(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":s.t(`inspector.goalClear`,{ns:`conversation`}),className:`hover:text-danger`,disabled:r!==null,onClick:()=>void f(`clear`,t),size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(ge,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,$.jsx)(A,{children:s.t(`inspector.goalClear`,{ns:`conversation`})})]})]}),icon:(0,$.jsx)(gr,{className:`size-3.5`}),title:s.t(`inspector.goal`,{ns:`conversation`}),children:(0,$.jsxs)(`div`,{className:`space-y-2 px-2 py-1`,children:[(0,$.jsx)(`p`,{className:`whitespace-pre-wrap break-words text-label leading-5 text-foreground`,children:e.objective}),(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center gap-x-3 gap-y-1 text-caption text-muted-foreground`,children:[(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1`,children:[(0,$.jsx)(`span`,{"aria-hidden":`true`,className:`size-1.5 rounded-full bg-brand`}),l]}),(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1`,children:[(0,$.jsx)(Xn,{"aria-hidden":`true`,className:`size-3`}),vd(e.timeUsedSeconds)]}),(0,$.jsx)(`span`,{children:e.tokenBudget===null?s.t(`inspector.goalTokens`,{ns:`conversation`,used:c.format(e.tokensUsed)}):s.t(`inspector.goalTokenBudget`,{budget:c.format(e.tokenBudget),ns:`conversation`,used:c.format(e.tokensUsed)})})]}),a===null?null:(0,$.jsx)(`p`,{className:`text-caption text-danger`,role:`alert`,children:s.t(`inspector.goalMutationFailed`,{ns:`conversation`})})]})})}var bd={project:er,changes:nt,context:Vn,file:De,history:rr};function xd({activeTab:e,availableTabs:t,onCloseFile:n,onTabChange:r}){return(0,$.jsx)(`div`,{className:`flex min-w-0 flex-1 items-center gap-0.5 overflow-x-auto`,role:`tablist`,children:t.map(t=>{let i=bd[t],a=t===`file`&&n!==void 0;return(0,Q.createElement)(`div`,{...a?{"aria-label":s.t(`inspector.file`,{ns:`conversation`}),role:`group`}:{},className:`relative flex shrink-0 items-center`,key:t},(0,$.jsxs)(g,{"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,$.jsx)(i,{"aria-hidden":`true`}),(0,$.jsx)(`span`,{children:s.t(`inspector.${t}`,{ns:`conversation`})})]}),a?(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":s.t(`inspector.closeFile`,{ns:`conversation`}),className:`absolute right-1 size-4`,onClick:n,size:`embedded`,type:`button`,variant:`ghost`,children:(0,$.jsx)(It,{className:`size-3`,"aria-hidden":`true`})})}),(0,$.jsx)(A,{children:s.t(`inspector.closeFile`,{ns:`conversation`})})]}):null)})})}function Sd({onClose:e}){if(e===void 0)return null;let t=s.t(`shell.closeInspector`,{ns:`workbench`});return(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":t,onClick:e,size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(et,{"aria-hidden":`true`})})}),(0,$.jsx)(A,{children:t})]})}function Cd({activeTab:e,availableTabs:t,contextOnly:n,onClose:r,onCloseFile:i,onTabChange:a}){return n&&t.length===1?(0,$.jsx)(`div`,{className:`absolute right-2 top-2 z-10 min-[1101px]:hidden`,children:(0,$.jsx)(Sd,{onClose:r})}):(0,$.jsxs)(`div`,{className:`flex h-workbench-header w-full min-w-0 shrink-0 items-center gap-2 overflow-hidden px-1.5`,children:[(0,$.jsx)(xd,{activeTab:e,availableTabs:t,...i===void 0?{}:{onCloseFile:i},onTabChange:a}),(0,$.jsx)(`div`,{className:`shrink-0 min-[1101px]:hidden`,children:(0,$.jsx)(Sd,{onClose:r})})]})}var wd=Object.defineProperty,Td=Object.defineProperties,Ed=Object.getOwnPropertyDescriptors,Dd=Object.getOwnPropertySymbols,Od=Object.prototype.hasOwnProperty,kd=Object.prototype.propertyIsEnumerable,Ad=(e,t,n)=>t in e?wd(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,jd=(e,t)=>{for(var n in t||={})Od.call(t,n)&&Ad(e,n,t[n]);if(Dd)for(var n of Dd(t))kd.call(t,n)&&Ad(e,n,t[n]);return e},Md=(e,t)=>Td(e,Ed(t)),Nd=(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 Pd(e,t){return typeof e==`function`?e(t):e}function Fd(e,t){return n=>{t.setState(t=>Md(jd({},t),{[e]:Pd(n,t[e])}))}}var Id=(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)}),Ld=`Headless Tree: `,Rd=e=>Error(Ld+e),zd=e=>console.warn(Ld+e),Bd={key:`tree`,getInitialState:e=>jd({expandedItems:[],focusedItem:null},e),getDefaultConfig:(e,t)=>jd({setExpandedItems:Fd(`expandedItems`,t),setFocusedItem:Fd(`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)){zd(`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(()=>Nd(null,null,function*(){var t,n,r,i;let a=e.getFocusedItem();(n=(t=e.getConfig()).scrollToItem)==null||n.call(t,a),yield Id(()=>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)=>Md(jd({},e?.()),{role:`tree`,"aria-label":n??``,ref:t.registerElement}),isSearchOpen:()=>!1},itemInstance:{scrollTo:(e,t)=>Nd(null,[e,t],function*({tree:e,item:t},n){var r,i,a;(i=(r=e.getConfig()).scrollToItem)==null||i.call(r,t),yield Id(()=>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 Md(jd({},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()}}}},Vd=(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(Md(jd({},i),{prev:n}),...e)}}}]},Hd=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 Rd(`${n.key} needs ${e}`)}},Ud=(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},Wd=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),Gd=(e=[])=>Ud(e,Wd(e)),Kd=e=>{let t=e.instanceBuilder??Vd,n=[Bd,...Gd(e.features)];Hd(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)=>jd(jd({},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=jd(jd({},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},qd={key:`selection`,getInitialState:e=>jd({selectedItems:[]},e),getDefaultConfig:(e,t)=>jd({setSelectedItems:Fd(`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})=>Md(jd({},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()))}}}},Jd=e=>e.code!==``&&e.code!==`Unidentified`?e.code:e.key,Yd={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)$/},Xd=new Set([`MetaLeft`,`MetaRight`,`Meta`,`ControlLeft`,`ControlRight`,`Control`,`AltLeft`,`AltRight`,`Alt`,`ShiftLeft`,`ShiftRight`,`Shift`]),Zd=(e,t,n)=>{let r=n.hotkey.toLowerCase().split(`+`),i=r.every(t=>{if(t in Yd)return[...e].some(e=>Yd[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},Qd=(e,t,n,r)=>Object.entries(jd(jd({},n),r)).find(([,n])=>Zd(e,t,n))?.[0],$d={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=Jd({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=Qd(t.current.pressedKeys,e,e.getHotkeyPresets(),u);if(s&&d&&t.current.pressedKeys.delete(d),!p)return;let m=jd(jd({},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=Jd({code:t.code??``,key:t.key??``});r&&((n=e.current).pressedKeys??(n.pressedKeys=new Set),Xd.has(r)&&(e.current.pressedKeys=new Set([...e.current.pressedKeys].filter(e=>Xd.has(e)))),e.current.pressedKeys.delete(r))}},ef={key:`hotkeys-core`,onTreeMount:(e,t)=>{let n=e.getDataRef(),r=t=>{let r=t.target instanceof HTMLInputElement;$d.dispatchKeyDown(e,n,t,{isInputFocused:r,releaseAfterDispatch:r})},i=e=>{$d.dispatchKeyUp(n,e)},a=()=>{$d.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)}},tf=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},nf=(e,t)=>Nd(null,null,function*(){var n,r;let i=e.getConfig(),a=tf(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}),rf=(e,t)=>Nd(null,null,function*(){var n,r,i;let a=e.getConfig(),o=tf(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}),af={key:`async-data-loader`,getInitialState:e=>jd({loadingItemData:[],loadingItemChildrens:[]},e),getDefaultConfig:(e,t)=>jd({setLoadingItemData:Fd(`loadingItemData`,t),setLoadingItemChildrens:Fd(`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)=>Nd(null,[e,t],function*({tree:e},t){return tf(e).current.itemData[t]??(yield nf(e,t))}),loadChildrenIds:(e,t)=>Nd(null,[e,t],function*({tree:e},t){return tf(e).current.childrenIds[t]??(yield rf(e,t))}),retrieveItemData:({tree:e},t,n=!1)=>{let r=e.getConfig(),i=tf(e);return i.current.itemData[t]?i.current.itemData[t]:(!e.getState().loadingItemData.includes(t)&&!n&&setTimeout(()=>nf(e,t)),r.createLoadingItemData?.call(r)??null)},retrieveChildrenIds:({tree:e},t,n=!1)=>{let r=tf(e);return r.current.childrenIds[t]?r.current.childrenIds[t]:(e.getState().loadingItemChildrens.includes(t)||n||setTimeout(()=>rf(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)=>Nd(null,[e,t],function*({tree:e,itemId:t},n){var r;n||(r=tf(e).current.itemData)==null||delete r[t],yield nf(e,t)}),invalidateChildrenIds:(e,t)=>Nd(null,[e,t],function*({tree:e,itemId:t},n){var r;n||(r=tf(e).current.childrenIds)==null||delete r[t],yield rf(e,t)}),updateCachedChildrenIds:({tree:e,itemId:t},n,r)=>{tf(e).current.childrenIds[t]=n,r||e.rebuildTree()},updateCachedData:({tree:e,itemId:t},n,r)=>{tf(e).current.itemData[t]=n,r||e.rebuildTree()},hasLoadedData:({tree:e,itemId:t})=>e.getDataRef().current.itemData[t]!==void 0}},of=(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},sf={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={}),of(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={}),of(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={}),of(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={}),of(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={}),of(a,i.current.memo.rename)}}},cf=()=>{},lf=(e,t,n,r)=>{for(let i=r;i>=0;i--)if(e[i][t]?.[n])return i;return null},uf=(e,t,n,r,i,a)=>{let o=lf(e,t,r,i-1);return(e[i][t]?.[r])(Md(jd({},n),{prev:o===null?null:(...i)=>uf(e,t,n,r,o,i)}),...a)},df=(e,t,n)=>{let r={},i=new Proxy({},{has(n,r){return typeof r==`symbol`||r===`toJSON`?!1:!!lf(e,t,r,e.length-1)},get(n,i){if(typeof i!=`symbol`)return i===`toJSON`?{}:(...n)=>{let a=lf(e,t,i,e.length-1);if(a===null)throw Rd(`feature missing for method ${i}`);return uf(e,t,r,i,a,n)}}});return Object.assign(r,n(i)),[i,cf]},ff=Object.defineProperty,pf=Object.defineProperties,mf=Object.getOwnPropertyDescriptors,hf=Object.getOwnPropertySymbols,gf=Object.prototype.hasOwnProperty,_f=Object.prototype.propertyIsEnumerable,vf=(e,t,n)=>t in e?ff(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,yf=(e,t)=>{for(var n in t||={})gf.call(t,n)&&vf(e,n,t[n]);if(hf)for(var n of hf(t))_f.call(t,n)&&vf(e,n,t[n]);return e},bf=(e,t)=>pf(e,mf(t)),xf=e=>{let[t]=(0,Q.useState)(()=>({current:Kd(e)})),[n,r]=(0,Q.useState)(()=>t.current.getState());return(0,Q.useEffect)(()=>(t.current.setMounted(!0),t.current.rebuildTree(),()=>{t.current.setMounted(!1)}),[t]),t.current.setConfig(t=>bf(yf(yf({},t),e),{state:yf(yf({},n),e.state),setState:t=>{var n;r(t),(n=e.setState)==null||n.call(e,t)}})),t.current},Sf=`\0project-file-tree-root`,Cf=`\0project-file-tree-project-root`,wf=`\0project-file-tree-status:`;function Tf(e,t){return typeof e==`function`?e(t):e}function Ef(e){return e.kind===`status`?e.status===`empty`?s.t(`inspector.emptyFolder`,{ns:`conversation`}):s.t(`inspector.readFolderError`,{name:e.name,ns:`conversation`}):e.name}function Df(e){return e.split(`/`).at(-1)??e}function Of(e){return e.path}function kf(e,t){return`${wf}${t}:${e??`root`}`}function Af(e){return{kind:`entry`,name:Df(e.path),path:e.path,type:e.type}}function jf(e){return e instanceof Error?e.message:String(e)}function Mf({client:e,projectId:t,projectName:n,queryClient:r,rootPath:i}){let a=new Map,o={kind:`root`,name:n,type:`directory`};return a.set(Cf,o),{async getChildrenWithData(s){if(s===`\0project-file-tree-root`)return[{data:o,id:Cf}];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(pn(t,i,l,e));if(o.entries.length===0){let e=kf(l,`empty`),t={directoryPath:l,kind:`status`,name:l===null?n:Df(l),status:`empty`,type:`status`};return a.set(e,t),[{data:t,id:e}]}return o.entries.map(e=>{let t=Of(e),n=Af(e);return a.set(t,n),{data:n,id:t}})}catch(e){let t=kf(l,`error`),r={directoryPath:l,kind:`status`,message:jf(e),name:l===null?n:Df(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:Df(e),path:e,type:`directory`})}}}function Nf(e,t){let n=[...e].filter(e=>!t.has(e));return new Set([...t].filter(e=>!n.some(t=>e.startsWith(`${t}/`))))}function Pf(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=Ln(t);r.set(i.path,{additions:(a?.additions??0)+o.additions,removals:(a?.removals??0)+o.removals})}return r}function Ff({path:e,stats:t}){return(0,$.jsxs)(`span`,{"aria-label":s.t(`inspector.changeIndicator`,{additions:t.additions,ns:`conversation`,path:e,removals:t.removals}),className:`ml-auto flex shrink-0 items-center gap-1 pl-2 text-meta group-hover/file-tree-node:invisible group-focus-within/file-tree-node:invisible`,children:[(0,$.jsxs)(`span`,{className:`font-medium text-diff-added`,children:[`+`,t.additions]}),(0,$.jsxs)(`span`,{className:`font-medium text-diff-removed`,children:[`-`,t.removals]})]})}function If({onMenuOpen:e,onOpenProjectPath:t,onReferenceProjectPath:n,onRefreshProject:r,projectName:i,projectOpenApps:a,projectOpenPending:o,projectPath:c,refreshing:l=!1}){let u=(0,Q.useRef)(!1),[d,f]=(0,Q.useState)(!1),p=l||d,m=s.t(`inspector.refreshProject`,{name:i,ns:`conversation`});return(0,$.jsxs)(le,{children:[(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":m,className:`size-5 shrink-0 transition-opacity ${p?`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:p,onClick:()=>{u.current||(u.current=!0,f(!0),Promise.resolve().then(r).finally(()=>{u.current=!1,f(!1)}))},size:`embedded`,type:`button`,variant:`embedded`,children:(0,$.jsx)(me,{"aria-hidden":`true`,className:`size-3.5 ${p?`animate-spin`:``}`})})}),(0,$.jsx)(A,{side:`left`,children:m})]}),(0,$.jsx)(ai,{apps:a,isPending:o,onOpen:e,onReference:n,onSelect:t,target:{absolutePath:c,path:c,relativePath:`.`,type:`directory`}})]})}function Lf(e,t){return e.kind===`status`?null:e.kind===`root`?{absolutePath:t.path,path:t.path,relativePath:`.`,type:`directory`}:{absolutePath:ri(t.path,e.path),path:e.path,relativePath:e.path,...e.type===`file`?{reference:{name:e.name,path:e.path,rootId:t.id,rootPath:t.path}}:{},type:e.type}}function Rf({children:e,isPending:t,onClose:n}){return(0,$.jsx)(Mn,{onOpenChange:e=>{!e&&!t&&n()},open:!0,children:(0,$.jsx)(ht,{className:`max-w-96 p-4`,onEscapeKeyDown:e=>{t&&e.preventDefault()},onInteractOutside:e=>{t&&e.preventDefault()},children:e})})}function zf({initialName:e,isPending:t,onClose:n,onRename:r,targetType:i}){let{t:o}=a(`workbench`),[s,c]=(0,Q.useState)(e),l=s.trim(),u=l===`.`||l===`..`||/[/\\]/u.test(l);return(0,$.jsx)(Rf,{isPending:t,onClose:n,targetType:i,children:(0,$.jsxs)(`form`,{className:`grid gap-4`,onSubmit:t=>{t.preventDefault(),!u&&l!==e&&r(l)},children:[(0,$.jsxs)(Ut,{children:[(0,$.jsx)(qt,{children:o(`projectFile.renameTitle`)}),(0,$.jsx)(Gt,{children:o(`projectFile.renameDescription.${i}`)})]}),(0,$.jsx)(he,{"aria-label":o(`projectFile.name`),autoFocus:!0,disabled:t,maxLength:255,onChange:e=>{c(e.currentTarget.value)},value:s}),(0,$.jsxs)(wt,{children:[(0,$.jsx)(g,{disabled:t,onClick:n,type:`button`,variant:`ghost`,children:o(`actions.cancel`)}),(0,$.jsx)(g,{disabled:t||u||l.length===0||l===e,type:`submit`,children:o(`openMenu.rename`)})]})]})})}function Bf({isPending:e,name:t,onClose:n,onDelete:r,targetType:i}){let{t:o}=a(`workbench`);return(0,$.jsxs)(Rf,{isPending:e,onClose:n,targetType:i,children:[(0,$.jsxs)(Ut,{children:[(0,$.jsx)(qt,{children:o(`projectFile.deleteTitle`,{name:t})}),(0,$.jsx)(Gt,{children:o(`projectFile.deleteDescription.${i}`)})]}),(0,$.jsxs)(wt,{children:[(0,$.jsx)(g,{disabled:e,onClick:n,type:`button`,variant:`ghost`,children:o(`actions.cancel`)}),(0,$.jsx)(g,{disabled:e,onClick:r,type:`button`,variant:`destructive`,children:o(`openMenu.delete`)})]})]})}function Vf(e){let t=e.lastIndexOf(`/`);return t===-1?null:e.slice(0,t)}function Hf({client:e,name:t,onRefreshDirectory:n,path:r,projectId:i,projectPath:a,targetType:o}){let[s,c]=(0,Q.useState)(null),l=(0,Q.useRef)(null),u=z({mutationFn:async t=>{if(r===null)throw TypeError(`Project file path is unavailable`);let n={idempotencyKey:l.current??D()};return t.action===`rename`&&t.name!==void 0?e.renameProjectFile(i,a,{name:t.name,path:r},n):e.deleteProjectFile(i,a,{path:r},n)},onSuccess:()=>{c(null),l.current=null,r!==null&&n(Vf(r))}}),d=e=>{l.current=D(),c(e)},f=()=>{u.isPending||(c(null),l.current=null)};return{dialog:r===null||s===null?null:s===`rename`?(0,$.jsx)(zf,{initialName:t,isPending:u.isPending,onClose:f,onRename:e=>{u.mutate({action:`rename`,name:e})},targetType:o}):(0,$.jsx)(Bf,{isPending:u.isPending,name:t,onClose:f,onDelete:()=>{u.mutate({action:`delete`})},targetType:o}),isPending:u.isPending,openDelete:()=>{d(`delete`)},openRename:()=>{d(`rename`)}}}var Uf=16,Wf=8,Gf={height:600,width:320},Kf=(0,Q.memo)(function({changeStatsByPath:e,client:t,item:n,onOpenProjectPath:r,onReferenceProjectPath:i,onRefreshDirectory:a,onRefreshProject:o,onSelect:c,projectOpenApps:l,projectOpenPending:u,projectId:d,projectPath:f,projectRootId:p,projectRefreshing:m}){let h=n.getItemData(),_=Ef(h),v=Lf(h,{id:p,path:f}),y=v?.type===`file`?()=>{rn({onOpenSystemDefault:e=>{r(`system-default`,e)},projectId:d,reference:{lineNumber:null,path:v.path},rootPath:f})}:void 0,b=h.kind===`root`?e=>{r(e)}:r,{ref:x,...S}=n.getProps(),C=n.getItemMeta().level,w=n.isFolder(),T=n.isExpanded(),E=n.isLoading(),D=h.kind===`status`?h.name:_,k=h.kind===`entry`?e.get(h.path):void 0,j=Hf({client:t,name:_,onRefreshDirectory:a,path:h.kind===`entry`?h.path:null,projectId:d,projectPath:f,targetType:h.type===`status`?`file`:h.type});if(h.kind===`status`)return(0,$.jsxs)(`div`,{...S,className:`flex h-7 items-center gap-2 pr-1.5 text-caption ${h.status===`error`?`text-diff-removed`:`text-muted-foreground`}`,ref:x,style:{paddingLeft:C*Uf+6},children:[(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:_}),h.status===`error`?(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":s.t(`inspector.refreshFolder`,{name:D,ns:`conversation`}),onClick:e=>{e.stopPropagation(),a(h.directoryPath)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(me,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,$.jsx)(A,{children:s.t(`inspector.refreshFolder`,{name:D,ns:`conversation`})})]}):null]});let ee=(0,$.jsxs)(`div`,{...S,className:`group/file-tree-node flex h-7 w-full items-center gap-1 rounded-control pr-1.5 text-left transition-colors hover:bg-control-hover focus-visible:shadow-focus focus-visible:outline-none ${n.isSelected()?`bg-control`:``}`,onContextMenu:e=>{S.onContextMenu?.(e),c(n.getId())},onKeyDown:e=>{S.onKeyDown?.(e),e.target===e.currentTarget&&(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),n.primaryAction(),w&&(T?n.collapse():n.expand()))},ref:x,style:{paddingLeft:C*Uf+2},children:[w?(0,$.jsx)(g,{"aria-label":s.t(T?`agentComponents.folderCollapse`:`agentComponents.folderExpand`,{name:_,ns:`conversation`}),className:`inline-grid size-5 shrink-0 place-items-center rounded-control text-muted-foreground hover:text-foreground focus-visible:shadow-focus focus-visible:outline-none`,onClick:e=>{e.stopPropagation(),T?n.collapse():n.expand()},size:`embedded`,type:`button`,variant:`embedded`,children:E?(0,$.jsx)(K,{"aria-hidden":`true`,className:`size-3.5 animate-spin`}):(0,$.jsx)(oe,{"aria-hidden":`true`,className:`size-3.5 transition-transform ${T?`rotate-90`:``}`})}):(0,$.jsx)(`span`,{"aria-hidden":`true`,className:`size-5 shrink-0`}),w?T?(0,$.jsx)(se,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-brand`}):(0,$.jsx)(de,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-brand`}):(0,$.jsx)(Z,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-muted-foreground`}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,title:h.kind===`entry`?h.path:_,children:_}),h.kind===`entry`&&k!==void 0?(0,$.jsx)(Ff,{path:h.path,stats:k}):null,h.kind===`root`?(0,$.jsx)(If,{onMenuOpen:()=>{c(n.getId())},onOpenProjectPath:r,onReferenceProjectPath:i,onRefreshProject:o,projectName:_,projectOpenApps:l,projectOpenPending:u,projectPath:f,refreshing:m}):v===null?null:(0,$.jsx)(le,{children:(0,$.jsx)(ai,{apps:l,isPending:u,onDelete:j.openDelete,onOpen:()=>{c(n.getId())},...y===void 0?{}:{onOpenInNewWindow:y},onReference:i,onRename:j.openRename,onSelect:r,target:v})})]});return(0,$.jsxs)($.Fragment,{children:[v===null?ee:(0,$.jsx)(li,{apps:l,isPending:u,onOpen:()=>{c(n.getId())},onReference:i,...y===void 0?{}:{onOpenInNewWindow:y},onSelect:b,target:v,...h.kind===`entry`?{onDelete:j.openDelete,onRename:j.openRename}:{},children:ee}),j.dialog]})});function qf({client:e,expandedPaths:t,fileChangesByPath:n,onExpandedPathsChange:r,onOpenFileDiff:i,onOpenProjectFile:o,onOpenProjectPath:c,onReferenceProjectPath:l,onRefreshProject:u,projectId:d,projectName:f,projectOpenApps:p,projectOpenPending:m,projectPath:h,projectRootId:g,projectRefreshing:_=!1}){a(`conversation`);let v=x(),y=(0,Q.useRef)(null),b=(0,Q.useRef)(()=>void 0),[S,C]=(0,Q.useState)(!0),[w,T]=(0,Q.useState)([]),E=(0,Q.useMemo)(()=>Mf({client:e,projectId:d,projectName:f,queryClient:v,rootPath:h}),[e,d,f,h,v]),D=(0,Q.useMemo)(()=>[...S?[Cf]:[],...t],[t,S]),O=(0,Q.useCallback)(e=>{let n=Tf(e,D);C(n.includes(Cf)),r(Nf(t,new Set(n.filter(e=>e!==Cf))))},[D,t,r]),k=(0,Q.useCallback)(e=>{let t=Tf(e,w).at(-1)??w.at(-1);T(t===void 0?[]:[t])},[w]),A=xf({createLoadingItemData:()=>({kind:`root`,name:f,type:`directory`}),dataLoader:E,features:[af,qd,ef,sf],getItemName:e=>Ef(e.getItemData()),indent:Uf,instanceBuilder:df,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?o(t.path):i(r)},rootItemId:Sf,scrollToItem:e=>{b.current(e.getId())},setExpandedItems:O,setSelectedItems:k,state:{expandedItems:D,selectedItems:w}}),j=A.getItems(),ee=(0,Q.useMemo)(()=>n.size===0?new Map:Pf(n,j.map(e=>e.getItemData())),[n,j]),M=(0,Q.useMemo)(()=>new Map(j.map((e,t)=>[e.getId(),t])),[j]),N=la({count:j.length,estimateSize:()=>28,getItemKey:e=>j[e]?.getKey()??e,getScrollElement:()=>y.current,initialRect:Gf,overscan:Wf});b.current=e=>{let t=M.get(e);t!==void 0&&N.scrollToIndex(t,{align:`auto`})};let P=(0,Q.useCallback)(async(e,t=!1)=>{await v.invalidateQueries({exact:!0,queryKey:[`projects`,d,h,`file-tree`,e],refetchType:`none`});let n=e??`\0project-file-tree-project-root`;await A.getItemInstance(n).invalidateChildrenIds(t)},[d,h,v,A]),F=(0,Q.useCallback)(()=>Promise.all([Promise.resolve(u()),P(null,!0),...[...t].map(e=>P(e,!0))]),[t,u,P]),{ref:I,...L}=A.getContainerProps(s.t(`inspector.fileTree`,{ns:`conversation`}));return(0,$.jsxs)(`div`,{...L,className:`h-full w-full cursor-default overflow-y-auto font-mono text-label text-foreground`,"data-project-file-tree":``,ref:e=>{y.current=e,I?.(e)},children:[j.length===0?(0,$.jsxs)(`div`,{"aria-expanded":S,"aria-label":s.t(`inspector.projectFilesLoading`,{ns:`conversation`}),"aria-selected":`false`,className:`flex h-7 items-center gap-1.5 px-1.5 text-muted-foreground`,role:`treeitem`,children:[(0,$.jsx)(K,{"aria-hidden":`true`,className:`size-3.5 animate-spin`}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:f})]}):null,(0,$.jsx)(`div`,{className:`relative w-full`,style:{height:N.getTotalSize()},children:N.getVirtualItems().map(t=>{let n=j[t.index];return n===void 0?null:(0,$.jsx)(`div`,{className:`absolute left-0 top-0 w-full`,"data-index":t.index,style:{height:28,transform:`translateY(${String(t.start)}px)`},children:(0,$.jsx)(Kf,{changeStatsByPath:ee,client:e,item:n,onOpenProjectPath:c,onReferenceProjectPath:l,onRefreshDirectory:e=>{P(e)},onRefreshProject:F,onSelect:e=>{T([e])},projectOpenApps:p,projectOpenPending:m,projectId:d,projectPath:h,projectRootId:g,projectRefreshing:_})},t.key)})})]})}var Jf=new Set,Yf=new Map,Xf=(0,Q.lazy)(async()=>({default:(await gn(()=>import(`./git-history-panel-4j8odsDb.js`),__vite__mapDeps([21,1,2,4,5,6,7,10,22,23,13,11,12,24,3,8,9,14,15,20,25,26]))).GitHistoryPanel})),Zf=(0,Q.lazy)(async()=>({default:(await gn(()=>import(`./workbench-inspector-changes-CWIx9Os6.js`),__vite__mapDeps([27,1,2,4,5,6,8,9,10,13,11,12,28,29,24,30,3,7,14,15]))).WorkbenchInspectorChanges}));function Qf({backgroundTerminals:e=[],backgroundTerminalsError:t=null,backgroundTerminalsPending:n=!1,contextOnly:r=!1,expandedFileTreePaths:i=Jf,fileSelection:o=null,gitStatus:c,gitStatusDetails:l,gitStatusDetailsError:u=null,gitStatusDetailsPending:d=!1,gitStatusError:f=null,gitStatusPending:p=!1,gitStatusRefreshing:m=!1,gitClient:h,mcpServers:_=[],mcpServersRetryAvailable:v=!0,mcpServersRefreshing:y=!1,mcpServersRetrying:b=!1,onFileTreeExpandedChange:x=()=>void 0,onClearGoal:S=()=>Promise.resolve(),onGoalStatusChange:C=()=>Promise.resolve(),onOpenFileDiff:w=()=>void 0,onOpenTaskAttachment:T=()=>void 0,onOpenProjectPath:E=()=>void 0,onOpenProjectFile:D=()=>void 0,onReferenceProjectPath:j=()=>void 0,onOpenSubagent:ee=()=>void 0,onReloadMcpServers:N=()=>void 0,onRefreshGitStatus:P=()=>void 0,onRefreshProject:F=()=>void 0,onCommitChanges:I=()=>void 0,onClose:L,onCloseFile:R,onTerminateBackgroundTerminal:z=()=>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:Y=`project`,task:re,taskId:ie,terminatingTerminalId:ae=null}){a(`conversation`);let X=xi(ie,c,{contextOnly:r,fileOpen:o!==null}),{activeTab:Z}=Si({contextOnly:r,fileOpen:o!==null,gitStatus:c,inspectorOpen:!0,requestedTab:Y,taskId:ie}),oe=c!==void 0&&c.repositoryMode!==`none`,{changeStats:se,displayChanges:ce,fileChangesByPath:le}=(0,Q.useMemo)(()=>oe&&(Z===`context`||Z===`project`)?gd(c,l):{changeStats:void 0,displayChanges:[],fileChangesByPath:Yf},[Z,c,l,oe]),ue=G.split(/[\\/]/u).filter(Boolean).at(-1)??H,de=(0,$.jsxs)(`div`,{className:`h-full space-y-5 overflow-y-auto p-2.5`,children:[re?.goal===null||re?.goal===void 0?null:(0,$.jsx)(yd,{goal:re.goal,onClear:S,onStatusChange:C}),oe&&ce.length>0?(0,$.jsx)(_d,{changeCount:ce.length,changeStats:se,onCommitChanges:I,onOpenChanges:()=>{B(`changes`)}}):null,e.length>0||n||t!==null?(0,$.jsx)(Ju,{error:t,isPending:n,onTerminate:z,terminals:e,terminatingTerminalId:ae}):null,ne.length>0?(0,$.jsx)(Yu,{onOpenSubagent:ee,subagents:ne}):null,(0,$.jsx)(Xu,{canRetry:v,isRefreshing:y,isRetrying:b,onRetry:N,servers:_}),(0,$.jsx)(cd,{onOpenAttachment:T,...V===void 0?{}:{projectId:V},skills:te,...ie===void 0?{}:{taskId:ie},turns:re?.turns??[]}),re?.plan===null||re?.plan===void 0?null:(0,$.jsx)(md,{plan:re.plan})]});return(0,$.jsxs)(`aside`,{"aria-label":s.t(`inspector.title`,{ns:`conversation`}),className:`workbench-inspector relative z-30 flex min-h-0 flex-col bg-panel shadow-divider-reverse`,children:[(0,$.jsx)(Cd,{activeTab:Z,availableTabs:X,contextOnly:r,onClose:L,...R===void 0?{}:{onCloseFile:R},onTabChange:B}),(0,$.jsx)(`div`,{className:`min-h-0 flex-1 overflow-hidden`,role:r?void 0:`tabpanel`,children:Z===`file`&&o!==null?o.kind===`diff`?(0,$.jsx)(Hu,{change:o.change}):(0,$.jsx)(Te,{client:h??k,previewKind:o.kind,projectId:V??H,reference:o.reference,...q===void 0?{}:{rootPath:q}}):Z===`project`?(0,$.jsx)(`div`,{className:`flex h-full min-h-0 flex-col`,children:(0,$.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col`,children:[f===null?p&&c===void 0?(0,$.jsx)(`p`,{className:`mb-2 px-4 text-caption text-muted-foreground`,children:s.t(`inspector.gitLoading`,{ns:`conversation`})}):null:(0,$.jsxs)(`div`,{className:`mx-2.5 mb-2 flex items-center gap-2 rounded-control bg-control px-2 py-2`,children:[(0,$.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,$.jsx)(`p`,{className:`text-label text-diff-removed`,children:s.t(`inspector.gitChangesRetrying`,{ns:`conversation`})})}),(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":s.t(`inspector.refreshGit`,{ns:`conversation`}),disabled:m,onClick:P,size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(me,{"aria-hidden":`true`,className:`size-3.5 ${m?`animate-spin`:``}`})})}),(0,$.jsx)(A,{children:s.t(`inspector.refreshGit`,{ns:`conversation`})})]})]}),(0,$.jsx)(`div`,{className:`min-h-0 flex-1 px-2.5 pb-2.5`,children:(0,$.jsx)(qf,{client:h??k,expandedPaths:i,fileChangesByPath:le,onExpandedPathsChange:x,onOpenFileDiff:w,onOpenProjectFile:D,onOpenProjectPath:E,onReferenceProjectPath:j,onRefreshProject:F,projectId:V??H,projectName:ue,projectOpenApps:U,projectOpenPending:W,projectPath:G,projectRootId:K,projectRefreshing:J},`${V??H}:${G}`)})]})}):Z===`changes`?(0,$.jsx)(Q.Suspense,{fallback:null,children:(0,$.jsx)(Zf,{client:h,detailsError:u,detailsPending:d,detailsStatus:l,gitStatus:c,gitStatusError:f,onOpenFileDiff:w,projectId:V,rootPath:G})}):Z===`history`&&V!==void 0?(0,$.jsx)(Q.Suspense,{fallback:null,children:(0,$.jsx)(Xf,{...h===void 0?{}:{client:h},projectId:V,rootPath:G})}):de})]})}function $f(e,t){return`${e}\u0000${t}`}function ep(e,t,n){let r=new Map,i=new Map(t.map(e=>[$f(e.projectId,e.id),e.title]));for(let t of e){let e=t.roots[0]?.path;e!==void 0&&r.set(t.id,e)}let a=[],o=!1,s=!1,c=!1,l=!1;for(let e of n.values()){let t=e.pendingApprovalRequestIds.size>0||e.attention===`approval`,n=e.attention===`completed`;if(l||=t,o||=e.attention===`failed`,c||=e.isRunning,s||=n,!e.isRunning&&!t&&!n)continue;let u=r.get(e.projectId);u===void 0&&e.projectId!==`temporary`||a.push({projectId:e.projectId,...u===void 0?{}:{rootPath:u},status:t?`waiting`:n?`completed`:`running`,taskId:e.taskId,taskName:i.get($f(e.projectId,e.taskId))??e.taskId})}return{animationName:l?`waiting`:o?`failed`:c?`running`:s?`review`:`idle`,tasks:a}}var tp=`codexly.workbench-pet-position`,np={version:1,xRatio:1,yRatio:1};function rp(e){return typeof e==`number`&&Number.isFinite(e)&&e>=0&&e<=1}function ip(e){try{let t=JSON.parse(e.getItem(`codexly.workbench-pet-position`)??`null`);return t?.version===1&&rp(t.xRatio)&&rp(t.yRatio)?{version:1,xRatio:t.xRatio,yRatio:t.yRatio}:np}catch{return np}}function ap(e,t){try{e.setItem(tp,JSON.stringify(t))}catch{}}function op(e){return{x:Math.max(0,e.width-e.petWidth),y:Math.max(0,e.height-e.petHeight)}}function sp(e,t){let n=op(t);return{x:Math.min(n.x,Math.max(0,e.x)),y:Math.min(n.y,Math.max(0,e.y))}}function cp(e,t){let n=op(t);return{x:n.x*e.xRatio,y:n.y*e.yRatio}}function lp(e,t){let n=op(t),r=sp(e,t);return{version:1,xRatio:n.x===0?1:r.x/n.x,yRatio:n.y===0?1:r.y/n.y}}function up(e,t){return e.status===t.status?0:e.status===`completed`?-1:+(t.status===`completed`)}function dp({activity:e,localAccess:t,onTaskSelect:n}){let{t:r}=a(`workbench`),i=(0,$.jsxs)(`button`,{"aria-label":r(`pet.openTask`,{name:e.taskName,status:r(`pet.status.${e.status}`)}),className:`workbench-pet-bubble-button flex h-full w-full min-w-0 appearance-none items-center gap-2 rounded-control border border-separator-strong bg-raised px-2.5 text-left text-body-small text-foreground shadow-control`,onClick:()=>{n(e.projectId,e.taskId)},type:`button`,children:[e.status===`waiting`?(0,$.jsx)(vn,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-warning`}):e.status===`completed`?(0,$.jsx)(_e,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-task-completed`}):(0,$.jsx)(K,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-brand motion-safe:animate-spin`}),(0,$.jsx)(`span`,{className:`min-w-0 truncate`,children:e.taskName})]});return t&&e.rootPath!==void 0?(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:i}),(0,$.jsx)(A,{children:e.rootPath})]}):i}function fp({localAccess:e,onTaskSelect:t,placement:n,tasks:r}){let{t:i}=a(`workbench`);if(r.length===0)return null;let o=r.filter(e=>e.status===`waiting`).length,s=r.toSorted(up);return(0,$.jsxs)(`div`,{className:`workbench-pet-bubbles ${n===`above`?`bottom-full pb-2`:`top-full pt-2`}`,"data-placement":n,onPointerDown:e=>{e.stopPropagation()},children:[(0,$.jsx)(`span`,{"aria-live":`polite`,className:`sr-only`,children:i(`pet.activitySummary`,{count:r.length,waiting:o})}),(0,$.jsx)(`ol`,{"aria-label":i(`pet.activeTasks`),className:`workbench-pet-bubble-list max-h-[40dvh] overflow-y-auto`,children:s.map((n,r)=>(0,$.jsx)(`li`,{className:`workbench-pet-bubble-item`,style:{zIndex:s.length-r},children:(0,$.jsx)(dp,{activity:n,localAccess:e,onTaskSelect:t})},`${n.projectId}:${n.taskId}`))})]})}var pp=4;function mp(e,t){let n=e.animations[t];if(n===void 0)return 0;let r=n.loopStart??n.frames.length;return n.frames.slice(0,r).reduce((e,t)=>e+t.durationMs,0)}function hp(e,t){e.style.transform=`translate3d(${String(t.x)}px, ${String(t.y)}px, 0)`}function gp(e,t){return e.y<Math.min(160,t.height*.4)}function _p({activity:e,localAccess:t,onTaskSelect:n,pet:r}){let{t:i}=a(`workbench`),o=(0,Q.useRef)(null),s=(0,Q.useRef)(null),c=(0,Q.useRef)(null),l=(0,Q.useRef)(null),u=(0,Q.useRef)(null),d=(0,Q.useRef)(null),f=(0,Q.useRef)(null),p=(0,Q.useRef)({x:0,y:0}),m=(0,Q.useRef)(np),h=(0,Q.useRef)(null),g=(0,Q.useRef)(e.animationName),[_,v]=(0,Q.useState)(e.animationName),[y,b]=(0,Q.useState)(!1),[x,S]=(0,Q.useState)(!1);(0,Q.useEffect)(()=>{g.current=e.animationName,u.current===null&&d.current===null&&v(e.animationName)},[e.animationName]),(0,Q.useEffect)(()=>{let e=o.current,t=c.current;if(e===null||t===null)return;m.current=ip(window.localStorage);let n=()=>{let n={height:e.clientHeight,petHeight:t.offsetHeight,petWidth:t.offsetWidth,width:e.clientWidth};l.current=n,p.current=cp(m.current,n),hp(t,p.current),b(gp(p.current,n)),S(!0)};n();let r=new ResizeObserver(n);return r.observe(e),r.observe(t),()=>{r.disconnect()}},[r.assetId]),(0,Q.useEffect)(()=>()=>{h.current!==null&&cancelAnimationFrame(h.current),d.current!==null&&clearTimeout(d.current);let e=c.current,t=f.current,n=l.current;if(e!==null&&t!==null&&(p.current=t,hp(e,t)),n!==null){let e=lp(p.current,n);ap(window.localStorage,e)}},[]);let C=()=>{h.current=null;let e=c.current,t=f.current;e===null||t===null||(f.current=null,p.current=t,hp(e,t))},w=e=>{f.current=e,h.current??=requestAnimationFrame(C)},T=()=>{let e=l.current;e!==null&&(m.current=lp(p.current,e),ap(window.localStorage,m.current))},E=e=>{let t=s.current;if(u.current?.pointerId!==e||t===null)return;u.current=null,t.removeAttribute(`data-dragging`),h.current!==null&&cancelAnimationFrame(h.current),C(),T();let n=l.current;n!==null&&b(gp(p.current,n)),v(`jumping`),d.current!==null&&clearTimeout(d.current),d.current=setTimeout(()=>{d.current=null,v(g.current)},Math.max(1,mp(r,`jumping`)))};return(0,$.jsx)(`div`,{className:`workbench-pet-layer`,children:(0,$.jsx)(`div`,{className:`workbench-pet-boundary`,ref:o,children:(0,$.jsxs)(`div`,{className:`workbench-pet-positioner`,"data-animation":_,ref:c,style:{opacity:+!!x},children:[(0,$.jsx)(fp,{localAccess:t,onTaskSelect:n,placement:y?`below`:`above`,tasks:e.tasks}),(0,$.jsx)(`button`,{"aria-label":i(`pet.move`,{name:r.displayName}),className:`workbench-pet-target`,onKeyDown:e=>{let t=l.current,n=c.current;if(!(t===null||n===null)){if(e.key===`Home`)e.preventDefault(),m.current=np,p.current=cp(np,t);else if([`ArrowDown`,`ArrowLeft`,`ArrowRight`,`ArrowUp`].includes(e.key)){e.preventDefault();let n=e.shiftKey?24:8;p.current=sp({x:p.current.x+(e.key===`ArrowRight`?n:e.key===`ArrowLeft`?-n:0),y:p.current.y+(e.key===`ArrowDown`?n:e.key===`ArrowUp`?-n:0)},t)}else return;hp(n,p.current),T(),b(gp(p.current,t))}},onLostPointerCapture:e=>{E(e.pointerId)},onPointerCancel:e=>{E(e.pointerId)},onPointerDown:e=>{let t=c.current,n=o.current;if(t===null||n===null)return;let r={height:n.clientHeight,petHeight:t.offsetHeight,petWidth:t.offsetWidth,width:n.clientWidth};l.current=r,u.current={bounds:r,directionChosen:!1,origin:p.current,pointerId:e.pointerId,startX:e.clientX,startY:e.clientY},e.currentTarget.setPointerCapture(e.pointerId),e.currentTarget.setAttribute(`data-dragging`,``)},onPointerMove:e=>{let t=u.current;if(t?.pointerId!==e.pointerId)return;let n=e.clientX-t.startX,r=e.clientY-t.startY;w(sp({x:t.origin.x+n,y:t.origin.y+r},t.bounds)),!t.directionChosen&&Math.abs(n)>=pp&&(t.directionChosen=!0,v(n<0?`running-left`:`running-right`))},onPointerUp:e=>{E(e.pointerId)},ref:s,type:`button`,children:(0,$.jsx)(ae,{animationName:_,pet:r})})]})})})}function vp({petId:e}){let t=xn(),{projects:n,tasks:r}=Qt(),{taskActivity:i}=ln(),a=bn(),o=G(re()),s=(0,Q.useMemo)(()=>ep(n,r,i),[n,i,r]),c=o.data?.data.find(t=>t.id===e&&t.availability===`ready`),l=(0,Q.useCallback)((e,t)=>{a({params:{projectId:e,taskId:t},to:`/p/$projectId/t/$taskId`})},[a]);return c===void 0?null:(0,$.jsx)(_p,{activity:s,localAccess:t.status?.mode===`local`,onTaskSelect:l,pet:c})}function yp({settings:e}){return e?.enabled===!0?(0,$.jsx)(vp,{petId:e.selectedPetId}):null}function bp({context:e,projectId:t,taskId:n,temporary:r}){let i=(0,Q.useRef)(null),{appInfoQuery:a,backgroundTerminals:o,beginNewChatSubmission:s,capabilities:c,client:l,closeInspector:u,closeSidebar:d,draftSettings:f,error:p,fastModeAvailable:m,fastModeDefault:h,expandedFileTreePaths:_,gitStatusQuery:v,globalSettings:y,globalSettingsQuery:b,handleNewChatSubmissionStateChange:x,handleNewTaskProjectChange:S,handleTaskCreated:C,handleTaskStarted:w,inspectorOpen:T,inspectorMaximumWidth:E,inspectorTab:D,inspectorTask:k,inspectorWidth:j,mcpServersQuery:ee,mcpServersReloadMutation:N,models:P,modelsQuery:F,newChatSubmissionStartedAt:I,openFileDiff:L,openProjectFileDiff:R,openFileReview:z,openMessageFileReference:B,openProjectFile:V,openProjectFolder:H,pendingTaskSelection:U,projectDefaultsQuery:W,projectFolderOpenDisabled:G,projectName:K,projectRoots:q,projectOpenCapabilitiesQuery:J,projectPath:te,projectPathOpenLockRef:ne,projectPathOpenMutation:Y,taskAttachmentOpenMutation:re,projectTaskState:ie,projects:ae,refreshProjectGitStatus:X,requestNotificationPermission:Z,retry:oe,runtime:se,selectedRootPath:ce,selectedRootId:le,selectedInspectorFile:ue,setFileTreeExpansion:de,setGlobalSettingsSection:fe,setInspectorOpen:pe,setInspectorTab:me,setInspectorWidth:he,setInspectorFileSelection:ge,setSidebarOpen:_e,setSidebarWidth:ve,setSelectedRootId:ye,setSubagentDialogSelection:be,setTaskRenameOpen:xe,sidebarConnectionState:Se,sidebarOpen:Ce,sidebarWidth:we,skillsQuery:Te,startingSnapshot:Ee,subagents:De,taskLaunchState:Oe,title:ke,updateDraftSettings:Ae,updateProjectTaskDefaults:je,workbenchShellRef:Me,t:Ne}=e;return(0,$.jsxs)(`div`,{className:`workbench-shell h-full min-h-0 overflow-hidden bg-window`,"data-inspector-open":T,"data-sidebar-open":Ce,ref:Me,style:{"--inspector-open-width":`${String(j)}px`,"--sidebar-open-width":`${String(we)}px`},children:[(0,$.jsx)(Zt,{...a.data===void 0?{}:{appInfo:a.data},connectionState:Se,onClose:d,onOpenSettings:e=>{fe(e)},projectId:t,...n===void 0&&U?.projectId===t?{taskId:U.taskId}:n===void 0?{}:{taskId:n}}),Ce?(0,$.jsx)(g,{variant:`ghost`,"aria-label":Ne(`shell.closeSidebar`),className:`workbench-sidebar-scrim`,onClick:d,type:`button`}):null,Ce?(0,$.jsx)(Au,{direction:1,label:Ne(`shell.resizeSidebar`),maximumWidth:Ti.maximum,minimumWidth:Ti.minimum,onResize:e=>{Me.current?.style.setProperty(`--sidebar-open-width`,`${String(e)}px`)},onResizeEnd:e=>{Me.current?.removeAttribute(`data-resizing-panel`),ve(e)},onResizeStart:()=>{Me.current?.setAttribute(`data-resizing-panel`,`sidebar`)},panel:`sidebar`,width:we}):null,(0,$.jsxs)(`main`,{"aria-label":Ne(`shell.timeline`),className:`flex min-h-0 min-w-0 flex-col bg-content`,children:[(0,$.jsxs)(`header`,{className:`flex h-workbench-header shrink-0 items-center justify-between gap-3 bg-content px-2.5 shadow-toolbar sm:px-3`,children:[(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":Ne(Ce?`shell.collapseSidebar`:`shell.expandSidebar`),id:`workbench-sidebar-toggle`,onClick:()=>{_e(e=>!e)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(cr,{className:`size-3.5`,"aria-hidden":`true`})})}),(0,$.jsx)(A,{children:Ne(Ce?`shell.collapseSidebar`:`shell.expandSidebar`)})]},Ce?`sidebar-open`:`sidebar-closed`),(0,$.jsx)(`h1`,{"aria-label":ke,className:`min-w-0 text-body-small font-semibold text-foreground`,children:n===void 0?(0,$.jsx)(`span`,{className:`block truncate`,children:ke}):(0,$.jsxs)(g,{variant:`ghost`,"aria-label":Ne(`shell.renameTask`,{title:ke}),className:`group flex max-w-full items-center gap-1 rounded-control px-1 py-0.5 text-left hover:bg-control-hover focus-visible:shadow-focus`,id:`workbench-task-title-rename`,onClick:()=>{xe(!0)},type:`button`,children:[(0,$.jsx)(`span`,{className:`truncate`,children:ke}),(0,$.jsx)(cn,{"aria-hidden":`true`,className:`size-3 shrink-0 text-muted-foreground transition-colors group-hover:text-foreground`})]})})]}),(0,$.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1`,children:[(0,$.jsx)(si,{apps:J.data?.apps??[],className:`hidden min-workbench:flex`,...y===void 0?{}:{defaultOpenAppId:y.defaultOpenAppId},hidden:r,isDetecting:J.isPending,isPending:Y.isPending,onSelect:e=>{Y.reset(),ne.current.run(()=>Y.mutateAsync({appId:e,path:void 0})).catch(()=>void 0)}}),(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":Ne(T?`shell.collapseInspector`:`shell.expandInspector`),id:`workbench-inspector-toggle`,onClick:()=>{pe(e=>!e)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(lr,{className:`size-3.5`,"aria-hidden":`true`})})}),(0,$.jsx)(A,{children:Ne(T?`shell.collapseInspector`:`shell.expandInspector`)})]},T?`inspector-open`:`inspector-closed`)]})]}),p!==null||(ie?.error??null)!==null||F.error!==null||Te.error!==null||!r&&W.error!==null||n===void 0&&b.error!==null?(0,$.jsx)(Xt,{onRetry:()=>void oe()}):n===void 0?(0,$.jsxs)($.Fragment,{children:[r?(0,$.jsx)(fc,{projectId:t,scopeName:Ne(`shell.temporaryTask`),temporary:!0,...I===void 0?{}:{submissionStartedAt:I}}):(0,$.jsx)(fc,{onProjectChange:S,projectId:t,projects:ae,...I===void 0?{}:{submissionStartedAt:I}}),(0,$.jsx)(Du,{capabilities:c,client:l,composerRef:i,followUpBehavior:y?.followUpBehavior??`queue`,fastModeAvailable:m,fastModeDefault:h,models:P,modelsError:null,modelsPending:F.isPending||!r&&W.isPending||b.isPending,onSettingsChange:Ae,onFastModeChange:(e,t)=>je(t,e),onOpenProjectPath:H,onProjectRootChange:ye,onRequestNotificationPermission:Z,onDirectSubmission:s,onSubmissionStateChange:x,onTaskCreated:C,onTaskStarted:w,projectId:t,projectPath:te,projectPathOpenDisabled:G,projectRoots:q,projectToolsEnabled:!r,selectedProjectRootId:le??``,...v.data===void 0?{}:{gitStatus:v.data},settings:f,skills:Te.data?.data??[]})]}):(0,$.jsx)(Bu,{capabilities:c,client:l,composerRef:i,fallbackSettings:f,followUpBehavior:y?.followUpBehavior??`queue`,fastModeAvailable:m,fastModeDefault:h,models:P,modelsError:F.error,modelsPending:F.isPending,onRequestNotificationPermission:Z,onProjectTaskDefaultsChange:je,onOpenProjectPath:H,onProjectRootChange:ye,onTaskStarted:w,projectId:t,projectPath:te,projectPathOpenDisabled:G,projectRoots:q,projectToolsEnabled:!r,selectedProjectRootId:le??``,...v.data===void 0?{}:{gitStatus:v.data},runtime:se,skills:Te.data?.data??[],startingSnapshot:Ee,startingPrompt:Oe,taskId:n,onOpenFileDiff:L,onOpenSourceFile:B,onReviewFileChanges:z})]}),T?(0,$.jsx)(g,{variant:`ghost`,"aria-label":Ne(`shell.closeInspector`),className:`workbench-inspector-scrim`,onClick:u,type:`button`}):null,T?(0,$.jsx)(Au,{direction:-1,label:Ne(`shell.resizeInspector`),maximumWidth:E,minimumWidth:Ei.minimum,onResize:e=>{Me.current?.style.setProperty(`--inspector-open-width`,`${String(e)}px`)},onResizeEnd:e=>{Me.current?.removeAttribute(`data-resizing-panel`),he(e)},onResizeStart:()=>{Me.current?.setAttribute(`data-resizing-panel`,`inspector`)},panel:`inspector`,width:j}):null,T?(0,$.jsx)(Qf,{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:l,mcpServers:ee.data?.data??[],mcpServersRetryAvailable:n!==void 0,mcpServersRefreshing:ee.isFetching&&!ee.isPending,mcpServersRetrying:N.isPending,onClose:u,onCloseFile:()=>{ge(null)},fileSelection:ue,onFileTreeExpandedChange:e=>{de({paths:new Set(e),scope:`${t}:${ce??`temporary`}`})},onClearGoal:()=>n===void 0?Promise.resolve():l.clearTaskGoal(t,n).then(()=>void 0),onGoalStatusChange:e=>n===void 0?Promise.resolve():l.updateTaskGoal(t,n,{status:e}).then(()=>void 0),onReloadMcpServers:()=>{N.mutate()},onOpenFileDiff:R,onOpenProjectPath:(e,t)=>{Y.reset(),ne.current.run(()=>Y.mutateAsync({appId:e,path:t})).catch(()=>void 0)},onOpenProjectFile:V,onOpenTaskAttachment:e=>{n!==void 0&&re.mutate({attachmentId:e,taskId:n})},onReferenceProjectPath:e=>{i.current?.referenceProjectPath(e)},onRefreshGitStatus:()=>{ce!==void 0&&X(t,ce)},onRefreshProject:()=>ce===void 0?Promise.resolve():X(t,ce),onCommitChanges:()=>{me(`changes`),pe(!0)},onTerminateBackgroundTerminal:o.terminateTerminal,onTabChange:me,onOpenSubagent:e=>{n!==void 0&&be({parentTaskId:n,projectId:t,selection:e})},projectName:K,projectId:t,projectOpenApps:J.data?.apps??[],projectOpenPending:Y.isPending,projectPath:te,projectRootId:le??``,...ce===void 0?{}:{sourceRootPath:ce},skills:Te.data?.data??[],subagents:De,tab:D,terminatingTerminalId:o.terminatingTerminalId,...k===void 0?{}:{task:k},...n===void 0?{}:{taskId:n},...v.data===void 0?{}:{gitStatus:v.data}},`${t}:${n??`draft`}`):null,(0,$.jsx)(yp,{settings:y?.pet}),(0,$.jsx)(zu,{context:e,projectId:t,projectToolsEnabled:!r,...n===void 0?{}:{taskId:n}})]})}function xp({projectId:e,taskId:t,temporary:n=!1}){let r=t===void 0?{projectId:e}:{projectId:e,taskId:t};return(0,$.jsx)(bp,{context:Li(Pi({...r,temporary:n}),{...r,temporary:n}),...r,temporary:n})}export{xp as WorkbenchShell};
|
|
14
|
+
`)+1}var Bl=[];function Vl({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=tn(a,d),m=gn(),h=m.read(p),[g,_]=(0,Q.useState)(),[v,y]=(0,Q.useState)(0),[b,x]=(0,Q.useState)(h.attachments),[S,C]=(0,Q.useState)(),[w,T]=(0,Q.useState)(!1),[E,D]=(0,Q.useState)(!1),[O,k]=(0,Q.useState)(),[A,j]=(0,Q.useState)(``),[ee,M]=(0,Q.useState)(null),[N,P]=(0,Q.useState)(``),[F,I]=(0,Q.useState)(),[L,R]=(0,Q.useState)(h.content),[z,B]=(0,Q.useState)(null),[V,H]=(0,Q.useState)(),U=Ml(f,i),{isSubmitting:W,mutationError:G,pendingTaskState:K,reset:q,setIsSubmitting:J,setMutationError:te,setPendingTaskState:ne,setSubmittedTurnState:Y,submittedTurnState:re}=U,ie=(0,Q.useId)(),ae=(0,Q.useRef)(null),X=(0,Q.useRef)(null),Z=(0,Q.useRef)(h.content),oe=(0,Q.useRef)(f),se=(0,Q.useRef)(p),ce=re?.scope===f?re.turnId:void 0,le=K?.scope===f?K.task:void 0,ue=ce===void 0?void 0:c?.store?.getState().turnsById[ce]?.status,de=c?.activeTurnId??(ce!==void 0&&(ue===void 0||ue===`running`)?ce:void 0),fe=d??le?.id,{canInterrupt:pe,canSubmit:me,canSteer:he}=Sc(e,fe!==void 0),ge=c?.connectionState??`connected`,_e=wc({activeTurnId:de,connectionState:ge,isSubmitting:W,mutationFailed:G!==null||c?.error!==null}),ve=Yc(L),ye=g?.scope===f?g.settings:l,be=V?.scope===f?V.mode:void 0,xe=r.find(e=>e.id===ye.model)??r.find(e=>e.isDefault)??r[0],Se=yc(xe,ye.reasoningEffort),Ce=c?.metadata?.contextUsage,we=(0,Q.useMemo)(()=>c?.store===void 0?[]:Il(c.store.getState(),u),[c,u]),Te=b.length,{attachmentsDisabled:Ee,draftInputDisabled:De,turnControlsDisabled:Oe}=Tc(_e),ke=Fl(t,a,o,A,E&&s&&!Oe),Ae=ke.data?.data??Bl,je=Ol(e?.skills.use===!0?u:[],N),Me=Dl(Sl({projectToolsEnabled:s}),N),Ne=n?.baseBranches??[],Pe=E?Ae.length:ee===`scopes`?2:ee===`branches`?Ne.length:je.length+Me.length,Fe=!w&&!E||Pe===0?void 0:`${ie}-item-${String(v)}`,Ie=(0,Q.useCallback)(e=>{x(e),m.update(p,t=>({...t,attachments:e}))},[m,p]),Le=(0,Q.useCallback)(()=>{T(!1),P(``),I(void 0),M(null)},[]),Re=(0,Q.useCallback)(()=>{D(!1),k(void 0),j(``)},[]),ze=(0,Q.useCallback)((e,t)=>{R(e),m.update(p,t=>({...t,content:e})),X.current?.replace(e,t)},[m,p]),Be=(0,Q.useCallback)(e=>{let t=Rl(z,e,we.length);if(t===null&&z===null)return!1;z===null&&(Z.current=X.current?.getContent()??L);let n=t===null?Z.current:we[t];return n===void 0?!1:(B(t),ze(n,Jc(n).length),!0)},[L,we,z,ze]),Ve=(0,Q.useCallback)(e=>{if(O===void 0)return;let t=Hc(X.current?.getContent()??L,O,e),n=O.start+Lc(e).length;ze(t,n),Re(),requestAnimationFrame(()=>{X.current?.focus(n)})},[Re,O,L,ze]),He=(0,Q.useCallback)(e=>{let t=Uc(X.current?.getContent()??L,e),n=Jc(t).length;Le(),Re(),B(null),ze(t,n),requestAnimationFrame(()=>{X.current?.focus(n)})},[Le,Re,L,ze]),Ue=(0,Q.useCallback)(()=>{if(!E)return!1;let e=Ae[v];return e!==void 0&&Ve(e),!0},[v,E,Ae,Ve]),We=(0,Q.useCallback)((e,t,n)=>{R(e),B(null),m.update(p,t=>({...t,content:e}));let r=El(t,n);if(s&&r!==null&&Bc(e,r)){y(0),T(!1),P(``),I(void 0),M(null),D(!0),k(r),j(r.query);return}Re();let i=Tl(t,n);if(i===null){T(!1),M(null),P(``),I(void 0);return}y(0),T(!0),M(null),P(i.query),I(i)},[Re,m,p,s]),Ge=(0,Q.useCallback)(()=>{R([]),B(null),Z.current=[],x([]),X.current?.replace([]),m.clear(p)},[m,p]);return(0,Q.useLayoutEffect)(()=>{if(oe.current===f)return;oe.current=f;let e=se.current!==p;if(e){se.current=p;let e=m.read(p);R(e.content),B(null),Z.current=e.content,x(e.attachments),C(void 0),X.current?.replace(e.content),_(void 0),H(void 0),y(0),T(!1),D(!1),k(void 0),j(``),M(null),P(``),I(void 0)}q(e)},[m,p,q,f]),{activeCommandIndex:v,activeCommandItemId:Fe,activeSettings:ye,activeTaskId:fe,activeTurnId:de,attachmentCount:Te,attachmentPickerKind:S,attachments:b,attachmentsDisabled:Ee,baseBranches:Ne,canInterrupt:pe,canSteer:he,canSubmit:me,clearComposerInput:Ge,closeCommandMenu:Le,closeFileMenu:Re,commandMenuId:ie,commandMenuOpen:w,commandSlashCommand:F,commandSurfaceRef:ae,composerController:U,composerDraftStore:m,composerScope:p,connectionState:ge,contextUsage:Ce,draftInputDisabled:De,filteredCommands:Me,filteredSkills:je,fileMenuOpen:E,fileMention:O,fileQuery:A,fileSearchError:ke.error,fileSearchPending:ke.isPending,fileSearchResults:Ae,handleAttachmentsChange:Ie,handlePromptChange:We,isSubmitting:W,menuItemCount:Pe,mutationError:G,navigatePromptHistory:Be,pendingTask:le,composerMode:be,promptContent:L,promptSubmission:ve,referenceProjectPath:He,replacePromptContent:ze,reviewMenuMode:ee,routeScope:f,selectedModel:xe,selectedReasoningEffort:Se,selectActiveFileReference:Ue,selectFileReference:Ve,setActiveCommandIndex:y,setAttachmentPickerKind:C,setAttachments:x,setCommandMenuOpen:T,setFileMenuOpen:D,setFileMention:k,setFileQuery:j,setCommandQuery:P,setCommandSlashCommand:I,setIsSubmitting:J,setMutationError:te,setPendingTaskState:ne,setComposerModeState:H,setPromptContent:R,setReviewMenuMode:M,setSettingsOverride:_,setSubmittedTurnState:Y,skillEditorRef:X,state:_e,turnControlsDisabled:Oe}}function Hl(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 Ul(e,t){return e.source===`host`?e.attachment:t(e)}function Wl({activeUserMessageIds:e,activeSettings:t,activeTaskId:n,activeTurnId:r,canSteer:i,canSubmit:a,clearComposerInput:o,client:s,controller:c,followUpBehavior:l,editingQueuedSubmission:u,fastMode:d,onDirectSubmission:f,onRequestNotificationPermission:p,onTaskCreated:m,onTaskStarted:h,onTurnStarted:g,pendingTask:_,composerMode:v,onGoalStarted:y,onSteerAccepted:b,projectId:x,promptContent:S,routeScope:C,saveQueuedSubmission:w,selectedModel:T,selectedReasoningEffort:E,skillEditorRef:O,state:k,taskId:A,t:j,turnControlsDisabled:ee}){let{actionLock:M,isCurrentScope:N,setIsSubmitting:P,setMutationError:F,setPendingTaskState:I,setSubmittedTurnState:L,startTaskAttempt:R,startTurnAttempt:z,steerTurnAttempt:B,uploadAttempts:V,uploadedAttachments:H}=c,U=async(c,M,U={})=>{let W=C,G=M===void 0?Yc(O.current?.getContent()??S):void 0,K=(G?.text??c.text).trim(),q=U.composerMode===null?void 0:U.composerMode??v;if(q===`goal`&&(K.length===0||K.length>4e3))return F(Error(j(K.length===0?`composer.goalObjectiveRequired`:`composer.goalObjectiveTooLong`))),!1;let J=M??G?.skills??[];if(q===`goal`&&(c.files.length>0||J.length>0))return F(Error(j(`composer.goalStructuredInputUnsupported`))),!1;let te=K!==``||c.files.length>0||J.length>0,ne=U.forceAction??(u?`queue`:Cc(k,te,l,i));if(ne===`blocked`||ne===`interrupt`||!te||T===void 0||E===void 0||ee||ne!==`steer`&&!a||ne===`steer`&&(!i||n===void 0||r===void 0))return!1;ne!==`queue`&&U.requestTimelineScroll!==!1&&f?.(),p(),P(!0),F(null);let Y,re;try{re=await Promise.all(c.files.map(e=>Ul(e,async e=>{let t=H.current.get(e.id);if(t!==void 0)return t;let n=V.current.get(e.id)??D();V.current.set(e.id,n);let r=await s.uploadAttachment(x,{content:e.file,kind:e.kind,name:e.name},{idempotencyKey:n});return N(W)&&H.current.set(e.id,r.attachment),r.attachment}))),Y={attachments:re.map(e=>({id:e.id})),skills:J.map(e=>({id:e.id,name:e.name})),text:K,type:`prompt`}}catch(e){return N(W)&&(F(e instanceof Error?e:Error(j(`composer.attachmentUploadFailed`))),P(!1)),!1}if(ne===`queue`)try{let e=await w(Y,D());return e&&N(W)&&(o(),H.current.clear(),V.current.clear()),e}catch(e){return N(W)&&F(e instanceof Error?e:Error(`Prompt queueing failed`)),!1}finally{N(W)&&P(!1)}if(ne===`steer`){if(n===void 0||r===void 0)return!1;let t=vc(B.current,JSON.stringify({input:Y,taskId:n,turnId:r}));B.current=t;try{return await kc(s,x,n,r,Y,t.key),N(W)&&(b({files:c.files,...U.queuedPromptId===void 0?{}:{id:U.queuedPromptId},skills:J,text:K,turnId:r,userMessageIds:e}),U.clearInputOnSuccess!==!1&&o(),B.current=void 0,H.current.clear(),V.current.clear()),!0}catch(e){return N(W)&&F(e instanceof Error?e:Error(`Prompt steering failed`)),!1}finally{N(W)&&P(!1)}}let ie=Hl(t,T.id,E,q,d),ae=vc(z.current,JSON.stringify({input:Y,options:ie}));z.current=ae;let X=n===void 0?vc(R.current,x):void 0;R.current=X;try{let e=await Ec(s,{idempotencyKeys:{...X===void 0?{}:{startTask:X.key},startTurn:ae.key},input:Y,onTaskCreated(e){N(W)&&(I({scope:W,task:e}),R.current=void 0,m?.(e))},projectId:x,...n===void 0?{}:{taskId:n},turnOptions:ie});if(N(W)&&(U.clearInputOnSuccess!==!1&&o(),ie.goalMode===!0&&y(),L({scope:W,turnId:e.turn.id})),g?.(e.turn,Y,re),N(W)&&(z.current=void 0,H.current.clear(),V.current.clear()),A===void 0){let t=e.createdTask??_;t!==void 0&&h(t,e.turn,Y,ie,re,e.checkpoint)}return!0}catch(e){return N(W)&&F(e instanceof Error?e:Error(`Prompt submission failed`)),!1}finally{N(W)&&P(!1)}};return(e,t,n={})=>M.run(()=>U(e,t,n)).then(e=>e??!1)}var Gl=(0,Q.createContext)(null);function Kl(){let e=(0,Q.useContext)(Gl);if(e===null)throw Error(`Context components must be used within Context`);return e}function ql({children:e,className:t=``,maxTokens:n,usedTokens:r,...i}){let a=(0,Q.useMemo)(()=>({maxTokens:n,usedTokens:r}),[n,r]);return(0,$.jsx)(Gl.Provider,{value:a,children:(0,$.jsx)(`span`,{className:`inline-flex shrink-0 ${t}`,...i,children:e})})}function Jl(e){let{maxTokens:t,usedTokens:n}=e;if(t==null||t<=0||n===void 0)return{accessibleLabel:s.t(`agentComponents.contextUnknown`,{ns:`conversation`}),percentage:null,summary:s.t(`agentComponents.contextWaiting`,{ns:`conversation`}),tokenCount:n===void 0?null:`${Yl(n)} tokens`};let r=Math.min(100,Math.max(0,Math.round(n/t*100)));return{accessibleLabel:s.t(`agentComponents.contextPercent`,{ns:`conversation`,percentage:r}),percentage:r,summary:s.t(`agentComponents.contextSummary`,{ns:`conversation`,percentage:r}),tokenCount:`${Yl(n)} / ${Yl(t)} tokens`}}function Yl(e){return new Intl.NumberFormat(`en-US`,{maximumFractionDigits:1,notation:`compact`}).format(e)}var Xl=7,Zl=2*Math.PI*Xl;function Ql(){a(`conversation`);let e=Zl*(1-(Jl(Kl()).percentage??0)/100);return(0,$.jsxs)(`svg`,{className:`size-4.5 -rotate-90`,viewBox:`0 0 20 20`,"aria-hidden":`true`,children:[(0,$.jsx)(`circle`,{cx:`10`,cy:`10`,fill:`none`,r:Xl,stroke:`currentColor`,strokeOpacity:`0.24`,strokeWidth:`3`}),(0,$.jsx)(`circle`,{cx:`10`,cy:`10`,fill:`none`,r:Xl,stroke:`currentColor`,strokeDasharray:Zl,strokeDashoffset:e,strokeLinecap:`round`,strokeWidth:`3`})]})}function $l({children:e,className:t=``,...n}){return(0,$.jsx)(`span`,{className:`flex flex-col gap-0.5 px-0.5 py-0.5 tabular-nums ${t}`,...n,children:e})}function eu({children:e,className:t=``,...n}){a(`conversation`);let r=Jl(Kl());return(0,$.jsx)(`span`,{className:`contents ${t}`,...n,children:e??(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`span`,{className:`text-body-small font-medium`,children:r.summary}),r.tokenCount===null?null:(0,$.jsx)(`span`,{className:`text-label text-muted-foreground`,children:r.tokenCount})]})})}function tu({children:e,className:t=``,...n}){a(`conversation`);let r=Jl(Kl());return(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{...n,"aria-label":r.accessibleLabel,className:`tabular-nums ${t}`,size:`toolbar`,type:n.type??`button`,variant:`ghost`,children:e??(0,$.jsxs)($.Fragment,{children:[r.percentage===null?null:(0,$.jsxs)(`span`,{children:[r.percentage,`%`]}),(0,$.jsx)(Ql,{})]})})}),(0,$.jsx)(A,{className:`bg-raised text-foreground`,children:(0,$.jsx)($l,{children:(0,$.jsx)(eu,{})})})]})}function nu({isPending:e,onClose:t,onCreate:n}){let{t:r}=a(`workbench`),[i,o]=(0,Q.useState)(``),s=(0,Q.useRef)(!1),c=i.trim();return(0,$.jsx)(Jt,{onOpenChange:n=>{!n&&!e&&!s.current&&t()},open:!0,children:(0,$.jsx)(Tt,{"aria-labelledby":`create-branch-title`,className:`max-w-96 p-4`,onEscapeKeyDown:t=>{(e||s.current)&&t.preventDefault()},onInteractOutside:t=>{(e||s.current)&&t.preventDefault()},children:(0,$.jsxs)(`form`,{className:`grid gap-4`,onSubmit:e=>{e.preventDefault(),!(c.length===0||s.current)&&(s.current=!0,n(c).then(e=>{s.current=!1,e&&t()}))},children:[(0,$.jsxs)(Ct,{children:[(0,$.jsx)(jt,{id:`create-branch-title`,children:r(`composer.createBranch`)}),(0,$.jsx)(Kt,{children:r(`composer.createBranchDescription`)})]}),(0,$.jsxs)(`label`,{className:`grid gap-1.5 text-label font-medium text-foreground`,htmlFor:`create-branch-name`,children:[r(`composer.branchName`),(0,$.jsx)(he,{autoCapitalize:`none`,autoComplete:`off`,autoCorrect:`off`,autoFocus:!0,disabled:e,id:`create-branch-name`,maxLength:1024,name:`branch`,onChange:e=>{o(e.currentTarget.value)},placeholder:`feat/my-feature`,spellCheck:!1,value:i,variant:`outline`})]}),(0,$.jsxs)(Xt,{children:[(0,$.jsx)(g,{disabled:e,onClick:t,type:`button`,variant:`ghost`,children:r(`actions.cancel`)}),(0,$.jsx)(g,{disabled:e||c.length===0,type:`submit`,children:r(`composer.createAndSwitchBranch`)})]})]})})})}function ru({isPending:e,onClose:t,onCreate:n}){let{t:r}=a(`workbench`),[i,o]=(0,Q.useState)(``),s=(0,Q.useRef)(!1),c=i.trim();return(0,$.jsx)(Jt,{onOpenChange:n=>{!n&&!e&&!s.current&&t()},open:!0,children:(0,$.jsx)(Tt,{"aria-labelledby":`create-worktree-title`,className:`max-w-96 p-4`,onEscapeKeyDown:t=>{(e||s.current)&&t.preventDefault()},onInteractOutside:t=>{(e||s.current)&&t.preventDefault()},children:(0,$.jsxs)(`form`,{className:`grid gap-4`,onSubmit:e=>{e.preventDefault(),!(c.length===0||s.current)&&(s.current=!0,n(c).then(e=>{s.current=!1,e&&t()}))},children:[(0,$.jsxs)(Ct,{children:[(0,$.jsx)(jt,{id:`create-worktree-title`,children:r(`composer.createWorktree`)}),(0,$.jsx)(Kt,{children:r(`composer.createWorktreeDescription`)})]}),(0,$.jsxs)(`label`,{className:`grid gap-1.5 text-label font-medium text-foreground`,htmlFor:`create-worktree-branch`,children:[r(`composer.branchName`),(0,$.jsx)(he,{autoCapitalize:`none`,autoComplete:`off`,autoCorrect:`off`,autoFocus:!0,disabled:e,id:`create-worktree-branch`,maxLength:1024,name:`branch`,onChange:e=>{o(e.currentTarget.value)},placeholder:`feat/my-feature`,spellCheck:!1,value:i,variant:`outline`})]}),(0,$.jsxs)(Xt,{children:[(0,$.jsx)(g,{disabled:e,onClick:t,type:`button`,variant:`ghost`,children:r(`actions.cancel`)}),(0,$.jsx)(g,{disabled:e||c.length===0,type:`submit`,children:r(`composer.createAndSwitchWorktree`)})]})]})})})}function iu(e,t,n){return{branches:e.filter(e=>e!==t),worktrees:n.filter(e=>!e.current)}}function au({creatingBranch:e,creatingWorktree:t,gitStatus:n,onBranchChange:r,onBranchCreate:i,onWorktreeChange:o,onWorktreeCreate:s,switchingBranch:c,switchingWorktree:l,worktrees:u}){let{t:d}=a(`workbench`),[f,p]=(0,Q.useState)(!1),[m,h]=(0,Q.useState)(!1);if(n===void 0||n.repositoryMode===`none`)return null;let _=n.branch,v=n.repositoryMode===`root`&&_!==null,y=_??d(`composer.gitBranchMissing`),b=c!==void 0||e!==void 0||l!==void 0||t!==void 0,x=iu(n.branches,_,u);return v?(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(On,{children:[(0,$.jsx)(Nt,{asChild:!0,children:(0,$.jsxs)(g,{"aria-label":d(`composer.branchSwitcherLabel`,{branch:_}),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:b,type:`button`,variant:`ghost`,children:[b?(0,$.jsx)(K,{"aria-hidden":`true`,className:`size-3 shrink-0 animate-spin`,"data-icon":`inline-start`}):(0,$.jsx)(tr,{"aria-hidden":`true`,className:`size-3 shrink-0`,"data-icon":`inline-start`}),(0,$.jsx)(`span`,{className:`truncate`,children:y}),(0,$.jsx)(Wn,{"aria-hidden":`true`,className:`size-3 shrink-0`,"data-icon":`inline-end`})]})}),(0,$.jsxs)(Ht,{align:`start`,className:`max-h-72 w-72 max-w-[calc(100vw-1rem)] overflow-y-auto`,side:`top`,children:[x.branches.length===0?null:(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(gt,{children:(0,$.jsx)(Wt,{children:d(`composer.branchSwitcherMenu`)})}),(0,$.jsx)(bt,{onValueChange:r,children:x.branches.map(e=>(0,$.jsx)(vt,{disabled:b,title:e,value:e,children:(0,$.jsx)(`span`,{className:`truncate`,children:e})},e))}),(0,$.jsx)(Lt,{})]}),x.worktrees.length===0?null:(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(gt,{children:[(0,$.jsx)(Wt,{children:d(`composer.worktreeSwitcherMenu`)}),x.worktrees.map(e=>(0,$.jsxs)(En,{disabled:b,onSelect:()=>{o(e.path)},title:e.path,children:[(0,$.jsx)(J,{"aria-hidden":`true`,className:`size-3.5`}),(0,$.jsxs)(`span`,{className:`grid min-w-0 flex-1`,children:[(0,$.jsx)(`span`,{className:`truncate`,children:e.branch??d(`composer.detachedHead`)}),(0,$.jsx)(`span`,{className:`truncate text-caption text-muted-foreground`,children:e.path})]})]},e.path))]}),(0,$.jsx)(Lt,{})]}),(0,$.jsxs)(En,{disabled:b,onSelect:()=>{p(!0)},children:[(0,$.jsx)(B,{"aria-hidden":`true`,className:`size-3.5 text-muted-foreground`}),d(`composer.createBranch`)]}),(0,$.jsxs)(En,{disabled:b,onSelect:()=>{h(!0)},children:[(0,$.jsx)(J,{"aria-hidden":`true`,className:`size-3.5 text-muted-foreground`}),d(`composer.createWorktree`)]})]})]}),f?(0,$.jsx)(nu,{isPending:e!==void 0,onClose:()=>{p(!1)},onCreate:i}):null,m?(0,$.jsx)(ru,{isPending:t!==void 0,onClose:()=>{h(!1)},onCreate:s}):null]}):(0,$.jsxs)(`span`,{className:`inline-flex min-w-0 shrink items-center gap-1`,children:[(0,$.jsx)(tr,{"aria-hidden":`true`,className:`size-3 shrink-0`}),(0,$.jsx)(`span`,{className:`truncate`,children:y})]})}var ou=`(max-width: 760px)`;function su(){let[e,t]=(0,Q.useState)(()=>typeof window>`u`?!1:window.matchMedia(ou).matches);return(0,Q.useEffect)(()=>{let e=window.matchMedia(ou),n=()=>{t(e.matches)};return n(),e.addEventListener(`change`,n),()=>{e.removeEventListener(`change`,n)}},[]),e}function cu({accessibleLabel:e,disabled:t,effortLabel:n,modelLabel:r,...i}){return(0,$.jsxs)(g,{...i,"aria-label":e,className:`min-w-0 max-w-44 max-workbench:gap-0.5 max-workbench:px-1`,"data-slot":`composer-model-selector`,disabled:t,size:`sm`,type:`button`,variant:`ghost`,children:[(0,$.jsx)(`span`,{className:`min-w-0 truncate`,children:r}),n===``?null:(0,$.jsx)(`span`,{className:`shrink-0 text-muted-foreground`,children:n}),(0,$.jsx)(W,{"aria-hidden":`true`,className:`size-3 shrink-0 text-muted-foreground`})]})}function lu(e,t,n){let r=e.find(e=>e.id===n),i=yc(r,t.reasoningEffort);if(!(r===void 0||i===void 0))return{...t,model:r.id,reasoningEffort:i}}function uu(e,t,n){if(e?.supportedReasoningEfforts.some(e=>e.id===n))return{...t,reasoningEffort:n}}function du({activeSettings:e,disabled:t,models:n,modelsPending:r,onSettingsChange:i,selectedModel:o,selectedReasoningEffort:s}){let{t:c}=a([`workbench`,`settings`]),l=su(),[u,d]=(0,Q.useState)(!1),f=o?.displayName??c(r?`composer.modelLoading`:`composer.noModels`),p=s===void 0?``:c(`settings:effort.${s}`,{defaultValue:s}),m=t||r||o===void 0,h=c(`composer.modelAndReasoningSelect`,{effort:p,model:f}),_=t=>{let r=lu(n,e,t);r!==void 0&&i(r,`model`)},v=t=>{let n=uu(o,e,t);n!==void 0&&i(n,`reasoningEffort`)};return l?(0,$.jsxs)(Jt,{onOpenChange:d,open:u,children:[(0,$.jsx)(yn,{asChild:!0,children:(0,$.jsx)(cu,{accessibleLabel:h,disabled:m,effortLabel:p,modelLabel:f})}),(0,$.jsxs)(Tt,{className:`w-[calc(100%-1rem)] max-w-xs gap-2 p-3`,children:[(0,$.jsx)(jt,{className:`text-body`,children:c(`composer.modelAndReasoningMenu`)}),(0,$.jsx)(Kt,{className:`sr-only`,children:h}),(0,$.jsxs)(`div`,{"aria-label":c(`composer.modelSelect`),className:`grid gap-0.5`,role:`radiogroup`,children:[(0,$.jsx)(`div`,{className:`px-2 py-1 text-label font-medium text-muted-foreground`,children:c(`composer.model`)}),n.map(e=>(0,$.jsxs)(g,{"aria-checked":e.id===o?.id,className:`w-full`,contentAlign:`start`,onClick:()=>{_(e.id),d(!1)},role:`radio`,size:`sm`,type:`button`,variant:`ghost`,children:[(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,title:e.displayName,children:e.displayName}),e.id===o?.id?(0,$.jsx)(X,{"aria-hidden":`true`,className:`size-3.5`}):null]},e.id))]}),(0,$.jsxs)(`div`,{"aria-label":c(`composer.reasonEffortSelect`),className:`grid gap-0.5 border-t border-separator pt-1.5`,role:`radiogroup`,children:[(0,$.jsx)(`div`,{className:`px-2 py-1 text-label font-medium text-muted-foreground`,children:c(`composer.reasoningEffort`)}),o?.supportedReasoningEfforts.map(e=>{let t=c(`settings:effort.${e.id}`,{defaultValue:e.id});return(0,$.jsxs)(g,{"aria-checked":e.id===s,className:`w-full`,contentAlign:`start`,onClick:()=>{v(e.id),d(!1)},role:`radio`,size:`sm`,type:`button`,variant:`ghost`,children:[(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:t}),e.id===s?(0,$.jsx)(X,{"aria-hidden":`true`,className:`size-3.5`}):null]},e.id)})]})]})]}):(0,$.jsxs)(On,{children:[(0,$.jsx)(Nt,{asChild:!0,children:(0,$.jsx)(cu,{accessibleLabel:h,disabled:m,effortLabel:p,modelLabel:f})}),(0,$.jsxs)(Ht,{align:`end`,"aria-label":c(`composer.modelAndReasoningMenu`),className:`w-40`,side:`top`,children:[(0,$.jsxs)(pn,{children:[(0,$.jsxs)(dn,{"aria-label":c(`composer.modelSelect`),children:[(0,$.jsx)(`span`,{className:`font-medium`,children:c(`composer.model`)}),(0,$.jsx)(`span`,{className:`ml-auto max-w-28 truncate text-muted-foreground`,children:f})]}),(0,$.jsx)(pt,{"aria-label":c(`composer.modelSelect`),className:`w-40 max-w-[calc(100vw-1rem)]`,children:(0,$.jsx)(bt,{onValueChange:_,...o===void 0?{}:{value:o.id},children:n.map(e=>(0,$.jsx)(vt,{indicator:`check`,value:e.id,children:(0,$.jsx)(`span`,{className:`min-w-0 truncate`,title:e.displayName,children:e.displayName})},e.id))})})]}),(0,$.jsxs)(pn,{children:[(0,$.jsxs)(dn,{"aria-label":c(`composer.reasonEffortSelect`),children:[(0,$.jsx)(`span`,{className:`font-medium`,children:c(`composer.reasoningEffort`)}),(0,$.jsx)(`span`,{className:`ml-auto truncate text-muted-foreground`,children:p})]}),(0,$.jsx)(pt,{"aria-label":c(`composer.reasonEffortSelect`),className:`min-w-28 w-28 max-w-[calc(100vw-1rem)]`,children:(0,$.jsx)(bt,{onValueChange:v,...s===void 0?{}:{value:s},children:o?.supportedReasoningEfforts.map(e=>(0,$.jsx)(vt,{indicator:`check`,value:e.id,children:(0,$.jsx)(`span`,{className:`min-w-0 truncate`,children:c(`settings:effort.${e.id}`,{defaultValue:e.id})})},e.id))})})]})]})]})}function fu({disabled:e,onSettingsChange:t,sandboxModeSelectable:n,settings:r}){let{t:i}=a([`workbench`,`settings`]);return(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(Le,{"aria-label":i(`composer.approvalMode`),className:`max-workbench:px-0.5`,disabled:e,onChange:e=>{t(xc(r,e.currentTarget.value),`approvalPolicy`)},value:bc(r),children:[(0,$.jsx)(`option`,{value:`on-request`,children:i(`settings:approval.onRequest`)}),(0,$.jsx)(`option`,{value:`auto-review`,children:i(`settings:approval.autoReview`)}),(0,$.jsx)(`option`,{value:`never`,children:i(`settings:approval.never`)})]}),n?(0,$.jsx)($.Fragment,{children:(0,$.jsxs)(Le,{"aria-label":i(`composer.sandboxMode`),className:`max-workbench:px-0.5`,disabled:e,onChange:e=>{t({...r,sandboxMode:e.currentTarget.value},`sandboxMode`)},value:r.sandboxMode,children:[(0,$.jsx)(`option`,{value:`read-only`,children:i(`settings:sandbox.readOnly`)}),(0,$.jsx)(`option`,{value:`workspace-write`,children:i(`settings:sandbox.workspaceWrite`)}),(0,$.jsx)(`option`,{value:`danger-full-access`,children:i(`settings:sandbox.dangerFullAccess`)})]})}):null]})}function pu(e){return e.split(/[\\/]/u).filter(Boolean).at(-1)??e}function mu({onChange:e,roots:t,value:n}){let{t:r}=a(`workbench`);if(t.length<2)return null;let i=t.find(e=>e.id===n)??t[0];return i===void 0?null:(0,$.jsxs)(St,{onValueChange:e,value:n,children:[(0,$.jsxs)(Mn,{"aria-label":r(`shell.selectProjectRoot`),className:`min-w-0 max-w-28 shrink border-0 bg-transparent shadow-none hover:bg-control-hover sm:max-w-40`,size:`toolbar`,title:i.path,children:[(0,$.jsx)($n,{"aria-hidden":`true`}),(0,$.jsx)(mt,{children:pu(i.path)})]}),(0,$.jsx)(Dt,{position:`popper`,children:t.map((e,t)=>(0,$.jsx)(Vt,{textValue:e.path,value:e.id,children:(0,$.jsxs)(`span`,{className:`flex min-w-0 flex-col`,children:[(0,$.jsx)(`span`,{className:`truncate`,children:pu(e.path)}),(0,$.jsxs)(`span`,{className:`truncate font-mono text-caption text-muted-foreground`,children:[t===0?`${r(`projectPicker.primaryRoot`)} · `:``,e.path]})]})},e.id))})]})}function hu({action:e}){let t=`size-4 shrink-0 text-brand`;switch(e){case`review`:return(0,$.jsx)(Un,{"aria-hidden":`true`,className:t});case`initialize`:return(0,$.jsx)(Me,{"aria-hidden":`true`,className:t});case`compact`:return(0,$.jsx)(qn,{"aria-hidden":`true`,className:t});case`fork`:return(0,$.jsx)(J,{"aria-hidden":`true`,className:t});case`plan`:return(0,$.jsx)(ir,{"aria-hidden":`true`,className:t});case`goal`:return(0,$.jsx)(gr,{"aria-hidden":`true`,className:t})}}function gu({disabled:e,mode:t,onRemove:n}){let{t:r}=a(`workbench`),i=t===`goal`,o=r(i?`composer.goalMode`:`composer.planMode`),s=r(i?`composer.cancelGoalMode`:`composer.cancelPlanMode`),c=i?gr:ir;return(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsxs)(Ke,{"aria-label":s,className:`group/composer-mode gap-1 px-1.5 text-foreground max-workbench:gap-0.5`,...i?{"data-goal-mode":``}:{"data-plan-mode":``},disabled:e,onClick:n,children:[(0,$.jsx)(c,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-brand`}),(0,$.jsx)(`span`,{className:`max-workbench:hidden`,children:o}),(0,$.jsx)(ln,{"aria-hidden":`true`,className:`size-3 shrink-0 opacity-0 transition-opacity group-hover/composer-mode:opacity-100 group-focus-visible/composer-mode:opacity-100`})]})}),(0,$.jsx)(A,{children:s})]})}function _u({goal:e}){let{t}=a(`workbench`);if(e.status===`complete`)return null;let n=t(`composer.goalStatus.${e.status}`);return(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsxs)(`span`,{"aria-label":t(`composer.goalStatusLabel`,{objective:e.objective,status:n}),className:`inline-flex h-8 min-w-0 items-center gap-1 px-1.5 text-body-small text-foreground max-workbench:gap-0.5`,"data-goal-status":e.status,children:[(0,$.jsx)(gr,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-brand`}),(0,$.jsx)(`span`,{className:`max-workbench:hidden`,children:n})]})}),(0,$.jsx)(A,{className:`max-w-72 break-words`,children:e.objective})]})}function vu({disabled:e,enabled:t,onChange:n}){let{t:r}=a(`workbench`),i=r(t?`composer.disableFastMode`:`composer.enableFastMode`);return(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(Ke,{"aria-label":i,"aria-pressed":t,className:t?`text-brand`:`text-muted-foreground`,"data-fast-mode":``,disabled:e,onClick:()=>{n(!t)},children:(0,$.jsx)(br,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,$.jsx)(A,{children:i})]})}function yu(){let{t:e}=a(`workbench`),t=Ne();return t.files.length===0?null:(0,$.jsx)(Ye,{children:(0,$.jsx)(qo,{"aria-label":e(`composer.addedAttachments`),children:t.files.map(e=>(0,$.jsxs)(Jo,{data:e,onRemove:()=>{t.remove(e.id)},children:[(0,$.jsx)(Yo,{}),(0,$.jsx)(Xo,{}),(0,$.jsx)(Zo,{disabled:t.disabled})]},e.id))})})}function bu({props:e}){let{t}=a(`workbench`);return!e.commandMenuOpen||e.turnControlsDisabled?null:(0,$.jsx)(Ve,{"aria-label":t(`composer.commandInput`),className:`absolute inset-x-0 bottom-full z-20 mb-2`,id:e.commandMenuId,children:(0,$.jsx)(Ie,{children:e.reviewMenuMode===`scopes`?(0,$.jsxs)(We,{label:t(`composer.reviewScopeGroup`),children:[(0,$.jsxs)(qe,{active:e.activeCommandIndex===0,id:`${e.commandMenuId}-item-0`,onClick:()=>{e.onExecuteReview({type:`uncommitted_changes`})},children:[(0,$.jsx)(Un,{"aria-hidden":`true`,className:`size-4 shrink-0 text-brand`}),(0,$.jsx)(`span`,{className:`font-medium`,children:t(`composer.reviewUncommitted`)})]}),(0,$.jsxs)(qe,{active:e.activeCommandIndex===1,"aria-description":e.baseBranches.length===0?t(`composer.noBaseBranch`):e.baseBranches[0],disabled:e.baseBranches.length===0,id:`${e.commandMenuId}-item-1`,onClick:e.onOpenReviewBranches,children:[(0,$.jsx)(tr,{"aria-hidden":`true`,className:`size-4 shrink-0 text-brand`}),(0,$.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,$.jsx)(`span`,{className:`font-medium`,children:t(`composer.baseBranchReview`)}),(0,$.jsx)(`span`,{className:`truncate text-caption text-muted-foreground`,children:e.baseBranches[0]??t(`composer.noBaseBranch`)})]})]})]}):e.reviewMenuMode===`branches`?(0,$.jsx)(We,{label:t(`composer.reviewBaseBranchGroup`),children:e.baseBranches.map((t,n)=>(0,$.jsxs)(qe,{active:e.activeCommandIndex===n,id:`${e.commandMenuId}-item-${String(n)}`,onClick:()=>{e.onExecuteReview({branch:t,type:`base_branch`})},children:[(0,$.jsx)(tr,{"aria-hidden":`true`,className:`size-4 shrink-0 text-brand`}),(0,$.jsx)(`span`,{className:`truncate font-medium`,children:t})]},t))}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(We,{label:t(`composer.commandGroup`),children:e.filteredCommands.map((t,n)=>{let r=e.getCommandAvailability(t);return(0,$.jsxs)(qe,{active:n===e.activeCommandIndex,"aria-description":r.reason,disabled:!r.available,id:`${e.commandMenuId}-item-${String(n)}`,onClick:()=>{e.onExecuteCommand(t)},children:[(0,$.jsx)(hu,{action:t.action}),(0,$.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,$.jsx)(`span`,{className:`font-medium`,children:t.label}),(0,$.jsx)(`span`,{className:`text-caption text-muted-foreground`,children:r.reason??t.description})]})]},t.id)})}),e.filteredSkills.length===0?null:(0,$.jsx)(We,{label:`Skills`,children:e.filteredSkills.map((t,n)=>{let r=e.filteredCommands.length+n;return(0,$.jsxs)(qe,{active:r===e.activeCommandIndex,id:`${e.commandMenuId}-item-${String(r)}`,onClick:()=>{e.onSelectSkill(t)},children:[(0,$.jsx)(Qe,{"aria-hidden":`true`,className:`size-4 shrink-0 text-brand`}),(0,$.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,$.jsx)(`span`,{className:`font-medium text-brand`,children:t.displayName}),(0,$.jsxs)(`span`,{className:`block max-w-full truncate text-caption text-muted-foreground`,children:[`/`,t.name,` · `,t.description]})]})]},t.id)})}),e.menuItemCount===0?(0,$.jsx)(Pe,{children:t(`composer.commandNoMatch`)}):null]})})})}function xu(e,t){let n=e.slice(0,Math.max(0,e.length-t.length)).replace(/\/$/u,``);return n===``?`.`:n}function Su({props:e}){let{t}=a(`workbench`);return!e.fileMenuOpen||e.turnControlsDisabled?null:(0,$.jsx)(Ve,{"aria-label":t(`composer.fileSearch`),className:`absolute inset-x-0 bottom-full z-20 mb-2`,id:e.commandMenuId,children:(0,$.jsx)(Ie,{children:e.fileSearchPending?(0,$.jsx)(Pe,{children:t(`composer.fileSearchLoading`)}):e.fileSearchError===null?e.fileSearchResults.length===0?(0,$.jsx)(Pe,{children:t(`composer.fileSearchEmpty`)}):(0,$.jsx)(We,{label:t(`composer.fileSearchGroup`),children:e.fileSearchResults.map((t,n)=>(0,$.jsxs)(qe,{active:n===e.activeCommandIndex,id:`${e.commandMenuId}-item-${String(n)}`,onClick:()=>{e.onSelectFileReference(t)},children:[(0,$.jsx)(Z,{"aria-hidden":`true`,className:`size-4 shrink-0 text-muted-foreground`}),(0,$.jsxs)(`span`,{className:`flex min-w-0 flex-1 items-baseline gap-2`,children:[(0,$.jsx)(`span`,{className:`shrink-0 font-medium text-foreground`,children:t.name}),(0,$.jsx)(`span`,{className:`min-w-0 truncate text-caption text-muted-foreground`,children:xu(t.path,t.name)})]})]},t.path))}):(0,$.jsx)(Pe,{children:t(`composer.fileSearchFailed`)})})})}function Cu(e,t){return e.text||e.skills.map(e=>`$${e.name}`).join(` `)||t}function wu({disabled:e,onOpen:t,projectPath:n}){let{t:r}=a(`workbench`),i=r(`composer.openProjectFolder`);return(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsxs)(g,{"aria-label":i,className:`h-6 w-fit min-w-0 max-w-full shrink gap-1 rounded-control px-1 text-caption text-muted-foreground hover:bg-control-hover hover:text-foreground`,contentAlign:`start`,disabled:e,onClick:t,type:`button`,variant:`ghost`,children:[(0,$.jsx)(de,{"aria-hidden":`true`,className:`size-3 shrink-0`}),(0,$.jsx)(`span`,{className:`truncate`,children:n})]})}),(0,$.jsx)(A,{children:i})]})}function Tu({onOpen:e,onRootChange:t,projectPath:n,projectPathOpenDisabled:r,roots:i,selectedRootId:a}){return(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-1`,"data-composer-project-root-controls":``,children:[(0,$.jsx)(mu,{onChange:t,roots:i,value:a}),(0,$.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,$.jsx)(wu,{disabled:r,onOpen:e,projectPath:n})})]})}function Eu(e){let{t}=a([`workbench`,`settings`]),n=e.queuedPrompts.findIndex(e=>e.status===`editing`);return(0,$.jsxs)(`section`,{className:`shrink-0 bg-content px-1 pb-2 max-[360px]:px-0 sm:px-5`,"aria-label":t(`composer.landmark`),children:[(0,$.jsxs)(`div`,{className:`relative mx-auto w-full max-w-content`,ref:e.commandSurfaceRef,children:[(0,$.jsx)(bu,{props:e}),(0,$.jsx)(Su,{props:e}),e.queuedPrompts.length===0?null:(0,$.jsx)(`div`,{"aria-label":t(`composer.queuedMessages`),className:`mb-2 space-y-1.5`,role:`list`,children:e.queuedPrompts.map((r,i)=>{let a=n>=0&&i>=n,o=Cu(r,t(`composer.attachmentCount`,{count:r.files.length}));return(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2 rounded-control border border-separator bg-control px-2 py-1.5`,role:`listitem`,children:[(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-label text-foreground`,children:o}),r.status===`awaiting-response`?(0,$.jsxs)(`span`,{"aria-label":t(`composer.waitingToSend`),className:`inline-flex shrink-0 items-center gap-1 text-caption text-muted-foreground`,role:`status`,children:[(0,$.jsx)(K,{"aria-hidden":`true`,className:`size-3.5 animate-spin`}),t(`composer.waitingToSend`)]}):r.status===`editing`?(0,$.jsxs)(`span`,{"aria-label":t(`composer.editingQueued`),className:`inline-flex shrink-0 items-center gap-1 text-caption text-brand`,role:`status`,children:[(0,$.jsx)(hn,{"aria-hidden":`true`,className:`size-3.5`}),t(`composer.editingQueued`)]}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":t(`composer.moveQueuedUp`,{summary:o}),disabled:e.isSubmitting||a||i===0,onClick:()=>{e.moveQueuedPrompt(r.id,-1)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(H,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,$.jsx)(A,{children:t(`composer.moveQueuedUpTooltip`)})]}),(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":t(`composer.moveQueuedDown`,{summary:o}),disabled:e.isSubmitting||i===e.queuedPrompts.length-1||a,onClick:()=>{e.moveQueuedPrompt(r.id,1)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(Rn,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,$.jsx)(A,{children:t(`composer.moveQueuedDownTooltip`)})]}),(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":t(`composer.editQueued`,{summary:o}),disabled:e.isSubmitting||n>=0,onClick:()=>{e.editQueuedPrompt(r)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(hn,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,$.jsx)(A,{children:t(`composer.editQueuedTooltip`)})]}),(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":t(`composer.steerNow`,{summary:o}),className:`hover:text-brand`,disabled:e.isSubmitting||a||e.taskId===void 0||(e.activeTurnId===void 0?!e.canSubmit:!e.canSteer),onClick:()=>{e.steerQueuedPrompt(r)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(pr,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,$.jsx)(A,{children:t(`composer.steerNowTooltip`)})]}),(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":t(`composer.cancelQueued`,{summary:o}),className:`hover:text-danger`,disabled:e.isSubmitting,onClick:()=>{e.removeQueuedPrompt(r.id)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(ln,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,$.jsx)(A,{children:t(`composer.cancelQueuedTooltip`)})]})]})]},r.id)})}),(0,$.jsxs)(Y,{attachments:e.attachments,"aria-busy":e.state===`submitting`||e.state===`reconnecting`,className:`w-full`,"data-state":e.state,disabled:e.attachmentsDisabled,fileAccept:I,globalDrop:!0,imageAccept:w,largePasteCharacterThreshold:hc,maxFileSize:F,maxFileTotalSize:S,maxImageSize:y,maxImages:20,maxImageTotalSize:P,multiple:!0,onAttachmentsChange:e.onAttachmentsChange,onError:t=>{e.onViewError(Error(t.message))},onSubmit:e.onSubmit,pastedTextFileName:gc,children:[(0,$.jsx)(yu,{}),(0,$.jsxs)(Ue,{children:[(0,$.jsx)(`input`,{name:`message`,type:`hidden`,value:e.promptSubmissionText}),(0,$.jsx)(dl,{"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(!Be(t.nativeEvent)){if(e.commandMenuOpen||e.fileMenuOpen){if(t.key===`ArrowDown`||t.key===`ArrowUp`){t.preventDefault(),e.setActiveCommandIndex(n=>kl(n,t.key===`ArrowDown`?1:-1,e.menuItemCount));return}t.key===`Enter`&&!ze(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)&&zl(i,ol(t.currentTarget),r)&&e.onPromptHistoryNavigate(r)&&t.preventDefault()}}},placeholder:_c(e.taskId),ref:e.skillEditorRef,skills:e.skills,scope:e.composerScope})]}),(0,$.jsxs)(He,{className:`max-workbench:gap-0.5 max-workbench:px-1 max-[360px]:!gap-0 max-[360px]:!px-0`,children:[(0,$.jsxs)(Ge,{className:`max-workbench:shrink-0 max-workbench:gap-0.5 max-[360px]:!gap-0`,children:[(0,$.jsx)(Je,{className:`max-workbench:w-8 max-workbench:min-w-8 max-workbench:px-0 max-[360px]:!w-6 max-[360px]:!min-w-6`,disabled:e.attachmentsDisabled,onSelectKind:e.onSelectAttachmentKind}),(0,$.jsx)(fu,{disabled:e.turnControlsDisabled,onSettingsChange:e.onSettingsChange,sandboxModeSelectable:e.sandboxModeSelectable,settings:e.activeSettings}),e.composerMode===void 0?null:(0,$.jsx)(gu,{disabled:e.turnControlsDisabled,mode:e.composerMode,onRemove:e.onComposerModeRemove}),e.goal===null||e.goal===void 0?null:(0,$.jsx)(_u,{goal:e.goal}),e.fastModeAvailable?(0,$.jsx)(vu,{disabled:e.turnControlsDisabled,enabled:e.fastModeEnabled,onChange:e.onFastModeChange}):null]}),(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1 max-workbench:shrink-0 max-workbench:gap-0.5 max-[360px]:!gap-0`,children:[(0,$.jsx)(du,{activeSettings:e.activeSettings,disabled:e.turnControlsDisabled,models:e.models,modelsPending:e.modelsPending,onSettingsChange:e.onSettingsChange,selectedModel:e.selectedModel,selectedReasoningEffort:e.selectedReasoningEffort}),(0,$.jsx)(Re,{"aria-label":e.submitAction===`queue`?t(`composer.queueMessage`):e.submitAction===`steer`?t(`composer.sendSteer`):e.submitAction===`interrupt`?t(`composer.stop`):t(`composer.submit`),disabled:e.turnControlsDisabled||e.submitAction===`blocked`||e.submitAction===`start`&&(!e.canSubmit||e.selectedModel===void 0||e.selectedReasoningEffort===void 0)||e.submitAction===`interrupt`&&(!e.canInterrupt||e.activeTurnId===void 0),className:`max-workbench:w-8 max-workbench:min-w-8 max-[360px]:!w-6 max-[360px]:!min-w-6`,onClick:e.submitAction===`interrupt`?e.onInterrupt:void 0,status:e.state===`running`&&e.hasComposerInput?`idle`:e.state,type:e.submitAction===`interrupt`?`button`:`submit`})]})]})]})]}),e.modelsError===null?null:(0,$.jsx)(`p`,{className:`mx-auto mt-1 w-full max-w-content px-1 text-caption text-danger`,role:`alert`,children:t(`composer.modelListFailed`)}),(0,$.jsxs)(`div`,{className:`mx-auto mt-1.5 flex h-9 w-full max-w-content min-w-0 items-center gap-3 px-1 text-caption text-muted-foreground`,children:[e.projectToolsEnabled?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`div`,{className:`flex min-w-0 shrink items-center gap-0.5`,children:(0,$.jsx)(au,{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})}),(0,$.jsx)(Tu,{onOpen:e.onOpenProjectPath,onRootChange:e.onProjectRootChange,projectPath:e.projectPath,projectPathOpenDisabled:e.projectPathOpenDisabled,roots:e.projectRoots,selectedRootId:e.selectedProjectRootId})]}):null,(0,$.jsx)(ql,{className:`ml-auto`,maxTokens:e.contextUsage?.contextWindow,usedTokens:e.contextUsage?.usedTokens,children:(0,$.jsx)(tu,{})})]})]})}function Du({composerRef:e,capabilities:t,client:n,fastModeAvailable:r,fastModeDefault:i,followUpBehavior:o,models:s,modelsError:c,modelsPending:l,onDirectSubmission:u,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}=a([`workbench`,`settings`]),ee=Vl({capabilities:t,client:n,gitStatus:E,models:s,onSubmissionStateChange:g,projectId:b,projectPath:x,projectToolsEnabled:w,runtime:D,settings:O,skills:k,taskId:A}),{activeCommandIndex:M,activeCommandItemId:N,activeSettings:P,activeTaskId:F,activeTurnId:I,attachmentCount:L,attachmentPickerKind:R,attachments:z,attachmentsDisabled:B,baseBranches:V,canInterrupt:H,canSteer:U,canSubmit:W,clearComposerInput:G,closeCommandMenu:K,closeFileMenu:q,commandMenuId:J,commandMenuOpen:te,commandSurfaceRef:ne,composerMode:Y,composerController:re,composerScope:ie,contextUsage:ae,draftInputDisabled:X,filteredCommands:Z,filteredSkills:oe,fileMenuOpen:se,fileSearchError:ce,fileSearchPending:le,fileSearchResults:ue,handleAttachmentsChange:de,handlePromptChange:fe,isSubmitting:pe,menuItemCount:me,navigatePromptHistory:he,pendingTask:ge,promptContent:_e,promptSubmission:ve,referenceProjectPath:ye,reviewMenuMode:be,routeScope:xe,selectedModel:Se,selectedReasoningEffort:Ce,selectFileReference:we,setActiveCommandIndex:Te,setAttachmentPickerKind:Ee,setIsSubmitting:De,setMutationError:Oe,setComposerModeState:ke,setReviewMenuMode:Ae,setSettingsOverride:je,skillEditorRef:Me,state:Ne,turnControlsDisabled:Pe}=ee,[Fe,Ie]=(0,Q.useState)(),Le=Fe?.scope===ie?Fe.enabled:i,Re=r&&Le,{actionLock:ze,interruptAttempt:Be,isCurrentScope:Ve}=re,He=(e,t)=>{je({scope:xe,settings:e}),Oe(null),Promise.resolve(h(e,t,Le)).catch(()=>void 0)},Ue=yl({client:n,gitStatus:E,isCurrentScope:Ve,projectId:b,rootPath:x,routeScope:xe});(0,Q.useEffect)(()=>{Pe&&(K(),q())},[K,q,Pe]),(0,Q.useEffect)(()=>{if(!te&&!se)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,se]);let We=xl({activeTurnId:I,client:n,handleAttachmentsChange:de,projectId:b,replacePromptContent:ee.replacePromptContent,routeScope:xe,runtime:D,skillEditorRef:Me,skills:k,taskId:A});(0,Q.useEffect)(()=>{We.queueError!==null&&Oe(We.queueError)},[We.queueError,Oe]);let Ge=Wl({activeUserMessageIds:D?.store===void 0?[]:Vr(D.store.getState(),I),activeSettings:P,activeTaskId:F,activeTurnId:I,canSteer:U,canSubmit:W,clearComposerInput:G,client:n,controller:re,composerMode:Y,editingQueuedSubmission:We.editingId!==void 0,followUpBehavior:o,fastMode:Re,onDirectSubmission:u,onGoalStarted:()=>{ke(void 0)},onSteerAccepted:We.onSteerAccepted,onRequestNotificationPermission:m,onTaskCreated:_,onTaskStarted:v,onTurnStarted:y,pendingTask:ge,projectId:b,promptContent:_e,routeScope:xe,selectedModel:Se,selectedReasoningEffort:Ce,saveQueuedSubmission:We.saveQueuedSubmission,skillEditorRef:Me,state:Ne,taskId:A,t:j,turnControlsDisabled:Pe});(0,Q.useImperativeHandle)(e,()=>({buildPlan:()=>(ke(void 0),Ge({files:[],text:j(`composer.buildPlanPrompt`)},[],{composerMode:null,forceAction:`start`})),referenceProjectPath:ye}));let{executePromptCommand:Ke,executeReviewTarget:qe,getCommandAvailability:Je,selectActiveCommandItem:Ye,selectSkill:Xe}=Al({capabilities:t,client:n,onRequestNotificationPermission:m,onTaskCreated:_,onTaskStarted:v,projectId:b,session:ee,submitPrompt:Ge,t:j,taskId:A}),Ze=async()=>{let e=xe;!H||F===void 0||I===void 0||Pe||await ze.run(async()=>{let t=`${F}:${I}`;De(!0),Oe(null);let r=vc(Be.current,t);Be.current=r;try{await Oc(n,b,F,I,r.key)}catch(t){Ve(e)&&Oe(t instanceof Error?t:Error(`Turn interruption failed`))}finally{Ve(e)&&De(!1)}})},Qe=!Xc(_e)||L>0,$e=We.editingId===void 0?Cc(Ne,Qe,o,U):`queue`,et=(0,$.jsx)(Eu,{activeCommandIndex:M,activeCommandItemId:N,activeSettings:P,activeTurnId:I,attachments:z,attachmentsDisabled:B,baseBranches:V,canInterrupt:H,canSteer:U,canSubmit:W,commandMenuId:J,commandMenuOpen:te,commandSurfaceRef:ne,composerMode:Y,composerScope:ie,contextUsage:ae,creatingBranch:Ue.creatingBranch,creatingWorktree:Ue.creatingWorktree,draftInputDisabled:X,filteredCommands:Z,filteredSkills:oe,fileMenuOpen:se,fileSearchError:ce,fileSearchPending:le,fileSearchResults:ue,fastModeAvailable:r,fastModeEnabled:Re,getCommandAvailability:Je,gitStatus:E,goal:D?.metadata?.goal,hasComposerInput:Qe,isSubmitting:pe,menuItemCount:me,moveQueuedPrompt:(e,t)=>{We.moveQueuedPrompt(e,t).catch(Oe)},models:s,modelsError:c,modelsPending:l,editQueuedPrompt:e=>{We.editQueuedPrompt(e).catch(Oe)},onComposerModeRemove:()=>{ke(void 0)},onAttachmentsChange:de,onBranchCreate:Ue.createBranch,onBranchChange:e=>{Ue.switchBranch(e)},onWorktreeChange:e=>{Ue.switchWorktree(e)},onWorktreeCreate:Ue.createWorktree,onExecuteCommand:e=>{Ke(e)},onExecuteReview:e=>{qe(e)},onFastModeChange:e=>{Ie({enabled:e,scope:ie}),Promise.resolve(d(e,P)).catch(()=>void 0)},onInterrupt:()=>{Ze()},onOpenProjectPath:f,onProjectRootChange:p,onOpenReviewBranches:()=>{Te(0),Ae(`branches`)},onPromptChange:fe,onPromptHistoryNavigate:he,onSelectActiveCommand:Ye,onSelectAttachmentKind:Ee,onSelectFileReference:we,onSelectSkill:Xe,onSettingsChange:He,onSubmit:e=>void Ge(e),onViewError:e=>{Oe(e)},projectPath:x,projectPathOpenDisabled:S,projectRoots:C,projectToolsEnabled:w,promptContent:_e,promptSubmissionText:ve.text,queuedPrompts:We.queuedPrompts,removeQueuedPrompt:e=>{We.removeQueuedPrompt(e).catch(Oe)},reviewMenuMode:be,sandboxModeSelectable:!0,selectedModel:Se,selectedReasoningEffort:Ce,selectedProjectRootId:T,setActiveCommandIndex:Te,skills:k,skillEditorRef:Me,state:Ne,steerQueuedPrompt:e=>{We.sendQueuedPrompt(e,Ge).catch(Oe)},submitAction:$e,switchingBranch:Ue.switchingBranch,switchingWorktree:Ue.switchingWorktree,taskId:A,turnControlsDisabled:Pe,worktrees:Ue.worktrees});return R===void 0?et:(0,$.jsxs)($.Fragment,{children:[et,(0,$.jsx)(Mc,{client:n,kind:R,onAdd:e=>{Ve(xe)&&(de([...z,e]),Ee(void 0))},onClose:()=>{Ee(void 0)},projectId:b})]})}var Ou=8;function ku(e,t,n){return Math.min(n,Math.max(t,e))}function Au({direction:e,label:t,maximumWidth:n,minimumWidth:r,onResize:i,onResizeEnd:a,onResizeStart:o,panel:s,width:c}){let l=(0,Q.useRef)(null),u=e=>{let t=l.current;t?.pointerId===e.pointerId&&(l.current=null,e.currentTarget.hasPointerCapture(e.pointerId)&&e.currentTarget.releasePointerCapture(e.pointerId),a(t.currentWidth))};return(0,$.jsx)(`div`,{"aria-label":t,"aria-orientation":`vertical`,"aria-valuemax":n,"aria-valuemin":r,"aria-valuenow":c,className:`workbench-panel-resizer workbench-panel-resizer--${s}`,onKeyDown:t=>{if(t.key!==`ArrowLeft`&&t.key!==`ArrowRight`)return;t.preventDefault();let o=ku(c+(t.key===`ArrowLeft`?-8:Ou)*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=ku(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 ju=(0,Q.lazy)(()=>cn(()=>import(`./patch-diff-viewer-DGu83IBP.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20])));function Mu({change:e,onClose:t}){let{t:n}=a(`workbench`);if(e===null)return null;let r=In(e.path),{additions:i,removals:o}=Ln(e),s=`file-diff-dialog-title`;return(0,$.jsx)(Jt,{onOpenChange:e=>{e||t()},open:!0,children:(0,$.jsx)(Tt,{"aria-labelledby":s,className:`h-[min(82dvh,54rem)] max-w-[72rem] overflow-hidden p-0`,children:(0,$.jsxs)(`section`,{className:`grid h-full min-h-0 w-full min-w-0 grid-rows-[auto_minmax(0,1fr)] bg-raised`,children:[(0,$.jsxs)(`header`,{className:`flex min-h-toolbar min-w-0 items-center gap-3 px-3 shadow-toolbar sm:px-4`,children:[(0,$.jsx)(De,{className:`size-4 shrink-0 text-muted-foreground`,"aria-hidden":`true`}),(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(jt,{className:`truncate text-body-small`,id:s,title:e.path,children:r}),(0,$.jsx)(`p`,{className:`truncate text-caption text-muted-foreground`,title:e.path,children:e.path})]}),(0,$.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 text-label font-medium`,children:[(0,$.jsxs)(`span`,{className:`text-diff-added`,children:[`+`,i]}),(0,$.jsxs)(`span`,{className:`text-diff-removed`,children:[`-`,o]}),(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":n(`diff.close`),onClick:t,size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(ln,{className:`size-3.5`,"aria-hidden":`true`})})}),(0,$.jsx)(A,{children:n(`diff.close`)})]})]})]}),(0,$.jsx)(`div`,{className:`min-h-0 min-w-0 overflow-auto bg-content`,children:(0,$.jsx)(Q.Suspense,{fallback:(0,$.jsx)(`div`,{className:`grid min-h-48 place-items-center text-body-small text-muted-foreground`,role:`status`,children:n(`diff.loading`)}),children:(0,$.jsx)(ju,{change:e})})})]})})})}function Nu(e){return e.split(/[\\/]/u).at(-1)??e}function Pu({client:e,onClose:t,previewKind:n,projectId:r,reference:i,rootPath:a}){let o=`project-source-dialog-title`;return(0,$.jsx)(Jt,{onOpenChange:e=>{e||t()},open:!0,children:(0,$.jsxs)(Tt,{"aria-labelledby":o,className:`h-[min(82dvh,54rem)] max-w-[72rem] overflow-hidden p-0`,children:[(0,$.jsx)(jt,{className:`sr-only`,id:o,children:Nu(i.path)}),(0,$.jsx)(Te,{client:e,onClose:t,previewKind:n,projectId:r,reference:i,...a===void 0?{}:{rootPath:a}})]})})}function Fu({message:e,role:t}){return(0,$.jsx)(`div`,{className:`grid min-h-0 flex-1 place-items-center px-6 text-sm text-muted-foreground`,role:t,children:e})}function Iu({onClose:e,projectId:t,projectRuntime:n,selection:r}){return r===null?null:(0,$.jsx)(Lu,{onClose:e,projectId:t,projectRuntime:n,selection:r})}function Lu({onClose:e,projectId:t,projectRuntime:n,selection:r}){let{t:i}=a(`workbench`),o=kt(t,r.taskId,n),s=`subagent-output-dialog-title`,c;return c=o.error===null?o.isPending||o.metadata===void 0?(0,$.jsx)(Fu,{message:i(`subagentOutput.loading`),role:`status`}):(0,$.jsxs)($.Fragment,{children:[o.connectionState===`reconnecting`?(0,$.jsx)(`div`,{className:`bg-control px-3 py-1.5 text-center text-label text-muted-foreground`,role:`status`,children:i(`subagentOutput.reconnecting`)}):null,(0,$.jsx)(fc,{projectId:t,runtime:o,taskId:r.taskId})]}):(0,$.jsx)(Fu,{message:i(`subagentOutput.error`),role:`alert`}),(0,$.jsx)(Jt,{onOpenChange:t=>{t||e()},open:!0,children:(0,$.jsx)(Tt,{"aria-labelledby":s,className:`h-[min(86dvh,58rem)] max-w-[76rem] overflow-hidden p-0`,"data-subagent-output-dialog":``,children:(0,$.jsxs)(`section`,{className:`grid h-full min-h-0 grid-rows-[auto_minmax(0,1fr)] bg-raised`,children:[(0,$.jsxs)(`header`,{className:`flex min-h-toolbar items-center gap-3 px-3 shadow-toolbar sm:px-4`,children:[(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(jt,{className:`truncate text-body-small`,id:s,children:i(`subagentOutput.title`)}),(0,$.jsx)(`p`,{className:`truncate text-caption text-muted-foreground`,title:r.taskId,children:r.taskId})]}),(0,$.jsx)(Da,{collapsible:!1,status:_i(r.status),children:(0,$.jsx)(ka,{title:i(`subagentOutput.task`,{taskId:r.taskId})})}),(0,$.jsx)(g,{"aria-label":i(`subagentOutput.close`),onClick:e,size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(ln,{className:`size-3.5`,"aria-hidden":`true`})})]}),(0,$.jsx)(`div`,{className:`flex min-h-0 flex-col overflow-hidden bg-content`,children:c})]})})})}var Ru=(0,Q.lazy)(()=>wn().then(e=>({default:e.GlobalSettingsDialog})));function zu({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,$.jsxs)($.Fragment,{children:[b?.kind===`diff`?(0,$.jsx)(Mu,{change:b.change,onClose:()=>{T(null)}}):b===null?null:(0,$.jsx)(Pu,{client:s,onClose:()=>{T(null)},previewKind:b.kind,projectId:t,reference:b.reference,...x===void 0?{}:{rootPath:x}}),y===null?null:(0,$.jsx)(tt,{changes:y,onClose:()=>{C(null)}}),(0,$.jsx)(Iu,{onClose:()=>{E(null)},projectId:t,projectRuntime:g,selection:S}),D&&r!==void 0?(0,$.jsx)(Ft,{initialTitle:O,isPending:v.isPending,onClose:c,onRename:e=>void _(e)},`${t}:${r}`):null,u===null?null:(0,$.jsx)(Q.Suspense,{fallback:null,children:(0,$.jsx)(Ru,{...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 Bu=(0,Q.memo)(function({capabilities:e,client:t,composerRef:n,fallbackSettings:r,fastModeAvailable:i,fastModeDefault:a,followUpBehavior:o,models:s,modelsError:c,modelsPending:l,onRequestNotificationPermission:u,onProjectTaskDefaultsChange:d,onOpenProjectPath:f,onProjectRootChange:p,onTaskStarted:m,projectId:h,projectPath:g,projectPathOpenDisabled:_,projectRoots:v,projectToolsEnabled:y,selectedProjectRootId:b,gitStatus:x,runtime:S,skills:C,startingSnapshot:w,startingPrompt:T,taskId:E,onOpenFileDiff:D,onOpenSourceFile:O,onReviewFileChanges:k}){let A=`${h}:${E}`,[j,ee]=(0,Q.useState)(0),{beginSubmission:M,getStartedAt:N,handleSubmissionStateChange:P,startedAt:F}=Ai(),[I,L]=(0,Q.useState)(()=>({prompt:T,taskScope:A})),R=I.taskScope===A?I.prompt:T,B=F??R?.submissionStartedAt,V=F===void 0?R?.turn.id:void 0;(0,Q.useEffect)(()=>{let e=S.store;if(e===void 0||R===void 0)return;let t=e.getState(),n=S.readSnapshot();if(n===void 0||t.checkpoint===null)return;let r=vn(n,R.turn,{...R.input,messageAttachments:R.messageAttachments});if(r===n)return;let i=t.connectionState,a=t.error;t.hydrate({checkpoint:t.checkpoint,snapshot:r}),e.getState().setConnectionState(i),e.getState().setError(a)},[S,R]);let H=z({...qt(h,E,t),onSuccess(e){S.store?.getState().setTaskSettings(e.settings)}}),U=(e,n,r)=>t.resolvePendingRequest(e,n,{idempotencyKey:r}).then(()=>void 0);return(0,$.jsxs)($.Fragment,{children:[(0,Q.createElement)(fc,{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:U,projectId:h,key:A,runtime:S,scrollToBottomSignal:j,...B===void 0?{}:{submissionStartedAt:B},...V===void 0?{}:{submissionTurnId:V},taskId:E,...w===void 0?{}:{startingSnapshot:w}}),(0,$.jsx)(Du,{composerRef:n,capabilities:e,client:t,followUpBehavior:o,fastModeAvailable:i,fastModeDefault:a,models:s,modelsError:c,modelsPending:l||S.isPending,onDirectSubmission:()=>{M(),ee(e=>e+1)},onOpenProjectPath:f,onProjectRootChange:p,onRequestNotificationPermission:u,onFastModeChange:(e,t)=>d(t,e),onSettingsChange:(e,t,n)=>Promise.all([H.mutateAsync(e),d(e,n)]).then(()=>void 0),onSubmissionStateChange:P,onTaskStarted:m,onTurnStarted:(e,t,n)=>{let r=N()??e.startedAt;L({prompt:{input:t,messageAttachments:n,...r===null?{}:{submissionStartedAt:r},turn:e},taskScope:A})},projectId:h,projectPath:g,projectPathOpenDisabled:_,projectRoots:v,projectToolsEnabled:y,selectedProjectRootId:b,...x===void 0?{}:{gitStatus:x},runtime:S,settings:S.metadata?.settings??w?.settings??r,skills:C,taskId:E})]})}),Vu=(0,Q.lazy)(()=>cn(()=>import(`./patch-diff-viewer-DGu83IBP.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20])));function Hu({change:e}){let{t}=a(`workbench`),{additions:n,removals:r}=Ln(e);return(0,$.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,$.jsxs)(Se,{className:`min-h-toolbar gap-3 overflow-hidden bg-raised px-3 shadow-toolbar sm:px-4`,children:[(0,$.jsxs)(we,{className:`w-0 flex-1 overflow-hidden`,children:[(0,$.jsx)(De,{className:`size-4 shrink-0 text-muted-foreground`,"aria-hidden":`true`}),(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsxs)(`div`,{className:`w-0 flex-1 overflow-hidden`,children:[(0,$.jsx)(`h2`,{className:`truncate text-body-small font-semibold`,children:In(e.path)}),(0,$.jsx)(`p`,{className:`truncate text-caption text-muted-foreground`,children:e.path})]})}),(0,$.jsx)(A,{className:`break-all`,children:e.path})]})]}),(0,$.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 text-label font-medium`,children:[(0,$.jsxs)(`span`,{className:`text-diff-added`,children:[`+`,n]}),(0,$.jsxs)(`span`,{className:`text-diff-removed`,children:[`-`,r]})]})]}),(0,$.jsx)(`div`,{className:`min-h-0 min-w-0 overflow-auto bg-content`,children:(0,$.jsx)(Q.Suspense,{fallback:(0,$.jsx)(`div`,{className:`grid min-h-48 place-items-center text-body-small text-muted-foreground`,role:`status`,children:t(`diff.loading`)}),children:(0,$.jsx)(Vu,{change:e})})})]})}function Uu(e){return(0,$.jsx)(Fr,{"data-slot":`collapsible`,...e})}function Wu(e){return(0,$.jsx)(Ir,{"data-slot":`collapsible-trigger`,...e})}function Gu(e){return(0,$.jsx)(Lr,{"data-slot":`collapsible-content`,...e})}var Ku=5;function qu({ariaLabel:e,getKey:t,items:n,renderItem:r}){let[i,a]=(0,Q.useState)(!1);return(0,$.jsxs)(`div`,{"aria-label":e,className:`space-y-0.5`,children:[(i?n:n.slice(0,Ku)).map(e=>(0,$.jsx)(`div`,{children:r(e)},t(e))),i||n.length<=Ku?null:(0,$.jsx)(g,{className:`w-full`,onClick:()=>{a(!0)},size:`sm`,type:`button`,variant:`ghost`,children:s.t(`inspector.showMore`,{ns:`conversation`})})]})}function Ju({error:e,isPending:t,onTerminate:n,terminals:r,terminatingTerminalId:i}){return(0,$.jsx)($u,{icon:(0,$.jsx)(hr,{className:`size-3.5`}),title:s.t(`inspector.terminals`,{ns:`conversation`}),children:(0,$.jsx)(`section`,{"aria-label":s.t(`inspector.terminals`,{ns:`conversation`}),children:t&&r.length===0?(0,$.jsx)(`p`,{className:`px-2 py-2 text-caption text-muted-foreground`,children:s.t(`inspector.terminalLoading`,{ns:`conversation`})}):e!==null&&r.length===0?(0,$.jsx)(`p`,{className:`px-2 py-2 text-caption text-diff-removed`,children:s.t(`inspector.terminalError`,{ns:`conversation`})}):(0,$.jsx)(`div`,{className:`space-y-1`,children:r.map(e=>{let t=i===e.id?s.t(`inspector.terminalStopping`,{command:e.command,ns:`conversation`}):s.t(`inspector.terminalStop`,{command:e.command,ns:`conversation`});return(0,$.jsxs)(`div`,{className:`flex items-center gap-1 rounded-control px-2 py-1.5 hover:bg-control-hover`,children:[(0,$.jsx)(K,{"aria-label":s.t(`inspector.terminalRunning`,{ns:`conversation`}),className:`size-3.5 shrink-0 animate-spin text-muted-foreground`}),(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(`p`,{className:`truncate text-label font-medium text-foreground`,title:e.command,children:e.command}),(0,$.jsx)(`p`,{className:`truncate text-caption text-muted-foreground`,title:e.cwd,children:e.cwd})]}),(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":t,disabled:i!==null,onClick:()=>void n(e.id),size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(Xe,{"aria-hidden":`true`,className:`size-3`})})}),(0,$.jsx)(A,{children:t})]})]},e.id)})})})})}function Yu({onOpenSubagent:e,subagents:t}){return(0,$.jsx)($u,{icon:(0,$.jsx)(ne,{className:`size-3.5`}),title:s.t(`inspector.subagents`,{ns:`conversation`}),children:(0,$.jsxs)(`section`,{"aria-label":s.t(`inspector.subagents`,{ns:`conversation`}),children:[(0,$.jsx)(`p`,{className:`mb-1 px-2 text-caption text-muted-foreground`,children:s.t(`inspector.subagentCount`,{count:t.length,ns:`conversation`})}),(0,$.jsx)(`div`,{className:`space-y-1`,children:t.map(t=>{let n=[t.model===void 0?void 0:gi(t.model),t.reasoningEffort].filter(e=>e!==void 0);return(0,$.jsxs)(g,{variant:`ghost`,"aria-haspopup":`dialog`,"aria-label":s.t(`inspector.subagentOutput`,{nickname:t.nickname,ns:`conversation`}),className:`w-full rounded-control px-2 text-left transition-colors hover:bg-control-hover focus-visible:shadow-focus focus-visible:outline-none`,onClick:()=>{e({status:t.status,taskId:t.taskId})},type:`button`,children:[(0,$.jsx)(Da,{collapsible:!1,status:_i(t.status),children:(0,$.jsx)(ka,{title:t.nickname})}),n.length===0?null:(0,$.jsx)(`p`,{className:`pb-2 text-caption text-muted-foreground`,children:n.join(` · `)})]},t.taskId)})})]})})}function Xu({canRetry:e,isRefreshing:t,isRetrying:n,onRetry:r,servers:i}){if(i.length===0)return null;let a=s.t(n?`inspector.mcpReloading`:`inspector.mcpReload`,{ns:`conversation`});return(0,$.jsx)($u,{action:e?(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":a,disabled:t||n,onClick:r,size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(me,{"aria-hidden":`true`,className:t||n?`animate-spin`:void 0})})}),(0,$.jsx)(A,{children:a})]}):null,icon:(0,$.jsx)(fr,{className:`size-3.5`}),title:`MCP`,children:(0,$.jsx)(qu,{ariaLabel:s.t(`inspector.mcpEnabled`,{ns:`conversation`}),getKey:e=>e.name,items:i,renderItem:e=>(0,$.jsx)(Qu,{server:e})})})}function Zu({error:e}){return(0,$.jsxs)(Uu,{children:[(0,$.jsx)(Wu,{asChild:!0,children:(0,$.jsxs)(g,{className:`group h-7 justify-start px-0 text-caption`,type:`button`,variant:`link`,children:[(0,$.jsx)(oe,{"aria-hidden":`true`,className:`transition-transform group-data-[state=open]:rotate-90`,"data-icon":`inline-start`}),s.t(`inspector.mcpErrorLog`,{ns:`conversation`})]})}),(0,$.jsx)(Gu,{className:`data-[state=closed]:hidden`,forceMount:!0,children:(0,$.jsx)(`pre`,{className:`max-h-44 overflow-auto whitespace-pre-wrap break-words rounded-control bg-control px-2 py-1.5 font-mono text-meta leading-5 text-foreground`,children:e})})]})}function Qu({server:e}){let t=[s.t(`inspector.mcpStatus.${e.status}`,{ns:`conversation`}),...e.status===`ready`?[s.t(`inspector.mcpToolCount`,{count:e.tools.length,ns:`conversation`})]:[],...e.authStatus===null?[]:[s.t(`inspector.mcpAuth.${e.authStatus}`,{ns:`conversation`})],...e.version===null?[]:[s.t(`inspector.mcpVersion`,{ns:`conversation`,version:e.version})]],n=e.status===`ready`?(0,$.jsx)(_e,{"aria-hidden":`true`,className:`size-3.5 text-brand`}):e.status===`starting`?(0,$.jsx)(K,{"aria-hidden":`true`,className:`size-3.5 animate-spin text-muted-foreground`}):e.status===`failed`?(0,$.jsx)(Yn,{"aria-hidden":`true`,className:`size-3.5 text-danger`}):(0,$.jsx)(Jn,{"aria-hidden":`true`,className:`size-3.5 text-warning`}),r=e.tools.join(` · `),i=(0,$.jsxs)(`div`,{"aria-label":e.name,...r.length===0?{}:{"aria-description":r},className:`flex min-h-10 items-start gap-2 rounded-control px-2 py-1.5 transition-colors hover:bg-control-hover`,"data-mcp-server-row":``,children:[(0,$.jsx)(`span`,{className:`mt-0.5 shrink-0`,children:n}),(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(`p`,{className:`truncate text-label font-medium text-foreground`,children:e.title??e.name}),(0,$.jsx)(`p`,{className:`text-caption text-muted-foreground`,children:t.join(` · `)}),e.failureReason===null?null:(0,$.jsx)(`p`,{className:`text-caption text-danger`,children:s.t(`inspector.mcpFailureReason.${e.failureReason}`,{ns:`conversation`})}),e.error===null?null:(0,$.jsx)(Zu,{error:e.error})]})]});return r.length===0?i:(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:i}),(0,$.jsx)(A,{side:`top`,children:r})]})}function $u({action:e,children:t,icon:n,title:r}){return(0,$.jsxs)(`section`,{"aria-label":r,children:[(0,$.jsxs)(`div`,{className:`mb-2 flex min-h-7 items-center justify-between gap-2 text-xs font-medium text-foreground`,children:[(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,$.jsx)(`span`,{className:`text-muted-foreground`,children:n}),r]}),e]}),(0,$.jsx)(`div`,{className:`space-y-0.5`,children:t})]})}async function ed(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 td({name:e,triggerChildren:t,triggerClassName:n,url:r}){a(`conversation`);let[i,o]=(0,Q.useState)(!1),c=(0,Q.useId)(),l=G({enabled:i,queryFn:({signal:e})=>ed(r,e),queryKey:[`task-attachment-source`,r],staleTime:3e4}),u=s.t(`projectDialog.closeSource`,{ns:`workbench`});return(0,$.jsxs)(Jt,{onOpenChange:o,open:i,children:[(0,$.jsx)(yn,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":s.t(`timeline.openAttachment`,{name:e,ns:`conversation`}),className:n,"data-attachment-open":`source`,type:`button`,variant:`ghost`,children:t})}),(0,$.jsx)(Tt,{"aria-labelledby":c,className:`h-[min(82dvh,54rem)] max-w-[72rem] overflow-hidden p-0`,children:l.data===void 0?(0,$.jsxs)(`section`,{className:`grid h-full min-h-0 grid-rows-[auto_minmax(0,1fr)] bg-raised`,children:[(0,$.jsxs)(`header`,{className:`flex min-h-toolbar items-center gap-3 px-3 shadow-toolbar sm:px-4`,children:[(0,$.jsx)(De,{"aria-hidden":`true`,className:`size-4 shrink-0 text-muted-foreground`}),(0,$.jsx)(jt,{className:`min-w-0 flex-1 truncate text-body-small`,id:c,children:e}),(0,$.jsx)(nd,{label:u,onClose:()=>{o(!1)}})]}),(0,$.jsx)(`div`,{className:`grid min-h-0 place-items-center text-body-small ${l.error===null?`text-muted-foreground`:`text-danger`}`,role:l.error===null?`status`:`alert`,children:s.t(l.error===null?`projectDialog.loadingSource`:`projectDialog.loadSourceError`,{ns:`workbench`})})]}):(0,$.jsx)(xe,{className:`grid h-full min-h-0 grid-rows-[auto_minmax(0,1fr)] rounded-none bg-content shadow-none`,code:l.data,language:Pn(e),showLineNumbers:!0,children:(0,$.jsxs)(Se,{className:`min-h-toolbar gap-3 bg-raised px-3 shadow-toolbar sm:px-4`,children:[(0,$.jsxs)(we,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(De,{"aria-hidden":`true`,className:`size-4 shrink-0 text-muted-foreground`}),(0,$.jsx)(jt,{asChild:!0,children:(0,$.jsx)(`h2`,{className:`truncate text-body-small font-semibold`,id:c,title:e,children:(0,$.jsx)(ve,{children:e})})})]}),(0,$.jsxs)(Ce,{children:[(0,$.jsx)(be,{}),(0,$.jsx)(nd,{label:u,onClose:()=>{o(!1)}})]})]})})})]})}function nd({label:e,onClose:t}){return(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":e,onClick:t,size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(ln,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,$.jsx)(A,{children:e})]})}function rd(e){return{admin:s.t(`inspector.sourceRole.admin`,{ns:`conversation`}),repo:s.t(`inspector.sourceRole.repo`,{ns:`conversation`}),system:s.t(`inspector.sourceRole.system`,{ns:`conversation`}),user:s.t(`inspector.sourceRole.user`,{ns:`conversation`})}[e]}function id(e,t){let n=[],r=new Map(t.map(e=>[e.name,e])),i=new Set,a=new Set;for(let t of e)for(let e of t.items)if(!(e.type!==`message`||e.role!==`user`)){for(let t of e.skills??[]){if(i.has(t.name))continue;i.add(t.name);let e=r.get(t.name);n.push({detail:e===void 0?`Skill`:`Skill · ${rd(e.scope)}`,id:`skill:${t.name}`,kind:`skill`,name:e?.displayName??t.name,...e?.description===void 0?{}:{tooltip:e.description}})}for(let t of e.attachments??[])a.has(t.id)||(a.add(t.id),n.push({attachment:t,detail:s.t(`inspector.attachmentDetail`,{ns:`conversation`}),id:`attachment:${t.id}`,kind:`attachment`,name:t.name}))}return n}var ad=`flex h-auto min-h-10 w-full items-center justify-start gap-2 rounded-control px-2 py-1.5 text-left transition-colors hover:bg-control-hover`;function od({source:e}){return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`span`,{className:`shrink-0 text-muted-foreground`,children:e.kind===`skill`?(0,$.jsx)(Qe,{"aria-hidden":`true`,className:`size-3.5 text-brand`}):(0,$.jsx)(Fe,{"aria-hidden":`true`,className:`size-3.5`})}),(0,$.jsxs)(`div`,{className:`min-w-0`,children:[(0,$.jsx)(`p`,{className:`truncate text-label font-medium text-foreground`,title:e.name,children:e.name}),(0,$.jsx)(`p`,{className:`truncate text-caption text-muted-foreground`,children:e.detail})]})]})}function sd({attachmentUrl:e,onOpenAttachment:t,source:n}){if(n.kind===`attachment`&&e!==void 0){let r=(0,$.jsx)(od,{source:n}),i=Cn(n.attachment);return i===`image`?(0,$.jsx)(Bs,{name:n.name,triggerChildren:r,triggerClassName:ad,url:e}):i===`source`?(0,$.jsx)(td,{name:n.name,triggerChildren:r,triggerClassName:ad,url:e}):(0,$.jsx)(g,{"aria-label":s.t(`timeline.openAttachment`,{name:n.name,ns:`conversation`}),className:ad,"data-attachment-open":`system`,onClick:()=>{t(n.attachment.id)},type:`button`,variant:`ghost`,children:r})}return n.kind===`skill`&&n.tooltip!==void 0?(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(`div`,{"aria-description":n.tooltip,className:ad,children:(0,$.jsx)(od,{source:n})})}),(0,$.jsx)(A,{side:`top`,children:n.tooltip})]}):(0,$.jsx)(`div`,{className:ad,children:(0,$.jsx)(od,{source:n})})}function cd({onOpenAttachment:e,projectId:t,skills:n,taskId:r,turns:i}){let a=(0,Q.useMemo)(()=>id(i,n),[n,i]);return a.length===0?null:(0,$.jsx)($u,{icon:(0,$.jsx)($e,{className:`size-3.5`}),title:s.t(`inspector.source`,{ns:`conversation`}),children:(0,$.jsx)(qu,{ariaLabel:s.t(`inspector.contextSources`,{ns:`conversation`}),getKey:e=>e.id,items:a,renderItem:n=>(0,$.jsx)(`div`,{"data-inspector-source-row":``,children:(0,$.jsx)(sd,{...n.kind===`attachment`&&t!==void 0&&r!==void 0?{attachmentUrl:j(``,t,r,n.attachment.id)}:{},onOpenAttachment:e,source:n})})})})}function ld({className:e=``,...t}){return(0,$.jsx)(`div`,{className:v(e),"data-ai-queue":``,...t})}function ud({className:e=``,...t}){return(0,$.jsx)(`ul`,{className:v(`space-y-0.5`,e),...t})}function dd({className:e=``,status:t,...n}){return(0,$.jsx)(`li`,{className:v(`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 fd({className:e=``,label:t,status:n,...r}){let i=n===`completed`?(0,$.jsx)(_e,{"aria-hidden":`true`,className:`size-3.5`}):n===`in_progress`?(0,$.jsx)(K,{"aria-hidden":`true`,className:`size-3.5 animate-spin`}):(0,$.jsx)(xn,{"aria-hidden":`true`,className:`size-3.5`});return(0,$.jsx)(`span`,{"aria-label":t,className:v(`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 pd({className:e=``,status:t,...n}){return(0,$.jsx)(`span`,{className:v(`min-w-0 break-words text-label leading-5`,t===`completed`?`text-muted-foreground`:`text-foreground`,e),...n})}function md({plan:e}){return(0,$.jsx)($u,{icon:(0,$.jsx)(or,{className:`size-3.5`}),title:s.t(`inspector.plan`,{ns:`conversation`}),children:(0,$.jsxs)(ld,{children:[e.explanation===null||e.explanation.trim()===``?null:(0,$.jsx)(`p`,{className:`px-2 pb-1.5 text-caption leading-5 text-muted-foreground`,children:e.explanation}),(0,$.jsx)(ud,{children:e.steps.map((e,t)=>(0,$.jsxs)(dd,{status:e.status,children:[(0,$.jsx)(fd,{label:s.t(`inspector.planStatus.${e.status}`,{ns:`conversation`}),status:e.status}),(0,$.jsx)(pd,{status:e.status,children:e.text})]},`${String(t)}:${e.text}`))})]})})}function hd(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(`
|
|
15
|
+
`),kind:e.kind===n.kind?e.kind:`update`,path:n.path})}return[...t.values()]}function gd(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=Ln(t);return{additions:e.additions+n.additions,removals:e.removals+n.removals}},{additions:0,removals:0}),a=hd(r??n);return{changeStats:i,displayChanges:a,fileChangesByPath:new Map(a.map(e=>[e.path,e]))}}function _d({changeCount:e,changeStats:t,onCommitChanges:n,onOpenChanges:r}){return e===0?null:(0,$.jsx)($u,{action:(0,$.jsxs)(g,{"aria-label":s.t(`inspector.commitChanges`,{count:e,ns:`conversation`}),className:`h-6 gap-1 px-1.5 text-caption font-medium`,id:`workbench-commit-changes`,onClick:n,size:`toolbar`,type:`button`,variant:`ghost`,children:[(0,$.jsx)(nt,{"aria-hidden":`true`,className:`size-3.5`}),s.t(`inspector.commit`,{ns:`conversation`})]}),icon:(0,$.jsx)(nr,{className:`size-3.5`}),title:s.t(`inspector.gitChanges`,{ns:`conversation`}),children:(0,$.jsxs)(g,{"aria-label":s.t(`inspector.openChanges`,{count:e,ns:`conversation`}),className:`w-full gap-1.5`,contentAlign:`start`,"data-open-inspector-changes":``,onClick:r,size:`toolbar`,type:`button`,variant:`ghost`,children:[(0,$.jsx)(`span`,{children:s.t(`inspector.gitChangesCount`,{count:e,ns:`conversation`})}),t===void 0?null:(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`span`,{className:`font-medium text-diff-added`,children:[`+`,t.additions]}),(0,$.jsxs)(`span`,{className:`font-medium text-diff-removed`,children:[`-`,t.removals]})]})]})})}function vd(e){let t=Math.floor(e/60),n=e%60;return t===0?s.t(`inspector.goalSeconds`,{count:n,ns:`conversation`}):s.t(`inspector.goalDuration`,{minutes:t,ns:`conversation`,seconds:n})}function yd({goal:e,onClear:t,onStatusChange:n}){let[r,i]=(0,Q.useState)(null),[a,o]=(0,Q.useState)(null),c=new Intl.NumberFormat(s.language),l=s.t(`inspector.goalStatus.${e.status}`,{ns:`conversation`}),u=e.status===`active`?`paused`:`active`,d=s.t(e.status===`active`?`inspector.goalPause`:`inspector.goalResume`,{ns:`conversation`}),f=async(e,t)=>{i(e),o(null);try{await t()}catch(e){o(e instanceof Error?e:Error(`Goal mutation failed`))}finally{i(null)}};return(0,$.jsx)($u,{action:(0,$.jsxs)(`div`,{className:`flex items-center gap-0.5`,children:[e.status===`active`||e.status===`paused`?(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":d,disabled:r!==null,onClick:()=>void f(`status`,()=>n(u)),size:`icon-sm`,type:`button`,variant:`ghost`,children:e.status===`active`?(0,$.jsx)(ur,{"aria-hidden":`true`,className:`size-3.5`}):(0,$.jsx)(dr,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,$.jsx)(A,{children:d})]}):null,(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":s.t(`inspector.goalClear`,{ns:`conversation`}),className:`hover:text-danger`,disabled:r!==null,onClick:()=>void f(`clear`,t),size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(ge,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,$.jsx)(A,{children:s.t(`inspector.goalClear`,{ns:`conversation`})})]})]}),icon:(0,$.jsx)(gr,{className:`size-3.5`}),title:s.t(`inspector.goal`,{ns:`conversation`}),children:(0,$.jsxs)(`div`,{className:`space-y-2 px-2 py-1`,children:[(0,$.jsx)(`p`,{className:`whitespace-pre-wrap break-words text-label leading-5 text-foreground`,children:e.objective}),(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center gap-x-3 gap-y-1 text-caption text-muted-foreground`,children:[(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1`,children:[(0,$.jsx)(`span`,{"aria-hidden":`true`,className:`size-1.5 rounded-full bg-brand`}),l]}),(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1`,children:[(0,$.jsx)(Xn,{"aria-hidden":`true`,className:`size-3`}),vd(e.timeUsedSeconds)]}),(0,$.jsx)(`span`,{children:e.tokenBudget===null?s.t(`inspector.goalTokens`,{ns:`conversation`,used:c.format(e.tokensUsed)}):s.t(`inspector.goalTokenBudget`,{budget:c.format(e.tokenBudget),ns:`conversation`,used:c.format(e.tokensUsed)})})]}),a===null?null:(0,$.jsx)(`p`,{className:`text-caption text-danger`,role:`alert`,children:s.t(`inspector.goalMutationFailed`,{ns:`conversation`})})]})})}var bd={project:er,changes:nt,context:Vn,file:De,history:rr};function xd({activeTab:e,availableTabs:t,onCloseFile:n,onTabChange:r}){return(0,$.jsx)(`div`,{className:`flex min-w-0 flex-1 items-center gap-0.5 overflow-x-auto`,role:`tablist`,children:t.map(t=>{let i=bd[t],a=t===`file`&&n!==void 0;return(0,Q.createElement)(`div`,{...a?{"aria-label":s.t(`inspector.file`,{ns:`conversation`}),role:`group`}:{},className:`relative flex shrink-0 items-center`,key:t},(0,$.jsxs)(g,{"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,$.jsx)(i,{"aria-hidden":`true`}),(0,$.jsx)(`span`,{children:s.t(`inspector.${t}`,{ns:`conversation`})})]}),a?(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":s.t(`inspector.closeFile`,{ns:`conversation`}),className:`absolute right-1 size-4`,onClick:n,size:`embedded`,type:`button`,variant:`ghost`,children:(0,$.jsx)(ln,{className:`size-3`,"aria-hidden":`true`})})}),(0,$.jsx)(A,{children:s.t(`inspector.closeFile`,{ns:`conversation`})})]}):null)})})}function Sd({onClose:e}){if(e===void 0)return null;let t=s.t(`shell.closeInspector`,{ns:`workbench`});return(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":t,onClick:e,size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(et,{"aria-hidden":`true`})})}),(0,$.jsx)(A,{children:t})]})}function Cd({activeTab:e,availableTabs:t,contextOnly:n,onClose:r,onCloseFile:i,onTabChange:a}){return n&&t.length===1?(0,$.jsx)(`div`,{className:`absolute right-2 top-2 z-10 min-[1101px]:hidden`,children:(0,$.jsx)(Sd,{onClose:r})}):(0,$.jsxs)(`div`,{className:`flex h-workbench-header w-full min-w-0 shrink-0 items-center gap-2 overflow-hidden px-1.5`,children:[(0,$.jsx)(xd,{activeTab:e,availableTabs:t,...i===void 0?{}:{onCloseFile:i},onTabChange:a}),(0,$.jsx)(`div`,{className:`shrink-0 min-[1101px]:hidden`,children:(0,$.jsx)(Sd,{onClose:r})})]})}var wd=Object.defineProperty,Td=Object.defineProperties,Ed=Object.getOwnPropertyDescriptors,Dd=Object.getOwnPropertySymbols,Od=Object.prototype.hasOwnProperty,kd=Object.prototype.propertyIsEnumerable,Ad=(e,t,n)=>t in e?wd(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,jd=(e,t)=>{for(var n in t||={})Od.call(t,n)&&Ad(e,n,t[n]);if(Dd)for(var n of Dd(t))kd.call(t,n)&&Ad(e,n,t[n]);return e},Md=(e,t)=>Td(e,Ed(t)),Nd=(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 Pd(e,t){return typeof e==`function`?e(t):e}function Fd(e,t){return n=>{t.setState(t=>Md(jd({},t),{[e]:Pd(n,t[e])}))}}var Id=(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)}),Ld=`Headless Tree: `,Rd=e=>Error(Ld+e),zd=e=>console.warn(Ld+e),Bd={key:`tree`,getInitialState:e=>jd({expandedItems:[],focusedItem:null},e),getDefaultConfig:(e,t)=>jd({setExpandedItems:Fd(`expandedItems`,t),setFocusedItem:Fd(`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)){zd(`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(()=>Nd(null,null,function*(){var t,n,r,i;let a=e.getFocusedItem();(n=(t=e.getConfig()).scrollToItem)==null||n.call(t,a),yield Id(()=>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)=>Md(jd({},e?.()),{role:`tree`,"aria-label":n??``,ref:t.registerElement}),isSearchOpen:()=>!1},itemInstance:{scrollTo:(e,t)=>Nd(null,[e,t],function*({tree:e,item:t},n){var r,i,a;(i=(r=e.getConfig()).scrollToItem)==null||i.call(r,t),yield Id(()=>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 Md(jd({},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()}}}},Vd=(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(Md(jd({},i),{prev:n}),...e)}}}]},Hd=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 Rd(`${n.key} needs ${e}`)}},Ud=(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},Wd=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),Gd=(e=[])=>Ud(e,Wd(e)),Kd=e=>{let t=e.instanceBuilder??Vd,n=[Bd,...Gd(e.features)];Hd(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)=>jd(jd({},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=jd(jd({},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},qd={key:`selection`,getInitialState:e=>jd({selectedItems:[]},e),getDefaultConfig:(e,t)=>jd({setSelectedItems:Fd(`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})=>Md(jd({},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()))}}}},Jd=e=>e.code!==``&&e.code!==`Unidentified`?e.code:e.key,Yd={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)$/},Xd=new Set([`MetaLeft`,`MetaRight`,`Meta`,`ControlLeft`,`ControlRight`,`Control`,`AltLeft`,`AltRight`,`Alt`,`ShiftLeft`,`ShiftRight`,`Shift`]),Zd=(e,t,n)=>{let r=n.hotkey.toLowerCase().split(`+`),i=r.every(t=>{if(t in Yd)return[...e].some(e=>Yd[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},Qd=(e,t,n,r)=>Object.entries(jd(jd({},n),r)).find(([,n])=>Zd(e,t,n))?.[0],$d={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=Jd({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=Qd(t.current.pressedKeys,e,e.getHotkeyPresets(),u);if(s&&d&&t.current.pressedKeys.delete(d),!p)return;let m=jd(jd({},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=Jd({code:t.code??``,key:t.key??``});r&&((n=e.current).pressedKeys??(n.pressedKeys=new Set),Xd.has(r)&&(e.current.pressedKeys=new Set([...e.current.pressedKeys].filter(e=>Xd.has(e)))),e.current.pressedKeys.delete(r))}},ef={key:`hotkeys-core`,onTreeMount:(e,t)=>{let n=e.getDataRef(),r=t=>{let r=t.target instanceof HTMLInputElement;$d.dispatchKeyDown(e,n,t,{isInputFocused:r,releaseAfterDispatch:r})},i=e=>{$d.dispatchKeyUp(n,e)},a=()=>{$d.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)}},tf=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},nf=(e,t)=>Nd(null,null,function*(){var n,r;let i=e.getConfig(),a=tf(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}),rf=(e,t)=>Nd(null,null,function*(){var n,r,i;let a=e.getConfig(),o=tf(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}),af={key:`async-data-loader`,getInitialState:e=>jd({loadingItemData:[],loadingItemChildrens:[]},e),getDefaultConfig:(e,t)=>jd({setLoadingItemData:Fd(`loadingItemData`,t),setLoadingItemChildrens:Fd(`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)=>Nd(null,[e,t],function*({tree:e},t){return tf(e).current.itemData[t]??(yield nf(e,t))}),loadChildrenIds:(e,t)=>Nd(null,[e,t],function*({tree:e},t){return tf(e).current.childrenIds[t]??(yield rf(e,t))}),retrieveItemData:({tree:e},t,n=!1)=>{let r=e.getConfig(),i=tf(e);return i.current.itemData[t]?i.current.itemData[t]:(!e.getState().loadingItemData.includes(t)&&!n&&setTimeout(()=>nf(e,t)),r.createLoadingItemData?.call(r)??null)},retrieveChildrenIds:({tree:e},t,n=!1)=>{let r=tf(e);return r.current.childrenIds[t]?r.current.childrenIds[t]:(e.getState().loadingItemChildrens.includes(t)||n||setTimeout(()=>rf(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)=>Nd(null,[e,t],function*({tree:e,itemId:t},n){var r;n||(r=tf(e).current.itemData)==null||delete r[t],yield nf(e,t)}),invalidateChildrenIds:(e,t)=>Nd(null,[e,t],function*({tree:e,itemId:t},n){var r;n||(r=tf(e).current.childrenIds)==null||delete r[t],yield rf(e,t)}),updateCachedChildrenIds:({tree:e,itemId:t},n,r)=>{tf(e).current.childrenIds[t]=n,r||e.rebuildTree()},updateCachedData:({tree:e,itemId:t},n,r)=>{tf(e).current.itemData[t]=n,r||e.rebuildTree()},hasLoadedData:({tree:e,itemId:t})=>e.getDataRef().current.itemData[t]!==void 0}},of=(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},sf={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={}),of(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={}),of(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={}),of(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={}),of(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={}),of(a,i.current.memo.rename)}}},cf=()=>{},lf=(e,t,n,r)=>{for(let i=r;i>=0;i--)if(e[i][t]?.[n])return i;return null},uf=(e,t,n,r,i,a)=>{let o=lf(e,t,r,i-1);return(e[i][t]?.[r])(Md(jd({},n),{prev:o===null?null:(...i)=>uf(e,t,n,r,o,i)}),...a)},df=(e,t,n)=>{let r={},i=new Proxy({},{has(n,r){return typeof r==`symbol`||r===`toJSON`?!1:!!lf(e,t,r,e.length-1)},get(n,i){if(typeof i!=`symbol`)return i===`toJSON`?{}:(...n)=>{let a=lf(e,t,i,e.length-1);if(a===null)throw Rd(`feature missing for method ${i}`);return uf(e,t,r,i,a,n)}}});return Object.assign(r,n(i)),[i,cf]},ff=Object.defineProperty,pf=Object.defineProperties,mf=Object.getOwnPropertyDescriptors,hf=Object.getOwnPropertySymbols,gf=Object.prototype.hasOwnProperty,_f=Object.prototype.propertyIsEnumerable,vf=(e,t,n)=>t in e?ff(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,yf=(e,t)=>{for(var n in t||={})gf.call(t,n)&&vf(e,n,t[n]);if(hf)for(var n of hf(t))_f.call(t,n)&&vf(e,n,t[n]);return e},bf=(e,t)=>pf(e,mf(t)),xf=e=>{let[t]=(0,Q.useState)(()=>({current:Kd(e)})),[n,r]=(0,Q.useState)(()=>t.current.getState());return(0,Q.useEffect)(()=>(t.current.setMounted(!0),t.current.rebuildTree(),()=>{t.current.setMounted(!1)}),[t]),t.current.setConfig(t=>bf(yf(yf({},t),e),{state:yf(yf({},n),e.state),setState:t=>{var n;r(t),(n=e.setState)==null||n.call(e,t)}})),t.current},Sf=`\0project-file-tree-root`,Cf=`\0project-file-tree-project-root`,wf=`\0project-file-tree-status:`;function Tf(e,t){return typeof e==`function`?e(t):e}function Ef(e){return e.kind===`status`?e.status===`empty`?s.t(`inspector.emptyFolder`,{ns:`conversation`}):s.t(`inspector.readFolderError`,{name:e.name,ns:`conversation`}):e.name}function Df(e){return e.split(`/`).at(-1)??e}function Of(e){return e.path}function kf(e,t){return`${wf}${t}:${e??`root`}`}function Af(e){return{kind:`entry`,name:Df(e.path),path:e.path,type:e.type}}function jf(e){return e instanceof Error?e.message:String(e)}function Mf({client:e,projectId:t,projectName:n,queryClient:r,rootPath:i}){let a=new Map,o={kind:`root`,name:n,type:`directory`};return a.set(Cf,o),{async getChildrenWithData(s){if(s===`\0project-file-tree-root`)return[{data:o,id:Cf}];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(It(t,i,l,e));if(o.entries.length===0){let e=kf(l,`empty`),t={directoryPath:l,kind:`status`,name:l===null?n:Df(l),status:`empty`,type:`status`};return a.set(e,t),[{data:t,id:e}]}return o.entries.map(e=>{let t=Of(e),n=Af(e);return a.set(t,n),{data:n,id:t}})}catch(e){let t=kf(l,`error`),r={directoryPath:l,kind:`status`,message:jf(e),name:l===null?n:Df(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:Df(e),path:e,type:`directory`})}}}function Nf(e,t){let n=[...e].filter(e=>!t.has(e));return new Set([...t].filter(e=>!n.some(t=>e.startsWith(`${t}/`))))}function Pf(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=Ln(t);r.set(i.path,{additions:(a?.additions??0)+o.additions,removals:(a?.removals??0)+o.removals})}return r}function Ff({path:e,stats:t}){return(0,$.jsxs)(`span`,{"aria-label":s.t(`inspector.changeIndicator`,{additions:t.additions,ns:`conversation`,path:e,removals:t.removals}),className:`ml-auto flex shrink-0 items-center gap-1 pl-2 text-meta group-hover/file-tree-node:invisible group-focus-within/file-tree-node:invisible`,children:[(0,$.jsxs)(`span`,{className:`font-medium text-diff-added`,children:[`+`,t.additions]}),(0,$.jsxs)(`span`,{className:`font-medium text-diff-removed`,children:[`-`,t.removals]})]})}function If({onMenuOpen:e,onOpenProjectPath:t,onReferenceProjectPath:n,onRefreshProject:r,projectName:i,projectOpenApps:a,projectOpenPending:o,projectPath:c,refreshing:l=!1}){let u=(0,Q.useRef)(!1),[d,f]=(0,Q.useState)(!1),p=l||d,m=s.t(`inspector.refreshProject`,{name:i,ns:`conversation`});return(0,$.jsxs)(le,{children:[(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":m,className:`size-5 shrink-0 transition-opacity ${p?`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:p,onClick:()=>{u.current||(u.current=!0,f(!0),Promise.resolve().then(r).finally(()=>{u.current=!1,f(!1)}))},size:`embedded`,type:`button`,variant:`embedded`,children:(0,$.jsx)(me,{"aria-hidden":`true`,className:`size-3.5 ${p?`animate-spin`:``}`})})}),(0,$.jsx)(A,{side:`left`,children:m})]}),(0,$.jsx)(ai,{apps:a,isPending:o,onOpen:e,onReference:n,onSelect:t,target:{absolutePath:c,path:c,relativePath:`.`,type:`directory`}})]})}function Lf(e,t){return e.kind===`status`?null:e.kind===`root`?{absolutePath:t.path,path:t.path,relativePath:`.`,type:`directory`}:{absolutePath:ri(t.path,e.path),path:e.path,relativePath:e.path,...e.type===`file`?{reference:{name:e.name,path:e.path,rootId:t.id,rootPath:t.path}}:{},type:e.type}}function Rf({children:e,isPending:t,onClose:n}){return(0,$.jsx)(Jt,{onOpenChange:e=>{!e&&!t&&n()},open:!0,children:(0,$.jsx)(Tt,{className:`max-w-96 p-4`,onEscapeKeyDown:e=>{t&&e.preventDefault()},onInteractOutside:e=>{t&&e.preventDefault()},children:e})})}function zf({initialName:e,isPending:t,onClose:n,onRename:r,targetType:i}){let{t:o}=a(`workbench`),[s,c]=(0,Q.useState)(e),l=s.trim(),u=l===`.`||l===`..`||/[/\\]/u.test(l);return(0,$.jsx)(Rf,{isPending:t,onClose:n,targetType:i,children:(0,$.jsxs)(`form`,{className:`grid gap-4`,onSubmit:t=>{t.preventDefault(),!u&&l!==e&&r(l)},children:[(0,$.jsxs)(Ct,{children:[(0,$.jsx)(jt,{children:o(`projectFile.renameTitle`)}),(0,$.jsx)(Kt,{children:o(`projectFile.renameDescription.${i}`)})]}),(0,$.jsx)(he,{"aria-label":o(`projectFile.name`),autoFocus:!0,disabled:t,maxLength:255,onChange:e=>{c(e.currentTarget.value)},value:s}),(0,$.jsxs)(Xt,{children:[(0,$.jsx)(g,{disabled:t,onClick:n,type:`button`,variant:`ghost`,children:o(`actions.cancel`)}),(0,$.jsx)(g,{disabled:t||u||l.length===0||l===e,type:`submit`,children:o(`openMenu.rename`)})]})]})})}function Bf({isPending:e,name:t,onClose:n,onDelete:r,targetType:i}){let{t:o}=a(`workbench`);return(0,$.jsxs)(Rf,{isPending:e,onClose:n,targetType:i,children:[(0,$.jsxs)(Ct,{children:[(0,$.jsx)(jt,{children:o(`projectFile.deleteTitle`,{name:t})}),(0,$.jsx)(Kt,{children:o(`projectFile.deleteDescription.${i}`)})]}),(0,$.jsxs)(Xt,{children:[(0,$.jsx)(g,{disabled:e,onClick:n,type:`button`,variant:`ghost`,children:o(`actions.cancel`)}),(0,$.jsx)(g,{disabled:e,onClick:r,type:`button`,variant:`destructive`,children:o(`openMenu.delete`)})]})]})}function Vf(e){let t=e.lastIndexOf(`/`);return t===-1?null:e.slice(0,t)}function Hf({client:e,name:t,onRefreshDirectory:n,path:r,projectId:i,projectPath:a,targetType:o}){let[s,c]=(0,Q.useState)(null),l=(0,Q.useRef)(null),u=z({mutationFn:async t=>{if(r===null)throw TypeError(`Project file path is unavailable`);let n={idempotencyKey:l.current??D()};return t.action===`rename`&&t.name!==void 0?e.renameProjectFile(i,a,{name:t.name,path:r},n):e.deleteProjectFile(i,a,{path:r},n)},onSuccess:()=>{c(null),l.current=null,r!==null&&n(Vf(r))}}),d=e=>{l.current=D(),c(e)},f=()=>{u.isPending||(c(null),l.current=null)};return{dialog:r===null||s===null?null:s===`rename`?(0,$.jsx)(zf,{initialName:t,isPending:u.isPending,onClose:f,onRename:e=>{u.mutate({action:`rename`,name:e})},targetType:o}):(0,$.jsx)(Bf,{isPending:u.isPending,name:t,onClose:f,onDelete:()=>{u.mutate({action:`delete`})},targetType:o}),isPending:u.isPending,openDelete:()=>{d(`delete`)},openRename:()=>{d(`rename`)}}}var Uf=16,Wf=8,Gf={height:600,width:320},Kf=(0,Q.memo)(function({changeStatsByPath:e,client:t,item:n,onOpenProjectPath:r,onReferenceProjectPath:i,onRefreshDirectory:a,onRefreshProject:o,onSelect:c,projectOpenApps:l,projectOpenPending:u,projectId:d,projectPath:f,projectRootId:p,projectRefreshing:m}){let h=n.getItemData(),_=Ef(h),v=Lf(h,{id:p,path:f}),y=v?.type===`file`?()=>{an({onOpenSystemDefault:e=>{r(`system-default`,e)},projectId:d,reference:{lineNumber:null,path:v.path},rootPath:f})}:void 0,b=h.kind===`root`?e=>{r(e)}:r,{ref:x,...S}=n.getProps(),C=n.getItemMeta().level,w=n.isFolder(),T=n.isExpanded(),E=n.isLoading(),D=h.kind===`status`?h.name:_,k=h.kind===`entry`?e.get(h.path):void 0,j=Hf({client:t,name:_,onRefreshDirectory:a,path:h.kind===`entry`?h.path:null,projectId:d,projectPath:f,targetType:h.type===`status`?`file`:h.type});if(h.kind===`status`)return(0,$.jsxs)(`div`,{...S,className:`flex h-7 items-center gap-2 pr-1.5 text-caption ${h.status===`error`?`text-diff-removed`:`text-muted-foreground`}`,ref:x,style:{paddingLeft:C*Uf+6},children:[(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:_}),h.status===`error`?(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":s.t(`inspector.refreshFolder`,{name:D,ns:`conversation`}),onClick:e=>{e.stopPropagation(),a(h.directoryPath)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(me,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,$.jsx)(A,{children:s.t(`inspector.refreshFolder`,{name:D,ns:`conversation`})})]}):null]});let ee=(0,$.jsxs)(`div`,{...S,className:`group/file-tree-node flex h-7 w-full items-center gap-1 rounded-control pr-1.5 text-left transition-colors hover:bg-control-hover focus-visible:shadow-focus focus-visible:outline-none ${n.isSelected()?`bg-control`:``}`,onContextMenu:e=>{S.onContextMenu?.(e),c(n.getId())},onKeyDown:e=>{S.onKeyDown?.(e),e.target===e.currentTarget&&(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),n.primaryAction(),w&&(T?n.collapse():n.expand()))},ref:x,style:{paddingLeft:C*Uf+2},children:[w?(0,$.jsx)(g,{"aria-label":s.t(T?`agentComponents.folderCollapse`:`agentComponents.folderExpand`,{name:_,ns:`conversation`}),className:`inline-grid size-5 shrink-0 place-items-center rounded-control text-muted-foreground hover:text-foreground focus-visible:shadow-focus focus-visible:outline-none`,onClick:e=>{e.stopPropagation(),T?n.collapse():n.expand()},size:`embedded`,type:`button`,variant:`embedded`,children:E?(0,$.jsx)(K,{"aria-hidden":`true`,className:`size-3.5 animate-spin`}):(0,$.jsx)(oe,{"aria-hidden":`true`,className:`size-3.5 transition-transform ${T?`rotate-90`:``}`})}):(0,$.jsx)(`span`,{"aria-hidden":`true`,className:`size-5 shrink-0`}),w?T?(0,$.jsx)(se,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-brand`}):(0,$.jsx)(de,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-brand`}):(0,$.jsx)(Z,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-muted-foreground`}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,title:h.kind===`entry`?h.path:_,children:_}),h.kind===`entry`&&k!==void 0?(0,$.jsx)(Ff,{path:h.path,stats:k}):null,h.kind===`root`?(0,$.jsx)(If,{onMenuOpen:()=>{c(n.getId())},onOpenProjectPath:r,onReferenceProjectPath:i,onRefreshProject:o,projectName:_,projectOpenApps:l,projectOpenPending:u,projectPath:f,refreshing:m}):v===null?null:(0,$.jsx)(le,{children:(0,$.jsx)(ai,{apps:l,isPending:u,onDelete:j.openDelete,onOpen:()=>{c(n.getId())},...y===void 0?{}:{onOpenInNewWindow:y},onReference:i,onRename:j.openRename,onSelect:r,target:v})})]});return(0,$.jsxs)($.Fragment,{children:[v===null?ee:(0,$.jsx)(li,{apps:l,isPending:u,onOpen:()=>{c(n.getId())},onReference:i,...y===void 0?{}:{onOpenInNewWindow:y},onSelect:b,target:v,...h.kind===`entry`?{onDelete:j.openDelete,onRename:j.openRename}:{},children:ee}),j.dialog]})});function qf({client:e,expandedPaths:t,fileChangesByPath:n,onExpandedPathsChange:r,onOpenFileDiff:i,onOpenProjectFile:o,onOpenProjectPath:c,onReferenceProjectPath:l,onRefreshProject:u,projectId:d,projectName:f,projectOpenApps:p,projectOpenPending:m,projectPath:h,projectRootId:g,projectRefreshing:_=!1}){a(`conversation`);let v=x(),y=(0,Q.useRef)(null),b=(0,Q.useRef)(()=>void 0),[S,C]=(0,Q.useState)(!0),[w,T]=(0,Q.useState)([]),E=(0,Q.useMemo)(()=>Mf({client:e,projectId:d,projectName:f,queryClient:v,rootPath:h}),[e,d,f,h,v]),D=(0,Q.useMemo)(()=>[...S?[Cf]:[],...t],[t,S]),O=(0,Q.useCallback)(e=>{let n=Tf(e,D);C(n.includes(Cf)),r(Nf(t,new Set(n.filter(e=>e!==Cf))))},[D,t,r]),k=(0,Q.useCallback)(e=>{let t=Tf(e,w).at(-1)??w.at(-1);T(t===void 0?[]:[t])},[w]),A=xf({createLoadingItemData:()=>({kind:`root`,name:f,type:`directory`}),dataLoader:E,features:[af,qd,ef,sf],getItemName:e=>Ef(e.getItemData()),indent:Uf,instanceBuilder:df,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?o(t.path):i(r)},rootItemId:Sf,scrollToItem:e=>{b.current(e.getId())},setExpandedItems:O,setSelectedItems:k,state:{expandedItems:D,selectedItems:w}}),j=A.getItems(),ee=(0,Q.useMemo)(()=>n.size===0?new Map:Pf(n,j.map(e=>e.getItemData())),[n,j]),M=(0,Q.useMemo)(()=>new Map(j.map((e,t)=>[e.getId(),t])),[j]),N=la({count:j.length,estimateSize:()=>28,getItemKey:e=>j[e]?.getKey()??e,getScrollElement:()=>y.current,initialRect:Gf,overscan:Wf});b.current=e=>{let t=M.get(e);t!==void 0&&N.scrollToIndex(t,{align:`auto`})};let P=(0,Q.useCallback)(async(e,t=!1)=>{await v.invalidateQueries({exact:!0,queryKey:[`projects`,d,h,`file-tree`,e],refetchType:`none`});let n=e??`\0project-file-tree-project-root`;await A.getItemInstance(n).invalidateChildrenIds(t)},[d,h,v,A]),F=(0,Q.useCallback)(()=>Promise.all([Promise.resolve(u()),P(null,!0),...[...t].map(e=>P(e,!0))]),[t,u,P]),{ref:I,...L}=A.getContainerProps(s.t(`inspector.fileTree`,{ns:`conversation`}));return(0,$.jsxs)(`div`,{...L,className:`h-full w-full cursor-default overflow-y-auto font-mono text-label text-foreground`,"data-project-file-tree":``,ref:e=>{y.current=e,I?.(e)},children:[j.length===0?(0,$.jsxs)(`div`,{"aria-expanded":S,"aria-label":s.t(`inspector.projectFilesLoading`,{ns:`conversation`}),"aria-selected":`false`,className:`flex h-7 items-center gap-1.5 px-1.5 text-muted-foreground`,role:`treeitem`,children:[(0,$.jsx)(K,{"aria-hidden":`true`,className:`size-3.5 animate-spin`}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:f})]}):null,(0,$.jsx)(`div`,{className:`relative w-full`,style:{height:N.getTotalSize()},children:N.getVirtualItems().map(t=>{let n=j[t.index];return n===void 0?null:(0,$.jsx)(`div`,{className:`absolute left-0 top-0 w-full`,"data-index":t.index,style:{height:28,transform:`translateY(${String(t.start)}px)`},children:(0,$.jsx)(Kf,{changeStatsByPath:ee,client:e,item:n,onOpenProjectPath:c,onReferenceProjectPath:l,onRefreshDirectory:e=>{P(e)},onRefreshProject:F,onSelect:e=>{T([e])},projectOpenApps:p,projectOpenPending:m,projectId:d,projectPath:h,projectRootId:g,projectRefreshing:_})},t.key)})})]})}var Jf=new Set,Yf=new Map,Xf=(0,Q.lazy)(async()=>({default:(await cn(()=>import(`./git-history-panel-CqKWTKwH.js`),__vite__mapDeps([21,1,2,4,5,6,7,10,22,23,13,11,12,24,3,8,9,14,15,20,25,26]))).GitHistoryPanel})),Zf=(0,Q.lazy)(async()=>({default:(await cn(()=>import(`./workbench-inspector-changes-BLY-8Tfn.js`),__vite__mapDeps([27,1,2,4,5,6,8,9,10,13,11,12,28,29,24,30,3,7,14,15]))).WorkbenchInspectorChanges}));function Qf({backgroundTerminals:e=[],backgroundTerminalsError:t=null,backgroundTerminalsPending:n=!1,contextOnly:r=!1,expandedFileTreePaths:i=Jf,fileSelection:o=null,gitStatus:c,gitStatusDetails:l,gitStatusDetailsError:u=null,gitStatusDetailsPending:d=!1,gitStatusError:f=null,gitStatusPending:p=!1,gitStatusRefreshing:m=!1,gitClient:h,mcpServers:_=[],mcpServersRetryAvailable:v=!0,mcpServersRefreshing:y=!1,mcpServersRetrying:b=!1,onFileTreeExpandedChange:x=()=>void 0,onClearGoal:S=()=>Promise.resolve(),onGoalStatusChange:C=()=>Promise.resolve(),onOpenFileDiff:w=()=>void 0,onOpenTaskAttachment:T=()=>void 0,onOpenProjectPath:E=()=>void 0,onOpenProjectFile:D=()=>void 0,onReferenceProjectPath:j=()=>void 0,onOpenSubagent:ee=()=>void 0,onReloadMcpServers:N=()=>void 0,onRefreshGitStatus:P=()=>void 0,onRefreshProject:F=()=>void 0,onCommitChanges:I=()=>void 0,onClose:L,onCloseFile:R,onTerminateBackgroundTerminal:z=()=>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:Y=`project`,task:re,taskId:ie,terminatingTerminalId:ae=null}){a(`conversation`);let X=xi(ie,c,{contextOnly:r,fileOpen:o!==null}),{activeTab:Z}=Si({contextOnly:r,fileOpen:o!==null,gitStatus:c,inspectorOpen:!0,requestedTab:Y,taskId:ie}),oe=c!==void 0&&c.repositoryMode!==`none`,{changeStats:se,displayChanges:ce,fileChangesByPath:le}=(0,Q.useMemo)(()=>oe&&(Z===`context`||Z===`project`)?gd(c,l):{changeStats:void 0,displayChanges:[],fileChangesByPath:Yf},[Z,c,l,oe]),ue=G.split(/[\\/]/u).filter(Boolean).at(-1)??H,de=(0,$.jsxs)(`div`,{className:`h-full space-y-5 overflow-y-auto p-2.5`,children:[re?.goal===null||re?.goal===void 0?null:(0,$.jsx)(yd,{goal:re.goal,onClear:S,onStatusChange:C}),oe&&ce.length>0?(0,$.jsx)(_d,{changeCount:ce.length,changeStats:se,onCommitChanges:I,onOpenChanges:()=>{B(`changes`)}}):null,e.length>0||n||t!==null?(0,$.jsx)(Ju,{error:t,isPending:n,onTerminate:z,terminals:e,terminatingTerminalId:ae}):null,ne.length>0?(0,$.jsx)(Yu,{onOpenSubagent:ee,subagents:ne}):null,(0,$.jsx)(Xu,{canRetry:v,isRefreshing:y,isRetrying:b,onRetry:N,servers:_}),(0,$.jsx)(cd,{onOpenAttachment:T,...V===void 0?{}:{projectId:V},skills:te,...ie===void 0?{}:{taskId:ie},turns:re?.turns??[]}),re?.plan===null||re?.plan===void 0?null:(0,$.jsx)(md,{plan:re.plan})]});return(0,$.jsxs)(`aside`,{"aria-label":s.t(`inspector.title`,{ns:`conversation`}),className:`workbench-inspector relative z-30 flex min-h-0 flex-col bg-panel shadow-divider-reverse`,children:[(0,$.jsx)(Cd,{activeTab:Z,availableTabs:X,contextOnly:r,onClose:L,...R===void 0?{}:{onCloseFile:R},onTabChange:B}),(0,$.jsx)(`div`,{className:`min-h-0 flex-1 overflow-hidden`,role:r?void 0:`tabpanel`,children:Z===`file`&&o!==null?o.kind===`diff`?(0,$.jsx)(Hu,{change:o.change}):(0,$.jsx)(Te,{client:h??k,previewKind:o.kind,projectId:V??H,reference:o.reference,...q===void 0?{}:{rootPath:q}}):Z===`project`?(0,$.jsx)(`div`,{className:`flex h-full min-h-0 flex-col`,children:(0,$.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col`,children:[f===null?p&&c===void 0?(0,$.jsx)(`p`,{className:`mb-2 px-4 text-caption text-muted-foreground`,children:s.t(`inspector.gitLoading`,{ns:`conversation`})}):null:(0,$.jsxs)(`div`,{className:`mx-2.5 mb-2 flex items-center gap-2 rounded-control bg-control px-2 py-2`,children:[(0,$.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,$.jsx)(`p`,{className:`text-label text-diff-removed`,children:s.t(`inspector.gitChangesRetrying`,{ns:`conversation`})})}),(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":s.t(`inspector.refreshGit`,{ns:`conversation`}),disabled:m,onClick:P,size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(me,{"aria-hidden":`true`,className:`size-3.5 ${m?`animate-spin`:``}`})})}),(0,$.jsx)(A,{children:s.t(`inspector.refreshGit`,{ns:`conversation`})})]})]}),(0,$.jsx)(`div`,{className:`min-h-0 flex-1 px-2.5 pb-2.5`,children:(0,$.jsx)(qf,{client:h??k,expandedPaths:i,fileChangesByPath:le,onExpandedPathsChange:x,onOpenFileDiff:w,onOpenProjectFile:D,onOpenProjectPath:E,onReferenceProjectPath:j,onRefreshProject:F,projectId:V??H,projectName:ue,projectOpenApps:U,projectOpenPending:W,projectPath:G,projectRootId:K,projectRefreshing:J},`${V??H}:${G}`)})]})}):Z===`changes`?(0,$.jsx)(Q.Suspense,{fallback:null,children:(0,$.jsx)(Zf,{client:h,detailsError:u,detailsPending:d,detailsStatus:l,gitStatus:c,gitStatusError:f,onOpenFileDiff:w,projectId:V,rootPath:G})}):Z===`history`&&V!==void 0?(0,$.jsx)(Q.Suspense,{fallback:null,children:(0,$.jsx)(Xf,{...h===void 0?{}:{client:h},projectId:V,rootPath:G})}):de})]})}function $f(e,t){return`${e}\u0000${t}`}function ep(e,t,n){let r=new Map,i=new Map(t.map(e=>[$f(e.projectId,e.id),e.title]));for(let t of e){let e=t.roots[0]?.path;e!==void 0&&r.set(t.id,e)}let a=[],o=!1,s=!1,c=!1,l=!1;for(let e of n.values()){let t=e.pendingApprovalRequestIds.size>0||e.attention===`approval`,n=e.attention===`completed`;if(l||=t,o||=e.attention===`failed`,c||=e.isRunning,s||=n,!e.isRunning&&!t&&!n)continue;let u=r.get(e.projectId);u===void 0&&e.projectId!==`temporary`||a.push({projectId:e.projectId,...u===void 0?{}:{rootPath:u},status:t?`waiting`:n?`completed`:`running`,taskId:e.taskId,taskName:i.get($f(e.projectId,e.taskId))??e.taskId})}return{animationName:l?`waiting`:o?`failed`:c?`running`:s?`review`:`idle`,tasks:a}}var tp=`codexly.workbench-pet-position`,np={version:1,xRatio:1,yRatio:1};function rp(e){return typeof e==`number`&&Number.isFinite(e)&&e>=0&&e<=1}function ip(e){try{let t=JSON.parse(e.getItem(`codexly.workbench-pet-position`)??`null`);return t?.version===1&&rp(t.xRatio)&&rp(t.yRatio)?{version:1,xRatio:t.xRatio,yRatio:t.yRatio}:np}catch{return np}}function ap(e,t){try{e.setItem(tp,JSON.stringify(t))}catch{}}function op(e){return{x:Math.max(0,e.width-e.petWidth),y:Math.max(0,e.height-e.petHeight)}}function sp(e,t){let n=op(t);return{x:Math.min(n.x,Math.max(0,e.x)),y:Math.min(n.y,Math.max(0,e.y))}}function cp(e,t){let n=op(t);return{x:n.x*e.xRatio,y:n.y*e.yRatio}}function lp(e,t){let n=op(t),r=sp(e,t);return{version:1,xRatio:n.x===0?1:r.x/n.x,yRatio:n.y===0?1:r.y/n.y}}function up(e,t){return e.status===t.status?0:e.status===`completed`?-1:+(t.status===`completed`)}function dp({activity:e,localAccess:t,onTaskSelect:n}){let{t:r}=a(`workbench`),i=(0,$.jsxs)(`button`,{"aria-label":r(`pet.openTask`,{name:e.taskName,status:r(`pet.status.${e.status}`)}),className:`workbench-pet-bubble-button flex h-full w-full min-w-0 appearance-none items-center gap-2 rounded-control border border-separator-strong bg-raised px-2.5 text-left text-body-small text-foreground shadow-control`,onClick:()=>{n(e.projectId,e.taskId)},type:`button`,children:[e.status===`waiting`?(0,$.jsx)(on,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-warning`}):e.status===`completed`?(0,$.jsx)(_e,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-task-completed`}):(0,$.jsx)(K,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-brand motion-safe:animate-spin`}),(0,$.jsx)(`span`,{className:`min-w-0 truncate`,children:e.taskName})]});return t&&e.rootPath!==void 0?(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:i}),(0,$.jsx)(A,{children:e.rootPath})]}):i}function fp({localAccess:e,onTaskSelect:t,placement:n,tasks:r}){let{t:i}=a(`workbench`);if(r.length===0)return null;let o=r.filter(e=>e.status===`waiting`).length,s=r.toSorted(up);return(0,$.jsxs)(`div`,{className:`workbench-pet-bubbles ${n===`above`?`bottom-full pb-2`:`top-full pt-2`}`,"data-placement":n,onPointerDown:e=>{e.stopPropagation()},children:[(0,$.jsx)(`span`,{"aria-live":`polite`,className:`sr-only`,children:i(`pet.activitySummary`,{count:r.length,waiting:o})}),(0,$.jsx)(`ol`,{"aria-label":i(`pet.activeTasks`),className:`workbench-pet-bubble-list max-h-[40dvh] overflow-y-auto`,children:s.map((n,r)=>(0,$.jsx)(`li`,{className:`workbench-pet-bubble-item`,style:{zIndex:s.length-r},children:(0,$.jsx)(dp,{activity:n,localAccess:e,onTaskSelect:t})},`${n.projectId}:${n.taskId}`))})]})}var pp=4;function mp(e,t){let n=e.animations[t];if(n===void 0)return 0;let r=n.loopStart??n.frames.length;return n.frames.slice(0,r).reduce((e,t)=>e+t.durationMs,0)}function hp(e,t){e.style.transform=`translate3d(${String(t.x)}px, ${String(t.y)}px, 0)`}function gp(e,t){return e.y<Math.min(160,t.height*.4)}function _p({activity:e,localAccess:t,onTaskSelect:n,pet:r}){let{t:i}=a(`workbench`),o=(0,Q.useRef)(null),s=(0,Q.useRef)(null),c=(0,Q.useRef)(null),l=(0,Q.useRef)(null),u=(0,Q.useRef)(null),d=(0,Q.useRef)(null),f=(0,Q.useRef)(null),p=(0,Q.useRef)({x:0,y:0}),m=(0,Q.useRef)(np),h=(0,Q.useRef)(null),g=(0,Q.useRef)(e.animationName),[_,v]=(0,Q.useState)(e.animationName),[y,b]=(0,Q.useState)(!1),[x,S]=(0,Q.useState)(!1);(0,Q.useEffect)(()=>{g.current=e.animationName,u.current===null&&d.current===null&&v(e.animationName)},[e.animationName]),(0,Q.useEffect)(()=>{let e=o.current,t=c.current;if(e===null||t===null)return;m.current=ip(window.localStorage);let n=()=>{let n={height:e.clientHeight,petHeight:t.offsetHeight,petWidth:t.offsetWidth,width:e.clientWidth};l.current=n,p.current=cp(m.current,n),hp(t,p.current),b(gp(p.current,n)),S(!0)};n();let r=new ResizeObserver(n);return r.observe(e),r.observe(t),()=>{r.disconnect()}},[r.assetId]),(0,Q.useEffect)(()=>()=>{h.current!==null&&cancelAnimationFrame(h.current),d.current!==null&&clearTimeout(d.current);let e=c.current,t=f.current,n=l.current;if(e!==null&&t!==null&&(p.current=t,hp(e,t)),n!==null){let e=lp(p.current,n);ap(window.localStorage,e)}},[]);let C=()=>{h.current=null;let e=c.current,t=f.current;e===null||t===null||(f.current=null,p.current=t,hp(e,t))},w=e=>{f.current=e,h.current??=requestAnimationFrame(C)},T=()=>{let e=l.current;e!==null&&(m.current=lp(p.current,e),ap(window.localStorage,m.current))},E=e=>{let t=s.current;if(u.current?.pointerId!==e||t===null)return;u.current=null,t.removeAttribute(`data-dragging`),h.current!==null&&cancelAnimationFrame(h.current),C(),T();let n=l.current;n!==null&&b(gp(p.current,n)),v(`jumping`),d.current!==null&&clearTimeout(d.current),d.current=setTimeout(()=>{d.current=null,v(g.current)},Math.max(1,mp(r,`jumping`)))};return(0,$.jsx)(`div`,{className:`workbench-pet-layer`,children:(0,$.jsx)(`div`,{className:`workbench-pet-boundary`,ref:o,children:(0,$.jsxs)(`div`,{className:`workbench-pet-positioner`,"data-animation":_,ref:c,style:{opacity:+!!x},children:[(0,$.jsx)(fp,{localAccess:t,onTaskSelect:n,placement:y?`below`:`above`,tasks:e.tasks}),(0,$.jsx)(`button`,{"aria-label":i(`pet.move`,{name:r.displayName}),className:`workbench-pet-target`,onKeyDown:e=>{let t=l.current,n=c.current;if(!(t===null||n===null)){if(e.key===`Home`)e.preventDefault(),m.current=np,p.current=cp(np,t);else if([`ArrowDown`,`ArrowLeft`,`ArrowRight`,`ArrowUp`].includes(e.key)){e.preventDefault();let n=e.shiftKey?24:8;p.current=sp({x:p.current.x+(e.key===`ArrowRight`?n:e.key===`ArrowLeft`?-n:0),y:p.current.y+(e.key===`ArrowDown`?n:e.key===`ArrowUp`?-n:0)},t)}else return;hp(n,p.current),T(),b(gp(p.current,t))}},onLostPointerCapture:e=>{E(e.pointerId)},onPointerCancel:e=>{E(e.pointerId)},onPointerDown:e=>{let t=c.current,n=o.current;if(t===null||n===null)return;let r={height:n.clientHeight,petHeight:t.offsetHeight,petWidth:t.offsetWidth,width:n.clientWidth};l.current=r,u.current={bounds:r,directionChosen:!1,origin:p.current,pointerId:e.pointerId,startX:e.clientX,startY:e.clientY},e.currentTarget.setPointerCapture(e.pointerId),e.currentTarget.setAttribute(`data-dragging`,``)},onPointerMove:e=>{let t=u.current;if(t?.pointerId!==e.pointerId)return;let n=e.clientX-t.startX,r=e.clientY-t.startY;w(sp({x:t.origin.x+n,y:t.origin.y+r},t.bounds)),!t.directionChosen&&Math.abs(n)>=pp&&(t.directionChosen=!0,v(n<0?`running-left`:`running-right`))},onPointerUp:e=>{E(e.pointerId)},ref:s,type:`button`,children:(0,$.jsx)(ae,{animationName:_,pet:r})})]})})})}function vp({petId:e}){let t=mn(),{projects:n,tasks:r}=jn(),{taskActivity:i}=Tn(),a=$t(),o=G(re()),s=(0,Q.useMemo)(()=>ep(n,r,i),[n,i,r]),c=o.data?.data.find(t=>t.id===e&&t.availability===`ready`),l=(0,Q.useCallback)((e,t)=>{a({params:{projectId:e,taskId:t},to:`/p/$projectId/t/$taskId`})},[a]);return c===void 0?null:(0,$.jsx)(_p,{activity:s,localAccess:t.status?.mode===`local`,onTaskSelect:l,pet:c})}function yp({settings:e}){return e?.enabled===!0?(0,$.jsx)(vp,{petId:e.selectedPetId}):null}function bp({context:e,projectId:t,taskId:n,temporary:r}){let i=(0,Q.useRef)(null),{appInfoQuery:a,backgroundTerminals:o,beginNewChatSubmission:s,capabilities:c,client:l,closeInspector:u,closeSidebar:d,draftSettings:f,error:p,fastModeAvailable:m,fastModeDefault:h,expandedFileTreePaths:_,gitStatusQuery:v,globalSettings:y,globalSettingsQuery:b,handleNewChatSubmissionStateChange:x,handleNewTaskProjectChange:S,handleTaskCreated:C,handleTaskStarted:w,inspectorOpen:T,inspectorMaximumWidth:E,inspectorTab:D,inspectorTask:k,inspectorWidth:j,mcpServersQuery:ee,mcpServersReloadMutation:N,models:P,modelsQuery:F,newChatSubmissionStartedAt:I,openFileDiff:L,openProjectFileDiff:R,openFileReview:z,openMessageFileReference:B,openProjectFile:V,openProjectFolder:H,pendingTaskSelection:U,projectDefaultsQuery:W,projectFolderOpenDisabled:G,projectName:K,projectRoots:q,projectOpenCapabilitiesQuery:J,projectPath:te,projectPathOpenLockRef:ne,projectPathOpenMutation:Y,taskAttachmentOpenMutation:re,projectTaskState:ie,projects:ae,refreshProjectGitStatus:X,requestNotificationPermission:Z,retry:oe,runtime:se,selectedRootPath:ce,selectedRootId:le,selectedInspectorFile:ue,setFileTreeExpansion:de,setGlobalSettingsSection:fe,setInspectorOpen:pe,setInspectorTab:me,setInspectorWidth:he,setInspectorFileSelection:ge,setSidebarOpen:_e,setSidebarWidth:ve,setSelectedRootId:ye,setSubagentDialogSelection:be,setTaskRenameOpen:xe,sidebarConnectionState:Se,sidebarOpen:Ce,sidebarWidth:we,skillsQuery:Te,startingSnapshot:Ee,subagents:De,taskLaunchState:Oe,title:ke,updateDraftSettings:Ae,updateProjectTaskDefaults:je,workbenchShellRef:Me,t:Ne}=e;return(0,$.jsxs)(`div`,{className:`workbench-shell h-full min-h-0 overflow-hidden bg-window`,"data-inspector-open":T,"data-sidebar-open":Ce,ref:Me,style:{"--inspector-open-width":`${String(j)}px`,"--sidebar-open-width":`${String(we)}px`},children:[(0,$.jsx)(An,{...a.data===void 0?{}:{appInfo:a.data},connectionState:Se,onClose:d,onOpenSettings:e=>{fe(e)},projectId:t,...n===void 0&&U?.projectId===t?{taskId:U.taskId}:n===void 0?{}:{taskId:n}}),Ce?(0,$.jsx)(g,{variant:`ghost`,"aria-label":Ne(`shell.closeSidebar`),className:`workbench-sidebar-scrim`,onClick:d,type:`button`}):null,Ce?(0,$.jsx)(Au,{direction:1,label:Ne(`shell.resizeSidebar`),maximumWidth:Ti.maximum,minimumWidth:Ti.minimum,onResize:e=>{Me.current?.style.setProperty(`--sidebar-open-width`,`${String(e)}px`)},onResizeEnd:e=>{Me.current?.removeAttribute(`data-resizing-panel`),ve(e)},onResizeStart:()=>{Me.current?.setAttribute(`data-resizing-panel`,`sidebar`)},panel:`sidebar`,width:we}):null,(0,$.jsxs)(`main`,{"aria-label":Ne(`shell.timeline`),className:`flex min-h-0 min-w-0 flex-col bg-content`,children:[(0,$.jsxs)(`header`,{className:`flex h-workbench-header shrink-0 items-center justify-between gap-3 bg-content px-2.5 shadow-toolbar sm:px-3`,children:[(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":Ne(Ce?`shell.collapseSidebar`:`shell.expandSidebar`),id:`workbench-sidebar-toggle`,onClick:()=>{_e(e=>!e)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(cr,{className:`size-3.5`,"aria-hidden":`true`})})}),(0,$.jsx)(A,{children:Ne(Ce?`shell.collapseSidebar`:`shell.expandSidebar`)})]},Ce?`sidebar-open`:`sidebar-closed`),(0,$.jsx)(`h1`,{"aria-label":ke,className:`min-w-0 text-body-small font-semibold text-foreground`,children:n===void 0?(0,$.jsx)(`span`,{className:`block truncate`,children:ke}):(0,$.jsxs)(g,{variant:`ghost`,"aria-label":Ne(`shell.renameTask`,{title:ke}),className:`group flex max-w-full items-center gap-1 rounded-control px-1 py-0.5 text-left hover:bg-control-hover focus-visible:shadow-focus`,id:`workbench-task-title-rename`,onClick:()=>{xe(!0)},type:`button`,children:[(0,$.jsx)(`span`,{className:`truncate`,children:ke}),(0,$.jsx)(hn,{"aria-hidden":`true`,className:`size-3 shrink-0 text-muted-foreground transition-colors group-hover:text-foreground`})]})})]}),(0,$.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1`,children:[(0,$.jsx)(si,{apps:J.data?.apps??[],className:`hidden min-workbench:flex`,...y===void 0?{}:{defaultOpenAppId:y.defaultOpenAppId},hidden:r,isDetecting:J.isPending,isPending:Y.isPending,onSelect:e=>{Y.reset(),ne.current.run(()=>Y.mutateAsync({appId:e,path:void 0})).catch(()=>void 0)}}),(0,$.jsxs)(M,{children:[(0,$.jsx)(O,{asChild:!0,children:(0,$.jsx)(g,{"aria-label":Ne(T?`shell.collapseInspector`:`shell.expandInspector`),id:`workbench-inspector-toggle`,onClick:()=>{pe(e=>!e)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,$.jsx)(lr,{className:`size-3.5`,"aria-hidden":`true`})})}),(0,$.jsx)(A,{children:Ne(T?`shell.collapseInspector`:`shell.expandInspector`)})]},T?`inspector-open`:`inspector-closed`)]})]}),p!==null||(ie?.error??null)!==null||F.error!==null||Te.error!==null||!r&&W.error!==null||n===void 0&&b.error!==null?(0,$.jsx)(ft,{onRetry:()=>void oe()}):n===void 0?(0,$.jsxs)($.Fragment,{children:[r?(0,$.jsx)(fc,{projectId:t,scopeName:Ne(`shell.temporaryTask`),temporary:!0,...I===void 0?{}:{submissionStartedAt:I}}):(0,$.jsx)(fc,{onProjectChange:S,projectId:t,projects:ae,...I===void 0?{}:{submissionStartedAt:I}}),(0,$.jsx)(Du,{capabilities:c,client:l,composerRef:i,followUpBehavior:y?.followUpBehavior??`queue`,fastModeAvailable:m,fastModeDefault:h,models:P,modelsError:null,modelsPending:F.isPending||!r&&W.isPending||b.isPending,onSettingsChange:Ae,onFastModeChange:(e,t)=>je(t,e),onOpenProjectPath:H,onProjectRootChange:ye,onRequestNotificationPermission:Z,onDirectSubmission:s,onSubmissionStateChange:x,onTaskCreated:C,onTaskStarted:w,projectId:t,projectPath:te,projectPathOpenDisabled:G,projectRoots:q,projectToolsEnabled:!r,selectedProjectRootId:le??``,...v.data===void 0?{}:{gitStatus:v.data},settings:f,skills:Te.data?.data??[]})]}):(0,$.jsx)(Bu,{capabilities:c,client:l,composerRef:i,fallbackSettings:f,followUpBehavior:y?.followUpBehavior??`queue`,fastModeAvailable:m,fastModeDefault:h,models:P,modelsError:F.error,modelsPending:F.isPending,onRequestNotificationPermission:Z,onProjectTaskDefaultsChange:je,onOpenProjectPath:H,onProjectRootChange:ye,onTaskStarted:w,projectId:t,projectPath:te,projectPathOpenDisabled:G,projectRoots:q,projectToolsEnabled:!r,selectedProjectRootId:le??``,...v.data===void 0?{}:{gitStatus:v.data},runtime:se,skills:Te.data?.data??[],startingSnapshot:Ee,startingPrompt:Oe,taskId:n,onOpenFileDiff:L,onOpenSourceFile:B,onReviewFileChanges:z})]}),T?(0,$.jsx)(g,{variant:`ghost`,"aria-label":Ne(`shell.closeInspector`),className:`workbench-inspector-scrim`,onClick:u,type:`button`}):null,T?(0,$.jsx)(Au,{direction:-1,label:Ne(`shell.resizeInspector`),maximumWidth:E,minimumWidth:Ei.minimum,onResize:e=>{Me.current?.style.setProperty(`--inspector-open-width`,`${String(e)}px`)},onResizeEnd:e=>{Me.current?.removeAttribute(`data-resizing-panel`),he(e)},onResizeStart:()=>{Me.current?.setAttribute(`data-resizing-panel`,`inspector`)},panel:`inspector`,width:j}):null,T?(0,$.jsx)(Qf,{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:l,mcpServers:ee.data?.data??[],mcpServersRetryAvailable:n!==void 0,mcpServersRefreshing:ee.isFetching&&!ee.isPending,mcpServersRetrying:N.isPending,onClose:u,onCloseFile:()=>{ge(null)},fileSelection:ue,onFileTreeExpandedChange:e=>{de({paths:new Set(e),scope:`${t}:${ce??`temporary`}`})},onClearGoal:()=>n===void 0?Promise.resolve():l.clearTaskGoal(t,n).then(()=>void 0),onGoalStatusChange:e=>n===void 0?Promise.resolve():l.updateTaskGoal(t,n,{status:e}).then(()=>void 0),onReloadMcpServers:()=>{N.mutate()},onOpenFileDiff:R,onOpenProjectPath:(e,t)=>{Y.reset(),ne.current.run(()=>Y.mutateAsync({appId:e,path:t})).catch(()=>void 0)},onOpenProjectFile:V,onOpenTaskAttachment:e=>{n!==void 0&&re.mutate({attachmentId:e,taskId:n})},onReferenceProjectPath:e=>{i.current?.referenceProjectPath(e)},onRefreshGitStatus:()=>{ce!==void 0&&X(t,ce)},onRefreshProject:()=>ce===void 0?Promise.resolve():X(t,ce),onCommitChanges:()=>{me(`changes`),pe(!0)},onTerminateBackgroundTerminal:o.terminateTerminal,onTabChange:me,onOpenSubagent:e=>{n!==void 0&&be({parentTaskId:n,projectId:t,selection:e})},projectName:K,projectId:t,projectOpenApps:J.data?.apps??[],projectOpenPending:Y.isPending,projectPath:te,projectRootId:le??``,...ce===void 0?{}:{sourceRootPath:ce},skills:Te.data?.data??[],subagents:De,tab:D,terminatingTerminalId:o.terminatingTerminalId,...k===void 0?{}:{task:k},...n===void 0?{}:{taskId:n},...v.data===void 0?{}:{gitStatus:v.data}},`${t}:${n??`draft`}`):null,(0,$.jsx)(yp,{settings:y?.pet}),(0,$.jsx)(zu,{context:e,projectId:t,projectToolsEnabled:!r,...n===void 0?{}:{taskId:n}})]})}function xp({projectId:e,taskId:t,temporary:n=!1}){let r=t===void 0?{projectId:e}:{projectId:e,taskId:t};return(0,$.jsx)(bp,{context:Li(Pi({...r,temporary:n}),{...r,temporary:n}),...r,temporary:n})}export{xp as WorkbenchShell};
|