ryco-cli 0.1.12 → 0.1.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (65) hide show
  1. package/dist/bin.cjs +1 -1
  2. package/dist/bin.mjs +1 -1
  3. package/dist/client/assets/{AccountSettings-C3v2klAG.js → AccountSettings-Be5_48k0.js} +1 -1
  4. package/dist/client/assets/{AiFocusSettings-BquKjnWf.js → AiFocusSettings-DIpQXLW2.js} +1 -1
  5. package/dist/client/assets/{BranchToolbar.logic-CmvD76Cw.js → BranchToolbar.logic-D7slG_zJ.js} +1 -1
  6. package/dist/client/assets/{ChatRightPanel-DVxRdZWT.js → ChatRightPanel-BIS1DPGa.js} +3 -3
  7. package/dist/client/assets/{ChatThreadRouteView-DlgAAOCp.js → ChatThreadRouteView-CocRstME.js} +1 -1
  8. package/dist/client/assets/{CommandPaletteDialog-BnJURcy7.js → CommandPaletteDialog-C5xAo65V.js} +1 -1
  9. package/dist/client/assets/{ConnectionsSettings-Ccn8q4fG.js → ConnectionsSettings-CXabxSaH.js} +1 -1
  10. package/dist/client/assets/{DiagnosticsSettings-QXpjXOrH.js → DiagnosticsSettings-CZ3vY43G.js} +1 -1
  11. package/dist/client/assets/{DraftChatThreadRouteView-DFMY6O91.js → DraftChatThreadRouteView-D8Bt3Qnq.js} +1 -1
  12. package/dist/client/assets/{HostedConnectionControls-BC4kVWTa.js → HostedConnectionControls-DxAXv0Hd.js} +1 -1
  13. package/dist/client/assets/{HostedHubRoot-pBGVub10.js → HostedHubRoot-Cc8GYcK6.js} +1 -1
  14. package/dist/client/assets/{HostedNativeAuthorizationRoute-Df0oSrLR.js → HostedNativeAuthorizationRoute-CTQe7Vjt.js} +1 -1
  15. package/dist/client/assets/{HostedRelayTrustNotice-ffS_O2AX.js → HostedRelayTrustNotice-BldMySVi.js} +1 -1
  16. package/dist/client/assets/{IntegrationsSettingsPanel-BHyy-VM0.js → IntegrationsSettingsPanel-D6f3KoqM.js} +1 -1
  17. package/dist/client/assets/{KeybindingsSettings-BfkONqmZ.js → KeybindingsSettings-D2bNQPI-.js} +1 -1
  18. package/dist/client/assets/{McpServersSettings-UthT1T80.js → McpServersSettings-B7YqVvV4.js} +1 -1
  19. package/dist/client/assets/{NewWorktreeDialog-DTZnArOC.js → NewWorktreeDialog-CKr2ioue.js} +1 -1
  20. package/dist/client/assets/{NoActiveThreadState-jcEAWu7N.js → NoActiveThreadState-BD-eNmfn.js} +1 -1
  21. package/dist/client/assets/{NodeSecuritySettings-DPqjRphc.js → NodeSecuritySettings-FWM_SeDi.js} +1 -1
  22. package/dist/client/assets/{OpinionatedPluginsSettings-BSy3F4v6.js → OpinionatedPluginsSettings-BtZQF4Ze.js} +1 -1
  23. package/dist/client/assets/{PhoneGetAppInterstitial-B2mrJtgM.js → PhoneGetAppInterstitial-CooQgpSw.js} +1 -1
  24. package/dist/client/assets/{PhoneHome-C-ttaKuE.js → PhoneHome-BtPE7bQn.js} +1 -1
  25. package/dist/client/assets/{PhoneSettingsSurface-CJddundi.js → PhoneSettingsSurface-tcFCccEL.js} +1 -1
  26. package/dist/client/assets/{ProjectFavicon-BhQnkxbx.js → ProjectFavicon-qZGdjYCM.js} +1 -1
  27. package/dist/client/assets/{ProviderModelPicker-COg6CGM4.js → ProviderModelPicker-D0w23uWo.js} +1 -1
  28. package/dist/client/assets/{ProvidersSettingsPanel-C3aPyCrN.js → ProvidersSettingsPanel-B3aBKY--.js} +1 -1
  29. package/dist/client/assets/{RootAppShell-3T2sBtpP.js → RootAppShell-C-0ChFVJ.js} +2 -2
  30. package/dist/client/assets/{SettingsDialog-krsStFrf.js → SettingsDialog-Bbuoh793.js} +1 -1
  31. package/dist/client/assets/{SettingsPanels-D8Xy3pPC.js → SettingsPanels-Dr4f2y9l.js} +1 -1
  32. package/dist/client/assets/{SourceControlSettings-KIx9EfEZ.js → SourceControlSettings-CkiYR4lR.js} +1 -1
  33. package/dist/client/assets/{StatisticsPage-C38pI2_b.js → StatisticsPage-Bjouapmf.js} +1 -1
  34. package/dist/client/assets/{StatisticsPanel-6sINT28-.js → StatisticsPanel-D_khPph6.js} +1 -1
  35. package/dist/client/assets/{ThreadStatusIndicators-CL0KGLlj.js → ThreadStatusIndicators-ZImeLExQ.js} +0 -0
  36. package/dist/client/assets/{ThreadTerminalDrawer-C4NJu8Qs.js → ThreadTerminalDrawer-DDHEuRGB.js} +1 -1
  37. package/dist/client/assets/{ThreadWorkspacePanel-D9qlHXCA.js → ThreadWorkspacePanel-QF3KwbGm.js} +1 -1
  38. package/dist/client/assets/{WorkItemsTab-BDAeQe4D.js → WorkItemsTab-AOVwVvb7.js} +1 -1
  39. package/dist/client/assets/{branding-DeKsIp6g.js → branding-BDfN6Spd.js} +1 -1
  40. package/dist/client/assets/{capabilities-BkVqeGLQ.js → capabilities-3zgirmmI.js} +1 -1
  41. package/dist/client/assets/{desktopUpdateAtoms-B9iJXSdW.js → desktopUpdateAtoms-CyfPW2jg.js} +1 -1
  42. package/dist/client/assets/{desktopWorkspace-B-cSBe8H.js → desktopWorkspace-DHUZEpfy.js} +1 -1
  43. package/dist/client/assets/{device-DfIh5pQV.js → device-B_qvyvtW.js} +1 -1
  44. package/dist/client/assets/{editorPreferences-0DWMgcci.js → editorPreferences-DHIJntKF.js} +1 -1
  45. package/dist/client/assets/{index-Bntnmu6O.js → index-CQmEMMQH.js} +1 -1
  46. package/dist/client/assets/{main-BjVnVob0.js → main-BKS5Nf2_.js} +2 -2
  47. package/dist/client/assets/primary-BzLEg2w1.js +2 -0
  48. package/dist/client/assets/{projectPaths-SSsIvt0g.js → projectPaths-BAd6NFcE.js} +1 -1
  49. package/dist/client/assets/{providerIconUtils-CzSa_16f.js → providerIconUtils-X0Z3EK-Q.js} +1 -1
  50. package/dist/client/assets/{runtime-DfGHeCnR.js → runtime-CXut_g4p.js} +1 -1
  51. package/dist/client/assets/{session-logic-wxhvMgEN.js → session-logic-GZix7S2I.js} +1 -1
  52. package/dist/client/assets/{sidebarProjectFolders-CGVDJ0ZT.js → sidebarProjectFolders-cnmz3B_-.js} +1 -1
  53. package/dist/client/assets/storeSelectors-DYekgeHu.js +1 -0
  54. package/dist/client/assets/{threadPriorityRefreshRuntime-tRDgvBzr.js → threadPriorityRefreshRuntime-Ct5pnIbX.js} +1 -1
  55. package/dist/client/assets/types-DYekgeHu.js +1 -0
  56. package/dist/client/assets/{useAtlassian-DC0XOw4u.js → useAtlassian-9-hy2f8z.js} +0 -0
  57. package/dist/client/assets/{useHandleNewThread-Bvz-DKgn.js → useHandleNewThread-DX2FtXcP.js} +1 -1
  58. package/dist/client/assets/{usePhoneThreadActions-CAgIq9aZ.js → usePhoneThreadActions-BEa3VzGG.js} +1 -1
  59. package/dist/client/assets/{useStatistics-CiLROMJP.js → useStatistics-CtunoTE-.js} +1 -1
  60. package/dist/client/assets/{useThreadActions-Vew3ScxG.js → useThreadActions-fN-Al13y.js} +1 -1
  61. package/dist/client/index.html +1 -1
  62. package/package.json +1 -1
  63. package/dist/client/assets/primary-OskAInOO.js +0 -2
  64. package/dist/client/assets/storeSelectors-Bpr2pdhU.js +0 -1
  65. package/dist/client/assets/types-Bpr2pdhU.js +0 -1
@@ -1,5 +1,5 @@
1
1
  const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/ThreadTerminalDrawer-BrP-ENHg.css"])))=>i.map(i=>d[i]);
2
- import{i as e,t}from"./react-SIfiwpqq.js";import{t as n}from"./index-Bntnmu6O.js";import{t as r}from"./compiler-runtime-qmuS0Svy.js";import{_ as i,c as a,g as o,h as s,l as c,n as l,s as u,t as d,y as f}from"./env-B4arEvJg.js";import{Ai as p,Ca as m,Fr as h,G as g,J as _,Kc as v,Pr as y,Sa as b,Ti as x,V as S,Y as C,Yc as w,at as T,c as E,di as D,f as O,fi as k,it as A,j,k as M,l as N,ot as P,p as F,t as I,u as L,wa as R}from"./src-Vf4LVnMX.js";import{$ as z,Bn as ee,Et as te,Fn as ne,Ft as B,G as re,In as ie,It as V,J as ae,Jt as oe,K as H,Kt as se,Lt as ce,Ot as le,Pn as ue,Q as de,Rn as fe,Rt as U,Sn as pe,St as me,Un as he,Ut as ge,Vn as _e,Vt as ve,W as ye,X as be,Y as xe,Z as Se,Zn as Ce,at as we,b as Te,bn as Ee,bt as De,ct as Oe,d as ke,dt as Ae,et as je,f as Me,ft as Ne,g as Pe,gn as Fe,h as Ie,hn as Le,it as Re,lt as ze,mn as Be,nt as Ve,p as He,pt as Ue,q as We,rt as Ge,tt as Ke,u as qe,v as Je,vt as Ye,wt as Xe,xt as Ze,yn as Qe,yt as $e}from"./runtime-DfGHeCnR.js";import{Y as et,a as tt,n as nt}from"./primary-OskAInOO.js";import{t as rt}from"./useDebouncedValue-DHjoudTq.js";import{$ as it,A as at,At as ot,B as st,C as ct,Ct as lt,D as ut,Dt as dt,E as ft,F as pt,Ft as mt,H as ht,I as gt,It as _t,L as vt,M as yt,N as bt,Nt as xt,O as St,Ot as Ct,P as wt,Q as Tt,R as Et,S as Dt,St as Ot,T as kt,X as At,Y as jt,Z as Mt,_ as Nt,a as Pt,at as Ft,b as It,c as Lt,ct as Rt,d as zt,dt as Bt,et as Vt,f as Ht,ft as Ut,g as Wt,h as Gt,ht as Kt,i as qt,it as Jt,j as Yt,jt as Xt,k as Zt,kt as Qt,l as $t,lt as en,m as tn,mt as nn,ot as rn,p as an,q as on,s as sn,st as cn,tt as ln,u as un,ut as dn,v as fn,w as pn,wt as mn,x as hn,xt as gn,y as _n,yt as vn,z as yn}from"./composerDraftStore-CdJJZe42.js";import{Et as bn,Mn as xn,N as Sn,Rn as Cn,Sn as wn,Tt as Tn,Xn as En,in as Dn,j as On,on as kn}from"./usePopupViewport-BuhsNdVy.js";import{c as An,s as jn}from"./useSwipeDismiss-CbgDJvw1.js";import{C as Mn,F as Nn,c as Pn,l as Fn,s as In,u as Ln}from"./useHandleNewThread-Bvz-DKgn.js";import{_ as Rn,a as zn,c as Bn,d as Vn,g as Hn,h as Un,i as Wn,l as Gn,n as Kn,o as qn,r as Jn,s as Yn,u as Xn}from"./rightPanelRouteSearch-DB5gQGHK.js";import{t as Zn}from"./useNavigate-2tVq4iZ2.js";import{A as Qn,B as $n,F as er,G as tr,H as nr,I as rr,K as ir,O as ar,U as W,V as or,W as sr,Y as cr,c as lr,g as ur,h as dr,j as fr,m as pr,q as mr,r as hr,t as gr,u as _r,v as vr}from"./ThreadStatusIndicators-CL0KGLlj.js";import{n as yr,t as br}from"./visibilityPolling-BwzZdaSN.js";import{i as xr,r as Sr}from"./perfInstrumentation-BT27w4tn.js";import{t as Cr}from"./settingsDialogStore-ygYoScKe.js";import{i as wr}from"./uiStateStore-B6pjzSjj.js";import{i as Tr,n as Er,o as Dr}from"./desktopWorkspace-B-cSBe8H.js";import{a as Or,i as kr,l as Ar,n as jr,o as Mr,r as Nr,s as Pr,t as Fr}from"./BranchToolbar.logic-CmvD76Cw.js";import{d as Ir,f as Lr,l as Rr,o as zr,r as Br,s as Vr,t as Hr,u as Ur}from"./useRenderElement-DchFnsR8.js";import{n as Wr,t as Gr}from"./arrow-up-CTcWIlqV.js";import{t as Kr}from"./arrow-left-Dtj9PfsA.js";import{t as qr}from"./bot-DJp0cuhK.js";import{n as Jr,t as Yr}from"./loader-circle-CrtHFAvM.js";import{t as Xr}from"./chevron-down-B7C6FKzM.js";import{a as Zr,c as Qr,i as $r,o as ei,r as ti,s as ni}from"./tabSwitchInstrumentation-CLDM7g1_.js";import{t as ri}from"./chevron-right-BWYGybX9.js";import{n as ii}from"./useFloatingRootContext-D5EZmrCa.js";import{A as ai,C as oi,D as si,E as ci,I as li,M as ui,N as di,O as fi,P as pi,S as mi,T as hi,a as gi,b as _i,f as vi,i as yi,j as bi,k as xi,o as Si,p as Ci,s as wi,t as Ti,w as Ei}from"./WorkItemsTab-BDAeQe4D.js";import{t as Di}from"./circle-alert-BWvs6IOn.js";import{a as Oi,i as ki,o as Ai,r as ji}from"./toast-CcSCAm4B.js";import{t as Mi}from"./external-link-fbvzDWM7.js";import{n as Ni,t as Pi}from"./tokenModePresentation-lVM0-Wi3.js";import{t as Fi}from"./clock-nNA05brA.js";import{t as Ii}from"./copy-UQjKGt7t.js";import{a as Li,i as Ri,n as zi,o as Bi,r as Vi,t as Hi}from"./NewWorktreeDialog-DTZnArOC.js";import{t as Ui}from"./eye-CUSPj-gd.js";import{n as Wi,t as Gi}from"./layers-BYi0v17h.js";import{C as Ki}from"./lib-qiiNMGgU.js";import{t as qi}from"./folder-DtsQoI9_.js";import{t as Ji}from"./git-branch-BKr-Ij4u.js";import{t as Yi}from"./git-pull-request-DIYyPsg5.js";import{$t as Xi,C as Zi,D as Qi,E as $i,O as ea,Qt as ta,S as na,T as ra,_ as ia,a as aa,b as oa,c as sa,d as ca,en as la,f as ua,i as da,in as fa,k as pa,l as ma,n as ha,nn as ga,o as _a,rn as va,s as ya,t as ba,tn as xa,v as Sa,w as Ca,x as wa,y as Ta}from"./device-DfIh5pQV.js";import{n as Ea,r as Da,v as Oa}from"./HostedConnectionControls-BC4kVWTa.js";import{t as ka}from"./loader-zHASMrUy.js";import{t as Aa}from"./panel-right-BodNpkM9.js";import{n as ja,t as Ma}from"./play-DYDxlTKo.js";import{t as Na}from"./pencil-B69ERoVM.js";import{t as Pa}from"./plus-B2h-VEqh.js";import{t as Fa}from"./refresh-cw-DopCMrtR.js";import{t as Ia}from"./search-BGQsenCM.js";import{t as La}from"./shield-alert-DY9uVP5G.js";import{t as Ra}from"./shield-check-dQ-4cMKk.js";import{t as za}from"./sparkles-CAf3oJ5S.js";import{c as Ba,i as Va}from"./terminal-links-CZ3c9AbA.js";import{a as Ha,i as Ua,n as Wa,r as Ga,t as Ka}from"./ProviderModelPicker-COg6CGM4.js";import{t as qa}from"./terminal-C_CyIsDD.js";import{t as Ja}from"./trash-2-CM1zXPGb.js";import{t as Ya}from"./triangle-alert-RL_T3KLo.js";import{t as Xa}from"./undo-2-x37tfI3V.js";import{t as Za}from"./wrench-D0IetWa1.js";import{t as Qa}from"./x-C1Cemsov.js";import{t as $a}from"./shallow-DWZCFNun.js";import{a as eo,c as to,i as no,l as ro,n as io,o as ao,t as G}from"./utils-BofFIn5Y.js";import{_ as oo,a as so,c as co,d as lo,h as uo,i as fo,l as po,m as mo,o as ho,p as go,s as _o,t as vo,u as yo}from"./session-logic-wxhvMgEN.js";import"./storeSelectors-Bpr2pdhU.js";import{i as bo,n as xo,s as So}from"./timestampFormat-8uPXS812.js";import{_ as Co,g as wo,n as To,o as Eo,p as Do,r as Oo,s as ko,t as Ao,v as jo}from"./keybindings-CWJ7E9ZI.js";import{n as Mo,t as No}from"./useButton-D__1LqCF.js";import{i as Po,n as Fo,t as Io}from"./tooltip-C8sAONBj.js";import{t as Lo}from"./react-dom-x9LNwWQc.js";import{t as Ro}from"./useValueChanged-MQtIzPIU.js";import{n as zo}from"./clamp-CgH0Dl6R.js";import{i as Bo,n as Vo,r as Ho,s as Uo,u as Wo}from"./useLabelableId-DnQJ7amm.js";import{c as Go,d as Ko,p as qo,s as Jo,t as Yo,u as Xo}from"./command-CGNKG_Oe.js";import{a as Zo,c as Qo,d as $o,f as es,l as ts,o as ns,p as rs,s as is,u as as}from"./providerIconUtils-CzSa_16f.js";import{a as os,d as ss,f as cs,l as ls,n as us,o as ds,r as fs,s as ps,t as ms,u as hs}from"./radio-group-CBZFr4C8.js";import{n as gs,t as _s}from"./switch-BTGo9Yip.js";import{t as vs}from"./input-CHEwW3oH.js";import{t as ys}from"./scroll-area-Drsa8bNB.js";import{a as bs,c as xs,d as Ss,f as Cs,i as ws,r as Ts,u as Es}from"./Icons-CT3nd2MA.js";import{t as Ds}from"./ProjectFavicon-BhQnkxbx.js";import{t as K}from"./button-BAbJxRzt.js";import{t as Os}from"./useCopyToClipboard-BTpWxumf.js";import{t as ks}from"./toastHelpers-CSQRKo4F.js";import{n as As}from"./composerHandleContext-BrQ6d8r9.js";import{t as js}from"./capabilities-BkVqeGLQ.js";import{a as Ms,n as Ns,t as Ps}from"./motion-thOBhZyM.js";import{o as Fs,t as Is}from"./sheet-BO78gIKZ.js";import{t as Ls}from"./usePresentationTier-B_SCFvN7.js";import{m as Rs,p as zs,t as Bs}from"./sidebar-Dm6l2GA6.js";import"./types-Bpr2pdhU.js";import{i as Vs,n as Hs,r as Us,t as Ws}from"./alert-LqMhbdE9.js";import{a as Gs,c as Ks,i as qs,o as Js,r as Ys,s as Xs,t as Zs}from"./dialog-DQsYchqu.js";import{a as Qs,c as $s,d as ec,f as tc,i as nc,l as rc,o as ic,p as ac,s as oc,u as sc}from"./menu-Dvxh8sD5.js";import{t as cc}from"./spinner-ClF0jOcX.js";import{t as lc}from"./textarea-RFPODxWW.js";import{a as uc,i as dc,n as fc,o as pc,r as mc,s as hc,t as gc}from"./alert-dialog-DxoA6ky8.js";import{a as _c,i as vc,n as yc,o as bc,r as xc,s as Sc,t as Cc}from"./select-BYbVr-yg.js";import{n as wc,r as Tc,t as Ec}from"./popover-CuH9Yrj3.js";import{i as Dc,n as Oc,t as kc}from"./editorPreferences-0DWMgcci.js";import{t as Ac}from"./badge-CXw6fWrB.js";import{t as jc}from"./label-CVFHsLFO.js";import"./providerInstances-BJcfB_9E.js";import{t as Mc}from"./RycoLetterMark-Bk0kvGJ_.js";import{a as Nc,c as Pc,i as Fc,n as Ic,o as Lc,r as Rc,s as zc,t as Bc}from"./MobileSheet-CkeG6_SP.js";import{t as Vc}from"./GlassSurface-C3IIWMu9.js";import{t as Hc}from"./useLongPress-OGlhYKlH.js";import{t as Uc}from"./useTheme-DiC-5xCb.js";import{t as Wc}from"./toggle-I6h33Cu5.js";import{n as Gc,t as Kc}from"./NoActiveThreadState-jcEAWu7N.js";import"./providerModels-BJcfB_9E.js";import{n as qc,t as Jc}from"./pathEntry-BR9vr7Ug.js";import{n as Yc,r as Xc,t as Zc}from"./usePhoneThreadActions-CAgIq9aZ.js";import{i as Qc,n as $c,o as el,r as tl,s as nl,t as rl}from"./liquidGlass-CPsvmaF0.js";import{r as il}from"./SettingsPanels.editor-B2x4U4rW.js";import{t as al}from"./useAppearancePreference-BlLlxQl7.js";import{t as ol}from"./AnimatedHeight-BIsV_Z3J.js";import{n as sl,t as cl}from"./group-D9ER9giz.js";var q=e(t(),1),J=r(),Y=_t();function ll(e){if(typeof e!=`object`||!e||!(`file`in e))throw Error(`Expected a composer image attachment.`);return e}var ul={encode:async e=>{let t=ll(e);return{id:t.id,mime:t.file.type,size:t.file.size,bytes:new Uint8Array(await t.file.arrayBuffer())}},decode:async e=>{if(`uri`in e)return e.uri;let t=new Uint8Array(e.bytes.byteLength);return t.set(e.bytes),new File([t],e.id,{type:e.mime})}},dl=Lr(`arrow-left-right`,[[`path`,{d:`M8 3 4 7l4 4`,key:`9rb6wj`}],[`path`,{d:`M4 7h16`,key:`6tx8e3`}],[`path`,{d:`m16 21 4-4-4-4`,key:`siv7j2`}],[`path`,{d:`M20 17H4`,key:`h6l3hr`}]]),fl=Lr(`arrow-right`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`m12 5 7 7-7 7`,key:`xquz4c`}]]),pl=Lr(`bookmark`,[[`path`,{d:`M17 3a2 2 0 0 1 2 2v15a1 1 0 0 1-1.496.868l-4.512-2.578a2 2 0 0 0-1.984 0l-4.512 2.578A1 1 0 0 1 5 20V5a2 2 0 0 1 2-2z`,key:`oz39mx`}]]),ml=Lr(`brain`,[[`path`,{d:`M12 18V5`,key:`adv99a`}],[`path`,{d:`M15 13a4.17 4.17 0 0 1-3-4 4.17 4.17 0 0 1-3 4`,key:`1e3is1`}],[`path`,{d:`M17.598 6.5A3 3 0 1 0 12 5a3 3 0 1 0-5.598 1.5`,key:`1gqd8o`}],[`path`,{d:`M17.997 5.125a4 4 0 0 1 2.526 5.77`,key:`iwvgf7`}],[`path`,{d:`M18 18a4 4 0 0 0 2-7.464`,key:`efp6ie`}],[`path`,{d:`M19.967 17.483A4 4 0 1 1 12 18a4 4 0 1 1-7.967-.517`,key:`1gq6am`}],[`path`,{d:`M6 18a4 4 0 0 1-2-7.464`,key:`k1g0md`}],[`path`,{d:`M6.003 5.125a4 4 0 0 0-2.526 5.77`,key:`q97ue3`}]]),hl=Lr(`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`}]]),gl=Lr(`clipboard-list`,[[`rect`,{width:`8`,height:`4`,x:`8`,y:`2`,rx:`1`,ry:`1`,key:`tgr4d6`}],[`path`,{d:`M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2`,key:`116196`}],[`path`,{d:`M12 11h4`,key:`1jrz19`}],[`path`,{d:`M12 16h4`,key:`n85exb`}],[`path`,{d:`M8 11h.01`,key:`1dfujw`}],[`path`,{d:`M8 16h.01`,key:`18s6g9`}]]),_l=Lr(`cloud-upload`,[[`path`,{d:`M12 13v8`,key:`1l5pq0`}],[`path`,{d:`M4 14.899A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.5 8.242`,key:`1pljnt`}],[`path`,{d:`m8 17 4-4 4 4`,key:`1quai1`}]]),vl=Lr(`corner-down-left`,[[`path`,{d:`M20 4v7a4 4 0 0 1-4 4H4`,key:`6o5b7l`}],[`path`,{d:`m9 10-5 5 5 5`,key:`1kshq7`}]]),yl=Lr(`expand`,[[`path`,{d:`m15 15 6 6`,key:`1s409w`}],[`path`,{d:`m15 9 6-6`,key:`ko1vev`}],[`path`,{d:`M21 16v5h-5`,key:`1ck2sf`}],[`path`,{d:`M21 8V3h-5`,key:`1qoq8a`}],[`path`,{d:`M3 16v5h5`,key:`1t08am`}],[`path`,{d:`m3 21 6-6`,key:`wwnumi`}],[`path`,{d:`M3 8V3h5`,key:`1ln10m`}],[`path`,{d:`M9 9 3 3`,key:`v551iv`}]]),bl=Lr(`file-braces`,[[`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 12a1 1 0 0 0-1 1v1a1 1 0 0 1-1 1 1 1 0 0 1 1 1v1a1 1 0 0 0 1 1`,key:`1oajmo`}],[`path`,{d:`M14 18a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1 1 1 0 0 1-1-1v-1a1 1 0 0 0-1-1`,key:`mpwhp6`}]]),xl=Lr(`flask-conical`,[[`path`,{d:`M14 2v6a2 2 0 0 0 .245.96l5.51 10.08A2 2 0 0 1 18 22H6a2 2 0 0 1-1.755-2.96l5.51-10.08A2 2 0 0 0 10 8V2`,key:`18mbvz`}],[`path`,{d:`M6.453 15h11.094`,key:`3shlmq`}],[`path`,{d:`M8.5 2h7`,key:`csnxdl`}]]),Sl=Lr(`folder-git-2`,[[`path`,{d:`M18 19a5 5 0 0 1-5-5v8`,key:`sz5oeg`}],[`path`,{d:`M9 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v5`,key:`1w6njk`}],[`circle`,{cx:`13`,cy:`12`,r:`2`,key:`1j92g6`}],[`circle`,{cx:`20`,cy:`19`,r:`2`,key:`1obnsp`}]]),Cl=Lr(`git-branch-plus`,[[`path`,{d:`M6 3v12`,key:`qpgusn`}],[`path`,{d:`M18 9a3 3 0 1 0 0-6 3 3 0 0 0 0 6z`,key:`1d02ji`}],[`path`,{d:`M6 21a3 3 0 1 0 0-6 3 3 0 0 0 0 6z`,key:`chk6ph`}],[`path`,{d:`M15 6a9 9 0 0 0-9 9`,key:`or332x`}],[`path`,{d:`M18 15v6`,key:`9wciyi`}],[`path`,{d:`M21 18h-6`,key:`139f0c`}]]),wl=Lr(`hammer`,[[`path`,{d:`m15 12-9.373 9.373a1 1 0 0 1-3.001-3L12 9`,key:`1hayfq`}],[`path`,{d:`m18 15 4-4`,key:`16gjal`}],[`path`,{d:`m21.5 11.5-1.914-1.914A2 2 0 0 1 19 8.172v-.344a2 2 0 0 0-.586-1.414l-1.657-1.657A6 6 0 0 0 12.516 3H9l1.243 1.243A6 6 0 0 1 12 8.485V10l2 2h1.172a2 2 0 0 1 1.414.586L18.5 14.5`,key:`15ts47`}]]),Tl=Lr(`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`}]]),El=Lr(`lock-open`,[[`rect`,{width:`18`,height:`11`,x:`3`,y:`11`,rx:`2`,ry:`2`,key:`1w4ew1`}],[`path`,{d:`M7 11V7a5 5 0 0 1 9.9-1`,key:`1mm8w8`}]]),Dl=Lr(`message-circle-question-mark`,[[`path`,{d:`M2.992 16.342a2 2 0 0 1 .094 1.167l-1.065 3.29a1 1 0 0 0 1.236 1.168l3.413-.998a2 2 0 0 1 1.099.092 10 10 0 1 0-4.777-4.719`,key:`1sd12s`}],[`path`,{d:`M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3`,key:`1u773s`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]]),Ol=Lr(`monitor`,[[`rect`,{width:`20`,height:`14`,x:`2`,y:`3`,rx:`2`,key:`48i651`}],[`line`,{x1:`8`,x2:`16`,y1:`21`,y2:`21`,key:`1svkeh`}],[`line`,{x1:`12`,x2:`12`,y1:`17`,y2:`21`,key:`vw1qmm`}]]),kl=Lr(`paperclip`,[[`path`,{d:`m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551`,key:`1miecu`}]]),Al=Lr(`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`}]]),jl=Lr(`zap`,[[`path`,{d:`M15.914 4a1.5 1.5 0 00-2.474-1.561l-9 9A1.5 1.5 0 005.5 14h4.002a.5.5 0 01.471.666L8.086 20a1.5 1.5 0 002.475 1.56l9-9A1.5 1.5 0 0018.5 10h-3.997a.5.5 0 01-.472-.667z`,key:`1v7up4`}]]),Ml={message:0,"proposed-plan":1,work:2,"context-compaction":3,"context-handoff":4};function Nl(e,t){return e.entry.createdAt.localeCompare(t.entry.createdAt)||e.sourceRank-t.sourceRank||e.sourceIndex-t.sourceIndex||e.key.localeCompare(t.key)}function Pl(e,t){return e.source===t.source&&e.sourceRank===t.sourceRank}function Fl(e,t){let n=0,r=e.length;for(;n<r;){let i=n+r>>>1,a=e[i];a&&Nl(a,t)<=0?n=i+1:r=i}e.splice(n,0,t)}function Il(e){for(let t=1;t<e.length;t++){let n=e[t-1],r=e[t];if(n&&r&&Nl(n,r)>0)return!1}return!0}function Ll(e,t){let n=`${t.sourceKind}:${t.entry.id}`,r=e.get(n),i=r?.source===t.source&&r.entry.createdAt===t.entry.createdAt&&r.entry.kind===t.entry.kind?r.entry:t.entry;return{key:n,sourceKind:t.sourceKind,sourceRank:Ml[t.sourceKind],sourceIndex:t.sourceIndex,source:t.source,entry:i}}function Rl(e,t){return e.length===t.length&&e.every((e,n)=>e===t[n])?e:t}function zl(){let e=new Map,t=[],n=[],r=`full`;return{update:i=>{let a=new Set(i.messages.map(e=>e.id)),o=new Map,s=new Map,c=new Map,l=(e,t)=>{o.set(e.key,e),t&&s.set(e.key,e)};i.messages.forEach((t,n)=>l(Ll(e,{sourceKind:`message`,sourceIndex:n,source:t,entry:{id:t.id,kind:`message`,createdAt:t.createdAt,message:t}}),!0)),i.proposedPlans.forEach((t,n)=>l(Ll(e,{sourceKind:`proposed-plan`,sourceIndex:n,source:t,entry:{id:t.id,kind:`proposed-plan`,createdAt:t.createdAt,proposedPlan:t}}),!0)),i.workEntries.forEach((t,n)=>l(Ll(e,{sourceKind:`work`,sourceIndex:n,source:t,entry:{id:t.id,kind:`work`,createdAt:t.createdAt,entry:t}}),!0)),i.contextCompactionEntries.forEach((t,n)=>l(Ll(e,{sourceKind:`context-compaction`,sourceIndex:n,source:t,entry:{id:t.id,kind:`context-compaction`,createdAt:t.createdAt,marker:t}}),!0)),i.contextHandoffEntries.forEach((t,n)=>{let r=Ll(e,{sourceKind:`context-handoff`,sourceIndex:n,source:t,entry:{id:t.id,kind:`context-handoff`,createdAt:t.createdAt,marker:t}});if(l(r,!a.has(t.targetMessageId)),a.has(t.targetMessageId)){let e=c.get(t.targetMessageId);e?e.push(r):c.set(t.targetMessageId,[r])}});let u=new Map;for(let e of s.values()){let t=`${e.sourceKind}:${e.entry.createdAt}`;u.set(t,(u.get(t)??0)+1)}let d=new Set(t.map(e=>e.key)),f=[...s.values()].filter(t=>{if(!d.has(t.key))return!0;let n=e.get(t.key);return!n||!Pl(n,t)||n.sourceIndex!==t.sourceIndex&&(u.get(`${t.sourceKind}:${t.entry.createdAt}`)??0)>1}),p=t.reduce((e,t)=>e+ +!s.has(t.key),0),m=f.length+p,h=Math.max(32,Math.ceil(s.size/3));if(t.length===0||m>h)t=[...s.values()].toSorted(Nl),r=`full`;else if(m===0)r=`reuse`;else{let e=new Set(f.map(e=>e.key)),n=t.filter(t=>s.has(t.key)&&!e.has(t.key));for(let e of f)Fl(n,e);t=Il(n)?n:[...s.values()].toSorted(Nl),r=Il(n)?`incremental`:`full`}let g=[];for(let e of t){if(e.entry.kind===`message`){let t=c.get(e.entry.message.id);t&&g.push(...t.map(e=>e.entry))}g.push(e.entry)}return e=o,n=Rl(n,g),n},inspect:()=>({mode:r,indexedEntries:e.size})}}function Bl(e){let t=(0,J.c)(2),n;return t[0]===e?n=t[1]:(n=t=>yn(t,e)??gt,t[0]=e,t[1]=n),qt(n)}function Vl(e){let t=(0,J.c)(2),n;return t[0]===e?n=t[1]:(n=t=>{let n=yn(t,e);return n?{activeProvider:n.activeProvider,modelSelectionByProvider:n.modelSelectionByProvider}:pt},t[0]=e,t[1]=n),qt($a(n))}function Hl(e){let t=(0,J.c)(11),n;t[0]!==e.draftId||t[1]!==e.threadRef?(n=e.threadRef??e.draftId??wt.make(``),t[0]=e.draftId,t[1]=e.threadRef,t[2]=n):n=t[2];let r=Vl(n),i;return t[3]!==r||t[4]!==e.projectModelSelection||t[5]!==e.providers||t[6]!==e.selectedInstanceId||t[7]!==e.selectedProvider||t[8]!==e.settings||t[9]!==e.threadModelSelection?(i=Et({draft:r,providers:e.providers,selectedProvider:e.selectedProvider,selectedInstanceId:e.selectedInstanceId,threadModelSelection:e.threadModelSelection,projectModelSelection:e.projectModelSelection,settings:e.settings}),t[3]=r,t[4]=e.projectModelSelection,t[5]=e.providers,t[6]=e.selectedInstanceId,t[7]=e.selectedProvider,t[8]=e.settings,t[9]=e.threadModelSelection,t[10]=i):i=t[10],i}function Ul(e){let t=(0,J.c)(2),n;return t[0]===e?n=t[1]:(n=t=>t.getDraftSession(e),t[0]=e,t[1]=n),qt(n)}function Wl(e){let t=(0,J.c)(2),n;return t[0]===e?n=t[1]:(n=t=>e?t.getDraftThreadByRef(e):null,t[0]=e,t[1]=n),qt(n)}function Gl(e){let t=(0,J.c)(2),n;return t[0]===e?n=t[1]:(n=t=>e?t.getDraftThreadByRef(e)!==null:!1,t[0]=e,t[1]=n),qt(n)}function Kl(e){let t=(0,J.c)(2),n;return t[0]===e?n=t[1]:(n=t=>e?t.hasDraftThreadsInEnvironment(e):!1,t[0]=e,t[1]=n),qt(n)}function ql(e,t){return e===t?null:t}function Jl(e){return e.open&&e.canMaximize&&e.maximizedThreadKey!==null&&e.maximizedThreadKey===e.threadKey}function Yl(e){return!e.open&&e.maximizedThreadKey!==null&&e.maximizedThreadKey===e.threadKey}function Xl(e){let t=(0,J.c)(17),{canMaximize:n,open:r,threadKey:i}=e,[a,o]=(0,q.useState)(null),s,c;t[0]!==a||t[1]!==r||t[2]!==i?(s=()=>{Yl({maximizedThreadKey:a,open:r,threadKey:i})&&o(null)},c=[a,r,i],t[0]=a,t[1]=r,t[2]=i,t[3]=s,t[4]=c):(s=t[3],c=t[4]),(0,q.useEffect)(s,c);let l;t[5]!==n||t[6]!==r||t[7]!==i?(l=()=>{!r||!n||o(e=>ql(e,i))},t[5]=n,t[6]=r,t[7]=i,t[8]=l):l=t[8];let u=l,d;t[9]!==n||t[10]!==a||t[11]!==r||t[12]!==i?(d=Jl({canMaximize:n,maximizedThreadKey:a,open:r,threadKey:i}),t[9]=n,t[10]=a,t[11]=r,t[12]=i,t[13]=d):d=t[13];let f;return t[14]!==d||t[15]!==u?(f={maximized:d,toggleMaximized:u},t[14]=d,t[15]=u,t[16]=f):f=t[16],f}var Zl=new Map;function Ql(e){let t=Zl.get(e);return t?{...t}:void 0}function $l(e,t){Zl.set(e,tu(t))}function eu(e,t){let{diff:n,diffTurnId:r,diffFilePath:i,preview:a,workspaceOpen:o,workspaceTab:s,workspaceAgentKey:c,...l}=e;return{...l,...t}}function tu(e){return ru({diff:e.diff,diffTurnId:e.diffTurnId,diffFilePath:e.diffFilePath,preview:e.preview,workspaceOpen:e.workspaceOpen,workspaceTab:e.workspaceTab,workspaceAgentKey:e.workspaceAgentKey})}function nu(e,t){let n=Zl.get(e);n&&Zl.set(t,{...n})}function ru(e){return Object.fromEntries(Object.entries(e).filter(([,e])=>e!==void 0))}function iu(e){let t=(0,q.useRef)(null),n=(0,q.useRef)(null),r=t.current!==e.threadKey;if(r){let t=e.threadKey?Ql(e.threadKey):void 0;n.current=e.threadKey&&t&&Kn(t)?{threadKey:e.threadKey,search:t}:null}else Kn(e.search)&&(n.current=null);let i=n.current?.threadKey===e.threadKey&&!Kn(e.search)?n.current.search:void 0,a=r&&i!==void 0,o=i?eu(e.search,i):e.search;return(0,q.useLayoutEffect)(()=>{if(t.current=e.threadKey,e.threadKey){if(a){e.replaceSearch(o);return}i||$l(e.threadKey,e.search)}},[e,i,o,a]),o}var au=`(max-width: 980px)`,ou=`w-[min(42vw,28rem)] min-w-80 max-w-[28rem] p-0 phone:w-[min(88vw,24rem)] phone:min-w-0 wco:mt-[env(titlebar-area-height)] wco:h-[calc(100%-env(titlebar-area-height))] wco:max-h-[calc(100%-env(titlebar-area-height))]`;function su(e,t=50){let n=e.trim();return n.length<=t?n:`${n.slice(0,t)}...`}function cu(e){let t=typeof e.createdAt==`object`&&e.createdAt!==null&&`toJSON`in e.createdAt?e.createdAt.toJSON():String(e.createdAt);return`- ${e.author} (${t}): ${e.body}`}function lu(e){let t=[];if(t.push(`### Issue #${e.number}: ${e.title}`),t.push(`URL: ${e.url}`),t.push(`State: ${e.state}`),e.author&&t.push(`Author: ${e.author}`),e.labels&&e.labels.length>0&&t.push(`Labels: ${e.labels.join(`, `)}`),t.push(``),t.push(e.body),e.comments.length>0){t.push(``),t.push(`Recent comments:`);for(let n of e.comments)t.push(cu(n))}return e.truncated&&(t.push(``),t.push(`> Note: this context was truncated by the server.`)),t.join(`
2
+ import{i as e,t}from"./react-SIfiwpqq.js";import{t as n}from"./index-CQmEMMQH.js";import{t as r}from"./compiler-runtime-qmuS0Svy.js";import{_ as i,c as a,g as o,h as s,l as c,n as l,s as u,t as d,y as f}from"./env-B4arEvJg.js";import{Ai as p,Ca as m,Fr as h,G as g,J as _,Kc as v,Pr as y,Sa as b,Ti as x,V as S,Y as C,Yc as w,at as T,c as E,di as D,f as O,fi as k,it as A,j,k as M,l as N,ot as P,p as F,t as I,u as L,wa as R}from"./src-Vf4LVnMX.js";import{$ as z,Bn as ee,Et as te,Fn as ne,Ft as B,G as re,In as ie,It as V,J as ae,Jt as oe,K as H,Kt as se,Lt as ce,Ot as le,Pn as ue,Q as de,Rn as fe,Rt as U,Sn as pe,St as me,Un as he,Ut as ge,Vn as _e,Vt as ve,W as ye,X as be,Y as xe,Z as Se,Zn as Ce,at as we,b as Te,bn as Ee,bt as De,ct as Oe,d as ke,dt as Ae,et as je,f as Me,ft as Ne,g as Pe,gn as Fe,h as Ie,hn as Le,it as Re,lt as ze,mn as Be,nt as Ve,p as He,pt as Ue,q as We,rt as Ge,tt as Ke,u as qe,v as Je,vt as Ye,wt as Xe,xt as Ze,yn as Qe,yt as $e}from"./runtime-CXut_g4p.js";import{Y as et,a as tt,n as nt}from"./primary-BzLEg2w1.js";import{t as rt}from"./useDebouncedValue-DHjoudTq.js";import{$ as it,A as at,At as ot,B as st,C as ct,Ct as lt,D as ut,Dt as dt,E as ft,F as pt,Ft as mt,H as ht,I as gt,It as _t,L as vt,M as yt,N as bt,Nt as xt,O as St,Ot as Ct,P as wt,Q as Tt,R as Et,S as Dt,St as Ot,T as kt,X as At,Y as jt,Z as Mt,_ as Nt,a as Pt,at as Ft,b as It,c as Lt,ct as Rt,d as zt,dt as Bt,et as Vt,f as Ht,ft as Ut,g as Wt,h as Gt,ht as Kt,i as qt,it as Jt,j as Yt,jt as Xt,k as Zt,kt as Qt,l as $t,lt as en,m as tn,mt as nn,ot as rn,p as an,q as on,s as sn,st as cn,tt as ln,u as un,ut as dn,v as fn,w as pn,wt as mn,x as hn,xt as gn,y as _n,yt as vn,z as yn}from"./composerDraftStore-CdJJZe42.js";import{Et as bn,Mn as xn,N as Sn,Rn as Cn,Sn as wn,Tt as Tn,Xn as En,in as Dn,j as On,on as kn}from"./usePopupViewport-BuhsNdVy.js";import{c as An,s as jn}from"./useSwipeDismiss-CbgDJvw1.js";import{C as Mn,F as Nn,c as Pn,l as Fn,s as In,u as Ln}from"./useHandleNewThread-DX2FtXcP.js";import{_ as Rn,a as zn,c as Bn,d as Vn,g as Hn,h as Un,i as Wn,l as Gn,n as Kn,o as qn,r as Jn,s as Yn,u as Xn}from"./rightPanelRouteSearch-DB5gQGHK.js";import{t as Zn}from"./useNavigate-2tVq4iZ2.js";import{A as Qn,B as $n,F as er,G as tr,H as nr,I as rr,K as ir,O as ar,U as W,V as or,W as sr,Y as cr,c as lr,g as ur,h as dr,j as fr,m as pr,q as mr,r as hr,t as gr,u as _r,v as vr}from"./ThreadStatusIndicators-ZImeLExQ.js";import{n as yr,t as br}from"./visibilityPolling-BwzZdaSN.js";import{i as xr,r as Sr}from"./perfInstrumentation-BT27w4tn.js";import{t as Cr}from"./settingsDialogStore-ygYoScKe.js";import{i as wr}from"./uiStateStore-B6pjzSjj.js";import{i as Tr,n as Er,o as Dr}from"./desktopWorkspace-DHUZEpfy.js";import{a as Or,i as kr,l as Ar,n as jr,o as Mr,r as Nr,s as Pr,t as Fr}from"./BranchToolbar.logic-D7slG_zJ.js";import{d as Ir,f as Lr,l as Rr,o as zr,r as Br,s as Vr,t as Hr,u as Ur}from"./useRenderElement-DchFnsR8.js";import{n as Wr,t as Gr}from"./arrow-up-CTcWIlqV.js";import{t as Kr}from"./arrow-left-Dtj9PfsA.js";import{t as qr}from"./bot-DJp0cuhK.js";import{n as Jr,t as Yr}from"./loader-circle-CrtHFAvM.js";import{t as Xr}from"./chevron-down-B7C6FKzM.js";import{a as Zr,c as Qr,i as $r,o as ei,r as ti,s as ni}from"./tabSwitchInstrumentation-CLDM7g1_.js";import{t as ri}from"./chevron-right-BWYGybX9.js";import{n as ii}from"./useFloatingRootContext-D5EZmrCa.js";import{A as ai,C as oi,D as si,E as ci,I as li,M as ui,N as di,O as fi,P as pi,S as mi,T as hi,a as gi,b as _i,f as vi,i as yi,j as bi,k as xi,o as Si,p as Ci,s as wi,t as Ti,w as Ei}from"./WorkItemsTab-AOVwVvb7.js";import{t as Di}from"./circle-alert-BWvs6IOn.js";import{a as Oi,i as ki,o as Ai,r as ji}from"./toast-CcSCAm4B.js";import{t as Mi}from"./external-link-fbvzDWM7.js";import{n as Ni,t as Pi}from"./tokenModePresentation-lVM0-Wi3.js";import{t as Fi}from"./clock-nNA05brA.js";import{t as Ii}from"./copy-UQjKGt7t.js";import{a as Li,i as Ri,n as zi,o as Bi,r as Vi,t as Hi}from"./NewWorktreeDialog-CKr2ioue.js";import{t as Ui}from"./eye-CUSPj-gd.js";import{n as Wi,t as Gi}from"./layers-BYi0v17h.js";import{C as Ki}from"./lib-qiiNMGgU.js";import{t as qi}from"./folder-DtsQoI9_.js";import{t as Ji}from"./git-branch-BKr-Ij4u.js";import{t as Yi}from"./git-pull-request-DIYyPsg5.js";import{$t as Xi,C as Zi,D as Qi,E as $i,O as ea,Qt as ta,S as na,T as ra,_ as ia,a as aa,b as oa,c as sa,d as ca,en as la,f as ua,i as da,in as fa,k as pa,l as ma,n as ha,nn as ga,o as _a,rn as va,s as ya,t as ba,tn as xa,v as Sa,w as Ca,x as wa,y as Ta}from"./device-B_qvyvtW.js";import{n as Ea,r as Da,v as Oa}from"./HostedConnectionControls-DxAXv0Hd.js";import{t as ka}from"./loader-zHASMrUy.js";import{t as Aa}from"./panel-right-BodNpkM9.js";import{n as ja,t as Ma}from"./play-DYDxlTKo.js";import{t as Na}from"./pencil-B69ERoVM.js";import{t as Pa}from"./plus-B2h-VEqh.js";import{t as Fa}from"./refresh-cw-DopCMrtR.js";import{t as Ia}from"./search-BGQsenCM.js";import{t as La}from"./shield-alert-DY9uVP5G.js";import{t as Ra}from"./shield-check-dQ-4cMKk.js";import{t as za}from"./sparkles-CAf3oJ5S.js";import{c as Ba,i as Va}from"./terminal-links-CZ3c9AbA.js";import{a as Ha,i as Ua,n as Wa,r as Ga,t as Ka}from"./ProviderModelPicker-D0w23uWo.js";import{t as qa}from"./terminal-C_CyIsDD.js";import{t as Ja}from"./trash-2-CM1zXPGb.js";import{t as Ya}from"./triangle-alert-RL_T3KLo.js";import{t as Xa}from"./undo-2-x37tfI3V.js";import{t as Za}from"./wrench-D0IetWa1.js";import{t as Qa}from"./x-C1Cemsov.js";import{t as $a}from"./shallow-DWZCFNun.js";import{a as eo,c as to,i as no,l as ro,n as io,o as ao,t as G}from"./utils-BofFIn5Y.js";import{_ as oo,a as so,c as co,d as lo,h as uo,i as fo,l as po,m as mo,o as ho,p as go,s as _o,t as vo,u as yo}from"./session-logic-GZix7S2I.js";import"./storeSelectors-DYekgeHu.js";import{i as bo,n as xo,s as So}from"./timestampFormat-8uPXS812.js";import{_ as Co,g as wo,n as To,o as Eo,p as Do,r as Oo,s as ko,t as Ao,v as jo}from"./keybindings-CWJ7E9ZI.js";import{n as Mo,t as No}from"./useButton-D__1LqCF.js";import{i as Po,n as Fo,t as Io}from"./tooltip-C8sAONBj.js";import{t as Lo}from"./react-dom-x9LNwWQc.js";import{t as Ro}from"./useValueChanged-MQtIzPIU.js";import{n as zo}from"./clamp-CgH0Dl6R.js";import{i as Bo,n as Vo,r as Ho,s as Uo,u as Wo}from"./useLabelableId-DnQJ7amm.js";import{c as Go,d as Ko,p as qo,s as Jo,t as Yo,u as Xo}from"./command-CGNKG_Oe.js";import{a as Zo,c as Qo,d as $o,f as es,l as ts,o as ns,p as rs,s as is,u as as}from"./providerIconUtils-X0Z3EK-Q.js";import{a as os,d as ss,f as cs,l as ls,n as us,o as ds,r as fs,s as ps,t as ms,u as hs}from"./radio-group-CBZFr4C8.js";import{n as gs,t as _s}from"./switch-BTGo9Yip.js";import{t as vs}from"./input-CHEwW3oH.js";import{t as ys}from"./scroll-area-Drsa8bNB.js";import{a as bs,c as xs,d as Ss,f as Cs,i as ws,r as Ts,u as Es}from"./Icons-CT3nd2MA.js";import{t as Ds}from"./ProjectFavicon-qZGdjYCM.js";import{t as K}from"./button-BAbJxRzt.js";import{t as Os}from"./useCopyToClipboard-BTpWxumf.js";import{t as ks}from"./toastHelpers-CSQRKo4F.js";import{n as As}from"./composerHandleContext-BrQ6d8r9.js";import{t as js}from"./capabilities-3zgirmmI.js";import{a as Ms,n as Ns,t as Ps}from"./motion-thOBhZyM.js";import{o as Fs,t as Is}from"./sheet-BO78gIKZ.js";import{t as Ls}from"./usePresentationTier-B_SCFvN7.js";import{m as Rs,p as zs,t as Bs}from"./sidebar-Dm6l2GA6.js";import"./types-DYekgeHu.js";import{i as Vs,n as Hs,r as Us,t as Ws}from"./alert-LqMhbdE9.js";import{a as Gs,c as Ks,i as qs,o as Js,r as Ys,s as Xs,t as Zs}from"./dialog-DQsYchqu.js";import{a as Qs,c as $s,d as ec,f as tc,i as nc,l as rc,o as ic,p as ac,s as oc,u as sc}from"./menu-Dvxh8sD5.js";import{t as cc}from"./spinner-ClF0jOcX.js";import{t as lc}from"./textarea-RFPODxWW.js";import{a as uc,i as dc,n as fc,o as pc,r as mc,s as hc,t as gc}from"./alert-dialog-DxoA6ky8.js";import{a as _c,i as vc,n as yc,o as bc,r as xc,s as Sc,t as Cc}from"./select-BYbVr-yg.js";import{n as wc,r as Tc,t as Ec}from"./popover-CuH9Yrj3.js";import{i as Dc,n as Oc,t as kc}from"./editorPreferences-DHIJntKF.js";import{t as Ac}from"./badge-CXw6fWrB.js";import{t as jc}from"./label-CVFHsLFO.js";import"./providerInstances-BJcfB_9E.js";import{t as Mc}from"./RycoLetterMark-Bk0kvGJ_.js";import{a as Nc,c as Pc,i as Fc,n as Ic,o as Lc,r as Rc,s as zc,t as Bc}from"./MobileSheet-CkeG6_SP.js";import{t as Vc}from"./GlassSurface-C3IIWMu9.js";import{t as Hc}from"./useLongPress-OGlhYKlH.js";import{t as Uc}from"./useTheme-DiC-5xCb.js";import{t as Wc}from"./toggle-I6h33Cu5.js";import{n as Gc,t as Kc}from"./NoActiveThreadState-BD-eNmfn.js";import"./providerModels-BJcfB_9E.js";import{n as qc,t as Jc}from"./pathEntry-BR9vr7Ug.js";import{n as Yc,r as Xc,t as Zc}from"./usePhoneThreadActions-BEa3VzGG.js";import{i as Qc,n as $c,o as el,r as tl,s as nl,t as rl}from"./liquidGlass-CPsvmaF0.js";import{r as il}from"./SettingsPanels.editor-B2x4U4rW.js";import{t as al}from"./useAppearancePreference-BlLlxQl7.js";import{t as ol}from"./AnimatedHeight-BIsV_Z3J.js";import{n as sl,t as cl}from"./group-D9ER9giz.js";var q=e(t(),1),J=r(),Y=_t();function ll(e){if(typeof e!=`object`||!e||!(`file`in e))throw Error(`Expected a composer image attachment.`);return e}var ul={encode:async e=>{let t=ll(e);return{id:t.id,mime:t.file.type,size:t.file.size,bytes:new Uint8Array(await t.file.arrayBuffer())}},decode:async e=>{if(`uri`in e)return e.uri;let t=new Uint8Array(e.bytes.byteLength);return t.set(e.bytes),new File([t],e.id,{type:e.mime})}},dl=Lr(`arrow-left-right`,[[`path`,{d:`M8 3 4 7l4 4`,key:`9rb6wj`}],[`path`,{d:`M4 7h16`,key:`6tx8e3`}],[`path`,{d:`m16 21 4-4-4-4`,key:`siv7j2`}],[`path`,{d:`M20 17H4`,key:`h6l3hr`}]]),fl=Lr(`arrow-right`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`m12 5 7 7-7 7`,key:`xquz4c`}]]),pl=Lr(`bookmark`,[[`path`,{d:`M17 3a2 2 0 0 1 2 2v15a1 1 0 0 1-1.496.868l-4.512-2.578a2 2 0 0 0-1.984 0l-4.512 2.578A1 1 0 0 1 5 20V5a2 2 0 0 1 2-2z`,key:`oz39mx`}]]),ml=Lr(`brain`,[[`path`,{d:`M12 18V5`,key:`adv99a`}],[`path`,{d:`M15 13a4.17 4.17 0 0 1-3-4 4.17 4.17 0 0 1-3 4`,key:`1e3is1`}],[`path`,{d:`M17.598 6.5A3 3 0 1 0 12 5a3 3 0 1 0-5.598 1.5`,key:`1gqd8o`}],[`path`,{d:`M17.997 5.125a4 4 0 0 1 2.526 5.77`,key:`iwvgf7`}],[`path`,{d:`M18 18a4 4 0 0 0 2-7.464`,key:`efp6ie`}],[`path`,{d:`M19.967 17.483A4 4 0 1 1 12 18a4 4 0 1 1-7.967-.517`,key:`1gq6am`}],[`path`,{d:`M6 18a4 4 0 0 1-2-7.464`,key:`k1g0md`}],[`path`,{d:`M6.003 5.125a4 4 0 0 0-2.526 5.77`,key:`q97ue3`}]]),hl=Lr(`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`}]]),gl=Lr(`clipboard-list`,[[`rect`,{width:`8`,height:`4`,x:`8`,y:`2`,rx:`1`,ry:`1`,key:`tgr4d6`}],[`path`,{d:`M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2`,key:`116196`}],[`path`,{d:`M12 11h4`,key:`1jrz19`}],[`path`,{d:`M12 16h4`,key:`n85exb`}],[`path`,{d:`M8 11h.01`,key:`1dfujw`}],[`path`,{d:`M8 16h.01`,key:`18s6g9`}]]),_l=Lr(`cloud-upload`,[[`path`,{d:`M12 13v8`,key:`1l5pq0`}],[`path`,{d:`M4 14.899A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.5 8.242`,key:`1pljnt`}],[`path`,{d:`m8 17 4-4 4 4`,key:`1quai1`}]]),vl=Lr(`corner-down-left`,[[`path`,{d:`M20 4v7a4 4 0 0 1-4 4H4`,key:`6o5b7l`}],[`path`,{d:`m9 10-5 5 5 5`,key:`1kshq7`}]]),yl=Lr(`expand`,[[`path`,{d:`m15 15 6 6`,key:`1s409w`}],[`path`,{d:`m15 9 6-6`,key:`ko1vev`}],[`path`,{d:`M21 16v5h-5`,key:`1ck2sf`}],[`path`,{d:`M21 8V3h-5`,key:`1qoq8a`}],[`path`,{d:`M3 16v5h5`,key:`1t08am`}],[`path`,{d:`m3 21 6-6`,key:`wwnumi`}],[`path`,{d:`M3 8V3h5`,key:`1ln10m`}],[`path`,{d:`M9 9 3 3`,key:`v551iv`}]]),bl=Lr(`file-braces`,[[`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 12a1 1 0 0 0-1 1v1a1 1 0 0 1-1 1 1 1 0 0 1 1 1v1a1 1 0 0 0 1 1`,key:`1oajmo`}],[`path`,{d:`M14 18a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1 1 1 0 0 1-1-1v-1a1 1 0 0 0-1-1`,key:`mpwhp6`}]]),xl=Lr(`flask-conical`,[[`path`,{d:`M14 2v6a2 2 0 0 0 .245.96l5.51 10.08A2 2 0 0 1 18 22H6a2 2 0 0 1-1.755-2.96l5.51-10.08A2 2 0 0 0 10 8V2`,key:`18mbvz`}],[`path`,{d:`M6.453 15h11.094`,key:`3shlmq`}],[`path`,{d:`M8.5 2h7`,key:`csnxdl`}]]),Sl=Lr(`folder-git-2`,[[`path`,{d:`M18 19a5 5 0 0 1-5-5v8`,key:`sz5oeg`}],[`path`,{d:`M9 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v5`,key:`1w6njk`}],[`circle`,{cx:`13`,cy:`12`,r:`2`,key:`1j92g6`}],[`circle`,{cx:`20`,cy:`19`,r:`2`,key:`1obnsp`}]]),Cl=Lr(`git-branch-plus`,[[`path`,{d:`M6 3v12`,key:`qpgusn`}],[`path`,{d:`M18 9a3 3 0 1 0 0-6 3 3 0 0 0 0 6z`,key:`1d02ji`}],[`path`,{d:`M6 21a3 3 0 1 0 0-6 3 3 0 0 0 0 6z`,key:`chk6ph`}],[`path`,{d:`M15 6a9 9 0 0 0-9 9`,key:`or332x`}],[`path`,{d:`M18 15v6`,key:`9wciyi`}],[`path`,{d:`M21 18h-6`,key:`139f0c`}]]),wl=Lr(`hammer`,[[`path`,{d:`m15 12-9.373 9.373a1 1 0 0 1-3.001-3L12 9`,key:`1hayfq`}],[`path`,{d:`m18 15 4-4`,key:`16gjal`}],[`path`,{d:`m21.5 11.5-1.914-1.914A2 2 0 0 1 19 8.172v-.344a2 2 0 0 0-.586-1.414l-1.657-1.657A6 6 0 0 0 12.516 3H9l1.243 1.243A6 6 0 0 1 12 8.485V10l2 2h1.172a2 2 0 0 1 1.414.586L18.5 14.5`,key:`15ts47`}]]),Tl=Lr(`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`}]]),El=Lr(`lock-open`,[[`rect`,{width:`18`,height:`11`,x:`3`,y:`11`,rx:`2`,ry:`2`,key:`1w4ew1`}],[`path`,{d:`M7 11V7a5 5 0 0 1 9.9-1`,key:`1mm8w8`}]]),Dl=Lr(`message-circle-question-mark`,[[`path`,{d:`M2.992 16.342a2 2 0 0 1 .094 1.167l-1.065 3.29a1 1 0 0 0 1.236 1.168l3.413-.998a2 2 0 0 1 1.099.092 10 10 0 1 0-4.777-4.719`,key:`1sd12s`}],[`path`,{d:`M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3`,key:`1u773s`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]]),Ol=Lr(`monitor`,[[`rect`,{width:`20`,height:`14`,x:`2`,y:`3`,rx:`2`,key:`48i651`}],[`line`,{x1:`8`,x2:`16`,y1:`21`,y2:`21`,key:`1svkeh`}],[`line`,{x1:`12`,x2:`12`,y1:`17`,y2:`21`,key:`vw1qmm`}]]),kl=Lr(`paperclip`,[[`path`,{d:`m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551`,key:`1miecu`}]]),Al=Lr(`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`}]]),jl=Lr(`zap`,[[`path`,{d:`M15.914 4a1.5 1.5 0 00-2.474-1.561l-9 9A1.5 1.5 0 005.5 14h4.002a.5.5 0 01.471.666L8.086 20a1.5 1.5 0 002.475 1.56l9-9A1.5 1.5 0 0018.5 10h-3.997a.5.5 0 01-.472-.667z`,key:`1v7up4`}]]),Ml={message:0,"proposed-plan":1,work:2,"context-compaction":3,"context-handoff":4};function Nl(e,t){return e.entry.createdAt.localeCompare(t.entry.createdAt)||e.sourceRank-t.sourceRank||e.sourceIndex-t.sourceIndex||e.key.localeCompare(t.key)}function Pl(e,t){return e.source===t.source&&e.sourceRank===t.sourceRank}function Fl(e,t){let n=0,r=e.length;for(;n<r;){let i=n+r>>>1,a=e[i];a&&Nl(a,t)<=0?n=i+1:r=i}e.splice(n,0,t)}function Il(e){for(let t=1;t<e.length;t++){let n=e[t-1],r=e[t];if(n&&r&&Nl(n,r)>0)return!1}return!0}function Ll(e,t){let n=`${t.sourceKind}:${t.entry.id}`,r=e.get(n),i=r?.source===t.source&&r.entry.createdAt===t.entry.createdAt&&r.entry.kind===t.entry.kind?r.entry:t.entry;return{key:n,sourceKind:t.sourceKind,sourceRank:Ml[t.sourceKind],sourceIndex:t.sourceIndex,source:t.source,entry:i}}function Rl(e,t){return e.length===t.length&&e.every((e,n)=>e===t[n])?e:t}function zl(){let e=new Map,t=[],n=[],r=`full`;return{update:i=>{let a=new Set(i.messages.map(e=>e.id)),o=new Map,s=new Map,c=new Map,l=(e,t)=>{o.set(e.key,e),t&&s.set(e.key,e)};i.messages.forEach((t,n)=>l(Ll(e,{sourceKind:`message`,sourceIndex:n,source:t,entry:{id:t.id,kind:`message`,createdAt:t.createdAt,message:t}}),!0)),i.proposedPlans.forEach((t,n)=>l(Ll(e,{sourceKind:`proposed-plan`,sourceIndex:n,source:t,entry:{id:t.id,kind:`proposed-plan`,createdAt:t.createdAt,proposedPlan:t}}),!0)),i.workEntries.forEach((t,n)=>l(Ll(e,{sourceKind:`work`,sourceIndex:n,source:t,entry:{id:t.id,kind:`work`,createdAt:t.createdAt,entry:t}}),!0)),i.contextCompactionEntries.forEach((t,n)=>l(Ll(e,{sourceKind:`context-compaction`,sourceIndex:n,source:t,entry:{id:t.id,kind:`context-compaction`,createdAt:t.createdAt,marker:t}}),!0)),i.contextHandoffEntries.forEach((t,n)=>{let r=Ll(e,{sourceKind:`context-handoff`,sourceIndex:n,source:t,entry:{id:t.id,kind:`context-handoff`,createdAt:t.createdAt,marker:t}});if(l(r,!a.has(t.targetMessageId)),a.has(t.targetMessageId)){let e=c.get(t.targetMessageId);e?e.push(r):c.set(t.targetMessageId,[r])}});let u=new Map;for(let e of s.values()){let t=`${e.sourceKind}:${e.entry.createdAt}`;u.set(t,(u.get(t)??0)+1)}let d=new Set(t.map(e=>e.key)),f=[...s.values()].filter(t=>{if(!d.has(t.key))return!0;let n=e.get(t.key);return!n||!Pl(n,t)||n.sourceIndex!==t.sourceIndex&&(u.get(`${t.sourceKind}:${t.entry.createdAt}`)??0)>1}),p=t.reduce((e,t)=>e+ +!s.has(t.key),0),m=f.length+p,h=Math.max(32,Math.ceil(s.size/3));if(t.length===0||m>h)t=[...s.values()].toSorted(Nl),r=`full`;else if(m===0)r=`reuse`;else{let e=new Set(f.map(e=>e.key)),n=t.filter(t=>s.has(t.key)&&!e.has(t.key));for(let e of f)Fl(n,e);t=Il(n)?n:[...s.values()].toSorted(Nl),r=Il(n)?`incremental`:`full`}let g=[];for(let e of t){if(e.entry.kind===`message`){let t=c.get(e.entry.message.id);t&&g.push(...t.map(e=>e.entry))}g.push(e.entry)}return e=o,n=Rl(n,g),n},inspect:()=>({mode:r,indexedEntries:e.size})}}function Bl(e){let t=(0,J.c)(2),n;return t[0]===e?n=t[1]:(n=t=>yn(t,e)??gt,t[0]=e,t[1]=n),qt(n)}function Vl(e){let t=(0,J.c)(2),n;return t[0]===e?n=t[1]:(n=t=>{let n=yn(t,e);return n?{activeProvider:n.activeProvider,modelSelectionByProvider:n.modelSelectionByProvider}:pt},t[0]=e,t[1]=n),qt($a(n))}function Hl(e){let t=(0,J.c)(11),n;t[0]!==e.draftId||t[1]!==e.threadRef?(n=e.threadRef??e.draftId??wt.make(``),t[0]=e.draftId,t[1]=e.threadRef,t[2]=n):n=t[2];let r=Vl(n),i;return t[3]!==r||t[4]!==e.projectModelSelection||t[5]!==e.providers||t[6]!==e.selectedInstanceId||t[7]!==e.selectedProvider||t[8]!==e.settings||t[9]!==e.threadModelSelection?(i=Et({draft:r,providers:e.providers,selectedProvider:e.selectedProvider,selectedInstanceId:e.selectedInstanceId,threadModelSelection:e.threadModelSelection,projectModelSelection:e.projectModelSelection,settings:e.settings}),t[3]=r,t[4]=e.projectModelSelection,t[5]=e.providers,t[6]=e.selectedInstanceId,t[7]=e.selectedProvider,t[8]=e.settings,t[9]=e.threadModelSelection,t[10]=i):i=t[10],i}function Ul(e){let t=(0,J.c)(2),n;return t[0]===e?n=t[1]:(n=t=>t.getDraftSession(e),t[0]=e,t[1]=n),qt(n)}function Wl(e){let t=(0,J.c)(2),n;return t[0]===e?n=t[1]:(n=t=>e?t.getDraftThreadByRef(e):null,t[0]=e,t[1]=n),qt(n)}function Gl(e){let t=(0,J.c)(2),n;return t[0]===e?n=t[1]:(n=t=>e?t.getDraftThreadByRef(e)!==null:!1,t[0]=e,t[1]=n),qt(n)}function Kl(e){let t=(0,J.c)(2),n;return t[0]===e?n=t[1]:(n=t=>e?t.hasDraftThreadsInEnvironment(e):!1,t[0]=e,t[1]=n),qt(n)}function ql(e,t){return e===t?null:t}function Jl(e){return e.open&&e.canMaximize&&e.maximizedThreadKey!==null&&e.maximizedThreadKey===e.threadKey}function Yl(e){return!e.open&&e.maximizedThreadKey!==null&&e.maximizedThreadKey===e.threadKey}function Xl(e){let t=(0,J.c)(17),{canMaximize:n,open:r,threadKey:i}=e,[a,o]=(0,q.useState)(null),s,c;t[0]!==a||t[1]!==r||t[2]!==i?(s=()=>{Yl({maximizedThreadKey:a,open:r,threadKey:i})&&o(null)},c=[a,r,i],t[0]=a,t[1]=r,t[2]=i,t[3]=s,t[4]=c):(s=t[3],c=t[4]),(0,q.useEffect)(s,c);let l;t[5]!==n||t[6]!==r||t[7]!==i?(l=()=>{!r||!n||o(e=>ql(e,i))},t[5]=n,t[6]=r,t[7]=i,t[8]=l):l=t[8];let u=l,d;t[9]!==n||t[10]!==a||t[11]!==r||t[12]!==i?(d=Jl({canMaximize:n,maximizedThreadKey:a,open:r,threadKey:i}),t[9]=n,t[10]=a,t[11]=r,t[12]=i,t[13]=d):d=t[13];let f;return t[14]!==d||t[15]!==u?(f={maximized:d,toggleMaximized:u},t[14]=d,t[15]=u,t[16]=f):f=t[16],f}var Zl=new Map;function Ql(e){let t=Zl.get(e);return t?{...t}:void 0}function $l(e,t){Zl.set(e,tu(t))}function eu(e,t){let{diff:n,diffTurnId:r,diffFilePath:i,preview:a,workspaceOpen:o,workspaceTab:s,workspaceAgentKey:c,...l}=e;return{...l,...t}}function tu(e){return ru({diff:e.diff,diffTurnId:e.diffTurnId,diffFilePath:e.diffFilePath,preview:e.preview,workspaceOpen:e.workspaceOpen,workspaceTab:e.workspaceTab,workspaceAgentKey:e.workspaceAgentKey})}function nu(e,t){let n=Zl.get(e);n&&Zl.set(t,{...n})}function ru(e){return Object.fromEntries(Object.entries(e).filter(([,e])=>e!==void 0))}function iu(e){let t=(0,q.useRef)(null),n=(0,q.useRef)(null),r=t.current!==e.threadKey;if(r){let t=e.threadKey?Ql(e.threadKey):void 0;n.current=e.threadKey&&t&&Kn(t)?{threadKey:e.threadKey,search:t}:null}else Kn(e.search)&&(n.current=null);let i=n.current?.threadKey===e.threadKey&&!Kn(e.search)?n.current.search:void 0,a=r&&i!==void 0,o=i?eu(e.search,i):e.search;return(0,q.useLayoutEffect)(()=>{if(t.current=e.threadKey,e.threadKey){if(a){e.replaceSearch(o);return}i||$l(e.threadKey,e.search)}},[e,i,o,a]),o}var au=`(max-width: 980px)`,ou=`w-[min(42vw,28rem)] min-w-80 max-w-[28rem] p-0 phone:w-[min(88vw,24rem)] phone:min-w-0 wco:mt-[env(titlebar-area-height)] wco:h-[calc(100%-env(titlebar-area-height))] wco:max-h-[calc(100%-env(titlebar-area-height))]`;function su(e,t=50){let n=e.trim();return n.length<=t?n:`${n.slice(0,t)}...`}function cu(e){let t=typeof e.createdAt==`object`&&e.createdAt!==null&&`toJSON`in e.createdAt?e.createdAt.toJSON():String(e.createdAt);return`- ${e.author} (${t}): ${e.body}`}function lu(e){let t=[];if(t.push(`### Issue #${e.number}: ${e.title}`),t.push(`URL: ${e.url}`),t.push(`State: ${e.state}`),e.author&&t.push(`Author: ${e.author}`),e.labels&&e.labels.length>0&&t.push(`Labels: ${e.labels.join(`, `)}`),t.push(``),t.push(e.body),e.comments.length>0){t.push(``),t.push(`Recent comments:`);for(let n of e.comments)t.push(cu(n))}return e.truncated&&(t.push(``),t.push(`> Note: this context was truncated by the server.`)),t.join(`
3
3
  `)}function uu(e){let t=[];if(t.push(`### Change Request #${e.number}: ${e.title}`),t.push(`URL: ${e.url}`),t.push(`State: ${e.state}`),t.push(`Base: ${e.baseRefName}`),t.push(`Head: ${e.headRefName}`),t.push(``),t.push(e.body),e.comments.length>0){t.push(``),t.push(`Recent comments:`);for(let n of e.comments)t.push(cu(n))}return e.truncated&&(t.push(``),t.push(`> Note: this context was truncated by the server.`)),t.join(`
4
4
  `)}function du(e){return e.length===0?``:`## Attached source-control context\n\n${e.map(e=>e.kind===`issue`?lu(e.detail):uu(e.detail)).join(`
5
5
 
@@ -17,11 +17,11 @@ import{i as e,t}from"./react-SIfiwpqq.js";import{t as n}from"./index-Bntnmu6O.js
17
17
  `?t.linebreak():n===` `?t.tab():n!==``&&t.text(n)}function Ov(e){let t=[];return Dv(e,{linebreak:()=>t.push(Ty()),tab:()=>t.push(R_()),text:e=>t.push(F_(e))}),t}function kv(e){let t=[];for(let n of e)Ey(n)||(!$(n)&&!my(n)||n.isInline()?t.push(n):$(n)&&t.push(...kv(n.getChildren())));return t}function Av(e){let t=e;e.isCollapsed()||t.removeText();let n=vv();Q(n)&&(t=n),Q(t)||X(161);let r=t.anchor,i=r.getNode(),a=r.offset;for(;!Ax(i)&&oS(i)===null;){let e=i;if([i,a]=jv(i,a),e.is(i))break}return a}function jv(e,t){let n=e.getParent();if(!n){let e=My();return vb().append(e),e.select(),[vb(),0]}if(Z(e)){let r=e.splitText(t);if(r.length===0)return[n,e.getIndexWithinParent()];let i=t===0?0:1;return[n,r[0].getIndexWithinParent()+i]}if(!$(e)||t===0)return[n,e.getIndexWithinParent()];let r=e.getChildAtIndex(t);if(r){let n=new J_(V_(e.__key,t,`element`),V_(e.__key,t,`element`),0,``),i=e.insertNewAfter(n);i&&i.append(r,...r.getNextSiblings())}return[n,e.getIndexWithinParent()+1]}function Mv(e){return Ey(e)||Xb(e)||Z(e)||e.isParentRequired()}function Nv(e){let t=My(),n=null;for(let r=0;r<e.length;r++){let i=e[r];if(Mv(i)){if(n===null){n=i.createParentElementNode(),t.append(n);let a=e[r+1];if(Ey(i)&&(a===void 0||!Mv(a)))continue}n.append(i)}else t.append(i),n=null}return t}function Pv(e,t,n,r,i=`decorators-and-blocks`){if(t===`move`&&r===`character`&&!e.isCollapsed()){let[t,r]=n===e.isBackward()?[e.focus,e.anchor]:[e.anchor,e.focus];return r.set(t.key,t.offset,t.type),!0}let a=rC(e.focus,n?`previous`:`next`),o=r===`lineboundary`,s=t===`move`,c=a,l=i===`decorators-and-blocks`;if(!pC(c)){for(let e of c){l=!1;let{origin:t}=e;if(!my(t)||t.isIsolated()||(c=e,!o||!t.isInline()))break}if(l)for(let e of JS(a).iterNodeCarets(t===`extend`?`shadowRoot`:`root`)){if(FS(e))e.origin.isInline()||(c=e);else{if($(e.origin))continue;my(e.origin)&&!e.origin.isInline()&&(c=e)}break}}if(c===a)return!1;if(s&&!o&&my(c.origin)&&c.origin.isKeyboardSelectable()){let e=gv();return e.add(c.origin.getKey()),yb(e),!0}return c=fC(c),s&&iC(e.anchor,c),iC(e.focus,c),l||!o}var Fv=null,Iv=null,Lv=!1,Rv=!1,zv=!1,Bv=new Set,Vv=0,Hv={characterData:!0,childList:!0,subtree:!0};function Uv(){return Lv||Fv!==null&&Fv._readOnly}function Wv(){Lv&&X(13)}function Gv(){Vv>99&&X(14)}function Kv(){return Fv===null&&X(195,Xv()),Fv}function qv(e){Kv()!==null&&Iv===null&&(Iv=e),Iv!==e&&wp(378)}function Jv(){return Iv===null&&X(337,Xv()),Iv}function Yv(){Jv()._dirtyType=2}function Xv(){let e=0,t=new Set,n=Vy.version;if(typeof window<`u`)for(let r of dx(document)){let i=$y(r);if(Zy(i))e++;else if(i){let e=String(i.constructor.version||`<0.17.1`);e===n&&(e+=` (separately built, likely a bundler configuration issue)`),t.add(e)}}let r=` Detected on the page: ${e} compatible editor(s) with version ${n}`;return t.size&&(r+=` and incompatible editors with versions ${Array.from(t).join(`, `)}`),r}function Zv(){return Iv}function Qv(e,t,n){let r=t.__type,i=Ky(e,r),a=n.get(r);a===void 0&&(a=Array.from(i.transforms),n.set(r,a));let o=a.length;for(let e=0;e<o&&(a[e](t),t.isAttached());e++);}function $v(e,t){return e!==void 0&&e.__key!==t&&e.isAttached()}function ey(e,t){if(!t)return;let n=e._updateTags,r=t;Array.isArray(t)||(r=[t]);for(let e of r)n.add(e)}function ty(e,t){let n=e.type,r=t.get(n);r===void 0&&X(17,n);let i=r.klass;e.type!==i.getType()&&X(18,i.name);let a=i.importJSON(e),o=e.children;if($(a)&&Array.isArray(o))for(let e=0;e<o.length;e++){let n=ty(o[e],t);a.append(n)}let s=e.$slots;if(s){iS(a)||X(379,i.name);for(let e in s)SS(a,e,ty(s[e],t))}return a}function ny(e,t,n){let r=Fv,i=Lv,a=Iv;Fv=t,Lv=!0,Iv=e;try{return n()}finally{Fv=r,Lv=i,Iv=a}}function ry(e,t){let n=zv;zv=!0;try{(function(e,t){let n=e._pendingEditorState,r=e._rootElement,i=e._headless||r===null;if(n===null)return void(!e._updating&&e._deferred.length>0&&oy(e,e._deferred));let a=e._editorState,o=a._selection,s=n._selection,c=e._dirtyType!==0,l=Fv,u=Lv,d=Iv,f=e._updating,p=e._observer,m=null;if(e._pendingEditorState=null,e._editorState=n,!i&&c&&p!==null){Iv=e,Fv=n,Lv=!1,e._updating=!0;try{let t=e._dirtyType,r=e._dirtyElements,i=e._dirtyLeaves;p.disconnect(),m=Ih(a,n,e,t,r,i)}catch(t){if(t instanceof Error&&e._onError(t),Rv)throw t;Fy(e,null,r,n),Cm(e),e._dirtyType=2,Rv=!0,ry(e,a),Rv=!1;return}finally{p.observe(r,Hv),e._updating=f,Fv=l,Lv=u,Iv=d}}n._readOnly||=!0;let h=e._dirtyLeaves,g=e._dirtyElements,_=e._normalizedNodes,v=e._updateTags;c&&(e._dirtyType=0,e._cloneNotNeeded.clear(),e._dirtyLeaves=new Set,e._dirtyElements=new Map,e._normalizedNodes=new Set),e._updateTags=new Set,function(e,t){let n=e._decorators,r=e._pendingDecorators||n,i=t._nodeMap,a;for(a in r)i.has(a)||(r===n&&(r=gb(e)),delete r[a])}(e,n);let y=i?null:ox(Yb(e));if(e._editable&&y!==null&&(c||s===null||s.dirty||!s.is(o))&&r!==null&&!v.has(`skip-dom-selection`)){Iv=e,Fv=n;try{if(p!==null&&p.disconnect(),c||s===null||s.dirty){let t=e._blockCursorElement;t!==null&&ax(t,e,r),Ev(o,s,e,y,v,r)}(function(e,t,n){let r=e._blockCursorElement;if(Q(n)&&n.isCollapsed()&&n.anchor.type===`element`&&t.contains(bx(t))){let i=n.anchor,a=i.getNode(),o=i.offset,s=!1,c=null;if(o===a.getChildrenSize())ix(a.getChildAtIndex(o-1))&&(s=!0);else{let t=a.getChildAtIndex(o);if(t!==null&&ix(t)){let n=t.getPreviousSibling();(n===null||ix(n))&&(s=!0,c=e.getElementByKey(t.__key))}}if(s){let n=Nx(a,e.getElementByKey(a.__key),e).element;r===null&&(e._blockCursorElement=r=function(e){let t=e.theme,n=px().createElement(`div`);n.contentEditable=`false`,n.setAttribute(`data-lexical-cursor`,`true`);let r=t.blockCursor;return r!==void 0&&(typeof r==`string`&&(r=t.blockCursor=wC(r)),r!==void 0&&n.classList.add(...r)),n}(e._config)),t.style.caretColor=`transparent`,c===null?n.appendChild(r):n.insertBefore(r,c);return}}r!==null&&ax(r,e,t)})(e,r,s)}finally{p!==null&&p.observe(r,Hv),Iv=d,Fv=l}}m!==null&&function(e,t,n,r,i){let a=Array.from(e._listeners.mutation),o=a.length;for(let e=0;e<o;e++){let[o,s]=a[e];for(let e of s){let a=t.get(e);a!==void 0&&o(a,{dirtyLeaves:r,prevEditorState:i,updateTags:n})}}}(e,m,v,h,a),Q(s)||s===null||o!==null&&o.is(s)||e.dispatchCommand(zh);let b=e._pendingDecorators;b!==null&&(e._decorators=b,e._pendingDecorators=null,iy(`decorator`,e,!0,b)),function(e,t,n){let r=_b(t),i=_b(n);r!==i&&iy(`textcontent`,e,!0,i)}(e,t||a,n),iy(`update`,e,!0,{dirtyElements:g,dirtyLeaves:h,editorState:n,mutatedNodes:m,normalizedNodes:_,prevEditorState:t||a,tags:v}),!f&&oy(e,e._deferred),(function(e){let t=e._updates;if(t.length===0)return void(e._cascadeCount=0);if(function(e){Bv.has(e)||(Bv.add(e),setTimeout(()=>{Bv.delete(e),e._cascadeCount=0},0))}(e),e._cascadeCount++>99)return e._updates=[],e._cascadeCount=0,void e._onWarn(Error(`One or more update listeners are endlessly enqueueing more updates. May have encountered infinite recursion caused by update listeners that trigger additional updates without a stop condition. Editor namespace: ${e._config.namespace}`));let n=t.shift();if(n){let[t,r]=n;cy(e,t,r)}})(e)})(e,t)}finally{zv=n}}function iy(e,t,n,...r){let i=t._updating;t._updating=n;try{let n=t._listeners[e],i=Array.from(n);for(let[e,t]of i){t&&t();let i=e(...r);n.has(e)?n.set(e,i):i&&i()}}finally{t._updating=i}}function ay(e,t,n,r){let i=Cb(e),a;if(!zv)for(let e=0;e<i.length;e++)i[e]._updating||(i[e]._cascadeCount=0);for(let e=4;e>=0;e--)for(let o=0;o<i.length;o++){let s=i[o];if(o>0&&s._updating){a=s;break}let c=s._commands.get(t);if(c!==void 0){let t=c[e];if(t.size>0){let e=!1;if(ly(s,()=>{for(let i of t)if(i(n,r))return void(e=!0)}),e)return e}}}return a&&a.update(()=>{ay(a,t,n,r)}),!1}function oy(e,t){if(e._deferred=[],t.length!==0){let n=e._updating;e._updating=!0;try{for(let e=0;e<t.length;e++)t[e]()}finally{e._updating=n}}}function sy(e,t){let n=e._updates,r=t||!1;for(;n.length!==0;){let t=n.shift();if(t){let[n,i]=t,a=e._pendingEditorState,o;i!==void 0&&(o=i.onUpdate,i.skipTransforms&&(r=!0),i.discrete&&(a===null&&X(191),a._flushSync=!0),o&&e._deferred.push(o),ey(e,i.tag)),a==null?cy(e,n,i):n()}}return r}function cy(e,t,n){let r=e._updateTags,i,a=!1,o=!1;n!==void 0&&(i=n.onUpdate,ey(e,n.tag),a=n.skipTransforms||!1,o=n.discrete||!1),i&&e._deferred.push(i);let s=e._editorState,c=e._pendingEditorState,l=!1;(c===null||c._readOnly)&&(c=e._pendingEditorState=_y(c||s),l=!0),c._flushSync=o;let u=Fv,d=Lv,f=Iv,p=e._updating;Fv=c,Lv=!1,e._updating=!0,Iv=e;let m=e._headless||e.getRootElement()===null;Uy(null);try{l&&(m?s._selection!==null&&(c._selection=s._selection.clone()):c._selection=function(e,t){let n=e.getEditorState()._selection,r=ox(Yb(e));return Q(n)||n==null?_v(n,r,e,t):n.clone()}(e,n&&n.event||null));let r=e._compositionKey;t(),a=sy(e,a),function(e,t){let n=t.getEditorState()._selection,r=e._selection;if(Q(r)){let e=r.anchor,t=r.focus,i;if(e.type===`text`&&(i=e.getNode(),i.selectionTransform(n,r)),t.type===`text`){let e=t.getNode();i!==e&&e.selectionTransform(n,r)}}}(c,e),e._dirtyType!==0&&(a?function(e,t){let n=t._dirtyLeaves,r=e._nodeMap;for(let e of n){let t=r.get(e);Z(t)&&t.isAttached()&&t.isSimpleText()&&!t.isUnmergeable()&&Rm(t)}}(c,e):function(e,t){let n=t._dirtyLeaves,r=t._dirtyElements,i=e._nodeMap,a=ub(),o=new Map,s=n,c=s.size,l=r,u=l.size;for(;c>0||u>0;){if(c>0){t._dirtyLeaves=new Set;for(let e of s){let r=i.get(e);Z(r)&&r.isAttached()&&r.isSimpleText()&&!r.isUnmergeable()&&Rm(r),r!==void 0&&$v(r,a)&&Qv(t,r,o),n.add(e)}if(s=t._dirtyLeaves,c=s.size,c>0){Vv++;continue}}t._dirtyLeaves=new Set,t._dirtyElements=new Map,l.delete(`root`)&&l.set(`root`,!0);for(let e of l){let n=e[0],s=e[1];if(r.set(n,s),!s)continue;let c=i.get(n);c!==void 0&&$v(c,a)&&Qv(t,c,o)}s=t._dirtyLeaves,c=s.size,l=t._dirtyElements,u=l.size,Vv++}t._dirtyLeaves=n,t._dirtyElements=r}(c,e),sy(e),function(e,t,n,r){let i=e._nodeMap,a=t._nodeMap,o=[];for(let[e]of r){let t=a.get(e);t!==void 0&&(t.isAttached()||($(t)&&pm(t,e,i,a,o,r),i.has(e)||r.delete(e),o.push(e)))}for(let e of n){let t=a.get(e);t===void 0||t.isAttached()||(iS(t)&&t.__slots!==null&&pm(t,e,i,a,o,n),i.has(e)||n.delete(e),o.push(e))}for(let e of o)a.delete(e);let s=Jv(),c=s._compositionKey;c===null||a.has(c)||(s._compositionKey=null)}(s,c,e._dirtyLeaves,e._dirtyElements)),r!==e._compositionKey&&(c._flushSync=!0);let i=c._selection;if(Q(i)){e._slotsUsed&&dv(i);let t=c._nodeMap,n=i.anchor.key,r=i.focus.key;t.get(n)!==void 0&&t.get(r)!==void 0||X(19)}else Y_(i)&&i._nodes.size===0&&(c._selection=null)}catch(t){t instanceof Error&&e._onError(t),e._pendingEditorState=s,e._dirtyType=2,e._cloneNotNeeded.clear(),e._dirtyLeaves=new Set,e._dirtyElements.clear(),ry(e);return}finally{Fv=u,Lv=d,Iv=f,e._updating=p,Vv=0}e._dirtyType!==0||e._deferred.length>0||function(e,t){let n=t.getEditorState()._selection,r=e._selection;if(r!==null){if(r.dirty||!r.is(n))return!0}else if(n!==null)return!0;return!1}(c,e)?c._flushSync?(c._flushSync=!1,ry(e)):l&&Jy(()=>{ry(e)}):(c._flushSync=!1,l&&(r.clear(),e._deferred=[],e._pendingEditorState=null))}function ly(e,t,n){Iv===e&&n===void 0?Uv()?cy(e,t,n):t():cy(e,t,n)}function uy(e){if($b(e)){let t=null;for(let n of e.getChildren())t=n.isInline()?(t||n.replace(n.createParentElementNode())).append(n):null}}var dy=class extends l_{__first;__last;__size;__format;__style;__indent;__dir;__textFormat;__textStyle;__slotHost;__slots;$config(){return this.config(Symbol.for(`ElementNode`),{$transform:uy,extends:l_})}constructor(e){super(e),this.__first=null,this.__last=null,this.__size=0,this.__format=0,this.__style=``,this.__indent=0,this.__dir=null,this.__textFormat=0,this.__textStyle=``,this.__slotHost=null,this.__slots=null}afterCloneFrom(e){super.afterCloneFrom(e),this.__key===e.__key&&(this.__first=e.__first,this.__last=e.__last,this.__size=e.__size,this.__slotHost=e.__slotHost,this.__slotHost!==null&&this.__parent!==null&&X(384,this.__key,String(this.__slotHost),String(this.__parent)),this.__slots=e.__slots),this.__indent=e.__indent,this.__format=e.__format,this.__style=e.__style,this.__dir=e.__dir,this.__textFormat=e.__textFormat,this.__textStyle=e.__textStyle}getFormat(){return this.getLatest().__format}getFormatType(){return Zp[this.getFormat()]||``}getStyle(){return this.getLatest().__style}getIndent(){return this.getLatest().__indent}getChildren(){let e=[],t=this.getFirstChild();for(;t!==null;)e.push(t),t=t.getNextSibling();return e}getChildrenKeys(){let e=[],t=this.getFirstChild();for(;t!==null;)e.push(t.__key),t=t.getNextSibling();return e}getChildrenSize(){return this.getLatest().__size}isEmpty(){return this.getChildrenSize()===0&&dS(this).length===0}isDirty(){let e=Jv()._dirtyElements;return e!==null&&e.has(this.__key)}isLastChild(){let e=this.getLatest(),t=this.getParentOrThrow().getLastChild();return t!==null&&t.is(e)}getAllTextNodes(){let e=[];for(let t of dS(this)){let n=fS(this,t);$(n)&&e.push(...n.getAllTextNodes())}let t=this.getFirstChild();for(;t!==null;){if(Z(t)&&e.push(t),$(t)){let n=t.getAllTextNodes();e.push(...n)}t=t.getNextSibling()}return e}getFirstDescendant(){let e=this.getFirstChild();for(;$(e);){let t=e.getFirstChild();if(t===null)break;e=t}return e}getLastDescendant(){let e=this.getLastChild();for(;$(e);){let t=e.getLastChild();if(t===null)break;e=t}return e}getDescendantByIndex(e){let t=this.getChildren(),n=t.length;if(e>=n){let e=t[n-1];return $(e)&&e.getLastDescendant()||e||null}let r=t[e];return $(r)&&r.getFirstDescendant()||r||null}getFirstChild(){let e=this.getLatest().__first;return e===null?null:db(e)}getFirstChildOrThrow(){let e=this.getFirstChild();return e===null&&X(45,this.__key),e}getLastChild(){let e=this.getLatest().__last;return e===null?null:db(e)}getLastChildOrThrow(){let e=this.getLastChild();return e===null&&X(96,this.__key),e}getChildAtIndex(e){let t=this.getChildrenSize(),n,r;if(e<t/2){for(n=this.getFirstChild(),r=0;n!==null&&r<=e;){if(r===e)return n;n=n.getNextSibling(),r++}return null}for(n=this.getLastChild(),r=t-1;n!==null&&r>=e;){if(r===e)return n;n=n.getPreviousSibling(),r--}return null}getTextContent(){let e=yS(this),t=this.getChildren(),n=t.length;for(let r=0;r<n;r++){let i=t[r];e+=i.getTextContent(),$(i)&&r!==n-1&&!i.isInline()&&(e+=Kp)}return e}getTextContentSize(){let e=function(e){let t=0;for(let n of dS(e)){let r=fS(e,n);r!==null&&(t+=r.getTextContentSize())}return t}(this),t=this.getChildren(),n=t.length;for(let r=0;r<n;r++){let i=t[r];e+=i.getTextContentSize(),$(i)&&r!==n-1&&!i.isInline()&&(e+=2)}return e}getDirection(){return this.getLatest().__dir}getTextFormat(){return this.getLatest().__textFormat}hasFormat(e){if(e!==``){let t=Xp[e];return(this.getFormat()&t)!==0}return!1}hasTextFormat(e){let t=Jp[e];return(this.getTextFormat()&t)!==0}getFormatFlags(e,t){return ab(this.getLatest().__textFormat,e,t)}getTextStyle(){return this.getLatest().__textStyle}select(e,t){Wv();let n=vv(),r=e,i=t,a=this.getChildrenSize();if(!this.canBeEmpty()){if(e===0&&t===0){let e=this.getFirstChild();if(Z(e)||$(e))return e.select(0,0)}else if(!(e!==void 0&&e!==a||t!==void 0&&t!==a)){let e=this.getLastChild();if(Z(e)||$(e))return e.select()}}r===void 0&&(r=a),i===void 0&&(i=a);let o=this.__key;return Q(n)?(n.anchor.set(o,r,`element`),n.focus.set(o,i,`element`),n.dirty=!0,n):mv(o,r,o,i,`element`,`element`)}selectStart(){let e=this.getFirstDescendant();return e?e.selectStart():this.select()}selectEnd(){let e=this.getLastDescendant();return e?e.selectEnd():this.select()}clear(){let e=this.getWritable();return this.getChildren().forEach(e=>e.remove()),e}append(...e){return this.splice(this.getChildrenSize(),0,e)}setDirection(e){let t=this.getWritable();return t.__dir=e,t}setFormat(e){return this.getWritable().__format=e!==``&&Xp[e]||0,this}setStyle(e){return this.getWritable().__style=e||``,this}setTextFormat(e){let t=this.getWritable();return t.__textFormat=e,t}setTextStyle(e){let t=this.getWritable();return t.__textStyle=e,t}setIndent(e){return this.getWritable().__indent=e,this}splice(e,t,n){s_(this)&&X(324,this.__key,this.__type);let r=this.getChildrenSize(),i=this.getWritable();e+t<=r||X(226,String(e),String(t),String(r));for(let e of n);let a=i.__key,o=[],s=[],c=this.getChildAtIndex(e+t),l=null,u=r-t+n.length;if(e!==0){if(e===r)l=this.getLastChild();else{let t=this.getChildAtIndex(e);t!==null&&(l=t.getPreviousSibling())}}if(t>0){let e=l===null?this.getFirstChild():l.getNextSibling();for(let n=0;n<t;n++){e===null&&X(100);let t=e.getNextSibling(),n=e.__key;sb(e.getWritable()),s.push(n),e=t}}let d=l;for(let e of n){d!==null&&e.is(d)&&(l=d=d.getPreviousSibling());let t=e.getWritable();t.__parent===a&&u--,sb(t);let n=e.__key;if(d===null)i.__first=n,t.__prev=null;else{let e=d.getWritable();e.__next=n,t.__prev=e.__key}e.__key===a&&X(76),t.__parent=a,o.push(n),d=e}if(e+t===r)d!==null&&(d.getWritable().__next=null,i.__last=d.__key);else if(c!==null){let e=c.getWritable();if(d!==null){let t=d.getWritable();e.__prev=d.__key,t.__next=c.__key}else e.__prev=null}if(i.__size=u,s.length){let e=vv();if(Q(e)){let t=new Set(s),n=new Set(o),{anchor:r,focus:i}=e;fy(r,t,n)&&Sv(r,r.getNode(),this,l,c),fy(i,t,n)&&Sv(i,i.getNode(),this,l,c),u!==0||this.canBeEmpty()||$b(this)||this.remove()}}return i}getDOMSlot(e){return new am(e)}exportDOM(e){let{element:t}=super.exportDOM(e);if(Cx(t)){let e=this.getIndent();e>0&&(t.style.paddingInlineStart=40*e+`px`,t.setAttribute(`data-lexical-indent`,String(e)));let n=this.getDirection();n&&(t.dir=n)}return{element:t}}exportJSON(){let e={children:[],direction:this.getDirection(),format:this.getFormatType(),indent:this.getIndent(),...super.exportJSON()},t=this.getTextFormat(),n=this.getTextStyle();return t===0&&n===``||$b(this)||this.getChildren().some(Z)||(t!==0&&(e.textFormat=t),n!==``&&(e.textStyle=n)),e}updateFromJSON(e){return super.updateFromJSON(e).setFormat(e.format).setIndent(e.indent).setDirection(e.direction).setTextFormat(e.textFormat||0).setTextStyle(e.textStyle||``)}insertNewAfter(e,t){return null}canIndent(){return!0}collapseAtStart(e){return!1}excludeFromCopy(e){return!1}canReplaceWith(e){return!0}canInsertAfter(e){return!0}canBeEmpty(){return!0}canInsertTextBefore(){return!0}canInsertTextAfter(){return!0}isInline(){return!1}isShadowRoot(){return!1}canMergeWith(e){return!1}extractWithChild(e,t,n){return!1}canMergeWhenEmpty(){return!1}reconcileObservedMutation(e,t){let n=Nx(this,e,t),r=n.getFirstChild();for(let e=this.getFirstChild();e;e=e.getNextSibling()){let i=t.getElementByKey(e.getKey());i!==null&&(r==null?(n.insertChild(i),r=i):r!==i&&n.replaceChild(i,r),r=r.nextSibling)}}};function $(e){return e instanceof dy}function fy(e,t,n){let r=e.getNode();for(;r;){let e=r.__key;if(t.has(e)&&!n.has(e))return!0;r=r.getParent()}return!1}var py=class extends l_{__slotHost;__slots;constructor(e){super(e),this.__slotHost=null,this.__slots=null}afterCloneFrom(e){super.afterCloneFrom(e),this.__key===e.__key&&(this.__slotHost=e.__slotHost,this.__slotHost!==null&&this.__parent!==null&&X(383,this.__key,String(this.__slotHost),String(this.__parent)),this.__slots=e.__slots)}decorate(e,t){return null}isIsolated(){return!1}isInline(){return!0}isKeyboardSelectable(){return!0}};function my(e){return e instanceof py}var hy=class extends dy{__cachedText;$config(){return this.config(`root`,{extends:dy})}constructor(){super(`root`),this.__cachedText=null}getTopLevelElementOrThrow(){X(51)}getTextContent(){let e=this.__cachedText;return e===null||!Uv()&&Jv()._dirtyType!==0?super.getTextContent():e}remove(){X(52)}replace(e){X(53)}insertBefore(e){X(54)}insertAfter(e){X(55)}updateDOM(e,t){return!1}splice(e,t,n){for(let e of n)$(e)||my(e)||X(282);return super.splice(e,t,n)}static importJSON(e){return vb().updateFromJSON(e)}collapseAtStart(){return!0}};function gy(e){return e instanceof hy}function _y(e){return new xy(dm(e._nodeMap),null,e._slotsUsed)}function vy(){return new xy(new Map([[`root`,new hy]]),null,!1)}function yy(e){let t=e.exportJSON(),n=e.constructor;if(t.type!==n.getType()&&X(130,n.name),$(e)){let r=t.children;Array.isArray(r)||X(59,n.name);let i=e.getChildren();for(let e=0;e<i.length;e++){let t=yy(i[e]);r.push(t)}}let r=dS(e);if(r.length>0){let i={};for(let t of r){let r=fS(e,t);r===null&&X(366,n.name,t),i[t]=yy(r)}t.$slots=i}return t}function by(e){return e instanceof xy}var xy=class e{_nodeMap;_selection;_flushSync;_readOnly;_parsed;_slotsUsed;constructor(e,t=null,n=!1){this._nodeMap=e,this._selection=t||null,this._flushSync=!1,this._readOnly=!1,this._parsed=!1,this._slotsUsed=n}isEmpty(){return this._nodeMap.size===1&&this._selection===null}read(e,t){return ny(t&&t.editor||null,this,e)}clone(t){let n=new e(this._nodeMap,t===void 0?this._selection:t,this._slotsUsed);return n._readOnly=!0,n}toJSON(){return ny(null,this,()=>({root:yy(vb())}))}},Sy=class extends dy{$config(){return this.config(`artificial`,{extends:dy})}createDOM(e){return px().createElement(`div`)}},Cy=class extends l_{$config(){return this.config(`linebreak`,{importDOM:{br:e=>Dy(e)||Oy(e)?null:{conversion:wy,priority:0}}})}getTextContent(){return`
18
18
  `}createDOM(){return px().createElement(`br`)}updateDOM(){return!1}isInline(){return!0}};function wy(e){return{node:Ty()}}function Ty(){return tx(new Cy)}function Ey(e){return e instanceof Cy}function Dy(e){let t=e.parentElement;if(t!==null&&kx(t)){let n=t.firstChild;if(n===e||n.nextSibling===e&&ky(n)){let n=t.lastChild;if(n===e||n.previousSibling===e&&ky(n))return!0}}return!1}function Oy(e){let t=e.parentElement;if(t!==null&&kx(t)){let n=t.firstChild;if(n===e||n.nextSibling===e&&ky(n))return!1;let r=t.lastChild;if(r===e||r.previousSibling===e&&ky(r))return!0}return!1}function ky(e){return nb(e)&&/^( |\t|\r?\n)+$/.test(e.textContent||``)}var Ay=class extends dy{$config(){return this.config(`paragraph`,{extends:dy,importDOM:{p:()=>({conversion:jy,priority:0})}})}createDOM(e){let t=px().createElement(`p`),n=Ib(e.theme,`paragraph`);return n!==void 0&&t.classList.add(...n),t}updateDOM(e,t,n){return!1}exportDOM(e){let{element:t}=super.exportDOM(e);if(Cx(t)){this.isEmpty()&&t.append(px().createElement(`br`));let e=this.getFormatType();e&&(t.style.textAlign=e)}return{element:t}}exportJSON(){let e=super.exportJSON();if(e.textFormat===void 0||e.textStyle===void 0){let t=this.getChildren().find(Z);t?(e.textFormat=t.getFormat(),e.textStyle=t.getStyle()):(e.textFormat=this.getTextFormat(),e.textStyle=this.getTextStyle())}return e}insertNewAfter(e,t){let n=My();n.setTextFormat(e.format),n.setTextStyle(e.style);let r=this.getDirection();return n.setDirection(r),n.setFormat(this.getFormatType()),n.setStyle(this.getStyle()),this.insertAfter(n,t),n}collapseAtStart(){let e=this.getChildren();if(e.length===0||Z(e[0])&&e[0].getTextContent().trim()===``){if(this.getNextSibling()!==null)return this.selectNext(),this.remove(),!0;if(this.getPreviousSibling()!==null)return this.selectPrevious(),this.remove(),!0}return!1}};function jy(e){let t=My();if(Ux(t,e),Vx(e,t),t.getFormatType()===``){let n=e.getAttribute(`align`);n&&n&&n in Xp&&t.setFormat(n)}return Hx(t,e),{node:t}}function My(){return tx(new Ay)}function Ny(e){return e instanceof Ay}function Py(e){console.warn(e)}function Fy(e,t,n,r,i){let a=e._keyToDOMMap;a.clear(),e._editorState=vy(),e._pendingEditorState=r,e._compositionKey=null,e._dirtyType=0,e._cloneNotNeeded.clear(),e._dirtyLeaves=new Set,e._dirtyElements.clear(),e._normalizedNodes=new Set,i&&i.preserveUpdateQueue||(e._updateTags=new Set,e._updates=[],e._cascadeCount=0),e._blockCursorElement=null,e._inputState.handledSelectionCommandTimeoutId!==null&&clearTimeout(e._inputState.handledSelectionCommandTimeoutId),e._inputState={collapsedSelectionFormat:{format:0,key:`root`,offset:0,style:``,timeStamp:0},compositionEndData:``,compositionPhase:`idle`,hadOrphanedCompositionEvents:!1,handledSelectionCommandTimeoutId:null,isInsertLineBreak:!1,isInsertTextAfterHandledSelectionCommand:!1,isSelectionChangeFromDOMUpdate:!1,isSelectionChangeFromMouseDown:!1,lastBeforeInputInsertTextTimeStamp:0,lastKeyCode:null,lastKeyDownTimeStamp:0,postDeleteSelectionToRestore:null,unprocessedBeforeInputData:null};let o=e._observer;o!==null&&(o.disconnect(),e._observer=null),t!==null&&(t.textContent=``,function(e,t){let n=`__lexicalKey_${t._key}`;delete e[n]}(t,e)),n!==null&&(n.textContent=``,a.set(`root`,n),pb(n,e,`root`))}function Iy(e){let t=new Set,n=new Set;for(let{klass:r,ownNodeConfig:i}of Qx(e)){let e=r.transform;if(!n.has(e)){n.add(e);let i=r.transform();i&&t.add(i)}if(i){let e=i.$transform;e&&t.add(e)}}return t}var Ly={$createDOM:(e,t)=>e.createDOM(t._config,t),$decorateDOM:(e,t,n,r)=>{},$exportDOM:(e,t)=>{let n=qy(t,e.getType());return n&&n.exportDOM!==void 0?n.exportDOM(t,e):e.exportDOM(t)},$extractWithChild:(e,t,n,r,i)=>$(e)&&e.extractWithChild(t,n,r),$getDOMSlot:(e,t,n)=>e.getDOMSlot(t),$getSlotTargetElement:(e,t,n,r)=>null,$shouldExclude:(e,t,n)=>$(e)&&e.excludeFromCopy(`html`),$shouldInclude:(e,t,n)=>!t||e.isSelected(t),$updateDOM:(e,t,n,r)=>e.updateDOM(t,n,r._config)};function Ry(e){let t=e||{},n=Zv(),r=t.theme||{},i=e===void 0?n:t.parentEditor||null,a=t.disableEvents||!1,o=vy(),s=t.namespace||(i===null?wb():i._config.namespace),c=t.editorState,l=[hy,E_,Cy,L_,Ay,Sy,...t.nodes||[]],{onError:u,onWarn:d,html:f}=t,p=t.editable===void 0||t.editable,m;if(e===void 0&&n!==null)m=n._nodes;else{m=new Map;for(let e=0;e<l.length;e++){let n=l[e],r=null,i=null;if(n&&typeof n==`object`){let e=n;n=e.replace,r=e.with,i=e.withKlass||null}if(typeof n!=`function`||!n.prototype||!(n===l_||n.prototype instanceof l_)){let r=`<unknown>`;try{r=JSON.parse(cm)}catch{}X(365,String(e-l.length+(t.nodes?t.nodes.length:0)),typeof n==`function`?`${n.name}${typeof n.getType==`function`?` (type ${String(n.getType())})`:``}`:String(n),String(r))}Zx(n);let a=n.getType(),o=Iy(n);m.set(a,{exportDOM:f&&f.export?f.export.get(n):void 0,klass:n,replace:r,replaceWithKlass:i,sharedNodeState:Em(l[e]),transforms:o})}}let h=new Vy(o,i,m,{disableEvents:a,dom:{...Ly,...e&&e.dom},namespace:s,theme:r},u||console.error,d||Py,function(e,t){let n=new Map,r=new Set,i=e=>{Object.keys(e).forEach(t=>{let r=n.get(t);r===void 0&&(r=[],n.set(t,r)),r.push(e[t])})};return e.forEach(e=>{let t=e.klass.importDOM;if(t==null||r.has(t))return;r.add(t);let n=t.call(e.klass);n!==null&&i(n)}),t&&i(t),n}(m,f?f.import:void 0),p,e);return c!==void 0&&(h._pendingEditorState=c,h._dirtyType=2),function(e){e.registerCommand(Vh,Kg,0),e.registerCommand(Hh,qg,0),e.registerCommand(Uh,Jg,0),e.registerCommand(Wh,Yg,0),e.registerCommand(ng,Qg,0)}(h),h}function zy(e,t){let n=e.get(t);e.delete(t),n&&n()}function By(e,t,n){return e.set(t,n),zy.bind(null,e,t)}var Vy=class{static version;_headless;_parentEditor;_rootElement;_editorState;_pendingEditorState;_compositionKey;_deferred;_keyToDOMMap;_updates;_updating;_cascadeCount;_listeners;_commands;_nodes;_decorators;_pendingDecorators;_config;_dirtyType;_cloneNotNeeded;_dirtyLeaves;_dirtyElements;_normalizedNodes;_updateTags;_observer;_key;_onError;_onWarn;_htmlConversions;_window;_editable;_blockCursorElement;_slotsUsed;_inputState;_createEditorArgs;constructor(e,t,n,r,i,a,o,s,c){this._createEditorArgs=c,this._parentEditor=t,this._rootElement=null,this._editorState=e,this._pendingEditorState=null,this._compositionKey=null,this._deferred=[],this._keyToDOMMap=new fm,this._updates=[],this._updating=!1,this._cascadeCount=0,this._listeners={decorator:new Map,editable:new Map,mutation:new Map,root:new Map,textcontent:new Map,update:new Map},this._commands=new Map,this._config=r,this._nodes=n,this._decorators={},this._pendingDecorators=null,this._dirtyType=0,this._cloneNotNeeded=new Set,this._dirtyLeaves=new Set,this._dirtyElements=new Map,this._normalizedNodes=new Set,this._updateTags=new Set,this._observer=null,this._key=wb(),this._onError=i,this._onWarn=a,this._htmlConversions=o,this._editable=s,this._headless=t!==null&&t._headless,this._window=null,this._blockCursorElement=null,this._slotsUsed=!1,this._inputState={collapsedSelectionFormat:{format:0,key:`root`,offset:0,style:``,timeStamp:0},compositionEndData:``,compositionPhase:`idle`,hadOrphanedCompositionEvents:!1,handledSelectionCommandTimeoutId:null,isInsertLineBreak:!1,isInsertTextAfterHandledSelectionCommand:!1,isSelectionChangeFromDOMUpdate:!1,isSelectionChangeFromMouseDown:!1,lastBeforeInputInsertTextTimeStamp:0,lastKeyCode:null,lastKeyDownTimeStamp:0,postDeleteSelectionToRestore:null,unprocessedBeforeInputData:null}}isComposing(){return this._compositionKey!=null}registerUpdateListener(e){return By(this._listeners.update,e)}registerEditableListener(e){return By(this._listeners.editable,e)}registerDecoratorListener(e){return By(this._listeners.decorator,e)}registerTextContentListener(e){return By(this._listeners.textcontent,e)}registerRootListener(e){let t=this._listeners.root;return EC(By(t,e,e(this._rootElement,null)||void 0),()=>function(e,t,n){let r=e.get(t);r&&r(),e.set(t,t(...n)||void 0)}(t,e,[null,this._rootElement]))}registerCommand(e,t,n){n===void 0&&X(35);let r=this._commands;r.has(e)||r.set(e,[new lm,new lm,new lm,new lm,new lm]);let i=r.get(e);i===void 0&&X(36,String(e));let a=function(e){return 7&e}(n),o=i[a];return a===n?o.addBack(t):o.addFront(t),()=>{o.delete(t),i.every(e=>e.size===0)&&r.delete(e)}}registerMutationListener(e,t,n){let r=this.resolveRegisteredNodeAfterReplacements(this.getRegisteredNode(e)).klass,i=this._listeners.mutation,a=i.get(t);a===void 0&&(a=new Set,i.set(t,a)),a.add(r);let o=n&&n.skipInitialization;return o!==void 0&&o||this.initializeMutationListener(t,r),()=>{a.delete(r),a.size===0&&i.delete(t)}}getRegisteredNode(e){let t=this._nodes.get(e.getType());return t===void 0&&X(37,e.name),t}resolveRegisteredNodeAfterReplacements(e){for(;e.replaceWithKlass;)e=this.getRegisteredNode(e.replaceWithKlass);return e}initializeMutationListener(e,t){let n=this._editorState,r=Rx(n).get(t.getType());if(!r)return;let i=new Map;for(let e of r.keys())i.set(e,`created`);i.size>0&&e(i,{dirtyLeaves:new Set,prevEditorState:n,updateTags:new Set([`registerMutationListener`])})}registerNodeTransformToKlass(e,t){let n=this.getRegisteredNode(e);return n.transforms.add(t),n}registerNodeTransform(e,t){let n=this.registerNodeTransformToKlass(e,t),r=[n],i=n.replaceWithKlass;if(i!=null){let e=this.registerNodeTransformToKlass(i,t);r.push(e)}return function(e,t){let n=Rx(e.getEditorState()),r=[];for(let e of t){let t=n.get(e);t&&r.push(t)}r.length!==0&&e.update(()=>{for(let e of r)for(let t of e.keys()){let e=db(t);e&&e.markDirty()}},e._pendingEditorState===null?{tag:f_}:void 0)}(this,r.map(e=>e.klass.getType())),()=>{r.forEach(e=>e.transforms.delete(t))}}hasNode(e){return this._nodes.has(e.getType())}hasNodes(e){return e.every(this.hasNode.bind(this))}dispatchCommand(e,...t){return Vb(this,e,...t)}getDecorators(){return this._decorators}getRootElement(){return this._rootElement}getKey(){return this._key}setRootElement(e){let t=this._rootElement;if(e!==t){let n=Ib(this._config.theme,`root`),r=this._pendingEditorState||this._editorState;if(this._rootElement=e,Fy(this,t,e,r,{preserveUpdateQueue:!0}),t!==null&&(this._config.disableEvents||i_(t),n!=null&&t.classList.remove(...n)),e!==null){let t=Jb(e),r=e.style;r.userSelect=`text`,r.whiteSpace=`pre-wrap`,r.wordBreak=`break-word`,e.setAttribute(`data-lexical-editor`,`true`),this._window=t,this._dirtyType=2,Cm(this),this._updateTags.add(f_),ry(this),this._config.disableEvents||function(e,t){let n=e.ownerDocument;Ng.set(e,n);let r=Pg.get(n);r===void 0&&(r={editors:new Set,hasShadowEditor:void 0},Pg.set(n,r)),r.editors.add(t),r.hasShadowEditor=void 0,e.__lexicalEditor=t;let i=$g(e);i.push(Fg.register(n));for(let n=0;n<Mg.length;n++){let[r,a]=Mg[n],o=typeof a==`function`?e=>{r_(e)||(n_(e),(t.isEditable()||r===`click`)&&a(e,t))}:e=>{if(r_(e))return;n_(e);let n=t.isEditable();switch(r){case`cut`:return n&&Vb(t,bg,e);case`copy`:return Vb(t,yg,e);case`paste`:return n&&Vb(t,Yh,e);case`dragstart`:return n&&Vb(t,gg,e);case`dragover`:return n&&Vb(t,_g,e);case`dragend`:return n&&Vb(t,vg,e);case`focus`:return n&&Vb(t,Eg,e);case`blur`:return n&&Vb(t,Dg,e);case`drop`:return n&&Vb(t,hg,e)}};i.push(Ag(e,r,o))}}(e,this),n!=null&&e.classList.add(...n)}else this._window=null,this._updateTags.add(f_),ry(this);iy(`root`,this,!1,e,t)}}getElementByKey(e){return this._keyToDOMMap.get(e)||null}getEditorState(){return this._editorState}setEditorState(e,t){e.isEmpty()&&X(38);let n=e;n._readOnly&&(n=_y(e),n._selection=e._selection?e._selection.clone():null),Sm(this);let r=this._pendingEditorState,i=t===void 0?null:t.tag;r===null||r.isEmpty()||(i!=null&&this._updateTags.add(i),ry(this)),this._pendingEditorState=n,this._dirtyType=2,this._dirtyElements.set(`root`,!1),this._compositionKey=null,this._slotsUsed=this._slotsUsed||e._slotsUsed,ly(this,()=>{if(i&&this._updateTags.add(i),e._parsed)for(let[e,t]of n._nodeMap.entries())$(t)?this._dirtyElements.set(e,!0):this._dirtyLeaves.add(e)},{discrete:!this._updating||void 0})}parseEditorState(e,t){return function(e,t,n){let r=vy(),i=Fv,a=Lv,o=Iv,s=t._dirtyElements,c=t._dirtyLeaves,l=t._cloneNotNeeded,u=t._dirtyType;t._dirtyElements=new Map,t._dirtyLeaves=new Set,t._cloneNotNeeded=new Set,t._dirtyType=0,Fv=r,Lv=!1,Iv=t,Uy(null);try{let i=t._nodes;ty(e.root,i),n&&n(),r._readOnly=!0,r._parsed=!0}catch(e){e instanceof Error&&t._onError(e)}finally{t._dirtyElements=s,t._dirtyLeaves=c,t._cloneNotNeeded=l,t._dirtyType=u,Fv=i,Lv=a,Iv=o}return r}(typeof e==`string`?JSON.parse(e):e,this,t)}read(...e){let[t,n]=e.length===1?[`force-commit`,e[0]]:e;return t===`force-commit`&&ry(this),(t===`pending`?this._pendingEditorState||this._editorState:this.getEditorState()).read(n,{editor:this})}update(e,t){(function(e,t,n){e._updating?e._updates.push([t,n]):cy(e,t,n)})(this,e,t)}focus(e,t={}){let n=this._rootElement;n!==null&&(n.setAttribute(`autocapitalize`,`off`),ly(this,()=>{let r=vv(),i=vb();r===null?i.getChildrenSize()!==0&&(t.defaultSelection===`rootStart`?i.selectStart():i.selectEnd()):r.dirty||yb(r.clone()),Gb(`focus`),Kb(()=>{n.removeAttribute(`autocapitalize`),e&&e()})}),this._pendingEditorState===null&&n.removeAttribute(`autocapitalize`))}blur(){let e=this._rootElement;e!==null&&e.blur();let t=ox(this._window);t!==null&&t.removeAllRanges()}isEditable(){return this._editable}setEditable(e){this._editable!==e&&(this._editable=e,iy(`editable`,this,!0,e),this._slotsUsed&&this.update(()=>Yv()))}toJSON(){return{editorState:this._editorState.toJSON()}}};Vy.version=cm;var Hy=null;function Uy(e){Hy=e}var Wy=Symbol(`INTERNAL_SKIP_AFTER_CLONE_FROM`),Gy=1;function Ky(e,t){let n=qy(e,t);return n===void 0&&X(30,t),n}function qy(e,t){return e._nodes.get(t)}var Jy=typeof queueMicrotask==`function`?queueMicrotask:e=>{Promise.resolve().then(e)};function Yy(e,t){let n=t===void 0?(()=>{let t=e.getRootNode();return rb(t)||cx(t)?xx(t):null})():t;if(!Cx(n)||n.hasAttribute(`data-lexical-slot`))return!1;let r=hb(n),i=n.nodeName;return u_(r)&&(i===`INPUT`||i===`TEXTAREA`||n.contentEditable===`true`&&$y(n)==null)}function Xy(e,t,n){let r=e.getRootElement();if(!r)return!1;try{if(!t||!r.contains(t)||!r.contains(n))return!1}catch{return!1}return Qy(t)===e&&e.read(`latest`,()=>!Yy(t))}function Zy(e){return e instanceof Vy}function Qy(e){let t=e;for(;t!=null;){let e=$y(t);if(Zy(e))return e;t=Ub(t)}return null}function $y(e){return e?e.__lexicalEditor:null}function eb(e){return z_(e)||e.isToken()}function tb(e){return eb(e)||e.isSegmented()}function nb(e){return wx(e)&&e.nodeType===3}function rb(e){return wx(e)&&e.nodeType===9}function ib(e){let t=e;for(;t!=null;){if(nb(t))return t;t=t.firstChild}return null}function ab(e,t,n){let r=Jp[t];if(n!==null&&(e&r)===(n&r))return e;let i=e^r;return t===`subscript`?i&=~Jp.superscript:t===`superscript`?i&=~Jp.subscript:t===`lowercase`?(i&=~Jp.uppercase,i&=~Jp.capitalize):t===`uppercase`?(i&=~Jp.lowercase,i&=~Jp.capitalize):t===`capitalize`&&(i&=~Jp.lowercase,i&=~Jp.uppercase),i}function ob(e,t){let n=function(){let e=Hy;return Hy=null,e}();if((t||=n&&n.__key)!=null)return void(e.__key=t);Wv(),Gv();let r=Jv(),i=Kv(),a=``+Gy++;i._nodeMap.set(a,e),$(e)?r._dirtyElements.set(a,!0):r._dirtyLeaves.add(a),r._cloneNotNeeded.add(a),r._dirtyType===0&&(r._dirtyType=1),e.__key=a}function sb(e){oS(e)!==null&&X(380,e.__key,String(oS(e)));let t=e.getParent();if(t!==null){let n=e.getWritable(),r=t.getWritable(),i=e.getPreviousSibling(),a=e.getNextSibling(),o=a===null?null:a.__key,s=i===null?null:i.__key,c=i===null?null:i.getWritable(),l=a===null?null:a.getWritable();i===null&&(r.__first=o),a===null&&(r.__last=s),c!==null&&(c.__next=o),l!==null&&(l.__prev=s),n.__prev=null,n.__next=null,n.__parent=null,r.__size--}}function cb(e){Gv(),s_(e)&&X(323,e.__key,e.__type);let t=e.getLatest(),n=t.__parent===null?aS(t)?t.__slotHost:null:t.__parent,r=Kv(),i=Jv(),a=r._nodeMap,o=i._dirtyElements;n!==null&&function(e,t,n){let r=e;for(;r!==null;){if(n.has(r))return;let e=t.get(r);if(e===void 0)break;n.set(r,!1),r=e.__parent===null?aS(e)?e.__slotHost:null:e.__parent}}(n,a,o);let s=t.__key;i._dirtyType===0&&(i._dirtyType=1),$(e)?o.set(s,!0):i._dirtyLeaves.add(s)}function lb(e){Wv();let t=Jv(),n=t._compositionKey;if(e!==n){if(t._compositionKey=e,n!==null){let e=db(n);e!==null&&e.getWritable()}if(e!==null){let t=db(e);t!==null&&t.getWritable()}}}function ub(){return Uv()?null:Jv()._compositionKey}function db(e,t){let n=(t||Kv())._nodeMap.get(e);return n===void 0?null:n}function fb(e,t){let n=mb(e,Jv());return n===void 0?null:db(n,t)}function pb(e,t,n){e[`__lexicalKey_${t._key}`]=n}function mb(e,t){return e[`__lexicalKey_${t._key}`]}function hb(e,t){let n=e;for(;n!=null;){let e=fb(n,t);if(e!==null)return e;n=Ub(n)}return null}function gb(e){let t=e._decorators,n=Object.assign({},t);return e._pendingDecorators=n,n}function _b(e){return e.read(()=>vb().getTextContent())}function vb(){return Kv()._nodeMap.get(`root`)}function yb(e){Wv();let t=Kv();e!==null&&(e.dirty=!0,e.setCachedNodes(null),Q(e)&&Jv()._slotsUsed&&dv(e)),t._selection=e}function bb(){Wv(),Sm(Jv())}function xb(e){let t=function(e,t){let n=e;for(;n!=null;){let e=mb(n,t);if(e!==void 0)return e;n=Ub(n)}return null}(e,Jv());return t===null?null:db(t)}function Sb(e){return/[\uD800-\uDBFF][\uDC00-\uDFFF]/g.test(e)}function Cb(e){let t=[];for(let n=e;n!==null;n=n._parentEditor)t.push(n);return t}function wb(){return Math.random().toString(36).replace(/[^a-z]+/g,``).substring(0,5)}function Tb(e){return nb(e)?e.nodeValue:null}function Eb(e,t,n){let r=ox(Yb(t));if(r===null)return;let i=gx(r,t._rootElement),a=i.anchorNode,{anchorOffset:o,focusOffset:s}=i;if(a!==null){let t=Tb(a),r=hb(a);if(t!==null&&Z(r)){if((t===Gp||t===qp)&&n){let e=n.length;t=n,o=e,s=e}t!==null&&Db(r,t,o,s,e)}}}function Db(e,t,n,r,i){let a=e;if(a.isAttached()&&(i||!a.isDirty())){let o=a.isComposing();if(a.isToken()&&o)return;let s=t;if((o||i)&&(t.endsWith(Gp)&&(s=t.slice(0,-Gp.length)),i)){let e=qp,t;for(;(t=s.indexOf(e))!==-1;)s=s.slice(0,t)+s.slice(t+e.length),n!==null&&n>t&&(n=Math.max(t,n-e.length)),r!==null&&r>t&&(r=Math.max(t,r-e.length))}let c=a.getTextContent();if(i||s!==c){let t=vv();if(s===``){if(lb(null),Mp||Ap||Fp)a.remove();else{let e=Jv();Ob(a,``,t),setTimeout(()=>{e.update(()=>{a.isAttached()&&a.getTextContent()===``&&a.remove()})},20)}return}let i=a.getParent(),c=yv(),l=a.getTextContentSize(),u=ub(),d=a.getKey();if(a.isToken()&&!o||u!==null&&d===u&&!o||Q(c)&&(i!==null&&!i.canInsertTextBefore()&&c.anchor.offset===0||c.anchor.key===e.__key&&c.anchor.offset===0&&!a.canInsertTextBefore()&&!o||c.focus.key===e.__key&&c.focus.offset===l&&!a.canInsertTextAfter()&&!o))return void a.markDirty();if(!Q(t)||n===null||r===null)return void Ob(a,s,t);if(t.setTextNodeRange(a,n,a,r),a.isSegmented()){let e=F_(a.getTextContent());a.replace(e),a=e}Ob(a,s,t)}}}function Ob(e,t,n){if(e.setTextContent(t),Q(n)){let t=e.getKey(),r=!1;for(let i of[`anchor`,`focus`]){let a=n[i];a.type===`text`&&a.key===t&&(a.offset=VS(e,a.offset,`clamp`),r=!0)}r&&(n._cachedNodes=null,n._cachedIsBackward=null)}}function kb(e,t,n){let r=t[n]||!1;return r===`any`||r===e[n]}function Ab(e,t){return kb(e,t,`altKey`)&&kb(e,t,`ctrlKey`)&&kb(e,t,`shiftKey`)&&kb(e,t,`metaKey`)}function jb(e,t,n){if(!Ab(e,n))return!1;if(e.key.toLowerCase()===t.toLowerCase())return!0;if(t.length>1||e.key.length===1&&e.key.charCodeAt(0)<=127)return!1;if(e.code.startsWith(`Digit`)&&/^\d$/.test(t))return e.code===`Digit${t}`;let r=`Key`+t.toUpperCase();return e.code===r}var Mb={ctrlKey:!Dp,metaKey:Dp},Nb={altKey:Dp,ctrlKey:!Dp};function Pb(e){return e.key===`Backspace`}function Fb(e){let t=vb();if(Q(e)){let t=e.anchor,n=e.focus,r=t.getNode();if(gy(r))return t.set(r.getKey(),0,`element`),n.set(r.getKey(),r.getChildrenSize(),`element`),zm(e),e;let i=r.getTopLevelElementOrThrow(),a=i.getParent();if(a===null)return $(i)&&(t.set(i.getKey(),0,`element`),n.set(i.getKey(),i.getChildrenSize(),`element`),zm(e)),e;let o=a;return t.set(o.getKey(),0,`element`),n.set(o.getKey(),o.getChildrenSize(),`element`),zm(e),e}{let e=t.select(0,t.getChildrenSize());return yb(zm(e)),e}}function Ib(e,t){e.__lexicalClassNameCache===void 0&&(e.__lexicalClassNameCache={});let n=e.__lexicalClassNameCache,r=n[t];if(r!==void 0)return r;let i=e[t];if(typeof i==`string`){let e=wC(i);return n[t]=e,e}return i}function Lb(e,t,n,r,i){if(n.size===0)return;let a=r.__type,o=r.__key,s=t.get(a);s===void 0&&X(33,a);let c=s.klass,l=e.get(c);l===void 0&&(l=new Map,e.set(c,l));let u=l.get(o),d=u===`destroyed`&&i===`created`;(u===void 0||d)&&l.set(o,d?`updated`:i)}function Rb(e,t,n){let r=e.getParent(),i=n,a=e;return r!==null&&(t&&n===0?(i=a.getIndexWithinParent(),a=r):t||n!==a.getChildrenSize()||(i=a.getIndexWithinParent()+1,a=r)),a.getChildAtIndex(t?i-1:i)}function zb(e,t){let n=e.offset;if(e.type===`element`)return Rb(e.getNode(),t,n);{let r=e.getNode();if(t&&n===0||!t&&n===r.getTextContentSize()){let e=t?r.getPreviousSibling():r.getNextSibling();return e===null?Rb(r.getParentOrThrow(),t,r.getIndexWithinParent()+ +!t):e}}return null}function Bb(e){let t=Yb(e).event,n=t&&t.inputType;return n===`insertFromPaste`||n===`insertFromPasteAsQuotation`}function Vb(e,t,...n){return ay(e,t,n[0],e)}function Hb(e,t){let n=e._keyToDOMMap.get(t);return n===void 0&&X(75,t),n}function Ub(e){let t=e.assignedSlot||e.parentElement;if(t!==null)return t;let n=e.parentNode;return cx(n)?n.host:null}function Wb(e){return rb(e)?e:Cx(e)?e.ownerDocument:null}function Gb(e){Wv(),Jv()._updateTags.add(e)}function Kb(e){Wv(),Jv()._deferred.push(e)}function qb(e,t){let n=e.getParent();for(;n!==null;){if(n.is(t))return!0;n=n.getParent()}return!1}function Jb(e){let t=Wb(e);return t?t.defaultView:null}function Yb(e){let t=e._window;return t===null&&X(78),t}function Xb(e){return $(e)&&e.isInline()||my(e)&&e.isInline()}function Zb(e){let t=e.getLatest();for(;t!==null;){if(oS(t)!==null&&$(t))return t;let e=t.getParentOrThrow();if($b(e))return e;t=e}return t}function Qb(e){return $(e)&&e.isShadowRoot()}function $b(e){return gy(e)||Qb(e)}function ex(e,t=!1){let n=e.constructor.clone(e,Wy);return ob(n,null),n.afterCloneFrom(e),t||n.resetOnCopyNodeFrom(e),n}function tx(e){let t=Jv(),n=e.getType(),r=qy(t,n);r===void 0&&X(200,e.constructor.name,n);let{replace:i,replaceWithKlass:a}=r;if(i!==null){let t=i(e),r=t.constructor;return a===null?t instanceof e.constructor&&r!==e.constructor||X(202,r.name,r.getType(),e.constructor.name,n):t instanceof a||X(201,a.name,a.getType(),r.name,r.getType(),e.constructor.name,n),t.__key===e.__key&&X(203,e.constructor.name,n,r.name,r.getType()),t}return e}function nx(e,t){!gy(e.getParent())||$(t)||my(t)||X(99)}function rx(e){let t=db(e);return t===null&&X(63,e),t}function ix(e){if(!e||e.isInline())return!1;if(my(e))return!0;if($(e)){if(e.isShadowRoot()){let t=e.getParent();return!($(t)&&t.isShadowRoot())}return!e.canBeEmpty()}return!1}function ax(e,t,n){n.style.removeProperty(`caret-color`),t._blockCursorElement=null;let r=e.parentElement;r!==null&&r.removeChild(e)}function ox(e){return Tp?(e||window).getSelection():null}function sx(e){let t=Jb(e);return t?t.getSelection():null}function cx(e){return Tx(e)&&`host`in e}var lx=[];function ux(e){let t=e.getRootNode();if(t===e||!cx(t))return lx;let n=[t],r=t.host;for(;;){let e=r.getRootNode();if(e===r||!cx(e))break;n.push(e),r=e.host}return n}function*dx(e){let t=[e],n;for(;n=t.pop();){yield*n.querySelectorAll(`[data-lexical-editor="true"]`);let e=(rb(n)?n:n.ownerDocument).createTreeWalker(n,NodeFilter.SHOW_ELEMENT),r;for(;r=e.nextNode();)r.shadowRoot&&t.push(r.shadowRoot)}}function fx(e){return e===null?document:e.ownerDocument}function px(){let e=Zv();return fx(e===null?null:e._rootElement)}function mx(e,t){if(t===null||typeof e.getComposedRanges!=`function`)return null;let n=ux(t);if(n.length===0)return null;let r=e.getComposedRanges;try{let t=r.call(e,{shadowRoots:n})[0];if(t!==void 0)return t}catch{}try{let t=r.apply(e,n)[0];if(t!==void 0)return t}catch{}return null}function hx(e,t){let n=mx(e,t);if(n!==null){let e=_x(n);if(e!==null)return e}return e.rangeCount>0?e.getRangeAt(0):null}function gx(e,t){let n=mx(e,t);return n===null?e:vx(n,yx(e))}function _x(e){let t=e.startContainer.ownerDocument;if(t===null)return null;let n=t.createRange();try{return n.setStart(e.startContainer,e.startOffset),n.setEnd(e.endContainer,e.endOffset),n}catch{return null}}function vx(e,t){let{startContainer:n,startOffset:r,endContainer:i,endOffset:a}=e;return t===`backward`?{anchorNode:i,anchorOffset:a,direction:t,focusNode:n,focusOffset:r}:{anchorNode:n,anchorOffset:r,direction:t,focusNode:i,focusOffset:a}}function yx(e){return e.direction}function bx(e){let t=e.getRootNode();return rb(t)||cx(t)?t.activeElement:null}function xx(e){let t=e.activeElement;for(;t!==null&&t.shadowRoot!==null;){let e=t.shadowRoot.activeElement;if(e===null)break;t=e}return t}function Sx(e){let t=e.target;if(t!==null&&Cx(t)&&t.shadowRoot!==null&&typeof e.composedPath==`function`){let t=e.composedPath();if(t.length>0)return t[0]}return t}function Cx(e){return wx(e)&&e.nodeType===1}function wx(e){return typeof e==`object`&&!!e&&`nodeType`in e&&typeof e.nodeType==`number`}function Tx(e){return wx(e)&&e.nodeType===11}var Ex=/^(a|abbr|acronym|b|cite|code|del|em|i|ins|kbd|label|mark|output|q|ruby|s|samp|span|strong|sub|sup|time|u|tt|var|#text)$/i;function Dx(e){return!(!Cx(e)||!e.style.display.startsWith(`inline`))||Ex.test(e.nodeName)}var Ox=/^(address|article|aside|blockquote|canvas|dd|div|dl|dt|fieldset|figcaption|figure|footer|form|h1|h2|h3|h4|h5|h6|header|hr|li|main|nav|noscript|ol|p|pre|section|table|td|tfoot|ul|video)$/i;function kx(e){return(!Cx(e)||!e.style.display.startsWith(`inline`))&&Ox.test(e.nodeName)}function Ax(e){if(my(e)&&!e.isInline())return!0;if(!$(e)||$b(e))return!1;let t=e.getFirstChild(),n=t===null||Ey(t)||Z(t)||t.isInline();return!e.isInline()&&!1!==e.canBeEmpty()&&n}function jx(){return Jv()}function Mx(e=jx()){return e._config.dom||Ly}function Nx(e,t,n=jx()){let r=Mx(n).$getDOMSlot(e,t,n);return $(e)&&(Px(r)||X(344,e.getKey(),e.getType())),r}function Px(e){return e instanceof am}function Fx(e,t,n=jx()){return ib(Nx(e,t,n).element)}var Ix=new WeakMap,Lx=new Map;function Rx(e){if(!e._readOnly&&e.isEmpty())return Lx;e._readOnly||X(192);let t=Ix.get(e);return t||(t=function(e){let t=new Map;for(let[n,r]of e._nodeMap){let e=r.__type,i=t.get(e);i||(i=new Map,t.set(e,i)),i.set(n,r)}return t}(e),Ix.set(e,t)),t}function zx(e){let t=e.constructor.clone(e,Wy);return t.afterCloneFrom(e),t}function Bx(e){return(t=zx(e))[o_]=!0,t;var t}function Vx(e,t){let n=e.getAttribute(`data-lexical-indent`);if(n!==null){let e=parseInt(n,10);if(Number.isFinite(e)&&e>=0)return void t.setIndent(e)}let r=parseInt(e.style.paddingInlineStart,10)||0,i=Math.round(r/40);t.setIndent(i)}function Hx(e,t){let n=t.getAttribute(`dir`);return n===`ltr`||n===`rtl`?e.setDirection(n):e}function Ux(e,t){let n=t.style.textAlign;return n&&n in Xp?e.setFormat(n):e}function Wx(e,t){e.__lexicalUnmanaged=!0,t&&t.captureSelection!==void 0&&(e.__lexicalCapturedSelection=t.captureSelection)}function Gx(e){return!0===e.__lexicalUnmanaged}function Kx(e,t=jx()){let n=t.isEditable();e.contentEditable=n?`true`:`false`,n?e.__lexicalEditor=t:delete e.__lexicalEditor}function qx(e,t){let n=e;for(;n!=null;){if(!0===n.__lexicalCapturedSelection)return!0;if(Cx(n)&&n.hasAttribute(`data-lexical-slot`)||mb(n,t)!==void 0)return!1;n=Ub(n)}return!1}function Jx(e,t){return function(e,t){return Object.prototype.hasOwnProperty.call(e,t)}(e,t)&&e[t]!==l_[t]}var Yx=new WeakMap,Xx=Symbol(`lexical.synthesizedGetType`);function Zx(e){let t=Yx.get(e);if(t)return t;let n=e.prototype!=null&&em in e.prototype?e.prototype[em]():void 0,r=function(e){if(!(e===l_||e.prototype instanceof l_)){let t=`<unknown>`,n=`<unknown>`;try{t=e.getType()}catch{}try{Vy.version&&(n=JSON.parse(Vy.version))}catch{}X(290,e.name,t,n)}return e===py||e===dy||e===l_}(e),i=!r&&Jx(e,`getType`)?e.getType:void 0,a=i&&!(Xx in i)?i.call(e):void 0,o,s=a;if(n){if(a)o=n[a];else{for(let[e,t]of Object.entries(n))s=e,o=t;if(!o)for(let e of Object.getOwnPropertySymbols(n)){let t=n[e];if(t){o=t;break}}}}if(!r&&s){if(!Jx(e,`getType`)){let t=e,n=function(){return this===t?s:l_.getType.call(this)};n[Xx]=!0,e.getType=n}if(Jx(e,`clone`)||(e.clone=(t,n)=>{Uy(t);let r=new e;return n!==Wy&&r.afterCloneFrom(t),r}),Jx(e,`importJSON`)||(e.importJSON=o&&o.$importJSON||(t=>new e().updateFromJSON(t))),!Jx(e,`importDOM`)&&o){let{importDOM:t}=o;t&&(e.importDOM=()=>t)}}let c={klass:e,ownNodeConfig:o,ownNodeType:s};return Yx.set(e,c),c}function*Qx(e){for(let t=e;t&&(t===l_||u_(t.prototype));){let e=Zx(t);yield e,t=e.ownNodeConfig&&e.ownNodeConfig.extends||nS(t)}}function $x(e){let t=jx();return Wv(),new(t.resolveRegisteredNodeAfterReplacements(t.getRegisteredNode(e))).klass}var eS=(e,t)=>{let n=e;for(;n!=null&&!gy(n);){if(t(n))return n;n=n.getParent()}return null};function tS(e,t){let n=[],r=e.__first;for(;r!==null;){let e=t===null?db(r):t.get(r);e??X(174),n.push(r),r=e.__next}return n}function nS(e){let t=Object.getPrototypeOf(e);if(typeof t==`function`&&t!==Function.prototype)return t;let n=e.prototype&&Object.getPrototypeOf(e.prototype);return n?n.constructor:null}var rS=new Map;function iS(e){return $(e)||my(e)}function aS(e){return $(e)||my(e)}function oS(e){let t=e.getLatest();return aS(t)?t.__slotHost:null}function sS(e){let t=oS(e);if(t===null)return null;let n=db(t);return $(n)||my(n)||X(370),n}function cS(e){let t=sS(e);if(t===null)return null;let n=e.getLatest().__key;for(let[e,r]of uS(t))if(r===n)return e;return null}function lS(e){let t=e.getLatest();for(;t!==null;){if(oS(t)!==null)return t;t=t.getParent()}return null}function uS(e){let t=e.getLatest();return iS(t)&&t.__slots!==null?t.__slots:rS}function dS(e){return Array.from(uS(e).keys())}function fS(e,t){let n=uS(e).get(t);return n===void 0?null:db(n)}var pS=[`__proto__`,`constructor`,`prototype`],mS=Symbol(`slotMapOwner`);function hS(e){let t=e.__slots;return t!==null&&t[mS]===e||(t=new Map(t),t[mS]=e,e.__slots=t),t}var gS=new WeakMap,_S=[];function vS(e){for(let{ownNodeConfig:t}of Qx(e)){let e=t&&t.slots;if(e)return e}return _S}function yS(e){let t=``;for(let n of dS(e)){let r=fS(e,n);r!==null&&(t+=r.getTextContent())}return t}function bS(e,t,n){let r=n.get(e),i=n.get(t);return r===void 0?i===void 0?e<t?-1:+(e>t):1:i===void 0?-1:r-i}function xS(e){let t=e.__slots;if(t===null||t.size<2)return;let n=function(e){let t=gS.get(e);if(t===void 0){let n=vS(e),r=new Map;for(let t of n)pS.includes(t)&&X(371,e.name,t),r.has(t)&&X(372,e.name,t),r.set(t,r.size);t=r,gS.set(e,t)}return t}(e.constructor),r=null,i=!0;for(let e of t.keys()){if(r!==null&&bS(r,e,n)>0){i=!1;break}r=e}if(i)return;let a=Array.from(t).sort(([e],[t])=>bS(e,t,n));t.clear();for(let[e,n]of a)t.set(e,n)}function SS(e,t,n){t!==`__proto__`&&t!==`constructor`&&t!==`prototype`||X(373,t);let r=e.getLatest();if(r.__slots!==null&&r.__slots.get(t)===n.getLatest().__key)return r;(!$(n)&&!my(n)||n.isInline())&&X(374,n.__key);let i=e.getWritable(),a=hS(i),o=a.get(t);o!==void 0&&wS(o);let s=n.getWritable(),c=sS(s);if(c!==null){let e=cS(s);e!==null&&hS(c.getWritable()).delete(e),s.__slotHost=null}return sb(s),s.__slotHost=i.__key,a.set(t,s.__key),xS(i),function(){let e=jx();e._slotsUsed=!0,e._pendingEditorState&&(e._pendingEditorState._slotsUsed=!0)}(),i}function CS(e,t){let n=e.getWritable();if(n.__slots===null)return n;let r=n.__slots.get(t);return r!==void 0&&(wS(r),hS(n).delete(t)),n}function wS(e){let t=db(e);if(t===null)return;let n=t.getWritable();aS(n)||X(377,e),n.__slotHost=null,n.remove()}var TS={next:`previous`,previous:`next`},ES=class{origin;constructor(e){this.origin=e}[Symbol.iterator](){return ZS({hasNext:PS,initial:this.getAdjacentCaret(),map:e=>e,step:e=>e.getAdjacentCaret()})}getAdjacentCaret(){return zS(this.getNodeAtCaret(),this.direction)}getSiblingCaret(){return zS(this.origin,this.direction)}remove(){let e=this.getNodeAtCaret();return e&&e.remove(),this}replaceOrInsert(e,t){let n=this.getNodeAtCaret();return e.is(this.origin)||e.is(n)||(n===null?this.insert(e):n.replace(e,t)),this}splice(e,t,n=`next`){let r=n===this.direction?t:Array.from(t).reverse(),i=this,a=this.getParentAtCaret(),o=new Map;for(let t=i.getAdjacentCaret();t!==null&&o.size<e;t=t.getAdjacentCaret()){let e=t.origin.getWritable();o.set(e.getKey(),e)}for(let e of r){if(o.size>0){let t=i.getNodeAtCaret();if(t){if(o.delete(t.getKey()),o.delete(e.getKey()),!(t.is(e)||i.origin.is(e))){let n=e.getParent();n&&n.is(a)&&e.remove(),t.replace(e)}}else t===null&&X(263,Array.from(o).join(` `))}else i.insert(e);i=zS(e,this.direction)}for(let e of o.values())e.remove();return this}},DS=class e extends ES{type=`child`;getLatest(){let e=this.origin.getLatest();return e===this.origin?this:US(e,this.direction)}getParentCaret(e=`root`){return zS(AS(this.getParentAtCaret(),e),this.direction)}getFlipped(){let e=kS(this.direction);return zS(this.getNodeAtCaret(),e)||US(this.origin,e)}getParentAtCaret(){return this.origin}getChildCaret(){return this}isSameNodeCaret(t){return t instanceof e&&this.direction===t.direction&&this.origin.is(t.origin)}isSamePointCaret(e){return this.isSameNodeCaret(e)}},OS={root:gy,shadowRoot:$b};function kS(e){return TS[e]}function AS(e,t=`root`){return e===null||OS[t](e)?null:oS(e)===null?e:null}var jS=class e extends ES{type=`sibling`;getLatest(){let e=this.origin.getLatest();return e===this.origin?this:zS(e,this.direction)}getSiblingCaret(){return this}getParentAtCaret(){return this.origin.getParent()}getChildCaret(){return $(this.origin)?US(this.origin,this.direction):null}getParentCaret(e=`root`){return zS(AS(this.getParentAtCaret(),e),this.direction)}getFlipped(){let e=kS(this.direction);return zS(this.getNodeAtCaret(),e)||US(this.origin.getParentOrThrow(),e)}isSamePointCaret(t){return t instanceof e&&this.direction===t.direction&&this.origin.is(t.origin)}isSameNodeCaret(t){return(t instanceof e||t instanceof MS)&&this.direction===t.direction&&this.origin.is(t.origin)}},MS=class e extends ES{type=`text`;offset;constructor(e,t){super(e),this.offset=t}getLatest(){let e=this.origin.getLatest();return e===this.origin?this:BS(e,this.direction,this.offset)}getParentAtCaret(){return this.origin.getParent()}getChildCaret(){return null}getParentCaret(e=`root`){return zS(AS(this.getParentAtCaret(),e),this.direction)}getFlipped(){return BS(this.origin,kS(this.direction),this.offset)}isSamePointCaret(t){return t instanceof e&&this.direction===t.direction&&this.origin.is(t.origin)&&this.offset===t.offset}isSameNodeCaret(t){return(t instanceof jS||t instanceof e)&&this.direction===t.direction&&this.origin.is(t.origin)}getSiblingCaret(){return zS(this.origin,this.direction)}};function NS(e){return e instanceof MS}function PS(e){return e instanceof jS}function FS(e){return e instanceof DS}var IS={next:class extends MS{direction=`next`;getNodeAtCaret(){return this.origin.getNextSibling()}insert(e){return this.origin.insertAfter(e),this}},previous:class extends MS{direction=`previous`;getNodeAtCaret(){return this.origin.getPreviousSibling()}insert(e){return this.origin.insertBefore(e),this}}},LS={next:class extends jS{direction=`next`;getNodeAtCaret(){return this.origin.getNextSibling()}insert(e){return this.origin.insertAfter(e),this}},previous:class extends jS{direction=`previous`;getNodeAtCaret(){return this.origin.getPreviousSibling()}insert(e){return this.origin.insertBefore(e),this}}},RS={next:class extends DS{direction=`next`;getNodeAtCaret(){return this.origin.getFirstChild()}insert(e){return this.origin.splice(0,0,[e]),this}},previous:class extends DS{direction=`previous`;getNodeAtCaret(){return this.origin.getLastChild()}insert(e){return this.origin.splice(this.origin.getChildrenSize(),0,[e]),this}}};function zS(e,t){return e?new LS[t](e):null}function BS(e,t,n){return e?new IS[t](e,VS(e,n)):null}function VS(e,t,n=`error`){let r=e.getTextContentSize(),i=t===`next`?r:t===`previous`?0:t;return(i<0||i>r)&&(n!==`clamp`&&wp(284,String(t),String(r),e.getKey()),i=i<0?0:r),i}function HS(e,t){return new qS(e,t)}function US(e,t){return $(e)?new RS[t](e):null}function WS(e){return e&&e.getChildCaret()||e}function GS(e){return e&&WS(e.getAdjacentCaret())}var KS=class e{type=`node-caret-range`;direction;anchor;focus;constructor(e,t,n){this.anchor=e,this.focus=t,this.direction=n}getLatest(){let t=this.anchor.getLatest(),n=this.focus.getLatest();return t===this.anchor&&n===this.focus?this:new e(t,n,this.direction)}isCollapsed(){return this.anchor.isSamePointCaret(this.focus)}getTextSlices(){let e=e=>{let t=this[e].getLatest();return NS(t)?function(e,t){let{direction:n,origin:r}=e;return HS(e,VS(r,t===`focus`?kS(n):n)-e.offset)}(t,e):null},t=e(`anchor`),n=e(`focus`);if(t&&n){let{caret:e}=t,{caret:r}=n;if(e.isSameNodeCaret(r))return[HS(e,r.offset-e.offset),null]}return[t,n]}iterNodeCarets(e=`root`){let t=NS(this.anchor)?this.anchor.getSiblingCaret():this.anchor.getLatest(),n=this.focus.getLatest(),r=NS(n),i=t=>t.isSameNodeCaret(n)?null:GS(t)||t.getParentCaret(e);return ZS({hasNext:e=>e!==null&&!(r&&n.isSameNodeCaret(e)),initial:t.isSameNodeCaret(n)?null:i(t),map:e=>e,step:i})}[Symbol.iterator](){return this.iterNodeCarets(`root`)}},qS=class{type=`slice`;caret;distance;constructor(e,t){this.caret=e,this.distance=t}getSliceIndices(){let{distance:e,caret:{offset:t}}=this,n=t+e;return n<t?[n,t]:[t,n]}getTextContent(){let[e,t]=this.getSliceIndices();return this.caret.origin.getTextContent().slice(e,t)}getTextContentSize(){return Math.abs(this.distance)}removeTextSlice(){let{caret:{origin:e,direction:t}}=this,[n,r]=this.getSliceIndices(),i=e.getTextContent();return BS(e.setTextContent(i.slice(0,n)+i.slice(r)),t,n)}};function JS(e){return XS(e,zS(vb(),e.direction))}function YS(e){return XS(e,e)}function XS(e,t){return e.direction!==t.direction&&X(265),new KS(e,t,e.direction)}function ZS(e){let{initial:t,hasNext:n,step:r,map:i}=e,a=t;return{[Symbol.iterator](){return this},next(){if(!n(a))return{done:!0,value:void 0};let e={done:!1,value:i(a)};return a=r(a),e}}}function QS(e,t){let n=nC(e.origin,t.origin);switch(n===null&&X(275,e.origin.getKey(),t.origin.getKey()),n.type){case`same`:{let n=e.type===`text`,r=t.type===`text`;return n&&r?function(e,t){return Math.sign(e-t)}(e.offset,t.offset):e.type===t.type?0:n?-1:r?1:e.type===`child`?-1:1}case`ancestor`:return e.type===`child`?-1:1;case`descendant`:return t.type===`child`?1:-1;case`branch`:return $S(n)}}function $S(e){let{a:t,b:n}=e,r=t.__key,i=n.__key,a=t,o=n;for(;a&&o;a=a.getNextSibling(),o=o.getNextSibling()){if(a.__key===i)return-1;if(o.__key===r)return 1}return a===null?1:-1}function eC(e,t){return t.is(e)}function tC(e){return $(e)?[e.getLatest(),null]:[e.getParent(),e.getLatest()]}function nC(e,t){if(e.is(t))return{commonAncestor:e,type:`same`};let n=new Map;for(let[t,r]=tC(e);t;r=t,t=t.getParent())n.set(t,r);for(let[r,i]=tC(t);r;i=r,r=r.getParent()){let a=n.get(r);if(a!==void 0)return a===null?(eC(e,r)||X(276),{commonAncestor:r,type:`ancestor`}):i===null?(eC(t,r)||X(277),{commonAncestor:r,type:`descendant`}):(($(a)||eC(e,a))&&($(i)||eC(t,i))&&r.is(a.getParent())&&r.is(i.getParent())||X(278),{a,b:i,commonAncestor:r,type:`branch`})}return null}function rC(e,t){let{type:n,key:r,offset:i}=e,a=rx(e.key);return n===`text`?(Z(a)||X(266,a.getType(),r),BS(a,t,i)):($(a)||X(267,a.getType(),r),gC(a,e.offset,t))}function iC(e,t){let{origin:n,direction:r}=t,i=r===`next`;NS(t)?e.set(n.getKey(),t.offset,`text`):PS(t)?Z(n)?e.set(n.getKey(),VS(n,r),`text`):e.set(n.getParentOrThrow().getKey(),n.getIndexWithinParent()+ +!!i,`element`):(FS(t)&&$(n)||X(268),e.set(n.getKey(),i?0:n.getChildrenSize(),`element`))}function aC(e){let t=vv(),n=Q(t)?t:hv();return oC(n,e),yb(n),n}function oC(e,t){iC(e.anchor,t.anchor),iC(e.focus,t.focus)}function sC(e){let{anchor:t,focus:n}=e,r=rC(t,`next`),i=rC(n,`next`),a=QS(r,i)<=0?`next`:`previous`;return XS(mC(r,a),mC(i,a))}function cC(e){let{direction:t,origin:n}=e,r=zS(n,kS(t)).getNodeAtCaret();return r?zS(r,t):US(n.getParentOrThrow(),t)}function lC(e,t=`root`){let n=[e];for(let r=FS(e)?e.getParentCaret(t):e.getSiblingCaret();r!==null;r=r.getParentCaret(t))n.push(cC(r));return n}function uC(e){return!!e&&e.origin.isAttached()}function dC(e,t=`removeEmptySlices`){if(e.isCollapsed())return e;let n=`root`,r=`next`,i=t,a=hC(e,r),o=lC(a.anchor,n),s=lC(a.focus.getFlipped(),n),c=new Set,l=[];for(let e of a.iterNodeCarets(n))if(FS(e))c.add(e.origin.getKey());else if(PS(e)){let{origin:t}=e;$(t)&&!c.has(t.getKey())||l.push(t)}let u=new Set;for(let e of l){let t=e.getParent();t===null||c.has(t.getKey())||u.add(t),sb(e)}for(let e of u)!e.canBeEmpty()&&!$b(e)&&e.isEmpty()&&e.isAttached()&&e.remove();for(let e of a.getTextSlices()){if(!e)continue;let{origin:t}=e.caret,n=t.getTextContentSize(),a=cC(zS(t,r)),c=t.getMode();if(Math.abs(e.distance)===n&&i===`removeEmptySlices`||c===`token`&&e.distance!==0)a.remove();else if(e.distance!==0){i=`removeEmptySlices`;let t=e.removeTextSlice(),n=e.caret.origin;if(c===`segmented`){let e=t.origin,n=F_(e.getTextContent()).setStyle(e.getStyle()).setFormat(e.getFormat());a.replaceOrInsert(n),t=BS(n,r,t.offset)}n.is(o[0].origin)&&(o[0]=t),n.is(s[0].origin)&&(s[0]=t.getFlipped())}}let d,f;for(let e of o)if(uC(e)){d=fC(e);break}for(let e of s)if(uC(e)){f=fC(e);break}let p=function(e,t,n){if(!e||!t)return null;let r=e.getParentAtCaret(),i=t.getParentAtCaret();if(!r||!i)return null;let a=r.getParents().reverse();a.push(r);let o=i.getParents().reverse();o.push(i);let s=Math.min(a.length,o.length),c;for(c=0;c<s&&a[c]===o[c];c++);let l=(e,t)=>{let n;for(let r=c;r<e.length;r++){let i=e[r];if($b(i))return;!n&&t(i)&&(n=i)}return n},u=l(a,Ax),d=u&&l(o,e=>n.has(e.getKey())&&Ax(e));return d&&dS(d).length>0?null:u&&d?[u,d]:null}(d,f,c);if(p){let[e,t]=p;US(e,`previous`).splice(0,t.getChildren());let n=t.getParent();for(t.remove(!0);n&&n.isEmpty();){let e=n;n=n.getParent(),e.remove(!0)}}else if(f){let e=function(e){if(FS(e)){let t=e.origin;if(Ax(t))return t}else{let t=e.getParentAtCaret();if(t&&Ax(t))return t}return null}(f),t=e&&e.getParent(),n=e&&e.getParents().findLast(Qb);if(e&&t&&!gy(t)&&e.isEmpty()&&c.has(e.getKey())&&dS(e).length===0&&(!n||c.has(n.getKey()))){e.remove(!0);let n=t;for(;n&&!gy(n)&&n.isEmpty();){let e=n.getParent();if(e&&gy(e)&&e.getChildrenSize()<=1)break;let t=n;n=e,t.remove(!0)}}}let m=[d,f,...o,...s].find(uC);if(m)return YS(mC(fC(m),e.direction));X(269,JSON.stringify(o.map(e=>e.origin.__key)))}function fC(e){let t=function(e){let t=e;for(;FS(t);){let e=GS(t);if(!FS(e))break;t=e}return t}(e.getLatest()),{direction:n}=t;if(Z(t.origin))return NS(t)?t:BS(t.origin,n,n);let r=t.getAdjacentCaret();return PS(r)&&Z(r.origin)?BS(r.origin,n,kS(n)):t}function pC(e){return NS(e)&&e.offset!==VS(e.origin,e.direction)}function mC(e,t){return e.direction===t?e:e.getFlipped()}function hC(e,t){return e.direction===t?e:XS(mC(e.focus,t),mC(e.anchor,t))}function gC(e,t,n){let r=US(e,`next`);for(let e=0;e<t;e++){let e=r.getAdjacentCaret();if(e===null)break;r=e}return mC(r,n)}function _C(e){let{origin:t,offset:n,direction:r}=e;if(n===VS(t,r))return e.getSiblingCaret();if(n===VS(t,kS(r)))return cC(e.getSiblingCaret());let[i]=t.splitText(n);return Z(i)||X(281),mC(zS(i,`next`),r)}function vC(e,t){return!0}function yC(e,{$copyElementNode:t=ex,$splitTextPointCaretNext:n=_C,rootMode:r=`shadowRoot`,$shouldSplit:i=vC,removeEmptyDestination:a=!1}={}){if(NS(e))return n(e);let o=e.getParentCaret(r);if(o){let{origin:n}=o;if(FS(e)){let e=cC(o);if(a&&n.isEmpty())return n.remove(),e;if(!n.canBeEmpty()||!i(n,`first`))return e}let r=function(e){let t=[];for(let n=e.getAdjacentCaret();n;n=n.getAdjacentCaret())t.push(n.origin);return t}(e);(r.length>0||!a&&n.canBeEmpty()&&i(n,`last`))&&o.insert(t(n).splice(0,0,r))}return o}function bC(e,t,n){let r=mC(t,`next`);NS(r)&&(r.offset===0?r=zS(r.origin,`previous`).getFlipped():r.offset===r.origin.getTextContentSize()&&(r=zS(r.origin,`next`))),r.origin.is(e)&&(PS(r)||X(342,e.getKey(),e.getType()),r=cC(r)),(e.is(r.getNodeAtCaret())||e.is(r.getFlipped().getNodeAtCaret()))&&e.remove(!0);for(let e=r;e;e=yC(e,n))r=e;return NS(r)&&X(283),r.insert(e.isInline()?My().append(e):e),mC(zS(e.getLatest(),`next`),t.direction)}function xC(e){return e}function SC(e){return e}function CC(e,t){if(!t||e===t)return e;for(let n in t)if(e[n]!==t[n])return{...e,...t};return e}function wC(...e){let t=[];for(let n of e)if(n&&typeof n==`string`)for(let[e]of n.matchAll(/\S+/g))t.push(e);return t}function TC(e,...t){let n=wC(...t);n.length>0&&e.classList.add(...n)}function EC(...e){return()=>{for(let t=e.length-1;t>=0;t--)e[t]();e.length=0}}var DC=Tp?q.useLayoutEffect:q.useEffect,OC={tag:f_};function kC({initialConfig:e,children:t}){let n=(0,q.useMemo)(()=>{let{theme:t,namespace:n,nodes:r,onError:i,onWarn:a,editorState:o,html:s}=e,c=Sp(null,t),l=Ry({editable:e.editable,html:s,namespace:n,nodes:r,onError:e=>i(e,l),...a?{onWarn:e=>a(e,l)}:{},theme:t});return function(e,t){if(t!==null){if(t===void 0)e.update(()=>{let t=vb();if(t.isEmpty()){let n=My();t.append(n);let r=e.getRootElement(),i=Tp&&r!==null?bx(r):null;(vv()!==null||i!==null&&i===r)&&n.select()}},OC);else if(t!==null)switch(typeof t){case`string`:{let n=e.parseEditorState(t);e.setEditorState(n,OC);break}case`object`:e.setEditorState(t,OC);break;case`function`:e.update(()=>{vb().isEmpty()&&t(e)},OC)}}}(l,o),[l,c]},[]);return DC(()=>{let t=e.editable,[r]=n;r.setEditable(t===void 0||t)},[]),(0,Y.jsx)(xp.Provider,{value:n,children:t})}function AC(){return vb().getTextContent()}function jC(e,t=!0){if(e)return!1;let n=AC();return t&&(n=n.trim()),n===``}function MC(e){if(!jC(e,!1))return!1;let t=vb().getChildren(),n=t.length;if(n>1)return!1;for(let e=0;e<n;e++){let n=t[e];if(my(n))return!1;if($(n)){if(!Ny(n)||n.__indent!==0)return!1;let t=n.getChildren(),r=t.length;for(let n=0;n<r;n++){let n=t[e];if(!Z(n))return!1}}}return!0}function NC(e){return()=>MC(e)}var PC=Tp?q.useLayoutEffect:q.useEffect;function FC({editor:e,ariaActiveDescendant:t,ariaAutoComplete:n,ariaControls:r,ariaDescribedBy:i,ariaErrorMessage:a,ariaExpanded:o,ariaInvalid:s,ariaLabel:c,ariaLabelledBy:l,ariaMultiline:u,ariaOwns:d,ariaRequired:f,autoCapitalize:p,className:m,id:h,role:g=`textbox`,spellCheck:_=!0,style:v,tabIndex:y,"data-testid":b,...x},S){let[C,w]=(0,q.useState)(e.isEditable()),T=(0,q.useCallback)(t=>{t&&t.ownerDocument&&t.ownerDocument.defaultView?e.setRootElement(t):e.setRootElement(null)},[e]),E=(0,q.useMemo)(()=>function(...e){return t=>{for(let n of e)typeof n==`function`?n(t):n!=null&&(n.current=t)}}(S,T),[T,S]);return PC(()=>(w(e.isEditable()),e.registerEditableListener(e=>{w(e)})),[e]),(0,Y.jsx)(`div`,{"aria-activedescendant":C?t:void 0,"aria-autocomplete":C?n:`none`,"aria-controls":C?r:void 0,"aria-describedby":i,...a==null?{}:{"aria-errormessage":a},"aria-expanded":C&&g===`combobox`?!!o:void 0,...s==null?{}:{"aria-invalid":s},"aria-label":c,"aria-labelledby":l,"aria-multiline":u,"aria-owns":C?d:void 0,"aria-readonly":!C||void 0,"aria-required":f,autoCapitalize:p,className:m,contentEditable:C,"data-testid":b,id:h,ref:E,role:g,spellCheck:_,style:v,tabIndex:y??(C?void 0:-1),...x})}var IC=(0,q.forwardRef)(FC);function LC(e){return e.read(`latest`,NC(e.isComposing()))}var RC=(0,q.forwardRef)(zC);function zC(e,t){let{placeholder:n,...r}=e,[i]=Cp();return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(IC,{editor:i,...r,ref:t}),n!=null&&(0,Y.jsx)(BC,{editor:i,content:n})]})}function BC({content:e,editor:t}){let n=function(e){let[t,n]=(0,q.useState)(()=>LC(e));return PC(()=>{function t(){let t=LC(e);n(t)}return t(),EC(e.registerUpdateListener(()=>{t()}),e.registerEditableListener(()=>{t()}))},[e]),t}(t),[r,i]=(0,q.useState)(t.isEditable());if((0,q.useLayoutEffect)(()=>(i(t.isEditable()),t.registerEditableListener(e=>{i(e)})),[t]),!n)return null;let a=null;return typeof e==`function`?a=e(r):e!==null&&(a=e),a===null?null:(0,Y.jsx)(`div`,{"aria-hidden":!0,children:a})}var VC=class extends q.Component{state={hasError:!1};static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(e,t){this.props.onError(e instanceof Error?e:Error(String(e),{cause:e}),t)}render(){return this.state.hasError?this.props.fallback:this.props.children}};function HC({children:e,fallback:t,onError:n}){return(0,Y.jsx)(VC,{fallback:t===void 0?(0,Y.jsx)(`div`,{style:{border:`1px solid #f00`,color:`#f00`,padding:`8px`},children:`An error was thrown.`}):t,onError:n,children:e})}function UC(e){let t=jx().getElementByKey(e.getKey());if(t===null)return null;let n=t.ownerDocument.defaultView;return n===null?null:n.getComputedStyle(t)}function WC(e){return UC(gy(e)?e:e.getParentOrThrow())}function GC(e,t,n=`self`){let r=e.getStartEndPoints();if(t.isSelected(e)&&!tb(t)&&r!==null){let[i,a]=r,o=e.isBackward(),s=i.getNode(),c=a.getNode(),l=t.is(s),u=t.is(c);if(l||u){let[r,i]=$_(e),a=s.is(c),l=t.is(o?c:s),u=t.is(o?s:c),d,f=0;a?(f=r>i?i:r,d=r>i?r:i):l?(f=o?i:r,d=void 0):u&&(f=0,d=o?r:i);let p=t.__text.slice(f,d);p!==t.__text&&(n===`clone`&&(t=Bx(t)),t.__text=p)}}return t}function KC(e){let t=qC(e);return t!==null&&t.writingMode===`vertical-rl`}function qC(e){let t=e.anchor.getNode();return $(t)?UC(t):WC(t)}function JC(e,t){let n=KC(e)?!t:t;XC(e)&&(n=!n);let r=rC(e.focus,n?`previous`:`next`);if(pC(r))return!1;if(NS(r)&&!z_(r.origin)&&r.origin.isUnmergeable()){let e=r.getNodeAtCaret();if(Z(e)&&!z_(e))return!0}for(let e of JS(r)){if(FS(e))return!e.origin.isInline();if(!$(e.origin)){if(my(e.origin))return!0;break}}return!1}function YC(e,t,n,r){e.modify(t?`extend`:`move`,n,r)}function XC(e){let t=qC(e);return t!==null&&t.direction===`rtl`}function ZC(e,t,n){let r=XC(e),i;i=KC(e)||r?!n:n,YC(e,t,i,`character`)}function QC(e,t){return e!==null&&Object.getPrototypeOf(e).constructor.name===t.name}var $C=Symbol.for(`preact-signals`);function ew(){if(aw>1)return void aw--;let e,t=!1;for(function(){let e=iw;for(iw=void 0;e!==void 0;)e.S.v===e.v&&(e.S.i=e.i),e=e.o}();nw!==void 0;){let n=nw;for(nw=void 0,ow++;n!==void 0;){let r=n.u;if(n.u=void 0,n.f&=-3,!(8&n.f)&&fw(n))try{n.c()}catch(n){t||=(e=n,!0)}n=r}}if(ow=0,aw--,t)throw e}var tw,nw;function rw(e){let t=tw;tw=void 0;try{return e()}finally{tw=t}}var iw,aw=0,ow=0,sw=0,cw=0;function lw(e){if(tw===void 0)return;let t=e.n;return t===void 0||t.t!==tw?(t={i:0,S:e,p:tw.s,n:void 0,t:tw,e:void 0,x:void 0,r:t},tw.s!==void 0&&(tw.s.n=t),tw.s=t,e.n=t,32&tw.f&&e.S(t),t):t.i===-1?(t.i=0,t.n!==void 0&&(t.n.p=t.p,t.p!==void 0&&(t.p.n=t.n),t.p=tw.s,t.n=void 0,tw.s.n=t,tw.s=t),t):void 0}function uw(e,t){this.v=e,this.i=0,this.n=void 0,this.t=void 0,this.l=0,this.W=t?.watched,this.Z=t?.unwatched,this.name=t?.name}function dw(e,t){return new uw(e,t)}function fw(e){for(let t=e.s;t!==void 0;t=t.n)if(t.S.i!==t.i||!t.S.h()||t.S.i!==t.i)return!0;return!1}function pw(e){for(let t=e.s;t!==void 0;t=t.n){let n=t.S.n;if(n!==void 0&&(t.r=n),t.S.n=t,t.i=-1,t.n===void 0){e.s=t;break}}}function mw(e){let t,n=e.s;for(;n!==void 0;){let e=n.p;n.i===-1?(n.S.U(n),e!==void 0&&(e.n=n.n),n.n!==void 0&&(n.n.p=e)):t=n,n.S.n=n.r,n.r!==void 0&&(n.r=void 0),n=e}e.s=t}function hw(e,t){uw.call(this,void 0),this.x=e,this.s=void 0,this.g=cw-1,this.f=4,this.W=t?.watched,this.Z=t?.unwatched,this.name=t?.name}function gw(e){let t=e.m;if(e.m=void 0,typeof t==`function`){aw++;let n=tw;tw=void 0;try{t()}catch(t){throw e.f&=-2,e.f|=8,_w(e),t}finally{tw=n,ew()}}}function _w(e){for(let t=e.s;t!==void 0;t=t.n)t.S.U(t);e.x=void 0,e.s=void 0,gw(e)}function vw(e){if(tw!==this)throw Error(`Out-of-order effect`);mw(this),tw=e,this.f&=-2,8&this.f&&_w(this),ew()}function yw(e,t){this.x=e,this.m=void 0,this.s=void 0,this.u=void 0,this.f=32,this.name=t?.name}function bw(e,t){let n=new yw(e,t);try{n.c()}catch(e){throw n.d(),e}let r=n.d.bind(n);return r[Symbol.dispose]=r,r}uw.prototype.brand=$C,uw.prototype.h=function(){return!0},uw.prototype.S=function(e){let t=this.t;t!==e&&e.e===void 0&&(e.x=t,this.t=e,t===void 0?rw(()=>{var e;(e=this.W)==null||e.call(this)}):t.e=e)},uw.prototype.U=function(e){if(this.t!==void 0){let t=e.e,n=e.x;t!==void 0&&(t.x=n,e.e=void 0),n!==void 0&&(n.e=t,e.x=void 0),e===this.t&&(this.t=n,n===void 0&&rw(()=>{var e;(e=this.Z)==null||e.call(this)}))}},uw.prototype.subscribe=function(e){return bw(()=>{let t=this.value,n=tw;tw=void 0;try{e(t)}finally{tw=n}},{name:`sub`})},uw.prototype.valueOf=function(){return this.value},uw.prototype.toString=function(){return this.value+``},uw.prototype.toJSON=function(){return this.value},uw.prototype.peek=function(){let e=tw;tw=void 0;try{return this.value}finally{tw=e}},Object.defineProperty(uw.prototype,"value",{get(){let e=lw(this);return e!==void 0&&(e.i=this.i),this.v},set(e){if(e!==this.v){if(ow>100)throw Error(`Cycle detected`);(function(e){aw!==0&&ow===0&&e.l!==sw&&(e.l=sw,iw={S:e,v:e.v,i:e.i,o:iw})})(this),this.v=e,this.i++,cw++,aw++;try{for(let e=this.t;e!==void 0;e=e.x)e.t.N()}finally{ew()}}}}),hw.prototype=new uw,hw.prototype.h=function(){if(this.f&=-3,1&this.f)return!1;if((36&this.f)==32||(this.f&=-5,this.g===cw))return!0;if(this.g=cw,this.f|=1,this.i>0&&!fw(this))return this.f&=-2,!0;let e=tw;try{pw(this),tw=this;let e=this.x();(16&this.f||this.v!==e||this.i===0)&&(this.v=e,this.f&=-17,this.i++)}catch(e){this.v=e,this.f|=16,this.i++}return tw=e,mw(this),this.f&=-2,!0},hw.prototype.S=function(e){if(this.t===void 0){this.f|=36;for(let e=this.s;e!==void 0;e=e.n)e.S.S(e)}uw.prototype.S.call(this,e)},hw.prototype.U=function(e){if(this.t!==void 0&&(uw.prototype.U.call(this,e),this.t===void 0)){this.f&=-33;for(let e=this.s;e!==void 0;e=e.n)e.S.U(e)}},hw.prototype.N=function(){if(!(2&this.f)){this.f|=6;for(let e=this.t;e!==void 0;e=e.x)e.t.N()}},Object.defineProperty(hw.prototype,"value",{get(){if(1&this.f)throw Error(`Cycle detected`);let e=lw(this);if(this.h(),e!==void 0&&(e.i=this.i),16&this.f)throw this.v;return this.v}}),yw.prototype.c=function(){let e=this.S();try{if(8&this.f||this.x===void 0)return;let e=this.x();typeof e==`function`&&(this.m=e)}finally{e()}},yw.prototype.S=function(){if(1&this.f)throw Error(`Cycle detected`);this.f|=1,this.f&=-9,gw(this),pw(this),aw++;let e=tw;return tw=this,vw.bind(this,e)},yw.prototype.N=function(){2&this.f||(this.f|=2,this.u=nw,nw=this)},yw.prototype.d=function(){this.f|=8,1&this.f||_w(this)},yw.prototype.dispose=function(){this.d()};function xw(e){return(typeof e.nodes==`function`?e.nodes():e.nodes)||[]}function Sw(e,t){let n;return dw(e(),{unwatched(){n&&=(n(),void 0)},watched(){this.value=e(),n=t(this)}})}function Cw(e,...t){let n=new URL(`https://lexical.dev/docs/error`),r=new URLSearchParams;r.append(`code`,e);for(let e of t)r.append(`v`,e);throw n.search=r.toString(),Error(`Minified Lexical error #${e}; visit ${n.toString()} for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`)}var ww;try{ww=`0.49.0+prod.esm`}catch{}var Tw=ww??`"<unknown>+source"`,Ew=new Set([`__proto__`,`constructor`,`prototype`]);function Dw(e,t){if(e&&t&&!Array.isArray(t)&&typeof e==`object`&&typeof t==`object`){let n=e,r=t;for(let e in r)!Ew.has(e)&&Object.prototype.hasOwnProperty.call(r,e)&&(n[e]=Dw(n[e],r[e]));return e}return t}var Ow=0,kw=1,Aw=2,jw=3,Mw=4,Nw=5,Pw=6,Fw=7;function Iw(e){return e.id===Ow}function Lw(e){return e.id===Aw}function Rw(e){return function(e){return e.id===kw}(e)||Cw(305,String(e.id),String(kw)),Object.assign(e,{id:Aw})}var zw=new Set,Bw=class{builder;configs;_dependency;_peerNameSet;extension;state;_signal;constructor(e,t){this.builder=e,this.extension=t,this.configs=new Set,this.state={id:Ow}}mergeConfigs(){let e=this.extension.config||{},t=this.extension.mergeConfig?this.extension.mergeConfig.bind(this.extension):CC;for(let n of this.configs)e=t(e,n);return e}init(e){let t=this.state;Lw(t)||Cw(306,String(t.id));let n={getDependency:this.getInitDependency.bind(this),getDirectDependentNames:this.getDirectDependentNames.bind(this),getPeer:this.getInitPeer.bind(this),getPeerNameSet:this.getPeerNameSet.bind(this)},r={...n,getDependency:this.getDependency.bind(this),getInitResult:this.getInitResult.bind(this),getPeer:this.getPeer.bind(this)},i=function(e,t,n){return Object.assign(e,{config:t,id:jw,registerState:n})}(t,this.mergeConfigs(),n),a;this.state=i,this.extension.init&&(a=this.extension.init(e,i.config,n)),this.state=function(e,t,n){return Object.assign(e,{id:Mw,initResult:t,registerState:n})}(i,a,r)}build(e){let t=this.state,n;t.id!==Mw&&Cw(307,String(t.id),String(Nw)),this.extension.build&&(n=this.extension.build(e,t.config,t.registerState));let r={...t.registerState,getOutput:()=>n,getSignal:this.getSignal.bind(this)};this.state=function(e,t,n){return Object.assign(e,{id:Nw,output:t,registerState:n})}(t,n,r)}register(e,t){this._signal=t;let n=this.state;n.id!==Nw&&Cw(308,String(n.id),String(Nw));let r=this.extension.register&&this.extension.register(e,n.config,n.registerState);return this.state=function(e){return Object.assign(e,{id:Pw})}(n),()=>{let e=this.state;e.id!==Fw&&Cw(309,String(n.id),String(Fw)),this.state=function(e){return Object.assign(e,{id:Nw})}(e),r&&r()}}afterRegistration(e){let t=this.state,n;return t.id!==Pw&&Cw(310,String(t.id),String(Pw)),this.extension.afterRegistration&&(n=this.extension.afterRegistration(e,t.config,t.registerState)),this.state=function(e){return Object.assign(e,{id:Fw})}(t),n}getSignal(){return this._signal===void 0&&Cw(311),this._signal}getInitResult(){this.extension.init===void 0&&Cw(312,this.extension.name);let e=this.state;return function(e){return e.id>=Mw}(e)||Cw(313,String(e.id),String(Mw)),e.initResult}getInitPeer(e){let t=this.builder.extensionNameMap.get(e);return t?t.getExtensionInitDependency():void 0}getExtensionInitDependency(){let e=this.state;return function(e){return e.id>=jw}(e)||Cw(314,String(e.id),String(jw)),{config:e.config}}getPeer(e){let t=this.builder.extensionNameMap.get(e);return t?t.getExtensionDependency():void 0}getInitDependency(e){let t=this.builder.getExtensionRep(e);return t===void 0&&Cw(315,this.extension.name,e.name),t.getExtensionInitDependency()}getDependency(e){let t=this.builder.getExtensionRep(e);return t===void 0&&Cw(315,this.extension.name,e.name),t.getExtensionDependency()}getState(){let e=this.state;return function(e){return e.id>=Fw}(e)||Cw(316,String(e.id),String(Fw)),e}getDirectDependentNames(){return this.builder.incomingEdges.get(this.extension.name)||zw}getPeerNameSet(){let e=this._peerNameSet;return e||(e=new Set((this.extension.peerDependencies||[]).map(([e])=>e)),this._peerNameSet=e),e}getExtensionDependency(){if(!this._dependency){let e=this.state;(function(e){return e.id>=Nw})(e)||Cw(317,this.extension.name),this._dependency={config:e.config,init:e.initResult,output:e.output}}return this._dependency}},Vw={tag:f_};function Hw(){let e=vb();e.isEmpty()&&e.append(My())}var Uw=xC({config:SC({setOptions:Vw,updateOptions:Vw}),init:({$initialEditorState:e=Hw})=>({$initialEditorState:e,initialized:!1}),afterRegistration(e,{updateOptions:t,setOptions:n},r){let i=r.getInitResult();if(!i.initialized){i.initialized=!0;let{$initialEditorState:r}=i;if(by(r))e.setEditorState(r,n);else if(typeof r==`function`)e.update(()=>{r(e)},t);else if(r&&(typeof r==`string`||typeof r==`object`)){let t=e.parseEditorState(r);e.setEditorState(t,n)}}return()=>{}},name:`@lexical/extension/InitialState`,nodes:[hy,E_,Cy,L_,Ay]}),Ww=Symbol.for(`@lexical/extension/LexicalBuilder`);function Gw(){}function Kw(e){throw e}function qw(e){return Array.isArray(e)?e:[e]}var Jw=Tw,Yw=class e{roots;extensionNameMap;outgoingConfigEdges;incomingEdges;conflicts;_sortedExtensionReps;PACKAGE_VERSION;constructor(e){this.outgoingConfigEdges=new Map,this.incomingEdges=new Map,this.extensionNameMap=new Map,this.conflicts=new Map,this.PACKAGE_VERSION=Jw,this.roots=e;for(let t of e)this.addExtension(t)}static fromExtensions(t){let n=[qw(Uw)];for(let e of t)n.push(qw(e));return new e(n)}static maybeFromEditor(t){let n=t[Ww];return n&&(n.PACKAGE_VERSION!==Jw&&Cw(292,n.PACKAGE_VERSION,Jw),n instanceof e||Cw(293)),n}static fromEditor(t){let n=e.maybeFromEditor(t);return n===void 0&&Cw(294),n}constructEditor(){let{$initialEditorState:e,onError:t,onWarn:n,...r}=this.buildCreateEditorArgs(),i=Object.assign(Ry({...r,...t?{onError:e=>{t(e,i)}}:{},...n?{onWarn:e=>{n(e,i)}}:{}}),{[Ww]:this});for(let e of this.sortedExtensionReps())e.build(i);return i}buildEditor(){let e=Gw;function t(){try{e()}finally{e=Gw}}let n=Object.assign(this.constructEditor(),{dispose:t,[Symbol.dispose]:t});return e=EC(this.registerEditor(n),()=>n.setRootElement(null)),n}hasExtensionByName(e){return this.extensionNameMap.has(e)}getExtensionRep(e){let t=this.extensionNameMap.get(e.name);if(t)return t.extension!==e&&Cw(295,e.name),t}addEdge(e,t,n){let r=this.outgoingConfigEdges.get(e);r?r.set(t,n):this.outgoingConfigEdges.set(e,new Map([[t,n]]));let i=this.incomingEdges.get(t);i?i.add(e):this.incomingEdges.set(t,new Set([e]))}addExtension(e){this._sortedExtensionReps!==void 0&&Cw(296);let[t]=qw(e);typeof t.name!=`string`&&Cw(297,typeof t.name);let n=this.extensionNameMap.get(t.name);if(n!==void 0&&n.extension!==t&&Cw(298,t.name),!n){n=new Bw(this,t),this.extensionNameMap.set(t.name,n);let e=this.conflicts.get(t.name);typeof e==`string`&&Cw(299,t.name,e);for(let e of t.conflictsWith||[])this.extensionNameMap.has(e)&&Cw(299,t.name,e),this.conflicts.set(e,t.name);for(let e of t.dependencies||[]){let n=qw(e);this.addEdge(t.name,n[0].name,n.slice(1)),this.addExtension(n)}for(let[e,n]of t.peerDependencies||[])this.addEdge(t.name,e,n?[n]:[])}}sortedExtensionReps(){if(this._sortedExtensionReps)return this._sortedExtensionReps;let e=[],t=(n,r)=>{let i=n.state;if(Lw(i))return;let a=n.extension.name;var o;Iw(i)||Cw(300,a,r||`[unknown]`),Iw(o=i)||Cw(304,String(o.id),String(Ow)),i=Object.assign(o,{id:kw}),n.state=i;let s=this.outgoingConfigEdges.get(a);if(s)for(let e of s.keys()){let n=this.extensionNameMap.get(e);n&&t(n,a)}i=Rw(i),n.state=i,e.push(n)};for(let e of this.extensionNameMap.values())Iw(e.state)&&t(e);for(let t of e)for(let[e,n]of this.outgoingConfigEdges.get(t.extension.name)||[])if(n.length>0){let t=this.extensionNameMap.get(e);if(t)for(let e of n)t.configs.add(e)}for(let[e,...t]of this.roots)if(t.length>0){let n=this.extensionNameMap.get(e.name);n===void 0&&Cw(301,e.name);for(let e of t)n.configs.add(e)}return this._sortedExtensionReps=e,this._sortedExtensionReps}registerEditor(e){let t=this.sortedExtensionReps(),n=new AbortController,r=[()=>n.abort()],i=n.signal;for(let n of t){let t=n.register(e,i);t&&r.push(t)}for(let n of t){let t=n.afterRegistration(e);t&&r.push(t)}return EC(...r)}buildCreateEditorArgs(){let e={},t=new Set,n=new Map,r=new Map,i={},a={},o=this.sortedExtensionReps();for(let s of o){let{extension:o}=s;if(o.onError!==void 0&&(e.onError=o.onError),o.onWarn!==void 0&&(e.onWarn=o.onWarn),o.disableEvents!==void 0&&(e.disableEvents=o.disableEvents),o.parentEditor!==void 0&&(e.parentEditor=o.parentEditor),o.editable!==void 0&&(e.editable=o.editable),o.namespace!==void 0&&(e.namespace=o.namespace),o.$initialEditorState!==void 0&&(e.$initialEditorState=o.$initialEditorState),o.nodes)for(let e of xw(o)){if(typeof e!=`function`){let t=n.get(e.replace);t&&Cw(302,o.name,e.replace.name,t.extension.name),n.set(e.replace,s)}t.add(e)}if(o.html){if(o.html.export)for(let[e,t]of o.html.export.entries())r.set(e,t);o.html.import&&Object.assign(i,o.html.import)}o.theme&&Dw(a,o.theme)}Object.keys(a).length>0&&(e.theme=a),t.size&&(e.nodes=[...t]);let s=Object.keys(i).length>0,c=r.size>0;(s||c)&&(e.html={},s&&(e.html.import=i),c&&(e.html.export=r));for(let t of o)t.init(e);return e.onError||=Kw,e}};function Xw(e,t){let n=Yw.maybeFromEditor(e);if(!n)return;let r=n.extensionNameMap.get(t);return r?r.getExtensionDependency():void 0}var Zw=class extends py{$config(){return this.config(`horizontalrule`,{importDOM:{hr:()=>({conversion:Qw,priority:0})}})}exportDOM(){return{element:px().createElement(`hr`)}}createDOM(e){let t=px().createElement(`hr`);return TC(t,e.theme.hr),t}getTextContent(){return`
19
19
  `}isInline(){return!1}updateDOM(){return!1}};function Qw(){return{node:$w()}}function $w(){return $x(Zw)}Date.now;function eT(e,t,n,r,i){if(e===null||n.size===0&&r.size===0&&!i)return 0;let a=t._selection,o=e._selection;if(i)return 1;if(!(Q(a)&&Q(o)&&o.isCollapsed()&&a.isCollapsed()))return 0;let s=function(e,t,n){let r=e._nodeMap,i=[];for(let e of t){let t=r.get(e);t!==void 0&&i.push(t)}for(let[e,t]of n){if(!t)continue;let n=r.get(e);n===void 0||gy(n)||i.push(n)}return i}(t,n,r);if(s.length===0)return 0;if(s.length>1){let n=t._nodeMap,r=n.get(a.anchor.key),i=n.get(o.anchor.key);return r&&i&&!e._nodeMap.has(r.__key)&&Z(r)&&r.__text.length===1&&a.anchor.offset===1?2:0}let c=s[0],l=e._nodeMap.get(c.__key);if(!Z(l)||!Z(c)||l.__mode!==c.__mode)return 0;let u=l.__text,d=c.__text;if(u===d)return 0;let f=a.anchor,p=o.anchor;if(f.key!==p.key||f.type!==`text`)return 0;let m=f.offset,h=p.offset,g=d.length-u.length;return g===1&&h===m-1?2:g===-1&&h===m+1?3:g===-1&&h===m?4:0}function tT(e,t,n){let r=n(),i=0,a=r,o=0,s=null;return(c,l,u,d,f,p)=>{let m=n();if(p.has(`composition-start`)&&(a=r,o=i,s=c),p.has(`historic`))return i=0,r=m,2;p.has(`composition-end`)&&s&&(r=a,i=o,c=s);let h=p.has(`paste`)||p.has(`cut`)?0:eT(c,l,d,f,e.isComposing()),g=(()=>{let n=u===null||u.editor===e,a=p.has(d_);if(!a&&n&&p.has(`history-merge`))return 0;if(h===1)return 2;if(c===null)return 1;let o=l._selection;if(!(d.size>0||f.size>0))return o===null?2:0;let s=typeof t==`number`?t:t.peek();return!1===a&&h!==0&&h===i&&m<r+s&&n||d.size===1&&function(e,t,n){let r=t._nodeMap.get(e),i=n._nodeMap.get(e),a=t._selection,o=n._selection;return!(Q(a)&&Q(o)&&a.anchor.type===`element`&&a.focus.type===`element`&&o.anchor.type===`text`&&o.focus.type===`text`||!Z(r)||!Z(i)||r.__parent!==i.__parent)&&JSON.stringify(t.read(()=>r.exportJSON()))===JSON.stringify(n.read(()=>i.exportJSON()))}(Array.from(d)[0],c,l)?0:1})();return r=m,i=h,g}}function nT(e,t){e.undoStack=[],e.redoStack=[],e.current=null,t&&t(e)}function rT(e,t,n,r=Date.now,i,a=null){let o=tT(e,n,r),s=()=>{i&&i(t)};return s(),EC(e.registerCommand(eg,()=>(function(e,t,n){let r=t.redoStack,i=t.undoStack;if(i.length!==0){let a=t.current,o=i.pop();a!==null&&(r.push(a),e.dispatchCommand(wg,!0)),i.length===0&&e.dispatchCommand(Tg,!1),t.current=o||null,n&&n(t),o&&o.editor.setEditorState(o.editorState,{tag:`historic`})}}(e,t,i),!0),0),e.registerCommand(tg,()=>(function(e,t,n){let r=t.redoStack,i=t.undoStack;if(r.length!==0){let a=t.current;a!==null&&(i.push(a),e.dispatchCommand(Tg,!0));let o=r.pop();r.length===0&&e.dispatchCommand(wg,!1),t.current=o||null,n&&n(t),o&&o.editor.setEditorState(o.editorState,{tag:`historic`})}}(e,t,i),!0),0),e.registerCommand(Sg,()=>(nT(t,i),!1),0),e.registerCommand(Cg,()=>(nT(t,i),e.dispatchCommand(wg,!1),e.dispatchCommand(Tg,!1),!0),0),e.registerUpdateListener(({editorState:n,prevEditorState:r,dirtyLeaves:i,dirtyElements:c,tags:l})=>{let u=t.current,d=t.redoStack,f=t.undoStack,p=u===null?null:u.editorState;if(u!==null&&n===p)return;let m=o(r,n,u,i,c,l);if(m===1){if(d.length!==0&&(t.redoStack=[],e.dispatchCommand(wg,!1)),u!==null){f.push({...u});let t=typeof a==`number`||a===null?a:a.peek();t!==null&&f.length>t&&f.splice(0,f.length-t),e.dispatchCommand(Tg,!0)}}else if(m===2)return;t.current={editor:e,editorState:n},s()}))}function iT(){return{current:null,redoStack:[],undoStack:[]}}Date.now;function aT({delay:e,externalHistoryState:t}){let[n]=Cp();return function(e,t,n=1e3){let r=(0,q.useMemo)(()=>t||iT(),[t]);(0,q.useEffect)(()=>rT(e,r,n),[n,e,r])}(n,t,e),null}var oT=Tp?q.useLayoutEffect:q.useEffect;function sT({ignoreHistoryMergeTagChange:e=!0,ignoreSelectionChange:t=!1,onChange:n}){let[r]=Cp();return oT(()=>{if(n)return r.registerUpdateListener(({editorState:i,dirtyElements:a,dirtyLeaves:o,prevEditorState:s,tags:c})=>{t&&a.size===0&&o.size===0||e&&c.has(`history-merge`)||s.isEmpty()||n(i,r,c)})},[r,e,t,n]),null}var cT=Tp?q.useLayoutEffect:q.useEffect;function lT(e){return{initialValueFn:()=>e.isEditable(),subscribe:t=>e.registerEditableListener(t)}}function uT(){return function(e){let[t]=Cp(),n=(0,q.useMemo)(()=>e(t),[t,e]),[r,i]=(0,q.useState)(()=>n.initialValueFn()),a=(0,q.useRef)(r);return cT(()=>{let{initialValueFn:e,subscribe:t}=n,r=e();return a.current!==r&&(a.current=r,i(r)),t(e=>{a.current=e,i(e)})},[n,e]),r}(lT)}var dT=xC({name:`@lexical/react/ReactProvider`}),fT=e(Lo(),1),pT={bold:`bold`,italic:`italic`,strikeThrough:`strikethrough`,subscript:`subscript`,superscript:`superscript`,underline:`underline`},mT=Symbol.for(`@lexical/dragon/WindowState`);function hT(e,t,n){let r=function(e){let t=e[mT];return t===void 0&&(t={dispose:()=>{},editors:new Map,installs:new Set},e[mT]=t),t}(e);if(r.installs.size===0){let t=yT.bind(e);e.addEventListener(`message`,t,!0),r.dispose=()=>{e.removeEventListener(`message`,t,!0)}}if(r.installs.add(t),n){let e=r.editors.get(n)||new Set;e.add(t),r.editors.set(n,e)}return gT.bind(null,e,r,t,n)}function gT(e,t,n,r){if(r){let e=t.editors.get(r);e&&e.delete(n)&&e.size===0&&t.editors.delete(r)}t.installs.delete(n)&&t.installs.size===0&&(t.dispose(),delete e[mT])}function _T(e){return e&&e.ownerDocument.defaultView}function vT(e){let t=Sw(()=>_T(e.getRootElement()),t=>e.registerRootListener(e=>{t.value=_T(e)}));return bw(()=>{let n=t.value;if(n)return hT(n,Symbol(`@lexical/dragon/editorInstall`),e)})}function yT(e){if(e.origin!==this.location.origin)return;let t=function(e){let t=e[mT];if(t===void 0)return null;let n=$y(xx(e.document));return Zy(n)&&t.editors.has(n)?n:null}(this);if(t===null)return;let n=e.data;if(typeof n==`string`){let r;try{r=JSON.parse(n)}catch{return}if(r&&r.protocol===`nuanria_messaging`&&r.type===`request`){let n=r.payload;if(n&&n.functionId===`makeChanges`){let r=n.args;if(Array.isArray(r)){let[n,i,a,o,s,c]=r;if(![n,i,o,s].every(Number.isFinite)||typeof a!=`string`&&a!==-1)return;t.update(()=>{let t=vv();if(Q(t)){let r=t.anchor,l=r.getNode(),u=0,d=0;if(Z(l)&&n>=0&&i>=0&&(u=n,d=n+i,t.setTextNodeRange(l,u,l,d)),typeof a!=`string`||u===d&&a===``||(t.insertRawText(a),l=r.getNode()),Z(l)){let e=l.getTextContentSize();u=Math.min(Math.max(o,0),e),d=o<0||s<0?u:Math.min(o+s,e),t.setTextNodeRange(l,u,l,d)}if(typeof c==`string`&&s>0&&!t.isCollapsed()){let e=pT[c];e!==void 0&&t.formatText(e)}e.stopImmediatePropagation()}})}}}}}function bT(e,...t){let n=new URL(`https://lexical.dev/docs/error`),r=new URLSearchParams;r.append(`code`,e);for(let e of t)r.append(`v`,e);throw n.search=r.toString(),Error(`Minified Lexical error #${e}; visit ${n.toString()} for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`)}var xT;function ST(e,t){let{key:n}=t;return e&&n in e?e[n]:t.defaultValue}function CT(e){return xT&&xT.editor===e?xT:void 0}function wT(e,t){if(`cfg`in t){let{cfg:n,updater:r}=t;return[n,r(ST(e,n))]}return t}function TT(e,t){let n=t;for(let r of e){let[e,i]=wT(n,r),a=e.key;if(n===t&&ST(n,e)===i)continue;let o=n===t||n===void 0?ET(t):n;o[a]=i,n=o}return n}function ET(e){return Object.create(e||null)}function DT(e,t){return[e,t]}function OT(e,t,n,r=jx()){let i=xT,a=CT(r);try{return xT={...a,editor:r,[e]:t},n()}finally{xT=i}}function kT(e,t=()=>{}){return(n,r=jx())=>i=>{let a=CT(r),o=a&&a[e],s=TT(n,o||t(r));return s&&s!==o?OT(e,s,i,r):i()}}function AT(e,t,n,r){return Object.assign(Tm(Symbol(t),{isEqual:r,parse:n}),{[e]:!0})}var jT=`@lexical/html/DOM`,MT=Symbol.for(`@lexical/html/DOMExportContext`);function NT(e,t,n){return AT(MT,e,t,n)}var PT=NT(`isExport`,Boolean);function FT(e){let t=Xw(e,jT);return t?t.output.defaults:void 0}function IT(e){let t=Xw(e,jT);return t?t.output.runtime:void 0}function LT(e=jx()){let t=IT(e);return t?t.getSessionConfig():Mx(e)}var RT=kT(MT,FT),zT=Symbol.for(`@lexical/html/SelectorImpl`);function BT(e,t){let n={kind:`element`,predicate:(r=t,r.length===0?Cx:r.length===1?r[0]:(e,t)=>{for(let n of r)if(!n(e,t))return!1;return!0}),tags:e};var r;let i=n=>BT(e,[...t,n]);return{[zT]:n,attr:(e,t,n)=>i(UT(e,t,n)),classAll:(...e)=>i(HT(e)),classAny:(...e)=>i(function(e){let t=VT(e);return t.length===0?()=>!1:e=>{if(!Cx(e))return!1;let n=e.classList;for(let e of t)if(n.contains(e))return!0;return!1}}(e)),styleAny:(e,t,n)=>i(function(e,t,n){if(typeof t==`string`)return n=>Cx(n)&&n.style.getPropertyValue(e)===t;if(t instanceof RegExp){let r=n&&n.capture,i=t;return(t,n)=>{if(!Cx(t))return!1;let a=t.style.getPropertyValue(e);if(!a)return!1;let o=a.match(i);return o!==null&&(r!==void 0&&(n[r]=o),!0)}}bT(362,JSON.stringify(e))}(e,t,n))}}function VT(e){let t=[];for(let n of e)n&&t.push(n);return t}function HT(e){let t=VT(e);return t.length===0?()=>!0:e=>{if(!Cx(e))return!1;let n=e.classList;for(let e of t)if(!n.contains(e))return!1;return!0}}function UT(e,t,n){if(!0===t)return t=>Cx(t)&&t.hasAttribute(e);if(typeof t==`string`)return n=>Cx(n)&&n.getAttribute(e)===t;if(t instanceof RegExp){let r=n&&n.capture,i=t;return(t,n)=>{if(!Cx(t))return!1;let a=t.getAttribute(e);if(a==null)return!1;let o=a.match(i);return o!==null&&(r!==void 0&&(n[r]=o),!0)}}bT(361,JSON.stringify(e))}var WT={kind:`text`,predicate:nb,tags:new Set},GT={[zT]:WT},KT={kind:`comment`,predicate:e=>e.nodeType===8,tags:new Set},qT={[zT]:KT},JT={any:()=>BT(new Set,[]),comment:()=>qT,tag(...e){e.length>0||bT(363);let t=new Set;for(let n of e)t.add(n.toUpperCase());return BT(t,[])},text:()=>GT},YT=JT;YT.tag(`b`,`strong`,`em`,`i`,`code`,`mark`,`s`,`sub`,`sup`,`u`,`span`),YT.text(),YT.tag(`script`,`style`),YT.tag(`br`),YT.tag(`p`),YT.tag(`hr`),YT.any(),Object.freeze([]),Object.freeze({}),JT.any(),JT.any,JT.comment,JT.tag,JT.text;function XT(e,t=null,n=jx()){return RT([DT(PT,!0)],n)(()=>{let r=vb(),i=LT(n),a=Q(t)?lS(t.anchor.getNode()):null,o=e.append.bind(e);for(let e of($(a)?a:r).getChildren())QT(n,e,o,t,i);return e})}function ZT(e,t=null){return(typeof document>`u`||typeof window>`u`&&global.window===void 0)&&bT(338),qv(e),XT(px().createElement(`div`),t,e).innerHTML}function QT(e,t,n,r=null,i=Mx(e)){let a=i.$shouldInclude(t,r,e),o=i.$shouldExclude(t,r,e),s=t;r!==null&&Z(t)&&(s=GC(r,t,`clone`));let{element:c,after:l,append:u,$getChildNodes:d}=i.$exportDOM(s,e);if(!c)return!1;let f=px().createDocumentFragment(),p=d?d():$(s)?s.getChildren():[],m=a&&Y_(r)&&$(t)?null:r,h=f.append.bind(f);for(let n of p){let o=QT(e,n,h,m,i);!a&&o&&i.$extractWithChild(t,n,r,`html`,e)&&(a=!0)}if(a&&!o){if((Cx(c)||Tx(c))&&(u?u(f):c.append(f)),n(c),l){let e=l.call(s,c);e&&(Tx(c)?c.replaceChildren(e):c.replaceWith(e))}}else n(f);return a}function $T(e,t,n=null){let r=fx(n),i=n?ux(n):[],a=n!==null&&i.length>0;if(a&&typeof r.caretPositionFromPoint==`function`){let a=r.caretPositionFromPoint(e,t,{shadowRoots:i});if(a!==null&&function(e,t){for(let n=e;n!==null;){if(n===t)return!0;n=Ub(n)}return!1}(a.offsetNode,n))return{node:a.offsetNode,offset:a.offset}}if(a){let i=n.getRootNode();if(cx(i)){let a=i.elementFromPoint(e,t);if(a!==null&&n.contains(a)){let n=function(e,t,n,r){let i=r.createRange(),a=e=>t<e.top?e.top-t:t>e.bottom?t-e.bottom:0,o=t=>e<t.left?t.left-e:e>t.right?e-t.right:0,s=r.createTreeWalker(n,NodeFilter.SHOW_TEXT),c=null,l=1/0,u=1/0;for(let e=s.nextNode();e;e=s.nextNode()){i.selectNodeContents(e);for(let t of i.getClientRects()){let n=a(t),r=o(t);(n<l||n===l&&r<u)&&(l=n,u=r,c=e)}}if(c===null)return null;let d=0,f=1/0,p=1/0;for(let t=0;t<=c.length;t++){i.setStart(c,t),i.collapse(!0);let n=i.getBoundingClientRect(),r=a(n),o=Math.abs(e-n.left);(r<f||r===f&&o<p)&&(f=r,p=o,d=t)}return{node:c,offset:d}}(e,t,a,r);if(n!==null)return n}}}if(typeof r.caretRangeFromPoint==`function`){let n=r.caretRangeFromPoint(e,t);return n===null?null:{node:n.startContainer,offset:n.startOffset}}if(typeof r.caretPositionFromPoint==`function`){let n=r.caretPositionFromPoint(e,t);return n===null?null:{node:n.offsetNode,offset:n.offset}}return null}function eE(e,...t){let n=new URL(`https://lexical.dev/docs/error`),r=new URLSearchParams;r.append(`code`,e);for(let e of t)r.append(`v`,e);throw n.search=r.toString(),Error(`Minified Lexical error #${e}; visit ${n.toString()} for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`)}function tE(e,t=vv()){return t??eE(166),Q(t)&&t.isCollapsed()||t.getNodes().length===0?``:ZT(e,t)}function nE(e,t){let n=e.getData(`text/plain`)||e.getData(`text/uri-list`);n!=null&&t.insertRawText(n)}var rE=`application/x-lexical-drag`;function iE(e,t){let n={editorKey:t.getKey()};e.setData(rE,JSON.stringify(n))}function aE(e,t,n){let r=e.dataTransfer;if(r===null)return!1;let i=function(e){let t=e.getData(rE);if(!t)return null;let n;try{n=JSON.parse(t)}catch{return null}return(r=n)!==null&&typeof r==`object`&&`editorKey`in r&&typeof r.editorKey==`string`?n:null;var r}(r);if(i===null)return!1;let a=function(e,t){let n=$T(e.clientX,e.clientY,t.getRootElement());if(n===null)return null;let r=hb(n.node);if(r===null)return null;if(Z(r))return BS(r,`next`,n.offset);if($(r))return gC(r,n.offset,`next`);let i=r.getParent();return i===null?null:gC(i,r.getIndexWithinParent()+1,`next`)}(e,t);if(a===null)return!1;let o=yC(a);if(o===null)return!1;let s=i.editorKey===t.getKey(),c=vv();if(s){if(!Q(c)||c.isCollapsed())return!1;if(function(e,t){let{anchor:n,focus:r}=hC(sC(t),`next`);return QS(n,e)<0&&QS(e,r)<0}(a,c))return e.preventDefault(),!0;c.removeText()}if(!o.origin.isAttached())return e.preventDefault(),!0;if(n(r,aC(YS(o)),t),!s){let e=t.getRootElement(),n=e?e.ownerDocument:null,r=n?function(e,t){for(let n of dx(t)){let t=$y(n);if(Zy(t)&&t.getKey()===e&&Cx(n))return n}return null}(i.editorKey,n):null;r!==null&&r.dispatchEvent(new InputEvent(`beforeinput`,{bubbles:!0,cancelable:!0,inputType:`deleteByDrag`}))}return e.preventDefault(),!0}function oE(e,t){return aE(e,t,(e,t)=>nE(e,t))}function sE(e,t){t.update(()=>{if(e!==null){let n=QC(e,KeyboardEvent)?null:e.clipboardData,r=vv();if(r!==null&&!r.isCollapsed()&&n!=null){e.preventDefault();let i=tE(t);i!==null&&n.setData(`text/html`,i),n.setData(`text/plain`,r.getTextContent())}}})}function cE(e){return EC(e.registerCommand(Gh,e=>{let t=vv();return!!Q(t)&&(t.deleteCharacter(e),!0)},0),e.registerCommand(Zh,e=>{let t=vv();return!!Q(t)&&(t.deleteWord(e),!0)},0),e.registerCommand(Qh,e=>{let t=vv();return!!Q(t)&&(t.deleteLine(e),!0)},0),e.registerCommand(Jh,e=>{let t=vv();if(!Q(t))return!1;if(typeof e==`string`)t.insertText(e);else{let n=e.dataTransfer;if(n!=null)nE(n,t);else{let n=e.data;n&&t.insertText(n)}}return!0},0),e.registerCommand(Xh,()=>{let e=vv();return!!Q(e)&&(e.removeText(),!0)},0),e.registerCommand(Kh,e=>{let t=vv();return!!Q(t)&&(t.insertLineBreak(e),!0)},0),e.registerCommand(qh,()=>{let e=vv();return!!Q(e)&&(e.insertLineBreak(),!0)},0),e.registerCommand(ag,e=>{let t=vv();if(!Q(t))return!1;let n=e,r=n.shiftKey;return!!JC(t,!0)&&(n.preventDefault(),ZC(t,r,!0),!0)},0),e.registerCommand(rg,e=>{let t=vv();if(!Q(t))return!1;let n=e,r=n.shiftKey;return!!JC(t,!1)&&(n.preventDefault(),ZC(t,r,!1),!0)},0),e.registerCommand(dg,t=>!!Q(vv())&&(!Ap||!kp)&&(t.preventDefault(),e.dispatchCommand(Gh,!0)),0),e.registerCommand(pg,t=>!!Q(vv())&&(t.preventDefault(),e.dispatchCommand(Gh,!1)),0),e.registerCommand(lg,t=>{if(!Q(vv()))return!1;if(t!==null){if((Ap||Mp||Fp)&&kp)return!1;t.preventDefault()}return e.dispatchCommand(Kh,!1)},0),e.registerCommand(xg,()=>{let e=vv();return Fb(Q(e)&&lS(e.anchor.getNode())!==null?e:null),!0},0),e.registerCommand(yg,t=>!!Q(vv())&&(sE(t,e),!0),0),e.registerCommand(bg,t=>!!Q(vv())&&(function(e,t){sE(e,t),t.update(()=>{let e=vv();Q(e)&&e.removeText()},{tag:`cut`})}(t,e),!0),0),e.registerCommand(Yh,t=>!!Q(vv())&&(function(e,t){e.preventDefault(),t.update(()=>{let t=vv(),n=QC(e,ClipboardEvent)?e.clipboardData:null;n!=null&&Q(t)&&nE(n,t)},{tag:`paste`})}(t,e),!0),0),e.registerCommand(hg,t=>oE(t,e),0),e.registerCommand(gg,t=>{let n=vv();return!!Q(n)&&(n.isCollapsed()||t.dataTransfer===null||iE(t.dataTransfer,e),!0)},0))}function lE(e,...t){let n=new URL(`https://lexical.dev/docs/error`),r=new URLSearchParams;r.append(`code`,e);for(let e of t)r.append(`v`,e);throw n.search=r.toString(),Error(`Minified Lexical error #${e}; visit ${n.toString()} for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`)}var uE=Tp?q.useLayoutEffect:q.useEffect;function dE({editor:e,ErrorBoundary:t}){return function(e,t){let[n,r]=(0,q.useState)(()=>e.getDecorators());return uE(()=>e.registerDecoratorListener(e=>{(0,fT.flushSync)(()=>{r(e)})}),[e]),(0,q.useEffect)(()=>{r(e.getDecorators())},[e]),(0,q.useMemo)(()=>{let r=[],i=Object.keys(n);for(let a=0;a<i.length;a++){let o=i[a],s=(0,Y.jsx)(t,{onError:t=>e._onError(t),children:(0,Y.jsx)(q.Suspense,{fallback:null,children:n[o]})}),c=e.getElementByKey(o);c!==null&&r.push((0,fT.createPortal)(s,c,o))}return r},[t,n,e])}(e,t)}function fE({editor:e,ErrorBoundary:t}){return function(e){let t=Yw.maybeFromEditor(e);if(t&&t.hasExtensionByName(dT.name)){for(let e of[`@lexical/plain-text`,`@lexical/rich-text`])t.hasExtensionByName(e)&&lE(320,e);return!0}return!1}(e)?null:(0,Y.jsx)(dE,{editor:e,ErrorBoundary:t})}function pE(e){return e.read(`latest`,NC(e.isComposing()))}function mE({contentEditable:e,placeholder:t=null,ErrorBoundary:n}){let[r]=Cp();return function(e){uE(()=>EC(cE(e),vT(e)),[e])}(r),(0,Y.jsxs)(Y.Fragment,{children:[e,(0,Y.jsx)(hE,{content:t}),(0,Y.jsx)(fE,{editor:r,ErrorBoundary:n})]})}function hE({content:e}){let[t]=Cp(),n=function(e){let[t,n]=(0,q.useState)(()=>pE(e));return uE(()=>{function t(){let t=pE(e);n(t)}return t(),EC(e.registerUpdateListener(()=>{t()}),e.registerEditableListener(()=>{t()}))},[e]),t}(t),r=uT();return n?typeof e==`function`?e(r):e:null}function gE(e){let t=(0,J.c)(18),{label:n,tooltipText:r,expired:i}=e,a=i!==void 0&&i,o=a&&`border-destructive/35 bg-destructive/8 text-destructive`,s;t[0]===o?s=t[1]:(s=G(wa,o),t[0]=o,t[1]=s);let c=a?`true`:void 0,l=a&&`opacity-100`,u;t[2]===l?u=t[3]:(u=G(Zi,`size-3.5`,l),t[2]=l,t[3]=u);let d;t[4]===u?d=t[5]:(d=(0,Y.jsx)(qa,{className:u}),t[4]=u,t[5]=d);let f;t[6]===n?f=t[7]:(f=(0,Y.jsx)(`span`,{className:Ca,children:n}),t[6]=n,t[7]=f);let p;t[8]!==s||t[9]!==c||t[10]!==d||t[11]!==f?(p=(0,Y.jsx)(Po,{render:(0,Y.jsxs)(`span`,{className:s,"data-terminal-context-expired":c,children:[d,f]})}),t[8]=s,t[9]=c,t[10]=d,t[11]=f,t[12]=p):p=t[12];let m;t[13]===r?m=t[14]:(m=(0,Y.jsx)(Fo,{side:`top`,className:`max-w-80 whitespace-pre-wrap leading-tight`,children:r}),t[13]=r,t[14]=m);let h;return t[15]!==p||t[16]!==m?(h=(0,Y.jsxs)(Io,{children:[p,m]}),t[15]=p,t[16]=m,t[17]=h):h=t[17],h}function _E(e){let t=(0,J.c)(8),{context:n}=e,r;t[0]===n?r=t[1]:(r=Rt(n),t[0]=n,t[1]=r);let i=r,a;t[2]===n?a=t[3]:(a=dn(n),t[2]=n,t[3]=a);let o=a,s=o?`Terminal context expired. Remove and re-add ${i} to include it in your message.`:n.text,c;return t[4]!==o||t[5]!==i||t[6]!==s?(c=(0,Y.jsx)(gE,{label:i,tooltipText:s,expired:o}),t[4]=o,t[5]=i,t[6]=s,t[7]=c):c=t[7],c}var vE=`composer-editor-${Math.random().toString(36).slice(2)}`,yE=new Map([[`(`,`)`],[`[`,`]`],[`{`,`}`],[`'`,`'`],[`"`,`"`],[`“`,`”`],["`","`"],[`<`,`>`],[`«`,`»`],[`*`,`*`],[`_`,`_`]]),bE=yE.get("`")??null,xE=(0,q.createContext)({onRemoveTerminalContext:()=>{}});function SE(e){let t=(0,J.c)(20),n;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(n=PE(),t[0]=n):n=t[0];let r=n,i;t[1]===e.path?i=t[2]:(i=qc(e.path),t[1]=e.path,t[2]=i);let a;t[3]!==e.path||t[4]!==i?(a=(0,Y.jsx)(pa,{className:Zi,kind:i,pathValue:e.path,theme:r}),t[3]=e.path,t[4]=i,t[5]=a):a=t[5];let o;t[6]===e.path?o=t[7]:(o=Jc(e.path),t[6]=e.path,t[7]=o);let s;t[8]===o?s=t[9]:(s=(0,Y.jsx)(`span`,{className:Ca,children:o}),t[8]=o,t[9]=s);let c;t[10]!==a||t[11]!==s?(c=(0,Y.jsxs)(`span`,{className:wa,contentEditable:!1,spellCheck:!1,"data-composer-mention-chip":`true`,children:[a,s]}),t[10]=a,t[11]=s,t[12]=c):c=t[12];let l=c,u;t[13]===l?u=t[14]:(u=(0,Y.jsx)(Po,{render:l}),t[13]=l,t[14]=u);let d;t[15]===e.path?d=t[16]:(d=(0,Y.jsx)(Fo,{side:`top`,className:`max-w-120 whitespace-normal leading-tight wrap-anywhere`,children:e.path}),t[15]=e.path,t[16]=d);let f;return t[17]!==u||t[18]!==d?(f=(0,Y.jsxs)(Io,{children:[u,d]}),t[17]=u,t[18]=d,t[19]=f):f=t[19],f}var CE=class e extends py{__path;static getType(){return`composer-mention`}static clone(t){return new e(t.__path,t.__key)}static importJSON(e){return wE(e.path).updateFromJSON(e)}constructor(e,t){super(t);let n=e.startsWith(`@`)?e.slice(1):e;this.__path=n}exportJSON(){return{...super.exportJSON(),path:this.__path,type:`composer-mention`,version:1}}createDOM(){let e=document.createElement(`span`);return e.className=`inline-flex align-middle leading-none`,e}updateDOM(){return!1}getTextContent(){return`@${Yt(this.__path)}`}isInline(){return!0}decorate(){return(0,Y.jsx)(SE,{path:this.__path})}};function wE(e){return tx(new CE(e))}function TE(e){return e.shortDescription?.trim()||e.description?.trim()||null}function EE(e){return new Map(e.map(e=>[e.name,{label:Qi(e),description:TE(e)}]))}function DE(e){let t=(0,J.c)(10),n;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,Y.jsx)(`span`,{"aria-hidden":`true`,className:Zi,dangerouslySetInnerHTML:{__html:$i}}),t[0]=n):n=t[0];let r;t[1]===e.skillLabel?r=t[2]:(r=(0,Y.jsxs)(`span`,{className:ra,contentEditable:!1,spellCheck:!1,"data-composer-skill-chip":`true`,children:[n,(0,Y.jsx)(`span`,{className:Ca,children:e.skillLabel})]}),t[1]=e.skillLabel,t[2]=r);let i=r;if(!e.skillDescription)return i;let a;t[3]===i?a=t[4]:(a=(0,Y.jsx)(Po,{render:i}),t[3]=i,t[4]=a);let o;t[5]===e.skillDescription?o=t[6]:(o=(0,Y.jsx)(Fo,{side:`top`,className:`max-w-120 whitespace-normal leading-tight`,children:e.skillDescription}),t[5]=e.skillDescription,t[6]=o);let s;return t[7]!==a||t[8]!==o?(s=(0,Y.jsxs)(Io,{children:[a,o]}),t[7]=a,t[8]=o,t[9]=s):s=t[9],s}var OE=class e extends py{__skillName;__skillLabel;__skillDescription;static getType(){return`composer-skill`}static clone(t){return new e(t.__skillName,t.__skillLabel,t.__skillDescription,t.__key)}static importJSON(e){return kE(e.skillName,e.skillLabel??e.skillName,e.skillDescription??null).updateFromJSON(e)}constructor(e,t,n,r){super(r);let i=e.startsWith(`$`)?e.slice(1):e;this.__skillName=i,this.__skillLabel=t,this.__skillDescription=n}exportJSON(){return{...super.exportJSON(),skillName:this.__skillName,skillLabel:this.__skillLabel,...this.__skillDescription?{skillDescription:this.__skillDescription}:{},type:`composer-skill`,version:1}}createDOM(){let e=document.createElement(`span`);return e.className=`inline-flex align-middle leading-none`,e}updateDOM(){return!1}getTextContent(){return`$${this.__skillName}`}isInline(){return!0}decorate(){return(0,Y.jsx)(DE,{skillLabel:this.__skillLabel,skillDescription:this.__skillDescription})}};function kE(e,t,n){return tx(new OE(e,t,n))}function AE(e){let t=(0,J.c)(2),n;return t[0]===e.context?n=t[1]:(n=(0,Y.jsx)(_E,{context:e.context}),t[0]=e.context,t[1]=n),n}var jE=class e extends py{__context;static getType(){return`composer-terminal-context`}static clone(t){return new e(t.__context,t.__key)}static importJSON(e){return ME(e.context)}constructor(e,t){super(t),this.__context=e}exportJSON(){return{...super.exportJSON(),context:this.__context,type:`composer-terminal-context`,version:1}}createDOM(){let e=document.createElement(`span`);return e.className=`inline-flex align-middle leading-none`,e}updateDOM(){return!1}getTextContent(){return``}isInline(){return!0}decorate(){return(0,Y.jsx)(AE,{context:this.__context})}};function ME(e){return tx(new jE(e))}function NE(e){return e instanceof CE||e instanceof OE||e instanceof jE}function PE(){return document.documentElement.classList.contains(`dark`)?`dark`:`light`}function FE(e){return e.map(e=>[e.id,e.threadId,e.terminalId,e.terminalLabel,e.lineStart,e.lineEnd,e.createdAt,e.text].join(``)).join(``)}function IE(e){return e.map(e=>[e.name,e.displayName??``,e.shortDescription??``,e.description??``,e.path,e.scope??``,e.enabled?`1`:`0`].join(``)).join(``)}function LE(e,t){return Number.isFinite(t)?Math.max(0,Math.min(e.length,Math.floor(t))):e.length}function RE(e){return 1}function zE(e){return e.getTextContentSize()}function BE(e,t,n){return t+(n>0?RE(e):0)}function VE(e,t,n){return t+(n>0?zE(e):0)}function HE(e,t){let n=e.getParent();if(!n||!$(n))return null;let r=e.getIndexWithinParent();return t.value===0?{key:n.getKey(),offset:r,type:`element`}:t.value===RE(e)?{key:n.getKey(),offset:r+1,type:`element`}:(t.value-=RE(e),null)}function UE(e){return NE(e)?RE(e):Z(e)?e.getTextContentSize():Ey(e)?1:$(e)?e.getChildren().reduce((e,t)=>e+UE(t),0):0}function WE(e){return NE(e)?zE(e):Z(e)?e.getTextContentSize():Ey(e)?1:$(e)?e.getChildren().reduce((e,t)=>e+WE(t),0):0}function GE(e,t){let n=0,r=e;for(;r;){let e=r.getParent();if(!e||!$(e))break;let t=e.getChildren(),i=r.getIndexWithinParent();for(let e=0;e<i;e+=1){let r=t[e];r&&(n+=UE(r))}r=e}if(Z(e))return n+Math.min(t,e.getTextContentSize());if(NE(e))return BE(e,n,t);if(Ey(e))return n+Math.min(t,1);if($(e)){let r=e.getChildren(),i=Math.max(0,Math.min(t,r.length));for(let e=0;e<i;e+=1){let t=r[e];t&&(n+=UE(t))}return n}return n}function KE(e,t){let n=0,r=e;for(;r;){let e=r.getParent();if(!e||!$(e))break;let t=e.getChildren(),i=r.getIndexWithinParent();for(let e=0;e<i;e+=1){let r=t[e];r&&(n+=WE(r))}r=e}if(Z(e))return n+Math.min(t,e.getTextContentSize());if(NE(e))return VE(e,n,t);if(Ey(e))return n+Math.min(t,1);if($(e)){let r=e.getChildren(),i=Math.max(0,Math.min(t,r.length));for(let e=0;e<i;e+=1){let t=r[e];t&&(n+=WE(t))}return n}return n}function qE(e,t){if(NE(e))return HE(e,t);if(Z(e)){let n=e.getTextContentSize();return t.value<=n?{key:e.getKey(),offset:t.value,type:`text`}:(t.value-=n,null)}if(Ey(e)){let n=e.getParent();if(!n)return null;let r=e.getIndexWithinParent();return t.value===0?{key:n.getKey(),offset:r,type:`element`}:t.value===1?{key:n.getKey(),offset:r+1,type:`element`}:(--t.value,null)}if($(e)){let n=e.getChildren();for(let e of n){let n=qE(e,t);if(n)return n}if(t.value===0)return{key:e.getKey(),offset:n.length,type:`element`}}return null}function JE(){return vb().getChildren().reduce((e,t)=>e+UE(t),0)}function YE(e){let t=vb(),n=JE(),r=qE(t,{value:Math.max(0,Math.min(e,n))})??{key:t.getKey(),offset:t.getChildren().length,type:`element`},i=hv();i.anchor.set(r.key,r.offset,r.type),i.focus.set(r.key,r.offset,r.type),yb(i)}function XE(e,t){let n=vb(),r=JE(),i=Math.max(0,Math.min(e,r)),a=Math.max(0,Math.min(t,r)),o={value:i},s={value:a},c=qE(n,o)??{key:n.getKey(),offset:n.getChildren().length,type:`element`},l=qE(n,s)??{key:n.getKey(),offset:n.getChildren().length,type:`element`},u=hv();u.anchor.set(c.key,c.offset,c.type),u.focus.set(l.key,l.offset,l.type),yb(u)}function ZE(e){if(!Q(e))return null;let t=e.anchor.getNode(),n=e.focus.getNode(),r=KE(t,e.anchor.offset),i=KE(n,e.focus.offset);return{start:Math.min(r,i),end:Math.max(r,i)}}function QE(e){return Q(e)?e.getNodes().some(e=>NE(e)):!1}function $E(e){let t=vv();if(!Q(t)||!t.isCollapsed())return e;let n=GE(t.anchor.getNode(),t.anchor.offset),r=JE();return Math.max(0,Math.min(n,r))}function eD(e){let t=vv();if(!Q(t)||!t.isCollapsed())return e;let n=KE(t.anchor.getNode(),t.anchor.offset),r=vb().getTextContent().length;return Math.max(0,Math.min(n,r))}function tD(e,t){let n=t.split(`
20
- `);for(let t=0;t<n.length;t+=1){let r=n[t]??``;r.length>0&&e.append(F_(r)),t<n.length-1&&e.append(Ty())}}function nD(e,t,n){let r=vb();r.clear();let i=My();r.append(i);let a=bt(e,t);for(let e of a){if(e.type===`mention`){i.append(wE(e.path));continue}if(e.type===`skill`){let t=n.get(e.name);i.append(kE(e.name,t?.label??Qi({name:e.name}),t?.description??null));continue}if(e.type===`terminal-context`){e.context&&i.append(ME(e.context));continue}tD(i,e.text)}}function rD(e){return e instanceof jE?[e.__context.id]:$(e)?e.getChildren().flatMap(e=>rD(e)):[]}function iD(e){let t=(0,J.c)(4),[n]=Cp(),r,i;return t[0]!==n||t[1]!==e?(r=()=>{let t=(t,n)=>{if(!e.onCommandKeyDown||!n)return!1;let r=e.onCommandKeyDown(t,n);return r&&(n.preventDefault(),n.stopPropagation()),r},r=n.registerCommand(cg,e=>t(`ArrowDown`,e),3),i=n.registerCommand(sg,e=>t(`ArrowUp`,e),3),a=n.registerCommand(lg,e=>t(`Enter`,e),3),o=n.registerCommand(mg,e=>t(`Tab`,e),3);return()=>{r(),i(),a(),o()}},i=[n,e],t[0]=n,t[1]=e,t[2]=r,t[3]=i):(r=t[2],i=t[3]),(0,q.useEffect)(r,i),null}function aD(){let e=(0,J.c)(3),[t]=Cp(),n,r;return e[0]===t?(n=e[1],r=e[2]):(n=()=>{let e=t.registerCommand(ag,e=>{let n=null;if(t.getEditorState().read(()=>{let e=vv();if(!Q(e)||!e.isCollapsed())return;let t=$E(0);if(t<=0)return;let r=vb().getTextContent();ft(r,t,`left`)&&(n=t-1)}),n===null)return!1;let r=n;return e?.preventDefault(),e?.stopPropagation(),t.update(()=>{YE(r)}),!0},3),n=t.registerCommand(rg,e=>{let n=null;if(t.getEditorState().read(()=>{let e=vv();if(!Q(e)||!e.isCollapsed())return;let t=$E(0);if(t>=JE())return;let r=vb().getTextContent();ft(r,t,`right`)&&(n=t+1)}),n===null)return!1;let r=n;return e?.preventDefault(),e?.stopPropagation(),t.update(()=>{YE(r)}),!0},3);return()=>{e(),n()}},r=[t],e[0]=t,e[1]=n,e[2]=r),(0,q.useEffect)(n,r),null}function oD(){let e=(0,J.c)(3),[t]=Cp(),n,r;return e[0]===t?(n=e[1],r=e[2]):(n=()=>t.registerUpdateListener(e=>{let{editorState:n}=e,r=null;n.read(()=>{let e=vv();if(!Q(e)||!e.isCollapsed())return;let t=e.anchor.getNode();NE(t)&&e.anchor.offset!==0&&(r=GE(t,0)+1)}),r!==null&&queueMicrotask(()=>{t.update(()=>{YE(r)})})}),r=[t],e[0]=t,e[1]=n,e[2]=r),(0,q.useEffect)(n,r),null}function sD(){let e=(0,J.c)(4),[t]=Cp(),{onRemoveTerminalContext:n}=(0,q.useContext)(xE),r,i;return e[0]!==t||e[1]!==n?(r=()=>t.registerCommand(dg,e=>{let t=vv();if(!Q(t)||!t.isCollapsed())return!1;let r=t.anchor.getNode(),i=$E(0),a=t=>{if(!NE(t))return!1;let r=GE(t,0);return t.remove(),t instanceof jE?(n(t.__context.id),YE(i)):YE(r),e?.preventDefault(),!0};if(a(r))return!0;if(Z(r)){if(t.anchor.offset>0)return!1;if(a(r.getPreviousSibling()))return!0;let e=r.getParent();if($(e)){let t=r.getIndexWithinParent();if(t>0&&a(e.getChildAtIndex(t-1)))return!0}return!1}if($(r)){let e=t.anchor.offset-1;if(e>=0&&a(r.getChildAtIndex(e)))return!0}return!1},3),i=[t,n],e[0]=t,e[1]=n,e[2]=r,e[3]=i):(r=e[2],i=e[3]),(0,q.useEffect)(r,i),null}function cD(e){let t=(0,J.c)(14),[n]=Cp(),r=(0,q.useRef)(e.terminalContexts),i;t[0]===e.skills?i=t[1]:(i=EE(e.skills),t[0]=e.skills,t[1]=i);let a=(0,q.useRef)(i),o=(0,q.useRef)(null),s=(0,q.useRef)(null),c,l;t[2]===e.terminalContexts?(c=t[3],l=t[4]):(c=()=>{r.current=e.terminalContexts},l=[e.terminalContexts],t[2]=e.terminalContexts,t[3]=c,t[4]=l),(0,q.useEffect)(c,l);let u,d;t[5]===e.skills?(u=t[6],d=t[7]):(u=()=>{a.current=EE(e.skills)},d=[e.skills],t[5]=e.skills,t[6]=u,t[7]=d),(0,q.useEffect)(u,d);let f;t[8]===n?f=t[9]:(f=e=>{let t=yE.get(e),i=o.current;if(!t)return o.current=null,!1;let s=!1;return n.update(()=>{let n=i??lD();if(!n||!t)return;let c=n.value.slice(n.expandedStart,n.expandedEnd),l=`${n.value.slice(0,n.expandedStart)}${e}${c}${t}${n.value.slice(n.expandedEnd)}`;nD(l,r.current,a.current);let u=Dt(l,n.expandedStart);XE(u+e.length,u+e.length+c.length),s=!0,o.current=null}),s},t[8]=n,t[9]=f);let p=f,m,h;return t[10]!==p||t[11]!==n?(m=()=>{let e=e=>{if(s.current){if(e.key===`Dead`||e.key===` `||e.code===`Space`)return;s.current=null}if(e.defaultPrevented||e.isComposing||e.metaKey||e.ctrlKey){o.current=null,s.current=null;return}n.getEditorState().read(()=>{let e=vv();if(!Q(e)||e.isCollapsed()){o.current=null,s.current=null;return}if(QE(e)){o.current=null,s.current=null;return}let t=ZE(e);if(!t||t.start===t.end){o.current=null,s.current=null;return}let n=vb().getTextContent();if(yt(n,t.start,t.end)){o.current=null,s.current=null;return}let r={value:n,expandedStart:t.start,expandedEnd:t.end};o.current=r,s.current=null})},t=e=>{if(e.inputType===`insertCompositionText`&&e.data==="`"&&bE!==null&&o.current){s.current=o.current;return}if(s.current||e.inputType===`insertCompositionText`)return;if(typeof e.data!=`string`){o.current=null;return}let t=e.inputType===`insertText`?e.data:null;if(!t||t.length!==1){o.current=null;return}p(t)&&(e.preventDefault(),e.stopPropagation(),e.stopImmediatePropagation())},r=e=>{queueMicrotask(()=>{n.update(()=>{let t=s.current;if(!t)return;let n=vb().getTextContent();if(bE===null){s.current=null;return}if(n!==`${t.value.slice(0,t.expandedStart)}\`${t.value.slice(t.expandedEnd)}`){e?.finalAttempt&&(o.current=null,s.current=null);return}let r=t.value.slice(t.expandedStart,t.expandedEnd),i=Dt(n,t.expandedStart);XE(i,i+1);let a=vv();if(!Q(a)){o.current=null,s.current=null;return}a.insertText(`\`${r}${bE}`),XE(i+1,i+1+r.length),o.current=null,s.current=null},{tag:f_})})},i=e=>{let t=e;(t.inputType===`insertText`||t.inputType===`insertCompositionText`)&&r()},a=()=>{r({finalAttempt:!0})},c=null,l=n.registerRootListener((n,r)=>{r?.removeEventListener(`keydown`,e),r?.removeEventListener(`beforeinput`,t,!0),r?.removeEventListener(`input`,i),r?.removeEventListener(`compositionend`,a),n?.addEventListener(`keydown`,e),n?.addEventListener(`beforeinput`,t,!0),n?.addEventListener(`input`,i),n?.addEventListener(`compositionend`,a),c=n});return()=>{c&&(c.removeEventListener(`keydown`,e),c.removeEventListener(`beforeinput`,t,!0),c.removeEventListener(`input`,i),c.removeEventListener(`compositionend`,a)),l()}},h=[p,n],t[10]=p,t[11]=n,t[12]=m,t[13]=h):(m=t[12],h=t[13]),(0,q.useEffect)(m,h),null}function lD(){let e=vv();if(!Q(e)||e.isCollapsed()||QE(e))return null;let t=ZE(e);if(!t||t.start===t.end)return null;let n=vb().getTextContent();return yt(n,t.start,t.end)?null:{value:n,expandedStart:t.start,expandedEnd:t.end}}function uD(e){let t=(0,J.c)(78),{value:n,cursor:r,terminalContexts:i,skills:a,disabled:o,placeholder:s,collapsed:c,className:l,onRemoveTerminalContext:u,onChange:d,onCommandKeyDown:f,onPaste:p,editorRef:m}=e,[h]=Cp(),g=(0,q.useRef)(d),_=hn(n,r),v;t[0]===i?v=t[1]:(v=FE(i),t[0]=i,t[1]=v);let y=v,b=(0,q.useRef)(y),x;t[2]===a?x=t[3]:(x=IE(a),t[2]=a,t[3]=x);let S=x,C=(0,q.useRef)(S),w;t[4]===a?w=t[5]:(w=EE(a),t[4]=a,t[5]=w);let T=(0,q.useRef)(w),E=pn(n,_),D;t[6]===i?D=t[7]:(D=i.map(fD),t[6]=i,t[7]=D);let O;t[8]!==_||t[9]!==E||t[10]!==D||t[11]!==n?(O={value:n,cursor:_,expandedCursor:E,terminalContextIds:D},t[8]=_,t[9]=E,t[10]=D,t[11]=n,t[12]=O):O=t[12];let k=(0,q.useRef)(O),A=(0,q.useRef)(!1),j;t[13]===u?j=t[14]:(j={onRemoveTerminalContext:u},t[13]=u,t[14]=j);let M=j,N,P;t[15]===d?(N=t[16],P=t[17]):(N=()=>{g.current=d},P=[d],t[15]=d,t[16]=N,t[17]=P),(0,q.useEffect)(N,P);let F,I;t[18]===a?(F=t[19],I=t[20]):(F=()=>{T.current=EE(a)},I=[a],t[18]=a,t[19]=F,t[20]=I),(0,q.useLayoutEffect)(F,I);let L,R;t[21]!==o||t[22]!==h?(L=()=>{h.setEditable(!o)},R=[o,h],t[21]=o,t[22]=h,t[23]=L,t[24]=R):(L=t[23],R=t[24]),(0,q.useEffect)(L,R);let z,ee;t[25]!==r||t[26]!==h||t[27]!==S||t[28]!==i||t[29]!==y||t[30]!==n?(z=()=>{let e=hn(n,r),t=k.current,a=b.current!==y,o=C.current!==S;if(t.value===n&&t.cursor===e&&!a&&!o)return;k.current={value:n,cursor:e,expandedCursor:pn(n,e),terminalContextIds:i.map(dD)},b.current=y,C.current=S;let s=h.getRootElement(),c=!!(s&&document.activeElement===s);t.value===n&&!a&&!o&&!c||(A.current=!0,h.update(()=>{let r=t.value!==n||a||o;r&&nD(n,i,T.current),(r||c)&&YE(e)}),queueMicrotask(()=>{A.current=!1}))},ee=[r,h,S,i,y,n],t[25]=r,t[26]=h,t[27]=S,t[28]=i,t[29]=y,t[30]=n,t[31]=z,t[32]=ee):(z=t[31],ee=t[32]),(0,q.useLayoutEffect)(z,ee);let te;t[33]===h?te=t[34]:(te=e=>{let t=h.getRootElement();if(!t)return;let n=hn(k.current.value,e);t.focus({preventScroll:!0}),h.update(()=>{YE(n)}),k.current={value:k.current.value,cursor:n,expandedCursor:pn(k.current.value,n),terminalContextIds:k.current.terminalContextIds},g.current(k.current.value,n,k.current.expandedCursor,!1,k.current.terminalContextIds)},t[33]=h,t[34]=te);let ne=te,B;t[35]===h?B=t[36]:(B=()=>{let e=k.current;return h.getEditorState().read(()=>{let t=vb().getTextContent(),n=hn(t,k.current.cursor);e={value:t,cursor:hn(t,$E(n)),expandedCursor:LE(t,eD(LE(t,k.current.expandedCursor))),terminalContextIds:rD(vb())}}),k.current=e,e},t[35]=h,t[36]=B);let re=B,ie;t[37]===h?ie=t[38]:(ie=e=>{h.getRootElement()?.focus(),h.update(()=>{let t=vv();Q(t)||(YE(k.current.cursor),t=vv()),Q(t)&&t.insertText(e)},{tag:f_})},t[37]=h,t[38]=ie);let V=ie,ae,oe;t[39]!==ne||t[40]!==V||t[41]!==re?(ae=()=>({focus:()=>{ne(k.current.cursor)},focusAt:ne,focusAtEnd:()=>{ne(Dt(k.current.value,k.current.value.length))},insertTextAndFocus:V,readSnapshot:re}),oe=[ne,V,re],t[39]=ne,t[40]=V,t[41]=re,t[42]=ae,t[43]=oe):(ae=t[42],oe=t[43]),(0,q.useImperativeHandle)(m,ae,oe);let H;t[44]===Symbol.for(`react.memo_cache_sentinel`)?(H=e=>{e.read(()=>{let e=vb().getTextContent(),t=hn(e,k.current.cursor),n=hn(e,$E(t)),r=LE(e,eD(LE(e,k.current.expandedCursor))),i=rD(vb()),a=k.current;if(a.value===e&&a.cursor===n&&a.expandedCursor===r&&a.terminalContextIds.length===i.length&&a.terminalContextIds.every((e,t)=>e===i[t])||A.current)return;k.current={value:e,cursor:n,expandedCursor:r,terminalContextIds:i};let o=ft(e,n,`left`)||ft(e,n,`right`);g.current(e,n,r,o,i)})},t[44]=H):H=t[44];let se=H,ce=c?`max-h-6.5 min-h-6.5 overflow-hidden text-ellipsis whitespace-nowrap`:`max-h-[200px] min-h-17.5 overflow-y-auto`,le;t[45]!==l||t[46]!==ce?(le=G(`block w-full whitespace-pre-wrap wrap-break-word bg-transparent text-[16px] leading-relaxed text-foreground focus:outline-none not-phone:text-[14px]`,ce,l),t[45]=l,t[46]=ce,t[47]=le):le=t[47];let ue=c?s:void 0,de;t[48]===Symbol.for(`react.memo_cache_sentinel`)?(de=(0,Y.jsx)(`span`,{}),t[48]=de):de=t[48];let fe;t[49]!==p||t[50]!==s||t[51]!==le||t[52]!==ue?(fe=(0,Y.jsx)(RC,{className:le,"data-testid":`composer-editor`,"aria-label":ue,"aria-placeholder":s,placeholder:de,onPaste:p}),t[49]=p,t[50]=s,t[51]=le,t[52]=ue,t[53]=fe):fe=t[53];let U;t[54]!==c||t[55]!==s||t[56]!==i.length?(U=i.length>0?null:(0,Y.jsx)(`div`,{className:G(`pointer-events-none absolute inset-0 text-[16px] leading-relaxed text-muted-foreground/35 not-phone:text-[14px]`,c&&`overflow-hidden text-ellipsis whitespace-nowrap`),children:s}),t[54]=c,t[55]=s,t[56]=i.length,t[57]=U):U=t[57];let pe;t[58]!==fe||t[59]!==U?(pe=(0,Y.jsx)(mE,{contentEditable:fe,placeholder:U,ErrorBoundary:HC}),t[58]=fe,t[59]=U,t[60]=pe):pe=t[60];let me;t[61]===Symbol.for(`react.memo_cache_sentinel`)?(me=(0,Y.jsx)(sT,{onChange:se}),t[61]=me):me=t[61];let he;t[62]===f?he=t[63]:(he=(0,Y.jsx)(iD,{...f?{onCommandKeyDown:f}:{}}),t[62]=f,t[63]=he);let ge;t[64]!==a||t[65]!==i?(ge=(0,Y.jsx)(cD,{terminalContexts:i,skills:a}),t[64]=a,t[65]=i,t[66]=ge):ge=t[66];let _e,ve,ye,be;t[67]===Symbol.for(`react.memo_cache_sentinel`)?(_e=(0,Y.jsx)(aD,{}),ve=(0,Y.jsx)(oD,{}),ye=(0,Y.jsx)(sD,{}),be=(0,Y.jsx)(aT,{}),t[67]=_e,t[68]=ve,t[69]=ye,t[70]=be):(_e=t[67],ve=t[68],ye=t[69],be=t[70]);let xe;t[71]!==pe||t[72]!==he||t[73]!==ge?(xe=(0,Y.jsxs)(`div`,{className:`relative`,children:[pe,me,he,ge,_e,ve,ye,be]}),t[71]=pe,t[72]=he,t[73]=ge,t[74]=xe):xe=t[74];let Se;return t[75]!==xe||t[76]!==M?(Se=(0,Y.jsx)(xE.Provider,{value:M,children:xe}),t[75]=xe,t[76]=M,t[77]=Se):Se=t[77],Se}function dD(e){return e.id}function fD(e){return e.id}var pD=(0,q.forwardRef)(function(e,t){let n=(0,J.c)(21),{value:r,cursor:i,terminalContexts:a,skills:o,disabled:s,placeholder:c,collapsed:l,className:u,onRemoveTerminalContext:d,onChange:f,onCommandKeyDown:p,onPaste:m}=e,h=(0,q.useRef)(r),g=(0,q.useRef)(a),_;n[0]===o?_=n[1]:(_=EE(o),n[0]=o,n[1]=_);let v=(0,q.useRef)(_),y;n[2]===Symbol.for(`react.memo_cache_sentinel`)?(y={namespace:`rycotools-composer-editor`,editable:!0,nodes:[CE,OE,jE],editorState:()=>{nD(h.current,g.current,v.current)},onError:mD},n[2]=y):y=n[2];let b=y,x;n[3]===p?x=n[4]:(x=p?{onCommandKeyDown:p}:{},n[3]=p,n[4]=x);let S;n[5]===u?S=n[6]:(S=u?{className:u}:{},n[5]=u,n[6]=S);let C;return n[7]!==l||n[8]!==i||n[9]!==s||n[10]!==f||n[11]!==m||n[12]!==d||n[13]!==c||n[14]!==t||n[15]!==o||n[16]!==x||n[17]!==S||n[18]!==a||n[19]!==r?(C=(0,Y.jsx)(kC,{initialConfig:b,children:(0,Y.jsx)(uD,{value:r,cursor:i,terminalContexts:a,skills:o,disabled:s,placeholder:c,collapsed:l,onRemoveTerminalContext:d,onChange:f,onPaste:m,editorRef:t,...x,...S})},vE),n[7]=l,n[8]=i,n[9]=s,n[10]=f,n[11]=m,n[12]=d,n[13]=c,n[14]=t,n[15]=o,n[16]=x,n[17]=S,n[18]=a,n[19]=r,n[20]=C):C=n[20],C});function mD(e){throw e}function hD(e,t){let n=e.flatMap(e=>e.previewUrl?[{id:e.id,src:e.previewUrl,name:e.name}]:[]);if(n.length===0)return null;let r=n.findIndex(e=>e.id===t);return r<0?null:{images:n.map(e=>({src:e.src,name:e.name})),index:r}}function gD(e){let t=e.indexOf(`#`);return t<0||e.slice(0,t).includes(`/`)?e:e.slice(t)}function _D(e){let t=(0,J.c)(36),{context:n,onRemove:r}=e,i;t[0]===n.reference?i=t[1]:(i=gD(n.reference),t[0]=n.reference,t[1]=i);let a=i,o=n.detail.title,s=n.detail.truncated,c;t[2]!==n.detail||t[3]!==n.kind?(c=n.kind===`change-request`&&`baseRefName`in n.detail?hi(n.detail):null,t[2]=n.detail,t[3]=n.kind,t[4]=c):c=t[4];let l=c,u=n.kind===`change-request`?Ji:vr,d=`body`in n.detail&&typeof n.detail.body==`string`?n.detail.body:null,f=n.id,p;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(p=G(Zi,`size-3.5`),t[5]=p):p=t[5];let m;t[6]===u?m=t[7]:(m=(0,Y.jsx)(u,{className:p,"aria-hidden":`true`}),t[6]=u,t[7]=m);let h;t[8]===a?h=t[9]:(h=(0,Y.jsx)(`span`,{className:`shrink-0 font-mono text-[11px] text-muted-foreground`,children:a}),t[8]=a,t[9]=h);let g;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(g=G(Ca,`max-w-32`),t[10]=g):g=t[10];let _;t[11]===o?_=t[12]:(_=(0,Y.jsx)(`span`,{className:g,children:o}),t[11]=o,t[12]=_);let v;t[13]===s?v=t[14]:(v=s?(0,Y.jsx)(`span`,{"aria-label":`Context truncated`,className:`ml-0.5 shrink-0 rounded-sm bg-warning/20 px-0.5 text-[9px] font-semibold uppercase leading-tight text-warning-foreground`,children:`truncated`}):null,t[13]=s,t[14]=v);let y;t[15]===l?y=t[16]:(y=l?(0,Y.jsx)(ai,{view:l,mode:`compact`}):null,t[15]=l,t[16]=y);let b;t[17]!==n.id||t[18]!==r?(b=()=>r(n.id),t[17]=n.id,t[18]=r,t[19]=b):b=t[19];let x;t[20]===Symbol.for(`react.memo_cache_sentinel`)?(x=(0,Y.jsx)(Qa,{className:`size-3`,"aria-hidden":`true`}),t[20]=x):x=t[20];let S;t[21]===b?S=t[22]:(S=(0,Y.jsx)(`button`,{type:`button`,"aria-label":`Remove context`,className:na,onClick:b,children:x}),t[21]=b,t[22]=S);let C;t[23]!==n.id||t[24]!==S||t[25]!==m||t[26]!==h||t[27]!==_||t[28]!==v||t[29]!==y?(C=(0,Y.jsx)(Po,{render:(0,Y.jsxs)(`span`,{className:wa,"data-context-id":f,children:[m,h,_,v,y,S]})}),t[23]=n.id,t[24]=S,t[25]=m,t[26]=h,t[27]=_,t[28]=v,t[29]=y,t[30]=C):C=t[30];let w;t[31]===d?w=t[32]:(w=d?(0,Y.jsx)(Fo,{side:`top`,className:`max-w-80 whitespace-pre-wrap leading-tight`,children:d}):null,t[31]=d,t[32]=w);let T;return t[33]!==C||t[34]!==w?(T=(0,Y.jsxs)(Io,{children:[C,w]}),t[33]=C,t[34]=w,t[35]=T):T=t[35],T}var vD=(0,q.memo)(function(e){let t=(0,J.c)(76),{editorRef:n,isComposerCollapsedMobile:r,hasComposerHeader:i,isComposerApprovalState:a,resolvedTheme:o,composerMenuOpen:s,composerMenuItems:c,isComposerMenuLoading:l,composerTriggerKind:u,composerTrigger:d,composerMenuEmptyState:f,activeComposerMenuItemId:p,onComposerMenuItemHighlighted:m,onSelectComposerItem:h,composerSourceControlContexts:g,onRemoveSourceControlContext:_,composerImages:v,nonPersistedComposerImageIdSet:y,onExpandImage:b,onRemoveImage:x,pendingUserInputCount:S,prompt:C,composerCursor:w,composerTerminalContexts:T,skills:E,showMobilePendingAnswerActions:D,onRemoveTerminalContext:O,onPromptChange:k,onComposerCommandKey:A,onComposerPaste:j,activePendingProgress:M,showPlanFollowUpPrompt:N,activeProposedPlan:P,environmentUnavailable:F,phase:I,isConnecting:L,isEditorDisabled:R,showCollapsedSendAction:z,collapsedSendActionLabel:ee,collapsedSendActionDisabled:te,onCollapsedSend:ne,isSendBusy:B,pendingPrimaryAction:re,onPreviousPendingQuestion:ie,onInterrupt:V,onImplementPlanInNewThread:ae}=e,oe=i?`pt-2.5 sm:pt-3`:`pt-3.5 sm:pt-4`,H;t[0]===oe?H=t[1]:(H=G(`relative px-3 pb-2 sm:px-4`,oe),t[0]=oe,t[1]=H);let se=s&&!a,ce;t[2]===d?ce=t[3]:(ce=d?.kind===`slash-command`&&d.query.trim().length===0,t[2]=d,t[3]=ce);let le;t[4]!==p||t[5]!==f||t[6]!==c||t[7]!==u||t[8]!==l||t[9]!==m||t[10]!==h||t[11]!==o||t[12]!==se||t[13]!==ce?(le=(0,Y.jsx)(zf,{open:se,items:c,resolvedTheme:o,isLoading:l,triggerKind:u,groupSlashCommandSections:ce,emptyStateText:f,activeItemId:p,onHighlightedItemChange:m,onSelect:h}),t[4]=p,t[5]=f,t[6]=c,t[7]=u,t[8]=l,t[9]=m,t[10]=h,t[11]=o,t[12]=se,t[13]=ce,t[14]=le):le=t[14];let ue;t[15]!==g||t[16]!==a||t[17]!==r||t[18]!==_||t[19]!==S?(ue=!r&&!a&&S===0&&g.length>0&&(0,Y.jsx)(`div`,{className:`mb-2 flex flex-wrap gap-1.5`,children:g.map(e=>(0,Y.jsx)(_D,{context:e,onRemove:_},e.id))}),t[15]=g,t[16]=a,t[17]=r,t[18]=_,t[19]=S,t[20]=ue):ue=t[20];let de;t[21]!==v||t[22]!==a||t[23]!==r||t[24]!==y||t[25]!==b||t[26]!==x||t[27]!==S?(de=!r&&!a&&S===0&&v.length>0&&(0,Y.jsx)(`div`,{className:`mb-3 flex flex-wrap gap-2`,children:v.map(e=>(0,Y.jsxs)(`div`,{className:`relative h-16 w-16 overflow-hidden rounded-lg border border-border/80 bg-background`,children:[e.previewUrl?(0,Y.jsx)(`button`,{type:`button`,className:`h-full w-full cursor-zoom-in`,"aria-label":`Preview ${e.name}`,onClick:()=>{let t=hD(v,e.id);t&&b(t)},children:(0,Y.jsx)(`img`,{src:e.previewUrl,alt:e.name,className:`h-full w-full object-cover`})}):(0,Y.jsx)(`div`,{className:`flex h-full w-full items-center justify-center px-1 text-center text-[10px] text-muted-foreground/70`,children:e.name}),y.has(e.id)&&(0,Y.jsxs)(Io,{children:[(0,Y.jsx)(Po,{render:(0,Y.jsx)(`span`,{role:`img`,"aria-label":`Draft attachment may not persist`,className:`absolute left-1 top-1 inline-flex items-center justify-center rounded bg-background/85 p-0.5 text-amber-600`,children:(0,Y.jsx)(Di,{className:`size-3`})})}),(0,Y.jsx)(Fo,{side:`top`,className:`max-w-64 whitespace-normal leading-tight`,children:`Draft attachment could not be saved locally and may be lost on navigation.`})]}),(0,Y.jsx)(K,{variant:`ghost`,size:`icon-xs`,className:`absolute right-1 top-1 bg-background/80 hover:bg-background/90`,onClick:()=>x(e.id),"aria-label":`Remove ${e.name}`,children:(0,Y.jsx)(Qa,{})})]},e.id))}),t[21]=v,t[22]=a,t[23]=r,t[24]=y,t[25]=b,t[26]=x,t[27]=S,t[28]=de):de=t[28];let fe=z&&`flex items-center gap-2`,U;t[29]===fe?U=t[30]:(U=G(`relative`,fe),t[29]=fe,t[30]=U);let pe=a?``:M?M.customAnswer:C,me;t[31]!==T||t[32]!==a||t[33]!==S?(me=!a&&S===0?T:[],t[31]=T,t[32]=a,t[33]=S,t[34]=me):me=t[34];let he;t[35]===D?he=t[36]:(he=D?{className:`phone:pb-11`}:{},t[35]=D,t[36]=he);let ge=a?`Resolve this approval request to continue`:M?r?`Write custom answer`:`Type your own answer, or leave this blank to use the selected option`:N&&P?r?`Add plan feedback`:`Add feedback to refine the plan, or leave this blank to implement it`:F?`${F.label} is ${F.connectionState===`connecting`?`connecting`:`disconnected`}`:I===`disconnected`?`Ask for follow-up changes or attach images`:r?`Ask anything...`:`Ask anything, @tag files/folders, or use / to show available commands`,_e;t[37]!==w||t[38]!==n||t[39]!==r||t[40]!==R||t[41]!==A||t[42]!==j||t[43]!==k||t[44]!==O||t[45]!==E||t[46]!==me||t[47]!==he||t[48]!==ge||t[49]!==pe?(_e=(0,Y.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,Y.jsx)(pD,{ref:n,collapsed:r,value:pe,cursor:w,terminalContexts:me,skills:E,...he,onRemoveTerminalContext:O,onChange:k,onCommandKeyDown:A,onPaste:j,placeholder:ge,disabled:R})}),t[37]=w,t[38]=n,t[39]=r,t[40]=R,t[41]=A,t[42]=j,t[43]=k,t[44]=O,t[45]=E,t[46]=me,t[47]=he,t[48]=ge,t[49]=pe,t[50]=_e):_e=t[50];let ve;t[51]!==te||t[52]!==ee||t[53]!==ne||t[54]!==z?(ve=z?(0,Y.jsx)(`button`,{type:`button`,className:`flex size-8 shrink-0 items-center justify-center rounded-lg bg-primary/90 text-primary-foreground disabled:opacity-30`,disabled:te,"aria-label":ee,onPointerDown:yD,onClick:e=>{e.stopPropagation(),ne()},children:(0,Y.jsx)(`svg`,{width:`16`,height:`16`,viewBox:`0 0 16 16`,fill:`none`,"aria-hidden":`true`,children:(0,Y.jsx)(`path`,{d:`M8 3L8 13M8 3L4 7M8 3L12 7`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`})})}):null,t[51]=te,t[52]=ee,t[53]=ne,t[54]=z,t[55]=ve):ve=t[55];let ye;t[56]!==F||t[57]!==L||t[58]!==B||t[59]!==ae||t[60]!==V||t[61]!==ie||t[62]!==re||t[63]!==D?(ye=D?(0,Y.jsx)(`div`,{"data-chat-composer-mobile-pending-actions":`true`,className:`absolute bottom-0 right-0 flex justify-end`,children:(0,Y.jsx)(Rd,{compact:!0,pendingAction:re,isRunning:!1,showPlanFollowUpPrompt:!1,promptHasText:!1,isSendBusy:B,isConnecting:L,isEnvironmentUnavailable:F!==null,isPreparingWorktree:!1,hasSendableContent:!1,preserveComposerFocusOnPointerDown:!0,onPreviousPendingQuestion:ie,onInterrupt:V,onImplementPlanInNewThread:ae})}):null,t[56]=F,t[57]=L,t[58]=B,t[59]=ae,t[60]=V,t[61]=ie,t[62]=re,t[63]=D,t[64]=ye):ye=t[64];let be;t[65]!==_e||t[66]!==ve||t[67]!==ye||t[68]!==U?(be=(0,Y.jsxs)(`div`,{className:U,children:[_e,ve,ye]}),t[65]=_e,t[66]=ve,t[67]=ye,t[68]=U,t[69]=be):be=t[69];let xe;return t[70]!==H||t[71]!==be||t[72]!==le||t[73]!==ue||t[74]!==de?(xe=(0,Y.jsxs)(`div`,{className:H,children:[le,ue,de,be]}),t[70]=H,t[71]=be,t[72]=le,t[73]=ue,t[74]=de,t[75]=xe):xe=t[75],xe});function yD(e){return e.preventDefault()}function bD(e){let t=(0,J.c)(11),{label:n,items:r,className:i}=e;if(r.length===0)return null;let a;t[0]===i?a=t[1]:(a=G(`relative min-w-0`,i),t[0]=i,t[1]=a);let o;t[2]===r?o=t[3]:(o=r.map(xD),t[2]=r,t[3]=o);let s;t[4]!==n||t[5]!==o?(s=(0,Y.jsx)(`div`,{role:`group`,"aria-label":n,className:`flex min-w-0 items-center gap-1.5 overflow-x-auto overscroll-x-contain pe-4 [scrollbar-width:none] [&::-webkit-scrollbar]:hidden`,"data-slot":`mobile-context-strip-rail`,children:o}),t[4]=n,t[5]=o,t[6]=s):s=t[6];let c;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,Y.jsx)(`span`,{"aria-hidden":!0,className:`pointer-events-none absolute inset-y-0 end-0 w-4 bg-gradient-to-l from-background/80 to-transparent`,"data-slot":`mobile-context-strip-edge`}),t[7]=c):c=t[7];let l;return t[8]!==a||t[9]!==s?(l=(0,Y.jsxs)(`div`,{className:a,"data-slot":`mobile-context-strip`,children:[s,c]}),t[8]=a,t[9]=s,t[10]=l):l=t[10],l}function xD(e){return(0,Y.jsxs)(`button`,{type:`button`,"aria-pressed":e.selected,disabled:e.disabled??!1,className:G(Vc(`chip`),`flex min-h-[var(--app-dock-control-size)] min-w-[var(--app-dock-control-size)] shrink-0 items-center gap-1.5 rounded-full border border-border/60 px-3 text-xs`,`transition-colors duration-[var(--app-motion-duration-chip)] ease-[var(--app-motion-ease)] motion-reduce:transition-none`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-inset`,`disabled:pointer-events-none disabled:text-muted-foreground/60`,e.selected===!0&&`ring-1 ring-ring/50`),"data-slot":`mobile-context-strip-pill`,onClick:e.onSelect,children:[e.icon,(0,Y.jsx)(`span`,{className:`max-w-40 truncate font-medium`,children:e.label}),e.value===void 0?null:(0,Y.jsx)(`span`,{className:`max-w-40 truncate text-muted-foreground`,children:e.value})]},e.id)}var SD=new Map;function CD(e){let[t,n]=(0,q.useState)(!1),[r,a]=(0,q.useState)(!1),o=f(i(e.environmentId,e.threadId)),s=oe($a(ce)),c=(0,q.useMemo)(()=>s.find(t=>t.id===e.threadId&&t.environmentId===e.environmentId)??null,[e.environmentId,e.threadId,s]),l=(0,q.useMemo)(()=>e.draft?{id:e.threadId,environmentId:e.environmentId,projectId:e.draft.projectId,title:e.title,interactionMode:nn,session:null,createdAt:e.draft.createdAt,archivedAt:null,settledOverride:null,settledAt:null,latestTurn:null,branch:null,worktreePath:null,latestUserMessageAt:null,hasPendingApprovals:!1,hasPendingUserInput:!1,hasActionableProposedPlan:!1,draftId:e.draft.draftId}:null,[e.draft,e.environmentId,e.threadId,e.title]),u=c??l,d=(0,q.useRef)(new Map);d.current=(0,q.useMemo)(()=>new Map(u?[[o,u]]:[]),[u,o]);let p=Zc({sidebarThreadByKeyRef:d,memberProjectByScopedKey:SD,projectCwd:e.projectCwd}),m=u?p.listThreadMenuActions(o):[],h=e.sessionTabs.length>0&&e.onSelectSessionTab!==null,g=[{id:`find`,label:`Find in thread`,icon:(0,Y.jsx)(Ia,{"aria-hidden":!0,className:`size-3.5 shrink-0`}),onSelect:e.onOpenFindInThread},...e.onOpenSourceControl?[{id:`source-control`,label:`Source control`,...e.branch===null?{}:{value:e.branch},icon:(0,Y.jsx)(Ji,{"aria-hidden":!0,className:`size-3.5 shrink-0`}),onSelect:e.onOpenSourceControl}]:[],...h?[{id:`sessions`,label:`Sessions`,value:String(e.sessionTabs.length),icon:(0,Y.jsx)(Gi,{"aria-hidden":!0,className:`size-3.5 shrink-0`}),onSelect:()=>a(!0)}]:[]];return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`div`,{className:`mb-1.5 flex min-w-0 items-center gap-1.5`,"data-slot":`phone-thread-dock`,children:[(0,Y.jsx)(`button`,{type:`button`,"aria-label":`Toggle workspace panel`,"aria-pressed":e.workspacePanelOpen,className:`flex min-h-[var(--app-dock-control-size)] min-w-[var(--app-dock-control-size)] shrink-0 items-center justify-center rounded-full text-muted-foreground hover:bg-accent hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring aria-pressed:bg-accent aria-pressed:text-foreground`,onClick:e.onToggleWorkspacePanel,children:(0,Y.jsx)(Aa,{"aria-hidden":!0,className:`size-4`})}),(0,Y.jsx)(bD,{label:`Thread context`,items:g,className:`w-0 grow`}),(0,Y.jsx)(`button`,{type:`button`,"aria-label":`Thread actions`,className:`flex min-h-[var(--app-dock-control-size)] min-w-[var(--app-dock-control-size)] shrink-0 items-center justify-center rounded-full text-muted-foreground hover:bg-accent hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring`,onClick:()=>n(!0),children:(0,Y.jsx)(Bi,{"aria-hidden":!0,className:`size-4`})})]}),(0,Y.jsx)(Yc,{open:t,onOpenChange:n,title:e.title,items:m,onAction:t=>{p.performThreadMenuAction(i(e.environmentId,e.threadId),t)},leadingSections:c?(0,Y.jsx)(hr,{thread:c}):void 0}),(0,Y.jsxs)(Bc,{open:r,onOpenChange:a,label:`Sessions in this worktree`,detent:`medium`,children:[(0,Y.jsx)(Fc,{children:(0,Y.jsx)(Lc,{children:`Sessions`})}),(0,Y.jsx)(Nc,{children:(0,Y.jsx)(`div`,{role:`group`,"aria-label":`Sessions in this worktree`,className:`space-y-0.5`,children:e.sessionTabs.map(t=>(0,Y.jsx)(zc,{label:t.title,selected:t.key===e.activeSessionTabKey,trailing:t.key===e.activeSessionTabKey?(0,Y.jsx)(Jr,{"aria-hidden":!0,className:`size-4 shrink-0`}):void 0,onClick:()=>{a(!1),e.onSelectSessionTab?.(t.key)}},t.key))})})]}),(0,Y.jsx)(Xc,{renamingThreadKey:p.renamingThreadKey,originalTitle:c?.title??e.title,renamingTitle:p.renamingTitle,setRenamingTitle:p.setRenamingTitle,commitRename:p.commitRename,cancelRename:p.cancelRename})]})}var wD=`${Math.round(g/1048576)}MB`,TD=`${Math.round(E/1048576)}MB`,ED=` `;async function DD(e){let t=new Uint8Array(await e.arrayBuffer()),n=``,r=32768;for(let e=0;e<t.length;e+=r)n+=String.fromCharCode(...t.subarray(e,e+r));return btoa(n)}function OD(e){let{composerDraftTarget:t,environmentId:n,activeThreadId:r,draftId:i,routeThreadRef:a,runtimeMode:o,gitCwd:s,pendingUserInputCount:c,composerImagesRef:l,editorRef:u,setThreadError:d,focusComposer:f}=e,p=qt(e=>e.addImage),m=qt(e=>e.addImages),h=qt(e=>e.removeImage),[g,_]=(0,q.useState)(!1),v=(0,q.useRef)(0);(0,q.useEffect)(()=>{v.current=0,_(!1)},[i,r]);let y=(0,q.useCallback)(e=>{p(t,e)},[t,p]),b=(0,q.useCallback)(e=>{m(t,e)},[t,m]),x=(0,q.useCallback)(e=>{h(t,e)},[t,h]),S=(0,q.useCallback)(e=>{if(!r||e.length===0)return;if(c>0){ki.add({type:`error`,title:`Attach images after answering plan questions.`});return}let t=[],n=l.current.length,i=null;for(let r of e){if(!r.type.startsWith(`image/`)){i=`Unsupported file type for '${r.name}'. Please attach image files only.`;continue}if(r.size>10485760){i=`'${r.name}' exceeds the ${wD} attachment limit.`;continue}if(n>=8){i=`You can attach up to 8 images per message.`;break}let e=URL.createObjectURL(r);t.push({type:`image`,id:ro(),name:r.name||`image`,mimeType:r.type,sizeBytes:r.size,previewUrl:e,file:r}),n+=1}t.length===1&&t[0]?y(t[0]):t.length>1&&b(t),d(r,i)},[r,y,b,l,c,d]),C=(0,q.useCallback)(e=>{if(e.length===0)return;let t=u.current;if(!t)return;let n=t.readSnapshot(),r=e.join(ED),i=n.value[n.cursor-1]??``,a=n.value[n.cursor]??``,o=i.length>0&&!/\s/.test(i),s=a.length>0&&!/\s/.test(a);t.insertTextAndFocus(`${o?ED:``}${r}${s?ED:``}`)},[u]),w=(0,q.useCallback)(()=>{let e=nt();return window.desktopBridge!==void 0&&e?.source===`desktop-managed`&&e.environmentId===n},[n]),T=(0,q.useCallback)(async e=>{if(!s)return ki.add({type:`error`,title:`Couldn't stage '${e.name||`file`}'.`,description:`No active workspace is available for this composer.`}),null;if(e.size>10485760)return ki.add({type:`error`,title:`'${e.name||`file`}' exceeds the ${TD} file staging limit.`}),null;let t=Le(n);if(!t)return ki.add({type:`error`,title:`Couldn't stage '${e.name||`file`}'.`,description:`The active environment is not connected.`}),null;try{return(await t.projects.stageFileReference({cwd:s,scopeId:String(r??i??a.threadId),name:e.name||`file`,...e.type?{mimeType:e.type}:{},sizeBytes:e.size,dataBase64:await DD(e)})).relativePath}catch(t){return ki.add({type:`error`,title:`Couldn't stage '${e.name||`file`}'.`,description:t instanceof Error?t.message:`File staging failed.`}),null}},[r,i,n,s,a.threadId]),E=(0,q.useCallback)(async e=>{let t=null;try{t=await pe()?.shell.getPathForFile?.(e)??null}catch{t=null}return at({resolvedPath:t,cwd:s,runtimeMode:o,isLocalDesktopEnvironment:w()})?t:T(e)},[s,w,o,T]),D=(0,q.useCallback)(async e=>{if(e.length===0)return;let t=e.filter(e=>e.type.startsWith(`image/`)),n=e.filter(e=>!e.type.startsWith(`image/`));if(t.length>0&&S(t),n.length===0)return;let r=(await Promise.all(n.map(async e=>{let t=await E(e);return t?kt(t):null}))).filter(e=>e!==null);C(r)},[S,C,E]);return{isDragOverComposer:g,addComposerAttachments:D,removeComposerImage:(0,q.useCallback)(e=>{x(e)},[x]),onComposerPaste:(0,q.useCallback)(e=>{let t=Array.from(e.clipboardData.files);t.length!==0&&(e.preventDefault(),D(t))},[D]),onComposerDragEnter:(0,q.useCallback)(e=>{e.dataTransfer.types.includes(`Files`)&&(e.preventDefault(),v.current+=1,_(!0))},[]),onComposerDragOver:(0,q.useCallback)(e=>{e.dataTransfer.types.includes(`Files`)&&(e.preventDefault(),e.dataTransfer.dropEffect=`copy`,_(!0))},[]),onComposerDragLeave:(0,q.useCallback)(e=>{if(!e.dataTransfer.types.includes(`Files`))return;e.preventDefault();let t=e.relatedTarget;t instanceof Node&&e.currentTarget.contains(t)||(v.current=Math.max(0,v.current-1),v.current===0&&_(!1))},[]),onComposerDrop:(0,q.useCallback)(e=>{if(!e.dataTransfer.types.includes(`Files`))return;e.preventDefault(),v.current=0,_(!1);let t=Array.from(e.dataTransfer.files),n=t.some(e=>!e.type.startsWith(`image/`));D(t),n||f()},[D,f])}}function kD(){let e=new Map;return{getItem:t=>e.get(t)??null,setItem:(t,n)=>{e.set(t,n)},removeItem:t=>{e.delete(t)}}}function AD(){try{return typeof window>`u`?null:window.localStorage}catch{return null}}function jD(e){let t=e.memoryStorage??kD(),n=e.hosted??!1,r,i=()=>{if(n)return null;if(r!==void 0)return r;try{r=(e.getDurableStorage??AD)()}catch{r=null}return r||(n=!0),r},a=()=>{try{return t.getItem(Ht)}catch{return null}};return{read:()=>{let e=i();if(e)try{return e.getItem(Ht)}catch{n=!0}return a()},write:e=>{let r=JSON.stringify({entries:e}),a=i();if(a)try{return a.setItem(Ht,r),{written:!0,durable:!0}}catch{n=!0}try{return t.setItem(Ht,r),{written:!0,durable:!1}}catch{return{written:!1,durable:!1}}},remove:()=>{let e=i();if(e)try{return e.removeItem(Ht),{durable:!0}}catch{n=!0}try{t.removeItem(Ht)}catch{}return{durable:!1}}}}function MD(e={}){let t=jD(e),n=c()((e,n)=>({entries:[],hydrate:()=>{let n=t.read();if(typeof n!=`string`||n.length===0){e({entries:[]});return}try{let t=JSON.parse(n);e({entries:tn(t).entries})}catch{t.remove(),e({entries:[]})}},getEntries:()=>n().entries,getCount:()=>n().entries.length,stashEntry:r=>{if(!p(an)(r))return{evicted:null,written:!1,durable:!1};let i=n().entries,a=Wt([r,...i]),o=a.kept.slice(1),s=a.evicted[0]??null,c=Gt(r.attachments,Nt(o)),l=[{...r,attachments:c.kept,droppedImageNames:[...r.droppedImageNames,...c.droppedNames]},...o],u=t.write(l);return u.written?(e({entries:l}),{evicted:s,...u}):{evicted:null,...u}},takeEntry:r=>{let i=n().entries,a=i.find(e=>e.id===r)??null;if(!a)return{entry:null,durable:!0};let o=i.filter(e=>e.id!==r),s=t.write(o);return e({entries:o}),{entry:a,durable:s.durable}},finalizeEntryImages:(r,i)=>{let a=n().entries,o=a.findIndex(e=>e.id===r),s=o<0?void 0:a[o];if(!s)return{attached:!1,written:!0,durable:!0};let c=Gt(i.attachments,Nt(a,r)),l=[...a];l[o]={...s,attachments:c.kept,droppedImageNames:[...i.droppedImageNames,...c.droppedNames],unreadableImageNames:[...i.unreadableImageNames],pendingImageCount:0};let u=t.write(l);return u.written?(e({entries:l}),{attached:!0,...u}):{attached:!1,...u}}}));return n.getState().hydrate(),n}var ND=MD({hosted:l()}),PD=-64;function FD({hostRef:e}){let t=(0,q.useId)().replace(/[^a-zA-Z0-9_-]/g,``),[n,r]=(0,q.useState)(!1),[i,a]=(0,q.useState)(!1),[o,s]=(0,q.useState)(!1);return(0,q.useEffect)(()=>{Qc()&&(r(!0),a(tl()))},[]),(0,q.useEffect)(()=>{let r=e.current;if(!r||!n||!i)return;let a=rl(t);a.setScale(PD),$c().appendChild(a.filter);let o=0,c=0,l=null,u=!1,d=()=>{o=0;let e=r.offsetWidth,t=r.offsetHeight;if(e<24||t<24)return;let n=++c;nl({width:e,height:t,radius:22,edgeBandPx:36}).then(r=>{if(!r)return;if(u||n!==c){r.release();return}let i=Sr();a.setMap(r.url,e,t),l?.release(),l=r,s(!0),xr(`web.liquid-glass.apply`,{durationMs:Math.max(0,Sr()-i)})})},f=new ResizeObserver(()=>{o||=window.requestAnimationFrame(d)});return f.observe(r),d(),()=>{u=!0,c+=1,f.disconnect(),o&&window.cancelAnimationFrame(o),l?.release(),a.filter.remove(),s(!1)}},[n,i,t,e]),(0,q.useEffect)(()=>{let r=e.current;if(!r||!n)return;r.setAttribute(`data-liquid-glass`,`true`);let a=i&&o?`url(#${t}) blur(10px) saturate(185%)`:`blur(24px) saturate(185%)`;return r.style.setProperty(`--composer-liquid-backdrop`,a),()=>{r.removeAttribute(`data-liquid-glass`),r.style.removeProperty(`--composer-liquid-backdrop`)}},[n,i,o,t,e]),(0,q.useEffect)(()=>{let t=e.current;if(!(!t||!n))return el(t)},[n,e]),n?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`div`,{"aria-hidden":`true`,className:`liquid-glass-sheen`}),(0,Y.jsx)(`div`,{"aria-hidden":`true`,className:`liquid-glass-ring`}),(0,Y.jsx)(`div`,{"aria-hidden":`true`,className:`liquid-glass-ring liquid-glass-ring--overlay`})]}):null}var ID=(0,q.memo)(function(e){let t=(0,J.c)(11);if(e.count===0)return null;let n=`Stashed prompts: ${e.count}. Open stash.`,r=e.open,i=e.open?`border-border text-foreground opacity-100`:`border-border/70 text-muted-foreground opacity-75 hover:text-foreground hover:opacity-100`,a;t[0]===i?a=t[1]:(a=G(`absolute -top-3 right-4 z-20 inline-flex cursor-pointer items-center gap-1.5 rounded-full border bg-popover px-2.5 py-0.5 text-xs shadow-sm`,`transition-[color,border-color,opacity] duration-200 motion-reduce:transition-none`,i),t[0]=i,t[1]=a);let o;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,Y.jsx)(pl,{className:`size-3`,"aria-hidden":`true`}),t[2]=o):o=t[2];let s;t[3]===e.count?s=t[4]:(s=(0,Y.jsx)(`span`,{className:`rounded-full bg-muted px-1.5 text-[10px] font-medium tabular-nums text-muted-foreground`,children:e.count}),t[3]=e.count,t[4]=s);let c;return t[5]!==e.onToggle||t[6]!==e.open||t[7]!==n||t[8]!==a||t[9]!==s?(c=(0,Y.jsxs)(`button`,{type:`button`,"data-prompt-stash-badge":`true`,"aria-label":n,"aria-expanded":r,className:a,onPointerDown:LD,onClick:e.onToggle,children:[o,`Stash`,s]}),t[5]=e.onToggle,t[6]=e.open,t[7]=n,t[8]=a,t[9]=s,t[10]=c):c=t[10],c});function LD(e){return e.preventDefault()}var RD=100;function zD(e){let t=e.prompt.trim().replace(/\s+/g,` `);if(t.length>0)return t.length>RD?`${t.slice(0,RD)}…`:t;let n=e.attachments.length+e.pendingImageCount+e.droppedImageNames.length+e.unreadableImageNames.length;return n===1?`(1 image)`:`(${n} images)`}function BD(e){return e.droppedImageNames.length+e.unreadableImageNames.length}function VD(e){return e instanceof Element&&e.closest(`button, a, input, select, textarea, [contenteditable], [role=button]`)!==null}var HD=(0,q.memo)(function(e){let t=(0,J.c)(28),{entries:n,onRestore:r,onDelete:i,onClose:a}=e,[o,s]=(0,q.useState)(n[0]?.id??null),c=(0,q.useRef)(null),l=(0,q.useRef)(null),u;t[0]!==n||t[1]!==o?(u=n.find(e=>e.id===o)??n[0]??null,t[0]=n,t[1]=o,t[2]=u):u=t[2];let d=u,f,p;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(f=()=>{c.current?.focus()},p=[],t[3]=f,t[4]=p):(f=t[3],p=t[4]),(0,q.useEffect)(f,p);let m,h;t[5]!==d||t[6]!==o?(m=()=>{if(!d){s(null);return}d.id!==o&&s(d.id)},h=[d,o],t[5]=d,t[6]=o,t[7]=m,t[8]=h):(m=t[7],h=t[8]),(0,q.useEffect)(m,h);let g,_;t[9]===o?(g=t[10],_=t[11]):(g=()=>{!o||!l.current||l.current.querySelector(`[data-prompt-stash-row="${CSS.escape(o)}"]`)?.scrollIntoView({block:`nearest`})},_=[o],t[9]=o,t[10]=g,t[11]=_),(0,q.useEffect)(g,_);let v,y;t[12]!==n||t[13]!==a||t[14]!==i||t[15]!==r||t[16]!==d||t[17]!==o?(v=()=>{let e=e=>{if(e.key===`Escape`){e.preventDefault(),e.stopPropagation(),a();return}if(c.current?.contains(document.activeElement)){if(e.key===`ArrowDown`||e.key===`ArrowUp`){if(n.length===0)return;e.preventDefault(),e.stopPropagation();let t=n.findIndex(e=>e.id===o),r=e.key===`ArrowDown`?1:-1,i=((t>=0?t:r>0?-1:0)+r+n.length)%n.length;s(n[i]?.id??null);return}if(e.key===`Enter`){if(VD(e.target)||!d)return;e.preventDefault(),e.stopPropagation(),r(d.id);return}e.key===`Backspace`&&(e.metaKey||e.ctrlKey)&&!e.altKey&&!e.shiftKey&&d&&(e.preventDefault(),e.stopPropagation(),i(d.id))}};return window.addEventListener(`keydown`,e,!0),()=>window.removeEventListener(`keydown`,e,!0)},y=[n,a,i,r,d,o],t[12]=n,t[13]=a,t[14]=i,t[15]=r,t[16]=d,t[17]=o,t[18]=v,t[19]=y):(v=t[18],y=t[19]),(0,q.useEffect)(v,y);let b;t[20]===Symbol.for(`react.memo_cache_sentinel`)?(b=(0,Y.jsxs)(Go,{className:`flex items-center gap-1.5 px-3 pt-2 pb-1 text-[10px] font-semibold uppercase tracking-[0.08em] text-muted-foreground/55`,children:[(0,Y.jsx)(pl,{className:`size-3`,"aria-hidden":`true`}),`Stashed prompts`]}),t[20]=b):b=t[20];let x;t[21]!==n||t[22]!==i||t[23]!==r||t[24]!==o?(x=n.length===0?(0,Y.jsx)(`p`,{className:`px-3 pt-1 pb-3 text-xs text-muted-foreground/70`,children:`Nothing stashed yet. Use the stash shortcut with a prompt or image to save it.`}):n.map(e=>{let t=BD(e);return(0,Y.jsxs)(Xo,{value:e.id,"data-prompt-stash-row":e.id,className:G(`group/stash cursor-pointer select-none gap-2 hover:bg-transparent hover:text-inherit data-highlighted:bg-transparent data-highlighted:text-inherit`,o===e.id&&`bg-accent! text-accent-foreground!`),onMouseMove:()=>s(e.id),onMouseDown:UD,onClick:t=>{VD(t.target)||r(e.id)},children:[e.attachments.length>0?(0,Y.jsx)(`span`,{className:`-space-x-1.5 flex shrink-0 items-center`,children:e.attachments.slice(0,3).map(WD)}):(0,Y.jsx)(pl,{className:`size-4 shrink-0 text-muted-foreground/60`}),(0,Y.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-sm`,children:zD(e)}),e.pendingImageCount>0?(0,Y.jsxs)(`span`,{"data-prompt-stash-pending":`true`,className:`shrink-0 text-[10px] text-muted-foreground/65`,children:[`saving `,e.pendingImageCount,` image`,e.pendingImageCount===1?``:`s`,`…`]}):t>0?(0,Y.jsxs)(`span`,{className:`shrink-0 text-[10px] text-amber-600`,children:[t,` image`,t===1?``:`s`,` not saved`]}):e.attachments.length>0?(0,Y.jsxs)(`span`,{className:`shrink-0 text-[10px] text-muted-foreground/65`,children:[e.attachments.length,` image`,e.attachments.length===1?``:`s`]}):null,(0,Y.jsx)(`span`,{className:`shrink-0 text-xs text-muted-foreground/60`,children:bo(e.createdAt)}),(0,Y.jsx)(K,{variant:`ghost`,size:`icon-xs`,"data-prompt-stash-delete":e.id,className:`shrink-0 opacity-55 transition-opacity motion-reduce:transition-none group-hover/stash:opacity-100 focus:opacity-100`,"aria-label":`Delete stashed prompt: ${zD(e)}`,onClick:t=>{t.stopPropagation(),i(e.id)},children:(0,Y.jsx)(Ja,{})})]},e.id)}),t[21]=n,t[22]=i,t[23]=r,t[24]=o,t[25]=x):x=t[25];let S;return t[26]===x?S=t[27]:(S=(0,Y.jsx)(`div`,{ref:c,role:`region`,"aria-label":`Stashed prompts`,tabIndex:-1,"data-prompt-stash-picker":`true`,className:`absolute right-0 bottom-[calc(100%+0.75rem)] z-30 w-[min(28rem,calc(100vw-2rem))]`,children:(0,Y.jsx)(Yo,{autoHighlight:!1,mode:`none`,children:(0,Y.jsx)(`div`,{className:`app-surface relative overflow-hidden rounded-xl border border-border/80 bg-popover/96 shadow-lg/8 backdrop-blur-xs`,children:(0,Y.jsx)(Ko,{ref:l,className:`max-h-72`,children:(0,Y.jsxs)(Jo,{children:[b,x]})})})})}),t[26]=x,t[27]=S),S});function UD(e){VD(e.target)||e.preventDefault()}function WD(e){return(0,Y.jsx)(`img`,{src:e.dataUrl,alt:``,"aria-hidden":`true`,className:`size-6 rounded border border-border/70 object-cover`},e.id)}var GD={codex:`Codex`,claudeAgent:`Claude`,copilot:`GitHub Copilot`,opencode:`OpenCode`,cursor:`Cursor`,grok:`Grok`};function KD(e){return e.providerDisplayName??GD[e.driverKind]??e.providerInstanceId}function qD(e){return e.modelDisplayName??e.modelSlug}function JD(e){return`${KD(e)} ${qD(e)}`}var YD=(0,q.memo)(function(e){let t=(0,J.c)(26),n=e.endpoint.providerDisplayName,r=GD[e.endpoint.driverKind],i;t[0]===e.endpoint?i=t[1]:(i=KD(e.endpoint),t[0]=e.endpoint,t[1]=i);let a=i,o;t[2]===e.endpoint?o=t[3]:(o=JD(e.endpoint),t[2]=e.endpoint,t[3]=o);let s=o,c;t[4]===e.className?c=t[5]:(c=G(`inline-flex min-w-0 items-center gap-1`,e.className),t[4]=e.className,t[5]=c);let l=e.endpoint.driverKind,u=e.endpoint.providerAccentColor,d=n!==void 0&&n!==r,f;t[6]===e.iconClassName?f=t[7]:(f=G(`size-3.5`,e.iconClassName),t[6]=e.iconClassName,t[7]=f);let p;t[8]!==a||t[9]!==e.endpoint.driverKind||t[10]!==e.endpoint.providerAccentColor||t[11]!==d||t[12]!==f?(p=(0,Y.jsx)(Ha,{driverKind:l,displayName:a,accentColor:u,showBadge:d,className:`size-4`,iconClassName:f,badgeClassName:`h-2.5 min-w-2.5 text-[6px]`}),t[8]=a,t[9]=e.endpoint.driverKind,t[10]=e.endpoint.providerAccentColor,t[11]=d,t[12]=f,t[13]=p):p=t[13];let m;t[14]===e.modelClassName?m=t[15]:(m=G(`truncate`,e.modelClassName),t[14]=e.modelClassName,t[15]=m);let h;t[16]===e.endpoint?h=t[17]:(h=qD(e.endpoint),t[16]=e.endpoint,t[17]=h);let g;t[18]!==m||t[19]!==h?(g=(0,Y.jsx)(`span`,{className:m,children:h}),t[18]=m,t[19]=h,t[20]=g):g=t[20];let _;return t[21]!==s||t[22]!==g||t[23]!==c||t[24]!==p?(_=(0,Y.jsxs)(`span`,{className:c,title:s,children:[p,g]}),t[21]=s,t[22]=g,t[23]=c,t[24]=p,t[25]=_):_=t[25],_}),XD=(0,q.memo)(function(e){let t=(0,J.c)(18),n;t[0]===e.source?n=t[1]:(n=JD(e.source),t[0]=e.source,t[1]=n);let r;t[2]===e.target?r=t[3]:(r=JD(e.target),t[2]=e.target,t[3]=r);let i=`Next message will hand off context from ${n} to ${r}`,a,o,s;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,Y.jsx)(dl,{className:`size-3.5 shrink-0`,"aria-hidden":!0}),o=(0,Y.jsx)(`span`,{className:`shrink-0 font-medium`,children:`Next message hands off context`}),s=(0,Y.jsx)(`span`,{className:`text-muted-foreground/45`,"aria-hidden":!0,children:`·`}),t[4]=a,t[5]=o,t[6]=s):(a=t[4],o=t[5],s=t[6]);let c;t[7]===e.source?c=t[8]:(c=(0,Y.jsx)(YD,{endpoint:e.source,className:`max-w-32 sm:max-w-44`}),t[7]=e.source,t[8]=c);let l;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,Y.jsx)(fl,{className:`size-3.5 shrink-0 text-muted-foreground/55`,"aria-hidden":!0}),t[9]=l):l=t[9];let u;t[10]===e.target?u=t[11]:(u=(0,Y.jsx)(YD,{endpoint:e.target,className:`max-w-32 font-medium text-foreground/85 sm:max-w-44`}),t[10]=e.target,t[11]=u);let d;return t[12]!==i||t[13]!==e.source.providerInstanceId||t[14]!==e.target.providerInstanceId||t[15]!==c||t[16]!==u?(d=(0,Y.jsxs)(`div`,{role:`status`,"aria-label":i,title:i,"data-pending-context-handoff":`true`,"data-pending-context-handoff-source":e.source.providerInstanceId,"data-pending-context-handoff-target":e.target.providerInstanceId,className:`inline-flex min-w-0 max-w-full items-center gap-1.5 rounded-full border border-border/70 bg-popover/95 px-2.5 py-1 text-[11px] leading-4 text-muted-foreground shadow-sm backdrop-blur-xs`,children:[a,o,s,c,l,u]}),t[12]=i,t[13]=e.source.providerInstanceId,t[14]=e.target.providerInstanceId,t[15]=c,t[16]=u,t[17]=d):d=t[17],d}),ZD={active:`Pursuing goal`,paused:`Goal paused`,blocked:`Goal blocked`,usageLimited:`Usage limit reached`,budgetLimited:`Goal budget reached`,complete:`Goal achieved`};function QD(e,t){let n=e.status===`active`?Math.max(0,Math.floor((t-Date.parse(e.updatedAt))/1e3)):0;return e.timeUsedSeconds+n}function $D(e){let t=Math.floor(e/3600),n=Math.floor(e%3600/60),r=e%60;return t>0?`${t}:${String(n).padStart(2,`0`)}:${String(r).padStart(2,`0`)}`:`${n}:${String(r).padStart(2,`0`)}`}var eO=new Intl.NumberFormat(void 0,{notation:`compact`});function tO(e){let t=(0,J.c)(7),n=e.label,r=e.label,i=e.onClick,a=e.destructive&&`hover:text-destructive`,o;t[0]===a?o=t[1]:(o=G(`inline-flex size-7 shrink-0 items-center justify-center rounded-full text-muted-foreground transition-colors hover:bg-background/75 hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring/50`,a),t[0]=a,t[1]=o);let s;return t[2]!==e.children||t[3]!==e.label||t[4]!==e.onClick||t[5]!==o?(s=(0,Y.jsx)(`button`,{type:`button`,"aria-label":n,title:r,onClick:i,className:o,children:e.children}),t[2]=e.children,t[3]=e.label,t[4]=e.onClick,t[5]=o,t[6]=s):s=t[6],s}var nO=(0,q.memo)(function(e){let t=(0,J.c)(57),[n,r]=(0,q.useState)(!1),[i,a]=(0,q.useState)(rO),o;t[0]===e.goal.status?o=t[1]:(o=()=>{if(e.goal.status!==`active`)return;a(Date.now());let t=window.setInterval(()=>a(Date.now()),1e3);return()=>window.clearInterval(t)},t[0]=e.goal.status,t[1]=o);let s;t[2]!==e.goal.status||t[3]!==e.goal.updatedAt?(s=[e.goal.status,e.goal.updatedAt],t[2]=e.goal.status,t[3]=e.goal.updatedAt,t[4]=s):s=t[4],(0,q.useEffect)(o,s);let c=e.goal.status===`paused`||e.goal.status===`blocked`||e.goal.status===`usageLimited`,l=e.goal.status===`complete`,u=e.goal.status===`active`&&`border-primary/30 text-primary`,d=l&&`border-emerald-500/30 text-emerald-600 dark:text-emerald-400`,f;t[5]!==u||t[6]!==d?(f=G(`mt-0.5 inline-flex size-7 shrink-0 items-center justify-center rounded-full border border-border/60 bg-background/55 text-muted-foreground`,u,d),t[5]=u,t[6]=d,t[7]=f):f=t[7];let p;t[8]===l?p=t[9]:(p=l?(0,Y.jsx)(Ai,{className:`size-3.5`}):(0,Y.jsx)(Al,{className:`size-3.5`}),t[8]=l,t[9]=p);let m;t[10]!==f||t[11]!==p?(m=(0,Y.jsx)(`div`,{className:f,children:p}),t[10]=f,t[11]=p,t[12]=m):m=t[12];let h;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(h=()=>r(iO),t[13]=h):h=t[13];let g=ZD[e.goal.status],_;t[14]!==i||t[15]!==e.goal?(_=$D(QD(e.goal,i)),t[14]=i,t[15]=e.goal,t[16]=_):_=t[16];let v;t[17]===_?v=t[18]:(v=(0,Y.jsx)(`span`,{className:`font-mono font-normal tracking-normal normal-case`,children:_}),t[17]=_,t[18]=v);let y;t[19]!==e.goal.tokenBudget||t[20]!==e.goal.tokensUsed?(y=e.goal.tokenBudget===null?null:(0,Y.jsxs)(`span`,{className:`font-normal tracking-normal normal-case`,children:[eO.format(e.goal.tokensUsed),` /`,` `,eO.format(e.goal.tokenBudget),` tokens`]}),t[19]=e.goal.tokenBudget,t[20]=e.goal.tokensUsed,t[21]=y):y=t[21];let b;t[22]!==v||t[23]!==y||t[24]!==g?(b=(0,Y.jsxs)(`span`,{className:`flex items-center gap-2 text-[11px] font-medium tracking-wide text-muted-foreground uppercase`,children:[g,v,y]}),t[22]=v,t[23]=y,t[24]=g,t[25]=b):b=t[25];let x=!n&&`line-clamp-2`,S;t[26]===x?S=t[27]:(S=G(`mt-0.5 block text-sm leading-5 text-foreground/90`,x),t[26]=x,t[27]=S);let C;t[28]!==e.goal.objective||t[29]!==S?(C=(0,Y.jsx)(`span`,{className:S,children:e.goal.objective}),t[28]=e.goal.objective,t[29]=S,t[30]=C):C=t[30];let w;t[31]!==n||t[32]!==b||t[33]!==C?(w=(0,Y.jsxs)(`button`,{type:`button`,className:`min-w-0 flex-1 text-left focus-visible:outline-none`,onClick:h,"aria-expanded":n,children:[b,C]}),t[31]=n,t[32]=b,t[33]=C,t[34]=w):w=t[34];let T;t[35]===Symbol.for(`react.memo_cache_sentinel`)?(T=(0,Y.jsx)(Na,{className:`size-3.5`}),t[35]=T):T=t[35];let E;t[36]===e.onEdit?E=t[37]:(E=(0,Y.jsx)(tO,{label:`Edit goal`,onClick:e.onEdit,children:T}),t[36]=e.onEdit,t[37]=E);let D;t[38]!==c||t[39]!==e?(D=e.goal.status===`active`?(0,Y.jsx)(tO,{label:`Pause goal`,onClick:()=>e.onStatusChange(`paused`),children:(0,Y.jsx)(ja,{className:`size-3.5`})}):c?(0,Y.jsx)(tO,{label:`Resume goal`,onClick:()=>e.onStatusChange(`active`),children:(0,Y.jsx)(Ma,{className:`size-3.5`})}):null,t[38]=c,t[39]=e,t[40]=D):D=t[40];let O;t[41]===Symbol.for(`react.memo_cache_sentinel`)?(O=(0,Y.jsx)(Ja,{className:`size-3.5`}),t[41]=O):O=t[41];let k;t[42]===e.onClear?k=t[43]:(k=(0,Y.jsx)(tO,{label:`Clear goal`,destructive:!0,onClick:e.onClear,children:O}),t[42]=e.onClear,t[43]=k);let A=n&&`rotate-180`,j;t[44]===A?j=t[45]:(j=G(`mt-1 size-3.5 text-muted-foreground/60 transition-transform`,A),t[44]=A,t[45]=j);let M;t[46]===j?M=t[47]:(M=(0,Y.jsx)(Xr,{"aria-hidden":!0,className:j}),t[46]=j,t[47]=M);let N;t[48]!==E||t[49]!==D||t[50]!==k||t[51]!==M?(N=(0,Y.jsxs)(`div`,{className:`flex shrink-0 items-center gap-0.5`,children:[E,D,k,M]}),t[48]=E,t[49]=D,t[50]=k,t[51]=M,t[52]=N):N=t[52];let P;return t[53]!==w||t[54]!==N||t[55]!==m?(P=(0,Y.jsx)(`div`,{className:`rounded-t-[max(0px,calc(var(--radius-3xl)-3px))] border-b border-border/65 bg-muted/25 px-3.5 py-2.5`,children:(0,Y.jsxs)(`div`,{className:`flex min-w-0 items-start gap-2.5`,children:[m,w,N]})}),t[53]=w,t[54]=N,t[55]=m,t[56]=P):P=t[56],P});function rO(){return Date.now()}function iO(e){return!e}function aO(e){let t=e.providerInstanceEntries.find(t=>t.instanceId===e.selection.instanceId);if(!t)return null;let n=e.modelOptionsByInstance.get(e.selection.instanceId)?.find(t=>t.slug===e.selection.model)??t.models.find(t=>t.slug===e.selection.model);return{providerInstanceId:t.instanceId,driverKind:t.driverKind,providerDisplayName:t.displayName,...t.accentColor?{providerAccentColor:t.accentColor}:{},modelSlug:e.selection.model,...n?{modelDisplayName:mn(n,{preferShortName:!0})}:{}}}function oO(e){if(!e.threadStarted||e.isPhoneTier||!e.canonicalSelection||!ot({canonicalSelection:e.canonicalSelection,targetSelection:e.targetSelection}))return null;let t=aO({selection:e.canonicalSelection,providerInstanceEntries:e.providerInstanceEntries,modelOptionsByInstance:e.modelOptionsByInstance}),n=aO({selection:e.targetSelection,providerInstanceEntries:e.providerInstanceEntries,modelOptionsByInstance:e.modelOptionsByInstance});return t&&n?{source:t,target:n}:null}var sO=[`[data-slot="popover-popup"]`,`[data-slot="menu-popup"]`,`[data-slot="select-popup"]`,`[data-slot="combobox-popup"]`,`[data-slot="autocomplete-popup"]`].join(`,`),cO=(e,t,n)=>n.endsWith(` `)&&e[t]===` `?t+1:t,lO=(e,t)=>{let n=new Map(e.map(e=>[e.id,e]));return t.flatMap(e=>{let t=n.get(e);return t?[t]:[]})},uO=(e,t)=>e.length===t.length&&e.every((e,n)=>e.id===t[n]);function dO(e){return e.closest(sO)!==null}function fO(e,t){return t.trim().length===0?e:e.length===0?t:`${e}\n\n${t}`}function pO(e){let t=e.slice(0,3),n=e.length>t.length?` and ${e.length-t.length} more`:``;return`${t.join(`, `)}${n}`}function mO(e,t,n){return`${typeof e==`string`?e:`${e.environmentId}:${e.threadId}`}\u0000${t}\u0000${n.map(e=>e.id).join(``)}`}function hO(e){if(typeof URL>`u`||typeof URL.revokeObjectURL!=`function`)return;let t=new Set(Object.values(qt.getState().draftsByThreadKey).flatMap(e=>e.images.map(e=>e.previewUrl)));for(let n of e)n.previewUrl.startsWith(`blob:`)&&!t.has(n.previewUrl)&&URL.revokeObjectURL(n.previewUrl)}var gO=(0,q.memo)((0,q.forwardRef)(function(e,t){let{composerDraftTarget:n,environmentId:r,routeKind:i,routeThreadRef:a,draftId:o,activeThreadId:s,activeThreadEnvironmentId:c,activeThreadSessionProviderInstanceId:l,activeThreadStarted:u,isServerThread:d,isLocalDraftThread:f,activeThreadGoal:p,phase:m,isConnecting:h,isSendBusy:g,isPreparingWorktree:_,environmentUnavailable:v,activePendingApproval:y,pendingApprovals:b,pendingUserInputs:x,activePendingProgress:C,activePendingResolvedAnswers:w,activePendingIsResponding:E,activePendingDraftAnswers:D,activePendingQuestionIndex:O,respondingRequestIds:k,showPlanFollowUpPrompt:j,activeProposedPlan:M,planSidebarLabel:N,planSidebarOpen:P,runtimeMode:F,interactionMode:I,tokenMode:L,lockedProvider:R,providerStatuses:z,activeProjectDefaultModelSelection:ee,activeThreadModelSelection:te,activeThreadActivities:ne,phoneThreadDock:B,resolvedTheme:re,settings:ie,keybindings:V,terminalOpen:ae,gitCwd:oe,promptRef:H,composerImagesRef:se,composerTerminalContextsRef:ce,shouldAutoScrollRef:le,scheduleStickToBottom:de,onSend:fe,onInterrupt:U,onImplementPlanInNewThread:pe,onRespondToApproval:me,onSelectActivePendingUserInputOption:he,onAdvanceActivePendingUserInput:ge,onPreviousActivePendingUserInputQuestion:_e,onChangeActivePendingUserInputCustomAnswer:ve,onProviderModelSelect:ye,toggleInteractionMode:be,handleRuntimeModeChange:xe,handleInteractionModeChange:Se,handleTokenModeChange:Ce,togglePlanSidebar:we,focusComposer:Te,scheduleComposerFocus:Ee,setThreadError:De,onExpandImage:Oe,onEditGoal:ke,onGoalStatusChange:Ae,onClearGoal:je}=e,Me=Bl(n),Ne=Me.prompt,Pe=Me.images,Fe=Me.terminalContexts,Ie=Me.sourceControlContexts,Le=Me.nonPersistedImageIds,Re=ue(),ze=(0,q.useMemo)(()=>(Re.data?.sourceControlProviders??[]).some(e=>e.status===`available`&&(e.auth.status===`authenticated`||e.auth.status===`unknown`)),[Re.data]),Be=qt(e=>e.setPrompt),Ve=qt(e=>e.insertTerminalContext),He=qt(e=>e.removeTerminalContext),Ue=qt(e=>e.setTerminalContexts),We=qt(e=>e.clearPersistedAttachments),Ge=qt(e=>e.syncPersistedAttachments),Ke=qt(e=>e.clearPromptAndImages),qe=qt(e=>e.addImages),Je=qt(e=>e.getComposerDraft),Ye=qt(e=>e.addSourceControlContext),Xe=qt(e=>e.removeSourceControlContext),Ze=ND(e=>e.entries),Qe=ND(e=>e.stashEntry),$e=ND(e=>e.takeEntry),et=ND(e=>e.finalizeEntryImages),tt=(0,q.useMemo)(()=>At(on(z)),[z]),nt=Me.activeProvider??null,rt=l??te?.instanceId??ee?.instanceId??null,it=nt??rt,at=jt(tt,z,it)??A.make(`codex`),ot=R??at,ut=(0,q.useMemo)(()=>{if(!R)return null;let e=l??te?.instanceId;return e?tt.find(t=>t.instanceId===e)?.continuationGroupKey??null:null},[te?.instanceId,l,R,tt]),dt=(0,q.useMemo)(()=>{let e=R?[te?.instanceId,l,ee?.instanceId]:[Me.activeProvider,l,te?.instanceId,ee?.instanceId];for(let t of e){if(!t)continue;let e=tt.find(e=>e.instanceId===t&&e.enabled);if(e){if(R&&e.driverKind!==R||ut&&e.continuationGroupKey!==ut)continue;return e.instanceId}}if(it)return T.make(it);let t=tt.find(e=>e.enabled&&e.driverKind===ot&&(!ut||e.continuationGroupKey===ut));return t?t.instanceId:tt.find(e=>e.enabled)?.instanceId??tt[0]?.instanceId??te?.instanceId??ee?.instanceId??T.make(`codex`)},[ee?.instanceId,l,te?.instanceId,Me.activeProvider,it,ut,R,tt,ot]),ft=Hl({threadRef:n,providers:z,selectedProvider:ot,selectedInstanceId:dt,threadModelSelection:te,projectModelSelection:ee,settings:ie}),pt=ft.modelOptions,mt=R&&te?.instanceId===dt?te.model:ft.selectedModel,ht=(0,q.useMemo)(()=>tt.find(e=>e.instanceId===dt),[tt,dt]),gt=(0,q.useMemo)(()=>ht?.snapshot??null,[ht]),_t=(0,q.useMemo)(()=>ht?.models??[],[ht]),yt=(0,q.useMemo)(()=>vp({provider:ot,model:mt,models:_t,prompt:Ne,modelOptions:pt?.[dt]}),[pt,Ne,dt,mt,ot,_t]),bt=yt.promptEffort,xt=yt.modelOptionsForDispatch,St=wr(e=>e.alwaysUseBuildMode),Ct=Ls(),wt=St&&Ct!==`phone`,Et=(0,q.useMemo)(()=>({showInteractionModeToggle:!wt&&Tt(z,ot),askModeSupported:Vt(z,ot)}),[wt,z,ot]),Ot=(0,q.useMemo)(()=>lt(dt,mt,xt),[dt,mt,xt]),kt=mt,Mt=(0,q.useMemo)(()=>{let e=new Map;for(let t of tt)e.set(t.instanceId,st(ie,t));return e},[tt,ie]),Nt=(0,q.useMemo)(()=>(Mt.get(dt)??[]).some(e=>e.slug===kt)?kt:Xt(kt,ot)??kt,[Mt,dt,kt,ot]),Ft=yt.modelOptionsForDispatch?.find(e=>e.id===`contextWindow`)?.value??null,It=(0,q.useMemo)(()=>Qd(ne??[],typeof Ft==`string`?Ft:null),[ne,Ft]),Lt=gt?.rateLimits,[Rt,zt]=(0,q.useState)(()=>Dt(Ne,Ne.length)),[Ht,Wt]=(0,q.useState)(()=>ct(Ne,Ne.length)),[Gt,Kt]=(0,q.useState)(null),[Jt,Qt]=(0,q.useState)(null),[$t,tn]=(0,q.useState)(!1),[nn,rn]=(0,q.useState)(!1),[an,sn]=(0,q.useState)(!1),[cn,ln]=(0,q.useState)(!1),[dn,fn]=(0,q.useState)(!1),mn=Ct===`phone`,gn=mn&&!cn,_n=(0,q.useMemo)(()=>oO({threadStarted:u,isPhoneTier:mn,canonicalSelection:te,targetSelection:Ot,providerInstanceEntries:tt,modelOptionsByInstance:Mt}),[te,u,mn,Mt,tt,Ot]),vn=(0,q.useRef)(null),yn=(0,q.useRef)(null),bn=(0,q.useRef)(null),xn=(0,q.useRef)(0),Sn=(0,q.useRef)(!1),Cn=(0,q.useRef)(!1),wn=(0,q.useRef)([]),Tn=(0,q.useRef)(null),En=(0,q.useRef)(null),Dn=(0,q.useRef)(new Set),On=(0,q.useRef)(new Map),kn=(0,q.useRef)(()=>{}),An=(0,q.useCallback)(e=>{let t=On.current.get(e);t&&(On.current.delete(e),Dn.current.delete(t.key),hO(t.images))},[]);(0,q.useEffect)(()=>()=>{let e=[...On.current.values()];On.current.clear(),Dn.current.clear();for(let t of e)hO(t.images)},[]);let jn=(0,q.useMemo)(()=>Cd({prompt:Ne,imageCount:Pe.length,terminalContexts:Fe,sourceControlContexts:Ie}),[Pe.length,Ie,Fe,Ne]),Mn=Ht?.kind??null,{composerMenuItems:Nn,composerMenuOpen:Pn,composerMenuSearchKey:Fn,activeComposerMenuItem:In,isComposerMenuLoading:Ln,composerMenuEmptyState:Rn}=Ff({composerTrigger:Ht,environmentId:r,gitCwd:oe,selectedProvider:ot,selectedProviderStatus:gt,composerHighlightedItemId:Gt,composerHighlightedSearchKey:Jt});Cn.current=Pn,wn.current=Nn,Tn.current=In;let zn=(0,q.useMemo)(()=>new Set(Le),[Le]),Bn=y!==null,Vn=x[0]??null,Hn=!mn&&p!=null&&!Bn&&x.length===0&&!(j&&M!==null),Un=Bn||x.length>0||j&&M!==null||Hn,Wn=gn&&!Bn&&x.length===0,Gn=h||Bn||v!==null&&C===null,Kn=j||C!==null,qn=(0,q.useMemo)(()=>Pd({pendingProgress:C,pendingIsResponding:E,phase:m,showPlanFollowUpPrompt:j,promptHasText:Ne.trim().length>0,hasSendableContent:jn.hasSendableContent,isSendBusy:g,isConnecting:h,isPreparingWorktree:_}),[E,C,jn.hasSendableContent,h,_,g,m,Ne,j]),Jn=(0,q.useCallback)(e=>{if(e===H.current){Ee();return}H.current=e,Be(n,e);let t=Dt(e,e.length);zt(t),Wt(ct(e,e.length)),Ee()},[n,H,Ee,Be]),Yn=js(S.dispatchCommand),Xn=!Yn.allowed,Zn=Yn.reason,Qn=yp({provider:ot,instanceId:dt,...i===`server`?{threadRef:a}:{},...i===`draft`&&o?{draftId:o}:{},model:mt,models:_t,modelOptions:pt?.[dt],prompt:Ne,onPromptChange:Jn,disabled:Xn,disabledReason:Zn}),$n=bp({provider:ot,instanceId:dt,...i===`server`?{threadRef:a}:{},...i===`draft`&&o?{draftId:o}:{},model:mt,models:_t,modelOptions:pt?.[dt],prompt:Ne,onPromptChange:Jn,disabled:Xn,disabledReason:Zn}),er=(0,q.useMemo)(()=>C?{questionIndex:C.questionIndex,isLastQuestion:C.isLastQuestion,canAdvance:C.canAdvance,isResponding:E,isComplete:!!w}:null,[E,C,w]),tr=Md({phase:m,isSendBusy:g,isConnecting:h,hasSendableContent:jn.hasSendableContent}),nr=mn&&!gn&&er!==null,rr=(0,q.useCallback)(e=>{Be(n,e)},[n,Be]),ir=(0,q.useCallback)(e=>{let t=Fe.findIndex(t=>t.id===e);if(t<0)return;let r=Bt(H.current,t);H.current=r.prompt,rr(r.prompt),He(n,e);let i=Dt(r.prompt,r.cursor);zt(i),Wt(ct(r.prompt,r.cursor))},[n,Fe,H,He,rr]);(0,q.useEffect)(()=>{H.current=Ne,zt(e=>hn(Ne,e))},[Ne,H]),(0,q.useEffect)(()=>{se.current=Pe},[Pe,se]),(0,q.useEffect)(()=>{ce.current=Fe},[Fe,ce]),(0,q.useEffect)(()=>{if(!Pn){Kt(null),Qt(null);return}let e=Cf({items:Nn,highlightedItemId:Gt,currentSearchKey:Fn,highlightedSearchKey:Jt});Kt(t=>t===e?t:e),Qt(e=>e===Fn?e:Fn)},[Gt,Jt,Nn,Pn,Fn]);let ar=(0,q.useRef)(null);(0,q.useEffect)(()=>{let e=C?.customAnswer;if(typeof e!=`string`){ar.current=null;return}let t=Vn?.requestId??null,n=C?.activeQuestion?.id??null,r=ar.current?.requestId!==t||ar.current?.questionId!==n,i=H.current!==e;if(ar.current={requestId:t,questionId:n},!r&&!i)return;H.current=e;let a=Dt(e,e.length);zt(a),Wt(ct(e,pn(e,a))),Kt(null)},[C?.customAnswer,C?.activeQuestion?.id,Vn?.requestId,H]),(0,q.useEffect)(()=>{Kt(null),zt(Dt(H.current,H.current.length)),Wt(ct(H.current,H.current.length))},[o,s,H]),(0,q.useLayoutEffect)(()=>{let e=yn.current;if(!e)return;let t=()=>e.clientWidth,n=()=>{let e=t(),n=Bf(e,{hasWideActions:Kn});return{primaryActionsCompact:n&&Vf(e,{hasWideActions:Kn}),footerCompact:n}};xn.current=e.getBoundingClientRect().height;let r=n();if(rn(r.primaryActionsCompact),tn(r.footerCompact),typeof ResizeObserver>`u`)return;let i=new ResizeObserver(e=>{let[t]=e;if(!t)return;let r=n();rn(e=>e===r.primaryActionsCompact?e:r.primaryActionsCompact),tn(e=>e===r.footerCompact?e:r.footerCompact);let i=t.contentRect.height,a=xn.current;xn.current=i,!(a>0&&Math.abs(i-a)<.5)&&le.current&&de()});return i.observe(e),()=>{i.disconnect()}},[s,qn,Kn,de,le]),(0,q.useEffect)(()=>{let e=!1;return(async()=>{if(Pe.length===0){We(n);return}let t=()=>Je(n)?.persistedAttachments??[];try{let r=t(),i=new Map(r.map(e=>[e.id,e])),a=new Map;await Promise.all(Pe.map(async e=>{try{let t=un(await ul.encode(e));a.set(e.id,{id:e.id,name:e.name,mimeType:e.mimeType,sizeBytes:e.sizeBytes,dataUrl:t})}catch{let t=i.get(e.id);t&&a.set(e.id,t)}}));let o=Array.from(a.values());if(e)return;Ge(n,o)}catch{let r=new Set(Pe.map(e=>e.id)),i=t(),a=i.map(e=>e.id).filter(e=>r.has(e)),o=new Set(a),s=i.filter(e=>o.has(e.id));if(e)return;Ge(n,s)}})(),()=>{e=!0}},[n,We,Pe,Je,Ge]);let W=(0,q.useCallback)((e,t,r,i,a)=>{if(C?.activeQuestion&&x.length>0){zt(t),Wt(i?null:ct(e,r)),ve(C.activeQuestion.id,e,t,r,i);return}H.current=e,rr(e),uO(Fe,a)||Ue(n,lO(Fe,a)),zt(t),Wt(i?null:ct(e,r))},[C?.activeQuestion,x.length,ve,H,rr,n,Fe,Ue]),or=(0,q.useCallback)((e,t,n,r)=>{let i=H.current,a=Math.max(0,Math.min(i.length,e)),o=Math.max(a,Math.min(i.length,t));if(r?.expectedText!==void 0&&i.slice(a,o)!==r.expectedText)return!1;let s=Zt(H.current,e,t,n),c=Dt(s.text,s.cursor),l=pn(s.text,c);H.current=s.text;let u=C?.activeQuestion;return u&&Vn?ve(u.id,s.text,c,l,!1):rr(s.text),zt(c),Wt(ct(s.text,l)),r?.focusEditorAfterReplace!==!1&&window.requestAnimationFrame(()=>{vn.current?.focusAt(c)}),!0},[C?.activeQuestion,Vn,ve,H,rr]),sr=(0,q.useCallback)(()=>vn.current?.readSnapshot()||{value:H.current,cursor:Rt,expandedCursor:pn(H.current,Rt),terminalContextIds:Fe.map(e=>e.id)},[Rt,Fe,H]),cr=(0,q.useCallback)(()=>{let e=sr();return{snapshot:e,trigger:ct(e.value,e.expandedCursor)}},[sr]),{handleSelectIssue:lr,handleSelectChangeRequest:ur}=Rf({environmentId:r,gitCwd:oe,composerDraftTarget:n,addSourceControlContext:Ye}),dr=(0,q.useCallback)(e=>{if(Sn.current)return;Sn.current=!0,window.requestAnimationFrame(()=>{Sn.current=!1});let{snapshot:t,trigger:n}=cr();if(n){if(e.type===`path`){let r=`@${Yt(e.path)} `,i=cO(t.value,n.rangeEnd,r);or(n.rangeStart,i,r,{expectedText:t.value.slice(n.rangeStart,i)})&&Kt(null);return}if(e.type===`slash-command`){if(e.command===`model`){or(n.rangeStart,n.rangeEnd,``,{expectedText:t.value.slice(n.rangeStart,n.rangeEnd),focusEditorAfterReplace:!1})&&(Kt(null),sn(!0));return}if(e.command===`goal`){let e=`/goal `,r=cO(t.value,n.rangeEnd,e);or(n.rangeStart,r,e,{expectedText:t.value.slice(n.rangeStart,r)})&&Kt(null);return}Se(e.command===`plan`?`plan`:`default`),or(n.rangeStart,n.rangeEnd,``,{expectedText:t.value.slice(n.rangeStart,n.rangeEnd)})&&Kt(null);return}if(e.type===`provider-slash-command`){let r=`/${e.command.name} `,i=cO(t.value,n.rangeEnd,r);or(n.rangeStart,i,r,{expectedText:t.value.slice(n.rangeStart,i)})&&Kt(null);return}if(e.type===`skill`){let r=`$${e.skill.name} `,i=cO(t.value,n.rangeEnd,r);or(n.rangeStart,i,r,{expectedText:t.value.slice(n.rangeStart,i)})&&Kt(null);return}if(e.type===`source-control-issue`){or(n.rangeStart,n.rangeEnd,``,{expectedText:t.value.slice(n.rangeStart,n.rangeEnd)})&&Kt(null),lr(e.summary);return}if(e.type===`source-control-pr`){or(n.rangeStart,n.rangeEnd,``,{expectedText:t.value.slice(n.rangeStart,n.rangeEnd)})&&Kt(null),ur(e.summary);return}}},[or,Se,lr,ur,cr]),fr=(0,q.useCallback)(e=>{Kt(e),Qt(Fn)},[Fn]),pr=(0,q.useCallback)(e=>{if(Nn.length===0)return;let t=Nn.findIndex(e=>e.id===Gt),n=((t>=0?t:e===`ArrowDown`?-1:0)+(e===`ArrowDown`?1:-1)+Nn.length)%Nn.length,r=Nn[n];Kt(r?.id??null)},[Gt,Nn]),mr=(0,q.useCallback)(()=>{if(!mn)return;En.current!==null&&(window.cancelAnimationFrame(En.current),En.current=null);let e=document.activeElement;e instanceof HTMLElement&&e.blur(),ln(!1)},[mn]),hr=(0,q.useCallback)(()=>Nd({isMobileViewport:mn,isSendBusy:g,isConnecting:h,phase:m,pendingProgress:C,hasResolvedAnswers:!!w,showPlanFollowUpPrompt:j,hasSendableContent:jn.hasSendableContent}),[C,w,jn.hasSendableContent,h,mn,g,m,j]),gr=(0,q.useCallback)(e=>{fe(e),hr()&&mr()},[mr,fe,hr]),_r=(e,t)=>{if(e===`Tab`&&t.shiftKey)return be(),!0;let{trigger:n}=cr();if(Cn.current||n!==null){let t=wn.current,n=Tn.current??t[0];if(e===`ArrowDown`&&t.length>0)return pr(`ArrowDown`),!0;if(e===`ArrowUp`&&t.length>0)return pr(`ArrowUp`),!0;if((e===`Enter`||e===`Tab`)&&n)return dr(n),!0}return e===`Enter`&&!t.shiftKey&&(gr(),!0)},{isDragOverComposer:vr,addComposerAttachments:yr,removeComposerImage:br,onComposerPaste:xr,onComposerDragEnter:Sr,onComposerDragOver:Cr,onComposerDragLeave:Tr,onComposerDrop:Er}=OD({composerDraftTarget:n,environmentId:r,activeThreadId:s,draftId:o,routeThreadRef:a,runtimeMode:F,gitCwd:oe,pendingUserInputCount:x.length,composerImagesRef:se,editorRef:vn,setThreadError:De,focusComposer:Te}),Dr=(0,q.useCallback)(e=>{Xe(n,e)},[n,Xe]),Or=(0,q.useCallback)((e,t)=>{let{entry:r,durable:i}=$e(e);if(!r)return;let a=On.current.get(e),o=a!==void 0&&(t?.preferMemorySnapshot===!0||r.pendingImageCount>0),s,c=[];if(o&&a)s=a.images;else{let e=Pt(r.attachments);s=e.images,c=e.unreadableImageNames}let l=[...se.current],u=new Set(l.map(e=>e.id)),d=new Set(l.map(e=>vt(e))),f=[],p=[],m=[];for(let e of s){let t=vt(e);if(u.has(e.id)||d.has(t)){p.push(e.name);continue}if(l.length+f.length>=8){m.push(e.name);continue}f.push(e),u.add(e.id),d.add(t)}let h=H.current,g=fO(h,r.prompt);if(g!==h){H.current=g,rr(g);let e=Dt(g,g.length);zt(e),Wt(ct(g,g.length))}f.length>0&&(qe(n,f),se.current=[...l,...f]),fn(!1),An(e),Ee(),i||ki.add({type:`warning`,title:`Restored stash may reappear after reload`,description:`The prompt was restored, but browser storage could not save its removal.`,data:{hideCopyButton:!0}});let _=[];!o&&r.unreadableImageNames.length>0&&_.push(`Unreadable while saving: ${pO(r.unreadableImageNames)}.`),!o&&c.length>0&&_.push(`Unreadable while restoring: ${pO(c)}.`),!o&&r.droppedImageNames.length>0&&_.push(`Not saved because the stash image budget was full: ${pO(r.droppedImageNames)}.`),!o&&r.pendingImageCount>0&&_.push(`${r.pendingImageCount} image${r.pendingImageCount===1?` was`:`s were`} still saving and could not be restored.`),p.length>0&&_.push(`Already attached and skipped: ${pO(p)}.`),m.length>0&&_.push(`Not restored because this composer can hold 8 images: ${pO(m)}.`),_.length>0&&ki.add({type:`warning`,title:`Some stashed images could not be restored`,description:_.join(` `),data:{hideCopyButton:!0}})},[qe,n,se,H,An,Ee,rr,$e]),kr=(0,q.useCallback)(e=>{let{entry:t,durable:n}=$e(e);t&&(An(e),n||ki.add({type:`warning`,title:`Deleted stash may reappear after reload`,description:`Browser storage could not save the deletion.`,data:{hideCopyButton:!0}}))},[An,$e]);kn.current=(0,q.useCallback)(()=>{if(mn||Bn||x.length>0)return;let e=Ut(H.current),t=[...se.current],r=e.trim().length>0?e:``;if(r.length===0&&t.length===0){fn(e=>!e);return}let i=mO(n,r,t);if(Dn.current.has(i))return;Dn.current.add(i);let a=ro(),o={id:a,createdAt:new Date().toISOString(),prompt:r,attachments:[],droppedImageNames:[],unreadableImageNames:[],pendingImageCount:t.length},s=Qe(o);if(!s.written){Dn.current.delete(i),ki.add(ks({type:`error`,title:`Could not stash this prompt`,description:`Browser storage rejected the stash. The composer was left unchanged.`,data:{hideCopyButton:!0}}));return}On.current.set(a,{key:i,images:t}),s.evicted&&An(s.evicted.id),Ke(n);let c=Je(n)?.prompt??``;H.current=c,se.current=[];let l=Dt(c,c.length);zt(l),Wt(null),Kt(null),fn(!1),ki.add({type:`success`,title:`Prompt stashed`,description:t.length>0?`Saving ${t.length} image${t.length===1?``:`s`} in the background.`:void 0,actionProps:{children:`Undo`,onClick:()=>Or(a,{preferMemorySnapshot:!0})},data:{hideCopyButton:!0}}),s.durable||ki.add({type:`warning`,title:`Stashed prompt will not survive a reload`,description:`Browser storage is unavailable, so this stash is kept in memory for this page session only.`,data:{hideCopyButton:!0}}),s.evicted&&ki.add({type:`warning`,title:`Oldest stashed prompt discarded`,description:`The stash holds 20 prompts; the oldest was removed.`,data:{hideCopyButton:!0}}),(async()=>{let e=await Promise.all(t.map(async e=>{try{return{attachment:{id:e.id,name:e.name,mimeType:e.mimeType,sizeBytes:e.sizeBytes,dataUrl:un(await ul.encode(e))},unreadableName:null}}catch{return{attachment:null,unreadableName:e.name}}})),n=e.flatMap(e=>e.attachment?[e.attachment]:[]),r=e.flatMap(e=>e.unreadableName?[e.unreadableName]:[]),i=et(a,{attachments:n,droppedImageNames:[],unreadableImageNames:r});if(!i.attached){s.durable&&!i.written&&t.length>0&&ki.add({type:`warning`,title:`Stashed images were not saved`,description:`The prompt is still stashed, but browser storage rejected its image data.`,data:{hideCopyButton:!0}});return}let o=ND.getState().entries.find(e=>e.id===a),c=[];o?.unreadableImageNames.length&&c.push(`Could not read: ${pO(o.unreadableImageNames)}.`),o?.droppedImageNames.length&&c.push(`Over the stash image budget: ${pO(o.droppedImageNames)}.`),c.length>0?ki.add({type:`warning`,title:`Some images were not added to the stash`,description:c.join(` `),data:{hideCopyButton:!0}}):s.durable&&!i.durable&&t.length>0&&ki.add({type:`warning`,title:`Stashed images will not survive a reload`,description:`The prompt was saved, but browser storage rejected the later image update.`,data:{hideCopyButton:!0}})})().finally(()=>{An(a)})},[Ke,n,se,et,Je,Bn,mn,x.length,H,An,Or,Qe]),(0,q.useLayoutEffect)(()=>{let e=e=>{if(e.defaultPrevented||e.isComposing)return;let t=yn.current!==null&&e.composedPath().includes(yn.current),n=e.target===window||e.target===document||e.target===document.body;!t&&!n&&jo(e)||wo(e,V,{context:{terminalFocus:Ms(),terminalOpen:ae,modelPickerOpen:an,composerFocus:cn}})===`composer.stash`&&(e.preventDefault(),e.stopPropagation(),kn.current())};return window.addEventListener(`keydown`,e,!0),()=>window.removeEventListener(`keydown`,e,!0)},[cn,an,V,ae]),(0,q.useEffect)(()=>{fn(!1)},[n,mn]);let Ar=(0,q.useCallback)(()=>{U()},[U]),jr=(0,q.useCallback)(()=>{pe()},[pe]),Mr=(0,q.useCallback)(()=>{mn&&(En.current!==null&&window.cancelAnimationFrame(En.current),En.current=window.requestAnimationFrame(()=>{En.current=null;let e=bn.current,t=document.activeElement;t instanceof Element&&dO(t)||e&&t instanceof Element&&e.contains(t)&&t.closest(`[data-chat-composer-collapsed-controls="true"]`)===null||ln(!1)}))},[mn]);return(0,q.useEffect)(()=>()=>{En.current!==null&&window.cancelAnimationFrame(En.current)},[]),(0,q.useImperativeHandle)(t,()=>({focusAtEnd:()=>{vn.current?.focusAtEnd()},focusAt:e=>{vn.current?.focusAt(e)},openModelPicker:()=>{sn(!0)},toggleModelPicker:()=>{sn(e=>!e)},isModelPickerOpen:()=>an,readSnapshot:()=>sr(),resetCursorState:e=>{let t=e?.prompt??H.current,n=hn(t,e?.cursor??0);Kt(null),zt(n),Wt(e?.detectTrigger?ct(t,pn(t,n)):null)},addTerminalContext:e=>{if(!s)return;let t=vn.current?.readSnapshot()??{value:H.current,cursor:Rt,expandedCursor:pn(H.current,Rt),terminalContextIds:Fe.map(e=>e.id)},r=en(t.value,t.expandedCursor),i=Dt(r.prompt,r.cursor);Ve(n,r.prompt,{id:ro(),threadId:s,createdAt:new Date().toISOString(),...e},r.contextIndex)&&(H.current=r.prompt,zt(i),Wt(ct(r.prompt,r.cursor)),window.requestAnimationFrame(()=>{vn.current?.focusAt(i)}))},insertTriggerAtCursor:e=>{mn&&ln(!0);let t=vn.current?.readSnapshot()??{value:H.current,cursor:Rt,expandedCursor:pn(H.current,Rt),terminalContextIds:Fe.map(e=>e.id)},{text:r,cursor:i}=Zt(t.value,t.expandedCursor,t.expandedCursor,e),a=Dt(r,i);H.current=r,Be(n,r),zt(a),Wt(ct(r,i)),window.requestAnimationFrame(()=>{vn.current?.focusAt(a)})},getSendContext:()=>({prompt:H.current,images:se.current,terminalContexts:ce.current,sourceControlContexts:Ie,selectedPromptEffort:bt,selectedModelOptionsForDispatch:xt,selectedModelSelection:Ot,selectedProvider:ot,selectedModel:mt,selectedProviderModels:_t})}),[s,n,Rt,Ie,Fe,Ve,mn,H,se,ce,an,sr,mt,xt,Ot,bt,ot,_t,Be]),(0,Y.jsxs)(`form`,{ref:yn,onSubmit:gr,className:`relative mx-auto w-full min-w-0 max-w-208`,"data-chat-composer-form":`true`,children:[_n?(0,Y.jsx)(`div`,{className:G(`mb-2 flex min-w-0 items-center px-4`,Ze.length>0&&`pr-24`),children:(0,Y.jsx)(XD,{source:_n.source,target:_n.target})}):null,mn?null:(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(ID,{count:Ze.length,open:dn,onToggle:()=>fn(e=>!e)}),dn?(0,Y.jsx)(HD,{entries:Ze,onRestore:e=>Or(e),onDelete:kr,onClose:()=>fn(!1)}):null]}),(0,Y.jsx)(`div`,{className:G(`group rounded-3xl p-px transition-colors duration-200`,yt.composerFrameClassName),onDragEnter:Sr,onDragOver:Cr,onDragLeave:Tr,onDrop:Er,children:(0,Y.jsxs)(`div`,{ref:bn,"data-chat-composer-mobile-collapsed":gn?`true`:`false`,className:G(`rounded-[max(0px,calc(var(--radius-3xl)-2px))] border-0 bg-[color-mix(in_srgb,var(--card)_var(--app-composer-alpha),transparent)] dark:bg-[color-mix(in_srgb,var(--card)_var(--app-composer-dark-alpha),transparent)] [-webkit-backdrop-filter:var(--app-composer-filter)] [backdrop-filter:var(--app-composer-filter)] shadow-[0_6px_18px_rgba(0,0,0,0.06),0_1px_3px_rgba(0,0,0,0.05)] outline-none transition-[background-color,box-shadow] duration-200 has-focus-visible:shadow-[0_8px_24px_rgba(0,0,0,0.09),0_1px_4px_rgba(0,0,0,0.07)] dark:shadow-[inset_0_1px_0_rgba(255,255,255,0.06),0_10px_28px_rgba(0,0,0,0.4),0_1px_3px_rgba(0,0,0,0.35)] dark:has-focus-visible:shadow-[inset_0_1px_0_rgba(255,255,255,0.08),0_12px_32px_rgba(0,0,0,0.5),0_1px_4px_rgba(0,0,0,0.4)]`,vr?`bg-accent/30 shadow-lg/12 ring-1 ring-inset ring-primary/45 [--lg-plate-alpha:72%] [--lg-plate-color:color-mix(in_srgb,var(--accent)_38%,var(--card))]`:null,v?`opacity-75`:null,yt.composerSurfaceClassName),onFocusCapture:e=>{let t=e.target;t instanceof HTMLElement&&t.closest(`[data-chat-composer-collapsed-controls="true"]`)||(En.current!==null&&(window.cancelAnimationFrame(En.current),En.current=null),ln(!0))},onBlurCapture:()=>{Mr()},onClick:e=>{if(!gn||!Gn)return;let t=e.target;t instanceof HTMLElement&&t.closest(`[data-chat-composer-collapsed-controls="true"]`)||ln(!0)},children:[(0,Y.jsx)(FD,{hostRef:bn}),!gn&&(y?(0,Y.jsx)(`div`,{className:`rounded-t-[max(0px,calc(var(--radius-3xl)-3px))] border-b border-border/65 bg-muted/20`,children:(0,Y.jsx)(Gf,{approval:y,pendingCount:b.length,isResponding:k.includes(y.requestId),onRespondToApproval:me})}):x.length>0?(0,Y.jsx)(`div`,{className:`rounded-t-[max(0px,calc(var(--radius-3xl)-3px))] border-b border-border/65 bg-muted/20`,children:(0,Y.jsx)(ep,{pendingUserInputs:x,respondingRequestIds:k,answers:D,questionIndex:O,onToggleOption:he,onAdvance:ge})}):j&&M?(0,Y.jsx)(`div`,{className:`rounded-t-[max(0px,calc(var(--radius-3xl)-3px))] border-b border-border/65 bg-muted/20`,children:(0,Y.jsx)(np,{planTitle:fu(M.planMarkdown)??null},M.id)}):Hn&&p?(0,Y.jsx)(nO,{goal:p,onEdit:ke,onStatusChange:Ae,onClear:je}):null),gn&&y?(0,Y.jsx)(`div`,{className:`rounded-t-[max(0px,calc(var(--radius-3xl)-3px))] border-b border-border/65 bg-muted/20`,"data-chat-composer-collapsed-controls":`true`,children:(0,Y.jsx)(Gf,{approval:y,pendingCount:b.length,isResponding:k.includes(y.requestId),onRespondToApproval:me})}):gn&&x.length>0?(0,Y.jsxs)(`div`,{className:`rounded-t-[max(0px,calc(var(--radius-3xl)-3px))] border-b border-border/65 bg-muted/20`,"data-chat-composer-collapsed-controls":`true`,children:[(0,Y.jsx)(ep,{pendingUserInputs:x,respondingRequestIds:k,answers:D,questionIndex:O,onToggleOption:he,onAdvance:ge}),C?.activeQuestion?.multiSelect?(0,Y.jsx)(`div`,{className:`px-3 pb-3 sm:px-4`,children:(0,Y.jsx)(`div`,{"data-chat-composer-mobile-pending-compact":`true`,className:`flex min-w-0 items-center justify-end gap-2 rounded-lg border border-border/55 bg-background/55 p-1.5`,children:(0,Y.jsx)(Rd,{compact:!0,pendingAction:er,isRunning:!1,showPlanFollowUpPrompt:!1,promptHasText:!1,isSendBusy:g,isConnecting:h,isEnvironmentUnavailable:v!==null,isPreparingWorktree:!1,hasSendableContent:!1,preserveComposerFocusOnPointerDown:!0,onPreviousPendingQuestion:_e,onInterrupt:Ar,onImplementPlanInNewThread:jr})})}):null]}):null,B?(0,Y.jsx)(`div`,{className:`px-3 pt-2 sm:px-4`,"data-chat-composer-collapsed-controls":`true`,children:(0,Y.jsx)(CD,{...B})}):null,(0,Y.jsx)(vD,{editorRef:vn,isComposerCollapsedMobile:gn,hasComposerHeader:Un,isComposerApprovalState:Bn,resolvedTheme:re,composerMenuOpen:Pn,composerMenuItems:Nn,isComposerMenuLoading:Ln,composerTriggerKind:Mn,composerTrigger:Ht,composerMenuEmptyState:Rn,activeComposerMenuItemId:In?.id??null,onComposerMenuItemHighlighted:fr,onSelectComposerItem:dr,composerSourceControlContexts:Ie,onRemoveSourceControlContext:Dr,composerImages:Pe,nonPersistedComposerImageIdSet:zn,onExpandImage:Oe,onRemoveImage:br,pendingUserInputCount:x.length,prompt:Ne,composerCursor:Rt,composerTerminalContexts:Fe,skills:gt?.skills??[],showMobilePendingAnswerActions:nr,onRemoveTerminalContext:ir,onPromptChange:W,onComposerCommandKey:_r,onComposerPaste:xr,activePendingProgress:C,showPlanFollowUpPrompt:j,activeProposedPlan:M,environmentUnavailable:v,phase:m,isConnecting:h,isEditorDisabled:Gn,showCollapsedSendAction:Wn,collapsedSendActionLabel:`Send message`,collapsedSendActionDisabled:tr,onCollapsedSend:gr,isSendBusy:g,pendingPrimaryAction:er,onPreviousPendingQuestion:_e,onInterrupt:Ar,onImplementPlanInNewThread:jr}),gn||y?null:(0,Y.jsx)(_f,{isFooterCompact:$t,isPrimaryActionsCompact:nn,isMobileViewport:mn,hideOnMobilePendingAnswers:nr,environmentId:r,gitCwd:oe,hasSourceControlRemote:ze,onSelectIssue:lr,onSelectChangeRequest:ur,onAttachFile:e=>{yr([e])},executionTargets:e.executionTargets,selectedExecutionEnvironmentId:r,executionTargetLocked:e.executionTargetLocked,onExecutionTargetChange:e.onExecutionTargetChange,selectedInstanceId:dt,selectedModel:Nt,lockedProvider:R,lockedContinuationGroupKey:ut,providerInstanceEntries:tt,keybindings:V,modelOptionsByInstance:Mt,terminalOpen:ae,isModelPickerOpen:an,...yt.modelPickerIconClassName?{modelPickerIconClassName:yt.modelPickerIconClassName}:{},onModelPickerOpenChange:sn,onProviderModelSelect:ye,showInteractionModeToggle:Et.showInteractionModeToggle,askModeSupported:Et.askModeSupported,showPlanSidebarToggle:!1,interactionMode:I,runtimeMode:F,tokenMode:L,planSidebarLabel:N,planSidebarOpen:P,providerTraitsMenuContent:Qn,providerTraitsChips:$n,onInteractionModeChange:Se,onTogglePlanSidebar:we,onRuntimeModeChange:xe,onTokenModeChange:Ce,contextWindowUsage:It,contextWindowRateLimits:Lt,pendingAction:er,isRunning:m===`running`,showPlanFollowUpPrompt:x.length===0&&j,promptHasText:Ne.trim().length>0,isSendBusy:g,isConnecting:h,isEnvironmentUnavailable:v!==null,isPreparingWorktree:_,hasSendableContent:jn.hasSendableContent,onPreviousPendingQuestion:_e,onInterrupt:Ar,onImplementPlanInNewThread:jr})]})})]})})),_O=(0,q.lazy)(()=>n(()=>import(`./ThreadTerminalDrawer-C4NJu8Qs.js`).then(e=>e.n),__vite__mapDeps([0]))),vO=(0,q.memo)(function(e){let t=(0,J.c)(78),{threadRef:n,threadId:r,visible:i,launchContext:a,focusRequestId:s,splitShortcutLabel:c,newShortcutLabel:l,closeShortcutLabel:u,keybindings:d,onAddTerminalContext:f}=e,p;t[0]===n?p=t[1]:(p=le(n),t[0]=n,t[1]=p);let m=oe(p),h;t[2]===n?h=t[3]:(h=e=>e.getDraftThreadByRef(n),t[2]=n,t[3]=h);let g=qt(h),_;t[4]!==g||t[5]!==m?(_=m?o(m.environmentId,m.projectId):g?o(g.environmentId,g.projectId):null,t[4]=g,t[5]=m,t[6]=_):_=t[6];let v=_,y;t[7]===v?y=t[8]:(y=te(v),t[7]=v,t[8]=y);let b=oe(y),x;t[9]===n?x=t[10]:(x=e=>Xe(e.terminalStateByThreadKey,n),t[9]=n,t[10]=x);let S=me(x),C=me(yO),w=me(bO),T=me(xO),E=me(SO),D=me(CO),[O,k]=(0,q.useState)(0),A=m?.worktreePath??g?.worktreePath??null,j;bb0:{if(a!==null){j=a.worktreePath;break bb0}j=A}let M=j,N;t[11]!==M||t[12]!==a?.cwd||t[13]!==b?(N=()=>a?.cwd??(b?xa({project:{cwd:b.cwd},worktreePath:M}):null),t[11]=M,t[12]=a?.cwd,t[13]=b,t[14]=N):N=t[14],a?.cwd;let P;t[15]===N?P=t[16]:(P=N(),t[15]=N,t[16]=P);let F=P,I;t[17]!==M||t[18]!==b?(I=b?ga({project:{cwd:b.cwd},worktreePath:M}):{},t[17]=M,t[18]=b,t[19]=I):I=t[19];let L=I,R;t[20]===i?R=t[21]:(R=()=>{i&&k(wO)},t[20]=i,t[21]=R);let z=R,ee;t[22]!==C||t[23]!==n?(ee=e=>{C(n,e)},t[22]=C,t[23]=n,t[24]=ee):ee=t[24];let ne=ee,B;t[25]!==z||t[26]!==w||t[27]!==n?(B=()=>{w(n,`terminal-${ro()}`),z()},t[25]=z,t[26]=w,t[27]=n,t[28]=B):B=t[28];let re=B,ie;t[29]!==z||t[30]!==T||t[31]!==n?(ie=()=>{T(n,`terminal-${ro()}`),z()},t[29]=z,t[30]=T,t[31]=n,t[32]=ie):ie=t[32];let V=ie,ae;t[33]!==z||t[34]!==E||t[35]!==n?(ae=e=>{E(n,e),z()},t[33]=z,t[34]=E,t[35]=n,t[36]=ae):ae=t[36];let H=ae,se;t[37]!==z||t[38]!==D||t[39]!==S.terminalIds.length||t[40]!==r||t[41]!==n?(se=e=>{let t=Le(n.environmentId);if(!t)return;let i=S.terminalIds.length<=1,a=()=>t.terminal.write({threadId:r,terminalId:e,data:`exit
20
+ `);for(let t=0;t<n.length;t+=1){let r=n[t]??``;r.length>0&&e.append(F_(r)),t<n.length-1&&e.append(Ty())}}function nD(e,t,n){let r=vb();r.clear();let i=My();r.append(i);let a=bt(e,t);for(let e of a){if(e.type===`mention`){i.append(wE(e.path));continue}if(e.type===`skill`){let t=n.get(e.name);i.append(kE(e.name,t?.label??Qi({name:e.name}),t?.description??null));continue}if(e.type===`terminal-context`){e.context&&i.append(ME(e.context));continue}tD(i,e.text)}}function rD(e){return e instanceof jE?[e.__context.id]:$(e)?e.getChildren().flatMap(e=>rD(e)):[]}function iD(e){let t=(0,J.c)(4),[n]=Cp(),r,i;return t[0]!==n||t[1]!==e?(r=()=>{let t=(t,n)=>{if(!e.onCommandKeyDown||!n)return!1;let r=e.onCommandKeyDown(t,n);return r&&(n.preventDefault(),n.stopPropagation()),r},r=n.registerCommand(cg,e=>t(`ArrowDown`,e),3),i=n.registerCommand(sg,e=>t(`ArrowUp`,e),3),a=n.registerCommand(lg,e=>t(`Enter`,e),3),o=n.registerCommand(mg,e=>t(`Tab`,e),3);return()=>{r(),i(),a(),o()}},i=[n,e],t[0]=n,t[1]=e,t[2]=r,t[3]=i):(r=t[2],i=t[3]),(0,q.useEffect)(r,i),null}function aD(){let e=(0,J.c)(3),[t]=Cp(),n,r;return e[0]===t?(n=e[1],r=e[2]):(n=()=>{let e=t.registerCommand(ag,e=>{let n=null;if(t.getEditorState().read(()=>{let e=vv();if(!Q(e)||!e.isCollapsed())return;let t=$E(0);if(t<=0)return;let r=vb().getTextContent();ft(r,t,`left`)&&(n=t-1)}),n===null)return!1;let r=n;return e?.preventDefault(),e?.stopPropagation(),t.update(()=>{YE(r)}),!0},3),n=t.registerCommand(rg,e=>{let n=null;if(t.getEditorState().read(()=>{let e=vv();if(!Q(e)||!e.isCollapsed())return;let t=$E(0);if(t>=JE())return;let r=vb().getTextContent();ft(r,t,`right`)&&(n=t+1)}),n===null)return!1;let r=n;return e?.preventDefault(),e?.stopPropagation(),t.update(()=>{YE(r)}),!0},3);return()=>{e(),n()}},r=[t],e[0]=t,e[1]=n,e[2]=r),(0,q.useEffect)(n,r),null}function oD(){let e=(0,J.c)(3),[t]=Cp(),n,r;return e[0]===t?(n=e[1],r=e[2]):(n=()=>t.registerUpdateListener(e=>{let{editorState:n}=e,r=null;n.read(()=>{let e=vv();if(!Q(e)||!e.isCollapsed())return;let t=e.anchor.getNode();NE(t)&&e.anchor.offset!==0&&(r=GE(t,0)+1)}),r!==null&&queueMicrotask(()=>{t.update(()=>{YE(r)})})}),r=[t],e[0]=t,e[1]=n,e[2]=r),(0,q.useEffect)(n,r),null}function sD(){let e=(0,J.c)(4),[t]=Cp(),{onRemoveTerminalContext:n}=(0,q.useContext)(xE),r,i;return e[0]!==t||e[1]!==n?(r=()=>t.registerCommand(dg,e=>{let t=vv();if(!Q(t)||!t.isCollapsed())return!1;let r=t.anchor.getNode(),i=$E(0),a=t=>{if(!NE(t))return!1;let r=GE(t,0);return t.remove(),t instanceof jE?(n(t.__context.id),YE(i)):YE(r),e?.preventDefault(),!0};if(a(r))return!0;if(Z(r)){if(t.anchor.offset>0)return!1;if(a(r.getPreviousSibling()))return!0;let e=r.getParent();if($(e)){let t=r.getIndexWithinParent();if(t>0&&a(e.getChildAtIndex(t-1)))return!0}return!1}if($(r)){let e=t.anchor.offset-1;if(e>=0&&a(r.getChildAtIndex(e)))return!0}return!1},3),i=[t,n],e[0]=t,e[1]=n,e[2]=r,e[3]=i):(r=e[2],i=e[3]),(0,q.useEffect)(r,i),null}function cD(e){let t=(0,J.c)(14),[n]=Cp(),r=(0,q.useRef)(e.terminalContexts),i;t[0]===e.skills?i=t[1]:(i=EE(e.skills),t[0]=e.skills,t[1]=i);let a=(0,q.useRef)(i),o=(0,q.useRef)(null),s=(0,q.useRef)(null),c,l;t[2]===e.terminalContexts?(c=t[3],l=t[4]):(c=()=>{r.current=e.terminalContexts},l=[e.terminalContexts],t[2]=e.terminalContexts,t[3]=c,t[4]=l),(0,q.useEffect)(c,l);let u,d;t[5]===e.skills?(u=t[6],d=t[7]):(u=()=>{a.current=EE(e.skills)},d=[e.skills],t[5]=e.skills,t[6]=u,t[7]=d),(0,q.useEffect)(u,d);let f;t[8]===n?f=t[9]:(f=e=>{let t=yE.get(e),i=o.current;if(!t)return o.current=null,!1;let s=!1;return n.update(()=>{let n=i??lD();if(!n||!t)return;let c=n.value.slice(n.expandedStart,n.expandedEnd),l=`${n.value.slice(0,n.expandedStart)}${e}${c}${t}${n.value.slice(n.expandedEnd)}`;nD(l,r.current,a.current);let u=Dt(l,n.expandedStart);XE(u+e.length,u+e.length+c.length),s=!0,o.current=null}),s},t[8]=n,t[9]=f);let p=f,m,h;return t[10]!==p||t[11]!==n?(m=()=>{let e=e=>{if(s.current){if(e.key===`Dead`||e.key===` `||e.code===`Space`)return;s.current=null}if(e.defaultPrevented||e.isComposing||e.metaKey||e.ctrlKey){o.current=null,s.current=null;return}n.getEditorState().read(()=>{let e=vv();if(!Q(e)||e.isCollapsed()){o.current=null,s.current=null;return}if(QE(e)){o.current=null,s.current=null;return}let t=ZE(e);if(!t||t.start===t.end){o.current=null,s.current=null;return}let n=vb().getTextContent();if(yt(n,t.start,t.end)){o.current=null,s.current=null;return}let r={value:n,expandedStart:t.start,expandedEnd:t.end};o.current=r,s.current=null})},t=e=>{if(e.inputType===`insertCompositionText`&&e.data==="`"&&bE!==null&&o.current){s.current=o.current;return}if(s.current||e.inputType===`insertCompositionText`)return;if(typeof e.data!=`string`){o.current=null;return}let t=e.inputType===`insertText`?e.data:null;if(!t||t.length!==1){o.current=null;return}p(t)&&(e.preventDefault(),e.stopPropagation(),e.stopImmediatePropagation())},r=e=>{queueMicrotask(()=>{n.update(()=>{let t=s.current;if(!t)return;let n=vb().getTextContent();if(bE===null){s.current=null;return}if(n!==`${t.value.slice(0,t.expandedStart)}\`${t.value.slice(t.expandedEnd)}`){e?.finalAttempt&&(o.current=null,s.current=null);return}let r=t.value.slice(t.expandedStart,t.expandedEnd),i=Dt(n,t.expandedStart);XE(i,i+1);let a=vv();if(!Q(a)){o.current=null,s.current=null;return}a.insertText(`\`${r}${bE}`),XE(i+1,i+1+r.length),o.current=null,s.current=null},{tag:f_})})},i=e=>{let t=e;(t.inputType===`insertText`||t.inputType===`insertCompositionText`)&&r()},a=()=>{r({finalAttempt:!0})},c=null,l=n.registerRootListener((n,r)=>{r?.removeEventListener(`keydown`,e),r?.removeEventListener(`beforeinput`,t,!0),r?.removeEventListener(`input`,i),r?.removeEventListener(`compositionend`,a),n?.addEventListener(`keydown`,e),n?.addEventListener(`beforeinput`,t,!0),n?.addEventListener(`input`,i),n?.addEventListener(`compositionend`,a),c=n});return()=>{c&&(c.removeEventListener(`keydown`,e),c.removeEventListener(`beforeinput`,t,!0),c.removeEventListener(`input`,i),c.removeEventListener(`compositionend`,a)),l()}},h=[p,n],t[10]=p,t[11]=n,t[12]=m,t[13]=h):(m=t[12],h=t[13]),(0,q.useEffect)(m,h),null}function lD(){let e=vv();if(!Q(e)||e.isCollapsed()||QE(e))return null;let t=ZE(e);if(!t||t.start===t.end)return null;let n=vb().getTextContent();return yt(n,t.start,t.end)?null:{value:n,expandedStart:t.start,expandedEnd:t.end}}function uD(e){let t=(0,J.c)(78),{value:n,cursor:r,terminalContexts:i,skills:a,disabled:o,placeholder:s,collapsed:c,className:l,onRemoveTerminalContext:u,onChange:d,onCommandKeyDown:f,onPaste:p,editorRef:m}=e,[h]=Cp(),g=(0,q.useRef)(d),_=hn(n,r),v;t[0]===i?v=t[1]:(v=FE(i),t[0]=i,t[1]=v);let y=v,b=(0,q.useRef)(y),x;t[2]===a?x=t[3]:(x=IE(a),t[2]=a,t[3]=x);let S=x,C=(0,q.useRef)(S),w;t[4]===a?w=t[5]:(w=EE(a),t[4]=a,t[5]=w);let T=(0,q.useRef)(w),E=pn(n,_),D;t[6]===i?D=t[7]:(D=i.map(fD),t[6]=i,t[7]=D);let O;t[8]!==_||t[9]!==E||t[10]!==D||t[11]!==n?(O={value:n,cursor:_,expandedCursor:E,terminalContextIds:D},t[8]=_,t[9]=E,t[10]=D,t[11]=n,t[12]=O):O=t[12];let k=(0,q.useRef)(O),A=(0,q.useRef)(!1),j;t[13]===u?j=t[14]:(j={onRemoveTerminalContext:u},t[13]=u,t[14]=j);let M=j,N,P;t[15]===d?(N=t[16],P=t[17]):(N=()=>{g.current=d},P=[d],t[15]=d,t[16]=N,t[17]=P),(0,q.useEffect)(N,P);let F,I;t[18]===a?(F=t[19],I=t[20]):(F=()=>{T.current=EE(a)},I=[a],t[18]=a,t[19]=F,t[20]=I),(0,q.useLayoutEffect)(F,I);let L,R;t[21]!==o||t[22]!==h?(L=()=>{h.setEditable(!o)},R=[o,h],t[21]=o,t[22]=h,t[23]=L,t[24]=R):(L=t[23],R=t[24]),(0,q.useEffect)(L,R);let z,ee;t[25]!==r||t[26]!==h||t[27]!==S||t[28]!==i||t[29]!==y||t[30]!==n?(z=()=>{let e=hn(n,r),t=k.current,a=b.current!==y,o=C.current!==S;if(t.value===n&&t.cursor===e&&!a&&!o)return;k.current={value:n,cursor:e,expandedCursor:pn(n,e),terminalContextIds:i.map(dD)},b.current=y,C.current=S;let s=h.getRootElement(),c=!!(s&&document.activeElement===s);t.value===n&&!a&&!o&&!c||(A.current=!0,h.update(()=>{let r=t.value!==n||a||o;r&&nD(n,i,T.current),(r||c)&&YE(e)}),queueMicrotask(()=>{A.current=!1}))},ee=[r,h,S,i,y,n],t[25]=r,t[26]=h,t[27]=S,t[28]=i,t[29]=y,t[30]=n,t[31]=z,t[32]=ee):(z=t[31],ee=t[32]),(0,q.useLayoutEffect)(z,ee);let te;t[33]===h?te=t[34]:(te=e=>{let t=h.getRootElement();if(!t)return;let n=hn(k.current.value,e);t.focus({preventScroll:!0}),h.update(()=>{YE(n)}),k.current={value:k.current.value,cursor:n,expandedCursor:pn(k.current.value,n),terminalContextIds:k.current.terminalContextIds},g.current(k.current.value,n,k.current.expandedCursor,!1,k.current.terminalContextIds)},t[33]=h,t[34]=te);let ne=te,B;t[35]===h?B=t[36]:(B=()=>{let e=k.current;return h.getEditorState().read(()=>{let t=vb().getTextContent(),n=hn(t,k.current.cursor);e={value:t,cursor:hn(t,$E(n)),expandedCursor:LE(t,eD(LE(t,k.current.expandedCursor))),terminalContextIds:rD(vb())}}),k.current=e,e},t[35]=h,t[36]=B);let re=B,ie;t[37]===h?ie=t[38]:(ie=e=>{h.getRootElement()?.focus(),h.update(()=>{let t=vv();Q(t)||(YE(k.current.cursor),t=vv()),Q(t)&&t.insertText(e)},{tag:f_})},t[37]=h,t[38]=ie);let V=ie,ae,oe;t[39]!==ne||t[40]!==V||t[41]!==re?(ae=()=>({focus:()=>{ne(k.current.cursor)},focusAt:ne,focusAtEnd:()=>{ne(Dt(k.current.value,k.current.value.length))},insertTextAndFocus:V,readSnapshot:re}),oe=[ne,V,re],t[39]=ne,t[40]=V,t[41]=re,t[42]=ae,t[43]=oe):(ae=t[42],oe=t[43]),(0,q.useImperativeHandle)(m,ae,oe);let H;t[44]===Symbol.for(`react.memo_cache_sentinel`)?(H=e=>{e.read(()=>{let e=vb().getTextContent(),t=hn(e,k.current.cursor),n=hn(e,$E(t)),r=LE(e,eD(LE(e,k.current.expandedCursor))),i=rD(vb()),a=k.current;if(a.value===e&&a.cursor===n&&a.expandedCursor===r&&a.terminalContextIds.length===i.length&&a.terminalContextIds.every((e,t)=>e===i[t])||A.current)return;k.current={value:e,cursor:n,expandedCursor:r,terminalContextIds:i};let o=ft(e,n,`left`)||ft(e,n,`right`);g.current(e,n,r,o,i)})},t[44]=H):H=t[44];let se=H,ce=c?`max-h-6.5 min-h-6.5 overflow-hidden text-ellipsis whitespace-nowrap`:`max-h-[200px] min-h-17.5 overflow-y-auto`,le;t[45]!==l||t[46]!==ce?(le=G(`block w-full whitespace-pre-wrap wrap-break-word bg-transparent text-[16px] leading-relaxed text-foreground focus:outline-none not-phone:text-[14px]`,ce,l),t[45]=l,t[46]=ce,t[47]=le):le=t[47];let ue=c?s:void 0,de;t[48]===Symbol.for(`react.memo_cache_sentinel`)?(de=(0,Y.jsx)(`span`,{}),t[48]=de):de=t[48];let fe;t[49]!==p||t[50]!==s||t[51]!==le||t[52]!==ue?(fe=(0,Y.jsx)(RC,{className:le,"data-testid":`composer-editor`,"aria-label":ue,"aria-placeholder":s,placeholder:de,onPaste:p}),t[49]=p,t[50]=s,t[51]=le,t[52]=ue,t[53]=fe):fe=t[53];let U;t[54]!==c||t[55]!==s||t[56]!==i.length?(U=i.length>0?null:(0,Y.jsx)(`div`,{className:G(`pointer-events-none absolute inset-0 text-[16px] leading-relaxed text-muted-foreground/35 not-phone:text-[14px]`,c&&`overflow-hidden text-ellipsis whitespace-nowrap`),children:s}),t[54]=c,t[55]=s,t[56]=i.length,t[57]=U):U=t[57];let pe;t[58]!==fe||t[59]!==U?(pe=(0,Y.jsx)(mE,{contentEditable:fe,placeholder:U,ErrorBoundary:HC}),t[58]=fe,t[59]=U,t[60]=pe):pe=t[60];let me;t[61]===Symbol.for(`react.memo_cache_sentinel`)?(me=(0,Y.jsx)(sT,{onChange:se}),t[61]=me):me=t[61];let he;t[62]===f?he=t[63]:(he=(0,Y.jsx)(iD,{...f?{onCommandKeyDown:f}:{}}),t[62]=f,t[63]=he);let ge;t[64]!==a||t[65]!==i?(ge=(0,Y.jsx)(cD,{terminalContexts:i,skills:a}),t[64]=a,t[65]=i,t[66]=ge):ge=t[66];let _e,ve,ye,be;t[67]===Symbol.for(`react.memo_cache_sentinel`)?(_e=(0,Y.jsx)(aD,{}),ve=(0,Y.jsx)(oD,{}),ye=(0,Y.jsx)(sD,{}),be=(0,Y.jsx)(aT,{}),t[67]=_e,t[68]=ve,t[69]=ye,t[70]=be):(_e=t[67],ve=t[68],ye=t[69],be=t[70]);let xe;t[71]!==pe||t[72]!==he||t[73]!==ge?(xe=(0,Y.jsxs)(`div`,{className:`relative`,children:[pe,me,he,ge,_e,ve,ye,be]}),t[71]=pe,t[72]=he,t[73]=ge,t[74]=xe):xe=t[74];let Se;return t[75]!==xe||t[76]!==M?(Se=(0,Y.jsx)(xE.Provider,{value:M,children:xe}),t[75]=xe,t[76]=M,t[77]=Se):Se=t[77],Se}function dD(e){return e.id}function fD(e){return e.id}var pD=(0,q.forwardRef)(function(e,t){let n=(0,J.c)(21),{value:r,cursor:i,terminalContexts:a,skills:o,disabled:s,placeholder:c,collapsed:l,className:u,onRemoveTerminalContext:d,onChange:f,onCommandKeyDown:p,onPaste:m}=e,h=(0,q.useRef)(r),g=(0,q.useRef)(a),_;n[0]===o?_=n[1]:(_=EE(o),n[0]=o,n[1]=_);let v=(0,q.useRef)(_),y;n[2]===Symbol.for(`react.memo_cache_sentinel`)?(y={namespace:`rycotools-composer-editor`,editable:!0,nodes:[CE,OE,jE],editorState:()=>{nD(h.current,g.current,v.current)},onError:mD},n[2]=y):y=n[2];let b=y,x;n[3]===p?x=n[4]:(x=p?{onCommandKeyDown:p}:{},n[3]=p,n[4]=x);let S;n[5]===u?S=n[6]:(S=u?{className:u}:{},n[5]=u,n[6]=S);let C;return n[7]!==l||n[8]!==i||n[9]!==s||n[10]!==f||n[11]!==m||n[12]!==d||n[13]!==c||n[14]!==t||n[15]!==o||n[16]!==x||n[17]!==S||n[18]!==a||n[19]!==r?(C=(0,Y.jsx)(kC,{initialConfig:b,children:(0,Y.jsx)(uD,{value:r,cursor:i,terminalContexts:a,skills:o,disabled:s,placeholder:c,collapsed:l,onRemoveTerminalContext:d,onChange:f,onPaste:m,editorRef:t,...x,...S})},vE),n[7]=l,n[8]=i,n[9]=s,n[10]=f,n[11]=m,n[12]=d,n[13]=c,n[14]=t,n[15]=o,n[16]=x,n[17]=S,n[18]=a,n[19]=r,n[20]=C):C=n[20],C});function mD(e){throw e}function hD(e,t){let n=e.flatMap(e=>e.previewUrl?[{id:e.id,src:e.previewUrl,name:e.name}]:[]);if(n.length===0)return null;let r=n.findIndex(e=>e.id===t);return r<0?null:{images:n.map(e=>({src:e.src,name:e.name})),index:r}}function gD(e){let t=e.indexOf(`#`);return t<0||e.slice(0,t).includes(`/`)?e:e.slice(t)}function _D(e){let t=(0,J.c)(36),{context:n,onRemove:r}=e,i;t[0]===n.reference?i=t[1]:(i=gD(n.reference),t[0]=n.reference,t[1]=i);let a=i,o=n.detail.title,s=n.detail.truncated,c;t[2]!==n.detail||t[3]!==n.kind?(c=n.kind===`change-request`&&`baseRefName`in n.detail?hi(n.detail):null,t[2]=n.detail,t[3]=n.kind,t[4]=c):c=t[4];let l=c,u=n.kind===`change-request`?Ji:vr,d=`body`in n.detail&&typeof n.detail.body==`string`?n.detail.body:null,f=n.id,p;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(p=G(Zi,`size-3.5`),t[5]=p):p=t[5];let m;t[6]===u?m=t[7]:(m=(0,Y.jsx)(u,{className:p,"aria-hidden":`true`}),t[6]=u,t[7]=m);let h;t[8]===a?h=t[9]:(h=(0,Y.jsx)(`span`,{className:`shrink-0 font-mono text-[11px] text-muted-foreground`,children:a}),t[8]=a,t[9]=h);let g;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(g=G(Ca,`max-w-32`),t[10]=g):g=t[10];let _;t[11]===o?_=t[12]:(_=(0,Y.jsx)(`span`,{className:g,children:o}),t[11]=o,t[12]=_);let v;t[13]===s?v=t[14]:(v=s?(0,Y.jsx)(`span`,{"aria-label":`Context truncated`,className:`ml-0.5 shrink-0 rounded-sm bg-warning/20 px-0.5 text-[9px] font-semibold uppercase leading-tight text-warning-foreground`,children:`truncated`}):null,t[13]=s,t[14]=v);let y;t[15]===l?y=t[16]:(y=l?(0,Y.jsx)(ai,{view:l,mode:`compact`}):null,t[15]=l,t[16]=y);let b;t[17]!==n.id||t[18]!==r?(b=()=>r(n.id),t[17]=n.id,t[18]=r,t[19]=b):b=t[19];let x;t[20]===Symbol.for(`react.memo_cache_sentinel`)?(x=(0,Y.jsx)(Qa,{className:`size-3`,"aria-hidden":`true`}),t[20]=x):x=t[20];let S;t[21]===b?S=t[22]:(S=(0,Y.jsx)(`button`,{type:`button`,"aria-label":`Remove context`,className:na,onClick:b,children:x}),t[21]=b,t[22]=S);let C;t[23]!==n.id||t[24]!==S||t[25]!==m||t[26]!==h||t[27]!==_||t[28]!==v||t[29]!==y?(C=(0,Y.jsx)(Po,{render:(0,Y.jsxs)(`span`,{className:wa,"data-context-id":f,children:[m,h,_,v,y,S]})}),t[23]=n.id,t[24]=S,t[25]=m,t[26]=h,t[27]=_,t[28]=v,t[29]=y,t[30]=C):C=t[30];let w;t[31]===d?w=t[32]:(w=d?(0,Y.jsx)(Fo,{side:`top`,className:`max-w-80 whitespace-pre-wrap leading-tight`,children:d}):null,t[31]=d,t[32]=w);let T;return t[33]!==C||t[34]!==w?(T=(0,Y.jsxs)(Io,{children:[C,w]}),t[33]=C,t[34]=w,t[35]=T):T=t[35],T}var vD=(0,q.memo)(function(e){let t=(0,J.c)(76),{editorRef:n,isComposerCollapsedMobile:r,hasComposerHeader:i,isComposerApprovalState:a,resolvedTheme:o,composerMenuOpen:s,composerMenuItems:c,isComposerMenuLoading:l,composerTriggerKind:u,composerTrigger:d,composerMenuEmptyState:f,activeComposerMenuItemId:p,onComposerMenuItemHighlighted:m,onSelectComposerItem:h,composerSourceControlContexts:g,onRemoveSourceControlContext:_,composerImages:v,nonPersistedComposerImageIdSet:y,onExpandImage:b,onRemoveImage:x,pendingUserInputCount:S,prompt:C,composerCursor:w,composerTerminalContexts:T,skills:E,showMobilePendingAnswerActions:D,onRemoveTerminalContext:O,onPromptChange:k,onComposerCommandKey:A,onComposerPaste:j,activePendingProgress:M,showPlanFollowUpPrompt:N,activeProposedPlan:P,environmentUnavailable:F,phase:I,isConnecting:L,isEditorDisabled:R,showCollapsedSendAction:z,collapsedSendActionLabel:ee,collapsedSendActionDisabled:te,onCollapsedSend:ne,isSendBusy:B,pendingPrimaryAction:re,onPreviousPendingQuestion:ie,onInterrupt:V,onImplementPlanInNewThread:ae}=e,oe=i?`pt-2.5 sm:pt-3`:`pt-3.5 sm:pt-4`,H;t[0]===oe?H=t[1]:(H=G(`relative px-3 pb-2 sm:px-4`,oe),t[0]=oe,t[1]=H);let se=s&&!a,ce;t[2]===d?ce=t[3]:(ce=d?.kind===`slash-command`&&d.query.trim().length===0,t[2]=d,t[3]=ce);let le;t[4]!==p||t[5]!==f||t[6]!==c||t[7]!==u||t[8]!==l||t[9]!==m||t[10]!==h||t[11]!==o||t[12]!==se||t[13]!==ce?(le=(0,Y.jsx)(zf,{open:se,items:c,resolvedTheme:o,isLoading:l,triggerKind:u,groupSlashCommandSections:ce,emptyStateText:f,activeItemId:p,onHighlightedItemChange:m,onSelect:h}),t[4]=p,t[5]=f,t[6]=c,t[7]=u,t[8]=l,t[9]=m,t[10]=h,t[11]=o,t[12]=se,t[13]=ce,t[14]=le):le=t[14];let ue;t[15]!==g||t[16]!==a||t[17]!==r||t[18]!==_||t[19]!==S?(ue=!r&&!a&&S===0&&g.length>0&&(0,Y.jsx)(`div`,{className:`mb-2 flex flex-wrap gap-1.5`,children:g.map(e=>(0,Y.jsx)(_D,{context:e,onRemove:_},e.id))}),t[15]=g,t[16]=a,t[17]=r,t[18]=_,t[19]=S,t[20]=ue):ue=t[20];let de;t[21]!==v||t[22]!==a||t[23]!==r||t[24]!==y||t[25]!==b||t[26]!==x||t[27]!==S?(de=!r&&!a&&S===0&&v.length>0&&(0,Y.jsx)(`div`,{className:`mb-3 flex flex-wrap gap-2`,children:v.map(e=>(0,Y.jsxs)(`div`,{className:`relative h-16 w-16 overflow-hidden rounded-lg border border-border/80 bg-background`,children:[e.previewUrl?(0,Y.jsx)(`button`,{type:`button`,className:`h-full w-full cursor-zoom-in`,"aria-label":`Preview ${e.name}`,onClick:()=>{let t=hD(v,e.id);t&&b(t)},children:(0,Y.jsx)(`img`,{src:e.previewUrl,alt:e.name,className:`h-full w-full object-cover`})}):(0,Y.jsx)(`div`,{className:`flex h-full w-full items-center justify-center px-1 text-center text-[10px] text-muted-foreground/70`,children:e.name}),y.has(e.id)&&(0,Y.jsxs)(Io,{children:[(0,Y.jsx)(Po,{render:(0,Y.jsx)(`span`,{role:`img`,"aria-label":`Draft attachment may not persist`,className:`absolute left-1 top-1 inline-flex items-center justify-center rounded bg-background/85 p-0.5 text-amber-600`,children:(0,Y.jsx)(Di,{className:`size-3`})})}),(0,Y.jsx)(Fo,{side:`top`,className:`max-w-64 whitespace-normal leading-tight`,children:`Draft attachment could not be saved locally and may be lost on navigation.`})]}),(0,Y.jsx)(K,{variant:`ghost`,size:`icon-xs`,className:`absolute right-1 top-1 bg-background/80 hover:bg-background/90`,onClick:()=>x(e.id),"aria-label":`Remove ${e.name}`,children:(0,Y.jsx)(Qa,{})})]},e.id))}),t[21]=v,t[22]=a,t[23]=r,t[24]=y,t[25]=b,t[26]=x,t[27]=S,t[28]=de):de=t[28];let fe=z&&`flex items-center gap-2`,U;t[29]===fe?U=t[30]:(U=G(`relative`,fe),t[29]=fe,t[30]=U);let pe=a?``:M?M.customAnswer:C,me;t[31]!==T||t[32]!==a||t[33]!==S?(me=!a&&S===0?T:[],t[31]=T,t[32]=a,t[33]=S,t[34]=me):me=t[34];let he;t[35]===D?he=t[36]:(he=D?{className:`phone:pb-11`}:{},t[35]=D,t[36]=he);let ge=a?`Resolve this approval request to continue`:M?r?`Write custom answer`:`Type your own answer, or leave this blank to use the selected option`:N&&P?r?`Add plan feedback`:`Add feedback to refine the plan, or leave this blank to implement it`:F?`${F.label} is ${F.connectionState===`connecting`?`connecting`:`disconnected`}`:I===`disconnected`?`Ask for follow-up changes or attach images`:r?`Ask anything...`:`Ask anything, @tag files/folders, or use / to show available commands`,_e;t[37]!==w||t[38]!==n||t[39]!==r||t[40]!==R||t[41]!==A||t[42]!==j||t[43]!==k||t[44]!==O||t[45]!==E||t[46]!==me||t[47]!==he||t[48]!==ge||t[49]!==pe?(_e=(0,Y.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,Y.jsx)(pD,{ref:n,collapsed:r,value:pe,cursor:w,terminalContexts:me,skills:E,...he,onRemoveTerminalContext:O,onChange:k,onCommandKeyDown:A,onPaste:j,placeholder:ge,disabled:R})}),t[37]=w,t[38]=n,t[39]=r,t[40]=R,t[41]=A,t[42]=j,t[43]=k,t[44]=O,t[45]=E,t[46]=me,t[47]=he,t[48]=ge,t[49]=pe,t[50]=_e):_e=t[50];let ve;t[51]!==te||t[52]!==ee||t[53]!==ne||t[54]!==z?(ve=z?(0,Y.jsx)(`button`,{type:`button`,className:`flex size-8 shrink-0 items-center justify-center rounded-lg bg-primary/90 text-primary-foreground disabled:opacity-30`,disabled:te,"aria-label":ee,onPointerDown:yD,onClick:e=>{e.stopPropagation(),ne()},children:(0,Y.jsx)(`svg`,{width:`16`,height:`16`,viewBox:`0 0 16 16`,fill:`none`,"aria-hidden":`true`,children:(0,Y.jsx)(`path`,{d:`M8 3L8 13M8 3L4 7M8 3L12 7`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`})})}):null,t[51]=te,t[52]=ee,t[53]=ne,t[54]=z,t[55]=ve):ve=t[55];let ye;t[56]!==F||t[57]!==L||t[58]!==B||t[59]!==ae||t[60]!==V||t[61]!==ie||t[62]!==re||t[63]!==D?(ye=D?(0,Y.jsx)(`div`,{"data-chat-composer-mobile-pending-actions":`true`,className:`absolute bottom-0 right-0 flex justify-end`,children:(0,Y.jsx)(Rd,{compact:!0,pendingAction:re,isRunning:!1,showPlanFollowUpPrompt:!1,promptHasText:!1,isSendBusy:B,isConnecting:L,isEnvironmentUnavailable:F!==null,isPreparingWorktree:!1,hasSendableContent:!1,preserveComposerFocusOnPointerDown:!0,onPreviousPendingQuestion:ie,onInterrupt:V,onImplementPlanInNewThread:ae})}):null,t[56]=F,t[57]=L,t[58]=B,t[59]=ae,t[60]=V,t[61]=ie,t[62]=re,t[63]=D,t[64]=ye):ye=t[64];let be;t[65]!==_e||t[66]!==ve||t[67]!==ye||t[68]!==U?(be=(0,Y.jsxs)(`div`,{className:U,children:[_e,ve,ye]}),t[65]=_e,t[66]=ve,t[67]=ye,t[68]=U,t[69]=be):be=t[69];let xe;return t[70]!==H||t[71]!==be||t[72]!==le||t[73]!==ue||t[74]!==de?(xe=(0,Y.jsxs)(`div`,{className:H,children:[le,ue,de,be]}),t[70]=H,t[71]=be,t[72]=le,t[73]=ue,t[74]=de,t[75]=xe):xe=t[75],xe});function yD(e){return e.preventDefault()}function bD(e){let t=(0,J.c)(11),{label:n,items:r,className:i}=e;if(r.length===0)return null;let a;t[0]===i?a=t[1]:(a=G(`relative min-w-0`,i),t[0]=i,t[1]=a);let o;t[2]===r?o=t[3]:(o=r.map(xD),t[2]=r,t[3]=o);let s;t[4]!==n||t[5]!==o?(s=(0,Y.jsx)(`div`,{role:`group`,"aria-label":n,className:`flex min-w-0 items-center gap-1.5 overflow-x-auto overscroll-x-contain pe-4 [scrollbar-width:none] [&::-webkit-scrollbar]:hidden`,"data-slot":`mobile-context-strip-rail`,children:o}),t[4]=n,t[5]=o,t[6]=s):s=t[6];let c;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,Y.jsx)(`span`,{"aria-hidden":!0,className:`pointer-events-none absolute inset-y-0 end-0 w-4 bg-gradient-to-l from-background/80 to-transparent`,"data-slot":`mobile-context-strip-edge`}),t[7]=c):c=t[7];let l;return t[8]!==a||t[9]!==s?(l=(0,Y.jsxs)(`div`,{className:a,"data-slot":`mobile-context-strip`,children:[s,c]}),t[8]=a,t[9]=s,t[10]=l):l=t[10],l}function xD(e){return(0,Y.jsxs)(`button`,{type:`button`,"aria-pressed":e.selected,disabled:e.disabled??!1,className:G(Vc(`chip`),`flex min-h-[var(--app-dock-control-size)] min-w-[var(--app-dock-control-size)] shrink-0 items-center gap-1.5 rounded-full border border-border/60 px-3 text-xs`,`transition-colors duration-[var(--app-motion-duration-chip)] ease-[var(--app-motion-ease)] motion-reduce:transition-none`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-inset`,`disabled:pointer-events-none disabled:text-muted-foreground/60`,e.selected===!0&&`ring-1 ring-ring/50`),"data-slot":`mobile-context-strip-pill`,onClick:e.onSelect,children:[e.icon,(0,Y.jsx)(`span`,{className:`max-w-40 truncate font-medium`,children:e.label}),e.value===void 0?null:(0,Y.jsx)(`span`,{className:`max-w-40 truncate text-muted-foreground`,children:e.value})]},e.id)}var SD=new Map;function CD(e){let[t,n]=(0,q.useState)(!1),[r,a]=(0,q.useState)(!1),o=f(i(e.environmentId,e.threadId)),s=oe($a(ce)),c=(0,q.useMemo)(()=>s.find(t=>t.id===e.threadId&&t.environmentId===e.environmentId)??null,[e.environmentId,e.threadId,s]),l=(0,q.useMemo)(()=>e.draft?{id:e.threadId,environmentId:e.environmentId,projectId:e.draft.projectId,title:e.title,interactionMode:nn,session:null,createdAt:e.draft.createdAt,archivedAt:null,settledOverride:null,settledAt:null,latestTurn:null,branch:null,worktreePath:null,latestUserMessageAt:null,hasPendingApprovals:!1,hasPendingUserInput:!1,hasActionableProposedPlan:!1,draftId:e.draft.draftId}:null,[e.draft,e.environmentId,e.threadId,e.title]),u=c??l,d=(0,q.useRef)(new Map);d.current=(0,q.useMemo)(()=>new Map(u?[[o,u]]:[]),[u,o]);let p=Zc({sidebarThreadByKeyRef:d,memberProjectByScopedKey:SD,projectCwd:e.projectCwd}),m=u?p.listThreadMenuActions(o):[],h=e.sessionTabs.length>0&&e.onSelectSessionTab!==null,g=[{id:`find`,label:`Find in thread`,icon:(0,Y.jsx)(Ia,{"aria-hidden":!0,className:`size-3.5 shrink-0`}),onSelect:e.onOpenFindInThread},...e.onOpenSourceControl?[{id:`source-control`,label:`Source control`,...e.branch===null?{}:{value:e.branch},icon:(0,Y.jsx)(Ji,{"aria-hidden":!0,className:`size-3.5 shrink-0`}),onSelect:e.onOpenSourceControl}]:[],...h?[{id:`sessions`,label:`Sessions`,value:String(e.sessionTabs.length),icon:(0,Y.jsx)(Gi,{"aria-hidden":!0,className:`size-3.5 shrink-0`}),onSelect:()=>a(!0)}]:[]];return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`div`,{className:`mb-1.5 flex min-w-0 items-center gap-1.5`,"data-slot":`phone-thread-dock`,children:[(0,Y.jsx)(`button`,{type:`button`,"aria-label":`Toggle workspace panel`,"aria-pressed":e.workspacePanelOpen,className:`flex min-h-[var(--app-dock-control-size)] min-w-[var(--app-dock-control-size)] shrink-0 items-center justify-center rounded-full text-muted-foreground hover:bg-accent hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring aria-pressed:bg-accent aria-pressed:text-foreground`,onClick:e.onToggleWorkspacePanel,children:(0,Y.jsx)(Aa,{"aria-hidden":!0,className:`size-4`})}),(0,Y.jsx)(bD,{label:`Thread context`,items:g,className:`w-0 grow`}),(0,Y.jsx)(`button`,{type:`button`,"aria-label":`Thread actions`,className:`flex min-h-[var(--app-dock-control-size)] min-w-[var(--app-dock-control-size)] shrink-0 items-center justify-center rounded-full text-muted-foreground hover:bg-accent hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring`,onClick:()=>n(!0),children:(0,Y.jsx)(Bi,{"aria-hidden":!0,className:`size-4`})})]}),(0,Y.jsx)(Yc,{open:t,onOpenChange:n,title:e.title,items:m,onAction:t=>{p.performThreadMenuAction(i(e.environmentId,e.threadId),t)},leadingSections:c?(0,Y.jsx)(hr,{thread:c}):void 0}),(0,Y.jsxs)(Bc,{open:r,onOpenChange:a,label:`Sessions in this worktree`,detent:`medium`,children:[(0,Y.jsx)(Fc,{children:(0,Y.jsx)(Lc,{children:`Sessions`})}),(0,Y.jsx)(Nc,{children:(0,Y.jsx)(`div`,{role:`group`,"aria-label":`Sessions in this worktree`,className:`space-y-0.5`,children:e.sessionTabs.map(t=>(0,Y.jsx)(zc,{label:t.title,selected:t.key===e.activeSessionTabKey,trailing:t.key===e.activeSessionTabKey?(0,Y.jsx)(Jr,{"aria-hidden":!0,className:`size-4 shrink-0`}):void 0,onClick:()=>{a(!1),e.onSelectSessionTab?.(t.key)}},t.key))})})]}),(0,Y.jsx)(Xc,{renamingThreadKey:p.renamingThreadKey,originalTitle:c?.title??e.title,renamingTitle:p.renamingTitle,setRenamingTitle:p.setRenamingTitle,commitRename:p.commitRename,cancelRename:p.cancelRename})]})}var wD=`${Math.round(g/1048576)}MB`,TD=`${Math.round(E/1048576)}MB`,ED=` `;async function DD(e){let t=new Uint8Array(await e.arrayBuffer()),n=``,r=32768;for(let e=0;e<t.length;e+=r)n+=String.fromCharCode(...t.subarray(e,e+r));return btoa(n)}function OD(e){let{composerDraftTarget:t,environmentId:n,activeThreadId:r,draftId:i,routeThreadRef:a,runtimeMode:o,gitCwd:s,pendingUserInputCount:c,composerImagesRef:l,editorRef:u,setThreadError:d,focusComposer:f}=e,p=qt(e=>e.addImage),m=qt(e=>e.addImages),h=qt(e=>e.removeImage),[g,_]=(0,q.useState)(!1),v=(0,q.useRef)(0);(0,q.useEffect)(()=>{v.current=0,_(!1)},[i,r]);let y=(0,q.useCallback)(e=>{p(t,e)},[t,p]),b=(0,q.useCallback)(e=>{m(t,e)},[t,m]),x=(0,q.useCallback)(e=>{h(t,e)},[t,h]),S=(0,q.useCallback)(e=>{if(!r||e.length===0)return;if(c>0){ki.add({type:`error`,title:`Attach images after answering plan questions.`});return}let t=[],n=l.current.length,i=null;for(let r of e){if(!r.type.startsWith(`image/`)){i=`Unsupported file type for '${r.name}'. Please attach image files only.`;continue}if(r.size>10485760){i=`'${r.name}' exceeds the ${wD} attachment limit.`;continue}if(n>=8){i=`You can attach up to 8 images per message.`;break}let e=URL.createObjectURL(r);t.push({type:`image`,id:ro(),name:r.name||`image`,mimeType:r.type,sizeBytes:r.size,previewUrl:e,file:r}),n+=1}t.length===1&&t[0]?y(t[0]):t.length>1&&b(t),d(r,i)},[r,y,b,l,c,d]),C=(0,q.useCallback)(e=>{if(e.length===0)return;let t=u.current;if(!t)return;let n=t.readSnapshot(),r=e.join(ED),i=n.value[n.cursor-1]??``,a=n.value[n.cursor]??``,o=i.length>0&&!/\s/.test(i),s=a.length>0&&!/\s/.test(a);t.insertTextAndFocus(`${o?ED:``}${r}${s?ED:``}`)},[u]),w=(0,q.useCallback)(()=>{let e=nt();return window.desktopBridge!==void 0&&e?.source===`desktop-managed`&&e.environmentId===n},[n]),T=(0,q.useCallback)(async e=>{if(!s)return ki.add({type:`error`,title:`Couldn't stage '${e.name||`file`}'.`,description:`No active workspace is available for this composer.`}),null;if(e.size>10485760)return ki.add({type:`error`,title:`'${e.name||`file`}' exceeds the ${TD} file staging limit.`}),null;let t=Le(n);if(!t)return ki.add({type:`error`,title:`Couldn't stage '${e.name||`file`}'.`,description:`The active environment is not connected.`}),null;try{return(await t.projects.stageFileReference({cwd:s,scopeId:String(r??i??a.threadId),name:e.name||`file`,...e.type?{mimeType:e.type}:{},sizeBytes:e.size,dataBase64:await DD(e)})).relativePath}catch(t){return ki.add({type:`error`,title:`Couldn't stage '${e.name||`file`}'.`,description:t instanceof Error?t.message:`File staging failed.`}),null}},[r,i,n,s,a.threadId]),E=(0,q.useCallback)(async e=>{let t=null;try{t=await pe()?.shell.getPathForFile?.(e)??null}catch{t=null}return at({resolvedPath:t,cwd:s,runtimeMode:o,isLocalDesktopEnvironment:w()})?t:T(e)},[s,w,o,T]),D=(0,q.useCallback)(async e=>{if(e.length===0)return;let t=e.filter(e=>e.type.startsWith(`image/`)),n=e.filter(e=>!e.type.startsWith(`image/`));if(t.length>0&&S(t),n.length===0)return;let r=(await Promise.all(n.map(async e=>{let t=await E(e);return t?kt(t):null}))).filter(e=>e!==null);C(r)},[S,C,E]);return{isDragOverComposer:g,addComposerAttachments:D,removeComposerImage:(0,q.useCallback)(e=>{x(e)},[x]),onComposerPaste:(0,q.useCallback)(e=>{let t=Array.from(e.clipboardData.files);t.length!==0&&(e.preventDefault(),D(t))},[D]),onComposerDragEnter:(0,q.useCallback)(e=>{e.dataTransfer.types.includes(`Files`)&&(e.preventDefault(),v.current+=1,_(!0))},[]),onComposerDragOver:(0,q.useCallback)(e=>{e.dataTransfer.types.includes(`Files`)&&(e.preventDefault(),e.dataTransfer.dropEffect=`copy`,_(!0))},[]),onComposerDragLeave:(0,q.useCallback)(e=>{if(!e.dataTransfer.types.includes(`Files`))return;e.preventDefault();let t=e.relatedTarget;t instanceof Node&&e.currentTarget.contains(t)||(v.current=Math.max(0,v.current-1),v.current===0&&_(!1))},[]),onComposerDrop:(0,q.useCallback)(e=>{if(!e.dataTransfer.types.includes(`Files`))return;e.preventDefault(),v.current=0,_(!1);let t=Array.from(e.dataTransfer.files),n=t.some(e=>!e.type.startsWith(`image/`));D(t),n||f()},[D,f])}}function kD(){let e=new Map;return{getItem:t=>e.get(t)??null,setItem:(t,n)=>{e.set(t,n)},removeItem:t=>{e.delete(t)}}}function AD(){try{return typeof window>`u`?null:window.localStorage}catch{return null}}function jD(e){let t=e.memoryStorage??kD(),n=e.hosted??!1,r,i=()=>{if(n)return null;if(r!==void 0)return r;try{r=(e.getDurableStorage??AD)()}catch{r=null}return r||(n=!0),r},a=()=>{try{return t.getItem(Ht)}catch{return null}};return{read:()=>{let e=i();if(e)try{return e.getItem(Ht)}catch{n=!0}return a()},write:e=>{let r=JSON.stringify({entries:e}),a=i();if(a)try{return a.setItem(Ht,r),{written:!0,durable:!0}}catch{n=!0}try{return t.setItem(Ht,r),{written:!0,durable:!1}}catch{return{written:!1,durable:!1}}},remove:()=>{let e=i();if(e)try{return e.removeItem(Ht),{durable:!0}}catch{n=!0}try{t.removeItem(Ht)}catch{}return{durable:!1}}}}function MD(e={}){let t=jD(e),n=c()((e,n)=>({entries:[],hydrate:()=>{let n=t.read();if(typeof n!=`string`||n.length===0){e({entries:[]});return}try{let t=JSON.parse(n);e({entries:tn(t).entries})}catch{t.remove(),e({entries:[]})}},getEntries:()=>n().entries,getCount:()=>n().entries.length,stashEntry:r=>{if(!p(an)(r))return{evicted:null,written:!1,durable:!1};let i=n().entries,a=Wt([r,...i]),o=a.kept.slice(1),s=a.evicted[0]??null,c=Gt(r.attachments,Nt(o)),l=[{...r,attachments:c.kept,droppedImageNames:[...r.droppedImageNames,...c.droppedNames]},...o],u=t.write(l);return u.written?(e({entries:l}),{evicted:s,...u}):{evicted:null,...u}},takeEntry:r=>{let i=n().entries,a=i.find(e=>e.id===r)??null;if(!a)return{entry:null,durable:!0};let o=i.filter(e=>e.id!==r),s=t.write(o);return e({entries:o}),{entry:a,durable:s.durable}},finalizeEntryImages:(r,i)=>{let a=n().entries,o=a.findIndex(e=>e.id===r),s=o<0?void 0:a[o];if(!s)return{attached:!1,written:!0,durable:!0};let c=Gt(i.attachments,Nt(a,r)),l=[...a];l[o]={...s,attachments:c.kept,droppedImageNames:[...i.droppedImageNames,...c.droppedNames],unreadableImageNames:[...i.unreadableImageNames],pendingImageCount:0};let u=t.write(l);return u.written?(e({entries:l}),{attached:!0,...u}):{attached:!1,...u}}}));return n.getState().hydrate(),n}var ND=MD({hosted:l()}),PD=-64;function FD({hostRef:e}){let t=(0,q.useId)().replace(/[^a-zA-Z0-9_-]/g,``),[n,r]=(0,q.useState)(!1),[i,a]=(0,q.useState)(!1),[o,s]=(0,q.useState)(!1);return(0,q.useEffect)(()=>{Qc()&&(r(!0),a(tl()))},[]),(0,q.useEffect)(()=>{let r=e.current;if(!r||!n||!i)return;let a=rl(t);a.setScale(PD),$c().appendChild(a.filter);let o=0,c=0,l=null,u=!1,d=()=>{o=0;let e=r.offsetWidth,t=r.offsetHeight;if(e<24||t<24)return;let n=++c;nl({width:e,height:t,radius:22,edgeBandPx:36}).then(r=>{if(!r)return;if(u||n!==c){r.release();return}let i=Sr();a.setMap(r.url,e,t),l?.release(),l=r,s(!0),xr(`web.liquid-glass.apply`,{durationMs:Math.max(0,Sr()-i)})})},f=new ResizeObserver(()=>{o||=window.requestAnimationFrame(d)});return f.observe(r),d(),()=>{u=!0,c+=1,f.disconnect(),o&&window.cancelAnimationFrame(o),l?.release(),a.filter.remove(),s(!1)}},[n,i,t,e]),(0,q.useEffect)(()=>{let r=e.current;if(!r||!n)return;r.setAttribute(`data-liquid-glass`,`true`);let a=i&&o?`url(#${t}) blur(10px) saturate(185%)`:`blur(24px) saturate(185%)`;return r.style.setProperty(`--composer-liquid-backdrop`,a),()=>{r.removeAttribute(`data-liquid-glass`),r.style.removeProperty(`--composer-liquid-backdrop`)}},[n,i,o,t,e]),(0,q.useEffect)(()=>{let t=e.current;if(!(!t||!n))return el(t)},[n,e]),n?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`div`,{"aria-hidden":`true`,className:`liquid-glass-sheen`}),(0,Y.jsx)(`div`,{"aria-hidden":`true`,className:`liquid-glass-ring`}),(0,Y.jsx)(`div`,{"aria-hidden":`true`,className:`liquid-glass-ring liquid-glass-ring--overlay`})]}):null}var ID=(0,q.memo)(function(e){let t=(0,J.c)(11);if(e.count===0)return null;let n=`Stashed prompts: ${e.count}. Open stash.`,r=e.open,i=e.open?`border-border text-foreground opacity-100`:`border-border/70 text-muted-foreground opacity-75 hover:text-foreground hover:opacity-100`,a;t[0]===i?a=t[1]:(a=G(`absolute -top-3 right-4 z-20 inline-flex cursor-pointer items-center gap-1.5 rounded-full border bg-popover px-2.5 py-0.5 text-xs shadow-sm`,`transition-[color,border-color,opacity] duration-200 motion-reduce:transition-none`,i),t[0]=i,t[1]=a);let o;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,Y.jsx)(pl,{className:`size-3`,"aria-hidden":`true`}),t[2]=o):o=t[2];let s;t[3]===e.count?s=t[4]:(s=(0,Y.jsx)(`span`,{className:`rounded-full bg-muted px-1.5 text-[10px] font-medium tabular-nums text-muted-foreground`,children:e.count}),t[3]=e.count,t[4]=s);let c;return t[5]!==e.onToggle||t[6]!==e.open||t[7]!==n||t[8]!==a||t[9]!==s?(c=(0,Y.jsxs)(`button`,{type:`button`,"data-prompt-stash-badge":`true`,"aria-label":n,"aria-expanded":r,className:a,onPointerDown:LD,onClick:e.onToggle,children:[o,`Stash`,s]}),t[5]=e.onToggle,t[6]=e.open,t[7]=n,t[8]=a,t[9]=s,t[10]=c):c=t[10],c});function LD(e){return e.preventDefault()}var RD=100;function zD(e){let t=e.prompt.trim().replace(/\s+/g,` `);if(t.length>0)return t.length>RD?`${t.slice(0,RD)}…`:t;let n=e.attachments.length+e.pendingImageCount+e.droppedImageNames.length+e.unreadableImageNames.length;return n===1?`(1 image)`:`(${n} images)`}function BD(e){return e.droppedImageNames.length+e.unreadableImageNames.length}function VD(e){return e instanceof Element&&e.closest(`button, a, input, select, textarea, [contenteditable], [role=button]`)!==null}var HD=(0,q.memo)(function(e){let t=(0,J.c)(28),{entries:n,onRestore:r,onDelete:i,onClose:a}=e,[o,s]=(0,q.useState)(n[0]?.id??null),c=(0,q.useRef)(null),l=(0,q.useRef)(null),u;t[0]!==n||t[1]!==o?(u=n.find(e=>e.id===o)??n[0]??null,t[0]=n,t[1]=o,t[2]=u):u=t[2];let d=u,f,p;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(f=()=>{c.current?.focus()},p=[],t[3]=f,t[4]=p):(f=t[3],p=t[4]),(0,q.useEffect)(f,p);let m,h;t[5]!==d||t[6]!==o?(m=()=>{if(!d){s(null);return}d.id!==o&&s(d.id)},h=[d,o],t[5]=d,t[6]=o,t[7]=m,t[8]=h):(m=t[7],h=t[8]),(0,q.useEffect)(m,h);let g,_;t[9]===o?(g=t[10],_=t[11]):(g=()=>{!o||!l.current||l.current.querySelector(`[data-prompt-stash-row="${CSS.escape(o)}"]`)?.scrollIntoView({block:`nearest`})},_=[o],t[9]=o,t[10]=g,t[11]=_),(0,q.useEffect)(g,_);let v,y;t[12]!==n||t[13]!==a||t[14]!==i||t[15]!==r||t[16]!==d||t[17]!==o?(v=()=>{let e=e=>{if(e.key===`Escape`){e.preventDefault(),e.stopPropagation(),a();return}if(c.current?.contains(document.activeElement)){if(e.key===`ArrowDown`||e.key===`ArrowUp`){if(n.length===0)return;e.preventDefault(),e.stopPropagation();let t=n.findIndex(e=>e.id===o),r=e.key===`ArrowDown`?1:-1,i=((t>=0?t:r>0?-1:0)+r+n.length)%n.length;s(n[i]?.id??null);return}if(e.key===`Enter`){if(VD(e.target)||!d)return;e.preventDefault(),e.stopPropagation(),r(d.id);return}e.key===`Backspace`&&(e.metaKey||e.ctrlKey)&&!e.altKey&&!e.shiftKey&&d&&(e.preventDefault(),e.stopPropagation(),i(d.id))}};return window.addEventListener(`keydown`,e,!0),()=>window.removeEventListener(`keydown`,e,!0)},y=[n,a,i,r,d,o],t[12]=n,t[13]=a,t[14]=i,t[15]=r,t[16]=d,t[17]=o,t[18]=v,t[19]=y):(v=t[18],y=t[19]),(0,q.useEffect)(v,y);let b;t[20]===Symbol.for(`react.memo_cache_sentinel`)?(b=(0,Y.jsxs)(Go,{className:`flex items-center gap-1.5 px-3 pt-2 pb-1 text-[10px] font-semibold uppercase tracking-[0.08em] text-muted-foreground/55`,children:[(0,Y.jsx)(pl,{className:`size-3`,"aria-hidden":`true`}),`Stashed prompts`]}),t[20]=b):b=t[20];let x;t[21]!==n||t[22]!==i||t[23]!==r||t[24]!==o?(x=n.length===0?(0,Y.jsx)(`p`,{className:`px-3 pt-1 pb-3 text-xs text-muted-foreground/70`,children:`Nothing stashed yet. Use the stash shortcut with a prompt or image to save it.`}):n.map(e=>{let t=BD(e);return(0,Y.jsxs)(Xo,{value:e.id,"data-prompt-stash-row":e.id,className:G(`group/stash cursor-pointer select-none gap-2 hover:bg-transparent hover:text-inherit data-highlighted:bg-transparent data-highlighted:text-inherit`,o===e.id&&`bg-accent! text-accent-foreground!`),onMouseMove:()=>s(e.id),onMouseDown:UD,onClick:t=>{VD(t.target)||r(e.id)},children:[e.attachments.length>0?(0,Y.jsx)(`span`,{className:`-space-x-1.5 flex shrink-0 items-center`,children:e.attachments.slice(0,3).map(WD)}):(0,Y.jsx)(pl,{className:`size-4 shrink-0 text-muted-foreground/60`}),(0,Y.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-sm`,children:zD(e)}),e.pendingImageCount>0?(0,Y.jsxs)(`span`,{"data-prompt-stash-pending":`true`,className:`shrink-0 text-[10px] text-muted-foreground/65`,children:[`saving `,e.pendingImageCount,` image`,e.pendingImageCount===1?``:`s`,`…`]}):t>0?(0,Y.jsxs)(`span`,{className:`shrink-0 text-[10px] text-amber-600`,children:[t,` image`,t===1?``:`s`,` not saved`]}):e.attachments.length>0?(0,Y.jsxs)(`span`,{className:`shrink-0 text-[10px] text-muted-foreground/65`,children:[e.attachments.length,` image`,e.attachments.length===1?``:`s`]}):null,(0,Y.jsx)(`span`,{className:`shrink-0 text-xs text-muted-foreground/60`,children:bo(e.createdAt)}),(0,Y.jsx)(K,{variant:`ghost`,size:`icon-xs`,"data-prompt-stash-delete":e.id,className:`shrink-0 opacity-55 transition-opacity motion-reduce:transition-none group-hover/stash:opacity-100 focus:opacity-100`,"aria-label":`Delete stashed prompt: ${zD(e)}`,onClick:t=>{t.stopPropagation(),i(e.id)},children:(0,Y.jsx)(Ja,{})})]},e.id)}),t[21]=n,t[22]=i,t[23]=r,t[24]=o,t[25]=x):x=t[25];let S;return t[26]===x?S=t[27]:(S=(0,Y.jsx)(`div`,{ref:c,role:`region`,"aria-label":`Stashed prompts`,tabIndex:-1,"data-prompt-stash-picker":`true`,className:`absolute right-0 bottom-[calc(100%+0.75rem)] z-30 w-[min(28rem,calc(100vw-2rem))]`,children:(0,Y.jsx)(Yo,{autoHighlight:!1,mode:`none`,children:(0,Y.jsx)(`div`,{className:`app-surface relative overflow-hidden rounded-xl border border-border/80 bg-popover/96 shadow-lg/8 backdrop-blur-xs`,children:(0,Y.jsx)(Ko,{ref:l,className:`max-h-72`,children:(0,Y.jsxs)(Jo,{children:[b,x]})})})})}),t[26]=x,t[27]=S),S});function UD(e){VD(e.target)||e.preventDefault()}function WD(e){return(0,Y.jsx)(`img`,{src:e.dataUrl,alt:``,"aria-hidden":`true`,className:`size-6 rounded border border-border/70 object-cover`},e.id)}var GD={codex:`Codex`,claudeAgent:`Claude`,copilot:`GitHub Copilot`,opencode:`OpenCode`,cursor:`Cursor`,grok:`Grok`};function KD(e){return e.providerDisplayName??GD[e.driverKind]??e.providerInstanceId}function qD(e){return e.modelDisplayName??e.modelSlug}function JD(e){return`${KD(e)} ${qD(e)}`}var YD=(0,q.memo)(function(e){let t=(0,J.c)(26),n=e.endpoint.providerDisplayName,r=GD[e.endpoint.driverKind],i;t[0]===e.endpoint?i=t[1]:(i=KD(e.endpoint),t[0]=e.endpoint,t[1]=i);let a=i,o;t[2]===e.endpoint?o=t[3]:(o=JD(e.endpoint),t[2]=e.endpoint,t[3]=o);let s=o,c;t[4]===e.className?c=t[5]:(c=G(`inline-flex min-w-0 items-center gap-1`,e.className),t[4]=e.className,t[5]=c);let l=e.endpoint.driverKind,u=e.endpoint.providerAccentColor,d=n!==void 0&&n!==r,f;t[6]===e.iconClassName?f=t[7]:(f=G(`size-3.5`,e.iconClassName),t[6]=e.iconClassName,t[7]=f);let p;t[8]!==a||t[9]!==e.endpoint.driverKind||t[10]!==e.endpoint.providerAccentColor||t[11]!==d||t[12]!==f?(p=(0,Y.jsx)(Ha,{driverKind:l,displayName:a,accentColor:u,showBadge:d,className:`size-4`,iconClassName:f,badgeClassName:`h-2.5 min-w-2.5 text-[6px]`}),t[8]=a,t[9]=e.endpoint.driverKind,t[10]=e.endpoint.providerAccentColor,t[11]=d,t[12]=f,t[13]=p):p=t[13];let m;t[14]===e.modelClassName?m=t[15]:(m=G(`truncate`,e.modelClassName),t[14]=e.modelClassName,t[15]=m);let h;t[16]===e.endpoint?h=t[17]:(h=qD(e.endpoint),t[16]=e.endpoint,t[17]=h);let g;t[18]!==m||t[19]!==h?(g=(0,Y.jsx)(`span`,{className:m,children:h}),t[18]=m,t[19]=h,t[20]=g):g=t[20];let _;return t[21]!==s||t[22]!==g||t[23]!==c||t[24]!==p?(_=(0,Y.jsxs)(`span`,{className:c,title:s,children:[p,g]}),t[21]=s,t[22]=g,t[23]=c,t[24]=p,t[25]=_):_=t[25],_}),XD=(0,q.memo)(function(e){let t=(0,J.c)(18),n;t[0]===e.source?n=t[1]:(n=JD(e.source),t[0]=e.source,t[1]=n);let r;t[2]===e.target?r=t[3]:(r=JD(e.target),t[2]=e.target,t[3]=r);let i=`Next message will hand off context from ${n} to ${r}`,a,o,s;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,Y.jsx)(dl,{className:`size-3.5 shrink-0`,"aria-hidden":!0}),o=(0,Y.jsx)(`span`,{className:`shrink-0 font-medium`,children:`Next message hands off context`}),s=(0,Y.jsx)(`span`,{className:`text-muted-foreground/45`,"aria-hidden":!0,children:`·`}),t[4]=a,t[5]=o,t[6]=s):(a=t[4],o=t[5],s=t[6]);let c;t[7]===e.source?c=t[8]:(c=(0,Y.jsx)(YD,{endpoint:e.source,className:`max-w-32 sm:max-w-44`}),t[7]=e.source,t[8]=c);let l;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,Y.jsx)(fl,{className:`size-3.5 shrink-0 text-muted-foreground/55`,"aria-hidden":!0}),t[9]=l):l=t[9];let u;t[10]===e.target?u=t[11]:(u=(0,Y.jsx)(YD,{endpoint:e.target,className:`max-w-32 font-medium text-foreground/85 sm:max-w-44`}),t[10]=e.target,t[11]=u);let d;return t[12]!==i||t[13]!==e.source.providerInstanceId||t[14]!==e.target.providerInstanceId||t[15]!==c||t[16]!==u?(d=(0,Y.jsxs)(`div`,{role:`status`,"aria-label":i,title:i,"data-pending-context-handoff":`true`,"data-pending-context-handoff-source":e.source.providerInstanceId,"data-pending-context-handoff-target":e.target.providerInstanceId,className:`inline-flex min-w-0 max-w-full items-center gap-1.5 rounded-full border border-border/70 bg-popover/95 px-2.5 py-1 text-[11px] leading-4 text-muted-foreground shadow-sm backdrop-blur-xs`,children:[a,o,s,c,l,u]}),t[12]=i,t[13]=e.source.providerInstanceId,t[14]=e.target.providerInstanceId,t[15]=c,t[16]=u,t[17]=d):d=t[17],d}),ZD={active:`Pursuing goal`,paused:`Goal paused`,blocked:`Goal blocked`,usageLimited:`Usage limit reached`,budgetLimited:`Goal budget reached`,complete:`Goal achieved`};function QD(e,t){let n=e.status===`active`?Math.max(0,Math.floor((t-Date.parse(e.updatedAt))/1e3)):0;return e.timeUsedSeconds+n}function $D(e){let t=Math.floor(e/3600),n=Math.floor(e%3600/60),r=e%60;return t>0?`${t}:${String(n).padStart(2,`0`)}:${String(r).padStart(2,`0`)}`:`${n}:${String(r).padStart(2,`0`)}`}var eO=new Intl.NumberFormat(void 0,{notation:`compact`});function tO(e){let t=(0,J.c)(7),n=e.label,r=e.label,i=e.onClick,a=e.destructive&&`hover:text-destructive`,o;t[0]===a?o=t[1]:(o=G(`inline-flex size-7 shrink-0 items-center justify-center rounded-full text-muted-foreground transition-colors hover:bg-background/75 hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring/50`,a),t[0]=a,t[1]=o);let s;return t[2]!==e.children||t[3]!==e.label||t[4]!==e.onClick||t[5]!==o?(s=(0,Y.jsx)(`button`,{type:`button`,"aria-label":n,title:r,onClick:i,className:o,children:e.children}),t[2]=e.children,t[3]=e.label,t[4]=e.onClick,t[5]=o,t[6]=s):s=t[6],s}var nO=(0,q.memo)(function(e){let t=(0,J.c)(57),[n,r]=(0,q.useState)(!1),[i,a]=(0,q.useState)(rO),o;t[0]===e.goal.status?o=t[1]:(o=()=>{if(e.goal.status!==`active`)return;a(Date.now());let t=window.setInterval(()=>a(Date.now()),1e3);return()=>window.clearInterval(t)},t[0]=e.goal.status,t[1]=o);let s;t[2]!==e.goal.status||t[3]!==e.goal.updatedAt?(s=[e.goal.status,e.goal.updatedAt],t[2]=e.goal.status,t[3]=e.goal.updatedAt,t[4]=s):s=t[4],(0,q.useEffect)(o,s);let c=e.goal.status===`paused`||e.goal.status===`blocked`||e.goal.status===`usageLimited`,l=e.goal.status===`complete`,u=e.goal.status===`active`&&`border-primary/30 text-primary`,d=l&&`border-emerald-500/30 text-emerald-600 dark:text-emerald-400`,f;t[5]!==u||t[6]!==d?(f=G(`mt-0.5 inline-flex size-7 shrink-0 items-center justify-center rounded-full border border-border/60 bg-background/55 text-muted-foreground`,u,d),t[5]=u,t[6]=d,t[7]=f):f=t[7];let p;t[8]===l?p=t[9]:(p=l?(0,Y.jsx)(Ai,{className:`size-3.5`}):(0,Y.jsx)(Al,{className:`size-3.5`}),t[8]=l,t[9]=p);let m;t[10]!==f||t[11]!==p?(m=(0,Y.jsx)(`div`,{className:f,children:p}),t[10]=f,t[11]=p,t[12]=m):m=t[12];let h;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(h=()=>r(iO),t[13]=h):h=t[13];let g=ZD[e.goal.status],_;t[14]!==i||t[15]!==e.goal?(_=$D(QD(e.goal,i)),t[14]=i,t[15]=e.goal,t[16]=_):_=t[16];let v;t[17]===_?v=t[18]:(v=(0,Y.jsx)(`span`,{className:`font-mono font-normal tracking-normal normal-case`,children:_}),t[17]=_,t[18]=v);let y;t[19]!==e.goal.tokenBudget||t[20]!==e.goal.tokensUsed?(y=e.goal.tokenBudget===null?null:(0,Y.jsxs)(`span`,{className:`font-normal tracking-normal normal-case`,children:[eO.format(e.goal.tokensUsed),` /`,` `,eO.format(e.goal.tokenBudget),` tokens`]}),t[19]=e.goal.tokenBudget,t[20]=e.goal.tokensUsed,t[21]=y):y=t[21];let b;t[22]!==v||t[23]!==y||t[24]!==g?(b=(0,Y.jsxs)(`span`,{className:`flex items-center gap-2 text-[11px] font-medium tracking-wide text-muted-foreground uppercase`,children:[g,v,y]}),t[22]=v,t[23]=y,t[24]=g,t[25]=b):b=t[25];let x=!n&&`line-clamp-2`,S;t[26]===x?S=t[27]:(S=G(`mt-0.5 block text-sm leading-5 text-foreground/90`,x),t[26]=x,t[27]=S);let C;t[28]!==e.goal.objective||t[29]!==S?(C=(0,Y.jsx)(`span`,{className:S,children:e.goal.objective}),t[28]=e.goal.objective,t[29]=S,t[30]=C):C=t[30];let w;t[31]!==n||t[32]!==b||t[33]!==C?(w=(0,Y.jsxs)(`button`,{type:`button`,className:`min-w-0 flex-1 text-left focus-visible:outline-none`,onClick:h,"aria-expanded":n,children:[b,C]}),t[31]=n,t[32]=b,t[33]=C,t[34]=w):w=t[34];let T;t[35]===Symbol.for(`react.memo_cache_sentinel`)?(T=(0,Y.jsx)(Na,{className:`size-3.5`}),t[35]=T):T=t[35];let E;t[36]===e.onEdit?E=t[37]:(E=(0,Y.jsx)(tO,{label:`Edit goal`,onClick:e.onEdit,children:T}),t[36]=e.onEdit,t[37]=E);let D;t[38]!==c||t[39]!==e?(D=e.goal.status===`active`?(0,Y.jsx)(tO,{label:`Pause goal`,onClick:()=>e.onStatusChange(`paused`),children:(0,Y.jsx)(ja,{className:`size-3.5`})}):c?(0,Y.jsx)(tO,{label:`Resume goal`,onClick:()=>e.onStatusChange(`active`),children:(0,Y.jsx)(Ma,{className:`size-3.5`})}):null,t[38]=c,t[39]=e,t[40]=D):D=t[40];let O;t[41]===Symbol.for(`react.memo_cache_sentinel`)?(O=(0,Y.jsx)(Ja,{className:`size-3.5`}),t[41]=O):O=t[41];let k;t[42]===e.onClear?k=t[43]:(k=(0,Y.jsx)(tO,{label:`Clear goal`,destructive:!0,onClick:e.onClear,children:O}),t[42]=e.onClear,t[43]=k);let A=n&&`rotate-180`,j;t[44]===A?j=t[45]:(j=G(`mt-1 size-3.5 text-muted-foreground/60 transition-transform`,A),t[44]=A,t[45]=j);let M;t[46]===j?M=t[47]:(M=(0,Y.jsx)(Xr,{"aria-hidden":!0,className:j}),t[46]=j,t[47]=M);let N;t[48]!==E||t[49]!==D||t[50]!==k||t[51]!==M?(N=(0,Y.jsxs)(`div`,{className:`flex shrink-0 items-center gap-0.5`,children:[E,D,k,M]}),t[48]=E,t[49]=D,t[50]=k,t[51]=M,t[52]=N):N=t[52];let P;return t[53]!==w||t[54]!==N||t[55]!==m?(P=(0,Y.jsx)(`div`,{className:`rounded-t-[max(0px,calc(var(--radius-3xl)-3px))] border-b border-border/65 bg-muted/25 px-3.5 py-2.5`,children:(0,Y.jsxs)(`div`,{className:`flex min-w-0 items-start gap-2.5`,children:[m,w,N]})}),t[53]=w,t[54]=N,t[55]=m,t[56]=P):P=t[56],P});function rO(){return Date.now()}function iO(e){return!e}function aO(e){let t=e.providerInstanceEntries.find(t=>t.instanceId===e.selection.instanceId);if(!t)return null;let n=e.modelOptionsByInstance.get(e.selection.instanceId)?.find(t=>t.slug===e.selection.model)??t.models.find(t=>t.slug===e.selection.model);return{providerInstanceId:t.instanceId,driverKind:t.driverKind,providerDisplayName:t.displayName,...t.accentColor?{providerAccentColor:t.accentColor}:{},modelSlug:e.selection.model,...n?{modelDisplayName:mn(n,{preferShortName:!0})}:{}}}function oO(e){if(!e.threadStarted||e.isPhoneTier||!e.canonicalSelection||!ot({canonicalSelection:e.canonicalSelection,targetSelection:e.targetSelection}))return null;let t=aO({selection:e.canonicalSelection,providerInstanceEntries:e.providerInstanceEntries,modelOptionsByInstance:e.modelOptionsByInstance}),n=aO({selection:e.targetSelection,providerInstanceEntries:e.providerInstanceEntries,modelOptionsByInstance:e.modelOptionsByInstance});return t&&n?{source:t,target:n}:null}var sO=[`[data-slot="popover-popup"]`,`[data-slot="menu-popup"]`,`[data-slot="select-popup"]`,`[data-slot="combobox-popup"]`,`[data-slot="autocomplete-popup"]`].join(`,`),cO=(e,t,n)=>n.endsWith(` `)&&e[t]===` `?t+1:t,lO=(e,t)=>{let n=new Map(e.map(e=>[e.id,e]));return t.flatMap(e=>{let t=n.get(e);return t?[t]:[]})},uO=(e,t)=>e.length===t.length&&e.every((e,n)=>e.id===t[n]);function dO(e){return e.closest(sO)!==null}function fO(e,t){return t.trim().length===0?e:e.length===0?t:`${e}\n\n${t}`}function pO(e){let t=e.slice(0,3),n=e.length>t.length?` and ${e.length-t.length} more`:``;return`${t.join(`, `)}${n}`}function mO(e,t,n){return`${typeof e==`string`?e:`${e.environmentId}:${e.threadId}`}\u0000${t}\u0000${n.map(e=>e.id).join(``)}`}function hO(e){if(typeof URL>`u`||typeof URL.revokeObjectURL!=`function`)return;let t=new Set(Object.values(qt.getState().draftsByThreadKey).flatMap(e=>e.images.map(e=>e.previewUrl)));for(let n of e)n.previewUrl.startsWith(`blob:`)&&!t.has(n.previewUrl)&&URL.revokeObjectURL(n.previewUrl)}var gO=(0,q.memo)((0,q.forwardRef)(function(e,t){let{composerDraftTarget:n,environmentId:r,routeKind:i,routeThreadRef:a,draftId:o,activeThreadId:s,activeThreadEnvironmentId:c,activeThreadSessionProviderInstanceId:l,activeThreadStarted:u,isServerThread:d,isLocalDraftThread:f,activeThreadGoal:p,phase:m,isConnecting:h,isSendBusy:g,isPreparingWorktree:_,environmentUnavailable:v,activePendingApproval:y,pendingApprovals:b,pendingUserInputs:x,activePendingProgress:C,activePendingResolvedAnswers:w,activePendingIsResponding:E,activePendingDraftAnswers:D,activePendingQuestionIndex:O,respondingRequestIds:k,showPlanFollowUpPrompt:j,activeProposedPlan:M,planSidebarLabel:N,planSidebarOpen:P,runtimeMode:F,interactionMode:I,tokenMode:L,lockedProvider:R,providerStatuses:z,activeProjectDefaultModelSelection:ee,activeThreadModelSelection:te,activeThreadActivities:ne,phoneThreadDock:B,resolvedTheme:re,settings:ie,keybindings:V,terminalOpen:ae,gitCwd:oe,promptRef:H,composerImagesRef:se,composerTerminalContextsRef:ce,shouldAutoScrollRef:le,scheduleStickToBottom:de,onSend:fe,onInterrupt:U,onImplementPlanInNewThread:pe,onRespondToApproval:me,onSelectActivePendingUserInputOption:he,onAdvanceActivePendingUserInput:ge,onPreviousActivePendingUserInputQuestion:_e,onChangeActivePendingUserInputCustomAnswer:ve,onProviderModelSelect:ye,toggleInteractionMode:be,handleRuntimeModeChange:xe,handleInteractionModeChange:Se,handleTokenModeChange:Ce,togglePlanSidebar:we,focusComposer:Te,scheduleComposerFocus:Ee,setThreadError:De,onExpandImage:Oe,onEditGoal:ke,onGoalStatusChange:Ae,onClearGoal:je}=e,Me=Bl(n),Ne=Me.prompt,Pe=Me.images,Fe=Me.terminalContexts,Ie=Me.sourceControlContexts,Le=Me.nonPersistedImageIds,Re=ue(),ze=(0,q.useMemo)(()=>(Re.data?.sourceControlProviders??[]).some(e=>e.status===`available`&&(e.auth.status===`authenticated`||e.auth.status===`unknown`)),[Re.data]),Be=qt(e=>e.setPrompt),Ve=qt(e=>e.insertTerminalContext),He=qt(e=>e.removeTerminalContext),Ue=qt(e=>e.setTerminalContexts),We=qt(e=>e.clearPersistedAttachments),Ge=qt(e=>e.syncPersistedAttachments),Ke=qt(e=>e.clearPromptAndImages),qe=qt(e=>e.addImages),Je=qt(e=>e.getComposerDraft),Ye=qt(e=>e.addSourceControlContext),Xe=qt(e=>e.removeSourceControlContext),Ze=ND(e=>e.entries),Qe=ND(e=>e.stashEntry),$e=ND(e=>e.takeEntry),et=ND(e=>e.finalizeEntryImages),tt=(0,q.useMemo)(()=>At(on(z)),[z]),nt=Me.activeProvider??null,rt=l??te?.instanceId??ee?.instanceId??null,it=nt??rt,at=jt(tt,z,it)??A.make(`codex`),ot=R??at,ut=(0,q.useMemo)(()=>{if(!R)return null;let e=l??te?.instanceId;return e?tt.find(t=>t.instanceId===e)?.continuationGroupKey??null:null},[te?.instanceId,l,R,tt]),dt=(0,q.useMemo)(()=>{let e=R?[te?.instanceId,l,ee?.instanceId]:[Me.activeProvider,l,te?.instanceId,ee?.instanceId];for(let t of e){if(!t)continue;let e=tt.find(e=>e.instanceId===t&&e.enabled);if(e){if(R&&e.driverKind!==R||ut&&e.continuationGroupKey!==ut)continue;return e.instanceId}}if(it)return T.make(it);let t=tt.find(e=>e.enabled&&e.driverKind===ot&&(!ut||e.continuationGroupKey===ut));return t?t.instanceId:tt.find(e=>e.enabled)?.instanceId??tt[0]?.instanceId??te?.instanceId??ee?.instanceId??T.make(`codex`)},[ee?.instanceId,l,te?.instanceId,Me.activeProvider,it,ut,R,tt,ot]),ft=Hl({threadRef:n,providers:z,selectedProvider:ot,selectedInstanceId:dt,threadModelSelection:te,projectModelSelection:ee,settings:ie}),pt=ft.modelOptions,mt=R&&te?.instanceId===dt?te.model:ft.selectedModel,ht=(0,q.useMemo)(()=>tt.find(e=>e.instanceId===dt),[tt,dt]),gt=(0,q.useMemo)(()=>ht?.snapshot??null,[ht]),_t=(0,q.useMemo)(()=>ht?.models??[],[ht]),yt=(0,q.useMemo)(()=>vp({provider:ot,model:mt,models:_t,prompt:Ne,modelOptions:pt?.[dt]}),[pt,Ne,dt,mt,ot,_t]),bt=yt.promptEffort,xt=yt.modelOptionsForDispatch,St=wr(e=>e.alwaysUseBuildMode),Ct=Ls(),wt=St&&Ct!==`phone`,Et=(0,q.useMemo)(()=>({showInteractionModeToggle:!wt&&Tt(z,ot),askModeSupported:Vt(z,ot)}),[wt,z,ot]),Ot=(0,q.useMemo)(()=>lt(dt,mt,xt),[dt,mt,xt]),kt=mt,Mt=(0,q.useMemo)(()=>{let e=new Map;for(let t of tt)e.set(t.instanceId,st(ie,t));return e},[tt,ie]),Nt=(0,q.useMemo)(()=>(Mt.get(dt)??[]).some(e=>e.slug===kt)?kt:Xt(kt,ot)??kt,[Mt,dt,kt,ot]),Ft=yt.modelOptionsForDispatch?.find(e=>e.id===`contextWindow`)?.value??null,It=(0,q.useMemo)(()=>Qd(ne??[],typeof Ft==`string`?Ft:null),[ne,Ft]),Lt=gt?.rateLimits,[Rt,zt]=(0,q.useState)(()=>Dt(Ne,Ne.length)),[Ht,Wt]=(0,q.useState)(()=>ct(Ne,Ne.length)),[Gt,Kt]=(0,q.useState)(null),[Jt,Qt]=(0,q.useState)(null),[$t,tn]=(0,q.useState)(!1),[nn,rn]=(0,q.useState)(!1),[an,sn]=(0,q.useState)(!1),[cn,ln]=(0,q.useState)(!1),[dn,fn]=(0,q.useState)(!1),mn=Ct===`phone`,gn=mn&&!cn,_n=(0,q.useMemo)(()=>oO({threadStarted:u,isPhoneTier:mn,canonicalSelection:te,targetSelection:Ot,providerInstanceEntries:tt,modelOptionsByInstance:Mt}),[te,u,mn,Mt,tt,Ot]),vn=(0,q.useRef)(null),yn=(0,q.useRef)(null),bn=(0,q.useRef)(null),xn=(0,q.useRef)(0),Sn=(0,q.useRef)(!1),Cn=(0,q.useRef)(!1),wn=(0,q.useRef)([]),Tn=(0,q.useRef)(null),En=(0,q.useRef)(null),Dn=(0,q.useRef)(new Set),On=(0,q.useRef)(new Map),kn=(0,q.useRef)(()=>{}),An=(0,q.useCallback)(e=>{let t=On.current.get(e);t&&(On.current.delete(e),Dn.current.delete(t.key),hO(t.images))},[]);(0,q.useEffect)(()=>()=>{let e=[...On.current.values()];On.current.clear(),Dn.current.clear();for(let t of e)hO(t.images)},[]);let jn=(0,q.useMemo)(()=>Cd({prompt:Ne,imageCount:Pe.length,terminalContexts:Fe,sourceControlContexts:Ie}),[Pe.length,Ie,Fe,Ne]),Mn=Ht?.kind??null,{composerMenuItems:Nn,composerMenuOpen:Pn,composerMenuSearchKey:Fn,activeComposerMenuItem:In,isComposerMenuLoading:Ln,composerMenuEmptyState:Rn}=Ff({composerTrigger:Ht,environmentId:r,gitCwd:oe,selectedProvider:ot,selectedProviderStatus:gt,composerHighlightedItemId:Gt,composerHighlightedSearchKey:Jt});Cn.current=Pn,wn.current=Nn,Tn.current=In;let zn=(0,q.useMemo)(()=>new Set(Le),[Le]),Bn=y!==null,Vn=x[0]??null,Hn=!mn&&p!=null&&!Bn&&x.length===0&&!(j&&M!==null),Un=Bn||x.length>0||j&&M!==null||Hn,Wn=gn&&!Bn&&x.length===0,Gn=h||Bn||v!==null&&C===null,Kn=j||C!==null,qn=(0,q.useMemo)(()=>Pd({pendingProgress:C,pendingIsResponding:E,phase:m,showPlanFollowUpPrompt:j,promptHasText:Ne.trim().length>0,hasSendableContent:jn.hasSendableContent,isSendBusy:g,isConnecting:h,isPreparingWorktree:_}),[E,C,jn.hasSendableContent,h,_,g,m,Ne,j]),Jn=(0,q.useCallback)(e=>{if(e===H.current){Ee();return}H.current=e,Be(n,e);let t=Dt(e,e.length);zt(t),Wt(ct(e,e.length)),Ee()},[n,H,Ee,Be]),Yn=js(S.dispatchCommand),Xn=!Yn.allowed,Zn=Yn.reason,Qn=yp({provider:ot,instanceId:dt,...i===`server`?{threadRef:a}:{},...i===`draft`&&o?{draftId:o}:{},model:mt,models:_t,modelOptions:pt?.[dt],prompt:Ne,onPromptChange:Jn,disabled:Xn,disabledReason:Zn}),$n=bp({provider:ot,instanceId:dt,...i===`server`?{threadRef:a}:{},...i===`draft`&&o?{draftId:o}:{},model:mt,models:_t,modelOptions:pt?.[dt],prompt:Ne,onPromptChange:Jn,disabled:Xn,disabledReason:Zn}),er=(0,q.useMemo)(()=>C?{questionIndex:C.questionIndex,isLastQuestion:C.isLastQuestion,canAdvance:C.canAdvance,isResponding:E,isComplete:!!w}:null,[E,C,w]),tr=Md({phase:m,isSendBusy:g,isConnecting:h,hasSendableContent:jn.hasSendableContent}),nr=mn&&!gn&&er!==null,rr=(0,q.useCallback)(e=>{Be(n,e)},[n,Be]),ir=(0,q.useCallback)(e=>{let t=Fe.findIndex(t=>t.id===e);if(t<0)return;let r=Bt(H.current,t);H.current=r.prompt,rr(r.prompt),He(n,e);let i=Dt(r.prompt,r.cursor);zt(i),Wt(ct(r.prompt,r.cursor))},[n,Fe,H,He,rr]);(0,q.useEffect)(()=>{H.current=Ne,zt(e=>hn(Ne,e))},[Ne,H]),(0,q.useEffect)(()=>{se.current=Pe},[Pe,se]),(0,q.useEffect)(()=>{ce.current=Fe},[Fe,ce]),(0,q.useEffect)(()=>{if(!Pn){Kt(null),Qt(null);return}let e=Cf({items:Nn,highlightedItemId:Gt,currentSearchKey:Fn,highlightedSearchKey:Jt});Kt(t=>t===e?t:e),Qt(e=>e===Fn?e:Fn)},[Gt,Jt,Nn,Pn,Fn]);let ar=(0,q.useRef)(null);(0,q.useEffect)(()=>{let e=C?.customAnswer;if(typeof e!=`string`){ar.current=null;return}let t=Vn?.requestId??null,n=C?.activeQuestion?.id??null,r=ar.current?.requestId!==t||ar.current?.questionId!==n,i=H.current!==e;if(ar.current={requestId:t,questionId:n},!r&&!i)return;H.current=e;let a=Dt(e,e.length);zt(a),Wt(ct(e,pn(e,a))),Kt(null)},[C?.customAnswer,C?.activeQuestion?.id,Vn?.requestId,H]),(0,q.useEffect)(()=>{Kt(null),zt(Dt(H.current,H.current.length)),Wt(ct(H.current,H.current.length))},[o,s,H]),(0,q.useLayoutEffect)(()=>{let e=yn.current;if(!e)return;let t=()=>e.clientWidth,n=()=>{let e=t(),n=Bf(e,{hasWideActions:Kn});return{primaryActionsCompact:n&&Vf(e,{hasWideActions:Kn}),footerCompact:n}};xn.current=e.getBoundingClientRect().height;let r=n();if(rn(r.primaryActionsCompact),tn(r.footerCompact),typeof ResizeObserver>`u`)return;let i=new ResizeObserver(e=>{let[t]=e;if(!t)return;let r=n();rn(e=>e===r.primaryActionsCompact?e:r.primaryActionsCompact),tn(e=>e===r.footerCompact?e:r.footerCompact);let i=t.contentRect.height,a=xn.current;xn.current=i,!(a>0&&Math.abs(i-a)<.5)&&le.current&&de()});return i.observe(e),()=>{i.disconnect()}},[s,qn,Kn,de,le]),(0,q.useEffect)(()=>{let e=!1;return(async()=>{if(Pe.length===0){We(n);return}let t=()=>Je(n)?.persistedAttachments??[];try{let r=t(),i=new Map(r.map(e=>[e.id,e])),a=new Map;await Promise.all(Pe.map(async e=>{try{let t=un(await ul.encode(e));a.set(e.id,{id:e.id,name:e.name,mimeType:e.mimeType,sizeBytes:e.sizeBytes,dataUrl:t})}catch{let t=i.get(e.id);t&&a.set(e.id,t)}}));let o=Array.from(a.values());if(e)return;Ge(n,o)}catch{let r=new Set(Pe.map(e=>e.id)),i=t(),a=i.map(e=>e.id).filter(e=>r.has(e)),o=new Set(a),s=i.filter(e=>o.has(e.id));if(e)return;Ge(n,s)}})(),()=>{e=!0}},[n,We,Pe,Je,Ge]);let W=(0,q.useCallback)((e,t,r,i,a)=>{if(C?.activeQuestion&&x.length>0){zt(t),Wt(i?null:ct(e,r)),ve(C.activeQuestion.id,e,t,r,i);return}H.current=e,rr(e),uO(Fe,a)||Ue(n,lO(Fe,a)),zt(t),Wt(i?null:ct(e,r))},[C?.activeQuestion,x.length,ve,H,rr,n,Fe,Ue]),or=(0,q.useCallback)((e,t,n,r)=>{let i=H.current,a=Math.max(0,Math.min(i.length,e)),o=Math.max(a,Math.min(i.length,t));if(r?.expectedText!==void 0&&i.slice(a,o)!==r.expectedText)return!1;let s=Zt(H.current,e,t,n),c=Dt(s.text,s.cursor),l=pn(s.text,c);H.current=s.text;let u=C?.activeQuestion;return u&&Vn?ve(u.id,s.text,c,l,!1):rr(s.text),zt(c),Wt(ct(s.text,l)),r?.focusEditorAfterReplace!==!1&&window.requestAnimationFrame(()=>{vn.current?.focusAt(c)}),!0},[C?.activeQuestion,Vn,ve,H,rr]),sr=(0,q.useCallback)(()=>vn.current?.readSnapshot()||{value:H.current,cursor:Rt,expandedCursor:pn(H.current,Rt),terminalContextIds:Fe.map(e=>e.id)},[Rt,Fe,H]),cr=(0,q.useCallback)(()=>{let e=sr();return{snapshot:e,trigger:ct(e.value,e.expandedCursor)}},[sr]),{handleSelectIssue:lr,handleSelectChangeRequest:ur}=Rf({environmentId:r,gitCwd:oe,composerDraftTarget:n,addSourceControlContext:Ye}),dr=(0,q.useCallback)(e=>{if(Sn.current)return;Sn.current=!0,window.requestAnimationFrame(()=>{Sn.current=!1});let{snapshot:t,trigger:n}=cr();if(n){if(e.type===`path`){let r=`@${Yt(e.path)} `,i=cO(t.value,n.rangeEnd,r);or(n.rangeStart,i,r,{expectedText:t.value.slice(n.rangeStart,i)})&&Kt(null);return}if(e.type===`slash-command`){if(e.command===`model`){or(n.rangeStart,n.rangeEnd,``,{expectedText:t.value.slice(n.rangeStart,n.rangeEnd),focusEditorAfterReplace:!1})&&(Kt(null),sn(!0));return}if(e.command===`goal`){let e=`/goal `,r=cO(t.value,n.rangeEnd,e);or(n.rangeStart,r,e,{expectedText:t.value.slice(n.rangeStart,r)})&&Kt(null);return}Se(e.command===`plan`?`plan`:`default`),or(n.rangeStart,n.rangeEnd,``,{expectedText:t.value.slice(n.rangeStart,n.rangeEnd)})&&Kt(null);return}if(e.type===`provider-slash-command`){let r=`/${e.command.name} `,i=cO(t.value,n.rangeEnd,r);or(n.rangeStart,i,r,{expectedText:t.value.slice(n.rangeStart,i)})&&Kt(null);return}if(e.type===`skill`){let r=`$${e.skill.name} `,i=cO(t.value,n.rangeEnd,r);or(n.rangeStart,i,r,{expectedText:t.value.slice(n.rangeStart,i)})&&Kt(null);return}if(e.type===`source-control-issue`){or(n.rangeStart,n.rangeEnd,``,{expectedText:t.value.slice(n.rangeStart,n.rangeEnd)})&&Kt(null),lr(e.summary);return}if(e.type===`source-control-pr`){or(n.rangeStart,n.rangeEnd,``,{expectedText:t.value.slice(n.rangeStart,n.rangeEnd)})&&Kt(null),ur(e.summary);return}}},[or,Se,lr,ur,cr]),fr=(0,q.useCallback)(e=>{Kt(e),Qt(Fn)},[Fn]),pr=(0,q.useCallback)(e=>{if(Nn.length===0)return;let t=Nn.findIndex(e=>e.id===Gt),n=((t>=0?t:e===`ArrowDown`?-1:0)+(e===`ArrowDown`?1:-1)+Nn.length)%Nn.length,r=Nn[n];Kt(r?.id??null)},[Gt,Nn]),mr=(0,q.useCallback)(()=>{if(!mn)return;En.current!==null&&(window.cancelAnimationFrame(En.current),En.current=null);let e=document.activeElement;e instanceof HTMLElement&&e.blur(),ln(!1)},[mn]),hr=(0,q.useCallback)(()=>Nd({isMobileViewport:mn,isSendBusy:g,isConnecting:h,phase:m,pendingProgress:C,hasResolvedAnswers:!!w,showPlanFollowUpPrompt:j,hasSendableContent:jn.hasSendableContent}),[C,w,jn.hasSendableContent,h,mn,g,m,j]),gr=(0,q.useCallback)(e=>{fe(e),hr()&&mr()},[mr,fe,hr]),_r=(e,t)=>{if(e===`Tab`&&t.shiftKey)return be(),!0;let{trigger:n}=cr();if(Cn.current||n!==null){let t=wn.current,n=Tn.current??t[0];if(e===`ArrowDown`&&t.length>0)return pr(`ArrowDown`),!0;if(e===`ArrowUp`&&t.length>0)return pr(`ArrowUp`),!0;if((e===`Enter`||e===`Tab`)&&n)return dr(n),!0}return e===`Enter`&&!t.shiftKey&&(gr(),!0)},{isDragOverComposer:vr,addComposerAttachments:yr,removeComposerImage:br,onComposerPaste:xr,onComposerDragEnter:Sr,onComposerDragOver:Cr,onComposerDragLeave:Tr,onComposerDrop:Er}=OD({composerDraftTarget:n,environmentId:r,activeThreadId:s,draftId:o,routeThreadRef:a,runtimeMode:F,gitCwd:oe,pendingUserInputCount:x.length,composerImagesRef:se,editorRef:vn,setThreadError:De,focusComposer:Te}),Dr=(0,q.useCallback)(e=>{Xe(n,e)},[n,Xe]),Or=(0,q.useCallback)((e,t)=>{let{entry:r,durable:i}=$e(e);if(!r)return;let a=On.current.get(e),o=a!==void 0&&(t?.preferMemorySnapshot===!0||r.pendingImageCount>0),s,c=[];if(o&&a)s=a.images;else{let e=Pt(r.attachments);s=e.images,c=e.unreadableImageNames}let l=[...se.current],u=new Set(l.map(e=>e.id)),d=new Set(l.map(e=>vt(e))),f=[],p=[],m=[];for(let e of s){let t=vt(e);if(u.has(e.id)||d.has(t)){p.push(e.name);continue}if(l.length+f.length>=8){m.push(e.name);continue}f.push(e),u.add(e.id),d.add(t)}let h=H.current,g=fO(h,r.prompt);if(g!==h){H.current=g,rr(g);let e=Dt(g,g.length);zt(e),Wt(ct(g,g.length))}f.length>0&&(qe(n,f),se.current=[...l,...f]),fn(!1),An(e),Ee(),i||ki.add({type:`warning`,title:`Restored stash may reappear after reload`,description:`The prompt was restored, but browser storage could not save its removal.`,data:{hideCopyButton:!0}});let _=[];!o&&r.unreadableImageNames.length>0&&_.push(`Unreadable while saving: ${pO(r.unreadableImageNames)}.`),!o&&c.length>0&&_.push(`Unreadable while restoring: ${pO(c)}.`),!o&&r.droppedImageNames.length>0&&_.push(`Not saved because the stash image budget was full: ${pO(r.droppedImageNames)}.`),!o&&r.pendingImageCount>0&&_.push(`${r.pendingImageCount} image${r.pendingImageCount===1?` was`:`s were`} still saving and could not be restored.`),p.length>0&&_.push(`Already attached and skipped: ${pO(p)}.`),m.length>0&&_.push(`Not restored because this composer can hold 8 images: ${pO(m)}.`),_.length>0&&ki.add({type:`warning`,title:`Some stashed images could not be restored`,description:_.join(` `),data:{hideCopyButton:!0}})},[qe,n,se,H,An,Ee,rr,$e]),kr=(0,q.useCallback)(e=>{let{entry:t,durable:n}=$e(e);t&&(An(e),n||ki.add({type:`warning`,title:`Deleted stash may reappear after reload`,description:`Browser storage could not save the deletion.`,data:{hideCopyButton:!0}}))},[An,$e]);kn.current=(0,q.useCallback)(()=>{if(mn||Bn||x.length>0)return;let e=Ut(H.current),t=[...se.current],r=e.trim().length>0?e:``;if(r.length===0&&t.length===0){fn(e=>!e);return}let i=mO(n,r,t);if(Dn.current.has(i))return;Dn.current.add(i);let a=ro(),o={id:a,createdAt:new Date().toISOString(),prompt:r,attachments:[],droppedImageNames:[],unreadableImageNames:[],pendingImageCount:t.length},s=Qe(o);if(!s.written){Dn.current.delete(i),ki.add(ks({type:`error`,title:`Could not stash this prompt`,description:`Browser storage rejected the stash. The composer was left unchanged.`,data:{hideCopyButton:!0}}));return}On.current.set(a,{key:i,images:t}),s.evicted&&An(s.evicted.id),Ke(n);let c=Je(n)?.prompt??``;H.current=c,se.current=[];let l=Dt(c,c.length);zt(l),Wt(null),Kt(null),fn(!1),ki.add({type:`success`,title:`Prompt stashed`,description:t.length>0?`Saving ${t.length} image${t.length===1?``:`s`} in the background.`:void 0,actionProps:{children:`Undo`,onClick:()=>Or(a,{preferMemorySnapshot:!0})},data:{hideCopyButton:!0}}),s.durable||ki.add({type:`warning`,title:`Stashed prompt will not survive a reload`,description:`Browser storage is unavailable, so this stash is kept in memory for this page session only.`,data:{hideCopyButton:!0}}),s.evicted&&ki.add({type:`warning`,title:`Oldest stashed prompt discarded`,description:`The stash holds 20 prompts; the oldest was removed.`,data:{hideCopyButton:!0}}),(async()=>{let e=await Promise.all(t.map(async e=>{try{return{attachment:{id:e.id,name:e.name,mimeType:e.mimeType,sizeBytes:e.sizeBytes,dataUrl:un(await ul.encode(e))},unreadableName:null}}catch{return{attachment:null,unreadableName:e.name}}})),n=e.flatMap(e=>e.attachment?[e.attachment]:[]),r=e.flatMap(e=>e.unreadableName?[e.unreadableName]:[]),i=et(a,{attachments:n,droppedImageNames:[],unreadableImageNames:r});if(!i.attached){s.durable&&!i.written&&t.length>0&&ki.add({type:`warning`,title:`Stashed images were not saved`,description:`The prompt is still stashed, but browser storage rejected its image data.`,data:{hideCopyButton:!0}});return}let o=ND.getState().entries.find(e=>e.id===a),c=[];o?.unreadableImageNames.length&&c.push(`Could not read: ${pO(o.unreadableImageNames)}.`),o?.droppedImageNames.length&&c.push(`Over the stash image budget: ${pO(o.droppedImageNames)}.`),c.length>0?ki.add({type:`warning`,title:`Some images were not added to the stash`,description:c.join(` `),data:{hideCopyButton:!0}}):s.durable&&!i.durable&&t.length>0&&ki.add({type:`warning`,title:`Stashed images will not survive a reload`,description:`The prompt was saved, but browser storage rejected the later image update.`,data:{hideCopyButton:!0}})})().finally(()=>{An(a)})},[Ke,n,se,et,Je,Bn,mn,x.length,H,An,Or,Qe]),(0,q.useLayoutEffect)(()=>{let e=e=>{if(e.defaultPrevented||e.isComposing)return;let t=yn.current!==null&&e.composedPath().includes(yn.current),n=e.target===window||e.target===document||e.target===document.body;!t&&!n&&jo(e)||wo(e,V,{context:{terminalFocus:Ms(),terminalOpen:ae,modelPickerOpen:an,composerFocus:cn}})===`composer.stash`&&(e.preventDefault(),e.stopPropagation(),kn.current())};return window.addEventListener(`keydown`,e,!0),()=>window.removeEventListener(`keydown`,e,!0)},[cn,an,V,ae]),(0,q.useEffect)(()=>{fn(!1)},[n,mn]);let Ar=(0,q.useCallback)(()=>{U()},[U]),jr=(0,q.useCallback)(()=>{pe()},[pe]),Mr=(0,q.useCallback)(()=>{mn&&(En.current!==null&&window.cancelAnimationFrame(En.current),En.current=window.requestAnimationFrame(()=>{En.current=null;let e=bn.current,t=document.activeElement;t instanceof Element&&dO(t)||e&&t instanceof Element&&e.contains(t)&&t.closest(`[data-chat-composer-collapsed-controls="true"]`)===null||ln(!1)}))},[mn]);return(0,q.useEffect)(()=>()=>{En.current!==null&&window.cancelAnimationFrame(En.current)},[]),(0,q.useImperativeHandle)(t,()=>({focusAtEnd:()=>{vn.current?.focusAtEnd()},focusAt:e=>{vn.current?.focusAt(e)},openModelPicker:()=>{sn(!0)},toggleModelPicker:()=>{sn(e=>!e)},isModelPickerOpen:()=>an,readSnapshot:()=>sr(),resetCursorState:e=>{let t=e?.prompt??H.current,n=hn(t,e?.cursor??0);Kt(null),zt(n),Wt(e?.detectTrigger?ct(t,pn(t,n)):null)},addTerminalContext:e=>{if(!s)return;let t=vn.current?.readSnapshot()??{value:H.current,cursor:Rt,expandedCursor:pn(H.current,Rt),terminalContextIds:Fe.map(e=>e.id)},r=en(t.value,t.expandedCursor),i=Dt(r.prompt,r.cursor);Ve(n,r.prompt,{id:ro(),threadId:s,createdAt:new Date().toISOString(),...e},r.contextIndex)&&(H.current=r.prompt,zt(i),Wt(ct(r.prompt,r.cursor)),window.requestAnimationFrame(()=>{vn.current?.focusAt(i)}))},insertTriggerAtCursor:e=>{mn&&ln(!0);let t=vn.current?.readSnapshot()??{value:H.current,cursor:Rt,expandedCursor:pn(H.current,Rt),terminalContextIds:Fe.map(e=>e.id)},{text:r,cursor:i}=Zt(t.value,t.expandedCursor,t.expandedCursor,e),a=Dt(r,i);H.current=r,Be(n,r),zt(a),Wt(ct(r,i)),window.requestAnimationFrame(()=>{vn.current?.focusAt(a)})},getSendContext:()=>({prompt:H.current,images:se.current,terminalContexts:ce.current,sourceControlContexts:Ie,selectedPromptEffort:bt,selectedModelOptionsForDispatch:xt,selectedModelSelection:Ot,selectedProvider:ot,selectedModel:mt,selectedProviderModels:_t})}),[s,n,Rt,Ie,Fe,Ve,mn,H,se,ce,an,sr,mt,xt,Ot,bt,ot,_t,Be]),(0,Y.jsxs)(`form`,{ref:yn,onSubmit:gr,className:`relative mx-auto w-full min-w-0 max-w-208`,"data-chat-composer-form":`true`,children:[_n?(0,Y.jsx)(`div`,{className:G(`mb-2 flex min-w-0 items-center px-4`,Ze.length>0&&`pr-24`),children:(0,Y.jsx)(XD,{source:_n.source,target:_n.target})}):null,mn?null:(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(ID,{count:Ze.length,open:dn,onToggle:()=>fn(e=>!e)}),dn?(0,Y.jsx)(HD,{entries:Ze,onRestore:e=>Or(e),onDelete:kr,onClose:()=>fn(!1)}):null]}),(0,Y.jsx)(`div`,{className:G(`group rounded-3xl p-px transition-colors duration-200`,yt.composerFrameClassName),onDragEnter:Sr,onDragOver:Cr,onDragLeave:Tr,onDrop:Er,children:(0,Y.jsxs)(`div`,{ref:bn,"data-chat-composer-mobile-collapsed":gn?`true`:`false`,className:G(`rounded-[max(0px,calc(var(--radius-3xl)-2px))] border-0 bg-[color-mix(in_srgb,var(--card)_var(--app-composer-alpha),transparent)] dark:bg-[color-mix(in_srgb,var(--card)_var(--app-composer-dark-alpha),transparent)] [-webkit-backdrop-filter:var(--app-composer-filter)] [backdrop-filter:var(--app-composer-filter)] shadow-[0_6px_18px_rgba(0,0,0,0.06),0_1px_3px_rgba(0,0,0,0.05)] outline-none transition-[background-color,box-shadow] duration-200 has-focus-visible:shadow-[0_8px_24px_rgba(0,0,0,0.09),0_1px_4px_rgba(0,0,0,0.07)] dark:shadow-[inset_0_1px_0_rgba(255,255,255,0.06),0_10px_28px_rgba(0,0,0,0.4),0_1px_3px_rgba(0,0,0,0.35)] dark:has-focus-visible:shadow-[inset_0_1px_0_rgba(255,255,255,0.08),0_12px_32px_rgba(0,0,0,0.5),0_1px_4px_rgba(0,0,0,0.4)]`,vr?`bg-accent/30 shadow-lg/12 ring-1 ring-inset ring-primary/45 [--lg-plate-alpha:72%] [--lg-plate-color:color-mix(in_srgb,var(--accent)_38%,var(--card))]`:null,v?`opacity-75`:null,yt.composerSurfaceClassName),onFocusCapture:e=>{let t=e.target;t instanceof HTMLElement&&t.closest(`[data-chat-composer-collapsed-controls="true"]`)||(En.current!==null&&(window.cancelAnimationFrame(En.current),En.current=null),ln(!0))},onBlurCapture:()=>{Mr()},onClick:e=>{if(!gn||!Gn)return;let t=e.target;t instanceof HTMLElement&&t.closest(`[data-chat-composer-collapsed-controls="true"]`)||ln(!0)},children:[(0,Y.jsx)(FD,{hostRef:bn}),!gn&&(y?(0,Y.jsx)(`div`,{className:`rounded-t-[max(0px,calc(var(--radius-3xl)-3px))] border-b border-border/65 bg-muted/20`,children:(0,Y.jsx)(Gf,{approval:y,pendingCount:b.length,isResponding:k.includes(y.requestId),onRespondToApproval:me})}):x.length>0?(0,Y.jsx)(`div`,{className:`rounded-t-[max(0px,calc(var(--radius-3xl)-3px))] border-b border-border/65 bg-muted/20`,children:(0,Y.jsx)(ep,{pendingUserInputs:x,respondingRequestIds:k,answers:D,questionIndex:O,onToggleOption:he,onAdvance:ge})}):j&&M?(0,Y.jsx)(`div`,{className:`rounded-t-[max(0px,calc(var(--radius-3xl)-3px))] border-b border-border/65 bg-muted/20`,children:(0,Y.jsx)(np,{planTitle:fu(M.planMarkdown)??null},M.id)}):Hn&&p?(0,Y.jsx)(nO,{goal:p,onEdit:ke,onStatusChange:Ae,onClear:je}):null),gn&&y?(0,Y.jsx)(`div`,{className:`rounded-t-[max(0px,calc(var(--radius-3xl)-3px))] border-b border-border/65 bg-muted/20`,"data-chat-composer-collapsed-controls":`true`,children:(0,Y.jsx)(Gf,{approval:y,pendingCount:b.length,isResponding:k.includes(y.requestId),onRespondToApproval:me})}):gn&&x.length>0?(0,Y.jsxs)(`div`,{className:`rounded-t-[max(0px,calc(var(--radius-3xl)-3px))] border-b border-border/65 bg-muted/20`,"data-chat-composer-collapsed-controls":`true`,children:[(0,Y.jsx)(ep,{pendingUserInputs:x,respondingRequestIds:k,answers:D,questionIndex:O,onToggleOption:he,onAdvance:ge}),C?.activeQuestion?.multiSelect?(0,Y.jsx)(`div`,{className:`px-3 pb-3 sm:px-4`,children:(0,Y.jsx)(`div`,{"data-chat-composer-mobile-pending-compact":`true`,className:`flex min-w-0 items-center justify-end gap-2 rounded-lg border border-border/55 bg-background/55 p-1.5`,children:(0,Y.jsx)(Rd,{compact:!0,pendingAction:er,isRunning:!1,showPlanFollowUpPrompt:!1,promptHasText:!1,isSendBusy:g,isConnecting:h,isEnvironmentUnavailable:v!==null,isPreparingWorktree:!1,hasSendableContent:!1,preserveComposerFocusOnPointerDown:!0,onPreviousPendingQuestion:_e,onInterrupt:Ar,onImplementPlanInNewThread:jr})})}):null]}):null,B?(0,Y.jsx)(`div`,{className:`px-3 pt-2 sm:px-4`,"data-chat-composer-collapsed-controls":`true`,children:(0,Y.jsx)(CD,{...B})}):null,(0,Y.jsx)(vD,{editorRef:vn,isComposerCollapsedMobile:gn,hasComposerHeader:Un,isComposerApprovalState:Bn,resolvedTheme:re,composerMenuOpen:Pn,composerMenuItems:Nn,isComposerMenuLoading:Ln,composerTriggerKind:Mn,composerTrigger:Ht,composerMenuEmptyState:Rn,activeComposerMenuItemId:In?.id??null,onComposerMenuItemHighlighted:fr,onSelectComposerItem:dr,composerSourceControlContexts:Ie,onRemoveSourceControlContext:Dr,composerImages:Pe,nonPersistedComposerImageIdSet:zn,onExpandImage:Oe,onRemoveImage:br,pendingUserInputCount:x.length,prompt:Ne,composerCursor:Rt,composerTerminalContexts:Fe,skills:gt?.skills??[],showMobilePendingAnswerActions:nr,onRemoveTerminalContext:ir,onPromptChange:W,onComposerCommandKey:_r,onComposerPaste:xr,activePendingProgress:C,showPlanFollowUpPrompt:j,activeProposedPlan:M,environmentUnavailable:v,phase:m,isConnecting:h,isEditorDisabled:Gn,showCollapsedSendAction:Wn,collapsedSendActionLabel:`Send message`,collapsedSendActionDisabled:tr,onCollapsedSend:gr,isSendBusy:g,pendingPrimaryAction:er,onPreviousPendingQuestion:_e,onInterrupt:Ar,onImplementPlanInNewThread:jr}),gn||y?null:(0,Y.jsx)(_f,{isFooterCompact:$t,isPrimaryActionsCompact:nn,isMobileViewport:mn,hideOnMobilePendingAnswers:nr,environmentId:r,gitCwd:oe,hasSourceControlRemote:ze,onSelectIssue:lr,onSelectChangeRequest:ur,onAttachFile:e=>{yr([e])},executionTargets:e.executionTargets,selectedExecutionEnvironmentId:r,executionTargetLocked:e.executionTargetLocked,onExecutionTargetChange:e.onExecutionTargetChange,selectedInstanceId:dt,selectedModel:Nt,lockedProvider:R,lockedContinuationGroupKey:ut,providerInstanceEntries:tt,keybindings:V,modelOptionsByInstance:Mt,terminalOpen:ae,isModelPickerOpen:an,...yt.modelPickerIconClassName?{modelPickerIconClassName:yt.modelPickerIconClassName}:{},onModelPickerOpenChange:sn,onProviderModelSelect:ye,showInteractionModeToggle:Et.showInteractionModeToggle,askModeSupported:Et.askModeSupported,showPlanSidebarToggle:!1,interactionMode:I,runtimeMode:F,tokenMode:L,planSidebarLabel:N,planSidebarOpen:P,providerTraitsMenuContent:Qn,providerTraitsChips:$n,onInteractionModeChange:Se,onTogglePlanSidebar:we,onRuntimeModeChange:xe,onTokenModeChange:Ce,contextWindowUsage:It,contextWindowRateLimits:Lt,pendingAction:er,isRunning:m===`running`,showPlanFollowUpPrompt:x.length===0&&j,promptHasText:Ne.trim().length>0,isSendBusy:g,isConnecting:h,isEnvironmentUnavailable:v!==null,isPreparingWorktree:_,hasSendableContent:jn.hasSendableContent,onPreviousPendingQuestion:_e,onInterrupt:Ar,onImplementPlanInNewThread:jr})]})})]})})),_O=(0,q.lazy)(()=>n(()=>import(`./ThreadTerminalDrawer-DDHEuRGB.js`).then(e=>e.n),__vite__mapDeps([0]))),vO=(0,q.memo)(function(e){let t=(0,J.c)(78),{threadRef:n,threadId:r,visible:i,launchContext:a,focusRequestId:s,splitShortcutLabel:c,newShortcutLabel:l,closeShortcutLabel:u,keybindings:d,onAddTerminalContext:f}=e,p;t[0]===n?p=t[1]:(p=le(n),t[0]=n,t[1]=p);let m=oe(p),h;t[2]===n?h=t[3]:(h=e=>e.getDraftThreadByRef(n),t[2]=n,t[3]=h);let g=qt(h),_;t[4]!==g||t[5]!==m?(_=m?o(m.environmentId,m.projectId):g?o(g.environmentId,g.projectId):null,t[4]=g,t[5]=m,t[6]=_):_=t[6];let v=_,y;t[7]===v?y=t[8]:(y=te(v),t[7]=v,t[8]=y);let b=oe(y),x;t[9]===n?x=t[10]:(x=e=>Xe(e.terminalStateByThreadKey,n),t[9]=n,t[10]=x);let S=me(x),C=me(yO),w=me(bO),T=me(xO),E=me(SO),D=me(CO),[O,k]=(0,q.useState)(0),A=m?.worktreePath??g?.worktreePath??null,j;bb0:{if(a!==null){j=a.worktreePath;break bb0}j=A}let M=j,N;t[11]!==M||t[12]!==a?.cwd||t[13]!==b?(N=()=>a?.cwd??(b?xa({project:{cwd:b.cwd},worktreePath:M}):null),t[11]=M,t[12]=a?.cwd,t[13]=b,t[14]=N):N=t[14],a?.cwd;let P;t[15]===N?P=t[16]:(P=N(),t[15]=N,t[16]=P);let F=P,I;t[17]!==M||t[18]!==b?(I=b?ga({project:{cwd:b.cwd},worktreePath:M}):{},t[17]=M,t[18]=b,t[19]=I):I=t[19];let L=I,R;t[20]===i?R=t[21]:(R=()=>{i&&k(wO)},t[20]=i,t[21]=R);let z=R,ee;t[22]!==C||t[23]!==n?(ee=e=>{C(n,e)},t[22]=C,t[23]=n,t[24]=ee):ee=t[24];let ne=ee,B;t[25]!==z||t[26]!==w||t[27]!==n?(B=()=>{w(n,`terminal-${ro()}`),z()},t[25]=z,t[26]=w,t[27]=n,t[28]=B):B=t[28];let re=B,ie;t[29]!==z||t[30]!==T||t[31]!==n?(ie=()=>{T(n,`terminal-${ro()}`),z()},t[29]=z,t[30]=T,t[31]=n,t[32]=ie):ie=t[32];let V=ie,ae;t[33]!==z||t[34]!==E||t[35]!==n?(ae=e=>{E(n,e),z()},t[33]=z,t[34]=E,t[35]=n,t[36]=ae):ae=t[36];let H=ae,se;t[37]!==z||t[38]!==D||t[39]!==S.terminalIds.length||t[40]!==r||t[41]!==n?(se=e=>{let t=Le(n.environmentId);if(!t)return;let i=S.terminalIds.length<=1,a=()=>t.terminal.write({threadId:r,terminalId:e,data:`exit
21
21
  `}).catch(TO);`close`in t.terminal&&typeof t.terminal.close==`function`?(async()=>{i&&await t.terminal.clear({threadId:r,terminalId:e}).catch(EO),await t.terminal.close({threadId:r,terminalId:e,deleteHistory:!0})})().catch(()=>a()):a(),D(n,e),z()},t[37]=z,t[38]=D,t[39]=S.terminalIds.length,t[40]=r,t[41]=n,t[42]=se):se=t[42];let ce=se,ue;t[43]!==f||t[44]!==i?(ue=e=>{i&&f(e)},t[43]=f,t[44]=i,t[45]=ue):ue=t[45];let de=ue;if(!b||!S.terminalOpen||!F)return null;let fe=i?void 0:`hidden`,U;t[46]===S.terminalHeight?U=t[47]:(U=(0,Y.jsx)(`div`,{className:`thread-terminal-drawer relative flex min-w-0 shrink-0 items-center border-border/80 border-t bg-background px-4 text-muted-foreground text-sm`,style:{height:S.terminalHeight},children:`Loading terminal...`}),t[46]=S.terminalHeight,t[47]=U);let pe=s+O+ +!!i,he=i?c:void 0,ge=i?l:void 0,_e=i?u:void 0,ve;t[48]!==H||t[49]!==ce||t[50]!==V||t[51]!==F||t[52]!==M||t[53]!==de||t[54]!==d||t[55]!==L||t[56]!==ne||t[57]!==re||t[58]!==pe||t[59]!==he||t[60]!==ge||t[61]!==_e||t[62]!==S.activeTerminalGroupId||t[63]!==S.activeTerminalId||t[64]!==S.runningTerminalIds||t[65]!==S.terminalGroups||t[66]!==S.terminalHeight||t[67]!==S.terminalIds||t[68]!==r||t[69]!==n||t[70]!==i?(ve=(0,Y.jsx)(_O,{threadRef:n,threadId:r,cwd:F,worktreePath:M,runtimeEnv:L,visible:i,height:S.terminalHeight,terminalIds:S.terminalIds,runningTerminalIds:S.runningTerminalIds,activeTerminalId:S.activeTerminalId,terminalGroups:S.terminalGroups,activeTerminalGroupId:S.activeTerminalGroupId,focusRequestId:pe,onSplitTerminal:re,onNewTerminal:V,splitShortcutLabel:he,newShortcutLabel:ge,closeShortcutLabel:_e,keybindings:d,onActiveTerminalChange:H,onCloseTerminal:ce,onHeightChange:ne,onAddTerminalContext:de}),t[48]=H,t[49]=ce,t[50]=V,t[51]=F,t[52]=M,t[53]=de,t[54]=d,t[55]=L,t[56]=ne,t[57]=re,t[58]=pe,t[59]=he,t[60]=ge,t[61]=_e,t[62]=S.activeTerminalGroupId,t[63]=S.activeTerminalId,t[64]=S.runningTerminalIds,t[65]=S.terminalGroups,t[66]=S.terminalHeight,t[67]=S.terminalIds,t[68]=r,t[69]=n,t[70]=i,t[71]=ve):ve=t[71];let ye;t[72]!==U||t[73]!==ve?(ye=(0,Y.jsx)(q.Suspense,{fallback:U,children:ve}),t[72]=U,t[73]=ve,t[74]=ye):ye=t[74];let be;return t[75]!==fe||t[76]!==ye?(be=(0,Y.jsx)(`div`,{className:fe,children:ye}),t[75]=fe,t[76]=ye,t[77]=be):be=t[77],be});function yO(e){return e.setTerminalHeight}function bO(e){return e.splitTerminal}function xO(e){return e.newTerminal}function SO(e){return e.setActiveTerminal}function CO(e){return e.closeTerminal}function wO(e){return e+1}function TO(){}function EO(){}var DO=(0,q.memo)(function(e){let t=(0,J.c)(32),{preview:n,onClose:r}=e,[i,a]=(0,q.useState)(n),o,s;t[0]===n?(o=t[1],s=t[2]):(o=()=>{a(n)},s=[n],t[0]=n,t[1]=o,t[2]=s),(0,q.useEffect)(o,s);let c;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(c=e=>{a(t=>{if(t.images.length<=1)return t;let n=(t.index+e+t.images.length)%t.images.length;return n===t.index?t:{...t,index:n}})},t[3]=c):c=t[3];let l=c,u,d;t[4]!==r||t[5]!==i.images.length?(u=()=>{let e=e=>{if(Ao(e)){if(e.key===`Escape`){e.preventDefault(),e.stopPropagation(),r();return}if(!(i.images.length<=1)){if(e.key===`ArrowLeft`){e.preventDefault(),e.stopPropagation(),l(-1);return}e.key===`ArrowRight`&&(e.preventDefault(),e.stopPropagation(),l(1))}}};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},d=[l,r,i.images.length],t[4]=r,t[5]=i.images.length,t[6]=u,t[7]=d):(u=t[6],d=t[7]),(0,q.useEffect)(u,d);let f=i.images[i.index];if(!f)return null;let p;t[8]===r?p=t[9]:(p=(0,Y.jsx)(`button`,{type:`button`,className:`absolute inset-0 z-0 cursor-zoom-out`,"aria-label":`Close image preview`,onClick:r}),t[8]=r,t[9]=p);let m;t[10]===i.images.length?m=t[11]:(m=i.images.length>1&&(0,Y.jsx)(K,{type:`button`,size:`icon`,variant:`ghost`,className:`absolute left-2 top-1/2 z-20 -translate-y-1/2 text-white/90 hover:bg-white/10 hover:text-white sm:left-6`,"aria-label":`Previous image`,onClick:()=>l(-1),children:(0,Y.jsx)(Qr,{className:`size-5`})}),t[10]=i.images.length,t[11]=m);let h;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(h=(0,Y.jsx)(Qa,{}),t[12]=h):h=t[12];let g;t[13]===r?g=t[14]:(g=(0,Y.jsx)(K,{type:`button`,size:`icon-xs`,variant:`ghost`,className:`absolute right-2 top-2 z-20`,onClick:r,"aria-label":`Close image preview`,children:h}),t[13]=r,t[14]=g);let _;t[15]!==f.name||t[16]!==f.src?(_=(0,Y.jsx)(`img`,{src:f.src,alt:f.name,className:`max-h-[86vh] max-w-[92vw] select-none rounded-lg border border-border/70 bg-background object-contain shadow-2xl`,draggable:!1}),t[15]=f.name,t[16]=f.src,t[17]=_):_=t[17];let v=i.images.length>1?` (${i.index+1}/${i.images.length})`:``,y;t[18]!==f.name||t[19]!==v?(y=(0,Y.jsxs)(`p`,{className:`mt-2 max-w-[92vw] truncate text-center text-xs text-muted-foreground/80`,children:[f.name,v]}),t[18]=f.name,t[19]=v,t[20]=y):y=t[20];let b;t[21]!==_||t[22]!==y||t[23]!==g?(b=(0,Y.jsxs)(`div`,{className:`relative isolate z-10 max-h-[92vh] max-w-[92vw]`,children:[g,_,y]}),t[21]=_,t[22]=y,t[23]=g,t[24]=b):b=t[24];let x;t[25]===i.images.length?x=t[26]:(x=i.images.length>1&&(0,Y.jsx)(K,{type:`button`,size:`icon`,variant:`ghost`,className:`absolute right-2 top-1/2 z-20 -translate-y-1/2 text-white/90 hover:bg-white/10 hover:text-white sm:right-6`,"aria-label":`Next image`,onClick:()=>l(1),children:(0,Y.jsx)(ri,{className:`size-5`})}),t[25]=i.images.length,t[26]=x);let S;return t[27]!==b||t[28]!==x||t[29]!==p||t[30]!==m?(S=(0,Y.jsxs)(`div`,{className:`fixed inset-0 z-50 flex items-center justify-center bg-black/75 px-4 py-6 [-webkit-app-region:no-drag]`,role:`dialog`,"aria-modal":`true`,"aria-label":`Expanded image preview`,children:[p,m,b,x]}),t[27]=b,t[28]=x,t[29]=p,t[30]=m,t[31]=S):S=t[31],S}),OO=class extends Error{constructor(e){super(e),this.name=`ContextHandoffChunkError`}};async function kO(e){let t=await crypto.subtle.digest(`SHA-256`,new TextEncoder().encode(e));return Array.from(new Uint8Array(t),e=>e.toString(16).padStart(2,`0`)).join(``)}async function AO(e){let t=[],n=0,r=null,i=null;for(;;){if(e.signal?.aborted)throw new DOMException(`The operation was aborted.`,`AbortError`);let a=await e.read(n);if(a.offset!==n)throw new OO(`The server returned a gap or overlapping chunk.`);if(r!==null&&a.digest!==r)throw new OO(`The artifact digest changed during transfer.`);if(i!==null&&a.totalBytes!==i)throw new OO(`The artifact size changed during transfer.`);r=a.digest,i=a.totalBytes;let o=new TextEncoder().encode(a.chunk).byteLength,s=n+o;if(t.push(a.chunk),e.onProgress?.(s,a.totalBytes),a.nextOffset===null){if(s!==a.totalBytes)throw new OO(`The final chunk does not match the artifact size.`);break}if(a.nextOffset!==s||a.nextOffset<=n)throw new OO(`The server returned a non-sequential chunk offset.`);n=a.nextOffset}let a=t.join(``);if(await kO(a)!==r)throw new OO(`The downloaded artifact failed integrity verification.`);return{text:a,digest:r,totalBytes:i}}async function jO(e){let t=null,n=await AO({read:async n=>{let r=await e.read(n);if(t!==null&&r.filename!==t)throw new OO(`The export filename changed during transfer.`);return t=r.filename,r},...e.signal?{signal:e.signal}:{},...e.onProgress?{onProgress:e.onProgress}:{}}),r=t??``,i=`.${e.expectedExtension}`;if(!/^ryco-context-handoff-[a-zA-Z0-9_-]+-(sent|complete)\.(md|json)$/.test(r)||!r.endsWith(i))throw new OO(`The server returned an unsafe export filename.`);return{blob:new Blob([n.text],{type:e.expectedExtension===`md`?`text/markdown;charset=utf-8`:`application/json`}),filename:r}}function MO(e,t){let n=URL.createObjectURL(e),r=document.createElement(`a`);r.href=n,r.download=t,r.click(),queueMicrotask(()=>URL.revokeObjectURL(n))}var NO={messages:`Messages`,plans:`Plans`,tools:`Tools and terminal results`,checkpoints:`Checkpoints and changed files`,notices:`Notices and pending questions`,subagents:`Subagents`,priorHandoffs:`Prior handoffs`,triggeringMessage:`Triggering user message`},PO={sent:`Sent to model`,"prepared-not-sent":`Prepared, not sent`,"prepared-not-accepted":`Prepared payload, not accepted`,"delivery-uncertain":`Attempted payload; delivery uncertain`};function FO(e){return e instanceof Error?e.message:`The context artifact could not be loaded.`}function IO(e){return e<1024?`${e} B`:e<1048576?`${(e/1024).toFixed(1)} KB`:`${(e/1048576).toFixed(1)} MB`}function LO(e,t){if(!t||typeof t!=`object`)return(0,Y.jsx)(`pre`,{className:`whitespace-pre-wrap break-words text-xs`,children:String(t)});let n=t,r=typeof n.text==`string`?n.text:null,i=typeof n.summary==`string`?n.summary:null,a=typeof n.command==`string`?n.command:null,o=typeof n.output==`string`?n.output:null;return e===`messages`||e===`triggeringMessage`?(0,Y.jsxs)(`div`,{className:`space-y-2`,children:[(0,Y.jsx)(`p`,{className:`text-[11px] font-medium uppercase tracking-wide text-muted-foreground`,children:typeof n.role==`string`?n.role:`Message`}),(0,Y.jsx)(`p`,{className:`whitespace-pre-wrap break-words text-sm leading-6`,children:r})]}):e===`tools`?(0,Y.jsxs)(`div`,{className:`space-y-2`,children:[i?(0,Y.jsx)(`p`,{className:`text-sm font-medium`,children:i}):null,a?(0,Y.jsx)(`pre`,{className:`overflow-x-auto rounded-md bg-muted/55 p-2 text-xs`,children:a}):null,o?(0,Y.jsx)(`pre`,{className:`max-h-56 overflow-auto whitespace-pre-wrap rounded-md bg-muted/35 p-2 text-xs`,children:o}):null]}):(0,Y.jsx)(`pre`,{className:`max-h-72 overflow-auto whitespace-pre-wrap break-words rounded-md bg-muted/35 p-2 text-xs leading-5`,children:JSON.stringify(t,null,2)})}function RO(e){let t=(0,q.useMemo)(()=>Be(e.environmentId).contextHandoff,[e.environmentId]),n=(0,q.useRef)(0),r=(0,q.useRef)(null),[i,a]=(0,q.useState)(null),[o,s]=(0,q.useState)(null),[c,l]=(0,q.useState)(`sent`),[u,d]=(0,q.useState)(`readable`),[f,p]=(0,q.useState)({}),[m,h]=(0,q.useState)(null),[g,_]=(0,q.useState)(`idle`),[v,y]=(0,q.useState)(null),[b,x]=(0,q.useState)(null),[S,C]=(0,q.useState)(0),[w,T]=(0,q.useState)(null),E=(0,q.useCallback)(async()=>{let r=++n.current;s(null),a(null);try{let i=await t.getInspectionSummary({threadId:e.threadId,handoffId:e.marker.handoffId});if(n.current!==r)return;a(i),l(i.status===`consumed`&&i.sent.available?`sent`:`complete`)}catch(e){n.current===r&&s(FO(e))}},[t,e.marker.handoffId,e.threadId]);(0,q.useEffect)(()=>(E(),r.current?.focus(),()=>{n.current+=1}),[E]),(0,q.useEffect)(()=>{p({}),h(null),_(`idle`),y(null),T(null)},[c]);let D=(0,q.useCallback)(async(r,a=null)=>{let o=`${c}:${r}`,s=n.current;p(e=>({...e,[o]:{entries:a?e[o]?.entries??[]:[],nextCursor:a,loading:!0,error:null}}));try{let l=await t.listInspectionEntries({threadId:e.threadId,handoffId:e.marker.handoffId,scope:c,section:r,...a?{cursor:a}:{}});if(n.current!==s||l.artifactDigest!==i?.[c].digest)return;p(e=>({...e,[o]:{entries:a?[...e[o]?.entries??[],...l.entries]:l.entries,nextCursor:l.nextCursor,loading:!1,error:null}}))}catch(e){if(n.current!==s)return;p(t=>({...t,[o]:{entries:t[o]?.entries??[],nextCursor:a,loading:!1,error:FO(e)}}))}},[t,e.marker.handoffId,e.threadId,c,i]),O=(0,q.useCallback)(async()=>{let r=n.current;_(`loading`),y(null);try{let i=await AO({read:n=>t.readRawPayloadChunk({threadId:e.threadId,handoffId:e.marker.handoffId,scope:c,offset:n})});if(n.current!==r)return;h({text:i.text,digest:i.digest}),_(`idle`)}catch(e){if(n.current!==r)return;_(`error`),y(FO(e))}},[t,e.marker.handoffId,e.threadId,c]);(0,q.useEffect)(()=>{u===`raw`&&i?.[c].available===!0&&m===null&&g===`idle`&&O()},[O,m,g,c,i,u]);let k=(0,q.useCallback)(async n=>{x(n),C(0),T(null);try{let r=await jO({read:r=>t.readExportChunk({threadId:e.threadId,handoffId:e.marker.handoffId,scope:c,format:n,offset:r}),expectedExtension:n===`markdown`?`md`:`json`,onProgress:(e,t)=>C(t===0?1:Math.min(1,e/t))});MO(r.blob,r.filename)}catch(e){T(FO(e))}finally{x(null)}},[t,e.marker.handoffId,e.threadId,c]),A=i?.[c]??null,j=i?.sources??e.marker.sources,M=i?.target??e.marker.target;return(0,Y.jsxs)(`section`,{"aria-label":`Context handoff inspector`,className:`flex min-h-0 w-full flex-1 flex-col bg-background`,onKeyDown:t=>{t.key===`Escape`&&e.onClose()},children:[(0,Y.jsxs)(`header`,{className:`shrink-0 border-b border-border px-4 py-3`,children:[(0,Y.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,Y.jsxs)(`div`,{className:`min-w-0`,children:[(0,Y.jsx)(`p`,{className:`text-xs font-medium uppercase tracking-wide text-muted-foreground`,children:`Context handoff`}),(0,Y.jsxs)(`div`,{className:`mt-1 flex min-w-0 flex-wrap items-center gap-1.5 text-sm font-medium`,children:[j.map(e=>(0,Y.jsx)(YD,{endpoint:e,className:`max-w-44`},`${e.providerInstanceId}:${e.modelSlug}`)),(0,Y.jsx)(fl,{className:`size-3.5 text-muted-foreground`}),(0,Y.jsx)(YD,{endpoint:M,className:`max-w-44`})]})]}),(0,Y.jsx)(K,{ref:r,type:`button`,size:`icon`,variant:`ghost`,"aria-label":`Close context handoff inspector`,onClick:e.onClose,children:(0,Y.jsx)(Qa,{})})]}),i?(0,Y.jsxs)(`div`,{className:`mt-3 flex flex-wrap items-center gap-x-3 gap-y-1 text-xs text-muted-foreground`,children:[(0,Y.jsxs)(`span`,{className:`inline-flex items-center gap-1 text-foreground`,children:[(0,Y.jsx)(Ai,{className:`size-3.5`}),PO[i.deliveryLabel]]}),(0,Y.jsx)(`span`,{children:new Date(i.updatedAt).toLocaleString()})]}):null]}),o?(0,Y.jsxs)(`div`,{className:`m-4 rounded-lg border border-destructive/25 bg-destructive/5 p-3 text-sm`,children:[(0,Y.jsx)(`p`,{children:o}),(0,Y.jsxs)(K,{className:`mt-3`,size:`sm`,variant:`outline`,onClick:()=>void E(),children:[(0,Y.jsx)(Fa,{}),` Retry`]})]}):i?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`div`,{className:`shrink-0 space-y-3 border-b border-border px-4 py-3`,children:[(0,Y.jsx)(`div`,{className:`grid grid-cols-2 rounded-lg bg-muted/55 p-1`,children:[`sent`,`complete`].map(e=>{let t=i[e].available;return(0,Y.jsx)(`button`,{type:`button`,disabled:!t,onClick:()=>l(e),className:G(`rounded-md px-2 py-1.5 text-xs font-medium transition-colors`,c===e?`bg-background text-foreground shadow-sm`:`text-muted-foreground hover:text-foreground`,!t&&`cursor-not-allowed opacity-45`),children:e===`sent`?`Sent to model`:`Complete artifact`},e)})}),A?.available?(0,Y.jsxs)(`div`,{className:`flex flex-wrap gap-x-3 gap-y-1 text-xs text-muted-foreground`,children:[(0,Y.jsxs)(`span`,{children:[A.entryCount,` context entries`]}),(0,Y.jsx)(`span`,{children:IO(A.byteCount)}),A.truncated?(0,Y.jsx)(`span`,{children:`Trimmed to the target input budget`}):null]}):(0,Y.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Exact sent payload unavailable for this handoff. The complete artifact remains available when it was prepared.`}),(0,Y.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,Y.jsx)(`div`,{className:`flex rounded-md border border-border p-0.5`,children:[`readable`,`raw`].map(e=>(0,Y.jsx)(`button`,{type:`button`,disabled:!A?.available,onClick:()=>d(e),className:G(`rounded px-2 py-1 text-xs`,u===e?`bg-muted font-medium`:`text-muted-foreground`),children:e===`readable`?`Readable`:`Raw payload`},e))}),(0,Y.jsxs)(`div`,{className:`flex gap-1`,children:[(0,Y.jsxs)(K,{size:`sm`,variant:`outline`,disabled:!A?.available||b!==null,onClick:()=>void k(`markdown`),children:[b===`markdown`?(0,Y.jsx)(Yr,{className:`animate-spin`}):(0,Y.jsx)(Ki,{}),`Markdown`]}),(0,Y.jsxs)(K,{size:`sm`,variant:`outline`,disabled:!A?.available||b!==null,onClick:()=>void k(`json`),children:[b===`json`?(0,Y.jsx)(Yr,{className:`animate-spin`}):(0,Y.jsx)(bl,{}),`JSON`]})]})]}),(0,Y.jsxs)(`p`,{className:`flex items-start gap-1.5 text-[11px] leading-4 text-muted-foreground`,children:[(0,Y.jsx)(La,{className:`mt-0.5 size-3 shrink-0`}),`Exports may contain conversation text, commands, tool output, and repository paths.`]}),b?(0,Y.jsxs)(`p`,{className:`text-xs text-muted-foreground`,children:[`Verifying export… `,Math.round(S*100),`%`]}):null,w?(0,Y.jsx)(`p`,{className:`text-xs text-destructive`,children:w}):null]}),(0,Y.jsx)(ys,{children:(0,Y.jsx)(`div`,{className:`space-y-2 p-4`,children:u===`raw`?g===`loading`?(0,Y.jsxs)(`p`,{className:`flex items-center gap-2 text-sm text-muted-foreground`,children:[(0,Y.jsx)(Yr,{className:`size-4 animate-spin`}),` Loading and verifying raw payload…`]}):g===`error`?(0,Y.jsxs)(`div`,{className:`text-sm text-destructive`,children:[(0,Y.jsx)(`p`,{children:v}),(0,Y.jsx)(K,{className:`mt-2`,size:`sm`,variant:`outline`,onClick:()=>void O(),children:`Retry`})]}):m?(0,Y.jsxs)(`div`,{className:`space-y-2`,children:[(0,Y.jsxs)(`p`,{className:`text-[11px] text-muted-foreground`,children:[`Verified SHA-256 ·`,` `,(0,Y.jsxs)(`span`,{className:`font-mono`,children:[m.digest.slice(0,16),`…`]})]}),(0,Y.jsx)(`pre`,{className:`overflow-auto whitespace-pre-wrap break-words rounded-lg bg-muted/40 p-3 text-xs leading-5`,children:m.text})]}):null:A?.available?A.sections.map(e=>{let t=`${c}:${e.section}`,n=f[t];return(0,Y.jsxs)(`details`,{className:`group rounded-lg border border-border bg-card/35`,onToggle:t=>{t.currentTarget.open&&!n&&D(e.section)},children:[(0,Y.jsxs)(`summary`,{className:`flex cursor-pointer list-none items-center justify-between gap-3 px-3 py-2.5 text-sm font-medium`,children:[(0,Y.jsx)(`span`,{children:NO[e.section]}),(0,Y.jsxs)(`span`,{className:`flex items-center gap-2 text-xs text-muted-foreground`,children:[e.entryCount,(0,Y.jsx)(Xr,{className:`size-3.5 transition-transform group-open:rotate-180`})]})]}),(0,Y.jsxs)(`div`,{className:`space-y-3 border-t border-border px-3 py-3`,children:[n?.entries.map(t=>(0,Y.jsx)(`article`,{className:`rounded-md bg-muted/25 p-2.5`,children:LO(e.section,t.value)},t.id)),n?.loading?(0,Y.jsxs)(`p`,{className:`flex items-center gap-2 text-xs text-muted-foreground`,children:[(0,Y.jsx)(Yr,{className:`size-3.5 animate-spin`}),` Loading…`]}):null,n?.error?(0,Y.jsx)(`p`,{className:`text-xs text-destructive`,children:n.error}):null,n?.nextCursor&&!n.loading?(0,Y.jsx)(K,{size:`sm`,variant:`ghost`,onClick:()=>void D(e.section,n.nextCursor),children:`Load more`}):null]})]},t)}):null})})]}):(0,Y.jsxs)(`div`,{className:`flex flex-1 items-center justify-center gap-2 text-sm text-muted-foreground`,children:[(0,Y.jsx)(Yr,{className:`size-4 animate-spin`}),` Loading context artifact…`]})]})}function zO({open:e,environmentId:t,projectId:n,threadId:r,cwd:i,initialReference:a,onOpenChange:o,onPrepared:s}){let c=(0,q.useRef)(null),[l,u]=(0,q.useState)(a??``),[d,f]=(0,q.useState)(!1),[p,m]=(0,q.useState)(null),[h,g]=rt(l,{wait:450},e=>({isPending:e.isPending})),{data:_=null}=ie({environmentId:t,cwd:i}),v=(0,q.useMemo)(()=>_r(_?.sourceControlProvider),[_?.sourceControlProvider]),y=v.terminology,b=v.Icon;(0,q.useEffect)(()=>{e&&(u(a??``),f(!1),m(null))},[a,e]),(0,q.useEffect)(()=>{if(!e)return;let t=window.requestAnimationFrame(()=>{c.current?.focus(),c.current?.select()});return()=>{window.cancelAnimationFrame(t)}},[e]);let x=Ru(l),S=Ru(h),C=wu({environmentId:t,cwd:i,reference:e?S:null}),w=Tu({environmentId:t,cwd:i,reference:x})?.pullRequest??null,T=Eu({mutationFn:e=>{if(!i||!t)throw Error(`Pull request thread preparation is unavailable.`);return Be(t).git.preparePullRequestThread({cwd:i,reference:e.reference,mode:e.mode,...n?{projectId:n}:{},...e.threadId?{threadId:e.threadId}:{}})},invalidates:i?[je(i)]:[]}),E=(x!==null&&x===S?C.data?.pullRequest??null:null)??w,D=e&&x!==null&&E===null&&(g.state.isPending||x!==S||C.isPending||C.isFetching),O=(0,q.useMemo)(()=>{switch(E?.state){case`merged`:return`text-violet-600 dark:text-violet-300/90`;case`closed`:return`text-zinc-500 dark:text-zinc-400/80`;case`open`:return`text-emerald-600 dark:text-emerald-300/90`;default:return`text-muted-foreground`}},[E?.state]),k=(0,q.useCallback)(async e=>{if(!x){f(!0);return}if(!(!x||!E||!i)){m(e);try{let t=await T.mutateAsync({reference:x,mode:e,...e===`worktree`?{threadId:r}:{}});await s({branch:t.branch,worktreePath:t.worktreePath}),o(!1)}finally{m(null)}}},[i,o,s,x,T,E,r]),A=(d?l.trim().length===0?`Paste a ${y.singular} URL, checkout command, or enter 123 / #123.`:x===null?`Use a ${y.singular} URL, checkout command, 123, or #123.`:null:null)??(E===null&&C.isError?C.error instanceof Error?C.error.message:`Failed to resolve ${y.singular}.`:T.error instanceof Error?T.error.message:T.error?`Failed to prepare ${y.singular} thread.`:null);return(0,Y.jsx)(Zs,{open:e,onOpenChange:e=>{T.isPending||o(e)},children:(0,Y.jsxs)(Xs,{className:`project-glass-surface max-w-xl`,surface:`glass`,children:[(0,Y.jsxs)(Gs,{children:[(0,Y.jsxs)(Ks,{className:`flex items-center gap-2`,children:[(0,Y.jsx)(b,{className:`size-4`}),`Checkout `,y.singular]}),(0,Y.jsxs)(Ys,{children:[`Resolve a `,v.providerName,` `,y.singular,`, then create the draft thread in the main repo or in a dedicated worktree.`]})]}),(0,Y.jsxs)(Js,{className:`space-y-4`,children:[(0,Y.jsxs)(`label`,{className:`grid gap-1.5`,children:[(0,Y.jsx)(`span`,{className:`text-xs font-medium text-foreground capitalize`,children:y.singular}),(0,Y.jsx)(vs,{ref:c,placeholder:`${y.shortLabel} URL, checkout command, or #42`,value:l,onChange:e=>{f(!0),u(e.target.value)},onKeyDown:e=>{e.key!==`Enter`||!Ao(e)||(e.preventDefault(),!D&&!T.isPending&&k(`local`))}})]}),E?(0,Y.jsx)(`div`,{className:`rounded-xl border border-border/70 bg-muted/24 p-3`,children:(0,Y.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,Y.jsxs)(`div`,{className:`min-w-0`,children:[(0,Y.jsx)(`p`,{className:`truncate font-medium text-sm`,children:E.title}),(0,Y.jsxs)(`p`,{className:`truncate text-muted-foreground text-xs`,children:[`#`,E.number,` · `,E.headBranch,` to`,` `,E.baseBranch]})]}),(0,Y.jsx)(`span`,{className:G(`shrink-0 text-xs capitalize`,O),children:E.state})]})}):null,D?(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 text-muted-foreground text-xs`,children:[(0,Y.jsx)(cc,{className:`size-3.5`}),`Resolving `,y.singular,`...`]}):null,A?(0,Y.jsx)(`p`,{className:`text-destructive text-xs`,children:A}):null]}),(0,Y.jsxs)(qs,{children:[(0,Y.jsx)(K,{type:`button`,variant:`outline`,size:`sm`,onClick:()=>o(!1),disabled:T.isPending,children:`Cancel`}),(0,Y.jsx)(K,{type:`button`,size:`sm`,variant:`outline`,onClick:()=>{k(`local`)},disabled:!i||!E||D||T.isPending,children:p===`local`?`Preparing local...`:`Local`}),(0,Y.jsx)(K,{type:`button`,size:`sm`,onClick:()=>{k(`worktree`)},disabled:!i||!E||D||T.isPending,children:p===`worktree`?`Preparing worktree...`:`Worktree`})]})]})})}var BO=(0,q.memo)(function(e){let t=(0,J.c)(107),{planMarkdown:n,environmentId:r,cwd:i,workspaceRoot:a}=e,[o,s]=(0,q.useState)(!1),[c,l]=(0,q.useState)(!1),[u,d]=(0,q.useState)(``),[f,p]=(0,q.useState)(!1),m;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(m={onError:VO},t[0]=m):m=t[0];let{copyToClipboard:h,isCopied:g}=Os(m),_=(0,q.useId)(),v;t[1]===n?v=t[2]:(v=fu(n)??`Proposed plan`,t[1]=n,t[2]=v);let y=v,b;t[3]===n?b=t[4]:(b=n.split(`
22
22
  `),t[3]=n,t[4]=b);let x=b.length,S=n.length>900||x>20,C;t[5]===n?C=t[6]:(C=pu(n),t[5]=n,t[6]=C);let w=C,T;t[7]!==S||t[8]!==n?(T=S?mu(n,{maxLines:10}):null,t[7]=S,t[8]=n,t[9]=T):T=t[9];let E=T,D;t[10]===n?D=t[11]:(D=yu(n),t[10]=n,t[11]=D);let O=D,k;t[12]===n?k=t[13]:(k=bu(n),t[12]=n,t[13]=k);let A=k,j;t[14]!==O||t[15]!==A?(j=()=>{xu(O,A)},t[14]=O,t[15]=A,t[16]=j):j=t[16];let M=j,N;t[17]!==h||t[18]!==A?(N=()=>{h(A)},t[17]=h,t[18]=A,t[19]=N):N=t[19];let P=N,F;t[20]!==O||t[21]!==a?(F=()=>{if(!a){ki.add(ks({type:`error`,title:`Workspace path is unavailable`,description:`This thread does not have a workspace path to save into.`}));return}d(e=>e.length>0?e:O),l(!0)},t[20]=O,t[21]=a,t[22]=F):F=t[22];let I=F,L;t[23]!==r||t[24]!==A||t[25]!==u||t[26]!==a?(L=()=>{let e=Le(r),t=u.trim();if(!(!e||!a)){if(!t){ki.add({type:`warning`,title:`Enter a workspace path`});return}p(!0),e.projects.writeFile({cwd:a,relativePath:t,contents:A}).then(e=>{l(!1),ki.add({type:`success`,title:`Plan saved to workspace`,description:e.relativePath})}).catch(HO).then(()=>{p(!1)},()=>{p(!1)})}},t[23]=r,t[24]=A,t[25]=u,t[26]=a,t[27]=L):L=t[27];let R=L,z;t[28]===Symbol.for(`react.memo_cache_sentinel`)?(z=(0,Y.jsx)(Ac,{variant:`secondary`,children:`Plan`}),t[28]=z):z=t[28];let ee;t[29]===y?ee=t[30]:(ee=(0,Y.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[z,(0,Y.jsx)(`p`,{className:`truncate text-sm font-medium text-foreground`,children:y})]}),t[29]=y,t[30]=ee);let te;t[31]===Symbol.for(`react.memo_cache_sentinel`)?(te=(0,Y.jsx)(ac,{render:(0,Y.jsx)(K,{"aria-label":`Plan actions`,size:`icon-xs`,variant:`outline`}),children:(0,Y.jsx)(Bi,{"aria-hidden":`true`,className:`size-4`})}),t[31]=te):te=t[31];let ne=g?`Copied!`:`Copy to clipboard`,B;t[32]!==P||t[33]!==ne?(B=(0,Y.jsx)(oc,{onClick:P,children:ne}),t[32]=P,t[33]=ne,t[34]=B):B=t[34];let re;t[35]===M?re=t[36]:(re=(0,Y.jsx)(oc,{onClick:M,children:`Download as markdown`}),t[35]=M,t[36]=re);let ie=!a||f,V;t[37]!==I||t[38]!==ie?(V=(0,Y.jsx)(oc,{onClick:I,disabled:ie,children:`Save to workspace`}),t[37]=I,t[38]=ie,t[39]=V):V=t[39];let ae;t[40]!==B||t[41]!==re||t[42]!==V?(ae=(0,Y.jsxs)(nc,{children:[te,(0,Y.jsxs)($s,{align:`end`,children:[B,re,V]})]}),t[40]=B,t[41]=re,t[42]=V,t[43]=ae):ae=t[43];let oe;t[44]!==ee||t[45]!==ae?(oe=(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-3`,children:[ee,ae]}),t[44]=ee,t[45]=ae,t[46]=oe):oe=t[46];let H=S&&!o&&`max-h-104 overflow-hidden`,se;t[47]===H?se=t[48]:(se=G(`relative`,H),t[47]=H,t[48]=se);let ce;t[49]!==S||t[50]!==E||t[51]!==i||t[52]!==w||t[53]!==o?(ce=S&&!o?(0,Y.jsx)(ca,{text:E??``,cwd:i,isStreaming:!1}):(0,Y.jsx)(ca,{text:w,cwd:i,isStreaming:!1}),t[49]=S,t[50]=E,t[51]=i,t[52]=w,t[53]=o,t[54]=ce):ce=t[54];let le;t[55]!==S||t[56]!==o?(le=S&&!o?(0,Y.jsx)(`div`,{className:`pointer-events-none absolute inset-x-0 bottom-0 h-24 bg-linear-to-t from-card/95 via-card/80 to-transparent`}):null,t[55]=S,t[56]=o,t[57]=le):le=t[57];let ue;t[58]!==se||t[59]!==ce||t[60]!==le?(ue=(0,Y.jsxs)(`div`,{className:se,children:[ce,le]}),t[58]=se,t[59]=ce,t[60]=le,t[61]=ue):ue=t[61];let de;t[62]!==S||t[63]!==o?(de=S?(0,Y.jsx)(`div`,{className:`mt-4 flex justify-center`,children:(0,Y.jsx)(K,{size:`sm`,variant:`outline`,"data-scroll-anchor-ignore":!0,onClick:()=>s(UO),children:o?`Collapse plan`:`Expand plan`})}):null,t[62]=S,t[63]=o,t[64]=de):de=t[64];let fe;t[65]!==ue||t[66]!==de?(fe=(0,Y.jsxs)(`div`,{className:`mt-4`,children:[ue,de]}),t[65]=ue,t[66]=de,t[67]=fe):fe=t[67];let U;t[68]===f?U=t[69]:(U=e=>{f||l(e)},t[68]=f,t[69]=U);let pe;t[70]===Symbol.for(`react.memo_cache_sentinel`)?(pe=(0,Y.jsx)(Ks,{children:`Save plan to workspace`}),t[70]=pe):pe=t[70];let me=a??`the workspace`,he;t[71]===me?he=t[72]:(he=(0,Y.jsxs)(Gs,{children:[pe,(0,Y.jsxs)(Ys,{children:[`Enter a path relative to `,(0,Y.jsx)(`code`,{children:me}),`.`]})]}),t[71]=me,t[72]=he);let ge;t[73]===Symbol.for(`react.memo_cache_sentinel`)?(ge=(0,Y.jsx)(`span`,{className:`text-xs font-medium text-foreground`,children:`Workspace path`}),t[73]=ge):ge=t[73];let _e;t[74]===Symbol.for(`react.memo_cache_sentinel`)?(_e=e=>d(e.target.value),t[74]=_e):_e=t[74];let ve;t[75]!==O||t[76]!==f||t[77]!==u||t[78]!==_?(ve=(0,Y.jsx)(vs,{id:_,value:u,onChange:_e,placeholder:O,spellCheck:!1,disabled:f}),t[75]=O,t[76]=f,t[77]=u,t[78]=_,t[79]=ve):ve=t[79];let ye;t[80]!==_||t[81]!==ve?(ye=(0,Y.jsx)(Js,{className:`space-y-3`,children:(0,Y.jsxs)(`label`,{htmlFor:_,className:`grid gap-1.5`,children:[ge,ve]})}),t[80]=_,t[81]=ve,t[82]=ye):ye=t[82];let be;t[83]===Symbol.for(`react.memo_cache_sentinel`)?(be=()=>l(!1),t[83]=be):be=t[83];let xe;t[84]===f?xe=t[85]:(xe=(0,Y.jsx)(K,{variant:`outline`,size:`sm`,onClick:be,disabled:f,children:`Cancel`}),t[84]=f,t[85]=xe);let Se;t[86]===R?Se=t[87]:(Se=()=>void R(),t[86]=R,t[87]=Se);let Ce=f?`Saving...`:`Save`,we;t[88]!==f||t[89]!==Se||t[90]!==Ce?(we=(0,Y.jsx)(K,{size:`sm`,onClick:Se,disabled:f,children:Ce}),t[88]=f,t[89]=Se,t[90]=Ce,t[91]=we):we=t[91];let Te;t[92]!==xe||t[93]!==we?(Te=(0,Y.jsxs)(qs,{children:[xe,we]}),t[92]=xe,t[93]=we,t[94]=Te):Te=t[94];let Ee;t[95]!==he||t[96]!==ye||t[97]!==Te?(Ee=(0,Y.jsxs)(Xs,{className:`max-w-xl`,children:[he,ye,Te]}),t[95]=he,t[96]=ye,t[97]=Te,t[98]=Ee):Ee=t[98];let De;t[99]!==c||t[100]!==U||t[101]!==Ee?(De=(0,Y.jsx)(Zs,{open:c,onOpenChange:U,children:Ee}),t[99]=c,t[100]=U,t[101]=Ee,t[102]=De):De=t[102];let Oe;return t[103]!==oe||t[104]!==fe||t[105]!==De?(Oe=(0,Y.jsxs)(`div`,{className:`rounded-3xl border border-border/80 bg-card/70 p-4 sm:p-5`,children:[oe,fe,De]}),t[103]=oe,t[104]=fe,t[105]=De,t[106]=Oe):Oe=t[106],Oe});function VO(e){ki.add(ks({type:`error`,title:`Could not copy plan`,description:e instanceof Error?e.message:`An error occurred while copying.`}))}function HO(e){ki.add(ks({type:`error`,title:`Could not save plan`,description:e instanceof Error?e.message:`An error occurred while saving.`}))}function UO(e){return!e}var WO=1e3,GO=e=>{e.current&&ji.add({data:{tooltipStyle:!0},positionerProps:{anchor:e.current},timeout:WO,title:`Copied!`})},KO=(e,t)=>{e.current&&ji.add({data:{tooltipStyle:!0},positionerProps:{anchor:e.current},timeout:WO,title:`Failed to copy`,description:t.message})},qO=(0,q.memo)(function(e){let t=(0,J.c)(21),{text:n,size:r,variant:i,className:a,ariaLabel:o}=e,s=r===void 0?`xs`:r,c=i===void 0?`outline`:i,l=o===void 0?`Copy link`:o,u=(0,q.useRef)(null),d;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(d={onCopy:()=>GO(u),onError:e=>KO(u,e),timeout:WO},t[0]=d):d=t[0];let{copyToClipboard:f,isCopied:p}=Os(d),m;t[1]!==f||t[2]!==n?(m=()=>f(n),t[1]=f,t[2]=n,t[3]=m):m=t[3];let h;t[4]===a?h=t[5]:(h=G(a),t[4]=a,t[5]=h);let g;t[6]!==l||t[7]!==p||t[8]!==s||t[9]!==m||t[10]!==h||t[11]!==c?(g=(0,Y.jsx)(K,{"aria-label":l,disabled:p,onClick:m,ref:u,type:`button`,size:s,variant:c,className:h}),t[6]=l,t[7]=p,t[8]=s,t[9]=m,t[10]=h,t[11]=c,t[12]=g):g=t[12];let _;t[13]===p?_=t[14]:(_=p?(0,Y.jsx)(Jr,{className:`size-3 text-success`}):(0,Y.jsx)(Ii,{className:`size-3`}),t[13]=p,t[14]=_);let v;t[15]!==g||t[16]!==_?(v=(0,Y.jsx)(Po,{render:g,children:_}),t[15]=g,t[16]=_,t[17]=v):v=t[17];let y;t[18]===Symbol.for(`react.memo_cache_sentinel`)?(y=(0,Y.jsx)(Fo,{children:(0,Y.jsx)(`p`,{children:`Copy to clipboard`})}),t[18]=y):y=t[18];let b;return t[19]===v?b=t[20]:(b=(0,Y.jsxs)(Io,{children:[v,y]}),t[19]=v,t[20]=b),b});function JO(e){let t=e.replaceAll(`\\`,`/`).split(`/`);for(let e=t.length-1;e>=0;--e){let n=t[e];if(n)return n}return e}function YO(e){return(e??``).replace(/\s+(?:complete|completed|done|finished|success|succeeded|started|running)\s*$/i,``).toLowerCase().replace(/\s+/g,` `).trim()}var XO=new Set([`cat`,`nl`,`head`,`tail`,`sed`,`less`,`more`]),ZO=new Set([`rg`,`grep`,`ag`,`ack`]),QO=new Set([`find`,`fd`]),$O=new Set([`ls`]);function ek(e){return XO.has(e)||ZO.has(e)||QO.has(e)||$O.has(e)}function tk(e,t=!1){let n=Tk(xk(e)),[r,i]=bk(uk(n));if(XO.has(r))return{verb:t?`Reading`:`Read`,target:ok(i,`file`),fullCommand:e};if(ZO.has(r))return{verb:t?`Searching`:`Searched`,target:mk(i),fullCommand:e};if($O.has(r))return{verb:t?`Listing`:`Listed`,target:ok(i,`directory`),fullCommand:e};if(QO.has(r))return{verb:t?`Finding`:`Found`,target:sk(i,`files`),fullCommand:e};switch(r){case`mkdir`:return{verb:t?`Creating`:`Created`,target:ok(i,`directory`),fullCommand:e};case`rm`:return{verb:t?`Removing`:`Removed`,target:ok(i,`file`),fullCommand:e};case`cp`:case`mv`:return{verb:t?r===`cp`?`Copying`:`Moving`:r===`cp`?`Copied`:`Moved`,target:ok(i,`file`),fullCommand:e};case`git`:return rk(i,e,t);case`node`:case`bun`:case`deno`:case`python`:case`python3`:case`ruby`:case`perl`:return{verb:t?`Running`:`Ran`,target:dk(r,n,i)??lk(n),fullCommand:e};case`osascript`:return{verb:t?`Running`:`Ran`,target:`AppleScript`,fullCommand:e};default:return{verb:t?`Running`:`Ran`,target:lk(n),fullCommand:e}}}function nk(e){let[t]=bk(uk(Tk(xk(e))));return ek(t)?`inspect`:t===`git`?`git`:t===`gh`||t===`hub`?`github`:`terminal`}function rk(e,t,n){let r=ik(e);switch(r.split(/\s+/,1)[0]?.toLowerCase()??``){case`status`:return{verb:n?`Checking`:`Checked`,target:`git status`,fullCommand:t};case`diff`:return{verb:n?`Comparing`:`Compared`,target:`changes`,fullCommand:t};case`show`:return{verb:n?`Inspecting`:`Inspected`,target:`commit`,fullCommand:t};case`log`:return{verb:n?`Reviewing`:`Reviewed`,target:`git history`,fullCommand:t};case`add`:return{verb:n?`Staging`:`Staged`,target:`changes`,fullCommand:t};case`commit`:return{verb:n?`Committing`:`Committed`,target:`changes`,fullCommand:t};case`push`:return{verb:n?`Pushing`:`Pushed`,target:`to remote`,fullCommand:t};case`pull`:return{verb:n?`Pulling`:`Pulled`,target:`from remote`,fullCommand:t};case`checkout`:case`switch`:return{verb:n?`Switching to`:`Switched to`,target:ak(e),fullCommand:t};default:return{verb:n?`Running`:`Ran`,target:lk(`git ${r}`.trim()),fullCommand:t}}}function ik(e){let t=yk(e),n=0;for(;n<t.length;){let e=t[n];if(e===`-C`||e===`-c`||e===`--git-dir`||e===`--work-tree`){n+=2;continue}if(e.startsWith(`-C`)||e.startsWith(`-c`)||e.startsWith(`--git-dir=`)||e.startsWith(`--work-tree=`)){n+=1;continue}if(e.startsWith(`--`)){n+=1;continue}break}return t.slice(n).join(` `)}function ak(e){return yk(e).at(-1)?.trim()||`branch`}function ok(e,t){let n=yk(e);for(let e=n.length-1;e>=0;--e){let t=n[e].replace(/^['"]|['"]$/g,``);if(!(!t||t.startsWith(`-`)))return ck(t)}return t}function sk(e,t){let n=yk(e),r=!1;for(let e of n){if(r){r=!1;continue}if(e.startsWith(`-`)){(e===`-maxdepth`||e===`-mindepth`||e===`-name`||e===`-type`||e===`-path`)&&(r=!0);continue}return ck(e)}return t}function ck(e){if(e===`.`)return`current directory`;if(e===`..`)return`parent directory`;let t=e.split(/[\\/]/).filter(Boolean);return t.length<=2?e:t.slice(-2).join(`/`)}function lk(e){let t=e.replace(/\s+/g,` `).trim();return t.length<=140?t:`${t.slice(0,137).trimEnd()}...`}function uk(e){let t=wk(e);return t?e.slice(0,t.operatorStart).trim():e}function dk(e,t,n){let r=e===`python3`?`python`:e;return fk(t)||pk(n)?`${r} script`:null}function fk(e){return/(^|\s)<<-?\s*['"]?[A-Za-z0-9_]+/.test(e)}function pk(e){return yk(e).some(e=>e===`-e`||e===`-c`||e.startsWith(`-e=`))}function mk(e){let{pattern:t,path:n}=hk(e);return t&&n?`for ${t} in ${n}`:t?`for ${t}`:n?`in ${n}`:`files`}function hk(e){let t=yk(e),n=null,r=null,i=!1;for(let e of t){if(i){i=!1;continue}if(e.startsWith(`-`)){(e===`-t`||e===`-g`||e===`--type`||e===`--glob`||e===`--max-count`)&&(i=!0);continue}if(!n){let t=gk(e);if(!t){let t=_k(e);t&&(!r||r===`current directory`)&&(r=t);continue}n=t;continue}(!r||r===`current directory`)&&(r=_k(e)??r)}return n&&r===`current directory`&&vk(n)&&(r=_k(n),n=null),{pattern:n,path:r}}function gk(e){let t=e.trim();return!t||t===`.`||t===`..`||!/[a-z0-9]/i.test(t)?null:t.length>30?`${t.slice(0,27)}...`:t}function _k(e){let t=e.trim();return t?ck(t):null}function vk(e){return e.includes(`/`)||e.startsWith(`.`)||e.includes(`\\`)}function yk(e){let t=[],n=0;for(;n<e.length;){for(;e[n]===` `;)n+=1;if(n>=e.length)break;let r=e[n];if(r===`"`||r===`'`){n+=1;let i=``;for(;n<e.length&&e[n]!==r;){if(e[n]===`\\`&&n+1<e.length){i+=e[n+1],n+=2;continue}i+=e[n],n+=1}e[n]===r&&(n+=1),t.push(i);continue}let i=``;for(;n<e.length&&e[n]!==` `;)i+=e[n],n+=1;i&&t.push(i)}return t}function bk(e){let t=e.trim().replace(/\s+/g,` `);if(!t)return[``,``];let n=t.indexOf(` `);return n===-1?[JO(t).toLowerCase(),``]:[JO(t.slice(0,n)).toLowerCase(),t.slice(n+1).trim()]}function xk(e){let t=e.trim();if(!t)return t;let n=[`/usr/bin/bash -lc `,`/usr/bin/bash -c `,`/bin/bash -lc `,`/bin/bash -c `,`/usr/bin/zsh -lc `,`/usr/bin/zsh -c `,`/bin/zsh -lc `,`/bin/zsh -c `,`/bin/sh -lc `,`/bin/sh -c `,`bash -lc `,`bash -c `,`zsh -lc `,`zsh -c `,`sh -lc `,`sh -c `],r=t.toLowerCase();for(let e of n)if(r.startsWith(e)){t=t.slice(e.length).trim(),t.length>=2&&(t.startsWith(`"`)&&t.endsWith(`"`)||t.startsWith(`'`)&&t.endsWith(`'`))&&(t=t.slice(1,-1).trim()),t=Sk(t);break}let i=t.search(/\s*\|\s*/);return i>0&&(t=t.slice(0,i).trim()),t}function Sk(e){let t=e.trim();for(let e=0;e<4;e+=1){let e=wk(t);if(!e||!Ck(t.slice(0,e.operatorStart).trim()))return t;t=t.slice(e.commandStart).trim()}return t}function Ck(e){let t=e.replace(/\s+/g,` `).trim();return t?/^(?:builtin\s+)?cd\s+/.test(t)||/^(?:source|\.)\s+/.test(t)||/^set\s+[-+][A-Za-z]/.test(t)?!0:/^(?:export\s+)?[A-Za-z_][A-Za-z0-9_]*=\S+(?:\s+[A-Za-z_][A-Za-z0-9_]*=\S+)*$/.test(t):!1}function wk(e){let t=null;for(let n=0;n<e.length-1;n+=1){let r=e[n];if(r===`\\`&&n+1<e.length){n+=1;continue}if(t){r===t&&(t=null);continue}if(r===`"`||r===`'`){t=r;continue}let i=e[n+1];if(r===`&`&&i===`&`)return{operatorStart:n,commandStart:n+2};if(r===`;`)return{operatorStart:n,commandStart:n+1}}return null}function Tk(e){let t=e.replace(/\s+/g,` `).trim();for(let e=0;e<4;e+=1){let[e,n]=bk(t),r=e===`env`?Ek(n):e===`timeout`||e===`gtimeout`?Dk(n):e===`nice`?Ok(n):e===`arch`?kk(n):e===`command`?n:null;if(!r||r===t)return t;t=r.trim()}return t}function Ek(e){let t=yk(e),n=0;for(;n<t.length;){let e=t[n];if(e===`--`){n+=1;break}if(e===`-u`||e===`--unset`||e===`-C`||e===`--chdir`){n+=2;continue}if(e.startsWith(`--unset=`)||e.startsWith(`--chdir=`)){n+=1;continue}if(/^[A-Za-z_][A-Za-z0-9_]*=/.test(e)){n+=1;continue}if(e.startsWith(`-`)){n+=1;continue}break}return n<t.length?t.slice(n).join(` `):null}function Dk(e){let t=yk(e),n=0;for(;n<t.length&&t[n]?.startsWith(`-`);)n+=t[n]===`-s`||t[n]===`-k`?2:1;return n<t.length&&/^\d+(?:\.\d+)?[smhd]?$/.test(t[n])&&(n+=1),n<t.length?t.slice(n).join(` `):null}function Ok(e){let t=yk(e),n=0;if(t[n]===`-n`)n+=2;else for(;t[n]?.startsWith(`-`);)n+=1;return n<t.length?t.slice(n).join(` `):null}function kk(e){let t=yk(e),n=0;for(;t[n]?.startsWith(`-`);)n+=1;return n<t.length?t.slice(n).join(` `):null}function Ak(e){return e.tone===`error`||e.exitCode!==void 0&&e.exitCode!==0?`failed`:e.completed?`completed`:`running`}function jk(e){switch(e){case`running`:return`Running`;case`completed`:return`Completed`;case`failed`:return`Failed`}}function Mk(e,t){if(!e.startedAt)return null;let n=Date.parse(e.startedAt);if(Number.isNaN(n))return null;let r=e.lastActivityAt??e.createdAt,i=t??Date.parse(r);return Number.isNaN(i)||i<n?null:po(i-n)}function Nk(e){let t=[jk(Ak(e))],n=Mk(e);return n&&t.push(`${n} elapsed`),t.join(` · `)}function Pk(e,t){return e===1?t:`${t}s`}function Fk(e){return e.tone===`tool`}var Ik=new Set([`Read`,`Reading`]),Lk=new Set([`Searched`,`Searching`,`Found`,`Finding`]);function Rk(e){return Ik.has(e)?`read`:Lk.has(e)?`search`:`command`}function zk(e){if(e.requestKind===`file-change`||e.itemType===`file_change`||(e.changedFiles?.length??0)>0)return`edit`;if(e.requestKind===`file-read`)return`read`;if(e.itemType===`web_search`)return`search`;let t=e.command??e.rawCommand;return e.itemType===`command_execution`||e.requestKind===`command`||t?Rk(t?tk(t).verb:e.toolTitle?.trim().split(/\s+/,1)[0]??``):e.itemType===`collab_agent_tool_call`?`agent`:e.itemType===`mcp_tool_call`||e.itemType===`dynamic_tool_call`?`tool`:`other`}function Bk(e){if(e.changedFiles&&e.changedFiles.length>0)return e.changedFiles;let t=e.command??e.rawCommand;if(t){let e=tk(t).target.trim();if(e.length>0)return[e]}let n=e.detail?.trim();return n?[n]:[]}var Vk=[`command`,`edit`,`read`,`search`,`agent`,`tool`,`other`];function Hk(e,t,n){switch(e){case`command`:return`Ran ${t} ${Pk(t,`command`)}`;case`edit`:return`Edited ${t} ${Pk(t,`file`)}`;case`read`:return`Read ${t} ${Pk(t,`file`)}`;case`search`:return`Searched ${t} ${Pk(t,`file`)}`;case`agent`:return`Ran ${t} agent ${Pk(t,`task`)}`;case`tool`:return`Used ${t} ${Pk(t,`tool`)}`;case`other`:return n?`Ran ${t} tool ${Pk(t,`call`)}`:`${t} other tool ${Pk(t,`call`)}`}}function Uk(e){let t=e.filter(Fk);if(t.length<2||t.length!==e.length)return null;let n=new Map,r=new Map,i=!1;for(let e of t){Ak(e)===`running`&&(i=!0);let t=zk(e);if(t===`edit`||t===`read`){let i=Bk(e);if(i.length===0){n.set(t,(n.get(t)??0)+1);continue}let a=r.get(t);a||(a=new Set,r.set(t,a));for(let e of i)a.add(e);continue}n.set(t,(n.get(t)??0)+1)}for(let[e,t]of r)n.set(e,(n.get(e)??0)+t.size);let a=Vk.filter(e=>(n.get(e)??0)>0),o=a.map(e=>{let t=n.get(e);return{category:e,count:t,label:Hk(e,t,a.length===1)}});return{label:o.map(e=>e.label).join(`, `),parts:o,entryCount:t.length,hasRunningEntry:i,iconEntry:t[0]}}var Wk=`calc(100vh - 18rem)`,Gk=`22rem`,Kk=240;function qk(e){return`min(${Math.max(1,(e-1)*8)}px, ${Wk})`}function Jk(e,t){return t<=1?0:Math.max(0,Math.min(e,t-1))/(t-1)*100}function Yk(e){if(e.itemCount<=0||e.railHeight<=0)return null;if(e.itemCount===1)return 0;let t=Math.max(0,Math.min(1,(e.pointerY-e.railTop)/e.railHeight));return Math.max(0,Math.min(e.itemCount-1,Math.round(t*(e.itemCount-1))))}function Xk(e){return!Number.isFinite(e)||e<=0?!1:Math.max(0,(e-Math.min(e,768))/2)>=48}function Zk(e){if(!Number.isFinite(e)||e<=0)return 0;let t=Math.max(0,(e-Math.min(e,768))/2);return Math.max(0,Math.min(40,Math.floor(t)-12))}var Qk=.1,$k=1;function eA(e){let{scrollTop:t,scrollHeight:n,clientHeight:r}=e;return!Number.isFinite(t)||!Number.isFinite(n)||!Number.isFinite(r)||r<=0||n-r<=$k||n-t-r<r*Qk}function tA(e,t){return t?Gk:e}function nA(e){return{activeTurnInProgress:e.activeTurnInProgress,activeTurnId:e.activeTurnId,isWorking:e.isWorking,isRevertingCheckpoint:e.isRevertingCheckpoint,openDiffTurnId:e.openDiffTurnId,agentPanelModel:e.agentPanelModel}}function rA(e){return{timestampFormat:e.timestampFormat,routeThreadKey:e.routeThreadKey,markdownCwd:e.markdownCwd,resolvedTheme:e.resolvedTheme,workspaceRoot:e.workspaceRoot,skills:e.skills,activeThreadEnvironmentId:e.activeThreadEnvironmentId,highlightedMessageId:e.highlightedMessageId,threadMessageSearchQuery:e.threadMessageSearchQuery,threadMessageSearchOccurrencesByMessageId:e.threadMessageSearchOccurrencesByMessageId,activeThreadMessageSearchOccurrence:e.activeThreadMessageSearchOccurrence,onRevertUserMessage:e.onRevertUserMessage,onUndoTurn:e.onUndoTurn,onImageExpand:e.onImageExpand,onOpenTurnDiff:e.onOpenTurnDiff,onCloseDiff:e.onCloseDiff,onOpenAgents:e.onOpenAgents,onOpenMessageActions:e.onOpenMessageActions,...e.onInspectContextHandoff?{onInspectContextHandoff:e.onInspectContextHandoff}:{}}}function iA(e){return e.tone===`error`||e.exitCode!==void 0&&e.exitCode!==0}function aA(e){let t=[];for(let n=0;n<e.length;n+=1){let r=e[n];r?.kind===`message`&&r.message.role===`user`&&t.push({id:r.id,rowIndex:n,userText:sA(Ft(r.message.text).visibleText),assistantText:sA(oA(e,n))})}return t}function oA(e,t){let n=null;for(let r=t+1;r<e.length;r+=1){let t=e[r];if(t?.kind===`message`){if(t.message.role===`user`)break;t.message.role===`assistant`&&(n=t.message.text)}}return n}function sA(e){let t=e?.replace(/\s+/g,` `).trim()??``;return t.length===0?null:t.length<=Kk?t:`${t.slice(0,239)}…`}function cA(e){let t=new Map,n=null;for(let r of e)r.role===`user`&&(n=r.createdAt),t.set(r.id,n??r.createdAt),r.role===`assistant`&&r.completedAt&&(n=r.completedAt);return t}function lA(e){return e.replace(/\s+(?:complete|completed)\s*$/i,``).trim()}function uA({text:e,showCopyButton:t,streaming:n}){let r=e!==null&&e.trim().length>0;return{text:r?e:null,visible:t&&r&&!n}}function dA(e){let t=new Map,n=0;for(let r of e){if(r.kind!==`message`)continue;let{message:e}=r;if(e.role===`user`){n+=1;continue}if(e.role!==`assistant`)continue;let i=e.turnId?`turn:${e.turnId}`:`unkeyed:${n}`;t.set(i,e.id)}return new Set(t.values())}function fA(e,t){let n=Date.parse(e),r=Date.parse(t);return!Number.isFinite(n)||!Number.isFinite(r)?null:Math.max(0,r-n)}function pA(e,t){if(e===null)return t;if(t===null)return e;let n=Date.parse(e),r=Date.parse(t);return Number.isFinite(n)?Number.isFinite(r)&&r>n?t:e:t}function mA(e,t){return t===null?e?e.completedAt!==null&&e.state!==`running`?null:e.turnId:null:t}function hA(e){return e.kind===`message`&&e.message.role===`assistant`?e.message.turnId??null:e.kind===`work`?e.entry.turnId??null:null}function gA(e){return e.kind===`message`?e.message.completedAt??e.message.createdAt:e.createdAt}function _A(e){let t=new Map,n=null;for(let r of e.timelineEntries){if(r.kind===`message`&&r.message.role===`user`){n=r.message.createdAt;continue}let i=hA(r);if(!i)continue;let a=t.get(i);a||(a={entries:[],terminalEntry:null,hasStreamingMessage:!1,startBoundary:n},n=null,t.set(i,a)),a.entries.push(r),r.kind===`message`&&(e.terminalAssistantMessageIds.has(r.message.id)&&(a.terminalEntry=r),a.hasStreamingMessage||=r.message.streaming)}let r=new Map;for(let[n,i]of t){let t=n===e.unsettledTurnId;if(!t&&i.hasStreamingMessage)continue;let a=new Set;for(let e of i.entries)(e.kind!==`work`||e.entry.agentSpawn===void 0)&&(t||e.id!==i.terminalEntry?.id)&&a.add(e.id);if(a.size===0)continue;let o=i.entries[0],s=i.entries.at(-1);if(!o||!s)continue;let c=t?`running`:`settled`,l=`turn-fold:${c}:${n}`,u=(e.latestTurn?.turnId===n?e.latestTurn.startedAt:null)??(t?e.activeTurnStartedAt:null)??i.startBoundary??o.createdAt,d=null;if(!t){let t=e.latestTurn?.turnId===n?e.latestTurn.completedAt:null,r=pA(i.terminalEntry?gA(i.terminalEntry):null,gA(s))??gA(s),a=fA(u,t??r),o=a===null?null:po(a);d=e.latestTurn?.turnId===n&&e.latestTurn.state===`interrupted`?o?`You stopped after ${o}`:`You stopped this response`:o?`Worked for ${o}`:`Worked`}r.set(o.id,{turnId:n,foldId:l,createdAt:o.createdAt,status:c,durationStart:u,label:d,hiddenEntryIds:a,expanded:e.turnFoldExpandedById[l]??t})}return r}function vA(e){let t=new Map,n=null;for(let r of e.timelineEntries){if(r.kind!==`message`)continue;if(r.message.role===`user`){n=r.message.id;continue}if(!n)continue;let i=e.turnDiffSummaryByAssistantMessageId.get(r.message.id);if(!i)continue;let a=i.checkpointTurnCount??e.inferredCheckpointTurnCountByTurnId[i.turnId];typeof a==`number`&&t.set(n,Math.max(0,a-1)),n=null}return t}function yA(e){let t=new Map;for(let n of e.turnDiffSummaries){if(n.status===`missing`||n.status===`error`||n.checkpointRef===void 0||n.checkpointRef.startsWith(`provider-diff:`)||n.files.length===0)continue;let r=n.checkpointTurnCount??e.inferredCheckpointTurnCountByTurnId[n.turnId];typeof r==`number`&&t.set(n.turnId,Math.max(0,r-1))}return t}function bA(e){let t=[],n=cA(e.timelineEntries.flatMap(e=>e.kind===`message`?[e.message]:[])),r=dA(e.timelineEntries),i=mA(e.latestTurn??null,e.runningTurnId??null),a=_A({timelineEntries:e.timelineEntries,terminalAssistantMessageIds:r,latestTurn:e.latestTurn??null,unsettledTurnId:i,activeTurnStartedAt:e.activeTurnStartedAt,turnFoldExpandedById:e.turnFoldExpandedById??{}}),o=new Set;for(let e of a.values())if(!e.expanded)for(let t of e.hiddenEntryIds)o.add(t);let s=!1;for(let i=0;i<e.timelineEntries.length;i+=1){let c=e.timelineEntries[i];if(!c)continue;let l=a.get(c.id);if(l&&(s||=l.status===`running`,t.push({kind:`turn-fold`,id:l.foldId,createdAt:l.createdAt,turnId:l.turnId,foldId:l.foldId,status:l.status,durationStart:l.durationStart,label:l.label,expanded:l.expanded})),o.has(c.id))continue;if(c.kind===`work`){let n=[c.entry],r=i+1;for(;r<e.timelineEntries.length;){let t=e.timelineEntries[r];if(!t||t.kind!==`work`||o.has(t.id)||a.has(t.id))break;n.push(t.entry),r+=1}if(n.length<=1)t.push({kind:`work`,id:c.id,createdAt:c.createdAt,groupedEntries:n});else{let a=`work-group:${c.id}`,o=e.workGroupExpandedById?.[a]??!1,s=n.filter(e=>e.agentSpawn===void 0).slice(0,-1);if(s.length===0){t.push({kind:`work`,id:c.id,createdAt:c.createdAt,groupedEntries:n}),i=r-1;continue}let l=new Set(s.map(e=>e.id)),u=n.filter(e=>e.agentSpawn!==void 0||!l.has(e.id)),d=o?n:u;t.push({kind:`work-toggle`,id:`work-toggle:${c.id}`,createdAt:c.createdAt,groupId:a,hiddenCount:s.length,expanded:o,onlyToolEntries:s.every(e=>e.tone===`tool`),summary:Uk(s)});for(let e of d)t.push({kind:`work`,id:e.id,createdAt:e.createdAt,groupedEntries:[e]})}i=r-1;continue}if(c.kind===`proposed-plan`){t.push({kind:`proposed-plan`,id:c.id,createdAt:c.createdAt,proposedPlan:c.proposedPlan});continue}if(c.kind===`context-compaction`){t.push({kind:`context-compaction`,id:c.id,createdAt:c.createdAt,marker:c.marker});continue}if(c.kind===`context-handoff`){t.push({kind:`context-handoff`,id:c.id,createdAt:c.createdAt,marker:c.marker});continue}let u=c.message.role===`assistant`?e.turnDiffSummaryByAssistantMessageId.get(c.message.id):void 0;t.push({kind:`message`,id:c.id,createdAt:c.createdAt,message:c.message,durationStart:n.get(c.message.id)??c.message.createdAt,showAssistantCopyButton:c.message.role===`assistant`&&r.has(c.message.id),assistantTurnDiffSummary:u,revertTurnCount:c.message.role===`user`?e.revertTurnCountByUserMessageId.get(c.message.id):void 0,assistantUndoTurnCount:u?e.undoTurnCountByTurnId?.get(u.turnId):void 0})}return e.isWorking&&!s&&t.push({kind:`working`,id:`working-indicator-row`,createdAt:e.activeTurnStartedAt}),t}function xA(e,t){let n=new Map,r=e.length!==t.byId.size,i=e.map((e,i)=>{let a=t.byId.get(e.id),o=a&&SA(a,e)?a:e;return n.set(e.id,o),!r&&t.result[i]!==o&&(r=!0),o});return r?{byId:n,result:i}:t}function SA(e,t){if(e.kind!==t.kind||e.id!==t.id)return!1;switch(e.kind){case`working`:return e.createdAt===t.createdAt;case`turn-fold`:{let n=t;return e.createdAt===n.createdAt&&e.foldId===n.foldId&&e.status===n.status&&e.durationStart===n.durationStart&&e.label===n.label&&e.expanded===n.expanded}case`work-toggle`:{let n=t;return e.createdAt===n.createdAt&&e.groupId===n.groupId&&e.hiddenCount===n.hiddenCount&&e.expanded===n.expanded&&e.onlyToolEntries===n.onlyToolEntries&&e.summary?.label===n.summary?.label}case`proposed-plan`:return e.proposedPlan===t.proposedPlan;case`work`:return CA(e,t);case`context-compaction`:return e.marker===t.marker;case`context-handoff`:return e.marker===t.marker;case`message`:{let n=t;return wA(e.message,n.message)&&e.durationStart===n.durationStart&&e.showAssistantCopyButton===n.showAssistantCopyButton&&e.assistantTurnDiffSummary===n.assistantTurnDiffSummary&&e.revertTurnCount===n.revertTurnCount&&e.assistantUndoTurnCount===n.assistantUndoTurnCount}}}function CA(e,t){if(e.createdAt!==t.createdAt||e.groupedEntries.length!==t.groupedEntries.length)return!1;for(let n=0;n<e.groupedEntries.length;n+=1){let r=e.groupedEntries[n],i=t.groupedEntries[n];if(!r||!i||!TA(r,i))return!1}return!0}function wA(e,t){return e===t||e.id===t.id&&e.role===t.role&&e.text===t.text&&OA(e.attachments,t.attachments)&&e.turnId===t.turnId&&e.createdAt===t.createdAt&&e.completedAt===t.completedAt&&e.streaming===t.streaming}function TA(e,t){return e===t||e.id===t.id&&e.createdAt===t.createdAt&&e.label===t.label&&e.detail===t.detail&&e.command===t.command&&e.rawCommand===t.rawCommand&&DA(e.changedFiles,t.changedFiles)&&EA(e.changedFileStats,t.changedFileStats)&&e.completed===t.completed&&e.tone===t.tone&&e.toolTitle===t.toolTitle&&e.itemType===t.itemType&&e.requestKind===t.requestKind&&e.turnId===t.turnId&&e.output===t.output&&e.exitCode===t.exitCode&&e.startedAt===t.startedAt&&e.lastActivityAt===t.lastActivityAt}function EA(e,t){if(e===t)return!0;let n=e?.length??0;if(n!==(t?.length??0))return!1;for(let r=0;r<n;r+=1){let n=e?.[r],i=t?.[r];if(!n||!i||n.path!==i.path||n.kind!==i.kind||n.additions!==i.additions||n.deletions!==i.deletions)return!1}return!0}function DA(e,t){if(e===t)return!0;let n=e?.length??0;if(n!==(t?.length??0))return!1;for(let r=0;r<n;r+=1)if(e?.[r]!==t?.[r])return!1;return!0}function OA(e,t){if(e===t)return!0;let n=e?.length??0;if(n!==(t?.length??0))return!1;for(let r=0;r<n;r+=1){let n=e?.[r],i=t?.[r];if(!n||!i||!kA(n,i))return!1}return!0}function kA(e,t){return e===t||e.type===t.type&&e.id===t.id&&e.name===t.name&&e.mimeType===t.mimeType&&e.sizeBytes===t.sizeBytes&&e.previewUrl===t.previewUrl}function AA(e){let t=(0,J.c)(18),{target:n,onOpenChange:r,revertDisabled:i,onRevert:a}=e,o;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(o={onCopy:MA,onError:jA},t[0]=o):o=t[0];let{copyToClipboard:s}=Os(o),c=n!==null,l;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,Y.jsxs)(Fc,{children:[(0,Y.jsx)(Lc,{children:`Message actions`}),(0,Y.jsx)(Ic,{className:`sr-only`,children:`Actions for the selected message`})]}),t[1]=l):l=t[1];let u;t[2]!==s||t[3]!==r||t[4]!==n?(u=n?.copyText?(0,Y.jsx)(zc,{label:n.role===`assistant`?`Copy response`:`Copy message`,icon:(0,Y.jsx)(Ii,{"aria-hidden":!0,className:`size-4 shrink-0`}),onClick:()=>{r(!1),s(n.copyText??``)}}):null,t[2]=s,t[3]=r,t[4]=n,t[5]=u):u=t[5];let d;t[6]!==r||t[7]!==a||t[8]!==i||t[9]!==n?(d=n?.role===`user`&&n.canRevert?(0,Y.jsx)(zc,{label:`Revert to this message`,icon:(0,Y.jsx)(Xa,{"aria-hidden":!0,className:`size-4 shrink-0`}),disabled:i,disabledReason:`Reverting is unavailable while the session is busy.`,onClick:()=>{r(!1),a()}}):null,t[6]=r,t[7]=a,t[8]=i,t[9]=n,t[10]=d):d=t[10];let f;t[11]!==u||t[12]!==d?(f=(0,Y.jsx)(Nc,{children:(0,Y.jsxs)(`div`,{role:`group`,"aria-label":`Message actions`,className:`space-y-0.5`,children:[u,d]})}),t[11]=u,t[12]=d,t[13]=f):f=t[13];let p;return t[14]!==r||t[15]!==c||t[16]!==f?(p=(0,Y.jsxs)(Bc,{open:c,onOpenChange:r,label:`Message actions`,children:[l,f]}),t[14]=r,t[15]=c,t[16]=f,t[17]=p):p=t[17],p}function jA(e){ki.add(ks({type:`error`,title:`Failed to copy`,description:e.message}))}function MA(){ki.add({type:`success`,title:`Copied to clipboard`})}function NA(e){let t=`Context handoff from ${e.sources.map(JD).join(`, `)} to ${JD(e.target)}`;return e.status===`failed`?`${t}. Failed${e.error?`: ${e.error}`:``}`:e.status===`delivery-uncertain`?`${t}. Delivery uncertain${e.error?`: ${e.error}`:``}`:`${t}. Completed`}function PA(e){let t=(0,J.c)(36),{marker:n,failed:r,uncertain:i}=e,a=r?`bg-destructive/35`:i?`bg-warning/40`:`bg-border/60`,o;t[0]===a?o=t[1]:(o=G(`h-px min-w-2 flex-1`,a),t[0]=a,t[1]=o);let s;t[2]===o?s=t[3]:(s=(0,Y.jsx)(`span`,{className:o,"aria-hidden":!0}),t[2]=o,t[3]=s);let c=r?`text-destructive`:i?`text-warning-foreground`:`text-muted-foreground/75`,l;t[4]===c?l=t[5]:(l=G(`flex min-w-0 max-w-[calc(100%_-_2.5rem)] flex-wrap items-center justify-center gap-x-1.5 gap-y-1 text-[11px] leading-4`,c),t[4]=c,t[5]=l);let u,d;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,Y.jsx)(dl,{className:`size-3.5 shrink-0`}),d=(0,Y.jsx)(`span`,{className:`shrink-0 font-medium`,children:`Context handoff`}),t[6]=u,t[7]=d):(u=t[6],d=t[7]);let f;t[8]===n.sources?f=t[9]:(f=n.sources.map(FA),t[8]=n.sources,t[9]=f);let p;t[10]===f?p=t[11]:(p=(0,Y.jsx)(`span`,{className:`inline-flex min-w-0 max-w-full flex-wrap items-center justify-center gap-x-1.5 gap-y-1`,children:f}),t[10]=f,t[11]=p);let m;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(m=(0,Y.jsx)(fl,{className:`size-3.5 shrink-0 text-muted-foreground/55`}),t[12]=m):m=t[12];let h=!r&&!i&&`text-foreground/85`,g;t[13]===h?g=t[14]:(g=G(`font-medium`,h),t[13]=h,t[14]=g);let _;t[15]===n.target?_=t[16]:(_=(0,Y.jsx)(YD,{endpoint:n.target,className:`max-w-40 sm:max-w-56`}),t[15]=n.target,t[16]=_);let v;t[17]!==g||t[18]!==_?(v=(0,Y.jsx)(`span`,{className:g,children:_}),t[17]=g,t[18]=_,t[19]=v):v=t[19];let y;t[20]!==r||t[21]!==i?(y=r?(0,Y.jsxs)(`span`,{className:`inline-flex shrink-0 items-center gap-1 rounded-full bg-destructive/10 px-1.5 py-0.5 text-[10px] font-medium`,children:[(0,Y.jsx)(Di,{className:`size-3`}),`Failed`]}):i?(0,Y.jsxs)(`span`,{className:`inline-flex shrink-0 items-center gap-1 rounded-full bg-warning/15 px-1.5 py-0.5 text-[10px] font-medium`,children:[(0,Y.jsx)(li,{className:`size-3`}),`Delivery uncertain`]}):null,t[20]=r,t[21]=i,t[22]=y):y=t[22];let b;t[23]!==v||t[24]!==y||t[25]!==l||t[26]!==p?(b=(0,Y.jsxs)(`span`,{className:l,"aria-hidden":!0,children:[u,d,p,m,v,y]}),t[23]=v,t[24]=y,t[25]=l,t[26]=p,t[27]=b):b=t[27];let x=r?`bg-destructive/35`:i?`bg-warning/40`:`bg-border/60`,S;t[28]===x?S=t[29]:(S=G(`h-px min-w-2 flex-1`,x),t[28]=x,t[29]=S);let C;t[30]===S?C=t[31]:(C=(0,Y.jsx)(`span`,{className:S,"aria-hidden":!0}),t[30]=S,t[31]=C);let w;return t[32]!==b||t[33]!==C||t[34]!==s?(w=(0,Y.jsxs)(Y.Fragment,{children:[s,b,C]}),t[32]=b,t[33]=C,t[34]=s,t[35]=w):w=t[35],w}function FA(e,t){return(0,Y.jsxs)(`span`,{className:`inline-flex min-w-0 items-center gap-1.5`,children:[t>0?(0,Y.jsx)(`span`,{className:`text-muted-foreground/45`,children:`,`}):null,(0,Y.jsx)(YD,{endpoint:e,className:`max-w-40 sm:max-w-56`})]},`${e.providerInstanceId}:${e.modelSlug}`)}var IA=(0,q.memo)(function(e){let t=(0,J.c)(43),{marker:n,onInspect:r}=e,i;t[0]===n?i=t[1]:(i=NA(n),t[0]=n,t[1]=i);let a=i,o=n.status===`failed`,s=n.status===`delivery-uncertain`;if(!r){let e;t[2]!==o||t[3]!==n||t[4]!==s?(e=(0,Y.jsx)(PA,{marker:n,failed:o,uncertain:s}),t[2]=o,t[3]=n,t[4]=s,t[5]=e):e=t[5];let r;return t[6]!==a||t[7]!==n.handoffId||t[8]!==n.sources.length||t[9]!==n.status||t[10]!==e?(r=(0,Y.jsx)(`div`,{role:`status`,"aria-label":a,title:a,className:`flex w-full min-w-0 max-w-full items-center gap-2 overflow-hidden py-2 sm:gap-3`,"data-context-handoff-id":n.handoffId,"data-context-handoff-status":n.status,"data-context-handoff-source-count":n.sources.length,children:e}),t[6]=a,t[7]=n.handoffId,t[8]=n.sources.length,t[9]=n.status,t[10]=e,t[11]=r):r=t[11],r}let c;t[12]!==n||t[13]!==r?(c=e=>r(n,e.currentTarget),t[12]=n,t[13]=r,t[14]=c):c=t[14];let l;t[15]!==o||t[16]!==n||t[17]!==s?(l=(0,Y.jsx)(PA,{marker:n,failed:o,uncertain:s}),t[15]=o,t[16]=n,t[17]=s,t[18]=l):l=t[18];let u;t[19]!==a||t[20]!==n.handoffId||t[21]!==n.sources.length||t[22]!==n.status||t[23]!==c||t[24]!==l?(u=(0,Y.jsx)(`button`,{type:`button`,"aria-label":a,onClick:c,className:`group flex w-full min-w-0 max-w-full cursor-pointer items-center gap-2 overflow-hidden rounded-md py-2 outline-none transition-colors hover:bg-foreground/3 focus-visible:ring-1 focus-visible:ring-ring/60 sm:gap-3`,"data-context-handoff-id":n.handoffId,"data-context-handoff-status":n.status,"data-context-handoff-source-count":n.sources.length,children:l}),t[19]=a,t[20]=n.handoffId,t[21]=n.sources.length,t[22]=n.status,t[23]=c,t[24]=l,t[25]=u):u=t[25];let d=u,f;t[26]===d?f=t[27]:(f=(0,Y.jsx)(Po,{render:d}),t[26]=d,t[27]=f);let p=n.status===`consumed`?`Sent to model`:n.status===`failed`?`Context handoff failed`:`Delivery uncertain`,m;t[28]===p?m=t[29]:(m=(0,Y.jsx)(`p`,{className:`font-medium text-foreground`,children:p}),t[28]=p,t[29]=m);let h;t[30]===n.createdAt?h=t[31]:(h=new Date(n.createdAt).toLocaleString(),t[30]=n.createdAt,t[31]=h);let g;t[32]===h?g=t[33]:(g=(0,Y.jsx)(`p`,{children:h}),t[32]=h,t[33]=g);let _;t[34]===n.inspection?_=t[35]:(_=n.inspection?(0,Y.jsxs)(`p`,{children:[n.inspection.includedEntryCount??n.inspection.completeEntryCount,` of`,` `,n.inspection.completeEntryCount,` context entries`,n.inspection.truncated?` · trimmed to fit`:``]}):(0,Y.jsx)(`p`,{children:`Open to inspect the available context artifact.`}),t[34]=n.inspection,t[35]=_);let v;t[36]!==_||t[37]!==m||t[38]!==g?(v=(0,Y.jsx)(Fo,{className:`max-w-80 px-2 py-1.5`,side:`top`,children:(0,Y.jsxs)(`div`,{className:`space-y-1 text-left`,children:[m,g,_]})}),t[36]=_,t[37]=m,t[38]=g,t[39]=v):v=t[39];let y;return t[40]!==v||t[41]!==f?(y=(0,Y.jsxs)(Io,{children:[f,v]}),t[40]=v,t[41]=f,t[42]=y):y=t[42],y});function LA(){return typeof window>`u`?null:window}function RA(){return typeof document>`u`?null:document}function zA({intervalMs:e,windowTarget:t=LA(),documentTarget:n=RA(),now:r=Date.now}){let i=new Set,a=null,o=!1,s=()=>n?.visibilityState!==`hidden`,c=()=>{let e=r();for(let t of i)t(e)},l=()=>{a===null||!t||(t.clearInterval(a),a=null)},u=()=>{a!==null||!t||i.size===0||!s()||(a=t.setInterval(c,e))},d=()=>{if(!s()){l();return}c(),u()},f=()=>{o||!n||(n.addEventListener(`visibilitychange`,d),o=!0)},p=()=>{!o||!n||(n.removeEventListener(`visibilitychange`,d),o=!1)};return{subscribe(e){i.add(e),f(),e(r()),u();let t=!1;return()=>{t||(t=!0,i.delete(e),i.size===0&&(l(),p()))}}}}var BA=zA({intervalMs:1e3}),VA=/^(.*?)\s+line(?:s)?\s+(\d+)(?:-(\d+))?$/i;function HA(e){return e.map(e=>e.header.trim()).filter(e=>e.length>0).map(UA).join(` `)}function UA(e){let t=e.trim(),n=VA.exec(t);if(!n)return`@${t.toLowerCase().replace(/\s+/g,`-`)}`;let r=Number.parseInt(n[2]??``,10),i=Number.parseInt(n[3]??n[2]??``,10);return!Number.isFinite(r)||!Number.isFinite(i)?`@${t.toLowerCase().replace(/\s+/g,`-`)}`:cn({terminalLabel:n[1]?.trim()||`terminal`,lineStart:r,lineEnd:i})}function WA(e,t){let n=0;for(let r of t){let t=UA(r.header),i=e.indexOf(t,n);if(i===-1)return!1;n=i+t.length}return!0}var GA=`grid transition-[grid-template-rows,opacity] duration-[220ms] ease-out motion-reduce:transition-none`,KA=`grid-rows-[1fr] opacity-100`,qA=`grid-rows-[0fr] opacity-0`,JA=`min-h-0 overflow-hidden`,YA=`transition-[opacity,transform] duration-[220ms] ease-out motion-reduce:transition-none`,XA=`translate-y-0 opacity-100`,ZA=`-translate-y-1 opacity-0 pointer-events-none`,QA=`size-3.5 shrink-0 transition-transform duration-[220ms] ease-out motion-reduce:transition-none`;function $A(e,t){return G(GA,e?KA:qA,t)}function ej(e,t){return G(YA,e?XA:ZA,t)}function tj(e,t){return G(QA,e&&`rotate-90`,t)}function nj(e){let t=(0,J.c)(5),{open:n,className:r}=e,i;t[0]!==r||t[1]!==n?(i=tj(n,r),t[0]=r,t[1]=n,t[2]=i):i=t[2];let a;return t[3]===i?a=t[4]:(a=(0,Y.jsx)(ri,{"aria-hidden":`true`,className:i}),t[3]=i,t[4]=a),a}function rj(e){let t=(0,J.c)(14),{open:n,children:r,className:i,contentClassName:a}=e,o;t[0]!==i||t[1]!==n?(o=$A(n,i),t[0]=i,t[1]=n,t[2]=o):o=t[2];let s=!n||void 0,c=!n,l;t[3]!==a||t[4]!==n?(l=ej(n,a),t[3]=a,t[4]=n,t[5]=l):l=t[5];let u;t[6]!==r||t[7]!==l?(u=(0,Y.jsx)(`div`,{className:JA,children:(0,Y.jsx)(`div`,{className:l,children:r})}),t[6]=r,t[7]=l,t[8]=u):u=t[8];let d;return t[9]!==o||t[10]!==s||t[11]!==c||t[12]!==u?(d=(0,Y.jsx)(`div`,{className:o,"aria-hidden":s,inert:c,children:u}),t[9]=o,t[10]=s,t[11]=c,t[12]=u,t[13]=d):d=t[13],d}var ij=(0,q.createContext)(null),aj=(0,q.createContext)(null),oj=()=>{},sj=(0,Y.jsx)(`div`,{className:`h-[var(--chat-header-clearance,0.75rem)] sm:h-[var(--chat-header-clearance,1rem)]`}),cj=(0,Y.jsx)(`div`,{className:`h-[var(--chat-composer-clearance,0.75rem)] sm:h-[var(--chat-composer-clearance,1rem)]`}),lj=[],uj=uo(),dj=()=>{},fj=new Map,pj={},mj=1800,hj=`size-6 min-w-6 rounded-md border-0 bg-transparent px-0 text-muted-foreground/45 shadow-none transition-[background-color,color,box-shadow] before:hidden hover:bg-foreground/8 hover:text-foreground/75 hover:shadow-sm/5 focus-visible:ring-1 focus-visible:ring-ring/60 disabled:hover:bg-transparent disabled:hover:text-muted-foreground/35`,gj=(0,q.memo)(function({agentPanelModel:e=uj,onOpenAgents:t=dj,isWorking:n,activeTurnInProgress:r,activeTurnId:i,latestTurn:a=null,activeTurnStartedAt:o,listRef:s,targetMessageId:c=null,targetMessageRequestId:l=0,targetMessageRowHighlight:u=!0,threadMessageSearchQuery:d=``,threadMessageSearchOccurrencesByMessageId:f=fj,activeThreadMessageSearchOccurrence:p=null,timelineEntries:m,turnDiffSummaryByAssistantMessageId:h,openDiffTurnId:g=null,routeThreadKey:_,onOpenTurnDiff:v,onCloseDiff:y,revertTurnCountByUserMessageId:b,undoTurnCountByTurnId:x,onRevertUserMessage:S,onUndoTurn:C,isRevertingCheckpoint:w,onImageExpand:T,activeThreadEnvironmentId:E,markdownCwd:D,resolvedTheme:O,timestampFormat:k,workspaceRoot:A,skills:j=lj,liveFollowEnabled:M=!0,onIsAtEndChange:N,onManualNavigation:P,onUserReachedEnd:F,canLoadOlder:I=!1,isLoadingOlder:L=!1,loadOlderError:R=null,onLoadOlder:z,onInspectContextHandoff:ee}){ei(`MessagesTimeline`);let te=wr(e=>e.threadTurnFoldExpandedById[_]??pj),ne=wr(e=>e.threadWorkGroupExpandedById[_]??pj),B=(0,q.useRef)(b);B.current=b;let re=(0,q.useRef)(x);re.current=x;let ie=Kj((0,q.useMemo)(()=>bA({timelineEntries:m,latestTurn:a,runningTurnId:n||r?i??null:null,turnFoldExpandedById:te,workGroupExpandedById:ne,isWorking:n,activeTurnStartedAt:o,turnDiffSummaryByAssistantMessageId:h,revertTurnCountByUserMessageId:B.current,undoTurnCountByTurnId:re.current}),[m,a,r,i,te,ne,n,o,h])),V=(0,q.useMemo)(()=>aA(ie),[ie]),[ae]=(0,q.useState)(()=>new Map),[oe,H]=(0,q.useState)(null),[se,ce]=(0,q.useState)(!1),[le,ue]=(0,q.useState)(0),[de,fe]=(0,q.useState)(null),[U,pe]=(0,q.useState)(null),me=(0,q.useRef)(!1),he=(0,q.useRef)(null),ge=(0,q.useCallback)(()=>{me.current=!0,he.current!==null&&window.clearTimeout(he.current),he.current=window.setTimeout(()=>{me.current=!1,he.current=null},800)},[]),_e=(0,q.useCallback)(e=>{pe(e)},[]),ve=(0,q.useCallback)(()=>{let e=s.current?.getScrollableNode?.();if(!(e instanceof HTMLElement))return null;let t=eA(e);return N(t),t},[s,N]),ye=(0,q.useCallback)(()=>{let e=ve(),t=s.current?.getScrollableNode?.();t instanceof HTMLElement&&t.scrollTop<=320&&I&&!L&&z?.(),e===!0&&me.current&&(me.current=!1,he.current!==null&&(window.clearTimeout(he.current),he.current=null),F?.());let n=s.current?.getState?.();if(!n||V.length===0)return;let r=n.scroll??0,i=r+(n.scrollLength??0);for(let e of V){let t=ae.get(e.id);if(!t)continue;let a=vj(n,e.rowIndex),o=yj(n,e.rowIndex),s=a!==null&&a<i&&a+Math.max(1,o??1)>r;t.dataset.inView=s?`true`:`false`}},[I,ve,L,s,V,ae,z,F]),be=(0,q.useMemo)(()=>(0,Y.jsxs)(Y.Fragment,{children:[sj,I||L||R?(0,Y.jsx)(`div`,{className:`mx-auto flex min-h-9 w-full max-w-3xl items-center justify-center px-3 pb-2 text-xs text-muted-foreground`,children:L?(0,Y.jsx)(`span`,{role:`status`,children:`Loading earlier history…`}):(0,Y.jsx)(K,{size:`sm`,variant:`ghost`,onClick:z,children:R?`Retry earlier history`:`Load earlier history`})}):null]}),[I,L,R,z]);(0,q.useEffect)(()=>{let e=null,t=null,n=r=>{t=window.requestAnimationFrame(()=>{t=null;let i=s.current?.getScrollableNode?.();if(!(i instanceof HTMLElement)){r>0&&n(r-1);return}let a=()=>i.scrollHeight-i.clientHeight>1,o=()=>!eA(i),c=()=>{ge(),P?.()},l=e=>{if(a()){if(e.deltaY<0){P?.();return}e.deltaY>0&&ge()}},u=()=>{ge(),o()&&P?.()},d=e=>{ge(),(e.target===i?a():o())&&P?.()},f=e=>{switch(e.key){case`PageUp`:case`Home`:case`ArrowUp`:a()&&c();break;case`PageDown`:case`End`:case`ArrowDown`:ge()}};i.addEventListener(`wheel`,l,{passive:!0}),i.addEventListener(`touchmove`,u,{passive:!0}),i.addEventListener(`pointerdown`,d,{passive:!0}),i.addEventListener(`keydown`,f),e=()=>{i.removeEventListener(`wheel`,l),i.removeEventListener(`touchmove`,u),i.removeEventListener(`pointerdown`,d),i.removeEventListener(`keydown`,f)}})};return n(12),()=>{t!==null&&window.cancelAnimationFrame(t),e?.()}},[s,ge,P]),(0,q.useEffect)(()=>()=>{he.current!==null&&window.clearTimeout(he.current)},[]),(0,q.useEffect)(()=>{let e=requestAnimationFrame(ye);return()=>cancelAnimationFrame(e)},[ye,ie.length]),(0,q.useEffect)(()=>{if(!oe)return;let e=s.current?.getState?.();if(!e?.listen)return;let t=[e.listen(`totalSize`,ve),e.listen(`headerSize`,ve),e.listen(`footerSize`,ve)];return()=>{for(let e of t)e()}},[ve,s,oe]),(0,q.useEffect)(()=>{if(!oe)return;let e=()=>{let e=oe.getBoundingClientRect().width,t=Xk(e);ce(e=>e===t?e:t),ue(Zk(e)),ve()},t=requestAnimationFrame(e),n=new ResizeObserver(e);return n.observe(oe),()=>{cancelAnimationFrame(t),n.disconnect()}},[ve,oe]);let xe=(0,q.useRef)(ie.length);(0,q.useEffect)(()=>{let e=xe.current;if(xe.current=ie.length,e>0||ie.length===0)return;N(!0);let t=window.requestAnimationFrame(()=>{s.current?.scrollToEnd?.({animated:!1})});return()=>{window.cancelAnimationFrame(t)}},[s,N,ie.length]),(0,q.useEffect)(()=>{if(c===null){fe(null);return}let e=ie.findIndex(e=>e.kind===`message`&&e.message.id===c);if(e<0){fe(null);return}fe(u?c:null),P?.(),s.current?.scrollToIndex?.({animated:!0,index:e,viewPosition:.45});let t=window.requestAnimationFrame(()=>{if(!u){let e=document.querySelector(`[data-thread-message-search-active="true"]`);if(e){e.scrollIntoView({behavior:`smooth`,block:`center`});return}}for(let e of document.querySelectorAll(`[data-message-id]`))if(e.dataset.messageId===c){e.scrollIntoView({behavior:`smooth`,block:`center`});break}}),n=window.setTimeout(()=>{fe(e=>e===c?null:e)},mj);return()=>{window.cancelAnimationFrame(t),window.clearTimeout(n)}},[s,P,ie,c,l,u]);let Se=(0,q.useMemo)(()=>nA({activeTurnInProgress:r,activeTurnId:i??null,isWorking:n,isRevertingCheckpoint:w,openDiffTurnId:g,agentPanelModel:e}),[r,i,e,n,w,g]),Ce=(0,q.useMemo)(()=>rA({timestampFormat:k,routeThreadKey:_,markdownCwd:D,resolvedTheme:O,workspaceRoot:A,skills:j,activeThreadEnvironmentId:E,highlightedMessageId:de,threadMessageSearchQuery:d,threadMessageSearchOccurrencesByMessageId:f,activeThreadMessageSearchOccurrence:p,onRevertUserMessage:S,onUndoTurn:C,onImageExpand:T,onOpenTurnDiff:v,onCloseDiff:y??oj,onOpenAgents:t,onOpenMessageActions:_e,...ee?{onInspectContextHandoff:ee}:{}}),[k,_,D,O,A,j,E,de,d,f,p,S,C,T,v,y,t,_e,ee]),we=(0,q.useCallback)(({item:e})=>(0,Y.jsx)(`div`,{className:`mx-auto w-full min-w-0 max-w-3xl overflow-x-hidden`,"data-timeline-root":`true`,children:(0,Y.jsx)(Tj,{row:e})}),[]);return ie.length===0&&!n?(0,Y.jsx)(`div`,{"aria-hidden":!0,className:`h-full`}):(0,Y.jsx)(aj.Provider,{value:Ce,children:(0,Y.jsxs)(ij.Provider,{value:Se,children:[(0,Y.jsxs)(`div`,{ref:H,className:`relative h-full min-h-0`,children:[(0,Y.jsx)(zi,{ref:s,data:ie,keyExtractor:_j,renderItem:we,estimatedItemSize:56,recycleItems:!1,initialScrollAtEnd:!0,maintainScrollAtEnd:M,maintainScrollAtEndThreshold:.1,maintainVisibleContentPosition:!0,onScroll:ye,className:`h-full overflow-x-hidden overscroll-y-contain px-3 [scrollbar-width:none] sm:px-5 [&::-webkit-scrollbar]:hidden`,ListHeaderComponent:be,ListFooterComponent:cj}),(0,Y.jsx)(xj,{hasPersistentGutter:se,hitStripWidth:le,items:V,stripMap:ae,onSelect:e=>{ge(),P?.(),s.current?.scrollToIndex({index:e.rowIndex,animated:!0,viewOffset:24})}})]}),(0,Y.jsx)(AA,{target:U,onOpenChange:e=>{e||pe(null)},revertDisabled:w||n,onRevert:()=>{U&&S(U.messageId)}})]})})});function _j(e){return e.id}function vj(e,t){let n=e.positionAtIndex?.(t);return typeof n==`number`&&Number.isFinite(n)?n:null}function yj(e,t){let n=e.sizeAtIndex?.(t);return typeof n==`number`&&Number.isFinite(n)?n:null}function bj(e){return e instanceof Element&&e.closest(`[data-minimap-preview]`)!==null}function xj(e){let t=(0,J.c)(56),{hasPersistentGutter:n,hitStripWidth:r,items:i,stripMap:a,onSelect:o}=e,[s,c]=(0,q.useState)(null),l=s!==null&&s<i.length?s:null,u=l===null?null:i[l]??null,d;t[0]!==i.length||t[1]!==l?(d=l===null?0:Jk(l,i.length),t[0]=i.length,t[1]=l,t[2]=d):d=t[2];let f=d,p=l===null?`-50%`:l===0?`0%`:l===i.length-1?`-100%`:`-50%`,m;t[3]===i.length?m=t[4]:(m=e=>{let t=e.currentTarget.getBoundingClientRect();return Yk({itemCount:i.length,railTop:t.top,railHeight:t.height,pointerY:e.clientY})},t[3]=i.length,t[4]=m);let h=m,g;t[5]===h?g=t[6]:(g=e=>{c(h(e))},t[5]=h,t[6]=g);let _=g,v;t[7]===i.length?v=t[8]:(v=e=>{c(t=>{let n=t??0;return Math.max(0,Math.min(i.length-1,n+e))})},t[7]=i.length,t[8]=v);let y=v;if(i.length<2)return null;let b=n?`true`:`false`,x=`Jump to message: ${u?.userText??`User message`}`,S=r>0?`pointer-events-auto`:`pointer-events-none`,C;t[9]===S?C=t[10]:(C=G(`absolute top-1/2 left-3 -translate-y-1/2 cursor-pointer bg-transparent focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring/70`,S),t[9]=S,t[10]=C);let w;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(w=()=>c(null),t[11]=w):w=t[11];let T;t[12]!==i||t[13]!==o||t[14]!==h?(T=e=>{if(bj(e.target))return;let t=h(e),n=t===null?null:i[t]??null;n&&o(n),e.currentTarget.blur()},t[12]=i,t[13]=o,t[14]=h,t[15]=T):T=t[15];let E;t[16]===Symbol.for(`react.memo_cache_sentinel`)?(E=()=>c(wj),t[16]=E):E=t[16];let D;t[17]!==u||t[18]!==i.length||t[19]!==y||t[20]!==o?(D=e=>{e.key===`ArrowDown`?(e.preventDefault(),y(1)):e.key===`ArrowUp`?(e.preventDefault(),y(-1)):e.key===`Home`?(e.preventDefault(),c(0)):e.key===`End`?(e.preventDefault(),c(i.length-1)):(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),u&&o(u))},t[17]=u,t[18]=i.length,t[19]=y,t[20]=o,t[21]=D):D=t[21];let O;t[22]===Symbol.for(`react.memo_cache_sentinel`)?(O=()=>c(null),t[22]=O):O=t[22];let k;t[23]===i.length?k=t[24]:(k=qk(i.length),t[23]=i.length,t[24]=k);let A=u!==null,j;t[25]!==r||t[26]!==A?(j=tA(r,A),t[25]=r,t[26]=A,t[27]=j):j=t[27];let M;t[28]!==k||t[29]!==j?(M={height:k,width:j},t[28]=k,t[29]=j,t[30]=M):M=t[30];let N;t[31]===Symbol.for(`react.memo_cache_sentinel`)?(N=(0,Y.jsx)(`span`,{"aria-hidden":`true`,className:`absolute top-0 left-3 h-full w-px bg-border/15`}),t[31]=N):N=t[31];let P;if(t[32]!==i||t[33]!==l||t[34]!==a){let e;t[36]!==i.length||t[37]!==l||t[38]!==a?(e=(e,t)=>{let n=l===null?null:Math.abs(t-l);return(0,Y.jsx)(`span`,{"aria-hidden":`true`,className:G(`pointer-events-none absolute left-0 h-0.5 -translate-y-1/2 rounded-full bg-muted-foreground/35 transition-[background-color,width] duration-150 data-[in-view=true]:bg-foreground/90`,n===0?`w-6 bg-muted-foreground/75`:n===1?`w-4`:n===2?`w-2.5`:`w-2`),"data-in-view":`false`,"data-minimap-message-id":e.id,"data-minimap-strip":!0,ref:t=>{t?a.set(e.id,t):a.delete(e.id)},style:{top:`${Jk(t,i.length)}%`}},e.id)},t[36]=i.length,t[37]=l,t[38]=a,t[39]=e):e=t[39],P=i.map(e),t[32]=i,t[33]=l,t[34]=a,t[35]=P}else P=t[35];let F;t[40]!==u||t[41]!==p||t[42]!==f?(F=u?(0,Y.jsx)(`span`,{className:`pointer-events-auto absolute left-8 w-80 cursor-text select-text`,"data-minimap-preview":!0,onMouseMove:Sj,style:{top:`${f}%`,transform:`translateY(${p})`},children:(0,Y.jsxs)(`span`,{className:`selection-glass-surface block rounded-xl border p-3 text-left text-popover-foreground`,children:[(0,Y.jsx)(`span`,{className:`block max-w-full overflow-hidden text-ellipsis whitespace-nowrap text-sm font-medium leading-5`,children:u.userText??`User message`}),u.assistantText?(0,Y.jsx)(`span`,{className:`mt-1 max-h-[3.75rem] overflow-hidden text-muted-foreground text-sm leading-5`,style:{display:`-webkit-box`,WebkitBoxOrient:`vertical`,WebkitLineClamp:3},children:u.assistantText}):null]})}):null,t[40]=u,t[41]=p,t[42]=f,t[43]=F):F=t[43];let I;t[44]!==T||t[45]!==D||t[46]!==M||t[47]!==P||t[48]!==F||t[49]!==x||t[50]!==C||t[51]!==_?(I=(0,Y.jsx)(`div`,{className:`relative h-full w-full select-none`,children:(0,Y.jsxs)(`button`,{"aria-label":x,className:C,"data-testid":`timeline-minimap-hit-strip`,onBlur:w,onClick:T,onFocus:E,onKeyDown:D,onMouseDown:Cj,onMouseLeave:O,onMouseMove:_,style:M,type:`button`,children:[N,P,F]})}),t[44]=T,t[45]=D,t[46]=M,t[47]=P,t[48]=F,t[49]=x,t[50]=C,t[51]=_,t[52]=I):I=t[52];let L;return t[53]!==I||t[54]!==b?(L=(0,Y.jsx)(`div`,{className:`group/minimap pointer-events-none absolute inset-y-0 left-0 z-40 hidden w-18 opacity-100 [@media(pointer:fine)]:block`,"data-persistent-gutter":b,"data-testid":`timeline-minimap`,children:I}),t[53]=I,t[54]=b,t[55]=L):L=t[55],L}function Sj(e){return e.stopPropagation()}function Cj(e){bj(e.target)||e.preventDefault()}function wj(e){return e??0}function Tj(e){let t=(0,J.c)(71),{row:n}=e,r=(0,q.use)(aj),i=(0,q.use)(ij),a;t[0]!==r||t[1]!==i?(a={...r,...i},t[0]=r,t[1]=i,t[2]=a):a=t[2];let o=a,s=Ls()===`phone`,c;t[3]!==o||t[4]!==n?(c=()=>{if(n.kind!==`message`)return;if(n.message.role===`user`){let e=Ft(n.message.text).copyText??null,t=typeof n.revertTurnCount==`number`;if(e===null&&!t)return;o.onOpenMessageActions({messageId:n.message.id,role:`user`,copyText:e,canRevert:t});return}if(n.message.role!==`assistant`)return;let e=Jj(n,o),t=e.visible?e.text??null:null;t!==null&&o.onOpenMessageActions({messageId:n.message.id,role:`assistant`,copyText:t,canRevert:!1})},t[3]=o,t[4]=n,t[5]=c):c=t[5];let l=!s||n.kind!==`message`,u;t[6]===l?u=t[7]:(u={disabled:l},t[6]=l,t[7]=u);let d=Hc(c,u),f=n.kind===`message`&&o.highlightedMessageId===n.message.id,p;t[8]!==o||t[9]!==n.kind||t[10]!==n.message?(p=n.kind===`message`?o.threadMessageSearchOccurrencesByMessageId.get(n.message.id):void 0,t[8]=o,t[9]=n.kind,t[10]=n.message,t[11]=p):p=t[11];let m=p,h;t[12]!==o||t[13]!==m||t[14]!==n.kind||t[15]!==n.message?(h=n.kind===`message`&&m!==void 0&&m.length>0&&o.threadMessageSearchQuery.trim().length>0?{query:o.threadMessageSearchQuery,activeOccurrenceIndex:o.activeThreadMessageSearchOccurrence?.messageId===n.message.id?o.activeThreadMessageSearchOccurrence.messageOccurrenceIndex:null}:void 0,t[12]=o,t[13]=m,t[14]=n.kind,t[15]=n.message,t[16]=h):h=t[16];let g=h,_=n.kind===`work`?`pb-0.5`:n.kind===`work-toggle`||n.kind===`message`&&n.message.role===`assistant`&&!n.showAssistantCopyButton?`pb-2`:`pb-4`,v=n.kind===`message`?`scroll-mt-12 rounded-xl transition-[background-color,box-shadow] duration-500`:null,y=f?`bg-primary/10 ring-1 ring-primary/30`:null,b=n.kind===`message`&&n.message.role===`assistant`?`group/assistant`:null,x;t[17]!==v||t[18]!==y||t[19]!==b||t[20]!==_?(x=G(_,v,y,b),t[17]=v,t[18]=y,t[19]=b,t[20]=_,t[21]=x):x=t[21];let S=n.kind===`message`?n.message.id:void 0,C=f?`true`:void 0,w=n.kind===`message`?n.message.role:void 0,T;t[22]!==n.groupedEntries||t[23]!==n.kind?(T=n.kind===`work`&&(0,Y.jsx)(Pj,{groupedEntries:n.groupedEntries}),t[22]=n.groupedEntries,t[23]=n.kind,t[24]=T):T=t[24];let E;t[25]===n?E=t[26]:(E=n.kind===`work-toggle`&&(0,Y.jsx)(Ij,{row:n}),t[25]=n,t[26]=E);let D;t[27]===n?D=t[28]:(D=n.kind===`turn-fold`&&(0,Y.jsx)(Dj,{row:n}),t[27]=n,t[28]=D);let O;t[29]!==n.createdAt||t[30]!==n.kind||t[31]!==n.marker?(O=n.kind===`context-compaction`&&(0,Y.jsx)(Rj,{createdAt:n.createdAt,label:n.marker.label}),t[29]=n.createdAt,t[30]=n.kind,t[31]=n.marker,t[32]=O):O=t[32];let k;t[33]!==o||t[34]!==n.kind||t[35]!==n.marker?(k=n.kind===`context-handoff`&&(0,Y.jsx)(IA,{marker:n.marker,...o.onInspectContextHandoff?{onInspect:o.onInspectContextHandoff}:{}}),t[33]=o,t[34]=n.kind,t[35]=n.marker,t[36]=k):k=t[36];let A;t[37]!==o||t[38]!==d||t[39]!==g||t[40]!==n.kind||t[41]!==n.message||t[42]!==n.revertTurnCount?(A=n.kind===`message`&&n.message.role===`user`&&(()=>{let e=n.message.attachments??[],t=Ft(n.message.text),r=t.contexts,i=typeof n.revertTurnCount==`number`;return(0,Y.jsx)(`div`,{className:`flex justify-end`,children:(0,Y.jsxs)(`div`,{className:`group flex max-w-[80%] flex-col items-end`,children:[(0,Y.jsxs)(`div`,{className:`relative rounded-2xl rounded-br-sm bg-foreground/8 px-3 py-2 shadow-md/5 transition-[background-color,box-shadow] duration-200 group-hover:bg-foreground/10 group-hover:shadow-lg/8`,...d,children:[e.length>0&&(0,Y.jsx)(`div`,{className:`mb-2 grid max-w-[420px] grid-cols-2 gap-2`,children:e.map(t=>(0,Y.jsx)(`div`,{className:`overflow-hidden rounded-lg border border-border/80 bg-background/70`,children:t.previewUrl?(0,Y.jsx)(`button`,{type:`button`,className:`h-full w-full cursor-zoom-in`,"aria-label":`Preview ${t.name}`,onClick:()=>{let n=hD(e,t.id);n&&o.onImageExpand(n)},children:(0,Y.jsx)(`img`,{src:t.previewUrl,alt:t.name,className:`block h-auto max-h-[220px] w-full object-cover`})}):(0,Y.jsx)(`div`,{className:`flex min-h-[72px] items-center justify-center px-2 py-3 text-center text-[11px] text-muted-foreground/70`,children:(0,Y.jsxs)(`span`,{children:[t.name,(0,Y.jsx)(`span`,{className:`mt-1 block`,children:`Preview unavailable on this connection.`})]})})},t.id))}),(t.visibleText.trim().length>0||r.length>0)&&(0,Y.jsx)(Gj,{text:t.visibleText,terminalContexts:r,skills:o.skills,searchHighlight:g})]}),(0,Y.jsxs)(`div`,{className:`mt-1 flex items-center justify-end gap-2`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center gap-1.5 opacity-0 transition-opacity duration-200 focus-within:opacity-100 group-hover:opacity-100 phone:opacity-100`,children:[t.copyText&&(0,Y.jsx)(qO,{text:t.copyText,size:`icon-xs`,variant:`ghost`,className:hj,ariaLabel:`Copy message`}),i&&(0,Y.jsx)(K,{type:`button`,size:`icon-xs`,variant:`ghost`,className:hj,disabled:o.isRevertingCheckpoint||o.isWorking,onClick:()=>o.onRevertUserMessage(n.message.id),title:`Revert to this message`,children:(0,Y.jsx)(Xa,{className:`size-3`})})]}),(0,Y.jsxs)(`p`,{className:`text-right text-[11px] text-muted-foreground/50`,children:[n.message.dispatchMode===`steer`?`Steered · `:``,So(n.message.createdAt,o.timestampFormat)]})]})]})})})(),t[37]=o,t[38]=d,t[39]=g,t[40]=n.kind,t[41]=n.message,t[42]=n.revertTurnCount,t[43]=A):A=t[43];let j;t[44]!==o||t[45]!==d||t[46]!==g||t[47]!==n?(j=n.kind===`message`&&n.message.role===`assistant`&&(()=>{let e=n.message.text||(n.message.streaming?``:`(empty response)`),t=qj(n,o),r=Jj(n,o);return(0,Y.jsx)(Y.Fragment,{children:(0,Y.jsxs)(`div`,{className:`min-w-0 px-1 py-0.5`,...d,children:[(0,Y.jsx)(ca,{text:e,cwd:o.markdownCwd,isStreaming:t,skills:o.skills,searchHighlight:g}),!t&&(0,Y.jsx)(zj,{turnSummary:n.assistantTurnDiffSummary,undoTurnCount:n.assistantUndoTurnCount,routeThreadKey:o.routeThreadKey,resolvedTheme:o.resolvedTheme,openDiffTurnId:o.openDiffTurnId,onOpenTurnDiff:o.onOpenTurnDiff,onCloseDiff:o.onCloseDiff}),(0,Y.jsxs)(`div`,{className:`mt-1.5 flex items-center gap-2`,children:[(0,Y.jsx)(`p`,{className:`text-[10px] text-muted-foreground/30`,children:n.message.streaming?(0,Y.jsx)(jj,{createdAt:n.message.createdAt,durationStart:n.durationStart,timestampFormat:o.timestampFormat}):Qj(n.message.createdAt,yo(n.durationStart,n.message.completedAt),o.timestampFormat)}),r.visible?(0,Y.jsx)(`div`,{className:`flex items-center opacity-0 transition-opacity duration-200 group-hover/assistant:opacity-100 phone:opacity-100`,children:(0,Y.jsx)(qO,{text:r.text??``,size:`icon-xs`,variant:`ghost`,className:hj,ariaLabel:`Copy response`})}):null]})]})})})(),t[44]=o,t[45]=d,t[46]=g,t[47]=n,t[48]=j):j=t[48];let M;t[49]!==o||t[50]!==n.kind||t[51]!==n.proposedPlan?(M=n.kind===`proposed-plan`&&(0,Y.jsx)(`div`,{className:`min-w-0 px-1 py-0.5`,children:(0,Y.jsx)(BO,{planMarkdown:n.proposedPlan.planMarkdown,environmentId:o.activeThreadEnvironmentId,cwd:o.markdownCwd,workspaceRoot:o.workspaceRoot})}),t[49]=o,t[50]=n.kind,t[51]=n.proposedPlan,t[52]=M):M=t[52];let N;t[53]===n?N=t[54]:(N=n.kind===`working`&&(0,Y.jsx)(kj,{row:n}),t[53]=n,t[54]=N);let P;return t[55]!==n.id||t[56]!==n.kind||t[57]!==x||t[58]!==S||t[59]!==C||t[60]!==w||t[61]!==T||t[62]!==E||t[63]!==D||t[64]!==O||t[65]!==k||t[66]!==A||t[67]!==j||t[68]!==M||t[69]!==N?(P=(0,Y.jsxs)(`div`,{className:x,"data-timeline-row-id":n.id,"data-timeline-row-kind":n.kind,"data-message-id":S,"data-message-highlighted":C,"data-message-role":w,children:[T,E,D,O,k,A,j,M,N]}),t[55]=n.id,t[56]=n.kind,t[57]=x,t[58]=S,t[59]=C,t[60]=w,t[61]=T,t[62]=E,t[63]=D,t[64]=O,t[65]=k,t[66]=A,t[67]=j,t[68]=M,t[69]=N,t[70]=P):P=t[70],P}var Ej=`text-[13px] text-muted-foreground/70 tabular-nums`;function Dj(e){let t=(0,J.c)(23),{row:n}=e,{routeThreadKey:r}=(0,q.use)(aj),i=wr(Oj),a=n.status,o=n.expanded,s;t[0]!==r||t[1]!==n.expanded||t[2]!==n.foldId||t[3]!==i?(s=()=>i(r,n.foldId,!n.expanded),t[0]=r,t[1]=n.expanded,t[2]=n.foldId,t[3]=i,t[4]=s):s=t[4];let c;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(c=G(Ej,`flex cursor-pointer select-none items-center gap-1 pb-2 transition-colors duration-200 hover:text-muted-foreground/90 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring/70`),t[5]=c):c=t[5];let l;t[6]!==n.durationStart||t[7]!==n.label||t[8]!==n.status?(l=n.status===`running`?n.durationStart?(0,Y.jsxs)(Y.Fragment,{children:[`Working for `,(0,Y.jsx)(Aj,{createdAt:n.durationStart})]}):`Working…`:n.label??`Worked`,t[6]=n.durationStart,t[7]=n.label,t[8]=n.status,t[9]=l):l=t[9];let u;t[10]===l?u=t[11]:(u=(0,Y.jsx)(`span`,{children:l}),t[10]=l,t[11]=u);let d;t[12]===n.expanded?d=t[13]:(d=(0,Y.jsx)(nj,{open:n.expanded,className:`text-muted-foreground/55`}),t[12]=n.expanded,t[13]=d);let f;t[14]!==n.expanded||t[15]!==s||t[16]!==u||t[17]!==d?(f=(0,Y.jsxs)(`button`,{type:`button`,"aria-expanded":o,onClick:s,className:c,children:[u,d]}),t[14]=n.expanded,t[15]=s,t[16]=u,t[17]=d,t[18]=f):f=t[18];let p;t[19]===Symbol.for(`react.memo_cache_sentinel`)?(p=(0,Y.jsx)(`div`,{className:`h-px w-full bg-border`}),t[19]=p):p=t[19];let m;return t[20]!==n.status||t[21]!==f?(m=(0,Y.jsxs)(`div`,{className:`pt-1 pb-2`,"data-turn-fold-status":a,children:[f,p]}),t[20]=n.status,t[21]=f,t[22]=m):m=t[22],m}function Oj(e){return e.setThreadTurnFoldExpanded}function kj(e){let t=(0,J.c)(5),{row:n}=e,r;t[0]===n.createdAt?r=t[1]:(r=n.createdAt?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`div`,{className:G(Ej,`flex items-center pb-2`),children:[`Working for `,(0,Y.jsx)(Aj,{createdAt:n.createdAt})]}),(0,Y.jsx)(`div`,{className:`h-px w-full bg-border`})]}):null,t[0]=n.createdAt,t[1]=r);let i;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,Y.jsx)(`div`,{className:`pt-1.5 text-[13px] text-muted-foreground/70`,children:(0,Y.jsx)(`span`,{className:`shimmer thinking-status-shimmer`,children:`Thinking`})}),t[2]=i):i=t[2];let a;return t[3]===r?a=t[4]:(a=(0,Y.jsxs)(`div`,{className:`pt-1 pb-2`,children:[r,i]}),t[3]=r,t[4]=a),a}function Aj(e){let t=(0,J.c)(7),{createdAt:n}=e,r=(0,q.useRef)(null),i;t[0]===n?i=t[1]:(i=Xj(n),t[0]=n,t[1]=i);let a=i,o,s;t[2]===n?(o=t[3],s=t[4]):(o=()=>BA.subscribe(e=>{r.current&&(r.current.textContent=Xj(n,e))}),s=[n],t[2]=n,t[3]=o,t[4]=s),(0,q.useEffect)(o,s);let c;return t[5]===a?c=t[6]:(c=(0,Y.jsx)(`span`,{ref:r,children:a}),t[5]=a,t[6]=c),c}function jj(e){let t=(0,J.c)(11),{createdAt:n,durationStart:r,timestampFormat:i}=e,a=(0,q.useRef)(null),o;t[0]!==n||t[1]!==r||t[2]!==i?(o=Zj(n,r,i),t[0]=n,t[1]=r,t[2]=i,t[3]=o):o=t[3];let s=o,c,l;t[4]!==n||t[5]!==r||t[6]!==i?(c=()=>{let e=e=>{a.current&&(a.current.textContent=Zj(n,r,i,e))};if(!r){e(Date.now());return}return BA.subscribe(e)},l=[n,r,i],t[4]=n,t[5]=r,t[6]=i,t[7]=c,t[8]=l):(c=t[7],l=t[8]),(0,q.useEffect)(c,l);let u;return t[9]===s?u=t[10]:(u=(0,Y.jsx)(`span`,{ref:a,children:s}),t[9]=s,t[10]=u),u}var Mj=`group/tool-row grid min-h-[30px] w-full grid-cols-[1.25rem_minmax(0,1fr)_auto] items-center gap-x-2 rounded-md px-2 text-left`,Nj=`text-muted-foreground/70 transition-colors duration-200 group-hover/tool-row:text-foreground group-focus-visible/tool-row:text-foreground`,Pj=(0,q.memo)(function(e){let t=(0,J.c)(22),{groupedEntries:n}=e,{activeTurnId:r,isWorking:i}=(0,q.use)(ij),{workspaceRoot:a}=(0,q.use)(aj),o=Ls()===`phone`,s;t[0]===n?s=t[1]:(s=n.every(wM),t[0]=n,t[1]=s);let c=s,l=c?`Tool calls`:`Work log`,u;t[2]!==l||t[3]!==n.length||t[4]!==c?(u=!c&&(0,Y.jsx)(`div`,{className:`flex items-center gap-2 px-2`,children:(0,Y.jsxs)(`p`,{className:`text-[9px] uppercase tracking-[0.16em] text-muted-foreground/55`,children:[l,` (`,n.length,`)`]})}),t[2]=l,t[3]=n.length,t[4]=c,t[5]=u):u=t[5];let d;if(t[6]!==r||t[7]!==n||t[8]!==o||t[9]!==i||t[10]!==a){let e;t[12]!==r||t[13]!==o||t[14]!==i||t[15]!==a?(e=e=>{let t=i&&r!=null&&e.turnId===r;return e.agentSpawn&&!o?(0,Y.jsx)(Fj,{workEntry:e},`work-row:${e.id}`):lM(e)&&(e.changedFiles?.length??0)>0?(0,Y.jsx)(gM,{isEditing:t&&!e.completed&&!iA(e),workEntry:e,workspaceRoot:a},`work-row:${e.id}`):(0,Y.jsx)(yM,{workEntry:e,workspaceRoot:a},`work-row:${e.id}`)},t[12]=r,t[13]=o,t[14]=i,t[15]=a,t[16]=e):e=t[16],d=n.map(e),t[6]=r,t[7]=n,t[8]=o,t[9]=i,t[10]=a,t[11]=d}else d=t[11];let f;t[17]===d?f=t[18]:(f=(0,Y.jsx)(`div`,{className:`space-y-0.5`,children:d}),t[17]=d,t[18]=f);let p;return t[19]!==u||t[20]!==f?(p=(0,Y.jsxs)(`div`,{className:`space-y-1`,children:[u,f]}),t[19]=u,t[20]=f,t[21]=p):p=t[21],p}),Fj=(0,q.memo)(function(e){let t=(0,J.c)(44),{workEntry:n}=e,{agentPanelModel:r}=(0,q.use)(ij),{onOpenAgents:i}=(0,q.use)(aj),a=n.agentSpawn;if(!a)return null;let o;t[0]===a.agentTaskIds?o=t[1]:(o=new Set(a.agentTaskIds),t[0]=a.agentTaskIds,t[1]=o);let s=o,c,l,u,d,f,p,m,h,g;if(t[2]!==r||t[3]!==s||t[4]!==i||t[5]!==a.workflowId){let e=a.workflowId?r.workflows.find(e=>e.workflow.id===a.workflowId):void 0,n=e?[...e.phases.flatMap(TM),...e.unphasedMembers]:r.directAgents.filter(e=>s.has(e.id)),o=Math.max(n.length,Math.max(s.size-+!!a.workflowId,0)),_=n.filter(EM).length,v=n.filter(DM).length,y=n.filter(OM).length,b=e?.workflow.status,x=e===void 0?_+v>0:b!==`completed`&&b!==`failed`&&b!==`cancelled`&&b!==`interrupted`,S=n.reduce(kM,a.workflowId&&n.length===0?e?.workflow.usage?.totalTokens??0:0),C=e?.phases.find(AM),w=e?.workflow.workflowName??e?.workflow.title??null,T=_+v,E=x?`bg-info`:y>0?`bg-destructive`:`bg-success`,D=x?`Kicked off ${o} subagent${o===1?``:`s`}`:`Ran ${o} subagent${o===1?``:`s`}`,O=x?C?`${C.title} · ${C.activeCount} working`:T>0?`${T} working`:`Working`:y>0?`${y} failed`:`Completed`;d=`button`,f=i,p=x?`Open the Agents panel`:`View agents`,t[15]===Symbol.for(`react.memo_cache_sentinel`)?(m=G(Vc(`chip`),`group/agent-cta grid min-h-[36px] w-full grid-cols-[1.25rem_minmax(0,1fr)_auto_1.25rem] items-center gap-x-2 rounded-lg border border-border/50 px-2 text-left transition-colors hover:border-border/80 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring/70`),t[15]=m):m=t[15],t[16]===Symbol.for(`react.memo_cache_sentinel`)?(h=(0,Y.jsx)(`span`,{className:`flex size-5 items-center justify-center`,children:(0,Y.jsx)(qr,{"aria-hidden":!0,className:`size-3.5 text-muted-foreground/70 transition-colors group-hover/agent-cta:text-foreground`})}),t[16]=h):h=t[16];let k;t[17]===E?k=t[18]:(k=G(`size-1.5 shrink-0 rounded-full`,E),t[17]=E,t[18]=k);let A;t[19]===k?A=t[20]:(A=(0,Y.jsx)(`span`,{"aria-hidden":!0,className:k}),t[19]=k,t[20]=A);let j;t[21]===D?j=t[22]:(j=(0,Y.jsx)(`span`,{className:`font-medium text-foreground/90`,children:D}),t[21]=D,t[22]=j);let M=w?(0,Y.jsxs)(`span`,{className:`text-muted-foreground`,children:[` · `,w]}):null,N;t[23]!==j||t[24]!==M?(N=(0,Y.jsxs)(`span`,{className:`truncate text-[12px] leading-5`,children:[j,M]}),t[23]=j,t[24]=M,t[25]=N):N=t[25],t[26]!==A||t[27]!==N?(g=(0,Y.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2`,children:[A,N]}),t[26]=A,t[27]=N,t[28]=g):g=t[28],c=`flex shrink-0 items-center gap-2 text-[11px] leading-5 text-muted-foreground`,t[29]===O?l=t[30]:(l=(0,Y.jsx)(`span`,{children:O}),t[29]=O,t[30]=l),u=S>0?(0,Y.jsxs)(`span`,{className:`tabular-nums`,children:[oo(S),` tok`]}):null,t[2]=r,t[3]=s,t[4]=i,t[5]=a.workflowId,t[6]=c,t[7]=l,t[8]=u,t[9]=d,t[10]=f,t[11]=p,t[12]=m,t[13]=h,t[14]=g}else c=t[6],l=t[7],u=t[8],d=t[9],f=t[10],p=t[11],m=t[12],h=t[13],g=t[14];let _;t[31]!==c||t[32]!==l||t[33]!==u?(_=(0,Y.jsxs)(`span`,{className:c,children:[l,u]}),t[31]=c,t[32]=l,t[33]=u,t[34]=_):_=t[34];let v;t[35]===Symbol.for(`react.memo_cache_sentinel`)?(v=(0,Y.jsx)(`span`,{className:`flex size-5 items-center justify-center`,children:(0,Y.jsx)(ri,{"aria-hidden":!0,className:`size-3.5 text-muted-foreground/60 transition-[color,translate] group-hover/agent-cta:translate-x-0.5 group-hover/agent-cta:text-foreground`})}),t[35]=v):v=t[35];let y;return t[36]!==_||t[37]!==d||t[38]!==f||t[39]!==p||t[40]!==m||t[41]!==h||t[42]!==g?(y=(0,Y.jsxs)(`button`,{type:d,onClick:f,"aria-label":p,className:m,children:[h,g,_,v]}),t[36]=_,t[37]=d,t[38]=f,t[39]=p,t[40]=m,t[41]=h,t[42]=g,t[43]=y):y=t[43],y});function Ij(e){let t=(0,J.c)(23),{row:n}=e,{routeThreadKey:r}=(0,q.use)(aj),i=wr(Lj),a=n.onlyToolEntries?n.hiddenCount===1?`tool call`:`tool calls`:n.hiddenCount===1?`log entry`:`log entries`,o=n.summary&&!n.summary.hasRunningEntry?n.summary.label:`+${n.hiddenCount} previous ${a}`,s;t[0]===n.summary?s=t[1]:(s=n.summary?aM(n.summary.iconEntry):Xr,t[0]=n.summary,t[1]=s);let c=s,l=n.expanded,u;t[2]!==r||t[3]!==n.expanded||t[4]!==n.groupId||t[5]!==i?(u=()=>i(r,n.groupId,!n.expanded),t[2]=r,t[3]=n.expanded,t[4]=n.groupId,t[5]=i,t[6]=u):u=t[6];let d,f;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(d=G(Mj,`cursor-pointer focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring/70`),f=G(`flex size-5 items-center justify-center`,Nj),t[7]=d,t[8]=f):(d=t[7],f=t[8]);let p;t[9]===c?p=t[10]:(p=(0,Y.jsx)(`span`,{className:f,children:(0,Y.jsx)(c,{className:`size-3.5`,"aria-hidden":!0})}),t[9]=c,t[10]=p);let m;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(m=G(`truncate text-[12px] leading-5`,Nj),t[11]=m):m=t[11];let h;t[12]===o?h=t[13]:(h=(0,Y.jsx)(`span`,{className:m,children:o}),t[12]=o,t[13]=h);let g=n.expanded,_;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(_=G(`size-3`,Nj),t[14]=_):_=t[14];let v;t[15]===n.expanded?v=t[16]:(v=(0,Y.jsx)(`span`,{className:`flex size-5 items-center justify-center`,children:(0,Y.jsx)(nj,{open:g,className:_})}),t[15]=n.expanded,t[16]=v);let y;return t[17]!==n.expanded||t[18]!==v||t[19]!==u||t[20]!==p||t[21]!==h?(y=(0,Y.jsxs)(`button`,{type:`button`,"aria-expanded":l,onClick:u,"data-work-group-toggle":`true`,className:d,children:[p,h,v]}),t[17]=n.expanded,t[18]=v,t[19]=u,t[20]=p,t[21]=h,t[22]=y):y=t[22],y}function Lj(e){return e.setThreadWorkGroupExpanded}var Rj=(0,q.memo)(function(e){let t=(0,J.c)(16),{createdAt:n,label:r}=e,{timestampFormat:i}=(0,q.use)(aj),a;t[0]!==n||t[1]!==i?(a=So(n,i),t[0]=n,t[1]=i,t[2]=a):a=t[2];let o=a,s=`${r} at ${o}`,c;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,Y.jsx)(`span`,{className:`h-px flex-1 bg-border/55`}),t[3]=c):c=t[3];let l;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,Y.jsx)(`span`,{className:`size-1.5 shrink-0 rounded-full bg-muted-foreground/35`}),t[4]=l):l=t[4];let u;t[5]===r?u=t[6]:(u=(0,Y.jsx)(`span`,{className:`truncate`,children:r}),t[5]=r,t[6]=u);let d;t[7]===o?d=t[8]:(d=(0,Y.jsx)(`span`,{className:`shrink-0 font-normal normal-case tracking-normal text-muted-foreground/45`,children:o}),t[7]=o,t[8]=d);let f;t[9]!==u||t[10]!==d?(f=(0,Y.jsxs)(`span`,{className:`inline-flex min-w-0 max-w-full items-center gap-2 rounded-full border border-border/60 bg-muted/35 px-2.5 py-1 text-[10px] font-medium uppercase tracking-[0.14em] text-muted-foreground/75`,children:[l,u,d]}),t[9]=u,t[10]=d,t[11]=f):f=t[11];let p;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(p=(0,Y.jsx)(`span`,{className:`h-px flex-1 bg-border/55`}),t[12]=p):p=t[12];let m;return t[13]!==s||t[14]!==f?(m=(0,Y.jsxs)(`div`,{className:`flex items-center gap-3 py-1.5`,"aria-label":s,children:[c,f,p]}),t[13]=s,t[14]=f,t[15]=m):m=t[15],m}),zj=(0,q.memo)(function(e){let t=(0,J.c)(9),{turnSummary:n,undoTurnCount:r,routeThreadKey:i,resolvedTheme:a,openDiffTurnId:o,onOpenTurnDiff:s,onCloseDiff:c}=e;if(!n)return null;let l=n.files;if(l.length===0)return null;let u;return t[0]!==l||t[1]!==c||t[2]!==s||t[3]!==o||t[4]!==a||t[5]!==i||t[6]!==n||t[7]!==r?(u=(0,Y.jsx)(Vj,{turnSummary:n,checkpointFiles:l,undoTurnCount:r,routeThreadKey:i,resolvedTheme:a,openDiffTurnId:o,onOpenTurnDiff:s,onCloseDiff:c}),t[0]=l,t[1]=c,t[2]=s,t[3]=o,t[4]=a,t[5]=i,t[6]=n,t[7]=r,t[8]=u):u=t[8],u}),Bj=6;function Vj(e){let t=(0,J.c)(90),{turnSummary:n,checkpointFiles:r,undoTurnCount:i,routeThreadKey:a,resolvedTheme:o,openDiffTurnId:s,onOpenTurnDiff:c,onCloseDiff:l}=e,{onUndoTurn:u}=(0,q.use)(aj),{isRevertingCheckpoint:d}=(0,q.use)(ij),f;t[0]!==a||t[1]!==n.turnId?(f=e=>e.threadChangedFilesExpandedById[a]?.[n.turnId]??!0,t[0]=a,t[1]=n.turnId,t[2]=f):f=t[2];let p=wr(f),m=wr(Hj),[h,g]=(0,q.useState)(!1),_,v,y,b,x,S,C,w,T,E,D;if(t[3]!==r||t[4]!==p||t[5]!==h||t[6]!==s||t[7]!==n.turnId||t[8]!==i){let e=da(r);v=s===n.turnId;let a=`Edited ${r.length} ${r.length===1?`file`:`files`}`,o;t[20]!==r||t[21]!==h?(o=h?r:r.slice(0,Bj),t[20]=r,t[21]=h,t[22]=o):o=t[22],D=o,y=r.length-D.length,_=i!==void 0,E=`chat-final-diff-section mt-2 mb-1 overflow-hidden rounded-[0.65rem] border border-border/70`;let c=p&&`border-b border-border/70`;t[23]===c?T=t[24]:(T=G(`flex items-center justify-between gap-3 bg-muted/40 px-3 py-1.5`,c),t[23]=c,t[24]=T),C=`flex min-w-0 items-center gap-2.5`,t[25]===Symbol.for(`react.memo_cache_sentinel`)?(w=(0,Y.jsx)(Wi,{className:`size-3.5 shrink-0 text-muted-foreground/70`,"aria-hidden":!0}),t[25]=w):w=t[25],b=`min-w-0`,t[26]===a?x=t[27]:(x=(0,Y.jsx)(`div`,{className:`truncate text-[12px] text-foreground/92`,children:a}),t[26]=a,t[27]=x),S=ha(e)&&(0,Y.jsx)(`div`,{className:`text-[12px] tabular-nums`,children:(0,Y.jsx)(ba,{additions:e.additions,deletions:e.deletions})}),t[3]=r,t[4]=p,t[5]=h,t[6]=s,t[7]=n.turnId,t[8]=i,t[9]=_,t[10]=v,t[11]=y,t[12]=b,t[13]=x,t[14]=S,t[15]=C,t[16]=w,t[17]=T,t[18]=E,t[19]=D}else _=t[9],v=t[10],y=t[11],b=t[12],x=t[13],S=t[14],C=t[15],w=t[16],T=t[17],E=t[18],D=t[19];let O;t[28]!==b||t[29]!==x||t[30]!==S?(O=(0,Y.jsxs)(`div`,{className:b,children:[x,S]}),t[28]=b,t[29]=x,t[30]=S,t[31]=O):O=t[31];let k;t[32]!==C||t[33]!==w||t[34]!==O?(k=(0,Y.jsxs)(`div`,{className:C,children:[w,O]}),t[32]=C,t[33]=w,t[34]=O,t[35]=k):k=t[35];let A;t[36]!==_||t[37]!==d||t[38]!==u||t[39]!==i?(A=_&&(0,Y.jsxs)(`button`,{type:`button`,"data-changed-files-undo":`true`,disabled:d,className:`flex items-center gap-1 text-[12px] text-muted-foreground transition-colors hover:text-foreground disabled:cursor-not-allowed disabled:opacity-50`,onClick:()=>u(i),children:[`Undo`,(0,Y.jsx)(Xa,{className:`size-3`,"aria-hidden":!0})]}),t[36]=_,t[37]=d,t[38]=u,t[39]=i,t[40]=A):A=t[40];let j;t[41]!==r[0]?.path||t[42]!==v||t[43]!==l||t[44]!==c||t[45]!==n.turnId?(j=()=>{if(v){l();return}c(n.turnId,r[0]?.path)},t[41]=r[0]?.path,t[42]=v,t[43]=l,t[44]=c,t[45]=n.turnId,t[46]=j):j=t[46];let M=v?`Close diff`:`Review changes`,N;t[47]!==j||t[48]!==M?(N=(0,Y.jsx)(`button`,{type:`button`,className:`text-[12px] text-muted-foreground transition-colors hover:text-foreground`,onClick:j,children:M}),t[47]=j,t[48]=M,t[49]=N):N=t[49];let P=p?`Collapse changed files list`:`Expand changed files list`,F;t[50]!==p||t[51]!==a||t[52]!==m||t[53]!==n.turnId?(F=()=>m(a,n.turnId,!p),t[50]=p,t[51]=a,t[52]=m,t[53]=n.turnId,t[54]=F):F=t[54];let I;t[55]===p?I=t[56]:(I=(0,Y.jsx)(nj,{open:p,className:`size-3.5`}),t[55]=p,t[56]=I);let L;t[57]!==p||t[58]!==P||t[59]!==F||t[60]!==I?(L=(0,Y.jsx)(`button`,{type:`button`,"data-scroll-anchor-ignore":!0,"aria-expanded":p,"aria-label":P,className:`inline-flex items-center justify-center rounded-md p-1 text-muted-foreground/70 transition-colors hover:bg-foreground/5 hover:text-foreground/80`,onClick:F,children:I}),t[57]=p,t[58]=P,t[59]=F,t[60]=I,t[61]=L):L=t[61];let R;t[62]!==A||t[63]!==N||t[64]!==L?(R=(0,Y.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[A,N,L]}),t[62]=A,t[63]=N,t[64]=L,t[65]=R):R=t[65];let z;t[66]!==k||t[67]!==R||t[68]!==T?(z=(0,Y.jsxs)(`div`,{className:T,children:[k,R]}),t[66]=k,t[67]=R,t[68]=T,t[69]=z):z=t[69];let ee;if(t[70]!==c||t[71]!==o||t[72]!==n.turnId||t[73]!==D){let e;t[75]!==c||t[76]!==o||t[77]!==n.turnId?(e=e=>(0,Y.jsx)(Uj,{file:e,resolvedTheme:o,onOpen:()=>c(n.turnId,e.path)},e.path),t[75]=c,t[76]=o,t[77]=n.turnId,t[78]=e):e=t[78],ee=D.map(e),t[70]=c,t[71]=o,t[72]=n.turnId,t[73]=D,t[74]=ee}else ee=t[74];let te;t[79]!==h||t[80]!==y?(te=y>0||h?(0,Y.jsxs)(`button`,{type:`button`,"data-scroll-anchor-ignore":!0,"aria-expanded":h,className:`flex w-full items-center gap-1.5 border-t border-border/70 px-3 py-2 text-[12px] text-muted-foreground transition-colors hover:bg-foreground/5 hover:text-foreground`,onClick:()=>g(!h),children:[(0,Y.jsx)(nj,{open:h,className:`size-3.5`}),(0,Y.jsx)(`span`,{children:h?`Show less`:`Show ${y} more ${y===1?`file`:`files`}`})]}):null,t[79]=h,t[80]=y,t[81]=te):te=t[81];let ne;t[82]!==p||t[83]!==ee||t[84]!==te?(ne=(0,Y.jsxs)(rj,{open:p,children:[ee,te]}),t[82]=p,t[83]=ee,t[84]=te,t[85]=ne):ne=t[85];let B;return t[86]!==z||t[87]!==ne||t[88]!==E?(B=(0,Y.jsxs)(`div`,{className:E,children:[z,ne]}),t[86]=z,t[87]=ne,t[88]=E,t[89]=B):B=t[89],B}function Hj(e){return e.setThreadChangedFilesExpanded}function Uj(e){let t=(0,J.c)(15),{file:n,resolvedTheme:r,onOpen:i}=e,a=n.additions??0,o=n.deletions??0,s=a+o>0,c;t[0]!==n.path||t[1]!==r?(c=(0,Y.jsx)(pa,{pathValue:n.path,kind:`file`,theme:r,className:`size-4 shrink-0 opacity-80`}),t[0]=n.path,t[1]=r,t[2]=c):c=t[2];let l;t[3]===n.path?l=t[4]:(l=(0,Y.jsx)(`span`,{className:`truncate text-[12px] text-foreground/88 underline-offset-2 group-hover/file-row:underline`,children:n.path}),t[3]=n.path,t[4]=l);let u;t[5]!==a||t[6]!==o||t[7]!==s?(u=s&&(0,Y.jsx)(`span`,{className:`ml-auto shrink-0 text-[12px] tabular-nums`,children:(0,Y.jsx)(ba,{additions:a,deletions:o})}),t[5]=a,t[6]=o,t[7]=s,t[8]=u):u=t[8];let d;return t[9]!==n.path||t[10]!==i||t[11]!==c||t[12]!==l||t[13]!==u?(d=(0,Y.jsxs)(`button`,{type:`button`,"data-changed-file-row":`true`,title:n.path,className:`group/file-row flex w-full items-center gap-2 border-t border-border/70 px-3 py-2 text-left transition-colors first:border-t-0 hover:bg-foreground/5`,onClick:i,children:[c,l,u]}),t[9]=n.path,t[10]=i,t[11]=c,t[12]=l,t[13]=u,t[14]=d):d=t[14],d}var Wj=(0,q.memo)(function(e){let t=(0,J.c)(3),n=e.context.body.length>0?`${e.context.header}\n${e.context.body}`:e.context.header,r;return t[0]!==e.context.header||t[1]!==n?(r=(0,Y.jsx)(gE,{label:e.context.header,tooltipText:n}),t[0]=e.context.header,t[1]=n,t[2]=r):r=t[2],r}),Gj=(0,q.memo)(function(e){let t=(0,q.useRef)({occurrenceIndex:0});t.current.occurrenceIndex=0;let n=e.searchHighlight?{...e.searchHighlight,cursor:t.current,keyPrefix:`user-message`}:void 0;if(e.terminalContexts.length>0){let t=WA(e.text,e.terminalContexts),r=HA(e.terminalContexts),i=[];if(t){let t=0;for(let r of e.terminalContexts){let a=UA(r.header),o=e.text.indexOf(a,t);if(o===-1){i.length=0;break}o>t&&i.push((0,Y.jsx)(`span`,{children:(0,Y.jsx)(ia,{text:e.text.slice(t,o),skills:e.skills,searchHighlight:n})},`user-terminal-context-inline-before:${r.header}:${t}`)),i.push((0,Y.jsx)(Wj,{context:r},`user-terminal-context-inline:${r.header}`)),t=o+a.length}if(i.length>0)return t<e.text.length&&i.push((0,Y.jsx)(`span`,{children:(0,Y.jsx)(ia,{text:e.text.slice(t),skills:e.skills,searchHighlight:n})},`user-message-terminal-context-inline-rest:${t}`)),(0,Y.jsx)(`div`,{className:`whitespace-pre-wrap wrap-break-word text-sm leading-relaxed text-foreground`,children:i})}for(let t of e.terminalContexts)i.push((0,Y.jsx)(Wj,{context:t},`user-terminal-context-inline:${t.header}`)),i.push((0,Y.jsx)(`span`,{"aria-hidden":`true`,children:` `},`user-terminal-context-inline-space:${t.header}`));if(e.text.length>0)i.push((0,Y.jsx)(`span`,{children:(0,Y.jsx)(ia,{text:e.text,skills:e.skills,searchHighlight:n})},`user-message-terminal-context-inline-text`));else if(r.length===0)return null;return(0,Y.jsx)(`div`,{className:`whitespace-pre-wrap wrap-break-word text-sm leading-relaxed text-foreground`,children:i})}return e.text.length===0?null:(0,Y.jsx)(`div`,{className:`whitespace-pre-wrap wrap-break-word text-sm leading-relaxed text-foreground`,children:(0,Y.jsx)(ia,{text:e.text,skills:e.skills,searchHighlight:n})})});function Kj(e){let t=(0,q.useRef)({byId:new Map,result:[]});return(0,q.useMemo)(()=>{let n=xA(e,t.current);return t.current=n,n.result},[e])}function qj(e,t){let n=t.activeTurnInProgress&&t.activeTurnId!==null&&t.activeTurnId!==void 0&&e.message.turnId===t.activeTurnId,r=t.activeTurnInProgress&&t.activeTurnId!==null&&t.activeTurnId!==void 0&&e.assistantTurnDiffSummary?.turnId===t.activeTurnId;return!!(e.message.streaming||n||r)}function Jj(e,t){return uA({text:e.message.text??null,showCopyButton:e.showAssistantCopyButton,streaming:qj(e,t)})}function Yj(e,t){let n=Date.parse(e),r=Date.parse(t);if(!Number.isFinite(n)||!Number.isFinite(r))return null;let i=Math.max(0,Math.floor((r-n)/1e3));if(i<60)return`${i}s`;let a=Math.floor(i/3600),o=Math.floor(i%3600/60),s=i%60;return a>0?o>0?`${a}h ${o}m`:`${a}h`:s>0?`${o}m ${s}s`:`${o}m`}function Xj(e,t=Date.now()){return Yj(e,new Date(t).toISOString())??`0s`}function Zj(e,t,n,r=Date.now()){return Qj(e,t?yo(t,new Date(r).toISOString()):null,n)}function Qj(e,t,n){return t?`${So(e,n)} • ${t}`:So(e,n)}function $j(e){return e===`error`?Di:e===`thinking`?qr:e===`info`?Jr:jl}function eM(e,t){let n=e.command??e.rawCommand;if(n)return tk(n).target;if((e.changedFiles?.length??0)>0){let n=e.changedFiles,[r]=n;if(r)return n.length===1?JO(ua(r,t)):`${n.length} files`}let r=e.detail?.trim();if(!r)return null;let i=tM(r);return i?JO(i):e.requestKind===`file-read`||e.requestKind===`file-change`||e.itemType===`file_change`||r.startsWith(`{`)||r.startsWith(`[`)?null:r}function tM(e){let t=/^(.+?\.[A-Za-z0-9][A-Za-z0-9._-]*)(?::\d+)?(?::\d+)?$/u.exec(e.trim());return t?.[1]?.includes(`/`)?t[1].trim():/"(?:file_path|filePath|path|filename)"\s*:\s*"([^"]+)"/u.exec(e)?.[1]?.trim()??null}function nM(e){return e.rawCommand?.trim()||e.command?.trim()||null}function rM(e){let t=e.command??e.rawCommand;switch(t?nk(t):`terminal`){case`inspect`:return Ia;case`git`:case`github`:return Ji;case`terminal`:return qa}}function iM(e){let t=(e.toolTitle??``).toLowerCase().replace(/[^a-z]/g,``);return t===`read`||t===`readfile`||t===`viewfile`}function aM(e){if(iA(e))return Di;if(e.requestKind===`command`)return rM(e);if(e.requestKind===`file-read`)return Ia;if(e.requestKind===`file-change`)return Na;if(e.itemType===`command_execution`||e.command)return rM(e);if(e.itemType===`file_change`||(e.changedFiles?.length??0)>0)return Na;if(e.itemType===`web_search`)return fa;if(e.itemType===`image_view`)return Ui;if(iM(e))return Ia;switch(e.itemType){case`mcp_tool_call`:return Za;case`dynamic_tool_call`:return wl;case`collab_agent_tool_call`:return qr}return e.taskId?qr:$j(e.tone)}function oM(e){let t=e.trim();return t.length===0?e:`${t.charAt(0).toUpperCase()}${t.slice(1)}`}function sM(e){return e.toolTitle?oM(lA(e.toolTitle)):oM(lA(e.label))}function cM(e,t){return t?YO(e)===YO(t)?e:`${e} · ${t}`:e}function lM(e){return e.requestKind===`file-change`||e.itemType===`file_change`||(e.changedFiles?.length??0)>0}function uM(e){return typeof e.additions==`number`||typeof e.deletions==`number`}function dM(e){return e?.some(uM)?e.reduce((e,t)=>({additions:e.additions+(t.additions??0),deletions:e.deletions+(t.deletions??0)}),{additions:0,deletions:0}):null}function fM(e){let t=e.replaceAll(`\\`,`/`).split(`/`);for(let e=t.length-1;e>=0;--e){let n=t[e];if(n)return n}return e}function pM(e){let t=(0,J.c)(7),n;t[0]===e.additions?n=t[1]:(n=(0,Y.jsxs)(`span`,{className:`text-success`,children:[`+`,e.additions]}),t[0]=e.additions,t[1]=n);let r;t[2]===e.deletions?r=t[3]:(r=(0,Y.jsxs)(`span`,{className:`ml-1 text-destructive`,children:[`-`,e.deletions]}),t[2]=e.deletions,t[3]=r);let i;return t[4]!==n||t[5]!==r?(i=(0,Y.jsxs)(Y.Fragment,{children:[n,r]}),t[4]=n,t[5]=r,t[6]=i):i=t[6],i}var mM=(0,q.memo)(function(e){let t=(0,J.c)(37),{workEntry:n,workspaceRoot:r}=e,i,a,o,s,c,l;if(t[0]!==n||t[1]!==r){let e=iA(n),u;t[8]===n?u=t[9]:(u=aM(n),t[8]=n,t[9]=u),i=u;let d=sM(n),f=eM(n,r);c=nM(n),a=cM(d,f??(c?tk(c).target:null));let p;t[10]===n?p=t[11]:(p=Nk(n),t[10]=n,t[11]=p),s=p,o=s?`${a} · ${s}`:a,l=G(`flex size-5 items-center justify-center`,Nj,e&&`text-destructive-foreground group-hover/tool-row:text-destructive-foreground group-focus-visible/tool-row:text-destructive-foreground`),t[0]=n,t[1]=r,t[2]=i,t[3]=a,t[4]=o,t[5]=s,t[6]=c,t[7]=l}else i=t[2],a=t[3],o=t[4],s=t[5],c=t[6],l=t[7];let u;t[12]===i?u=t[13]:(u=(0,Y.jsx)(i,{className:`size-3.5`}),t[12]=i,t[13]=u);let d;t[14]!==l||t[15]!==u?(d=(0,Y.jsx)(`span`,{className:l,"data-work-entry-icon":`true`,children:u}),t[14]=l,t[15]=u,t[16]=d):d=t[16];let f;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(f=G(`truncate text-[12px] leading-5`,Nj),t[17]=f):f=t[17];let p;t[18]===a?p=t[19]:(p=(0,Y.jsx)(`span`,{children:a}),t[18]=a,t[19]=p);let m;t[20]===s?m=t[21]:(m=s?(0,Y.jsxs)(`span`,{"data-work-entry-meta":`true`,children:[` · `,s]}):null,t[20]=s,t[21]=m);let h;t[22]!==p||t[23]!==m?(h=(0,Y.jsx)(`div`,{className:`min-w-0 overflow-hidden`,children:(0,Y.jsxs)(`p`,{className:f,"data-work-entry-display-text":`true`,children:[p,m]})}),t[22]=p,t[23]=m,t[24]=h):h=t[24];let g;t[25]!==o||t[26]!==h?(g=(0,Y.jsx)(Po,{className:`block min-w-0 w-full text-left`,"aria-label":o,render:h}),t[25]=o,t[26]=h,t[27]=g):g=t[27];let _;t[28]!==o||t[29]!==c?(_=(0,Y.jsx)(Fo,{side:`top`,align:`start`,className:`max-w-[min(56rem,calc(100vw-2rem))]`,children:(0,Y.jsx)(hM,{displayText:o,rawCommand:c})}),t[28]=o,t[29]=c,t[30]=_):_=t[30];let v;t[31]!==g||t[32]!==_?(v=(0,Y.jsxs)(Io,{children:[g,_]}),t[31]=g,t[32]=_,t[33]=v):v=t[33];let y;return t[34]!==d||t[35]!==v?(y=(0,Y.jsxs)(Y.Fragment,{children:[d,v]}),t[34]=d,t[35]=v,t[36]=y):y=t[36],y});function hM(e){let t=(0,J.c)(11);if(!e.rawCommand){let n;return t[0]===e.displayText?n=t[1]:(n=(0,Y.jsx)(`p`,{className:`whitespace-pre-wrap wrap-break-word text-xs leading-5`,children:e.displayText}),t[0]=e.displayText,t[1]=n),n}let n;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,Y.jsx)(`div`,{className:`text-muted-foreground/70`,children:`Summary`}),t[2]=n):n=t[2];let r;t[3]===e.displayText?r=t[4]:(r=(0,Y.jsxs)(`div`,{className:`space-y-0.5`,children:[n,(0,Y.jsx)(`div`,{className:`whitespace-pre-wrap wrap-break-word`,children:e.displayText})]}),t[3]=e.displayText,t[4]=r);let i;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,Y.jsx)(`div`,{className:`text-muted-foreground/70`,children:`Raw call`}),t[5]=i):i=t[5];let a;t[6]===e.rawCommand?a=t[7]:(a=(0,Y.jsxs)(`div`,{className:`space-y-0.5`,children:[i,(0,Y.jsx)(`code`,{className:`block whitespace-pre-wrap wrap-break-word font-mono text-[11px] text-foreground/92`,children:e.rawCommand})]}),t[6]=e.rawCommand,t[7]=a);let o;return t[8]!==r||t[9]!==a?(o=(0,Y.jsxs)(`div`,{className:`space-y-2 text-xs leading-5`,children:[r,a]}),t[8]=r,t[9]=a,t[10]=o):o=t[10],o}var gM=(0,q.memo)(function(e){let t=(0,J.c)(45),{isEditing:n,workEntry:r,workspaceRoot:i}=e,a,o,s,c,l,u,d,f,p,m,h;if(t[0]!==n||t[1]!==r.changedFileStats||t[2]!==r.changedFiles||t[3]!==r.completed||t[4]!==r.id||t[5]!==i){a=r.changedFiles??[];let e=new Map((r.changedFileStats??[]).map(jM)),g=a.slice(0,3),_=Math.max(0,a.length-g.length),v=a[0],y=v?ua(v,i):null,b=a.length===1&&y?`${r.completed?`Edited`:`Editing`} ${y}`:`${r.completed?`Edited`:`Editing`} ${a.length} files`,x=v?e.get(v):void 0;o=r.completed?a.length===1&&v?dM(x?[x]:void 0):dM(r.changedFileStats):null;let S=a.length>1&&`items-start py-1.5`;t[17]===S?u=t[18]:(u=G(Mj,`chat-file-edit-row`,S),t[17]=S,t[18]=u),d=`true`,f=`file-edit`,p=`true`,m=r.completed?`completed`:`editing`;let C=a.length>1&&`mt-0.5`,w;t[19]===C?w=t[20]:(w=G(`flex size-5 items-center justify-center`,Nj,C),t[19]=C,t[20]=w);let T;t[21]===Symbol.for(`react.memo_cache_sentinel`)?(T=(0,Y.jsx)(Na,{className:`size-3.5`}),t[21]=T):T=t[21],t[22]===w?h=t[23]:(h=(0,Y.jsx)(`span`,{className:w,"data-work-entry-icon":`true`,children:T}),t[22]=w,t[23]=h),s=`min-w-0`;let E=n&&`chat-file-edit-text--active`,D;t[24]===E?D=t[25]:(D=G(`chat-file-edit-text truncate text-[12px] leading-5`,Nj,E),t[24]=E,t[25]=D),t[26]!==b||t[27]!==D?(c=(0,Y.jsx)(`p`,{className:D,title:b,children:b}),t[26]=b,t[27]=D,t[28]=c):c=t[28],l=a.length>1&&(0,Y.jsxs)(`div`,{className:`mt-0.5 flex min-w-0 flex-nowrap gap-1 overflow-hidden`,children:[g.map(t=>{let n=ua(t,i),a=e.get(t),o=dM(a?[a]:void 0);return(0,Y.jsxs)(`span`,{className:`inline-flex min-w-0 max-w-[15rem] items-center gap-1 rounded border border-border/45 px-1.5 py-0.5 font-mono text-[9px] leading-3 text-muted-foreground/70`,title:n,children:[(0,Y.jsx)(`span`,{className:`truncate`,children:fM(n)}),o&&(0,Y.jsx)(`span`,{className:`shrink-0`,children:(0,Y.jsx)(pM,{additions:o.additions,deletions:o.deletions})})]},`${r.id}:edit-chip:${t}`)}),_>0&&(0,Y.jsxs)(`span`,{className:`shrink-0 px-1 text-[10px] leading-4 text-muted-foreground/55`,children:[`+`,_]})]}),t[0]=n,t[1]=r.changedFileStats,t[2]=r.changedFiles,t[3]=r.completed,t[4]=r.id,t[5]=i,t[6]=a,t[7]=o,t[8]=s,t[9]=c,t[10]=l,t[11]=u,t[12]=d,t[13]=f,t[14]=p,t[15]=m,t[16]=h}else a=t[6],o=t[7],s=t[8],c=t[9],l=t[10],u=t[11],d=t[12],f=t[13],p=t[14],m=t[15],h=t[16];let g;t[29]!==s||t[30]!==c||t[31]!==l?(g=(0,Y.jsxs)(`div`,{className:s,children:[c,l]}),t[29]=s,t[30]=c,t[31]=l,t[32]=g):g=t[32];let _;t[33]!==a||t[34]!==o?(_=o?(0,Y.jsx)(`span`,{className:G(`shrink-0 font-mono text-[10px]`,a.length>1&&`mt-1`),children:(0,Y.jsx)(pM,{additions:o.additions,deletions:o.deletions})}):(0,Y.jsx)(`span`,{className:`size-5`,"aria-hidden":!0}),t[33]=a,t[34]=o,t[35]=_):_=t[35];let v;return t[36]!==_||t[37]!==u||t[38]!==d||t[39]!==f||t[40]!==p||t[41]!==m||t[42]!==h||t[43]!==g?(v=(0,Y.jsxs)(`div`,{className:u,"data-tool-entry-row":d,"data-tool-entry-kind":f,"data-file-edit-work-row":p,"data-file-edit-work-state":m,children:[h,g,_]}),t[36]=_,t[37]=u,t[38]=d,t[39]=f,t[40]=p,t[41]=m,t[42]=h,t[43]=g,t[44]=v):v=t[44],v}),_M=new RegExp(String.raw`\u001b\[[0-9;]*m`,`g`);function vM(e){return`work-entry-panel:${e}`}var yM=(0,q.memo)(function(e){let t=(0,J.c)(43),{workEntry:n,workspaceRoot:r}=e,{routeThreadKey:i}=(0,q.use)(aj),a;t[0]!==i||t[1]!==n.id?(a=e=>e.threadWorkEntryExpandedById[i]?.[n.id],t[0]=i,t[1]=n.id,t[2]=a):a=t[2];let o=wr(a),s=wr(MM),c=o??!1,l;t[3]===n.id?l=t[4]:(l=vM(n.id),t[3]=n.id,t[4]=l);let u=l,d;t[5]===n?d=t[6]:(d=sM(n),t[5]=n,t[6]=d);let f=d,[p,m]=(0,q.useState)(c),h,g;t[7]!==c||t[8]!==p?(h=()=>{if(c){m(!0);return}if(!p)return;let e=window.setTimeout(()=>m(!1),260);return()=>window.clearTimeout(e)},g=[c,p],t[7]=c,t[8]=p,t[9]=h,t[10]=g):(h=t[9],g=t[10]),(0,q.useEffect)(h,g);let _;t[11]!==c||t[12]!==i||t[13]!==s||t[14]!==n.id?(_=()=>{s(i,n.id,!c)},t[11]=c,t[12]=i,t[13]=s,t[14]=n.id,t[15]=_):_=t[15];let v=_,y;t[16]===v?y=t[17]:(y=e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),v())},t[16]=v,t[17]=y);let b;t[18]===Symbol.for(`react.memo_cache_sentinel`)?(b=G(Mj,`cursor-pointer focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring/70`),t[18]=b):b=t[18];let x;t[19]!==n||t[20]!==r?(x=(0,Y.jsx)(mM,{workEntry:n,workspaceRoot:r}),t[19]=n,t[20]=r,t[21]=x):x=t[21];let S;t[22]===Symbol.for(`react.memo_cache_sentinel`)?(S=G(`size-3`,Nj),t[22]=S):S=t[22];let C;t[23]===c?C=t[24]:(C=(0,Y.jsx)(`span`,{className:`flex size-5 items-center justify-center`,children:(0,Y.jsx)(nj,{open:c,className:S})}),t[23]=c,t[24]=C);let w;t[25]!==c||t[26]!==u||t[27]!==C||t[28]!==y||t[29]!==x||t[30]!==v?(w=(0,Y.jsxs)(`div`,{role:`button`,tabIndex:0,"aria-expanded":c,"aria-controls":u,onClick:v,onKeyDown:y,"data-tool-entry-row":`true`,"data-tool-entry-kind":`expandable`,className:b,children:[x,C]}),t[25]=c,t[26]=u,t[27]=C,t[28]=y,t[29]=x,t[30]=v,t[31]=w):w=t[31];let T;t[32]!==f||t[33]!==p||t[34]!==u||t[35]!==n?(T=p?(0,Y.jsx)(bM,{workEntry:n,panelId:u,headingLabel:f}):null,t[32]=f,t[33]=p,t[34]=u,t[35]=n,t[36]=T):T=t[36];let E;t[37]!==c||t[38]!==T?(E=(0,Y.jsx)(rj,{open:c,contentClassName:`min-w-0 pl-9`,children:T}),t[37]=c,t[38]=T,t[39]=E):E=t[39];let D;return t[40]!==w||t[41]!==E?(D=(0,Y.jsxs)(`div`,{children:[w,E]}),t[40]=w,t[41]=E,t[42]=D):D=t[42],D}),bM=(0,q.memo)(function(e){let t=(0,J.c)(12),{workEntry:n,panelId:r,headingLabel:i}=e,{markdownCwd:a,timestampFormat:o}=(0,q.use)(aj),s;if(t[0]!==i||t[1]!==a||t[2]!==r||t[3]!==o||t[4]!==n){let e=nM(n),c=n.output?n.output.replace(_M,``):``,l=c.length>0,u;t[6]===n.detail?u=t[7]:(u=n.detail?.trim()||null,t[6]=n.detail,t[7]=u);let d=u,f=d===e?null:d,p;t[8]!==f||t[9]!==o||t[10]!==n?(p=(0,Y.jsx)(xM,{workEntry:n,detailText:f,timestampFormat:o}),t[8]=f,t[9]=o,t[10]=n,t[11]=p):p=t[11],s=(0,Y.jsxs)(`div`,{id:r,role:`region`,"aria-label":`${i} details`,className:`space-y-3 pt-2 pb-1`,children:[p,e||l?(0,Y.jsx)(ca,{text:SM(e,c,n.exitCode),cwd:a,isStreaming:!1}):(0,Y.jsx)(`p`,{className:`text-[11px] italic text-muted-foreground/45`,children:`No output was captured.`})]}),t[0]=i,t[1]=a,t[2]=r,t[3]=o,t[4]=n,t[5]=s}else s=t[5];return s});function xM(e){let t=(0,J.c)(28),{workEntry:n,detailText:r,timestampFormat:i}=e,a;t[0]===n?a=t[1]:(a=jk(Ak(n)),t[0]=n,t[1]=a);let o=a,s;t[2]===n?s=t[3]:(s=Mk(n),t[2]=n,t[3]=s);let c=s,l=n.lastActivityAt??n.createdAt,u;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,Y.jsx)(`h3`,{className:`text-[11px] font-medium text-muted-foreground/56`,children:`Activity`}),t[4]=u):u=t[4];let d;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,Y.jsx)(`dt`,{className:`text-muted-foreground/56`,children:`Status`}),t[5]=d):d=t[5];let f;t[6]===o?f=t[7]:(f=(0,Y.jsx)(`dd`,{className:`text-foreground/84`,children:o}),t[6]=o,t[7]=f);let p;t[8]!==i||t[9]!==n.startedAt?(p=n.startedAt?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`dt`,{className:`text-muted-foreground/56`,children:`Started`}),(0,Y.jsx)(`dd`,{className:`text-foreground/84`,children:(0,Y.jsx)(`time`,{dateTime:n.startedAt,title:n.startedAt,children:So(n.startedAt,i)})})]}):null,t[8]=i,t[9]=n.startedAt,t[10]=p):p=t[10];let m;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(m=(0,Y.jsx)(`dt`,{className:`text-muted-foreground/56`,children:`Last activity`}),t[11]=m):m=t[11];let h;t[12]!==l||t[13]!==i?(h=So(l,i),t[12]=l,t[13]=i,t[14]=h):h=t[14];let g;t[15]!==l||t[16]!==h?(g=(0,Y.jsx)(`dd`,{className:`text-foreground/84`,children:(0,Y.jsx)(`time`,{dateTime:l,title:l,children:h})}),t[15]=l,t[16]=h,t[17]=g):g=t[17];let _;t[18]===c?_=t[19]:(_=c?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`dt`,{className:`text-muted-foreground/56`,children:`Elapsed`}),(0,Y.jsx)(`dd`,{className:`tabular-nums text-foreground/84`,children:c})]}):null,t[18]=c,t[19]=_);let v;t[20]===r?v=t[21]:(v=r?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`dt`,{className:`text-muted-foreground/56`,children:`Detail`}),(0,Y.jsx)(`dd`,{"data-work-entry-detail":`true`,className:`wrap-break-word text-foreground/84`,children:r})]}):null,t[20]=r,t[21]=v);let y;return t[22]!==v||t[23]!==f||t[24]!==p||t[25]!==g||t[26]!==_?(y=(0,Y.jsxs)(`section`,{className:`space-y-2`,children:[u,(0,Y.jsxs)(`dl`,{className:`grid grid-cols-[max-content_minmax(0,1fr)] gap-x-3 gap-y-1.5 rounded-lg border border-border/45 bg-background/60 px-3 py-2.5 text-[11px]`,children:[d,f,p,m,g,_,v]})]}),t[22]=v,t[23]=f,t[24]=p,t[25]=g,t[26]=_,t[27]=y):y=t[27],y}function SM(e,t,n){let r=[];if(e){let[t,...n]=e.split(`
23
23
  `);r.push(`$ ${t??``}`,...n)}t&&(r.length>0&&r.push(``),r.push(t.replace(/\s+$/,``))),n!==void 0&&n!==0&&(r.length>0&&r.push(``),r.push(`Exit code ${n}`));let i="`".repeat(Math.max(3,CM(r.join(`
24
24
  `))+1));return`${i}bash\n${r.join(`
25
25
  `)}\n${i}`}function CM(e){let t=0,n=0;for(let r of e){if(r==="`"){n+=1,t=Math.max(t,n);continue}n=0}return t}function wM(e){return e.tone===`tool`}function TM(e){return e.members}function EM(e){return e.status===`running`||e.status===`pending`}function DM(e){return e.status===`waiting`}function OM(e){return e.status===`failed`}function kM(e,t){return e+(t.usage?.totalTokens??0)}function AM(e){return e.state===`running`}function jM(e){return[e.path,e]}function MM(e){return e.setThreadWorkEntryExpanded}function NM(e){let t=e.trim();return t.length<=42?t:`${t.slice(0,41).trimEnd()}…`}function PM(e){let t=e.projectName?.trim();if(!t)return{prefix:`What should we do?`,projectName:null,suffix:``,text:`What should we do?`};let n=NM(t);return{prefix:`What should we do in `,projectName:n,suffix:`?`,text:`What should we do in ${n}?`}}function FM(e){return e.routeKind===`draft`&&!e.envLocked&&e.projectCount>1}function IM(e){let t=(0,J.c)(25),{projectName:n,activeProjectId:r,activeProjectEnvironmentId:i,routeKind:a,envLocked:o,draftId:s,workLocation:c}=e,l;t[0]===n?l=t[1]:(l=PM({projectName:n}),t[0]=n,t[1]=l);let u=l,d=oe($a(LM)),f;t[2]!==i||t[3]!==r||t[4]!==s||t[5]!==o||t[6]!==u.projectName||t[7]!==d||t[8]!==a?(f=u.projectName!==null&&r!==null&&i!==null&&s!==void 0&&FM({routeKind:a,envLocked:o,projectCount:d}),t[2]=i,t[3]=r,t[4]=s,t[5]=o,t[6]=u.projectName,t[7]=d,t[8]=a,t[9]=f):f=t[9];let p=f,m;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(m=(0,Y.jsx)(Mc,{className:`h-10 text-foreground sm:h-12`}),t[10]=m):m=t[10];let h;t[11]!==i||t[12]!==r||t[13]!==p||t[14]!==s||t[15]!==u.prefix||t[16]!==u.projectName||t[17]!==u.suffix||t[18]!==u.text?(h=u.projectName===null?u.text:(0,Y.jsxs)(Y.Fragment,{children:[u.prefix,p&&r&&i&&s?(0,Y.jsx)(Yu,{activeProjectId:r,activeProjectEnvironmentId:i,appearance:`headline`,draftId:s,label:u.projectName}):(0,Y.jsx)(`span`,{className:`text-foreground`,children:u.projectName}),u.suffix]}),t[11]=i,t[12]=r,t[13]=p,t[14]=s,t[15]=u.prefix,t[16]=u.projectName,t[17]=u.suffix,t[18]=u.text,t[19]=h):h=t[19];let g;t[20]===h?g=t[21]:(g=(0,Y.jsx)(`h1`,{className:`max-w-208 text-balance text-center font-medium text-2xl text-foreground tracking-tight sm:text-3xl`,children:h}),t[20]=h,t[21]=g);let _;return t[22]!==g||t[23]!==c?(_=(0,Y.jsxs)(`div`,{className:`flex shrink-0 flex-col items-center gap-4 px-6 pb-6 sm:gap-5 sm:pb-8`,"data-testid":`new-thread-hero`,children:[m,g,c]}),t[22]=g,t[23]=c,t[24]=_):_=t[24],_}function LM(e){return B(e).length}var RM=60;function zM(e){let t=(0,J.c)(36),{label:n,sourceKind:r,environmentId:i,projectId:a,cwd:o,onSelect:s}=e,[c,l]=(0,q.useState)(!1),[u,d]=(0,q.useState)(`branches`),[f,p]=(0,q.useState)(``),[m,h]=(0,q.useState)(``),[g,_]=(0,q.useState)(``),[v,y]=(0,q.useState)(``),[b,x]=(0,q.useState)(`open`),[S,C]=(0,q.useState)(`open`),[w,T]=(0,q.useState)(`open`),E=(0,q.useRef)(null),D=(0,q.useRef)(null),O=(0,q.useRef)(null),k=(0,q.useRef)(null),A;t[0]===s?A=t[1]:(A=e=>{l(!1),s(e)},t[0]=s,t[1]=A);let j=A,M=`Change what this worktree branches from (currently ${n})`,N;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(N=(0,Y.jsx)(`button`,{type:`button`}),t[2]=N):N=t[2];let P;t[3]===r?P=t[4]:(P=(0,Y.jsx)(BM,{kind:r}),t[3]=r,t[4]=P);let F;t[5]===n?F=t[6]:(F=(0,Y.jsx)(`span`,{className:`min-w-0 max-w-[18rem] truncate`,children:n}),t[5]=n,t[6]=F);let I;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(I=(0,Y.jsx)(Xr,{className:`size-3 shrink-0 text-muted-foreground`}),t[7]=I):I=t[7];let L;t[8]!==M||t[9]!==P||t[10]!==F?(L=(0,Y.jsxs)(Tc,{"aria-label":M,className:`inline-flex cursor-pointer items-center gap-1 rounded-md px-1 py-0.5 font-medium text-foreground/85 transition-colors hover:bg-accent hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:opacity-60`,render:N,children:[P,F,I]}),t[8]=M,t[9]=P,t[10]=F,t[11]=L):L=t[11];let R;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(R=[{id:`branches`,label:`Branch`},{id:`prs`,label:`Pull requests`},{id:`issues`,label:`Issues`},{id:`jira`,label:`Jira`}],t[12]=R):R=t[12];let z;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(z=e=>d(e),t[13]=z):z=t[13];let ee;t[14]===u?ee=t[15]:(ee=(0,Y.jsx)(_i,{tabs:R,activeId:u,density:`compact`,onSelect:z}),t[14]=u,t[15]=ee);let te;t[16]!==f||t[17]!==j||t[18]!==o||t[19]!==i||t[20]!==g||t[21]!==S||t[22]!==m||t[23]!==b||t[24]!==a||t[25]!==u||t[26]!==v||t[27]!==w?(te=(0,Y.jsx)(`div`,{className:`h-72 min-h-0`,children:u===`branches`?(0,Y.jsx)(VM,{environmentId:i,cwd:o,query:f,searchInputRef:E,onQueryChange:p,onSelect:e=>j({kind:`branch`,branchName:e})}):u===`prs`?(0,Y.jsx)(yi,{environmentId:i,cwd:o,searchInputRef:D,query:m,onQueryChange:h,density:`compact`,stateFilter:b,onStateFilterChange:x,onSelect:e=>j({kind:`pr`,changeRequest:e})}):u===`issues`?(0,Y.jsx)(gi,{environmentId:i,cwd:o,searchInputRef:O,query:g,onQueryChange:_,density:`compact`,stateFilter:S,onStateFilterChange:C,onSelect:e=>j({kind:`issue`,issue:e})}):(0,Y.jsx)(Ti,{environmentId:i,cwd:o,projectId:a,searchInputRef:k,query:v,onQueryChange:y,stateFilter:w,onStateFilterChange:T,onSelect:e=>j({kind:`workItem`,workItem:e})})}),t[16]=f,t[17]=j,t[18]=o,t[19]=i,t[20]=g,t[21]=S,t[22]=m,t[23]=b,t[24]=a,t[25]=u,t[26]=v,t[27]=w,t[28]=te):te=t[28];let ne;t[29]!==ee||t[30]!==te?(ne=(0,Y.jsxs)(wc,{align:`start`,side:`bottom`,className:`w-[30rem] overflow-hidden p-0`,viewportClassName:`p-0 [--viewport-inline-padding:0px]`,children:[ee,te]}),t[29]=ee,t[30]=te,t[31]=ne):ne=t[31];let B;return t[32]!==c||t[33]!==ne||t[34]!==L?(B=(0,Y.jsxs)(Ec,{open:c,onOpenChange:l,children:[L,ne]}),t[32]=c,t[33]=ne,t[34]=L,t[35]=B):B=t[35],B}function BM(e){let t=(0,J.c)(4),{kind:n}=e;switch(n){case`pr`:{let e;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(Yi,{"aria-label":`Pull request`,className:G(`size-3.5 shrink-0`,`text-emerald-500 dark:text-emerald-400`)}),t[0]=e):e=t[0],e}case`issue`:{let e;return t[1]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(vr,{"aria-label":`Issue`,className:G(`size-3.5 shrink-0`,`text-sky-500 dark:text-sky-400`)}),t[1]=e):e=t[1],e}case`workItem`:{let e;return t[2]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(Ts,{"aria-label":`Jira work item`,className:G(`size-3.5 shrink-0`,`text-violet-500 dark:text-violet-400`)}),t[2]=e):e=t[2],e}case`branch`:{let e;return t[3]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(Ji,{"aria-hidden":!0,className:G(`size-3.5 shrink-0`,`text-muted-foreground`)}),t[3]=e):e=t[3],e}default:return null}}function VM({environmentId:e,cwd:t,query:n,searchInputRef:r,onQueryChange:i,onSelect:a}){let{refs:o,isPending:s}=Cu({environmentId:e,cwd:t,query:n.trim()}),c=o.slice(0,RM);return(0,Y.jsxs)(`div`,{className:`flex h-full min-h-0 flex-col`,children:[(0,Y.jsx)(`div`,{className:`border-border/40 border-b px-2 py-1.5`,children:(0,Y.jsxs)(`div`,{className:`relative`,children:[(0,Y.jsx)(Ji,{className:`-translate-y-1/2 absolute top-1/2 left-2 size-3.5 text-muted-foreground`}),(0,Y.jsx)(vs,{ref:r,value:n,onChange:e=>i(e.target.value),placeholder:`Search branches...`,className:`h-8 pl-7 text-sm`})]})}),(0,Y.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto`,children:s&&c.length===0?(0,Y.jsx)(`p`,{className:`px-2.5 py-4 text-sm text-muted-foreground`,children:`Loading branches...`}):c.length===0?(0,Y.jsx)(`p`,{className:`px-2.5 py-4 text-sm text-muted-foreground`,children:`No branches match this search.`}):c.map(e=>(0,Y.jsxs)(`button`,{type:`button`,onClick:()=>a(e.name),className:`flex w-full cursor-pointer items-center gap-2 px-2.5 py-1.5 text-left transition-colors hover:bg-accent/60`,children:[(0,Y.jsx)(Ji,{className:`size-3.5 shrink-0 text-muted-foreground`}),(0,Y.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-mono text-xs`,children:e.name}),e.isRemote?(0,Y.jsx)(`span`,{className:G(`shrink-0 text-[10px] text-muted-foreground/55`),children:e.remoteName??`remote`}):e.current?(0,Y.jsx)(`span`,{className:G(`shrink-0 text-[10px] text-muted-foreground/55`),children:`current`}):e.isDefault?(0,Y.jsx)(`span`,{className:`shrink-0 text-[10px] text-muted-foreground/55`,children:`default`}):null]},e.name))})]})}function HM(e){let{draft:t,worktrees:n}=e;return t.worktreePath?{kind:`existingWorktree`,worktree:n.find(e=>e.worktreePath===t.worktreePath)??{worktreeId:t.worktreePath,worktreePath:t.worktreePath,branch:``,title:null}}:t.envMode===`worktree`?{kind:`newWorktree`,worktree:null}:{kind:`projectRoot`,worktree:null}}function UM(e){switch(e.kind){case`existingWorktree`:return{envMode:`local`,worktreePath:e.worktree?.worktreePath??null,branch:e.worktree?.branch||null,worktreeSource:null};case`newWorktree`:return{envMode:`worktree`,worktreePath:null};case`projectRoot`:return{envMode:`local`,worktreePath:null,branch:null,worktreeSource:null}}}function WM(e){let t=e.title?.trim();if(t)return t;let n=e.branch.trim();if(n)return n;let r=e.worktreePath.split(`/`).filter(Boolean);return r[r.length-1]??e.worktreePath}function GM(e){switch(e.kind){case`existingWorktree`:return e.worktree?WM(e.worktree):`a worktree`;case`newWorktree`:return`a new worktree`;case`projectRoot`:return`the project root`}}function KM(e){return e.kind!==`existingWorktree`}function qM(e){return e.kind===`newWorktree`?`from`:`on`}var JM=`__project_root__`,YM=`__new_worktree__`;function XM(e){let t=(0,J.c)(87),{draftId:n,environmentId:r,threadId:i,projectId:a,projectEnvironmentId:s,projectName:c,envLocked:l,availableEnvironments:u,onEnvironmentChange:d,onComposerFocusRequest:f,onCheckoutPullRequestRequest:p,cwd:m}=e,h=qt(QM),g;t[0]===n?g=t[1]:(g=e=>n?e.getDraftSession(n):null,t[0]=n,t[1]=g);let _=qt(g),v;t[2]!==s||t[3]!==a?(v=s&&a?o(s,a):null,t[2]=s,t[3]=a,t[4]=v):v=t[4];let y=v,b;t[5]===y?b=t[6]:(b=e=>ve(e,y),t[5]=y,t[6]=b);let x=oe($a(b)),S;t[7]===x?S=t[8]:(S=x.flatMap(ZM),t[7]=x,t[8]=S);let C=S,w,T,E,D,O,k,A,j,M,N,P,F,I;if(t[9]!==u.length||t[10]!==n||t[11]!==_?.branch||t[12]!==_?.envMode||t[13]!==_?.worktreePath||t[14]!==_?.worktreeSource||t[15]!==l||t[16]!==f||t[17]!==d||t[18]!==s||t[19]!==a||t[20]!==c||t[21]!==h||t[22]!==C){j=Symbol.for(`react.early_return_sentinel`);bb0:{E=HM({draft:{envMode:_?.envMode??`local`,worktreePath:_?.worktreePath??null},worktrees:C});let e;t[36]!==n||t[37]!==f||t[38]!==h?(e=e=>{n&&(h(n,UM(e)),f?.())},t[36]=n,t[37]=f,t[38]=h,t[39]=e):e=t[39];let r=e;D=u.length>1&&d!==void 0,w=n!==void 0&&!l;let i=_?.worktreeSource??null,o;t[40]!==_?.branch||t[41]!==i?.label?(o=i?.label??_?.branch?.trim()??`Select a source`,t[40]=_?.branch,t[41]=i?.label,t[42]=o):o=t[42],k=o;let p;t[43]!==_?.branch||t[44]!==i?(p=i?i.kind:_?.branch?.trim()?`branch`:null,t[43]=_?.branch,t[44]=i,t[45]=p):p=t[45],O=p;let m;if(t[46]!==n||t[47]!==f||t[48]!==h?(m=e=>{n&&(h(n,e.kind===`branch`?{branch:e.branchName,worktreeSource:null,worktreePath:null}:{branch:null,worktreePath:null,worktreeSource:$M(e)}),f?.())},t[46]=n,t[47]=f,t[48]=h,t[49]=m):m=t[49],T=m,!a||!s||!c){j=null;break bb0}M=`flex max-w-208 flex-wrap items-center justify-center gap-x-0.5 gap-y-1 text-[13px] text-muted-foreground/70`,N=`new-thread-work-location`,t[50]===Symbol.for(`react.memo_cache_sentinel`)?(P=(0,Y.jsx)(`span`,{className:`px-1`,children:`Work in`}),t[50]=P):P=t[50],t[51]!==w||t[52]!==n||t[53]!==s||t[54]!==a||t[55]!==c?(F=w&&n?(0,Y.jsx)(Yu,{activeProjectId:a,activeProjectEnvironmentId:s,appearance:`sentence`,draftId:n,label:c}):(0,Y.jsx)(eN,{children:c}),t[51]=w,t[52]=n,t[53]=s,t[54]=a,t[55]=c,t[56]=F):F=t[56],t[57]===Symbol.for(`react.memo_cache_sentinel`)?(I=(0,Y.jsx)(`span`,{"aria-hidden":!0,className:`px-1 text-muted-foreground/35`,children:`›`}),t[57]=I):I=t[57],A=w?(0,Y.jsx)(tN,{location:E,worktrees:C,onSelect:r}):(0,Y.jsx)(eN,{children:GM(E)})}t[9]=u.length,t[10]=n,t[11]=_?.branch,t[12]=_?.envMode,t[13]=_?.worktreePath,t[14]=_?.worktreeSource,t[15]=l,t[16]=f,t[17]=d,t[18]=s,t[19]=a,t[20]=c,t[21]=h,t[22]=C,t[23]=w,t[24]=T,t[25]=E,t[26]=D,t[27]=O,t[28]=k,t[29]=A,t[30]=j,t[31]=M,t[32]=N,t[33]=P,t[34]=F,t[35]=I}else w=t[23],T=t[24],E=t[25],D=t[26],O=t[27],k=t[28],A=t[29],j=t[30],M=t[31],N=t[32],P=t[33],F=t[34],I=t[35];if(j!==Symbol.for(`react.early_return_sentinel`))return j;let L;t[58]!==w||t[59]!==m||t[60]!==n||t[61]!==l||t[62]!==r||t[63]!==T||t[64]!==E||t[65]!==p||t[66]!==f||t[67]!==a||t[68]!==O||t[69]!==k||t[70]!==i?(L=KM(E)?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`span`,{className:`px-1`,children:qM(E)}),E.kind===`newWorktree`&&w&&a?(0,Y.jsx)(zM,{label:k,sourceKind:O,environmentId:r,projectId:a,cwd:m,onSelect:T}):(0,Y.jsx)(Vu,{className:`text-[13px] text-foreground/85 hover:text-foreground`,environmentId:r,threadId:i,...n?{draftId:n}:{},envLocked:l,omitBasePrefix:!0,...p?{onCheckoutPullRequestRequest:p}:{},...f?{onComposerFocusRequest:f}:{}})]}):null,t[58]=w,t[59]=m,t[60]=n,t[61]=l,t[62]=r,t[63]=T,t[64]=E,t[65]=p,t[66]=f,t[67]=a,t[68]=O,t[69]=k,t[70]=i,t[71]=L):L=t[71];let R;t[72]!==u||t[73]!==l||t[74]!==r||t[75]!==d||t[76]!==D?(R=D&&d?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`span`,{className:`px-1`,children:`on`}),(0,Y.jsx)(Hu,{envLocked:l,environmentId:r,availableEnvironments:u,onEnvironmentChange:d})]}):null,t[72]=u,t[73]=l,t[74]=r,t[75]=d,t[76]=D,t[77]=R):R=t[77];let z;return t[78]!==A||t[79]!==L||t[80]!==R||t[81]!==M||t[82]!==N||t[83]!==P||t[84]!==F||t[85]!==I?(z=(0,Y.jsxs)(`p`,{className:M,"data-testid":N,children:[P,F,I,A,L,R]}),t[78]=A,t[79]=L,t[80]=R,t[81]=M,t[82]=N,t[83]=P,t[84]=F,t[85]=I,t[86]=z):z=t[86],z}function ZM(e){return e.worktreePath&&e.archivedAt===null?[{worktreeId:e.id,worktreePath:e.worktreePath,branch:e.branch,title:e.title??null}]:[]}function QM(e){return e.setDraftThreadContext}function $M(e){return e.kind===`pr`?{kind:`pr`,number:e.changeRequest.number,label:`#${e.changeRequest.number} ${e.changeRequest.title}`}:e.kind===`issue`?{kind:`issue`,number:e.issue.number,title:e.issue.title,label:`#${e.issue.number} ${e.issue.title}`}:{kind:`workItem`,provider:e.workItem.provider,key:e.workItem.key,title:e.workItem.title,...e.workItem.state?{state:e.workItem.state}:{},...e.workItem.stateName?{stateName:e.workItem.stateName}:{},...e.workItem.url?{url:e.workItem.url}:{},label:`${e.workItem.key} ${e.workItem.title}`}}function eN(e){let t=(0,J.c)(2),{children:n}=e,r;return t[0]===n?r=t[1]:(r=(0,Y.jsx)(`span`,{className:`px-1 font-medium text-foreground/85`,children:n}),t[0]=n,t[1]=r),r}function tN(e){let t=(0,J.c)(32),{location:n,worktrees:r,onSelect:i}=e,[a,o]=(0,q.useState)(!1),s=(0,q.useRef)(null),c;t[0]===r?c=t[1]:(c=[JM,...r.map(rN),YM],t[0]=r,t[1]=c);let l=c,u;t[2]===r?u=t[3]:(u=new Map(r.map(nN)),t[2]=r,t[3]=u);let d=u,f=n.kind===`projectRoot`?JM:n.kind===`newWorktree`?YM:n.worktree?.worktreeId??JM,p;t[4]!==i||t[5]!==d?(p=e=>{if(o(!1),e===JM){i({kind:`projectRoot`,worktree:null});return}if(e===YM){i({kind:`newWorktree`,worktree:null});return}let t=d.get(e);t&&i({kind:`existingWorktree`,worktree:t})},t[4]=i,t[5]=d,t[6]=p):p=t[6];let m=p,h;t[7]===n?h=t[8]:(h=GM(n),t[7]=n,t[8]=h);let g=`Change where this thread runs (currently ${h})`,_;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(_=(0,Y.jsx)(`button`,{type:`button`}),t[9]=_):_=t[9];let v;t[10]===n.kind?v=t[11]:(v=(0,Y.jsx)(iN,{kind:n.kind}),t[10]=n.kind,t[11]=v);let y;t[12]===n?y=t[13]:(y=GM(n),t[12]=n,t[13]=y);let b;t[14]===y?b=t[15]:(b=(0,Y.jsx)(`span`,{className:`min-w-0 max-w-[16rem] truncate`,children:y}),t[14]=y,t[15]=b);let x;t[16]!==g||t[17]!==v||t[18]!==b?(x=(0,Y.jsxs)(rs,{ref:s,"aria-label":g,className:`inline-flex cursor-pointer items-center gap-1 rounded-md px-1 py-0.5 font-medium text-foreground/85 transition-colors hover:bg-accent hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring`,render:_,children:[v,b]}),t[16]=g,t[17]=v,t[18]=b,t[19]=x):x=t[19];let S;t[20]===Symbol.for(`react.memo_cache_sentinel`)?(S=(0,Y.jsx)(ns,{children:`Nowhere to run this thread.`}),t[20]=S):S=t[20];let C;t[21]!==f||t[22]!==l||t[23]!==m||t[24]!==d?(C=(0,Y.jsxs)($o,{anchor:s,align:`start`,side:`bottom`,className:`w-80`,children:[S,(0,Y.jsx)(ts,{className:`max-h-72`,children:l.map((e,t)=>{let n=d.get(e),r=e===JM?`The project root`:e===YM?`A new worktree`:n?WM(n):e,i=e===JM?`Work directly in the checked-out project directory`:e===YM?`Branch off and create the worktree when you send`:n?.worktreePath??``;return(0,Y.jsx)(Qo,{hideIndicator:!0,index:t,value:e,onClick:()=>m(e),children:(0,Y.jsxs)(`div`,{className:`flex w-full min-w-0 items-center gap-2 py-0.5 text-left`,children:[(0,Y.jsx)(iN,{kind:e===JM?`projectRoot`:e===YM?`newWorktree`:`existingWorktree`}),(0,Y.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,Y.jsx)(`span`,{className:G(`truncate text-sm`,e===f&&`font-medium text-foreground`),children:r}),i?(0,Y.jsx)(`span`,{className:`truncate text-muted-foreground text-xs`,children:i}):null]})]})},e)})})]}),t[21]=f,t[22]=l,t[23]=m,t[24]=d,t[25]=C):C=t[25];let w;return t[26]!==f||t[27]!==l||t[28]!==a||t[29]!==x||t[30]!==C?(w=(0,Y.jsxs)(Zo,{items:l,filteredItems:l,autoHighlight:!0,open:a,value:f,onOpenChange:o,children:[x,C]}),t[26]=f,t[27]=l,t[28]=a,t[29]=x,t[30]=C,t[31]=w):w=t[31],w}function nN(e){return[e.worktreeId,e]}function rN(e){return e.worktreeId}function iN(e){let t=(0,J.c)(3),{kind:n}=e;if(n===`newWorktree`){let e;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(Cl,{className:`size-3.5 shrink-0 text-muted-foreground`}),t[0]=e):e=t[0],e}if(n===`existingWorktree`){let e;return t[1]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(Sl,{className:`size-3.5 shrink-0 text-muted-foreground`}),t[1]=e):e=t[1],e}let r;return t[2]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,Y.jsx)(qi,{className:`size-3.5 shrink-0 text-muted-foreground`}),t[2]=r):r=t[2],r}function aN(e){let t=(0,J.c)(45),{query:n,focusRequestId:r,matchCount:i,selectedIndex:a,onQueryChange:o,onNext:s,onPrevious:c,onClose:l}=e,u=(0,q.useRef)(null),d=n.trim().length===0?`Thread`:i>0?`${a+1} / ${i}`:`No results`,f;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(f=()=>{let e=window.requestAnimationFrame(()=>{u.current?.focus(),u.current?.select()});return()=>{window.cancelAnimationFrame(e)}},t[0]=f):f=t[0];let p;t[1]===r?p=t[2]:(p=[r],t[1]=r,t[2]=p),(0,q.useEffect)(f,p);let m;t[3]===s?m=t[4]:(m=e=>{e.preventDefault(),s()},t[3]=s,t[4]=m);let h;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(h=(0,Y.jsx)(Ia,{className:`ml-1 size-4 shrink-0 text-muted-foreground/70`,"aria-hidden":!0}),t[5]=h):h=t[5];let g;t[6]===o?g=t[7]:(g=e=>o(e.target.value),t[6]=o,t[7]=g);let _;t[8]!==l||t[9]!==s||t[10]!==c?(_=e=>{if(e.key===`Escape`){e.preventDefault(),l();return}e.key===`Enter`&&(e.preventDefault(),e.shiftKey?c():s())},t[8]=l,t[9]=s,t[10]=c,t[11]=_):_=t[11];let v;t[12]!==n||t[13]!==g||t[14]!==_?(v=(0,Y.jsx)(vs,{ref:u,type:`search`,size:`sm`,unstyled:!0,value:n,placeholder:`Find in thread`,"aria-label":`Find in thread`,className:`min-w-0 flex-1`,onChange:g,onKeyDown:_}),t[12]=n,t[13]=g,t[14]=_,t[15]=v):v=t[15];let y;t[16]===d?y=t[17]:(y=(0,Y.jsx)(`span`,{className:`min-w-14 shrink-0 text-right text-xs text-muted-foreground/75`,children:d}),t[16]=d,t[17]=y);let b=i===0,x;t[18]===Symbol.for(`react.memo_cache_sentinel`)?(x=(0,Y.jsx)(ii,{className:`size-3.5`}),t[18]=x):x=t[18];let S;t[19]!==c||t[20]!==b?(S=(0,Y.jsx)(Po,{render:(0,Y.jsx)(K,{"aria-label":`Previous match`,disabled:b,size:`icon-xs`,type:`button`,variant:`ghost`,onClick:c,children:x})}),t[19]=c,t[20]=b,t[21]=S):S=t[21];let C;t[22]===Symbol.for(`react.memo_cache_sentinel`)?(C=(0,Y.jsx)(Fo,{children:`Previous match`}),t[22]=C):C=t[22];let w;t[23]===S?w=t[24]:(w=(0,Y.jsxs)(Io,{children:[S,C]}),t[23]=S,t[24]=w);let T=i===0,E;t[25]===Symbol.for(`react.memo_cache_sentinel`)?(E=(0,Y.jsx)(Xr,{className:`size-3.5`}),t[25]=E):E=t[25];let D;t[26]!==s||t[27]!==T?(D=(0,Y.jsx)(Po,{render:(0,Y.jsx)(K,{"aria-label":`Next match`,disabled:T,size:`icon-xs`,type:`button`,variant:`ghost`,onClick:s,children:E})}),t[26]=s,t[27]=T,t[28]=D):D=t[28];let O;t[29]===Symbol.for(`react.memo_cache_sentinel`)?(O=(0,Y.jsx)(Fo,{children:`Next match`}),t[29]=O):O=t[29];let k;t[30]===D?k=t[31]:(k=(0,Y.jsxs)(Io,{children:[D,O]}),t[30]=D,t[31]=k);let A;t[32]===Symbol.for(`react.memo_cache_sentinel`)?(A=(0,Y.jsx)(Qa,{className:`size-3.5`}),t[32]=A):A=t[32];let j;t[33]===l?j=t[34]:(j=(0,Y.jsx)(Po,{render:(0,Y.jsx)(K,{"aria-label":`Close find`,size:`icon-xs`,type:`button`,variant:`ghost`,onClick:l,children:A})}),t[33]=l,t[34]=j);let M;t[35]===Symbol.for(`react.memo_cache_sentinel`)?(M=(0,Y.jsx)(Fo,{children:`Close find`}),t[35]=M):M=t[35];let N;t[36]===j?N=t[37]:(N=(0,Y.jsxs)(Io,{children:[j,M]}),t[36]=j,t[37]=N);let P;return t[38]!==w||t[39]!==k||t[40]!==N||t[41]!==m||t[42]!==v||t[43]!==y?(P=(0,Y.jsx)(`div`,{className:`pointer-events-none absolute inset-x-0 top-[calc(var(--chat-header-clearance,0px)+0.75rem)] z-30 flex justify-center px-3`,children:(0,Y.jsxs)(`form`,{className:`pointer-events-auto flex h-9 w-full max-w-md items-center gap-1 rounded-lg border border-border/80 bg-popover/96 px-1.5 shadow-lg/12 backdrop-blur`,"data-thread-message-search":`true`,onSubmit:m,children:[h,v,y,w,k,N]})}),t[38]=w,t[39]=k,t[40]=N,t[41]=m,t[42]=v,t[43]=y,t[44]=P):P=t[44],P}var oN=`Invalid keybinding.`;function sN(e){let t=e?.trim()??``;return t.length>0?t:null}function cN(e){let t=sN(e.keybinding);if(!t)return null;let n=x(M)({key:t,command:e.command});if(n._tag===`None`)throw Error(oN);return n.value}function lN(e,t){for(let n=e.length-1;n>=0;--n){let r=e[n];if(!r||r.command!==t)continue;let i=[];r.shortcut.modKey&&i.push(`mod`),r.shortcut.ctrlKey&&i.push(`ctrl`),r.shortcut.metaKey&&i.push(`meta`),r.shortcut.altKey&&i.push(`alt`),r.shortcut.shiftKey&&i.push(`shift`);let a=r.shortcut.key===` `?`space`:r.shortcut.key===`escape`?`esc`:r.shortcut.key;return i.push(a),i.join(`+`)}return null}function uN(e){let t=e.trim().toLowerCase().replace(/[^a-z0-9]+/g,`-`).replace(/^-+|-+$/g,``);return t.length===0?`script`:t.length<=24?t:t.slice(0,24).replace(/-+$/g,``)||`script`}var dN=e=>j.make(`script.${e}.run`);function fN(e){let t=e.trim();if(!p(j)(t))return null;let[n,,r]=j.parts;return t.slice(n.literal.length,-r.literal.length)}function pN(e,t){let n=new Set(Array.from(t)),r=uN(e);if(!n.has(r))return r;let i=2;for(;i<1e4;){let e=`${r}-${i}`,t=e.length<=24?e:`${r.slice(0,Math.max(1,24-String(i).length-1))}-${i}`;if(!n.has(t))return t;i+=1}return`${r}-${Date.now()}`.slice(0,24)}function mN(e){return e.find(e=>!e.runOnWorktreeCreate)??e[0]??null}var hN=`flex w-fit items-center gap-1`,gN=`h-8 min-w-8 shrink-0 rounded-md border-0 bg-transparent px-2 text-muted-foreground/72 shadow-none transition-[background-color,color] before:hidden hover:bg-foreground/8 hover:text-foreground focus-visible:ring-1 focus-visible:ring-ring/70 data-pressed:bg-foreground/10 data-pressed:text-foreground sm:h-7 sm:min-w-7`,_N=`size-8 min-w-8 shrink-0 rounded-md border-0 bg-transparent px-0 text-muted-foreground/72 shadow-none transition-[background-color,color] before:hidden hover:bg-foreground/8 hover:text-foreground focus-visible:ring-1 focus-visible:ring-ring/70 data-pressed:bg-foreground/10 data-pressed:text-foreground sm:size-7 sm:min-w-7`,vN=[{id:`play`,label:`Play`},{id:`test`,label:`Test`},{id:`lint`,label:`Lint`},{id:`configure`,label:`Configure`},{id:`build`,label:`Build`},{id:`debug`,label:`Debug`}];function yN(e){let t=(0,J.c)(12),{icon:n,className:r}=e,i=r===void 0?`size-3.5`:r;if(n===`test`){let e;return t[0]===i?e=t[1]:(e=(0,Y.jsx)(xl,{className:i}),t[0]=i,t[1]=e),e}if(n===`lint`){let e;return t[2]===i?e=t[3]:(e=(0,Y.jsx)(di,{className:i}),t[2]=i,t[3]=e),e}if(n===`configure`){let e;return t[4]===i?e=t[5]:(e=(0,Y.jsx)(Za,{className:i}),t[4]=i,t[5]=e),e}if(n===`build`){let e;return t[6]===i?e=t[7]:(e=(0,Y.jsx)(wl,{className:i}),t[6]=i,t[7]=e),e}if(n===`debug`){let e;return t[8]===i?e=t[9]:(e=(0,Y.jsx)(hl,{className:i}),t[8]=i,t[9]=e),e}let a;return t[10]===i?a=t[11]:(a=(0,Y.jsx)(Ma,{className:i}),t[10]=i,t[11]=a),a}function bN(e){let t=e.toLowerCase();return t===`meta`||t===`control`||t===`ctrl`||t===`shift`||t===`alt`||t===`option`?null:t===` `?`space`:t===`escape`?`esc`:t===`arrowup`?`arrowup`:t===`arrowdown`?`arrowdown`:t===`arrowleft`?`arrowleft`:t===`arrowright`?`arrowright`:t.length===1||t.startsWith(`f`)&&t.length<=3||t===`enter`||t===`tab`||t===`backspace`||t===`delete`||t===`home`||t===`end`||t===`pageup`||t===`pagedown`?t:null}function xN(e){let t=bN(e.key);if(!t)return null;let n=[];return io(navigator.platform)?(e.metaKey&&n.push(`mod`),e.ctrlKey&&n.push(`ctrl`)):(e.ctrlKey&&n.push(`mod`),e.metaKey&&n.push(`meta`)),e.altKey&&n.push(`alt`),e.shiftKey&&n.push(`shift`),n.length===0?null:(n.push(t),n.join(`+`))}function SN({scripts:e,keybindings:t,preferredScriptId:n=null,onRunScript:r,onAddScript:i,onUpdateScript:a,onDeleteScript:o}){let s=q.useId(),[c,l]=(0,q.useState)(null),[u,d]=(0,q.useState)(!1),[f,p]=(0,q.useState)(``),[m,h]=(0,q.useState)(``),[g,_]=(0,q.useState)(`play`),[v,y]=(0,q.useState)(!1),[b,x]=(0,q.useState)(!1),[S,C]=(0,q.useState)(``),[w,T]=(0,q.useState)(null),[E,D]=(0,q.useState)(!1),O=(0,q.useMemo)(()=>{if(n){let t=e.find(e=>e.id===n);if(t)return t}return mN(e)},[n,e]),k=c!==null,A=`data-highlighted:bg-transparent data-highlighted:text-foreground hover:bg-accent hover:text-accent-foreground focus-visible:bg-accent focus-visible:text-accent-foreground data-highlighted:hover:bg-accent data-highlighted:hover:text-accent-foreground data-highlighted:focus-visible:bg-accent data-highlighted:focus-visible:text-accent-foreground`,j=e=>{if(e.key===`Tab`)return;if(e.preventDefault(),e.key===`Backspace`||e.key===`Delete`){C(``);return}let t=xN(e);t&&C(t)},M=async t=>{t.preventDefault();let n=f.trim(),r=m.trim();if(n.length===0){T(`Name is required.`);return}if(r.length===0){T(`Command is required.`);return}T(null);try{let t=c??pN(n,e.map(e=>e.id)),o=cN({keybinding:S,command:dN(t)}),s={name:n,command:r,icon:g,runOnWorktreeCreate:b,keybinding:o?.key??null};c?await a(c,s):await i(s),d(!1),y(!1)}catch(e){T(e instanceof Error?e.message:`Failed to save action.`)}},N=()=>{l(null),p(``),h(``),_(`play`),y(!1),x(!1),C(``),T(null),d(!0)},P=e=>{l(e.id),p(e.name),h(e.command),_(e.icon),y(!1),x(e.runOnWorktreeCreate),C(lN(t,dN(e.id))??``),T(null),d(!0)},F=(0,q.useCallback)(()=>{c&&(D(!1),d(!1),o(c))},[c,o]);return(0,Y.jsxs)(Y.Fragment,{children:[O?(0,Y.jsxs)(`div`,{"aria-label":`Project scripts`,className:hN,role:`group`,children:[(0,Y.jsxs)(K,{size:`xs`,variant:`ghost`,className:gN,onClick:()=>r(O),title:`Run ${O.name}`,children:[(0,Y.jsx)(yN,{icon:O.icon}),(0,Y.jsx)(`span`,{className:`sr-only @3xl/header-actions:not-sr-only @3xl/header-actions:ml-0.5`,children:O.name})]}),(0,Y.jsxs)(nc,{highlightItemOnHover:!1,children:[(0,Y.jsx)(ac,{render:(0,Y.jsx)(K,{size:`icon-xs`,variant:`ghost`,className:_N,"aria-label":`Script actions`}),children:(0,Y.jsx)(Xr,{className:`size-4`})}),(0,Y.jsxs)($s,{align:`end`,children:[e.map(e=>{let n=Co(t,dN(e.id));return(0,Y.jsxs)(oc,{className:`group ${A}`,onClick:()=>r(e),children:[(0,Y.jsx)(yN,{icon:e.icon,className:`size-4`}),(0,Y.jsx)(`span`,{className:`truncate`,children:e.runOnWorktreeCreate?`${e.name} (setup)`:e.name}),(0,Y.jsxs)(`span`,{className:`relative ms-auto flex h-6 min-w-6 items-center justify-end`,children:[n&&(0,Y.jsx)(tc,{className:`ms-0 transition-opacity group-hover:opacity-0 group-focus-visible:opacity-0`,children:n}),(0,Y.jsx)(K,{type:`button`,variant:`ghost`,size:`icon-xs`,className:`absolute right-0 top-1/2 size-6 -translate-y-1/2 opacity-0 pointer-events-none transition-opacity group-hover:opacity-100 group-hover:pointer-events-auto group-focus-visible:opacity-100 group-focus-visible:pointer-events-auto`,"aria-label":`Edit ${e.name}`,onPointerDown:e=>{e.preventDefault(),e.stopPropagation()},onClick:t=>{t.preventDefault(),t.stopPropagation(),P(e)},children:(0,Y.jsx)(pr,{className:`size-3.5`})})]})]},e.id)}),(0,Y.jsxs)(oc,{className:A,onClick:N,children:[(0,Y.jsx)(Pa,{className:`size-4`}),`Add action`]})]})]})]}):(0,Y.jsxs)(K,{size:`xs`,variant:`ghost`,className:gN,onClick:N,title:`Add action`,children:[(0,Y.jsx)(Pa,{className:`size-3.5`}),(0,Y.jsx)(`span`,{className:`sr-only @3xl/header-actions:not-sr-only @3xl/header-actions:ml-0.5`,children:`Add action`})]}),(0,Y.jsx)(Zs,{onOpenChange:e=>{d(e),e||y(!1)},onOpenChangeComplete:e=>{e||(l(null),p(``),h(``),_(`play`),x(!1),C(``),T(null))},open:u,children:(0,Y.jsxs)(Xs,{className:`project-glass-surface`,surface:`glass`,children:[(0,Y.jsxs)(Gs,{children:[(0,Y.jsx)(Ks,{children:k?`Edit Action`:`Add Action`}),(0,Y.jsx)(Ys,{children:`Actions are project-scoped commands you can run from the top bar or keybindings.`})]}),(0,Y.jsx)(Js,{children:(0,Y.jsxs)(`form`,{id:s,className:`space-y-4`,onSubmit:M,children:[(0,Y.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Y.jsx)(jc,{htmlFor:`script-name`,children:`Name`}),(0,Y.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Y.jsxs)(Ec,{onOpenChange:y,open:v,children:[(0,Y.jsx)(Tc,{render:(0,Y.jsx)(K,{type:`button`,variant:`outline`,className:`size-9 shrink-0 hover:bg-popover active:bg-popover data-pressed:bg-popover data-pressed:shadow-xs/5 data-pressed:before:shadow-[0_1px_--theme(--color-black/4%)] dark:data-pressed:before:shadow-[0_-1px_--theme(--color-white/6%)]`,"aria-label":`Choose icon`}),children:(0,Y.jsx)(yN,{icon:g,className:`size-4.5`})}),(0,Y.jsx)(wc,{align:`start`,children:(0,Y.jsx)(`div`,{className:`grid grid-cols-3 gap-2`,children:vN.map(e=>{let t=e.id===g;return(0,Y.jsxs)(`button`,{type:`button`,className:`relative flex flex-col items-center gap-2 rounded-md border px-2 py-2 text-xs ${t?`border-primary/70 bg-primary/10`:`border-border/70 hover:bg-accent/60`}`,onClick:()=>{_(e.id),y(!1)},children:[(0,Y.jsx)(yN,{icon:e.id,className:`size-4`}),(0,Y.jsx)(`span`,{children:e.label})]},e.id)})})})]}),(0,Y.jsx)(vs,{id:`script-name`,autoFocus:!0,placeholder:`Test`,value:f,onChange:e=>p(e.target.value)})]})]}),(0,Y.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Y.jsx)(jc,{htmlFor:`script-keybinding`,children:`Keybinding`}),(0,Y.jsx)(vs,{id:`script-keybinding`,placeholder:`Press shortcut`,value:S,readOnly:!0,onKeyDown:j}),(0,Y.jsxs)(`p`,{className:`text-xs text-muted-foreground`,children:[`Press a shortcut. Use `,(0,Y.jsx)(`code`,{children:`Backspace`}),` to clear.`]})]}),(0,Y.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Y.jsx)(jc,{htmlFor:`script-command`,children:`Command`}),(0,Y.jsx)(lc,{id:`script-command`,placeholder:`bun test`,value:m,onChange:e=>h(e.target.value)})]}),(0,Y.jsxs)(`label`,{className:`flex items-center justify-between gap-3 rounded-md border border-border/70 px-3 py-2 text-sm`,children:[(0,Y.jsx)(`span`,{children:`Run automatically on worktree creation`}),(0,Y.jsx)(_s,{checked:b,onCheckedChange:e=>x(!!e)})]}),w&&(0,Y.jsx)(`p`,{className:`text-sm text-destructive`,children:w})]})}),(0,Y.jsxs)(qs,{children:[k&&(0,Y.jsx)(K,{type:`button`,variant:`destructive-outline`,className:`mr-auto`,onClick:()=>D(!0),children:`Delete`}),(0,Y.jsx)(K,{type:`button`,variant:`outline`,onClick:()=>{d(!1)},children:`Cancel`}),(0,Y.jsx)(K,{form:s,type:`submit`,children:k?`Save changes`:`Save action`})]})]})}),(0,Y.jsx)(gc,{open:E,onOpenChange:D,children:(0,Y.jsxs)(pc,{children:[(0,Y.jsxs)(uc,{children:[(0,Y.jsxs)(hc,{children:[`Delete action "`,f,`"?`]}),(0,Y.jsx)(mc,{children:`This action cannot be undone.`})]}),(0,Y.jsxs)(dc,{children:[(0,Y.jsx)(fc,{render:(0,Y.jsx)(K,{variant:`outline`}),children:`Cancel`}),(0,Y.jsx)(K,{variant:`destructive`,onClick:F,children:`Delete action`})]})]})})]})}var CN=(0,q.memo)(function(e){let t=(0,J.c)(44),{keybindings:n,availableEditors:r,openInCwd:i}=e,[a,o]=Dc(r),s;t[0]===r?s=t[1]:(s=il(navigator.platform,r),t[0]=r,t[1]=s);let c=s,l;t[2]!==c||t[3]!==a?(l=c.find(e=>{let{value:t}=e;return t===a})??null,t[2]=c,t[3]=a,t[4]=l):l=t[4];let u=l,d;t[5]!==i||t[6]!==a||t[7]!==o?(d=e=>{let t=pe();if(!t||!i)return;let n=e??a;n&&t.shell.openInEditor(i,n).then(()=>{kc(n)&&o(n)}).catch(e=>{console.error(`Failed to open ${n}.`,e)})},t[5]=i,t[6]=a,t[7]=o,t[8]=d):d=t[8];let f=d,p;t[9]===n?p=t[10]:(p=Co(n,`editor.openFavorite`),t[9]=n,t[10]=p);let m=p,h,g;t[11]!==n||t[12]!==i||t[13]!==a?(h=()=>{let e=e=>{let t=pe();jo(e)||ko(e,n)&&(!t||!i||a&&(e.preventDefault(),t.shell.openInEditor(i,a)))};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},g=[a,n,i],t[11]=n,t[12]=i,t[13]=a,t[14]=h,t[15]=g):(h=t[14],g=t[15]),(0,q.useEffect)(h,g);let _=!a||!i,v;t[16]!==f||t[17]!==a?(v=()=>f(a),t[16]=f,t[17]=a,t[18]=v):v=t[18];let y;t[19]===u?y=t[20]:(y=u?.Icon&&(0,Y.jsx)(u.Icon,{"aria-hidden":`true`,className:`size-3.5`}),t[19]=u,t[20]=y);let b;t[21]===Symbol.for(`react.memo_cache_sentinel`)?(b=(0,Y.jsx)(`span`,{className:`sr-only @3xl/header-actions:not-sr-only @3xl/header-actions:ml-0.5`,children:`Open`}),t[21]=b):b=t[21];let x;t[22]!==_||t[23]!==v||t[24]!==y?(x=(0,Y.jsxs)(K,{size:`xs`,variant:`ghost`,className:gN,disabled:_,onClick:v,children:[y,b]}),t[22]=_,t[23]=v,t[24]=y,t[25]=x):x=t[25];let S;t[26]===Symbol.for(`react.memo_cache_sentinel`)?(S=(0,Y.jsx)(ac,{render:(0,Y.jsx)(K,{"aria-label":`Copy options`,className:_N,size:`icon-xs`,variant:`ghost`}),children:(0,Y.jsx)(Xr,{"aria-hidden":`true`,className:`size-4`})}),t[26]=S):S=t[26];let C;t[27]===c.length?C=t[28]:(C=c.length===0&&(0,Y.jsx)(oc,{disabled:!0,children:`No installed editors found`}),t[27]=c.length,t[28]=C);let w;if(t[29]!==m||t[30]!==f||t[31]!==c||t[32]!==a){let e;t[34]!==m||t[35]!==f||t[36]!==a?(e=e=>{let{label:t,Icon:n,value:r}=e;return(0,Y.jsxs)(oc,{onClick:()=>f(r),children:[(0,Y.jsx)(n,{"aria-hidden":`true`,className:`text-muted-foreground`}),t,r===a&&m&&(0,Y.jsx)(tc,{children:m})]},r)},t[34]=m,t[35]=f,t[36]=a,t[37]=e):e=t[37],w=c.map(e),t[29]=m,t[30]=f,t[31]=c,t[32]=a,t[33]=w}else w=t[33];let T;t[38]!==C||t[39]!==w?(T=(0,Y.jsxs)(nc,{children:[S,(0,Y.jsxs)($s,{align:`end`,children:[C,w]})]}),t[38]=C,t[39]=w,t[40]=T):T=t[40];let E;return t[41]!==x||t[42]!==T?(E=(0,Y.jsxs)(`div`,{"aria-label":`Subscription actions`,className:hN,role:`group`,children:[x,T]}),t[41]=x,t[42]=T,t[43]=E):E=t[43],E}),wN=new Set([`main`,`master`]);function TN(e){if(e.origin===`main`)return!1;if(e.origin&&e.origin!==null)return!0;let t=e.branch?.trim()??``;return!(t.length===0||wN.has(t))}var EN=(0,q.memo)(function(e){let t=(0,J.c)(20),n;t[0]!==e.worktreeBranch||t[1]!==e.worktreeOrigin?(n=TN({origin:e.worktreeOrigin,branch:e.worktreeBranch}),t[0]=e.worktreeBranch,t[1]=e.worktreeOrigin,t[2]=n):n=t[2];let r=n,i;t[3]!==e.worktreeBranch||t[4]!==e.worktreeTitle?(i=(e.worktreeTitle?.trim()||e.worktreeBranch?.trim())??null,t[3]=e.worktreeBranch,t[4]=e.worktreeTitle,t[5]=i):i=t[5];let a=i,o;t[6]!==e.onSelectProject||t[7]!==e.projectName?(o=e.projectName?(0,Y.jsx)(DN,{label:e.projectName,onSelect:e.onSelectProject,prominent:!0}):null,t[6]=e.onSelectProject,t[7]=e.projectName,t[8]=o):o=t[8];let s;t[9]!==e.onSelectWorktree||t[10]!==r||t[11]!==a?(s=r&&a?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(ri,{className:`size-3 shrink-0 text-muted-foreground/60`,"aria-hidden":!0}),(0,Y.jsx)(DN,{label:a,onSelect:e.onSelectWorktree,mono:!0})]}):null,t[9]=e.onSelectWorktree,t[10]=r,t[11]=a,t[12]=s):s=t[12];let c;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,Y.jsx)(ri,{className:`size-3 shrink-0 text-muted-foreground/60`,"aria-hidden":!0}),t[13]=c):c=t[13];let l;t[14]===e.sessionTitle?l=t[15]:(l=(0,Y.jsx)(`span`,{className:`min-w-0 truncate text-foreground/85`,title:e.sessionTitle,children:e.sessionTitle}),t[14]=e.sessionTitle,t[15]=l);let u;return t[16]!==o||t[17]!==s||t[18]!==l?(u=(0,Y.jsxs)(`nav`,{"aria-label":`Breadcrumb`,className:`flex min-w-0 flex-1 items-center gap-1.5 text-sm font-medium`,children:[o,s,c,l]}),t[16]=o,t[17]=s,t[18]=l,t[19]=u):u=t[19],u});function DN(e){let t=(0,J.c)(16),n=e.mono?`font-mono text-xs`:``,r;t[0]===n?r=t[1]:(r=G(`min-w-0 truncate`,n),t[0]=n,t[1]=r);let i;t[2]!==e.label||t[3]!==r?(i=(0,Y.jsx)(`span`,{className:r,title:e.label,children:e.label}),t[2]=e.label,t[3]=r,t[4]=i):i=t[4];let a=i;if(e.onSelect){let n=e.onSelect,r=e.prominent?`text-foreground`:``,i;t[5]===r?i=t[6]:(i=G(`inline-flex min-w-0 items-center rounded-md px-1 py-0.5 -mx-1 text-foreground/80 hover:bg-accent/50 hover:text-foreground focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring`,r),t[5]=r,t[6]=i);let o;return t[7]!==e.onSelect||t[8]!==i||t[9]!==a?(o=(0,Y.jsx)(`button`,{type:`button`,onClick:n,className:i,children:a}),t[7]=e.onSelect,t[8]=i,t[9]=a,t[10]=o):o=t[10],o}let o=e.prominent?`text-foreground`:`text-foreground/80`,s;t[11]===o?s=t[12]:(s=G(`min-w-0`,o),t[11]=o,t[12]=s);let c;return t[13]!==s||t[14]!==a?(c=(0,Y.jsx)(`span`,{className:s,children:a}),t[13]=s,t[14]=a,t[15]=c):c=t[15],c}var ON=(0,q.memo)(function(e){let t=(0,J.c)(35),n;t[0]===e.onSelectProject?n=t[1]:(n=e.onSelectProject?{onSelectProject:e.onSelectProject}:{},t[0]=e.onSelectProject,t[1]=n);let r;t[2]===e.onSelectWorktree?r=t[3]:(r=e.onSelectWorktree?{onSelectWorktree:e.onSelectWorktree}:{},t[2]=e.onSelectWorktree,t[3]=r);let i;t[4]!==e.projectName||t[5]!==e.sessionTitle||t[6]!==e.worktreeBranch||t[7]!==e.worktreeOrigin||t[8]!==e.worktreeTitle||t[9]!==n||t[10]!==r?(i=(0,Y.jsx)(EN,{projectName:e.projectName,worktreeBranch:e.worktreeBranch,worktreeTitle:e.worktreeTitle,worktreeOrigin:e.worktreeOrigin,sessionTitle:e.sessionTitle,...n,...r}),t[4]=e.projectName,t[5]=e.sessionTitle,t[6]=e.worktreeBranch,t[7]=e.worktreeOrigin,t[8]=e.worktreeTitle,t[9]=n,t[10]=r,t[11]=i):i=t[11];let a;t[12]!==e.onOpenLinkedWorktreeItem||t[13]!==e.worktreeIssueNumber||t[14]!==e.worktreeIssueState||t[15]!==e.worktreePrIsDraft||t[16]!==e.worktreePrNumber||t[17]!==e.worktreePrState||t[18]!==e.worktreeWorkItemKey||t[19]!==e.worktreeWorkItemProvider||t[20]!==e.worktreeWorkItemState||t[21]!==e.worktreeWorkItemStateName?(a=(0,Y.jsx)(Vi,{issueNumber:e.worktreeIssueNumber,issueState:e.worktreeIssueState,prNumber:e.worktreePrNumber,prState:e.worktreePrState,prIsDraft:e.worktreePrIsDraft,workItemProvider:e.worktreeWorkItemProvider,workItemKey:e.worktreeWorkItemKey,workItemState:e.worktreeWorkItemState,workItemStateName:e.worktreeWorkItemStateName,density:`header`,labelStyle:`kind`,onOpenLinkedItem:e.onOpenLinkedWorktreeItem}),t[12]=e.onOpenLinkedWorktreeItem,t[13]=e.worktreeIssueNumber,t[14]=e.worktreeIssueState,t[15]=e.worktreePrIsDraft,t[16]=e.worktreePrNumber,t[17]=e.worktreePrState,t[18]=e.worktreeWorkItemKey,t[19]=e.worktreeWorkItemProvider,t[20]=e.worktreeWorkItemState,t[21]=e.worktreeWorkItemStateName,t[22]=a):a=t[22];let o;t[23]!==e.isGitRepo||t[24]!==e.projectName?(o=e.projectName&&!e.isGitRepo?(0,Y.jsx)(`span`,{className:`shrink-0 rounded-full border border-border/60 bg-muted/40 px-1.5 py-0.5 text-[10px] text-amber-600 dark:text-amber-400`,children:`No Git`}):null,t[23]=e.isGitRepo,t[24]=e.projectName,t[25]=o):o=t[25];let s;t[26]!==i||t[27]!==a||t[28]!==o?(s=(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-2 overflow-hidden`,children:[i,a,o]}),t[26]=i,t[27]=a,t[28]=o,t[29]=s):s=t[29];let c;t[30]===e.inlineActions?c=t[31]:(c=e.inlineActions?(0,Y.jsx)(`div`,{className:`flex shrink-0 items-center justify-end gap-2 @3xl/header-actions:gap-3`,children:e.inlineActions}):null,t[30]=e.inlineActions,t[31]=c);let l;return t[32]!==s||t[33]!==c?(l=(0,Y.jsxs)(`div`,{className:`@container/header-actions flex min-w-0 flex-1 items-center gap-3`,children:[s,c]}),t[32]=s,t[33]=c,t[34]=l):l=t[34],l});function kN(e){return!!e.activeProjectName&&e.primaryEnvironmentId!==null&&e.activeThreadEnvironmentId===e.primaryEnvironmentId}var AN=(0,q.memo)(function(e){let t=(0,J.c)(73);ei(`ChatHeader`),Zr(e,`ChatHeader`);let n=tt(),r;t[0]!==n||t[1]!==e.activeProjectName||t[2]!==e.activeThreadEnvironmentId?(r=kN({activeProjectName:e.activeProjectName,activeThreadEnvironmentId:e.activeThreadEnvironmentId,primaryEnvironmentId:n}),t[0]=n,t[1]=e.activeProjectName,t[2]=e.activeThreadEnvironmentId,t[3]=r):r=t[3];let i=r,a;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,Y.jsx)(Da,{}),t[4]=a):a=t[4];let o;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,Y.jsx)(di,{className:`size-4`}),t[5]=o):o=t[5];let s;t[6]!==e.onToggleOverviewSidebar||t[7]!==e.overviewSidebarOpen?(s=(0,Y.jsx)(Po,{render:(0,Y.jsx)(Wc,{pressed:e.overviewSidebarOpen,onPressedChange:e.onToggleOverviewSidebar,"aria-label":`Toggle overview panel`,className:_N,size:`sm`,children:o})}),t[6]=e.onToggleOverviewSidebar,t[7]=e.overviewSidebarOpen,t[8]=s):s=t[8];let c;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,Y.jsx)(Fo,{side:`bottom`,children:`Toggle overview panel`}),t[9]=c):c=t[9];let l;t[10]===s?l=t[11]:(l=(0,Y.jsxs)(Io,{children:[s,c]}),t[10]=s,t[11]=l);let u;t[12]===e.liveAgentCount?u=t[13]:(u=e.liveAgentCount>0?`Toggle workspace panel, ${Xi(e.liveAgentCount)}`:`Toggle workspace panel`,t[12]=e.liveAgentCount,t[13]=u);let d;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,Y.jsx)(Aa,{className:`size-4`}),t[14]=d):d=t[14];let f;t[15]===e.liveAgentCount?f=t[16]:(f=(0,Y.jsxs)(`span`,{className:`relative inline-flex`,children:[d,(0,Y.jsx)(ta,{count:e.liveAgentCount,className:`-top-2 -right-2.5 h-3.5 min-w-3.5 px-0.5 text-[8px]`})]}),t[15]=e.liveAgentCount,t[16]=f);let p;t[17]!==e.onToggleWorkspacePanel||t[18]!==e.workspacePanelOpen||t[19]!==u||t[20]!==f?(p=(0,Y.jsx)(Po,{render:(0,Y.jsx)(Wc,{pressed:e.workspacePanelOpen,onPressedChange:e.onToggleWorkspacePanel,"aria-label":u,className:_N,size:`sm`,children:f})}),t[17]=e.onToggleWorkspacePanel,t[18]=e.workspacePanelOpen,t[19]=u,t[20]=f,t[21]=p):p=t[21];let m;t[22]===e.liveAgentCount?m=t[23]:(m=e.liveAgentCount>0?`Workspace · ${Xi(e.liveAgentCount)}`:`Toggle workspace panel`,t[22]=e.liveAgentCount,t[23]=m);let h;t[24]===m?h=t[25]:(h=(0,Y.jsx)(Fo,{side:`bottom`,children:m}),t[24]=m,t[25]=h);let g;t[26]!==h||t[27]!==p?(g=(0,Y.jsxs)(Io,{children:[p,h]}),t[26]=h,t[27]=p,t[28]=g):g=t[28];let _;t[29]!==e.activeProjectScripts||t[30]!==e.keybindings||t[31]!==e.onAddProjectScript||t[32]!==e.onDeleteProjectScript||t[33]!==e.onRunProjectScript||t[34]!==e.onUpdateProjectScript||t[35]!==e.preferredScriptId?(_=e.activeProjectScripts?(0,Y.jsx)(SN,{scripts:e.activeProjectScripts,keybindings:e.keybindings,preferredScriptId:e.preferredScriptId,onRunScript:e.onRunProjectScript,onAddScript:e.onAddProjectScript,onUpdateScript:e.onUpdateProjectScript,onDeleteScript:e.onDeleteProjectScript}):null,t[29]=e.activeProjectScripts,t[30]=e.keybindings,t[31]=e.onAddProjectScript,t[32]=e.onDeleteProjectScript,t[33]=e.onRunProjectScript,t[34]=e.onUpdateProjectScript,t[35]=e.preferredScriptId,t[36]=_):_=t[36];let v;t[37]!==e.availableEditors||t[38]!==e.keybindings||t[39]!==e.openInCwd||t[40]!==i?(v=i?(0,Y.jsx)(CN,{keybindings:e.keybindings,availableEditors:e.availableEditors,openInCwd:e.openInCwd}):null,t[37]=e.availableEditors,t[38]=e.keybindings,t[39]=e.openInCwd,t[40]=i,t[41]=v):v=t[41];let y;t[42]!==g||t[43]!==_||t[44]!==v||t[45]!==l?(y=(0,Y.jsxs)(Y.Fragment,{children:[a,l,g,_,v]}),t[42]=g,t[43]=_,t[44]=v,t[45]=l,t[46]=y):y=t[46];let b=y,x;t[47]===e.onSelectProject?x=t[48]:(x=e.onSelectProject?{onSelectProject:e.onSelectProject}:{},t[47]=e.onSelectProject,t[48]=x);let S;t[49]===e.onSelectWorktree?S=t[50]:(S=e.onSelectWorktree?{onSelectWorktree:e.onSelectWorktree}:{},t[49]=e.onSelectWorktree,t[50]=S);let C;t[51]===e.onOpenLinkedWorktreeItem?C=t[52]:(C=e.onOpenLinkedWorktreeItem?{onOpenLinkedWorktreeItem:e.onOpenLinkedWorktreeItem}:{},t[51]=e.onOpenLinkedWorktreeItem,t[52]=C);let w;return t[53]!==b||t[54]!==e.activeProjectName||t[55]!==e.activeThreadTitle||t[56]!==e.isGitRepo||t[57]!==e.worktreeBranch||t[58]!==e.worktreeIssueNumber||t[59]!==e.worktreeIssueState||t[60]!==e.worktreeOrigin||t[61]!==e.worktreePrIsDraft||t[62]!==e.worktreePrNumber||t[63]!==e.worktreePrState||t[64]!==e.worktreeTitle||t[65]!==e.worktreeWorkItemKey||t[66]!==e.worktreeWorkItemProvider||t[67]!==e.worktreeWorkItemState||t[68]!==e.worktreeWorkItemStateName||t[69]!==x||t[70]!==S||t[71]!==C?(w=(0,Y.jsx)(`div`,{className:`flex min-w-0 flex-1 items-center gap-2 py-3`,children:(0,Y.jsx)(ON,{projectName:e.activeProjectName,isGitRepo:e.isGitRepo,worktreeBranch:e.worktreeBranch,worktreeTitle:e.worktreeTitle,worktreeOrigin:e.worktreeOrigin,worktreeIssueNumber:e.worktreeIssueNumber,worktreeIssueState:e.worktreeIssueState,worktreePrNumber:e.worktreePrNumber,worktreePrState:e.worktreePrState,worktreePrIsDraft:e.worktreePrIsDraft,worktreeWorkItemProvider:e.worktreeWorkItemProvider,worktreeWorkItemKey:e.worktreeWorkItemKey,worktreeWorkItemState:e.worktreeWorkItemState,worktreeWorkItemStateName:e.worktreeWorkItemStateName,sessionTitle:e.activeThreadTitle,...x,...S,...C,inlineActions:b})}),t[53]=b,t[54]=e.activeProjectName,t[55]=e.activeThreadTitle,t[56]=e.isGitRepo,t[57]=e.worktreeBranch,t[58]=e.worktreeIssueNumber,t[59]=e.worktreeIssueState,t[60]=e.worktreeOrigin,t[61]=e.worktreePrIsDraft,t[62]=e.worktreePrNumber,t[63]=e.worktreePrState,t[64]=e.worktreeTitle,t[65]=e.worktreeWorkItemKey,t[66]=e.worktreeWorkItemProvider,t[67]=e.worktreeWorkItemState,t[68]=e.worktreeWorkItemStateName,t[69]=x,t[70]=S,t[71]=C,t[72]=w):w=t[72],w});function jN(e){let t=(0,J.c)(20),n=Zn(),r=oe($a(ce)),i;t[0]!==e.environmentId||t[1]!==e.threadId||t[2]!==r?(i=r.find(t=>t.id===e.threadId&&t.environmentId===e.environmentId)??null,t[0]=e.environmentId,t[1]=e.threadId,t[2]=r,t[3]=i):i=t[3];let a=i,o;t[4]===n?o=t[5]:(o=()=>void n({to:`/`}),t[4]=n,t[5]=o);let s;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,Y.jsx)(Kr,{}),t[6]=s):s=t[6];let c;t[7]===o?c=t[8]:(c=(0,Y.jsx)(K,{size:`icon`,variant:`ghost`,"aria-label":`Back to threads`,className:`shrink-0`,onClick:o,children:s}),t[7]=o,t[8]=c);let l;t[9]===e.title?l=t[10]:(l=(0,Y.jsx)(`p`,{className:`truncate text-sm font-medium`,children:e.title}),t[9]=e.title,t[10]=l);let u;t[11]===a?u=t[12]:(u=a?(0,Y.jsx)(`span`,{className:`flex items-center gap-1.5`,children:(0,Y.jsx)(gr,{thread:a,alwaysShowStatusLabel:!0})}):null,t[11]=a,t[12]=u);let d;t[13]!==l||t[14]!==u?(d=(0,Y.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[l,u]}),t[13]=l,t[14]=u,t[15]=d):d=t[15];let f;t[16]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,Y.jsx)(Ea,{}),t[16]=f):f=t[16];let p;return t[17]!==c||t[18]!==d?(p=(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-1.5 py-2`,children:[c,d,f]}),t[17]=c,t[18]=d,t[19]=p):p=t[19],p}var MN=`w-full min-w-0 max-w-none border-s-0 p-0 pt-[env(safe-area-inset-top)] pl-safe pr-safe pb-[max(env(safe-area-inset-bottom),var(--app-keyboard-inset,0px))] wco:mt-[env(titlebar-area-height)] wco:h-[calc(100%-env(titlebar-area-height))] wco:max-h-[calc(100%-env(titlebar-area-height))]`;function NN(e){let t=(0,J.c)(14),n;t[0]===e.open?n=t[1]:(n=Ns({active:e.open,containIntrinsicSize:`100vw 100vh`}),t[0]=e.open,t[1]=n);let r=n,i;t[2]===e?i=t[3]:(i=t=>{t||e.onClose()},t[2]=e,t[3]=i);let a;t[4]!==r||t[5]!==e.children?(a=(0,Y.jsx)(`div`,{className:`flex min-h-0 w-full flex-1`,style:r,children:e.children}),t[4]=r,t[5]=e.children,t[6]=a):a=t[6];let o;t[7]!==e.label||t[8]!==a?(o=(0,Y.jsx)(Fs,{side:`right`,showCloseButton:!1,keepMounted:!0,"aria-label":e.label,className:MN,children:a}),t[7]=e.label,t[8]=a,t[9]=o):o=t[9];let s;return t[10]!==e.open||t[11]!==i||t[12]!==o?(s=(0,Y.jsx)(Is,{open:e.open,onOpenChange:i,children:o}),t[10]=e.open,t[11]=i,t[12]=o,t[13]=s):s=t[13],s}function PN(e){let t=(0,J.c)(14),n;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,Y.jsx)(Kr,{}),t[0]=n):n=t[0];let r;t[1]!==e.backLabel||t[2]!==e.onBack?(r=(0,Y.jsx)(K,{size:`icon`,variant:`ghost`,"aria-label":e.backLabel,className:`shrink-0`,onClick:e.onBack,children:n}),t[1]=e.backLabel,t[2]=e.onBack,t[3]=r):r=t[3];let i;t[4]===e.title?i=t[5]:(i=(0,Y.jsx)(`p`,{className:`min-w-0 flex-1 truncate text-sm font-medium`,children:e.title}),t[4]=e.title,t[5]=i);let a;t[6]!==r||t[7]!==i?(a=(0,Y.jsxs)(`div`,{className:`flex h-14 shrink-0 items-center gap-1.5 border-b border-border bg-card/40 px-2`,children:[r,i]}),t[6]=r,t[7]=i,t[8]=a):a=t[8];let o;t[9]===e.children?o=t[10]:(o=(0,Y.jsx)(`div`,{className:`flex min-h-0 w-full min-w-0 flex-1`,children:e.children}),t[9]=e.children,t[10]=o);let s;return t[11]!==a||t[12]!==o?(s=(0,Y.jsxs)(`div`,{className:`flex h-full min-h-0 w-full min-w-0 flex-col bg-background`,children:[a,o]}),t[11]=a,t[12]=o,t[13]=s):s=t[13],s}function FN(e,t,n=6){if(n<=0||e.length===0)return[];let r=Math.floor(n),i=t===null?-1:e.findIndex(e=>e.key===t);if(i<0)return e.map(e=>e.key).filter(e=>e!==t).slice(0,r);let a=[];for(let t=1;a.length<r;t+=1){let n=e[i-t],o=e[i+t];if(!n&&!o||n&&(a.push(n.key),a.length>=r))break;o&&a.push(o.key)}return a}function IN(e){let t=(0,J.c)(7),{activeWorktreeSessionTabs:n,activeSessionTabKey:r}=e,i,a;t[0]!==r||t[1]!==n?(i=()=>{if(n.length===0)return;let e=[];for(let t of FN(n,r)){let n=s(t);n&&e.push(Pe(n.environmentId,n.threadId))}return()=>{for(let t of e)t()}},a=[n,r],t[0]=r,t[1]=n,t[2]=i,t[3]=a):(i=t[2],a=t[3]),(0,q.useEffect)(i,a);let o,c;t[4]===r?(o=t[5],c=t[6]):(o=()=>{if(!r)return;let e=r;queueMicrotask(()=>$r(e))},c=[r],t[4]=r,t[5]=o,t[6]=c),(0,q.useEffect)(o,c)}function LN(e){return{id:e.threadId,environmentId:e.environmentId,projectId:e.projectId,title:`Empty Session`,interactionMode:e.interactionMode,tokenMode:e.tokenMode??`balanced`,session:null,createdAt:e.createdAt,archivedAt:null,settledOverride:null,settledAt:null,updatedAt:e.createdAt,latestTurn:null,branch:e.branch,worktreePath:e.worktreePath,manualStatusBucket:null,latestUserMessageAt:null,hasPendingApprovals:!1,hasPendingUserInput:!1,hasActionableProposedPlan:!1}}function RN(e,t){return e.worktreeId!==void 0&&e.worktreeId!==null&&t.worktreeId&&e.worktreeId===t.worktreeId||t.worktreePath&&e.worktreePath===t.worktreePath?!0:!t.worktreeId&&!t.worktreePath&&e.worktreePath===null}function zN(){let e=new Map,t=null;return(n,r)=>{let a=[];for(let e of n)e.archivedAt===null&&RN(e,r)&&a.push(e);a.sort((e,t)=>(Date.parse(t.updatedAt??t.createdAt??``)||0)-(Date.parse(e.updatedAt??e.createdAt??``)||0));let o=new Set,s=[],c=t!==null&&t.length===a.length;for(let n=0;n<a.length;n+=1){let r=a[n],l=f(i(r.environmentId,r.id));o.add(l);let u=Mn({manualBucket:r.manualStatusBucket??null,statusPill:Nn({thread:r})}),d=e.get(l),p;d&&d.inputs.title===r.title&&d.inputs.bucket===u?p=d.item:(p={key:l,title:r.title,bucket:u},e.set(l,{item:p,inputs:{title:r.title,bucket:u}})),s.push(p),c&&t[n]!==p&&(c=!1)}for(let t of e.keys())o.has(t)||e.delete(t);return c&&t?t:(t=s,s)}}var BN=(0,q.memo)(function(e){let t=(0,J.c)(13),{status:n}=e;if(!n||n.status===`ready`||n.status===`disabled`)return null;let r;t[0]!==n.displayName||t[1]!==n.driver?(r=n.displayName?.trim()||Mt(n.driver),t[0]=n.displayName,t[1]=n.driver,t[2]=r):r=t[2];let i=r,a=n.status===`error`?`${i} provider is unavailable.`:`${i} provider has limited availability.`,o=`${i} provider status`,s=n.status===`error`?`error`:`warning`,c;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,Y.jsx)(Di,{}),t[3]=c):c=t[3];let l;t[4]===o?l=t[5]:(l=(0,Y.jsx)(Vs,{children:o}),t[4]=o,t[5]=l);let u=n.message??a,d=n.message??a,f;t[6]!==u||t[7]!==d?(f=(0,Y.jsx)(Us,{className:`line-clamp-3`,title:u,children:d}),t[6]=u,t[7]=d,t[8]=f):f=t[8];let p;return t[9]!==s||t[10]!==l||t[11]!==f?(p=(0,Y.jsx)(`div`,{className:`pt-3 mx-auto max-w-3xl`,children:(0,Y.jsxs)(Ws,{variant:s,children:[c,l,f]})}),t[9]=s,t[10]=l,t[11]=f,t[12]=p):p=t[12],p}),VN=(0,q.memo)(function(e){let t=(0,J.c)(8),{error:n,threadRef:r,onDismiss:i}=e,a=r?.environmentId??null,o=r?.threadId??null,s=(0,q.useRef)(i),c,l;t[0]===i?(c=t[1],l=t[2]):(c=()=>{s.current=i},l=[i],t[0]=i,t[1]=c,t[2]=l),(0,q.useEffect)(c,l);let u,d;return t[3]!==a||t[4]!==n||t[5]!==o?(u=()=>{if(!n)return;let e=!0,t=ki.add({type:`error`,title:`Thread error`,description:n,priority:`high`,timeout:0,onClose:()=>{e&&s.current?.()},data:{threadRef:a!==null&&o!==null?{environmentId:a,threadId:o}:null}});return()=>{e=!1,ki.close(t)}},d=[a,n,o],t[3]=a,t[4]=n,t[5]=o,t[6]=u,t[7]=d):(u=t[6],d=t[7]),(0,q.useEffect)(u,d),null}),HN={hydrated:!1,revision:0,proposalsById:{}},UN=20,WN=new Set(O);function GN(e){return WN.has(e)}var KN={"pending-user-approval":0,approved:1,executing:2,rejected:3,expired:3,completed:3,failed:3,cancelled:3};function qN(e){let t=Object.values(e).filter(e=>GN(e.status));if(t.length<=UN)return e;let n=t.toSorted((e,t)=>t.updatedAt.localeCompare(e.updatedAt)).slice(UN),r={...e};for(let e of n)delete r[e.proposalId];return r}function JN(e,t){if(t.type===`snapshot`){let e={};for(let n of[...t.queue.active,...t.queue.recent])e[n.proposalId]=n;return{hydrated:!0,revision:t.queue.revision,proposalsById:e}}if(!e.hydrated)return e;let n=t.proposal,r=e.proposalsById[n.proposalId];if(r!==void 0){let t=KN[r.status],i=KN[n.status];if(i<t||i===t)return e}return{hydrated:!0,revision:Math.max(e.revision,t.revision),proposalsById:qN({...e.proposalsById,[n.proposalId]:n})}}function YN(e){return Object.values(e.proposalsById).filter(e=>!GN(e.status)).toSorted((e,t)=>e.createdAt.localeCompare(t.createdAt)||e.proposalId.localeCompare(t.proposalId))}function XN(e){return Object.values(e.proposalsById).filter(e=>GN(e.status)).toSorted((e,t)=>t.updatedAt.localeCompare(e.updatedAt)||t.proposalId.localeCompare(e.proposalId))}var ZN={"pending-user-approval":{label:`Awaiting approval`,tone:`pending`},approved:{label:`Approved · awaiting executor`,tone:`info`},executing:{label:`Executing`,tone:`info`},completed:{label:`Completed`,tone:`success`},failed:{label:`Failed`,tone:`danger`},rejected:{label:`Rejected`,tone:`muted`},expired:{label:`Expired`,tone:`muted`},cancelled:{label:`Cancelled`,tone:`muted`}},QN=e=>e.length>10?`${e.slice(0,8)}…`:e,$N=e=>e.replaceAll(`-`,` `);function eP(e){let t=e.principal;return t.kind===`provider-session`?{label:`Agent in thread ${QN(t.threadId)} (${t.providerInstanceId})`,threadId:t.threadId}:{label:`External integration ${t.label??QN(t.integrationId)}`,threadId:null}}function tP(e){let t=e=>e.kind===`once`?[`Schedule: one-shot`,`Next run: ${e.runAt}`]:[`Schedule: every ${e.intervalMs}ms`,`Next run: ${e.startsAt}`,`Ends: ${e.endsAt}`,`Missed intervals coalesce into at most one pending run.`],n=[`Limits: 25 active schedules per project; minimum interval ${L}ms.`,`Horizon: ${N}ms; retained run history: 50.`],r=e=>[`Project: ${e.projectId}`,`Provider: ${e.modelSelection.instanceId} · ${e.modelSelection.model}`,`Runtime: ${e.runtimeMode} · ${e.envMode}`,...e.baseRef===void 0?[]:[`Base ref: ${e.baseRef}`],`Intended work: ${e.title}`,`Prompt: ${e.prompt}`],i=e.plan,a=(e,t)=>[{heading:`Exact governed Simulator action`,lines:[`Device UDID: ${e.udid}`,`Thread: ${e.threadId}`,`Project: ${e.projectId}`,`Expected project revision: ${e.expectedProjectUpdatedAt}`,`Provider instance: ${e.providerInstanceId}`,`Expected attachment version: ${e.expectedThreadDeviceVersion}`,`Expected attached device: ${e.expectedAttachedDeviceUdid??`none`}`,`Expected lifecycle: ${e.expectedDeviceState}`,`Expected boot owner: ${e.expectedDeviceBootSource}`,`Expected recording: ${e.expectedRecording?`yes`:`no`}`,...t,`Execution stops if the device, attachment, thread, project, provider, or owner authority changes.`]}];switch(i.kind){case`createThreads`:{let e=i.entries.length,t=[...new Set(i.entries.map(e=>String(e.projectId)))],n=[...new Set(i.entries.map(e=>`${e.runtimeMode} · ${e.envMode}`))];return{actionLabel:e===1?`Create 1 thread`:`Create ${e} threads`,targetLabel:t.length===1?`project ${QN(t[0])}`:`${t.length} projects`,runtimeLabel:n.length===1?n[0]:`mixed runtime modes`,detailSections:i.entries.map((e,t)=>({heading:`Thread ${t+1}: ${e.title}`,lines:[`Project: ${e.projectId}`,`Model: ${e.modelSelection.instanceId} · ${e.modelSelection.model}`,`Runtime: ${e.runtimeMode} · ${e.envMode}`,...e.baseRef===void 0?[]:[`Base ref: ${e.baseRef}`],`Prompt: ${e.prompt}`]}))}}case`sendMessage`:return{actionLabel:i.delivery===`steer`?`Steer thread`:`Queue message`,targetLabel:`thread ${QN(i.threadId)}`,runtimeLabel:null,detailSections:[{heading:`Message`,lines:[`Thread: ${i.threadId}`,i.text]}]};case`interruptThread`:return{actionLabel:`Interrupt thread`,targetLabel:`thread ${QN(i.threadId)}`,runtimeLabel:null,detailSections:[{heading:`Interrupt`,lines:[`Thread: ${i.threadId}`,...i.turnId===void 0?[]:[`Only turn: ${i.turnId}`]]}]};case`updateThread`:{let e=[];return i.title!==void 0&&e.push(`Title: ${i.title}`),i.archived!==void 0&&e.push(i.archived?`Archive thread`:`Unarchive thread`),i.persistentGoal!==void 0&&e.push(i.persistentGoal===null?`Clear persistent goal`:`Goal: ${i.persistentGoal}`),{actionLabel:`Update thread`,targetLabel:`thread ${QN(i.threadId)}`,runtimeLabel:null,detailSections:[{heading:`Changes`,lines:[`Thread: ${i.threadId}`,...e]}]}}case`createProject`:return{actionLabel:`Create project`,targetLabel:`project ${QN(i.projectId)}`,runtimeLabel:null,detailSections:[{heading:`Before`,lines:[`No Ryco project record with this ID.`]},{heading:`After`,lines:[`Project ID: ${i.projectId}`,`Display name: ${i.title}`,`Workspace path: ${i.workspaceRoot}`,`Metadata directory: ${i.projectMetadataDir}`,`Repository identity: ${i.repositoryIdentityKey??`none`}`,`Workspace must already exist; no directory is created by this action.`]}]};case`updateProject`:return{actionLabel:`Update project metadata`,targetLabel:`project ${QN(i.projectId)}`,runtimeLabel:null,detailSections:[{heading:`Before`,lines:[`Display name: ${i.before.title}`,`Workspace path: ${i.before.workspaceRoot}`,`Repository identity: ${i.before.repositoryIdentityKey??`none`}`,`Expected revision: ${i.before.updatedAt}`]},{heading:`After`,lines:[`Display name: ${i.after.title}`,`Workspace path: ${i.after.workspaceRoot}`,`Repository identity: ${i.after.repositoryIdentityKey??`none`}`]}]};case`removeProject`:return{actionLabel:`Unlink project`,targetLabel:`project ${QN(i.projectId)}`,runtimeLabel:null,detailSections:[{heading:`Before · destructive Ryco record removal`,lines:[`Project ID: ${i.projectId}`,`Display name: ${i.expected.title}`,`Workspace path: ${i.expected.workspaceRoot}`,`Expected revision: ${i.expected.updatedAt}`,`Force removal: ${i.force?`yes`:`no`}`,...i.expectedThreadIds.length===0?[`Ryco thread records removed: none`]:i.expectedThreadIds.map(e=>`Ryco thread record removed: ${e}`),`Workspace files and repository contents will be retained.`]},{heading:`After`,lines:[`The Ryco project record and the exact listed Ryco thread records are unlinked.`,`The workspace directory and repository are unchanged.`]}]};case`changeSettings`:return{actionLabel:`Change setting`,targetLabel:i.change.kind,runtimeLabel:null,detailSections:[{heading:`Exact setting change`,lines:[`Setting: ${i.change.kind}`,`Before: ${String(i.change.before)}`,`After: ${String(i.change.after)}`,`Fresh owner reauthentication is required at approval and execution.`]}]};case`createAutomation`:return{actionLabel:`Create schedule definition`,targetLabel:`automation ${QN(i.automationId)}`,runtimeLabel:`${i.definition.execution.runtimeMode} · ${i.definition.execution.envMode}`,detailSections:[{heading:`Schedule definition approval`,lines:[...t(i.definition.schedule),...n,`Enabled: ${i.definition.enabled?`yes`:`no`}`,...r(i.definition.execution),`This approval authorizes only the schedule definition.`,`Every due run creates a fresh exact proposal and waits for user approval.`,`At most one pending or executing run is allowed for this automation.`]}]};case`updateAutomation`:return{actionLabel:`Update schedule definition`,targetLabel:`automation ${QN(i.automationId)}`,runtimeLabel:`${i.after.execution.runtimeMode} · ${i.after.execution.envMode}`,detailSections:[{heading:`Before · revision ${i.before.revision}`,lines:[...t(i.before.definition.schedule),`Enabled: ${i.before.definition.enabled?`yes`:`no`}`,`Last changed: ${i.before.updatedAt}`]},{heading:`After · schedule approval only`,lines:[...t(i.after.schedule),...n,`Enabled: ${i.after.enabled?`yes`:`no`}`,...r(i.after.execution),`Pending, unaccepted runs from the old definition are cancelled.`,`Already accepted or executing runs are not interrupted.`,`Future runs still require separate approval.`]}]};case`cancelAutomation`:return{actionLabel:`Cancel future scheduled runs`,targetLabel:`automation ${QN(i.automationId)}`,runtimeLabel:null,detailSections:[{heading:`Expected revision ${i.expected.revision}`,lines:[...t(i.expected.definition.schedule),`Project: ${i.expected.definition.execution.projectId}`,`Provider: ${i.expected.definition.execution.modelSelection.instanceId}`,`Cancellation prevents future run proposals and cancels a pending, unaccepted run.`,`It does not delete project/thread data or interrupt an accepted/executing run.`]}]};case`automationRun`:return{actionLabel:`Approve one scheduled run`,targetLabel:`run ${QN(i.runId)}`,runtimeLabel:`${i.execution.runtimeMode} · ${i.execution.envMode}`,detailSections:[{heading:`Fresh run approval`,lines:[`Automation: ${i.automationId} · revision ${i.automationRevision}`,`Scheduled for: ${i.scheduledFor}`,`Missed intervals coalesced: ${i.coalescedOccurrences}`,...r(i.execution),`Approving the schedule did not approve this run; this exact proposal does.`]}]};case`deviceBoot`:return{actionLabel:`Boot iOS Simulator`,targetLabel:`device ${QN(i.udid)}`,runtimeLabel:`explicit approval required`,detailSections:a(i,[`Action: boot this exact Simulator.`])};case`deviceAttach`:return{actionLabel:`Attach iOS Simulator`,targetLabel:`device ${QN(i.udid)}`,runtimeLabel:`explicit approval required`,detailSections:a(i,[`Action: attach this device to the exact thread.`])};case`deviceDetach`:return{actionLabel:`Detach iOS Simulator`,targetLabel:`device ${QN(i.udid)}`,runtimeLabel:`explicit approval required`,detailSections:a(i,[`Action: detach this device from the exact thread.`])};case`deviceInstall`:return{actionLabel:`Install Simulator application`,targetLabel:`device ${QN(i.udid)}`,runtimeLabel:`explicit approval required`,detailSections:a(i,[`Workspace-relative artifact: ${i.artifactPath}`,`The canonical artifact path is revalidated inside the project workspace at execution.`])};case`deviceLaunch`:return{actionLabel:`Launch Simulator application`,targetLabel:`device ${QN(i.udid)}`,runtimeLabel:`explicit approval required`,detailSections:a(i,[`Installed bundle ID: ${i.bundleId}`,`Launch arguments are not permitted through Agent Control.`])};case`deviceOpenUrl`:return{actionLabel:`Open URL on iOS Simulator`,targetLabel:`device ${QN(i.udid)}`,runtimeLabel:`high risk · open world`,detailSections:a(i,[`Exact URL/deep link: ${i.url}`,`Credentials, file URLs, and unsafe schemes are rejected again at execution.`])};case`deviceTap`:return{actionLabel:`Tap iOS Simulator`,targetLabel:`device ${QN(i.udid)}`,runtimeLabel:`explicit approval required`,detailSections:a(i,[`Point: (${String(i.x)}, ${String(i.y)})`])};case`deviceSwipe`:return{actionLabel:`Swipe iOS Simulator`,targetLabel:`device ${QN(i.udid)}`,runtimeLabel:`explicit approval required`,detailSections:a(i,[`From: (${i.fromX}, ${i.fromY})`,`To: (${i.toX}, ${i.toY})`,`Duration: ${i.durationMs}ms`])};case`devicePressButton`:return{actionLabel:`Press Simulator hardware control`,targetLabel:`device ${QN(i.udid)}`,runtimeLabel:`explicit approval required`,detailSections:a(i,[`Button: ${i.button}`])};case`deviceStartRecording`:case`deviceStopRecording`:return{actionLabel:i.kind===`deviceStartRecording`?`Start Simulator recording`:`Stop Simulator recording`,targetLabel:`device ${QN(i.udid)}`,runtimeLabel:`explicit approval required`,detailSections:a(i,[`Action: ${i.kind===`deviceStartRecording`?`start`:`stop`} recording.`,`Recording paths and frame content are excluded from proposals and audit.`])};case`deviceShutdown`:return{actionLabel:`Shut down iOS Simulator`,targetLabel:`device ${QN(i.udid)}`,runtimeLabel:`explicit approval required`,detailSections:a(i,[`Action: shut down this exact Simulator.`])}}}function nP(e){let t=e.result;if(t===null)return null;if(t.outcome===`completed`){let e=t.createdThreadIds?.length??0,n=t.createdProjectIds?.length??0,r=t.detail===void 0?``:` · ${t.detail}`;return n>0?`Completed · created ${n} project${n===1?``:`s`}${r}`:e>0?`Completed · created ${e} thread${e===1?``:`s`}${r}`:`Completed${r}`}return`${t.error.code}: ${t.error.message}`}function rP(e){let t=e.result?.execution;if(t===void 0)return{label:null,affectedThreadIds:[],affectedProjectIds:[]};let n=[`Operation ${QN(t.operationId)}`,`${t.commands.length} command${t.commands.length===1?``:`s`}`];return t.worktreeIds.length>0&&n.push(`${t.worktreeIds.length} worktree${t.worktreeIds.length===1?``:`s`}`),t.delivery!==void 0&&n.push(`delivery: ${t.delivery}`),t.interrupt!==void 0&&n.push(`interrupt settled: ${t.interrupt.settledStatus}`),t.compensation!==void 0&&n.push(t.compensation.completed?`cleanup completed`:`cleanup needs attention`),{label:n.join(` · `),affectedThreadIds:t.affectedThreadIds,affectedProjectIds:t.affectedProjectIds??[]}}function iP(e){let t=ZN[e.status],n=eP(e),r=tP(e),i=rP(e);return{proposalId:e.proposalId,status:e.status,statusLabel:t.label,statusTone:t.tone,originLabel:n.label,originThreadId:n.threadId,actionLabel:r.actionLabel,targetLabel:r.targetLabel,runtimeLabel:r.runtimeLabel,riskLabels:e.riskTags.map(e=>$N(String(e))),isDestructive:e.plan.kind===`removeProject`,warningLabel:e.plan.kind===`deviceOpenUrl`?`High risk · opens an external URL or deep link`:null,summary:e.promptSummary,expiresAt:e.expiresAt,isPending:e.status===`pending-user-approval`,outcomeLabel:nP(e),executionLabel:i.label,affectedThreadIds:i.affectedThreadIds,affectedProjectIds:i.affectedProjectIds,detailSections:r.detailSections}}var aP=c(e=>({queueByEnvironmentId:{},applyStreamEvent:(t,n)=>e(e=>{let r=e.queueByEnvironmentId[t]??HN,i=JN(r,n);return i===r?e:{queueByEnvironmentId:{...e.queueByEnvironmentId,[t]:i}}}),clearEnvironment:t=>e(e=>{if(!(t in e.queueByEnvironmentId))return e;let n={...e.queueByEnvironmentId};return delete n[t],{queueByEnvironmentId:n}})}));function oP(e){let{environmentId:t,source:n,sink:r}=e,i=!1,a=n.subscribeProposals(e=>{i||r.applyStreamEvent(t,e)},{onError:()=>{i||(r.clearEnvironment(t),e.onError?.())}});return()=>{i||(i=!0,a())}}var sP={pending:`warning`,info:`info`,success:`success`,danger:`error`,muted:`secondary`},cP=(0,q.memo)(function(e){let t=(0,J.c)(67),{model:n,environmentId:r,isSubmitting:i,decisionError:a,disabledReason:o,onAccept:s,onReject:c}=e,[l,u]=(0,q.useState)(!1),d=i||o!==null,f=`mb-2 rounded-lg border bg-muted/20 ${n.isDestructive||n.warningLabel!==null?`border-destructive/70`:`border-border/60`}`,p;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(p=(0,Y.jsx)(`span`,{className:`text-[11px] font-medium uppercase tracking-[0.2em] text-muted-foreground`,children:`Agent Control`}),t[0]=p):p=t[0];let m=sP[n.statusTone],h;t[1]!==n.statusLabel||t[2]!==m?(h=(0,Y.jsx)(Ac,{size:`sm`,variant:m,children:n.statusLabel}),t[1]=n.statusLabel,t[2]=m,t[3]=h):h=t[3];let g;t[4]!==n.expiresAt||t[5]!==n.isPending?(g=n.isPending?(0,Y.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:xo(n.expiresAt)}):null,t[4]=n.expiresAt,t[5]=n.isPending,t[6]=g):g=t[6];let _;t[7]===n.isDestructive?_=t[8]:(_=n.isDestructive?(0,Y.jsx)(Ac,{size:`sm`,variant:`error`,children:`Destructive · Ryco records only`}):null,t[7]=n.isDestructive,t[8]=_);let v;t[9]===n.warningLabel?v=t[10]:(v=n.warningLabel===null?null:(0,Y.jsx)(Ac,{size:`sm`,variant:`error`,children:n.warningLabel}),t[9]=n.warningLabel,t[10]=v);let y;t[11]!==h||t[12]!==g||t[13]!==_||t[14]!==v?(y=(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[p,h,g,_,v]}),t[11]=h,t[12]=g,t[13]=_,t[14]=v,t[15]=y):y=t[15];let b;t[16]!==n.actionLabel||t[17]!==n.targetLabel?(b=(0,Y.jsxs)(`p`,{className:`mt-1 text-sm font-medium text-foreground`,children:[n.actionLabel,` · `,n.targetLabel]}),t[16]=n.actionLabel,t[17]=n.targetLabel,t[18]=b):b=t[18];let x=n.runtimeLabel===null?null:` · ${n.runtimeLabel}`,S;t[19]!==n.originLabel||t[20]!==x?(S=(0,Y.jsxs)(`p`,{className:`text-xs text-muted-foreground`,children:[n.originLabel,x]}),t[19]=n.originLabel,t[20]=x,t[21]=S):S=t[21];let C;t[22]===n.summary?C=t[23]:(C=n.summary===null?null:(0,Y.jsx)(`p`,{className:`mt-1 text-sm text-muted-foreground`,children:n.summary}),t[22]=n.summary,t[23]=C);let w;t[24]===n.riskLabels?w=t[25]:(w=n.riskLabels.length>0?(0,Y.jsx)(`div`,{className:`mt-1.5 flex flex-wrap gap-1`,children:n.riskLabels.map(lP)}):null,t[24]=n.riskLabels,t[25]=w);let T;t[26]===n.outcomeLabel?T=t[27]:(T=n.outcomeLabel===null?null:(0,Y.jsx)(`p`,{className:`mt-1 text-xs text-muted-foreground`,children:n.outcomeLabel}),t[26]=n.outcomeLabel,t[27]=T);let E;t[28]===n.executionLabel?E=t[29]:(E=n.executionLabel===null?null:(0,Y.jsx)(`p`,{className:`mt-1 text-xs text-muted-foreground`,children:n.executionLabel}),t[28]=n.executionLabel,t[29]=E);let D;t[30]!==r||t[31]!==n.affectedThreadIds?(D=n.affectedThreadIds.length>0?(0,Y.jsx)(`div`,{className:`mt-1 flex flex-wrap gap-x-2 gap-y-1 text-xs`,children:n.affectedThreadIds.map(e=>(0,Y.jsxs)(`a`,{className:`text-primary underline-offset-2 hover:underline`,href:`/${encodeURIComponent(r)}/${encodeURIComponent(e)}`,children:[`Open thread `,e.length>10?`${e.slice(0,8)}…`:e]},e))}):null,t[30]=r,t[31]=n.affectedThreadIds,t[32]=D):D=t[32];let O;t[33]===n.affectedProjectIds?O=t[34]:(O=n.affectedProjectIds.length>0?(0,Y.jsxs)(`p`,{className:`mt-1 text-xs text-muted-foreground`,children:[`Project`,n.affectedProjectIds.length===1?``:`s`,`:`,` `,n.affectedProjectIds.join(`, `)]}):null,t[33]=n.affectedProjectIds,t[34]=O);let k;t[35]===a?k=t[36]:(k=a===null?null:(0,Y.jsx)(`p`,{role:`alert`,className:`mt-1 text-xs text-destructive`,children:a}),t[35]=a,t[36]=k);let A;t[37]===Symbol.for(`react.memo_cache_sentinel`)?(A=()=>u(uP),t[37]=A):A=t[37];let j=l?`Hide plan details`:`Show plan details`,M;t[38]!==l||t[39]!==j?(M=(0,Y.jsx)(K,{size:`xs`,variant:`ghost`,className:`mt-1 -ml-2 text-muted-foreground`,"aria-expanded":l,onClick:A,children:j}),t[38]=l,t[39]=j,t[40]=M):M=t[40];let N;t[41]!==l||t[42]!==n.detailSections?(N=l?(0,Y.jsx)(`div`,{"data-testid":`agent-control-proposal-detail`,className:`mt-1 max-h-[min(14rem,30dvh)] overflow-y-auto overscroll-contain rounded-md border border-border/50 bg-background/60 px-3 py-2`,children:n.detailSections.map(fP)}):null,t[41]=l,t[42]=n.detailSections,t[43]=N):N=t[43];let P;t[44]!==S||t[45]!==C||t[46]!==w||t[47]!==T||t[48]!==E||t[49]!==D||t[50]!==O||t[51]!==k||t[52]!==M||t[53]!==N||t[54]!==y||t[55]!==b?(P=(0,Y.jsxs)(`div`,{className:`px-3 pt-2.5 sm:px-4`,children:[y,b,S,C,w,T,E,D,O,k,M,N]}),t[44]=S,t[45]=C,t[46]=w,t[47]=T,t[48]=E,t[49]=D,t[50]=O,t[51]=k,t[52]=M,t[53]=N,t[54]=y,t[55]=b,t[56]=P):P=t[56];let F;t[57]!==d||t[58]!==o||t[59]!==n.isPending||t[60]!==s||t[61]!==c?(F=n.isPending?(0,Y.jsxs)(`div`,{"data-testid":`agent-control-proposal-actions`,className:`flex flex-wrap items-center justify-end gap-2 px-3 pt-2 pb-3 sm:px-4`,children:[(0,Y.jsx)(K,{size:`sm`,variant:`destructive-outline`,disabled:d,title:o??void 0,onClick:c,children:`Reject`}),(0,Y.jsx)(K,{size:`sm`,variant:`default`,disabled:d,title:o??void 0,onClick:s,children:`Approve`})]}):(0,Y.jsx)(`div`,{"aria-hidden":!0,className:`pb-2.5`}),t[57]=d,t[58]=o,t[59]=n.isPending,t[60]=s,t[61]=c,t[62]=F):F=t[62];let I;return t[63]!==f||t[64]!==P||t[65]!==F?(I=(0,Y.jsxs)(`div`,{"data-testid":`agent-control-proposal-card`,className:f,children:[P,F]}),t[63]=f,t[64]=P,t[65]=F,t[66]=I):I=t[66],I});function lP(e){return(0,Y.jsx)(Ac,{size:`sm`,variant:`outline`,children:e},e)}function uP(e){return!e}function dP(e,t){return(0,Y.jsx)(`p`,{className:`whitespace-pre-wrap wrap-break-word text-xs text-muted-foreground select-text`,children:e},t)}function fP(e){return(0,Y.jsxs)(`div`,{className:`mb-2 last:mb-0`,children:[(0,Y.jsx)(`p`,{className:`text-xs font-medium text-foreground`,children:e.heading}),e.lines.map(dP)]},e.heading)}function pP({environmentId:e,activeThreadId:t}){let n=js(F.acceptProposal),[r,i]=(0,q.useState)([]),[a,o]=(0,q.useState)({}),[s,c]=(0,q.useState)(!1);(0,q.useEffect)(()=>{let t=null,n=null,r=()=>{let r=Me(e)?.client??null;if(r===t)return;n?.(),n=null,t=r;let i=r?Fe(e,r)?.agentControl:void 0;if(!i)return;let a=aP.getState();n=oP({environmentId:e,source:i,sink:{applyStreamEvent:a.applyStreamEvent,clearEnvironment:a.clearEnvironment}})},i=Je(r);return r(),()=>{i(),n?.()}},[e]);let l=aP(t=>t.queueByEnvironmentId[e]??null),u=(0,q.useMemo)(()=>l===null?[]:YN(l),[l]),d=(0,q.useMemo)(()=>l===null?[]:XN(l),[l]),f=(0,q.useMemo)(()=>t===null?u:u.toSorted((e,n)=>{let r=e.principal.kind===`provider-session`&&e.principal.threadId===t,i=n.principal.kind===`provider-session`&&n.principal.threadId===t;return Number(i)-Number(r)}),[u,t]),p=(0,q.useCallback)(async(t,n)=>{let r=Le(e)?.agentControl;if(r){i(e=>e.includes(t)?e:[...e,t]),o(({[t]:e,...n})=>n);try{n===`accept`?await r.acceptProposal({proposalId:t}):await r.rejectProposal({proposalId:t})}catch(e){o(n=>({...n,[t]:e instanceof Error&&e.message.length>0?e.message:`Failed to submit the decision.`}))}finally{i(e=>e.filter(e=>e!==t))}}},[e]);return f.length===0&&d.length===0?null:(0,Y.jsxs)(`div`,{"data-testid":`agent-control-approvals`,children:[f.map(t=>(0,Y.jsx)(cP,{model:iP(t),environmentId:e,isSubmitting:r.includes(t.proposalId),decisionError:a[t.proposalId]??null,disabledReason:n.allowed?null:n.reason??null,onAccept:()=>void p(t.proposalId,`accept`),onReject:()=>void p(t.proposalId,`reject`)},t.proposalId)),d.length>0?(0,Y.jsxs)(`div`,{className:`mb-2`,children:[(0,Y.jsxs)(K,{size:`xs`,variant:`ghost`,className:`text-muted-foreground`,"aria-expanded":s,onClick:()=>c(e=>!e),children:[`Recent Agent Control decisions · `,d.length]}),s?(0,Y.jsx)(`ul`,{"data-testid":`agent-control-recent`,className:`mt-1 flex flex-col gap-0.5`,children:d.map(t=>{let n=iP(t);return(0,Y.jsxs)(`li`,{className:`flex min-w-0 items-baseline gap-2 px-2 text-xs text-muted-foreground`,children:[(0,Y.jsx)(`span`,{className:`shrink-0 font-medium text-foreground/80`,children:n.statusLabel}),(0,Y.jsxs)(`span`,{className:`min-w-0 truncate`,children:[n.actionLabel,` · `,n.targetLabel,` · `,n.originLabel,n.executionLabel===null?null:` · ${n.executionLabel}`]}),n.affectedThreadIds.map(t=>(0,Y.jsxs)(`a`,{className:`shrink-0 text-primary underline-offset-2 hover:underline`,href:`/${encodeURIComponent(e)}/${encodeURIComponent(t)}`,children:[`Open `,t.length>10?`${t.slice(0,8)}…`:t]},t)),(0,Y.jsx)(`span`,{className:`ml-auto shrink-0`,children:bo(t.updatedAt)})]},t.proposalId)})}):null]}):null]})}var mP=220,hP={opacity:0,transform:`translate3d(0, 4rem, 0)`},gP={opacity:0,transform:`translate3d(0, 7rem, 0)`},_P={opacity:1,transform:`translate3d(0, 0, 0)`},vP={transition:`transform ${mP}ms ease-in, opacity ${mP}ms ease-in`,willChange:`transform, opacity`};function yP(e){let t=(0,J.c)(55),{className:n,items:r}=e,[i,a]=(0,q.useState)(null),o;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(o={pointer:`coarse`},t[0]=o):o=t[0];let s=ni(o),c=ni(Ps),[l,u]=(0,q.useState)(!1),d=(0,q.useRef)(null),f,p;t[1]!==i||t[2]!==r?(f=()=>{i&&!r.some(e=>e.id===i)&&a(null)},p=[i,r],t[1]=i,t[2]=r,t[3]=f,t[4]=p):(f=t[3],p=t[4]),(0,q.useEffect)(f,p);let m,h;t[5]!==s||t[6]!==r.length?(m=()=>{(r.length<=1||!s)&&u(!1)},h=[s,r.length],t[5]=s,t[6]=r.length,t[7]=m,t[8]=h):(m=t[7],h=t[8]),(0,q.useEffect)(m,h);let g,_;if(t[9]===Symbol.for(`react.memo_cache_sentinel`)?(g=()=>()=>{d.current&&clearTimeout(d.current)},_=[],t[9]=g,t[10]=_):(g=t[9],_=t[10]),(0,q.useEffect)(g,_),r.length===0)return null;let v=r[0];if(!v)return null;let y,b,x,S,C;if(t[11]!==n||t[12]!==i||t[13]!==v||t[14]!==s||t[15]!==l||t[16]!==r||t[17]!==c){let e=r.slice(1),o=e.length>0,f=o&&i!==v.id,p;t[23]!==i||t[24]!==c?(p=e=>{!e.onDismiss||i||(a(e.id),d.current&&clearTimeout(d.current),d.current=setTimeout(()=>{d.current=null,e.onDismiss?.()},c?0:mP))},t[23]=i,t[24]=c,t[25]=p):p=t[25];let m=p,h=c?void 0:vP;t[26]===n?x=t[27]:(x=G(`group/banner-stack mx-auto mb-2 max-w-208`,n),t[26]=n,t[27]=x);let g=o?`group-hover/banner-stack:z-50 group-focus-within/banner-stack:z-50`:null,_=o&&l?`z-50`:null;t[28]!==g||t[29]!==_?(S=G(`relative`,g,_),t[28]=g,t[29]=_,t[30]=S):S=t[30],C=f?s?(0,Y.jsx)(`button`,{type:`button`,"data-composer-banner-stack-cap":`true`,"aria-expanded":l,"aria-label":l?`Hide stacked notifications`:`Show ${e.length} more ${e.length===1?`notification`:`notifications`}`,className:G(`absolute inset-x-0 -top-3 z-0 mx-auto h-3 cursor-pointer rounded-t-xl`,`after:absolute after:inset-x-0 after:-top-7 after:-bottom-1.5`,`outline-none focus-visible:ring-2 focus-visible:ring-ring`,`border border-b-0 border-warning/24 bg-background/96 shadow-[0_6px_18px_rgba(0,0,0,0.06)]`),style:{width:`96%`},onClick:()=>u(bP)}):(0,Y.jsx)(`div`,{"data-composer-banner-stack-cap":`true`,className:G(`pointer-events-none absolute inset-x-0 -top-3 z-0 mx-auto h-3 rounded-t-xl`,`border border-b-0 border-warning/24 bg-background/96 shadow-[0_6px_18px_rgba(0,0,0,0.06)]`,`transition-opacity duration-150 ease-out motion-reduce:transition-none`,`group-hover/banner-stack:opacity-0 group-focus-within/banner-stack:opacity-0`),style:{width:`96%`},"aria-hidden":`true`}):null;let w=i===v.id?`pointer-events-none`:null,T;t[31]===w?T=t[32]:(T=G(`relative z-10`,w),t[31]=w,t[32]=T);let E=i===v.id?hP:_P,D;t[33]!==h||t[34]!==E?(D={...h,...E},t[33]=h,t[34]=E,t[35]=D):D=t[35];let O=i===v.id,k;t[36]!==v||t[37]!==m?(k=()=>m(v),t[36]=v,t[37]=m,t[38]=k):k=t[38];let A;t[39]!==v||t[40]!==O||t[41]!==k?(A=(0,Y.jsx)(xP,{item:v,exiting:O,onDismissRequest:k}),t[39]=v,t[40]=O,t[41]=k,t[42]=A):A=t[42],t[43]!==T||t[44]!==D||t[45]!==A?(y=(0,Y.jsx)(`div`,{className:T,style:D,children:A}),t[43]=T,t[44]=D,t[45]=A,t[46]=y):y=t[46],b=o?(0,Y.jsx)(`div`,{"data-composer-banner-stack-rest":`true`,className:G(`pointer-events-none absolute inset-x-0 bottom-[calc(100%+0.5rem)] z-20 space-y-2 opacity-0`,`transition-[opacity,transform] duration-150 ease-out motion-reduce:transition-none motion-reduce:translate-y-0`,`translate-y-1`,`group-hover/banner-stack:pointer-events-auto group-hover/banner-stack:translate-y-0 group-hover/banner-stack:opacity-100`,`group-focus-within/banner-stack:pointer-events-auto group-focus-within/banner-stack:translate-y-0 group-focus-within/banner-stack:opacity-100`,l?`pointer-events-auto translate-y-0 opacity-100`:null),children:e.map(e=>(0,Y.jsx)(`div`,{className:G(i===e.id?`pointer-events-none`:null),style:{...h,...i===e.id?gP:_P},children:(0,Y.jsx)(xP,{item:e,exiting:i===e.id,onDismissRequest:()=>m(e)})},e.id))}):null,t[11]=n,t[12]=i,t[13]=v,t[14]=s,t[15]=l,t[16]=r,t[17]=c,t[18]=y,t[19]=b,t[20]=x,t[21]=S,t[22]=C}else y=t[18],b=t[19],x=t[20],S=t[21],C=t[22];let w;t[47]!==y||t[48]!==b||t[49]!==S||t[50]!==C?(w=(0,Y.jsxs)(`div`,{className:S,children:[C,y,b]}),t[47]=y,t[48]=b,t[49]=S,t[50]=C,t[51]=w):w=t[51];let T;return t[52]!==x||t[53]!==w?(T=(0,Y.jsx)(`div`,{className:x,children:w}),t[52]=x,t[53]=w,t[54]=T):T=t[54],T}function bP(e){return!e}function xP(e){let t=(0,J.c)(17),{item:n,exiting:r,onDismissRequest:i}=e,a=n.onDismiss&&!n.actions,o;t[0]===n.title?o=t[1]:(o=(0,Y.jsx)(Vs,{children:n.title}),t[0]=n.title,t[1]=o);let s;t[2]===n.description?s=t[3]:(s=n.description?(0,Y.jsx)(Us,{children:n.description}):null,t[2]=n.description,t[3]=s);let c;t[4]!==a||t[5]!==r||t[6]!==n.actions||t[7]!==n.dismissLabel||t[8]!==n.onDismiss||t[9]!==i?(c=n.actions||n.onDismiss?(0,Y.jsxs)(Hs,{className:a?`phone:col-start-3 phone:row-start-1 phone:mt-0 phone:self-start`:void 0,children:[n.actions,n.onDismiss?(0,Y.jsx)(K,{size:`icon-xs`,variant:`ghost`,"aria-label":n.dismissLabel??`Dismiss warning`,disabled:r,onClick:i,children:(0,Y.jsx)(Qa,{className:`size-3.5`})}):null]}):null,t[4]=a,t[5]=r,t[6]=n.actions,t[7]=n.dismissLabel,t[8]=n.onDismiss,t[9]=i,t[10]=c):c=t[10];let l;return t[11]!==n.icon||t[12]!==n.variant||t[13]!==o||t[14]!==s||t[15]!==c?(l=(0,Y.jsxs)(Ws,{variant:n.variant,children:[n.icon,o,s,c]}),t[11]=n.icon,t[12]=n.variant,t[13]=o,t[14]=s,t[15]=c,t[16]=l):l=t[16],l}function SP(e){let t=(0,J.c)(2),n;return t[0]===e?n=t[1]:(n={...e,state:`open`,limit:50},t[0]=e,t[1]=n),Qn(n)}function CP(e){let t=(0,J.c)(2),n=fe(wP),r;return t[0]===n?r=t[1]:(r=e=>ir({mode:n,phase:e?.state===`open`?`active`:`settled`}),t[0]=n,t[1]=r),ar(e,r)}function wP(e){return e.sourceControlRefreshMode}function TP(e){let t=(0,J.c)(7),n=e.pullRequestNumber===null?e.branch:null,r=e.enabled&&(e.pullRequestNumber!==null||e.branch!==null),i;return t[0]!==e.commitSha||t[1]!==e.cwd||t[2]!==e.environmentId||t[3]!==e.pullRequestNumber||t[4]!==n||t[5]!==r?(i={environmentId:e.environmentId,cwd:e.cwd,pullRequestNumber:e.pullRequestNumber,branch:n,commitSha:e.commitSha,limit:20,enabled:r},t[0]=e.commitSha,t[1]=e.cwd,t[2]=e.environmentId,t[3]=e.pullRequestNumber,t[4]=n,t[5]=r,t[6]=i):i=t[6],or(i,e.resolveIntervalMs)}function EP(e){return $n(e)}function DP(e){let t=0,n=0,r=0,i=!1;if(e.changes)t=e.changes.insertions,n=e.changes.deletions,r=e.changes.files.length,i=r>0||t>0||n>0;else for(let r of e.overviewItems??[])typeof r.additions==`number`&&(t+=r.additions,i=!0),typeof r.deletions==`number`&&(n+=r.deletions,i=!0);let a=e.pullRequest?.latestRuns??[],o=0,s=0,c=0;for(let e of a)e.tone===`success`?o+=1:e.tone===`failure`||e.tone===`error`?s+=1:e.tone===`running`&&(c+=1);let l=e.activePlan?.steps??[],u=e.subagents??[],d=l.filter(e=>e.status===`completed`||e.status===`inProgress`).length;return{additions:t,deletions:n,hasDiff:i,fileCount:r,checksTotal:a.length,checksPassed:o,checksFailed:s,checksRunning:c,planTotal:l.length,planDone:d,agentsTotal:u.length,agentsRunning:u.filter(e=>e.status===`running`).length,refName:e.changes?.refName??null,aheadCount:e.changes?.aheadCount??0,behindCount:e.changes?.behindCount??0}}function OP(e){return!e.activePlan&&!e.activeProposedPlan?.planMarkdown&&(e.subagents?.length??0)===0&&(e.overviewItems?.length??0)===0&&(e.changes?.files.length??0)===0&&!e.pullRequest&&!e.sourceControlActions&&!e.branchControl}function kP(e){return e?.find(e=>e.icon===`changes`)}function AP(e){return e?.find(e=>e.icon===`environment`)}function jP(e){return e.planTotal===0?0:Math.round(e.planDone/e.planTotal*100)}var MP={success:`bg-success/11 text-success-foreground`,warning:`bg-warning/12 text-warning-foreground`,error:`bg-destructive/11 text-destructive-foreground`,info:`bg-info/11 text-info-foreground`,neutral:`bg-secondary text-muted-foreground`,primary:`bg-primary/12 text-primary dark:text-info-foreground`};function NP(e){let t=(0,J.c)(5),{tone:n,children:r}=e,i=MP[n],a;t[0]===i?a=t[1]:(a=G(`inline-flex h-[19px] shrink-0 items-center gap-1 rounded-md px-1.5 text-[11.5px] leading-none font-medium [&_svg]:size-[11px]`,i),t[0]=i,t[1]=a);let o;return t[2]!==r||t[3]!==a?(o=(0,Y.jsx)(`span`,{className:a,children:r}),t[2]=r,t[3]=a,t[4]=o):o=t[4],o}function PP(e){let t=(0,J.c)(10),{additions:n,deletions:r,className:i}=e,a;t[0]===i?a=t[1]:(a=G(`flex items-center gap-1.5 font-mono text-[12px] font-semibold tabular-nums`,i),t[0]=i,t[1]=a);let o;t[2]===n?o=t[3]:(o=(0,Y.jsxs)(`span`,{className:`text-success`,children:[`+`,n]}),t[2]=n,t[3]=o);let s;t[4]===r?s=t[5]:(s=(0,Y.jsxs)(`span`,{className:`text-destructive`,children:[`−`,r]}),t[4]=r,t[5]=s);let c;return t[6]!==a||t[7]!==o||t[8]!==s?(c=(0,Y.jsxs)(`span`,{className:a,children:[o,s]}),t[6]=a,t[7]=o,t[8]=s,t[9]=c):c=t[9],c}var FP={success:`bg-success`,failure:`bg-destructive`,error:`bg-destructive`,running:`bg-sky-400 animate-status-pulse`,pending:`bg-warning/55`};function IP(e){let t=(0,J.c)(4),{runs:n}=e;if(n.length===0)return null;let r;t[0]===n?r=t[1]:(r=n.map(LP),t[0]=n,t[1]=r);let i;return t[2]===r?i=t[3]:(i=(0,Y.jsx)(`span`,{className:`flex items-center gap-[3px]`,children:r}),t[2]=r,t[3]=i),i}function LP(e){return(0,Y.jsx)(`span`,{className:G(`size-[7px] rounded-full bg-[color:var(--border-strong)]`,FP[e.tone])},e.id)}function RP(e){let t=(0,J.c)(7),{value:n,className:r}=e,i;t[0]===r?i=t[1]:(i=G(`inline-block h-[5px] w-[54px] overflow-hidden rounded-[3px] bg-muted`,r),t[0]=r,t[1]=i);let a=`${Math.max(0,Math.min(100,n))}%`,o;t[2]===a?o=t[3]:(o=(0,Y.jsx)(`span`,{className:`block h-full rounded-[3px] bg-primary`,style:{width:a}}),t[2]=a,t[3]=o);let s;return t[4]!==i||t[5]!==o?(s=(0,Y.jsx)(`span`,{className:i,children:o}),t[4]=i,t[5]=o,t[6]=s):s=t[6],s}function zP(e){let t=(0,J.c)(4),{subagents:n}=e;if(n.length===0)return null;let r;t[0]===n?r=t[1]:(r=n.slice(0,3).map(BP),t[0]=n,t[1]=r);let i;return t[2]===r?i=t[3]:(i=(0,Y.jsx)(`span`,{className:`flex items-center`,children:r}),t[2]=r,t[3]=i),i}function BP(e,t){return(0,Y.jsx)(`span`,{className:G(`grid size-5 place-items-center rounded-full border-2 border-card bg-secondary/60`,t>0&&`-ml-[7px]`),children:(0,Y.jsx)(la,{name:e.avatarKey??e.key,className:`size-3`})},e.key)}function VP(e){let t=(0,J.c)(5),{className:n,title:r}=e,i;t[0]===n?i=t[1]:(i=G(`size-2 shrink-0 rounded-full`,n),t[0]=n,t[1]=i);let a;return t[2]!==i||t[3]!==r?(a=(0,Y.jsx)(`span`,{className:i,title:r}),t[2]=i,t[3]=r,t[4]=a):a=t[4],a}function HP(e){let t=(0,J.c)(13),{label:n,value:r,hint:i,tone:a}=e,o=a===void 0?`default`:a,s;t[0]===n?s=t[1]:(s=(0,Y.jsx)(`div`,{className:`text-[9.5px] font-semibold tracking-wider text-muted-foreground uppercase`,children:n}),t[0]=n,t[1]=s);let c=o===`danger`&&`text-destructive-foreground`,l;t[2]===c?l=t[3]:(l=G(`mt-[3px] flex items-baseline gap-1 text-[13px] font-semibold -tracking-[0.01em]`,c),t[2]=c,t[3]=l);let u;t[4]!==l||t[5]!==r?(u=(0,Y.jsx)(`div`,{className:l,children:r}),t[4]=l,t[5]=r,t[6]=u):u=t[6];let d;t[7]===i?d=t[8]:(d=i?(0,Y.jsx)(`div`,{className:`mt-px truncate text-[10px] text-muted-foreground`,children:i}):null,t[7]=i,t[8]=d);let f;return t[9]!==s||t[10]!==u||t[11]!==d?(f=(0,Y.jsxs)(`div`,{className:`flex-1 rounded-[10px] border border-border bg-card px-2.5 py-2`,children:[s,u,d]}),t[9]=s,t[10]=u,t[11]=d,t[12]=f):f=t[12],f}function UP(e){let t=(0,J.c)(20),{icon:n,label:r,value:i,hint:a,tone:o,isActive:s,onClick:c}=e,l=o===void 0?`default`:o,u=s!==void 0&&s&&`border-primary bg-primary/[0.05] shadow-[inset_0_0_0_1px_var(--primary)]`,d;t[0]===u?d=t[1]:(d=G(`min-w-0 rounded-[10px] border border-border bg-card px-2 pt-2 pb-[9px] text-left transition-colors hover:bg-accent`,u),t[0]=u,t[1]=d);let f;t[2]===r?f=t[3]:(f=(0,Y.jsx)(`span`,{className:`truncate`,children:r}),t[2]=r,t[3]=f);let p;t[4]!==n||t[5]!==f?(p=(0,Y.jsxs)(`div`,{className:`flex items-center gap-[3px] text-[9px] font-semibold tracking-wider text-muted-foreground uppercase [&_svg]:size-[11px] [&_svg]:text-muted-foreground`,children:[n,f]}),t[4]=n,t[5]=f,t[6]=p):p=t[6];let m=l===`danger`&&`text-destructive-foreground`,h;t[7]===m?h=t[8]:(h=G(`mt-1 flex items-baseline gap-[3px] text-[15px] font-semibold -tracking-[0.02em]`,m),t[7]=m,t[8]=h);let g;t[9]!==h||t[10]!==i?(g=(0,Y.jsx)(`div`,{className:h,children:i}),t[9]=h,t[10]=i,t[11]=g):g=t[11];let _;t[12]===a?_=t[13]:(_=a?(0,Y.jsx)(`div`,{className:`mt-px truncate text-[10px] text-muted-foreground`,children:a}):null,t[12]=a,t[13]=_);let v;return t[14]!==c||t[15]!==_||t[16]!==d||t[17]!==p||t[18]!==g?(v=(0,Y.jsxs)(`button`,{type:`button`,onClick:c,className:d,children:[p,g,_]}),t[14]=c,t[15]=_,t[16]=d,t[17]=p,t[18]=g,t[19]=v):v=t[19],v}function WP(e){let t=(0,J.c)(10),{label:n,value:r,monoValue:i}=e,a=i===void 0||i,o;t[0]===n?o=t[1]:(o=(0,Y.jsx)(`span`,{className:`flex items-center gap-1.5 text-muted-foreground [&_svg]:size-3.5`,children:n}),t[0]=n,t[1]=o);let s=a&&`font-mono`,c;t[2]===s?c=t[3]:(c=G(`text-[12px] font-medium tabular-nums`,s),t[2]=s,t[3]=c);let l;t[4]!==c||t[5]!==r?(l=(0,Y.jsx)(`span`,{className:c,children:r}),t[4]=c,t[5]=r,t[6]=l):l=t[6];let u;return t[7]!==o||t[8]!==l?(u=(0,Y.jsxs)(`div`,{className:`flex items-center justify-between px-3 py-1.5 text-[12.5px]`,children:[o,l]}),t[7]=o,t[8]=l,t[9]=u):u=t[9],u}function GP(e){let t=(0,J.c)(4),{detail:n}=e,r,i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,Y.jsx)(Ya,{className:`mt-px size-3.5 shrink-0`}),i=(0,Y.jsx)(`span`,{className:`font-semibold`,children:`Merge conflict`}),t[0]=r,t[1]=i):(r=t[0],i=t[1]);let a=n?` · ${n}`:` — rebase onto the base branch to resolve before merge.`,o;return t[2]===a?o=t[3]:(o=(0,Y.jsxs)(`div`,{className:`flex gap-2 rounded-[10px] border border-destructive/24 bg-destructive/[0.09] px-[11px] py-[9px] text-[12.5px] text-destructive-foreground`,children:[r,(0,Y.jsxs)(`span`,{children:[i,a]})]}),t[2]=a,t[3]=o),o}function KP(e){let t=(0,J.c)(27),{icon:n,title:r,summary:i,defaultOpen:a,open:o,onToggle:s,rootRef:c,flash:l,children:u}=e,[d,f]=(0,q.useState)(a!==void 0&&a),p=o??d,m;t[0]===s?m=t[1]:(m=()=>{s?s():f(qP)},t[0]=s,t[1]=m);let h=p&&`rotate-90`,g;t[2]===h?g=t[3]:(g=G(`size-3.5 shrink-0 text-muted-foreground transition-transform`,h),t[2]=h,t[3]=g);let _;t[4]===g?_=t[5]:(_=(0,Y.jsx)(ri,{className:g}),t[4]=g,t[5]=_);let v;t[6]===r?v=t[7]:(v=(0,Y.jsx)(`span`,{className:`truncate`,children:r}),t[6]=r,t[7]=v);let y;t[8]!==n||t[9]!==v?(y=(0,Y.jsxs)(`span`,{className:`flex min-w-0 flex-1 items-center gap-2 text-[13px] font-semibold [&_svg]:size-3.5 [&_svg]:shrink-0 [&_svg]:text-muted-foreground`,children:[n,v]}),t[8]=n,t[9]=v,t[10]=y):y=t[10];let b;t[11]===i?b=t[12]:(b=i?(0,Y.jsx)(`span`,{className:`flex shrink-0 items-center gap-1.5`,children:i}):null,t[11]=i,t[12]=b);let x;t[13]!==p||t[14]!==m||t[15]!==_||t[16]!==y||t[17]!==b?(x=(0,Y.jsxs)(`button`,{type:`button`,onClick:m,"aria-expanded":p,className:`flex w-full items-center gap-2.5 px-3 py-2.5 text-left transition-colors hover:bg-accent`,children:[_,y,b]}),t[13]=p,t[14]=m,t[15]=_,t[16]=y,t[17]=b,t[18]=x):x=t[18];let S;t[19]!==u||t[20]!==l||t[21]!==p?(S=p?(0,Y.jsx)(`div`,{className:G(`pb-1.5`,l&&`overview-jump-flash`),children:u}):null,t[19]=u,t[20]=l,t[21]=p,t[22]=S):S=t[22];let C;return t[23]!==c||t[24]!==S||t[25]!==x?(C=(0,Y.jsxs)(`div`,{ref:c,className:`border-b border-border last:border-b-0`,children:[x,S]}),t[23]=c,t[24]=S,t[25]=x,t[26]=C):C=t[26],C}function qP(e){return!e}function JP(e){let t=(0,J.c)(42),{icon:n,title:r,subtitle:i,summary:a,externalLink:o,defaultOpen:s,children:c}=e,l=s!==void 0&&s,u=c!=null&&c!==!1,[d,f]=(0,q.useState)(l),p=u&&d,m=u&&`transition-colors hover:bg-accent`,h=o?`pr-14`:u?`pr-8`:`pr-2.5`,g;t[0]!==m||t[1]!==h?(g=G(`relative grid min-h-10 w-full grid-cols-[20px_minmax(0,1fr)_auto] items-center gap-[7px] py-1 pl-2.5 text-left`,m,h),t[0]=m,t[1]=h,t[2]=g):g=t[2];let _=g,v=p&&`bg-primary/12 text-primary dark:text-info-foreground`,y;t[3]===v?y=t[4]:(y=G(`grid size-5 place-items-center rounded-md bg-secondary text-muted-foreground transition-colors [&_svg]:size-3`,v),t[3]=v,t[4]=y);let b;t[5]!==n||t[6]!==y?(b=(0,Y.jsx)(`span`,{className:y,children:n}),t[5]=n,t[6]=y,t[7]=b):b=t[7];let x;t[8]===r?x=t[9]:(x=(0,Y.jsx)(`span`,{className:`block truncate text-[11.5px] leading-[14px] font-semibold`,children:r}),t[8]=r,t[9]=x);let S;t[10]===i?S=t[11]:(S=i?(0,Y.jsx)(`span`,{className:`mt-px block truncate text-[10px] leading-3 text-muted-foreground`,children:i}):null,t[10]=i,t[11]=S);let C;t[12]!==x||t[13]!==S?(C=(0,Y.jsxs)(`span`,{className:`min-w-0`,children:[x,S]}),t[12]=x,t[13]=S,t[14]=C):C=t[14];let w;t[15]===a?w=t[16]:(w=a?(0,Y.jsx)(`span`,{className:`flex shrink-0 items-center justify-self-end gap-1.5`,children:a}):null,t[15]=a,t[16]=w);let T;t[17]!==u||t[18]!==p?(T=u?(0,Y.jsx)(ri,{className:G(`absolute top-1/2 right-2.5 size-3 -translate-y-1/2 text-muted-foreground transition-transform`,p&&`rotate-90`)}):null,t[17]=u,t[18]=p,t[19]=T):T=t[19];let E;t[20]!==C||t[21]!==w||t[22]!==T||t[23]!==b?(E=(0,Y.jsxs)(Y.Fragment,{children:[b,C,w,T]}),t[20]=C,t[21]=w,t[22]=T,t[23]=b,t[24]=E):E=t[24];let D=E,O=u?`true`:`false`,k;t[25]!==u||t[26]!==_||t[27]!==D||t[28]!==p?(k=u?(0,Y.jsx)(`button`,{type:`button`,onClick:()=>f(YP),"aria-expanded":p,className:_,children:D}):(0,Y.jsx)(`div`,{className:_,children:D}),t[25]=u,t[26]=_,t[27]=D,t[28]=p,t[29]=k):k=t[29];let A;t[30]===o?A=t[31]:(A=o?(0,Y.jsx)(`a`,{href:o.href,target:`_blank`,rel:`noreferrer`,"aria-label":o.ariaLabel,title:o.ariaLabel,className:`absolute top-1/2 right-7 z-10 grid size-7 -translate-y-1/2 place-items-center rounded-md text-muted-foreground transition-colors hover:bg-accent hover:text-foreground focus-visible:outline-2 focus-visible:outline-ring`,children:(0,Y.jsx)(Mi,{className:`size-3`})}):null,t[30]=o,t[31]=A);let j;t[32]!==O||t[33]!==k||t[34]!==A?(j=(0,Y.jsxs)(`div`,{className:`relative min-h-10`,"data-slot":`overview-section-lane-header`,"data-expandable":O,children:[k,A]}),t[32]=O,t[33]=k,t[34]=A,t[35]=j):j=t[35];let M;t[36]!==c||t[37]!==p?(M=p?(0,Y.jsx)(`div`,{className:`pb-1.5`,children:c}):null,t[36]=c,t[37]=p,t[38]=M):M=t[38];let N;return t[39]!==j||t[40]!==M?(N=(0,Y.jsxs)(`div`,{className:`border-b border-border last:border-b-0`,children:[j,M]}),t[39]=j,t[40]=M,t[41]=N):N=t[41],N}function YP(e){return!e}function XP(e){let t=(0,J.c)(28),{label:n,detail:r,files:i,onOpen:a}=e,o;t[0]===i?o=t[1]:(o=i.reduce(QP,0),t[0]=i,t[1]=o);let s=o,c;t[2]===i?c=t[3]:(c=i.reduce(ZP,0),t[2]=i,t[3]=c);let l=c,u;t[4]===n?u=t[5]:(u=(0,Y.jsx)(`span`,{className:`font-medium text-foreground/90`,children:n}),t[4]=n,t[5]=u);let d;t[6]===r?d=t[7]:(d=r?(0,Y.jsx)(`span`,{className:`truncate text-[11px] text-muted-foreground`,children:r}):null,t[6]=r,t[7]=d);let f;t[8]!==u||t[9]!==d?(f=(0,Y.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1.5`,children:[u,d]}),t[8]=u,t[9]=d,t[10]=f):f=t[10];let p=i.length===1?`file`:`files`,m;t[11]!==i.length||t[12]!==p?(m=(0,Y.jsxs)(`span`,{className:`text-[11px] text-muted-foreground tabular-nums`,children:[i.length,` `,p]}),t[11]=i.length,t[12]=p,t[13]=m):m=t[13];let h;t[14]!==l||t[15]!==s?(h=(0,Y.jsx)(PP,{additions:s,deletions:l,className:`text-[11px]`}),t[14]=l,t[15]=s,t[16]=h):h=t[16];let g;t[17]!==m||t[18]!==h?(g=(0,Y.jsxs)(`span`,{className:`flex shrink-0 items-center gap-2.5`,children:[m,h]}),t[17]=m,t[18]=h,t[19]=g):g=t[19];let _;t[20]!==f||t[21]!==g?(_=(0,Y.jsxs)(Y.Fragment,{children:[f,g]}),t[20]=f,t[21]=g,t[22]=_):_=t[22];let v=_;if(a){let e;return t[23]!==v||t[24]!==a?(e=(0,Y.jsx)(`button`,{type:`button`,onClick:a,className:`flex w-full items-center justify-between gap-2 px-3 py-2 text-left text-[12.5px] transition-colors hover:bg-accent`,children:v}),t[23]=v,t[24]=a,t[25]=e):e=t[25],e}let y;return t[26]===v?y=t[27]:(y=(0,Y.jsx)(`div`,{className:`flex items-center justify-between gap-2 px-3 py-2 text-[12.5px]`,children:v}),t[26]=v,t[27]=y),y}function ZP(e,t){return e+t.deletions}function QP(e,t){return e+t.insertions}function $P(e){let t=(0,J.c)(32),{changes:n,overviewItems:r,onOpenReview:i,pullRequestNumber:a}=e,o;t[0]===r?o=t[1]:(o=kP(r),t[0]=r,t[1]=o);let s=o,c;t[2]===n?.files?c=t[3]:(c=n?.files??[],t[2]=n?.files,t[3]=c);let l=c;if(l.length>0){let e;t[4]===l?e=t[5]:(e=l.filter(tF),t[4]=l,t[5]=e);let n=e,r;t[6]===l?r=t[7]:(r=l.filter(eF),t[6]=l,t[7]=r);let o=r,s;if(t[8]!==n||t[9]!==o||t[10]!==a){if(s=[],n.length>0){let e;t[12]===a?e=t[13]:(e=a?{detail:`· PR #${a}`}:{},t[12]=a,t[13]=e);let r;t[14]!==n||t[15]!==e?(r={key:`committed`,label:`Committed`,...e,files:n},t[14]=n,t[15]=e,t[16]=r):r=t[16],s.push(r)}if(o.length>0){let e;t[17]===o?e=t[18]:(e={key:`local`,label:`Uncommitted`,files:o},t[17]=o,t[18]=e),s.push(e)}t[8]=n,t[9]=o,t[10]=a,t[11]=s}else s=t[11];let c;return t[19]!==s||t[20]!==i?(c=(0,Y.jsx)(`div`,{children:s.map(e=>(0,Y.jsx)(XP,{label:e.label,detail:e.detail,files:e.files,onOpen:i},e.key))}),t[19]=s,t[20]=i,t[21]=c):c=t[21],c}if(s){let e=!i,n;t[22]===s.value?n=t[23]:(n=(0,Y.jsx)(`span`,{className:`truncate text-foreground/85`,children:s.value}),t[22]=s.value,t[23]=n);let r;t[24]===s.detail?r=t[25]:(r=s.detail?(0,Y.jsx)(`span`,{className:`shrink-0 text-[11px] text-muted-foreground`,children:s.detail}):null,t[24]=s.detail,t[25]=r);let a;return t[26]!==i||t[27]!==e||t[28]!==n||t[29]!==r?(a=(0,Y.jsxs)(`button`,{type:`button`,onClick:i,disabled:e,className:`flex w-full items-center justify-between gap-2 px-3 py-1.5 text-left text-[12.5px] transition-colors hover:bg-accent disabled:hover:bg-transparent`,children:[n,r]}),t[26]=i,t[27]=e,t[28]=n,t[29]=r,t[30]=a):a=t[30],a}let u;return t[31]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,Y.jsx)(`p`,{className:`px-3 py-1.5 text-[12px] text-muted-foreground`,children:`No file changes.`}),t[31]=u):u=t[31],u}function eF(e){return e.category!==`committed`}function tF(e){return e.category===`committed`}function nF(e){let t=(0,J.c)(3),{status:n}=e;if(n===`completed`){let e;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(`span`,{className:`flex size-[17px] shrink-0 items-center justify-center rounded-full bg-success text-white`,children:(0,Y.jsx)(Jr,{className:`size-3`})}),t[0]=e):e=t[0],e}if(n===`inProgress`){let e;return t[1]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(`span`,{className:`flex size-[17px] shrink-0 items-center justify-center rounded-full border-[1.5px] border-primary`,children:(0,Y.jsx)(`span`,{className:`size-[7px] animate-status-pulse rounded-full bg-primary`})}),t[1]=e):e=t[1],e}let r;return t[2]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,Y.jsx)(`span`,{className:`size-[17px] shrink-0 rounded-full border-[1.5px] border-[color:var(--border-strong)]`}),t[2]=r):r=t[2],r}function rF(e){let t=(0,J.c)(2),{activePlan:n}=e;if(!n?.explanation)return null;let r;return t[0]===n.explanation?r=t[1]:(r=(0,Y.jsx)(`p`,{className:`px-3 pt-1 pb-0.5 text-[12.5px] leading-relaxed text-muted-foreground`,children:n.explanation}),t[0]=n.explanation,t[1]=r),r}function iF(e){let t=(0,J.c)(4),{activePlan:n}=e;if(!n||n.steps.length===0)return null;let r;t[0]===n.steps?r=t[1]:(r=n.steps.map(aF),t[0]=n.steps,t[1]=r);let i;return t[2]===r?i=t[3]:(i=(0,Y.jsx)(`div`,{children:r}),t[2]=r,t[3]=i),i}function aF(e){return(0,Y.jsxs)(`div`,{className:`flex items-start gap-2.5 px-3 py-[7px] text-[13px]`,children:[(0,Y.jsx)(`span`,{className:`mt-px`,children:(0,Y.jsx)(nF,{status:e.status})}),(0,Y.jsx)(`span`,{className:G(`leading-snug`,e.status===`inProgress`?`text-foreground`:`text-muted-foreground`),children:e.step})]},`${e.status}:${e.step}`)}function oF(e){let t=(0,J.c)(44),{activeProposedPlan:n,environmentId:r,markdownCwd:i,workspaceRoot:a}=e,[o,s]=(0,q.useState)(!1),[c,l]=(0,q.useState)(!1),{copyToClipboard:u,isCopied:d}=Os(),f=n?.planMarkdown??null,p;t[0]===f?p=t[1]:(p=f?pu(f):null,t[0]=f,t[1]=p);let m=p,h;t[2]===f?h=t[3]:(h=f?fu(f):null,t[2]=f,t[3]=h);let g=h,_;t[4]!==u||t[5]!==f?(_=()=>{f&&u(f)},t[4]=u,t[5]=f,t[6]=_):_=t[6];let v=_,y;t[7]===f?y=t[8]:(y=()=>{f&&xu(yu(f),bu(f))},t[7]=f,t[8]=y);let b=y,x;t[9]!==r||t[10]!==f||t[11]!==a?(x=()=>{let e=Le(r);if(!e||!a||!f)return;let t=yu(f);l(!0),e.projects.writeFile({cwd:a,relativePath:t,contents:bu(f)}).then(lF).catch(cF).then(()=>l(!1),()=>l(!1))},t[9]=r,t[10]=f,t[11]=a,t[12]=x):x=t[12];let S=x;if(!f)return null;let C;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(C=()=>s(sF),t[13]=C):C=t[13];let w;t[14]===o?w=t[15]:(w=o?(0,Y.jsx)(Xr,{className:`size-3 shrink-0 text-muted-foreground`}):(0,Y.jsx)(ri,{className:`size-3 shrink-0 text-muted-foreground`}),t[14]=o,t[15]=w);let T=g??`Full plan`,E;t[16]===T?E=t[17]:(E=(0,Y.jsx)(`span`,{className:`truncate text-[10px] font-semibold tracking-widest text-muted-foreground uppercase group-hover:text-foreground/70`,children:T}),t[16]=T,t[17]=E);let D;t[18]!==w||t[19]!==E?(D=(0,Y.jsxs)(`button`,{type:`button`,className:`group flex min-w-0 flex-1 items-center gap-1.5 text-left`,onClick:C,children:[w,E]}),t[18]=w,t[19]=E,t[20]=D):D=t[20];let O;t[21]===Symbol.for(`react.memo_cache_sentinel`)?(O=(0,Y.jsx)(ac,{render:(0,Y.jsx)(K,{size:`icon-xs`,variant:`ghost`,className:`shrink-0 text-muted-foreground hover:text-foreground/70`,"aria-label":`Plan actions`}),children:(0,Y.jsx)(Bi,{className:`size-3.5`})}),t[21]=O):O=t[21];let k=d?`Copied!`:`Copy to clipboard`,A;t[22]!==v||t[23]!==k?(A=(0,Y.jsx)(oc,{onClick:v,children:k}),t[22]=v,t[23]=k,t[24]=A):A=t[24];let j;t[25]===b?j=t[26]:(j=(0,Y.jsx)(oc,{onClick:b,children:`Download as markdown`}),t[25]=b,t[26]=j);let M=!a||c,N;t[27]!==S||t[28]!==M?(N=(0,Y.jsx)(oc,{onClick:S,disabled:M,children:`Save to workspace`}),t[27]=S,t[28]=M,t[29]=N):N=t[29];let P;t[30]!==A||t[31]!==j||t[32]!==N?(P=(0,Y.jsxs)(nc,{children:[O,(0,Y.jsxs)($s,{align:`end`,children:[A,j,N]})]}),t[30]=A,t[31]=j,t[32]=N,t[33]=P):P=t[33];let F;t[34]!==D||t[35]!==P?(F=(0,Y.jsxs)(`div`,{className:`flex min-w-0 items-center justify-between gap-2`,children:[D,P]}),t[34]=D,t[35]=P,t[36]=F):F=t[36];let I;t[37]!==m||t[38]!==i||t[39]!==o?(I=o?(0,Y.jsx)(`div`,{className:`rounded-lg border border-border bg-background/50 p-3`,children:(0,Y.jsx)(ca,{text:m??``,cwd:i,isStreaming:!1})}):null,t[37]=m,t[38]=i,t[39]=o,t[40]=I):I=t[40];let L;return t[41]!==F||t[42]!==I?(L=(0,Y.jsxs)(`div`,{className:`space-y-2 px-3 pt-1 pb-1`,children:[F,I]}),t[41]=F,t[42]=I,t[43]=L):L=t[43],L}function sF(e){return!e}function cF(e){ki.add(ks({type:`error`,title:`Could not save plan`,description:e instanceof Error?e.message:`An error occurred.`}))}function lF(e){ki.add({type:`success`,title:`Plan saved`,description:e.relativePath})}function uF(e){return e===`running`?`Working`:e===`failed`?`Needs review`:e===`finished`?`Finished`:e===`interrupted`?`Stopped`:`Idle`}var dF={running:`bg-sky-400 animate-status-pulse shadow-[0_0_0_3px_color-mix(in_srgb,var(--sky)_22%,transparent)]`,finished:`bg-success`,failed:`bg-destructive`,interrupted:`bg-muted-foreground/60`,idle:`bg-muted-foreground/40`};function fF(e){let t=(0,J.c)(9),{subagents:n,onOpenSubagent:r}=e,i;t[0]===n?i=t[1]:(i=n===void 0?[]:n,t[0]=n,t[1]=i);let a=i;if(a.length===0)return null;let o;if(t[2]!==r||t[3]!==a){let e;t[5]===r?e=t[6]:(e=e=>{let t=e.tool??e.role??null,n=e.updatedAt||e.startedAt;return(0,Y.jsxs)(`button`,{type:`button`,className:`flex w-full min-w-0 items-center gap-2.5 px-3 py-2 text-left transition-colors hover:bg-accent`,onClick:()=>r?.(e),"aria-label":`${e.name} — ${uF(e.status)}`,title:e.detail??void 0,children:[(0,Y.jsx)(`span`,{className:`grid size-[26px] shrink-0 place-items-center rounded-lg border border-border bg-secondary/40`,children:(0,Y.jsx)(la,{name:e.avatarKey??e.key,className:`size-[18px]`})}),(0,Y.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[(0,Y.jsxs)(`span`,{className:`flex items-center gap-1.5`,children:[(0,Y.jsx)(`span`,{className:`truncate text-[13px] font-medium`,children:e.name}),(0,Y.jsx)(VP,{className:dF[e.status],title:uF(e.status)})]}),t?(0,Y.jsx)(`span`,{className:`block truncate text-[11.5px] text-muted-foreground`,children:t}):null]}),n?(0,Y.jsx)(`span`,{className:`shrink-0 font-mono text-[11px] text-muted-foreground tabular-nums`,children:bo(n)}):null]},e.key)},t[5]=r,t[6]=e),o=a.map(e),t[2]=r,t[3]=a,t[4]=o}else o=t[4];let s;return t[7]===o?s=t[8]:(s=(0,Y.jsx)(`div`,{children:o}),t[7]=o,t[8]=s),s}function pF(e){return e===`success`?(0,Y.jsx)(Jr,{className:`size-3.5 text-success-foreground`}):e===`failure`||e===`error`?(0,Y.jsx)(Qa,{className:`size-3.5 text-destructive-foreground`}):e===`running`?(0,Y.jsx)(ka,{className:`size-3.5 animate-spin text-info-foreground`}):e===`pending`?(0,Y.jsx)(Fi,{className:`size-3.5 text-muted-foreground`}):(0,Y.jsx)(`span`,{className:`size-3 rounded-full border border-muted-foreground/35`})}function mF(e){let t=(0,J.c)(17),{run:n}=e,r;t[0]===n.tone?r=t[1]:(r=pF(n.tone),t[0]=n.tone,t[1]=r);let i;t[2]===r?i=t[3]:(i=(0,Y.jsx)(`span`,{className:`grid w-4 shrink-0 place-items-center`,children:r}),t[2]=r,t[3]=i);let a;t[4]===n.name?a=t[5]:(a=(0,Y.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-medium`,children:n.name}),t[4]=n.name,t[5]=a);let o;t[6]===n.detail?o=t[7]:(o=n.detail?(0,Y.jsx)(`span`,{className:`shrink-0 text-[11.5px] text-muted-foreground`,children:n.detail}):null,t[6]=n.detail,t[7]=o);let s;t[8]!==i||t[9]!==a||t[10]!==o?(s=(0,Y.jsxs)(Y.Fragment,{children:[i,a,o]}),t[8]=i,t[9]=a,t[10]=o,t[11]=s):s=t[11];let c=s;if(n.url){let e;return t[12]!==c||t[13]!==n.url?(e=(0,Y.jsx)(`a`,{href:n.url,target:`_blank`,rel:`noreferrer`,className:`flex min-w-0 items-center gap-2.5 px-3 py-1.5 text-[12.5px] transition-colors hover:bg-accent`,children:c}),t[12]=c,t[13]=n.url,t[14]=e):e=t[14],e}let l;return t[15]===c?l=t[16]:(l=(0,Y.jsx)(`div`,{className:`flex min-w-0 items-center gap-2.5 px-3 py-1.5 text-[12.5px]`,children:c}),t[15]=c,t[16]=l),l}function hF(e){let t=(0,J.c)(11),{pullRequest:n}=e,r=n.checksError,i;t[0]===r?i=t[1]:(i=r?(0,Y.jsx)(`p`,{className:G(`px-3 py-1.5 text-[11.5px]`,r.kind===`terminal`?`text-destructive-foreground`:`text-muted-foreground`),children:r.message}):null,t[0]=r,t[1]=i);let a;t[2]===n.latestRuns?a=t[3]:(a=n.latestRuns.map(gF),t[2]=n.latestRuns,t[3]=a);let o;t[4]!==r||t[5]!==n.latestRuns.length?(o=n.latestRuns.length===0&&!r?(0,Y.jsx)(`p`,{className:`px-3 py-1.5 text-[12px] text-muted-foreground`,children:`No checks reported.`}):null,t[4]=r,t[5]=n.latestRuns.length,t[6]=o):o=t[6];let s;return t[7]!==i||t[8]!==a||t[9]!==o?(s=(0,Y.jsxs)(`div`,{children:[i,a,o]}),t[7]=i,t[8]=a,t[9]=o,t[10]=s):s=t[10],s}function gF(e){return(0,Y.jsx)(mF,{run:e},e.id)}function _F(e,t){let n=[];return typeof e==`number`&&n.push(`${e} approved`),typeof t==`number`&&n.push(`${t} requested`),n.length>0?n.join(` · `):null}function vF(e){let t=(0,J.c)(6),{pullRequest:n}=e,r;t[0]!==n.reviewsApproved||t[1]!==n.reviewsRequested?(r=_F(n.reviewsApproved,n.reviewsRequested),t[0]=n.reviewsApproved,t[1]=n.reviewsRequested,t[2]=r):r=t[2];let i=r;if(!i)return null;let a;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(dr,{}),` Reviews`]}),t[3]=a):a=t[3];let o;return t[4]===i?o=t[5]:(o=(0,Y.jsx)(WP,{label:a,value:i,monoValue:!1}),t[4]=i,t[5]=o),o}function yF(e){let t=(0,J.c)(13),{pullRequest:n,showTitle:r,showChecks:i,showReviews:a}=e,o=r===void 0||r,s=i===void 0||i,c=a===void 0||a,l;t[0]!==n||t[1]!==o?(l=o||n.hasMergeConflicts?(0,Y.jsxs)(`div`,{className:`space-y-2 px-3 pt-0.5 pb-[9px]`,children:[o?(0,Y.jsx)(`p`,{className:`truncate text-[11.5px] text-muted-foreground`,children:n.title}):null,n.hasMergeConflicts?(0,Y.jsx)(GP,{}):null]}):null,t[0]=n,t[1]=o,t[2]=l):l=t[2];let u;t[3]!==n||t[4]!==s?(u=s?(0,Y.jsx)(hF,{pullRequest:n}):null,t[3]=n,t[4]=s,t[5]=u):u=t[5];let d;t[6]!==n||t[7]!==c?(d=c?(0,Y.jsx)(vF,{pullRequest:n}):null,t[6]=n,t[7]=c,t[8]=d):d=t[8];let f;return t[9]!==l||t[10]!==u||t[11]!==d?(f=(0,Y.jsxs)(`div`,{children:[l,u,d]}),t[9]=l,t[10]=u,t[11]=d,t[12]=f):f=t[12],f}function bF(e){let t=(0,J.c)(9),{overviewItems:n}=e,r;t[0]===n?r=t[1]:(r=AP(n),t[0]=n,t[1]=r);let i=r;if(!i)return null;let a;t[2]===i.value?a=t[3]:(a=(0,Y.jsx)(WP,{label:`Target`,value:i.value}),t[2]=i.value,t[3]=a);let o;t[4]===i.detail?o=t[5]:(o=i.detail?(0,Y.jsx)(WP,{label:`Status`,value:i.detail}):null,t[4]=i.detail,t[5]=o);let s;return t[6]!==a||t[7]!==o?(s=(0,Y.jsxs)(`div`,{children:[a,o]}),t[6]=a,t[7]=o,t[8]=s):s=t[8],s}function xF(){let e=(0,J.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,Y.jsxs)(`div`,{className:`flex flex-col items-center justify-center px-3 py-12 text-center`,children:[(0,Y.jsx)(`p`,{className:`text-[13px] text-muted-foreground/40`,children:`No active plan yet.`}),(0,Y.jsx)(`p`,{className:`mt-1 text-[11px] text-muted-foreground/30`,children:`Plans and subagents will appear here as the thread runs.`})]}),e[0]=t):t=e[0],t}var SF={changes:(0,Y.jsx)(pi,{}),plan:(0,Y.jsx)(za,{}),agents:(0,Y.jsx)(qr,{}),pr:(0,Y.jsx)(Yi,{}),checks:(0,Y.jsx)(Yi,{}),env:(0,Y.jsx)(qa,{})};function CF(e){return!!(e.activePlan&&(e.activePlan.steps.length>0||e.activePlan.explanation)||e.activeProposedPlan?.planMarkdown)}function wF(){let e=(0,J.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,Y.jsx)(`span`,{className:`ml-px size-2 shrink-0 rounded-full bg-sky-400 animate-status-pulse`}),e[0]=t):t=e[0],t}function TF(e,t){return`${e} ${t}${e===1?``:`s`}`}function EF(e,t){return e.checksFailed>0?`${e.checksFailed} ${t}`:e.checksRunning>0?`${e.checksRunning} running`:`passing`}function DF(e){let t=(0,J.c)(5),{summary:n}=e,r;t[0]===n.planTotal?r=t[1]:(r=(0,Y.jsxs)(`span`,{className:`text-[11px] font-normal text-muted-foreground`,children:[`/`,n.planTotal]}),t[0]=n.planTotal,t[1]=r);let i;return t[2]!==n.planDone||t[3]!==r?(i=(0,Y.jsxs)(Y.Fragment,{children:[n.planDone,r]}),t[2]=n.planDone,t[3]=r,t[4]=i):i=t[4],i}function OF(e,t){if(e.pullRequest){if(e.pullRequest.hasMergeConflicts)return(0,Y.jsx)(NP,{tone:`error`,children:`conflict`});if(t.checksTotal>0)return(0,Y.jsxs)(NP,{tone:t.checksFailed>0?`error`:`success`,children:[t.checksPassed,`/`,t.checksTotal]})}}function kF(e){return e.agentsRunning>0?(0,Y.jsxs)(NP,{tone:`info`,children:[(0,Y.jsx)(ka,{className:`animate-spin`}),e.agentsRunning]}):(0,Y.jsx)(NP,{tone:`neutral`,children:e.agentsTotal})}function AF(e){if(e.planTotal!==0)return(0,Y.jsxs)(NP,{tone:`neutral`,children:[e.planDone,` / `,e.planTotal]})}function jF(e){return e?(0,Y.jsx)(NP,{tone:`warning`,children:e}):(0,Y.jsxs)(NP,{tone:`success`,children:[(0,Y.jsx)(`span`,{className:`size-1.5 rounded-full bg-current`}),` ready`]})}function MF(e,t){let n=t?.trim();if(n)return n.toLocaleLowerCase()===e.trim().toLocaleLowerCase()?void 0:n}function NF(e,t,n){let r=AP(e.overviewItems),i=[];if((t.fileCount>0||kP(e.overviewItems))&&i.push({id:`changes`,icon:SF.changes,title:`Changes`,summary:t.hasDiff?(0,Y.jsx)(PP,{additions:t.additions,deletions:t.deletions}):void 0,defaultOpen:!1,body:(0,Y.jsx)($P,{changes:e.changes,overviewItems:e.overviewItems,onOpenReview:e.onOpenReview,pullRequestNumber:e.pullRequest?.number})}),CF(e)&&i.push({id:`plan`,icon:SF.plan,title:`Plan`,summary:AF(t),defaultOpen:!1,body:(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(rF,{activePlan:e.activePlan}),(0,Y.jsx)(iF,{activePlan:e.activePlan}),(0,Y.jsx)(oF,{activeProposedPlan:e.activeProposedPlan,environmentId:e.environmentId,markdownCwd:e.markdownCwd,workspaceRoot:e.workspaceRoot})]})}),(e.subagents?.length??0)>0&&i.push({id:`agents`,icon:SF.agents,title:`Subagents`,summary:kF(t),defaultOpen:!1,body:(0,Y.jsx)(fF,{subagents:e.subagents,onOpenSubagent:e.onOpenSubagent})}),e.pullRequest){let r=e.pullRequest,a=r.number!=null;i.push({id:`pr`,icon:a?SF.pr:SF.checks,title:a?`Pull Request #${r.number}`:`Checks`,summary:OF(e,t),defaultOpen:!0,body:a?(0,Y.jsx)(yF,{pullRequest:r,showChecks:!0,showReviews:n.prShowReviews}):(0,Y.jsx)(hF,{pullRequest:r})})}return r&&i.push({id:`env`,icon:SF.env,title:`Environment`,summary:jF(r.detail),defaultOpen:!1,body:(0,Y.jsx)(bF,{overviewItems:e.overviewItems})}),i}function PF(e){let t=(0,J.c)(27),{summary:n}=e,r;if(t[0]!==n){if(r=[],n.hasDiff||n.fileCount>0){let e;t[2]!==n.additions||t[3]!==n.deletions?(e=(0,Y.jsx)(PP,{additions:n.additions,deletions:n.deletions}),t[2]=n.additions,t[3]=n.deletions,t[4]=e):e=t[4];let i;t[5]===n.fileCount?i=t[6]:(i=TF(n.fileCount,`file`),t[5]=n.fileCount,t[6]=i);let a;t[7]!==e||t[8]!==i?(a=(0,Y.jsx)(HP,{label:`Diff`,value:e,hint:i},`diff`),t[7]=e,t[8]=i,t[9]=a):a=t[9],r.push(a)}if(n.checksTotal>0){let e=n.checksFailed>0?`danger`:`default`,i=`${n.checksPassed}/${n.checksTotal}`,a=EF(n,`failing`),o;t[10]!==e||t[11]!==i||t[12]!==a?(o=(0,Y.jsx)(HP,{label:`Checks`,tone:e,value:i,hint:a},`checks`),t[10]=e,t[11]=i,t[12]=a,t[13]=o):o=t[13],r.push(o)}if(n.planTotal>0){let e=(0,Y.jsx)(DF,{summary:n}),i=`${jP(n)}% done`,a;t[14]!==e||t[15]!==i?(a=(0,Y.jsx)(HP,{label:`Plan`,value:e,hint:i},`plan`),t[14]=e,t[15]=i,t[16]=a):a=t[16],r.push(a)}if(n.agentsTotal>0){let e;t[17]===n.agentsRunning?e=t[18]:(e=n.agentsRunning>0?(0,Y.jsx)(wF,{}):null,t[17]=n.agentsRunning,t[18]=e);let i;t[19]!==n.agentsRunning||t[20]!==e?(i=(0,Y.jsxs)(Y.Fragment,{children:[n.agentsRunning,e]}),t[19]=n.agentsRunning,t[20]=e,t[21]=i):i=t[21];let a=n.agentsRunning>0?`running`:`${n.agentsTotal} total`,o;t[22]!==i||t[23]!==a?(o=(0,Y.jsx)(HP,{label:`Agents`,value:i,hint:a},`agents`),t[22]=i,t[23]=a,t[24]=o):o=t[24],r.push(o)}t[0]=n,t[1]=r}else r=t[1];if(r.length===0)return null;let i;return t[25]===r?i=t[26]:(i=(0,Y.jsx)(`div`,{className:`sticky top-0 z-10 flex gap-[7px] border-b border-border bg-card/92 px-3 py-2.5 backdrop-blur supports-[backdrop-filter]:bg-card/85`,children:r}),t[25]=r,t[26]=i),i}function FF(e){let t=(0,J.c)(54),{summary:n,activeTile:r,onJump:i}=e,a;if(t[0]!==r||t[1]!==i||t[2]!==n){if(a=[],n.hasDiff||n.fileCount>0){let e;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(pi,{}),t[4]=e):e=t[4];let o;t[5]!==n.additions||t[6]!==n.deletions?(o=(0,Y.jsx)(PP,{additions:n.additions,deletions:n.deletions}),t[5]=n.additions,t[6]=n.deletions,t[7]=o):o=t[7];let s;t[8]===n.fileCount?s=t[9]:(s=TF(n.fileCount,`file`),t[8]=n.fileCount,t[9]=s);let c=r===`changes`,l;t[10]===i?l=t[11]:(l=()=>i(`changes`),t[10]=i,t[11]=l);let u;t[12]!==o||t[13]!==s||t[14]!==c||t[15]!==l?(u=(0,Y.jsx)(UP,{icon:e,label:`Diff`,value:o,hint:s,isActive:c,onClick:l},`diff`),t[12]=o,t[13]=s,t[14]=c,t[15]=l,t[16]=u):u=t[16],a.push(u)}if(n.checksTotal>0){let e;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(Yi,{}),t[17]=e):e=t[17];let o=n.checksFailed>0?`danger`:`default`,s=`${n.checksPassed}/${n.checksTotal}`,c;t[18]===n?c=t[19]:(c=EF(n,`failed`),t[18]=n,t[19]=c);let l=r===`pr`,u;t[20]===i?u=t[21]:(u=()=>i(`pr`),t[20]=i,t[21]=u);let d;t[22]!==o||t[23]!==s||t[24]!==c||t[25]!==l||t[26]!==u?(d=(0,Y.jsx)(UP,{icon:e,label:`Checks`,tone:o,value:s,hint:c,isActive:l,onClick:u},`checks`),t[22]=o,t[23]=s,t[24]=c,t[25]=l,t[26]=u,t[27]=d):d=t[27],a.push(d)}if(n.planTotal>0){let e;t[28]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(za,{}),t[28]=e):e=t[28];let o,s;t[29]===n?(o=t[30],s=t[31]):(o=(0,Y.jsx)(DF,{summary:n}),s=jP(n),t[29]=n,t[30]=o,t[31]=s);let c=`${s}%`,l=r===`plan`,u;t[32]===i?u=t[33]:(u=()=>i(`plan`),t[32]=i,t[33]=u);let d;t[34]!==o||t[35]!==c||t[36]!==l||t[37]!==u?(d=(0,Y.jsx)(UP,{icon:e,label:`Plan`,value:o,hint:c,isActive:l,onClick:u},`plan`),t[34]=o,t[35]=c,t[36]=l,t[37]=u,t[38]=d):d=t[38],a.push(d)}if(n.agentsTotal>0){let e;t[39]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(qr,{}),t[39]=e):e=t[39];let o;t[40]===n.agentsRunning?o=t[41]:(o=n.agentsRunning>0?(0,Y.jsx)(wF,{}):null,t[40]=n.agentsRunning,t[41]=o);let s;t[42]!==n.agentsRunning||t[43]!==o?(s=(0,Y.jsxs)(Y.Fragment,{children:[n.agentsRunning,o]}),t[42]=n.agentsRunning,t[43]=o,t[44]=s):s=t[44];let c=n.agentsRunning>0?`running`:`${n.agentsTotal} total`,l=r===`agents`,u;t[45]===i?u=t[46]:(u=()=>i(`agents`),t[45]=i,t[46]=u);let d;t[47]!==s||t[48]!==c||t[49]!==l||t[50]!==u?(d=(0,Y.jsx)(UP,{icon:e,label:`Agents`,value:s,hint:c,isActive:l,onClick:u},`agents`),t[47]=s,t[48]=c,t[49]=l,t[50]=u,t[51]=d):d=t[51],a.push(d)}t[0]=r,t[1]=i,t[2]=n,t[3]=a}else a=t[3];if(a.length===0)return null;let o;return t[52]===a?o=t[53]:(o=(0,Y.jsx)(`div`,{className:`grid grid-cols-4 gap-[7px] px-3 py-[11px]`,children:a}),t[52]=a,t[53]=o),o}function IF(e){let t=(0,J.c)(8),n,r;if(t[0]!==e){let i=DP(e),a=NF(e,i,{prShowReviews:!0});r=(0,Y.jsx)(PF,{summary:i}),n=a.map(LF),t[0]=e,t[1]=n,t[2]=r}else n=t[1],r=t[2];let i;t[3]===n?i=t[4]:(i=(0,Y.jsx)(`div`,{children:n}),t[3]=n,t[4]=i);let a;return t[5]!==r||t[6]!==i?(a=(0,Y.jsxs)(`div`,{children:[r,i]}),t[5]=r,t[6]=i,t[7]=a):a=t[7],a}function LF(e){return(0,Y.jsx)(KP,{icon:e.icon,title:e.title,summary:e.summary,defaultOpen:e.defaultOpen,children:e.body},e.id)}function RF(e){let t=(0,J.c)(8),n=DP(e),r=NF(e,n,{prShowReviews:!1}),i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(i={},t[0]=i):i=t[0];let[a,o]=(0,q.useState)(i),[s,c]=(0,q.useState)(`changes`),[l,u]=(0,q.useState)(null),d;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(d=new Map,t[1]=d):d=t[1];let f=(0,q.useRef)(d),p=(0,q.useRef)(null),m=(0,q.useRef)(null),h,g;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(h=()=>()=>{p.current!==null&&window.clearTimeout(p.current),m.current!==null&&window.cancelAnimationFrame(m.current)},g=[],t[2]=h,t[3]=g):(h=t[2],g=t[3]),(0,q.useEffect)(h,g);let _;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(_=(e,t)=>{o(n=>({...n,[e]:!(n[e]??t)}))},t[4]=_):_=t[4];let v=_,y;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(y=e=>{c(e),o(t=>({...t,[e]:!0})),u(null),m.current=window.requestAnimationFrame(()=>{m.current=null,f.current.get(e)?.scrollIntoView({behavior:`smooth`,block:`nearest`}),u(e),p.current!==null&&window.clearTimeout(p.current),p.current=window.setTimeout(()=>u(null),1e3)})},t[5]=y):y=t[5];let b=y,x=r.map(e=>(0,Y.jsx)(KP,{icon:e.icon,title:e.title,summary:e.summary,open:a[e.id]??e.defaultOpen,onToggle:()=>v(e.id,e.defaultOpen),flash:l===e.id,rootRef:t=>f.current.set(e.id,t),children:e.body},e.id)),S;return t[6]===x?S=t[7]:(S=(0,Y.jsx)(`div`,{className:`border-t border-border`,children:x}),t[6]=x,t[7]=S),(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(FF,{summary:n,activeTile:s,onJump:b}),S]})}function zF(e){let t=(0,J.c)(33),n,r,i,a,o,s;if(t[0]!==e){let c=DP(e),l;t[7]===e.overviewItems?l=t[8]:(l=kP(e.overviewItems),t[7]=e.overviewItems,t[8]=l);let u=l,d=AP(e.overviewItems),f,p,m;if(t[9]!==e.activePlan?.explanation||t[10]!==e.activePlan?.steps||t[11]!==e.subagents){p=e.subagents??[];let n;t[15]!==e.activePlan?.explanation||t[16]!==e.activePlan?.steps?(n=e.activePlan?.steps.find(VF)?.step??e.activePlan?.explanation??void 0,t[15]=e.activePlan?.explanation,t[16]=e.activePlan?.steps,t[17]=n):n=t[17],f=n,m=p.slice(0,2).map(BF).join(`, `),t[9]=e.activePlan?.explanation,t[10]=e.activePlan?.steps,t[11]=e.subagents,t[12]=f,t[13]=p,t[14]=m}else f=t[12],p=t[13],m=t[14];let h=m,g=c.fileCount>0?TF(c.fileCount,`file`):u?.value,_=d?MF(d.value,d.detail):void 0;n=c.fileCount>0||u?(0,Y.jsx)(JP,{icon:SF.changes,title:`Changes`,summary:(0,Y.jsxs)(Y.Fragment,{children:[g?(0,Y.jsx)(`span`,{className:G(`font-mono text-[10px] text-muted-foreground tabular-nums`,c.hasDiff&&`border-r border-border pr-1.5`),children:g}):null,c.hasDiff?(0,Y.jsx)(PP,{additions:c.additions,deletions:c.deletions,className:`text-[10px]`}):null]}),children:(0,Y.jsx)($P,{changes:e.changes,overviewItems:e.overviewItems,onOpenReview:e.onOpenReview,pullRequestNumber:e.pullRequest?.number})}):null,r=e.pullRequest?(0,Y.jsx)(JP,{icon:SF.checks,title:`Checks`,subtitle:e.pullRequest.number==null?c.refName?`CI on ${c.refName}`:`CI`:`CI on PR #${e.pullRequest.number}`,summary:(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(IP,{runs:e.pullRequest.latestRuns}),c.checksTotal>0?(0,Y.jsxs)(`span`,{className:`font-mono text-[11px] text-muted-foreground tabular-nums`,children:[c.checksPassed,`/`,c.checksTotal]}):null]}),children:(0,Y.jsx)(hF,{pullRequest:e.pullRequest})}):null,i=CF(e)?(0,Y.jsxs)(JP,{icon:SF.plan,title:`Plan`,subtitle:f,summary:c.planTotal>0?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(RP,{value:jP(c)}),(0,Y.jsxs)(`span`,{className:`font-mono text-[11px] text-muted-foreground tabular-nums`,children:[c.planDone,`/`,c.planTotal]})]}):void 0,children:[(0,Y.jsx)(rF,{activePlan:e.activePlan}),(0,Y.jsx)(iF,{activePlan:e.activePlan}),(0,Y.jsx)(oF,{activeProposedPlan:e.activeProposedPlan,environmentId:e.environmentId,markdownCwd:e.markdownCwd,workspaceRoot:e.workspaceRoot})]}):null,t[18]!==h||t[19]!==e.onOpenSubagent||t[20]!==e.subagents||t[21]!==p||t[22]!==c?(a=p.length>0?(0,Y.jsx)(JP,{icon:SF.agents,title:`Subagents`,subtitle:h?`${h}${p.length>2?`…`:``}`:void 0,summary:(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(zP,{subagents:p}),(0,Y.jsx)(`span`,{className:`text-[11px] text-muted-foreground`,children:c.agentsRunning>0?`${c.agentsRunning} running`:`${c.agentsTotal} total`})]}),children:(0,Y.jsx)(fF,{subagents:e.subagents,onOpenSubagent:e.onOpenSubagent})}):null,t[18]=h,t[19]=e.onOpenSubagent,t[20]=e.subagents,t[21]=p,t[22]=c,t[23]=a):a=t[23],t[24]===e.pullRequest?o=t[25]:(o=e.pullRequest&&e.pullRequest.number!=null?(0,Y.jsx)(JP,{icon:SF.pr,title:`Pull Request #${e.pullRequest.number}`,subtitle:e.pullRequest.title,summary:(0,Y.jsxs)(Y.Fragment,{children:[e.pullRequest.state?(0,Y.jsx)(bi,{kind:lr(e.pullRequest.state,e.pullRequest.isDraft)}):null,e.pullRequest.hasMergeConflicts?(0,Y.jsx)(NP,{tone:`error`,children:`conflict`}):null]}),externalLink:e.pullRequest.url?{href:e.pullRequest.url,ariaLabel:`Open pull request #${e.pullRequest.number} in a new tab`}:void 0,children:(0,Y.jsx)(yF,{pullRequest:e.pullRequest,showTitle:!1,showChecks:!1,showReviews:!0})}):null,t[24]=e.pullRequest,t[25]=o),s=d?(0,Y.jsx)(JP,{icon:SF.env,title:`Environment`,subtitle:d.value,summary:jF(_)}):null,t[0]=e,t[1]=n,t[2]=r,t[3]=i,t[4]=a,t[5]=o,t[6]=s}else n=t[1],r=t[2],i=t[3],a=t[4],o=t[5],s=t[6];let c;return t[26]!==n||t[27]!==r||t[28]!==i||t[29]!==a||t[30]!==o||t[31]!==s?(c=(0,Y.jsxs)(`div`,{children:[n,r,i,a,o,s]}),t[26]=n,t[27]=r,t[28]=i,t[29]=a,t[30]=o,t[31]=s,t[32]=c):c=t[32],c}function BF(e){return e.name}function VF(e){return e.status===`inProgress`}function HF(e){let t=(0,J.c)(9),n,r;if(t[0]===e?(n=t[1],r=t[2]):({layout:n,...r}=e,t[0]=e,t[1]=n,t[2]=r),n===`hybrid`){let e;return t[3]===r?e=t[4]:(e=(0,Y.jsx)(RF,{...r}),t[3]=r,t[4]=e),e}if(n===`board`){let e;return t[5]===r?e=t[6]:(e=(0,Y.jsx)(zF,{...r}),t[5]=r,t[6]=e),e}let i;return t[7]===r?i=t[8]:(i=(0,Y.jsx)(IF,{...r}),t[7]=r,t[8]=i),i}function UF(e){let t=(0,J.c)(10),{layout:n,layoutProps:r}=e,i=n===`board`&&!!r.pullRequest?.hasMergeConflicts,a=!!r.onRefreshPullRequest;if(!i&&!a)return null;let o=!!r.pullRequest?.checksError,s;t[0]===i?s=t[1]:(s=i?(0,Y.jsxs)(NP,{tone:`error`,children:[(0,Y.jsx)(Ya,{}),` conflict`]}):null,t[0]=i,t[1]=s);let c;t[2]!==o||t[3]!==r.isRefreshingPullRequest||t[4]!==r.onRefreshPullRequest||t[5]!==a?(c=a?(0,Y.jsxs)(`div`,{className:`relative shrink-0`,children:[(0,Y.jsx)(K,{type:`button`,size:`icon-xs`,variant:`ghost`,className:`text-muted-foreground hover:text-foreground`,onClick:r.onRefreshPullRequest,disabled:r.isRefreshingPullRequest,"aria-label":o?`Retry loading source control (last refresh failed)`:`Refresh source control`,children:(0,Y.jsx)(ui,{className:G(`size-3.5`,r.isRefreshingPullRequest&&`animate-spin`)})}),o&&!r.isRefreshingPullRequest?(0,Y.jsx)(`span`,{"aria-hidden":!0,className:`pointer-events-none absolute -top-0.5 -right-0.5 size-2 rounded-full bg-warning ring-2 ring-card`}):null]}):null,t[2]=o,t[3]=r.isRefreshingPullRequest,t[4]=r.onRefreshPullRequest,t[5]=a,t[6]=c):c=t[6];let l;return t[7]!==s||t[8]!==c?(l=(0,Y.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1.5`,children:[s,c]}),t[7]=s,t[8]=c,t[9]=l):l=t[9],l}var WF=(0,q.memo)(function(e){let t=(0,J.c)(31),{mode:n,onClose:r,...i}=e,a=n===void 0?`sidebar`:n,o=al(`panelLayout`),s=OP(i),c;t[0]===r?c=t[1]:(c=r?(0,Y.jsx)(K,{type:`button`,size:`icon-xs`,variant:`ghost`,className:`shrink-0 text-muted-foreground hover:text-foreground`,onClick:r,"aria-label":`Close overview`,children:(0,Y.jsx)(Qa,{className:`size-3.5`})}):null,t[0]=r,t[1]=c);let l=c,u;t[2]!==s||t[3]!==o||t[4]!==i?(u=s?(0,Y.jsx)(xF,{}):(0,Y.jsx)(HF,{layout:o,...i}),t[2]=s,t[3]=o,t[4]=i,t[5]=u):u=t[5];let d=u,f=i.pullRequest?.url,p=o===`stack`&&!!f,m=a===`sidebar`&&`my-3 mr-3 w-[340px] shrink-0 self-start overflow-hidden rounded-lg border border-border/70 bg-card/90 shadow-xl backdrop-blur supports-[backdrop-filter]:bg-card/75`,h=a===`sheet`&&`h-full w-full bg-card/90 backdrop-blur supports-[backdrop-filter]:bg-card/75`,g=a===`floating`&&`selection-glass-surface pointer-events-auto max-h-[min(72vh,42rem)] w-[min(360px,calc(100vw_-_1.5rem))] rounded-lg border`,_;t[6]!==m||t[7]!==h||t[8]!==g?(_=G(`flex min-h-0 flex-col`,m,h,g),t[6]=m,t[7]=h,t[8]=g,t[9]=_):_=t[9];let v;t[10]===a?v=t[11]:(v=a===`sidebar`?{maxHeight:`calc(100% - 1.5rem)`}:void 0,t[10]=a,t[11]=v);let y;t[12]!==l||t[13]!==s||t[14]!==o||t[15]!==i?(y=!s&&i.branchControl?(0,Y.jsxs)(`div`,{className:`flex min-h-9 min-w-0 shrink-0 items-center justify-between gap-1 border-b border-border/60 pr-2`,"data-slot":`overview-branch-header`,children:[(0,Y.jsx)(`div`,{className:`flex min-w-0 flex-1 items-center`,"data-slot":`overview-branch-control`,children:i.branchControl}),l?(0,Y.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1.5`,children:[(0,Y.jsx)(UF,{layout:o,layoutProps:i}),l]}):(0,Y.jsx)(UF,{layout:o,layoutProps:i})]}):l?(0,Y.jsx)(`div`,{className:`flex shrink-0 items-center justify-end border-b border-border/60 px-2 py-1.5`,children:l}):null,t[12]=l,t[13]=s,t[14]=o,t[15]=i,t[16]=y):y=t[16];let b;t[17]!==d||t[18]!==a?(b=a===`sidebar`?(0,Y.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto overscroll-contain [scrollbar-gutter:stable]`,"data-slot":`scroll-area-viewport`,children:d}):(0,Y.jsx)(ys,{className:`min-h-0 flex-1`,scrollbarGutter:!0,children:d}),t[17]=d,t[18]=a,t[19]=b):b=t[19];let x;t[20]!==s||t[21]!==i.sourceControlActions||t[22]!==f||t[23]!==p?(x=!s&&i.sourceControlActions?(0,Y.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 border-t border-border/60 bg-card/50 px-3 py-2.5`,children:[(0,Y.jsx)(`div`,{className:`flex min-w-0 flex-1`,children:i.sourceControlActions}),p?(0,Y.jsx)(K,{variant:`outline`,size:`icon`,className:`size-8 shrink-0`,render:(0,Y.jsx)(`a`,{href:f,target:`_blank`,rel:`noreferrer`,"aria-label":`View pull request`}),children:(0,Y.jsx)(Ui,{className:`size-3.5`})}):null]}):null,t[20]=s,t[21]=i.sourceControlActions,t[22]=f,t[23]=p,t[24]=x):x=t[24];let S;return t[25]!==b||t[26]!==x||t[27]!==_||t[28]!==v||t[29]!==y?(S=(0,Y.jsxs)(`div`,{className:_,style:v,children:[y,b,x]}),t[25]=b,t[26]=x,t[27]=_,t[28]=v,t[29]=y,t[30]=S):S=t[30],S}),GF={added:`A`,add:`A`,a:`A`,new:`A`,modified:`M`,modify:`M`,changed:`M`,m:`M`,deleted:`D`,delete:`D`,removed:`D`,d:`D`,renamed:`R`,rename:`R`,r:`R`,copied:`C`,c:`C`,typechange:`T`,type:`T`,t:`T`};function KF(e){if(e)return GF[e.toLowerCase()]}function qF(e,t,n=[]){let r=new Set(t.map(e=>e.path)),i=new Map;for(let t of e)for(let e of t.files){let t=i.get(e.path),n=KF(e.kind)??t?.status;i.set(e.path,{path:e.path,insertions:(t?.insertions??0)+(e.additions??0),deletions:(t?.deletions??0)+(e.deletions??0),category:r.has(e.path)?`local`:`committed`,...n?{status:n}:{}})}for(let e of t)i.has(e.path)||i.set(e.path,{path:e.path,insertions:e.insertions,deletions:e.deletions,category:`local`});for(let e of n)i.has(e.path)||i.set(e.path,{path:e.path,insertions:e.insertions,deletions:e.deletions,category:`committed`});return[...i.values()]}function JF(e){return`${e} ${e===1?`file`:`files`}`}function YF(e){let t=0,n=0;for(let r of e)t+=r.insertions,n+=r.deletions;return{fileCount:e.length,insertions:t,deletions:n}}function XF(e){return{committed:YF(e.filter(e=>e.category===`committed`)),local:YF(e.filter(e=>e.category!==`committed`))}}function ZF(e){let{committed:t,local:n}=e,r=t.insertions+n.insertions,i=t.deletions+n.deletions,a=t.fileCount>0,o=n.fileCount>0;return!a&&!o?{label:`Changes`,value:`No changes`,additions:0,deletions:0}:a&&o?{label:`Changes`,value:`Committed + local`,additions:r,deletions:i,breakdown:[{label:`Committed`,value:JF(t.fileCount),...e.pullRequestNumber?{detail:`PR #${e.pullRequestNumber}`}:{},additions:t.insertions,deletions:t.deletions,muted:!1},{label:`Uncommitted`,value:JF(n.fileCount),detail:`local`,additions:n.insertions,deletions:n.deletions,muted:!1}]}:{label:`Changes`,value:JF(a?t.fileCount:n.fileCount),additions:r,deletions:i}}function QF(e){return e==null?``:typeof e==`string`?e:e instanceof Error||typeof e==`object`&&`message`in e&&typeof e.message==`string`?e.message:String(e)}var $F=[{kind:`terminal`,message:`Sign in to your source control provider to load this pull request.`,patterns:[`gh auth`,`not logged in`,`authentication`,`unauthorized`,`http 401`,`401`,`bad credentials`]},{kind:`terminal`,message:`This pull request could not be found.`,patterns:[`could not resolve to a`,`not found`,`404`,`no pull requests found`]},{kind:`transient`,message:`The source control provider is rate limiting requests. Try again shortly.`,patterns:[`rate limit`]},{kind:`transient`,message:`Loading pull request details timed out. Try refreshing.`,patterns:[`timed out`,`timeout`,`etimedout`,`vcsprocesstimeout`]},{kind:`transient`,message:`Couldn't reach the source control provider. Try refreshing.`,patterns:[`econnreset`,`enotfound`,`eai_again`,`socket hang up`,`network`,`fetch failed`,`econnrefused`,`connection refused`]}];function eI(e){let t=QF(e).trim();if(t.length===0)return null;let n=t.toLowerCase();for(let e of $F)if(e.patterns.some(e=>n.includes(e)))return{kind:e.kind,message:e.message,raw:t};return{kind:`transient`,message:`Couldn't load pull request details. Try refreshing.`,raw:t}}function tI(e,t){return!e||e.pr||!t?e:{...e,pr:{number:t.number,title:t.title,url:t.url,baseRef:t.baseRefName,headRef:t.headRefName,state:t.state}}}function nI(e){return e?.sourceControlProvider?cr(e.sourceControlProvider):mr}function rI(e){let t=e.terminology??mr,n=e.featureBranch?[`Preparing feature ref...`]:[],r=e.pushTarget?`Pushing to ${e.pushTarget}...`:`Pushing...`,i=[`Preparing ${t.shortLabel}...`,`Generating ${t.shortLabel} content...`,`Creating ${t.singular}...`];if(e.action===`push`)return[r];if(e.action===`create_pr`)return e.shouldPushBeforePr?[r,...i]:i;let a=e.action===`commit`||e.hasWorkingTreeChanges?e.hasCustomCommitMessage?[`Committing...`]:[`Generating commit message...`,`Committing...`]:[];return e.action===`commit`?[...n,...a]:e.action===`commit_push`?[...n,...a,r]:[...n,...a,r,...i]}function iI(e,t,n=!0){if(!e)return[];let r=nI(e),i=e.refName!==null,a=e.hasWorkingTreeChanges,o=e.pr?.state===`open`,s=e.behindCount>0,c=(e.aheadOfDefaultCount??e.aheadCount)>0,l=n&&!e.hasUpstream,u=!t&&a,d=!t&&i&&!s&&e.aheadCount>0&&(e.hasUpstream||l),f=!t&&i&&!a&&!o&&c&&!s&&(e.hasUpstream||l),p=!t&&o,m={id:`commit`,label:`Commit`,disabled:!u,icon:`commit`,kind:`open_dialog`,dialogAction:`commit`};return n?[m,{id:`push`,label:`Push`,disabled:!d,icon:`push`,kind:`open_dialog`,dialogAction:`push`},o?{id:`pr`,label:`View ${r.shortLabel}`,disabled:!p,icon:`pr`,kind:`open_pr`}:{id:`pr`,label:`Create ${r.shortLabel}`,disabled:!f,icon:`pr`,kind:`open_dialog`,dialogAction:`create_pr`}]:[m]}function aI(e,t,n=!1,r=!0){if(t)return{label:`Commit`,disabled:!0,kind:`show_hint`,hint:`Git action in progress.`};if(!e)return{label:`Commit`,disabled:!0,kind:`show_hint`,hint:`Git status is unavailable.`};let i=e.refName!==null,a=e.hasWorkingTreeChanges,o=e.pr?.state===`open`,s=e.aheadCount>0,c=(e.aheadOfDefaultCount??e.aheadCount)>0,l=e.behindCount>0,u=s&&l,d=nI(e);return i?a?!e.hasUpstream&&!r?{label:`Commit`,disabled:!1,kind:`run_action`,action:`commit`}:o||n?{label:`Commit & push`,disabled:!1,kind:`run_action`,action:`commit_push`}:{label:`Commit, push & ${d.shortLabel}`,disabled:!1,kind:`run_action`,action:`commit_push_pr`}:e.hasUpstream?u?{label:`Sync ref`,disabled:!0,kind:`show_hint`,hint:`Branch has diverged from upstream. Rebase/merge first.`}:l?{label:`Pull`,disabled:!1,kind:`run_pull`}:s?o||n?{label:`Push`,disabled:!1,kind:`run_action`,action:n?`commit_push`:`push`}:{label:`Push & create ${d.shortLabel}`,disabled:!1,kind:`run_action`,action:`create_pr`}:o&&e.hasUpstream?{label:`View ${d.shortLabel}`,disabled:!1,kind:`open_pr`}:c&&!n?{label:`Create ${d.shortLabel}`,disabled:!1,kind:`run_action`,action:`create_pr`}:{label:`Commit`,disabled:!0,kind:`show_hint`,hint:`Branch is up to date. No action needed.`}:r?s?o||n?{label:`Push`,disabled:!1,kind:`run_action`,action:n?`commit_push`:`push`}:{label:`Push & create ${d.shortLabel}`,disabled:!1,kind:`run_action`,action:`create_pr`}:o?{label:`View ${d.shortLabel}`,disabled:!1,kind:`open_pr`}:{label:`Push`,disabled:!0,kind:`show_hint`,hint:`No local commits to push.`}:o&&!s?{label:`View ${d.shortLabel}`,disabled:!1,kind:`open_pr`}:{label:`Publish repository`,disabled:!1,kind:`open_publish`}:{label:`Commit`,disabled:!0,kind:`show_hint`,hint:`Create and checkout a ref before pushing or opening a ${d.singular}.`}}function oI(e,t){return t?e===`push`||e===`create_pr`||e===`commit_push`||e===`commit_push_pr`:!1}function sI(e){let t=e.branchName,n=` on "${t}". You can continue on this ref or create a feature ref and run the same action there.`,r=e.terminology??mr;return e.action===`push`||e.action===`commit_push`?e.includesCommit?{title:`Commit & push to default ref?`,description:`This action will commit and push changes${n}`,continueLabel:`Commit & push to ${t}`}:{title:`Push to default ref?`,description:`This action will push local commits${n}`,continueLabel:`Push to ${t}`}:e.includesCommit?{title:`Commit, push & create ${r.shortLabel} from default ref?`,description:`This action will commit, push, and create a ${r.singular}${n}`,continueLabel:`Commit, push & create ${r.shortLabel}`}:{title:`Push & create ${r.shortLabel} from default ref?`,description:`This action will push local commits and create a ${r.singular}${n}`,continueLabel:`Push & create ${r.shortLabel}`}}function cI(e){return e.branch.status!==`created`||!e.branch.name?null:{branch:e.branch.name}}function lI(e){return!e.gitStatus||e.gitStatus.refName===null&&e.threadBranch!==null||e.threadBranch===e.gitStatus.refName||e.threadBranch!==null&&e.gitStatus.refName!==null&&!a(e.threadBranch)&&a(e.gitStatus.refName)?null:{branch:e.gitStatus.refName}}function uI(e){if(!e)return null;for(let t of e.elements){let e=t.tagName;if(e===`BUTTON`||e===`INPUT`){let e=t;if(e.type===`submit`)return e}}return null}function dI(e){return{checked(t){return e.indeterminate?{}:t?{"data-checked":``}:{"data-unchecked":``}},...Wo}}var fI=q.createContext(void 0);function pI(){return q.useContext(fI)}var mI=q.createContext(void 0);function hI(){let e=q.useContext(mI);if(e===void 0)throw Error(Ir(14));return e}var gI=`data-parent`,_I=q.forwardRef(function(e,t){let{checked:n,className:r,defaultChecked:i=!1,"aria-labelledby":a,disabled:o=!1,form:s,id:c,indeterminate:l=!1,inputRef:u,name:d,onCheckedChange:f,parent:p=!1,readOnly:m=!1,render:h,required:g=!1,uncheckedValue:_,value:v,nativeButton:y=!1,style:b,...x}=e,{clearErrors:S}=Ho(),{disabled:C,name:w,setDirty:T,setFilled:E,setFocused:D,setTouched:O,state:k,validationMode:A,validityData:j,validation:M}=Uo(),N=cs(),{labelId:P,controlId:F,registerControlId:I,getDescriptionProps:L}=Vo(),R=pI(),z=R?.allValues===void 0?void 0:R.parent,ee=z!==void 0,te=C||N.disabled||R?.disabled||o,ne=w??d,B=v??ne,re=Dn(),ie=Dn(),V=c||F;ee&&(p?V=ie:B===void 0?V||=ie:V=`${z.id}-${B}`);let ae={};ee&&(p?ae=z.getParentProps():B!==void 0&&(ae=z.getChildProps(B)));let{checked:oe=n,indeterminate:H=l,onCheckedChange:se,...ce}=ae,le=R?.value,ue=q.useRef(null),de=Ur(()=>Symbol()),fe=q.useRef(!1),{getButtonProps:U,buttonRef:pe}=No({disabled:te,native:y}),me=R?.validation??M,[he,ge]=zo({controlled:B!==void 0&&le!==void 0&&!p?le.includes(B):oe,default:i,name:`Checkbox`,state:`checked`}),_e=ee?!!oe:he,ve=ee&&H||l;xn(()=>{I!==Vr&&(fe.current=!0,I(de.current,V))},[V,I,de]),q.useEffect(()=>{let e=de.current;return()=>{!fe.current||I===Vr||(fe.current=!1,I(e,void 0))}},[I,de]),Bo(ue,re,he,void 0,!R&&!te,d);let ye=q.useRef(null),be=me.registerInput,xe=R?B:void 0,Se=q.useCallback(e=>be(e,{controlRef:ue,value:xe}),[be,xe]),Ce=Rr(u,ye,p?void 0:Se),we=gs(a,P,ye,!y,V??void 0);xn(()=>{ye.current&&(ye.current.indeterminate=ve,he&&E(!0))},[he,ve,E]),Ro(he,()=>{R||(S(ne),E(he),T(he!==j.initialValue),me.change(he))});let Te=Br({checked:he,disabled:te,form:s,name:p?void 0:ne,id:y?void 0:V??void 0,required:g,ref:Ce,style:ne?bn:Tn,tabIndex:-1,type:`checkbox`,"aria-hidden":!0,onChange(e){if(e.nativeEvent.defaultPrevented)return;if(m){e.preventDefault();return}let t=e.currentTarget.checked,n=kn(wn,e.nativeEvent);if(f?.(t,n),!n.isCanceled&&(se?.(t,n),!n.isCanceled&&(ge(t),B!==void 0&&R!==void 0&&!p&&!ee))){let e=t?[...R.value,B]:R.value.filter(e=>e!==B);R.setValue(e,n)}},onClick(e){e.stopPropagation()},onFocus(){ue.current?.focus()}},v===void 0?zr:{value:(R?he&&v:v)||``},L,e=>me.getValidationProps(te,e));q.useEffect(()=>{if(!z||B===void 0)return;let e=z.disabledStatesRef.current;return e.set(B,te),()=>{e.delete(B)}},[z,te,B]);let Ee=q.useMemo(()=>({...k,checked:_e,disabled:te,readOnly:m,required:g,indeterminate:ve}),[k,_e,te,m,g,ve]),De=dI(Ee),Oe=Hr(`span`,e,{state:Ee,ref:[pe,ue,t],props:[{id:y?V??void 0:re,role:`checkbox`,"aria-checked":ve?`mixed`:_e,"aria-readonly":m||void 0,"aria-required":g||void 0,"aria-labelledby":we,[gI]:p?``:void 0,onFocus(){te||D(!0)},onBlur(){let e=ye.current;e&&(O(!0),D(!1),A===`onBlur`&&me.commit(R?le:e.checked))},onKeyDown(e){if(e.key!==`Enter`||(e.preventBaseUIHandler(),e.defaultPrevented))return;let t=ye.current?.form??null,n=e.currentTarget,r=e.nativeEvent,i=e.preventDefault,a=r.preventDefault,o=!1;e.preventDefault=()=>{o=!0,i.call(e)},r.preventDefault=()=>{o=!0,a.call(r)},a.call(r),Cn(n).queueMicrotask(()=>{e.preventDefault=i,r.preventDefault=a,o||uI(t)?.click()})},onClick(e){if(m||te)return;e.preventDefault();let t=ye.current;t&&Mo(t,e)}},x,ce,U,L,e=>me.getValidationProps(te,e)],stateAttributesMapping:De});return(0,Y.jsxs)(mI.Provider,{value:Ee,children:[Oe,!he&&!R&&ne&&!p&&_!==void 0&&(0,Y.jsx)(`input`,{type:`hidden`,form:s,name:ne,value:_,disabled:te}),(0,Y.jsx)(`input`,{...Te,suppressHydrationWarning:!0})]})}),vI=q.forwardRef(function(e,t){let{render:n,className:r,style:i,keepMounted:a=!1,...o}=e,s=hI(),c=s.checked||s.indeterminate,{mounted:l,transitionStatus:u,setMounted:d}=Sn(c),f=q.useRef(null),p={...s,transitionStatus:u};On({open:c,ref:f,onComplete(){c||d(!1)}});let m={...dI(s),...En},h=a||l,g=Hr(`span`,e,{ref:[t,f],state:p,stateAttributesMapping:m,props:o});return h?g:null});function yI(e){let t=(0,J.c)(9),n,r;t[0]===e?(n=t[1],r=t[2]):({className:n,...r}=e,t[0]=e,t[1]=n,t[2]=r);let i;t[3]===n?i=t[4]:(i=G(`relative inline-flex size-4.5 shrink-0 items-center justify-center rounded-sm border border-input bg-background not-dark:bg-clip-padding shadow-xs/5 outline-none ring-ring transition-shadow before:pointer-events-none before:absolute before:inset-0 before:rounded-[max(0px,calc(var(--radius-sm)-1px))] not-data-disabled:not-data-checked:not-aria-invalid:before:shadow-[0_1px_--theme(--color-black/4%)] focus-visible:ring-2 focus-visible:ring-offset-1 focus-visible:ring-offset-background aria-invalid:border-destructive/36 focus-visible:aria-invalid:border-destructive/64 focus-visible:aria-invalid:ring-destructive/48 data-disabled:opacity-64 sm:size-4 dark:not-data-checked:bg-input/32 dark:aria-invalid:ring-destructive/24 dark:not-data-disabled:not-data-checked:not-aria-invalid:before:shadow-[0_-1px_--theme(--color-white/6%)] [[data-disabled],[data-checked],[aria-invalid]]:shadow-none`,n),t[3]=n,t[4]=i);let a;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,Y.jsx)(vI,{className:`-inset-px absolute flex items-center justify-center rounded-sm text-primary-foreground data-unchecked:hidden data-checked:bg-primary data-indeterminate:text-foreground`,"data-slot":`checkbox-indicator`,render:bI}),t[5]=a):a=t[5];let o;return t[6]!==r||t[7]!==i?(o=(0,Y.jsx)(_I,{className:i,"data-slot":`checkbox`,...r,children:a}),t[6]=r,t[7]=i,t[8]=o):o=t[8],o}function bI(e,t){return(0,Y.jsx)(`span`,{...e,children:t.indeterminate?(0,Y.jsx)(`svg`,{className:`size-3.5 sm:size-3`,fill:`none`,height:`24`,stroke:`currentColor`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:`3`,viewBox:`0 0 24 24`,width:`24`,xmlns:`http://www.w3.org/2000/svg`,children:(0,Y.jsx)(`path`,{d:`M5.252 12h13.496`})}):(0,Y.jsx)(`svg`,{className:`size-3.5 sm:size-3`,fill:`none`,height:`24`,stroke:`currentColor`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:`3`,viewBox:`0 0 24 24`,width:`24`,xmlns:`http://www.w3.org/2000/svg`,children:(0,Y.jsx)(`path`,{d:`M5.252 12.7 10.2 18.63 18.748 5.37`})})})}var xI=250,SI=[{value:`github`,label:`GitHub`,description:`github.com`,host:`github.com`,pathPlaceholder:`owner/repo`,Icon:Es},{value:`gitlab`,label:`GitLab`,description:`gitlab.com`,host:`gitlab.com`,pathPlaceholder:`group/project`,Icon:Cs},{value:`forgejo`,label:`Forgejo`,description:`Forgejo instance`,host:`configured Forgejo host`,pathPlaceholder:`owner/repo`,Icon:xs},{value:`bitbucket`,label:`Bitbucket`,description:`bitbucket.org`,host:`bitbucket.org`,pathPlaceholder:`workspace/repository`,Icon:bs},{value:`azure-devops`,label:`Azure DevOps`,description:`dev.azure.com`,host:`dev.azure.com`,pathPlaceholder:`project/repository`,Icon:ws}];function CI(e){return SI.find(t=>t.value===e)??SI[0]}function wI(e){return SI.some(t=>t.value===e)}function TI(e){let t=e.sourceControlProviders.find(t=>t.kind===e.provider);return t?t.status===`available`?t.auth.status===`unauthenticated`?{ready:!1,hint:v(t.auth.detail)??`${t.label} is not authenticated. Open Settings -> Source Control for setup guidance.`}:{ready:!0,hint:null}:{ready:!1,hint:t.installHint}:{ready:!1,hint:`Provider status unavailable. Open Settings -> Source Control and rescan.`}}function EI(e){if(e===null)return;let t=Math.max(0,Math.floor((Date.now()-e)/1e3));return t<60?`Running for ${t}s`:`Running for ${Math.floor(t/60)}m ${t%60}s`}function DI(e){return e.lastOutputLine?e.lastOutputLine:EI(e.hookStartedAtMs??e.phaseStartedAtMs)}function OI({item:e,gitStatus:t,isBusy:n,hasPrimaryRemote:r}){if(!e.disabled)return null;if(n)return`Git action in progress.`;if(!t)return`Git status is unavailable.`;let i=t.refName!==null,a=t.hasWorkingTreeChanges,o=t.pr?.state===`open`,s=t.aheadCount>0,c=t.behindCount>0,l=_r(t.sourceControlProvider).terminology;return e.id===`commit`?a?`Commit is currently unavailable.`:`Worktree is clean. Make changes before committing.`:e.id===`push`?i?a?`Commit or stash local changes before pushing.`:c?`Branch is behind upstream. Pull/rebase before pushing.`:!t.hasUpstream&&!r?`Add an "origin" remote before pushing.`:s?`Push is currently unavailable.`:`No local commits to push.`:`Detached HEAD: checkout a refName before pushing.`:o?`View ${l.singular} is currently unavailable.`:i?a?`Commit local changes before creating a ${l.singular}.`:!t.hasUpstream&&!r?`Add an "origin" remote before creating a ${l.singular}.`:s?c?`Branch is behind upstream. Pull/rebase before creating a ${l.singular}.`:`Create ${l.singular} is currently unavailable.`:`No local commits to include in a ${l.singular}.`:`Detached HEAD: checkout a refName before creating a ${l.singular}.`}var kI=`Commit changes`,AI=`Review and confirm your commit. Leave the message blank to auto-generate one.`;function jI(e){let t=(0,J.c)(4),{icon:n,SourceControlIcon:r}=e;if(n===`commit`){let e;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(pi,{}),t[0]=e):e=t[0],e}if(n===`push`){let e;return t[1]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(_l,{}),t[1]=e):e=t[1],e}let i;return t[2]===r?i=t[3]:(i=(0,Y.jsx)(r,{}),t[2]=r,t[3]=i),i}function MI(e){let t=(0,J.c)(10),{quickAction:n,SourceControlIcon:r}=e;if(n.kind===`open_pr`){let e;return t[0]===r?e=t[1]:(e=(0,Y.jsx)(r,{className:`size-3.5`}),t[0]=r,t[1]=e),e}if(n.kind===`open_publish`){let e;return t[2]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(_l,{className:`size-3.5`}),t[2]=e):e=t[2],e}if(n.kind===`run_pull`){let e;return t[3]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(Oi,{className:`size-3.5`}),t[3]=e):e=t[3],e}if(n.kind===`run_action`){if(n.action===`commit`){let e;return t[4]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(pi,{className:`size-3.5`}),t[4]=e):e=t[4],e}if(n.action===`push`||n.action===`commit_push`){let e;return t[5]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(_l,{className:`size-3.5`}),t[5]=e):e=t[5],e}let e;return t[6]===r?e=t[7]:(e=(0,Y.jsx)(r,{className:`size-3.5`}),t[6]=r,t[7]=e),e}if(n.label===`Commit`){let e;return t[8]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(pi,{className:`size-3.5`}),t[8]=e):e=t[8],e}let i;return t[9]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,Y.jsx)(Oi,{className:`size-3.5`}),t[9]=i):i=t[9],i}function NI(e){let t=(0,J.c)(7),{quickAction:n}=e;if(n.kind===`open_pr`){let e;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(Ui,{className:`size-3.5`}),t[0]=e):e=t[0],e}if(n.kind===`open_publish`){let e;return t[1]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(_l,{className:`size-3.5`}),t[1]=e):e=t[1],e}if(n.kind===`run_pull`){let e;return t[2]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(Wr,{className:`size-3.5`}),t[2]=e):e=t[2],e}if(n.kind===`run_action`){if(n.action===`commit`){let e;return t[3]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(pi,{className:`size-3.5`}),t[3]=e):e=t[3],e}if(n.action===`create_pr`){let e;return t[4]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(Yi,{className:`size-3.5`}),t[4]=e):e=t[4],e}let e;return t[5]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(_l,{className:`size-3.5`}),t[5]=e):e=t[5],e}let r;return t[6]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,Y.jsx)(pi,{className:`size-3.5`}),t[6]=r):r=t[6],r}function PI(e){let t=(0,J.c)(168),n=ue(),[r,i]=(0,q.useState)(`github`),[a,o]=(0,q.useState)(``),[s,c]=(0,q.useState)(`private`),[l,u]=(0,q.useState)(`origin`),[d,f]=(0,q.useState)(`ssh`),[p,m]=(0,q.useState)(0),[h,g]=(0,q.useState)(!1),[_,y]=(0,q.useState)(null),[b,x]=(0,q.useState)(null),[S,C]=(0,q.useState)(!1),w;t[0]!==e.environmentId||t[1]!==e.gitCwd?(w=t=>{if(!e.gitCwd||!e.environmentId)throw Error(`Repository publishing is unavailable.`);return Be(e.environmentId).sourceControl.publishRepository({cwd:e.gitCwd,...t})},t[0]=e.environmentId,t[1]=e.gitCwd,t[2]=w):w=t[2];let T;t[3]===e.gitCwd?T=t[4]:(T=e.gitCwd?[je(e.gitCwd)]:[],t[3]=e.gitCwd,t[4]=T);let E;t[5]!==e.environmentId||t[6]!==e.gitCwd?(E=Ou(`publish-repository`,e.environmentId,e.gitCwd),t[5]=e.environmentId,t[6]=e.gitCwd,t[7]=E):E=t[7];let D;t[8]!==w||t[9]!==T||t[10]!==E?(D={mutationFn:w,invalidates:T,trackingKey:E},t[8]=w,t[9]=T,t[10]=E,t[11]=D):D=t[11];let O=Eu(D),k;if(t[12]!==n.data?.sourceControlProviders){k={github:null,gitlab:null,forgejo:null,bitbucket:null,"azure-devops":null};for(let e of n.data?.sourceControlProviders??[])wI(e.kind)&&(k[e.kind]=v(e.auth.account));t[12]=n.data?.sourceControlProviders,t[13]=k}else k=t[13];let A=k,j;t[14]===n.data?.sourceControlProviders?j=t[15]:(j=n.data?.sourceControlProviders??[],t[14]=n.data?.sourceControlProviders,t[15]=j);let M=j,N;t[16]===M?N=t[17]:(N=Object.fromEntries(SI.map(e=>[e.value,TI({provider:e.value,sourceControlProviders:M})])),t[16]=M,t[17]=N);let P=N,F;t[18]===P?F=t[19]:(F=SI.some(e=>P[e.value].ready),t[18]=P,t[19]=F);let I=F,L;t[20]===P?L=t[21]:(L=SI.toSorted((e,t)=>{let n=P[e.value].ready;return n===P[t.value].ready?e.label.localeCompare(t.label):n?-1:1}),t[20]=P,t[21]=L);let R=L,z=P[r],ee=A[r]?`${A[r]}/`:``,te;t[22]===r?te=t[23]:(te=CI(r),t[22]=r,t[23]=te);let B=te,re=B.host,ie=B.pathPlaceholder,V=B.label,ae;t[24]===Symbol.for(`react.memo_cache_sentinel`)?(ae=[`Provider`,`Repository`,`Summary`],t[24]=ae):ae=t[24];let oe=ae,H=b?.repository.nameWithOwner??null,se;t[25]!==V||t[26]!==H?(se=[V,H,null],t[25]=V,t[26]=H,t[27]=se):se=t[27];let ce=se,le,de;t[28]!==S||t[29]!==e.open||t[30]!==ee?(le=()=>{!e.open||S||o(ee)},de=[S,e.open,ee],t[28]=S,t[29]=e.open,t[30]=ee,t[31]=le,t[32]=de):(le=t[31],de=t[32]),(0,q.useEffect)(le,de);let fe;bb0:{if(!z.ready){fe=!1;break bb0}if(O.isPending){fe=!1;break bb0}let e,n;if(t[33]!==a){let r=a.trim().split(`/`);e=r[0]?.trim()??``,n=r.slice(1).join(`/`).trim(),t[33]=a,t[34]=e,t[35]=n}else e=t[34],n=t[35];let r=n;fe=e.length>0&&r.length>0}let U=fe,me,he;t[36]!==e.open||t[37]!==r||t[38]!==P?(me=()=>{if(!e.open||P[r].ready)return;let t=SI.find(e=>P[e.value].ready);t&&i(t.value)},he=[e.open,r,P],t[36]=e.open,t[37]=r,t[38]=P,t[39]=me,t[40]=he):(me=t[39],he=t[40]),(0,q.useEffect)(me,he);let ge;t[41]!==U||t[42]!==e.environmentId||t[43]!==e.gitCwd||t[44]!==d||t[45]!==r||t[46]!==l||t[47]!==a||t[48]!==O||t[49]!==s?(ge=()=>{U&&(y(null),O.mutateAsync({provider:r,repository:a.trim(),visibility:s,remoteName:l.trim()||`origin`,protocol:d}).then(t=>{(0,fT.flushSync)(()=>{x(t),m(2)}),ne({environmentId:e.environmentId,cwd:e.gitCwd}).catch(zI)}).catch(e=>{y(e instanceof Error?e.message:`An error occurred.`)}))},t[41]=U,t[42]=e.environmentId,t[43]=e.gitCwd,t[44]=d,t[45]=r,t[46]=l,t[47]=a,t[48]=O,t[49]=s,t[50]=ge):ge=t[50];let _e=ge,ve;t[51]===Symbol.for(`react.memo_cache_sentinel`)?(ve=()=>{u(`origin`),o(``),C(!1),m(0),g(!1),y(null),x(null)},t[51]=ve):ve=t[51];let ye=ve,be;t[52]===e?be=t[53]:(be=t=>{e.onOpenChange(t),t||ye()},t[52]=e,t[53]=be);let xe=be,Se=Cr(RI),Ce;t[54]!==xe||t[55]!==Se?(Ce=()=>{xe(!1),Se(`source-control`)},t[54]=xe,t[55]=Se,t[56]=Ce):Ce=t[56];let we=Ce,Te=e.open,Ee,De;t[57]===Symbol.for(`react.memo_cache_sentinel`)?(Ee=(0,Y.jsx)(Ks,{children:`Publish repository`}),De=(0,Y.jsx)(Ys,{children:`Pick where to host it, then point us at a repo to push to.`}),t[57]=Ee,t[58]=De):(Ee=t[57],De=t[58]);let Oe;t[59]!==p||t[60]!==ce?(Oe=(0,Y.jsxs)(Gs,{className:`border-b border-border/70 bg-background`,children:[Ee,De,(0,Y.jsx)(`div`,{className:`grid grid-cols-3 gap-2`,children:oe.map((e,t)=>{let n=t<p,r=p!==2&&t<oe.length-1&&t<=p;return(0,Y.jsxs)(`button`,{type:`button`,onClick:r?()=>m(t):void 0,disabled:!r,className:G(`grid min-w-0 grid-cols-[1rem_minmax(0,1fr)] gap-x-2 rounded-lg border px-3 py-2 text-left`,t===p?`border-primary bg-primary/10 ring-1 ring-primary/25`:n?`border-border bg-background`:`border-border bg-muted/40`,!r&&`cursor-default`),children:[(0,Y.jsx)(`span`,{"aria-hidden":!0,className:G(`row-span-2 mt-0.5 grid size-4 place-items-center rounded-full border`,n?`border-primary bg-primary text-primary-foreground`:t===p?`border-primary bg-background`:`border-muted-foreground/35 bg-background`),children:n?(0,Y.jsx)(Jr,{className:`size-3`}):null}),(0,Y.jsxs)(`span`,{className:`text-[10px] font-medium uppercase text-muted-foreground`,children:[`Step `,t+1]}),(0,Y.jsxs)(`span`,{className:`truncate text-xs font-semibold text-foreground`,children:[e,n&&ce[t]?`: ${ce[t]}`:``]})]},e)})})]}),t[59]=p,t[60]=ce,t[61]=Oe):Oe=t[61];let ke=p!==0&&`hidden`,Ae;t[62]===ke?Ae=t[63]:(Ae=G(`space-y-2`,ke),t[62]=ke,t[63]=Ae);let Me;t[64]===Symbol.for(`react.memo_cache_sentinel`)?(Me=(0,Y.jsx)(`span`,{id:`publish-provider-cards-label`,className:`text-xs font-medium text-foreground`,children:`Provider`}),t[64]=Me):Me=t[64];let Ne;t[65]===Symbol.for(`react.memo_cache_sentinel`)?(Ne=e=>i(e),t[65]=Ne):Ne=t[65];let Pe;if(t[66]!==we||t[67]!==r||t[68]!==P||t[69]!==R){let e;t[71]!==we||t[72]!==r||t[73]!==P?(e=e=>{let t=P[e.value],n=r===e.value&&t.ready;return t.ready?(0,Y.jsxs)(us,{value:e.value,className:G(`relative flex cursor-pointer items-center gap-3 rounded-lg border px-3 py-3 text-left outline-none transition-[background-color,border-color,box-shadow]`,`focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-1 focus-visible:ring-offset-background`,n?`border-primary bg-background shadow-sm ring-2 ring-primary/35`:`border-border bg-background hover:border-foreground/20 hover:bg-muted/50`),children:[(0,Y.jsx)(e.Icon,{className:`size-5 shrink-0`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-sm font-medium text-foreground`,children:e.label})]},e.value):(0,Y.jsxs)(`div`,{className:`relative flex cursor-not-allowed items-center gap-3 rounded-lg border border-border bg-background px-3 py-3 text-left opacity-55`,children:[(0,Y.jsx)(e.Icon,{className:`size-5 shrink-0 text-muted-foreground`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-sm font-medium text-foreground`,children:e.label}),(0,Y.jsxs)(Io,{children:[(0,Y.jsx)(Po,{render:(0,Y.jsx)(K,{variant:`outline`,size:`xs`,className:`h-5 rounded-sm px-1.5 text-[10px] text-warning-foreground`,onClick:e=>{e.preventDefault(),e.stopPropagation(),we()},children:`Setup Required`})}),(0,Y.jsx)(Fo,{side:`top`,align:`end`,className:`max-w-72`,children:t.hint??`Open Settings -> Source Control to configure this provider.`})]})]},e.value)},t[71]=we,t[72]=r,t[73]=P,t[74]=e):e=t[74],Pe=R.map(e),t[66]=we,t[67]=r,t[68]=P,t[69]=R,t[70]=Pe}else Pe=t[70];let Fe;t[75]!==r||t[76]!==Pe?(Fe=(0,Y.jsx)(ms,{value:r,onValueChange:Ne,"aria-labelledby":`publish-provider-cards-label`,className:`grid grid-cols-2 gap-2.5`,children:Pe}),t[75]=r,t[76]=Pe,t[77]=Fe):Fe=t[77];let Ie;t[78]!==Ae||t[79]!==Fe?(Ie=(0,Y.jsxs)(`div`,{className:Ae,children:[Me,Fe]}),t[78]=Ae,t[79]=Fe,t[80]=Ie):Ie=t[80];let Le=p!==1&&`hidden`,Re;t[81]===Le?Re=t[82]:(Re=G(`space-y-5`,Le),t[81]=Le,t[82]=Re);let ze;t[83]===Symbol.for(`react.memo_cache_sentinel`)?(ze=(0,Y.jsx)(`label`,{htmlFor:`publish-repository-path`,className:`text-xs font-medium text-foreground`,children:`Repository`}),t[83]=ze):ze=t[83];let Ve;t[84]===B.Icon?Ve=t[85]:(Ve=(0,Y.jsx)(B.Icon,{className:`size-3.5`}),t[84]=B.Icon,t[85]=Ve);let He;t[86]!==re||t[87]!==Ve?(He=(0,Y.jsxs)(`span`,{className:`flex shrink-0 items-center gap-1.5 border-r border-input bg-muted/50 px-2.5 font-mono text-xs text-muted-foreground`,children:[Ve,re,`/`]}),t[86]=re,t[87]=Ve,t[88]=He):He=t[88];let Ue;t[89]===Symbol.for(`react.memo_cache_sentinel`)?(Ue=e=>{o(e.target.value),C(!0)},t[89]=Ue):Ue=t[89];let We;t[90]===_e?We=t[91]:(We=e=>{e.key===`Enter`&&Ao(e)&&(e.preventDefault(),_e())},t[90]=_e,t[91]=We);let Ge;t[92]!==ie||t[93]!==a||t[94]!==O.isPending||t[95]!==We?(Ge=(0,Y.jsx)(`input`,{id:`publish-repository-path`,name:`publish-repository-path`,value:a,onChange:Ue,onKeyDown:We,placeholder:ie,disabled:O.isPending,className:`w-full bg-transparent px-3 py-2 font-mono text-sm placeholder:text-muted-foreground/60 focus:outline-none`}),t[92]=ie,t[93]=a,t[94]=O.isPending,t[95]=We,t[96]=Ge):Ge=t[96];let Ke;t[97]!==He||t[98]!==Ge?(Ke=(0,Y.jsxs)(`div`,{className:`space-y-2`,children:[ze,(0,Y.jsxs)(`div`,{className:`flex items-stretch overflow-hidden rounded-md border border-input bg-background focus-within:outline-2 focus-within:-outline-offset-1 focus-within:outline-ring`,children:[He,Ge]})]}),t[97]=He,t[98]=Ge,t[99]=Ke):Ke=t[99];let qe;t[100]===Symbol.for(`react.memo_cache_sentinel`)?(qe=(0,Y.jsx)(`span`,{id:`publish-visibility-cards-label`,className:`text-xs font-medium text-foreground`,children:`Visibility`}),t[100]=qe):qe=t[100];let Je;t[101]===Symbol.for(`react.memo_cache_sentinel`)?(Je=e=>c(e),t[101]=Je):Je=t[101];let Ye=O.isPending,Xe;t[102]===Symbol.for(`react.memo_cache_sentinel`)?(Xe={value:`private`,label:`Private`,description:`Only invited people`,Icon:va},t[102]=Xe):Xe=t[102];let Ze;t[103]===Symbol.for(`react.memo_cache_sentinel`)?(Ze=[Xe,{value:`public`,label:`Public`,description:`Anyone on the web`,Icon:fa}],t[103]=Ze):Ze=t[103];let Qe;t[104]===s?Qe=t[105]:(Qe=Ze.map(e=>{let t=s===e.value;return(0,Y.jsxs)(us,{value:e.value,className:G(`relative flex cursor-pointer items-center gap-3 rounded-lg border px-3 py-2.5 text-left outline-none transition-[background-color,border-color,box-shadow]`,`focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-1 focus-visible:ring-offset-background`,t?`border-primary bg-background shadow-sm ring-2 ring-primary/35`:`border-border bg-background hover:border-foreground/20 hover:bg-muted/50`),children:[(0,Y.jsx)(e.Icon,{className:`size-4 shrink-0 text-muted-foreground`,"aria-hidden":!0}),(0,Y.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[(0,Y.jsx)(`span`,{className:`block text-sm font-medium text-foreground`,children:e.label}),(0,Y.jsx)(`span`,{className:`block text-xs text-muted-foreground`,children:e.description})]})]},e.value)}),t[104]=s,t[105]=Qe);let $e;t[106]!==O.isPending||t[107]!==s||t[108]!==Qe?($e=(0,Y.jsxs)(`div`,{className:`space-y-2`,children:[qe,(0,Y.jsx)(ms,{value:s,onValueChange:Je,"aria-labelledby":`publish-visibility-cards-label`,disabled:Ye,className:`grid grid-cols-2 gap-2.5`,children:Qe})]}),t[106]=O.isPending,t[107]=s,t[108]=Qe,t[109]=$e):$e=t[109];let et;t[110]===Symbol.for(`react.memo_cache_sentinel`)?(et=()=>g(LI),t[110]=et):et=t[110];let tt=h?``:`-rotate-90`,nt;t[111]===tt?nt=t[112]:(nt=G(`size-3.5 transition-transform`,tt),t[111]=tt,t[112]=nt);let rt;t[113]===nt?rt=t[114]:(rt=(0,Y.jsx)(Xr,{className:nt}),t[113]=nt,t[114]=rt);let it;t[115]!==h||t[116]!==rt?(it=(0,Y.jsxs)(`button`,{type:`button`,onClick:et,"aria-expanded":h,className:`flex items-center gap-1 text-xs font-medium text-muted-foreground transition-colors hover:text-foreground`,children:[rt,`Advanced`]}),t[115]=h,t[116]=rt,t[117]=it):it=t[117];let at;t[118]!==h||t[119]!==d||t[120]!==l||t[121]!==O.isPending?(at=h?(0,Y.jsxs)(`div`,{className:`mt-3 grid gap-3 sm:grid-cols-2`,children:[(0,Y.jsxs)(`label`,{className:`space-y-1.5`,htmlFor:`publish-remote-name`,children:[(0,Y.jsx)(`span`,{className:`text-xs font-medium text-foreground`,children:`Remote`}),(0,Y.jsx)(vs,{id:`publish-remote-name`,value:l,onChange:e=>u(e.target.value),placeholder:`origin`,disabled:O.isPending})]}),(0,Y.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Y.jsx)(`span`,{id:`publish-protocol-label`,className:`text-xs font-medium text-foreground`,children:`Protocol`}),(0,Y.jsx)(ms,{value:d,onValueChange:e=>f(e),"aria-labelledby":`publish-protocol-label`,disabled:O.isPending,className:`grid grid-cols-2 gap-2`,children:[`ssh`,`https`].map(e=>{let t=d===e;return(0,Y.jsx)(us,{value:e,className:G(`rounded-md border px-3 py-1.5 text-center text-sm font-medium outline-none transition`,`focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-1 focus-visible:ring-offset-background`,t?`border-primary bg-background ring-2 ring-primary/35 text-foreground`:`border-border bg-background text-muted-foreground hover:border-foreground/20 hover:text-foreground`),children:e===`ssh`?`SSH`:`HTTPS`},e)})})]})]}):null,t[118]=h,t[119]=d,t[120]=l,t[121]=O.isPending,t[122]=at):at=t[122];let ot;t[123]!==it||t[124]!==at?(ot=(0,Y.jsxs)(`div`,{children:[it,at]}),t[123]=it,t[124]=at,t[125]=ot):ot=t[125];let st;t[126]!==V||t[127]!==O.isPending?(st=O.isPending?(0,Y.jsxs)(`div`,{role:`status`,"aria-live":`polite`,className:`flex items-center gap-2 rounded-md border border-input bg-muted/40 px-3 py-2 text-xs text-muted-foreground`,children:[(0,Y.jsx)(cc,{className:`size-3.5`,"aria-hidden":!0}),`Publishing repository to `,V,`...`]}):null,t[126]=V,t[127]=O.isPending,t[128]=st):st=t[128];let ct;t[129]!==_||t[130]!==O.isPending?(ct=_&&!O.isPending?(0,Y.jsxs)(`div`,{role:`alert`,className:`rounded-md border border-destructive/40 bg-destructive/10 px-3 py-2 text-xs text-destructive`,children:[(0,Y.jsx)(`p`,{className:`font-medium`,children:`Publish failed`}),(0,Y.jsx)(`p`,{className:`mt-0.5 text-destructive/90`,children:_})]}):null,t[129]=_,t[130]=O.isPending,t[131]=ct):ct=t[131];let lt;t[132]!==Re||t[133]!==Ke||t[134]!==$e||t[135]!==ot||t[136]!==st||t[137]!==ct?(lt=(0,Y.jsxs)(`div`,{className:Re,children:[Ke,$e,ot,st,ct]}),t[132]=Re,t[133]=Ke,t[134]=$e,t[135]=ot,t[136]=st,t[137]=ct,t[138]=lt):lt=t[138];let ut=p!==2&&`hidden`,dt;t[139]===ut?dt=t[140]:(dt=G(`space-y-4`,ut),t[139]=ut,t[140]=dt);let ft;t[141]!==B.Icon||t[142]!==V||t[143]!==b?(ft=b?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`div`,{className:`flex flex-col items-center gap-2 py-1 text-center`,children:[(0,Y.jsx)(`span`,{className:`grid size-8 place-items-center rounded-full bg-success/15 text-success`,children:(0,Y.jsx)(Jr,{className:`size-4`,"aria-hidden":!0})}),(0,Y.jsx)(`h3`,{className:`text-sm font-semibold text-foreground`,children:b.status===`pushed`?`Repository published`:`Repository created`}),(0,Y.jsx)(`p`,{className:`max-w-xs text-pretty text-xs text-muted-foreground`,children:b.status===`pushed`?`${b.branch} is now live on ${V}.`:`Remote "${b.remoteName}" is set up. Make a commit and push it to share your code.`})]}),(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 rounded-lg border border-input bg-muted/40 px-3 py-2`,children:[(0,Y.jsx)(B.Icon,{className:`size-3.5 shrink-0 text-muted-foreground`}),(0,Y.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-mono text-xs text-foreground`,children:b.repository.nameWithOwner})]}),(0,Y.jsxs)(K,{variant:`outline`,size:`sm`,className:`w-full`,onClick:()=>{let e=pe();e&&e.shell.openExternal(b.repository.url)},children:[(0,Y.jsx)(Mi,{className:`size-3.5`,"aria-hidden":!0}),`Open on `,V]})]}):(0,Y.jsx)(`div`,{className:`rounded-md border border-input bg-background px-3 py-2 text-xs text-muted-foreground`,children:`Publish result unavailable.`}),t[141]=B.Icon,t[142]=V,t[143]=b,t[144]=ft):ft=t[144];let pt;t[145]!==dt||t[146]!==ft?(pt=(0,Y.jsx)(`div`,{className:dt,children:ft}),t[145]=dt,t[146]=ft,t[147]=pt):pt=t[147];let mt;t[148]!==Ie||t[149]!==lt||t[150]!==pt?(mt=(0,Y.jsx)(Js,{className:`space-y-5 border-b border-border/70 bg-muted/20 px-6 py-5`,children:(0,Y.jsxs)(ol,{children:[Ie,lt,pt]})}),t[148]=Ie,t[149]=lt,t[150]=pt,t[151]=mt):mt=t[151];let ht;t[152]!==U||t[153]!==xe||t[154]!==I||t[155]!==O.isPending||t[156]!==p||t[157]!==z.ready||t[158]!==_e?(ht=(0,Y.jsx)(qs,{children:p===2?(0,Y.jsx)(K,{size:`sm`,onClick:()=>xe(!1),children:`Done`}):(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(K,{variant:`outline`,size:`sm`,disabled:O.isPending,onClick:()=>{if(p===0){xe(!1);return}m(II)},children:p===0?`Cancel`:`Back`}),p<1?(0,Y.jsx)(K,{size:`sm`,disabled:!I||!z.ready,onClick:()=>m(FI),children:`Next`}):(0,Y.jsx)(K,{size:`sm`,disabled:!U,onClick:_e,children:O.isPending?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(cc,{className:`size-3.5`,"aria-hidden":!0}),`Publishing...`]}):`Publish`})]})}),t[152]=U,t[153]=xe,t[154]=I,t[155]=O.isPending,t[156]=p,t[157]=z.ready,t[158]=_e,t[159]=ht):ht=t[159];let gt;t[160]!==Oe||t[161]!==mt||t[162]!==ht?(gt=(0,Y.jsx)(Xs,{className:`max-w-xl overflow-hidden`,children:(0,Y.jsxs)(`div`,{className:`flex min-h-0 flex-col overflow-hidden border-foreground/10 bg-background shadow-2xl`,children:[Oe,mt,ht]})}),t[160]=Oe,t[161]=mt,t[162]=ht,t[163]=gt):gt=t[163];let _t;return t[164]!==xe||t[165]!==e.open||t[166]!==gt?(_t=(0,Y.jsx)(Zs,{open:Te,onOpenChange:xe,children:gt}),t[164]=xe,t[165]=e.open,t[166]=gt,t[167]=_t):_t=t[167],_t}function FI(e){return Math.min(1,e+1)}function II(e){return Math.max(0,e-1)}function LI(e){return!e}function RI(e){return e.openSettings}function zI(){}function BI({gitCwd:e,activeThreadRef:t,draftId:n,showLabels:r=!1,block:i=!1,detectedChangeRequest:a=null,onPostPush:o}){let s=t?.environmentId??null,c=(0,q.useMemo)(()=>t?{threadRef:t}:void 0,[t]),l=(0,q.useMemo)(()=>le(t),[t]),u=oe(l),d=qt(e=>n?e.getDraftSession(n):t?e.getDraftThreadByRef(t):null),p=qt(e=>e.setDraftThreadContext),m=oe(e=>e.setThreadBranch),[h,g]=(0,q.useState)(!1),[v,y]=(0,q.useState)(``),[b,x]=(0,q.useState)(new Set),[S,C]=(0,q.useState)(!1),[w,T]=(0,q.useState)(!1),[E,D]=(0,q.useState)(null),O=(0,q.useRef)(null),[k,A]=(0,q.useState)(0),j,M=(0,q.useCallback)(e=>{O.current=e,A(e=>e+1)},[]),N=(0,q.useCallback)(()=>{O.current&&(O.current=null,A(e=>e+1))},[]),P=(0,q.useCallback)(()=>{let e=O.current;e&&ki.update(e.toastId,{type:`loading`,title:e.title,description:DI(e),timeout:0,data:e.toastData})},[]),F=(0,q.useCallback)(e=>{if(t){if(u){if(u.branch===e)return;let n=u.worktreePath,r=Le(t.environmentId);r&&r.orchestration.dispatchCommand({type:`thread.meta.update`,commandId:no(),threadId:t.threadId,branch:e,worktreePath:n}).catch(()=>void 0),m(t,e,n);return}!d||d.branch===e||p(n??t,{branch:e,worktreePath:d.worktreePath})}},[d,u,t,n,p,m]),I=(0,q.useCallback)(e=>{let t=cI(e);t&&F(t.branch)},[F]),{data:L=null,error:R}=ie({environmentId:s,cwd:e}),z=(0,q.useMemo)(()=>_r(L?.sourceControlProvider),[L?.sourceControlProvider]),ee=z.terminology,te=z.Icon,B=L?.isRepo??!0,re=L?.hasPrimaryRemote??!1,V=(0,q.useMemo)(()=>tI(L,a),[a,L]),ae=V?.workingTree.files??[],H=ae.filter(e=>!b.has(e.path)),se=b.size===0,ce=H.length===0,ue=(0,q.useMemo)(()=>e?[je(e)]:[],[e]),de=Ou(`run-stacked-action`,s,e),fe=Ou(`pull`,s,e),U=Ou(`publish-repository`,s,e),me=Eu({mutationFn:()=>{if(!e||!s)throw Error(`Git init is unavailable.`);return Be(s).vcs.init({cwd:e})},invalidates:ue,invalidateOn:`settled`}),he=Eu({mutationFn:({actionId:t,action:n,commitMessage:r,featureBranch:i,filePaths:a,worktreeId:o,onProgress:c})=>{if(!e||!s)throw Error(`Git action is unavailable.`);return Ie(s).client.git.runStackedAction({action:n,actionId:t,cwd:e,...o?{worktreeId:o}:{},...r?{commitMessage:r}:{},...i?{featureBranch:!0}:{},...a&&a.length>0?{filePaths:a}:{}},...c?[{onProgress:c}]:[])},invalidates:ue,trackingKey:de}),ge=Eu({mutationFn:()=>{if(!e||!s)throw Error(`Git pull is unavailable.`);return Be(s).vcs.pull({cwd:e})},invalidates:ue,trackingKey:fe}),_e=Du(de),ve=Du(fe),ye=Du(U),be=_e||ve||ye,xe=!u&&d?.envMode===`worktree`&&d.worktreePath===null;(0,q.useEffect)(()=>{if(be||xe)return;let e=lI({threadBranch:u?.branch??d?.branch??null,gitStatus:V});e&&F(e.branch)},[u?.branch,d?.branch,V,be,xe,F]);let Se=(0,q.useMemo)(()=>V?.isDefaultRef??!1,[V?.isDefaultRef]),Ce=(0,q.useMemo)(()=>iI(V,be,re),[V,re,be]),we=(0,q.useMemo)(()=>aI(V,be,Se,re),[V,re,Se,be]),Te=we.disabled?we.hint??`This action is currently unavailable.`:null,Ee=E?sI({action:E.action,branchName:E.branchName,includesCommit:E.includesCommit,terminology:ee}):null;(0,q.useEffect)(()=>{if(O.current)return br({lifecycle:yr,run:()=>(P(),Promise.resolve()),resolveDelayMs:()=>1e3,runImmediately:!1}).stop},[k,P]),(0,q.useEffect)(()=>{if(e===null)return;let t=null,n=()=>{t!==null&&window.clearTimeout(t),t=window.setTimeout(()=>{t=null,ne({environmentId:s,cwd:e}).catch(()=>void 0)},xI)},r=()=>{document.visibilityState===`visible`&&n()};return window.addEventListener(`focus`,n),document.addEventListener(`visibilitychange`,r),()=>{t!==null&&window.clearTimeout(t),window.removeEventListener(`focus`,n),document.removeEventListener(`visibilitychange`,r)}},[s,e]);let De=(0,q.useCallback)(async()=>{let e=pe();if(!e){ki.add({type:`error`,title:`Link opening is unavailable.`,data:c});return}let t=V?.pr?.state===`open`?V.pr.url:null;if(!t){ki.add({type:`error`,title:`No open pull request found.`,data:c});return}e.shell.openExternal(t).catch(e=>{ki.add(ks({type:`error`,title:`Unable to open pull request link`,description:e instanceof Error?e.message:`An error occurred.`,...c===void 0?{}:{data:c}}))})},[V,c]);j=(0,q.useEffectEvent)(async({action:n,commitMessage:r,onConfirmed:i,skipDefaultBranchPrompt:a=!1,statusOverride:l,featureBranch:d=!1,progressToastId:p,filePaths:m})=>{let h=l??V,g=h?.refName??null,v=!d&&Se,y=(n===`commit`||n===`commit_push`||n===`commit_push_pr`)&&(n===`commit`||!!h?.hasWorkingTreeChanges||d);if(!a&&oI(n,v)&&g){if(n!==`push`&&n!==`create_pr`&&n!==`commit_push`&&n!==`commit_push_pr`)return;D({action:n,branchName:g,includesCommit:y,...r?{commitMessage:r}:{},...i?{onConfirmed:i}:{},...m?{filePaths:m}:{}});return}i?.();let b=rI({action:n,hasCustomCommitMessage:!!r?.trim(),hasWorkingTreeChanges:!!h?.hasWorkingTreeChanges,featureBranch:d,terminology:ee,shouldPushBeforePr:n===`create_pr`&&(!h?.hasUpstream||(h?.aheadCount??0)>0)}),x=c?{...c}:void 0,S=t?f(t):null,C=ro(),w=p??ki.add({type:`loading`,title:b[0]??`Running git action...`,description:`Waiting for Git...`,timeout:0,data:x});M({toastId:w,toastData:x,actionId:C,title:b[0]??`Running git action...`,phaseStartedAtMs:null,hookStartedAtMs:null,hookName:null,lastOutputLine:null,currentPhaseLabel:b[0]??`Running git action...`}),p&&ki.update(p,{type:`loading`,title:b[0]??`Running git action...`,description:`Waiting for Git...`,timeout:0,data:x});let T=t=>{let n=O.current;if(!n||e&&t.cwd!==e||n.actionId!==t.actionId)return;let r=Date.now();switch(t.kind){case`action_started`:n.phaseStartedAtMs=r,n.hookStartedAtMs=null,n.hookName=null,n.lastOutputLine=null;break;case`phase_started`:n.title=t.label,n.currentPhaseLabel=t.label,n.phaseStartedAtMs=r,n.hookStartedAtMs=null,n.hookName=null,n.lastOutputLine=null;break;case`hook_started`:n.title=`Running ${t.hookName}...`,n.hookName=t.hookName,n.hookStartedAtMs=r,n.lastOutputLine=null;break;case`hook_output`:n.lastOutputLine=t.text;break;case`hook_finished`:n.title=n.currentPhaseLabel??`Committing...`,n.hookName=null,n.hookStartedAtMs=null,n.lastOutputLine=null;break;case`action_finished`:return;case`action_failed`:return}P()},E=he.mutateAsync({actionId:C,action:n,worktreeId:u?.worktreeId?_.make(u.worktreeId):null,...r?{commitMessage:r}:{},...d?{featureBranch:d}:{},...m?{filePaths:m}:{},onProgress:T});try{let t=await E;N(),I(t),t.push.status===`pushed`&&s&&e&&o?.({environmentId:s,threadKey:S,cwd:e,action:t.action,commitSha:t.commit.commitSha??null,pullRequestNumber:t.pr.number??null});let n=()=>{ki.close(w)},r=t.toast.cta,i=null;r.kind===`run_action`?i={children:r.label,onClick:()=>{n(),j({action:r.action.kind})}}:r.kind===`open_pr`&&(i={children:r.label,onClick:()=>{let e=pe();e&&(n(),e.shell.openExternal(r.url))}});let a={...x,dismissAfterVisibleMs:1e4};i?ki.update(w,ks({type:`success`,title:t.toast.title,description:t.toast.description,timeout:0,actionProps:i,actionVariant:`outline`,data:a})):ki.update(w,{type:`success`,title:t.toast.title,description:t.toast.description,timeout:0,data:a})}catch(e){N(),ki.update(w,ks({type:`error`,title:`Action failed`,description:e instanceof Error?e.message:`An error occurred.`,...x===void 0?{}:{data:x}}))}});let Oe=()=>{if(!E)return;let{action:e,commitMessage:t,onConfirmed:n,filePaths:r}=E;D(null),j({action:e,...t?{commitMessage:t}:{},...n?{onConfirmed:n}:{},...r?{filePaths:r}:{},skipDefaultBranchPrompt:!0})},ke=()=>{if(!E)return;let{action:e,commitMessage:t,onConfirmed:n,filePaths:r}=E;D(null),j({action:e,...t?{commitMessage:t}:{},...n?{onConfirmed:n}:{},...r?{filePaths:r}:{},featureBranch:!0,skipDefaultBranchPrompt:!0})},Ae=()=>{if(!h)return;let e=v.trim();g(!1),y(``),x(new Set),C(!1),j({action:`commit`,...e?{commitMessage:e}:{},...se?{}:{filePaths:H.map(e=>e.path)},featureBranch:!0,skipDefaultBranchPrompt:!0})},Me=()=>{let e=ge.mutateAsync();ki.promise(e,{loading:{title:`Pulling...`,data:c},success:e=>({title:e.status===`pulled`?`Pulled`:`Already up to date`,description:e.status===`pulled`?`Updated ${e.refName} from ${e.upstreamRef??`upstream`}`:`${e.refName} is already synchronized.`,data:c}),error:e=>({title:`Pull failed`,description:e instanceof Error?e.message:`An error occurred.`,data:c})}),e.catch(()=>void 0)},Ne=()=>{if(we.kind===`open_pr`){De();return}if(we.kind===`open_publish`){T(!0);return}if(we.kind===`run_pull`){Me();return}if(we.kind===`show_hint`){ki.add({type:`info`,title:we.label,description:we.hint,data:c});return}we.action&&j({action:we.action})},Pe=e=>{if(!e.disabled){if(e.kind===`open_pr`){De();return}if(e.dialogAction===`push`){j({action:`push`});return}if(e.dialogAction===`create_pr`){j({action:`create_pr`});return}x(new Set),C(!1),g(!0)}},Fe=()=>{if(!h)return;let e=v.trim();g(!1),y(``),x(new Set),C(!1),j({action:`commit`,...e?{commitMessage:e}:{},...se?{}:{filePaths:H.map(e=>e.path)}})},Re=(0,q.useCallback)(t=>{let n=pe();if(!n||!e){ki.add({type:`error`,title:`Editor opening is unavailable.`,data:c});return}let r=Va(t,e);Oc(n,r).catch(e=>{ki.add(ks({type:`error`,title:`Unable to open file`,description:e instanceof Error?e.message:`An error occurred.`,...c===void 0?{}:{data:c}}))})},[e,c]),ze=B&&V!==null&&!re,Ve=r?`truncate text-[11px] font-medium`:`sr-only @3xl/header-actions:not-sr-only @3xl/header-actions:truncate @3xl/header-actions:text-[11px] @3xl/header-actions:font-medium`,He=G(`h-7 gap-1.5 border-border/50 bg-background/35 px-2 text-foreground/86 shadow-none before:shadow-none`,`dark:bg-background/20 dark:not-disabled:before:shadow-none`,`[:hover,[data-pressed]]:bg-muted/55 dark:[:hover,[data-pressed]]:bg-muted/35`,r?`min-w-0 max-w-45`:`max-w-7 @3xl/header-actions:max-w-45`),Ue=`flex size-4 shrink-0 items-center justify-center rounded-sm bg-muted/55 text-muted-foreground/75`,We=r?`block bg-border/50 dark:before:bg-border/45`:`hidden bg-border/50 dark:before:bg-border/45 @3xl/header-actions:block`,Ge=ae.length,Ke=V?.refName??`branch`,qe=V?.behindCount??0,Je=V?.hasWorkingTreeChanges??!1,Ye=V?.pr?.state===`open`,Xe=V?.hasUpstream??!1,Ze=ee.shortLabel,Qe=V?.refName!=null&&(Xe||re);return e?(0,Y.jsxs)(Y.Fragment,{children:[B?(0,Y.jsxs)(cl,{"aria-label":`Git actions`,className:G(`shrink-0`,i&&`flex w-full`),children:[i?(0,Y.jsxs)(K,{variant:`default`,size:`sm`,className:`h-8 min-w-0 flex-1 justify-center gap-1.5 rounded-e-none px-3 text-[13px]`,disabled:be||we.disabled,title:Te??void 0,onClick:Ne,children:[(0,Y.jsx)(NI,{quickAction:we}),(0,Y.jsx)(`span`,{className:`truncate`,children:we.label})]}):Te?(0,Y.jsxs)(Ec,{children:[(0,Y.jsxs)(Tc,{openOnHover:!0,render:(0,Y.jsx)(K,{"aria-disabled":`true`,className:G(He,`cursor-not-allowed rounded-e-none border-e-0 opacity-64 before:rounded-e-none`),size:`xs`,variant:`outline`}),children:[(0,Y.jsx)(`span`,{className:Ue,children:(0,Y.jsx)(MI,{quickAction:we,SourceControlIcon:te})}),(0,Y.jsx)(`span`,{className:Ve,children:we.label})]}),(0,Y.jsx)(wc,{tooltipStyle:!0,side:`bottom`,align:`start`,children:Te})]}):(0,Y.jsxs)(K,{variant:`outline`,size:`xs`,className:He,disabled:be||we.disabled,onClick:Ne,children:[(0,Y.jsx)(`span`,{className:Ue,children:(0,Y.jsx)(MI,{quickAction:we,SourceControlIcon:te})}),(0,Y.jsx)(`span`,{className:Ve,children:we.label})]}),(0,Y.jsx)(sl,{className:i?`hidden`:We}),(0,Y.jsxs)(nc,{onOpenChange:t=>{t&&ne({environmentId:s,cwd:e}).catch(()=>void 0)},children:[(0,Y.jsx)(ac,{render:(0,Y.jsx)(K,{"aria-label":`Git action options`,className:i?`h-8 w-9 rounded-s-none border-s-primary-foreground/25 px-0`:`h-7 w-7 border-border/50 bg-background/35 text-muted-foreground/65 shadow-none before:shadow-none dark:bg-background/20 dark:not-disabled:before:shadow-none [:hover,[data-pressed]]:bg-muted/55 dark:[:hover,[data-pressed]]:bg-muted/35`,size:i?`sm`:`icon-xs`,variant:i?`default`:`outline`}),disabled:be,children:(0,Y.jsx)(Xr,{"aria-hidden":`true`,className:`size-4`})}),(0,Y.jsx)($s,{align:`end`,className:i?`min-w-[248px]`:`w-full`,children:i?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(Qs,{children:[(0,Y.jsx)(ic,{className:`text-[10.5px] tracking-wider uppercase`,children:`Commit actions`}),(0,Y.jsxs)(oc,{disabled:be||!Je,onClick:()=>void j({action:`commit`}),children:[(0,Y.jsx)(pi,{className:`text-muted-foreground`}),(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-col`,children:[(0,Y.jsx)(`span`,{className:`font-medium`,children:`Commit only`}),(0,Y.jsxs)(`span`,{className:`truncate text-[11.5px] font-normal text-muted-foreground`,children:[Ge,` `,Ge===1?`file`:`files`]})]})]}),(0,Y.jsxs)(oc,{disabled:be||!Je||!Qe,onClick:()=>void j({action:`commit_push`}),children:[(0,Y.jsx)(_l,{className:`text-muted-foreground`}),(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-col`,children:[(0,Y.jsx)(`span`,{className:`font-medium`,children:`Commit & Push`}),(0,Y.jsxs)(`span`,{className:`truncate text-[11.5px] font-normal text-muted-foreground`,children:[`to origin/`,Ke]})]})]}),(0,Y.jsxs)(oc,{disabled:be||!Je||Ye||!Qe,onClick:()=>void j({action:`commit_push_pr`}),children:[(0,Y.jsx)(te,{className:`text-muted-foreground`}),(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-col`,children:[(0,Y.jsxs)(`span`,{className:`font-medium`,children:[`Commit, Push & open `,Ze]}),(0,Y.jsxs)(`span`,{className:`truncate text-[11.5px] font-normal text-muted-foreground`,children:[`from `,Ke]})]})]})]}),(0,Y.jsx)(ec,{}),(0,Y.jsxs)(oc,{disabled:be||!Xe||qe===0,onClick:Me,children:[(0,Y.jsx)(Wr,{className:`text-muted-foreground`}),(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-col`,children:[(0,Y.jsx)(`span`,{className:`font-medium`,children:`Pull`}),(0,Y.jsx)(`span`,{className:`truncate text-[11.5px] font-normal text-muted-foreground`,children:Xe?qe>0?`${qe} behind upstream`:`Up to date`:`No upstream`})]})]})]}):(0,Y.jsxs)(Y.Fragment,{children:[Ce.map(e=>{let t=OI({item:e,gitStatus:V,isBusy:be,hasPrimaryRemote:re});return e.disabled&&t?(0,Y.jsxs)(Ec,{children:[(0,Y.jsx)(Tc,{openOnHover:!0,nativeButton:!1,render:(0,Y.jsx)(`span`,{className:`block w-max cursor-not-allowed`}),children:(0,Y.jsxs)(oc,{className:`w-full`,disabled:!0,children:[(0,Y.jsx)(jI,{icon:e.icon,SourceControlIcon:te}),e.label]})}),(0,Y.jsx)(wc,{tooltipStyle:!0,side:`left`,align:`center`,children:t})]},`${e.id}-${e.label}`):(0,Y.jsxs)(oc,{disabled:e.disabled,onClick:()=>{Pe(e)},children:[(0,Y.jsx)(jI,{icon:e.icon,SourceControlIcon:te}),e.label]},`${e.id}-${e.label}`)}),ze?(0,Y.jsxs)(oc,{disabled:be,onClick:()=>{T(!0)},children:[(0,Y.jsx)(_l,{}),`Publish repository...`]}):null,V?.refName===null&&(0,Y.jsx)(`p`,{className:`px-2 py-1.5 text-xs text-warning`,children:`Detached HEAD: create and checkout a refName to enable push and pull request actions.`}),V&&V.refName!==null&&!V.hasWorkingTreeChanges&&V.behindCount>0&&V.aheadCount===0&&(0,Y.jsx)(`p`,{className:`px-2 py-1.5 text-xs text-warning`,children:`Behind upstream. Pull/rebase first.`}),R&&(0,Y.jsx)(`p`,{className:`px-2 py-1.5 text-xs text-destructive`,children:R.message})]})})]})]}):(0,Y.jsx)(K,{variant:`outline`,size:`xs`,disabled:me.isPending,onClick:()=>me.mutate(),children:me.isPending?`Initializing...`:`Initialize Git`}),(0,Y.jsx)(Zs,{open:h,onOpenChange:e=>{e||(g(!1),y(``),x(new Set),C(!1))},children:(0,Y.jsxs)(Xs,{children:[(0,Y.jsxs)(Gs,{children:[(0,Y.jsx)(Ks,{children:kI}),(0,Y.jsx)(Ys,{children:AI})]}),(0,Y.jsxs)(Js,{className:`space-y-4`,children:[(0,Y.jsxs)(`div`,{className:`space-y-3 rounded-lg border border-input bg-muted/40 p-3 text-xs`,children:[(0,Y.jsxs)(`div`,{className:`grid grid-cols-[auto_1fr] items-center gap-x-2 gap-y-1`,children:[(0,Y.jsx)(`span`,{className:`text-muted-foreground`,children:`Branch`}),(0,Y.jsxs)(`span`,{className:`flex items-center justify-between gap-2`,children:[(0,Y.jsx)(`span`,{className:`font-medium`,children:V?.refName??`(detached HEAD)`}),Se&&(0,Y.jsx)(`span`,{className:`text-right text-warning text-xs`,children:`Warning: default refName`})]})]}),(0,Y.jsxs)(`div`,{className:`space-y-1`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center gap-2`,children:[S&&ae.length>0&&(0,Y.jsx)(yI,{checked:se,indeterminate:!se&&!ce,onCheckedChange:()=>{x(se?new Set(ae.map(e=>e.path)):new Set)}}),(0,Y.jsx)(`span`,{className:`text-muted-foreground`,children:`Files`}),!se&&!S&&(0,Y.jsxs)(`span`,{className:`text-muted-foreground`,children:[`(`,H.length,` of `,ae.length,`)`]})]}),ae.length>0&&(0,Y.jsx)(K,{variant:`ghost`,size:`xs`,onClick:()=>C(e=>!e),children:S?`Done`:`Edit`})]}),!V||ae.length===0?(0,Y.jsx)(`p`,{className:`font-medium`,children:`none`}):(0,Y.jsxs)(`div`,{className:`space-y-2`,children:[(0,Y.jsx)(ys,{className:`h-44 rounded-md border border-input bg-background`,children:(0,Y.jsx)(`div`,{className:`space-y-1 p-1`,children:ae.map(e=>{let t=b.has(e.path);return(0,Y.jsxs)(`div`,{className:`flex w-full items-center gap-2 rounded-md px-2 py-1 font-mono text-xs transition-colors hover:bg-accent/50`,children:[S&&(0,Y.jsx)(yI,{checked:!b.has(e.path),onCheckedChange:()=>{x(t=>{let n=new Set(t);return n.has(e.path)?n.delete(e.path):n.add(e.path),n})}}),(0,Y.jsxs)(`button`,{type:`button`,className:`flex flex-1 items-center justify-between gap-3 text-left truncate`,onClick:()=>Re(e.path),children:[(0,Y.jsx)(`span`,{className:`truncate${t?` text-muted-foreground`:``}`,children:e.path}),(0,Y.jsx)(`span`,{className:`shrink-0`,children:t?(0,Y.jsx)(`span`,{className:`text-muted-foreground`,children:`Excluded`}):(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`span`,{className:`text-success`,children:[`+`,e.insertions]}),(0,Y.jsx)(`span`,{className:`text-muted-foreground`,children:` / `}),(0,Y.jsxs)(`span`,{className:`text-destructive`,children:[`-`,e.deletions]})]})})]})]},e.path)})})}),(0,Y.jsxs)(`div`,{className:`flex justify-end font-mono`,children:[(0,Y.jsxs)(`span`,{className:`text-success`,children:[`+`,H.reduce((e,t)=>e+t.insertions,0)]}),(0,Y.jsx)(`span`,{className:`text-muted-foreground`,children:` / `}),(0,Y.jsxs)(`span`,{className:`text-destructive`,children:[`-`,H.reduce((e,t)=>e+t.deletions,0)]})]})]})]})]}),(0,Y.jsxs)(`div`,{className:`space-y-1`,children:[(0,Y.jsx)(`p`,{className:`text-xs font-medium`,children:`Commit message (optional)`}),(0,Y.jsx)(lc,{value:v,onChange:e=>y(e.target.value),placeholder:`Leave empty to auto-generate`,size:`sm`})]})]}),(0,Y.jsxs)(qs,{children:[(0,Y.jsx)(K,{variant:`outline`,size:`sm`,onClick:()=>{g(!1),y(``),x(new Set),C(!1)},children:`Cancel`}),(0,Y.jsx)(K,{variant:`outline`,size:`sm`,disabled:ce,onClick:Ae,children:`Commit on new refName`}),(0,Y.jsx)(K,{size:`sm`,disabled:ce,onClick:Fe,children:`Commit`})]})]})}),(0,Y.jsx)(PI,{open:w,onOpenChange:T,environmentId:s,gitCwd:e}),(0,Y.jsx)(Zs,{open:E!==null,onOpenChange:e=>{e||D(null)},children:(0,Y.jsxs)(Xs,{className:`max-w-xl`,children:[(0,Y.jsxs)(Gs,{children:[(0,Y.jsx)(Ks,{children:Ee?.title??`Run action on default refName?`}),(0,Y.jsx)(Ys,{children:Ee?.description})]}),(0,Y.jsxs)(qs,{className:`sm:flex-wrap sm:items-center`,children:[(0,Y.jsx)(K,{className:`w-full sm:mr-auto sm:w-auto`,variant:`outline`,size:`sm`,onClick:()=>D(null),children:`Abort`}),(0,Y.jsx)(K,{className:`min-h-8 w-full max-w-full whitespace-normal py-1.5 leading-snug sm:min-h-7 sm:w-auto`,variant:`outline`,size:`sm`,onClick:Oe,children:Ee?.continueLabel??`Continue`}),(0,Y.jsx)(K,{className:`min-h-8 w-full max-w-full whitespace-normal py-1.5 leading-snug sm:min-h-7 sm:w-auto`,size:`sm`,onClick:ke,children:`Checkout feature branch & continue`})]})]})})]}):null}var VI=tr;function HI(e){return{environmentId:e.environmentId,threadKey:e.threadKey??null,cwd:e.cwd,pullRequestNumber:e.pullRequestNumber??null,commitSha:e.commitSha?.trim()||null,expiresAtMs:e.nowMs+VI}}function UI(e){let{watch:t}=e;return!t||!e.environmentId||!e.cwd||e.nowMs>=t.expiresAtMs||t.environmentId!==e.environmentId||t.cwd!==e.cwd||t.threadKey!==null&&t.threadKey!==e.threadKey||t.pullRequestNumber!==null&&e.pullRequestNumber!==null&&t.pullRequestNumber!==e.pullRequestNumber?null:t}function WI(e){if(!e.watch||!e.runs||e.runs.length===0)return!1;let t=e.watch.commitSha;return t?e.runs.some(e=>{let n=e.commit.oid;return n===t||n.startsWith(t)||t.startsWith(n)}):!1}function GI(e){return e.activeWatch&&e.nowMs<e.activeWatch.expiresAtMs&&!e.discoveredPostPushRun?ir({mode:e.mode??`automatic`,phase:`discovery`,nowMs:e.nowMs,discoveryExpiresAtMs:e.activeWatch.expiresAtMs}):ir({mode:e.mode??`automatic`,phase:e.statusRefreshable?`active`:`settled`})}function KI(e){return e===`github`}function qI(e){return e.workflowRunsSupported?e.workflowError??e.detailError:e.detailError}function JI(e){let t=si(e.status),n=si(e.conclusion);return t===`skipped`||n===`skipped`?`Skipped`:e.statusKind===`passed`?`Succeeded`:e.statusKind===`failed`||e.statusKind===`api-error`?`Failed`:e.statusKind===`cancelled`?`Cancelled`:e.statusKind===`running`?`Running`:e.statusKind===`pending`||e.statusKind===`loading`?`Pending`:`Unknown`}function YI(e){return e===`loading`||e===`pending`||e===`running`}function XI(e){return YI(oi(e).kind)}function ZI(e){return mi({name:e.name,status:e.status,conclusion:xi(e.conclusion),url:xi(e.url)})}function QI(e){return mi({name:e.name,status:e.status,conclusion:xi(e.conclusion)})}function $I(e,t){return e.find(({status:e})=>t.includes(e.kind))?.step??null}function eL(e){return si(e.status)===`skipped`||si(xi(e.conclusion))===`skipped`}function tL(e){let t=e.steps.map(e=>({step:e,status:QI(e)}));return $I(t,[`failed`,`api-error`])??$I(t,[`running`])??$I(t,[`pending`,`loading`])??$I(t,[`cancelled`])??t.find(({step:e})=>eL(e))?.step??null}function nL(e){let t=(e??[]).map(e=>({job:e,status:ZI(e)})),n=t.find(({status:e})=>e.kind===`running`)??t.find(({status:e})=>e.kind===`pending`||e.kind===`loading`)??null;if(!n)return;let r=tL(n.job);return r?`${n.job.name} / ${r.name}`:n.job.name}function rL(e){let t=oi(e),n={id:`run:${e.runId}`,name:e.workflowName,statusLabel:JI({status:e.status,conclusion:xi(e.conclusion),statusKind:t.kind}),tone:t.tone,statusKind:t.kind,url:e.url};return e.displayTitle&&e.displayTitle!==e.workflowName&&(n.detail=e.displayTitle),n}function iL(e){let t=ZI(e.job),n=tL(e.job),r=xi(e.job.url),i=[e.run.workflowName===e.job.name?null:e.run.workflowName,n?.name??null].filter(e=>!!e),a={id:`run:${e.run.runId}:job:${e.job.jobId}`,name:e.job.name,statusLabel:JI({status:e.job.status,conclusion:xi(e.job.conclusion),statusKind:t.kind}),tone:t.tone,statusKind:t.kind,url:r??e.run.url};return i.length>0&&(a.detail=i.join(` / `)),a}function aL(e,t){let n=mi({name:e.name,workflowName:e.workflowName,status:xi(e.status),conclusion:xi(e.conclusion),url:xi(e.url)}),r=xi(e.url),i={id:`rollup:${t}:${e.kind}:${e.name}`,name:e.name,statusLabel:JI({status:xi(e.status),conclusion:xi(e.conclusion),statusKind:n.kind}),tone:n.tone,statusKind:n.kind};return e.workflowName&&e.workflowName!==e.name&&(i.detail=e.workflowName),r&&(i.url=r),i}function oL(e){let t=[],n=e.limit??40;for(let r of e.runs){let i=e.jobsByRunId.get(r.runId);if(i&&i.length>0){for(let e of i)if(t.push(iL({run:r,job:e})),t.length>=n)return t}else if(t.push(rL(r)),t.length>=n)return t}return t}function sL(e){let t=e.limit??40;return(e.rollup??[]).slice(0,t).map(aL)}function cL(e){let t=new Set,n=e?.trim()??``;if(n.length===0)return t;t.add(n);let r=n.indexOf(`/`);if(r>0&&r<n.length-1){let e=n.slice(0,r);(e===`origin`||e===`upstream`)&&t.add(n.slice(r+1))}return t}function lL(e,t){let n=cL(t);return n.size===0?null:e?.find(e=>n.has(e.headRefName))??null}function uL(e){return e.activeWorktreePrNumber??e.gitStatusPrNumber??e.overviewBranchPullRequestNumber??e.postPushWatchPullRequestNumber??null}function dL(e){if(!e.workflowRunsSupported||e.pullRequestNumber===null&&(e.branchName??null)===null)return[];let t=(e.runs??[]).slice(0,8).map(e=>e.runId);return e.activeWorkflowRunId&&!t.includes(e.activeWorkflowRunId)?[e.activeWorkflowRunId,...t].slice(0,8):t}function fL(e){let t=[];if(e.gitStatusData||e.changedFiles.length>0){let{committed:n,local:r}=XF(e.changedFiles),i=ZF({committed:n,local:r,pullRequestNumber:e.overviewPullRequestNumber});t.push({...i,action:`review`,icon:`changes`})}return t.push({label:`Environment`,value:e.activeEnvironmentUnavailableState?.label??`Local`,...e.activeEnvironmentUnavailableState?{detail:e.activeEnvironmentUnavailableState.connectionState}:{},icon:`environment`}),t}var pL=`calc(340px + 0.75rem)`;function mL(e){let t=(0,J.c)(17),[n,r]=(0,q.useState)(!e.animate&&e.open),i,a;t[0]!==e.animate||t[1]!==e.open?(i=()=>{if(!e.animate){r(e.open);return}if(!e.open){r(!1);return}let t=window.requestAnimationFrame(()=>r(!0));return()=>window.cancelAnimationFrame(t)},a=[e.animate,e.open],t[0]=e.animate,t[1]=e.open,t[2]=i,t[3]=a):(i=t[2],a=t[3]),(0,q.useEffect)(i,a);let o=e.animate?e.open&&n:e.open,s=!e.open||void 0,c=!e.open||void 0,l=o?`w-(--overview-sidebar-frame-width) opacity-100`:`w-0 opacity-0`,u;t[4]===l?u=t[5]:(u=G(`h-full min-h-0 shrink-0 overflow-hidden pt-[var(--chat-header-clearance,0px)] transition-[width,opacity] duration-[320ms] ease-[cubic-bezier(0.16,1,0.3,1)] motion-reduce:transition-none`,l),t[4]=l,t[5]=u);let d;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(d={"--overview-sidebar-frame-width":pL},t[6]=d):d=t[6];let f=o?`translate-x-0 opacity-100`:`translate-x-5 opacity-0`,p;t[7]===f?p=t[8]:(p=G(`h-full min-h-0 w-(--overview-sidebar-frame-width) transition-[translate,opacity] duration-[320ms] ease-[cubic-bezier(0.16,1,0.3,1)] will-change-transform motion-reduce:transition-none`,f),t[7]=f,t[8]=p);let m;t[9]!==e.children||t[10]!==p?(m=(0,Y.jsx)(`div`,{className:p,children:e.children}),t[9]=e.children,t[10]=p,t[11]=m):m=t[11];let h;return t[12]!==s||t[13]!==c||t[14]!==u||t[15]!==m?(h=(0,Y.jsx)(`div`,{"aria-hidden":s,inert:c,className:u,style:d,children:m}),t[12]=s,t[13]=c,t[14]=u,t[15]=m,t[16]=h):h=t[16],h}function hL(e){let t=(0,J.c)(11),[n,r]=(0,q.useState)(!e.animate&&e.open),i,a;t[0]!==e.animate||t[1]!==e.open?(i=()=>{if(!e.animate){r(e.open);return}if(!e.open){r(!1);return}let t=window.requestAnimationFrame(()=>r(!0));return()=>window.cancelAnimationFrame(t)},a=[e.animate,e.open],t[0]=e.animate,t[1]=e.open,t[2]=i,t[3]=a):(i=t[2],a=t[3]),(0,q.useEffect)(i,a);let o=e.animate?e.open&&n:e.open,s=!e.open||void 0,c=!e.open||void 0,l=o?`translate-x-0 opacity-100`:`translate-x-3 opacity-0`,u;t[4]===l?u=t[5]:(u=G(`origin-top-right transition-[translate,opacity] duration-[260ms] ease-[cubic-bezier(0.16,1,0.3,1)] will-change-transform motion-reduce:transition-none`,l),t[4]=l,t[5]=u);let d;return t[6]!==e.children||t[7]!==s||t[8]!==c||t[9]!==u?(d=(0,Y.jsx)(`div`,{className:`pointer-events-none absolute top-[calc(var(--chat-header-clearance,0px)+0.75rem)] right-3 z-40`,children:(0,Y.jsx)(`div`,{"aria-hidden":s,inert:c,className:u,children:e.children})}),t[6]=e.children,t[7]=s,t[8]=c,t[9]=u,t[10]=d):d=t[10],d}function gL(){let e=(0,J.c)(7),[t,n]=(0,q.useState)(null),r;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=e=>{n(HI({environmentId:e.environmentId,threadKey:e.threadKey,cwd:e.cwd,pullRequestNumber:e.pullRequestNumber,commitSha:e.commitSha,nowMs:Date.now()})),sr({environmentId:e.environmentId,cwd:e.cwd})},e[0]=r):r=e[0];let i=r,a,o;e[1]===t?(a=e[2],o=e[3]):(a=()=>{if(!t)return;let e=window.setTimeout(()=>n(e=>e===t?null:e),Math.max(0,t.expiresAtMs-Date.now()));return()=>window.clearTimeout(e)},o=[t],e[1]=t,e[2]=a,e[3]=o),(0,q.useEffect)(a,o);let s;e[4]===Symbol.for(`react.memo_cache_sentinel`)?(s=()=>{n(null)},e[4]=s):s=e[4];let c=s,l;return e[5]===t?l=e[6]:(l={postPushWorkflowWatch:t,handlePostPush:i,clearWatch:c},e[5]=t,e[6]=l),l}function _L(e){let t=(0,J.c)(21),{gitCwd:n,activeThreadRef:r,routeKind:i,draftId:a,onPostPush:o,branchControlThread:s,isGitRepo:c,canOverrideServerThreadBranch:l,activeThreadBranch:u,onActiveThreadBranchOverrideChange:d,envLocked:f,onComposerFocusRequest:p,canCheckoutPullRequestIntoThread:m,onCheckoutPullRequestRequest:h}=e,g;t[0]!==r||t[1]!==a||t[2]!==n||t[3]!==o||t[4]!==i?(g=e=>n&&r?(0,Y.jsx)(BI,{gitCwd:n,activeThreadRef:r,detectedChangeRequest:e,...i===`draft`&&a?{draftId:a}:{},onPostPush:o,showLabels:!0,block:!0}):null,t[0]=r,t[1]=a,t[2]=n,t[3]=o,t[4]=i,t[5]=g):g=t[5];let _=g,v;t[6]!==u||t[7]!==s||t[8]!==m||t[9]!==l||t[10]!==a||t[11]!==f||t[12]!==c||t[13]!==d||t[14]!==h||t[15]!==p||t[16]!==i?(v=s&&c?(0,Y.jsx)(Vu,{appearance:`panelRow`,className:`w-full`,environmentId:s.environmentId,threadId:s.id,...i===`draft`&&a?{draftId:a}:{},...l?{activeThreadBranchOverride:u,onActiveThreadBranchOverrideChange:d}:{},envLocked:f,onComposerFocusRequest:p,...m?{onCheckoutPullRequestRequest:h}:{}}):null,t[6]=u,t[7]=s,t[8]=m,t[9]=l,t[10]=a,t[11]=f,t[12]=c,t[13]=d,t[14]=h,t[15]=p,t[16]=i,t[17]=v):v=t[17];let y=v,b;return t[18]!==y||t[19]!==_?(b={sourceControlActions:_,branchControl:y},t[18]=y,t[19]=_,t[20]=b):b=t[20],b}function vL(e){let t=(0,J.c)(143),{environmentId:n,gitCwd:r,activeWorktreeBranch:i,activeThreadBranch:a,activeWorktreePrNumber:o,activeWorktreePrState:s,activeWorktreePrIsDraft:c,activeWorktreeTitle:l,postPushWorkflowWatch:u,activeThreadKey:d,activeEnvironmentUnavailableState:f,activePlan:p,sidebarProposedPlan:m,threadSubagents:h,changedFileSummaries:g,sourceControlActions:_,branchControl:v,markdownCwd:y,workspaceRoot:b,mode:x,onClose:S,onOpenFiles:C,onOpenReview:w,onOpenSubagent:T,onPostPushDiscoveryComplete:E}=e,D=fe(wL),O;t[0]!==n||t[1]!==r?(O={environmentId:n,cwd:r},t[0]=n,t[1]=r,t[2]=O):O=t[2];let k=ie(O),A=i??a??k.data?.refName??null,j=A!==null&&o==null&&k.data?.pr==null,M;t[3]!==n||t[4]!==r||t[5]!==j?(M={environmentId:n,cwd:r,enabled:j},t[3]=n,t[4]=r,t[5]=j,t[6]=M):M=t[6];let N=SP(M),P;t[7]!==A||t[8]!==N.data?(P=lL(N.data,A),t[7]=A,t[8]=N.data,t[9]=P):P=t[9];let F=P,I,L;if(t[10]!==d||t[11]!==o||t[12]!==n||t[13]!==r||t[14]!==k.data?.pr?.number||t[15]!==F?.number||t[16]!==u){let e=UI({watch:u,environmentId:n,threadKey:d,cwd:r,pullRequestNumber:null,nowMs:Date.now()});I=uL({activeWorktreePrNumber:o,gitStatusPrNumber:k.data?.pr?.number??null,overviewBranchPullRequestNumber:F?.number??null,postPushWatchPullRequestNumber:e?.pullRequestNumber??null}),L=UI({watch:e,environmentId:n,threadKey:d,cwd:r,pullRequestNumber:I,nowMs:Date.now()}),t[10]=d,t[11]=o,t[12]=n,t[13]=r,t[14]=k.data?.pr?.number,t[15]=F?.number,t[16]=u,t[17]=I,t[18]=L}else I=t[17],L=t[18];let R=L,z=I===null?null:String(I),ee=k.data?.sourceControlProvider?.kind??null,te=I!==null,ne;t[19]!==n||t[20]!==r||t[21]!==z||t[22]!==te?(ne={environmentId:n,cwd:r,reference:z,enabled:te},t[19]=n,t[20]=r,t[21]=z,t[22]=te,t[23]=ne):ne=t[23];let B=CP(ne),re=B.data?.provider??F?.provider??ee,V;t[24]===re?V=t[25]:(V=KI(re),t[24]=re,t[25]=V);let ae=V,oe=ae&&I===null&&k.data?.isDefaultRef===!0&&k.data?.hasPrimaryRemote===!0,H=oe?k.data?.refName??null:null,se=ae&&(I!==null||H!==null),ce;t[26]!==R||t[27]!==D?(ce=e=>{let t=e?ci({runs:e.runs,headSha:xi(e.headSha)}):null;return GI({mode:D,activeWatch:R,nowMs:Date.now(),discoveredPostPushRun:WI({watch:R,runs:e?.runs}),statusRefreshable:t?fi(t):!1})},t[26]=R,t[27]=D,t[28]=ce):ce=t[28];let le=ce,ue=R?.commitSha??null,de;t[29]!==n||t[30]!==r||t[31]!==H||t[32]!==I||t[33]!==se||t[34]!==le||t[35]!==ue?(de={environmentId:n,cwd:r,pullRequestNumber:I,branch:H,commitSha:ue,enabled:se,resolveIntervalMs:le},t[29]=n,t[30]=r,t[31]=H,t[32]=I,t[33]=se,t[34]=le,t[35]=ue,t[36]=de):de=t[36];let U=TP(de),pe;t[37]!==R||t[38]!==E||t[39]!==U.data?.runs?(pe=()=>{R&&WI({watch:R,runs:U.data?.runs})&&E()},t[37]=R,t[38]=E,t[39]=U.data?.runs,t[40]=pe):pe=t[40];let me=U.data?.runs,he;t[41]!==R||t[42]!==E||t[43]!==me?(he=[R,me,E],t[41]=R,t[42]=E,t[43]=me,t[44]=he):he=t[44],(0,q.useEffect)(pe,he);let ge;t[45]===U.data?.runs?ge=t[46]:(ge=U.data?.runs??[],t[45]=U.data?.runs,t[46]=ge);let _e=ge,ve;t[47]===_e?ve=t[48]:(ve=_e.find(XI)?.runId??null,t[47]=_e,t[48]=ve);let ye=ve,be;t[49]!==ye||t[50]!==H||t[51]!==I||t[52]!==U.data?.runs||t[53]!==ae?(be=()=>dL({workflowRunsSupported:ae,pullRequestNumber:I,branchName:H,runs:U.data?.runs,activeWorkflowRunId:ye}),t[49]=ye,t[50]=H,t[51]=I,t[52]=U.data?.runs,t[53]=ae,t[54]=be):be=t[54],U.data?.runs;let xe;t[55]===be?xe=t[56]:(xe=be(),t[55]=be,t[56]=xe);let Se=xe,Ce=ae&&(I!==null||H!==null),we;t[57]!==n||t[58]!==r||t[59]!==ye||t[60]!==Se||t[61]!==Ce?(we={environmentId:n,cwd:r,runIds:Se,activeRunId:ye,enabled:Ce},t[57]=n,t[58]=r,t[59]=ye,t[60]=Se,t[61]=Ce,t[62]=we):we=t[62];let{jobsByRunId:Te,isLoading:Ee}=EP(we),De;t[63]!==B.error||t[64]!==U.error||t[65]!==ae?(De=eI(qI({workflowRunsSupported:ae,workflowError:U.error,detailError:B.error})),t[63]=B.error,t[64]=U.error,t[65]=ae,t[66]=De):De=t[66];let Oe=De,ke;t[67]!==c||t[68]!==s||t[69]!==l||t[70]!==Oe||t[71]!==k.data?.pr||t[72]!==ye||t[73]!==F||t[74]!==oe||t[75]!==B.data||t[76]!==B.error||t[77]!==B.isLoading||t[78]!==I||t[79]!==Te||t[80]!==Ee||t[81]!==U.data||t[82]!==U.error||t[83]!==U.isLoading||t[84]!==ae?(ke=()=>{let e=I!==null;if(!e&&!oe)return null;let t=e?k.data?.pr??null:null,n=e?F:null,r=e?B.data??null:null,i=ae?U.data??null:null,a=qI({workflowRunsSupported:ae,workflowError:U.error,detailError:B.error}),o=ye===null?void 0:nL(Te.get(ye)),u=i&&ae?Ei({isLoading:U.isLoading,error:U.error,status:ci({runs:i.runs,headSha:xi(i.headSha)})}):r?hi(r):n?hi(n):Ei({isLoading:ae&&U.isLoading||B.isLoading,error:a,status:null}),d=i?oL({runs:i.runs,jobsByRunId:Te}):[],f=sL({rollup:r?.checkRollup??n?.checkRollup}),p=Array.from(Te.values()).some(CL)?d:f.length>0?f:d;if(o)for(let e of p)YI(e.statusKind)&&ye!==null&&e.id.startsWith(`run:${ye}`)&&(e.activeDetail=o);let m=p.filter(SL),h=Oe,g=ae&&U.isLoading||e&&B.isLoading||Ee,_=m.length>0?m.length:u&&YI(u.kind)?1:0;if(I===null)return!g&&p.length===0&&!h?null:{checkStatus:u,checksLoading:g,...h?{checksError:h}:{},hasMergeConflicts:!1,activeCheckCount:_,runs:m,latestRuns:p};let v=r?.url??t?.url??n?.url??null,y=r?.state??s??t?.state??n?.state??null,b=r?.isDraft??c??n?.isDraft,x=r?.participants?r.participants.filter(xL).length:void 0,S=r?.reviewers?r.reviewers.length:void 0;return{number:I,title:r?.title??t?.title??n?.title??l??`Pull request #${I}`,...v?{url:v}:{},...y?{state:y}:{},...typeof b==`boolean`?{isDraft:b}:{},...typeof r?.commentsCount==`number`?{commentsCount:r.commentsCount}:r?{commentsCount:r.comments.length}:typeof n?.commentsCount==`number`?{commentsCount:n.commentsCount}:{},...typeof x==`number`?{reviewsApproved:x}:{},...typeof S==`number`?{reviewsRequested:S}:{},checkStatus:u,checksLoading:g,...h?{checksError:h}:{},...r?.mergeability?{mergeability:r.mergeability}:{},hasMergeConflicts:r?.mergeability===`conflicting`,activeCheckCount:_,runs:m,latestRuns:p}},t[67]=c,t[68]=s,t[69]=l,t[70]=Oe,t[71]=k.data?.pr,t[72]=ye,t[73]=F,t[74]=oe,t[75]=B.data,t[76]=B.error,t[77]=B.isLoading,t[78]=I,t[79]=Te,t[80]=Ee,t[81]=U.data,t[82]=U.error,t[83]=U.isLoading,t[84]=ae,t[85]=ke):ke=t[85],k.data?.pr;let Ae;t[86]===ke?Ae=t[87]:(Ae=ke(),t[86]=ke,t[87]=Ae);let je=Ae,Me=(0,q.useRef)(null),Ne,Pe;t[88]!==Oe||t[89]!==I?(Ne=()=>{if(!Oe){Me.current=null;return}let e=`${I??`?`}|${Oe.kind}|${Oe.message}`;if(Me.current===e)return;Me.current=e,Oe.raw&&console.debug(`[overview] source control fetch failed:`,Oe.raw);let t=I===null;ki.add(ks({type:Oe.kind===`terminal`?`error`:`warning`,title:Oe.kind===`terminal`?t?`Checks unavailable`:`Pull request unavailable`:t?`Couldn't refresh checks`:`Couldn't refresh pull request`,description:Oe.message}))},Pe=[Oe,I],t[88]=Oe,t[89]=I,t[90]=Ne,t[91]=Pe):(Ne=t[90],Pe=t[91]),(0,q.useEffect)(Ne,Pe);let Fe;t[92]===g?Fe=t[93]:(Fe=g??[],t[92]=g,t[93]=Fe);let Ie;t[94]===k.data?.workingTree.files?Ie=t[95]:(Ie=k.data?.workingTree.files??[],t[94]=k.data?.workingTree.files,t[95]=Ie);let Le;t[96]===k.data?.committed?.files?Le=t[97]:(Le=k.data?.committed?.files??[],t[96]=k.data?.committed?.files,t[97]=Le);let Re;t[98]!==Fe||t[99]!==Ie||t[100]!==Le?(Re=qF(Fe,Ie,Le),t[98]=Fe,t[99]=Ie,t[100]=Le,t[101]=Re):Re=t[101];let ze=Re,Be;t[102]!==f||t[103]!==ze||t[104]!==k.data||t[105]!==I?(Be=fL({gitStatusData:k.data,changedFiles:ze,overviewPullRequestNumber:I,activeEnvironmentUnavailableState:f}),t[102]=f,t[103]=ze,t[104]=k.data,t[105]=I,t[106]=Be):Be=t[106];let Ve=Be,He;bb0:{let e=k.data;if(!e&&ze.length===0){He=void 0;break bb0}let n;t[107]===ze?n=t[108]:(n=ze.reduce(bL,0),t[107]=ze,t[108]=n);let r=n,i;t[109]===ze?i=t[110]:(i=ze.reduce(yL,0),t[109]=ze,t[110]=i);let a=i,o=e?.refName??null,s=e?.aheadCount??0,c=e?.behindCount??0,l;t[111]!==ze||t[112]!==a||t[113]!==r||t[114]!==o||t[115]!==s||t[116]!==c?(l={files:ze,insertions:r,deletions:a,refName:o,aheadCount:s,behindCount:c},t[111]=ze,t[112]=a,t[113]=r,t[114]=o,t[115]=s,t[116]=c,t[117]=l):l=t[117],He=l}let Ue=He,We;t[118]!==n||t[119]!==r?(We=()=>{sr({environmentId:n,cwd:r})},t[118]=n,t[119]=r,t[120]=We):We=t[120];let Ge=We,Ke=B.isFetching||ae&&U.isFetching,qe=B.data??F??null,Je;t[121]!==qe||t[122]!==_?(Je=_(qe),t[121]=qe,t[122]=_,t[123]=Je):Je=t[123];let Ye;return t[124]!==p||t[125]!==v||t[126]!==n||t[127]!==Ge||t[128]!==Ke||t[129]!==y||t[130]!==x||t[131]!==S||t[132]!==C||t[133]!==w||t[134]!==T||t[135]!==Ue||t[136]!==Ve||t[137]!==je||t[138]!==m||t[139]!==Je||t[140]!==h||t[141]!==b?(Ye=(0,Y.jsx)(WF,{activePlan:p,activeProposedPlan:m,changes:Ue,overviewItems:Ve,pullRequest:je,onRefreshPullRequest:Ge,isRefreshingPullRequest:Ke,subagents:h,sourceControlActions:Je,branchControl:v,environmentId:n,markdownCwd:y,workspaceRoot:b,mode:x,onClose:S,onOpenFiles:C,onOpenReview:w,onOpenSubagent:T}),t[124]=p,t[125]=v,t[126]=n,t[127]=Ge,t[128]=Ke,t[129]=y,t[130]=x,t[131]=S,t[132]=C,t[133]=w,t[134]=T,t[135]=Ue,t[136]=Ve,t[137]=je,t[138]=m,t[139]=Je,t[140]=h,t[141]=b,t[142]=Ye):Ye=t[142],Ye}function yL(e,t){return e+t.deletions}function bL(e,t){return e+t.insertions}function xL(e){return e.approved===!0}function SL(e){return YI(e.statusKind)}function CL(e){return e.length>0}function wL(e){return e.sourceControlRefreshMode}function TL(e){let t=(0,J.c)(19),{activeThreadId:n,keybindings:r,terminalOpen:i,activeTerminalId:a,readComposer:o,activeProject:s,toggleTerminalVisibility:c,splitTerminal:l,closeTerminal:u,createNewTerminal:d,setTerminalOpen:f,onToggleDiff:p,onOpenFilesPanel:m,onOpenReviewPanel:h,onOpenTerminalPanel:g,onOpenSimulatorPanel:_,runProjectScript:v}=e,y,b;t[0]!==s||t[1]!==a||t[2]!==n||t[3]!==u||t[4]!==d||t[5]!==r||t[6]!==m||t[7]!==h||t[8]!==_||t[9]!==g||t[10]!==p||t[11]!==o||t[12]!==v||t[13]!==f||t[14]!==l||t[15]!==i||t[16]!==c?(y=()=>{let e=e=>{if(!n||Ue.getState().open||e.defaultPrevented)return;let t=o()?.isModelPickerOpen()??!1,y={terminalFocus:Ms(),terminalOpen:!!i,modelPickerOpen:t},b=wo(e,r,{context:y});if(jo(e)&&(b!==`modelPicker.toggle`||!t)||!b)return;if(b===`terminal.toggle`){e.preventDefault(),e.stopPropagation(),c();return}if(b===`terminal.split`){e.preventDefault(),e.stopPropagation(),i||f(!0),l();return}if(b===`terminal.close`){if(e.preventDefault(),e.stopPropagation(),!i)return;u(a);return}if(b===`terminal.new`){e.preventDefault(),e.stopPropagation(),i||f(!0),d();return}if(b===`diff.toggle`){e.preventDefault(),e.stopPropagation(),p();return}if(b===`workspace.files`){e.preventDefault(),e.stopPropagation(),m();return}if(b===`workspace.review`){e.preventDefault(),e.stopPropagation(),h();return}if(b===`workspace.terminal`){e.preventDefault(),e.stopPropagation(),g();return}if(b===`workspace.simulator`){e.preventDefault(),e.stopPropagation(),_();return}if(b===`modelPicker.toggle`){e.preventDefault(),e.stopPropagation(),o()?.toggleModelPicker();return}let x=fN(b);if(!x||!s)return;let S=s.scripts.find(e=>e.id===x);S&&(e.preventDefault(),e.stopPropagation(),v(S))};return window.addEventListener(`keydown`,e,!0),()=>window.removeEventListener(`keydown`,e,!0)},b=[s,i,a,n,u,d,f,v,l,r,p,m,h,g,_,o,c],t[0]=s,t[1]=a,t[2]=n,t[3]=u,t[4]=d,t[5]=r,t[6]=m,t[7]=h,t[8]=_,t[9]=g,t[10]=p,t[11]=o,t[12]=v,t[13]=f,t[14]=l,t[15]=i,t[16]=c,t[17]=y,t[18]=b):(y=t[17],b=t[18]),(0,q.useEffect)(y,b)}var EL={};function DL(e){let{pendingUserInputs:t,respondingUserInputRequestIds:n,readComposer:r,promptRef:i}=e,a=e.onRespondToUserInput,[o,s]=(0,q.useState)({}),[c,l]=(0,q.useState)({}),u=t[0]??null,d=(0,q.useMemo)(()=>u?o[u.requestId]??EL:EL,[u,o]),f=u?c[u.requestId]??0:0,p=(0,q.useMemo)(()=>u?$f(u.questions,d,f):null,[d,f,u]),m=(0,q.useMemo)(()=>u?Zf(u.questions,d):null,[d,u]),h=u?n.includes(u.requestId):!1,g=(0,q.useCallback)(e=>{u&&l(t=>({...t,[u.requestId]:e}))},[u]);return{activePendingUserInput:u,activePendingDraftAnswers:d,activePendingQuestionIndex:f,activePendingProgress:p,activePendingResolvedAnswers:m,activePendingIsResponding:h,onSelectActivePendingUserInputOption:(0,q.useCallback)((e,t)=>{u&&(s(n=>{let r=(p?.activeQuestion?.id===e?p.activeQuestion:void 0)??u.questions.find(t=>t.id===e);return r?{...n,[u.requestId]:{...n[u.requestId],[e]:Xf(r,n[u.requestId]?.[e],t)}}:n}),i.current=``,r()?.resetCursorState({cursor:0}))},[p?.activeQuestion,u,i,r]),onChangeActivePendingUserInputCustomAnswer:(0,q.useCallback)((e,t,n,a,o)=>{if(!u)return;i.current=t,s(n=>({...n,[u.requestId]:{...n[u.requestId],[e]:Yf(n[u.requestId]?.[e],t)}}));let c=r()?.readSnapshot();(c?.value!==t||c.cursor!==n||c.expandedCursor!==a)&&r()?.focusAt(n)},[u,i,r]),onAdvanceActivePendingUserInput:(0,q.useCallback)(()=>{if(!(!u||!p)){if(p.isLastQuestion){m&&a(u.requestId,m);return}g(p.questionIndex+1)}},[p,m,u,a,g]),onPreviousActivePendingUserInputQuestion:(0,q.useCallback)(()=>{p&&g(Math.max(p.questionIndex-1,0))},[p,g])}}function OL(e){let t=(0,J.c)(3),n=(0,q.useRef)(e),r;t[0]===e?r=t[1]:(r=()=>{n.current=e},t[0]=e,t[1]=r),(0,q.useLayoutEffect)(r);let i;return t[2]===Symbol.for(`react.memo_cache_sentinel`)?(i=(...e)=>{let t=e;return n.current(...t)},t[2]=i):i=t[2],i}var kL=e=>({...Vn(e),diff:void 0,diffTurnId:void 0,diffFilePath:void 0,preview:void 0,workspaceOpen:void 0,workspaceTab:void 0,workspaceAgentKey:void 0});function AL(e){let t=(0,J.c)(85),{navigate:n,environmentId:r,threadId:i,routeKind:a,draftId:o,isServerThread:s,hasActiveProject:c,diffOpen:l,workspacePanelOpen:u,externalToggleWorkspacePanel:d,onDiffPanelOpen:f,onPreviewPanelOpen:p,onTerminalPanelOpen:m,onSimulatorPanelOpen:h,onAgentPanelOpen:g}=e,_=Ls()===`phone`,v;t[0]!==r||t[1]!==s||t[2]!==n||t[3]!==f||t[4]!==i?(v=()=>{s&&(f?.(),n({to:`/$environmentId/$threadId`,params:{environmentId:r,threadId:i},replace:!0,search:IL}))},t[0]=r,t[1]=s,t[2]=n,t[3]=f,t[4]=i,t[5]=v):v=t[5];let y=OL(v),b;t[6]!==l||t[7]!==r||t[8]!==s||t[9]!==n||t[10]!==y||t[11]!==i?(b=()=>{if(s){if(!l){y();return}n({to:`/$environmentId/$threadId`,params:{environmentId:r,threadId:i},replace:!0,search:e=>l?kL(e):Yn(e)})}},t[6]=l,t[7]=r,t[8]=s,t[9]=n,t[10]=y,t[11]=i,t[12]=b):b=t[12];let x=OL(b),S;t[13]!==o||t[14]!==r||t[15]!==c||t[16]!==n||t[17]!==p||t[18]!==a||t[19]!==i?(S=()=>{if(!c)return;p?.();let e=FL;if(a===`draft`&&o){n({to:`/draft/$draftId`,params:{draftId:o},replace:!0,search:e});return}n({to:`/$environmentId/$threadId`,params:{environmentId:r,threadId:i},replace:!0,search:e})},t[13]=o,t[14]=r,t[15]=c,t[16]=n,t[17]=p,t[18]=a,t[19]=i,t[20]=S):S=t[20];let C=OL(S),w;t[21]!==o||t[22]!==r||t[23]!==s||t[24]!==n||t[25]!==m||t[26]!==a||t[27]!==i?(w=()=>{m?.();let e=PL;if(a===`draft`&&o){n({to:`/draft/$draftId`,params:{draftId:o},replace:!0,search:e});return}s&&n({to:`/$environmentId/$threadId`,params:{environmentId:r,threadId:i},replace:!0,search:e})},t[21]=o,t[22]=r,t[23]=s,t[24]=n,t[25]=m,t[26]=a,t[27]=i,t[28]=w):w=t[28];let T=OL(w),E;t[29]!==o||t[30]!==r||t[31]!==_||t[32]!==s||t[33]!==n||t[34]!==h||t[35]!==a||t[36]!==i?(E=()=>{if(_)return;h?.();let e=NL;if(a===`draft`&&o){n({to:`/draft/$draftId`,params:{draftId:o},replace:!0,search:e});return}s&&n({to:`/$environmentId/$threadId`,params:{environmentId:r,threadId:i},replace:!0,search:e})},t[29]=o,t[30]=r,t[31]=_,t[32]=s,t[33]=n,t[34]=h,t[35]=a,t[36]=i,t[37]=E):E=t[37];let D=OL(E),O;t[38]!==o||t[39]!==r||t[40]!==d||t[41]!==s||t[42]!==n||t[43]!==a||t[44]!==i||t[45]!==u?(O=()=>{if(d){d();return}let e=e=>u?kL(e):Xn(e);if(a===`draft`&&o){n({to:`/draft/$draftId`,params:{draftId:o},replace:!0,search:e});return}s&&n({to:`/$environmentId/$threadId`,params:{environmentId:r,threadId:i},replace:!0,search:e})},t[38]=o,t[39]=r,t[40]=d,t[41]=s,t[42]=n,t[43]=a,t[44]=i,t[45]=u,t[46]=O):O=t[46];let k=OL(O),A;t[47]!==r||t[48]!==s||t[49]!==n||t[50]!==f||t[51]!==i?(A=(e,t)=>{s&&(f?.(),n({to:`/$environmentId/$threadId`,params:{environmentId:r,threadId:i},search:n=>Yn(n,{diffTurnId:e,diffFilePath:t??void 0})}))},t[47]=r,t[48]=s,t[49]=n,t[50]=f,t[51]=i,t[52]=A):A=t[52];let j=A,M;t[53]!==r||t[54]!==s||t[55]!==n||t[56]!==i?(M=()=>{s&&n({to:`/$environmentId/$threadId`,params:{environmentId:r,threadId:i},search:ML})},t[53]=r,t[54]=s,t[55]=n,t[56]=i,t[57]=M):M=t[57];let N=M,P;t[58]!==o||t[59]!==r||t[60]!==_||t[61]!==s||t[62]!==n||t[63]!==a||t[64]!==i?(P=()=>{if(_)return;let e=jL;if(a===`draft`&&o){n({to:`/draft/$draftId`,params:{draftId:o},replace:!0,search:e});return}s&&n({to:`/$environmentId/$threadId`,params:{environmentId:r,threadId:i},replace:!0,search:e})},t[58]=o,t[59]=r,t[60]=_,t[61]=s,t[62]=n,t[63]=a,t[64]=i,t[65]=P):P=t[65];let F=OL(P),I;t[66]!==o||t[67]!==r||t[68]!==s||t[69]!==n||t[70]!==g||t[71]!==a||t[72]!==i?(I=e=>{g?.();let t=t=>Wn(t,e.key);if(a===`draft`&&o){n({to:`/draft/$draftId`,params:{draftId:o},search:t});return}s&&n({to:`/$environmentId/$threadId`,params:{environmentId:r,threadId:i},search:t})},t[66]=o,t[67]=r,t[68]=s,t[69]=n,t[70]=g,t[71]=a,t[72]=i,t[73]=I):I=t[73];let L=I,R;return t[74]!==N||t[75]!==F||t[76]!==C||t[77]!==y||t[78]!==D||t[79]!==L||t[80]!==T||t[81]!==j||t[82]!==x||t[83]!==k?(R={onOpenReviewPanel:y,onToggleDiff:x,onOpenFilesPanel:C,onOpenTerminalPanel:T,onOpenSimulatorPanel:D,onToggleWorkspacePanel:k,onOpenTurnDiff:j,onCloseDiff:N,onOpenAgentsPanel:F,onOpenSubagentPanel:L},t[74]=N,t[75]=F,t[76]=C,t[77]=y,t[78]=D,t[79]=L,t[80]=T,t[81]=j,t[82]=x,t[83]=k,t[84]=R):R=t[84],R}function jL(e){return zn(e)}function ML(e){return kL(e)}function NL(e){return Bn(e)}function PL(e){return Gn(e)}function FL(e){return qn(e)}function IL(e){return Yn(e)}var LL=[];function RL(e){return oe((0,q.useMemo)(()=>{let t=[],n=[],r=new Map;return i=>{let a=t.length===e.length&&t.every((t,n)=>t===e[n]),o=new Map,s=[],c=!a;for(let t of e){let e,n,a;for(let r of Object.values(i.environmentStateById)){let i=r.threadShellById[t];if(i){e=i,n=r.proposedPlanIdsByThreadId[t],a=r.proposedPlanByThreadId[t];break}}if(!e){let e=r.get(t);if(e&&e.shell===null&&e.proposedPlanIds===void 0&&e.proposedPlansById===void 0){o.set(t,e);continue}c=!0,o.set(t,{shell:null,proposedPlanIds:void 0,proposedPlansById:void 0,entry:{id:t,proposedPlans:LL}});continue}let l=r.get(t);if(l&&l.shell===e&&l.proposedPlanIds===n&&l.proposedPlansById===a){o.set(t,l),s.push(l.entry);continue}c=!0;let u={id:t,proposedPlans:n&&n.length>0&&a?n.flatMap(e=>{let t=a?.[e];return t?[t]:[]}):LL};o.set(t,{shell:e,proposedPlanIds:n,proposedPlansById:a,entry:u}),s.push(u)}return!c&&n.length===s.length?n:(t=e,r=o,n=s,s)}},[e]))}function zL(e){let t=(0,J.c)(19),[n,r]=(0,q.useState)(null),i;t[0]===e.activeThread?i=t[1]:(i=t=>{let n=!!t?.preparingWorktree;r(r=>r?r.preparingWorktree===n?r:{...r,preparingWorktree:n}:kd(e.activeThread,t))},t[0]=e.activeThread,t[1]=i);let a=i,o;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(o=()=>{r(null)},t[2]=o):o=t[2];let s=o;e.activeThread?.session;let c=e.activeThread?.session??null,l=e.activePendingApproval!==null,u=e.activePendingUserInput!==null,d;t[3]!==e.activeLatestTurn||t[4]!==e.phase||t[5]!==e.threadError||t[6]!==n||t[7]!==c||t[8]!==l||t[9]!==u?(d=Ad({localDispatch:n,phase:e.phase,latestTurn:e.activeLatestTurn,session:c,hasPendingApproval:l,hasPendingUserInput:u,threadError:e.threadError}),t[3]=e.activeLatestTurn,t[4]=e.phase,t[5]=e.threadError,t[6]=n,t[7]=c,t[8]=l,t[9]=u,t[10]=d):d=t[10];let f=d,p,m;t[11]===f?(p=t[12],m=t[13]):(p=()=>{f&&s()},m=[s,f],t[11]=f,t[12]=p,t[13]=m),(0,q.useEffect)(p,m);let h=n?.startedAt??null,g=n?.preparingWorktree??!1,_=n!==null&&!f,v;return t[14]!==a||t[15]!==_||t[16]!==h||t[17]!==g?(v={beginLocalDispatch:a,resetLocalDispatch:s,localDispatchStartedAt:h,isPreparingWorktree:g,isSendBusy:_},t[14]=a,t[15]=_,t[16]=h,t[17]=g,t[18]=v):v=t[18],v}var BL=120,VL=30;function HL(e){let{environmentId:t,activeThread:n,activeThreadId:r,activeThreadRef:i,activeProject:a,gitCwd:o,terminalState:s,setLastInvokedScriptByProjectId:c,setTerminalLaunchContext:l,setTerminalOpen:u,storeNewTerminal:f,storeSetActiveTerminal:p,setTerminalFocusRequestId:m,setThreadError:h}=e,g=OL(async(e,d)=>{let g=Le(t);if(!g||!r||!a||!n)return;d?.rememberAsLastInvoked!==!1&&c(t=>t[a.id]===e.id?t:{...t,[a.id]:e.id});let _=d?.cwd??o??a.cwd,v=s.activeTerminalId||s.terminalIds[0]||`default`,y=s.runningTerminalIds.includes(v),b=!!d?.preferNewTerminal||y,x=b?`terminal-${ro()}`:v,S=d?.worktreePath??n.worktreePath??null;if(l({threadId:r,cwd:_,worktreePath:S}),u(!0),!i)return;b?f(i,x):p(i,x),m(e=>e+1);let C=ga({project:{cwd:a.cwd},worktreePath:S,...d?.env?{extraEnv:d.env}:{}}),w=b?{threadId:r,terminalId:x,cwd:_,...S===null?{}:{worktreePath:S},env:C,cols:BL,rows:VL}:{threadId:r,terminalId:x,cwd:_,...S===null?{}:{worktreePath:S},env:C};try{await g.terminal.open(w),await g.terminal.write({threadId:r,terminalId:x,data:`${e.command}\r`})}catch(t){h(r,t instanceof Error?t.message:`Failed to run script "${e.name}".`)}}),_=(0,q.useCallback)(async e=>{let n=Le(t);if(!n)return;await n.orchestration.dispatchCommand({type:`project.meta.update`,commandId:no(),projectId:e.projectId,scripts:e.nextScripts});let r=cN({keybinding:e.keybinding,command:e.keybindingCommand});if(d&&r){let e=pe();if(!e)throw Error(`Local API unavailable.`);await e.server.upsertKeybinding(r)}},[t]);return{runProjectScript:g,saveProjectScript:(0,q.useCallback)(async e=>{if(!a)return;let t=pN(e.name,a.scripts.map(e=>e.id)),n={id:t,name:e.name,command:e.command,icon:e.icon,runOnWorktreeCreate:e.runOnWorktreeCreate},r=e.runOnWorktreeCreate?[...a.scripts.map(e=>e.runOnWorktreeCreate?{...e,runOnWorktreeCreate:!1}:e),n]:[...a.scripts,n];await _({projectId:a.id,projectCwd:a.cwd,previousScripts:a.scripts,nextScripts:r,keybinding:e.keybinding,keybindingCommand:dN(t)})},[a,_]),updateProjectScript:(0,q.useCallback)(async(e,t)=>{if(!a)return;let n=a.scripts.find(t=>t.id===e);if(!n)throw Error(`Script not found.`);let r={...n,name:t.name,command:t.command,icon:t.icon,runOnWorktreeCreate:t.runOnWorktreeCreate},i=a.scripts.map(n=>n.id===e?r:t.runOnWorktreeCreate?{...n,runOnWorktreeCreate:!1}:n);await _({projectId:a.id,projectCwd:a.cwd,previousScripts:a.scripts,nextScripts:i,keybinding:t.keybinding,keybindingCommand:dN(e)})},[a,_]),deleteProjectScript:(0,q.useCallback)(async e=>{if(!a)return;let t=a.scripts.filter(t=>t.id!==e),n=a.scripts.find(t=>t.id===e)?.name;try{await _({projectId:a.id,projectCwd:a.cwd,previousScripts:a.scripts,nextScripts:t,keybinding:null,keybindingCommand:dN(e)}),ki.add({type:`success`,title:`Deleted action "${n??`Unknown`}"`})}catch(e){ki.add(ks({type:`error`,title:`Could not delete action`,description:e instanceof Error?e.message:`An unexpected error occurred.`}))}},[a,_])}}function UL(e){let{serverMessages:t,optimisticUserMessagesRef:n}=e,[r,i]=(0,q.useState)({}),a=(0,q.useRef)({}),o=(0,q.useRef)({});(0,q.useEffect)(()=>{a.current=r},[r]);let s=(0,q.useCallback)((e,t)=>{delete o.current[e];let n=t??a.current[e]??[];i(t=>{if(!(e in t))return t;let n={...t};return delete n[e],a.current=n,n});for(let e of n)gd(e)},[]),c=(0,q.useCallback)(()=>{o.current={};for(let e of Object.values(a.current))for(let t of e)gd(t);a.current={},i({})},[]);(0,q.useEffect)(()=>()=>{c();for(let e of n.current)_d(e)},[c,n]);let l=(0,q.useCallback)((e,t)=>{if(t.length===0)return;let n=a.current[e]??[];for(let e of n)t.includes(e)||gd(e);i(n=>{let r={...n,[e]:t};return a.current=r,r})},[]);return(0,q.useEffect)(()=>{if(typeof Image>`u`||!t||t.length===0)return;let e=[];for(let[n,i]of Object.entries(r)){if(o.current[n])continue;let r=t.find(e=>e.id===n&&e.role===`user`);if(!r?.attachments||r.attachments.length===0)continue;let a=r.attachments.flatMap(e=>e.type===`image`&&e.previewUrl?[e.previewUrl]:[]);if(a.length===0||a.length!==i.length||a.some(e=>e.startsWith(`blob:`)))continue;o.current[n]=!0;let c=!1,l=[];Promise.all(a.map(e=>new Promise((t,r)=>{let i=new Image;l.push(i),i.addEventListener(`load`,()=>t(),{once:!0}),i.addEventListener(`error`,()=>r(Error(`Failed to load server preview for ${n}.`)),{once:!0}),i.src=e}))).then(()=>{c||s(n,i)}).catch(()=>{c||delete o.current[n]}),e.push(()=>{c=!0,delete o.current[n];for(let e of l)e.src=``})}return()=>{for(let t of e)t()}},[r,s,t]),{attachmentPreviewHandoffByMessageId:r,handoffAttachmentPreviews:l}}async function WL(e,t){await e.orchestration.dispatchCommand({type:`thread.turn.interrupt`,commandId:no(),threadId:t,createdAt:new Date().toISOString()})}async function GL(e){await e.api.orchestration.dispatchCommand({type:`thread.approval.respond`,commandId:no(),threadId:e.threadId,requestId:e.requestId,decision:e.decision,createdAt:new Date().toISOString()})}async function KL(e){await e.api.orchestration.dispatchCommand({type:`thread.user-input.respond`,commandId:no(),threadId:e.threadId,requestId:e.requestId,answers:e.answers,createdAt:new Date().toISOString()})}async function qL(e){await e.api.orchestration.dispatchCommand({type:`thread.checkpoint.revert`,commandId:no(),threadId:e.threadId,turnCount:e.turnCount,createdAt:new Date().toISOString()})}async function JL(e){return!e.api||!e.localApi||!e.thread?{ok:!1,reason:{type:`missing-api`}}:e.environmentUnavailable?{ok:!1,reason:{type:`environment-unavailable`,label:e.environmentUnavailableLabel??`environment`}}:e.turnInProgress?{ok:!1,reason:{type:`turn-in-progress`}}:await e.localApi.dialogs.confirm(e.confirmMessage)?(await qL({api:e.api,threadId:e.thread.id,turnCount:e.turnCount}),{ok:!0}):{ok:!1,reason:{type:`user-cancelled`}}}function YL(e){switch(e.type){case`missing-api`:case`missing-thread`:case`user-cancelled`:return null;case`environment-unavailable`:return`Reconnect ${e.label} before reverting checkpoints.`;case`turn-in-progress`:return`Interrupt the current turn before reverting checkpoints.`}}function XL(e){let{environmentId:t,activeThreadId:n,setThreadError:r}=e,[i,a]=(0,q.useState)([]),[o,s]=(0,q.useState)([]),[c,l]=(0,q.useState)(!1);return(0,q.useEffect)(()=>{l(!1)},[n]),{interruptTurn:(0,q.useCallback)(async()=>{let e=Le(t);!e||!n||await WL(e,n)},[n,t]),respondToApproval:(0,q.useCallback)(async(e,i)=>{let o=Le(t);if(!(!o||!n)){a(t=>t.includes(e)?t:[...t,e]);try{await GL({api:o,threadId:n,requestId:e,decision:i})}catch(e){r(n,e instanceof Error?e.message:`Failed to submit approval decision.`)}finally{a(t=>t.filter(t=>t!==e))}}},[n,t,r]),respondToUserInput:(0,q.useCallback)(async(e,i)=>{let a=Le(t);if(!(!a||!n)){s(t=>t.includes(e)?t:[...t,e]);try{await KL({api:a,threadId:n,requestId:e,answers:i})}catch(e){r(n,e instanceof Error?e.message:`Failed to submit user input.`)}finally{s(t=>t.filter(t=>t!==e))}}},[n,t,r]),revertToTurnCount:(0,q.useCallback)(async e=>{let n=Le(t),i=pe();if(!c){l(!0),e.thread&&r(e.thread.id,null);try{let t=await JL({api:n??null,localApi:i??null,thread:e.thread,turnCount:e.turnCount,environmentUnavailable:e.environmentUnavailable,environmentUnavailableLabel:e.environmentUnavailableLabel,turnInProgress:e.turnInProgress,confirmMessage:[`Revert this thread to checkpoint ${e.turnCount}?`,`This will discard newer messages and turn diffs in this thread.`,`This action cannot be undone.`].join(`
26
26
  `)});if(!t.ok){let n=YL(t.reason);n&&e.thread&&r(e.thread.id,n)}}catch(t){e.thread&&r(e.thread.id,t instanceof Error?t.message:`Failed to revert thread state.`)}finally{l(!1)}}},[t,c,r]),respondingRequestIds:i,respondingUserInputRequestIds:o,isRevertingCheckpoint:c}}function ZL(e,t){e(e=>{let n=e.filter(e=>e.id===t);for(let e of n)_d(e);let r=e.filter(e=>e.id!==t);return r.length===e.length?e:r})}function QL(e){let{refs:t,composerHandle:n,dispatch:r,draft:i,messageId:a,promptSnapshot:o,imagesSnapshot:s,terminalContextsSnapshot:c}=e;if(t.promptRef.current.length!==0||t.composerImagesRef.current.length!==0||t.composerTerminalContextsRef.current.length!==0)return;ZL(r.setOptimisticUserMessages,a),t.promptRef.current=o;let l=s.map(Sd);t.composerImagesRef.current=l,t.composerTerminalContextsRef.current=c,i.setComposerDraftPrompt(i.composerDraftTarget,o),i.addComposerDraftImages(i.composerDraftTarget,l),i.setComposerDraftTerminalContexts(i.composerDraftTarget,c),n.readComposer()?.resetCursorState({cursor:Dt(o,o.length),prompt:o,detectTrigger:!0})}function $L(e){let t=Jt(e.composer.prompt,e.composer.sendableTerminalContexts);return e.formatOutgoingPrompt({provider:e.composer.selectedProvider,model:e.composer.selectedModel,models:e.composer.selectedProviderModels,effort:e.composer.selectedPromptEffort,text:t||`[User attached one or more images without additional text. Respond using the conversation context and the attached image(s).]`})}async function eR(e){return Promise.all(e.map(async e=>Lt({attachment:await ul.encode({id:e.id,file:e.file}),name:e.name})))}async function tR(e){let{composer:t,thread:n,worktree:r,settings:a,project:o,scroll:s,draft:c,dispatch:l,refs:u,sourceControl:d,persistSettings:f,composerHandle:p,formatOutgoingPrompt:m}=e,{api:h,beginLocalDispatch:g,resetLocalDispatch:_,setOptimisticUserMessages:v,setThreadError:y}=l;u.sendInFlightRef.current=!0,g({preparingWorktree:!!r.baseBranchForWorktree});let b=[...t.images],x=[...t.sendableTerminalContexts],S=[...t.sourceControlContexts],C=e.messageId??ao(),w=new Date().toISOString(),T=$L({composer:t,formatOutgoingPrompt:m}),E=eR(b),D=b.map(e=>({type:`image`,id:e.id,name:e.name,mimeType:e.mimeType,sizeBytes:e.sizeBytes,previewUrl:e.previewUrl}));if(await s.scrollToEndBeforeOptimistic(),v(e=>[...e,{id:C,role:`user`,text:T,...D.length>0?{attachments:D}:{},createdAt:w,streaming:!1}]),s.scrollToEndAfterOptimistic(),y(n.threadId,null),c.setComposerDraftTokenMode(i(c.environmentId,n.threadId),a.tokenMode),n.isLocalDraftThread&&c.setDraftThreadContext(c.composerDraftTarget,{tokenMode:a.tokenMode}),t.expiredTerminalContextCount>0){let e=wd(t.expiredTerminalContextCount,`omitted`);ki.add(ks({type:`warning`,title:e.title,description:e.description}))}u.promptRef.current=``,c.clearComposerDraftContent(c.composerDraftTarget),c.setComposerDraftTokenMode(c.composerDraftTarget,a.tokenMode),p.readComposer()?.resetCursorState();let O=!1;await(async()=>{let i=null;if(b.length>0){let e=b[0];e&&(i=e.name)}let s=su(xd({trimmedPrompt:t.trimmedPrompt,firstImageName:i,firstTerminalContextLabel:x.length>0?Rt(x[0]):null})),c=o.defaultModelSelection?.model??null,l=zt({selectedModelSelection:t.selectedModelSelection,selectedModel:t.selectedModel,defaultModel:c}),u=await E,p=await Td(S,d),m=sn({isLocalDraftThread:n.isLocalDraftThread,baseBranchForWorktree:r.baseBranchForWorktree,shouldMaterializeLegacyBranchWorktree:r.shouldMaterializeLegacyBranchWorktree,projectId:o.projectId,projectCwd:o.projectCwd,title:s,threadCreateModelSelection:l,runtimeMode:a.runtimeMode,interactionMode:a.interactionMode,tokenMode:a.tokenMode,activeThreadBranch:n.activeThreadBranch,worktreePath:n.worktreePath,threadCreatedAt:n.createdAt}),_=e.prepareForDispatch?await e.prepareForDispatch():null;await $t({api:h,threadId:_?.threadId??n.threadId,isFirstMessage:_?.isFirstMessage??n.isFirstMessage,isServerThread:_?.isServerThread??n.isServerThread,title:s,messageId:C,outgoingMessageText:T,turnAttachments:u,modelSelection:t.selectedModelSelection,runtimeMode:a.runtimeMode,interactionMode:a.interactionMode,tokenMode:a.tokenMode,bootstrap:_?void 0:m,sourceControlContexts:p,createdAt:w,newCommandId:no,beginLocalDispatch:g,persistThreadSettingsForNextTurn:f.persistThreadSettingsForNextTurn}),O=!0})().catch(async e=>{QL({refs:u,composerHandle:p,dispatch:{setOptimisticUserMessages:v},draft:c,messageId:C,promptSnapshot:t.prompt,imagesSnapshot:b,terminalContextsSnapshot:x}),y(n.threadId,e instanceof Error?e.message:`Failed to send message.`)}),u.sendInFlightRef.current=!1,O||_()}function nR(e){return Ne({trimmedPrompt:e.composer.trimmedPrompt,imageCount:e.composer.images.length,terminalContextCount:e.composer.sendableTerminalContexts.length})}var rR=G(`inline-flex size-6 shrink-0 items-center justify-center rounded-md text-muted-foreground/80`,`transition-colors hover:text-foreground disabled:pointer-events-none disabled:opacity-40`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring`),iR=(0,q.memo)(function(e){let t=(0,J.c)(23),{messages:n,onRemove:r,onMove:i,showSteerAction:a,steeringIds:o,getSteerUnavailableReason:s,onSteer:c}=e;if(n.length===0)return null;let l;t[0]===n.length?l=t[1]:(l=(0,Y.jsxs)(`div`,{className:`px-1.5 pb-1 text-[11px] font-medium uppercase tracking-wide text-muted-foreground`,children:[`Queued · `,n.length]}),t[0]=n.length,t[1]=l);let u;if(t[2]!==s||t[3]!==n||t[4]!==i||t[5]!==r||t[6]!==c||t[7]!==a||t[8]!==o){let e;t[10]!==s||t[11]!==n.length||t[12]!==i||t[13]!==r||t[14]!==c||t[15]!==a||t[16]!==o?(e=(e,t)=>{let l=nR(e),u=`queued message ${t+1} of ${n.length}: ${l}`,d=s(e),f=o.includes(e.id);return(0,Y.jsxs)(`li`,{className:`flex items-center gap-1 rounded-md px-1.5 py-1 hover:bg-muted/50`,children:[(0,Y.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-xs text-foreground`,title:l,children:l}),a?(0,Y.jsxs)(`button`,{type:`button`,className:G(rR,`w-auto gap-1 px-1.5 text-[11px]`),disabled:d!==null||f,onClick:()=>c(e),"aria-label":`Steer ${u} into the active turn`,title:d??`Send this message into the active turn`,children:[f?(0,Y.jsx)(Yr,{className:`size-3 animate-spin`}):(0,Y.jsx)(vl,{className:`size-3`}),`Steer`]}):null,(0,Y.jsx)(`button`,{type:`button`,className:rR,disabled:t===0,onClick:()=>i(e.id,`up`),"aria-label":`Move ${u} up`,children:(0,Y.jsx)(ii,{className:`size-3.5`})}),(0,Y.jsx)(`button`,{type:`button`,className:rR,disabled:t===n.length-1,onClick:()=>i(e.id,`down`),"aria-label":`Move ${u} down`,children:(0,Y.jsx)(Xr,{className:`size-3.5`})}),(0,Y.jsx)(`button`,{type:`button`,className:rR,onClick:()=>r(e.id),"aria-label":`Remove ${u}`,children:(0,Y.jsx)(Qa,{className:`size-3.5`})})]},e.id)},t[10]=s,t[11]=n.length,t[12]=i,t[13]=r,t[14]=c,t[15]=a,t[16]=o,t[17]=e):e=t[17],u=n.map(e),t[2]=s,t[3]=n,t[4]=i,t[5]=r,t[6]=c,t[7]=a,t[8]=o,t[9]=u}else u=t[9];let d;t[18]===u?d=t[19]:(d=(0,Y.jsx)(`ul`,{className:`flex flex-col gap-0.5`,children:u}),t[18]=u,t[19]=d);let f;return t[20]!==l||t[21]!==d?(f=(0,Y.jsxs)(`div`,{className:`mb-2 rounded-lg border border-border/60 bg-muted/30 p-1.5`,children:[l,d]}),t[20]=l,t[21]=d,t[22]=f):f=t[22],f});function aR(e){let t=(0,J.c)(11),n;t[0]===e.open?n=t[1]:(n=Ns({active:e.open,containIntrinsicSize:`28rem 100vh`}),t[0]=e.open,t[1]=n);let r=n,i;t[2]===e?i=t[3]:(i=t=>{t||e.onClose()},t[2]=e,t[3]=i);let a;t[4]!==r||t[5]!==e.children?(a=(0,Y.jsx)(Fs,{side:`right`,showCloseButton:!1,keepMounted:!0,className:ou,children:(0,Y.jsx)(`div`,{className:`flex min-h-0 w-full flex-1`,style:r,children:e.children})}),t[4]=r,t[5]=e.children,t[6]=a):a=t[6];let o;return t[7]!==e.open||t[8]!==i||t[9]!==a?(o=(0,Y.jsx)(Is,{open:e.open,onOpenChange:i,children:a}),t[7]=e.open,t[8]=i,t[9]=a,t[10]=o):o=t[10],o}var oR=[],sR=[],cR=[],lR=Object.freeze([]),uR=`\0`,dR=Object.freeze([]),fR=Object.freeze([]);function pR(e){let t=[`${e.length}`];for(let n of e){t.push(n.instanceId,n.driver,n.displayName??``,n.accentColor??``,n.badgeLabel??``,n.continuation?.groupKey??``,n.showInteractionModeToggle?`1`:`0`,n.supportsAskMode?`1`:`0`,n.supportsTurnSteering?`1`:`0`,n.enabled?`1`:`0`,n.status,n.installed?`1`:`0`,n.availability??``,n.unavailableReason??``,n.auth.status,n.auth.type??``,n.auth.label??``,n.auth.email??``,n.message??``);for(let e of n.models)t.push(`model`,e.slug,e.name,e.shortName??``,e.subProvider??``,e.isCustom?`1`:`0`,JSON.stringify(e.capabilities)??``);for(let e of n.slashCommands)t.push(`command`,e.name,e.description??``,e.input?.hint??``);for(let e of n.skills)t.push(`skill`,e.name,e.path,e.enabled?`1`:`0`,e.scope??``,e.displayName??``,e.shortDescription??``,e.description??``)}return t.join(uR)}function mR(e,t){let n=pR(e);if(n===t.key)return t.snapshot;let r=e;return t.key=n,t.snapshot=r,r}function hR(e){let t=it(e.models,e.model,e.provider),n=xt(t,e.effort);return gn(e.text,n)}function gR(e){return typeof Element>`u`?null:e instanceof Element?e:null}function _R(e){return gR(e)?.closest(`[data-chat-composer-form="true"], [data-thread-message-search="true"]`)!==null}function vR(e){return!!(e.type!==`keydown`||e.isComposing||Ms()||Oo(e.target)||To()||Eo(e.target)&&!_R(e.target))}function yR(e){ei(`ChatView`);let t=js(S.dispatchCommand),n=js(I.terminalOpen),{environmentId:r,threadId:a,routeKind:c,onDiffPanelOpen:l,onPreviewPanelOpen:u,onTerminalPanelOpen:p,onSimulatorPanelOpen:m,onAgentPanelOpen:h,onToggleWorkspacePanel:g,reserveTitleBarControlInset:_=!0}=e,v=c===`draft`?e.draftId:null,x=(0,q.useMemo)(()=>i(r,a),[r,a]),w=(0,q.useMemo)(()=>f(x),[x]),E=c===`server`?x:e.draftId,D=oe((0,q.useMemo)(()=>le(c===`server`?x:null),[c,x])),O=oe(e=>e.setThreadError),k=wr(e=>e.markThreadVisited),j=wr(e=>e.alwaysUseBuildMode),M=wr(e=>c===`server`?e.threadLastVisitedAtById[w]:void 0),N=fe(),F=Dr(),L=In(),R=qt(e=>e.setStickyModelSelection),z=N.timestampFormat,ne=N.autoOpenPlanSidebar,re=Zn(),ae=Cr(e=>e.openSettings),H=Rn({strict:!1,select:e=>Jn(e)}),{resolvedTheme:ce}=Uc(),ue=qt(e=>e.getComposerDraft(E)?.runtimeMode??null),de=qt(e=>e.getComposerDraft(E)?.interactionMode??null),pe=qt(e=>e.getComposerDraft(E)?.tokenMode??null),ge=qt(e=>e.getComposerDraft(E)?.activeProvider??null),ve=qt(e=>e.setPrompt),be=qt(e=>e.addImages),xe=qt(e=>e.setTerminalContexts),Se=qt(e=>e.setModelSelection),Ce=qt(e=>e.setRuntimeMode),we=qt(e=>e.setInteractionMode),je=qt(e=>e.setTokenMode),Me=qt(e=>e.clearComposerContent),Ne=qt(e=>e.setDraftThreadContext),Fe=qt(e=>e.clearDraftThread),Ie=qt(e=>e.getDraftSessionByLogicalProjectKey),Re=qt(e=>e.getDraftSession),Be=qt(e=>e.setLogicalProjectDraftThreadId),Ve=qt(e=>c===`server`?e.getDraftSessionByRef(x):v?e.getDraftSession(v):null),Ue=(0,q.useRef)(``),We=(0,q.useRef)([]),Ge=(0,q.useRef)([]),Ke=(0,q.useRef)(null),Je=As()??Ke,nt=(0,q.useCallback)(()=>Je.current,[Je]),[it,at]=(0,q.useState)(!1),[ot,st]=(0,q.useState)(null),[ct,lt]=(0,q.useState)([]),[dt,ft]=(0,q.useState)(!1),[pt,gt]=(0,q.useState)(``),[_t,vt]=(0,q.useState)(0),[yt,bt]=(0,q.useState)(0),[xt,Ct]=(0,q.useState)(null),[wt,Tt]=(0,q.useState)([]),[Et]=rt(pt,{wait:180}),Dt=(0,q.useRef)(ct);Dt.current=ct;let[Ot,kt]=(0,q.useState)({}),[At,jt]=(0,q.useState)(!1),[Mt,Nt]=(0,q.useState)(!0),[Pt,Ft]=(0,q.useState)(!1),[Lt,Rt]=(0,q.useState)(!1),zt=ni(au),Bt=ni(Ps),Ht=Ls(),Ut=Gc(),Wt=(0,q.useRef)(Ht);Wt.current=Ht;let Gt=(0,q.useRef)(zt);Gt.current=zt;let[Jt,Yt]=(0,q.useState)(null),Xt=(0,q.useCallback)((e,t)=>{Wt.current!==`phone`&&(Nt(!1),Yt({marker:e,trigger:t}))},[]),Zt=(0,q.useCallback)(()=>{Yt(e=>(e&&requestAnimationFrame(()=>e.trigger.focus({preventScroll:!0})),null))},[]),Qt=j&&Ht!==`phone`,$t=(0,q.useRef)(null),en=(0,q.useRef)(!1),[tn,rn]=(0,q.useState)(0),[an,on]=(0,q.useState)(null),[sn,cn]=(0,q.useState)(!1),un=(0,q.useRef)(sn);un.current=sn;let[dn,pn]=(0,q.useState)(`prs`),[mn,hn]=(0,q.useState)(null),[gn,yn]=(0,q.useState)(),[bn,xn]=vn(ud,{},dd),Sn=(0,q.useRef)(null),Cn=(0,q.useRef)(!0),[wn,Tn]=(0,q.useState)(!0),En=(0,q.useRef)(!1),Dn=(0,q.useRef)({}),On=me(e=>Xe(e.terminalStateByThreadKey,x)),kn=me($a(e=>Object.entries(e.terminalStateByThreadKey).flatMap(([e,t])=>t.terminalOpen?[e]:[]))),Mn=me(e=>e.setTerminalOpen),Nn=me(e=>e.splitTerminal),zn=me(e=>e.newTerminal),Bn=me(e=>e.setActiveTerminal),Vn=me(e=>e.closeTerminal),Wn=oe($a(e=>se(e).map(e=>f(i(e.environmentId,e.id))))),Gn=me(e=>e.terminalLaunchContextByThreadKey[f(x)]??null),qn=me(e=>e.clearTerminalLaunchContext),Yn=qt(e=>e.draftThreadsByThreadKey),Xn=(0,q.useMemo)(()=>Object.values(Yn).map(e=>f(i(e.environmentId,e.threadId))),[Yn]),[Qn,$n]=(0,q.useState)([]),er=(0,q.useMemo)(()=>Qn.flatMap(e=>{let t=s(e);return t?[{key:e,threadRef:t}]:[]}),[Qn]),tr=Ve?o(Ve.environmentId,Ve.projectId):null,nr=oe((0,q.useMemo)(()=>te(tr),[tr])),rr=c===`server`&&D?null:(v?Ot[v]:null)??null,ir=(0,q.useMemo)(()=>Ve?pd(a,Ve,nr?.defaultModelSelection??{instanceId:T.make(`codex`),model:`gpt-5.6-terra`},rr):void 0,[Ve,nr?.defaultModelSelection,rr,a]),ar=c===`server`&&D!==void 0,W=ar?D:ir;(0,q.useEffect)(()=>{Yt(null)},[W?.id]);let or=W?.id??null,sr=(0,q.useDeferredValue)(or)===or,cr=ue??W?.runtimeMode??`full-access`,lr=Qt?nn:de??W?.interactionMode??`default`,ur=pe??W?.tokenMode??N.defaultAgentTokenMode??`balanced`,dr=!ar&&ir!==void 0,fr=dr,pr=H.diff===`1`,mr=e.workspacePanelOpen??Kn(H),hr=W?.id??null,gr=(0,q.useCallback)((e,t)=>{if(!e)return;let n=et(t);if(md({serverThread:D,routeThreadRef:x,targetThreadId:e})){O(x,n);return}let r=v??e;kt(e=>(e[r]??null)===n?e:{...e,[r]:n})},[v,x,D,O]),{interruptTurn:_r,respondToApproval:vr,respondToUserInput:yr,revertToTurnCount:br,respondingRequestIds:xr,respondingUserInputRequestIds:Sr,isRevertingCheckpoint:kr}=XL({environmentId:r,activeThreadId:hr,setThreadError:gr}),Ar=(0,q.useMemo)(()=>W?i(W.environmentId,W.id):null,[W]),jr=Ar?f(Ar):null,Nr=oe(e=>Ar?e.environmentStateById[Ar.environmentId]?.threadHistoryByThreadId?.[Ar.threadId]?.messages:void 0),Pr=oe(e=>Ar?e.environmentStateById[Ar.environmentId]?.threadHistoryLoadByThreadId?.[Ar.threadId]?.messages:void 0),Fr=(0,q.useCallback)(()=>{!Ar||!Nr||qe({environmentId:Ar.environmentId,threadId:Ar.threadId,collection:`messages`,page:Nr,limit:150}).catch(()=>void 0)},[Nr,Ar]);(0,q.useEffect)(()=>{let e=H.messageId;!Ar||!e||!Nr||W?.messages.some(t=>t.id===e)||ke({environmentId:Ar.environmentId,threadId:Ar.threadId,messageId:e,limit:101}).catch(()=>void 0)},[W?.messages,Nr,Ar,H.messageId]);let Ir=Oe(e=>e.enqueue),Lr=Oe(e=>e.remove),Rr=Oe(e=>e.move),zr=Oe(e=>e.dequeue),Br=Oe(e=>e.beginSteer),Vr=Oe(e=>e.endSteer),Hr=Oe(e=>jr?e.queuesByThreadKey[jr]??dR:dR),Ur=Oe(e=>jr?e.steeringIdsByThreadKey[jr]??fR:fR),Wr=(0,q.useCallback)(e=>{if(!jr)return;let t=Oe.getState().queuesByThreadKey[jr]?.find(t=>t.id===e);if(t)for(let e of t.composer.images)e.previewUrl.startsWith(`blob:`)&&URL.revokeObjectURL(e.previewUrl);Lr(jr,e)},[jr,Lr]),Gr=(0,q.useCallback)((e,t)=>{jr&&Rr(jr,e,t)},[jr,Rr]);(0,q.useEffect)(()=>{ft(!1),gt(``),bt(0),Ct(null)},[jr]);let Kr=(0,q.useMemo)(()=>{let e=new Set([...Wn,...Xn]);return kn.filter(t=>e.has(t))},[Xn,kn,Wn]),qr=W?.latestTurn??null,Jr=RL((0,q.useMemo)(()=>{let e=[];W?.id&&e.push(W.id);let t=qr?.sourceProposedPlan?.threadId;return t&&t!==W?.id&&e.push(t),e},[qr?.sourceProposedPlan?.threadId,W?.id]));(0,q.useEffect)(()=>{$n(e=>{let t=hd({currentThreadIds:e,openThreadIds:Kr,activeThreadId:jr,activeThreadTerminalOpen:!!(jr&&On.terminalOpen),maxHiddenThreadCount:10});return e.length===t.length&&e.every((e,n)=>e===t[n])?e:t})},[jr,Kr,On.terminalOpen]);let Yr=go(qr,W?.session??null),Zr=W?o(W.environmentId,W.projectId):null,Qr=oe((0,q.useMemo)(()=>te(Zr),[Zr])),$r=oe((0,q.useMemo)(()=>e=>{if(!W||!W.environmentId)return null;let t=W.worktreeId;if(!t)return null;let n=e.environmentStateById[W.environmentId];return n?.worktreeById?n.worktreeById[t]??null:null},[W?.environmentId,W?.worktreeId])),[ri,ii]=(0,q.useState)(null),ai=(0,q.useCallback)(e=>{ii(e)},[]),oi=(0,q.useCallback)(e=>{e||ii(null)},[]),si=(0,q.useMemo)(()=>zN(),[]),ci=W?.worktreeId,li=W?.worktreePath,ui=(0,q.useMemo)(()=>{if(!Zr)return[];let e=[];for(let t of Object.values(Yn))t.promotedTo==null&&t.environmentId===Zr.environmentId&&t.projectId===Zr.projectId&&e.push(LN(t));return e},[Yn,Zr]),di=oe(e=>{if(!Zr||!W)return lR;let t=U(e,Zr),n=ui.length>0?[...t,...ui]:t;return si(n,{worktreeId:ci??null,worktreePath:li??null})}),fi=W?f(i(W.environmentId,W.id)):null,pi=(0,q.useCallback)(e=>{let t=s(e);t&&(ti(e),setTimeout(()=>{re({to:`/$environmentId/$threadId`,params:{environmentId:t.environmentId,threadId:t.threadId}})},0))},[re]);IN({activeWorktreeSessionTabs:di,activeSessionTabKey:fi}),(0,q.useEffect)(()=>{let e=Fn(r,a);if(c!==`server`)return e;let t=Pe(r,a);return()=>{e(),t()}},[r,c,a]);let mi=oe($a(B)),hi=tt(),gi=Qe(e=>e.byId),_i=Ee(e=>e.byId),yi=W&&W.environmentId!==hi?gi[W.environmentId]??null:null,bi=yi?_i[yi.environmentId]??null:null,xi=yi?bi?.connectionState??`disconnected`:`connected`,Si=yi!==null&&xi!==`connected`,wi=yi?.environmentId??null,Ti=yi?Mr({isPrimary:!1,environmentId:yi.environmentId,runtimeLabel:bi?.descriptor?.label??null,savedLabel:yi.label}):null,Ei=(0,q.useMemo)(()=>!Si||!Ti||!wi?null:{environmentId:wi,label:Ti,connectionState:xi===`connecting`||xi===`error`?xi:`disconnected`},[Si,Ti,xi,wi]),[Di,Oi]=(0,q.useState)(null),Ai=(0,q.useCallback)(async(e,t)=>{Oi(e);try{await He(e),ki.add({type:`success`,title:`Environment reconnected`,description:`${t} is ready.`})}catch(e){ki.add(ks({type:`error`,title:`Could not reconnect environment`,description:e instanceof Error?e.message:`Failed to reconnect.`}))}finally{Oi(null)}},[]),ji=fe(e=>({sidebarProjectGroupingMode:e.sidebarProjectGroupingMode,sidebarProjectGroupingOverrides:e.sidebarProjectGroupingOverrides})),Mi=(0,q.useMemo)(()=>{if(!Qr)return[];let e=Te(Qr,ji),t=mi.filter(t=>Te(t,ji)===e),n=new Set,r=[];for(let e of t){if(n.has(e.environmentId))continue;n.add(e.environmentId);let t=e.environmentId===hi,i=gi[e.environmentId],a=_i[e.environmentId],o=F.machines.find(t=>t.environmentId===e.environmentId),s=L.machines.find(t=>t.environmentId===e.environmentId),c=L.status===`signed-out`?o:s,l=c?.label??Mr({isPrimary:t,environmentId:e.environmentId,runtimeLabel:a?.descriptor?.label??null,savedLabel:i?.label??null});r.push({environmentId:e.environmentId,projectId:e.id,label:l,isPrimary:t,...F.status===`ready`||L.status===`ready`?{disabled:c?.canMutate!==!0}:{}})}return r.sort((e,t)=>e.isPrimary===t.isPrimary?e.label.localeCompare(t.label):e.isPrimary?-1:1),r},[Qr,mi,F,L,ji,hi,gi,_i]),Ni=Mi.length>1,Pi=(0,q.useCallback)(e=>{fr&&on({initialReference:e??null,key:Date.now()})},[fr]),Fi=(0,q.useCallback)(()=>{on(null)},[]),Ii=(0,q.useCallback)(async e=>{if(!Qr)throw Error(`No active project is available for this pull request.`);let t=o(Qr.environmentId,Qr.id),n=Te(Qr,ji),r=Ie(n);if(r)return Ne(r.draftId,e),Be(n,t,r.draftId,{threadId:r.threadId,...e}),(c!==`draft`||v!==r.draftId)&&await re({to:`/draft/$draftId`,params:jn(r.draftId)}),r.threadId;let i=c===`draft`&&v?Re(v):null;if(!ar&&i?.logicalProjectKey===n&&v)return Ne(v,e),Be(n,t,v,{threadId:i.threadId,createdAt:i.createdAt,runtimeMode:i.runtimeMode,interactionMode:i.interactionMode,tokenMode:i.tokenMode??`balanced`,...e}),i.threadId;let a=eo(),s=to();return Be(n,t,a,{threadId:s,createdAt:new Date().toISOString(),runtimeMode:Kt,interactionMode:nn,tokenMode:N.defaultAgentTokenMode??`balanced`,...e}),await re({to:`/draft/$draftId`,params:jn(a)}),s},[Qr,v,Re,Ie,ar,re,ji,c,Ne,Be,N.defaultAgentTokenMode]),Li=(0,q.useCallback)(async e=>{await Ii({branch:e.branch,worktreePath:e.worktreePath,envMode:e.worktreePath?`worktree`:`local`})},[Ii]);(0,q.useEffect)(()=>{if(!D?.id||!Yr||!qr?.completedAt)return;let e=Date.parse(qr.completedAt);if(Number.isNaN(e))return;let t=M?Date.parse(M):NaN;!Number.isNaN(t)&&t>=e||k(f(i(D.environmentId,D.id)),qr.completedAt)},[qr?.completedAt,M,Yr,k,D?.environmentId,D?.id]);let zi=ge??null,Bi=W?.modelSelection.instanceId??Qr?.defaultModelSelection?.instanceId??null,Vi=_e(),Ui=Ee(e=>W?.environmentId?e.byId[W.environmentId]:null),Wi=hi&&W?.environmentId===hi?Vi:Ui?.serverConfig??Vi,Gi=Ze(Wi),Ki=Gi&&W?Ye(W.environmentId,Gi):null,[qi,Ji]=(0,q.useState)(null),Yi=Ki===qi||De(Ki),Xi=Gi!==null&&Ki!==null&&!Yi,Zi=Object.keys(gi).length>0,Qi=(0,q.useMemo)(()=>{if(!Zi||!W)return`server`;let e=W.environmentId===hi,t=gi[W.environmentId],n=_i[W.environmentId];return`${Mr({isPrimary:e,environmentId:W.environmentId,runtimeLabel:n?.descriptor?.label??Wi?.environment.label??null,savedLabel:t?.label??null})} server`},[W,Zi,hi,gi,_i,Wi?.environment.label]),$i=(0,q.useMemo)(()=>{let e=[];return t.hosted&&!t.allowed&&e.push({id:`hosted-dispatch-unavailable`,variant:`warning`,icon:(0,Y.jsx)(Ya,{}),title:`Read-only hosted session`,description:t.reason??`Commands are unavailable on this connection.`}),Ei&&e.push({id:`environment-unavailable:${Ei.environmentId}`,variant:Ei.connectionState===`error`?`error`:`warning`,icon:(0,Y.jsx)(Oa,{}),title:(0,Y.jsxs)(Y.Fragment,{children:[Ei.label,` is`,` `,Ei.connectionState===`connecting`?`connecting`:`disconnected`]}),description:`Reconnect this environment before sending messages or running actions.`,actions:(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(K,{size:`xs`,disabled:Ei.connectionState===`connecting`||Di===Ei.environmentId,onClick:()=>void Ai(Ei.environmentId,Ei.label),children:Ei.connectionState===`connecting`||Di===Ei.environmentId?`Reconnecting...`:`Reconnect`}),(0,Y.jsx)(K,{size:`xs`,variant:`outline`,onClick:()=>ae(`connections`),children:`Connections`})]})}),Xi&&Gi&&Ki&&e.push({id:`version-mismatch:${Ki}`,variant:`warning`,icon:(0,Y.jsx)(Ya,{}),title:`Client and server versions differ`,description:(0,Y.jsxs)(Y.Fragment,{children:[`Client `,Gi.clientVersion,` is connected to `,Qi,` `,Gi.serverVersion,`. Sync them if RPC calls or reconnects fail.`]}),dismissLabel:`Dismiss version mismatch warning`,onDismiss:()=>{$e(Ki),Ji(Ki)}}),e},[t.allowed,t.hosted,t.reason,Ei,Ai,ae,Di,Xi,Gi,Ki,Qi]),ea=W!==void 0&&W.messages.length===0&&ct.length===0,ta=Wi?.providers??sR,na=(0,q.useRef)({key:``,snapshot:sR}),ra=(0,q.useMemo)(()=>mR(ta,na.current),[ta]),ia=W?.session?.providerInstanceId??null,aa=so(W?.session??null),sa=N.notifyOnTurnCompleteWhenUnfocused,ca=(0,q.useRef)(new Set),la=(0,q.useRef)(new Set);(0,q.useEffect)(()=>{let e=qr?.turnId;if(!e)return;if(aa===`running`){ca.current.add(e);return}if(!D?.id||!Yr||!qr?.completedAt||!ca.current.has(e)||la.current.has(e)||(la.current.add(e),!sa)||typeof document<`u`&&document.hasFocus())return;let t=typeof window<`u`?window.desktopBridge:void 0;if(!t?.notifyTurnComplete)return;let n=W?.title?.trim()?W.title:`Ryco`;t.notifyTurnComplete({threadId:D.id,environmentId:D.environmentId,title:n,body:`The agent finished responding.`}).catch(()=>void 0)},[aa,Yr,qr?.turnId,qr?.completedAt,sa,D?.id,D?.environmentId,W?.title]);let ua=W?.activities??oR,{workLogEntries:da,contextCompactionEntries:fa,contextHandoffEntries:pa,pendingApprovals:ha,pendingUserInputs:ga,activePlan:_a}=(0,q.useMemo)(()=>ho(ua,qr?.turnId),[qr?.turnId,ua]),va=aa!==`disconnected`&&W?.session?.orchestrationStatus!==`stopped`&&W?.session?.orchestrationStatus!==`interrupted`&&W?.session?.orchestrationStatus!==`error`,ya=(0,q.useMemo)(()=>vo(ua,{sessionLive:va,parentTurnState:qr?.state??null}),[qr?.state,va,ua]),ba=(0,q.useMemo)(()=>mo({activities:ua,transcriptSubagents:ya,sessionLive:va}),[va,ua,ya]),{activePendingUserInput:Ca,activePendingDraftAnswers:wa,activePendingQuestionIndex:Ea,activePendingProgress:Da,activePendingResolvedAnswers:ka,activePendingIsResponding:Aa,onSelectActivePendingUserInputOption:ja,onChangeActivePendingUserInputCustomAnswer:Ma,onAdvanceActivePendingUserInput:Na,onPreviousActivePendingUserInputQuestion:Pa}=DL({pendingUserInputs:ga,respondingUserInputRequestIds:Sr,readComposer:nt,promptRef:Ue,onRespondToUserInput:yr}),Fa=(0,q.useMemo)(()=>Yr?_o(W?.proposedPlans??[],qr?.turnId??null):null,[qr?.turnId,W?.proposedPlans,Yr]),Ia=(0,q.useMemo)(()=>co({threads:Jr,latestTurn:qr,latestTurnSettled:Yr,threadId:W?.id??null}),[qr,W?.id,Yr,Jr]),La=`Overview`,Ra=ga.length===0&&lr===`plan`&&Yr&&lo(Fa),za=ha[0]??null,{beginLocalDispatch:Ba,resetLocalDispatch:Va,localDispatchStartedAt:Ha,isPreparingWorktree:Ua,isSendBusy:Wa}=zL({activeThread:W,activeLatestTurn:qr,phase:aa,activePendingApproval:za?.requestId??null,activePendingUserInput:Ca?.requestId??null,threadError:W?.error}),Ga=(0,q.useMemo)(()=>W?.session?.provider??ta.find(e=>e.instanceId===W?.modelSelection.instanceId)?.driver??null,[W?.modelSelection.instanceId,W?.session?.provider,ta]),Ka=Ed(W),qa=W?.session?.orchestrationStatus??null,Ja=(0,q.useMemo)(()=>fn({threadStarted:Ka,canonicalProvider:Ga,phase:aa,orchestrationStatus:qa,isConnecting:At,isSendBusy:Wa,isPreparingWorktree:Ua,hasPendingApproval:ha.length>0,hasPendingUserInput:ga.length>0,hasQueuedMessage:Hr.length>0,isRevertingCheckpoint:kr,mutationAllowed:t.allowed,environmentAvailable:!Si,isPhoneTier:Ht===`phone`}),[Si,Ka,Ga,t.allowed,At,Ua,kr,Wa,ha.length,ga.length,aa,Ht,Hr.length,qa]),Xa=Ja.lockedProvider,Za=ta.find(e=>e.instanceId===zi)?.driver??ln(ta,zi??Bi??A.make(`codex`)),Qa=Xa??Za,io=aa===`running`||Wa||At||kr,oo=oe(e=>V(e,Ar)),uo=!io&&W?oo?.backgroundLiveness??null:null,[po,yo]=(0,q.useState)(!1);(0,q.useEffect)(()=>{uo===null&&yo(!1)},[uo]),(0,q.useEffect)(()=>{yo(!1)},[hr]);let bo=(0,q.useCallback)(()=>{yo(!0),(async()=>{try{await _r()}catch(e){yo(!1),hr&&gr(hr,e instanceof Error?e.message:`Failed to stop background work.`)}})()},[hr,_r,gr]),xo=fo(qr,W?.session??null,Ha),So=W?.messages,{attachmentPreviewHandoffByMessageId:To,handoffAttachmentPreviews:Eo}=UL({serverMessages:So,optimisticUserMessagesRef:Dt}),Oo=(0,q.useMemo)(()=>{let e=So??[],t=Object.keys(To).length===0?e:e.map(e=>{if(e.role!==`user`||!e.attachments||e.attachments.length===0)return e;let t=To[e.id];if(!t||t.length===0)return e;let n=!1,r=0,i=e.attachments.map(e=>{if(e.type!==`image`)return e;let i=t[r];return r+=1,!i||e.previewUrl===i?e:(n=!0,{...e,previewUrl:i})});return n?{...e,attachments:i}:e});if(ct.length===0)return t;let n=new Set(t.map(e=>e.id)),r=ct.filter(e=>!n.has(e.id));return r.length===0?t:[...t,...r]},[So,To,ct]),ko=(0,q.useRef)({threadId:null,index:zl()}),Ao=(0,q.useMemo)(()=>(ko.current.threadId!==hr&&(ko.current={threadId:hr,index:zl()}),ko.current.index.update({messages:Oo,proposedPlans:W?.proposedPlans??[],workEntries:da,contextCompactionEntries:fa,contextHandoffEntries:pa})),[hr,W?.proposedPlans,fa,pa,Oo,da]),Mo=jd({hasThread:W!==void 0,messageCount:W?.messages.length??0,optimisticMessageCount:ct.length,timelineEntryCount:Ao.length,presentationTier:Ht}),No=(0,q.useMemo)(()=>Sa({timelineEntries:Ao,query:pt}),[pt,Ao]);(0,q.useEffect)(()=>{let e=Et.trim();if(!dt||!Ar||e.length<2){Tt([]);return}let t=Le(Ar.environmentId);if(!t){Tt([]);return}let n=!1;return t.orchestration.searchThreadMessages({query:e,threadId:Ar.threadId,limit:50}).then(e=>{n||Tt(e)}).catch(()=>{n||Tt([])}),()=>{n=!0}},[Ar,Et,dt]);let Po=(0,q.useMemo)(()=>{let e=new Set(No.map(e=>e.messageId)),t=[];for(let n of wt)e.has(n.messageId)||t.push({id:`server:${n.messageId}`,messageId:n.messageId,occurrenceIndex:No.length+t.length,messageOccurrenceIndex:0,start:0,end:0,text:pt.trim()});return[...No,...t]},[No,wt,pt]),Fo=(0,q.useMemo)(()=>{if(!dt)return new Map;let e=new Map;for(let t of Po){let n=e.get(t.messageId);n?n.push(t):e.set(t.messageId,[t])}return e},[Po,dt]),Io=Po.length,Lo=Ta(yt,Io),Ro=Po[Lo]??null,zo=Ro?.messageId??null,Bo=(0,q.useCallback)(e=>{Ct(t=>({messageId:e,requestId:(t?.requestId??0)+1}))},[]);(0,q.useEffect)(()=>{bt(0)},[jr,pt]),(0,q.useEffect)(()=>{bt(e=>Ta(e,Io))},[Io]),(0,q.useEffect)(()=>{if(!dt||!zo){Ct(null);return}Bo(zo)},[Bo,zo,dt]),(0,q.useEffect)(()=>{!dt||!zo||!Ar||!Nr||W?.messages.some(e=>e.id===zo)||ke({environmentId:Ar.environmentId,threadId:Ar.threadId,messageId:zo,limit:101}).catch(()=>void 0)},[W?.messages,Nr,Ar,zo,dt]);let{turnDiffSummaries:Vo,inferredCheckpointTurnCountByTurnId:Ho}=ma(W),Uo=(0,q.useMemo)(()=>{let e=new Map;for(let t of Vo)t.assistantMessageId&&e.set(t.assistantMessageId,t);return e},[Vo]),Wo=(0,q.useMemo)(()=>vA({timelineEntries:Ao,turnDiffSummaryByAssistantMessageId:Uo,inferredCheckpointTurnCountByTurnId:Ho}),[Ho,Ao,Uo]),Go=(0,q.useMemo)(()=>yA({turnDiffSummaries:Vo,inferredCheckpointTurnCountByTurnId:Ho}),[Ho,Vo]),Ko=Qr?xa({project:{cwd:Qr.cwd},worktreePath:W?.worktreePath??null}):null,qo=ie({environmentId:r,cwd:Ko}),Jo=ye(),{postPushWorkflowWatch:Yo,handlePostPush:Xo,clearWatch:Zo}=gL(),Qo=he(),$o=ee(),es=W?.session?.providerInstanceId??W?.modelSelection.instanceId??Qr?.defaultModelSelection?.instanceId??null,ts=(0,q.useMemo)(()=>{if(es)return ta.find(e=>e.instanceId===es)??null;let e=P(Qa);return ta.find(t=>t.instanceId===e)??null},[es,ta,Qa]);(0,q.useEffect)(()=>{if(c!==`server`||!Ko)return;let e=Tr(r,Ko),t=Ln(r,Ko);return()=>{t(),e()}},[r,Ko,c]),(0,q.useEffect)(()=>{if(c!==`server`)return;let e=Er(r,ts?.instanceId),t=Pn(r,ts?.instanceId);return()=>{t(),e()}},[ts?.instanceId,r,c]);let ns=Qr?.cwd??null,rs=W?.worktreePath??null,is=rs??ns??void 0,as=mn?.threadId===hr?mn:Gn??null,os=qo.data?.isRepo??!0,ss=(0,q.useMemo)(()=>({context:{terminalFocus:!0,terminalOpen:!!On.terminalOpen}}),[On.terminalOpen]),cs=(0,q.useMemo)(()=>Co(Qo,`terminal.toggle`),[Qo]),ls=(0,q.useMemo)(()=>Co(Qo,`terminal.split`,ss),[Qo,ss]),us=(0,q.useMemo)(()=>Co(Qo,`terminal.new`,ss),[Qo,ss]),ds=(0,q.useMemo)(()=>Co(Qo,`terminal.close`,ss),[Qo,ss]),{onOpenReviewPanel:fs,onToggleDiff:ps,onOpenFilesPanel:ms,onOpenTerminalPanel:hs,onOpenSimulatorPanel:gs,onToggleWorkspacePanel:_s,onOpenTurnDiff:vs,onCloseDiff:ys,onOpenAgentsPanel:bs,onOpenSubagentPanel:xs}=AL({navigate:re,environmentId:r,threadId:a,routeKind:c,draftId:v,isServerThread:ar,hasActiveProject:!!Qr,diffOpen:pr,workspacePanelOpen:mr,externalToggleWorkspacePanel:g,onDiffPanelOpen:l,onPreviewPanelOpen:u,onTerminalPanelOpen:p,onSimulatorPanelOpen:m,onAgentPanelOpen:h}),Ss=!!(W&&(W.messages.length>0||W.session!==null&&W.session.status!==`closed`)),Cs=(0,q.useCallback)(e=>{if(Ss||!v)return;let t=Mi.find(t=>t.environmentId===e);!t||t.disabled||Ne(v,{projectRef:o(t.environmentId,t.projectId)})},[v,Ss,Mi,Ne]),ws=L.status===`signed-out`?F.machines.find(e=>e.environmentId===r):L.machines.find(e=>e.environmentId===r),Ts=c===`draft`&&(F.status===`ready`||L.status===`ready`)&&ws?.canMutate!==!0,Es=((On.terminalGroups.find(e=>e.id===On.activeTerminalGroupId)??On.terminalGroups.find(e=>e.terminalIds.includes(On.activeTerminalId))??null)?.terminalIds.length??0)>=4,Ds=(0,q.useCallback)(()=>{Wt.current!==`phone`&&nt()?.focusAtEnd()},[nt]),Os=(0,q.useCallback)(()=>{window.requestAnimationFrame(()=>{Ds()})},[Ds]),Ns=(0,q.useCallback)(()=>{hr&&(ft(!0),vt(e=>e+1))},[hr]),Fs=(0,q.useCallback)(()=>{ft(!1),Ct(null),Os()},[Os]),Is=(0,q.useCallback)(e=>{if(Io===0)return;let t=oa({currentIndex:Lo,matchCount:Io,direction:e});bt(t);let n=Po[t];n&&Bo(n.messageId)},[Bo,Lo,Io,Po]),Rs=(0,q.useCallback)(e=>{nt()?.addTerminalContext(e)},[nt]),zs=(0,q.useCallback)(e=>{Ar&&Mn(Ar,e)},[Ar,Mn]),Bs=(0,q.useCallback)(()=>{!Ar||!n.allowed||zs(!On.terminalOpen)},[Ar,zs,n.allowed,On.terminalOpen]),Vs=(0,q.useCallback)(()=>{if(!Ar||Es||!n.allowed)return;let e=`terminal-${ro()}`;Nn(Ar,e),rn(e=>e+1)},[Ar,Es,Nn,n.allowed]),Hs=(0,q.useCallback)(()=>{if(!Ar||!n.allowed)return;let e=`terminal-${ro()}`;zn(Ar,e),rn(e=>e+1)},[Ar,zn,n.allowed]),Us=(0,q.useCallback)(e=>{let t=Le(r);if(!hr||!t||!n.allowed)return;let i=On.terminalIds.length<=1,a=()=>t.terminal.write({threadId:hr,terminalId:e,data:`exit
27
- `}).catch(()=>void 0);`close`in t.terminal&&typeof t.terminal.close==`function`?(async()=>{i&&await t.terminal.clear({threadId:hr,terminalId:e}).catch(()=>void 0),await t.terminal.close({threadId:hr,terminalId:e,deleteHistory:!0})})().catch(()=>a()):a(),Ar&&Vn(Ar,e),rn(e=>e+1)},[hr,Ar,r,Vn,On.terminalIds.length,n.allowed]),{runProjectScript:Ws,saveProjectScript:Gs,updateProjectScript:Ks,deleteProjectScript:qs}=HL({environmentId:r,activeThread:W,activeThreadId:hr,activeThreadRef:Ar,activeProject:Qr,gitCwd:Ko,terminalState:On,setLastInvokedScriptByProjectId:xn,setTerminalLaunchContext:hn,setTerminalOpen:zs,storeNewTerminal:zn,storeSetActiveTerminal:Bn,setTerminalFocusRequestId:rn,setThreadError:gr}),Js=(0,q.useCallback)(e=>{e!==cr&&(Ce(E,e),dr&&Ne(E,{runtimeMode:e}),Os())},[dr,cr,Os,E,Ce,Ne]),Ys=(0,q.useCallback)(e=>{e!==lr&&(we(E,e),dr&&Ne(E,{interactionMode:e}),Os())},[lr,dr,Os,E,we,Ne]),Xs=(0,q.useCallback)(e=>{e!==ur&&(je(E,e),dr&&Ne(E,{tokenMode:e}),Os())},[E,dr,Os,je,Ne,ur]),Zs=(0,q.useCallback)(()=>{if(Qt)return;let e=Vt(ta,Qa);Ys(lr==="default"?`plan`:lr===`plan`&&e?`ask`:`default`)},[Qt,Ys,lr,ta,Qa]),Qs=(0,q.useCallback)(e=>{Nt(e),$t.current=e?null:_a?.turnId??Ia?.turnId??`__dismissed__`},[_a?.turnId,Ia?.turnId]),$s=(0,q.useCallback)(()=>{Rt(!1),Qs(!1)},[Qs]),ec=(0,q.useCallback)(e=>{if(mr){let t=typeof e==`boolean`?e:!Lt;Rt(t),Qs(t),t&&Ft(!0);return}let t=typeof e==`boolean`?e:Mo&&!Pt?!0:!Mt;Rt(!1),Qs(t),Ft(t)},[Mo,Lt,Pt,Mt,Qs,mr]),tc=(0,q.useCallback)(async e=>{if(!D)return;let t=Le(r);t&&(e.runtimeMode!==D.runtimeMode&&await t.orchestration.dispatchCommand({type:`thread.runtime-mode.set`,commandId:no(),threadId:e.threadId,runtimeMode:e.runtimeMode,createdAt:e.createdAt}),e.interactionMode!==D.interactionMode&&await t.orchestration.dispatchCommand({type:`thread.interaction-mode.set`,commandId:no(),threadId:e.threadId,interactionMode:e.interactionMode,createdAt:e.createdAt}),e.tokenMode!==(D.tokenMode??`balanced`)&&await t.orchestration.dispatchCommand({type:`thread.token-mode.set`,commandId:no(),threadId:e.threadId,tokenMode:e.tokenMode,createdAt:e.createdAt}))},[r,D]),nc=(0,q.useCallback)(async e=>{if(!D||!t.allowed)return!1;let n=Le(r);if(!n)return!1;try{return await n.orchestration.dispatchCommand({type:`thread.goal.set`,commandId:no(),threadId:D.id,...e,createdAt:new Date().toISOString()}),!0}catch(e){return ki.add(ks({type:`error`,title:`Could not update goal`,description:e instanceof Error?e.message:`The goal update failed.`})),!1}},[t.allowed,r,D]),rc=(0,q.useCallback)(()=>{let e=D?.goal?.objective;if(!e)return;let t=`/goal ${e}`;Ue.current=t,ve(E,t),nt()?.resetCursorState({prompt:t,cursor:t.length,detectTrigger:!1}),Os()},[E,nt,Os,D?.goal?.objective,ve]),ic=(0,q.useCallback)(e=>{nc({status:e})},[nc]),ac=(0,q.useCallback)(()=>{if(!D||!t.allowed)return;let e=Le(r);e&&e.orchestration.dispatchCommand({type:`thread.goal.clear`,commandId:no(),threadId:D.id,createdAt:new Date().toISOString()}).catch(e=>{ki.add(ks({type:`error`,title:`Could not clear goal`,description:e instanceof Error?e.message:`The goal could not be cleared.`}))})},[t.allowed,r,D]),oc=(0,q.useCallback)((e=!1)=>{Tn(!0),Sn.current?.scrollToEnd?.({animated:e})},[]),sc=(0,q.useCallback)(()=>{window.requestAnimationFrame(()=>{window.requestAnimationFrame(()=>{Sn.current?.scrollToEnd?.({animated:!1})})})},[]),cc=(0,q.useCallback)(()=>{Tn(!1)},[]),lc=(0,q.useCallback)(()=>{Tn(!0)},[]),uc=(0,q.useRef)(new mt(()=>at(!0),{wait:150})),dc=(0,q.useCallback)(e=>{Cn.current!==e&&(Cn.current=e,e?(uc.current.cancel(),at(!1)):uc.current.maybeExecute())},[]);(0,q.useEffect)(()=>{on(null),Cn.current=!0,Tn(!0),uc.current.cancel(),at(!1);let e=en.current;en.current=!1,Nt(e||!Gt.current&&Wt.current!==`phone`),$t.current=null},[W?.id]),(0,q.useEffect)(()=>{if(!ne||!_a||Mt)return;let e=qr?.turnId??null;if(e&&_a.turnId!==e)return;let t=_a.turnId??Ia?.turnId??`__dismissed__`;if($t.current!==t){if(Wt.current===`phone`){let e=document.activeElement;if(e instanceof HTMLElement&&e.closest(`[data-chat-composer-form="true"]`)!==null){$t.current=t;return}}Nt(!0)}},[_a,qr?.turnId,ne,Mt,Ia?.turnId]),(0,q.useEffect)(()=>{if(!W?.id||On.terminalOpen)return;let e=window.requestAnimationFrame(()=>{Ds()});return()=>{window.cancelAnimationFrame(e)}},[W?.id,Ds,On.terminalOpen]),(0,q.useEffect)(()=>{if(!W?.id||W.messages.length===0)return;let e=new Set(W.messages.map(e=>e.id)),t=ct.filter(t=>e.has(t.id));if(t.length===0)return;let n=window.setTimeout(()=>{lt(t=>t.filter(t=>!e.has(t.id)))},0);for(let e of t){let t=vd(e);if(t.length>0){Eo(e.id,t);continue}_d(e)}return()=>{window.clearTimeout(n)}},[W?.id,W?.messages,Eo,ct]),(0,q.useEffect)(()=>{lt(e=>{for(let t of e)_d(t);return[]}),Va(),st(null)},[v,Va,a]);let fc=(0,q.useCallback)(()=>{st(null)},[]),pc=W?.worktreePath??null,mc=Or({activeWorktreePath:pc,hasServerThread:ar,draftThreadEnvMode:dr?Ve?.envMode:void 0}),hc=!!(ar&&W&&W.messages.length===0&&W.worktreePath===null&&!Ss),gc=hc&&gn!==void 0?gn:W?.branch??null,{sourceControlActions:_c,branchControl:vc}=_L({gitCwd:Ko,activeThreadRef:Ar,routeKind:c,draftId:v,onPostPush:Xo,branchControlThread:W?{environmentId:W.environmentId,id:W.id}:null,isGitRepo:os,canOverrideServerThreadBranch:hc,activeThreadBranch:gc,onActiveThreadBranchOverrideChange:yn,envLocked:Ss,onComposerFocusRequest:Os,canCheckoutPullRequestIntoThread:fr,onCheckoutPullRequestRequest:Pi}),yc=yd({requestedEnvMode:mc,isGitRepo:os});(0,q.useEffect)(()=>{yn(void 0)},[W?.id]),(0,q.useEffect)(()=>{hc||yn(void 0)},[hc]),(0,q.useEffect)(()=>{if(!hr){hn(null),qn(x);return}hn(e=>!e||e.threadId===hr?e:null)},[hr,x,qn]),(0,q.useEffect)(()=>{!hr||!ns||hn(e=>!e||e.threadId!==hr?e:xa({project:{cwd:ns},worktreePath:rs})===e.cwd&&(rs??null)===e.worktreePath?(Ar&&qn(Ar),null):e)},[ns,hr,Ar,rs,qn]),(0,q.useEffect)(()=>{!hr||!ns||!Gn||xa({project:{cwd:ns},worktreePath:rs})===Gn.cwd&&(rs??null)===Gn.worktreePath&&Ar&&qn(Ar)},[ns,hr,Ar,rs,qn,Gn]),(0,q.useEffect)(()=>{On.terminalOpen||(Ar&&qn(Ar),hn(e=>e?.threadId===hr?null:e))},[hr,Ar,qn,On.terminalOpen]),(0,q.useEffect)(()=>{if(!jr)return;let e=Dn.current[jr]??!1,t=!!On.terminalOpen;if(!e&&t){Dn.current[jr]=t,rn(e=>e+1);return}if(e&&!t){Dn.current[jr]=t;let e=window.requestAnimationFrame(()=>{Ds()});return()=>{window.cancelAnimationFrame(e)}}Dn.current[jr]=t},[jr,Ds,On.terminalOpen]),(0,q.useEffect)(()=>{let e=e=>{!hr||e.defaultPrevented||wo(e,Qo,{context:{terminalFocus:Ms(),terminalOpen:!!On.terminalOpen,modelPickerOpen:nt()?.isModelPickerOpen()??!1}})===`thread.find`&&(vR(e)||(e.preventDefault(),e.stopPropagation(),Ns()))};return window.addEventListener(`keydown`,e,!0),()=>window.removeEventListener(`keydown`,e,!0)},[hr,Qo,Ns,nt,On.terminalOpen]),(0,q.useEffect)(()=>{let e=e=>{e.defaultPrevented||jo(e)&&!un.current||Do(e,`p`,{shiftKey:!0})&&(e.preventDefault(),e.stopPropagation(),pn(`prs`),cn(e=>!e))};return window.addEventListener(`keydown`,e,!0),()=>window.removeEventListener(`keydown`,e,!0)},[]);let bc=(0,q.useCallback)(()=>{pn(`prs`),cn(!0)},[]);TL({activeThreadId:hr,keybindings:Qo,terminalOpen:On.terminalOpen,activeTerminalId:On.activeTerminalId,readComposer:nt,activeProject:Qr,toggleTerminalVisibility:Bs,splitTerminal:Vs,closeTerminal:Us,createNewTerminal:Hs,setTerminalOpen:zs,onToggleDiff:ps,onOpenFilesPanel:ms,onOpenReviewPanel:fs,onOpenTerminalPanel:hs,onOpenSimulatorPanel:gs,runProjectScript:Ws});let xc=(0,q.useCallback)(async e=>{await br({thread:W??null,turnCount:e,environmentUnavailable:Si,environmentUnavailableLabel:Ti,turnInProgress:aa===`running`||Wa||At})},[Si,Ti,W,At,Wa,aa,br]),Sc=(0,q.useCallback)(e=>W?It({threadStarted:Ka,policy:Ja,canonicalSelection:W.modelSelection,targetSelection:e}):!1,[W,Ka,Ja]),Cc=(0,q.useCallback)(()=>{ki.add(ks({type:`warning`,title:`Wait for the thread to become idle`,description:Ja.reason===`phone-tier`?`Provider switching stays on the current provider in the web phone view.`:`The staged provider or model was not sent. Try again when this thread is idle.`}))},[Ja.reason]),wc=(0,q.useCallback)(e=>{let n=W?.session?.providerInstanceId,r=n?ra.find(e=>e.instanceId===n):void 0,i=W?.tokenMode??`balanced`,a=W?.interactionMode??`default`;return Ae({mutationReady:t.allowed&&!Si,turnRunning:aa===`running`,activeTurnId:W?.session?.activeTurnId,supportsTurnSteering:r?.supportsTurnSteering===!0,queuedModelSelection:e.composer.selectedModelSelection,activeModelSelection:W?.modelSelection,queuedRuntimeMode:e.settings.runtimeMode,activeRuntimeMode:W?.runtimeMode,queuedInteractionMode:e.settings.interactionMode,activeInteractionMode:a,queuedTokenMode:e.settings.tokenMode,activeTokenMode:i})},[Si,W,ra,t.allowed,aa]),Tc=(0,q.useCallback)(e=>{let t=wc(e);return t.allowed?null:t.reason},[wc]),Ec=(0,q.useCallback)(async e=>{if(!jr||!W)return;let t=wc(e);if(!t.allowed){ki.add(ks({type:`warning`,title:`Cannot steer this message`,description:t.reason}));return}let n=Le(r);if(n){Br(jr,e.id);try{let r=$L({composer:e.composer,formatOutgoingPrompt:hR}),i=du(e.composer.sourceControlContexts),a=i?`${i}\n\n${r}`:r,o=await eR(e.composer.images),s=new Date().toISOString();await n.orchestration.dispatchCommand(ze({commandId:no(),threadId:W.id,expectedTurnId:t.expectedTurnId,messageId:y.make(e.id),text:a,attachments:o,createdAt:e.createdAt??s,requestedAt:s}))}catch(t){Vr(jr,e.id),ki.add(ks({type:`error`,title:`Could not steer message`,description:t instanceof Error?t.message:`The steer request failed.`}))}}},[W,jr,Br,Vr,r,wc]);(0,q.useEffect)(()=>{if(!jr||Ur.length===0)return;let e=new Set(W?.messages.map(e=>String(e.id))??[]);for(let t of Ur)e.has(t)&&Wr(t)},[W?.messages,jr,Wr,Ur]),(0,q.useEffect)(()=>{if(!jr||Ur.length===0)return;let e=new Set(ua.flatMap(e=>{if(e.kind!==`provider.turn.steer.failed`||!e.payload)return[];let t=e.payload.messageId;return typeof t==`string`?[t]:[]}));for(let t of Ur)e.has(t)&&Vr(jr,t)},[jr,Vr,Ur,ua]);let Dc=async(e,n,a)=>{if(!t.allowed)return!1;let o=Le(r);if(!o||!W||!Qr)return!1;if(!Sc(e.selectedModelSelection))return Cc(),!1;let s=await ld({api:o,threadId:W.id,prompt:e.prompt}).catch(()=>({requested:!1,image:null}));if(s.image)e.images.length<8?e={...e,images:[...e.images,s.image]}:(URL.revokeObjectURL(s.image.previewUrl),ki.add(ks({type:`warning`,title:`The simulator screenshot was skipped`,description:`This message already has 8 attachments.`})));else if(s.requested){let e=s.reason===`no-attached-device`?`Open the Simulator workspace and choose a device first.`:s.reason===`device-not-booted`?`The selected simulator is still starting.`:`The current simulator screen could not be attached.`;ki.add(ks({type:`warning`,title:`Couldn’t attach the simulator screen`,description:e}))}let c=Qt?{...n,interactionMode:nn}:n,l=W.id,u=!ar||W.messages.length===0,{shouldMaterializeLegacyBranchWorktree:d,baseBranchForWorktree:f,shouldCreateWorktree:p}=bd({isServerThread:ar,isFirstMessage:u,threadWorktreePath:W.worktreePath,activeThreadBranch:gc,currentGitRefName:qo.data?.refName??null,sendEnvMode:yc}),m=u&&yc===`worktree`?Ve?.worktreeSource??null:null;if(m&&!o.git.createWorktreeForProject)return gr(l,`Worktree creation is unavailable in this environment.`),!1;let h=null,g=async()=>{let e=o.git.createWorktreeForProject;if(!m||!e||!Qr)return null;let t=await e({projectId:Qr.id,intent:m.kind===`pr`?{kind:`pr`,number:m.number}:m.kind===`issue`?{kind:`issue`,number:m.number,title:m.title}:{kind:`workItem`,provider:m.provider,key:m.key,title:m.title,...m.state?{state:m.state}:{},...m.stateName?{stateName:m.stateName}:{},...m.url?{url:m.url}:{}}});return h=i(r,t.sessionId),{threadId:t.sessionId,isServerThread:!0,isFirstMessage:!0}};return p&&!gc&&!m?(gr(l,`Select a base branch before sending in New worktree mode.`),!1):(await tR({...a===void 0?{}:{messageId:a},composer:e,thread:{threadId:l,isFirstMessage:u,isServerThread:ar,isLocalDraftThread:dr&&!m,activeThreadBranch:gc,worktreePath:W.worktreePath,createdAt:W.createdAt,projectId:Qr.id},worktree:m?{shouldMaterializeLegacyBranchWorktree:!1,baseBranchForWorktree:null,shouldCreateWorktree:!1}:{shouldMaterializeLegacyBranchWorktree:d,baseBranchForWorktree:f,shouldCreateWorktree:p},settings:c,project:{projectId:Qr.id,projectCwd:Qr.cwd,defaultModelSelection:Qr.defaultModelSelection??null},...m?{prepareForDispatch:g}:{},scroll:{scrollToEndBeforeOptimistic:async()=>{Cn.current=!0,Tn(!0),uc.current.cancel(),at(!1),await Sn.current?.scrollToEnd?.({animated:!1})},scrollToEndAfterOptimistic:sc},draft:{composerDraftTarget:E,environmentId:r,clearComposerDraftContent:Me,setComposerDraftTokenMode:je,setComposerDraftPrompt:ve,addComposerDraftImages:be,setComposerDraftTerminalContexts:xe,setDraftThreadContext:Ne},dispatch:{api:o,beginLocalDispatch:Ba,resetLocalDispatch:Va,setOptimisticUserMessages:lt,setThreadError:gr},refs:{promptRef:Ue,composerImagesRef:We,composerTerminalContextsRef:Ge,sendInFlightRef:En},sourceControl:{fetcher:async e=>{let t=Ko;if(!t)return e;let n=b(new Date),i=b(new Date(Date.now()+3e5));if(e.kind===`issue`){let a=await Jo.fetchQuery(Ci({environmentId:r,cwd:t,reference:String(e.detail.number)}));return{...e,detail:a,fetchedAt:n,staleAfter:i}}let a=await Jo.fetchQuery(vi({environmentId:r,cwd:t,reference:String(e.detail.number)}));return{...e,detail:a,fetchedAt:n,staleAfter:i}}},persistSettings:{persistThreadSettingsForNextTurn:tc},composerHandle:{readComposer:nt},formatOutgoingPrompt:hR}),h&&(v&&Fe(v),await re({to:`/$environmentId/$threadId`,params:An(h),replace:!0})),!0)},Oc=(0,q.useRef)(Dc);Oc.current=Dc;let kc=async e=>{if(e?.preventDefault(),!t.allowed||!Le(r)||!W||Wa&&aa!==`running`||At||Si||En.current)return;if(Da){Na();return}let n=nt()?.getSendContext();if(!n)return;let{images:i,terminalContexts:a,sourceControlContexts:o,selectedProvider:s,selectedModel:c,selectedProviderModels:l,selectedPromptEffort:u,selectedModelSelection:d}=n,f=Ue.current,{trimmedPrompt:p,sendableTerminalContexts:m,expiredTerminalContextCount:h,hasSendableContent:g}=Cd({prompt:f,imageCount:i.length,terminalContexts:a}),_=i.length===0&&m.length===0?St(p):null;if(_!==null){if(!D){ki.add({type:`warning`,title:`Start the thread first`,description:`A goal can be attached after the thread has been created.`});return}if(_.length===0){ki.add({type:`warning`,title:`Describe the goal`,description:`Use /goal followed by the outcome you want this thread to pursue.`});return}if(_.length>4e3){ki.add({type:`warning`,title:`Goal is too long`,description:`Keep the objective under ${C.toLocaleString()} characters.`});return}await nc({objective:_})&&(Ue.current=``,Me(E),je(E,ur),nt()?.resetCursorState());return}if(Ra&&Fa){let e=_u({draftText:p,planMarkdown:Fa.planMarkdown});Ue.current=``,Me(E),je(E,ur),nt()?.resetCursorState(),await Mc({text:e.text,interactionMode:e.interactionMode});return}let v=i.length===0&&m.length===0?ut(p):null;if(v){Ys(v),Ue.current=``,Me(E),je(E,ur),nt()?.resetCursorState();return}if(!g){if(h>0){let e=wd(h,`empty`);ki.add(ks({type:`warning`,title:e.title,description:e.description}))}return}let y={prompt:f,trimmedPrompt:p,images:i,sendableTerminalContexts:m,sourceControlContexts:o,selectedProvider:s,selectedModel:c,selectedProviderModels:l,selectedPromptEffort:u,selectedModelSelection:d,expiredTerminalContextCount:h},b={runtimeMode:cr,interactionMode:lr,tokenMode:ur};if(!Sc(y.selectedModelSelection)){Cc();return}if(aa===`running`&&jr){let e=ao();Ir(jr,{id:e,createdAt:new Date().toISOString(),composer:{...y,images:y.images.map(Sd)},settings:b}),Ue.current=``,Me(E),je(E,ur),nt()?.resetCursorState();return}await Oc.current(y,b)},Ac=(0,q.useRef)(kc);Ac.current=kc;let jc=(0,q.useCallback)(e=>{Ac.current(e)},[]);(0,q.useEffect)(()=>{if(!jr)return;let e=jr,n=Hr[0];n&&t.allowed&&(io||Si||Da||za||En.current||Ur.includes(n.id)||Oc.current(n.composer,n.settings,y.make(n.id)).then(t=>{t&&zr(e)}))},[jr,Hr,io,Si,Da,za,t.allowed,zr,Ur]);let Mc=(0,q.useCallback)(async({text:e,interactionMode:t})=>{let n=Le(r);if(!n||!W||!ar||Wa||At||En.current)return;let a=e.trim();if(!a)return;let o=nt()?.getSendContext();if(!o)return;let{selectedProvider:s,selectedModel:c,selectedProviderModels:l,selectedPromptEffort:u,selectedModelSelection:d}=o;if(!Sc(d)){Cc();return}let f=W.id,p=ao(),m=new Date().toISOString(),h=hR({provider:s,model:c,models:l,effort:u,text:a});En.current=!0,Ba({preparingWorktree:!1}),gr(f,null),Cn.current=!0,Tn(!0),uc.current.cancel(),at(!1),await Sn.current?.scrollToEnd?.({animated:!1}),lt(e=>[...e,{id:p,role:`user`,text:h,createdAt:m,streaming:!1}]),sc();try{await tc({threadId:f,createdAt:m,runtimeMode:cr,interactionMode:t,tokenMode:ur}),we(i(W.environmentId,f),t),je(i(W.environmentId,f),ur),await n.orchestration.dispatchCommand({type:`thread.turn.start`,commandId:no(),threadId:f,message:{messageId:p,role:`user`,text:h,attachments:[]},modelSelection:d,titleSeed:W.title,runtimeMode:cr,interactionMode:t,tokenMode:ur,...t==="default"&&Fa?{sourceProposedPlan:{threadId:W.id,planId:Fa.id}}:{},createdAt:m}),t==="default"&&ne&&($t.current=null,Nt(!0)),En.current=!1}catch(e){lt(e=>e.filter(e=>e.id!==p)),gr(f,e instanceof Error?e.message:`Failed to send plan follow-up.`),En.current=!1,Va()}},[W,Fa,Ba,Sc,At,Wa,ar,Cc,tc,nt,Va,cr,sc,we,je,gr,ne,r,ur]),Nc=(0,q.useCallback)(async()=>{let e=Le(r);if(!e||!W||!Qr||!Fa||!ar||Wa||At||Si||En.current)return;let t=nt()?.getSendContext();if(!t)return;let{selectedProvider:n,selectedModel:a,selectedProviderModels:o,selectedPromptEffort:s,selectedModelSelection:c}=t,l=new Date().toISOString(),u=to(),d=Fa.planMarkdown,f=hR({provider:n,model:a,models:o,effort:s,text:gu(d)}),p=su(vu(d)),m=c;En.current=!0,Ba({preparingWorktree:!1});let h=()=>{En.current=!1,Va()};await e.orchestration.dispatchCommand({type:`thread.create`,commandId:no(),threadId:u,projectId:Qr.id,title:p,modelSelection:m,runtimeMode:cr,interactionMode:`default`,tokenMode:ur,branch:gc,worktreePath:W.worktreePath,createdAt:l}).then(()=>e.orchestration.dispatchCommand({type:`thread.turn.start`,commandId:no(),threadId:u,message:{messageId:ao(),role:`user`,text:f,attachments:[]},modelSelection:c,titleSeed:p,runtimeMode:cr,interactionMode:`default`,tokenMode:ur,sourceProposedPlan:{threadId:W.id,planId:Fa.id},createdAt:l})).then(()=>Od(i(W.environmentId,u))).then(()=>(en.current=ne,re({to:`/$environmentId/$threadId`,params:{environmentId:W.environmentId,threadId:u}}))).catch(async t=>{await e.orchestration.dispatchCommand({type:`thread.delete`,commandId:no(),threadId:u}).catch(()=>void 0),ki.add(ks({type:`error`,title:`Could not start implementation thread`,description:t instanceof Error?t.message:`An error occurred while creating the new thread.`}))}).then(h,h)},[Qr,Fa,gc,W,Ba,Si,At,Wa,ar,re,nt,Va,cr,ur,ne,r]),Pc=(0,q.useCallback)((e,t)=>{if(!W)return;let n=ta.find(t=>t.instanceId===e);if(!n||!n.enabled||!n.installed||n.status!==`ready`||n.availability===`unavailable`){Os();return}let r=n?.driver??null;if(Ja.mode===`continuation-only`&&Xa===null){Os();return}if(Xa!==null&&r!==null&&r!==Xa){Os();return}if(Xa!==null&&W.session?.providerInstanceId){let e=ta.find(e=>e.instanceId===W.session?.providerInstanceId);if(e?.continuation?.groupKey&&n?.continuation?.groupKey&&e.continuation.groupKey!==n.continuation.groupKey){Os();return}}let a=ht(e,N,ta,t);if(!a){Os();return}let o={instanceId:e,model:a};if(!It({threadStarted:Ka,policy:Ja,canonicalSelection:W.modelSelection,targetSelection:o})){Os();return}Se(i(W.environmentId,W.id),o),Ed(W)||R(o);let s=_n(lr,n.supportsAskMode??!1);s!==lr&&Ys(s),Os()},[W,Ka,Ys,lr,Xa,Ja,Os,Se,R,ta,N]),Fc=(0,q.useCallback)(e=>{st(e)},[]),Ic=(0,q.useRef)(Wo);Ic.current=Wo;let Lc=(0,q.useRef)(xc);Lc.current=xc;let Rc=(0,q.useCallback)(e=>{let t=Ic.current.get(e);typeof t==`number`&&Lc.current(t)},[]),zc=(0,q.useCallback)(e=>{Lc.current(e)},[]);(0,q.useEffect)(()=>{mr||Rt(!1)},[mr]),(0,q.useEffect)(()=>{Rt(!1),Ft(!1)},[W?.id]);let Bc=Mt&&!mr&&!(Mo&&!Pt),Vc=Lt&&mr,Hc=Bc||Vc,Wc=Ht===`phone`,qc=Bc&&!zt&&!Wc,Jc=Bc&&(zt||Wc),Yc=Su(Vc,Bt||!mr?0:260),Xc=Su(qc,Bt||zt||mr?0:320),Zc=(0,q.useMemo)(()=>!Wc||!W?null:{environmentId:W.environmentId,threadId:W.id,title:W.title,projectCwd:Ko,branch:$r?.branch??W.branch??null,draft:c===`draft`&&v?{draftId:v,projectId:W.projectId,createdAt:W.createdAt}:null,workspacePanelOpen:mr,onToggleWorkspacePanel:_s,onOpenFindInThread:Ns,onOpenSourceControl:c===`draft`?null:()=>ec(!0),sessionTabs:di,activeSessionTabKey:fi,onSelectSessionTab:pi},[fi,W,di,$r?.branch,v,Ko,pi,Wc,_s,Ns,c,ec,mr]),Qc=Ht!==`phone`&&!Mo,$c=Ht!==`phone`,el=(0,q.useRef)(null),tl=(0,q.useRef)(null),nl=(0,q.useRef)(null),rl=(0,q.useRef)(null);return(0,q.useEffect)(()=>{let e=el.current;if(!e)return;if(!Qc){e.style.removeProperty(`--chat-composer-clearance`);return}let t=tl.current;if(!t)return;let n=()=>e.style.setProperty(`--chat-composer-clearance`,`${t.offsetHeight+8}px`);n();let r=new ResizeObserver(n);return r.observe(t),()=>{r.disconnect(),e.style.removeProperty(`--chat-composer-clearance`)}},[Qc,hr]),(0,q.useEffect)(()=>{let e=nl.current;if(!e)return;if(!$c){e.style.removeProperty(`--chat-header-clearance`);return}let t=rl.current;if(!t)return;let n=()=>e.style.setProperty(`--chat-header-clearance`,`${t.offsetHeight+8}px`);n();let r=new ResizeObserver(n);return r.observe(t),()=>{r.disconnect(),e.style.removeProperty(`--chat-header-clearance`)}},[$c,hr]),W?(0,Y.jsxs)(`div`,{ref:nl,className:`relative flex min-h-0 min-w-0 flex-1 flex-col overflow-hidden bg-background`,children:[(0,Y.jsx)(`header`,{ref:rl,className:G(`border-b phone:pt-safe`,$c?`app-chrome-glass border-sidebar-border`:`border-border bg-muted/24`,$c&&`absolute inset-x-0 top-0 z-20`,Un,d?G(`drag-region flex min-h-[52px] items-stretch pr-3 sm:pr-5 wco:min-h-[env(titlebar-area-height)]`,Ut?Hn:`pl-3 sm:pl-5`,_&&`wco:pr-[calc(100vw-env(titlebar-area-width)-env(titlebar-area-x)+1em)]`):G(`pr-[calc(env(safe-area-inset-right)+0.75rem)] sm:pr-[calc(env(safe-area-inset-right)+1.25rem)]`,Ut?Hn:`pl-[calc(env(safe-area-inset-left)+0.75rem)] sm:pl-[calc(env(safe-area-inset-left)+1.25rem)]`)),children:Ht===`phone`?(0,Y.jsx)(jN,{environmentId:W.environmentId,threadId:W.id,title:W.title}):(0,Y.jsx)(AN,{activeThreadEnvironmentId:W.environmentId,activeThreadTitle:W.title,activeProjectName:Qr?.name,isGitRepo:os,openInCwd:Ko,activeProjectScripts:Qr?.scripts,preferredScriptId:Qr?bn[Qr.id]??null:null,keybindings:Qo,availableEditors:$o,worktreeBranch:$r?.branch??W.branch??null,worktreeTitle:$r?.title??null,worktreeOrigin:$r?.origin??null,worktreeIssueNumber:$r?.issueNumber??null,worktreeIssueState:$r?.issueState??null,worktreePrNumber:$r?.prNumber??null,worktreePrState:$r?.prState??null,worktreePrIsDraft:$r?.prIsDraft??null,worktreeWorkItemProvider:$r?.workItemProvider??null,worktreeWorkItemKey:$r?.workItemKey??null,worktreeWorkItemState:$r?.workItemState??null,worktreeWorkItemStateName:$r?.workItemStateName??null,onOpenLinkedWorktreeItem:ai,workspacePanelOpen:mr,liveAgentCount:fd({liveCount:ba.liveCount,workspacePanelOpen:mr,workspaceTab:H.workspaceTab}),onToggleWorkspacePanel:_s,overviewSidebarOpen:Hc,onToggleOverviewSidebar:ec,onRunProjectScript:Ws,onAddProjectScript:Gs,onUpdateProjectScript:Ks,onDeleteProjectScript:qs})}),(0,Y.jsx)(Ri,{open:ri!==null,item:ri,environmentId:Qr?.environmentId??W.environmentId,projectId:Qr?.id??W.projectId,cwd:Qr?.cwd??Ko,onOpenChange:oi}),(0,Y.jsx)(`div`,{className:G($c&&`absolute inset-x-0 top-(--chat-header-clearance,0px) z-20`),children:(0,Y.jsx)(BN,{status:ts})}),(0,Y.jsx)(VN,{error:W.error,threadRef:Ar,onDismiss:()=>gr(W.id,null)}),(0,Y.jsxs)(`div`,{className:`flex min-h-0 min-w-0 flex-1`,children:[(0,Y.jsxs)(`div`,{ref:el,className:`relative flex min-h-0 min-w-0 flex-1 flex-col`,children:[(0,Y.jsxs)(`div`,{className:`relative flex min-h-0 flex-1 flex-col`,children:[Mo?null:sr?(0,Y.jsx)(gj,{agentPanelModel:ba,onOpenAgents:bs,isWorking:io,activeTurnInProgress:io||!Yr,activeTurnId:qr?.turnId??null,latestTurn:qr,activeTurnStartedAt:xo,listRef:Sn,targetMessageId:xt?.messageId??H.messageId??null,targetMessageRequestId:xt?.requestId??0,targetMessageRowHighlight:xt===null,threadMessageSearchQuery:dt?pt:``,threadMessageSearchOccurrencesByMessageId:Fo,activeThreadMessageSearchOccurrence:dt?Ro:null,timelineEntries:Ao,turnDiffSummaryByAssistantMessageId:Uo,activeThreadEnvironmentId:W.environmentId,routeThreadKey:w,openDiffTurnId:pr?H.diffTurnId??null:null,onOpenTurnDiff:vs,onCloseDiff:ys,revertTurnCountByUserMessageId:Wo,undoTurnCountByTurnId:Go,onUndoTurn:zc,onRevertUserMessage:Rc,isRevertingCheckpoint:kr,onImageExpand:Fc,markdownCwd:Ko??void 0,resolvedTheme:ce,timestampFormat:z,workspaceRoot:is,skills:ts?.skills??cR,liveFollowEnabled:wn,onIsAtEndChange:dc,onManualNavigation:cc,onUserReachedEnd:lc,canLoadOlder:Nr?.hasMoreBefore??!1,isLoadingOlder:Pr?.status===`loading`,loadOlderError:Pr?.error??null,onLoadOlder:Fr,...Ht===`phone`?{}:{onInspectContextHandoff:Xt}},W.id):(0,Y.jsx)(`div`,{"aria-hidden":!0,className:`flex min-h-0 flex-1`}),dt?(0,Y.jsx)(aN,{query:pt,focusRequestId:_t,matchCount:Io,selectedIndex:Lo,onQueryChange:gt,onNext:()=>Is(`next`),onPrevious:()=>Is(`previous`),onClose:Fs}):null,Yc?(0,Y.jsx)(hL,{animate:!Bt,open:Vc,children:(0,Y.jsx)(vL,{environmentId:r,gitCwd:Ko,activeWorktreeBranch:$r?.branch??null,activeThreadBranch:W?.branch??null,activeWorktreePrNumber:$r?.prNumber??null,activeWorktreePrState:$r?.prState,activeWorktreePrIsDraft:$r?.prIsDraft,activeWorktreeTitle:$r?.title,postPushWorkflowWatch:Yo,activeThreadKey:jr,activeEnvironmentUnavailableState:Ei,activePlan:_a,sidebarProposedPlan:Ia,threadSubagents:ya,changedFileSummaries:W?.turnDiffSummaries,sourceControlActions:_c,branchControl:vc,markdownCwd:Ko??void 0,workspaceRoot:is,mode:`floating`,onClose:$s,onOpenFiles:ms,onOpenReview:fs,onOpenSubagent:xs,onPostPushDiscoveryComplete:Zo})}):null,it&&(0,Y.jsx)(`div`,{className:`pointer-events-none absolute bottom-[calc(var(--chat-composer-clearance,0px)+0.25rem)] left-1/2 z-30 flex -translate-x-1/2 justify-center py-1.5`,children:(0,Y.jsxs)(`button`,{type:`button`,onClick:()=>oc(!0),className:`pointer-events-auto flex items-center gap-1.5 rounded-full border-0 bg-card/80 px-3 py-1 text-muted-foreground text-xs shadow-md/5 ring-1 ring-inset ring-foreground/6 backdrop-blur transition-[background-color,color,box-shadow] hover:bg-card hover:text-foreground hover:shadow-lg/8 hover:cursor-pointer`,children:[(0,Y.jsx)(Xr,{className:`size-3.5`}),`Scroll to bottom`]})})]}),Mo?(0,Y.jsx)(`div`,{className:G(`shrink-0`,!Bt&&`animate-in fade-in slide-in-from-bottom-1`),children:(0,Y.jsx)(IM,{projectName:Qr?.name??null,activeProjectId:Qr?.id??null,activeProjectEnvironmentId:Qr?.environmentId??null,routeKind:c,envLocked:Ss,draftId:v??void 0,workLocation:os?(0,Y.jsx)(XM,{draftId:v??void 0,environmentId:W.environmentId,threadId:W.id,projectId:Qr?.id??null,projectEnvironmentId:Qr?.environmentId??null,projectName:Qr?.name??null,envLocked:Ss,availableEnvironments:Mi,onEnvironmentChange:Ni?Cs:void 0,onComposerFocusRequest:Os,onCheckoutPullRequestRequest:fr?Pi:void 0,cwd:Qr?.cwd??Ko}):null})}):null,(0,Y.jsxs)(`div`,{ref:tl,className:G(`flex min-h-0 flex-col justify-end`,Qc&&`pointer-events-none absolute inset-x-0 bottom-0 z-20`,`pl-[calc(env(safe-area-inset-left)+0.75rem)] pr-[calc(env(safe-area-inset-right)+0.75rem)] pt-1.5 sm:pl-[calc(env(safe-area-inset-left)+1.25rem)] sm:pr-[calc(env(safe-area-inset-right)+1.25rem)] sm:pt-2`,os?`pb-[calc(max(env(safe-area-inset-bottom),var(--app-keyboard-inset,0px))+0.25rem)]`:`pb-[calc(max(env(safe-area-inset-bottom),var(--app-keyboard-inset,0px))+0.75rem)] sm:pb-[calc(max(env(safe-area-inset-bottom),var(--app-keyboard-inset,0px))+1rem)]`),children:[Qc?(0,Y.jsx)(`div`,{"aria-hidden":!0,className:`-top-10 -z-10 pointer-events-none absolute inset-x-0 bottom-0 bg-linear-to-t from-background via-background/45 to-transparent`}):null,(0,Y.jsxs)(`div`,{className:G(`relative isolate`,Qc&&`pointer-events-auto`),children:[uo!==null&&Ht!==`phone`?(0,Y.jsx)(`div`,{className:`mx-auto mb-2 flex w-full min-w-0 max-w-208 items-center px-4`,children:(0,Y.jsx)(rd,{liveness:uo,liveCount:ba.liveCount,stopping:po,onStop:bo})}):null,(0,Y.jsx)(yP,{className:`relative z-0`,items:$i}),Ht===`phone`?null:(0,Y.jsx)(pP,{environmentId:r,activeThreadId:hr}),ea?(0,Y.jsx)(`div`,{"aria-hidden":!0,className:`mb-2 h-5`}):null,(0,Y.jsx)(iR,{messages:Hr,onRemove:Wr,onMove:Gr,showSteerAction:Ht!==`phone`,steeringIds:Ur,getSteerUnavailableReason:Tc,onSteer:e=>void Ec(e)}),(0,Y.jsx)(`div`,{className:`relative z-10`,children:(0,Y.jsx)(gO,{ref:Je,composerDraftTarget:E,environmentId:r,routeKind:c,routeThreadRef:x,draftId:v,activeThreadId:hr,activeThreadEnvironmentId:W?.environmentId,activeThreadSessionProviderInstanceId:ia,activeThreadStarted:Ka,isServerThread:ar,isLocalDraftThread:dr,activeThreadGoal:D?.goal??null,phase:aa,isConnecting:At,isSendBusy:Wa||!t.allowed||Ts,isPreparingWorktree:Ua,environmentUnavailable:Ei,activePendingApproval:za,pendingApprovals:ha,pendingUserInputs:ga,activePendingProgress:Da,activePendingResolvedAnswers:ka,activePendingIsResponding:Aa,activePendingDraftAnswers:wa,activePendingQuestionIndex:Ea,respondingRequestIds:xr,showPlanFollowUpPrompt:Ra,activeProposedPlan:Fa,activePlan:_a,sidebarProposedPlan:Ia,planSidebarLabel:La,planSidebarOpen:Hc,runtimeMode:cr,interactionMode:lr,tokenMode:ur,lockedProvider:Xa,providerStatuses:ra,activeProjectDefaultModelSelection:Qr?.defaultModelSelection,activeThreadModelSelection:W?.modelSelection,activeThreadActivities:ua,phoneThreadDock:Zc,resolvedTheme:ce,settings:N,keybindings:Qo,terminalOpen:!!On.terminalOpen,gitCwd:Ko,executionTargets:Mi,executionTargetLocked:Ss||c===`server`,onExecutionTargetChange:Cs,promptRef:Ue,composerImagesRef:We,composerTerminalContextsRef:Ge,shouldAutoScrollRef:Cn,scheduleStickToBottom:oc,onSend:jc,onInterrupt:_r,onImplementPlanInNewThread:Nc,onRespondToApproval:vr,onSelectActivePendingUserInputOption:ja,onAdvanceActivePendingUserInput:Na,onPreviousActivePendingUserInputQuestion:Pa,onChangeActivePendingUserInputCustomAnswer:Ma,onProviderModelSelect:Pc,toggleInteractionMode:Zs,handleRuntimeModeChange:Js,handleInteractionModeChange:Ys,handleTokenModeChange:Xs,togglePlanSidebar:ec,focusComposer:Ds,scheduleComposerFocus:Os,setThreadError:gr,onExpandImage:Fc,onEditGoal:rc,onGoalStatusChange:ic,onClearGoal:ac})})]}),os&&(0,Y.jsx)(`div`,{className:G(Qc&&`pointer-events-auto`),children:(0,Y.jsx)(td,{environmentId:W.environmentId,threadId:W.id,...c===`draft`&&v?{draftId:v}:{},...hc?{activeThreadBranchOverride:gc,onActiveThreadBranchOverrideChange:yn}:{},envLocked:Ss,onComposerFocusRequest:Os,onOpenWorktreeSources:bc,contextControlsHoisted:Mo,...fr?{onCheckoutPullRequestRequest:Pi}:{},...Ni?{onEnvironmentChange:Cs}:{},availableEnvironments:Mi,terminalAvailable:Qr!==void 0&&n.allowed,terminalOpen:On.terminalOpen,terminalToggleShortcutLabel:cs,onToggleTerminal:Bs,terminalCount:On.terminalIds.length})})]}),Mo?(0,Y.jsx)(`div`,{"aria-hidden":!0,className:`min-h-0 flex-1`}):null,an?(0,Y.jsx)(zO,{open:!0,environmentId:W.environmentId,projectId:Qr?.id??null,threadId:W.id,cwd:Qr?.cwd??null,initialReference:an.initialReference,onOpenChange:e=>{e||Fi()},onPrepared:Li},an.key):null,(0,Y.jsx)(Hi,{open:sn,environmentId:W.environmentId,projectId:Qr?.id??null,cwd:Qr?.cwd??null,initialTab:dn,onCreated:e=>{re({to:`/$environmentId/$threadId`,params:{environmentId:W.environmentId,threadId:e.sessionId}})},onOpenChange:cn})]}),Jt&&!zt&&!Wc?(0,Y.jsx)(`aside`,{className:`flex min-h-0 w-[25rem] shrink-0 border-l border-border pt-[var(--chat-header-clearance,0px)]`,children:(0,Y.jsx)(RO,{environmentId:W.environmentId,threadId:W.id,marker:Jt.marker,onClose:Zt})}):Xc?(0,Y.jsx)(mL,{animate:!Bt,open:qc,children:(0,Y.jsx)(vL,{environmentId:r,gitCwd:Ko,activeWorktreeBranch:$r?.branch??null,activeThreadBranch:W?.branch??null,activeWorktreePrNumber:$r?.prNumber??null,activeWorktreePrState:$r?.prState,activeWorktreePrIsDraft:$r?.prIsDraft,activeWorktreeTitle:$r?.title,postPushWorkflowWatch:Yo,activeThreadKey:jr,activeEnvironmentUnavailableState:Ei,activePlan:_a,sidebarProposedPlan:Ia,threadSubagents:ya,changedFileSummaries:W?.turnDiffSummaries,sourceControlActions:_c,branchControl:vc,markdownCwd:Ko??void 0,workspaceRoot:is,mode:`sidebar`,onOpenFiles:ms,onOpenReview:fs,onOpenSubagent:xs,onPostPushDiscoveryComplete:Zo})}):null]}),er.map(({key:e,threadRef:t})=>(0,Y.jsx)(vO,{threadRef:t,threadId:t.threadId,visible:e===jr&&On.terminalOpen&&n.allowed,launchContext:e===jr?as??null:null,focusRequestId:e===jr?tn:0,splitShortcutLabel:ls??void 0,newShortcutLabel:us??void 0,closeShortcutLabel:ds??void 0,keybindings:Qo,onAddTerminalContext:Rs},e)),!Wc&&zt&&Jt?(0,Y.jsx)(aR,{open:!0,onClose:Zt,children:(0,Y.jsx)(RO,{environmentId:W.environmentId,threadId:W.id,marker:Jt.marker,onClose:Zt})}):null,Wc?(0,Y.jsx)(NN,{label:La,open:Jc,onClose:$s,children:(0,Y.jsx)(PN,{title:La,backLabel:`Back to thread`,onBack:$s,children:(0,Y.jsx)(vL,{environmentId:r,gitCwd:Ko,activeWorktreeBranch:$r?.branch??null,activeThreadBranch:W?.branch??null,activeWorktreePrNumber:$r?.prNumber??null,activeWorktreePrState:$r?.prState,activeWorktreePrIsDraft:$r?.prIsDraft,activeWorktreeTitle:$r?.title,postPushWorkflowWatch:Yo,activeThreadKey:jr,activeEnvironmentUnavailableState:Ei,activePlan:_a,sidebarProposedPlan:Ia,threadSubagents:ya,changedFileSummaries:W?.turnDiffSummaries,sourceControlActions:_c,branchControl:vc,markdownCwd:Ko??void 0,workspaceRoot:is,mode:`sheet`,onOpenFiles:ms,onOpenReview:fs,onOpenSubagent:xs,onPostPushDiscoveryComplete:Zo})})}):zt?(0,Y.jsx)(aR,{open:Jc,onClose:$s,children:(0,Y.jsx)(vL,{environmentId:r,gitCwd:Ko,activeWorktreeBranch:$r?.branch??null,activeThreadBranch:W?.branch??null,activeWorktreePrNumber:$r?.prNumber??null,activeWorktreePrState:$r?.prState,activeWorktreePrIsDraft:$r?.prIsDraft,activeWorktreeTitle:$r?.title,postPushWorkflowWatch:Yo,activeThreadKey:jr,activeEnvironmentUnavailableState:Ei,activePlan:_a,sidebarProposedPlan:Ia,threadSubagents:ya,changedFileSummaries:W?.turnDiffSummaries,sourceControlActions:_c,branchControl:vc,markdownCwd:Ko??void 0,workspaceRoot:is,mode:`sheet`,onOpenFiles:ms,onOpenReview:fs,onOpenSubagent:xs,onPostPushDiscoveryComplete:Zo})}):null,ot&&(0,Y.jsx)(DO,{preview:ot,onClose:fc})]}):(0,Y.jsx)(Kc,{})}var bR=(0,q.lazy)(()=>n(()=>import(`./ThreadWorkspacePanel-D9qlHXCA.js`),__vite__mapDeps([0]))),xR=`chat_diff_sidebar_width`,SR=`clamp(24rem,34vw,36rem)`,CR=352,wR=896,TR=360,ER=`w-5 cursor-ew-resize after:w-px after:bg-border/50 hover:after:bg-border focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring/40 focus-visible:ring-offset-0`,DR=208;function OR(e){return{...Vn(e),diff:void 0,diffTurnId:void 0,diffFilePath:void 0,preview:void 0,workspaceOpen:void 0,workspaceTab:void 0,workspaceAgentKey:void 0}}var kR=e=>{let t=(0,J.c)(6),n;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,Y.jsx)(_a,{}),t[0]=n):n=t[0];let r;t[1]===e.label?r=t[2]:(r=(0,Y.jsx)(ya,{label:e.label}),t[1]=e.label,t[2]=r);let i;return t[3]!==e.mode||t[4]!==r?(i=(0,Y.jsx)(sa,{mode:e.mode,header:n,children:r}),t[3]=e.mode,t[4]=r,t[5]=i):i=t[5],i};function AR(e){let t=(0,J.c)(11),[n,r]=(0,q.useState)(!e.animate&&e.open),i,a;t[0]!==e.animate||t[1]!==e.open?(i=()=>{if(!e.animate){r(e.open);return}if(!e.open){r(!1);return}let t=window.requestAnimationFrame(()=>r(!0));return()=>window.cancelAnimationFrame(t)},a=[e.animate,e.open],t[0]=e.animate,t[1]=e.open,t[2]=i,t[3]=a):(i=t[2],a=t[3]),(0,q.useEffect)(i,a);let o=e.animate?e.open&&n:e.open,s=!e.open||void 0,c=!e.open||void 0,l=o?`translate-x-0 opacity-100`:`translate-x-4 opacity-0`,u;t[4]===l?u=t[5]:(u=G(`flex min-h-0 w-full flex-1 transition-[translate,opacity] duration-[300ms] ease-[cubic-bezier(0.16,1,0.3,1)] will-change-transform motion-reduce:transition-none`,l),t[4]=l,t[5]=u);let d;return t[6]!==e.children||t[7]!==s||t[8]!==c||t[9]!==u?(d=(0,Y.jsx)(`div`,{"aria-hidden":s,inert:c,className:u,children:e.children}),t[6]=e.children,t[7]=s,t[8]=c,t[9]=u,t[10]=d):d=t[10],d}var jR=e=>{let t=(0,J.c)(15),n=e.panelMode===`review`?`Loading diff viewer...`:e.panelMode===`files`?`Loading file preview...`:e.panelMode===`terminal`?`Loading terminal...`:e.panelMode===`simulator`?`Loading simulator...`:e.panelMode===`agents`?`Loading agents...`:e.panelMode===`agent`?`Loading subagent thread...`:`Loading workspace...`,r;t[0]!==e.mode||t[1]!==n?(r=(0,Y.jsx)(kR,{mode:e.mode,label:n}),t[0]=e.mode,t[1]=n,t[2]=r):r=t[2];let i=e.maximized??!1,a=e.reserveChromeInset??!1,o;t[3]!==e.mode||t[4]!==e.onClosePanelTab||t[5]!==e.onToggleMaximized||t[6]!==e.openedAgentKeys||t[7]!==e.openedPanelModes||t[8]!==e.panelMode||t[9]!==i||t[10]!==a?(o=(0,Y.jsx)(bR,{mode:e.mode,panelMode:e.panelMode,openedPanelModes:e.openedPanelModes,openedAgentKeys:e.openedAgentKeys,onClosePanelTab:e.onClosePanelTab,maximized:i,onToggleMaximized:e.onToggleMaximized,reserveChromeInset:a}),t[3]=e.mode,t[4]=e.onClosePanelTab,t[5]=e.onToggleMaximized,t[6]=e.openedAgentKeys,t[7]=e.openedPanelModes,t[8]=e.panelMode,t[9]=i,t[10]=a,t[11]=o):o=t[11];let s;return t[12]!==r||t[13]!==o?(s=(0,Y.jsx)(aa,{children:(0,Y.jsx)(q.Suspense,{fallback:r,children:o})}),t[12]=r,t[13]=o,t[14]=s):s=t[14],s},MR=e=>{let t=(0,J.c)(41),{maximized:n,open:r,onClose:i,onOpen:a,panelMode:o,renderContent:s}=e,c=ni(Ps),l=Su(r,c?0:TR),u;t[0]===l?u=t[1]:(u=Ns({active:l,containIntrinsicSize:`28rem 100vh`}),t[0]=l,t[1]=u);let d=u,f;t[2]!==i||t[3]!==a?(f=e=>{if(e){a();return}i()},t[2]=i,t[3]=a,t[4]=f):f=t[4];let p=f,m=NR,h;t[5]!==n||t[6]!==r?(h=G(`min-h-0 bg-transparent`,n?`min-w-0 flex-1`:G(`flex-none transition-[width] duration-[360ms] ease-[cubic-bezier(0.16,1,0.3,1)] motion-reduce:transition-none`,r?`w-(--sidebar-width)`:`w-0`)),t[5]=n,t[6]=r,t[7]=h):h=t[7];let g;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(g={"--sidebar-width":SR},t[8]=g):g=t[8];let _;t[9]!==n||t[10]!==r?(_=G(`border-l border-border bg-card text-foreground`,n?`translate-x-0`:G(`transition-[translate,width] duration-[360ms] ease-[cubic-bezier(0.16,1,0.3,1)] motion-reduce:transition-none`,r?`translate-x-0`:`pointer-events-none translate-x-full`)),t[9]=n,t[10]=r,t[11]=_):_=t[11];let v;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(v={maxWidth:wR,minWidth:CR,shouldAcceptWidth:m,storageKey:xR},t[12]=v):v=t[12];let y=!c,b;t[13]!==n||t[14]!==o||t[15]!==e.onClosePanelTab||t[16]!==e.onToggleMaximized||t[17]!==e.openedAgentKeys||t[18]!==e.openedPanelModes||t[19]!==e.reserveChromeInset||t[20]!==s||t[21]!==l?(b=s&&l?(0,Y.jsx)(jR,{mode:`sidebar`,panelMode:o,openedPanelModes:e.openedPanelModes,openedAgentKeys:e.openedAgentKeys,onClosePanelTab:e.onClosePanelTab,maximized:n,onToggleMaximized:e.onToggleMaximized,reserveChromeInset:e.reserveChromeInset}):null,t[13]=n,t[14]=o,t[15]=e.onClosePanelTab,t[16]=e.onToggleMaximized,t[17]=e.openedAgentKeys,t[18]=e.openedPanelModes,t[19]=e.reserveChromeInset,t[20]=s,t[21]=l,t[22]=b):b=t[22];let x;t[23]!==d||t[24]!==b?(x=(0,Y.jsx)(`div`,{className:`flex min-h-0 w-full flex-1`,style:d,children:b}),t[23]=d,t[24]=b,t[25]=x):x=t[25];let S;t[26]!==r||t[27]!==y||t[28]!==x?(S=(0,Y.jsx)(AR,{animate:y,open:r,children:x}),t[26]=r,t[27]=y,t[28]=x,t[29]=S):S=t[29];let C;t[30]===n?C=t[31]:(C=n?null:(0,Y.jsx)(Rs,{"aria-label":`Resize workspace panel`,className:ER,title:`Drag to resize workspace panel`}),t[30]=n,t[31]=C);let w;t[32]!==n||t[33]!==C||t[34]!==_||t[35]!==S?(w=(0,Y.jsxs)(Bs,{side:`right`,collapsible:`offcanvas`,maximized:n,className:_,resizable:v,children:[S,C]}),t[32]=n,t[33]=C,t[34]=_,t[35]=S,t[36]=w):w=t[36];let T;return t[37]!==p||t[38]!==w||t[39]!==h?(T=(0,Y.jsx)(zs,{defaultOpen:!1,open:!0,onOpenChange:p,className:h,style:g,children:w}),t[37]=p,t[38]=w,t[39]=h,t[40]=T):T=t[40],T};function NR(e){let{nextWidth:t,wrapper:n}=e,r=document.querySelector(`[data-chat-composer-form='true']`);if(!r)return!0;let i=r.parentElement;if(!i)return!0;let a=n.style.getPropertyValue(`--sidebar-width`);n.style.setProperty(`--sidebar-width`,`${t}px`);let o=window.getComputedStyle(i),s=Number.parseFloat(o.paddingLeft)||0,c=Number.parseFloat(o.paddingRight)||0,l=Math.max(0,i.clientWidth-s-c),u=r.getBoundingClientRect(),d=r.querySelector(`[data-chat-composer-footer='true']`),f=r.querySelector(`[data-chat-composer-actions='right']`)?.getBoundingClientRect().width??0,p=d&&(Number.parseFloat(window.getComputedStyle(d).columnGap)||Number.parseFloat(window.getComputedStyle(d).gap))||0,m=DR+f+p,h=r.scrollWidth>r.clientWidth+.5,g=u.width>l+.5,_=r.clientWidth+.5<m;return a.length>0?n.style.setProperty(`--sidebar-width`,a):n.style.removeProperty(`--sidebar-width`),!h&&!g&&!_}export{aR as a,Dd as c,nu as d,Xl as f,Kl as g,Gl as h,yR as i,au as l,Wl as m,MR as n,NN as o,Ul as p,OR as r,Ed as s,jR as t,iu as u};
27
+ `}).catch(()=>void 0);`close`in t.terminal&&typeof t.terminal.close==`function`?(async()=>{i&&await t.terminal.clear({threadId:hr,terminalId:e}).catch(()=>void 0),await t.terminal.close({threadId:hr,terminalId:e,deleteHistory:!0})})().catch(()=>a()):a(),Ar&&Vn(Ar,e),rn(e=>e+1)},[hr,Ar,r,Vn,On.terminalIds.length,n.allowed]),{runProjectScript:Ws,saveProjectScript:Gs,updateProjectScript:Ks,deleteProjectScript:qs}=HL({environmentId:r,activeThread:W,activeThreadId:hr,activeThreadRef:Ar,activeProject:Qr,gitCwd:Ko,terminalState:On,setLastInvokedScriptByProjectId:xn,setTerminalLaunchContext:hn,setTerminalOpen:zs,storeNewTerminal:zn,storeSetActiveTerminal:Bn,setTerminalFocusRequestId:rn,setThreadError:gr}),Js=(0,q.useCallback)(e=>{e!==cr&&(Ce(E,e),dr&&Ne(E,{runtimeMode:e}),Os())},[dr,cr,Os,E,Ce,Ne]),Ys=(0,q.useCallback)(e=>{e!==lr&&(we(E,e),dr&&Ne(E,{interactionMode:e}),Os())},[lr,dr,Os,E,we,Ne]),Xs=(0,q.useCallback)(e=>{e!==ur&&(je(E,e),dr&&Ne(E,{tokenMode:e}),Os())},[E,dr,Os,je,Ne,ur]),Zs=(0,q.useCallback)(()=>{if(Qt)return;let e=Vt(ta,Qa);Ys(lr==="default"?`plan`:lr===`plan`&&e?`ask`:`default`)},[Qt,Ys,lr,ta,Qa]),Qs=(0,q.useCallback)(e=>{Nt(e),$t.current=e?null:_a?.turnId??Ia?.turnId??`__dismissed__`},[_a?.turnId,Ia?.turnId]),$s=(0,q.useCallback)(()=>{Rt(!1),Qs(!1)},[Qs]),ec=(0,q.useCallback)(e=>{if(mr){let t=typeof e==`boolean`?e:!Lt;Rt(t),Qs(t),t&&Ft(!0);return}let t=typeof e==`boolean`?e:Mo&&!Pt?!0:!Mt;Rt(!1),Qs(t),Ft(t)},[Mo,Lt,Pt,Mt,Qs,mr]),tc=(0,q.useCallback)(async e=>{if(!D)return;let t=Le(r);t&&(e.runtimeMode!==D.runtimeMode&&await t.orchestration.dispatchCommand({type:`thread.runtime-mode.set`,commandId:no(),threadId:e.threadId,runtimeMode:e.runtimeMode,createdAt:e.createdAt}),e.interactionMode!==D.interactionMode&&await t.orchestration.dispatchCommand({type:`thread.interaction-mode.set`,commandId:no(),threadId:e.threadId,interactionMode:e.interactionMode,createdAt:e.createdAt}),e.tokenMode!==(D.tokenMode??`balanced`)&&await t.orchestration.dispatchCommand({type:`thread.token-mode.set`,commandId:no(),threadId:e.threadId,tokenMode:e.tokenMode,createdAt:e.createdAt}))},[r,D]),nc=(0,q.useCallback)(async e=>{if(!D||!t.allowed)return!1;let n=Le(r);if(!n)return!1;try{return await n.orchestration.dispatchCommand({type:`thread.goal.set`,commandId:no(),threadId:D.id,...e,createdAt:new Date().toISOString()}),!0}catch(e){return ki.add(ks({type:`error`,title:`Could not update goal`,description:e instanceof Error?e.message:`The goal update failed.`})),!1}},[t.allowed,r,D]),rc=(0,q.useCallback)(()=>{let e=D?.goal?.objective;if(!e)return;let t=`/goal ${e}`;Ue.current=t,ve(E,t),nt()?.resetCursorState({prompt:t,cursor:t.length,detectTrigger:!1}),Os()},[E,nt,Os,D?.goal?.objective,ve]),ic=(0,q.useCallback)(e=>{nc({status:e})},[nc]),ac=(0,q.useCallback)(()=>{if(!D||!t.allowed)return;let e=Le(r);e&&e.orchestration.dispatchCommand({type:`thread.goal.clear`,commandId:no(),threadId:D.id,createdAt:new Date().toISOString()}).catch(e=>{ki.add(ks({type:`error`,title:`Could not clear goal`,description:e instanceof Error?e.message:`The goal could not be cleared.`}))})},[t.allowed,r,D]),oc=(0,q.useCallback)((e=!1)=>{Tn(!0),Sn.current?.scrollToEnd?.({animated:e})},[]),sc=(0,q.useCallback)(()=>{window.requestAnimationFrame(()=>{window.requestAnimationFrame(()=>{Sn.current?.scrollToEnd?.({animated:!1})})})},[]),cc=(0,q.useCallback)(()=>{Tn(!1)},[]),lc=(0,q.useCallback)(()=>{Tn(!0)},[]),uc=(0,q.useRef)(new mt(()=>at(!0),{wait:150})),dc=(0,q.useCallback)(e=>{Cn.current!==e&&(Cn.current=e,e?(uc.current.cancel(),at(!1)):uc.current.maybeExecute())},[]);(0,q.useEffect)(()=>{on(null),Cn.current=!0,Tn(!0),uc.current.cancel(),at(!1);let e=en.current;en.current=!1,Nt(e||!Gt.current&&Wt.current!==`phone`),$t.current=null},[W?.id]),(0,q.useEffect)(()=>{if(!ne||!_a||Mt)return;let e=qr?.turnId??null;if(e&&_a.turnId!==e)return;let t=_a.turnId??Ia?.turnId??`__dismissed__`;if($t.current!==t){if(Wt.current===`phone`){let e=document.activeElement;if(e instanceof HTMLElement&&e.closest(`[data-chat-composer-form="true"]`)!==null){$t.current=t;return}}Nt(!0)}},[_a,qr?.turnId,ne,Mt,Ia?.turnId]),(0,q.useEffect)(()=>{if(!W?.id||On.terminalOpen)return;let e=window.requestAnimationFrame(()=>{Ds()});return()=>{window.cancelAnimationFrame(e)}},[W?.id,Ds,On.terminalOpen]),(0,q.useEffect)(()=>{if(!W?.id||W.messages.length===0)return;let e=new Set(W.messages.map(e=>e.id)),t=ct.filter(t=>e.has(t.id));if(t.length===0)return;let n=window.setTimeout(()=>{lt(t=>t.filter(t=>!e.has(t.id)))},0);for(let e of t){let t=vd(e);if(t.length>0){Eo(e.id,t);continue}_d(e)}return()=>{window.clearTimeout(n)}},[W?.id,W?.messages,Eo,ct]),(0,q.useEffect)(()=>{lt(e=>{for(let t of e)_d(t);return[]}),Va(),st(null)},[v,Va,a]);let fc=(0,q.useCallback)(()=>{st(null)},[]),pc=W?.worktreePath??null,mc=Or({activeWorktreePath:pc,hasServerThread:ar,draftThreadEnvMode:dr?Ve?.envMode:void 0}),hc=!!(ar&&W&&W.messages.length===0&&W.worktreePath===null&&!Ss),gc=hc&&gn!==void 0?gn:W?.branch??null,{sourceControlActions:_c,branchControl:vc}=_L({gitCwd:Ko,activeThreadRef:Ar,routeKind:c,draftId:v,onPostPush:Xo,branchControlThread:W?{environmentId:W.environmentId,id:W.id}:null,isGitRepo:os,canOverrideServerThreadBranch:hc,activeThreadBranch:gc,onActiveThreadBranchOverrideChange:yn,envLocked:Ss,onComposerFocusRequest:Os,canCheckoutPullRequestIntoThread:fr,onCheckoutPullRequestRequest:Pi}),yc=yd({requestedEnvMode:mc,isGitRepo:os});(0,q.useEffect)(()=>{yn(void 0)},[W?.id]),(0,q.useEffect)(()=>{hc||yn(void 0)},[hc]),(0,q.useEffect)(()=>{if(!hr){hn(null),qn(x);return}hn(e=>!e||e.threadId===hr?e:null)},[hr,x,qn]),(0,q.useEffect)(()=>{!hr||!ns||hn(e=>!e||e.threadId!==hr?e:xa({project:{cwd:ns},worktreePath:rs})===e.cwd&&(rs??null)===e.worktreePath?(Ar&&qn(Ar),null):e)},[ns,hr,Ar,rs,qn]),(0,q.useEffect)(()=>{!hr||!ns||!Gn||xa({project:{cwd:ns},worktreePath:rs})===Gn.cwd&&(rs??null)===Gn.worktreePath&&Ar&&qn(Ar)},[ns,hr,Ar,rs,qn,Gn]),(0,q.useEffect)(()=>{On.terminalOpen||(Ar&&qn(Ar),hn(e=>e?.threadId===hr?null:e))},[hr,Ar,qn,On.terminalOpen]),(0,q.useEffect)(()=>{if(!jr)return;let e=Dn.current[jr]??!1,t=!!On.terminalOpen;if(!e&&t){Dn.current[jr]=t,rn(e=>e+1);return}if(e&&!t){Dn.current[jr]=t;let e=window.requestAnimationFrame(()=>{Ds()});return()=>{window.cancelAnimationFrame(e)}}Dn.current[jr]=t},[jr,Ds,On.terminalOpen]),(0,q.useEffect)(()=>{let e=e=>{!hr||e.defaultPrevented||wo(e,Qo,{context:{terminalFocus:Ms(),terminalOpen:!!On.terminalOpen,modelPickerOpen:nt()?.isModelPickerOpen()??!1}})===`thread.find`&&(vR(e)||(e.preventDefault(),e.stopPropagation(),Ns()))};return window.addEventListener(`keydown`,e,!0),()=>window.removeEventListener(`keydown`,e,!0)},[hr,Qo,Ns,nt,On.terminalOpen]),(0,q.useEffect)(()=>{let e=e=>{e.defaultPrevented||jo(e)&&!un.current||Do(e,`p`,{shiftKey:!0})&&(e.preventDefault(),e.stopPropagation(),pn(`prs`),cn(e=>!e))};return window.addEventListener(`keydown`,e,!0),()=>window.removeEventListener(`keydown`,e,!0)},[]);let bc=(0,q.useCallback)(()=>{pn(`prs`),cn(!0)},[]);TL({activeThreadId:hr,keybindings:Qo,terminalOpen:On.terminalOpen,activeTerminalId:On.activeTerminalId,readComposer:nt,activeProject:Qr,toggleTerminalVisibility:Bs,splitTerminal:Vs,closeTerminal:Us,createNewTerminal:Hs,setTerminalOpen:zs,onToggleDiff:ps,onOpenFilesPanel:ms,onOpenReviewPanel:fs,onOpenTerminalPanel:hs,onOpenSimulatorPanel:gs,runProjectScript:Ws});let xc=(0,q.useCallback)(async e=>{await br({thread:W??null,turnCount:e,environmentUnavailable:Si,environmentUnavailableLabel:Ti,turnInProgress:aa===`running`||Wa||At})},[Si,Ti,W,At,Wa,aa,br]),Sc=(0,q.useCallback)(e=>W?It({threadStarted:Ka,policy:Ja,canonicalSelection:W.modelSelection,targetSelection:e}):!1,[W,Ka,Ja]),Cc=(0,q.useCallback)(()=>{ki.add(ks({type:`warning`,title:`Wait for the thread to become idle`,description:Ja.reason===`phone-tier`?`Provider switching stays on the current provider in the web phone view.`:`The staged provider or model was not sent. Try again when this thread is idle.`}))},[Ja.reason]),wc=(0,q.useCallback)(e=>{let n=W?.session?.providerInstanceId,r=n?ra.find(e=>e.instanceId===n):void 0,i=W?.tokenMode??`balanced`,a=W?.interactionMode??`default`;return Ae({mutationReady:t.allowed&&!Si,turnRunning:aa===`running`,activeTurnId:W?.session?.activeTurnId,supportsTurnSteering:r?.supportsTurnSteering===!0,queuedModelSelection:e.composer.selectedModelSelection,activeModelSelection:W?.modelSelection,queuedRuntimeMode:e.settings.runtimeMode,activeRuntimeMode:W?.runtimeMode,queuedInteractionMode:e.settings.interactionMode,activeInteractionMode:a,queuedTokenMode:e.settings.tokenMode,activeTokenMode:i})},[Si,W,ra,t.allowed,aa]),Tc=(0,q.useCallback)(e=>{let t=wc(e);return t.allowed?null:t.reason},[wc]),Ec=(0,q.useCallback)(async e=>{if(!jr||!W)return;let t=wc(e);if(!t.allowed){ki.add(ks({type:`warning`,title:`Cannot steer this message`,description:t.reason}));return}let n=Le(r);if(n){Br(jr,e.id);try{let r=$L({composer:e.composer,formatOutgoingPrompt:hR}),i=du(e.composer.sourceControlContexts),a=i?`${i}\n\n${r}`:r,o=await eR(e.composer.images),s=new Date().toISOString();await n.orchestration.dispatchCommand(ze({commandId:no(),threadId:W.id,expectedTurnId:t.expectedTurnId,messageId:y.make(e.id),text:a,attachments:o,createdAt:e.createdAt??s,requestedAt:s}))}catch(t){Vr(jr,e.id),ki.add(ks({type:`error`,title:`Could not steer message`,description:t instanceof Error?t.message:`The steer request failed.`}))}}},[W,jr,Br,Vr,r,wc]);(0,q.useEffect)(()=>{if(!jr||Ur.length===0)return;let e=new Set(W?.messages.map(e=>String(e.id))??[]);for(let t of Ur)e.has(t)&&Wr(t)},[W?.messages,jr,Wr,Ur]),(0,q.useEffect)(()=>{if(!jr||Ur.length===0)return;let e=new Set(ua.flatMap(e=>{if(e.kind!==`provider.turn.steer.failed`||!e.payload)return[];let t=e.payload.messageId;return typeof t==`string`?[t]:[]}));for(let t of Ur)e.has(t)&&Vr(jr,t)},[jr,Vr,Ur,ua]);let Dc=async(e,n,a)=>{if(!t.allowed)return!1;let o=Le(r);if(!o||!W||!Qr)return!1;if(!Sc(e.selectedModelSelection))return Cc(),!1;let s=await ld({api:o,threadId:W.id,prompt:e.prompt}).catch(()=>({requested:!1,image:null}));if(s.image)e.images.length<8?e={...e,images:[...e.images,s.image]}:(URL.revokeObjectURL(s.image.previewUrl),ki.add(ks({type:`warning`,title:`The simulator screenshot was skipped`,description:`This message already has 8 attachments.`})));else if(s.requested){let e=s.reason===`no-attached-device`?`Open the Simulator workspace and choose a device first.`:s.reason===`device-not-booted`?`The selected simulator is still starting.`:`The current simulator screen could not be attached.`;ki.add(ks({type:`warning`,title:`Couldn’t attach the simulator screen`,description:e}))}let c=Qt?{...n,interactionMode:nn}:n,l=W.id,u=!ar||W.messages.length===0,{shouldMaterializeLegacyBranchWorktree:d,baseBranchForWorktree:f,shouldCreateWorktree:p}=bd({isServerThread:ar,isFirstMessage:u,threadWorktreePath:W.worktreePath,activeThreadBranch:gc,currentGitRefName:qo.data?.refName??null,sendEnvMode:yc}),m=u&&yc===`worktree`?Ve?.worktreeSource??null:null;if(m&&!o.git.createWorktreeForProject)return gr(l,`Worktree creation is unavailable in this environment.`),!1;let h=null,g=async()=>{let e=o.git.createWorktreeForProject;if(!m||!e||!Qr)return null;let t=await e({projectId:Qr.id,intent:m.kind===`pr`?{kind:`pr`,number:m.number}:m.kind===`issue`?{kind:`issue`,number:m.number,title:m.title}:{kind:`workItem`,provider:m.provider,key:m.key,title:m.title,...m.state?{state:m.state}:{},...m.stateName?{stateName:m.stateName}:{},...m.url?{url:m.url}:{}}});return h=i(r,t.sessionId),{threadId:t.sessionId,isServerThread:!0,isFirstMessage:!0}};return p&&!gc&&!m?(gr(l,`Select a base branch before sending in New worktree mode.`),!1):(await tR({...a===void 0?{}:{messageId:a},composer:e,thread:{threadId:l,isFirstMessage:u,isServerThread:ar,isLocalDraftThread:dr&&!m,activeThreadBranch:gc,worktreePath:W.worktreePath,createdAt:W.createdAt,projectId:Qr.id},worktree:m?{shouldMaterializeLegacyBranchWorktree:!1,baseBranchForWorktree:null,shouldCreateWorktree:!1}:{shouldMaterializeLegacyBranchWorktree:d,baseBranchForWorktree:f,shouldCreateWorktree:p},settings:c,project:{projectId:Qr.id,projectCwd:Qr.cwd,defaultModelSelection:Qr.defaultModelSelection??null},...m?{prepareForDispatch:g}:{},scroll:{scrollToEndBeforeOptimistic:async()=>{Cn.current=!0,Tn(!0),uc.current.cancel(),at(!1),await Sn.current?.scrollToEnd?.({animated:!1})},scrollToEndAfterOptimistic:sc},draft:{composerDraftTarget:E,environmentId:r,clearComposerDraftContent:Me,setComposerDraftTokenMode:je,setComposerDraftPrompt:ve,addComposerDraftImages:be,setComposerDraftTerminalContexts:xe,setDraftThreadContext:Ne},dispatch:{api:o,beginLocalDispatch:Ba,resetLocalDispatch:Va,setOptimisticUserMessages:lt,setThreadError:gr},refs:{promptRef:Ue,composerImagesRef:We,composerTerminalContextsRef:Ge,sendInFlightRef:En},sourceControl:{fetcher:async e=>{let t=Ko;if(!t)return e;let n=b(new Date),i=b(new Date(Date.now()+3e5));if(e.kind===`issue`){let a=await Jo.fetchQuery(Ci({environmentId:r,cwd:t,reference:String(e.detail.number)}));return{...e,detail:a,fetchedAt:n,staleAfter:i}}let a=await Jo.fetchQuery(vi({environmentId:r,cwd:t,reference:String(e.detail.number)}));return{...e,detail:a,fetchedAt:n,staleAfter:i}}},persistSettings:{persistThreadSettingsForNextTurn:tc},composerHandle:{readComposer:nt},formatOutgoingPrompt:hR}),h&&(v&&Fe(v),await re({to:`/$environmentId/$threadId`,params:An(h),replace:!0})),!0)},Oc=(0,q.useRef)(Dc);Oc.current=Dc;let kc=async e=>{if(e?.preventDefault(),!t.allowed||!Le(r)||!W||Wa&&aa!==`running`||At||Si||En.current)return;if(Da){Na();return}let n=nt()?.getSendContext();if(!n)return;let{images:i,terminalContexts:a,sourceControlContexts:o,selectedProvider:s,selectedModel:c,selectedProviderModels:l,selectedPromptEffort:u,selectedModelSelection:d}=n,f=Ue.current,{trimmedPrompt:p,sendableTerminalContexts:m,expiredTerminalContextCount:h,hasSendableContent:g}=Cd({prompt:f,imageCount:i.length,terminalContexts:a}),_=i.length===0&&m.length===0?St(p):null;if(_!==null){if(!D){ki.add({type:`warning`,title:`Start the thread first`,description:`A goal can be attached after the thread has been created.`});return}if(_.length===0){ki.add({type:`warning`,title:`Describe the goal`,description:`Use /goal followed by the outcome you want this thread to pursue.`});return}if(_.length>4e3){ki.add({type:`warning`,title:`Goal is too long`,description:`Keep the objective under ${C.toLocaleString()} characters.`});return}await nc({objective:_})&&(Ue.current=``,Me(E),je(E,ur),nt()?.resetCursorState());return}if(Ra&&Fa){let e=_u({draftText:p,planMarkdown:Fa.planMarkdown});Ue.current=``,Me(E),je(E,ur),nt()?.resetCursorState(),await Mc({text:e.text,interactionMode:e.interactionMode});return}let v=i.length===0&&m.length===0?ut(p):null;if(v){Ys(v),Ue.current=``,Me(E),je(E,ur),nt()?.resetCursorState();return}if(!g){if(h>0){let e=wd(h,`empty`);ki.add(ks({type:`warning`,title:e.title,description:e.description}))}return}let y={prompt:f,trimmedPrompt:p,images:i,sendableTerminalContexts:m,sourceControlContexts:o,selectedProvider:s,selectedModel:c,selectedProviderModels:l,selectedPromptEffort:u,selectedModelSelection:d,expiredTerminalContextCount:h},b={runtimeMode:cr,interactionMode:lr,tokenMode:ur};if(!Sc(y.selectedModelSelection)){Cc();return}if(aa===`running`&&jr){let e=ao();Ir(jr,{id:e,createdAt:new Date().toISOString(),composer:{...y,images:y.images.map(Sd)},settings:b}),Ue.current=``,Me(E),je(E,ur),nt()?.resetCursorState();return}await Oc.current(y,b)},Ac=(0,q.useRef)(kc);Ac.current=kc;let jc=(0,q.useCallback)(e=>{Ac.current(e)},[]);(0,q.useEffect)(()=>{if(!jr)return;let e=jr,n=Hr[0];n&&t.allowed&&(io||Si||Da||za||En.current||Ur.includes(n.id)||Oc.current(n.composer,n.settings,y.make(n.id)).then(t=>{t&&zr(e)}))},[jr,Hr,io,Si,Da,za,t.allowed,zr,Ur]);let Mc=(0,q.useCallback)(async({text:e,interactionMode:t})=>{let n=Le(r);if(!n||!W||!ar||Wa||At||En.current)return;let a=e.trim();if(!a)return;let o=nt()?.getSendContext();if(!o)return;let{selectedProvider:s,selectedModel:c,selectedProviderModels:l,selectedPromptEffort:u,selectedModelSelection:d}=o;if(!Sc(d)){Cc();return}let f=W.id,p=ao(),m=new Date().toISOString(),h=hR({provider:s,model:c,models:l,effort:u,text:a});En.current=!0,Ba({preparingWorktree:!1}),gr(f,null),Cn.current=!0,Tn(!0),uc.current.cancel(),at(!1),await Sn.current?.scrollToEnd?.({animated:!1}),lt(e=>[...e,{id:p,role:`user`,text:h,createdAt:m,streaming:!1}]),sc();try{await tc({threadId:f,createdAt:m,runtimeMode:cr,interactionMode:t,tokenMode:ur}),we(i(W.environmentId,f),t),je(i(W.environmentId,f),ur),await n.orchestration.dispatchCommand({type:`thread.turn.start`,commandId:no(),threadId:f,message:{messageId:p,role:`user`,text:h,attachments:[]},modelSelection:d,titleSeed:W.title,runtimeMode:cr,interactionMode:t,tokenMode:ur,...t==="default"&&Fa?{sourceProposedPlan:{threadId:W.id,planId:Fa.id}}:{},createdAt:m}),t==="default"&&ne&&($t.current=null,Nt(!0)),En.current=!1}catch(e){lt(e=>e.filter(e=>e.id!==p)),gr(f,e instanceof Error?e.message:`Failed to send plan follow-up.`),En.current=!1,Va()}},[W,Fa,Ba,Sc,At,Wa,ar,Cc,tc,nt,Va,cr,sc,we,je,gr,ne,r,ur]),Nc=(0,q.useCallback)(async()=>{let e=Le(r);if(!e||!W||!Qr||!Fa||!ar||Wa||At||Si||En.current)return;let t=nt()?.getSendContext();if(!t)return;let{selectedProvider:n,selectedModel:a,selectedProviderModels:o,selectedPromptEffort:s,selectedModelSelection:c}=t,l=new Date().toISOString(),u=to(),d=Fa.planMarkdown,f=hR({provider:n,model:a,models:o,effort:s,text:gu(d)}),p=su(vu(d)),m=c;En.current=!0,Ba({preparingWorktree:!1});let h=()=>{En.current=!1,Va()};await e.orchestration.dispatchCommand({type:`thread.create`,commandId:no(),threadId:u,projectId:Qr.id,title:p,modelSelection:m,runtimeMode:cr,interactionMode:`default`,tokenMode:ur,branch:gc,worktreePath:W.worktreePath,createdAt:l}).then(()=>e.orchestration.dispatchCommand({type:`thread.turn.start`,commandId:no(),threadId:u,message:{messageId:ao(),role:`user`,text:f,attachments:[]},modelSelection:c,titleSeed:p,runtimeMode:cr,interactionMode:`default`,tokenMode:ur,sourceProposedPlan:{threadId:W.id,planId:Fa.id},createdAt:l})).then(()=>Od(i(W.environmentId,u))).then(()=>(en.current=ne,re({to:`/$environmentId/$threadId`,params:{environmentId:W.environmentId,threadId:u}}))).catch(async t=>{await e.orchestration.dispatchCommand({type:`thread.delete`,commandId:no(),threadId:u}).catch(()=>void 0),ki.add(ks({type:`error`,title:`Could not start implementation thread`,description:t instanceof Error?t.message:`An error occurred while creating the new thread.`}))}).then(h,h)},[Qr,Fa,gc,W,Ba,Si,At,Wa,ar,re,nt,Va,cr,ur,ne,r]),Pc=(0,q.useCallback)((e,t)=>{if(!W)return;let n=ta.find(t=>t.instanceId===e);if(!n||!n.enabled||!n.installed||n.status!==`ready`||n.availability===`unavailable`){Os();return}let r=n?.driver??null;if(Ja.mode===`continuation-only`&&Xa===null){Os();return}if(Xa!==null&&r!==null&&r!==Xa){Os();return}if(Xa!==null&&W.session?.providerInstanceId){let e=ta.find(e=>e.instanceId===W.session?.providerInstanceId);if(e?.continuation?.groupKey&&n?.continuation?.groupKey&&e.continuation.groupKey!==n.continuation.groupKey){Os();return}}let a=ht(e,N,ta,t);if(!a){Os();return}let o={instanceId:e,model:a};if(!It({threadStarted:Ka,policy:Ja,canonicalSelection:W.modelSelection,targetSelection:o})){Os();return}Se(i(W.environmentId,W.id),o),Ed(W)||R(o);let s=_n(lr,n.supportsAskMode??!1);s!==lr&&Ys(s),Os()},[W,Ka,Ys,lr,Xa,Ja,Os,Se,R,ta,N]),Fc=(0,q.useCallback)(e=>{st(e)},[]),Ic=(0,q.useRef)(Wo);Ic.current=Wo;let Lc=(0,q.useRef)(xc);Lc.current=xc;let Rc=(0,q.useCallback)(e=>{let t=Ic.current.get(e);typeof t==`number`&&Lc.current(t)},[]),zc=(0,q.useCallback)(e=>{Lc.current(e)},[]);(0,q.useEffect)(()=>{mr||Rt(!1)},[mr]),(0,q.useEffect)(()=>{Rt(!1),Ft(!1)},[W?.id]);let Bc=Mt&&!mr&&!(Mo&&!Pt),Vc=Lt&&mr,Hc=Bc||Vc,Wc=Ht===`phone`,qc=Bc&&!zt&&!Wc,Jc=Bc&&(zt||Wc),Yc=Su(Vc,Bt||!mr?0:260),Xc=Su(qc,Bt||zt||mr?0:320),Zc=(0,q.useMemo)(()=>!Wc||!W?null:{environmentId:W.environmentId,threadId:W.id,title:W.title,projectCwd:Ko,branch:$r?.branch??W.branch??null,draft:c===`draft`&&v?{draftId:v,projectId:W.projectId,createdAt:W.createdAt}:null,workspacePanelOpen:mr,onToggleWorkspacePanel:_s,onOpenFindInThread:Ns,onOpenSourceControl:c===`draft`?null:()=>ec(!0),sessionTabs:di,activeSessionTabKey:fi,onSelectSessionTab:pi},[fi,W,di,$r?.branch,v,Ko,pi,Wc,_s,Ns,c,ec,mr]),Qc=Ht!==`phone`&&!Mo,$c=Ht!==`phone`,el=(0,q.useRef)(null),tl=(0,q.useRef)(null),nl=(0,q.useRef)(null),rl=(0,q.useRef)(null);return(0,q.useEffect)(()=>{let e=el.current;if(!e)return;if(!Qc){e.style.removeProperty(`--chat-composer-clearance`);return}let t=tl.current;if(!t)return;let n=()=>e.style.setProperty(`--chat-composer-clearance`,`${t.offsetHeight+8}px`);n();let r=new ResizeObserver(n);return r.observe(t),()=>{r.disconnect(),e.style.removeProperty(`--chat-composer-clearance`)}},[Qc,hr]),(0,q.useEffect)(()=>{let e=nl.current;if(!e)return;if(!$c){e.style.removeProperty(`--chat-header-clearance`);return}let t=rl.current;if(!t)return;let n=()=>e.style.setProperty(`--chat-header-clearance`,`${t.offsetHeight+8}px`);n();let r=new ResizeObserver(n);return r.observe(t),()=>{r.disconnect(),e.style.removeProperty(`--chat-header-clearance`)}},[$c,hr]),W?(0,Y.jsxs)(`div`,{ref:nl,className:`relative flex min-h-0 min-w-0 flex-1 flex-col overflow-hidden bg-background`,children:[(0,Y.jsx)(`header`,{ref:rl,className:G(`border-b phone:pt-safe`,$c?`app-chrome-glass border-sidebar-border`:`border-border bg-muted/24`,$c&&`absolute inset-x-0 top-0 z-20`,Un,d?G(`drag-region flex min-h-[52px] items-stretch pr-3 sm:pr-5 wco:min-h-[env(titlebar-area-height)]`,Ut?Hn:`pl-3 sm:pl-5`,_&&`wco:pr-[calc(100vw-env(titlebar-area-width)-env(titlebar-area-x)+1em)]`):G(`pr-[calc(env(safe-area-inset-right)+0.75rem)] sm:pr-[calc(env(safe-area-inset-right)+1.25rem)]`,Ut?Hn:`pl-[calc(env(safe-area-inset-left)+0.75rem)] sm:pl-[calc(env(safe-area-inset-left)+1.25rem)]`)),children:Ht===`phone`?(0,Y.jsx)(jN,{environmentId:W.environmentId,threadId:W.id,title:W.title}):(0,Y.jsx)(AN,{activeThreadEnvironmentId:W.environmentId,activeThreadTitle:W.title,activeProjectName:Qr?.name,isGitRepo:os,openInCwd:Ko,activeProjectScripts:Qr?.scripts,preferredScriptId:Qr?bn[Qr.id]??null:null,keybindings:Qo,availableEditors:$o,worktreeBranch:$r?.branch??W.branch??null,worktreeTitle:$r?.title??null,worktreeOrigin:$r?.origin??null,worktreeIssueNumber:$r?.issueNumber??null,worktreeIssueState:$r?.issueState??null,worktreePrNumber:$r?.prNumber??null,worktreePrState:$r?.prState??null,worktreePrIsDraft:$r?.prIsDraft??null,worktreeWorkItemProvider:$r?.workItemProvider??null,worktreeWorkItemKey:$r?.workItemKey??null,worktreeWorkItemState:$r?.workItemState??null,worktreeWorkItemStateName:$r?.workItemStateName??null,onOpenLinkedWorktreeItem:ai,workspacePanelOpen:mr,liveAgentCount:fd({liveCount:ba.liveCount,workspacePanelOpen:mr,workspaceTab:H.workspaceTab}),onToggleWorkspacePanel:_s,overviewSidebarOpen:Hc,onToggleOverviewSidebar:ec,onRunProjectScript:Ws,onAddProjectScript:Gs,onUpdateProjectScript:Ks,onDeleteProjectScript:qs})}),(0,Y.jsx)(Ri,{open:ri!==null,item:ri,environmentId:Qr?.environmentId??W.environmentId,projectId:Qr?.id??W.projectId,cwd:Qr?.cwd??Ko,onOpenChange:oi}),(0,Y.jsx)(`div`,{className:G($c&&`absolute inset-x-0 top-(--chat-header-clearance,0px) z-20`),children:(0,Y.jsx)(BN,{status:ts})}),(0,Y.jsx)(VN,{error:W.error,threadRef:Ar,onDismiss:()=>gr(W.id,null)}),(0,Y.jsxs)(`div`,{className:`flex min-h-0 min-w-0 flex-1`,children:[(0,Y.jsxs)(`div`,{ref:el,className:`relative flex min-h-0 min-w-0 flex-1 flex-col`,children:[(0,Y.jsxs)(`div`,{className:`relative flex min-h-0 flex-1 flex-col`,children:[Mo?null:sr?(0,Y.jsx)(gj,{agentPanelModel:ba,onOpenAgents:bs,isWorking:io,activeTurnInProgress:io||!Yr,activeTurnId:qr?.turnId??null,latestTurn:qr,activeTurnStartedAt:xo,listRef:Sn,targetMessageId:xt?.messageId??H.messageId??null,targetMessageRequestId:xt?.requestId??0,targetMessageRowHighlight:xt===null,threadMessageSearchQuery:dt?pt:``,threadMessageSearchOccurrencesByMessageId:Fo,activeThreadMessageSearchOccurrence:dt?Ro:null,timelineEntries:Ao,turnDiffSummaryByAssistantMessageId:Uo,activeThreadEnvironmentId:W.environmentId,routeThreadKey:w,openDiffTurnId:pr?H.diffTurnId??null:null,onOpenTurnDiff:vs,onCloseDiff:ys,revertTurnCountByUserMessageId:Wo,undoTurnCountByTurnId:Go,onUndoTurn:zc,onRevertUserMessage:Rc,isRevertingCheckpoint:kr,onImageExpand:Fc,markdownCwd:Ko??void 0,resolvedTheme:ce,timestampFormat:z,workspaceRoot:is,skills:ts?.skills??cR,liveFollowEnabled:wn,onIsAtEndChange:dc,onManualNavigation:cc,onUserReachedEnd:lc,canLoadOlder:Nr?.hasMoreBefore??!1,isLoadingOlder:Pr?.status===`loading`,loadOlderError:Pr?.error??null,onLoadOlder:Fr,...Ht===`phone`?{}:{onInspectContextHandoff:Xt}},W.id):(0,Y.jsx)(`div`,{"aria-hidden":!0,className:`flex min-h-0 flex-1`}),dt?(0,Y.jsx)(aN,{query:pt,focusRequestId:_t,matchCount:Io,selectedIndex:Lo,onQueryChange:gt,onNext:()=>Is(`next`),onPrevious:()=>Is(`previous`),onClose:Fs}):null,Yc?(0,Y.jsx)(hL,{animate:!Bt,open:Vc,children:(0,Y.jsx)(vL,{environmentId:r,gitCwd:Ko,activeWorktreeBranch:$r?.branch??null,activeThreadBranch:W?.branch??null,activeWorktreePrNumber:$r?.prNumber??null,activeWorktreePrState:$r?.prState,activeWorktreePrIsDraft:$r?.prIsDraft,activeWorktreeTitle:$r?.title,postPushWorkflowWatch:Yo,activeThreadKey:jr,activeEnvironmentUnavailableState:Ei,activePlan:_a,sidebarProposedPlan:Ia,threadSubagents:ya,changedFileSummaries:W?.turnDiffSummaries,sourceControlActions:_c,branchControl:vc,markdownCwd:Ko??void 0,workspaceRoot:is,mode:`floating`,onClose:$s,onOpenFiles:ms,onOpenReview:fs,onOpenSubagent:xs,onPostPushDiscoveryComplete:Zo})}):null,it&&(0,Y.jsx)(`div`,{className:`pointer-events-none absolute bottom-[calc(var(--chat-composer-clearance,0px)+0.25rem)] left-1/2 z-30 flex -translate-x-1/2 justify-center py-1.5`,children:(0,Y.jsxs)(`button`,{type:`button`,onClick:()=>oc(!0),className:`pointer-events-auto flex items-center gap-1.5 rounded-full border-0 bg-card/80 px-3 py-1 text-muted-foreground text-xs shadow-md/5 ring-1 ring-inset ring-foreground/6 backdrop-blur transition-[background-color,color,box-shadow] hover:bg-card hover:text-foreground hover:shadow-lg/8 hover:cursor-pointer`,children:[(0,Y.jsx)(Xr,{className:`size-3.5`}),`Scroll to bottom`]})})]}),Mo?(0,Y.jsx)(`div`,{className:G(`shrink-0`,!Bt&&`animate-in fade-in slide-in-from-bottom-1`),children:(0,Y.jsx)(IM,{projectName:Qr?.name??null,activeProjectId:Qr?.id??null,activeProjectEnvironmentId:Qr?.environmentId??null,routeKind:c,envLocked:Ss,draftId:v??void 0,workLocation:os?(0,Y.jsx)(XM,{draftId:v??void 0,environmentId:W.environmentId,threadId:W.id,projectId:Qr?.id??null,projectEnvironmentId:Qr?.environmentId??null,projectName:Qr?.name??null,envLocked:Ss,availableEnvironments:Mi,onEnvironmentChange:Ni?Cs:void 0,onComposerFocusRequest:Os,onCheckoutPullRequestRequest:fr?Pi:void 0,cwd:Qr?.cwd??Ko}):null})}):null,(0,Y.jsxs)(`div`,{ref:tl,className:G(`flex min-h-0 flex-col justify-end`,Qc&&`pointer-events-none absolute inset-x-0 bottom-0 z-20`,`pl-[calc(env(safe-area-inset-left)+0.75rem)] pr-[calc(env(safe-area-inset-right)+0.75rem)] pt-1.5 sm:pl-[calc(env(safe-area-inset-left)+1.25rem)] sm:pr-[calc(env(safe-area-inset-right)+1.25rem)] sm:pt-2`,os?`pb-[calc(max(env(safe-area-inset-bottom),var(--app-keyboard-inset,0px))+0.25rem)]`:`pb-[calc(max(env(safe-area-inset-bottom),var(--app-keyboard-inset,0px))+0.75rem)] sm:pb-[calc(max(env(safe-area-inset-bottom),var(--app-keyboard-inset,0px))+1rem)]`),children:[Qc?(0,Y.jsx)(`div`,{"aria-hidden":!0,className:`-top-10 -z-10 pointer-events-none absolute inset-x-0 bottom-0 bg-linear-to-t from-background via-background/45 to-transparent`}):null,(0,Y.jsxs)(`div`,{className:G(`relative isolate`,Qc&&`pointer-events-auto`),children:[uo!==null&&Ht!==`phone`?(0,Y.jsx)(`div`,{className:`mx-auto mb-2 flex w-full min-w-0 max-w-208 items-center px-4`,children:(0,Y.jsx)(rd,{liveness:uo,liveCount:ba.liveCount,stopping:po,onStop:bo})}):null,(0,Y.jsx)(yP,{className:`relative z-0`,items:$i}),Ht===`phone`?null:(0,Y.jsx)(pP,{environmentId:r,activeThreadId:hr}),ea?(0,Y.jsx)(`div`,{"aria-hidden":!0,className:`mb-2 h-5`}):null,(0,Y.jsx)(iR,{messages:Hr,onRemove:Wr,onMove:Gr,showSteerAction:Ht!==`phone`,steeringIds:Ur,getSteerUnavailableReason:Tc,onSteer:e=>void Ec(e)}),(0,Y.jsx)(`div`,{className:`relative z-10`,children:(0,Y.jsx)(gO,{ref:Je,composerDraftTarget:E,environmentId:r,routeKind:c,routeThreadRef:x,draftId:v,activeThreadId:hr,activeThreadEnvironmentId:W?.environmentId,activeThreadSessionProviderInstanceId:ia,activeThreadStarted:Ka,isServerThread:ar,isLocalDraftThread:dr,activeThreadGoal:D?.goal??null,phase:aa,isConnecting:At,isSendBusy:Wa||!t.allowed||Ts,isPreparingWorktree:Ua,environmentUnavailable:Ei,activePendingApproval:za,pendingApprovals:ha,pendingUserInputs:ga,activePendingProgress:Da,activePendingResolvedAnswers:ka,activePendingIsResponding:Aa,activePendingDraftAnswers:wa,activePendingQuestionIndex:Ea,respondingRequestIds:xr,showPlanFollowUpPrompt:Ra,activeProposedPlan:Fa,activePlan:_a,sidebarProposedPlan:Ia,planSidebarLabel:La,planSidebarOpen:Hc,runtimeMode:cr,interactionMode:lr,tokenMode:ur,lockedProvider:Xa,providerStatuses:ra,activeProjectDefaultModelSelection:Qr?.defaultModelSelection,activeThreadModelSelection:W?.modelSelection,activeThreadActivities:ua,phoneThreadDock:Zc,resolvedTheme:ce,settings:N,keybindings:Qo,terminalOpen:!!On.terminalOpen,gitCwd:Ko,executionTargets:Mi,executionTargetLocked:Ss||c===`server`,onExecutionTargetChange:Cs,promptRef:Ue,composerImagesRef:We,composerTerminalContextsRef:Ge,shouldAutoScrollRef:Cn,scheduleStickToBottom:oc,onSend:jc,onInterrupt:_r,onImplementPlanInNewThread:Nc,onRespondToApproval:vr,onSelectActivePendingUserInputOption:ja,onAdvanceActivePendingUserInput:Na,onPreviousActivePendingUserInputQuestion:Pa,onChangeActivePendingUserInputCustomAnswer:Ma,onProviderModelSelect:Pc,toggleInteractionMode:Zs,handleRuntimeModeChange:Js,handleInteractionModeChange:Ys,handleTokenModeChange:Xs,togglePlanSidebar:ec,focusComposer:Ds,scheduleComposerFocus:Os,setThreadError:gr,onExpandImage:Fc,onEditGoal:rc,onGoalStatusChange:ic,onClearGoal:ac})})]}),os&&(0,Y.jsx)(`div`,{className:G(Qc&&`pointer-events-auto`),children:(0,Y.jsx)(td,{environmentId:W.environmentId,threadId:W.id,...c===`draft`&&v?{draftId:v}:{},...hc?{activeThreadBranchOverride:gc,onActiveThreadBranchOverrideChange:yn}:{},envLocked:Ss,onComposerFocusRequest:Os,onOpenWorktreeSources:bc,contextControlsHoisted:Mo,...fr?{onCheckoutPullRequestRequest:Pi}:{},...Ni?{onEnvironmentChange:Cs}:{},availableEnvironments:Mi,terminalAvailable:Qr!==void 0&&n.allowed,terminalOpen:On.terminalOpen,terminalToggleShortcutLabel:cs,onToggleTerminal:Bs,terminalCount:On.terminalIds.length})})]}),Mo?(0,Y.jsx)(`div`,{"aria-hidden":!0,className:`min-h-0 flex-1`}):null,an?(0,Y.jsx)(zO,{open:!0,environmentId:W.environmentId,projectId:Qr?.id??null,threadId:W.id,cwd:Qr?.cwd??null,initialReference:an.initialReference,onOpenChange:e=>{e||Fi()},onPrepared:Li},an.key):null,(0,Y.jsx)(Hi,{open:sn,environmentId:W.environmentId,projectId:Qr?.id??null,cwd:Qr?.cwd??null,initialTab:dn,onCreated:e=>{re({to:`/$environmentId/$threadId`,params:{environmentId:W.environmentId,threadId:e.sessionId}})},onOpenChange:cn})]}),Jt&&!zt&&!Wc?(0,Y.jsx)(`aside`,{className:`flex min-h-0 w-[25rem] shrink-0 border-l border-border pt-[var(--chat-header-clearance,0px)]`,children:(0,Y.jsx)(RO,{environmentId:W.environmentId,threadId:W.id,marker:Jt.marker,onClose:Zt})}):Xc?(0,Y.jsx)(mL,{animate:!Bt,open:qc,children:(0,Y.jsx)(vL,{environmentId:r,gitCwd:Ko,activeWorktreeBranch:$r?.branch??null,activeThreadBranch:W?.branch??null,activeWorktreePrNumber:$r?.prNumber??null,activeWorktreePrState:$r?.prState,activeWorktreePrIsDraft:$r?.prIsDraft,activeWorktreeTitle:$r?.title,postPushWorkflowWatch:Yo,activeThreadKey:jr,activeEnvironmentUnavailableState:Ei,activePlan:_a,sidebarProposedPlan:Ia,threadSubagents:ya,changedFileSummaries:W?.turnDiffSummaries,sourceControlActions:_c,branchControl:vc,markdownCwd:Ko??void 0,workspaceRoot:is,mode:`sidebar`,onOpenFiles:ms,onOpenReview:fs,onOpenSubagent:xs,onPostPushDiscoveryComplete:Zo})}):null]}),er.map(({key:e,threadRef:t})=>(0,Y.jsx)(vO,{threadRef:t,threadId:t.threadId,visible:e===jr&&On.terminalOpen&&n.allowed,launchContext:e===jr?as??null:null,focusRequestId:e===jr?tn:0,splitShortcutLabel:ls??void 0,newShortcutLabel:us??void 0,closeShortcutLabel:ds??void 0,keybindings:Qo,onAddTerminalContext:Rs},e)),!Wc&&zt&&Jt?(0,Y.jsx)(aR,{open:!0,onClose:Zt,children:(0,Y.jsx)(RO,{environmentId:W.environmentId,threadId:W.id,marker:Jt.marker,onClose:Zt})}):null,Wc?(0,Y.jsx)(NN,{label:La,open:Jc,onClose:$s,children:(0,Y.jsx)(PN,{title:La,backLabel:`Back to thread`,onBack:$s,children:(0,Y.jsx)(vL,{environmentId:r,gitCwd:Ko,activeWorktreeBranch:$r?.branch??null,activeThreadBranch:W?.branch??null,activeWorktreePrNumber:$r?.prNumber??null,activeWorktreePrState:$r?.prState,activeWorktreePrIsDraft:$r?.prIsDraft,activeWorktreeTitle:$r?.title,postPushWorkflowWatch:Yo,activeThreadKey:jr,activeEnvironmentUnavailableState:Ei,activePlan:_a,sidebarProposedPlan:Ia,threadSubagents:ya,changedFileSummaries:W?.turnDiffSummaries,sourceControlActions:_c,branchControl:vc,markdownCwd:Ko??void 0,workspaceRoot:is,mode:`sheet`,onOpenFiles:ms,onOpenReview:fs,onOpenSubagent:xs,onPostPushDiscoveryComplete:Zo})})}):zt?(0,Y.jsx)(aR,{open:Jc,onClose:$s,children:(0,Y.jsx)(vL,{environmentId:r,gitCwd:Ko,activeWorktreeBranch:$r?.branch??null,activeThreadBranch:W?.branch??null,activeWorktreePrNumber:$r?.prNumber??null,activeWorktreePrState:$r?.prState,activeWorktreePrIsDraft:$r?.prIsDraft,activeWorktreeTitle:$r?.title,postPushWorkflowWatch:Yo,activeThreadKey:jr,activeEnvironmentUnavailableState:Ei,activePlan:_a,sidebarProposedPlan:Ia,threadSubagents:ya,changedFileSummaries:W?.turnDiffSummaries,sourceControlActions:_c,branchControl:vc,markdownCwd:Ko??void 0,workspaceRoot:is,mode:`sheet`,onOpenFiles:ms,onOpenReview:fs,onOpenSubagent:xs,onPostPushDiscoveryComplete:Zo})}):null,ot&&(0,Y.jsx)(DO,{preview:ot,onClose:fc})]}):(0,Y.jsx)(Kc,{})}var bR=(0,q.lazy)(()=>n(()=>import(`./ThreadWorkspacePanel-QF3KwbGm.js`),__vite__mapDeps([0]))),xR=`chat_diff_sidebar_width`,SR=`clamp(24rem,34vw,36rem)`,CR=352,wR=896,TR=360,ER=`w-5 cursor-ew-resize after:w-px after:bg-border/50 hover:after:bg-border focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring/40 focus-visible:ring-offset-0`,DR=208;function OR(e){return{...Vn(e),diff:void 0,diffTurnId:void 0,diffFilePath:void 0,preview:void 0,workspaceOpen:void 0,workspaceTab:void 0,workspaceAgentKey:void 0}}var kR=e=>{let t=(0,J.c)(6),n;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,Y.jsx)(_a,{}),t[0]=n):n=t[0];let r;t[1]===e.label?r=t[2]:(r=(0,Y.jsx)(ya,{label:e.label}),t[1]=e.label,t[2]=r);let i;return t[3]!==e.mode||t[4]!==r?(i=(0,Y.jsx)(sa,{mode:e.mode,header:n,children:r}),t[3]=e.mode,t[4]=r,t[5]=i):i=t[5],i};function AR(e){let t=(0,J.c)(11),[n,r]=(0,q.useState)(!e.animate&&e.open),i,a;t[0]!==e.animate||t[1]!==e.open?(i=()=>{if(!e.animate){r(e.open);return}if(!e.open){r(!1);return}let t=window.requestAnimationFrame(()=>r(!0));return()=>window.cancelAnimationFrame(t)},a=[e.animate,e.open],t[0]=e.animate,t[1]=e.open,t[2]=i,t[3]=a):(i=t[2],a=t[3]),(0,q.useEffect)(i,a);let o=e.animate?e.open&&n:e.open,s=!e.open||void 0,c=!e.open||void 0,l=o?`translate-x-0 opacity-100`:`translate-x-4 opacity-0`,u;t[4]===l?u=t[5]:(u=G(`flex min-h-0 w-full flex-1 transition-[translate,opacity] duration-[300ms] ease-[cubic-bezier(0.16,1,0.3,1)] will-change-transform motion-reduce:transition-none`,l),t[4]=l,t[5]=u);let d;return t[6]!==e.children||t[7]!==s||t[8]!==c||t[9]!==u?(d=(0,Y.jsx)(`div`,{"aria-hidden":s,inert:c,className:u,children:e.children}),t[6]=e.children,t[7]=s,t[8]=c,t[9]=u,t[10]=d):d=t[10],d}var jR=e=>{let t=(0,J.c)(15),n=e.panelMode===`review`?`Loading diff viewer...`:e.panelMode===`files`?`Loading file preview...`:e.panelMode===`terminal`?`Loading terminal...`:e.panelMode===`simulator`?`Loading simulator...`:e.panelMode===`agents`?`Loading agents...`:e.panelMode===`agent`?`Loading subagent thread...`:`Loading workspace...`,r;t[0]!==e.mode||t[1]!==n?(r=(0,Y.jsx)(kR,{mode:e.mode,label:n}),t[0]=e.mode,t[1]=n,t[2]=r):r=t[2];let i=e.maximized??!1,a=e.reserveChromeInset??!1,o;t[3]!==e.mode||t[4]!==e.onClosePanelTab||t[5]!==e.onToggleMaximized||t[6]!==e.openedAgentKeys||t[7]!==e.openedPanelModes||t[8]!==e.panelMode||t[9]!==i||t[10]!==a?(o=(0,Y.jsx)(bR,{mode:e.mode,panelMode:e.panelMode,openedPanelModes:e.openedPanelModes,openedAgentKeys:e.openedAgentKeys,onClosePanelTab:e.onClosePanelTab,maximized:i,onToggleMaximized:e.onToggleMaximized,reserveChromeInset:a}),t[3]=e.mode,t[4]=e.onClosePanelTab,t[5]=e.onToggleMaximized,t[6]=e.openedAgentKeys,t[7]=e.openedPanelModes,t[8]=e.panelMode,t[9]=i,t[10]=a,t[11]=o):o=t[11];let s;return t[12]!==r||t[13]!==o?(s=(0,Y.jsx)(aa,{children:(0,Y.jsx)(q.Suspense,{fallback:r,children:o})}),t[12]=r,t[13]=o,t[14]=s):s=t[14],s},MR=e=>{let t=(0,J.c)(41),{maximized:n,open:r,onClose:i,onOpen:a,panelMode:o,renderContent:s}=e,c=ni(Ps),l=Su(r,c?0:TR),u;t[0]===l?u=t[1]:(u=Ns({active:l,containIntrinsicSize:`28rem 100vh`}),t[0]=l,t[1]=u);let d=u,f;t[2]!==i||t[3]!==a?(f=e=>{if(e){a();return}i()},t[2]=i,t[3]=a,t[4]=f):f=t[4];let p=f,m=NR,h;t[5]!==n||t[6]!==r?(h=G(`min-h-0 bg-transparent`,n?`min-w-0 flex-1`:G(`flex-none transition-[width] duration-[360ms] ease-[cubic-bezier(0.16,1,0.3,1)] motion-reduce:transition-none`,r?`w-(--sidebar-width)`:`w-0`)),t[5]=n,t[6]=r,t[7]=h):h=t[7];let g;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(g={"--sidebar-width":SR},t[8]=g):g=t[8];let _;t[9]!==n||t[10]!==r?(_=G(`border-l border-border bg-card text-foreground`,n?`translate-x-0`:G(`transition-[translate,width] duration-[360ms] ease-[cubic-bezier(0.16,1,0.3,1)] motion-reduce:transition-none`,r?`translate-x-0`:`pointer-events-none translate-x-full`)),t[9]=n,t[10]=r,t[11]=_):_=t[11];let v;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(v={maxWidth:wR,minWidth:CR,shouldAcceptWidth:m,storageKey:xR},t[12]=v):v=t[12];let y=!c,b;t[13]!==n||t[14]!==o||t[15]!==e.onClosePanelTab||t[16]!==e.onToggleMaximized||t[17]!==e.openedAgentKeys||t[18]!==e.openedPanelModes||t[19]!==e.reserveChromeInset||t[20]!==s||t[21]!==l?(b=s&&l?(0,Y.jsx)(jR,{mode:`sidebar`,panelMode:o,openedPanelModes:e.openedPanelModes,openedAgentKeys:e.openedAgentKeys,onClosePanelTab:e.onClosePanelTab,maximized:n,onToggleMaximized:e.onToggleMaximized,reserveChromeInset:e.reserveChromeInset}):null,t[13]=n,t[14]=o,t[15]=e.onClosePanelTab,t[16]=e.onToggleMaximized,t[17]=e.openedAgentKeys,t[18]=e.openedPanelModes,t[19]=e.reserveChromeInset,t[20]=s,t[21]=l,t[22]=b):b=t[22];let x;t[23]!==d||t[24]!==b?(x=(0,Y.jsx)(`div`,{className:`flex min-h-0 w-full flex-1`,style:d,children:b}),t[23]=d,t[24]=b,t[25]=x):x=t[25];let S;t[26]!==r||t[27]!==y||t[28]!==x?(S=(0,Y.jsx)(AR,{animate:y,open:r,children:x}),t[26]=r,t[27]=y,t[28]=x,t[29]=S):S=t[29];let C;t[30]===n?C=t[31]:(C=n?null:(0,Y.jsx)(Rs,{"aria-label":`Resize workspace panel`,className:ER,title:`Drag to resize workspace panel`}),t[30]=n,t[31]=C);let w;t[32]!==n||t[33]!==C||t[34]!==_||t[35]!==S?(w=(0,Y.jsxs)(Bs,{side:`right`,collapsible:`offcanvas`,maximized:n,className:_,resizable:v,children:[S,C]}),t[32]=n,t[33]=C,t[34]=_,t[35]=S,t[36]=w):w=t[36];let T;return t[37]!==p||t[38]!==w||t[39]!==h?(T=(0,Y.jsx)(zs,{defaultOpen:!1,open:!0,onOpenChange:p,className:h,style:g,children:w}),t[37]=p,t[38]=w,t[39]=h,t[40]=T):T=t[40],T};function NR(e){let{nextWidth:t,wrapper:n}=e,r=document.querySelector(`[data-chat-composer-form='true']`);if(!r)return!0;let i=r.parentElement;if(!i)return!0;let a=n.style.getPropertyValue(`--sidebar-width`);n.style.setProperty(`--sidebar-width`,`${t}px`);let o=window.getComputedStyle(i),s=Number.parseFloat(o.paddingLeft)||0,c=Number.parseFloat(o.paddingRight)||0,l=Math.max(0,i.clientWidth-s-c),u=r.getBoundingClientRect(),d=r.querySelector(`[data-chat-composer-footer='true']`),f=r.querySelector(`[data-chat-composer-actions='right']`)?.getBoundingClientRect().width??0,p=d&&(Number.parseFloat(window.getComputedStyle(d).columnGap)||Number.parseFloat(window.getComputedStyle(d).gap))||0,m=DR+f+p,h=r.scrollWidth>r.clientWidth+.5,g=u.width>l+.5,_=r.clientWidth+.5<m;return a.length>0?n.style.setProperty(`--sidebar-width`,a):n.style.removeProperty(`--sidebar-width`),!h&&!g&&!_}export{aR as a,Dd as c,nu as d,Xl as f,Kl as g,Gl as h,yR as i,au as l,Wl as m,MR as n,NN as o,Ul as p,OR as r,Ed as s,jR as t,iu as u};