@openchambery/web 1.19.5-beta.12 → 1.19.5-beta.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.
- package/dist/assets/{AssistantView-C2nt7gTA.js → AssistantView-B5gousNu.js} +1 -1
- package/dist/assets/{ChatContainer-CN-kf5G2.js → ChatContainer-Ce3b2cNC.js} +39 -39
- package/dist/assets/{ContextPanel-DmCxiBmZ.js → ContextPanel-CxgoBKyL.js} +7 -7
- package/dist/assets/{DiagramView-OKYwsnsC.js → DiagramView-chb1AAev.js} +1 -1
- package/dist/assets/{MarkdownRendererImpl-CZCTMlll.js → MarkdownRendererImpl-BCkCnvcU.js} +1 -1
- package/dist/assets/{MobileDetailNavigation-DtybXjj-.js → MobileDetailNavigation-D0QxNSBn.js} +1 -1
- package/dist/assets/{MobileShareBridge-BwwTeOB4.js → MobileShareBridge-uQvUeFoD.js} +1 -1
- package/dist/assets/{MobileSurface-DQKKH8DZ.js → MobileSurface-CAFfh00F.js} +1 -1
- package/dist/assets/{MultiRunWindow-CHrt8pAc.js → MultiRunWindow-CL9HUaQ6.js} +1 -1
- package/dist/assets/{SettingsView-DFUGEb2U.js → SettingsView-DI-xR28w.js} +1 -1
- package/dist/assets/{SettingsWindow-Dnp3Z2TY.js → SettingsWindow-C08nRzF9.js} +1 -1
- package/dist/assets/{TerminalView-6sWzKRGD.js → TerminalView-BfaV2UtT.js} +1 -1
- package/dist/assets/{ToolOutputDialog-BvwPTuCa.js → ToolOutputDialog-BMSDSqF-.js} +1 -1
- package/dist/assets/{appThemeRegistry-Sxqgw-VJ.js → appThemeRegistry-BQAoUoXG.js} +2 -2
- package/dist/assets/{gitApi-AnAxM4su.js → gitApi-MThvLXsN.js} +1 -1
- package/dist/assets/insertionBoundaries-BD8gnU2G.js +4 -0
- package/dist/assets/{main-C_DFfRA-.js → main-BqRvL_2H.js} +2 -2
- package/dist/assets/{main-CDvkEaho.js → main-HlON3iI7.js} +4 -4
- package/dist/assets/{miniChat-pikB3kqv.js → miniChat-THt7sAU8.js} +2 -2
- package/dist/assets/{mobile-3P7m64Ao.js → mobile-B8X5spVS.js} +2 -2
- package/dist/assets/{multirun-CVn09y6l.js → multirun-DCvdvIa_.js} +1 -1
- package/dist/assets/{projectMeta-D6pFsAUS.js → projectMeta-rDf2igM9.js} +1 -1
- package/dist/assets/{radio-Bm0kYhLj.js → radio-Bn5ronTr.js} +1 -1
- package/dist/assets/{renderElectronMiniChatApp-BTqRljsU.js → renderElectronMiniChatApp-CRiqMh8B.js} +2 -2
- package/dist/assets/{renderMobileApp-CSd_U_oM.js → renderMobileApp-Dt2MLCGK.js} +4 -4
- package/dist/assets/{runtimeConfig-C7SBrPwI.js → runtimeConfig-CiXSoZmf.js} +1 -1
- package/dist/assets/{runtimeEndpointReset-R9m16D-O.js → runtimeEndpointReset-Dy_-6DS5.js} +1 -1
- package/dist/assets/{shikiHighlight-cSjmjJNH.js → shikiHighlight-BMya_gQv.js} +1 -1
- package/dist/assets/{src-7qYw1iai.css → src-CJXwqXhB.css} +1 -1
- package/dist/assets/{useAppFontEffects-BxIrm0Dl.js → useAppFontEffects-ccN1Nplv.js} +2 -2
- package/dist/assets/{useDesktopWindowControlsLayout-Cyn0HfVj.js → useDesktopWindowControlsLayout-5VYu0grF.js} +1 -1
- package/dist/assets/{useEffectiveDirectory-BPKtCjcr.js → useEffectiveDirectory-CRHavvW8.js} +1 -1
- package/dist/assets/{useMobileNavigationStore-D52DKuxF.js → useMobileNavigationStore-gXgGtIqj.js} +1 -1
- package/dist/assets/{useSessionAutoCleanup-BlSRH-dW.js → useSessionAutoCleanup-BxkIFBdx.js} +1 -1
- package/dist/assets/{useWorkerHighlightedLines-BRE-bmhi.js → useWorkerHighlightedLines-B_hH_qlZ.js} +1 -1
- package/dist/index.html +3 -3
- package/dist/mini-chat.html +3 -3
- package/dist/mobile.html +3 -3
- package/package.json +1 -1
- package/dist/assets/insertionBoundaries-X2KP9m1S.js +0 -4
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/TerminalView-
|
|
2
|
-
import{o as e}from"./rolldown-runtime-C0FnF6B9.js";import{A as t,B as n,C as r,O as i,P as a,T as o,b as s,k as c,n as l,t as u,x as d,y as f}from"./useUIStore-BXjMQrel.js";import{$ as p,$t as m,At as h,Cn as g,D as _,Dn as v,En as y,Ft as b,Gt as x,Qt as S,Sn as C,Tn as w,Xt as T,Yt as E,Zt as D,an as O,en as k,fn as A,in as j,k as M,kn as N,kt as P,n as F,pn as I,qt as L,r as R,t as z,un as B,vn as V,wn as H,xn as U}from"./persistence-CLUawIlm.js";import{f as W,h as ee,l as G,o as te,r as K}from"./desktopHosts-DceeVBky.js";import{a as ne,i as re,t as ie}from"./vendor-zustand-B4dlGEM2.js";import{E as ae,F as oe,I as se,N as q,O as ce,P as le,T as ue,a as de,i as fe,nt as pe,rt as me,tt as he}from"./vendor-base-ui-CnHfUmDN.js";import{Ct as ge,Dt as _e,Et as ve,It as ye,Mt as be,Nt as xe,Pt as Se,Tt as Ce,wt as we}from"./platform-BrncW9ab.js";import{o as Te}from"./vendor-aparajita-capacitor-secure-storage-CjQdwfjS.js";import{n as Ee,t as De}from"./vendor-react-DLPElpoQ.js";import{a as Oe,n as ke}from"./terminalApi-D2OzR0I3.js";/* empty css */import{n as Ae,t as je,u as Me}from"./vendor-reactuses-core-DDoDDyM9.js";import{a as Ne,i as Pe,n as Fe,r as Ie,t as Le}from"./clipboard-C0bgPFn5.js";import{n as Re}from"./store-DzpbXWX1.js";import{$i as ze,$r as Be,An as Ve,Ao as He,Br as Ue,C as We,Ca as Ge,Er as Ke,Fn as qe,Ft as Je,Gt as Ye,Hi as Xe,Ia as J,Jr as Ze,Kn as Qe,Mn as $e,Mo as et,Mr as tt,No as nt,Pt as rt,Ra as it,S as at,Ui as ot,Vr as st,Vt as ct,Wn as lt,Wt as ut,Xn as dt,Yt as ft,_a as pt,aa as mt,ar as ht,b as gt,bn as _t,bo as vt,br as yt,cn as bt,cr as xt,d as St,dr as Ct,f as wt,fr as Tt,ga as Et,gn as Dt,h as Ot,hn as kt,hr as Y,ia as At,ii as jt,jn as Mt,jo as Nt,ko as Pt,l as Ft,li as It,ln as Lt,lr as Rt,mr as zt,nr as Bt,oa as Vt,on as Ht,or as Ut,p as Wt,pr as Gt,pt as Kt,qi as qt,ri as Jt,rr as Yt,sr as Xt,ta as Zt,u as Qt,ua as $t,v as en,vn as tn,wa as nn,xa as rn,xn as an,y as on}from"./useMobileNavigationStore-D52DKuxF.js";import{_ as sn}from"./MobileDetailNavigation-DtybXjj-.js";import{n as cn}from"./useAssistantUIStore-D699Sbdb.js";import{a as ln,i as un,n as dn,o as fn,r as pn,t as mn}from"./dialog-Bjnvo5pk.js";import{a as hn,c as gn,n as _n,o as vn,r as yn,s as bn,t as X}from"./utils-D94hxQYq.js";import{n as Z,t as xn}from"./Icon-Du1LX11Q.js";import{t as Sn}from"./button-p6vbd3r6.js";import{A as Cn,C as wn,D as Tn,O as En,P as Dn,T as On,a as kn,f as An,h as jn,i as Mn,j as Nn,k as Pn,m as Fn,o as In,p as Ln,r as Rn,t as zn,w as Bn,y as Vn}from"./gitApi-AnAxM4su.js";import{A as Hn,B as Un,C as Wn,D as Gn,E as Kn,F as qn,G as Jn,H as Yn,I as Xn,J as Zn,K as Qn,L as $n,M as er,N as tr,O as nr,Q as rr,R as ir,S as ar,U as or,V as sr,W as cr,Y as lr,Z as ur,_ as dr,b as fr,c as pr,d as mr,f as hr,g as gr,h as _r,i as vr,j as yr,k as br,l as xr,m as Sr,n as Cr,p as wr,q as Tr,t as Er,u as Dr,v as Or,w as kr,x as Ar,y as jr,z as Mr}from"./useAppFontEffects-BxIrm0Dl.js";import{A as Nr,E as Pr,S as Fr,a as Ir,c as Lr,g as Rr,h as zr,i as Br,j as Vr,k as Hr,m as Ur,n as Wr,p as Gr,u as Kr,v as qr,x as Jr}from"./projectMeta-D6pFsAUS.js";import{t as Yr}from"./input-gaFVNq1P.js";import{i as Xr,n as Zr,r as Qr,t as $r}from"./tooltip-D1a6rKLA.js";import{U as ei,W as ti,a as ni,c as ri,i as ii,s as ai,u as oi}from"./useSessionAutoCleanup-BlSRH-dW.js";import{n as si}from"./useThemeSystem-DMzWVJaW.js";import{A as ci,C as li,D as ui,E as di,F as fi,H as pi,I as mi,K as hi,L as gi,M as _i,O as vi,P as yi,T as bi,V as xi,_ as Si,b as Ci,f as wi,n as Ti,r as Ei,v as Di,w as Oi,y as ki}from"./radio-Bm0kYhLj.js";import{i as Ai,o as ji}from"./OverlayScrollbar-oOLMqq2s.js";import{C as Mi,D as Ni,E as Pi,G as Fi,O as Ii,S as Li,T as Ri,U as zi,W as Bi,X as Vi,i as Hi,k as Ui,q as Wi,r as Gi,rt as Ki,tt as qi,w as Ji,x as Yi}from"./ChatContainer-CN-kf5G2.js";import{n as Xi,r as Zi}from"./useRuntimeAPIs-DSLXJybW.js";import{F as Qi,P as $i,_ as ea,b as ta,d as na,g as ra,h as ia,p as aa,v as oa,x as sa,y as ca}from"./insertionBoundaries-X2KP9m1S.js";import{u as la}from"./appThemeRegistry-Sxqgw-VJ.js";import{_ as ua,g as da,i as fa,l as pa,n as ma,s as ha,t as ga,v as _a,y as va}from"./vendor-dnd-kit-core-CvWxUPdb.js";import{a as ya,n as ba,o as xa,s as Sa,t as Ca}from"./vendor-dnd-kit-sortable-hHdP9lLb.js";import{a as wa}from"./url-zwuNq3GS.js";import{m as Ta}from"./markdown-worker-CoO82KYF.js";import{n as Ea,t as Da}from"./useEffectiveDirectory-BPKtCjcr.js";import{t as Oa}from"./sortable-tabs-strip-oDpTDVoQ.js";import{t as ka}from"./vendor-tanstack-react-virtual-tlDgH6PG.js";import{i as Aa,r as ja,t as Ma}from"./vendor-framer-motion-DFy_BSVd.js";import{B as Na,C as Pa,D as Fa,F as Ia,I as La,J as Ra,O as za,P as Ba,T as Va,Y as Ha,_ as Ua,b as Wa,d as Ga,f as Ka,h as qa,k as Ja,m as Ya,p as Xa,s as Za,v as Qa,w as $a,x as eo,y as to}from"./MobileSurface-DQKKH8DZ.js";import{i as no,n as ro,r as io,t as ao}from"./useDesktopWindowControlsLayout-Cyn0HfVj.js";import{n as oo}from"./useFontPreferences-F2QPNE2V.js";import{a as so,c as co,d as lo,f as uo,h as fo,i as po,l as mo,m as ho,n as go,o as _o,r as vo,s as yo,t as bo,u as xo}from"./ContextPanel-DmCxiBmZ.js";import{A as So,B as Co,F as wo,G as To,I as Eo,J as Do,K as Oo,M as ko,N as Ao,P as jo,R as Mo,V as No,W as Po,X as Fo,Y as Io,_ as Lo,a as Ro,c as zo,d as Bo,f as Vo,g as Ho,h as Uo,i as Wo,j as Go,k as Ko,l as qo,m as Jo,n as Yo,o as Xo,p as Zo,q as Qo,r as $o,s as es,u as ts,v as ns,y as rs,z as is}from"./runtimeEndpointReset-R9m16D-O.js";import{a as as,c as os,l as ss,o as cs,s as ls}from"./shikiHighlight-cSjmjJNH.js";import{n as us,r as ds,t as fs}from"./collapsible-Cimoz0kx.js";import{a as ps,o as ms,r as hs,s as gs,t as _s}from"./projectActions-CWvNGKfA.js";import{a as vs,i as ys,n as bs,o as xs,r as Ss,t as Cs}from"./multirun-CVn09y6l.js";var Q=e(me(),1),ws=De(),Ts=Ee(),$=pe();function Es(e){let t=(0,Ts.c)(14),n,r,i,a;t[0]===e?(n=t[1],r=t[2],i=t[3],a=t[4]):({size:i,className:n,style:a,...r}=e,t[0]=e,t[1]=n,t[2]=r,t[3]=i,t[4]=a);let o=typeof i==`number`?`${i}px`:i,s=typeof i==`number`?`${i}px`:i,c;t[5]!==a||t[6]!==o||t[7]!==s?(c={width:o,height:s,...a},t[5]=a,t[6]=o,t[7]=s,t[8]=c):c=t[8];let l;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,$.jsx)(`path`,{d:`M112,148a12,12,0,0,0-12,12v19L69.17,148.2A4,4,0,0,1,68,145.37V97.94a36,36,0,1,0-24,0v47.43a27.81,27.81,0,0,0,8.2,19.8L83,196H64a12,12,0,0,0,0,24h48a12,12,0,0,0,12-12V160A12,12,0,0,0,112,148ZM56,52A12,12,0,1,1,44,64,12,12,0,0,1,56,52ZM212,158.06V110.63a27.81,27.81,0,0,0-8.2-19.8L173,60h19a12,12,0,0,0,0-24H144a12,12,0,0,0-12,12V96a12,12,0,0,0,24,0V77l30.83,30.83a4,4,0,0,1,1.17,2.83v47.43a36,36,0,1,0,24,0ZM200,204a12,12,0,1,1,12-12A12,12,0,0,1,200,204Z`}),t[9]=l):l=t[9];let u;return t[10]!==n||t[11]!==r||t[12]!==c?(u=(0,$.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 256 256`,fill:`currentColor`,className:n,style:c,...r,children:l}),t[10]=n,t[11]=r,t[12]=c,t[13]=u):u=t[13],u}var Ds=`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAeGVYSWZNTQAqAAAACAAEARoABQAAAAEAAAA+ARsABQAAAAEAAABGASgAAwAAAAEAAgAAh2kABAAAAAEAAABOAAAAAAAAAJAAAAABAAAAkAAAAAEAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAIKADAAQAAAABAAAAIAAAAAB+C9pSAAAACXBIWXMAABYlAAAWJQFJUiTwAAABnWlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNi4wLjAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczpleGlmPSJodHRwOi8vbnMuYWRvYmUuY29tL2V4aWYvMS4wLyI+CiAgICAgICAgIDxleGlmOlBpeGVsWERpbWVuc2lvbj4yNTY8L2V4aWY6UGl4ZWxYRGltZW5zaW9uPgogICAgICAgICA8ZXhpZjpQaXhlbFlEaW1lbnNpb24+MjU2PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+Cl6wHhsAAAXaSURBVFgJ7VddbBRVFP5mdme6dOnu2tZawOAPjfxU+bGQYCRAsvw8qNGEQPTRJ0I0amL0wfjgA/HBR8KLD8YgDxJEUkVFxSYYTSRii6DQQCMGIQqlW7p0u+zMzo/fuTuzO9Nt0Td94CRn7pl7z5zznZ977y5wh/7jDGiz+T979qD5Ujbfd90xlll+stOF1uI40B1+4HhkjnZk9CgLQ9iXp2/BdcbgVc/h0sAgduywudJEMwLY9Of4ugtW5p3CpL7W1jTN88VmjdQYvnDKF1mczkYuNZLeCVg3X8fa9u+nqzUB2HRpdN2pSseRQknPoUL1Jo2ICTrPGcCzdwPdHENcAnicKRqcAk7cpL5J1r0JlAtPYV1XDETM/FtH3m19r+f5by+XjNX/xnmCX3/cCzydi4CKiC7lw+PArhGgoPPFq/6E0+9vwM6d5VBNpuv03cLNfeNTRh9KnJIiV2/PvSngycC5RD+dE5zb3g7s6QESzAZc2l6wuY9SnWIAxv10r81uU85Vt1FvtpEtlc/SMFUkUofeZ2IBta0DWDmXgkfbyTRz1qAYAMczOz3p1elOxYPyEllj421hdELViPO6Kudk3ia3UGe5ABDbvtnJZ52SdYmCZ3stdeexBabFdeAbYopEowtagVUZqFapBrtAGqpiVaFrGgyjZlrmTD5yEqoEJj4iFMuA62i6L3WPZkAiuHgarZ/vbWSBkTzO2rfTR4XOJVJhjfX44MBn+OTocVWbcF5MalxXPeVL6zYonoGo44YOtDI7qHC1lkL5nHnOc+tJRi3K6iygLNGMjt1A1XVV6iUzOvVtAvMlS2I/yBYlRf8MgA6szmXQ1jDfKhSgjft6DRtrkgarAiAw5nI9v2WDSn+Zxfd9DawGxIlPPQUg0A2HGABfEIYlCDU4+q0d8O+jRzHCCFYy+nu4BaeYAoksBCDrPYsXQQ6iitgiSQaS1FHHtMzFil4DpxTl4UhORSn4WOaaiGsbu4iFRkMnYQlEV0oSJQGQ4FyYgSRDjpqPZcCR6EOOWonIEsBqArAIQOMLzw0VXRRERF2VoA6Atk1+MzsASekMJYgaFEeHR4Cr85lNGntYzgKCYd/NSNIDCXr0ZJ2jwTsjSvEMzFQCCVmKHBRahn2DNb4rDRx8pnbXOOIg0JELLMHOF1AUkaRj1V8c2TookkMS83WK9QCVpRwtf5wCykQWRKDyJ44Ytc452QUV6inmN9IDIv/6y2+YLDuqTywBEHxv8rsoxQC4Fpf4cZ2pbJ4/huxXr0EvFmoRCrAIVymLQ3Eid0GJYPsPfISBLwdwi79YQnCqBNS7LQDP5qYSAKEDypOrX4WVWYLsFy+i9cwh6CUmUKIJI2Gq5cSbnLLw849D2Ld3L4olC1u3P0c1ow5Ozgixa3puWChONG1D3eLZUQOglvng+Vp5dBfseesx5/yHyI4cBTL3wsssRGs2g6/ppHijiMLoNSSMNHofy6Nn6SPsAR02nUoTtrDTSrdoi8CTni55rlOsCf1ypaDxlFMNU1epCV5XL6Y6dmOq+BeS48NIlq7Anpjg5dOFbPdDWLQyj/aubnUKSkMKi3NhkUd4kieYtbRbYS0bFAOQKI8NO363z1RJHmamtnlwhGksxV2w/gl29WRtm8kWtWUnRShLnQvXgDOXmLg2HzlvbDiyHD8Y517YP2i4FtueFPbB9FFqKcyobk4A5y7zquUFa7IXojyHoeXmAFcY755vaI6A56Xsofm/7+cmblBTpOldQ5vs3PJDVS+RVSAaus2SpJTO80t4NTNSOQfCDrtFkBevA0ME6HGvPdDpFlekzm7rf3nFQNRQEwBZTL9warObWfx21Uv1+fx1ERqVNampGoOHpF1tsdp07RnoGMxK1vT97rbK4IP6+Tc+fWXVsahaYGL6VO09d//GXHXr7jVeqmuppqU6ff4x0RO6lqRxgxHJpWKSlcw5eWfjq5rq/CdhaL5l6JWxjDc6bP7w5sn+/uMs2B36H2bgb6v9raK0+o9IAAAAAElFTkSuQmCC`,Os=`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAeGVYSWZNTQAqAAAACAAEARoABQAAAAEAAAA+ARsABQAAAAEAAABGASgAAwAAAAEAAgAAh2kABAAAAAEAAABOAAAAAAAAAJAAAAABAAAAkAAAAAEAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAIKADAAQAAAABAAAAIAAAAAB+C9pSAAAACXBIWXMAABYlAAAWJQFJUiTwAAABnWlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNi4wLjAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczpleGlmPSJodHRwOi8vbnMuYWRvYmUuY29tL2V4aWYvMS4wLyI+CiAgICAgICAgIDxleGlmOlBpeGVsWERpbWVuc2lvbj4yNTY8L2V4aWY6UGl4ZWxYRGltZW5zaW9uPgogICAgICAgICA8ZXhpZjpQaXhlbFlEaW1lbnNpb24+MjU2PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+Cl6wHhsAAAQzSURBVFgJ7VZNbBNHFH67Xv9RxwnBDqlUoQglcZK6qSIEJIQWAYJQoVY9IE5RTzn20FMvqdpDesq9B24+NdwthAJCkZChJg1JSOXYQIwQKQIaBdtENbs73t2+N8miGWOcpFHUHniyd97OvJ9v3nv7ZgDe038cAeVd/jOZjC94sKdfU+Bj24G9igpexwYPyiu2bauKqqqirkOTqmrjnIOyFsoyUKDocSCj/7mU7ujoMER5l68JYOFZ4YSiwPjd9O0jjx7ch1KhAJZVAcdx0LxDv3XetYKjggr4I4bzHo8G4aYmONjZBYf6+2dUzfd9PNowJajUZmef/PX5zcWl0rmvvnbQHrra+f/M+S+dqYXs2t3Hz09Ve5UicCmZ3NPb1Zv66btv+65dSULA64WGxkbw+Xx8V9XK9d4pWowxeFUqgW6acHroC/j5l0sLD/PZY98MDf3t6mouQ+On3X1H7/2e7rtOztHpgbY2+CAUgperq+D3+7cNgtLSEA7D0+VluDF5FS7cSff2HT56DF1dd/3KhQTWJ/lclsc8jIrk9IfRURgZGQEvRqNSWa8D2t1W/liXXK8Ro0i0lF0ExaPEXec0SgAqhrm3VCzwdS9GQNd1GBsbg0AgAIlEAlpbW7EYLVF/U56AagieiGwbuhERlSQApmEE8c/XKXxU0fF4HNowFfPz81Aul7edBjLGbeHITANsZga4g42HVAM2Y74KM/kSIQ/izgcHB2FiYgJmZmZ4MZpYULRG5PF4+Bx/2cLDxuhhYUqFLwGoWCaQEBGhNjAa4+Pj/J3SQA6pHpqbm/kcNitIJpOgaZIZvlbrQbZNJvcjSZOZDKhwRKLic4l2Pjc3B8FgkE+trKxAVUN0RWuOZNtCHyJJACj/bgREIZcnA9PT029SQM63unuywSOwUWOuTQmAhfmnlluPxIjUk6u1RrbJh0jyV0Ap2OZnJhrbjOcRqEqBBMDCAtltAORDJAkAVj2mWS5CUXinPDUx+oxFkgBYjO0qANu2wKoqQgkAfgW7C4AiYMmfoQSgwpjj7GYRUh/Q66SAmdisNxql227FfP1bXrRlVExdtCNHwDRLdPkgwmi8OUREhe3y1NLJFpEfbWMNvBRtSI2o+KqYi+zbx4NQwptMCO8E1HjEHYjKm/HknG5FZIsCG4lEoLS2lhP1JAB3bt1KH//s+GJPd3dPJpvlN5kwXiYIhHukisr1eAItXsm6YzGItrTcn5+dvS3qSQBSqVQhFouNnj039CsaCC7mcqDjgbNT6op1AtrU8Wo3Ojk5KaVAOptdR8PDwxf3t7SMvXjxvJNOPP31a35Krt8CXKl3j2SUDip/IAjRaBRaP9z/cHW18GMikbhcrVUTAAm1t7d/NDAwcDIUCvVqmtqkyLe3ajtvvTtg4x3SLpbLa3+kUr9N5fP55beE3k/8HyLwDx2/HIx7q3WfAAAAAElFTkSuQmCC`,ks=e=>({...e,fallbackIconDataUrl:e.id===`finder`&&window.__OPENCHAMBER_PLATFORM__!==`win32`?Ds:e.id===`terminal`?Os:void 0}),As=e=>{let t=(0,Ts.c)(8),{label:n,iconDataUrl:r,fallbackIconDataUrl:i}=e,[a,o]=Q.useState(!1),s;t[0]===n?s=t[1]:(s=n.trim().slice(0,1).toUpperCase()||`?`,t[0]=n,t[1]=s);let c=s,l=r||i;if(l&&!a){let e;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(e=()=>o(!0),t[2]=e):e=t[2];let n;return t[3]===l?n=t[4]:(n=(0,$.jsx)(`img`,{src:l,alt:``,className:`h-4 w-4 rounded-sm`,onError:e}),t[3]=l,t[4]=n),n}let u;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(u=X(`h-4 w-4 rounded-sm flex items-center justify-center`,`bg-[var(--surface-muted)] text-[9px] font-medium text-muted-foreground`),t[5]=u):u=t[5];let d;return t[6]===c?d=t[7]:(d=(0,$.jsx)(`span`,{className:u,children:c}),t[6]=c,t[7]=d),d},js=e=>{let t=(0,Ts.c)(74),{directory:n,className:r}=e,{t:i}=Fe(),a=vo(Ms),o=vo(Ns),s=vo(Ps),c=vo(Fs),l=vo(Is),u=vo(Ls),d=vo(Rs),f,p;t[0]===l?(f=t[1],p=t[2]):(f=()=>{l()},p=[l],t[0]=l,t[1]=f,t[2]=p),Q.useEffect(f,p);let m=T()&&E(),h;bb0:{let e;t[3]!==o||t[4]!==a?(e=o.find(e=>e.id===a)??o.find(zs)??o[0]??so[0],t[3]=o,t[4]=a,t[5]=e):e=t[5];let n=e;if(n){let e;t[6]===n?e=t[7]:(e=ks(n),t[6]=n,t[7]=e),h=e;break bb0}let r;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(r=ks(so[0]),t[8]=r):r=t[8],h=r}let g=h;if(!m||!n||o.length===0)return null;let _;t[9]===n?_=t[10]:(_=async e=>{await O(n,e.id,e.appName)||await j(n,e.appName)},t[9]=n,t[10]=_);let v=_,y;t[11]!==v||t[12]!==d?(y=async e=>{await d(e.id),await v(e)},t[11]=v,t[12]=d,t[13]=y):y=t[13];let b=y,x;t[14]===n?x=t[15]:(x=async()=>{await Le(n)},t[14]=n,t[15]=x);let S=x,C;t[16]===r?C=t[17]:(C=X(`app-region-no-drag inline-flex h-7 items-center self-center rounded-[9px] [corner-shape:squircle] supports-[corner-shape:squircle]:rounded-[50px]`,`bg-[var(--surface-elevated)] overflow-hidden`,`border border-border/60`,r),t[16]=r,t[17]=C);let w;t[18]!==v||t[19]!==g?(w=()=>void v(g),t[18]=v,t[19]=g,t[20]=w):w=t[20];let D=c&&`animate-pulse`,k;t[21]===D?k=t[22]:(k=X(`inline-flex h-full items-center px-2.5 typography-ui-label font-medium`,`text-foreground hover:bg-interactive-hover transition-colors`,D),t[21]=D,t[22]=k);let A;t[23]!==g.label||t[24]!==i?(A=i(`openInApp.actions.openInAria`,{app:g.label}),t[23]=g.label,t[24]=i,t[25]=A):A=t[25];let M;t[26]!==g.fallbackIconDataUrl||t[27]!==g.iconDataUrl||t[28]!==g.label?(M=(0,$.jsx)(As,{label:g.label,iconDataUrl:g.iconDataUrl,fallbackIconDataUrl:g.fallbackIconDataUrl}),t[26]=g.fallbackIconDataUrl,t[27]=g.iconDataUrl,t[28]=g.label,t[29]=M):M=t[29];let N;t[30]!==k||t[31]!==A||t[32]!==M||t[33]!==w?(N=(0,$.jsx)(`button`,{type:`button`,onClick:w,className:k,"aria-label":A,children:M}),t[30]=k,t[31]=A,t[32]=M,t[33]=w,t[34]=N):N=t[34];let P;t[35]===Symbol.for(`react.memo_cache_sentinel`)?(P=X(`inline-flex h-full w-7 items-center justify-center`,`border-l border-[var(--interactive-border)] text-muted-foreground`,`hover:bg-interactive-hover hover:text-foreground transition-colors`),t[35]=P):P=t[35];let F;t[36]===i?F=t[37]:(F=i(`openInApp.actions.chooseAppAria`),t[36]=i,t[37]=F);let I;t[38]===Symbol.for(`react.memo_cache_sentinel`)?(I=(0,$.jsx)(Z,{name:`arrow-down-s`,className:`h-4 w-4`}),t[38]=I):I=t[38];let L;t[39]===F?L=t[40]:(L=(0,$.jsx)(Oi,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,className:P,"aria-label":F,children:I})}),t[39]=F,t[40]=L);let R;t[41]===S?R=t[42]:(R=()=>void S(),t[41]=S,t[42]=R);let z;t[43]===Symbol.for(`react.memo_cache_sentinel`)?(z=(0,$.jsx)(Z,{name:`file-copy`,className:`h-4 w-4`}),t[43]=z):z=t[43];let B;t[44]===i?B=t[45]:(B=i(`openInApp.actions.copyPath`),t[44]=i,t[45]=B);let V;t[46]===B?V=t[47]:(V=(0,$.jsx)(`span`,{className:`typography-ui-label text-foreground`,children:B}),t[46]=B,t[47]=V);let H;t[48]!==R||t[49]!==V?(H=(0,$.jsxs)(ki,{className:`flex items-center gap-2`,onClick:R,children:[z,V]}),t[48]=R,t[49]=V,t[50]=H):H=t[50];let U;t[51]===Symbol.for(`react.memo_cache_sentinel`)?(U=(0,$.jsx)(li,{}),t[51]=U):U=t[51];let W;if(t[52]!==o||t[53]!==b||t[54]!==g.id){let e;t[56]!==b||t[57]!==g.id?(e=e=>{let t=ks(e);return(0,$.jsxs)(ki,{className:`flex items-center gap-2`,onClick:()=>void b(e),children:[(0,$.jsx)(As,{label:e.label,iconDataUrl:e.iconDataUrl,fallbackIconDataUrl:t.fallbackIconDataUrl}),(0,$.jsx)(`span`,{className:`typography-ui-label text-foreground`,children:e.label}),g.id===e.id?(0,$.jsx)(Z,{name:`check`,className:`ml-auto h-4 w-4 text-primary`}):null]},e.id)},t[56]=b,t[57]=g.id,t[58]=e):e=t[58],W=o.map(e),t[52]=o,t[53]=b,t[54]=g.id,t[55]=W}else W=t[55];let ee;t[59]!==s||t[60]!==u||t[61]!==i?(ee=s?(0,$.jsxs)(ki,{className:`flex items-center gap-2`,onClick:()=>void u(!0),children:[(0,$.jsx)(Z,{name:`refresh`,className:`h-4 w-4`}),(0,$.jsx)(`span`,{className:`typography-ui-label text-foreground`,children:i(`openInApp.actions.refreshApps`)})]}):null,t[59]=s,t[60]=u,t[61]=i,t[62]=ee):ee=t[62];let G;t[63]!==H||t[64]!==W||t[65]!==ee?(G=(0,$.jsxs)(Di,{align:`end`,className:`w-56 max-h-[70vh] overflow-y-auto`,children:[H,U,W,ee]}),t[63]=H,t[64]=W,t[65]=ee,t[66]=G):G=t[66];let te;t[67]!==L||t[68]!==G?(te=(0,$.jsxs)(Si,{children:[L,G]}),t[67]=L,t[68]=G,t[69]=te):te=t[69];let K;return t[70]!==N||t[71]!==te||t[72]!==C?(K=(0,$.jsxs)(`div`,{className:C,children:[N,te]}),t[70]=N,t[71]=te,t[72]=C,t[73]=K):K=t[73],K};function Ms(e){return e.selectedAppId}function Ns(e){return e.availableApps}function Ps(e){return e.isCacheStale}function Fs(e){return e.isScanning}function Is(e){return e.initialize}function Ls(e){return e.loadInstalledApps}function Rs(e){return e.selectApp}function zs(e){return e.id===po}var Bs=[{pattern:/^dev(:.*)?$/i},{pattern:/^start(:.*)?$/i},{pattern:/^preview(:.*)?$/i},{pattern:/^serve(:.*)?$/i},{pattern:/^develop(:.*)?$/i}],Vs=[`dev`,`start`,`preview`,`serve`];async function Hs(e,t,n){if(!e)return null;let r=Gs(t);if(r)return{command:r.command,label:r.name||`Start Preview`,actionId:r.id};if(n){let t=Ks(n);if(t){let n=await qs(e);return{command:`${n===`npm`?`npm run`:n===`yarn`?`yarn`:n===`pnpm`?`pnpm`:n===`bun`?`bun run --shell=bun`:`npm run`} ${t}`,label:`Start (${t})`}}}if(await Us(e)){let e=await Ws(),t=typeof e==`number`&&Number.isFinite(e)&&e>0?e:8e3;return{command:`python3 -m http.server ${t}`,label:`Static preview`,previewUrlHint:`http://127.0.0.1:${t}/`}}return null}async function Us(e){let t=await Js(`${e}/index.html`,e);return typeof t==`string`&&t.trim().length>0}async function Ws(){try{let e=await N(`/api/system/free-port`,{cache:`no-store`});if(!e.ok)return null;let t=await e.json().catch(()=>null),n=typeof t?.port==`number`?t.port:null;return n&&Number.isFinite(n)?n:null}catch{return null}}function Gs(e){for(let t of e){let e=`${t.name} ${t.command}`.toLowerCase();if(Vs.some(t=>e.includes(t)))return t}return null}function Ks(e){for(let{pattern:t}of Bs)for(let n of Object.keys(e))if(t.test(n))return n;return null}async function qs(e){let t=await Js(`${e}/package.json`,e);if(t)try{let e=JSON.parse(t),n=typeof e.packageManager==`string`?e.packageManager.toLowerCase():``;if(n.startsWith(`bun@`))return`bun`;if(n.startsWith(`pnpm@`))return`pnpm`;if(n.startsWith(`yarn@`))return`yarn`;if(n.startsWith(`npm@`))return`npm`}catch{}for(let[t,n]of[[`bun.lock`,`bun`],[`bun.lockb`,`bun`],[`pnpm-lock.yaml`,`pnpm`],[`yarn.lock`,`yarn`],[`package-lock.json`,`npm`]]){let r=await Js(`${e}/${t}`,e);if(typeof r==`string`&&r.trim().length>0)return n}return`npm`}async function Js(e,t){if(t?.trim())try{let n=new URLSearchParams({path:e,directory:t,optional:`true`}),r=await N(`/api/fs/read?${n.toString()}`,{cache:`no-store`});if(r.ok)return r.text()}catch{}let n=U()?.files;if(n?.readFile)try{let t=await n.readFile(e,{optional:!0});return typeof t?.content==`string`?t.content:null}catch{return null}try{let t=await N(`/api/fs/read?path=${encodeURIComponent(e)}&optional=true`,{cache:`no-store`});return t.ok?t.text():null}catch{return null}}async function Ys(e){try{let t=await Js(`${e}/package.json`,e);if(t==null)return null;let n=JSON.parse(t).scripts;return n&&typeof n==`object`&&!Array.isArray(n)?n:null}catch{return null}}var Xs=e=>new Promise(t=>{window.setTimeout(t,e)}),Zs=RegExp(`\x1B\\[[0-9;?]*[ -/]*[@-~]`,`g`),Qs=/https?:\/\/[^\s<>'"`]+/gi,$s=`__openchamber_auto_discover_preview__`,ec=15e3,tc=e=>{let t=``;for(let n=0;n<e.length;n+=1){let r=e.charCodeAt(n);r>=0&&r<=8||r===11||r===12||r>=14&&r<=31||r===127||(t+=e[n])}return t},nc=e=>{let t=(e||``).trim();if(!t)return null;let n=/^https?:\/\//i.test(t)?t:`http://${t}`;try{let e=new URL(n);return e.protocol!==`http:`&&e.protocol!==`https:`?null:e.toString()}catch{return null}},rc=e=>{let t=e.replace(Zs,``).match(Qs);if(!t||t.length===0)return null;let n=t.map(e=>e.replace(/[),.;]+$/,``)).filter(Boolean);if(n.length===0)return null;let r=[];for(let e of n)try{let t=new URL(e);t.port&&t.port.length>0&&r.push({raw:e,parsed:t})}catch{}if(r.length>0){let e=e=>{let{parsed:t}=e,n=t.hostname.toLowerCase(),r=n===`localhost`||n===`127.0.0.1`||n===`0.0.0.0`||n===`::1`,i=t.pathname||`/`,a=i.split(`/`).filter(Boolean).length,o=i===`/`||i===``,s=!!(t.search||t.hash),c=0;return r&&(c+=50),o&&(c+=30),c-=Math.min(a*5,20),s&&(c-=10),c};return r.sort((t,n)=>e(n)-e(t)),r[0]?.parsed.origin??r[0]?.raw??null}return n[0]??null},ic=({projectRef:e,directory:t,className:n,compact:r=!1,allowMobile:i=!1})=>{let{t:a}=Fe(),{terminal:o,runtime:s}=Xi(),{isMobile:c}=Ai(),l=Q.useMemo(()=>T(),[]),d=Va(e=>e.instances),f=Va(e=>e.load),p=u(e=>e.setBottomTerminalOpen),m=u(e=>e.setActiveMainTab),h=u(e=>e.setSettingsPage),g=u(e=>e.setSettingsDialogOpen),_=u(e=>e.setSettingsProjectsSelectedId),v=u(e=>e.openContextPreview),y=oo(e=>e.sessions),b=oo(e=>e.ensureDirectory),x=oo(e=>e.setTabLabel),S=oo(e=>e.setTabIconKey),C=oo(e=>e.setActiveTab),w=oo(e=>e.setConnecting),E=oo(e=>e.setTabSessionId),D=oo(e=>e.setTabPreviewUrl),O=oo(e=>e.projectActionRuns),k=oo(e=>e.setProjectActionRun),A=oo(e=>e.updateProjectActionRunStatus),j=oo(e=>e.removeProjectActionRun),[M,N]=Q.useState([]),[P,F]=Q.useState(null),[I,L]=Q.useState(!1),R=Q.useRef({}),z=Q.useRef({}),B=Q.useRef({}),V=Q.useRef({}),H=Q.useRef(0),U=e?.id??null,W=e?.path??``,ee=Q.useMemo(()=>U?{id:U,path:W}:null,[U,W]);Q.useEffect(()=>{l&&f().catch(()=>void 0)},[l,f]);let G=Q.useCallback(async e=>{await wa(e)},[]),te=Q.useCallback(async()=>{if(!ee)return;let e=H.current+1;H.current=e,L(!0);try{let t=await qe(ee);if(H.current!==e)return;let n=t.actions;N(n),F(e=>e===$s||e&&n.some(t=>t.id===e)?e:null)}catch{if(H.current!==e)return}finally{H.current===e&&L(!1)}},[ee]),K=Q.useMemo(()=>ps(t||ee?.path||``),[t,ee?.path]),ne=Q.useMemo(()=>P?M.find(e=>e.id===P)??null:null,[M,P]),re=Q.useMemo(()=>({id:$s,name:a(`projectActions.actions.autoDiscover`),command:``,icon:`search`,autoOpenUrl:!0}),[a]),ie=!c,ae=Q.useMemo(()=>ie?[re,...M]:M,[M,re,ie]);Q.useEffect(()=>{te()},[te]),Q.useEffect(()=>{if(typeof window>`u`)return;let e=e=>{let t=e.detail;U&&(t?.projectId&&t.projectId!==U||te())};return window.addEventListener(_s,e),()=>{window.removeEventListener(_s,e)}},[te,U]),Q.useEffect(()=>{P&&(P===$s&&ie||M.some(e=>e.id===P)||F(null))},[M,ie,P]),Q.useEffect(()=>{for(let[e,t]of Object.entries(O)){let n=y.get(t.directory)?.tabs.find(e=>e.id===t.tabId);(!n||n.terminalSessionId!==t.sessionId)&&j(e)}},[O,j,y]),Q.useEffect(()=>{for(let[e,t]of Object.entries(O)){let n=z.current[e]??{lastSeenChunkId:null,openedUrl:!1,tail:``,openInPreview:!1};z.current[e]=n;let r=ae.find(e=>e.id===t.actionId);if(!r)continue;let i=y.get(t.directory)?.tabs.find(e=>e.id===t.tabId);if(!i||!Array.isArray(i.bufferChunks)||i.bufferChunks.length===0)continue;let o=i.bufferChunks.filter(e=>n.lastSeenChunkId===null||e.id>n.lastSeenChunkId);if(o.length===0)continue;let s=o.map(e=>e.data).join(``),c=`${n.tail}${s}`,l=!n.openedUrl&&r.autoOpenUrl===!0?rc(c):null;if(n.lastSeenChunkId=o[o.length-1]?.id??n.lastSeenChunkId,n.tail=c.slice(-512),l)if(n.openedUrl=!0,n.openInPreview){let t=O[e];t&&(D(t.directory,t.tabId,l,{locked:!1,autoOpened:!1}),t.status===`waiting-for-preview`&&A(e,`running`),window.clearTimeout(V.current[e]),delete V.current[e],v(t.directory,l))}else G(l),Y.success(a(`projectActions.toast.openedUrlFromOutput`));z.current[e]=n}for(let e of Object.keys(z.current))O[e]||(delete z.current[e],window.clearTimeout(V.current[e]),delete V.current[e])},[ae,v,G,O,D,a,y,A]);let oe=Q.useCallback(async(e,t={})=>{if(!K)throw Error(a(`projectActions.error.noActiveDirectory`));let n=gs(K,e.id);b(K);let r=oo.getState(),i=r.getDirectoryState(K),o=R.current[n]||null,s=o?!!i?.tabs.some(e=>e.id===o):!1;(!o||!s)&&(o=r.createTab(K),R.current[n]=o),x(K,o,`Action: ${e.name}`),S(K,o,e.icon||`play`),t.revealTerminal!==!1&&(C(K,o),p(!0),m(`terminal`));let c=oo.getState().getDirectoryState(K)?.tabs.find(e=>e.id===o);return{key:n,tabId:o,sessionId:c?.terminalSessionId??null}},[b,K,m,C,p,S,x,a]),se=Q.useCallback(async e=>{if(s.isVSCode||!i&&c)return;if(!K){Y.error(a(`projectActions.error.noActiveDirectoryForAction`));return}let t=gs(K,e.id),n=O[t];if(!(n&&n.status===`running`))try{let t=e.id===$s?await(async()=>{let[e,t]=await Promise.all([qe({id:ee?.id??``,path:K}),Ys(K)]),n=await Hs(K,e.actions,t);if(!n)throw Error(a(`contextPanel.preview.noDevServer`));return{id:$s,name:a(`projectActions.actions.autoDiscover`),command:n.command,icon:`search`,autoOpenUrl:!0,openUrl:n.previewUrlHint||``}})():e,n=t.autoOpenUrl===!0&&(t.openUrl||``).trim().length>0,{key:r,tabId:i,sessionId:s}=await oe(t,{revealTerminal:!n&&e.id!==$s}),c=s,u=!1;if(!c){w(K,i,!0);try{c=(await o.createSession({cwd:K})).sessionId,u=!0,E(K,i,c)}finally{w(K,i,!1)}}if(!c)throw Error(a(`projectActions.error.failedToCreateTerminalSession`));u&&await Xs(350),t.id===$s&&(B.current[r]?.(),w(K,i,!0),B.current[r]=ke(c,e=>{e.type===`data`&&typeof e.data==`string`&&e.data.length>0&&oo.getState().appendToBuffer(K,i,e.data),e.type===`exit`&&(oo.getState().setTabLifecycle(K,i,`exited`),oo.getState().setConnecting(K,i,!1),oo.getState().removeProjectActionRun(r),delete z.current[r],B.current[r]?.(),delete B.current[r],window.clearTimeout(V.current[r]),delete V.current[r])},()=>{oo.getState().setConnecting(K,i,!1)},{maxRetries:60,initialRetryDelay:250,maxRetryDelay:2e3,connectionTimeout:5e3}));let f=t.autoOpenUrl===!0&&l&&(t.desktopOpenSshForward||``).trim().length>0,p=t.autoOpenUrl?nc(t.openUrl):null,m=t.autoOpenUrl&&l?ms(t.desktopOpenSshForward,d):null;k({key:r,directory:K,actionId:t.id,tabId:i,sessionId:c,status:t.id===$s&&!p?`waiting-for-preview`:`running`}),window.clearTimeout(V.current[r]),delete V.current[r],t.id===$s&&!p&&(V.current[r]=window.setTimeout(()=>{oo.getState().updateProjectActionRunStatus(r,`running`),delete V.current[r]},ec)),m?(D(K,i,null,{locked:!0}),G(m),Y.success(a(`projectActions.toast.openedForwardedUrl`))):p?(D(K,i,p,{locked:!0,autoOpened:!0}),v(K,p),Y.success(a(`projectActions.toast.openedActionUrl`))):n?(D(K,i,null,{locked:!0}),Y.error(a(`projectActions.error.invalidCustomUrlFormat`))):f?(D(K,i,null,{locked:!0}),Y.error(a(`projectActions.error.selectedDesktopSshForwardUnavailable`))):D(K,i,null,{locked:!1,autoOpened:!1}),z.current[r]={lastSeenChunkId:null,openedUrl:!!m||!!p||n,tail:``,openInPreview:t.id===$s};let h=tc(t.command.trim().replace(/\r\n|\r/g,`
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/TerminalView-BfaV2UtT.js","assets/rolldown-runtime-C0FnF6B9.js","assets/useUIStore-BXjMQrel.js","assets/vendor-zustand-B4dlGEM2.js","assets/vendor-base-ui-CnHfUmDN.js","assets/persistence-CLUawIlm.js","assets/vendor-pathe-vBmvQE8f.js","assets/vendor-react-DLPElpoQ.js","assets/vendor-tanstack-query-core-BWz0ose6.js","assets/terminalApi-D2OzR0I3.js","assets/platform-BrncW9ab.js","assets/vendor-opencode-sdk-C07HQypa.js","assets/vendor-aparajita-capacitor-secure-storage-CjQdwfjS.js","assets/vendor-ghostty-web-HohRXr3g.js","assets/clipboard-C0bgPFn5.js","assets/store-DzpbXWX1.js","assets/useMobileNavigationStore-gXgGtIqj.js","assets/vendor-tanstack-react-query-D7pys_c9.js","assets/vendor-sonner-DVzioF3d.js","assets/vendor-reactuses-core-DDoDDyM9.js","assets/vendor-lodash-es-DfLbG5Af.js","assets/vendor-js-cookie-hSOiFTtX.js","assets/useAssistantUIStore-D699Sbdb.js","assets/vendor-fuse.js-DB5wDJbI.js","assets/utils-D94hxQYq.js","assets/vendor-class-variance-authority-BLUaYARZ.js","assets/vendor-tailwind-merge-BicNWLTg.js","assets/Icon-Du1LX11Q.js","assets/button-p6vbd3r6.js","assets/useThemeSystem-DMzWVJaW.js","assets/OverlayScrollbar-oOLMqq2s.js","assets/useRuntimeAPIs-DSLXJybW.js","assets/useEffectiveDirectory-CRHavvW8.js","assets/sortable-tabs-strip-oDpTDVoQ.js","assets/vendor-dnd-kit-core-CvWxUPdb.js","assets/vendor-dnd-kit-accessibility-BY5LhhUB.js","assets/vendor-dnd-kit-sortable-hHdP9lLb.js","assets/useFontPreferences-F2QPNE2V.js","assets/projectActions-CWvNGKfA.js","assets/DiagramView-chb1AAev.js","assets/diagram-DX_MPRs3.js","assets/vendor-react-drawio-ECtEwvbc.js","assets/fileQueries-BDld6h3B.js","assets/SettingsView-DI-xR28w.js","assets/desktopHosts-DceeVBky.js","assets/desktopRelayRestore-B0MRdR5y.js","assets/vendor-codemirror-autocomplete-DHomsvW7.js","assets/MobileShareBridge-uQvUeFoD.js","assets/MobileDetailNavigation-D0QxNSBn.js","assets/dialog-Bjnvo5pk.js","assets/AgentAvatar-CecaXP3U.js","assets/projectMeta-rDf2igM9.js","assets/gitApi-MThvLXsN.js","assets/input-gaFVNq1P.js","assets/tooltip-D1a6rKLA.js","assets/useSessionAutoCleanup-BxkIFBdx.js","assets/vendor-simplewebauthn-browser-Dwhcdg_5.js","assets/radio-Bn5ronTr.js","assets/vendor-codemirror-lang-angular-DShkBD6m.js","assets/vendor-codemirror-lang-json-CYJRHck9.js","assets/vendor-codemirror-lang-markdown-WORgx6ZD.js","assets/vendor-codemirror-lang-python-Du6XQ8Zw.js","assets/vendor-codemirror-legacy-modes-DuRAjNvB.js","assets/vendor-codemirror-language-data-BfYFhIH1.js","assets/appThemeRegistry-BQAoUoXG.js","assets/markdown-worker-CoO82KYF.js","assets/vendor-pierre-diffs-BenIz2TM.js","assets/vendor-hast-util-to-html-B0p1k5Xa.js","assets/vendor-character-entities-legacy-Wut6vMuj.js","assets/vendor-character-entities-html4-DlN_yAFd.js","assets/vendor-ccount-CyGsA0u7.js","assets/vendor-comma-separated-tokens-B9ouxNNS.js","assets/vendor-oniguruma-to-es-CrHzjjSU.js","assets/vendor-oniguruma-parser-D2DIvhSP.js","assets/vendor-diff-Dq7CZNim.js","assets/vendor-lru_map-DpDied8H.js","assets/url-zwuNq3GS.js","assets/MobileSurface-CAFfh00F.js","assets/types-BuiqMmh_.js","assets/collapsible-Cimoz0kx.js","assets/shikiHighlight-BMya_gQv.js","assets/vendor-codemirror-commands-C9DCaJ0C.js","assets/vendor-codemirror-search-D2SOgzph.js","assets/vendor-replit-codemirror-vim-CEibx3EP.js","assets/vendor-yaml-DIcAK3EC.js","assets/vendor-qrcode-DAuVxiQR.js","assets/vendor-dijkstrajs-DztKuCwY.js","assets/SettingsWindow-C08nRzF9.js","assets/MultiRunWindow-CL9HUaQ6.js","assets/multirun-DCvdvIa_.js","assets/insertionBoundaries-BD8gnU2G.js","assets/AssistantView-B5gousNu.js","assets/ChatContainer-Ce3b2cNC.js","assets/markdownTheme-St8zxDvJ.js","assets/FadeInOnReveal-Cj9ZC3Ab.js","assets/useWorkerHighlightedLines-B_hH_qlZ.js","assets/vendor-tanstack-react-virtual-tlDgH6PG.js","assets/vendor-cmdk-CeAGfrLo.js","assets/vendor-aria-hidden-BbL3cEyI.js","assets/vendor-framer-motion-DFy_BSVd.js","assets/vendor-legendapp-list-WE32lwNk.js","assets/ContextPanel-CxgoBKyL.js","assets/vendor-zumer-snapdom-yq9vlCKr.js","assets/vendor-html-to-image-BDMm2v6d.js","assets/OnboardingScreen-BkbprNa7.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{o as e}from"./rolldown-runtime-C0FnF6B9.js";import{A as t,B as n,C as r,O as i,P as a,T as o,b as s,k as c,n as l,t as u,x as d,y as f}from"./useUIStore-BXjMQrel.js";import{$ as p,$t as m,At as h,Cn as g,D as _,Dn as v,En as y,Ft as b,Gt as x,Qt as S,Sn as C,Tn as w,Xt as T,Yt as E,Zt as D,an as O,en as k,fn as A,in as j,k as M,kn as N,kt as P,n as F,pn as I,qt as L,r as R,t as z,un as B,vn as V,wn as H,xn as U}from"./persistence-CLUawIlm.js";import{f as W,h as ee,l as G,o as te,r as K}from"./desktopHosts-DceeVBky.js";import{a as ne,i as re,t as ie}from"./vendor-zustand-B4dlGEM2.js";import{E as ae,F as oe,I as se,N as q,O as ce,P as le,T as ue,a as de,i as fe,nt as pe,rt as me,tt as he}from"./vendor-base-ui-CnHfUmDN.js";import{Ct as ge,Dt as _e,Et as ve,It as ye,Mt as be,Nt as xe,Pt as Se,Tt as Ce,wt as we}from"./platform-BrncW9ab.js";import{o as Te}from"./vendor-aparajita-capacitor-secure-storage-CjQdwfjS.js";import{n as Ee,t as De}from"./vendor-react-DLPElpoQ.js";import{a as Oe,n as ke}from"./terminalApi-D2OzR0I3.js";/* empty css */import{n as Ae,t as je,u as Me}from"./vendor-reactuses-core-DDoDDyM9.js";import{a as Ne,i as Pe,n as Fe,r as Ie,t as Le}from"./clipboard-C0bgPFn5.js";import{n as Re}from"./store-DzpbXWX1.js";import{$i as ze,$r as Be,An as Ve,Ao as He,Br as Ue,C as We,Ca as Ge,Er as Ke,Fn as qe,Ft as Je,Gt as Ye,Hi as Xe,Ia as J,Jr as Ze,Kn as Qe,Mn as $e,Mo as et,Mr as tt,No as nt,Pt as rt,Ra as it,S as at,Ui as ot,Vr as st,Vt as ct,Wn as lt,Wt as ut,Xn as dt,Yt as ft,_a as pt,aa as mt,ar as ht,b as gt,bn as _t,bo as vt,br as yt,cn as bt,cr as xt,d as St,dr as Ct,f as wt,fr as Tt,ga as Et,gn as Dt,h as Ot,hn as kt,hr as Y,ia as At,ii as jt,jn as Mt,jo as Nt,ko as Pt,l as Ft,li as It,ln as Lt,lr as Rt,mr as zt,nr as Bt,oa as Vt,on as Ht,or as Ut,p as Wt,pr as Gt,pt as Kt,qi as qt,ri as Jt,rr as Yt,sr as Xt,ta as Zt,u as Qt,ua as $t,v as en,vn as tn,wa as nn,xa as rn,xn as an,y as on}from"./useMobileNavigationStore-gXgGtIqj.js";import{_ as sn}from"./MobileDetailNavigation-D0QxNSBn.js";import{n as cn}from"./useAssistantUIStore-D699Sbdb.js";import{a as ln,i as un,n as dn,o as fn,r as pn,t as mn}from"./dialog-Bjnvo5pk.js";import{a as hn,c as gn,n as _n,o as vn,r as yn,s as bn,t as X}from"./utils-D94hxQYq.js";import{n as Z,t as xn}from"./Icon-Du1LX11Q.js";import{t as Sn}from"./button-p6vbd3r6.js";import{A as Cn,C as wn,D as Tn,O as En,P as Dn,T as On,a as kn,f as An,h as jn,i as Mn,j as Nn,k as Pn,m as Fn,o as In,p as Ln,r as Rn,t as zn,w as Bn,y as Vn}from"./gitApi-MThvLXsN.js";import{A as Hn,B as Un,C as Wn,D as Gn,E as Kn,F as qn,G as Jn,H as Yn,I as Xn,J as Zn,K as Qn,L as $n,M as er,N as tr,O as nr,Q as rr,R as ir,S as ar,U as or,V as sr,W as cr,Y as lr,Z as ur,_ as dr,b as fr,c as pr,d as mr,f as hr,g as gr,h as _r,i as vr,j as yr,k as br,l as xr,m as Sr,n as Cr,p as wr,q as Tr,t as Er,u as Dr,v as Or,w as kr,x as Ar,y as jr,z as Mr}from"./useAppFontEffects-ccN1Nplv.js";import{A as Nr,E as Pr,S as Fr,a as Ir,c as Lr,g as Rr,h as zr,i as Br,j as Vr,k as Hr,m as Ur,n as Wr,p as Gr,u as Kr,v as qr,x as Jr}from"./projectMeta-rDf2igM9.js";import{t as Yr}from"./input-gaFVNq1P.js";import{i as Xr,n as Zr,r as Qr,t as $r}from"./tooltip-D1a6rKLA.js";import{U as ei,W as ti,a as ni,c as ri,i as ii,s as ai,u as oi}from"./useSessionAutoCleanup-BxkIFBdx.js";import{n as si}from"./useThemeSystem-DMzWVJaW.js";import{A as ci,C as li,D as ui,E as di,F as fi,H as pi,I as mi,K as hi,L as gi,M as _i,O as vi,P as yi,T as bi,V as xi,_ as Si,b as Ci,f as wi,n as Ti,r as Ei,v as Di,w as Oi,y as ki}from"./radio-Bn5ronTr.js";import{i as Ai,o as ji}from"./OverlayScrollbar-oOLMqq2s.js";import{C as Mi,D as Ni,E as Pi,G as Fi,O as Ii,S as Li,T as Ri,U as zi,W as Bi,X as Vi,i as Hi,k as Ui,q as Wi,r as Gi,rt as Ki,tt as qi,w as Ji,x as Yi}from"./ChatContainer-Ce3b2cNC.js";import{n as Xi,r as Zi}from"./useRuntimeAPIs-DSLXJybW.js";import{N as Qi,P as $i,_ as ea,b as ta,d as na,g as ra,h as ia,p as aa,v as oa,x as sa,y as ca}from"./insertionBoundaries-BD8gnU2G.js";import{u as la}from"./appThemeRegistry-BQAoUoXG.js";import{_ as ua,g as da,i as fa,l as pa,n as ma,s as ha,t as ga,v as _a,y as va}from"./vendor-dnd-kit-core-CvWxUPdb.js";import{a as ya,n as ba,o as xa,s as Sa,t as Ca}from"./vendor-dnd-kit-sortable-hHdP9lLb.js";import{a as wa}from"./url-zwuNq3GS.js";import{m as Ta}from"./markdown-worker-CoO82KYF.js";import{n as Ea,t as Da}from"./useEffectiveDirectory-CRHavvW8.js";import{t as Oa}from"./sortable-tabs-strip-oDpTDVoQ.js";import{t as ka}from"./vendor-tanstack-react-virtual-tlDgH6PG.js";import{i as Aa,r as ja,t as Ma}from"./vendor-framer-motion-DFy_BSVd.js";import{B as Na,C as Pa,D as Fa,F as Ia,I as La,J as Ra,O as za,P as Ba,T as Va,Y as Ha,_ as Ua,b as Wa,d as Ga,f as Ka,h as qa,k as Ja,m as Ya,p as Xa,s as Za,v as Qa,w as $a,x as eo,y as to}from"./MobileSurface-CAFfh00F.js";import{i as no,n as ro,r as io,t as ao}from"./useDesktopWindowControlsLayout-5VYu0grF.js";import{n as oo}from"./useFontPreferences-F2QPNE2V.js";import{a as so,c as co,d as lo,f as uo,h as fo,i as po,l as mo,m as ho,n as go,o as _o,r as vo,s as yo,t as bo,u as xo}from"./ContextPanel-CxgoBKyL.js";import{A as So,B as Co,F as wo,G as To,I as Eo,J as Do,K as Oo,M as ko,N as Ao,P as jo,R as Mo,V as No,W as Po,X as Fo,Y as Io,_ as Lo,a as Ro,c as zo,d as Bo,f as Vo,g as Ho,h as Uo,i as Wo,j as Go,k as Ko,l as qo,m as Jo,n as Yo,o as Xo,p as Zo,q as Qo,r as $o,s as es,u as ts,v as ns,y as rs,z as is}from"./runtimeEndpointReset-Dy_-6DS5.js";import{a as as,c as os,l as ss,o as cs,s as ls}from"./shikiHighlight-BMya_gQv.js";import{n as us,r as ds,t as fs}from"./collapsible-Cimoz0kx.js";import{a as ps,o as ms,r as hs,s as gs,t as _s}from"./projectActions-CWvNGKfA.js";import{a as vs,i as ys,n as bs,o as xs,r as Ss,t as Cs}from"./multirun-DCvdvIa_.js";var Q=e(me(),1),ws=De(),Ts=Ee(),$=pe();function Es(e){let t=(0,Ts.c)(14),n,r,i,a;t[0]===e?(n=t[1],r=t[2],i=t[3],a=t[4]):({size:i,className:n,style:a,...r}=e,t[0]=e,t[1]=n,t[2]=r,t[3]=i,t[4]=a);let o=typeof i==`number`?`${i}px`:i,s=typeof i==`number`?`${i}px`:i,c;t[5]!==a||t[6]!==o||t[7]!==s?(c={width:o,height:s,...a},t[5]=a,t[6]=o,t[7]=s,t[8]=c):c=t[8];let l;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,$.jsx)(`path`,{d:`M112,148a12,12,0,0,0-12,12v19L69.17,148.2A4,4,0,0,1,68,145.37V97.94a36,36,0,1,0-24,0v47.43a27.81,27.81,0,0,0,8.2,19.8L83,196H64a12,12,0,0,0,0,24h48a12,12,0,0,0,12-12V160A12,12,0,0,0,112,148ZM56,52A12,12,0,1,1,44,64,12,12,0,0,1,56,52ZM212,158.06V110.63a27.81,27.81,0,0,0-8.2-19.8L173,60h19a12,12,0,0,0,0-24H144a12,12,0,0,0-12,12V96a12,12,0,0,0,24,0V77l30.83,30.83a4,4,0,0,1,1.17,2.83v47.43a36,36,0,1,0,24,0ZM200,204a12,12,0,1,1,12-12A12,12,0,0,1,200,204Z`}),t[9]=l):l=t[9];let u;return t[10]!==n||t[11]!==r||t[12]!==c?(u=(0,$.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 256 256`,fill:`currentColor`,className:n,style:c,...r,children:l}),t[10]=n,t[11]=r,t[12]=c,t[13]=u):u=t[13],u}var Ds=`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAeGVYSWZNTQAqAAAACAAEARoABQAAAAEAAAA+ARsABQAAAAEAAABGASgAAwAAAAEAAgAAh2kABAAAAAEAAABOAAAAAAAAAJAAAAABAAAAkAAAAAEAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAIKADAAQAAAABAAAAIAAAAAB+C9pSAAAACXBIWXMAABYlAAAWJQFJUiTwAAABnWlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNi4wLjAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczpleGlmPSJodHRwOi8vbnMuYWRvYmUuY29tL2V4aWYvMS4wLyI+CiAgICAgICAgIDxleGlmOlBpeGVsWERpbWVuc2lvbj4yNTY8L2V4aWY6UGl4ZWxYRGltZW5zaW9uPgogICAgICAgICA8ZXhpZjpQaXhlbFlEaW1lbnNpb24+MjU2PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+Cl6wHhsAAAXaSURBVFgJ7VddbBRVFP5mdme6dOnu2tZawOAPjfxU+bGQYCRAsvw8qNGEQPTRJ0I0amL0wfjgA/HBR8KLD8YgDxJEUkVFxSYYTSRii6DQQCMGIQqlW7p0u+zMzo/fuTuzO9Nt0Td94CRn7pl7z5zznZ977y5wh/7jDGiz+T979qD5Ujbfd90xlll+stOF1uI40B1+4HhkjnZk9CgLQ9iXp2/BdcbgVc/h0sAgduywudJEMwLY9Of4ugtW5p3CpL7W1jTN88VmjdQYvnDKF1mczkYuNZLeCVg3X8fa9u+nqzUB2HRpdN2pSseRQknPoUL1Jo2ICTrPGcCzdwPdHENcAnicKRqcAk7cpL5J1r0JlAtPYV1XDETM/FtH3m19r+f5by+XjNX/xnmCX3/cCzydi4CKiC7lw+PArhGgoPPFq/6E0+9vwM6d5VBNpuv03cLNfeNTRh9KnJIiV2/PvSngycC5RD+dE5zb3g7s6QESzAZc2l6wuY9SnWIAxv10r81uU85Vt1FvtpEtlc/SMFUkUofeZ2IBta0DWDmXgkfbyTRz1qAYAMczOz3p1elOxYPyEllj421hdELViPO6Kudk3ia3UGe5ABDbvtnJZ52SdYmCZ3stdeexBabFdeAbYopEowtagVUZqFapBrtAGqpiVaFrGgyjZlrmTD5yEqoEJj4iFMuA62i6L3WPZkAiuHgarZ/vbWSBkTzO2rfTR4XOJVJhjfX44MBn+OTocVWbcF5MalxXPeVL6zYonoGo44YOtDI7qHC1lkL5nHnOc+tJRi3K6iygLNGMjt1A1XVV6iUzOvVtAvMlS2I/yBYlRf8MgA6szmXQ1jDfKhSgjft6DRtrkgarAiAw5nI9v2WDSn+Zxfd9DawGxIlPPQUg0A2HGABfEIYlCDU4+q0d8O+jRzHCCFYy+nu4BaeYAoksBCDrPYsXQQ6iitgiSQaS1FHHtMzFil4DpxTl4UhORSn4WOaaiGsbu4iFRkMnYQlEV0oSJQGQ4FyYgSRDjpqPZcCR6EOOWonIEsBqArAIQOMLzw0VXRRERF2VoA6Atk1+MzsASekMJYgaFEeHR4Cr85lNGntYzgKCYd/NSNIDCXr0ZJ2jwTsjSvEMzFQCCVmKHBRahn2DNb4rDRx8pnbXOOIg0JELLMHOF1AUkaRj1V8c2TookkMS83WK9QCVpRwtf5wCykQWRKDyJ44Ytc452QUV6inmN9IDIv/6y2+YLDuqTywBEHxv8rsoxQC4Fpf4cZ2pbJ4/huxXr0EvFmoRCrAIVymLQ3Eid0GJYPsPfISBLwdwi79YQnCqBNS7LQDP5qYSAKEDypOrX4WVWYLsFy+i9cwh6CUmUKIJI2Gq5cSbnLLw849D2Ld3L4olC1u3P0c1ow5Ozgixa3puWChONG1D3eLZUQOglvng+Vp5dBfseesx5/yHyI4cBTL3wsssRGs2g6/ppHijiMLoNSSMNHofy6Nn6SPsAR02nUoTtrDTSrdoi8CTni55rlOsCf1ypaDxlFMNU1epCV5XL6Y6dmOq+BeS48NIlq7Anpjg5dOFbPdDWLQyj/aubnUKSkMKi3NhkUd4kieYtbRbYS0bFAOQKI8NO363z1RJHmamtnlwhGksxV2w/gl29WRtm8kWtWUnRShLnQvXgDOXmLg2HzlvbDiyHD8Y517YP2i4FtueFPbB9FFqKcyobk4A5y7zquUFa7IXojyHoeXmAFcY755vaI6A56Xsofm/7+cmblBTpOldQ5vs3PJDVS+RVSAaus2SpJTO80t4NTNSOQfCDrtFkBevA0ME6HGvPdDpFlekzm7rf3nFQNRQEwBZTL9warObWfx21Uv1+fx1ERqVNampGoOHpF1tsdp07RnoGMxK1vT97rbK4IP6+Tc+fWXVsahaYGL6VO09d//GXHXr7jVeqmuppqU6ff4x0RO6lqRxgxHJpWKSlcw5eWfjq5rq/CdhaL5l6JWxjDc6bP7w5sn+/uMs2B36H2bgb6v9raK0+o9IAAAAAElFTkSuQmCC`,Os=`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAeGVYSWZNTQAqAAAACAAEARoABQAAAAEAAAA+ARsABQAAAAEAAABGASgAAwAAAAEAAgAAh2kABAAAAAEAAABOAAAAAAAAAJAAAAABAAAAkAAAAAEAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAIKADAAQAAAABAAAAIAAAAAB+C9pSAAAACXBIWXMAABYlAAAWJQFJUiTwAAABnWlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNi4wLjAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczpleGlmPSJodHRwOi8vbnMuYWRvYmUuY29tL2V4aWYvMS4wLyI+CiAgICAgICAgIDxleGlmOlBpeGVsWERpbWVuc2lvbj4yNTY8L2V4aWY6UGl4ZWxYRGltZW5zaW9uPgogICAgICAgICA8ZXhpZjpQaXhlbFlEaW1lbnNpb24+MjU2PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+Cl6wHhsAAAQzSURBVFgJ7VZNbBNHFH67Xv9RxwnBDqlUoQglcZK6qSIEJIQWAYJQoVY9IE5RTzn20FMvqdpDesq9B24+NdwthAJCkZChJg1JSOXYQIwQKQIaBdtENbs73t2+N8miGWOcpFHUHniyd97OvJ9v3nv7ZgDe038cAeVd/jOZjC94sKdfU+Bj24G9igpexwYPyiu2bauKqqqirkOTqmrjnIOyFsoyUKDocSCj/7mU7ujoMER5l68JYOFZ4YSiwPjd9O0jjx7ch1KhAJZVAcdx0LxDv3XetYKjggr4I4bzHo8G4aYmONjZBYf6+2dUzfd9PNowJajUZmef/PX5zcWl0rmvvnbQHrra+f/M+S+dqYXs2t3Hz09Ve5UicCmZ3NPb1Zv66btv+65dSULA64WGxkbw+Xx8V9XK9d4pWowxeFUqgW6acHroC/j5l0sLD/PZY98MDf3t6mouQ+On3X1H7/2e7rtOztHpgbY2+CAUgperq+D3+7cNgtLSEA7D0+VluDF5FS7cSff2HT56DF1dd/3KhQTWJ/lclsc8jIrk9IfRURgZGQEvRqNSWa8D2t1W/liXXK8Ro0i0lF0ExaPEXec0SgAqhrm3VCzwdS9GQNd1GBsbg0AgAIlEAlpbW7EYLVF/U56AagieiGwbuhERlSQApmEE8c/XKXxU0fF4HNowFfPz81Aul7edBjLGbeHITANsZga4g42HVAM2Y74KM/kSIQ/izgcHB2FiYgJmZmZ4MZpYULRG5PF4+Bx/2cLDxuhhYUqFLwGoWCaQEBGhNjAa4+Pj/J3SQA6pHpqbm/kcNitIJpOgaZIZvlbrQbZNJvcjSZOZDKhwRKLic4l2Pjc3B8FgkE+trKxAVUN0RWuOZNtCHyJJACj/bgREIZcnA9PT029SQM63unuywSOwUWOuTQmAhfmnlluPxIjUk6u1RrbJh0jyV0Ap2OZnJhrbjOcRqEqBBMDCAtltAORDJAkAVj2mWS5CUXinPDUx+oxFkgBYjO0qANu2wKoqQgkAfgW7C4AiYMmfoQSgwpjj7GYRUh/Q66SAmdisNxql227FfP1bXrRlVExdtCNHwDRLdPkgwmi8OUREhe3y1NLJFpEfbWMNvBRtSI2o+KqYi+zbx4NQwptMCO8E1HjEHYjKm/HknG5FZIsCG4lEoLS2lhP1JAB3bt1KH//s+GJPd3dPJpvlN5kwXiYIhHukisr1eAItXsm6YzGItrTcn5+dvS3qSQBSqVQhFouNnj039CsaCC7mcqDjgbNT6op1AtrU8Wo3Ojk5KaVAOptdR8PDwxf3t7SMvXjxvJNOPP31a35Krt8CXKl3j2SUDip/IAjRaBRaP9z/cHW18GMikbhcrVUTAAm1t7d/NDAwcDIUCvVqmtqkyLe3ajtvvTtg4x3SLpbLa3+kUr9N5fP55beE3k/8HyLwDx2/HIx7q3WfAAAAAElFTkSuQmCC`,ks=e=>({...e,fallbackIconDataUrl:e.id===`finder`&&window.__OPENCHAMBER_PLATFORM__!==`win32`?Ds:e.id===`terminal`?Os:void 0}),As=e=>{let t=(0,Ts.c)(8),{label:n,iconDataUrl:r,fallbackIconDataUrl:i}=e,[a,o]=Q.useState(!1),s;t[0]===n?s=t[1]:(s=n.trim().slice(0,1).toUpperCase()||`?`,t[0]=n,t[1]=s);let c=s,l=r||i;if(l&&!a){let e;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(e=()=>o(!0),t[2]=e):e=t[2];let n;return t[3]===l?n=t[4]:(n=(0,$.jsx)(`img`,{src:l,alt:``,className:`h-4 w-4 rounded-sm`,onError:e}),t[3]=l,t[4]=n),n}let u;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(u=X(`h-4 w-4 rounded-sm flex items-center justify-center`,`bg-[var(--surface-muted)] text-[9px] font-medium text-muted-foreground`),t[5]=u):u=t[5];let d;return t[6]===c?d=t[7]:(d=(0,$.jsx)(`span`,{className:u,children:c}),t[6]=c,t[7]=d),d},js=e=>{let t=(0,Ts.c)(74),{directory:n,className:r}=e,{t:i}=Fe(),a=vo(Ms),o=vo(Ns),s=vo(Ps),c=vo(Fs),l=vo(Is),u=vo(Ls),d=vo(Rs),f,p;t[0]===l?(f=t[1],p=t[2]):(f=()=>{l()},p=[l],t[0]=l,t[1]=f,t[2]=p),Q.useEffect(f,p);let m=T()&&E(),h;bb0:{let e;t[3]!==o||t[4]!==a?(e=o.find(e=>e.id===a)??o.find(zs)??o[0]??so[0],t[3]=o,t[4]=a,t[5]=e):e=t[5];let n=e;if(n){let e;t[6]===n?e=t[7]:(e=ks(n),t[6]=n,t[7]=e),h=e;break bb0}let r;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(r=ks(so[0]),t[8]=r):r=t[8],h=r}let g=h;if(!m||!n||o.length===0)return null;let _;t[9]===n?_=t[10]:(_=async e=>{await O(n,e.id,e.appName)||await j(n,e.appName)},t[9]=n,t[10]=_);let v=_,y;t[11]!==v||t[12]!==d?(y=async e=>{await d(e.id),await v(e)},t[11]=v,t[12]=d,t[13]=y):y=t[13];let b=y,x;t[14]===n?x=t[15]:(x=async()=>{await Le(n)},t[14]=n,t[15]=x);let S=x,C;t[16]===r?C=t[17]:(C=X(`app-region-no-drag inline-flex h-7 items-center self-center rounded-[9px] [corner-shape:squircle] supports-[corner-shape:squircle]:rounded-[50px]`,`bg-[var(--surface-elevated)] overflow-hidden`,`border border-border/60`,r),t[16]=r,t[17]=C);let w;t[18]!==v||t[19]!==g?(w=()=>void v(g),t[18]=v,t[19]=g,t[20]=w):w=t[20];let D=c&&`animate-pulse`,k;t[21]===D?k=t[22]:(k=X(`inline-flex h-full items-center px-2.5 typography-ui-label font-medium`,`text-foreground hover:bg-interactive-hover transition-colors`,D),t[21]=D,t[22]=k);let A;t[23]!==g.label||t[24]!==i?(A=i(`openInApp.actions.openInAria`,{app:g.label}),t[23]=g.label,t[24]=i,t[25]=A):A=t[25];let M;t[26]!==g.fallbackIconDataUrl||t[27]!==g.iconDataUrl||t[28]!==g.label?(M=(0,$.jsx)(As,{label:g.label,iconDataUrl:g.iconDataUrl,fallbackIconDataUrl:g.fallbackIconDataUrl}),t[26]=g.fallbackIconDataUrl,t[27]=g.iconDataUrl,t[28]=g.label,t[29]=M):M=t[29];let N;t[30]!==k||t[31]!==A||t[32]!==M||t[33]!==w?(N=(0,$.jsx)(`button`,{type:`button`,onClick:w,className:k,"aria-label":A,children:M}),t[30]=k,t[31]=A,t[32]=M,t[33]=w,t[34]=N):N=t[34];let P;t[35]===Symbol.for(`react.memo_cache_sentinel`)?(P=X(`inline-flex h-full w-7 items-center justify-center`,`border-l border-[var(--interactive-border)] text-muted-foreground`,`hover:bg-interactive-hover hover:text-foreground transition-colors`),t[35]=P):P=t[35];let F;t[36]===i?F=t[37]:(F=i(`openInApp.actions.chooseAppAria`),t[36]=i,t[37]=F);let I;t[38]===Symbol.for(`react.memo_cache_sentinel`)?(I=(0,$.jsx)(Z,{name:`arrow-down-s`,className:`h-4 w-4`}),t[38]=I):I=t[38];let L;t[39]===F?L=t[40]:(L=(0,$.jsx)(Oi,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,className:P,"aria-label":F,children:I})}),t[39]=F,t[40]=L);let R;t[41]===S?R=t[42]:(R=()=>void S(),t[41]=S,t[42]=R);let z;t[43]===Symbol.for(`react.memo_cache_sentinel`)?(z=(0,$.jsx)(Z,{name:`file-copy`,className:`h-4 w-4`}),t[43]=z):z=t[43];let B;t[44]===i?B=t[45]:(B=i(`openInApp.actions.copyPath`),t[44]=i,t[45]=B);let V;t[46]===B?V=t[47]:(V=(0,$.jsx)(`span`,{className:`typography-ui-label text-foreground`,children:B}),t[46]=B,t[47]=V);let H;t[48]!==R||t[49]!==V?(H=(0,$.jsxs)(ki,{className:`flex items-center gap-2`,onClick:R,children:[z,V]}),t[48]=R,t[49]=V,t[50]=H):H=t[50];let U;t[51]===Symbol.for(`react.memo_cache_sentinel`)?(U=(0,$.jsx)(li,{}),t[51]=U):U=t[51];let W;if(t[52]!==o||t[53]!==b||t[54]!==g.id){let e;t[56]!==b||t[57]!==g.id?(e=e=>{let t=ks(e);return(0,$.jsxs)(ki,{className:`flex items-center gap-2`,onClick:()=>void b(e),children:[(0,$.jsx)(As,{label:e.label,iconDataUrl:e.iconDataUrl,fallbackIconDataUrl:t.fallbackIconDataUrl}),(0,$.jsx)(`span`,{className:`typography-ui-label text-foreground`,children:e.label}),g.id===e.id?(0,$.jsx)(Z,{name:`check`,className:`ml-auto h-4 w-4 text-primary`}):null]},e.id)},t[56]=b,t[57]=g.id,t[58]=e):e=t[58],W=o.map(e),t[52]=o,t[53]=b,t[54]=g.id,t[55]=W}else W=t[55];let ee;t[59]!==s||t[60]!==u||t[61]!==i?(ee=s?(0,$.jsxs)(ki,{className:`flex items-center gap-2`,onClick:()=>void u(!0),children:[(0,$.jsx)(Z,{name:`refresh`,className:`h-4 w-4`}),(0,$.jsx)(`span`,{className:`typography-ui-label text-foreground`,children:i(`openInApp.actions.refreshApps`)})]}):null,t[59]=s,t[60]=u,t[61]=i,t[62]=ee):ee=t[62];let G;t[63]!==H||t[64]!==W||t[65]!==ee?(G=(0,$.jsxs)(Di,{align:`end`,className:`w-56 max-h-[70vh] overflow-y-auto`,children:[H,U,W,ee]}),t[63]=H,t[64]=W,t[65]=ee,t[66]=G):G=t[66];let te;t[67]!==L||t[68]!==G?(te=(0,$.jsxs)(Si,{children:[L,G]}),t[67]=L,t[68]=G,t[69]=te):te=t[69];let K;return t[70]!==N||t[71]!==te||t[72]!==C?(K=(0,$.jsxs)(`div`,{className:C,children:[N,te]}),t[70]=N,t[71]=te,t[72]=C,t[73]=K):K=t[73],K};function Ms(e){return e.selectedAppId}function Ns(e){return e.availableApps}function Ps(e){return e.isCacheStale}function Fs(e){return e.isScanning}function Is(e){return e.initialize}function Ls(e){return e.loadInstalledApps}function Rs(e){return e.selectApp}function zs(e){return e.id===po}var Bs=[{pattern:/^dev(:.*)?$/i},{pattern:/^start(:.*)?$/i},{pattern:/^preview(:.*)?$/i},{pattern:/^serve(:.*)?$/i},{pattern:/^develop(:.*)?$/i}],Vs=[`dev`,`start`,`preview`,`serve`];async function Hs(e,t,n){if(!e)return null;let r=Gs(t);if(r)return{command:r.command,label:r.name||`Start Preview`,actionId:r.id};if(n){let t=Ks(n);if(t){let n=await qs(e);return{command:`${n===`npm`?`npm run`:n===`yarn`?`yarn`:n===`pnpm`?`pnpm`:n===`bun`?`bun run --shell=bun`:`npm run`} ${t}`,label:`Start (${t})`}}}if(await Us(e)){let e=await Ws(),t=typeof e==`number`&&Number.isFinite(e)&&e>0?e:8e3;return{command:`python3 -m http.server ${t}`,label:`Static preview`,previewUrlHint:`http://127.0.0.1:${t}/`}}return null}async function Us(e){let t=await Js(`${e}/index.html`,e);return typeof t==`string`&&t.trim().length>0}async function Ws(){try{let e=await N(`/api/system/free-port`,{cache:`no-store`});if(!e.ok)return null;let t=await e.json().catch(()=>null),n=typeof t?.port==`number`?t.port:null;return n&&Number.isFinite(n)?n:null}catch{return null}}function Gs(e){for(let t of e){let e=`${t.name} ${t.command}`.toLowerCase();if(Vs.some(t=>e.includes(t)))return t}return null}function Ks(e){for(let{pattern:t}of Bs)for(let n of Object.keys(e))if(t.test(n))return n;return null}async function qs(e){let t=await Js(`${e}/package.json`,e);if(t)try{let e=JSON.parse(t),n=typeof e.packageManager==`string`?e.packageManager.toLowerCase():``;if(n.startsWith(`bun@`))return`bun`;if(n.startsWith(`pnpm@`))return`pnpm`;if(n.startsWith(`yarn@`))return`yarn`;if(n.startsWith(`npm@`))return`npm`}catch{}for(let[t,n]of[[`bun.lock`,`bun`],[`bun.lockb`,`bun`],[`pnpm-lock.yaml`,`pnpm`],[`yarn.lock`,`yarn`],[`package-lock.json`,`npm`]]){let r=await Js(`${e}/${t}`,e);if(typeof r==`string`&&r.trim().length>0)return n}return`npm`}async function Js(e,t){if(t?.trim())try{let n=new URLSearchParams({path:e,directory:t,optional:`true`}),r=await N(`/api/fs/read?${n.toString()}`,{cache:`no-store`});if(r.ok)return r.text()}catch{}let n=U()?.files;if(n?.readFile)try{let t=await n.readFile(e,{optional:!0});return typeof t?.content==`string`?t.content:null}catch{return null}try{let t=await N(`/api/fs/read?path=${encodeURIComponent(e)}&optional=true`,{cache:`no-store`});return t.ok?t.text():null}catch{return null}}async function Ys(e){try{let t=await Js(`${e}/package.json`,e);if(t==null)return null;let n=JSON.parse(t).scripts;return n&&typeof n==`object`&&!Array.isArray(n)?n:null}catch{return null}}var Xs=e=>new Promise(t=>{window.setTimeout(t,e)}),Zs=RegExp(`\x1B\\[[0-9;?]*[ -/]*[@-~]`,`g`),Qs=/https?:\/\/[^\s<>'"`]+/gi,$s=`__openchamber_auto_discover_preview__`,ec=15e3,tc=e=>{let t=``;for(let n=0;n<e.length;n+=1){let r=e.charCodeAt(n);r>=0&&r<=8||r===11||r===12||r>=14&&r<=31||r===127||(t+=e[n])}return t},nc=e=>{let t=(e||``).trim();if(!t)return null;let n=/^https?:\/\//i.test(t)?t:`http://${t}`;try{let e=new URL(n);return e.protocol!==`http:`&&e.protocol!==`https:`?null:e.toString()}catch{return null}},rc=e=>{let t=e.replace(Zs,``).match(Qs);if(!t||t.length===0)return null;let n=t.map(e=>e.replace(/[),.;]+$/,``)).filter(Boolean);if(n.length===0)return null;let r=[];for(let e of n)try{let t=new URL(e);t.port&&t.port.length>0&&r.push({raw:e,parsed:t})}catch{}if(r.length>0){let e=e=>{let{parsed:t}=e,n=t.hostname.toLowerCase(),r=n===`localhost`||n===`127.0.0.1`||n===`0.0.0.0`||n===`::1`,i=t.pathname||`/`,a=i.split(`/`).filter(Boolean).length,o=i===`/`||i===``,s=!!(t.search||t.hash),c=0;return r&&(c+=50),o&&(c+=30),c-=Math.min(a*5,20),s&&(c-=10),c};return r.sort((t,n)=>e(n)-e(t)),r[0]?.parsed.origin??r[0]?.raw??null}return n[0]??null},ic=({projectRef:e,directory:t,className:n,compact:r=!1,allowMobile:i=!1})=>{let{t:a}=Fe(),{terminal:o,runtime:s}=Xi(),{isMobile:c}=Ai(),l=Q.useMemo(()=>T(),[]),d=Va(e=>e.instances),f=Va(e=>e.load),p=u(e=>e.setBottomTerminalOpen),m=u(e=>e.setActiveMainTab),h=u(e=>e.setSettingsPage),g=u(e=>e.setSettingsDialogOpen),_=u(e=>e.setSettingsProjectsSelectedId),v=u(e=>e.openContextPreview),y=oo(e=>e.sessions),b=oo(e=>e.ensureDirectory),x=oo(e=>e.setTabLabel),S=oo(e=>e.setTabIconKey),C=oo(e=>e.setActiveTab),w=oo(e=>e.setConnecting),E=oo(e=>e.setTabSessionId),D=oo(e=>e.setTabPreviewUrl),O=oo(e=>e.projectActionRuns),k=oo(e=>e.setProjectActionRun),A=oo(e=>e.updateProjectActionRunStatus),j=oo(e=>e.removeProjectActionRun),[M,N]=Q.useState([]),[P,F]=Q.useState(null),[I,L]=Q.useState(!1),R=Q.useRef({}),z=Q.useRef({}),B=Q.useRef({}),V=Q.useRef({}),H=Q.useRef(0),U=e?.id??null,W=e?.path??``,ee=Q.useMemo(()=>U?{id:U,path:W}:null,[U,W]);Q.useEffect(()=>{l&&f().catch(()=>void 0)},[l,f]);let G=Q.useCallback(async e=>{await wa(e)},[]),te=Q.useCallback(async()=>{if(!ee)return;let e=H.current+1;H.current=e,L(!0);try{let t=await qe(ee);if(H.current!==e)return;let n=t.actions;N(n),F(e=>e===$s||e&&n.some(t=>t.id===e)?e:null)}catch{if(H.current!==e)return}finally{H.current===e&&L(!1)}},[ee]),K=Q.useMemo(()=>ps(t||ee?.path||``),[t,ee?.path]),ne=Q.useMemo(()=>P?M.find(e=>e.id===P)??null:null,[M,P]),re=Q.useMemo(()=>({id:$s,name:a(`projectActions.actions.autoDiscover`),command:``,icon:`search`,autoOpenUrl:!0}),[a]),ie=!c,ae=Q.useMemo(()=>ie?[re,...M]:M,[M,re,ie]);Q.useEffect(()=>{te()},[te]),Q.useEffect(()=>{if(typeof window>`u`)return;let e=e=>{let t=e.detail;U&&(t?.projectId&&t.projectId!==U||te())};return window.addEventListener(_s,e),()=>{window.removeEventListener(_s,e)}},[te,U]),Q.useEffect(()=>{P&&(P===$s&&ie||M.some(e=>e.id===P)||F(null))},[M,ie,P]),Q.useEffect(()=>{for(let[e,t]of Object.entries(O)){let n=y.get(t.directory)?.tabs.find(e=>e.id===t.tabId);(!n||n.terminalSessionId!==t.sessionId)&&j(e)}},[O,j,y]),Q.useEffect(()=>{for(let[e,t]of Object.entries(O)){let n=z.current[e]??{lastSeenChunkId:null,openedUrl:!1,tail:``,openInPreview:!1};z.current[e]=n;let r=ae.find(e=>e.id===t.actionId);if(!r)continue;let i=y.get(t.directory)?.tabs.find(e=>e.id===t.tabId);if(!i||!Array.isArray(i.bufferChunks)||i.bufferChunks.length===0)continue;let o=i.bufferChunks.filter(e=>n.lastSeenChunkId===null||e.id>n.lastSeenChunkId);if(o.length===0)continue;let s=o.map(e=>e.data).join(``),c=`${n.tail}${s}`,l=!n.openedUrl&&r.autoOpenUrl===!0?rc(c):null;if(n.lastSeenChunkId=o[o.length-1]?.id??n.lastSeenChunkId,n.tail=c.slice(-512),l)if(n.openedUrl=!0,n.openInPreview){let t=O[e];t&&(D(t.directory,t.tabId,l,{locked:!1,autoOpened:!1}),t.status===`waiting-for-preview`&&A(e,`running`),window.clearTimeout(V.current[e]),delete V.current[e],v(t.directory,l))}else G(l),Y.success(a(`projectActions.toast.openedUrlFromOutput`));z.current[e]=n}for(let e of Object.keys(z.current))O[e]||(delete z.current[e],window.clearTimeout(V.current[e]),delete V.current[e])},[ae,v,G,O,D,a,y,A]);let oe=Q.useCallback(async(e,t={})=>{if(!K)throw Error(a(`projectActions.error.noActiveDirectory`));let n=gs(K,e.id);b(K);let r=oo.getState(),i=r.getDirectoryState(K),o=R.current[n]||null,s=o?!!i?.tabs.some(e=>e.id===o):!1;(!o||!s)&&(o=r.createTab(K),R.current[n]=o),x(K,o,`Action: ${e.name}`),S(K,o,e.icon||`play`),t.revealTerminal!==!1&&(C(K,o),p(!0),m(`terminal`));let c=oo.getState().getDirectoryState(K)?.tabs.find(e=>e.id===o);return{key:n,tabId:o,sessionId:c?.terminalSessionId??null}},[b,K,m,C,p,S,x,a]),se=Q.useCallback(async e=>{if(s.isVSCode||!i&&c)return;if(!K){Y.error(a(`projectActions.error.noActiveDirectoryForAction`));return}let t=gs(K,e.id),n=O[t];if(!(n&&n.status===`running`))try{let t=e.id===$s?await(async()=>{let[e,t]=await Promise.all([qe({id:ee?.id??``,path:K}),Ys(K)]),n=await Hs(K,e.actions,t);if(!n)throw Error(a(`contextPanel.preview.noDevServer`));return{id:$s,name:a(`projectActions.actions.autoDiscover`),command:n.command,icon:`search`,autoOpenUrl:!0,openUrl:n.previewUrlHint||``}})():e,n=t.autoOpenUrl===!0&&(t.openUrl||``).trim().length>0,{key:r,tabId:i,sessionId:s}=await oe(t,{revealTerminal:!n&&e.id!==$s}),c=s,u=!1;if(!c){w(K,i,!0);try{c=(await o.createSession({cwd:K})).sessionId,u=!0,E(K,i,c)}finally{w(K,i,!1)}}if(!c)throw Error(a(`projectActions.error.failedToCreateTerminalSession`));u&&await Xs(350),t.id===$s&&(B.current[r]?.(),w(K,i,!0),B.current[r]=ke(c,e=>{e.type===`data`&&typeof e.data==`string`&&e.data.length>0&&oo.getState().appendToBuffer(K,i,e.data),e.type===`exit`&&(oo.getState().setTabLifecycle(K,i,`exited`),oo.getState().setConnecting(K,i,!1),oo.getState().removeProjectActionRun(r),delete z.current[r],B.current[r]?.(),delete B.current[r],window.clearTimeout(V.current[r]),delete V.current[r])},()=>{oo.getState().setConnecting(K,i,!1)},{maxRetries:60,initialRetryDelay:250,maxRetryDelay:2e3,connectionTimeout:5e3}));let f=t.autoOpenUrl===!0&&l&&(t.desktopOpenSshForward||``).trim().length>0,p=t.autoOpenUrl?nc(t.openUrl):null,m=t.autoOpenUrl&&l?ms(t.desktopOpenSshForward,d):null;k({key:r,directory:K,actionId:t.id,tabId:i,sessionId:c,status:t.id===$s&&!p?`waiting-for-preview`:`running`}),window.clearTimeout(V.current[r]),delete V.current[r],t.id===$s&&!p&&(V.current[r]=window.setTimeout(()=>{oo.getState().updateProjectActionRunStatus(r,`running`),delete V.current[r]},ec)),m?(D(K,i,null,{locked:!0}),G(m),Y.success(a(`projectActions.toast.openedForwardedUrl`))):p?(D(K,i,p,{locked:!0,autoOpened:!0}),v(K,p),Y.success(a(`projectActions.toast.openedActionUrl`))):n?(D(K,i,null,{locked:!0}),Y.error(a(`projectActions.error.invalidCustomUrlFormat`))):f?(D(K,i,null,{locked:!0}),Y.error(a(`projectActions.error.selectedDesktopSshForwardUnavailable`))):D(K,i,null,{locked:!1,autoOpened:!1}),z.current[r]={lastSeenChunkId:null,openedUrl:!!m||!!p||n,tail:``,openInPreview:t.id===$s};let h=tc(t.command.trim().replace(/\r\n|\r/g,`
|
|
3
3
|
`));await o.sendInput(c,`${h}\r`)}catch(e){j(t),delete z.current[t],B.current[t]?.(),delete B.current[t],window.clearTimeout(V.current[t]),delete V.current[t],Y.error(e instanceof Error?e.message:a(`projectActions.error.failedToRunAction`))}},[d,oe,i,c,l,K,G,v,O,s.isVSCode,j,w,k,D,E,ee?.id,a,o]),q=Q.useCallback(async e=>{let t=gs(K,e.id),n=O[t];if(n){A(t,`stopping`);try{await o.sendInput(n.sessionId,``)}catch{}if(await new Promise(e=>{window.setTimeout(e,1e3)}),oo.getState().getDirectoryState(n.directory)?.tabs.find(e=>e.id===n.tabId)?.terminalSessionId===n.sessionId){if(typeof o.forceKill==`function`)try{await o.forceKill({sessionId:n.sessionId})}catch{}else try{await o.close(n.sessionId)}catch{}E(n.directory,n.tabId,null)}j(t),delete z.current[t],B.current[t]?.(),delete B.current[t],window.clearTimeout(V.current[t]),delete V.current[t]}},[K,O,j,E,o,A]),ce=Q.useCallback(()=>{let e=ne??ae[0];if(!e)return;let t=gs(K,e.id),n=O[t];if(n?.status!==`stopping`){if(n){q(e);return}se(e)}},[ae,K,se,O,ne,q]),le=Q.useCallback((e,t=!1)=>{if(F(e.id),!t){se(e);return}let n=gs(K,e.id),r=O[n];if(r?.status!==`stopping`){if(r){q(e);return}se(e)}},[K,se,O,q]),ue=Q.useCallback(()=>{ee?.id&&(_(ee.id),h(`projects`),g(!0))},[g,h,_,ee?.id]);if(s.isVSCode||!i&&c||!ee||!K)return null;let de=ne??ae[0]??null;if(!de)return null;let fe=de.icon||`play`,pe=de.id===$s?`search`:hs[fe]||`play`,me=O[gs(K,de.id)],he=me?.status===`stopping`,ge=me?.status===`waiting-for-preview`,_e=me?y.get(me.directory)?.tabs.find(e=>e.id===me.tabId)?.previewUrl??null:null,ve=!!(me&&_e),ye=()=>{!me||!_e||v(me.directory,_e)};return r?(0,$.jsxs)(`div`,{className:`inline-flex items-center`,children:[(0,$.jsx)(`button`,{type:`button`,disabled:I||he,className:X(`app-region-no-drag inline-flex h-9 w-9 items-center justify-center rounded-[10px] [corner-shape:squircle] supports-[corner-shape:squircle]:rounded-[50px] p-2`,`typography-ui-label font-medium text-muted-foreground hover:bg-interactive-hover hover:text-foreground transition-colors`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary`,`disabled:cursor-not-allowed`,n),onClick:ce,"aria-label":a(me?`projectActions.actions.stopNamedAria`:`projectActions.actions.runNamedAria`,{name:de.name}),children:he||ge?(0,$.jsx)(Z,{name:`loader-4`,className:`h-5 w-5 animate-spin text-[var(--status-warning)]`}):me?(0,$.jsx)(Z,{name:`stop`,className:`h-5 w-5 text-[var(--status-warning)]`}):(0,$.jsx)(Z,{name:pe,className:`h-5 w-5`})}),ve?(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,className:`app-region-no-drag -ml-1 inline-flex h-9 w-7 items-center justify-center rounded-[10px] text-muted-foreground hover:bg-interactive-hover hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary`,"aria-label":a(`projectActions.actions.openPreview`),onClick:ye,children:(0,$.jsx)(Z,{name:`global`,className:`h-4 w-4`})})}),(0,$.jsx)(Zr,{sideOffset:6,children:a(`projectActions.actions.openPreview`)})]}):null,(0,$.jsxs)(Si,{children:[(0,$.jsx)(Oi,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,className:`app-region-no-drag -ml-1 inline-flex h-9 w-5 items-center justify-center rounded-[10px] text-muted-foreground hover:bg-interactive-hover hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary`,"aria-label":a(`projectActions.actions.chooseActionAria`),children:(0,$.jsx)(Z,{name:`arrow-down-s`,className:`h-3.5 w-3.5`})})}),(0,$.jsxs)(Di,{align:`end`,className:`w-52 max-h-[70vh] overflow-y-auto`,children:[(0,$.jsxs)(ki,{className:`flex items-center gap-2`,onClick:ue,children:[(0,$.jsx)(Z,{name:`add`,className:`h-4 w-4`}),(0,$.jsx)(`span`,{className:`typography-ui-label text-foreground`,children:a(`projectActions.actions.addNewAction`)})]}),(0,$.jsx)(li,{}),ae.map(e=>{let t=e.icon||`play`,n=e.id===$s?`search`:hs[t]||`play`,r=gs(K,e.id),i=O[r],a=!!i,o=i?.status===`stopping`;return(0,$.jsxs)(ki,{className:`flex items-center gap-2`,onClick:()=>{le(e,!0)},children:[(0,$.jsx)(Z,{name:n,className:`h-4 w-4`}),(0,$.jsx)(`span`,{className:`typography-ui-label text-foreground truncate`,children:e.name}),o||i?.status===`waiting-for-preview`?(0,$.jsx)(Z,{name:`loader-4`,className:`ml-auto h-4 w-4 animate-spin text-[var(--status-warning)]`}):a?(0,$.jsx)(Z,{name:`stop`,className:`ml-auto h-4 w-4 text-[var(--status-warning)]`}):null]},e.id)})]})]})]}):(0,$.jsxs)(`div`,{className:X(`app-region-no-drag inline-flex shrink-0 items-center self-center rounded-[9px] [corner-shape:squircle] supports-[corner-shape:squircle]:rounded-[50px]`,`bg-[var(--surface-elevated)] overflow-hidden`,`border border-border/60`,r?`h-9`:`h-7`,n),children:[(0,$.jsx)(`button`,{type:`button`,onClick:ce,disabled:I||he,className:X(`inline-flex h-full items-center justify-center typography-ui-label font-medium text-foreground hover:bg-interactive-hover`,r?`w-9 px-0`:`px-2.5`,`transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary disabled:cursor-not-allowed`),"aria-label":a(me?`projectActions.actions.stopNamedAria`:`projectActions.actions.runNamedAria`,{name:de.name}),children:(0,$.jsx)(`span`,{className:`inline-flex h-4 w-4 shrink-0 items-center justify-center`,children:he||ge?(0,$.jsx)(Z,{name:`loader-4`,className:`h-4 w-4 animate-spin text-[var(--status-warning)]`}):me?(0,$.jsx)(Z,{name:`stop`,className:`h-4 w-4 text-[var(--status-warning)]`}):(0,$.jsx)(Z,{name:pe,className:`h-4 w-4`})})}),ve?(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,onClick:ye,className:X(r?`inline-flex h-full w-8 items-center justify-center`:`inline-flex h-full w-7 items-center justify-center`,`border-l border-[var(--interactive-border)] text-foreground`,`hover:bg-interactive-hover transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary`),"aria-label":a(`projectActions.actions.openPreview`),children:(0,$.jsx)(Z,{name:`global`,className:`h-4 w-4`})})}),(0,$.jsx)(Zr,{sideOffset:6,children:a(`projectActions.actions.openPreview`)})]}):null,(0,$.jsxs)(Si,{children:[(0,$.jsx)(Oi,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,className:X(r?`inline-flex h-full w-8 items-center justify-center`:`inline-flex h-full w-7 items-center justify-center`,`border-l border-[var(--interactive-border)] text-muted-foreground`,`hover:bg-interactive-hover hover:text-foreground transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary`),"aria-label":a(`projectActions.actions.chooseActionAria`),children:(0,$.jsx)(Z,{name:`arrow-down-s`,className:`h-4 w-4`})})}),(0,$.jsxs)(Di,{align:`start`,className:`w-52 max-h-[70vh] overflow-y-auto`,children:[(0,$.jsxs)(ki,{className:`flex items-center gap-2`,onClick:ue,children:[(0,$.jsx)(Z,{name:`add`,className:`h-4 w-4`}),(0,$.jsx)(`span`,{className:`typography-ui-label text-foreground`,children:a(`projectActions.actions.addNewAction`)})]}),(0,$.jsx)(li,{}),ae.map(e=>{let t=e.icon||`play`,n=e.id===$s?`search`:hs[t]||`play`,r=gs(K,e.id),i=O[r],a=!!i,o=i?.status===`stopping`;return(0,$.jsxs)(ki,{className:`flex items-center gap-2`,onClick:()=>{le(e,!0)},children:[(0,$.jsx)(Z,{name:n,className:`h-4 w-4`}),(0,$.jsx)(`span`,{className:`typography-ui-label text-foreground truncate`,children:e.name}),o||i?.status===`waiting-for-preview`?(0,$.jsx)(Z,{name:`loader-4`,className:`ml-auto h-4 w-4 animate-spin text-[var(--status-warning)]`}):a?(0,$.jsx)(Z,{name:`stop`,className:`ml-auto h-4 w-4 text-[var(--status-warning)]`}):null]},e.id)})]})]})]})};function ac(e){return e.isOpen&&e.activeTab===e.targetTab?{open:!1,tab:e.activeTab}:{open:!0,tab:e.targetTab}}var oc=`app-region-no-drag inline-flex h-8 w-8 items-center justify-center gap-2 rounded-md typography-ui-label font-medium text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary disabled:pointer-events-none disabled:opacity-50 hover:bg-interactive-hover transition-colors`,sc=`app-region-no-drag inline-flex h-9 w-9 items-center justify-center gap-2 p-2 rounded-md typography-ui-label font-medium text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary disabled:pointer-events-none disabled:opacity-50 hover:text-foreground hover:bg-interactive-hover transition-colors`,cc=Q.memo(function(e){let t=(0,Ts.c)(17),{visible:n,title:r,ariaLabel:i,onClick:a,className:o,Icon:s,iconClassName:c,pressed:l}=e,u=n===void 0||n,d=l!==void 0&&l;if(!u)return null;let f=o??oc,p=d&&`bg-interactive-selection text-interactive-selection-foreground`,m;t[0]!==f||t[1]!==p?(m=X(f,p),t[0]=f,t[1]=p,t[2]=m):m=t[2];let h=c??`h-[18px] w-[18px]`,g;t[3]!==s||t[4]!==h?(g=(0,$.jsx)(Z,{name:s,className:h}),t[3]=s,t[4]=h,t[5]=g):g=t[5];let _;t[6]!==i||t[7]!==a||t[8]!==d||t[9]!==m||t[10]!==g?(_=(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,onClick:a,"aria-label":i,"aria-pressed":d,className:m,children:g})}),t[6]=i,t[7]=a,t[8]=d,t[9]=m,t[10]=g,t[11]=_):_=t[11];let v;t[12]===r?v=t[13]:(v=(0,$.jsx)(Zr,{children:(0,$.jsx)(`p`,{children:r})}),t[12]=r,t[13]=v);let y;return t[14]!==_||t[15]!==v?(y=(0,$.jsxs)($r,{children:[_,v]}),t[14]=_,t[15]=v,t[16]=y):y=t[16],y}),lc=Q.memo(function(e){let t=(0,Ts.c)(42),{isMobile:n,githubAuthStatus:r,githubAccounts:i,githubAvatarUrl:a,githubLogin:o,isSwitchingGitHubAccount:s,handleGitHubAccountSwitch:c}=e,{t:l}=Fe();if(!r?.connected||n)return null;if(i.length>1){let e;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=X(oc,`h-6 w-6 overflow-hidden rounded-full border border-border/60 bg-muted/80 p-0`),t[0]=e):e=t[0];let n;t[1]!==o||t[2]!==l?(n=o?l(`header.github.connectedWithLogin`,{login:o}):l(`header.github.connected`),t[1]=o,t[2]=l,t[3]=n):n=t[3];let r;t[4]!==a||t[5]!==o||t[6]!==l?(r=a?(0,$.jsx)(`img`,{src:a,alt:o?l(`header.github.avatarWithLogin`,{login:o}):l(`header.github.avatar`),className:`h-full w-full object-cover`,loading:`lazy`,referrerPolicy:`no-referrer`}):(0,$.jsx)(Z,{name:`github-fill`,className:`h-3.5 w-3.5 text-foreground`}),t[4]=a,t[5]=o,t[6]=l,t[7]=r):r=t[7];let u;t[8]!==s||t[9]!==n||t[10]!==r?(u=(0,$.jsx)(Oi,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,className:e,title:n,disabled:s,children:r})}),t[8]=s,t[9]=n,t[10]=r,t[11]=u):u=t[11];let d;t[12]===l?d=t[13]:(d=l(`header.github.accountsTitle`),t[12]=l,t[13]=d);let f;t[14]===d?f=t[15]:(f=(0,$.jsx)(Ci,{className:`typography-ui-header font-semibold text-foreground`,children:d}),t[14]=d,t[15]=f);let p;t[16]===Symbol.for(`react.memo_cache_sentinel`)?(p=(0,$.jsx)(li,{}),t[16]=p):p=t[16];let m;if(t[17]!==i||t[18]!==c||t[19]!==s||t[20]!==l){let e;t[22]!==c||t[23]!==s||t[24]!==l?(e=e=>{let t=e.user,n=!!e.current,r=e.source===`gh-cli`?l(`header.github.accountSource.cli`):l(`header.github.accountSource.oauth`);return(0,$.jsxs)(ki,{className:`gap-2`,disabled:s,onSelect:()=>{n||c(e.id)},children:[t?.avatarUrl?(0,$.jsx)(`img`,{src:t.avatarUrl,alt:t.login?l(`header.github.avatarWithLogin`,{login:t.login}):l(`header.github.avatar`),className:`h-6 w-6 rounded-full border border-border/60 bg-muted object-cover`,loading:`lazy`,referrerPolicy:`no-referrer`}):(0,$.jsx)(`div`,{className:`flex h-6 w-6 items-center justify-center rounded-full border border-border/60 bg-muted`,children:(0,$.jsx)(Z,{name:`github-fill`,className:`h-3 w-3 text-muted-foreground`})}),(0,$.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,$.jsx)(`span`,{className:`truncate typography-ui-label text-foreground`,children:t?.name?.trim()||t?.login||`GitHub`}),t?.login?(0,$.jsxs)(`span`,{className:`truncate typography-micro text-muted-foreground`,children:[(0,$.jsx)(`span`,{className:`font-mono`,children:t.login}),(0,$.jsx)(`span`,{className:`mx-1 opacity-50`,children:`·`}),(0,$.jsx)(`span`,{children:r})]}):null]}),n?(0,$.jsx)(Z,{name:`check`,className:`h-4 w-4 text-primary`}):null]},e.id)},t[22]=c,t[23]=s,t[24]=l,t[25]=e):e=t[25],m=i.map(e),t[17]=i,t[18]=c,t[19]=s,t[20]=l,t[21]=m}else m=t[21];let h;t[26]!==f||t[27]!==m?(h=(0,$.jsxs)(Di,{align:`end`,className:`w-64`,children:[f,p,m]}),t[26]=f,t[27]=m,t[28]=h):h=t[28];let g;return t[29]!==u||t[30]!==h?(g=(0,$.jsxs)(Si,{children:[u,h]}),t[29]=u,t[30]=h,t[31]=g):g=t[31],g}let u;t[32]!==o||t[33]!==l?(u=o?l(`header.github.connectedWithLogin`,{login:o}):l(`header.github.connected`),t[32]=o,t[33]=l,t[34]=u):u=t[34];let d;t[35]!==a||t[36]!==o||t[37]!==l?(d=a?(0,$.jsx)(`img`,{src:a,alt:o?l(`header.github.avatarWithLogin`,{login:o}):l(`header.github.avatar`),className:`h-full w-full object-cover`,loading:`lazy`,referrerPolicy:`no-referrer`}):(0,$.jsx)(Z,{name:`github-fill`,className:`h-3.5 w-3.5 text-foreground`}),t[35]=a,t[36]=o,t[37]=l,t[38]=d):d=t[38];let f;return t[39]!==u||t[40]!==d?(f=(0,$.jsx)(`div`,{className:`app-region-no-drag flex h-6 w-6 items-center justify-center overflow-hidden rounded-full border border-border/60 bg-muted/80`,title:u,children:d}),t[39]=u,t[40]=d,t[41]=f):f=t[41],f}),uc=Q.memo(function(e){let t=(0,Ts.c)(61),{isDesktopApp:n,currentInstanceIsLocal:r,isDesktopServicesOpen:i,setIsDesktopServicesOpen:a,refreshCurrentInstanceLabel:o,desktopServicesTab:s,setDesktopServicesTab:c,quotaResultsLength:l,fetchAllQuotas:u,servicesTabItems:d,quotaLastUpdated:f,quotaDisplayMode:p,quotaDisplayTabItems:m,handleDisplayModeChange:h,handleUsageRefresh:g,isQuotaLoading:_,isUsageRefreshSpinning:v,hasRateLimits:y,rateLimitGroups:b,expandedFamilies:x,toggleFamilyExpanded:S,showDevShutdown:C,isDevShutdownInFlight:w,onDevShutdown:T,remoteUpdateInfo:E,remoteUpdateChecking:D,remoteUpdateError:O,onOpenRemoteUpdate:k,showPredValues:A,timeFormatPreference:j,anchorRef:M}=e,{t:N}=Fe(),P;t[0]!==s||t[1]!==u||t[2]!==l||t[3]!==o||t[4]!==a?(P=e=>{a(e),e&&(o(),s===`usage`&&l===0&&u())},t[0]=s,t[1]=u,t[2]=l,t[3]=o,t[4]=a,t[5]=P):P=t[5];let F;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(F=(0,$.jsx)(Oi,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,"aria-hidden":!0,tabIndex:-1,className:`pointer-events-none absolute h-px w-px overflow-hidden opacity-0`})}),t[6]=F):F=t[6];let I;t[7]!==u||t[8]!==l||t[9]!==c?(I=e=>{let t=e;c(t),t===`usage`&&l===0&&u()},t[7]=u,t[8]=l,t[9]=c,t[10]=I):I=t[10];let L;t[11]!==s||t[12]!==d||t[13]!==I?(L=(0,$.jsx)(`div`,{className:`sticky top-0 z-20 px-2 pt-1.5 pb-px`,children:(0,$.jsx)(`div`,{className:`h-9`,children:(0,$.jsx)(Oa,{items:d,activeId:s,onSelect:I,layoutMode:`fit`,variant:`active-pill`,activePillInsetClassName:`gap-0.5 px-px py-0`,activePillButtonClassName:`h-8`,className:`h-full`})})}),t[11]=s,t[12]=d,t[13]=I,t[14]=L):L=t[14];let R;t[15]!==r||t[16]!==s||t[17]!==n||t[18]!==i||t[19]!==k||t[20]!==D||t[21]!==O||t[22]!==E||t[23]!==a||t[24]!==N?(R=n&&s===`instance`?(0,$.jsxs)(`div`,{children:[r?null:(0,$.jsx)(`div`,{className:`border-b border-[var(--interactive-border)] px-4 py-2.5`,children:(0,$.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,$.jsxs)(`div`,{className:`min-w-0`,children:[(0,$.jsx)(`div`,{className:`typography-ui-label font-medium text-foreground`,children:N(`header.services.remoteUpdate.title`)}),(0,$.jsx)(`div`,{className:`typography-micro text-muted-foreground`,children:E?.available?N(`header.services.remoteUpdate.available`,{version:E.version||``}):D?N(`header.services.remoteUpdate.checking`):O||N(`header.services.remoteUpdate.upToDate`)})]}),E?.available?(0,$.jsx)(`button`,{type:`button`,className:`shrink-0 rounded-md bg-[var(--primary-base)] px-3 py-1.5 typography-ui-label font-medium text-[var(--primary-foreground)] hover:opacity-90`,onClick:k,children:N(`header.services.remoteUpdate.actions.open`)}):null]})}),(0,$.jsx)(Zn,{embedded:!0,open:i&&s===`instance`,onOpenChange:gc,onHostSwitched:()=>a(!1)})]}):null,t[15]=r,t[16]=s,t[17]=n,t[18]=i,t[19]=k,t[20]=D,t[21]=O,t[22]=E,t[23]=a,t[24]=N,t[25]=R):R=t[25];let z;t[26]!==s||t[27]!==i?(z=s===`mcp`?(0,$.jsx)(Fo,{active:i&&s===`mcp`}):null,t[26]=s,t[27]=i,t[28]=z):z=t[28];let B;t[29]!==s||t[30]!==x||t[31]!==h||t[32]!==g||t[33]!==y||t[34]!==_||t[35]!==v||t[36]!==p||t[37]!==m||t[38]!==f||t[39]!==b||t[40]!==A||t[41]!==N||t[42]!==j||t[43]!==S?(B=s===`usage`?(0,$.jsxs)(`div`,{className:`overflow-x-hidden`,children:[(0,$.jsxs)(`div`,{className:`flex items-center justify-between gap-3 border-b border-[var(--interactive-border)] px-4 py-2.5`,children:[(0,$.jsxs)(`div`,{className:`flex min-w-0 items-baseline gap-2`,children:[(0,$.jsx)(`span`,{className:`typography-ui-header font-semibold text-foreground`,children:N(`header.services.rateLimits`)}),(0,$.jsx)(`span`,{className:`truncate typography-micro text-muted-foreground`,children:fc(f,j)})]}),(0,$.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,$.jsx)(`div`,{className:`h-7 w-[10.5rem]`,children:(0,$.jsx)(Oa,{items:m,activeId:p,onSelect:e=>void h(e),layoutMode:`fit`,variant:`active-pill`,activePillInsetClassName:`gap-0.5 px-px py-0`,className:`h-full`})}),(0,$.jsx)(`button`,{type:`button`,className:X(`inline-flex h-7 w-7 items-center justify-center rounded-md text-muted-foreground transition-colors`,`hover:text-foreground hover:bg-interactive-hover`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary`),onClick:g,disabled:_||v,"aria-label":N(`header.services.refreshRateLimitsAria`),children:(0,$.jsx)(Z,{name:`refresh`,className:X(`h-4 w-4`,v&&`animate-spin`)})})]})]}),y?null:(0,$.jsx)(`div`,{className:`px-4 py-5 text-center`,children:(0,$.jsx)(`span`,{className:`typography-ui-label text-muted-foreground`,children:N(`header.services.noRateLimits`)})}),(0,$.jsx)(`div`,{className:`space-y-2 px-3 py-2.5`,children:b.map(e=>{let t=x[e.providerId]??[];return(0,$.jsxs)(`div`,{className:`min-w-0 rounded-xl bg-[var(--surface-muted)] p-3`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2 pb-2`,children:[(0,$.jsx)(Pr,{providerId:e.providerId,className:`h-4 w-4`}),(0,$.jsx)(`span`,{className:`typography-ui-label font-medium text-foreground`,children:e.providerName})]}),e.entries.length===0&&(!e.modelFamilies||e.modelFamilies.length===0)?(0,$.jsx)(`div`,{children:(0,$.jsx)(`span`,{className:`typography-ui-label text-muted-foreground`,children:e.error??N(`header.services.noRateLimitsReported`)})}):(0,$.jsxs)(`div`,{className:`space-y-3`,children:[e.entries.map(t=>{let[n,r]=t,i=p===`remaining`?r.remainingPercent:r.usedPercent,a=ni(r.usedPercent,r.resetAt,r.windowSeconds,n),o=a?.dailyAllocationPercent==null?null:p===`remaining`?100-ii(a.elapsedRatio):ii(a.elapsedRatio),s=ri(r.valueLabel,i),c=ai(r.resetAt,r.resetAfterFormatted??r.resetAtFormatted,j);return(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center justify-between gap-3`,children:[(0,$.jsxs)(`div`,{className:`min-w-0 flex items-center gap-2`,children:[(0,$.jsx)(`span`,{className:`truncate typography-ui-label text-foreground`,children:oi(n)}),c?(0,$.jsx)(`span`,{className:`truncate typography-micro text-muted-foreground`,children:c}):null]}),(0,$.jsx)(`span`,{className:`typography-ui-label tabular-nums text-foreground`,children:s===`-`?``:s})]}),(0,$.jsx)(qa,{percent:i,tonePercent:r.usedPercent,className:`h-1.5`,expectedMarkerPercent:o}),a&&A?(0,$.jsx)(Ya,{paceInfo:a,compact:!0}):null]},`${e.providerId}-${n}`)}),e.modelFamilies&&e.modelFamilies.length>0?(0,$.jsx)(`div`,{className:`space-y-0.5`,children:e.modelFamilies.map(n=>{let r=n.familyId??`other`,i=t.includes(r);return(0,$.jsxs)(fs,{open:i,onOpenChange:()=>S(e.providerId,r),children:[(0,$.jsxs)(ds,{className:`flex w-full items-center justify-between rounded-md px-1 py-1.5 text-left hover:bg-[var(--interactive-hover)]/50 transition-colors`,children:[(0,$.jsx)(`span`,{className:`typography-ui-label font-medium text-foreground`,children:n.familyLabel}),i?(0,$.jsx)(Z,{name:`arrow-down-s`,className:`h-4 w-4 text-muted-foreground`}):(0,$.jsx)(Z,{name:`arrow-right-s`,className:`h-4 w-4 text-muted-foreground`})]}),(0,$.jsx)(us,{children:(0,$.jsx)(`div`,{className:`space-y-2.5 pb-1 pl-1 pt-1`,children:n.models.map(t=>{let[n,r]=t,i=p===`remaining`?r.remainingPercent:r.usedPercent,a=ni(r.usedPercent,r.resetAt,r.windowSeconds),o=a?.dailyAllocationPercent==null?null:p===`remaining`?100-ii(a.elapsedRatio):ii(a.elapsedRatio),s=ri(r.valueLabel,i);return(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center justify-between gap-3`,children:[(0,$.jsx)(`span`,{className:`truncate typography-micro text-muted-foreground`,children:Wa(n)}),(0,$.jsx)(`span`,{className:`typography-ui-label tabular-nums text-foreground`,children:s===`-`?``:s})]}),(0,$.jsx)(qa,{percent:i,tonePercent:r.usedPercent,className:`h-1.5`,expectedMarkerPercent:o}),a&&A?(0,$.jsx)(Ya,{paceInfo:a,compact:!0}):null]},`${e.providerId}-${n}`)})})})]},r)})}):null]})]},e.providerId)})})]}):null,t[29]=s,t[30]=x,t[31]=h,t[32]=g,t[33]=y,t[34]=_,t[35]=v,t[36]=p,t[37]=m,t[38]=f,t[39]=b,t[40]=A,t[41]=N,t[42]=j,t[43]=S,t[44]=B):B=t[44];let V;t[45]!==w||t[46]!==T||t[47]!==C||t[48]!==N?(V=C?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`div`,{className:`mx-4 my-2 border-t border-[var(--interactive-border)]`}),(0,$.jsx)(`div`,{className:`px-2 pb-2`,children:(0,$.jsx)(ki,{disabled:w,onSelect:()=>{T()},children:N(`header.services.shutdownDev`)})})]}):null,t[45]=w,t[46]=T,t[47]=C,t[48]=N,t[49]=V):V=t[49];let H;t[50]!==M||t[51]!==L||t[52]!==R||t[53]!==z||t[54]!==B||t[55]!==V?(H=(0,$.jsxs)(Di,{anchor:M,align:`start`,sideOffset:6,collisionPadding:12,className:`w-[min(27rem,calc(100vw-2rem))] max-h-[75vh] overflow-y-auto bg-[var(--surface-elevated)] p-0`,children:[L,R,z,B,V]}),t[50]=M,t[51]=L,t[52]=R,t[53]=z,t[54]=B,t[55]=V,t[56]=H):H=t[56];let U;return t[57]!==i||t[58]!==P||t[59]!==H?(U=(0,$.jsxs)(Si,{open:i,onOpenChange:P,children:[F,H]}),t[57]=i,t[58]=P,t[59]=H,t[60]=U):U=t[60],U}),dc=(e,t)=>e===t?!0:!e||!t?!1:e.totalTokens===t.totalTokens&&e.percentage===t.percentage&&e.contextLimit===t.contextLimit&&(e.outputLimit??0)===(t.outputLimit??0)&&(e.normalizedOutput??0)===(t.normalizedOutput??0)&&e.thresholdLimit===t.thresholdLimit&&(e.lastMessageId??``)===(t.lastMessageId??``),fc=(e,t)=>{if(!e)return`-`;try{return Ei(e,t,{fallback:`-`})}catch{return`-`}},pc=e=>{if(!e)return``;let t=e.replace(/\\/g,`/`),n=t.startsWith(`//`),r=t.replace(/\/+$/g,``);return r=r.replace(/\/+/g,`/`),n&&!r.startsWith(`//`)&&(r=`/${r}`),r===``?t.startsWith(`/`)?`/`:``:r},mc=e=>!e?.isOpen||!Array.isArray(e.tabs)||e.tabs.length===0?null:(e.tabs.find(t=>t.id===e.activeTabId)??e.tabs[e.tabs.length-1])?.mode??null,hc=({onToggleLeftDrawer:e,onToggleRightDrawer:t,leftDrawerOpen:i,rightDrawerOpen:a})=>{let{t:o}=Fe(),s=u(e=>e.setSessionSwitcherOpen),c=u(e=>e.toggleSidebar),l=u(e=>e.isSidebarOpen),d=u(e=>e.toggleBottomTerminal),f=u(e=>e.toggleRightSidebar),p=u(e=>e.openContextOverview),h=u(e=>e.openContextBrowser),g=u(e=>e.openContextPanelTab),_=u(e=>e.closeContextPanel),v=u(e=>e.contextPanelByDirectory),y=u(e=>e.activeMainTab),S=u(e=>e.setActiveMainTab),C=u(e=>e.shortcutOverrides),w=u(e=>e.timeFormatPreference),D=Zt(e=>e.getCurrentModel),O=Xi(),[k,A]=Q.useState(!1),j=Ft(e=>e.getContextUsage),M=Ft(e=>!!e.newSessionDraft?.open),P=Ft(e=>e.currentSessionId),F=Ht(P??``),I=ut(P),z=vt(e=>e.activeProjectId?e.projects.find(t=>t.id===e.activeProjectId)??null:null),B=Q.useMemo(()=>{if(!z)return null;let e=z.path.split(/[\\/]/).filter(Boolean);return e[e.length-1]??null},[z]),H=Qa(e=>e.results),U=Qa(e=>e.fetchAllQuotas),te=Qa(e=>e.isLoading),ne=Qa(e=>e.lastUpdated),re=Qa(e=>e.displayMode),ie=Qa(e=>e.showPredValues),ae=Qa(e=>e.dropdownProviderIds),oe=Qa(e=>e.loadSettings),se=Qa(e=>e.setDisplayMode),{isMobile:q}=Ai(),ce=wi().data??null,le=Xa(e=>e.setStatus),ue=Q.useRef(null),[de,fe]=Q.useState(()=>typeof window>`u`?!1:T()),pe=Q.useMemo(()=>b(),[]),me=de&&x()===`win32`,he=ji(),[ge,_e]=Q.useState(!1),ve=Q.useMemo(()=>typeof navigator>`u`?!1:/Macintosh|Mac OS X/.test(navigator.userAgent||``),[]),{usesFramelessChrome:ye,side:be}=ao(),xe=Q.useMemo(()=>{if(typeof window>`u`)return null;let e=window.__OPENCHAMBER_MACOS_MAJOR__;if(typeof e==`number`&&Number.isFinite(e)&&e>0)return e;if(typeof navigator>`u`)return null;let t=(navigator.userAgent||``).match(/Mac OS X (\d+)[._](\d+)/);if(!t)return null;let n=Number.parseInt(t[1],10),r=Number.parseInt(t[2],10);return Number.isNaN(n)?null:n===10?r:n},[]);(0,Q.useEffect)(()=>{typeof window>`u`||fe(T())},[]);let Se=D(),Ce=Se&&typeof Se.limit==`object`&&Se.limit!==null?Se.limit:null,we=j(Ce&&typeof Ce.context==`number`?Ce.context:0,Ce&&typeof Ce.output==`number`?Ce.output:0),[Te,Ee]=Q.useState(null),De=!P||F;(0,Q.useEffect)(()=>{if(!P){Ee(e=>e===null?e:null);return}if(we&&we.totalTokens>0){Ee(e=>dc(e,we)?e:we);return}De&&Ee(e=>e===null?e:null)},[we,P,De]);let ke=u(e=>e.isSessionSwitcherOpen),Ae=ce?.connected?ce.user?.avatarUrl??null:null,je=ce?.connected?ce.user?.login??null:null,Me=ce?.accounts??[],[Ne,Pe]=Q.useState(!1),[Ie,Le]=Q.useState(!1),[Re,ze]=Q.useState(!1),[Be,Ve]=Q.useState(!1),[He,Ue]=Q.useState(`Local`),[We,Ge]=Q.useState(!0),[Ke,qe]=Q.useState(!1),[Je,Ye]=Q.useState(null),[Xe,J]=Q.useState(!1),[Ze,Qe]=Q.useState(null),[$e,et]=Q.useState(de?`instance`:`usage`),[tt,nt]=Q.useState(`usage`);(0,Q.useEffect)(()=>{!de&&$e===`instance`&&et(`usage`)},[$e,de]);let rt=Q.useMemo(()=>m(),[]),it=!rt&&y===`chat`&&!!Te&&Te.totalTokens>0,at=Te&&Te.contextLimit>0?Math.min(999,Te.totalTokens/Te.contextLimit*100):0,ot=Q.useCallback(async()=>{if(!(typeof window>`u`||!de))try{if(E()){Ue(`Local`),Ge(!0);return}Ge(!1);let e=await K(),t=window.__OPENCHAMBER_LOCAL_ORIGIN__||window.location.origin,n=r();if(n&&W(n,t)){Ue(`Local`),Ge(!0);return}let i=e.hosts.find(e=>n?W(n,G(e)):!1);if(i?.label?.trim()){Ue(ee(i.label.trim()));return}Ue(`Instance`)}catch{Ue(`Local`),Ge(!0)}},[de]);(0,Q.useEffect)(()=>{ot()},[ot]);let st=Q.useCallback(async()=>{if(We){Ye(null),Qe(null);return}J(!0),Qe(null);try{let e=new URLSearchParams({appType:`web`,instanceMode:`remote`}),t=await N(`/api/openchamber/update-check?${e.toString()}`,{method:`GET`,headers:{Accept:`application/json`}});if(!t.ok)throw Error(`Server responded with ${t.status}`);let n=await t.json();Ye({available:n.available??!1,version:n.version,currentVersion:n.currentVersion??`unknown`,body:n.body,nextSuggestedCheckInSec:typeof n.nextSuggestedCheckInSec==`number`?n.nextSuggestedCheckInSec:void 0,packageManager:n.packageManager,updateCommand:n.updateCommand})}catch(e){Ye(null),Qe(e instanceof Error?e.message:o(`header.services.remoteUpdate.error`))}finally{J(!1)}},[We,o]);Q.useEffect(()=>{Ye(null),Qe(null),qe(!1)},[We,He]),Q.useEffect(()=>{if(!de||We)return;let e=36e5,t=!1,n=null,r=i=>{n=window.setTimeout(()=>{if(t||typeof document<`u`&&document.visibilityState!==`visible`){r(e);return}st().finally(()=>{t||r(e)})},i)};return r(3e3),()=>{t=!0,n!==null&&window.clearTimeout(n)}},[st,We,He,de]);let ct=Q.useCallback(()=>{if(Je?.available){qe(!0);return}st()},[st,Je?.available]);Ua();let lt=Qa(e=>e.selectedModels),dt=Qa(e=>e.expandedFamilies),ft=Qa(e=>e.toggleFamilyExpanded),pt=Q.useMemo(()=>{let e=[];for(let t of Ha){if(!ae.includes(t.id))continue;let n=H.find(e=>e.providerId===t.id),r=n?.usage?.windows??{},i=n?.usage?.models,a=Object.entries(r),s={providerId:t.id,providerName:t.name,entries:a,error:n&&!n.ok&&n.configured?n.error:void 0};if(i&&Object.keys(i).length>0){let e=lt[t.id]??[],n=e.length>0,r=eo(i,t.id),a=to(t.id),c=Pa(a);s.modelFamilies=[];for(let t of c){let a=r.get(t.id)??[];if(a.length===0)continue;let o=n?a.filter(t=>e.includes(t)):a;if(o.length===0)continue;let c=[];for(let e of o){let t=i[e];if(t?.windows){let n=Object.entries(t.windows);n.length>0&&c.push([e,n[0][1]])}}c.length>0&&s.modelFamilies.push({familyId:t.id,familyLabel:t.label,models:c})}let l=r.get(null)??[],u=n?l.filter(t=>e.includes(t)):l;if(u.length>0){let e=[];for(let t of u){let n=i[t];if(n?.windows){let r=Object.entries(n.windows);r.length>0&&e.push([t,r[0][1]])}}e.length>0&&s.modelFamilies.push({familyId:null,familyLabel:o(`header.services.modelFamily.other`),models:e})}}(a.length>0||s.modelFamilies&&s.modelFamilies.length>0||s.error)&&e.push(s)}return e},[ae,H,lt,o]),mt=pt.length>0;Q.useEffect(()=>{oe()},[oe]);let ht=Q.useCallback(async e=>{se(e);try{await R({usageDisplayMode:e})}catch(e){console.warn(`Failed to update usage display mode:`,e)}},[se]),gt=Q.useCallback(()=>{if(Be)return;Ve(!0);let e=new Promise(e=>setTimeout(e,500));Promise.all([U(),e]).finally(()=>{Ve(!1)})},[U,Be]),_t=Ft(e=>P?e.worktreeMetadata.get(P)?.path??``:``),yt=Q.useMemo(()=>pc(_t||``),[_t]),bt=Q.useMemo(()=>pc((typeof I?.directory==`string`?I.directory:``)||``),[I?.directory]),xt=Ft(e=>e.newSessionDraft?.open?pc(e.newSessionDraft.bootstrapPendingDirectory??e.newSessionDraft.directoryOverride??``):``),St=Q.useMemo(()=>yt||bt||xt,[xt,bt,yt]),Ct=Ea(),wt=Q.useMemo(()=>pc(Ct||St||z?.path||``),[z?.path,Ct,St]),Tt=Q.useMemo(()=>{if(!P)return B??`OpenChamber`;let e=I?.title?.trim();return e&&e.length>0?e:`Untitled Session`},[B,I?.title,P]),Et=Q.useMemo(()=>pc(St||z?.path||``),[z?.path,St]),Dt=Q.useMemo(()=>z?{id:z.id,path:z.path}:null,[z]),Ot=Q.useRef(null);Q.useEffect(()=>{!Dt||!Et||(Ot.current={projectRef:Dt,directory:Et})},[Et,Dt]);let kt=Q.useMemo(()=>Dt&&Et?{projectRef:Dt,directory:Et}:Ot.current,[Et,Dt]),Y=Q.useCallback(async e=>{if(!(!e||Ne)){Pe(!0);try{let t=O.github?await O.github.authActivate(e):await(async()=>{let t=await N(`/api/github/auth/activate`,{method:`POST`,headers:{"Content-Type":`application/json`,Accept:`application/json`},body:JSON.stringify({accountId:e})}),n=await t.json().catch(()=>null);if(!t.ok||!n)throw Error(n?.error||t.statusText);return n})();le(t)}catch(e){console.error(`Failed to switch GitHub account:`,e)}finally{Pe(!1)}}},[Ne,O.github,le]),At=Q.useCallback(()=>{if(typeof document>`u`)return;let e=document.activeElement;if(!e)return;let t=e.tagName;(t===`INPUT`||t===`TEXTAREA`||t===`SELECT`||e.isContentEditable)&&e.blur()},[]),jt=Q.useCallback(()=>{if(q){At(),s(!ke);return}c()},[At,q,ke,s,c]),Mt=Q.useCallback(()=>{L(`desktop_open_draft_mini_chat_window`,{directory:pc(St||z?.path||``),projectId:z?.id??null,apiBaseUrl:r(),clientToken:n()}).catch(e=>{console.warn(`[header] failed to open draft mini chat window`,e)})},[z?.id,z?.path,St]),Nt=Q.useCallback(()=>{if(M){Mt();return}P&&L(`desktop_open_session_mini_chat_window`,{sessionId:P,directory:pc(St||z?.path||``),apiBaseUrl:r(),clientToken:n()}).catch(e=>{console.warn(`[header] failed to open session mini chat window`,e)})},[z?.path,P,Mt,M,St]),Pt=Q.useCallback(()=>{let e=wt;if(!e)return;let t=v[e];if(mc(t)===`context`){_(e);return}p(e)},[_,wt,v,p]),It=Q.useMemo(()=>{let e=wt;if(!e)return!1;let t=v[e];return mc(t)===`context`},[wt,v]),Lt=Q.useCallback(()=>{let e=wt;if(!e)return;let t=v[e];if(mc(t)===`diff`){_(e);return}g(e,{mode:`diff`,stagedDiff:!1})},[_,wt,v,g]),Rt=Q.useCallback(()=>{let e=wt;if(!e)return;let t=v[e];if(mc(t)===`browser`){_(e);return}h(e)},[_,wt,v,h]),zt=Q.useMemo(()=>{let e=wt;if(!e)return!1;let t=v[e];return mc(t)===`browser`},[wt,v]),Bt=oc,Vt=sc,Ut=Q.useMemo(()=>Ie?`services`:i?`sessions`:a?`git`:y,[y,Ie,i,a]),Wt=Q.useCallback(()=>{Le(!1),i&&e&&e(),a&&t&&t(),!e&&ke&&s(!1)},[ke,i,e,t,a,s]),Gt=Q.useCallback(()=>{i||Le(!1),e?.()},[i,e]),Kt=Q.useCallback(()=>{a||Le(!1),t?.()},[t,a]),qt=Q.useMemo(()=>de&&ve&&!ge?`5.5rem`:he?`max(calc(0.75rem + var(--oc-wco-left-inset, 0px)), 5.5rem)`:(!de||ye)&&!rt?`calc(0.75rem + var(--oc-wco-left-inset, 0px))`:`0.75rem`,[de,ge,ve,he,rt,ye]);(0,Q.useEffect)(()=>{typeof document>`u`||document.documentElement.style.setProperty(`--oc-titlebar-left-inset`,qt)},[qt]);let Jt=l?`0.75rem`:`var(--oc-titlebar-left-inset, 0.75rem)`,Yt=l?`0px`:`calc(var(--oc-titlebar-controls-width, 5.5rem) + 0.5rem)`;(0,Q.useEffect)(()=>{if(!de||!ve){_e(!1);return}let e=!1,t=async()=>{try{let t=await L(`desktop_is_window_fullscreen`);e||_e(t===!0)}catch{e||_e(!1)}},n=()=>{t()};return t(),window.addEventListener(`openchamber:window-resized`,n),()=>{e=!0,window.removeEventListener(`openchamber:window-resized`,n)}},[de,ve]);let Xt=Q.useMemo(()=>!de||!ve||xe===null?``:xe>=26?`h-12`:xe<=15?`h-14`:``,[de,ve,xe]),Qt=Q.useMemo(()=>{if(!(de&&!ye||rt))return{paddingRight:`calc(0.75rem + var(--oc-wco-right-inset, 0px))`,minHeight:`max(3rem, var(--oc-wco-titlebar-height, 0px))`,height:`max(3rem, var(--oc-wco-titlebar-height, 0px))`}},[de,rt,ye]),$t=Q.useCallback(()=>{if(typeof document>`u`)return;let e=ue.current?.getBoundingClientRect().height;e&&document.documentElement.style.setProperty(`--oc-header-height`,`${e}px`)},[]);(0,Q.useEffect)(()=>{if(typeof window>`u`)return;$t();let e=ue.current;if(!e||typeof ResizeObserver>`u`)return()=>{};let t=0,n=()=>{t||=requestAnimationFrame(()=>{t=0,$t()})},r=new ResizeObserver(n);return r.observe(e),window.addEventListener(`resize`,n),window.addEventListener(`orientationchange`,n),()=>{t&&cancelAnimationFrame(t),r.disconnect(),window.removeEventListener(`resize`,n),window.removeEventListener(`orientationchange`,n)}},[$t]),(0,Q.useEffect)(()=>{$t()},[$t,q,Xt]);let en=Q.useCallback(async e=>{let t=e.target;t.closest(`.app-region-no-drag`)||t.closest(`button, a, input, select, textarea`)||e.button===0&&de&&await V()},[de]),tn=Q.useMemo(()=>{if(q){let e=[{id:`chat`,label:o(`layout.mainTab.chat`),icon:`chat-thread`}];return e.push({id:`diff`,label:o(`layout.mainTab.diff`),icon:`diff`},{id:`files`,label:o(`layout.mainTab.files`),icon:`folder-6`},{id:`terminal`,label:o(`layout.mainTab.terminal`),icon:`terminal-box`},{id:`diagram`,label:o(`layout.mainTab.diagram`),icon:`file`}),e}return[]},[q,o]),nn=Q.useCallback(e=>_i(yi(e,C)),[C]);(0,Q.useEffect)(()=>{!q&&(y===`git`||y===`terminal`||y===`diff`||y===`files`)&&S(`chat`)},[y,q,S]);let rn=Q.useMemo(()=>{let e=[];return de&&e.push({value:`instance`,label:o(`layout.services.instance`),icon:(0,$.jsx)(Z,{name:`server`,className:`h-3.5 w-3.5`})}),e.push({value:`usage`,label:o(`layout.services.usage`),icon:(0,$.jsx)(Z,{name:`timer`,className:`h-3.5 w-3.5`})},{value:`mcp`,label:`MCP`,icon:(0,$.jsx)(Ra,{className:`h-3.5 w-3.5`})}),e},[de,o]),an=Q.useMemo(()=>rn.map(e=>({id:e.value,label:e.label,icon:e.icon})),[rn]),on=Q.useMemo(()=>{if(typeof window>`u`||de||rt)return!1;let e=window.location.hostname;return e===`localhost`||e===`127.0.0.1`||e===`::1`},[de,rt]),sn=Q.useCallback(async()=>{if(k)return;A(!0),ze(!1);let e=[],t=!1;try{try{for(let[,t]of oo.getState().sessions.entries())for(let n of t.tabs)n.previewUrl&&e.push(n.previewUrl)}catch{}try{await Oe({})}catch{}try{t=(await N(`/api/system/dev-shutdown`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({previewUrls:e})})).ok?!0:(await N(`/api/system/shutdown`,{method:`POST`})).ok}catch{}}finally{t||A(!1)}},[k,ze]),cn=Q.useMemo(()=>[{value:`usage`,label:o(`header.services.used`)},{value:`remaining`,label:o(`header.services.remaining`)}],[o]),ln=Q.useMemo(()=>cn.map(e=>({id:e.value,label:e.label})),[cn]),un=Q.useMemo(()=>[{id:`usage`,label:o(`layout.services.usage`),icon:(0,$.jsx)(Z,{name:`timer`,className:`h-3.5 w-3.5`})},{id:`mcp`,label:`MCP`,icon:(0,$.jsx)(Ra,{className:`h-3.5 w-3.5`})}],[o]);(0,Q.useEffect)(()=>{let e=e=>{if(vn(e)&&!e.shiftKey&&!e.altKey){let t=parseInt(e.key,10);t>=1&&t<=tn.length&&(e.preventDefault(),q&&(At(),Wt()),S(tn[t-1].id))}};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[At,Wt,q,S,tn]);let dn=Q.useCallback(e=>{et(e),ze(!0),ot(),e===`usage`&&H.length===0&&U()},[U,H.length,ot]);(0,Q.useEffect)(()=>{let e=e=>{let t=yi(`toggle_services_menu`,C);if(ci(e,t)){e.preventDefault();let t=ac({isOpen:Re,activeTab:$e,targetTab:de?`instance`:`usage`});t.open?dn(t.tab):ze(!1);return}let n=yi(`cycle_services_tab`,C);if(ci(e,n)){e.preventDefault();let t=rn.map(e=>e.value);if(t.length===0)return;let n=t.indexOf($e),r=t[n===-1?0:(n+1)%t.length];et(r),ze(!0),ot(),r===`usage`&&H.length===0&&U();return}let r=yi(`open_usage`,C);if(ci(e,r)){e.preventDefault();let t=ac({isOpen:Re,activeTab:$e,targetTab:`usage`});t.open?dn(t.tab):ze(!1);return}};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[C,de,Re,$e,rn,H.length,U,ot,dn]);let fn=e=>{let t=y===e.id,n=e.icon===`diff`,r=n?null:e.icon,i=e.id===`chat`,a=e=>n?(0,$.jsx)(Es,{size:e}):r?(0,$.jsx)(Z,{name:r,className:`h-${e/4} w-${e/4}`}):null,o=(0,$.jsxs)(`button`,{type:`button`,onClick:()=>S(e.id),className:X(`relative flex h-8 items-center gap-2 px-3 rounded-lg typography-ui-label font-medium transition-colors`,t?`app-region-no-drag bg-interactive-selection text-interactive-selection-foreground shadow-none`:`app-region-no-drag text-muted-foreground hover:bg-interactive-hover/50 hover:text-foreground`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary`,i&&!q&&`min-w-[100px] justify-center`),"aria-label":e.label,"aria-selected":t,role:`tab`,children:[q?a(20):(0,$.jsxs)($.Fragment,{children:[a(16),(0,$.jsx)(`span`,{className:`header-tab-label`,children:e.label})]}),e.badge!==void 0&&e.badge>0&&(0,$.jsx)(`span`,{className:`header-tab-badge typography-micro text-status-info font-medium`,children:e.badge})]});return(0,$.jsx)(Q.Fragment,{children:o},e.id)},pn=pe&&(M||!!P),mn=Q.useCallback(e=>{window.setTimeout(e,0)},[]),hn=Q.useCallback(e=>{dn(e)},[dn]),gn=Q.useRef(null),_n=(0,$.jsxs)(`div`,{className:`relative flex shrink-0 items-center`,children:[(0,$.jsx)(`div`,{ref:gn,className:`inline-flex h-8 w-8 shrink-0 items-center justify-center`,children:(0,$.jsxs)(Si,{children:[(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(Oi,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,"aria-label":o(`header.actions.sessionMenuAria`),className:X(Bt,`text-muted-foreground`),children:(0,$.jsx)(Z,{name:`more-2`,className:`h-[18px] w-[18px]`})})})}),(0,$.jsx)(Zr,{children:(0,$.jsx)(`p`,{children:o(`header.actions.sessionMenu`)})})]}),(0,$.jsxs)(Di,{align:`start`,className:`min-w-[14rem]`,children:[rt?null:(0,$.jsxs)(ki,{className:`flex items-center gap-2`,onClick:()=>mn(Lt),children:[(0,$.jsx)(Z,{name:`layout-column`,className:`h-3.5 w-3.5`}),(0,$.jsx)(`span`,{className:`flex-1`,children:o(`header.actions.toggleChangesPanel`)})]}),pn?(0,$.jsxs)(ki,{className:`flex items-center gap-2`,onClick:()=>mn(Nt),children:[(0,$.jsx)(Z,{name:`picture-in-picture-2`,className:`h-3.5 w-3.5`}),(0,$.jsx)(`span`,{className:`flex-1`,children:o(M?`header.actions.newMiniChat`:`header.actions.openSessionMiniChat`)})]}):null,de?(0,$.jsxs)(ki,{className:`flex items-center gap-2`,onClick:()=>mn(()=>hn(`instance`)),children:[(0,$.jsx)(Z,{name:`stack`,className:`h-3.5 w-3.5`}),(0,$.jsx)(`span`,{className:`flex-1 truncate`,children:o(`header.actions.sessionMenu.servicesWithInstance`,{current:He})}),(0,$.jsx)(`span`,{className:`typography-micro text-muted-foreground`,children:nn(`toggle_services_menu`)})]}):null,(0,$.jsxs)(ki,{className:`flex items-center gap-2`,onClick:()=>mn(()=>hn(`usage`)),children:[(0,$.jsx)(Z,{name:`timer`,className:`h-3.5 w-3.5`}),(0,$.jsx)(`span`,{className:`flex-1`,children:o(`header.actions.sessionMenu.viewUsage`)}),(0,$.jsx)(`span`,{className:`typography-micro text-muted-foreground`,children:nn(`open_usage`)})]}),(0,$.jsx)(li,{}),(0,$.jsxs)(ki,{className:`flex items-center gap-2`,onClick:()=>mn(d),children:[(0,$.jsx)(Z,{name:`terminal-box`,className:`h-3.5 w-3.5`}),(0,$.jsx)(`span`,{className:`flex-1`,children:o(`header.actions.toggleTerminalPanel`)}),(0,$.jsx)(`span`,{className:`typography-micro text-muted-foreground`,children:nn(`toggle_terminal`)})]}),(0,$.jsxs)(ki,{className:`flex items-center gap-2`,onClick:()=>mn(Rt),children:[(0,$.jsx)(Z,{name:`global`,className:`h-3.5 w-3.5`}),(0,$.jsx)(`span`,{className:`flex-1`,children:o(`contextPanel.browser.open`)}),zt?(0,$.jsx)(Z,{name:`check`,className:`h-3.5 w-3.5 text-foreground`}):null]})]})]})}),(0,$.jsx)(uc,{isDesktopApp:de,currentInstanceIsLocal:We,isDesktopServicesOpen:Re,setIsDesktopServicesOpen:ze,refreshCurrentInstanceLabel:ot,desktopServicesTab:$e,setDesktopServicesTab:et,quotaResultsLength:H.length,fetchAllQuotas:U,servicesTabItems:an,quotaLastUpdated:ne,quotaDisplayMode:re,showPredValues:ie,quotaDisplayTabItems:ln,handleDisplayModeChange:ht,handleUsageRefresh:gt,isQuotaLoading:te,isUsageRefreshSpinning:Be,hasRateLimits:mt,rateLimitGroups:pt,expandedFamilies:dt,toggleFamilyExpanded:ft,showDevShutdown:on,isDevShutdownInFlight:k,onDevShutdown:sn,remoteUpdateInfo:Je,remoteUpdateChecking:Xe,remoteUpdateError:Ze,onOpenRemoteUpdate:ct,timeFormatPreference:w,anchorRef:gn})]}),yn=(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(js,{directory:Et,className:`mr-1`}),(0,$.jsx)(cc,{title:o(`header.actions.rightSidebarWithShortcut`,{shortcut:nn(`toggle_right_sidebar`)}),ariaLabel:o(`header.actions.toggleRightSidebarAria`),onClick:f,className:`app-region-no-drag group inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-md text-muted-foreground/75 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary hover:bg-interactive-hover hover:text-foreground transition-colors`,Icon:`layout-left-rounded`,iconClassName:`size-4 -scale-x-100 text-foreground/55 transition-colors group-hover:text-foreground group-focus-visible:text-foreground`}),(0,$.jsx)(lc,{isMobile:q,githubAuthStatus:ce,githubAccounts:Me,githubAvatarUrl:Ae,githubLogin:je,isSwitchingGitHubAccount:Ne,handleGitHubAccountSwitch:Y})]}),bn=()=>(0,$.jsxs)(`div`,{onMouseDown:en,className:X(`app-region-drag relative flex h-12 select-none items-center pr-3`,Xt),style:Qt,role:`tablist`,"aria-label":o(`header.navigation.mainAria`),children:[(0,$.jsx)(`div`,{"aria-hidden":!0,className:`shrink-0 self-stretch transition-[width] duration-200 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none`,style:{width:Jt}}),(0,$.jsx)(`div`,{"aria-hidden":!0,className:`app-region-no-drag shrink-0 self-stretch transition-[width] duration-200 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none`,style:{width:Yt}}),(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center`,children:[(0,$.jsxs)(`div`,{className:`app-region-no-drag mr-3 flex min-w-0 items-center gap-0.5`,children:[(0,$.jsx)(ro,{children:(0,$.jsx)(`button`,{type:`button`,"aria-label":o(`sessions.switcher.openAria`),className:`inline-flex h-8 min-w-0 max-w-full items-center rounded-md px-2.5 text-left transition-colors hover:bg-interactive-hover focus-visible:outline-none focus-visible:bg-interactive-hover focus-visible:ring-2 focus-visible:ring-primary`,children:(0,$.jsx)(`span`,{className:`truncate typography-ui-label text-[14px] font-normal leading-tight text-foreground`,children:M?o(`sessions.switcher.draftTitle`):Tt})})}),_n]}),tn.length>0&&(0,$.jsx)(`div`,{className:`flex items-center gap-1 rounded-lg bg-[var(--surface-muted)]/50 p-1`,children:tn.map(e=>fn(e))}),(0,$.jsx)(`div`,{className:`flex-1`}),(0,$.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1`,children:[it&&Te?(0,$.jsx)(no,{totalTokens:Te.totalTokens,percentage:at,colorPercentage:Te.percentage,contextLimit:Te.contextLimit,outputLimit:Te.outputLimit??0,size:`compact`,appearance:`subtle`,onClick:Pt,pressed:It,className:`mr-2`}):null,yn,(0,$.jsx)(io,{visible:ye&&be===`right`,position:`right`})]})]})]}),xn=()=>(0,$.jsxs)(`div`,{className:`app-region-drag relative flex items-center gap-2 px-3 py-2 select-none`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2 shrink-0`,children:[e?(0,$.jsx)(`button`,{type:`button`,onClick:Gt,className:X(Vt,Ut===`sessions`&&`bg-interactive-selection text-interactive-selection-foreground`),"aria-label":o(i?`header.actions.closeSessionsAria`:`header.actions.openSessionsAria`),children:(0,$.jsx)(Z,{name:`layout-left`,className:`h-5 w-5`})}):ke?(0,$.jsx)(`button`,{type:`button`,onClick:()=>s(!1),className:`app-region-no-drag h-9 w-9 p-2 text-muted-foreground hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary rounded-md active:bg-interactive-active`,"aria-label":o(`header.actions.backAria`),children:(0,$.jsx)(Z,{name:`arrow-left-s`,className:`h-5 w-5`})}):(0,$.jsx)(`button`,{type:`button`,onClick:jt,className:`app-region-no-drag h-9 w-9 p-2 text-muted-foreground hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary rounded-md active:bg-interactive-active`,"aria-label":o(`header.actions.openSessionsAria`),children:(0,$.jsx)(Z,{name:`play-list-add`,className:`h-5 w-5`})}),!e&&ke&&(0,$.jsx)(`span`,{className:`typography-ui-label font-semibold text-foreground`,children:o(`header.sessions.title`)})]}),(!ke||!!e)&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`div`,{className:`app-region-no-drag flex min-w-0 flex-1 items-center`,children:(0,$.jsx)(`div`,{className:`flex min-w-0 flex-1 overflow-x-auto overflow-y-hidden scrollbar-hidden touch-pan-x overscroll-x-contain`,children:(0,$.jsx)(`div`,{className:`flex w-max items-center gap-1 pr-1`,children:(0,$.jsx)(`div`,{className:`flex items-center gap-0.5 rounded-lg bg-[var(--surface-muted)]/50 p-0.5`,role:`tablist`,"aria-label":o(`header.navigation.mainAria`),children:tn.map(e=>{let t=y===e.id,n=e.icon===`diff`,r=n?null:e.icon;return(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsxs)(`button`,{type:`button`,onClick:()=>{q&&(At(),Wt()),S(e.id)},"aria-label":e.label,"aria-selected":t,role:`tab`,className:X(Vt,`relative rounded-lg`,Ut===e.id&&`bg-interactive-selection text-interactive-selection-foreground`),children:[n?(0,$.jsx)(Es,{className:`h-5 w-5`}):r?(0,$.jsx)(Z,{name:r,className:`h-5 w-5`}):null,e.badge!==void 0&&e.badge>0&&(0,$.jsx)(`span`,{className:`absolute -top-1 -right-1 text-[10px] font-semibold text-primary`,children:e.badge}),e.showDot&&(0,$.jsx)(`span`,{className:`absolute top-1.5 right-1.5 h-2 w-2 rounded-full bg-primary`,"aria-label":o(`header.changes.availableAria`)})]})}),(0,$.jsx)(Zr,{children:(0,$.jsx)(`p`,{children:e.label})})]},e.id)})})})})}),(0,$.jsxs)(`div`,{className:`flex items-center gap-1 shrink-0`,children:[kt&&(0,$.jsx)(ic,{projectRef:kt.projectRef,directory:kt.directory,compact:!0,allowMobile:!0,className:`h-9`}),(0,$.jsxs)(Si,{open:Ie,onOpenChange:n=>{n&&(i&&e&&e(),a&&t&&t()),Le(n),n&&H.length===0&&U()},children:[(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(Oi,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,"aria-label":o(`header.services.viewAria`),className:X(Vt,Ut===`services`&&`bg-interactive-selection text-interactive-selection-foreground`),children:(0,$.jsx)(Z,{name:`stack`,className:`h-5 w-5`})})})}),(0,$.jsx)(Zr,{children:(0,$.jsx)(`p`,{children:o(`header.services.title`)})})]}),(0,$.jsx)(Di,{align:`end`,sideOffset:0,positionerClassName:`!fixed !bottom-0 !left-0 !right-0 !top-[var(--oc-header-height,56px)] !transform-none`,className:`h-full w-screen max-h-none rounded-none border-0 p-0 pt-1 overflow-hidden`,children:(0,$.jsxs)(`div`,{className:`flex h-full flex-col bg-[var(--surface-elevated)]`,children:[(0,$.jsx)(`div`,{className:`sticky top-0 z-20 bg-[var(--surface-elevated)] px-2 py-px`,children:(0,$.jsxs)(`div`,{className:`flex items-center justify-between gap-2 px-3 py-0`,children:[(0,$.jsx)(`div`,{className:`h-10 min-w-0 flex-1`,children:(0,$.jsx)(Oa,{items:un,activeId:tt,onSelect:e=>{let t=e;nt(t),t===`usage`&&H.length===0&&U()},layoutMode:`fit`,variant:`active-pill`,activePillInsetClassName:`gap-0.5 px-px py-0`,activePillButtonClassName:`h-8`,className:`h-full`})}),(0,$.jsx)(`button`,{type:`button`,onClick:()=>Le(!1),className:`inline-flex h-8 w-8 items-center justify-center rounded-md text-muted-foreground hover:text-foreground hover:bg-interactive-hover`,"aria-label":o(`header.services.closeAria`),children:(0,$.jsx)(Z,{name:`close`,className:`h-5 w-5`})})]})}),tt===`mcp`&&(0,$.jsx)(Fo,{active:Ie&&tt===`mcp`}),tt===`usage`&&(0,$.jsxs)(`div`,{className:`flex-1 overflow-y-auto overflow-x-hidden pb-[calc(4rem+env(safe-area-inset-bottom))]`,children:[(0,$.jsx)(`div`,{className:`border-b border-[var(--interactive-border)]`,children:(0,$.jsxs)(`div`,{className:`flex items-center justify-between gap-3 px-4 py-3`,children:[(0,$.jsxs)(`div`,{className:`flex flex-col min-w-0 gap-0.5`,children:[(0,$.jsx)(`span`,{className:`typography-ui-header font-semibold text-foreground`,children:o(`header.services.rateLimits`)}),(0,$.jsx)(`span`,{className:`truncate typography-micro text-muted-foreground`,children:fc(ne,w)})]}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2 shrink-0`,children:[(0,$.jsxs)(`div`,{className:`flex items-center h-6`,children:[(0,$.jsx)(`button`,{type:`button`,onClick:()=>ht(`usage`),className:X(`typography-ui-label px-1 pb-0.5 transition-colors`,re===`usage`?`text-foreground border-b-2 border-[var(--primary-base)]`:`text-muted-foreground hover:text-foreground`),children:o(`header.services.used`)}),(0,$.jsx)(`span`,{className:`text-muted-foreground typography-ui-label px-0.5`,children:`·`}),(0,$.jsx)(`button`,{type:`button`,onClick:()=>ht(`remaining`),className:X(`typography-ui-label px-1 pb-0.5 transition-colors`,re===`remaining`?`text-foreground border-b-2 border-[var(--primary-base)]`:`text-muted-foreground hover:text-foreground`),children:o(`header.services.remaining`)})]}),(0,$.jsx)(`button`,{type:`button`,className:X(`inline-flex h-7 w-7 items-center justify-center rounded-md text-muted-foreground transition-colors`,`hover:text-foreground hover:bg-interactive-hover`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary`),onClick:gt,disabled:te||Be,"aria-label":o(`header.services.refreshRateLimitsAria`),children:(0,$.jsx)(Z,{name:`refresh`,className:X(`h-4 w-4`,Be&&`animate-spin`)})})]})]})}),!mt&&(0,$.jsx)(`div`,{className:`px-4 py-6 text-center`,children:(0,$.jsx)(`span`,{className:`typography-ui-label text-muted-foreground`,children:o(`header.services.noRateLimits`)})}),(0,$.jsx)(`div`,{className:`py-1`,children:pt.map((e,t)=>(0,$.jsxs)(Q.Fragment,{children:[t>0?(0,$.jsx)(`div`,{className:`mx-4 my-1 border-t border-[var(--interactive-border)]`}):null,(0,$.jsxs)(`div`,{className:`flex items-center gap-2 px-4 py-2`,children:[(0,$.jsx)(Pr,{providerId:e.providerId,className:`h-4 w-4`}),(0,$.jsx)(`span`,{className:`typography-ui-label font-medium text-foreground`,children:e.providerName})]}),e.entries.length===0&&(!e.modelFamilies||e.modelFamilies.length===0)?(0,$.jsx)(`div`,{className:`px-4 pb-2`,children:(0,$.jsx)(`span`,{className:`typography-ui-label text-muted-foreground`,children:e.error??o(`header.services.noRateLimitsReported`)})}):(0,$.jsxs)(`div`,{className:`space-y-3 px-4 pb-2`,children:[e.entries.map(([t,n])=>{let r=re===`remaining`?n.remainingPercent:n.usedPercent,i=ni(n.usedPercent,n.resetAt,n.windowSeconds,t),a=i?.dailyAllocationPercent==null?null:re===`remaining`?100-ii(i.elapsedRatio):ii(i.elapsedRatio),o=ri(n.valueLabel,r),s=ai(n.resetAt,n.resetAfterFormatted??n.resetAtFormatted,w);return(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center justify-between gap-3`,children:[(0,$.jsxs)(`div`,{className:`min-w-0 flex items-center gap-2`,children:[(0,$.jsx)(`span`,{className:`truncate typography-ui-label text-foreground`,children:oi(t)}),s?(0,$.jsx)(`span`,{className:`truncate typography-micro text-muted-foreground`,children:s}):null]}),(0,$.jsx)(`span`,{className:`typography-ui-label text-foreground tabular-nums`,children:o===`-`?``:o})]}),(0,$.jsx)(qa,{percent:r,tonePercent:n.usedPercent,className:`h-1.5`,expectedMarkerPercent:a}),i&&ie?(0,$.jsx)(Ya,{paceInfo:i,compact:!0}):null]},`${e.providerId}-${t}`)}),e.modelFamilies&&e.modelFamilies.length>0&&(0,$.jsx)(`div`,{className:`space-y-0.5`,children:e.modelFamilies.map(t=>{let n=(dt[e.providerId]??[]).includes(t.familyId??`other`);return(0,$.jsxs)(fs,{open:n,onOpenChange:()=>ft(e.providerId,t.familyId??`other`),children:[(0,$.jsxs)(ds,{className:`flex w-full items-center justify-between rounded-md px-1 py-1.5 text-left hover:bg-[var(--interactive-hover)]/50 transition-colors`,children:[(0,$.jsx)(`span`,{className:`typography-ui-label font-medium text-foreground`,children:t.familyLabel}),n?(0,$.jsx)(Z,{name:`arrow-down-s`,className:`h-4 w-4 text-muted-foreground`}):(0,$.jsx)(Z,{name:`arrow-right-s`,className:`h-4 w-4 text-muted-foreground`})]}),(0,$.jsx)(us,{children:(0,$.jsx)(`div`,{className:`space-y-2.5 pb-1 pl-1 pt-1`,children:t.models.map(([t,n])=>{let r=re===`remaining`?n.remainingPercent:n.usedPercent,i=ni(n.usedPercent,n.resetAt,n.windowSeconds),a=i?.dailyAllocationPercent==null?null:re===`remaining`?100-ii(i.elapsedRatio):ii(i.elapsedRatio),o=ri(n.valueLabel,r);return(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center justify-between gap-3`,children:[(0,$.jsx)(`span`,{className:`truncate typography-micro text-muted-foreground`,children:Wa(t)}),(0,$.jsx)(`span`,{className:`typography-ui-label text-foreground tabular-nums`,children:o===`-`?``:o})]}),(0,$.jsx)(qa,{percent:r,tonePercent:n.usedPercent,className:`h-1.5`,expectedMarkerPercent:a}),i&&ie?(0,$.jsx)(Ya,{paceInfo:i,compact:!0}):null]},`${e.providerId}-${t}`)})})})]},t.familyId??`other`)})})]})]},e.providerId))})]})]})})]}),t?(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,onClick:Kt,className:X(Vt,`relative`,Ut===`git`&&`bg-interactive-selection text-interactive-selection-foreground`),"aria-label":a?`Close git sidebar`:`Open git sidebar`,children:(0,$.jsx)(Z,{name:`layout-right`,className:`h-5 w-5`})})}),(0,$.jsx)(Zr,{children:(0,$.jsx)(`p`,{children:a?`Close git sidebar`:`Open git sidebar`})})]}):null]})]})]}),Sn=X(`header-safe-area relative z-10 bg-background`,me&&`bg-[var(--surface-background)] backdrop-blur-none`,q&&`oc-layout-divider-b`);return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`header`,{ref:ue,className:Sn,style:{"--padding-scale":`1`},children:q?xn():bn()}),(0,$.jsx)(Ia,{open:Ke,onOpenChange:qe,info:Je,downloading:!1,downloaded:!1,progress:null,error:Ze,onDownload:()=>{},onRestart:()=>{},runtimeType:`web`})]})};function gc(){}var _c=180,vc=640,yc=110,bc=e=>{let t=(0,Ts.c)(44),{isOpen:n,isMobile:r,children:i}=e,{t:a}=Fe(),o=u(xc),s=u(Sc),c=u(Cc),l=u(wc),[d,f]=Q.useState(null),[p,m]=Q.useState(!1),h=Q.useRef(null),g=Q.useRef(0),_=Q.useRef(o||300),v=Math.min(vc,Math.max(_c,o||300)),y,b;t[0]===n?(y=t[1],b=t[2]):(y=()=>{n||(f(null),m(!1))},b=[n],t[0]=n,t[1]=y,t[2]=b),Q.useEffect(y,b);let x,S;t[3]!==s||t[4]!==r||t[5]!==n?(x=()=>{if(r||!n||!s)return;let e=()=>{let e=h.current?.parentElement?.getBoundingClientRect().height;if(!e||e<=0)return;let t=Math.max(0,Math.round(e));f(e=>e===t?e:t)};e();let t=h.current?.parentElement;if(!t)return;let i=new ResizeObserver(e);return i.observe(t),()=>{i.disconnect()}},S=[s,r,n],t[3]=s,t[4]=r,t[5]=n,t[6]=x,t[7]=S):(x=t[6],S=t[7]),Q.useEffect(x,S);let C,w;if(t[8]!==s||t[9]!==r||t[10]!==p||t[11]!==c||t[12]!==l?(C=()=>{if(r||!p||s)return;let e=e=>{let t=g.current-e.clientY,n=Math.min(vc,Math.max(_c,_.current+t));c(n)},t=()=>{m(!1),u.getState().bottomTerminalHeight<=yc&&l(!1)};return window.addEventListener(`pointermove`,e),window.addEventListener(`pointerup`,t,{once:!0}),()=>{window.removeEventListener(`pointermove`,e),window.removeEventListener(`pointerup`,t)}},w=[s,r,p,c,l],t[8]=s,t[9]=r,t[10]=p,t[11]=c,t[12]=l,t[13]=C,t[14]=w):(C=t[13],w=t[14]),Q.useEffect(C,w),r)return null;let T=n?s?Math.max(0,d??v):v:0,E=n&&s,D;t[15]!==T||t[16]!==s||t[17]!==n?(D=e=>{!n||s||(m(!0),g.current=e.clientY,_.current=T,e.preventDefault())},t[15]=T,t[16]=s,t[17]=n,t[18]=D):D=t[18];let O=D,k=E?`absolute inset-x-0 bottom-0 z-40`:`relative`,A=p?`transition-none`:`transition-[height] duration-300 ease-in-out`,j=(!n||E)&&`border-t-0`,M;t[19]!==j||t[20]!==k||t[21]!==A?(M=X(`flex overflow-hidden border-t border-border bg-sidebar`,k,A,j),t[19]=j,t[20]=k,t[21]=A,t[22]=M):M=t[22];let N;t[23]!==T||t[24]!==E?(N=E?{top:0}:{height:`${T}px`,minHeight:`${T}px`,maxHeight:`${T}px`},t[23]=T,t[24]=E,t[25]=N):N=t[25];let P=!n||!s&&T===0,F;t[26]!==O||t[27]!==s||t[28]!==n||t[29]!==p||t[30]!==a?(F=n&&!s&&(0,$.jsx)(`div`,{className:X(`absolute left-0 top-0 z-20 h-[3px] w-full cursor-row-resize hover:bg-[var(--interactive-border)]/80 transition-colors`,p&&`bg-[var(--interactive-border)]`),onPointerDown:O,role:`separator`,"aria-orientation":`horizontal`,"aria-label":a(`terminalView.bottomDock.resizeAria`)}),t[26]=O,t[27]=s,t[28]=n,t[29]=p,t[30]=a,t[31]=F):F=t[31];let I=!n&&`pointer-events-none select-none opacity-0`,L;t[32]===I?L=t[33]:(L=X(`relative z-10 flex h-full min-h-0 w-full flex-col transition-opacity duration-300 ease-in-out`,I),t[32]=I,t[33]=L);let R=!n,z;t[34]!==i||t[35]!==L||t[36]!==R?(z=(0,$.jsx)(`div`,{className:L,"aria-hidden":R,children:i}),t[34]=i,t[35]=L,t[36]=R,t[37]=z):z=t[37];let B;return t[38]!==M||t[39]!==N||t[40]!==P||t[41]!==F||t[42]!==z?(B=(0,$.jsxs)(`section`,{ref:h,className:M,style:N,"aria-hidden":P,children:[F,z]}),t[38]=M,t[39]=N,t[40]=P,t[41]=F,t[42]=z,t[43]=B):B=t[43],B};function xc(e){return e.bottomTerminalHeight}function Sc(e){return e.isBottomTerminalExpanded}function Cc(e){return e.setBottomTerminalHeight}function wc(e){return e.setBottomTerminalOpen}var Tc=260,Ec=260,Dc=500,Oc=({isOpen:e,isMobile:t,children:n,className:r,topBar:i})=>{let{t:a}=Fe(),o=u(e=>e.sidebarWidth),s=u(e=>e.setSidebarWidth),[c,l]=Q.useState(!1),d=Q.useRef(0),f=Q.useRef(o||Tc),p=Q.useRef(null),m=Q.useRef(null),h=Q.useRef(null),g=Q.useCallback(e=>Math.min(Dc,Math.max(Ec,e)),[]),_=Q.useCallback(e=>{let t=h.current;t&&(t.style.width=`${e}px`,t.style.minWidth=`${e}px`,t.style.maxWidth=`${e}px`,t.style.setProperty(`--oc-left-sidebar-width`,`${e}px`))},[]);if(Q.useEffect(()=>{t&&c&&l(!1)},[t,c]),Q.useEffect(()=>{c||(p.current=null,m.current=null)},[c]),t)return null;let v=Math.min(Dc,Math.max(Ec,o||Tc)),y=e?v:0,b=t=>{if(e){try{t.currentTarget.setPointerCapture(t.pointerId)}catch{}m.current=t.pointerId,l(!0),d.current=t.clientX,f.current=y,p.current=y,_(y),t.preventDefault()}},x=e=>{if(t||!c||m.current!==e.pointerId)return;let n=e.clientX-d.current,r=g(f.current+n);p.current!==r&&(p.current=r,_(r))},S=e=>{if(m.current!==e.pointerId||t)return;try{e.currentTarget.releasePointerCapture(e.pointerId)}catch{}let n=g(p.current??y);m.current=null,p.current=null,l(!1),s(n)},C=c?p.current??y:y;return(0,$.jsxs)(`aside`,{ref:h,className:X(`relative flex h-full overflow-hidden oc-layout-divider-r will-change-[width] motion-reduce:transition-none`,`bg-sidebar oc-vibrancy-surface`,!e&&`border-r-0`,r),style:{width:`${C}px`,minWidth:`${C}px`,maxWidth:`${C}px`,"--oc-left-sidebar-width":`${c?C:v}px`,overflowX:`clip`,transitionProperty:c?`none`:`width, min-width, max-width`,transitionDuration:`200ms`,transitionTimingFunction:`cubic-bezier(0.22, 1, 0.36, 1)`},"aria-hidden":!e||y===0,children:[e&&(0,$.jsx)(`div`,{className:X(`absolute right-0 top-0 z-20 h-full w-[3px] cursor-col-resize hover:bg-[var(--interactive-border)]/80 transition-colors`,c&&`bg-[var(--interactive-border)]`),onPointerDown:b,onPointerMove:x,onPointerUp:S,onPointerCancel:S,role:`separator`,"aria-orientation":`vertical`,"aria-label":a(`sidebar.resize.leftPanelAria`)}),(0,$.jsxs)(`div`,{className:X(`relative z-10 flex h-full shrink-0 flex-col transition-opacity duration-200 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none`,c&&`pointer-events-none`,!e&&`pointer-events-none select-none opacity-0`),style:{width:`var(--oc-left-sidebar-width)`,overflowX:`hidden`},"aria-hidden":!e,children:[i,(0,$.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto`,children:(0,$.jsx)(xi,{children:n})})]})]})},kc=()=>{let e=(0,Ts.c)(3),t;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t={height:`var(--oc-header-height, 3rem)`},e[0]=t):t=e[0];let n;e[1]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,$.jsx)(`div`,{"aria-hidden":!0,className:`app-region-drag shrink-0`,style:{width:`var(--oc-titlebar-left-inset, 0.75rem)`}}),e[1]=n):n=e[1];let r;return e[2]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,$.jsxs)(`div`,{className:`flex shrink-0`,style:t,children:[n,(0,$.jsx)(`div`,{"aria-hidden":!0,className:`app-region-no-drag shrink-0`,style:{width:`calc(var(--oc-titlebar-controls-width, 5.5rem) + 0.5rem)`}}),(0,$.jsx)(`div`,{"aria-hidden":!0,className:`app-region-drag flex-1`})]}),e[2]=r):r=e[2],r},Ac=e=>{let t=(0,Ts.c)(24),{className:n}=e,r=Ga(jc),i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(i=[],t[0]=i):i=t[0],Q.useEffect(Mc,i);let a,o,s,c,l,u,d;if(t[1]!==n||t[2]!==r){d=Symbol.for(`react.early_return_sentinel`);bb0:{let e=r.trim().split(/\s+/).filter(Boolean);if(e.length===0){d=null;break bb0}let i=e.slice(0,-1);a=e.at(-1),t[10]===n?u=t[11]:(u=X(`px-2 pb-2 pt-1`,n),t[10]=n,t[11]=u),o=e.join(` `),s=`inline-flex min-w-0 items-baseline gap-[0.28em] truncate`,t[12]===Symbol.for(`react.memo_cache_sentinel`)?(c={fontFamily:`"Syne", var(--font-sans, system-ui, sans-serif)`,fontSize:`1.0625rem`,fontWeight:700,letterSpacing:`0.08em`,lineHeight:1},t[12]=c):c=t[12],l=i.length>0&&(0,$.jsx)(`span`,{className:`text-foreground`,children:i.join(` `)})}t[1]=n,t[2]=r,t[3]=a,t[4]=o,t[5]=s,t[6]=c,t[7]=l,t[8]=u,t[9]=d}else a=t[3],o=t[4],s=t[5],c=t[6],l=t[7],u=t[8],d=t[9];if(d!==Symbol.for(`react.early_return_sentinel`))return d;let f;t[13]===a?f=t[14]:(f=a&&(0,$.jsx)(`span`,{className:`text-primary`,children:a}),t[13]=a,t[14]=f);let p;t[15]!==o||t[16]!==s||t[17]!==c||t[18]!==l||t[19]!==f?(p=(0,$.jsxs)(`span`,{"aria-label":o,className:s,style:c,children:[l,f]}),t[15]=o,t[16]=s,t[17]=c,t[18]=l,t[19]=f,t[20]=p):p=t[20];let m;return t[21]!==u||t[22]!==p?(m=(0,$.jsx)(`div`,{className:u,children:p}),t[21]=u,t[22]=p,t[23]=m):m=t[23],m};function jc(e){return e.sidebarBrandName}function Mc(){Cr()}var Nc=e=>{let t=(0,Ts.c)(25),{className:n}=e,{t:r}=Fe(),i=u(Pc),a=u(Fc),o;t[0]===a?o=t[1]:(o=_i(yi(`open_command_palette`,a)),t[0]=a,t[1]=o);let s=o,c;t[2]===i?c=t[3]:(c=()=>i(!0),t[2]=i,t[3]=c);let l;t[4]===r?l=t[5]:(l=r(`commandPalette.title`),t[4]=r,t[5]=l);let d;t[6]===n?d=t[7]:(d=X(`app-region-no-drag size-7 rounded-md text-muted-foreground/75 focus-visible:ring-2 focus-visible:ring-primary`,n),t[6]=n,t[7]=d);let f;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,$.jsx)(Z,{name:`search`,className:`size-4 text-foreground/55 transition-colors group-hover:text-foreground group-focus-visible:text-foreground`}),t[8]=f):f=t[8];let p;t[9]!==c||t[10]!==l||t[11]!==d?(p=(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(Sn,{variant:`ghost`,size:`icon`,onClick:c,"aria-label":l,className:d,children:f})}),t[9]=c,t[10]=l,t[11]=d,t[12]=p):p=t[12];let m;t[13]===r?m=t[14]:(m=r(`commandPalette.title`),t[13]=r,t[14]=m);let h;t[15]===m?h=t[16]:(h=(0,$.jsx)(`span`,{children:m}),t[15]=m,t[16]=h);let g;t[17]===s?g=t[18]:(g=(0,$.jsx)(`span`,{className:`text-muted-foreground`,children:s}),t[17]=s,t[18]=g);let _;t[19]!==h||t[20]!==g?(_=(0,$.jsx)(Zr,{children:(0,$.jsxs)(`p`,{className:`flex items-center gap-2`,children:[h,g]})}),t[19]=h,t[20]=g,t[21]=_):_=t[21];let v;return t[22]!==_||t[23]!==p?(v=(0,$.jsxs)($r,{children:[p,_]}),t[22]=_,t[23]=p,t[24]=v):v=t[24],v};function Pc(e){return e.setCommandPaletteOpen}function Fc(e){return e.shortcutOverrides}var Ic=`app-region-no-drag inline-flex h-7 w-7 items-center justify-center rounded-md text-muted-foreground/75 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary hover:bg-interactive-hover hover:text-foreground transition-colors`,Lc=()=>{let e=(0,Ts.c)(46),{t}=Fe(),n=u(Rc),r=u(zc),i=u(Bc),a=u(Vc),o=Ga(Hc),s=Q.useRef(null),c=_i(yi(`toggle_sidebar`,a)),{usesFramelessChrome:l,side:d}=ao(),f;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(f=T(),e[0]=f):f=e[0];let p=f,h=!p||!n||!o,g;e[1]===Symbol.for(`react.memo_cache_sentinel`)?(g=k()&&!p&&!m(),e[1]=g):g=e[1];let _=g,v=Wc,y,b;e[2]===Symbol.for(`react.memo_cache_sentinel`)?(y=()=>{if(typeof document>`u`)return;let e=s.current;if(!e)return;let t=()=>{let t=e.getBoundingClientRect().width;document.documentElement.style.setProperty(`--oc-titlebar-controls-width`,`${Math.round(t)}px`)};if(t(),typeof ResizeObserver>`u`)return;let n=new ResizeObserver(t);return n.observe(e),()=>{n.disconnect()}},b=[],e[2]=y,e[3]=b):(y=e[2],b=e[3]),Q.useEffect(y,b);let x=_&&n?`${r||260}px`:void 0,S;e[4]===x?S=e[5]:(S={height:`var(--oc-header-height, 3rem)`,paddingLeft:`var(--oc-titlebar-left-inset, 0.75rem)`,width:x},e[4]=x,e[5]=S);let C=_&&n&&`w-full justify-between`,w;e[6]===C?w=e[7]:(w=X(`flex items-center gap-2`,C),e[6]=C,e[7]=w);let E;e[8]===n?E=e[9]:(E=_&&n?(0,$.jsx)(Ac,{className:`flex min-w-0 items-center p-0`}):null,e[8]=n,e[9]=E);let D;e[10]!==l||e[11]!==d?(D=l&&d===`left`?(0,$.jsx)(io,{visible:!0,position:`left`}):null,e[10]=l,e[11]=d,e[12]=D):D=e[12];let O;e[13]!==t||e[14]!==l?(O=l?(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,onClick:v,"aria-label":t(`header.actions.openAppMenuAria`),className:X(Ic,`shrink-0`),children:(0,$.jsx)(Z,{name:`menu-2`,className:`h-[18px] w-[18px]`})})}),(0,$.jsx)(Zr,{children:(0,$.jsx)(`p`,{children:t(`header.actions.openAppMenu`)})})]}):null,e[13]=t,e[14]=l,e[15]=O):O=e[15];let A;e[16]===h?A=e[17]:(A=h?(0,$.jsx)(Nc,{}):null,e[16]=h,e[17]=A);let j=$r,M;e[18]===t?M=e[19]:(M=t(`header.actions.openSessionsAria`),e[18]=t,e[19]=M);let N,P;e[20]===Symbol.for(`react.memo_cache_sentinel`)?(N=X(Ic,`group shrink-0`),P=(0,$.jsx)(Z,{name:`layout-left-rounded`,className:`size-4 text-foreground/55 transition-colors group-hover:text-foreground group-focus-visible:text-foreground`}),e[20]=N,e[21]=P):(N=e[20],P=e[21]);let F;e[22]!==M||e[23]!==i?(F=(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,onClick:i,"aria-label":M,className:N,children:P})}),e[22]=M,e[23]=i,e[24]=F):F=e[24];let I=Zr,L=t(`header.actions.openSessionsWithShortcut`,{shortcut:c}),R;e[25]===L?R=e[26]:(R=(0,$.jsx)(`p`,{children:L}),e[25]=L,e[26]=R);let z;e[27]!==I||e[28]!==R?(z=(0,$.jsx)(I,{children:R}),e[27]=I,e[28]=R,e[29]=z):z=e[29];let B;e[30]!==j||e[31]!==F||e[32]!==z?(B=(0,$.jsxs)(j,{children:[F,z]}),e[30]=j,e[31]=F,e[32]=z,e[33]=B):B=e[33];let V;e[34]!==A||e[35]!==B?(V=(0,$.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1`,children:[A,B]}),e[34]=A,e[35]=B,e[36]=V):V=e[36];let H;e[37]!==D||e[38]!==O||e[39]!==V||e[40]!==w||e[41]!==E?(H=(0,$.jsxs)(`div`,{ref:s,className:w,children:[E,D,O,V]}),e[37]=D,e[38]=O,e[39]=V,e[40]=w,e[41]=E,e[42]=H):H=e[42];let U;return e[43]!==H||e[44]!==S?(U=(0,$.jsx)(`div`,{className:`app-region-no-drag absolute left-0 top-0 z-30 flex select-none items-center pr-2`,style:S,children:H}),e[43]=H,e[44]=S,e[45]=U):U=e[45],U};function Rc(e){return e.isSidebarOpen}function zc(e){return e.sidebarWidth}function Bc(e){return e.toggleSidebar}function Vc(e){return e.shortcutOverrides}function Hc(e){return e.sidebarBrandName.trim().length>0}function Uc(e){console.warn(`[titlebar] failed to open app menu`,e)}function Wc(e){let t=e.currentTarget.getBoundingClientRect();L(`desktop_show_app_menu`,{x:t.left,y:t.bottom}).catch(Uc)}var Gc=420,Kc=({isOpen:e,children:t,className:n})=>{let{t:r}=Fe(),i=u(e=>e.rightSidebarWidth),a=u(e=>e.setRightSidebarWidth),[o,s]=Q.useState(!1),c=Q.useRef(0),l=Q.useRef(i||Gc),d=Q.useRef(null),f=Q.useRef(null),p=Q.useRef(null),m=Q.useCallback(e=>Math.min(860,Math.max(360,e)),[]),h=Q.useCallback(e=>{let t=p.current;t&&(t.style.width=`${e}px`,t.style.minWidth=`${e}px`,t.style.maxWidth=`${e}px`,t.style.setProperty(`--oc-right-sidebar-width`,`${e}px`))},[]),g=Math.min(860,Math.max(360,i||Gc)),_=e?g:0;Q.useLayoutEffect(()=>{if(o)return;let e=p.current;e&&(e.style.minWidth=``,e.style.maxWidth=``)},[e,o,g]);let v=t=>{if(e){try{t.currentTarget.setPointerCapture(t.pointerId)}catch{}f.current=t.pointerId,s(!0),c.current=t.clientX,l.current=_,d.current=_,h(_),t.preventDefault()}},y=e=>{if(!o||f.current!==e.pointerId)return;let t=c.current-e.clientX,n=m(l.current+t);d.current!==n&&(d.current=n,h(n))},b=e=>{if(f.current!==e.pointerId)return;try{e.currentTarget.releasePointerCapture(e.pointerId)}catch{}let t=m(d.current??_);f.current=null,d.current=null,s(!1),a(t)},x=o?d.current??_:_;return(0,$.jsxs)(`aside`,{ref:p,className:X(`relative flex h-full overflow-hidden oc-layout-divider-l will-change-[width] motion-reduce:transition-none`,`bg-sidebar`,!e&&`border-l-0`,n),style:{width:`${x}px`,"--oc-right-sidebar-width":`${o?x:g}px`,overflowX:`clip`,transitionProperty:o?`none`:`width`,transitionDuration:`200ms`,transitionTimingFunction:`cubic-bezier(0.22, 1, 0.36, 1)`},"aria-hidden":!e||_===0,children:[e&&(0,$.jsx)(`div`,{className:X(`absolute left-0 top-0 z-20 h-full w-[3px] cursor-col-resize hover:bg-[var(--interactive-border)]/80 transition-colors`,o&&`bg-[var(--interactive-border)]`),onPointerDown:v,onPointerMove:y,onPointerUp:b,onPointerCancel:b,role:`separator`,"aria-orientation":`vertical`,"aria-label":r(`sidebar.resize.rightPanelAria`)}),(0,$.jsx)(`div`,{className:X(`relative z-10 flex h-full min-h-0 shrink-0 flex-col pt-2 transition-opacity duration-200 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none`,o&&`pointer-events-none`,!e&&`pointer-events-none select-none opacity-0`),style:{width:`var(--oc-right-sidebar-width)`},"aria-hidden":!e,children:e?t:null})]})},qc=12,Jc=[{id:`left`,x:22,y:58,delay:0,radius:120,colorVar:`--status-success`},{id:`center`,x:50,y:42,delay:120,radius:150,colorVar:`--primary-base`},{id:`right`,x:78,y:55,delay:200,radius:130,colorVar:`--status-info`}],Yc=e=>{let t=(0,Ts.c)(18),{isActive:n,burstKey:r,className:i,durationMs:a,bursts:o,onComplete:s}=e,c=r===void 0?0:r,l=a===void 0?900:a,u=o===void 0?Jc:o,d=Q.useRef(!1),f,p;t[0]!==n||t[1]!==s?(f=()=>{!n&&d.current&&s?.(),n&&(d.current=!0)},p=[n,s],t[0]=n,t[1]=s,t[2]=f,t[3]=p):(f=t[2],p=t[3]),Q.useEffect(f,p);let m;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(m=Array.from({length:qc},Xc),t[4]=m):m=t[4];let h=m;if(!n)return null;let g;t[5]===i?g=t[6]:(g=X(`fireworks-overlay pointer-events-none`,i),t[5]=i,t[6]=g);let _;if(t[7]!==c||t[8]!==u||t[9]!==l){let e;t[11]!==c||t[12]!==l?(e=e=>{let t={"--burst-delay":`${e.delay}ms`,"--burst-x":`${e.x}%`,"--burst-y":`${e.y}%`,"--firework-color":`var(${e.colorVar})`,"--firework-duration":`${l}ms`};return(0,$.jsx)(`div`,{className:`firework-burst`,style:t,children:h.map((t,n)=>{let r=t.x*e.radius,i=t.y*e.radius,a={"--translate-x":`${r}px`,"--translate-y":`${i}px`,"--particle-delay":`${t.delay}ms`,color:`var(${e.colorVar})`};return(0,$.jsx)(`span`,{className:`firework-particle`,style:a},`${e.id}-${n}-${c}`)})},`${e.id}-${c}`)},t[11]=c,t[12]=l,t[13]=e):e=t[13],_=u.map(e),t[7]=c,t[8]=u,t[9]=l,t[10]=_}else _=t[10];let v;return t[14]!==c||t[15]!==g||t[16]!==_?(v=(0,$.jsx)(`div`,{className:g,"aria-hidden":`true`,"data-burst-key":c,children:_}),t[14]=c,t[15]=g,t[16]=_,t[17]=v):v=t[17],v};function Xc(e,t){let n=Math.PI*2*t/qc;return{x:Math.cos(n),y:Math.sin(n),delay:t*18}}var Zc=e=>{let t=(0,Ts.c)(13),n;t[0]===e?n=t[1]:(n=e===void 0?{}:e,t[0]=e,t[1]=n);let{durationMs:r}=n,i=r===void 0?3400:r,a;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(a={isActive:!1,cycle:0},t[2]=a):a=t[2];let[o,s]=Q.useState(a),c=Q.useRef(null),l;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(l=()=>{c.current&&=(window.clearTimeout(c.current),null)},t[3]=l):l=t[3];let u=l,d;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(d=()=>{u(),s(Qc)},t[4]=d):d=t[4];let f=d,p;t[5]===i?p=t[6]:(p=()=>{u(),s($c),c.current=window.setTimeout(()=>{s(el),c.current=null},i)},t[5]=i,t[6]=p);let m=p,h,g;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(h=()=>()=>u(),g=[u],t[7]=h,t[8]=g):(h=t[7],g=t[8]),Q.useEffect(h,g);let _;return t[9]!==o.cycle||t[10]!==o.isActive||t[11]!==m?(_={isActive:o.isActive,burstKey:o.cycle,triggerFireworks:m,dismissFireworks:f},t[9]=o.cycle,t[10]=o.isActive,t[11]=m,t[12]=_):_=t[12],_};function Qc(e){return e.isActive?{...e,isActive:!1}:e}function $c(e){return{isActive:!0,cycle:e.cycle+1}}function el(e){return e.isActive?{...e,isActive:!1}:e}var tl=Q.createContext(void 0),nl=e=>{let t=(0,Ts.c)(10),{children:n}=e,{isActive:r,burstKey:i,triggerFireworks:a,dismissFireworks:o}=Zc(),s;t[0]!==o||t[1]!==a?(s={triggerFireworks:a,dismissFireworks:o},t[0]=o,t[1]=a,t[2]=s):s=t[2];let c=s,l;t[3]!==i||t[4]!==r?(l=(0,$.jsx)(Yc,{isActive:r,burstKey:i}),t[3]=i,t[4]=r,t[5]=l):l=t[5];let u;return t[6]!==n||t[7]!==l||t[8]!==c?(u=(0,$.jsxs)(tl.Provider,{value:c,children:[n,l]}),t[6]=n,t[7]=l,t[8]=c,t[9]=u):u=t[9],u},rl=()=>{let e=Q.useContext(tl);if(!e)throw Error(`useFireworksCelebration must be used within FireworksProvider`);return e},il=`gitmojiCache`,al=6048e5,ol=`1`,sl=`https://raw.githubusercontent.com/carloscuesta/gitmoji/master/packages/gitmojis/src/gitmojis.json`,cl=e=>{if(!e||typeof e!=`object`)return!1;let t=e;return typeof t.emoji==`string`&&typeof t.code==`string`&&typeof t.description==`string`},ll=()=>{if(typeof window>`u`)return null;try{let e=window.localStorage.getItem(il);if(!e)return null;let t=JSON.parse(e);return!t||t.version!==ol||typeof t.fetchedAt!=`number`||!Array.isArray(t.gitmojis)?null:{gitmojis:t.gitmojis.filter(cl),fetchedAt:t.fetchedAt,version:t.version}}catch{return null}},ul=e=>{if(!(typeof window>`u`))try{let t={gitmojis:e,fetchedAt:Date.now(),version:ol};window.localStorage.setItem(il,JSON.stringify(t))}catch{return}},dl=e=>Date.now()-e.fetchedAt<al,fl=null,pl=new Set,ml=async()=>{if(fl)return fl;let e=(async()=>{try{let e=await fetch(sl);if(!e.ok)throw Error(`Failed to load gitmojis: ${e.statusText}`);let t=await e.json(),n=Array.isArray(t.gitmojis)?t.gitmojis.filter(cl):[];return ul(n),pl.forEach(e=>e(n)),n}catch(e){console.warn(`Failed to load gitmoji list:`,e);let t=[];return pl.forEach(e=>e(t)),t}finally{fl=null}})();return fl=e,e},hl=e=>{let[t,n]=Q.useState(()=>e?ll()?.gitmojis??[]:[]),[r,i]=Q.useState(!1),a=Q.useRef(e);return a.current=e,Q.useEffect(()=>{if(!e){pl.delete(n),n([]),i(!1);return}let t=ll();if(t&&(n(t.gitmojis),dl(t)))return;pl.add(n),i(!0);let r=!1;return ml().finally(()=>{!r&&a.current&&i(!1)}),()=>{r=!0,pl.delete(n)}},[e]),{gitmojis:t,isLoading:r,ensureLoaded:Q.useCallback(async()=>{if(!a.current)return[];if(t.length>0)return t;let e=ll();return e&&dl(e)?e.gitmojis:ml()},[t])}},gl=e=>{if(!e)return``;let t=e.replace(/\\/g,`/`);return t===`/`?`/`:t.replace(/\/+$/,``)};function _l(e,t,n){let r=(0,Ts.c)(5),[i,a]=Q.useState(),o,s;return r[0]!==n||r[1]!==e||r[2]!==t?(o=()=>{if(t){a(void 0);return}if(!e){a(void 0);return}a(void 0);let r=!1;return(async()=>{let[t,i]=await Promise.all([Pn(e),Cn(e)]).catch(vl);if(r)return;let o=gl(t),s=gl(i);if(!o||!s||s===o)return;let c=n||``,l=s.split(`/`).filter(Boolean).pop()||s;a({source:`sdk`,path:s,projectDirectory:o,branch:c,label:c||l,name:l,worktreeRoot:s,worktreeStatus:`ready`,headState:c?`branch`:`unborn`,worktreeSource:`existing`})})(),()=>{r=!0}},s=[e,t,n],r[0]=n,r[1]=e,r[2]=t,r[3]=o,r[4]=s):(o=r[3],s=r[4]),Q.useEffect(o,s),t??i}function vl(){return[``,``]}var yl=({open:e,onOpenChange:t,directory:n,hasUncommittedChanges:r,hasStagedChanges:i=!1,uncommittedFileCount:a,onChanged:o})=>{let{t:s}=Fe(),[c,l]=Q.useState([]),[u,d]=Q.useState(!1),[f,p]=Q.useState(``),[m,h]=Q.useState(``),[g,_]=Q.useState(null),[v,y]=Q.useState({}),b=Q.useCallback(async()=>{if(n){d(!0);try{let e=await wn(n);l(e.stashes),y({})}catch(e){Y.error(e instanceof Error?e.message:s(`gitView.stashes.toast.loadFailed`))}finally{d(!1)}}},[n,s]);Q.useEffect(()=>{e&&b()},[b,e]),Q.useEffect(()=>{if(!e||!n||c.length===0)return;let t=!1,r=c.map(e=>e.ref);return kn(n,r).then(e=>{t||y(e.counts)}).catch(()=>void 0),()=>{t=!0}},[n,e,c]);let x=Q.useMemo(()=>{let e=f.trim().toLowerCase();return e?c.filter(t=>`${t.ref} ${t.message} ${t.relativeTime}`.toLowerCase().includes(e)):c},[f,c]),S=Q.useCallback(async e=>{await b(),await o?.(e)},[b,o]),C=async()=>{if(!(!n||g)){_(`create`);try{let e=await Dn(n,{message:m.trim()||void 0});e.created?(Y.success(s(`gitView.stashes.toast.created`)),h(``)):Y.info(s(`gitView.stashes.toast.noChanges`)),await S({affectsIndex:!!(e.created&&i)})}catch(e){Y.error(e instanceof Error?e.message:s(`gitView.stashes.toast.createFailed`))}finally{_(null)}}},w=async(e,t)=>{if(!(!n||g)&&!(t===`drop`&&!window.confirm(s(`gitView.stashes.confirm.drop`,{ref:e.ref})))){_(`${t}:${e.ref}`);try{t===`apply`&&await zn(n,{ref:e.ref}),t===`pop`&&await On(n,{ref:e.ref}),t===`drop`&&await An(n,{ref:e.ref});let r=t===`apply`?`gitView.stashes.toast.applySuccess`:t===`pop`?`gitView.stashes.toast.popSuccess`:`gitView.stashes.toast.dropSuccess`;Y.success(s(r)),await S({affectsIndex:t!==`drop`})}catch(e){let n=t===`apply`?`gitView.stashes.toast.applyFailed`:t===`pop`?`gitView.stashes.toast.popFailed`:`gitView.stashes.toast.dropFailed`;Y.error(e instanceof Error?e.message:s(n)),await S({affectsIndex:t!==`drop`})}finally{_(null)}}},T=g!==null;return(0,$.jsx)(mn,{open:e,onOpenChange:t,children:(0,$.jsxs)(dn,{className:`max-w-2xl max-h-[70vh] flex flex-col`,children:[(0,$.jsxs)(ln,{children:[(0,$.jsxs)(fn,{className:`flex items-center gap-2`,children:[(0,$.jsx)(Z,{name:`archive-stack`,className:`h-5 w-5`}),s(`gitView.stashes.title`)]}),(0,$.jsx)(pn,{children:s(`gitView.stashes.description`)})]}),(0,$.jsxs)(`div`,{className:`mt-2 rounded-lg border border-border/60 bg-[var(--surface-elevated)] p-3`,children:[(0,$.jsxs)(`div`,{className:`flex flex-col gap-2 sm:flex-row`,children:[(0,$.jsx)(Yr,{value:m,onChange:e=>h(e.target.value),placeholder:s(`gitView.stashes.messagePlaceholder`),disabled:T||!r,className:`flex-1`}),(0,$.jsxs)(Sn,{onClick:C,disabled:!r||T||!n,children:[g===`create`?(0,$.jsx)(Z,{name:`loader-4`,className:`size-4 animate-spin`}):(0,$.jsx)(Z,{name:`inbox-archive`,className:`size-4`}),s(`gitView.stashes.actions.stashCurrentWithCount`,{count:a})]})]}),(0,$.jsx)(`p`,{className:`typography-meta mt-2 text-muted-foreground`,children:s(`gitView.stashes.includeUntrackedHint`)})]}),(0,$.jsxs)(`div`,{className:`relative mt-2`,children:[(0,$.jsx)(Z,{name:`search`,className:`absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-muted-foreground`}),(0,$.jsx)(Yr,{value:f,onChange:e=>p(e.target.value),placeholder:s(`gitView.stashes.searchPlaceholder`),className:`pl-9`})]}),(0,$.jsx)(`div`,{className:`flex-1 overflow-y-auto`,children:u?(0,$.jsx)(`div`,{className:`flex items-center justify-center py-10 text-muted-foreground`,children:(0,$.jsx)(Z,{name:`loader-4`,className:`size-5 animate-spin`})}):x.length===0?(0,$.jsx)(`div`,{className:`py-8 text-center text-muted-foreground`,children:s(f?`gitView.stashes.empty.search`:`gitView.stashes.empty.list`)}):x.map((e,t)=>(0,$.jsxs)(`div`,{className:`group flex items-center gap-2 rounded py-1.5 transition-colors hover:bg-interactive-hover/30`,children:[(0,$.jsxs)(`div`,{className:`min-w-0 flex-1 pl-2`,children:[(0,$.jsx)(`p`,{className:`typography-small truncate text-foreground`,children:e.message||s(`gitView.stashes.untitled`)}),(0,$.jsxs)(`p`,{className:`typography-meta truncate text-muted-foreground`,children:[(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`span`,{children:t===0&&!f.trim()?s(`gitView.stashes.latestLabel`):s(`gitView.stashes.itemNumber`,{number:t+1})})}),(0,$.jsx)(Zr,{sideOffset:6,children:e.ref})]}),` · `,e.relativeTime,` · `,typeof v[e.ref]==`number`?s(`gitView.stashes.fileCount`,{count:v[e.ref]}):s(`gitView.stashes.fileCountLoading`)]})]}),(0,$.jsxs)(`div`,{className:`mr-2 flex shrink-0 items-center gap-1 opacity-100 sm:opacity-0 sm:group-hover:opacity-100`,children:[(0,$.jsx)(bl,{label:s(`gitView.stashes.actions.apply`),loading:g===`apply:${e.ref}`,onClick:()=>w(e,`apply`),disabled:T,children:(0,$.jsx)(Z,{name:`inbox-unarchive`,className:`size-4`})}),(0,$.jsx)(bl,{label:s(`gitView.stashes.actions.pop`),loading:g===`pop:${e.ref}`,onClick:()=>w(e,`pop`),disabled:T,children:(0,$.jsx)(Z,{name:`inbox-unarchive-fill`,className:`size-4`})}),(0,$.jsx)(bl,{label:s(`gitView.stashes.actions.drop`),loading:g===`drop:${e.ref}`,onClick:()=>w(e,`drop`),disabled:T,destructive:!0,children:(0,$.jsx)(Z,{name:`delete-bin`,className:`size-4`})})]})]},e.ref))})]})})},bl=e=>{let t=(0,Ts.c)(17),{label:n,loading:r,disabled:i,destructive:a,onClick:o,children:s}=e,c=r||void 0,l=a?`text-[var(--status-error)] hover:text-[var(--status-error)]`:`text-muted-foreground hover:text-foreground`,u;t[0]===l?u=t[1]:(u=X(`flex h-6 w-6 items-center justify-center transition-colors disabled:opacity-50`,l),t[0]=l,t[1]=u);let d;t[2]!==s||t[3]!==r?(d=r?(0,$.jsx)(Z,{name:`loader-4`,className:`size-4 animate-spin`}):s,t[2]=s,t[3]=r,t[4]=d):d=t[4];let f;t[5]!==i||t[6]!==n||t[7]!==o||t[8]!==c||t[9]!==u||t[10]!==d?(f=(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,"aria-label":n,"aria-busy":c,className:u,onClick:o,disabled:i,children:d})}),t[5]=i,t[6]=n,t[7]=o,t[8]=c,t[9]=u,t[10]=d,t[11]=f):f=t[11];let p;t[12]===n?p=t[13]:(p=(0,$.jsx)(Zr,{sideOffset:6,children:n}),t[12]=n,t[13]=p);let m;return t[14]!==f||t[15]!==p?(m=(0,$.jsxs)($r,{children:[f,p]}),t[14]=f,t[15]=p,t[16]=m):m=t[16],m},xl=e=>{let t=(0,Ts.c)(16),{onOpenStashes:n}=e,{t:r}=Fe(),i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,$.jsx)(Z,{name:`git-commit`,className:`size-10 text-muted-foreground/70 mb-4`}),t[0]=i):i=t[0];let a;t[1]===r?a=t[2]:(a=r(`gitView.empty.cleanTitle`),t[1]=r,t[2]=a);let o;t[3]===a?o=t[4]:(o=(0,$.jsx)(`p`,{className:`typography-ui-label font-semibold text-foreground mb-1`,children:a}),t[3]=a,t[4]=o);let s;t[5]===r?s=t[6]:(s=r(`gitView.empty.cleanDescription`),t[5]=r,t[6]=s);let c;t[7]===s?c=t[8]:(c=(0,$.jsx)(`p`,{className:`typography-meta text-muted-foreground mb-4`,children:s}),t[7]=s,t[8]=c);let l;t[9]!==n||t[10]!==r?(l=n?(0,$.jsxs)(Sn,{type:`button`,variant:`outline`,size:`sm`,onClick:n,className:`gap-1.5`,children:[(0,$.jsx)(Z,{name:`archive-stack`,className:`size-4`}),r(`gitView.stashes.title`)]}):null,t[9]=n,t[10]=r,t[11]=l):l=t[11];let u;return t[12]!==o||t[13]!==c||t[14]!==l?(u=(0,$.jsxs)(`div`,{className:`flex flex-col items-center justify-center py-10 px-4 text-center`,children:[i,o,c,l]}),t[12]=o,t[13]=c,t[14]=l,t[15]=u):u=t[15],u},Sl=8,Cl=e=>{let t=(0,Ts.c)(18),{laned:n,totalLanes:r,isExpanded:i}=e,{lane:a,color:o,connectors:s}=n,c=Math.max(r,a+1)*Sl+Sl/2,l=Q.useRef(null),u=Q.useRef(null),d;t[0]!==o||t[1]!==s||t[2]!==a||t[3]!==c?(d=()=>{let e=l.current,t=u.current;if(!e||!t)return;let n=e.offsetHeight;if(n===0)return;let r=window.devicePixelRatio||1;t.width=c*r,t.height=n*r;let i=t.getContext(`2d`);if(!i)return;i.scale(r,r),i.clearRect(0,0,c,n);let d=n/2,f=a*Sl+Sl/2,p=getComputedStyle(t),m=p.getPropertyValue(`--surface-muted-foreground`).trim()||p.color,h=e=>{if(!e.startsWith(`var(`))return e;let t=e.slice(4,-1).trim();return p.getPropertyValue(t).trim()||m},g=[...s].sort(Tl);for(let e of g){let t=e.fromLane*Sl+Sl/2,r=e.toLane*Sl+Sl/2,a=e.type===`passing`?.72:e.type===`branch-out`||e.type===`merge-in`?.95:1;i.beginPath(),i.strokeStyle=h(e.color),i.globalAlpha=a,i.lineWidth=1.25,i.lineCap=`round`;bb64:switch(e.type){case`passing`:case`commit-lane`:i.moveTo(t,0),i.lineTo(t,n);break bb64;case`top-stub`:i.moveTo(t,0),i.lineTo(t,d);break bb64;case`bottom-stub`:i.moveTo(t,d),i.lineTo(t,n);break bb64;case`branch-out`:{let e=(d+n)/2;i.moveTo(f,d),i.bezierCurveTo(f,e,r,e,r,n);break bb64}case`merge-in`:{let e=d/2;i.moveTo(t,0),i.bezierCurveTo(t,e,f,e,f,d);break bb64}default:continue}i.stroke(),i.globalAlpha=1}let _=p.getPropertyValue(`--background`).trim()||p.getPropertyValue(`--surface-background`).trim();i.beginPath(),i.arc(f,d,4,0,Math.PI*2),i.fillStyle=h(o),i.fill(),i.beginPath(),i.arc(f,d,5,0,Math.PI*2),i.strokeStyle=_||m,i.lineWidth=2,i.stroke()},t[0]=o,t[1]=s,t[2]=a,t[3]=c,t[4]=d):d=t[4];let f;t[5]!==o||t[6]!==s||t[7]!==i||t[8]!==a||t[9]!==n||t[10]!==r||t[11]!==c?(f=[n,a,o,s,r,i,c],t[5]=o,t[6]=s,t[7]=i,t[8]=a,t[9]=n,t[10]=r,t[11]=c,t[12]=f):f=t[12],Q.useLayoutEffect(d,f);let p;t[13]===c?p=t[14]:(p={width:c,height:`100%`,position:`relative`,flexShrink:0,overflow:`hidden`},t[13]=c,t[14]=p);let m;t[15]===Symbol.for(`react.memo_cache_sentinel`)?(m=(0,$.jsx)(`canvas`,{ref:u,style:{position:`absolute`,inset:0,width:`100%`,height:`100%`,display:`block`}}),t[15]=m):m=t[15];let h;return t[16]===p?h=t[17]:(h=(0,$.jsx)(`div`,{ref:l,style:p,children:m}),t[16]=p,t[17]=h),h};function wl(e){return e===`branch-out`||e===`merge-in`}function Tl(e,t){let n=wl;return!!n(e.type)-+!!n(t.type)}var El=15e3,Dl=500,Ol=12,kl=8388608,Al=e=>typeof e==`string`?0:(e.original?.length??0)+(e.modified?.length??0),jl=e=>{if(e.size<=Ol){let t=0;for(let n of e.values())t+=Al(n);if(t<=kl)return e}let t=Array.from(e.entries()).reverse(),n=new Map,r=0;for(let[e,i]of t){if(n.size>=Ol)continue;let t=Al(i);r+t>kl&&n.size>0||(n.set(e,i),r+=t)}return new Map(Array.from(n.entries()).reverse())};function Ml(e,t){let n=new Date(e);return Number.isNaN(n.getTime())?e:Ti(n,t,{year:`numeric`,month:`short`,day:`numeric`,hour:`2-digit`,minute:`2-digit`})}function Nl(e){switch(e){case`A`:return`text-[var(--status-success)]`;case`D`:return`text-[var(--status-error)]`;case`M`:return`text-[var(--status-warning)]`;case`R`:return`text-[var(--status-info)]`;default:return`text-muted-foreground`}}function Pl(e){return e?e.split(`,`).map(e=>e.trim()).filter(Boolean).map(e=>{let t=e.startsWith(`HEAD ->`);return{label:t?e.replace(`HEAD -> `,``):e.replace(`tag: `,``),isHead:t,isTag:e.startsWith(`tag: `)}}):[]}var Fl=Q.memo(({entry:e,mode:t=`history`,laned:n,totalLanes:r,isExpanded:i,onToggle:a,files:o,isLoadingFiles:s,onCopyHash:c,directory:l,onConflict:d,onActionSuccess:f})=>{let{t:p}=Fe(),m=u(e=>e.timeFormatPreference),h=t===`graph`,[g,_]=Q.useState(null),[v,y]=Q.useState(!1),[b,x]=Q.useState(``),[S,C]=Q.useState(null),[w,T]=Q.useState(new Set),[E,D]=Q.useState(new Map),[O,k]=Q.useState(new Set),A=async()=>{if(l){_(`checkout`);try{await Rn(l,e.hash),Y.success(p(`gitView.history.actions.detachedHead`)),f?.()}catch(e){Y.error(String(e.message))}finally{_(null)}}},j=async()=>{if(!(!l||!b.trim())){_(`createBranch`);try{await In(l,b.trim(),e.hash),y(!1),x(``),f?.()}catch(e){Y.error(String(e.message))}finally{_(null)}}},M=async()=>{if(l){_(`cherryPick`);try{let t=await Mn(l,e.hash);t.conflict?d?.({conflict:!0,conflictFiles:t.conflictFiles,operation:`cherry-pick`}):f?.()}catch(e){Y.error(String(e.message))}finally{_(null)}}},N=async()=>{if(l){_(`revert`);try{let t=await Nn(l,e.hash);t.conflict?d?.({conflict:!0,conflictFiles:t.conflictFiles,operation:`revert`}):f?.()}catch(e){Y.error(String(e.message))}finally{_(null)}}},P=async(t,n=!1)=>{if(!(!l||g!==null)){_(`reset`);try{await En(l,e.hash,t,n),f?.()}catch(e){Y.error(String(e.message))}finally{_(null)}}},F=async()=>{if(!S)return;let e=S;switch(C(null),e){case`checkout`:return A();case`cherryPick`:return M();case`revert`:return N();case`merge`:return I();case`rebase`:return L();case`resetSoft`:return P(`soft`);case`resetMixed`:return P(`mixed`);case`resetHard`:return P(`hard`,!0)}},I=async()=>{if(l){_(`merge`);try{let t=await Bn(l,{branch:e.hash});t.conflict?d?.({conflict:!0,conflictFiles:t.conflictFiles,operation:`merge`}):f?.()}catch(e){Y.error(String(e.message))}finally{_(null)}}},L=async()=>{if(l){_(`rebase`);try{let t=await Tn(l,{onto:e.hash});t.conflict?d?.({conflict:!0,conflictFiles:t.conflictFiles,operation:`rebase`}):f?.()}catch(e){Y.error(String(e.message))}finally{_(null)}}},R=Q.useCallback(async t=>{let n=t.path;if(!l){D(e=>new Map(e).set(n,`error`));return}D(e=>jl(new Map(e).set(n,`loading`)));try{let r=Fn(l,e.hash,t.path,!1),i=new Promise((e,t)=>{setTimeout(()=>t(Error(`Timed out after ${El}ms`)),El)}),a=await Promise.race([r,i]);D(e=>jl(new Map(e).set(n,a)))}catch{D(e=>new Map(e).set(n,`error`))}},[l,e.hash]),z=Q.useCallback(async e=>{let t=e.path;if(e.changeType===`R`||e.isBinary){T(e=>{let n=new Set(e);return n.has(t)?n.delete(t):n.add(t),n});return}let n=E.get(t);if(w.has(t)&&n&&n!==`error`){T(e=>{let n=new Set(e);return n.delete(t),n});return}T(e=>{let n=new Set(e);return n.add(t),n}),!(n&&n!==`error`)&&(e.insertions+e.deletions>Dl&&!O.has(t)||await R(e))},[E,O,R,w]);return(0,$.jsxs)(`li`,{children:[(0,$.jsxs)(`button`,{type:`button`,onClick:a,className:X(`w-full flex items-start gap-3 px-3 py-2 text-left transition-colors`,h?`hover:bg-[var(--interactive-hover)]/40`:i?`bg-sidebar/90`:`hover:bg-sidebar/40`),children:[h&&n&&r!==void 0?(0,$.jsx)(`div`,{className:`-my-2 shrink-0 self-stretch`,children:(0,$.jsx)(Cl,{laned:n,totalLanes:r,isExpanded:i})}):(0,$.jsx)(`div`,{className:`h-2 w-2 translate-y-2 rounded-full shrink-0`,style:{backgroundColor:`var(--status-success)`},"aria-hidden":!0}),(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[h?(()=>{let t=Pl(e.refs);return t.length>0?(0,$.jsx)(`div`,{className:`flex flex-wrap gap-1 mb-0.5`,children:t.map(e=>(0,$.jsx)(`span`,{className:X(`inline-flex items-center px-1.5 py-0 typography-micro rounded font-medium`,e.isHead?`bg-[var(--chart-1)] text-[var(--primary-foreground)]`:e.isTag?`bg-[var(--chart-5)] text-[var(--primary-foreground)]`:`bg-[var(--interactive-hover)] text-[var(--foreground)]`),children:e.label},e.label))}):null})():null,(0,$.jsx)(`p`,{className:`typography-ui-label font-medium text-foreground line-clamp-1`,children:e.message}),(0,$.jsxs)(`div`,{className:`flex items-center gap-1 typography-meta text-muted-foreground`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-1 min-w-0 truncate`,children:[(0,$.jsx)(`span`,{className:`truncate min-w-[3ch]`,title:e.author_name,children:e.author_name}),(0,$.jsx)(`span`,{className:`shrink-0`,children:`·`}),(0,$.jsx)(`span`,{className:`truncate min-w-0`,title:Ml(e.date,m),children:Ml(e.date,m)})]}),(0,$.jsx)(`span`,{className:`shrink-0`,children:`·`}),(0,$.jsx)(`code`,{className:`shrink-0 font-mono`,children:e.hash.slice(0,8)}),(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(Sn,{variant:`ghost`,size:`sm`,className:`h-5 px-1 shrink-0`,onClick:t=>{t.stopPropagation(),c(e.hash)},children:(0,$.jsx)(Z,{name:`file-copy`,className:`size-3`})})}),(0,$.jsx)(Zr,{sideOffset:8,children:p(`gitView.history.copySha`)})]})]})]})]}),i&&(0,$.jsxs)(`div`,{className:`px-3 pb-2 pl-8 border-t border-border/40`,children:[h&&S?(0,$.jsxs)(`div`,{className:`flex items-center gap-2 py-2 border-b border-border/30 mb-2`,children:[(0,$.jsx)(`span`,{className:`typography-micro text-muted-foreground flex-1 min-w-0`,children:p(`gitView.history.actions.${S}Confirm`)}),(0,$.jsxs)(Sn,{variant:`destructive`,size:`xs`,className:`h-6 shrink-0`,disabled:g!==null,onClick:e=>{e.stopPropagation(),F()},children:[g===null?null:(0,$.jsx)(Z,{name:`loader-4`,className:`size-3 animate-spin mr-1`}),p(`gitView.history.actions.confirmButton`)]}),(0,$.jsx)(Sn,{variant:`ghost`,size:`xs`,className:`h-6 shrink-0`,disabled:g!==null,onClick:e=>{e.stopPropagation(),C(null)},children:p(`gitView.history.actions.cancelButton`)})]}):h?(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center gap-1.5 py-2 border-b border-border/30 mb-2`,children:[(0,$.jsx)(Sn,{variant:`outline`,size:`xs`,className:`h-6`,disabled:g!==null,onClick:e=>{e.stopPropagation(),C(`checkout`)},children:p(`gitView.history.actions.checkout`)}),v?(0,$.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,$.jsx)(`input`,{autoFocus:!0,value:b,onChange:e=>x(e.target.value),onKeyDown:e=>{e.key===`Enter`&&j(),e.key===`Escape`&&(y(!1),x(``))},placeholder:p(`gitView.history.actions.createBranchPlaceholder`),className:`h-6 text-xs px-2 rounded border border-border/60 bg-background min-w-0 w-32`}),(0,$.jsxs)(Sn,{variant:`outline`,size:`xs`,className:`h-6`,disabled:!b.trim()||g!==null,onClick:e=>{e.stopPropagation(),j()},children:[g===`createBranch`?(0,$.jsx)(Z,{name:`loader-4`,className:`size-3 animate-spin mr-1`}):null,p(`gitView.history.actions.createBranchConfirm`)]})]}):(0,$.jsx)(Sn,{variant:`outline`,size:`xs`,className:`h-6`,onClick:e=>{e.stopPropagation(),y(!0)},children:p(`gitView.history.actions.createBranch`)}),(0,$.jsx)(Sn,{variant:`outline`,size:`xs`,className:`h-6`,disabled:g!==null,onClick:e=>{e.stopPropagation(),C(`cherryPick`)},children:p(`gitView.history.actions.cherryPick`)}),(0,$.jsx)(Sn,{variant:`outline`,size:`xs`,className:`h-6`,disabled:g!==null,onClick:e=>{e.stopPropagation(),C(`revert`)},children:p(`gitView.history.actions.revert`)}),(0,$.jsxs)(Si,{children:[(0,$.jsx)(Oi,{asChild:!0,children:(0,$.jsxs)(Sn,{variant:`outline`,size:`xs`,className:`h-6`,disabled:g!==null,onClick:e=>e.stopPropagation(),children:[g===`reset`?(0,$.jsx)(Z,{name:`loader-4`,className:`size-3 animate-spin mr-1`}):null,p(`gitView.history.actions.reset`)]})}),(0,$.jsx)(Di,{align:`start`,className:`min-w-max`,children:[`soft`,`mixed`,`hard`].map(e=>(0,$.jsx)(ki,{disabled:g!==null,onSelect:t=>{t.stopPropagation(),C(`reset${e.charAt(0).toUpperCase()+e.slice(1)}`)},children:p(`gitView.history.actions.reset${e.charAt(0).toUpperCase()+e.slice(1)}`)},e))})]}),(0,$.jsx)(Sn,{variant:`outline`,size:`xs`,className:`h-6`,disabled:g!==null,onClick:e=>{e.stopPropagation(),C(`merge`)},children:p(`gitView.history.actions.merge`)}),(0,$.jsx)(Sn,{variant:`outline`,size:`xs`,className:`h-6`,disabled:g!==null,onClick:e=>{e.stopPropagation(),C(`rebase`)},children:p(`gitView.history.actions.rebase`)})]}):null,s?(0,$.jsxs)(`div`,{className:`flex items-center gap-2 py-2`,children:[(0,$.jsx)(Z,{name:`loader-4`,className:`size-4 animate-spin text-muted-foreground`}),(0,$.jsx)(`span`,{className:`typography-micro text-muted-foreground`,children:p(`gitView.history.loadingFiles`)})]}):o.length===0?(0,$.jsx)(`p`,{className:`typography-micro text-muted-foreground py-2`,children:p(`gitView.history.noFiles`)}):(0,$.jsx)(`ul`,{className:`space-y-0.5 py-2`,children:o.map(e=>(0,$.jsxs)(`li`,{children:[(0,$.jsxs)(`button`,{type:`button`,onClick:()=>z(e),className:X(`w-full flex items-center gap-2 typography-micro text-left cursor-pointer transition-colors rounded px-1`,w.has(e.path)?`bg-sidebar/90`:`hover:bg-sidebar/40`),children:[(0,$.jsx)(`span`,{className:X(`font-semibold w-3 text-center shrink-0`,Nl(e.changeType)),children:e.changeType}),(0,$.jsx)(`span`,{className:`truncate text-foreground min-w-0`,title:e.path,children:e.path}),!e.isBinary&&(0,$.jsxs)(`span`,{className:`shrink-0`,children:[(0,$.jsxs)(`span`,{style:{color:`var(--status-success)`},children:[`+`,e.insertions]}),(0,$.jsx)(`span`,{className:`text-muted-foreground mx-0.5`,children:`/`}),(0,$.jsxs)(`span`,{style:{color:`var(--status-error)`},children:[`-`,e.deletions]})]}),e.isBinary&&(0,$.jsx)(`span`,{className:`typography-micro text-muted-foreground shrink-0`,children:p(`gitView.history.binary`)}),(0,$.jsx)(Z,{name:w.has(e.path)?`arrow-down-s`:`arrow-right-s`,className:`size-3 shrink-0 text-muted-foreground`})]}),w.has(e.path)&&(0,$.jsx)(`div`,{className:`max-h-[400px] overflow-y-auto rounded border border-border/40 mx-2 mb-1`,"data-diff-virtual-root":!0,"data-diff-virtual-content":!0,children:e.changeType===`R`?(0,$.jsx)(`div`,{className:`px-3 py-2 text-sm text-muted-foreground`,children:p(`gitView.history.renamedNoDiff`)}):e.isBinary?(0,$.jsx)(`div`,{className:`px-3 py-2 text-sm text-muted-foreground`,children:p(`gitView.history.binaryNoDiff`)}):(()=>{let t=e.insertions+e.deletions;if(!O.has(e.path)&&t>Dl)return(0,$.jsxs)(`div`,{className:`flex flex-col items-start gap-1 px-3 py-2 text-sm text-muted-foreground`,children:[(0,$.jsx)(`div`,{className:`typography-ui-label font-semibold text-foreground`,children:p(`gitView.history.largeDiffTitle`,{count:t})}),(0,$.jsx)(`div`,{className:`typography-meta text-muted-foreground`,children:p(`gitView.history.largeDiffDescription`)}),(0,$.jsx)(Sn,{type:`button`,variant:`ghost`,size:`xs`,className:`h-6 px-0 text-primary hover:bg-transparent hover:underline`,onClick:()=>{k(t=>new Set(t).add(e.path)),R(e)},children:p(`gitView.history.renderDiffAnyway`)})]});let n=E.get(e.path);return n===`loading`||n===void 0?(0,$.jsx)(`div`,{className:`px-3 py-2 text-sm text-muted-foreground`,children:p(`gitView.history.loadingDiff`)}):n===`error`?(0,$.jsx)(`button`,{type:`button`,onClick:()=>z(e),className:`w-full text-left px-3 py-2 text-sm text-muted-foreground hover:bg-[var(--interactive-hover)] transition-colors`,children:p(`gitView.history.diffError`)}):(0,$.jsx)(ho,{original:n.original,modified:n.modified,language:Ta(e.path)||``,fileName:e.path,renderSideBySide:!1,layout:`inline`,enableComments:!1})})()})]},e.path))})]})]})}),Il=[`var(--chart-1)`,`var(--chart-2)`,`var(--chart-3)`,`var(--chart-4)`,`var(--chart-5)`,`var(--syntax-keyword)`,`var(--syntax-string)`,`var(--status-info)`];function Ll(e){return Il[e%Il.length]}function Rl(e){if(e.length===0)return[];let t=[],n=[];for(let r=0;r<e.length;r++){let i=e[r],a=[];for(let e=0;e<t.length;e++)t[e]===i.hash&&a.push(e);let o=a.length>0?a[0]:-1;if(o===-1){let e=t.indexOf(null);e===-1?(o=t.length,t.push(null)):o=e}let s=a.slice(1),c=Ll(o),l=t[o]===i.hash,u=i.parents.length>0;u?t[o]=i.parents[0]:t[o]=null;let d=[];for(let e=1;e<i.parents.length;e++){let n=i.parents[e],r=t.indexOf(n);if(r!==-1)d.push(r);else{let e=t.indexOf(null),r=e===-1?t.length:e;t[r]=n,r===t.length&&t.push(n),d.push(r)}}let f=[];l&&u?f.push({fromLane:o,toLane:o,color:c,type:`commit-lane`}):l&&!u?f.push({fromLane:o,toLane:o,color:c,type:`top-stub`}):!l&&u&&f.push({fromLane:o,toLane:o,color:c,type:`bottom-stub`});for(let e of s)f.push({fromLane:e,toLane:o,color:Ll(e),type:`merge-in`}),t[e]=null;for(let e of d)f.push({fromLane:o,toLane:e,color:Ll(e),type:`branch-out`});for(let e=0;e<t.length;e++)t[e]!==null&&e!==o&&(d.includes(e)||f.push({fromLane:e,toLane:e,color:Ll(e),type:`passing`}));n.push({commit:i,lane:o,color:c,connectors:f})}return n}var zl=[{labelKey:`gitView.history.logSize25`,value:25},{labelKey:`gitView.history.logSize50`,value:50},{labelKey:`gitView.history.logSize100`,value:100}],Bl=e=>{let t=(0,Ts.c)(84),{mode:n,log:r,isLogLoading:i,logMaxCount:a,onLogMaxCountChange:o,expandedCommitHashes:s,onToggleCommit:c,commitFilesMap:l,loadingCommitHashes:u,onCopyHash:d,directory:f,showHeader:p,contentMaxHeightClassName:m,branchDivider:h,onConflict:g,onActionSuccess:_}=e,v=n===void 0?`history`:n,y=p===void 0||p,b=m===void 0?`max-h-[50vh]`:m,x=h===void 0?null:h,{t:S}=Fe(),[C,w]=Q.useState(!0),T=v===`graph`,E;t[0]!==T||t[1]!==r?(E=T&&r?Rl(r.all):[],t[0]=T,t[1]=r,t[2]=E):E=t[2];let D=E,O;t[3]===D?O=t[4]:(O=Math.max(1,...D.map(Vl)),t[3]=D,t[4]=O);let k=O,A;t[5]===D?A=t[6]:(A=new Map(D.map(Hl)),t[5]=D,t[6]=A);let j=A;if(!r)return null;let M=x!==null&&x.insertBeforeIndex>0&&x.insertBeforeIndex<r.all.length,N=x!==null&&x.insertBeforeIndex===r.all.length,P=M||N,F;t[7]!==x||t[8]!==M||t[9]!==N||t[10]!==r.all?(F=M?r.all.slice(0,x.insertBeforeIndex):N?r.all:[],t[7]=x,t[8]=M,t[9]=N,t[10]=r.all,t[11]=F):F=t[11];let I=F,L;if(t[12]!==x||t[13]!==l||t[14]!==b||t[15]!==f||t[16]!==s||t[17]!==M||t[18]!==P||t[19]!==T||t[20]!==i||t[21]!==j||t[22]!==u||t[23]!==r.all||t[24]!==a||t[25]!==k||t[26]!==v||t[27]!==_||t[28]!==g||t[29]!==d||t[30]!==o||t[31]!==c||t[32]!==S||t[33]!==I){let e=M?r.all.slice(x.insertBeforeIndex):[],n;t[35]===x?.direction?n=t[36]:(n=x?.direction===`down`?(0,$.jsx)(Z,{name:`arrow-down-s`,className:`size-3.5`}):(0,$.jsx)(Z,{name:`arrow-up`,className:`size-3.5`}),t[35]=x?.direction,t[36]=n);let p=n,m;t[37]!==l||t[38]!==f||t[39]!==s||t[40]!==T||t[41]!==j||t[42]!==u||t[43]!==k||t[44]!==v||t[45]!==_||t[46]!==g||t[47]!==d||t[48]!==c?(m=e=>(0,$.jsx)(`ul`,{className:`divide-y divide-border/60`,children:e.map(e=>(0,$.jsx)(Fl,{entry:e,mode:v,laned:T?j.get(e.hash):void 0,totalLanes:T?k:void 0,isExpanded:s.has(e.hash),onToggle:()=>c(e.hash),files:l.get(e.hash)??[],isLoadingFiles:u.has(e.hash),onCopyHash:d,directory:f,onConflict:g,onActionSuccess:_},e.hash))}),t[37]=l,t[38]=f,t[39]=s,t[40]=T,t[41]=j,t[42]=u,t[43]=k,t[44]=v,t[45]=_,t[46]=g,t[47]=d,t[48]=c,t[49]=m):m=t[49];let h=m,y;t[50]!==i||t[51]!==r.all.length||t[52]!==a||t[53]!==o||t[54]!==S?(y=r.all.length>=a?(0,$.jsx)(`div`,{className:`flex justify-center py-2 border-t border-border/40`,children:(0,$.jsx)(Sn,{type:`button`,variant:`ghost`,size:`xs`,onClick:()=>o(a+25),disabled:i,className:`px-3 text-muted-foreground hover:text-foreground`,children:i?(0,$.jsxs)(`span`,{className:`flex items-center gap-1`,children:[(0,$.jsx)(Z,{name:`loader-4`,className:`size-3 animate-spin`}),S(`gitView.history.loadingMore`)]}):S(`gitView.history.loadMore`)})}):null,t[50]=i,t[51]=r.all.length,t[52]=a,t[53]=o,t[54]=S,t[55]=y):y=t[55];let C=y;L=(0,$.jsx)(Nr,{outerClassName:`min-h-0 ${b}`,className:`h-full w-full`,children:r.all.length===0?(0,$.jsx)(`div`,{className:`flex h-full items-center justify-center p-4`,children:(0,$.jsx)(`p`,{className:`typography-ui-label text-muted-foreground`,children:S(`gitView.history.noCommits`)})}):P&&x?(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`div`,{className:`flex flex-col gap-0`,children:[I.length>0?(0,$.jsx)(`div`,{className:`rounded-xl border border-border/60 bg-background/70 overflow-hidden`,children:h(I)}):null,(0,$.jsxs)(`div`,{className:`flex items-center gap-2 px-3 py-1.5`,"aria-hidden":!0,children:[(0,$.jsx)(`span`,{className:`h-px flex-1 bg-border/60`}),(0,$.jsxs)(`span`,{className:`inline-flex max-w-[80%] items-center gap-1 typography-micro text-muted-foreground`,children:[(0,$.jsx)(`span`,{className:`truncate`,title:x.branchName,children:x.branchName}),p]}),(0,$.jsx)(`span`,{className:`h-px flex-1 bg-border/60`})]}),e.length>0?(0,$.jsx)(`div`,{className:`rounded-xl border border-border/60 bg-background/70 overflow-hidden`,children:h(e)}):null]}),C]}):(0,$.jsxs)($.Fragment,{children:[h(r.all),C]})}),t[12]=x,t[13]=l,t[14]=b,t[15]=f,t[16]=s,t[17]=M,t[18]=P,t[19]=T,t[20]=i,t[21]=j,t[22]=u,t[23]=r.all,t[24]=a,t[25]=k,t[26]=v,t[27]=_,t[28]=g,t[29]=d,t[30]=o,t[31]=c,t[32]=S,t[33]=I,t[34]=L}else L=t[34];let R=L;if(!y){if(P){let e;return t[56]===R?e=t[57]:(e=(0,$.jsx)(`section`,{className:`h-full min-h-0`,children:R}),t[56]=R,t[57]=e),e}let e;return t[58]===R?e=t[59]:(e=(0,$.jsx)(`section`,{className:`h-full min-h-0 rounded-xl border border-border/60 bg-background/70 overflow-hidden`,children:R}),t[58]=R,t[59]=e),e}let z;t[60]===S?z=t[61]:(z=S(`gitView.history.title`),t[60]=S,t[61]=z);let B;t[62]===z?B=t[63]:(B=(0,$.jsx)(`h3`,{className:`typography-ui-header font-semibold text-foreground`,children:z}),t[62]=z,t[63]=B);let V;t[64]!==i||t[65]!==C||t[66]!==a||t[67]!==o||t[68]!==S?(V=C&&(0,$.jsx)(`div`,{onClick:Ul,onPointerDown:Wl,children:(0,$.jsxs)(zr,{value:String(a),onValueChange:e=>o(Number(e)),disabled:i,children:[(0,$.jsx)(Jr,{size:`sm`,className:`data-[size=sm]:h-auto h-7 min-h-7 w-auto justify-between px-2 py-0`,disabled:i,children:(0,$.jsx)(Fr,{placeholder:S(`gitView.history.commitsPlaceholder`)})}),(0,$.jsx)(Rr,{children:zl.map(e=>(0,$.jsx)(qr,{value:String(e.value),children:S(e.labelKey)},e.value))})]})}),t[64]=i,t[65]=C,t[66]=a,t[67]=o,t[68]=S,t[69]=V):V=t[69];let H;t[70]===C?H=t[71]:(H=C?(0,$.jsx)(Z,{name:`arrow-up-s`,className:`size-4 text-muted-foreground`}):(0,$.jsx)(Z,{name:`arrow-down-s`,className:`size-4 text-muted-foreground`}),t[70]=C,t[71]=H);let U;t[72]!==V||t[73]!==H?(U=(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[V,H]}),t[72]=V,t[73]=H,t[74]=U):U=t[74];let W;t[75]!==B||t[76]!==U?(W=(0,$.jsxs)(ds,{className:`flex w-full items-center justify-between px-3 h-10 hover:bg-transparent`,children:[B,U]}),t[75]=B,t[76]=U,t[77]=W):W=t[77];let ee;t[78]===R?ee=t[79]:(ee=(0,$.jsx)(us,{children:R}),t[78]=R,t[79]=ee);let G;return t[80]!==C||t[81]!==W||t[82]!==ee?(G=(0,$.jsxs)(fs,{open:C,onOpenChange:w,className:`rounded-xl border border-border/60 bg-background/70 overflow-hidden`,children:[W,ee]}),t[80]=C,t[81]=W,t[82]=ee,t[83]=G):G=t[83],G};function Vl(e){return e.lane+1}function Hl(e){return[e.commit.hash,e]}function Ul(e){return e.stopPropagation()}function Wl(e){return e.stopPropagation()}var Gl=e=>{let t=(0,Ts.c)(150),{open:n,onOpenChange:r,conflictFiles:i,directory:a,operation:o,onAbort:s,onClearState:c}=e,l;t[0]===i?l=t[1]:(l=i===void 0?[]:i,t[0]=i,t[1]=l);let d=l,{t:f}=Fe(),p=Ft(Kl),m=Ft(ql),h=Pt(Jl),g=Pt(Yl),_=u(Xl),[v,y]=Q.useState(!1),[b,x]=Q.useState(null),[S,C]=Q.useState(null),w,T;t[2]!==a||t[3]!==n||t[4]!==f?(w=()=>{!n||!a||(y(!0),C(null),x(null),jn(a).then(e=>{x(e)}).catch(e=>{let t=e instanceof Error?e.message:f(`gitView.conflict.loadFailed`);C(t)}).finally(()=>{y(!1)}))},T=[n,a,f],t[2]=a,t[3]=n,t[4]=f,t[5]=w,t[6]=T):(w=t[5],T=t[6]),Q.useEffect(w,T);let E;t[7]!==b||t[8]!==a||t[9]!==o?(E=async()=>{if(!b)return null;let e=o===`merge`?`merge`:`rebase`,t=b.headInfo||(o===`merge`?`MERGE_HEAD`:`REBASE_HEAD`),n=o===`merge`?`git commit --no-edit`:`git rebase --continue`;return{visibleText:await qt(`git.conflict.resolve.visible`,{operation_label:e,head_ref:t}),instructionsText:await qt(`git.conflict.resolve.instructions`,{operation_label:e,directory:a,operation:o,head_info:b.headInfo||`N/A`,continue_cmd:n}),payloadText:`${e} conflict context (JSON)\n${JSON.stringify({directory:a,operation:b.operation,headInfo:b.headInfo,statusPorcelain:b.statusPorcelain,unmergedFiles:b.unmergedFiles,diff:b.diff},null,2)}`}},t[7]=b,t[8]=a,t[9]=o,t[10]=E):E=t[10];let D=E,O;t[11]!==s||t[12]!==r?(O=()=>{s(),r(!1)},t[11]=s,t[12]=r,t[13]=O):O=t[13];let k=O,A;t[14]!==c||t[15]!==r?(A=()=>{c?.(),r(!1)},t[14]=c,t[15]=r,t[16]=A):A=t[16];let j=A,M;t[17]!==D||t[18]!==m||t[19]!==c||t[20]!==r||t[21]!==_||t[22]!==h||t[23]!==g||t[24]!==f?(M=async()=>{let e=await D();if(!e){Y.error(f(`gitView.conflict.noDetailsAvailable`));return}if(!m){Y.error(f(`gitView.conflict.noActiveSession`),{description:f(`gitView.conflict.noActiveSessionDescription`)});return}h(e.visibleText,`replace`),g([{text:e.instructionsText,synthetic:!0},{text:e.payloadText,synthetic:!0}]),_(`chat`),c?.(),r(!1)},t[17]=D,t[18]=m,t[19]=c,t[20]=r,t[21]=_,t[22]=h,t[23]=g,t[24]=f,t[25]=M):M=t[25];let N=M,P;t[26]!==D||t[27]!==a||t[28]!==c||t[29]!==r||t[30]!==p||t[31]!==_||t[32]!==f?(P=async()=>{let e=await D();if(!e){Y.error(f(`gitView.conflict.noDetailsAvailable`));return}p({directoryOverride:a,initialPrompt:e.visibleText,syntheticParts:[{text:e.instructionsText,synthetic:!0},{text:e.payloadText,synthetic:!0}]}),_(`chat`),c?.(),r(!1)},t[26]=D,t[27]=a,t[28]=c,t[29]=r,t[30]=p,t[31]=_,t[32]=f,t[33]=P):P=t[33];let F=P,I,L,R,z,B,V,H,U,W,ee,G,te,K,ne,re,ie,ae,oe,se,q,ce,le;if(t[34]!==b||t[35]!==d||t[36]!==m||t[37]!==k||t[38]!==j||t[39]!==N||t[40]!==F||t[41]!==v||t[42]!==S||t[43]!==r||t[44]!==n||t[45]!==o||t[46]!==f){let e=f(o===`merge`?`gitView.operation.merge`:`gitView.operation.rebase`),i=b?.unmergedFiles||d;R=mn,ce=n,le=r,L=dn,q=`max-w-md w-[calc(100vw-2rem)]`,ne=`flex flex-col gap-4 overflow-hidden`;let a;t[69]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,$.jsx)(Z,{name:`alert`,className:`size-5 shrink-0 text-[var(--status-warning)]`}),t[69]=a):a=t[69];let s=(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[a,(0,$.jsx)(fn,{children:f(`gitView.conflict.detectedTitle`,{operation:e})})]}),c;t[70]!==o||t[71]!==f?(c=f(`gitView.conflict.detectedDescription`,{operation:o}),t[70]=o,t[71]=f,t[72]=c):c=t[72];let l;t[73]===c?l=t[74]:(l=(0,$.jsx)(pn,{children:c}),t[73]=c,t[74]=l),t[75]!==s||t[76]!==l?(re=(0,$.jsxs)(ln,{children:[s,l]}),t[75]=s,t[76]=l,t[77]=re):re=t[77],t[78]!==v||t[79]!==f?(ie=v&&(0,$.jsxs)(`div`,{className:`flex items-center justify-center gap-2 py-4 text-muted-foreground`,children:[(0,$.jsx)(Z,{name:`loader-4`,className:`size-4 animate-spin`}),(0,$.jsx)(`span`,{className:`typography-meta`,children:f(`gitView.conflict.loading`)})]}),t[78]=v,t[79]=f,t[80]=ie):ie=t[80],t[81]!==S||t[82]!==f?(ae=S&&(0,$.jsx)(`div`,{className:`rounded-lg bg-[var(--status-error-bg)] p-3 text-[var(--status-error)] typography-meta break-words`,children:f(`gitView.conflict.errorLoadingDetails`,{message:S})}),t[81]=S,t[82]=f,t[83]=ae):ae=t[83],t[84]!==i||t[85]!==f?(oe=i.length>0&&(0,$.jsxs)(`div`,{className:`space-y-2 overflow-hidden`,children:[(0,$.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,$.jsx)(`p`,{className:`typography-meta text-muted-foreground`,children:f(`gitView.conflict.conflictedFiles`)}),(0,$.jsx)(`span`,{className:`typography-micro px-1.5 py-0.5 rounded bg-[var(--surface-elevated)] text-muted-foreground`,children:i.length})]}),(0,$.jsx)(`div`,{className:`bg-[var(--surface-elevated)] rounded-lg p-3 max-h-40 overflow-y-auto overflow-x-hidden`,children:(0,$.jsx)(`ul`,{className:`space-y-1`,children:i.map(Zl)})})]}),t[84]=i,t[85]=f,t[86]=oe):oe=t[86],t[87]!==b||t[88]!==f?(se=b?.headInfo&&(0,$.jsxs)(`div`,{className:`space-y-1 overflow-hidden`,children:[(0,$.jsx)(`p`,{className:`typography-meta text-muted-foreground`,children:f(`gitView.conflict.headInfo`)}),(0,$.jsx)(`div`,{className:`typography-micro text-foreground font-mono bg-[var(--surface-elevated)] rounded-lg p-3 max-h-24 overflow-y-auto break-words whitespace-pre-wrap`,children:b.headInfo})]}),t[87]=b,t[88]=f,t[89]=se):se=t[89],G=`flex flex-col gap-2 pt-2`;let u;t[90]===F?u=t[91]:(u=()=>{F()},t[90]=F,t[91]=u);let p=v||!b,h;t[92]===v?h=t[93]:(h=v?(0,$.jsx)(Z,{name:`loader-4`,className:`size-4 animate-spin`}):(0,$.jsx)(Z,{name:`add`,className:`size-4`}),t[92]=v,t[93]=h);let g;t[94]===f?g=t[95]:(g=f(`gitView.conflict.resolveNewSession`),t[94]=f,t[95]=g),t[96]!==u||t[97]!==p||t[98]!==h||t[99]!==g?(te=(0,$.jsxs)(Sn,{variant:`default`,onClick:u,disabled:p,className:`w-full gap-2`,children:[h,g]}),t[96]=u,t[97]=p,t[98]=h,t[99]=g,t[100]=te):te=t[100];let _;t[101]===N?_=t[102]:(_=()=>void N(),t[101]=N,t[102]=_);let y=v||!b||!m,x;t[103]===v?x=t[104]:(x=v?(0,$.jsx)(Z,{name:`loader-4`,className:`size-4 animate-spin`}):(0,$.jsx)(Z,{name:`chat-1`,className:`size-4`}),t[103]=v,t[104]=x);let C;t[105]===f?C=t[106]:(C=f(`gitView.conflict.resolveCurrentSession`),t[105]=f,t[106]=C),t[107]!==_||t[108]!==y||t[109]!==x||t[110]!==C?(K=(0,$.jsxs)(Sn,{variant:`outline`,onClick:_,disabled:y,className:`w-full gap-2`,children:[x,C]}),t[107]=_,t[108]=y,t[109]=x,t[110]=C,t[111]=K):K=t[111],W=`flex gap-2 pt-1`;let w;t[112]===f?w=t[113]:(w=f(`gitView.conflict.continueLater`),t[112]=f,t[113]=w),t[114]!==j||t[115]!==w?(ee=(0,$.jsx)(Sn,{variant:`ghost`,size:`sm`,onClick:j,className:`flex-1`,children:w}),t[114]=j,t[115]=w,t[116]=ee):ee=t[116],I=Sn,z=`destructive`,B=`sm`,V=k,H=`flex-1`,U=f(`gitView.conflict.abortOperation`,{operation:e}),t[34]=b,t[35]=d,t[36]=m,t[37]=k,t[38]=j,t[39]=N,t[40]=F,t[41]=v,t[42]=S,t[43]=r,t[44]=n,t[45]=o,t[46]=f,t[47]=I,t[48]=L,t[49]=R,t[50]=z,t[51]=B,t[52]=V,t[53]=H,t[54]=U,t[55]=W,t[56]=ee,t[57]=G,t[58]=te,t[59]=K,t[60]=ne,t[61]=re,t[62]=ie,t[63]=ae,t[64]=oe,t[65]=se,t[66]=q,t[67]=ce,t[68]=le}else I=t[47],L=t[48],R=t[49],z=t[50],B=t[51],V=t[52],H=t[53],U=t[54],W=t[55],ee=t[56],G=t[57],te=t[58],K=t[59],ne=t[60],re=t[61],ie=t[62],ae=t[63],oe=t[64],se=t[65],q=t[66],ce=t[67],le=t[68];let ue;t[117]!==I||t[118]!==z||t[119]!==B||t[120]!==V||t[121]!==H||t[122]!==U?(ue=(0,$.jsx)(I,{variant:z,size:B,onClick:V,className:H,children:U}),t[117]=I,t[118]=z,t[119]=B,t[120]=V,t[121]=H,t[122]=U,t[123]=ue):ue=t[123];let de;t[124]!==W||t[125]!==ee||t[126]!==ue?(de=(0,$.jsxs)(`div`,{className:W,children:[ee,ue]}),t[124]=W,t[125]=ee,t[126]=ue,t[127]=de):de=t[127];let fe;t[128]!==G||t[129]!==te||t[130]!==K||t[131]!==de?(fe=(0,$.jsxs)(`div`,{className:G,children:[te,K,de]}),t[128]=G,t[129]=te,t[130]=K,t[131]=de,t[132]=fe):fe=t[132];let pe;t[133]!==ne||t[134]!==re||t[135]!==ie||t[136]!==ae||t[137]!==oe||t[138]!==se||t[139]!==fe?(pe=(0,$.jsxs)(`div`,{className:ne,children:[re,ie,ae,oe,se,fe]}),t[133]=ne,t[134]=re,t[135]=ie,t[136]=ae,t[137]=oe,t[138]=se,t[139]=fe,t[140]=pe):pe=t[140];let me;t[141]!==L||t[142]!==q||t[143]!==pe?(me=(0,$.jsx)(L,{className:q,children:pe}),t[141]=L,t[142]=q,t[143]=pe,t[144]=me):me=t[144];let he;return t[145]!==R||t[146]!==ce||t[147]!==le||t[148]!==me?(he=(0,$.jsx)(R,{open:ce,onOpenChange:le,children:me}),t[145]=R,t[146]=ce,t[147]=le,t[148]=me,t[149]=he):he=t[149],he};function Kl(e){return e.openNewSessionDraft}function ql(e){return e.currentSessionId}function Jl(e){return e.setPendingInputText}function Yl(e){return e.setPendingSyntheticParts}function Xl(e){return e.setActiveMainTab}function Zl(e){return(0,$.jsx)(`li`,{className:`typography-micro text-foreground font-mono truncate block`,title:e,children:e},e)}var Ql=({mergeInProgress:e,rebaseInProgress:t,onContinue:n,onAbort:r,onResolveWithAI:i,hasUnresolvedConflicts:a=!1,isLoading:o=!1})=>{let{t:s}=Fe(),[c,l]=Q.useState(null),u=e&&e.head,d=t&&(t.headName||t.onto),f=u?`merge`:d?`rebase`:null;if(!f)return null;let p=async()=>{l(`continue`);try{await n()}finally{l(null)}},m=async()=>{l(`abort`);try{await r()}finally{l(null)}},h=c!==null,g=s(f===`merge`?`gitView.operation.merge`:`gitView.operation.rebase`),_=f===`merge`?`git-merge`:`git-branch`,v=``;return e?v=e.message?s(`gitView.operation.mergingMessage`,{message:e.message}):s(`gitView.operation.mergeInProgressWithHead`,{head:e.head}):t&&(v=t.headName?s(`gitView.operation.rebasingOnto`,{headName:t.headName,onto:t.onto||``}):s(`gitView.operation.rebaseInProgress`)),(0,$.jsx)(`div`,{className:`bg-[var(--status-warning-bg)] border border-[var(--status-warning)] rounded-lg p-3 mx-3 mt-3`,children:(0,$.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,$.jsxs)(`div`,{className:`flex items-start gap-2 min-w-0`,children:[(0,$.jsx)(Z,{name:_,className:`size-4 text-[var(--status-warning)] shrink-0`}),(0,$.jsxs)(`div`,{className:`min-w-0`,children:[(0,$.jsx)(`p`,{className:`typography-label text-[var(--status-warning)]`,children:s(`gitView.operation.inProgressTitle`,{operation:g})}),v&&(0,$.jsx)(`p`,{className:`typography-micro text-muted-foreground truncate`,children:v})]})]}),(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[a&&i&&(0,$.jsxs)(Sn,{variant:`outline`,size:`sm`,onClick:i,disabled:h||o,className:`gap-1.5`,children:[(0,$.jsx)(Z,{name:`sparkling`,className:`size-4`}),s(`gitView.operation.resolveWithAi`)]}),c!==`continue`&&(0,$.jsxs)(Sn,{variant:`ghost`,size:`sm`,onClick:m,disabled:h||o,className:`gap-1.5`,children:[c===`abort`?(0,$.jsx)(Z,{name:`loader-4`,className:`size-4 animate-spin`}):(0,$.jsx)(Z,{name:`close`,className:`size-4`}),s(`gitView.operation.abort`)]}),!a&&(0,$.jsxs)(Sn,{variant:`default`,size:`sm`,onClick:p,disabled:h||o,className:`gap-1.5`,children:[c===`continue`?(0,$.jsx)(Z,{name:`loader-4`,className:`size-4 animate-spin`}):(0,$.jsx)(Z,{name:`check`,className:`size-4`}),s(`gitView.operation.continue`)]})]}),a&&(0,$.jsx)(`p`,{className:`typography-micro text-[var(--status-warning)]`,children:s(`gitView.operation.resolveConflictsHint`)})]})})},$l=({runMutation:e,onMutationComplete:t,onMutationError:n,onPathsComplete:r,scheduleFlush:i})=>{let a=[],o=!1;return{enqueue:e=>{let t=a[a.length-1];if(t?.directory===e.directory&&t.direction===e.direction){e.paths.forEach(e=>t.paths.add(e));return}a.push(e)},flush:()=>{if(o)return;let s=a.shift();if(!s)return;o=!0;let c={directory:s.directory,direction:s.direction,paths:Array.from(s.paths),rollback:s.rollback};(async()=>{try{await e(c),t(c)}catch(e){n(c,e)}finally{r(c.paths),o=!1,a.length>0&&i()}})()},clear:()=>{a.length=0},size:()=>a.length,isRunning:()=>o}},eu=15e3,tu=40,nu=20,ru={feat:`:sparkles:`,feature:`:sparkles:`,fix:`:bug:`,bug:`:bug:`,hotfix:`:ambulance:`,docs:`:memo:`,documentation:`:memo:`,style:`:lipstick:`,refactor:`:recycle:`,perf:`:zap:`,performance:`:zap:`,test:`:white_check_mark:`,tests:`:white_check_mark:`,build:`:construction_worker:`,ci:`:green_heart:`,chore:`:wrench:`,revert:`:rewind:`,wip:`:construction:`,security:`:lock:`,release:`:bookmark:`,merge:`:twisted_rightwards_arrows:`,mv:`:truck:`,move:`:truck:`,rename:`:truck:`,remove:`:fire:`,delete:`:fire:`,add:`:sparkles:`,create:`:sparkles:`,implement:`:sparkles:`,update:`:recycle:`,improve:`:zap:`,optimize:`:zap:`,upgrade:`:arrow_up:`,downgrade:`:arrow_down:`,deploy:`:rocket:`,init:`:tada:`,initial:`:tada:`},iu=(e,t)=>{let n=e.toLowerCase(),r=n.match(/^([a-z]+)(?:\(.*\))?!?:/);if(r){let e=ru[r[1]];if(e)return t.find(t=>t.code===e)||null}let i=ru[n.split(` `)[0]];return i&&t.find(e=>e.code===i)||null},au=20,ou=new Map,su=(e,t)=>{if(ou.delete(e),ou.set(e,t),ou.size>au){let e=ou.keys().next().value;e!==void 0&&ou.delete(e)}},cu=e=>(e||``).replace(/\\/g,`/`).replace(/\/+$/,``),lu=e=>{let t=e.index?.trim();return!!(t&&t!==`?`)},uu=e=>{let t=e.working_dir?.trim(),n=e.index?.trim();return!!(t||n===`?`)},du=({isActive:e})=>{let{t}=Fe(),{git:n}=Xi(),r=Ea(),[i,a]=Q.useState(null),[o,s]=Q.useState(!1),c=Ft(e=>e.currentSessionId),l=Ft(e=>e.newSessionDraft),d=Ft(e=>e.setDraftBootstrapPendingDirectory),f=Ft(e=>e.worktreeMetadata),p=Ft(e=>e.availableWorktrees),m=cu(r),h=Q.useMemo(()=>{if(!m)return;let e=p.find(e=>cu(e.path)===m);if(e)return e;for(let e of f.values())if(cu(e.path)===m)return e},[p,m,f]),g=Q.useMemo(()=>{if(c)return f.get(c)??h;if(l?.open)return h},[c,h,l?.open,f]),_=sa(r??null),v=ca(r??null),y=gt(e=>c?e.getAttachment(c):void 0),b=y?on(y):[],x=y&&!y.degraded&&!y.legacy?y.worktreeRoot??void 0:void 0,S=_l(r,g,v?.current??void 0),C=aa(r??null),w=ea(r??null),T=ra(r??null),E=ia(r??null),{setActiveDirectory:D,fetchAll:O,ensureAll:k,fetchStatus:A,fetchBranches:j,fetchLog:M,setLogMaxCount:N,prefetchDiffs:P,moveStatusPathsOptimistically:F,restoreStatus:I,bumpIndexRevision:L}=ta(ie(e=>({setActiveDirectory:e.setActiveDirectory,fetchAll:e.fetchAll,ensureAll:e.ensureAll,fetchStatus:e.fetchStatus,fetchBranches:e.fetchBranches,fetchLog:e.fetchLog,setLogMaxCount:e.setLogMaxCount,prefetchDiffs:e.prefetchDiffs,moveStatusPathsOptimistically:e.moveStatusPathsOptimistically,restoreStatus:e.restoreStatus,bumpIndexRevision:e.bumpIndexRevision}))),R=u(e=>e.isMobile),z=u(e=>e.openContextFileDiff),B=u(e=>e.navigateToDiff),V=u(e=>e.setRightSidebarOpen),H=Q.useRef(null),U=Q.useRef(null),W=Q.useRef(null),ee=Q.useRef(null),G=Q.useRef(!0);Q.useEffect(()=>()=>{G.current=!1},[]);let te=Q.useCallback(()=>{U.current!==null&&(window.clearTimeout(U.current),U.current=null)},[]),K=Q.useCallback(e=>{te(),U.current=window.setTimeout(()=>{U.current=null,cu(e)===cu(r)&&A(e,n,{silent:!0})},eu)},[te,r,A,n]);Q.useEffect(()=>te,[te]);let ne=Q.useCallback(()=>{W.current!==null&&(window.clearTimeout(W.current),W.current=null)},[]),re=Q.useCallback(()=>{W.current===null&&(W.current=window.setTimeout(()=>{W.current=null,ee.current?.()},0))},[]),ae=Q.useCallback(async(e,t,r)=>{if(t===`stage`){if(n.stageGitFiles){await n.stageGitFiles(e,r);return}await Promise.all(r.map(t=>n.stageGitFile(e,t)));return}if(n.unstageGitFiles){await n.unstageGitFiles(e,r);return}await Promise.all(r.map(t=>n.unstageGitFile(e,t)))},[n]),oe=Q.useMemo(()=>$l({runMutation:({directory:e,direction:t,paths:n})=>ae(e,t,n),onMutationComplete:({directory:e})=>{L(e),K(e)},onMutationError:({directory:e,direction:n,rollback:r},i)=>{r?.(),L(e),K(e);let a=t(n===`stage`?`gitView.toast.stageFileFailed`:`gitView.toast.unstageFileFailed`);Y.error(i instanceof Error?i.message:a)},onPathsComplete:e=>{Re(t=>{let n=new Set(t);return e.forEach(e=>n.delete(e)),n})},scheduleFlush:re}),[L,ae,re,K,t]);Q.useEffect(()=>(ee.current=oe.flush,()=>{ee.current=null}),[oe]),Q.useEffect(()=>()=>oe.clear(),[oe]),Q.useEffect(()=>ne,[ne]),Q.useEffect(()=>{if(!e)return;if(!r){a(null),s(!1);return}let t=!1,n=Qe(r);n&&a(n.status);let i=dt((e,n)=>{t||cu(e)===cu(r)&&a(n.status)});return Vn(r).then(e=>{if(t)return;lt(r,e);let n=Qe(r);a(n?.status??e.status)}).catch(()=>{!t&&!Qe(r)&&a(null)}),()=>{t=!0,i()}},[e,r]),Q.useEffect(()=>{let e=H.current;H.current=i,!(!r||!n)&&(e===`pending`&&i===`ready`&&(s(!0),O(r,n).finally(()=>{window.setTimeout(()=>{s(!1)},1200)})),i===`failed`&&(d(null),s(!1)))},[r,O,n,d,i]);let se=cu(l?.bootstrapPendingDirectory??null),q=!!(r&&se&&se===cu(r)),ce=!!(r&&(i===`pending`||q))||o,le=Q.useMemo(()=>r?ou.get(r)??null:null,[r]),ue=Zt(e=>e.settingsGitmojiEnabled),[de,fe]=Q.useState(null),{gitmojis:pe}=hl(ue);Q.useEffect(()=>{let e=x||S?.projectDirectory;if(!e){fe(null);return}let t=!1;return Gr(e).then(e=>{if(t)return;let n=e.trim();fe(n&&n!==`HEAD`?n:null)}).catch(()=>{t||fe(null)}),()=>{t=!0}},[x,S?.projectDirectory]);let[me,he]=Q.useState(le?.commitMessage??``),[ge,_e]=Q.useState([]),[ve,ye]=Q.useState(!1),be=qo(v)&&!ve,[xe,Se]=Q.useState(!1),Ce=Q.useRef(null),[we,Te]=Q.useState(null),[Ee,De]=Q.useState(!1),[Oe,ke]=Q.useState(null),[Ae,je]=Q.useState(25),{triggerFireworks:Me}=rl(),[Ne,Pe]=Q.useState(new Set),[Ie,Re]=Q.useState(new Set),[ze,Ve]=Q.useState(!1),[He,Ue]=Q.useState(!1),[We,Ge]=Q.useState(le?.generatedHighlights??[]),Ke=Ie.size>0||oe.size()>0||oe.isRunning(),qe=Q.useCallback(()=>{let e=Ce.current;e&&requestAnimationFrame(()=>{requestAnimationFrame(()=>{e.scrollTo({top:e.scrollHeight,behavior:`smooth`})})})},[]),Je=Q.useCallback(()=>{Ge([])},[]),[Ye,Xe]=Q.useState(new Set),[J,Ze]=Q.useState(new Map),[$e,et]=Q.useState(new Set),tt=Q.useRef(J),nt=Q.useRef($e),[rt,it]=Q.useState(null),[at,ot]=Q.useState(null),[st,ct]=Q.useState(``),[ut,ft]=Q.useState(null),[pt,mt]=Q.useState([]),[ht,_t]=Q.useState(!1),[vt,yt]=Q.useState([]),[bt,xt]=Q.useState(`merge`),[St,Ct]=Q.useState(null),[wt,Tt]=Q.useState(!1),[Et,Dt]=Q.useState(100),Ot=Q.useMemo(()=>c?`openchamber.conflict:${c}`:null,[c]),kt=Q.useCallback((e,t,n)=>{if(!Ot||typeof window>`u`)return;let r={directory:e,conflictFiles:t,operation:n};window.localStorage.setItem(Ot,JSON.stringify(r))},[Ot]),At=Q.useCallback(()=>{!Ot||typeof window>`u`||window.localStorage.removeItem(Ot)},[Ot]);Q.useEffect(()=>{if(!Ot||typeof window>`u`||!r)return;let e=window.localStorage.getItem(Ot);if(e)try{let t=JSON.parse(e);if(t.directory!==r){window.localStorage.removeItem(Ot);return}yt(t.conflictFiles??[]),xt(t.operation??`merge`),_t(!0)}catch{window.localStorage.removeItem(Ot)}},[Ot,r]);let jt=Q.useCallback(e=>{Le(e).then(e=>{if(e.ok){Y.success(t(`gitView.toast.commitHashCopied`));return}Y.error(t(`gitView.toast.copyFailed`))})},[t]),Mt=Q.useCallback(e=>{Xe(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})},[]);Q.useEffect(()=>{tt.current=J},[J]),Q.useEffect(()=>{nt.current=$e},[$e]),Q.useEffect(()=>{if(!r||!n)return;let e=Array.from(Ye).filter(e=>!tt.current.has(e)&&!nt.current.has(e));if(e.length===0)return;let t=!1;return et(t=>{let n=new Set(t);for(let t of e)n.add(t);return nt.current=n,n}),Promise.all(e.map(e=>n.getCommitFiles(r,e).then(t=>({hash:e,files:t.files})).catch(t=>(console.error(`Failed to fetch commit files:`,t),{hash:e,files:[]})))).then(e=>{t||(Ze(t=>{let n=new Map(t);for(let{hash:t,files:r}of e)n.set(t,r);return tt.current=n,n}),et(t=>{let n=new Set(t);for(let{hash:t}of e)n.delete(t);return nt.current=n,n}))}),()=>{t=!0,et(t=>{let n=!1,r=new Set(t);for(let t of e)r.delete(t)&&(n=!0);return n?(nt.current=r,r):t})}},[Ye,r,n]),Q.useEffect(()=>{r&&su(r,{directory:r,commitMessage:me,generatedHighlights:We})},[me,r,We]),Q.useEffect(()=>{if(!e)return;if(!r||!n?.getRemoteUrl){ot(null);return}let t=!1;return n.getRemoteUrl(r).then(e=>{t||ot(e)}).catch(()=>{t||ot(null)}),()=>{t=!0}},[e,r,n]);let Nt=Q.useCallback(async()=>{if(!r||!n?.getRemotes){mt([]);return}try{let e=await n.getRemotes(r);G.current&&mt(e)}catch{G.current&&mt([])}},[r,n]);Q.useEffect(()=>{e&&Nt()},[e,Nt]),Q.useEffect(()=>{e&&r&&(D(r),k(r,n))},[e,r,D,k,n]),Q.useEffect(()=>{if(e&&r)return Be.onGitRefreshHint(e=>{cu(e.directory)===cu(r)&&A(r,n)})},[e,r,A,n]);let Pt=Q.useCallback(async(e=!0)=>{if(r)try{await Promise.all([A(r,n),j(r,n,{force:!0})])}catch(n){if(e){let e=n instanceof Error?n.message:t(`gitView.toast.refreshRepositoryFailed`);Y.error(e)}}},[r,n,A,j,t]),It=Q.useCallback(async()=>{r&&await M(r,n,Ae)},[r,n,M,Ae]),Lt=Q.useMemo(()=>!v||be?[]:[...v.files??[]].sort((e,t)=>e.path.localeCompare(t.path)),[v,be]),Rt=Q.useMemo(()=>Lt.filter(lu),[Lt]),zt=Q.useMemo(()=>Lt.filter(uu),[Lt]),{deferredStagedCount:Bt,deferredUnstagedCount:Vt}=Q.useMemo(()=>{if(!be||!v)return{deferredStagedCount:0,deferredUnstagedCount:0};let e=0,t=0;for(let n of v.files??[])lu(n)&&(e+=1),uu(n)&&(t+=1);return{deferredStagedCount:e,deferredUnstagedCount:t}},[be,v]);Q.useEffect(()=>{if(!r||Lt.length===0)return;let e=[],t=new Set,i=n=>{!n||t.has(n)||(t.add(n),e.push(n))};if(Rt.forEach(e=>i(e.path)),ge.forEach(i),Lt.slice(0,nu).forEach(e=>i(e.path)),e.length===0)return;let a=window.setTimeout(()=>{P(r,n,e,{maxFiles:tu})},120);return()=>{window.clearTimeout(a)}},[Lt,r,n,P,Rt,ge]);let Ht=e=>e?.pushed[0]?.remote||v?.tracking?.split(`/`)[0]||$t.find(e=>e.name===`origin`)?.name||$t[0]?.name||`origin`,Ut=async(e,i)=>{if(r){Te(e);try{let a=e=>{let t=`${e.name}/`,n=v?.tracking?.startsWith(t)?v.tracking.slice(t.length):void 0;return{remote:e.name,branch:n,rebase:!0}};if(e===`fetch`){if(!i)throw Error(`No remote available for fetch`);await n.gitFetch(r,{remote:i.name}),Y.success(t(`gitView.toast.fetchedFromRemote`,{name:i.name}))}else if(e===`pull`){if(!i)throw Error(`No remote available for pull`);let e=await n.gitPull(r,a(i));Y.success(e.files.length===1?t(`gitView.toast.pulledFilesSingle`,{count:e.files.length,name:i.name}):t(`gitView.toast.pulledFilesPlural`,{count:e.files.length,name:i.name}))}else if(e===`push`){let e=await n.gitPush(r);Y.success(t(`gitView.toast.pushedToUpstream`,{name:Ht(e)}))}else if(e===`sync`){if(!i)throw Error(`No remote available for sync`);let e=0,o=!1;await n.gitFetch(r,{remote:i.name});let s=await n.getGitStatus(r);if((s.behind??0)>0){if((s.files?.length??0)>0){Y.error(t(`gitView.toast.commitOrStashBeforeSync`));return}e=(await n.gitPull(r,a(i))).files.length}((await n.getGitStatus(r)).ahead??0)>0&&(await n.gitPush(r),o=!0),e>0&&o?Y.success(t(e===1?`gitView.toast.syncedPulledSingleAndPushed`:`gitView.toast.syncedPulledPluralAndPushed`,{count:e,name:i.name})):e>0?Y.success(t(e===1?`gitView.toast.pulledFilesSingle`:`gitView.toast.pulledFilesPlural`,{count:e,name:i.name})):o?Y.success(t(`gitView.toast.pushedToUpstream`,{name:i.name})):Y.success(t(`gitView.toast.alreadyUpToDate`))}await Pt(!1),await It()}catch(n){let r=n instanceof Error?n.message:t(`gitView.toast.syncActionFailed`,{action:e===`sync`?t(`gitView.sync.syncChanges`):e===`pull`?t(`gitView.sync.pull`):e});Y.error(r)}finally{Te(null)}}},Wt=async(e={})=>{if(!r)return;if(!me.trim()){Y.error(t(`gitView.toast.enterCommitMessage`));return}let i=Rt.map(e=>e.path).sort();if(i.length===0){Y.error(t(`gitView.toast.stageFileToCommit`));return}let a=e.pushAfter?`commitAndPush`:`commit`;ke(a);try{if(await n.createGitCommit(r,me.trim(),{files:i,stageFiles:[]}),L(r),Y.success(t(`gitView.toast.commitCreated`)),he(``),Je(),await Pt(),e.pushAfter){let e=v?.tracking?.split(`/`)[0],i=$t.find(t=>t.name===e)??$t[0];if(!i)throw Error(t(`mobile.changes.noRemote`));Te(`sync`);let a=`${i.name}/`,o=v?.tracking?.startsWith(a)?v.tracking.slice(a.length):void 0;await n.gitFetch(r,{remote:i.name});let s=await n.getGitStatus(r);if((s.behind??0)>0){if((s.files?.length??0)>0){Y.error(t(`gitView.toast.commitOrStashBeforeSync`)),await Pt(!1);return}await n.gitPull(r,{remote:i.name,branch:o,rebase:!0})}let c=await n.getGitStatus(r),l;(c.ahead??0)>0&&(l=await n.gitPush(r)),Y.success(t(`gitView.toast.pushedToUpstream`,{name:Ht(l)})),Me(),await Pt(!1)}else await Pt(!1);await It()}catch(e){let n=e instanceof Error?e.message:t(`gitView.toast.createCommitFailed`);Y.error(n)}finally{ke(null),e.pushAfter&&Te(null)}},Gt=Q.useCallback(async()=>{if(!r)return;let e=Rt.map(e=>e.path).sort();if(e.length===0){Y.error(t(`gitView.toast.stageFileToDescribe`));return}console.error(`[git-generation][browser] generate button clicked`,{directory:r,selectedFiles:e.length}),Ue(!0);try{let{message:t}=await Ln(r,e),n=t.subject?.trim()??``,i=Array.isArray(t.highlights)?t.highlights:[];if(n){let e=n;if(ue&&pe.length>0){let t=iu(n,pe);if(t){let{code:r,emoji:i}=t;!n.startsWith(r)&&!n.startsWith(i)&&(e=`${r} ${n}`)}}he(e)}Ge(i),qe()}catch(e){console.error(`[git-generation][browser] GitView generate handler failed`,{message:e instanceof Error?e.message:String(e),error:e});let n=e instanceof Error?e.message:t(`gitView.toast.generateCommitMessageFailed`);Y.error(n)}finally{Ue(!1)}},[r,Rt,ue,pe,qe,t]),Kt=e=>e.reason===`attention`?`${e.attentionReason} in progress`:e.reason===`missing`?`worktree is missing`:`worktree is invalid`,qt=async(e,i)=>{if(!r||!v)return;let a=en(y);if(a.length>0){Y.error(t(`gitView.toast.cannotCreateBranch`,{reason:Kt(a[0])}));return}let o=v.current??null,s=i?.name??`origin`;try{await n.createBranch(r,e,o??`HEAD`),Y.success(t(`gitView.toast.createdBranch`,{name:e})),await n.checkoutBranch(r,e);let i=!1;try{await n.gitPush(r,{remote:s,branch:e,options:[`--set-upstream`]}),i=!0}catch(e){let n=e instanceof Error?e.message:`Unable to push new branch to ${s}.`;Y.warning(t(`gitView.toast.branchCreatedLocally`),{description:(0,$.jsxs)(`span`,{className:`text-foreground/80 dark:text-foreground/70`,children:[`Upstream setup failed: `,n]})})}await Pt(),await It(),i&&Y.success(t(`gitView.toast.upstreamSet`,{branch:e,remote:s}))}catch(e){let n=e instanceof Error?e.message:t(`gitView.toast.createBranchFailed`);throw Y.error(n),e}},Jt=async(e,i)=>{if(!r)return;let a=en(y);if(a.length>0){Y.error(t(`gitView.toast.cannotRenameBranch`,{reason:Kt(a[0])}));return}try{await n.renameBranch(r,e,i),Y.success(t(`gitView.toast.renamedBranch`,{oldName:e,newName:i})),await Pt(),await It()}catch(n){let r=n instanceof Error?n.message:t(`gitView.toast.renameBranchFailed`,{oldName:e,newName:i});Y.error(r)}},Yt=async e=>{if(!r)return;let i=en(y);if(i.length>0){Y.error(t(`gitView.toast.cannotCheckout`,{reason:Kt(i[0])}));return}let a=e.replace(/^remotes\//,``);if(v?.current!==a)try{await n.checkoutBranch(r,a),Y.success(t(`gitView.toast.checkedOut`,{name:a})),await Pt(),await It()}catch(e){let n=e instanceof Error?e.message:t(`gitView.toast.checkoutFailed`,{name:a});Y.error(n)}},Xt=Q.useMemo(()=>C?.all?C.all.filter(e=>!e.startsWith(`remotes/`)).sort():[],[C]),Qt=Q.useMemo(()=>C?.all?C.all.filter(e=>e.startsWith(`remotes/`)).map(e=>e.replace(/^remotes\//,``)).sort():[],[C]),$t=Q.useMemo(()=>{if(pt.length>0)return pt;let e=new Set,t=v?.tracking?.trim();t&&t.includes(`/`)&&e.add(t.split(`/`)[0]);for(let t of Qt){let n=t.indexOf(`/`);n>0&&e.add(t.slice(0,n))}return e.size===0&&at&&e.add(`origin`),Array.from(e).map(e=>({name:e,fetchUrl:at??``,pushUrl:at??``}))},[pt,Qt,at,v?.tracking]),tn=Q.useMemo(()=>{let e=new Set($t.map(e=>e.name)),t=t=>{if(!t)return``;let n=t.trim();if(!n||n===`HEAD`)return``;if(Xt.includes(n))return n;n.startsWith(`refs/heads/`)&&(n=n.slice(11)),n.startsWith(`heads/`)&&(n=n.slice(6)),n.startsWith(`remotes/`)&&(n=n.slice(8));let r=n.indexOf(`/`);if(r>0){let t=n.slice(0,r);if(e.has(t)){let e=n.slice(r+1).trim();e&&(n=e)}}return n};return t(typeof S?.createdFromBranch==`string`?S.createdFromBranch:``)||t(typeof de==`string`?de:``)||(Xt.includes(`main`)?`main`:Xt.includes(`master`)?`master`:Xt.includes(`develop`)?`develop`:`main`)},[$t,Xt,de,S?.createdFromBranch]),nn=Rt.length,rn=v?.current??null;Q.useEffect(()=>{if(!r||!n||!w?.all?.length||!rn||!tn||rn===tn){it(null);return}let e=!1;return(async()=>{try{let t=await n.getGitLog(r,{from:tn,to:`HEAD`,maxCount:Ae});if(e)return;let i=new Set((t?.all??[]).map(e=>e.hash).filter(e=>typeof e==`string`&&e.length>0));if(i.size===0){it(null);return}let a=w.all.findIndex(e=>!i.has(e.hash));if(a===0){it(null);return}if(a===-1){it({insertBeforeIndex:w.all.length,branchName:rn,direction:`up`});return}it({insertBeforeIndex:a,branchName:rn,direction:`up`})}catch{e||it(null)}})(),()=>{e=!0}},[tn,rn,r,n,w,Ae]),Q.useEffect(()=>{Ct(null)},[r]),Q.useEffect(()=>{if(ut!==`graph`||!r){ut!==`graph`&&Ct(null);return}let e=!1;return Tt(!0),n.getGitLog(r,{maxCount:Et,all:!0}).then(t=>{e||Ct(t)}).catch(e=>{console.error(`Failed to fetch graph log:`,e)}).finally(()=>{e||Tt(!1)}),()=>{e=!0}},[ut,r,Et,n]);let an=Q.useCallback((e,t)=>{if(!r||e.length===0)return;let n=Array.from(new Set(e));Re(e=>{let t=new Set(e);return n.forEach(e=>t.add(e)),t});let i=F(r,n,t);oe.enqueue({directory:r,direction:t,paths:new Set(n),rollback:()=>I(r,i)}),re()},[r,oe,F,I,re]),sn=Q.useCallback(async e=>{if(r){Pe(t=>{let n=new Set(t);return n.add(e),n});try{await n.revertGitFile(r,e,{scope:`working`}),Y.success(t(`gitView.toast.revertedFile`,{path:e})),await Pt(!1)}catch(e){let n=e instanceof Error?e.message:t(`gitView.toast.revertFailed`);Y.error(n)}finally{Pe(t=>{let n=new Set(t);return n.delete(e),n})}}},[r,Pt,n,t]),cn=Q.useCallback(async(e,i,a=`all`)=>{if(!r||e.length===0)return;let o=Array.from(new Set(e));if(ze||o.some(e=>Ne.has(e)))return;let s=new Set(Rt.map(e=>e.path)),c=a===`all`&&o.some(e=>s.has(e));i&&Ve(!0),Pe(e=>{let t=new Set(e);return o.forEach(e=>t.add(e)),t});let l=[];try{if(await Promise.all(o.map(async e=>{try{await n.revertGitFile(r,e,{scope:a})}catch(n){l.push({path:e,message:n instanceof Error?n.message:t(`gitView.toast.revertFailed`)})}})),c&&l.length<o.length&&L(r),await Pt(!1),l.length===0)Y.success(o.length===1?t(`gitView.toast.revertedFilesSingle`,{count:o.length}):t(`gitView.toast.revertedFilesPlural`,{count:o.length}));else if(l.length===o.length)Y.error(l[0]?.message||t(`gitView.toast.revertFailed`));else{let e=o.length-l.length;Y.warning(t(e===1?`gitView.toast.revertedSomeSingle`:`gitView.toast.revertedSomePlural`,{success:e,failed:l.length}))}}finally{Pe(e=>{let t=new Set(e);return o.forEach(e=>t.delete(e)),t}),i&&Ve(!1)}},[L,r,n,ze,Pt,Ne,Rt,t]),un=Q.useCallback(async e=>{await cn(e,!0)},[cn]),hn=Q.useCallback(async e=>{await cn(e,!1,`working`)},[cn]),gn=Q.useCallback((e,t)=>{if(r&&!R){z(r,e,t);return}B(e,t),R&&V(!1)},[r,R,B,z,V]),_n=Q.useCallback(()=>De(!0),[]),vn=Q.useMemo(()=>{let e=[];return Rt.length>0&&e.push({id:`staged`,title:t(`gitView.changes.stagedTitle`),entries:Rt,actionSymbol:`-`,actionAllLabel:t(`gitView.changes.unstageAllAria`),getActionLabel:e=>t(`gitView.changes.unstageFileAria`,{path:e}),onActionFile:e=>void an([e],`unstage`),onActionAll:e=>void an(e,`unstage`),onViewDiff:e=>gn(e,!0),onRevertFile:sn,showRevertActions:!1,accent:!0}),zt.length>0&&e.push({id:`unstaged`,title:t(`gitView.changes.title`),entries:zt,actionSymbol:`+`,actionAllLabel:t(`gitView.changes.stageAllAria`),getActionLabel:e=>t(`gitView.changes.stageFileAria`,{path:e}),onActionFile:e=>void an([e],`stage`),onActionAll:e=>void an(e,`stage`),onViewDiff:e=>gn(e,!1),onRevertFile:sn}),e},[sn,gn,an,Rt,t,zt]),yn=Q.useCallback(e=>{if(e.length===0)return;let t=e.map(e=>e.trim()).filter(Boolean);if(t.length===0){Je();return}he(e=>{let n=e.trim();return`${n}${n.length>0?`
|
|
4
4
|
|
|
5
5
|
`:``}${t.join(`
|
|
6
|
-
`)}`.trim()}),Je()},[Je]),bn=Q.useCallback((e,t)=>{let n=t||e;he(r=>{let i=r.trimStart();return i.startsWith(e)||t&&i.startsWith(t)?r:`${n.endsWith(` `)?n:`${n} `}${r}`.trimStart()}),ct(``),Se(!1)},[]),xn=Q.useCallback(async()=>{if(r)try{bt===`merge`?(await n.abortMerge(r),Y.success(t(`gitView.toast.mergeAborted`))):(await n.abortRebase(r),Y.success(t(`gitView.toast.rebaseAborted`))),At(),await Pt(),await It()}catch(e){let t=e instanceof Error?e.message:`Failed to abort ${bt}`;Y.error(t)}},[r,n,bt,Pt,It,At,t]),Sn=Q.useMemo(()=>v?.files?v.files.some(e=>e.index===`U`||e.working_dir===`U`||e.index===`A`&&e.working_dir===`A`||e.index===`D`&&e.working_dir===`D`):!1,[v?.files]),Cn=Q.useCallback(async()=>{if(r)try{let e=!!v?.mergeInProgress?.head,i=!!(v?.rebaseInProgress?.headName||v?.rebaseInProgress?.onto);if(e){let e=await n.continueMerge(r);e.conflict?(yt(e.conflictFiles??[]),xt(`merge`),_t(!0),kt(r,e.conflictFiles??[],`merge`),Y.error(t(`gitView.toast.mergeConflictsDetected`))):(At(),Y.success(t(`gitView.toast.mergeCompleted`)),await Pt(),await It())}else if(i){let e=await n.continueRebase(r);e.conflict?(yt(e.conflictFiles??[]),xt(`rebase`),_t(!0),kt(r,e.conflictFiles??[],`rebase`),Y.error(t(`gitView.toast.rebaseConflictsDetected`))):(At(),Y.success(t(`gitView.toast.rebaseStepCompleted`)),await Pt(),await It())}}catch(e){let n=e instanceof Error?e.message:t(`gitView.toast.continueOperationFailed`);Y.error(n)}},[r,n,v,Pt,It,kt,At,t]),wn=Q.useCallback(async()=>{if(r)try{v?.mergeInProgress?.head?(await n.abortMerge(r),Y.success(t(`gitView.toast.mergeAborted`))):(await n.abortRebase(r),Y.success(t(`gitView.toast.rebaseAborted`))),At(),await Pt(),await It()}catch(e){let n=e instanceof Error?e.message:t(`gitView.toast.abortOperationFailed`);Y.error(n)}},[r,n,v,Pt,It,At,t]),Tn=Q.useCallback(()=>{if(!r)return;let e=v?.mergeInProgress?.head?`merge`:`rebase`,t=v?.files?.filter(e=>e.index===`U`||e.working_dir===`U`).map(e=>e.path)??[];t.length>0&&yt(t),xt(e),_t(!0)},[r,v]),En=Q.useCallback(e=>{je(e),r&&(N(r,e),M(r,n,e))},[r,M,n,N]),Dn=Q.useCallback(e=>{Dt(e)},[]),On=Q.useCallback(()=>{ft(null),r&&(A(r,n),j(r,n,{force:!0}),M(r,n,Ae))},[r,A,j,M,Ae,n]),kn=Q.useCallback(e=>{if(e.conflict){if(e.operation===`cherry-pick`||e.operation===`revert`){Y.error(t(`gitView.history.actions.conflictToastTitle`),{description:t(`gitView.history.actions.conflictToastDescription`,{files:e.conflictFiles?.join(`, `)??`unknown files`})}),r&&(A(r,n),j(r,n,{force:!0}),M(r,n,Ae));return}yt(e.conflictFiles??[]),xt(e.operation),_t(!0),r&&kt(r,e.conflictFiles??[],e.operation)}},[t,yt,xt,_t,kt,r,A,j,M,Ae,n]);if(!r)return(0,$.jsx)(`div`,{className:`flex h-full items-center justify-center px-4 text-center`,children:(0,$.jsx)(`p`,{className:`typography-ui-label text-muted-foreground`,children:t(`gitView.empty.selectSessionOrDirectory`)})});if(_===null||_===!0&&!v)return(0,$.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-muted-foreground`,children:[(0,$.jsx)(Z,{name:`loader-4`,className:`size-4 animate-spin`}),(0,$.jsx)(`span`,{className:`typography-ui-label`,children:t(`gitView.loading.checkingRepository`)})]})});if(_===!1)return ce?(0,$.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center px-4 text-center`,children:[(0,$.jsx)(Z,{name:`loader-4`,className:`mb-3 size-6 animate-spin text-muted-foreground`}),(0,$.jsx)(`p`,{className:`typography-ui-label font-semibold text-foreground`,children:t(`gitView.empty.worktreeSetupInProgress`)}),(0,$.jsx)(`p`,{className:`typography-meta mt-1 text-muted-foreground`,children:t(`gitView.empty.worktreeSetupDescription`)})]}):(0,$.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center px-4 text-center`,children:[(0,$.jsx)(Z,{name:`git-branch`,className:`mb-3 size-6 text-muted-foreground`}),(0,$.jsx)(`p`,{className:`typography-ui-label font-semibold text-foreground`,children:t(`gitView.empty.notGitRepository`)}),(0,$.jsx)(`p`,{className:`typography-meta mt-1 text-muted-foreground`,children:t(`gitView.empty.notGitRepositoryDescription`)}),b.includes(`open-without-worktree-features`)?(0,$.jsx)(`p`,{className:`typography-meta mt-2 text-muted-foreground`,children:t(`gitView.empty.worktreeFeaturesUnavailable`)}):null]});let An=v?S?(0,$.jsx)(Ho,{currentBranch:v.current,onRename:Jt,iconOnly:!0}):(0,$.jsx)(Li,{currentBranch:v.current,localBranches:Xt,remoteBranches:Qt,branchInfo:C?.branches,onCheckout:Yt,onCreate:qt,remotes:$t,iconOnly:!0}):null,jn=v?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Uo,{syncAction:we,remotes:$t,onSync:e=>Ut(`sync`,e),disabled:!v,aheadCount:v.ahead,behindCount:v.behind,trackingRemoteName:v.tracking?.split(`/`)[0],hasUncommittedChanges:(v.files?.length??0)>0}),(0,$.jsxs)(Si,{children:[(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(Oi,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,className:`flex size-6 items-center justify-center rounded text-muted-foreground hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--interactive-focus-ring)]`,"aria-label":t(`gitView.header.repositoryViews`),children:(0,$.jsx)(Z,{name:`git-repository`,className:`size-3.5`})})})}),(0,$.jsx)(Zr,{sideOffset:8,children:t(`gitView.header.repositoryViews`)})]}),(0,$.jsxs)(Di,{align:`end`,children:[(0,$.jsxs)(ki,{onSelect:()=>ft(`history`),children:[(0,$.jsx)(Z,{name:`history`,className:`size-4`}),t(`gitView.history.title`)]}),(0,$.jsxs)(ki,{onSelect:()=>ft(`graph`),children:[(0,$.jsx)(Z,{name:`git-merge`,className:`size-4`}),t(`gitView.graph.title`)]}),(0,$.jsxs)(ki,{onSelect:_n,children:[(0,$.jsx)(Z,{name:`archive-stack`,className:`size-4`}),t(`gitView.stashes.title`)]})]})]})]}):null,Mn=v?(0,$.jsxs)($.Fragment,{children:[An,jn]}):null;return(0,$.jsxs)(`div`,{className:X(`flex h-full flex-col overflow-hidden`),children:[r&&(v?.mergeInProgress?.head||v?.rebaseInProgress?.headName||v?.rebaseInProgress?.onto)&&(0,$.jsx)(Ql,{mergeInProgress:v?.mergeInProgress,rebaseInProgress:v?.rebaseInProgress,onContinue:Cn,onAbort:wn,onResolveWithAI:Tn,hasUnresolvedConflicts:Sn,isLoading:T}),(0,$.jsx)(`div`,{className:`flex-1 min-h-0 overflow-hidden`,children:(0,$.jsx)(`div`,{className:`h-full min-h-0 flex flex-col`,children:(0,$.jsx)(`div`,{className:X(`min-w-0 min-h-0 h-full flex flex-col`),children:(0,$.jsx)(Nr,{as:Vr,ref:Ce,outerClassName:`flex-1 min-h-0`,className:X(`px-4`,`pt-2 pb-4`),disableHorizontal:!0,preventOverscroll:!0,children:(0,$.jsx)(`div`,{className:`flex h-full min-h-0 flex-col gap-2`,children:be?(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`div`,{className:`mb-1 flex h-8 shrink-0 items-center bg-background pr-2`,children:[(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate typography-ui-label font-semibold text-foreground`,children:t(`gitView.changes.deferredTitle`,{count:v?.files?.length??0})}),(0,$.jsx)(`div`,{className:`ml-auto grid shrink-0 grid-flow-col auto-cols-[1.5rem] items-center justify-end`,children:Mn})]}),(0,$.jsx)(ts,{stagedCount:Bt,unstagedCount:Vt,onLoad:()=>ye(!0)})]}):(Lt?.length??0)>0?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`div`,{className:`min-h-0 flex-1 overflow-hidden`,children:(0,$.jsx)(Bo,{groups:vn,diffStats:v?.diffStats,revertingPaths:Ne,isRevertingAll:ze,onVisiblePathsChange:_e,onRevertAll:un,onRevertDirectory:hn,headerBackgroundClassName:`bg-background`,headerLeadingActions:An,headerActions:jn})}),(0,$.jsx)(zo,{stagedCount:nn,commitMessage:me,onCommitMessageChange:he,generatedHighlights:We,onInsertHighlights:yn,onGenerateMessage:Gt,isGeneratingMessage:He,onCommit:()=>Wt({pushAfter:!1}),onCommitAndPush:()=>Wt({pushAfter:!0}),commitAction:Oe,hasPendingIndexMutation:Ke,gitmojiEnabled:ue,onOpenGitmojiPicker:()=>Se(!0)})]}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`div`,{className:`mb-1 flex h-8 shrink-0 items-center bg-background pr-2`,children:[(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate typography-ui-label font-semibold text-foreground`,children:t(`gitView.empty.cleanTitle`)}),(0,$.jsx)(`div`,{className:`ml-auto grid shrink-0 grid-flow-col auto-cols-[1.5rem] items-center justify-end`,children:Mn})]}),(0,$.jsx)(xl,{onOpenStashes:()=>De(!0)})]})})})})})}),(0,$.jsx)(mn,{open:ut!==null,onOpenChange:e=>{e||ft(null)},children:(0,$.jsxs)(dn,{className:`max-w-5xl h-[90vh] max-h-[90vh] flex flex-col overflow-hidden`,children:[(0,$.jsxs)(ln,{children:[(0,$.jsx)(fn,{children:t(ut===`graph`?`gitView.graph.title`:`gitView.history.title`)}),(0,$.jsx)(pn,{children:t(`gitView.history.dialogDescription`)})]}),(0,$.jsx)(`div`,{className:`flex-1 min-h-0`,children:(0,$.jsx)(Bl,{mode:ut===`graph`?`graph`:`history`,log:ut===`graph`?St??w:w,isLogLoading:ut===`graph`&&wt||E,logMaxCount:ut===`graph`?Et:Ae,onLogMaxCountChange:ut===`graph`?Dn:En,expandedCommitHashes:Ye,onToggleCommit:Mt,commitFilesMap:J,loadingCommitHashes:$e,onCopyHash:jt,directory:r??void 0,showHeader:!1,contentMaxHeightClassName:`h-full max-h-none`,branchDivider:ut===`graph`?null:rt,onConflict:ut===`graph`?kn:void 0,onActionSuccess:ut===`graph`?On:void 0})})]})}),(0,$.jsx)(yl,{open:Ee,onOpenChange:De,directory:r,hasUncommittedChanges:(v?.files?.length??0)>0,hasStagedChanges:Rt.length>0,uncommittedFileCount:v?.files?.length??0,onChanged:async e=>{r&&e?.affectsIndex&&L(r),await Pt(!1),await It()}}),(0,$.jsx)(mn,{open:xe,onOpenChange:Se,children:(0,$.jsxs)(dn,{className:`max-w-md p-0 overflow-hidden`,children:[(0,$.jsx)(ln,{className:`px-4 pt-4`,children:(0,$.jsx)(fn,{children:t(`gitView.gitmoji.title`)})}),(0,$.jsxs)(Mi,{className:`h-[420px]`,children:[(0,$.jsx)(Pi,{placeholder:t(`gitView.gitmoji.searchPlaceholder`),value:st,onValueChange:ct}),(0,$.jsxs)(Ii,{children:[(0,$.jsx)(Ji,{children:t(`gitView.gitmoji.empty`)}),(0,$.jsx)(Ri,{children:(pe.length===0?[]:pe.filter(e=>{let t=st.trim().toLowerCase();return!t||e.emoji.includes(t)||e.code.toLowerCase().includes(t)||e.description.toLowerCase().includes(t)})).map(e=>(0,$.jsxs)(Ni,{onSelect:()=>bn(e.emoji,e.code),children:[(0,$.jsx)(`span`,{className:`text-lg`,children:e.emoji}),(0,$.jsx)(`span`,{className:`typography-ui-label text-foreground`,children:e.code}),(0,$.jsx)(`span`,{className:`typography-meta text-muted-foreground`,children:e.description})]},e.code))})]})]})]})}),r&&(0,$.jsx)(Gl,{open:ht,onOpenChange:_t,conflictFiles:vt,directory:r,operation:bt,onAbort:xn,onClearState:At})]})},fu=e=>e.slice().sort((e,t)=>e.type===t.type?e.name.localeCompare(t.name):e.type===`directory`?-1:1),pu=e=>{if(!e)return``;let t=e.replace(/\\/g,`/`),n=t.startsWith(`//`),r=t.replace(/\/+$/g,``);return r=r.replace(/\/+/g,`/`),n&&!r.startsWith(`//`)&&(r=`/${r}`),r===``?t.startsWith(`/`)?`/`:``:r},mu=(e,t)=>{let n=pu(t),r=pu(e).replace(/\/+$/,``);return n===r?`.`:!r||!n.startsWith(`${r}/`)?n:n.slice(r.length+1)},hu=e=>e.startsWith(`/`)||e.startsWith(`//`)||/^[A-Za-z]:\//.test(e),gu=new Set([`node_modules`]),_u=e=>gu.has(e),vu=e=>{let t=pu(e);return t===`node_modules`||t.endsWith(`/node_modules`)||t.includes(`/node_modules/`)},yu=8,bu=new Map,xu=e=>{let t=bu.get(e);return t?(t.touchedAt=Date.now(),bu.delete(e),bu.set(e,t),t):null},Su=e=>{let t=bu.get(e);if(t)return t.touchedAt=Date.now(),t;if(bu.size>=yu){let e=bu.keys().next().value;e!==void 0&&bu.delete(e)}let n={childrenByDir:{},loadErrorsByDir:{},loadedDirs:new Set,touchedAt:Date.now()};return bu.set(e,n),n},Cu=e=>{bu.delete(e)},wu=(e,t)=>(0,$.jsx)(Wi,{filePath:e,extension:t,className:`size-3.5`}),Tu=e=>{let t=(0,Ts.c)(3),{status:n}=e,r;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r={open:`var(--status-info)`,modified:`var(--status-warning)`,"git-modified":`var(--status-warning)`,"git-added":`var(--status-success)`,"git-deleted":`var(--status-error)`},t[0]=r):r=t[0];let i=r[n],a;return t[1]===i?a=t[2]:(a=(0,$.jsx)(`span`,{className:`h-2 w-2 rounded-full`,style:{backgroundColor:i}}),t[1]=i,t[2]=a),a},Eu=Q.memo(e=>{let t=(0,Ts.c)(73),{node:n,root:r,isExpanded:i,isActive:a,status:o,badge:s,permissions:c,downloadFile:l,onSelect:u,onToggle:d,onRevealPath:f,onOpenDialog:p}=e,{t:m}=Fe(),h=n.type===`directory`,{canRename:g,canCreateFile:_,canCreateFolder:v,canDelete:y,canReveal:b}=c,[x,S]=Q.useState(!1),[C,w]=Q.useState(!1),T;t[0]!==_||t[1]!==v||t[2]!==y||t[3]!==g||t[4]!==b?(T=e=>{!g&&!_&&!v&&!y&&!b||(e?.preventDefault(),w(!0))},t[0]=_,t[1]=v,t[2]=y,t[3]=g,t[4]=b,t[5]=T):T=t[5];let E=T,D;t[6]!==h||t[7]!==n||t[8]!==u||t[9]!==d?(D=()=>{h?d(n.path):u(n)},t[6]=h,t[7]=n,t[8]=u,t[9]=d,t[10]=D):D=t[10];let O=D,k;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(k=e=>{e.stopPropagation(),w(!1),S(!0)},t[11]=k):k=t[11];let A=k,j;t[12]!==_||t[13]!==v||t[14]!==y||t[15]!==g||t[16]!==b||t[17]!==l||t[18]!==h||t[19]!==n||t[20]!==p||t[21]!==f||t[22]!==m?(j=e=>{let{Item:t,Separator:r}=e;return(0,$.jsxs)($.Fragment,{children:[g&&(0,$.jsxs)(t,{onClick:e=>{e.stopPropagation(),p(`rename`,n)},children:[(0,$.jsx)(Z,{name:`edit`,className:`mr-2 h-4 w-4`}),` `,m(`sidebarFilesTree.menu.rename`)]}),(0,$.jsxs)(t,{onClick:e=>{e.stopPropagation(),Le(n.path).then(e=>{e.ok||Y.error(m(`sidebarFilesTree.toast.copyFailed`))})},children:[(0,$.jsx)(Z,{name:`file-copy`,className:`mr-2 h-4 w-4`}),` `,m(`sidebarFilesTree.menu.copyPath`)]}),!h&&l&&(0,$.jsxs)(t,{onClick:e=>{e.stopPropagation(),l(n.path).catch(e=>{console.error(`Download failed:`,e),Y.error(m(`sidebarFilesTree.toast.operationFailed`))})},children:[(0,$.jsx)(Z,{name:`download`,className:`mr-2 h-4 w-4`}),` `,m(`sidebarFilesTree.menu.save`)]}),b&&(0,$.jsxs)(t,{onClick:e=>{e.stopPropagation(),f(n.path)},children:[(0,$.jsx)(Z,{name:`folder-received`,className:`mr-2 h-4 w-4`}),` `,m(hn())]}),h&&(_||v)&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(r,{}),_&&(0,$.jsxs)(t,{onClick:e=>{e.stopPropagation(),p(`createFile`,n)},children:[(0,$.jsx)(Z,{name:`file-add`,className:`mr-2 h-4 w-4`}),` `,m(`sidebarFilesTree.menu.newFile`)]}),v&&(0,$.jsxs)(t,{onClick:e=>{e.stopPropagation(),p(`createFolder`,n)},children:[(0,$.jsx)(Z,{name:`folder-add`,className:`mr-2 h-4 w-4`}),` `,m(`sidebarFilesTree.menu.newFolder`)]})]}),y&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(r,{}),(0,$.jsxs)(t,{onClick:e=>{e.stopPropagation(),p(`delete`,n)},className:`text-destructive focus:text-destructive`,children:[(0,$.jsx)(Z,{name:`delete-bin`,className:`mr-2 h-4 w-4`}),` `,m(`sidebarFilesTree.menu.delete`)]})]})]})},t[12]=_,t[13]=v,t[14]=y,t[15]=g,t[16]=b,t[17]=l,t[18]=h,t[19]=n,t[20]=p,t[21]=f,t[22]=m,t[23]=j):j=t[23];let M=j,N;t[24]!==n.path||t[25]!==r?(N=e=>{let t=mu(r,n.path);!t||t===`.`||(e.dataTransfer.setData(`application/x-openchamber-file-path`,t),e.dataTransfer.effectAllowed=`copy`)},t[24]=n.path,t[25]=r,t[26]=N):N=t[26];let P=N,F;t[27]===E?F=t[28]:(F=(0,$.jsx)(`div`,{className:`group relative flex items-center`,onContextMenu:E}),t[27]=E,t[28]=F);let I=a?`bg-interactive-selection/70`:`hover:bg-interactive-hover/40`,L;t[29]===I?L=t[30]:(L=X(`flex w-full items-center gap-1.5 rounded-md px-2 py-1 text-left text-foreground transition-colors pr-8 select-none`,I,`cursor-grab active:cursor-grabbing`),t[29]=I,t[30]=L);let R;t[31]!==h||t[32]!==i||t[33]!==n.extension||t[34]!==n.path?(R=h?i?(0,$.jsx)(Z,{name:`folder-open-fill`,className:`size-3.5 flex-shrink-0 text-muted-foreground`}):(0,$.jsx)(Z,{name:`folder-3-fill`,className:`size-3.5 flex-shrink-0 text-muted-foreground`}):wu(n.path,n.extension),t[31]=h,t[32]=i,t[33]=n.extension,t[34]=n.path,t[35]=R):R=t[35];let z;t[36]!==n.name||t[37]!==n.path?(z=(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate typography-code`,title:n.path,children:n.name}),t[36]=n.name,t[37]=n.path,t[38]=z):z=t[38];let B;t[39]!==h||t[40]!==o?(B=!h&&o&&(0,$.jsx)(Tu,{status:o}),t[39]=h,t[40]=o,t[41]=B):B=t[41];let V;t[42]!==s||t[43]!==h?(V=h&&s&&(0,$.jsxs)(`span`,{className:`text-xs flex items-center gap-1 ml-auto mr-1`,children:[s.modified>0&&(0,$.jsxs)(`span`,{className:`text-[var(--status-warning)]`,children:[`M`,s.modified]}),s.added>0&&(0,$.jsxs)(`span`,{className:`text-[var(--status-success)]`,children:[`+`,s.added]})]}),t[42]=s,t[43]=h,t[44]=V):V=t[44];let H;t[45]!==E||t[46]!==P||t[47]!==O||t[48]!==z||t[49]!==B||t[50]!==V||t[51]!==L||t[52]!==R?(H=(0,$.jsxs)(`button`,{type:`button`,onClick:O,onContextMenu:E,draggable:!0,onDragStart:P,className:L,children:[R,z,B,V]}),t[45]=E,t[46]=P,t[47]=O,t[48]=z,t[49]=B,t[50]=V,t[51]=L,t[52]=R,t[53]=H):H=t[53];let U;t[54]!==_||t[55]!==v||t[56]!==y||t[57]!==g||t[58]!==b||t[59]!==x||t[60]!==M||t[61]!==m?(U=(g||_||v||y||b)&&(0,$.jsx)(`div`,{className:`absolute right-1 top-1/2 -translate-y-1/2 opacity-0 focus-within:opacity-100 group-hover:opacity-100`,children:(0,$.jsxs)(Si,{open:x,onOpenChange:S,children:[(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`span`,{className:`inline-flex`,children:(0,$.jsx)(Oi,{asChild:!0,children:(0,$.jsx)(Sn,{variant:`ghost`,size:`icon`,className:`h-6 w-6`,onClick:A,title:m(`sidebarFilesTree.actions.fileMenuTitle`),"aria-label":m(`sidebarFilesTree.actions.fileMenuTitle`),children:(0,$.jsx)(Z,{name:`more-2-fill`,className:`h-4 w-4`})})})})}),(0,$.jsx)(Zr,{side:`bottom`,sideOffset:6,children:m(`sidebarFilesTree.actions.fileMenuTitle`)})]}),(0,$.jsx)(Di,{align:`end`,side:`bottom`,onCloseAutoFocus:()=>S(!1),children:M({Item:ki,Separator:li})})]})}),t[54]=_,t[55]=v,t[56]=y,t[57]=g,t[58]=b,t[59]=x,t[60]=M,t[61]=m,t[62]=U):U=t[62];let W;t[63]!==H||t[64]!==U||t[65]!==F?(W=(0,$.jsxs)(ss,{render:F,children:[H,U]}),t[63]=H,t[64]=U,t[65]=F,t[66]=W):W=t[66];let ee;t[67]===M?ee=t[68]:(ee=(0,$.jsx)(cs,{className:`min-w-[180px]`,children:M({Item:ls,Separator:os})}),t[67]=M,t[68]=ee);let G;return t[69]!==C||t[70]!==W||t[71]!==ee?(G=(0,$.jsxs)(as,{open:C,onOpenChange:w,children:[W,ee]}),t[69]=C,t[70]=W,t[71]=ee,t[72]=G):G=t[72],G},(e,t)=>e.node===t.node&&e.root===t.root&&e.isExpanded===t.isExpanded&&e.isActive===t.isActive&&e.status===t.status&&e.badge===t.badge&&e.permissions===t.permissions&&e.downloadFile===t.downloadFile&&e.onSelect===t.onSelect&&e.onToggle===t.onToggle&&e.onRevealPath===t.onRevealPath&&e.onOpenDialog===t.onOpenDialog),Du=()=>{let{t:e}=Fe(),{files:t}=Xi(),n=Ea()??``,r=pu(n.trim()),i=M(),a=_(),o=be(e=>e.searchFiles),s=u(e=>e.openContextFile),c=ca(n),[l,d]=Q.useState(``),f=$i(l,200),p=Q.useRef(null),[m,h]=Q.useState([]),[g,v]=Q.useState(!1),[y,b]=Q.useState({}),[x,S]=Q.useState({}),C=Q.useRef(new Set),w=Q.useRef(new Set),T=Q.useRef(null),E=Q.useRef(!1);Q.useEffect(()=>{if(!r){b({}),S({}),C.current=new Set;return}let e=xu(r);e?(b({...e.childrenByDir}),S({...e.loadErrorsByDir}),C.current=new Set(e.loadedDirs)):(b({}),S({}),C.current=new Set)},[r]),Q.useEffect(()=>{if(!r)return;let e=Su(r);e.childrenByDir=y},[r,y]),Q.useEffect(()=>{if(!r)return;let e=Su(r);e.loadErrorsByDir=x},[r,x]),Q.useEffect(()=>{if(!r)return;let e=Su(r);e.loadedDirs=new Set(C.current)},[r,y,x]),Q.useEffect(()=>()=>{if(!r)return;let e=bu.get(r);e&&e.loadedDirs.size===0&&Object.keys(e.childrenByDir).length===0&&Cu(r)},[r]);let D=Q.useMemo(()=>[],[]),O=Q.useMemo(()=>[],[]),k=Qi(e=>r?e.byRoot[r]?.expandedPaths??D:D),A=Qi(e=>r?e.byRoot[r]?.selectedPath??null:null),j=Qi(e=>e.setSelectedPath),N=Qi(e=>e.addOpenPath),P=Qi(e=>e.removeOpenPathsByPrefix),F=Qi(e=>e.removeExpandedPathsByPrefix),I=Qi(e=>e.toggleExpandedPath),L=Qi(e=>e.expandPaths),R=u(e=>r?e.contextPanelByDirectory[r]?.tabs??O:O),z=Q.useMemo(()=>new Set(R.map(e=>e.mode===`file`?e.targetPath:null).filter(e=>typeof e==`string`&&e.length>0).map(e=>pu(e))),[R]),[B,V]=Q.useState(null),[H,U]=Q.useState(null),[W,ee]=Q.useState(``),[G,te]=Q.useState(!1),K=!!t.writeFile,ne=!!t.createDirectory,re=!!t.rename,ie=!!t.delete,ae=!!t.revealPath,oe=Q.useMemo(()=>({canRename:re,canCreateFile:K,canCreateFolder:ne,canDelete:ie,canReveal:ae}),[re,K,ne,ie,ae]),se=Q.useCallback(n=>{t.revealPath&&t.revealPath(n).catch(()=>{Y.error(e(`sidebarFilesTree.toast.revealFailed`))})},[t,e]),q=Q.useCallback((e,t)=>{V(e),U(t),ee(e===`rename`&&t.name||``),te(!1)},[]),ce=Q.useCallback((e,t)=>fu(t.filter(e=>e&&typeof e.name==`string`&&e.name.length>0).filter(e=>i||!e.name.startsWith(`.`)).filter(e=>a||!_u(e.name)).map(t=>{let n=t.name,r=pu(t.path||``),i=r?hu(r)?r:pu(`${e}/${r}`):pu(`${e}/${n}`),a=t.isDirectory?`directory`:`file`;return{name:n,path:i,type:a,extension:a===`file`&&n.includes(`.`)?n.split(`.`).pop()?.toLowerCase():void 0}})),[a,i]),le=Q.useCallback(async(e,n)=>{let r=pu(e.trim());if(!r||C.current.has(r)||w.current.has(r))return;w.current=new Set(w.current),w.current.add(r);let i=t.listDirectory?t.listDirectory(r).then(e=>e.entries.map(e=>({name:e.name,path:e.path,isDirectory:e.isDirectory}))):xe.listLocalDirectory(r).then(e=>e.map(e=>({name:e.name,path:e.path,isDirectory:e.isDirectory})));try{let e=await i;if(n?.())return;let t=ce(r,e);C.current=new Set(C.current),C.current.add(r),S(e=>{if(!e[r])return e;let t={...e};return delete t[r],t}),b(e=>({...e,[r]:t}))}catch(e){if(n?.())return;let t=e instanceof Error?e.message:String(e??``);console.error(`Failed to load sidebar directory:`,e),S(e=>({...e,[r]:t}))}finally{w.current=new Set(w.current),w.current.delete(r)}},[t,ce]),ue=Q.useCallback(async()=>{if(!r)return;T.current?.abort();let e=new AbortController;T.current=e;try{let t=(Qi.getState().byRoot[r]?.expandedPaths??[]).map(e=>pu(e)).filter(e=>!!e&&e!==r&&e.startsWith(`${r}/`)),n=[r,...t];C.current=new Set(C.current);for(let e of n)C.current.delete(e);S(e=>{if(Object.keys(e).length===0)return e;let t={...e},r=!1;for(let e of n)e in t&&(delete t[e],r=!0);return r?t:e});let i=()=>e.signal.aborted;await le(r,i);for(let n=0;n<t.length&&!e.signal.aborted;n+=3){let e=t.slice(n,n+3);await Promise.all(e.map(e=>le(e,i)))}}catch(t){if(e.signal.aborted)return;console.error(`Failed to refresh sidebar tree:`,t)}finally{T.current===e&&(T.current=null)}},[le,r]),de=Q.useCallback(async e=>{if(!e){await ue();return}let t=pu(e);C.current=new Set(C.current),C.current.delete(t),w.current=new Set(w.current),w.current.delete(t),await le(t)},[le,ue]);Q.useEffect(()=>{r&&(T.current?.abort(),E.current=!1,C.current=new Set,w.current=new Set,S({}),b(e=>Object.keys(e).length===0?e:{}),le(r))},[le,r,i,a]),Q.useEffect(()=>{if(!r||k.length===0)return;let e=k.map(e=>pu(e)).filter(e=>!!e&&e!==r&&e.startsWith(`${r}/`)&&!C.current.has(e)&&!w.current.has(e)).sort((e,t)=>e.split(`/`).length-t.split(`/`).length);if(e.length===0)return;let t=!1,n=()=>t;return(async()=>{for(let r=0;r<e.length&&!t;r+=3){let t=e.slice(r,r+3);await Promise.all(t.map(e=>le(e,n)))}})(),()=>{t=!0}},[k,le,r]),Q.useEffect(()=>{if(!n){h([]),v(!1);return}let e=f.trim();if(!e){h([]),v(!1);return}let t=!1;return v(!0),o(n,e,150,{includeHidden:i,respectGitignore:!a,type:`file`}).then(e=>{if(t)return;let n=e.filter(e=>a||!vu(e.path)).map(e=>({name:e.name,path:pu(e.path),type:`file`,extension:e.extension,relativePath:e.relativePath}));h(n)}).catch(()=>{t||h([])}).finally(()=>{t||v(!1)}),()=>{t=!0}},[n,f,o,i,a]);let fe=Q.useMemo(()=>{let e=new Map;if(!c?.files)return e;for(let t of c.files)t.index===`A`||t.working_dir===`?`?e.set(t.path,`git-added`):t.index===`D`?e.set(t.path,`git-deleted`):(t.index===`M`||t.working_dir===`M`)&&e.set(t.path,`git-modified`);return e},[c]),pe=Q.useMemo(()=>{let e=new Map;if(!c?.files||!r)return e;for(let t of c.files){let n=t.index===`M`||t.working_dir===`M`,i=t.index===`A`||t.working_dir===`?`;if(!n&&!i)continue;let a=t.path.split(`/`);if(a.length<=1)continue;let o=r;for(let t=0;t<a.length-1;t++){o=`${o}/${a[t]}`;let r=e.get(o);r||(r={modified:0,added:0},e.set(o,r)),n&&r.modified++,i&&r.added++}}return e},[c,r]),me=Q.useCallback(e=>{if(z.has(e))return`open`;if(fe.size===0)return null;let t=e.startsWith(r+`/`)?e.slice(r.length+1):e;return fe.get(t)??null},[z,fe,r]),he=Q.useCallback(e=>{if(pe.size===0)return null;let t=pe.get(e);return t&&t.modified+t.added>0?t:null},[pe]),ge=Q.useCallback(async e=>{if(!r)return;let n=await uo(t,e.path);if(!n.ok){Y.error(lo(n.reason));return}j(r,e.path),N(r,e.path),s(r,e.path)},[N,t,s,r,j]),_e=Q.useCallback(async e=>{let t=pu(e);r&&(I(r,t),C.current.has(t)||await le(t))},[le,r,I]),ve=Q.useMemo(()=>r?_o(r,y):[],[y,r]),ye=Q.useMemo(()=>new Set(k.map(e=>pu(e))),[k]),Se=mo(k),Ce=Q.useCallback(()=>{if(r){if(Se){E.current=!1,F(r,r);return}E.current=!0,L(r,ve)}},[Se,ve,L,F,r]);Q.useEffect(()=>{if(!r||!E.current)return;let e=yo(ve,k);if(e.length>0){L(r,e);return}let t=new Set([...C.current,...Object.keys(x)]);co(ve,k,t)&&(E.current=!1)},[ve,L,k,x,r]);let we=Q.useCallback(async n=>{if(n?.preventDefault(),!H||!B)return;te(!0);let i=()=>te(!1),a=()=>V(null);if(B===`createFile`){if(!W.trim()){Y.error(e(`sidebarFilesTree.toast.filenameRequired`)),i();return}if(!t.writeFile){Y.error(e(`sidebarFilesTree.toast.writeNotSupported`)),i();return}let n=H.path,r=pu(`${n?`${n}/`:``}${W.trim()}`);await t.writeFile(r,``).then(async t=>{t.success&&(Y.success(e(`sidebarFilesTree.toast.fileCreated`)),await de(n)),a()}).catch(()=>Y.error(e(`sidebarFilesTree.toast.operationFailed`))).finally(i);return}if(B===`createFolder`){if(!W.trim()){Y.error(e(`sidebarFilesTree.toast.folderNameRequired`)),i();return}let n=H.path,r=pu(`${n?`${n}/`:``}${W.trim()}`);await t.createDirectory(r).then(async t=>{t.success&&(Y.success(e(`sidebarFilesTree.toast.folderCreated`)),await de(n)),a()}).catch(()=>Y.error(e(`sidebarFilesTree.toast.operationFailed`))).finally(i);return}if(B===`rename`){if(!W.trim()){Y.error(e(`sidebarFilesTree.toast.nameRequired`)),i();return}if(!t.rename){Y.error(e(`sidebarFilesTree.toast.renameNotSupported`)),i();return}let n=H.path,o=n.split(`/`).slice(0,-1).join(`/`),s=pu(`${o?`${o}/`:``}${W.trim()}`);await t.rename(n,s).then(async t=>{t.success&&(Y.success(e(`sidebarFilesTree.toast.renamedSuccessfully`)),await de(o),r&&P(r,n),(A===n||A&&A.startsWith(`${n}/`))&&j(r,null)),a()}).catch(()=>Y.error(e(`sidebarFilesTree.toast.operationFailed`))).finally(i);return}if(B===`delete`){if(!t.delete){Y.error(e(`sidebarFilesTree.toast.deleteNotSupported`)),i();return}let n=H.path,o=n.split(`/`).slice(0,-1).join(`/`);await t.delete(n).then(async t=>{t.success&&(Y.success(e(`sidebarFilesTree.toast.deletedSuccessfully`)),await de(o),r&&P(r,n),(A===n||A&&A.startsWith(n+`/`))&&j(r,null)),a()}).catch(()=>Y.error(e(`sidebarFilesTree.toast.operationFailed`))).finally(i);return}i()},[B,H,W,t,de,P,r,A,j,e]);function Te(n,i){return(y[n]??[]).map(n=>{let a=n.type===`directory`,o=a&&ye.has(pu(n.path)),s=A===n.path;return(0,$.jsxs)(`li`,{className:`relative`,children:[i>0&&(0,$.jsx)(`span`,{className:`absolute top-3 left-[-12px] h-px w-3 bg-border/40`}),(0,$.jsx)(Eu,{node:n,root:r,isExpanded:o,isActive:s,status:a?void 0:me(n.path),badge:a?he(n.path):void 0,permissions:oe,downloadFile:t.downloadFile,onSelect:ge,onToggle:_e,onRevealPath:se,onOpenDialog:q}),a&&o&&(0,$.jsxs)(`ul`,{className:`relative ml-3 flex flex-col border-l border-border/40 pl-3`,children:[x[n.path]?(0,$.jsxs)(`li`,{className:`flex items-center gap-2 px-2 py-1 typography-code text-muted-foreground`,children:[(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-[var(--status-error)]`,title:x[n.path],children:x[n.path]}),(0,$.jsxs)(Sn,{variant:`ghost`,size:`xs`,className:`h-6 gap-1`,onClick:()=>void de(n.path),children:[(0,$.jsx)(Z,{name:`refresh`,className:`h-3.5 w-3.5`}),e(`sidebarFilesTree.actions.refreshTitle`)]})]}):null,Te(n.path,i+1)]})]},n.path)})}let Ee=!!(r&&y[r]),De=r?x[r]:null,Oe=e(Se?`sidebarFilesTree.actions.collapseAllTitle`:`sidebarFilesTree.actions.expandAllTitle`);return(0,$.jsxs)(`section`,{className:`flex h-full min-h-0 flex-col overflow-hidden`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-1 border-b border-border/40 px-3 py-2`,children:[(0,$.jsxs)(`div`,{className:`relative min-w-0 flex-1`,children:[(0,$.jsx)(Z,{name:`search`,className:`pointer-events-none absolute left-2 top-2 h-4 w-4 text-muted-foreground`}),(0,$.jsx)(Yr,{ref:p,value:l,onChange:e=>d(e.target.value),placeholder:e(`sidebarFilesTree.search.placeholder`),className:`h-8 pl-8 pr-8 typography-meta`}),l.trim().length>0?(0,$.jsx)(`button`,{type:`button`,"aria-label":e(`sidebarFilesTree.search.clearAria`),className:`absolute right-2 top-2 inline-flex h-4 w-4 items-center justify-center text-muted-foreground hover:text-foreground`,onClick:()=>{d(``),p.current?.focus()},children:(0,$.jsx)(Z,{name:`close`,className:`h-4 w-4`})}):null]}),(0,$.jsxs)(`div`,{className:`flex flex-shrink-0 items-center gap-0.5`,children:[K&&(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`span`,{className:`inline-flex flex-shrink-0`,children:(0,$.jsx)(Sn,{variant:`ghost`,size:`xs`,onClick:()=>q(`createFile`,{path:n,type:`directory`}),className:`w-6 flex-shrink-0 p-0`,title:e(`sidebarFilesTree.actions.newFileTitle`),"aria-label":e(`sidebarFilesTree.actions.newFileTitle`),children:(0,$.jsx)(Z,{name:`file-add`,className:`size-3.5`})})})}),(0,$.jsx)(Zr,{side:`bottom`,sideOffset:6,children:e(`sidebarFilesTree.actions.newFileTitle`)})]}),ne&&(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`span`,{className:`inline-flex flex-shrink-0`,children:(0,$.jsx)(Sn,{variant:`ghost`,size:`xs`,onClick:()=>q(`createFolder`,{path:n,type:`directory`}),className:`w-6 flex-shrink-0 p-0`,title:e(`sidebarFilesTree.actions.newFolderTitle`),"aria-label":e(`sidebarFilesTree.actions.newFolderTitle`),children:(0,$.jsx)(Z,{name:`folder-add`,className:`size-3.5`})})})}),(0,$.jsx)(Zr,{side:`bottom`,sideOffset:6,children:e(`sidebarFilesTree.actions.newFolderTitle`)})]}),(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`span`,{className:`inline-flex flex-shrink-0`,children:(0,$.jsx)(Sn,{variant:`ghost`,size:`xs`,onClick:()=>void ue(),className:`w-6 flex-shrink-0 p-0`,title:e(`sidebarFilesTree.actions.refreshTitle`),"aria-label":e(`sidebarFilesTree.actions.refreshTitle`),children:(0,$.jsx)(Z,{name:`refresh`,className:`size-3.5`})})})}),(0,$.jsx)(Zr,{side:`bottom`,sideOffset:6,children:e(`sidebarFilesTree.actions.refreshTitle`)})]}),(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(Sn,{variant:`ghost`,size:`xs`,onClick:Ce,disabled:ve.length===0&&k.length===0,className:`w-6 flex-shrink-0 p-0`,title:Oe,"aria-label":Oe,children:(0,$.jsx)(Z,{name:Se?`contract-up-down`:`expand-up-down`,className:`size-3.5`})})}),(0,$.jsx)(Zr,{side:`bottom`,sideOffset:6,children:Oe})]})]})]}),(0,$.jsx)(Nr,{outerClassName:`flex-1 min-h-0`,className:`p-2`,children:(0,$.jsx)(`ul`,{className:`flex flex-col`,children:g?(0,$.jsxs)(`li`,{className:`flex items-center gap-1.5 px-2 py-1 typography-code text-muted-foreground`,children:[(0,$.jsx)(Z,{name:`loader-4`,className:`h-4 w-4 animate-spin`}),e(`sidebarFilesTree.state.searching`)]}):m.length>0?m.map(e=>{let t=A===e.path;return(0,$.jsx)(`li`,{children:(0,$.jsxs)(`button`,{type:`button`,onClick:()=>ge(e),draggable:!0,onDragStart:t=>{let n=e.relativePath||mu(r??``,e.path);!n||n===`.`||(t.dataTransfer.setData(`application/x-openchamber-file-path`,n),t.dataTransfer.effectAllowed=`copy`)},className:X(`flex w-full items-center gap-1.5 rounded-md px-2 py-1 text-left text-foreground transition-colors cursor-grab active:cursor-grabbing`,t?`bg-interactive-selection/70`:`hover:bg-interactive-hover/40`),title:e.path,children:[wu(e.path,e.extension),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate typography-code`,style:{direction:`rtl`,textAlign:`left`},children:e.relativePath??e.path})]})},e.path)}):De?(0,$.jsxs)(`li`,{className:`flex flex-col gap-2 px-2 py-1 typography-code text-muted-foreground`,children:[(0,$.jsx)(`span`,{children:De}),(0,$.jsxs)(Sn,{variant:`outline`,size:`xs`,className:`w-fit gap-1.5`,onClick:()=>void ue(),children:[(0,$.jsx)(Z,{name:`refresh`,className:`h-3.5 w-3.5`}),e(`sidebarFilesTree.actions.refreshTitle`)]})]}):Ee&&r?Te(r,0):(0,$.jsx)(`li`,{className:`px-2 py-1 typography-code text-muted-foreground`,children:e(`sidebarFilesTree.state.loading`)})})}),(0,$.jsx)(mn,{open:!!B,onOpenChange:e=>!e&&V(null),children:(0,$.jsxs)(dn,{children:[(0,$.jsxs)(ln,{children:[(0,$.jsxs)(fn,{children:[B===`createFile`&&e(`sidebarFilesTree.dialog.createFile.title`),B===`createFolder`&&e(`sidebarFilesTree.dialog.createFolder.title`),B===`rename`&&e(`sidebarFilesTree.dialog.rename.title`),B===`delete`&&e(`sidebarFilesTree.dialog.delete.title`)]}),(0,$.jsxs)(pn,{children:[B===`createFile`&&e(`sidebarFilesTree.dialog.createFile.description`,{path:H?.path??e(`sidebarFilesTree.dialog.rootFallback`)}),B===`createFolder`&&e(`sidebarFilesTree.dialog.createFolder.description`,{path:H?.path??e(`sidebarFilesTree.dialog.rootFallback`)}),B===`rename`&&e(`sidebarFilesTree.dialog.rename.description`,{name:H?.name??``}),B===`delete`&&e(`sidebarFilesTree.dialog.delete.description`,{name:H?.name??``})]})]}),B!==`delete`&&(0,$.jsx)(`div`,{className:`py-4`,children:(0,$.jsx)(Yr,{value:W,onChange:e=>ee(e.target.value),placeholder:e(B===`rename`?`sidebarFilesTree.dialog.rename.placeholder`:`sidebarFilesTree.dialog.namePlaceholder`),onKeyDown:e=>{e.key===`Enter`&&we()},autoFocus:!0})}),(0,$.jsxs)(un,{children:[(0,$.jsx)(Sn,{variant:`outline`,onClick:()=>V(null),disabled:G,children:e(`sidebarFilesTree.dialog.cancel`)}),(0,$.jsx)(Sn,{variant:B===`delete`?`destructive`:`default`,onClick:()=>void we(),disabled:G||B!==`delete`&&!W.trim(),children:G?(0,$.jsx)(Z,{name:`loader-4`,className:`size-4 animate-spin`}):e(B===`delete`?`sidebarFilesTree.dialog.delete.confirm`:`sidebarFilesTree.dialog.confirm`)})]})]})})]})},Ou=e=>e===`git`||e===`files`,ku=`files`,Au=()=>!(typeof document<`u`&&document.hidden||typeof navigator<`u`&&!navigator.onLine);function ju(e,t,n,r){let i=(0,Ts.c)(6),{git:a}=Xi(),o=ta(Mu),s=!!(e&&a&&t&&n===`git`&&r!==`git`),c,l;i[0]!==e||i[1]!==o||i[2]!==a||i[3]!==s?(c=()=>{if(!s||!e||!a)return;o(e,a);let t=window.setInterval(()=>{Au()&&o(e,a)},1e4);return()=>window.clearInterval(t)},l=[s,e,a,o],i[0]=e,i[1]=o,i[2]=a,i[3]=s,i[4]=c,i[5]=l):(c=i[4],l=i[5]),Q.useEffect(c,l)}function Mu(e){return e.ensureStatus}var Nu=()=>{let e=(0,Ts.c)(45),{t}=Fe(),n=u(Pu),r=u(Fu),i=u(Iu),a=u(Lu);ju(Ea(),i,n,a);let o=a===`git`?`git`:null,s,c;e[0]!==o||e[1]!==n||e[2]!==r?(s=()=>{o&&n===o&&r(ku)},c=[o,n,r],e[0]=o,e[1]=n,e[2]=r,e[3]=s,e[4]=c):(s=e[3],c=e[4]),Q.useEffect(s,c);let l;e[5]===t?l=e[6]:(l=t(`layout.rightSidebar.git`),e[5]=t,e[6]=l);let d;e[7]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,$.jsx)(Z,{name:`git-branch`,className:`h-3.5 w-3.5`}),e[7]=d):d=e[7];let f;e[8]===l?f=e[9]:(f={id:`git`,label:l,icon:d},e[8]=l,e[9]=f);let p;e[10]===t?p=e[11]:(p=t(`layout.rightSidebar.files`),e[10]=t,e[11]=p);let m;e[12]===Symbol.for(`react.memo_cache_sentinel`)?(m=(0,$.jsx)(Z,{name:`folder-3`,className:`h-3.5 w-3.5`}),e[12]=m):m=e[12];let h;e[13]===p?h=e[14]:(h={id:`files`,label:p,icon:m},e[13]=p,e[14]=h);let g;e[15]!==f||e[16]!==h?(g=[f,h],e[15]=f,e[16]=h,e[17]=g):g=e[17];let _=g,v;e[18]!==o||e[19]!==_?(v=o?_.filter(e=>e.id!==o):_,e[18]=o,e[19]=_,e[20]=v):v=e[20];let y=v,b=i&&n===`git`&&o!==`git`,x;e[21]===r?x=e[22]:(x=e=>{Ou(e)&&r(e)},e[21]=r,e[22]=x);let S=x,C;e[23]!==S||e[24]!==n||e[25]!==y?(C=(0,$.jsx)(`div`,{className:`h-9 bg-background pt-1 px-2`,children:(0,$.jsx)(Oa,{items:y,activeId:n,onSelect:S,layoutMode:`fit`,variant:`active-pill`,activePillLowercase:!1,className:`h-full`})}),e[23]=S,e[24]=n,e[25]=y,e[26]=C):C=e[26];let w=n!==`git`&&`hidden`,T;e[27]===w?T=e[28]:(T=X(`h-full`,w),e[27]=w,e[28]=T);let E;e[29]===b?E=e[30]:(E=(0,$.jsx)(du,{isActive:b}),e[29]=b,e[30]=E);let D;e[31]!==T||e[32]!==E?(D=(0,$.jsx)(`div`,{className:T,children:E}),e[31]=T,e[32]=E,e[33]=D):D=e[33];let O=n!==`files`&&`hidden`,k;e[34]===O?k=e[35]:(k=X(`h-full`,O),e[34]=O,e[35]=k);let A;e[36]===Symbol.for(`react.memo_cache_sentinel`)?(A=(0,$.jsx)(Du,{}),e[36]=A):A=e[36];let j;e[37]===k?j=e[38]:(j=(0,$.jsx)(`div`,{className:k,children:A}),e[37]=k,e[38]=j);let M;e[39]!==D||e[40]!==j?(M=(0,$.jsxs)(`div`,{className:`min-h-0 flex-1 overflow-hidden`,children:[D,j]}),e[39]=D,e[40]=j,e[41]=M):M=e[41];let N;return e[42]!==C||e[43]!==M?(N=(0,$.jsxs)(`div`,{className:`flex h-full min-h-0 flex-col overflow-hidden bg-background`,children:[C,M]}),e[42]=C,e[43]=M,e[44]=N):N=e[44],N};function Pu(e){return e.rightSidebarTab}function Fu(e){return e.setRightSidebarTab}function Iu(e){return e.isRightSidebarOpen}function Lu(e){return e.activeMainTab}var Ru=(e,t)=>!e||t.length===0?``:JSON.stringify([e,t]),zu=(e,t,n,r)=>!n||r!==n||e.length===0?[]:Kt(e,t,e=>e.name,{limit:10,threshold:.4}),Bu=e=>{let t=(0,Ts.c)(13),{title:n,description:r,trailing:i}=e,a=r?`min-w-0 max-w-[58%] shrink-0 truncate typography-meta font-medium leading-4 text-foreground`:`min-w-0 flex-1 truncate typography-meta font-medium leading-4 text-foreground`,o;t[0]!==a||t[1]!==n?(o=(0,$.jsx)(`span`,{className:a,children:n}),t[0]=a,t[1]=n,t[2]=o):o=t[2];let s;t[3]===r?s=t[4]:(s=r?(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate typography-micro leading-4 text-muted-foreground/65`,children:r}):null,t[3]=r,t[4]=s);let c;t[5]!==o||t[6]!==s?(c=(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-2.5`,children:[o,s]}),t[5]=o,t[6]=s,t[7]=c):c=t[7];let l;t[8]===i?l=t[9]:(l=i?(0,$.jsx)(`div`,{className:`ml-auto flex shrink-0 items-center pl-2 text-muted-foreground/50`,children:i}):null,t[8]=i,t[9]=l);let u;return t[10]!==c||t[11]!==l?(u=(0,$.jsxs)($.Fragment,{children:[c,l]}),t[10]=c,t[11]=l,t[12]=u):u=t[12],u},Vu=`h-8 gap-2 rounded-md px-2.5 py-0 typography-meta`,Hu=`py-0 [&_[cmdk-group-heading]]:px-2.5 [&_[cmdk-group-heading]]:pb-0.5 [&_[cmdk-group-heading]]:pt-1.5 [&_[cmdk-group-heading]]:!text-[12px] [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:leading-4 [&_[cmdk-group-heading]]:text-muted-foreground/65`,Uu=e=>{if(!e)return``;let t=e.replace(/\\/g,`/`),n=t.startsWith(`//`),r=t.replace(/\/+/g,`/`);n&&!r.startsWith(`//`)&&(r=`/${r}`);let i=r===`/`,a=/^[A-Za-z]:\/$/.test(r);return!i&&!a&&(r=r.replace(/\/+$/,``)),r},Wu=()=>{let e=(0,Ts.c)(177),{t}=Fe(),n=u(Gu),r=u(Ku),i=u(qu),a=u(Ju),o=u(Yu),s=u(Xu),c=u(Zu),l=u(Qu),d=u($u),f=u(ed),p=u(td),h=u(nd),g=Ft(rd),_=Ft(id),v=Tt(ad),y=ge(od),x=vt(sd),S=vt(cd),C=Ea(),w=be(ld),{files:E,git:D}=Xi(),O=ta(ud),{isMobile:A}=Ai(),j;e[0]===C?j=e[1]:(j=C?Uu(C):null,e[0]=C,e[1]=j);let M=j,[N,P]=Q.useState(``),F=$i(N,200).trim(),I;e[2]===N?I=e[3]:(I=N.trim(),e[2]=N,e[3]=I);let R=I,z,B;e[4]===n?(z=e[5],B=e[6]):(z=()=>{n&&P(``)},B=[n],e[4]=n,e[5]=z,e[6]=B),Q.useEffect(z,B);let V,H;e[7]!==v||e[8]!==O||e[9]!==D||e[10]!==n?(V=()=>{if(!n||!D)return;let e=setTimeout(()=>{let e=new Set;for(let t of v){let n=Rt(t);!n||e.has(n)||(e.add(n),O(n,D))}},0);return()=>clearTimeout(e)},H=[n,v,D,O],e[7]=v,e[8]=O,e[9]=D,e[10]=n,e[11]=V,e[12]=H):(V=e[11],H=e[12]),Q.useEffect(V,H);let U;e[13]===r?U=e[14]:(U=()=>r(!1),e[13]=r,e[14]=U);let W=U,ee;e[15]===W?ee=e[16]:(ee=e=>()=>{W(),e()},e[15]=W,e[16]=ee);let G=ee,te;e[17]!==x?.id||e[18]!==x?.path||e[19]!==y||e[20]!==C||e[21]!==A||e[22]!==f||e[23]!==g||e[24]!==G||e[25]!==i||e[26]!==s||e[27]!==a||e[28]!==t||e[29]!==d||e[30]!==l||e[31]!==c?(te=()=>{let e=[{id:`new-session`,title:t(`commandPalette.item.newSession`),shortcutId:`new_chat`,searchText:t(`commandPalette.item.newSession`),onSelect:G(()=>{i(`chat`),s(!1),g()})},{id:`new-worktree`,title:t(`commandPalette.item.newWorktreeDraft`),shortcutId:`new_chat_worktree`,searchText:t(`commandPalette.item.newWorktreeDraft`),onSelect:G(dd)},{id:`add-project`,title:t(`commandPalette.item.addProject`),searchText:t(`commandPalette.item.addProject`),onSelect:G(fd)},{id:`toggle-sidebar`,title:t(A?`commandPalette.item.showSessionSwitcher`:`commandPalette.item.toggleSidebar`),shortcutId:`toggle_sidebar`,searchText:t(A?`commandPalette.item.showSessionSwitcher`:`commandPalette.item.toggleSidebar`),onSelect:G(()=>{if(A){let{isSessionSwitcherOpen:e}=u.getState();s(!e)}else c()})},{id:`toggle-right-sidebar`,title:t(`commandPalette.item.toggleRightSidebar`),shortcutId:`toggle_right_sidebar`,searchText:t(`commandPalette.item.toggleRightSidebar`),onSelect:G(()=>l())},{id:`toggle-terminal`,title:t(`commandPalette.item.toggleTerminal`),shortcutId:`toggle_terminal`,searchText:t(`commandPalette.item.toggleTerminal`),onSelect:G(()=>d())},{id:`new-terminal-tab`,title:t(`commandPalette.item.newTerminalTab`),shortcutId:`open_new_terminal`,searchText:t(`commandPalette.item.newTerminalTab`),onSelect:G(()=>{C&&pr(C)})},{id:`context-usage`,title:t(`commandPalette.item.showContextUsage`),searchText:t(`commandPalette.item.showContextUsage`),onSelect:G(()=>{y&&f(y)})},{id:`open-settings`,title:t(`commandPalette.item.openSettings`),shortcutId:`open_settings`,searchText:t(`commandPalette.item.openSettings`),onSelect:G(()=>a(!0))}];return b()&&e.splice(1,0,{id:`new-mini-chat`,title:t(`commandPalette.item.newMiniChat`),shortcutId:`new_mini_chat`,searchText:t(`commandPalette.item.newMiniChat`),onSelect:G(()=>{L(`desktop_open_draft_mini_chat_window`,{directory:Uu(y||x?.path||``),projectId:x?.id??null}).catch(pd)})}),e},e[17]=x?.id,e[18]=x?.path,e[19]=y,e[20]=C,e[21]=A,e[22]=f,e[23]=g,e[24]=G,e[25]=i,e[26]=s,e[27]=a,e[28]=t,e[29]=d,e[30]=l,e[31]=c,e[32]=te):te=e[32],x?.id,x?.path;let K;e[33]===te?K=e[34]:(K=te(),e[33]=te,e[34]=K);let ne=K,re;e[35]===Symbol.for(`react.memo_cache_sentinel`)?(re=T(),e[35]=re):re=e[35];let ie=re,ae,oe;e[36]===Symbol.for(`react.memo_cache_sentinel`)?(ae=m(),oe=!ie&&k(),e[36]=ae,e[37]=oe):(ae=e[36],oe=e[37]);let se;e[38]===A?se=e[39]:(se={isVSCode:ae,isWeb:oe,isDesktop:ie,isMobile:A},e[38]=A,e[39]=se);let q=se,ce;if(e[40]!==G||e[41]!==a||e[42]!==o||e[43]!==q){let t;e[45]===q?t=e[46]:(t=e=>!e.isAvailable||e.isAvailable(q),e[45]=q,e[46]=t);let n;e[47]!==G||e[48]!==a||e[49]!==o?(n=e=>{let t=(e.keywords??[]).join(` `);return{id:`settings:${e.slug}`,title:e.title,searchText:`${e.title} ${e.group} ${t}`,onSelect:G(()=>{o(e.slug),a(!0)})}},e[47]=G,e[48]=a,e[49]=o,e[50]=n):n=e[50],ce=Za.filter(md).filter(t).map(n),e[40]=G,e[41]=a,e[42]=o,e[43]=q,e[44]=ce}else ce=e[44];let le=ce,ue=hd,de;if(e[51]!==v){let t;e[53]===Symbol.for(`react.memo_cache_sentinel`)?(t=(e,t)=>ue(t)-ue(e),e[53]=t):t=e[53],de=[...v].sort(t),e[51]=v,e[52]=de}else de=e[52];let fe=de,pe=na(),me=Ft(gd),he;e[54]!==pe||e[55]!==me?(he=(e,t)=>{let n=me.get(e);return n?.branch?n.branch.trim()||null:t&&pe.get(t)?.trim()||null},e[54]=pe,e[55]=me,e[56]=he):he=e[56];let _e=he,ve;e[57]===Symbol.for(`react.memo_cache_sentinel`)?(ve=[],e[57]=ve):ve=e[57];let[ye,xe]=Q.useState(ve),[Se,Ce]=Q.useState(``),we=Ru(M,F),Te;e[58]!==M||e[59]!==we||e[60]!==n||e[61]!==w||e[62]!==xe||e[63]!==Ce||e[64]!==F?(Te=()=>{if(!n){xe([]),Ce(``);return}if(!we){xe([]),Ce(``);return}if(!M){xe([]),Ce(``);return}let e=!1;return w(M,F,10,{type:`file`}).then(t=>{e||(xe(t.map(_d)),Ce(we))}).catch(()=>{e||(xe([]),Ce(we))}),()=>{e=!0}},e[58]=M,e[59]=we,e[60]=n,e[61]=w,e[62]=xe,e[63]=Ce,e[64]=F,e[65]=Te):Te=e[65];let Ee;e[66]!==M||e[67]!==we||e[68]!==n||e[69]!==w||e[70]!==F?(Ee=[n,M,F,we,w],e[66]=M,e[67]=we,e[68]=n,e[69]=w,e[70]=F,e[71]=Ee):Ee=e[71],Q.useEffect(Te,Ee);let De=R.length>0,Oe;bb0:{if(!De){let t;e[72]===ne?t=e[73]:(t=ne.map(vd),e[72]=ne,e[73]=t),Oe=t;break bb0}let t;e[74]!==ne||e[75]!==R?(t=Kt(ne,R,yd,{limit:7,noFuzzy:!0}),e[74]=ne,e[75]=R,e[76]=t):t=e[76],Oe=t}let ke=Oe,Ae;bb1:{if(!De){let t;e[77]===Symbol.for(`react.memo_cache_sentinel`)?(t=[],e[77]=t):t=e[77],Ae=t;break bb1}let t;e[78]!==R||e[79]!==le?(t=Kt(le,R,bd,{limit:7,noFuzzy:!0}),e[78]=R,e[79]=le,e[80]=t):t=e[80],Ae=t}let je=Ae,Me;bb2:{if(!De){let t;e[81]===fe?t=e[82]:(t=fe.slice(0,5).map(xd),e[81]=fe,e[82]=t),Me=t;break bb2}let t;e[83]!==R||e[84]!==fe?(t=Kt(fe,R,Sd,{limit:7,threshold:.2}),e[83]=R,e[84]=fe,e[85]=t):t=e[85],Me=t}let Ne=Me,Pe;bb3:{if(!n){let t;e[86]===Symbol.for(`react.memo_cache_sentinel`)?(t=[],e[86]=t):t=e[86],Pe=t;break bb3}let t;e[87]!==ye||e[88]!==Se||e[89]!==we||e[90]!==F?(t=zu(ye,F,we,Se),e[87]=ye,e[88]=Se,e[89]=we,e[90]=F,e[91]=t):t=e[91],Pe=t}let Ie=Pe,Le=n&&we.length>0&&Se!==we,Re;bb4:{if(!De){let t;e[92]===Symbol.for(`react.memo_cache_sentinel`)?(t=[],e[92]=t):t=e[92],Re=t;break bb4}let t;if(e[93]!==R||e[94]!==S){let n=S.map(Cd);t=Kt(n,R,wd,{limit:7,threshold:.4}),e[93]=R,e[94]=S,e[95]=t}else t=e[95];Re=t}let ze=Re,Be,Ve,He,Ue,We,Ge,Ke,qe,Je,Ye,Xe,J,Ze,Qe,$e,et;if(e[96]!==_e||e[97]!==W||e[98]!==M||e[99]!==E||e[100]!==De||e[101]!==n||e[102]!==p||e[103]!==g||e[104]!==N||e[105]!==ke||e[106]!==Ie||e[107]!==ze||e[108]!==Ne||e[109]!==je||e[110]!==r||e[111]!==_||e[112]!==h||e[113]!==t){let i=ke.map(Td),a=je.map(Ed),o=Ne.map(Dd),s=De?Ie.map(Od):[],c=De?ze.map(kd):[],l;bb5:{if(!De){l=[`commands`,`sessions`];break bb5}let e=Ad,t=[{key:`commands`,score:e(ke)},{key:`settings`,score:e(je)},{key:`sessions`,score:e(Ne)},{key:`files`,score:e(Ie)},{key:`projects`,score:e(ze)}];t.sort(jd),l=t.map(Md)}let u=l,d=e=>{W(),_(e.id,Rt(e))},f=async e=>{if(!M)return;let t=await uo(E,e);if(!t.ok){Y.error(lo(t.reason));return}p(M,e),W()},m=(e,t)=>{W(),g({selectedProjectId:e,directoryOverride:t})},v=e=>_i(yi(e,h));Ue=mn,Qe=n,$e=r;let y;e[130]===t?y=e[131]:(y=t(`commandPalette.title`),e[130]=t,e[131]=y);let b;e[132]===y?b=e[133]:(b=(0,$.jsx)(fn,{children:y}),e[132]=y,e[133]=b);let x;e[134]===t?x=e[135]:(x=t(`commandPalette.description`),e[134]=t,e[135]=x);let S;e[136]===x?S=e[137]:(S=(0,$.jsx)(pn,{children:x}),e[136]=x,e[137]=S),e[138]!==b||e[139]!==S?(et=(0,$.jsxs)(ln,{className:`sr-only`,children:[b,S]}),e[138]=b,e[139]=S,e[140]=et):et=e[140],He=dn,Xe=`fixed left-1/2 top-[12vh] z-50 max-h-[min(32rem,calc(100vh-2rem))] w-[min(40rem,calc(100vw-1.5rem))] max-w-none -translate-x-1/2 translate-y-0 gap-0 overflow-hidden rounded-2xl border border-[var(--interactive-border)]/55 bg-[color:color-mix(in_srgb,var(--surface-elevated)_80%,transparent)] p-0 shadow-2xl backdrop-blur-2xl supports-[backdrop-filter]:bg-[color:color-mix(in_srgb,var(--surface-elevated)_72%,transparent)] sm:top-[14vh] sm:max-h-[min(32rem,calc(100vh-4rem))] sm:w-[min(40rem,calc(100vw-3rem))]`,J=`block p-0`,Ze=!1,Ve=Mi,qe=!1,Je=`max-h-full min-h-0 rounded-[inherit] bg-transparent [&_[cmdk-group]]:px-0 [&_[data-slot=command-input-wrapper]]:px-2.5 [&_[data-slot=command-input-wrapper]]:pt-2.5 [&_[data-slot=command-input-wrapper]]:pb-1.5 [&_[data-slot=command-input-field]]:!bg-transparent`;let C;e[141]===t?C=e[142]:(C=t(`commandPalette.input.placeholder`),e[141]=t,e[142]=C),e[143]!==N||e[144]!==C?(Ye=(0,$.jsx)(Pi,{value:N,onValueChange:P,placeholder:C}),e[143]=N,e[144]=C,e[145]=Ye):Ye=e[145],Be=Ii,We=`px-1.5 pb-2`;let w;e[146]===t?w=e[147]:(w=t(`commandPalette.empty.noResults`),e[146]=t,e[147]=w),e[148]===w?Ge=e[149]:(Ge=(0,$.jsx)(Ji,{className:`py-10 text-muted-foreground`,children:w}),e[148]=w,e[149]=Ge),Ke=u.map(e=>e===`commands`&&i.length>0?(0,$.jsx)(Ri,{heading:t(`settings.page.commands.title`),className:Hu,children:i.map(e=>(0,$.jsx)(Ni,{value:e.id,onSelect:e.onSelect,className:Vu,children:(0,$.jsx)(Bu,{title:e.title,trailing:e.shortcutId?(0,$.jsx)(Bi,{className:`h-3.5 min-w-0 shrink-0 rounded-full border-0 bg-[color-mix(in_srgb,var(--surface-foreground)_6%,transparent)] px-1.5 font-sans text-[10px] font-medium tracking-tight text-muted-foreground/65 shadow-none`,children:v(e.shortcutId)}):void 0})},e.id))},`commands`):e===`settings`&&a.length>0?(0,$.jsx)(Ri,{heading:t(`settings.view.home.title`),className:Hu,children:a.map(Nd)},`settings`):e===`sessions`&&o.length>0?(0,$.jsx)(Ri,{heading:t(`header.sessions.title`),className:Hu,children:o.map(e=>{let n=e.title||t(`commandPalette.session.untitled`),r=Rt(e),i=_e(e.id,r);return(0,$.jsx)(Ni,{value:`session:${e.id}`,onSelect:()=>d(e),className:Vu,children:(0,$.jsx)(Bu,{title:n,trailing:i?(0,$.jsx)(`span`,{className:`max-w-40 truncate typography-micro leading-none opacity-70`,children:i}):void 0})},e.id)})},`sessions`):e===`files`&&s.length>0?(0,$.jsx)(Ri,{heading:t(`layout.mainTab.files`),className:Hu,children:s.map(e=>{let t=gn(e.relativePath||e.name,{maxLength:80});return(0,$.jsx)(Ni,{value:`file:${e.path}`,onSelect:()=>{f(e.path)},className:Vu,children:(0,$.jsx)(Bu,{title:e.name,description:t===e.name?void 0:t})},`file:${e.path}`)})},`files`):e===`projects`&&c.length>0?(0,$.jsx)(Ri,{heading:t(`sessions.sidebar.projectsTitle`),className:Hu,children:c.map(e=>{let t=e.displayName;return(0,$.jsx)(Ni,{value:`project:${e.id}`,onSelect:()=>m(e.id,e.path),className:Vu,children:(0,$.jsx)(Bu,{title:t})},`project:${e.id}`)})},`projects`):null),e[96]=_e,e[97]=W,e[98]=M,e[99]=E,e[100]=De,e[101]=n,e[102]=p,e[103]=g,e[104]=N,e[105]=ke,e[106]=Ie,e[107]=ze,e[108]=Ne,e[109]=je,e[110]=r,e[111]=_,e[112]=h,e[113]=t,e[114]=Be,e[115]=Ve,e[116]=He,e[117]=Ue,e[118]=We,e[119]=Ge,e[120]=Ke,e[121]=qe,e[122]=Je,e[123]=Ye,e[124]=Xe,e[125]=J,e[126]=Ze,e[127]=Qe,e[128]=$e,e[129]=et}else Be=e[114],Ve=e[115],He=e[116],Ue=e[117],We=e[118],Ge=e[119],Ke=e[120],qe=e[121],Je=e[122],Ye=e[123],Xe=e[124],J=e[125],Ze=e[126],Qe=e[127],$e=e[128],et=e[129];let tt;e[150]!==Le||e[151]!==t?(tt=Le?(0,$.jsx)(`div`,{className:`px-3 py-2 typography-micro text-muted-foreground/70`,children:t(`commandPalette.empty.searchingFiles`)}):null,e[150]=Le,e[151]=t,e[152]=tt):tt=e[152];let nt;e[153]!==Be||e[154]!==We||e[155]!==Ge||e[156]!==Ke||e[157]!==tt?(nt=(0,$.jsxs)(Be,{className:We,children:[Ge,Ke,tt]}),e[153]=Be,e[154]=We,e[155]=Ge,e[156]=Ke,e[157]=tt,e[158]=nt):nt=e[158];let rt;e[159]!==Ve||e[160]!==qe||e[161]!==Je||e[162]!==Ye||e[163]!==nt?(rt=(0,$.jsxs)(Ve,{shouldFilter:qe,className:Je,children:[Ye,nt]}),e[159]=Ve,e[160]=qe,e[161]=Je,e[162]=Ye,e[163]=nt,e[164]=rt):rt=e[164];let it;e[165]!==He||e[166]!==Xe||e[167]!==J||e[168]!==Ze||e[169]!==rt?(it=(0,$.jsx)(He,{className:Xe,containerClassName:J,showCloseButton:Ze,children:rt}),e[165]=He,e[166]=Xe,e[167]=J,e[168]=Ze,e[169]=rt,e[170]=it):it=e[170];let at;return e[171]!==Ue||e[172]!==Qe||e[173]!==$e||e[174]!==et||e[175]!==it?(at=(0,$.jsxs)(Ue,{open:Qe,onOpenChange:$e,children:[et,it]}),e[171]=Ue,e[172]=Qe,e[173]=$e,e[174]=et,e[175]=it,e[176]=at):at=e[176],at};function Gu(e){return e.isCommandPaletteOpen}function Ku(e){return e.setCommandPaletteOpen}function qu(e){return e.setActiveMainTab}function Ju(e){return e.setSettingsDialogOpen}function Yu(e){return e.setSettingsPage}function Xu(e){return e.setSessionSwitcherOpen}function Zu(e){return e.toggleSidebar}function Qu(e){return e.toggleRightSidebar}function $u(e){return e.toggleBottomTerminal}function ed(e){return e.openContextOverview}function td(e){return e.openContextFile}function nd(e){return e.shortcutOverrides}function rd(e){return e.openNewSessionDraft}function id(e){return e.setCurrentSession}function ad(e){return e.activeSessions}function od(e){return e.currentDirectory}function sd(e){return e.getActiveProject()}function cd(e){return e.projects}function ld(e){return e.searchFiles}function ud(e){return e.ensureStatus}function dd(){Ui()}function fd(){Be.requestDirectoryDialog()}function pd(e){console.warn(`[command-palette] failed to open draft mini chat window`,e)}function md(e){return e.slug!==`home`}function hd(e){return(typeof e.time?.updated==`number`?e.time.updated:0)||(typeof e.time?.created==`number`?e.time.created:0)}function gd(e){return e.worktreeMetadata}function _d(e){return{path:Uu(e.path),name:e.name,relativePath:e.relativePath}}function vd(e){return{item:e,score:0}}function yd(e){return e.searchText}function bd(e){return e.searchText}function xd(e){return{item:e,score:0}}function Sd(e){return e.title||``}function Cd(e){return{...e,displayName:e.label||e.path.split(`/`).pop()||e.path,searchText:`${e.label||``} ${e.path}`}}function wd(e){return e.searchText}function Td(e){return e.item}function Ed(e){return e.item}function Dd(e){return e.item}function Od(e){return e.item}function kd(e){return e.item}function Ad(e){return e.length?e[0].score:1/0}function jd(e,t){return e.score-t.score}function Md(e){return e.key}function Nd(e){return(0,$.jsx)(Ni,{value:e.id,onSelect:e.onSelect,className:Vu,children:(0,$.jsx)(Bu,{title:e.title})},e.id)}var Pd=(e,t,n)=>gi(e)?fi(e,n).map(_i):t,Fd=()=>{let e=(0,Ts.c)(69),{t}=Fe(),n=u(Id),r=u(Ld),i=u(Rd),a;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(a=mi(),e[0]=a):a=e[0];let o=a,s;e[1]===Symbol.for(`react.memo_cache_sentinel`)?(s=m(),e[1]=s):s=e[1];let c=s,l,d,f,p,h,g,_,v,y;if(e[2]!==n||e[3]!==r||e[4]!==i||e[5]!==t){let a=[{categoryKey:`helpDialog.section.navigationCommands`,items:[{id:`open_command_palette`,descriptionKey:`helpDialog.item.openCommandPalette`,icon:`command`,keys:``},{id:`open_help`,descriptionKey:`helpDialog.item.showKeyboardShortcuts`,icon:`question`,keys:``},{id:`toggle_sidebar`,descriptionKey:`helpDialog.item.toggleSessionSidebar`,icon:`layout-left`,keys:``},{id:`cycle_agent`,keys:``,descriptionKey:`helpDialog.item.cycleAgent`,icon:`ai-agent`},{id:`open_model_selector`,descriptionKey:`helpDialog.item.openModelSelector`,icon:`ai-generate-2`,keys:``},{keys:[`↑↓`],descriptionKey:`helpDialog.item.navigateModels`,icon:`ai-generate-2`},{keys:[`←→`],descriptionKey:`helpDialog.item.adjustThinkingMode`,icon:`brain-ai-3`},{id:`cycle_thinking_variant`,descriptionKey:`helpDialog.item.cycleThinkingVariant`,icon:`brain-ai-3`,keys:``},{keys:[`Shift + ${o} + N`],descriptionKey:`helpDialog.item.newWindow`,icon:`window`}]},{categoryKey:`helpDialog.section.sessionManagement`,items:[{id:`new_chat`,descriptionKey:`helpDialog.item.createNewSession`,icon:`add`,keys:``},{id:`new_chat_worktree`,descriptionKey:`helpDialog.item.createNewWorktreeDraft`,icon:`git-branch`,keys:``},{id:`previous_session`,descriptionKey:`helpDialog.item.previousSession`,icon:`arrow-left`,keys:``},{id:`next_session`,descriptionKey:`helpDialog.item.nextSession`,icon:`arrow-right`,keys:``},{id:`focus_input`,descriptionKey:`helpDialog.item.focusChatInput`,icon:`text`,keys:``},{id:`toggle_prompt_navigator`,descriptionKey:`helpDialog.item.togglePromptNavigator`,icon:`list-unordered`,keys:``},{id:`abort_run`,descriptionKey:`helpDialog.item.abortActiveRun`,icon:`close-circle`,keys:``}]},{categoryKey:`helpDialog.section.leaderChords`,items:[{keys:`Ctrl+X → M`,descriptionKey:`helpDialog.item.leaderOpenModel`,icon:`ai-generate-2`},{keys:`Ctrl+X → A`,descriptionKey:`helpDialog.item.leaderOpenAgent`,icon:`ai-agent`},{keys:`Ctrl+X → N`,descriptionKey:`helpDialog.item.leaderNewSession`,icon:`add`},{keys:`Ctrl+X → C`,descriptionKey:`helpDialog.item.leaderCompact`,icon:`scissors`}]},{categoryKey:`helpDialog.section.panels`,items:[{id:`toggle_right_sidebar`,descriptionKey:`helpDialog.item.toggleRightSidebar`,icon:`layout-right`,keys:``},{id:`open_right_sidebar_git`,descriptionKey:`helpDialog.item.openRightSidebarGitTab`,icon:`git-branch`,keys:``},{id:`open_right_sidebar_files`,descriptionKey:`helpDialog.item.openRightSidebarFilesTab`,icon:`layout-right`,keys:``},{id:`cycle_right_sidebar_tab`,descriptionKey:`helpDialog.item.cycleRightSidebarTab`,icon:`layout-right`,keys:``},{id:`close_context_panel_tab`,descriptionKey:`helpDialog.item.closeContextPanelTab`,icon:`close`,keys:``},{id:`toggle_terminal`,descriptionKey:`helpDialog.item.toggleTerminal`,icon:`window`,keys:``},{id:`new_terminal_tab`,descriptionKey:`helpDialog.item.newTerminalTab`,icon:`terminal-box`,keys:``},{id:`open_new_terminal`,descriptionKey:`helpDialog.item.openNewTerminal`,icon:`terminal-box`,keys:``},{id:`previous_terminal_tab`,descriptionKey:`helpDialog.item.previousTerminalTab`,icon:`arrow-left`,keys:``},{id:`next_terminal_tab`,descriptionKey:`helpDialog.item.nextTerminalTab`,icon:`arrow-right`,keys:``},{id:`toggle_bottom_panel`,descriptionKey:`helpDialog.item.toggleBottomPanel`,icon:`window`,keys:``},{id:`toggle_terminal_expanded`,descriptionKey:`helpDialog.item.toggleTerminalExpanded`,icon:`window`,keys:``}]},{categoryKey:`helpDialog.section.interface`,items:[{id:`cycle_theme`,descriptionKey:`helpDialog.item.cycleTheme`,icon:`palette`,keys:``},{id:`zoom_in`,descriptionKey:`helpDialog.item.zoomIn`,icon:`add`,keys:``},{id:`zoom_out`,descriptionKey:`helpDialog.item.zoomOut`,icon:`subtract`,keys:``},{id:`zoom_reset`,descriptionKey:`helpDialog.item.zoomReset`,icon:`restart`,keys:``},{keys:[`${o} + 1...9`],descriptionKey:`helpDialog.item.switchSession`,icon:`layout-left`},{id:`toggle_services_menu`,descriptionKey:`helpDialog.item.toggleServicesMenu`,icon:`stack`,keys:``},{id:`open_usage`,descriptionKey:`helpDialog.item.openUsage`,icon:`timer`,keys:``},{id:`cycle_services_tab`,descriptionKey:`helpDialog.item.cycleServicesTab`,icon:`stack`,keys:``},{id:`open_settings`,descriptionKey:`helpDialog.item.openSettings`,icon:`settings-3`,keys:``}]}];d=mn,v=n,y=r,l=dn,g=`max-w-2xl w-[min(42rem,calc(100vw-1.5rem))] max-h-[calc(100dvh-2rem)] flex flex-col overflow-hidden`;let s;e[15]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,$.jsx)(Z,{name:`settings-3`,className:`h-5 w-5`}),e[15]=s):s=e[15];let u;e[16]===t?u=e[17]:(u=t(`helpDialog.title`),e[16]=t,e[17]=u);let m;e[18]===u?m=e[19]:(m=(0,$.jsxs)(fn,{className:`flex items-center gap-2`,children:[s,u]}),e[18]=u,e[19]=m);let b;e[20]===t?b=e[21]:(b=t(`helpDialog.description`),e[20]=t,e[21]=b);let x;e[22]===b?x=e[23]:(x=(0,$.jsx)(pn,{children:b}),e[22]=b,e[23]=x),e[24]!==m||e[25]!==x?(_=(0,$.jsxs)(ln,{children:[m,x]}),e[24]=m,e[25]=x,e[26]=_):_=e[26],h=`flex-1 overflow-y-auto mt-3 pr-1`,f=`space-y-4`,p=a.map(e=>(0,$.jsxs)(`div`,{children:[(0,$.jsx)(`h3`,{className:`typography-meta font-semibold text-muted-foreground uppercase tracking-wider mb-2`,children:t(e.categoryKey)}),(0,$.jsx)(`div`,{className:`space-y-1`,children:e.items.filter(e=>!(c&&e.id===`toggle_prompt_navigator`)).map(e=>{let n=e.id?Pd(e.id,Array.isArray(e.keys)?e.keys[0]:e.keys,i):Array.isArray(e.keys)?e.keys:e.keys.split(` / `);return(0,$.jsxs)(`div`,{className:`flex items-center justify-between py-1 px-2`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[e.icon&&(0,$.jsx)(Z,{name:e.icon,className:`h-3.5 w-3.5 text-muted-foreground`}),(0,$.jsx)(`span`,{className:`typography-meta`,children:t(e.descriptionKey)})]}),(0,$.jsx)(`div`,{className:`flex items-center gap-1`,children:(Array.isArray(n)?n:[n]).map((e,n)=>(0,$.jsxs)(Q.Fragment,{children:[n>0&&(0,$.jsx)(`span`,{className:`typography-meta text-muted-foreground mx-1`,children:t(`helpDialog.keyCombiner.or`)}),(0,$.jsx)(Fi,{shortcut:e})]},`${e}-${n}`))})]},e.id||e.descriptionKey)})})]},e.categoryKey)),e[2]=n,e[3]=r,e[4]=i,e[5]=t,e[6]=l,e[7]=d,e[8]=f,e[9]=p,e[10]=h,e[11]=g,e[12]=_,e[13]=v,e[14]=y}else l=e[6],d=e[7],f=e[8],p=e[9],h=e[10],g=e[11],_=e[12],v=e[13],y=e[14];let b;e[27]!==f||e[28]!==p?(b=(0,$.jsx)(`div`,{className:f,children:p}),e[27]=f,e[28]=p,e[29]=b):b=e[29];let x;e[30]===Symbol.for(`react.memo_cache_sentinel`)?(x=(0,$.jsx)(Z,{name:`question`,className:`h-3.5 w-3.5 text-muted-foreground mt-0.5`}),e[30]=x):x=e[30];let S;e[31]===t?S=e[32]:(S=t(`helpDialog.proTips.title`),e[31]=t,e[32]=S);let C;e[33]===S?C=e[34]:(C=(0,$.jsx)(`p`,{className:`font-medium mb-1`,children:S}),e[33]=S,e[34]=C);let w;e[35]!==i||e[36]!==t?(w=t(`helpDialog.proTips.commandPalette`,{shortcut:_i(fi(`open_command_palette`,i)[0]??``)}),e[35]=i,e[36]=t,e[37]=w):w=e[37];let T;e[38]===w?T=e[39]:(T=(0,$.jsxs)(`li`,{children:[`• `,w]}),e[38]=w,e[39]=T);let E;e[40]===t?E=e[41]:(E=t(`helpDialog.proTips.recentSessions`),e[40]=t,e[41]=E);let D;e[42]===E?D=e[43]:(D=(0,$.jsxs)(`li`,{children:[`• `,E]}),e[42]=E,e[43]=D);let O;e[44]===t?O=e[45]:(O=t(`helpDialog.proTips.themeCycling`),e[44]=t,e[45]=O);let k;e[46]===O?k=e[47]:(k=(0,$.jsxs)(`li`,{children:[`• `,O]}),e[46]=O,e[47]=k);let A;e[48]!==T||e[49]!==D||e[50]!==k?(A=(0,$.jsxs)(`ul`,{className:`space-y-0.5 typography-meta`,children:[T,D,k]}),e[48]=T,e[49]=D,e[50]=k,e[51]=A):A=e[51];let j;e[52]!==C||e[53]!==A?(j=(0,$.jsx)(`div`,{className:`mt-4 p-2 bg-muted/30 rounded-xl`,children:(0,$.jsxs)(`div`,{className:`flex items-start gap-2`,children:[x,(0,$.jsxs)(`div`,{className:`typography-meta text-muted-foreground`,children:[C,A]})]})}),e[52]=C,e[53]=A,e[54]=j):j=e[54];let M;e[55]!==j||e[56]!==h||e[57]!==b?(M=(0,$.jsxs)(`div`,{className:h,children:[b,j]}),e[55]=j,e[56]=h,e[57]=b,e[58]=M):M=e[58];let N;e[59]!==l||e[60]!==M||e[61]!==g||e[62]!==_?(N=(0,$.jsxs)(l,{className:g,children:[_,M]}),e[59]=l,e[60]=M,e[61]=g,e[62]=_,e[63]=N):N=e[63];let P;return e[64]!==d||e[65]!==N||e[66]!==v||e[67]!==y?(P=(0,$.jsx)(d,{open:v,onOpenChange:y,children:N}),e[64]=d,e[65]=N,e[66]=v,e[67]=y,e[68]=P):P=e[68],P};function Id(e){return e.isHelpDialogOpen}function Ld(e){return e.setHelpDialogOpen}function Rd(e){return e.shortcutOverrides}var zd=()=>{let e=(0,Ts.c)(32),{t}=Fe(),n=u(Bd),r=u(Vd),i=u(Hd),a;e[0]!==i||e[1]!==t?(a=async()=>{if(i){if((await Le(i)).ok){Y.success(t(`openCodeStatusDialog.toast.copiedTitle`),{description:t(`openCodeStatusDialog.toast.copiedDescription`)});return}Y.error(t(`openCodeStatusDialog.toast.copyFailed`))}},e[0]=i,e[1]=t,e[2]=a):a=e[2];let o=a,s;e[3]===t?s=e[4]:(s=t(`openCodeStatusDialog.title`),e[3]=t,e[4]=s);let c;e[5]===s?c=e[6]:(c=(0,$.jsx)(fn,{children:s}),e[5]=s,e[6]=c);let l;e[7]===t?l=e[8]:(l=t(`openCodeStatusDialog.description`),e[7]=t,e[8]=l);let d;e[9]===l?d=e[10]:(d=(0,$.jsx)(pn,{children:l}),e[9]=l,e[10]=d);let f;e[11]!==c||e[12]!==d?(f=(0,$.jsxs)(ln,{children:[c,d]}),e[11]=c,e[12]=d,e[13]=f):f=e[13];let p;e[14]===t?p=e[15]:(p=t(`openCodeStatusDialog.actions.copy`),e[14]=t,e[15]=p);let m;e[16]!==o||e[17]!==p?(m=(0,$.jsx)(`div`,{className:`flex items-center justify-end`,children:(0,$.jsx)(`button`,{type:`button`,onClick:o,className:`app-region-no-drag inline-flex h-9 items-center justify-center rounded-md px-3 typography-ui-label font-medium text-muted-foreground transition-colors hover:bg-interactive-hover hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary`,children:p})}),e[16]=o,e[17]=p,e[18]=m):m=e[18];let h;e[19]!==i||e[20]!==t?(h=i||t(`openCodeStatusDialog.empty.noData`),e[19]=i,e[20]=t,e[21]=h):h=e[21];let g;e[22]===h?g=e[23]:(g=(0,$.jsx)(`pre`,{className:`max-h-[60vh] overflow-auto rounded-lg bg-surface-muted p-4 typography-code text-foreground whitespace-pre-wrap`,children:h}),e[22]=h,e[23]=g);let _;e[24]!==f||e[25]!==m||e[26]!==g?(_=(0,$.jsxs)(dn,{className:`max-w-2xl`,children:[f,m,g]}),e[24]=f,e[25]=m,e[26]=g,e[27]=_):_=e[27];let v;return e[28]!==n||e[29]!==r||e[30]!==_?(v=(0,$.jsx)(mn,{open:n,onOpenChange:r,children:_}),e[28]=n,e[29]=r,e[30]=_,e[31]=v):v=e[31],v};function Bd(e){return e.isOpenCodeStatusDialogOpen}function Vd(e){return e.setOpenCodeStatusDialogOpen}function Hd(e){return e.openCodeStatusText}var Ud=`__other__`;function Wd(e){return e.time?.updated??e.time?.archived??e.time?.created??0}function Gd(){let{t:e}=Fe(),{isMobile:t,isTablet:n,hasTouchInput:r}=Ai(),i=t||n||r,a=u(e=>e.isArchivedSessionsDialogOpen),o=u(e=>e.setArchivedSessionsDialogOpen),s=vt(e=>e.projects),c=Tt(e=>e.archivedSessions),l=Ft(e=>e.setCurrentSession),d=u(e=>e.setSettingsDialogOpen),[f,p]=Q.useState(!1),[h,g]=Q.useState(null),[_,v]=Q.useState(null);Q.useEffect(()=>{if(!a){g(null),v(null);return}let t=!1;return p(!0),Yt().catch(()=>{t||Y.error(e(`settings.openchamber.archivedSessions.toast.loadFailed`))}).finally(()=>{t||p(!1)}),()=>{t=!0}},[a,e]);let y=Q.useMemo(()=>{let t=s.map(e=>({id:e.id,normalizedPath:e.path})),n=Wo([],t,new Map,m(),c),r=new Map;for(let[e,t]of n.archivedSessionsByProject)r.set(e,[...t].sort((e,t)=>Wd(t)-Wd(e)));let i=new Set;for(let e of r.values())for(let t of e)i.add(t.id);let a=c.filter(e=>!i.has(e.id)).sort((e,t)=>Wd(t)-Wd(e));a.length>0&&r.set(Ud,a);let o=[];for(let e of s){let t=r.get(e.id)??[];t.length!==0&&o.push({projectId:e.id,label:e.label||e.path,path:e.path,sessions:t})}let l=r.get(Ud);return l&&l.length>0&&o.push({projectId:Ud,label:e(`settings.openchamber.archivedSessions.otherProjects`),path:null,sessions:l}),o.sort((e,t)=>t.sessions.length-e.sessions.length||e.label.localeCompare(t.label)),o},[c,s,e]),b=c.length,x=h?y.find(e=>e.projectId===h)??null:null,S=Q.useCallback(async t=>{v(t.id);try{await Ze(t.id)?Y.success(e(`settings.openchamber.archivedSessions.toast.restored`)):Y.error(e(`settings.openchamber.archivedSessions.toast.restoreFailed`))}finally{v(null)}},[e]),C=Q.useCallback(e=>{let t=Rt(e);l(e.id,t),o(!1),d(!1)},[l,o,d]),w=x?x.label:e(`settings.openchamber.archivedSessions.dialog.title`),T=x?x.sessions.length===1?e(`settings.openchamber.archivedSessions.dialog.sessionCountSingle`,{count:x.sessions.length}):e(`settings.openchamber.archivedSessions.dialog.sessionCountPlural`,{count:x.sessions.length}):e(`settings.openchamber.archivedSessions.dialog.description`),E=(0,$.jsxs)(`div`,{className:`space-y-3`,children:[x?(0,$.jsxs)(Sn,{type:`button`,variant:`ghost`,size:`sm`,className:`!h-7 !px-2 !font-normal text-muted-foreground`,onClick:()=>g(null),children:[(0,$.jsx)(Z,{name:`arrow-left-s`,className:`mr-1 h-4 w-4`}),e(`settings.openchamber.archivedSessions.dialog.backToProjects`)]}):null,f?(0,$.jsxs)(`div`,{className:`flex items-center gap-2 typography-meta text-muted-foreground py-6`,children:[(0,$.jsx)(Z,{name:`loader-4`,className:`h-4 w-4 animate-spin`}),e(`settings.openchamber.archivedSessions.dialog.loading`)]}):x?x.sessions.length===0?(0,$.jsx)(`div`,{className:`rounded-lg border border-dashed border-border p-4 typography-meta text-muted-foreground`,children:e(`settings.openchamber.archivedSessions.dialog.emptyProject`)}):(0,$.jsx)(`div`,{className:`space-y-1.5`,children:x.sessions.map(t=>{let n=Rt(t),r=Wd(t),i=_===t.id;return(0,$.jsxs)(`div`,{className:`flex flex-col gap-2 rounded-lg border border-border/60 px-3 py-2.5 sm:flex-row sm:items-center sm:gap-3`,children:[(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(`div`,{className:`typography-ui-label font-medium text-foreground truncate`,children:t.title||e(`sessions.sidebar.session.untitled`)}),(0,$.jsxs)(`div`,{className:`typography-meta text-muted-foreground truncate`,children:[r>0?br(r):null,r>0&&n?` · `:null,n?yn(n):null]})]}),(0,$.jsxs)(`div`,{className:`flex items-center gap-1.5 shrink-0`,children:[(0,$.jsx)(Sn,{type:`button`,variant:`outline`,size:`xs`,className:`!font-normal`,disabled:i,onClick:()=>C(t),children:e(`settings.openchamber.archivedSessions.actions.preview`)}),(0,$.jsxs)(Sn,{type:`button`,variant:`default`,size:`xs`,className:`!font-normal`,disabled:i,onClick:()=>void S(t),children:[i?(0,$.jsx)(Z,{name:`loader-4`,className:`mr-1 h-3.5 w-3.5 animate-spin`}):(0,$.jsx)(Z,{name:`inbox-unarchive`,className:`mr-1 h-3.5 w-3.5`}),e(`settings.openchamber.archivedSessions.actions.restore`)]})]})]},t.id)})}):y.length===0?(0,$.jsx)(`div`,{className:`rounded-lg border border-dashed border-border p-4 typography-meta text-muted-foreground`,children:e(`settings.openchamber.archivedSessions.dialog.empty`)}):(0,$.jsx)(`div`,{className:`space-y-1.5`,children:y.map(t=>(0,$.jsxs)(`button`,{type:`button`,onClick:()=>g(t.projectId),className:X(`flex w-full items-center gap-3 rounded-lg border border-border/60 px-3 py-2.5 text-left`,`hover:bg-interactive-hover/50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50`),children:[(0,$.jsx)(Z,{name:`folder`,className:`h-4 w-4 shrink-0 text-muted-foreground`}),(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(`div`,{className:`typography-ui-label font-medium text-foreground truncate`,children:t.label}),t.path?(0,$.jsx)(`div`,{className:`typography-meta text-muted-foreground truncate`,children:yn(t.path)}):null]}),(0,$.jsx)(`span`,{className:`typography-meta tabular-nums text-muted-foreground shrink-0`,children:t.sessions.length===1?e(`settings.openchamber.archivedSessions.dialog.sessionCountSingle`,{count:t.sessions.length}):e(`settings.openchamber.archivedSessions.dialog.sessionCountPlural`,{count:t.sessions.length})}),(0,$.jsx)(Z,{name:`arrow-right-s`,className:`h-4 w-4 shrink-0 text-muted-foreground`})]},t.projectId))}),!x&&!f&&b>0?(0,$.jsx)(`p`,{className:`typography-meta text-muted-foreground`,children:e(b===1?`settings.openchamber.archivedSessions.summarySingle`:`settings.openchamber.archivedSessions.summaryPlural`,{count:b})}):null]});return i?(0,$.jsx)(zi,{open:a,title:w,onClose:()=>o(!1),contentMaxHeightClassName:`max-h-[min(80vh,640px)]`,renderHeader:e=>(0,$.jsxs)(`div`,{className:`flex flex-col gap-1 border-b border-border/40 px-3 py-2`,children:[(0,$.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,$.jsx)(`h2`,{className:`typography-ui-label font-semibold text-foreground`,children:w}),e]}),(0,$.jsx)(`p`,{className:`typography-micro text-muted-foreground`,children:T})]}),children:E}):(0,$.jsx)(mn,{open:a,onOpenChange:o,children:(0,$.jsxs)(dn,{className:`max-h-[85vh] max-w-2xl overflow-y-auto`,children:[(0,$.jsxs)(ln,{children:[(0,$.jsx)(fn,{children:w}),(0,$.jsx)(pn,{children:T})]}),E]})})}var Kd=e=>{let t=(0,Ts.c)(12),{normalizedProjects:n,ownership:r,isSessionsLoading:i,fullCatalogSessionIds:a,fullCatalogGeneration:o,foldersMap:s,createFolder:c,addSessionToFolder:l,cleanupSessions:u,enabled:d}=e,f=d===void 0||d,p,m;t[0]!==l||t[1]!==u||t[2]!==c||t[3]!==f||t[4]!==s||t[5]!==o||t[6]!==a||t[7]!==i||t[8]!==n||t[9]!==r?(p=()=>{!f||i||n.forEach(e=>{let t=yr(e.normalizedPath),n=r.archivedSessionsByProject.get(e.id)??[],i=s[t]??[],d=new Map(i.map(qd));n.forEach(n=>{let r=$n(n,e.normalizedPath),i=r.toLowerCase(),a=d.get(i);a||(a=c(t,r),d.set(i,a)),a.sessionIds.includes(n.id)||l(t,a.id,n.id)}),o>0&&u(t,a)})},m=[f,n,r,i,o,a,s,c,l,u],t[0]=l,t[1]=u,t[2]=c,t[3]=f,t[4]=s,t[5]=o,t[6]=a,t[7]=i,t[8]=n,t[9]=r,t[10]=p,t[11]=m):(p=t[10],m=t[11]),Q.useEffect(p,m)};function qd(e){return[e.name.toLowerCase(),e]}var Jd=e=>{let t=(0,Ts.c)(41),{normalizedProjects:n,getSessionsForProject:r,getArchivedSessionsForProject:i,availableWorktreesByProject:a,projectRepoStatus:o,projectRootBranches:s,lastRepoStatus:c,buildGroupedSessions:l,hasSessionSearchQuery:u,normalizedSessionSearchQuery:d,filterSessionNodesForSearch:f,buildGroupSearchText:m,foldersMap:h}=e,g;if(t[0]!==a||t[1]!==l||t[2]!==i||t[3]!==r||t[4]!==c||t[5]!==n||t[6]!==o||t[7]!==s){let e;t[9]!==a||t[10]!==l||t[11]!==i||t[12]!==r||t[13]!==c||t[14]!==o||t[15]!==s?(e=e=>{let t=nr([...r(e.id),...i(e.id)]),n=a.get(e.normalizedPath)??[],u=o.has(e.id)?!!o.get(e.id):c;return{project:e,groups:l(t,e.normalizedPath,n,s.get(e.id)??null,u)}},t[9]=a,t[10]=l,t[11]=i,t[12]=r,t[13]=c,t[14]=o,t[15]=s,t[16]=e):e=t[16],g=n.map(e),t[0]=a,t[1]=l,t[2]=i,t[3]=r,t[4]=c,t[5]=n,t[6]=o,t[7]=s,t[8]=g}else g=t[8];let _=g,v=_,y;if(t[17]!==m||t[18]!==f||t[19]!==h||t[20]!==u||t[21]!==d||t[22]!==v){bb0:{let e=new WeakMap;if(!u){y=e;break bb0}let t=e=>e.reduce((e,n)=>e+1+t(n.children),0);v.forEach(n=>{n.groups.forEach(n=>{let r=f(n.sessions,d),i=t(r),a=m(n).includes(d),o=p(n.directory??null),s=(o?h[o]??[]:[]).filter(e=>e.name.toLowerCase().includes(d)).length;e.set(n,{filteredNodes:r,matchedSessionCount:i,folderNameMatchCount:s,groupMatches:a,hasMatch:a||i>0||s>0})})}),y=e}t[17]=m,t[18]=f,t[19]=h,t[20]=u,t[21]=d,t[22]=v,t[23]=y}else y=t[23];let b=y,x;bb1:{if(!u){x=v;break bb1}let e;if(t[24]!==b||t[25]!==v){let n;t[27]===b?n=t[28]:(n=e=>({...e,groups:e.groups.filter(e=>b.get(e)?.hasMatch===!0)}),t[27]=b,t[28]=n),e=v.map(n).filter(Yd),t[24]=b,t[25]=v,t[26]=e}else e=t[26];x=e}let S=x,C=u?S:v,w;bb2:{if(!u){w=0;break bb2}let e;if(t[29]!==b||t[30]!==C){let n;t[32]===b?n=t[33]:(n=(e,t)=>e+t.groups.reduce((e,t)=>{let n=b.get(t);if(!n)return e;let r=n.folderNameMatchCount+ +!!n.groupMatches;return e+n.matchedSessionCount+r},0),t[32]=b,t[33]=n),e=C.reduce(n,0),t[29]=b,t[30]=C,t[31]=e}else e=t[31];w=e}let T=w,E;return t[34]!==b||t[35]!==_||t[36]!==T||t[37]!==S||t[38]!==C||t[39]!==v?(E={projectSections:_,visibleProjectSections:v,groupSearchDataByGroup:b,searchableProjectSections:S,sectionsForRender:C,searchMatchCount:T},t[34]=b,t[35]=_,t[36]=T,t[37]=S,t[38]=C,t[39]=v,t[40]=E):E=t[40],E};function Yd(e){return e.groups.length>0}var Xd=e=>{let t=(0,Ts.c)(26),{projectSections:n,activeProjectId:r,activeSessionByProject:i,setActiveSessionByProject:a,currentSessionId:o,handleSessionSelect:s,newSessionDraftOpen:c,mobileVariant:l,openNewSessionDraft:d,setActiveMainTab:f,setSessionSwitcherOpen:m}=e,h,g;if(t[0]!==n){g=new Map,h=new Map;let e=(t,n,r,i)=>{g.has(t)||g.set(t,new Map);let a=g.get(t);i.forEach(i=>{let o=p(i.worktree?.path??i.session.directory??r??n);a.set(i.session.id,{directory:o}),h.has(t)||h.set(t,{id:i.session.id,directory:o}),i.children.length>0&&e(t,n,o,i.children)})};n.forEach(t=>{t.groups.forEach(n=>{e(t.project.id,t.project.normalizedPath,n.directory,n.sessions)})}),t[0]=n,t[1]=h,t[2]=g}else h=t[1],g=t[2];let _;t[3]!==h||t[4]!==g?(_={metaByProject:g,firstSessionByProject:h},t[3]=h,t[4]=g,t[5]=_):_=t[5];let v=_,y=Q.useRef(null),b,x;t[6]!==r||t[7]!==i||t[8]!==o||t[9]!==s||t[10]!==l||t[11]!==c||t[12]!==d||t[13]!==n||t[14]!==v||t[15]!==f||t[16]!==a||t[17]!==m?(b=()=>{if(!r||c||u.getState().isNewWorktreeDialogOpen||y.current===r)return;let e=n.find(e=>e.project.id===r);if(!e)return;y.current=r;let t=v.metaByProject.get(r);if(o&&t&&t.has(o)){a(e=>{if(e.get(r)===o)return e;let t=new Map(e);return t.set(r,o),t});return}if(o&&t)return;if(!t||t.size===0){f(`chat`),l&&m(!1),d({directoryOverride:e.project.normalizedPath});return}let p=i.get(r),h=p&&t.has(p)?p:null,g=v.firstSessionByProject.get(r)?.id??null,_=h??g;if(!_||_===o)return;let b=t.get(_)?.directory??null;s(_,b,r)},x=[r,i,o,s,c,l,d,n,v,f,m,a],t[6]=r,t[7]=i,t[8]=o,t[9]=s,t[10]=l,t[11]=c,t[12]=d,t[13]=n,t[14]=v,t[15]=f,t[16]=a,t[17]=m,t[18]=b,t[19]=x):(b=t[18],x=t[19]),Q.useLayoutEffect(b,x);let S,C;t[20]!==r||t[21]!==o||t[22]!==v||t[23]!==a?(S=()=>{if(!r||!o)return;let e=v.metaByProject.get(r);!e||!e.has(o)||a(e=>{if(e.get(r)===o)return e;let t=new Map(e);return t.set(r,o),t})},C=[r,o,v,a],t[20]=r,t[21]=o,t[22]=v,t[23]=a,t[24]=S,t[25]=C):(S=t[24],C=t[25]),Q.useEffect(S,C)},Zd=e=>{let t=(0,Ts.c)(4),n;t[0]===e?n=t[1]:(n=(t,n)=>{let r=e.get(t);if(!r||r.length===0)return n;let i=new Map(n.map(Qd)),a=[];return r.forEach(e=>{let t=i.get(e);t&&(a.push(t),i.delete(e))}),n.forEach(e=>{i.has(e.id)&&a.push(e)}),a},t[0]=e,t[1]=n);let r=n,i;return t[2]===r?i=t[3]:(i={getOrderedGroups:r},t[2]=r,t[3]=i),i};function Qd(e){return[e.id,e]}var $d=e=>{let{t}=Fe(),n=Q.useCallback(e=>[e.label,e.branch??``,e.description??``,e.directory??``].join(` `).toLowerCase(),[]),r=Q.useCallback(e=>{let n=p(e.directory??null)??``;return`${(e.title||t(`sessions.sidebar.session.untitled`)).trim()} ${n}`.toLowerCase()},[t]),i=Q.useCallback((e,t)=>t?e.flatMap(e=>{if(r(e.session).includes(t))return[e];let n=i(e.children,t);return n.length===0?[]:[{...e,children:n}]}):e,[r]);return{buildGroupSearchText:n,buildSessionSearchText:r,filterSessionNodesForSearch:i,buildGroupedSessions:Q.useCallback((n,r,i,a,o)=>{let s=p(r??null),c=new Map;i.forEach(e=>{if(e.path){let t=p(e.path)??e.path;c.set(t,e)}});let l=$o(n,{pinnedSessionIds:e.pinnedSessionIds,omitPinnedSessions:!0,getWorktree:t=>{let n=p(t.directory??null),r=e.worktreeMetadata.get(t.id)??null;if(r)return r;if(n){let e=c.get(n)??null;if(e&&n!==s)return e}return null}}),u=new Map,d=`__archived__`,f=t=>{if(t.time?.archived)return d;if(e.isVSCode)return s??`__project_root__`;let n=p(e.worktreeMetadata.get(t.id)?.path??null)??Rt(t);return n?n!==s&&c.has(n)?n:n===s?s??`__project_root__`:d:d};l.forEach(e=>{let t=f(e.session);u.has(t)||u.set(t,[]),u.get(t)?.push(e)});let m=s??`__project_root__`,h=[{id:`root`,label:o&&a&&a!==`HEAD`?t(`sessions.sidebar.grouping.projectRootWithBranch`,{branch:a}):t(`sessions.sidebar.grouping.projectRoot`),branch:a??null,description:s?yn(s,e.homeDirectory):null,isMain:!0,isArchivedBucket:!1,worktree:null,directory:s,folderScopeKey:s,sessions:u.get(m)??[]}],g=new Map;i.forEach(e=>{let t=p(e.path)??e.path,n=u.get(t)??[],r=n.length>0,i=n.reduce((e,t)=>{let n=ze(t.session);return Number.isFinite(n)?Math.max(e,n):e},0);g.set(t,{hasActiveSession:r,lastUpdatedAt:i})});let _=[...i].sort((e,t)=>{let n=p(e.path)??e.path,r=p(t.path)??t.path,i=g.get(n)??{hasActiveSession:!1,lastUpdatedAt:0},a=g.get(r)??{hasActiveSession:!1,lastUpdatedAt:0};if(i.hasActiveSession!==a.hasActiveSession)return i.hasActiveSession?-1:1;if(i.hasActiveSession&&a.hasActiveSession)return a.lastUpdatedAt-i.lastUpdatedAt;let o=(e.label||e.branch||e.name||e.path||``).toLowerCase(),s=(t.label||t.branch||t.name||t.path||``).toLowerCase();return o.localeCompare(s)});(e.isVSCode?[]:_).forEach(t=>{let n=p(t.path)??t.path,r=e.gitBranches.get(n)?.trim()||null,i=t.branch?.trim()||null,a=r&&i&&t.label&&qn(t.label)===qn(i)?r:t.label||t.name||_n(n,e.homeDirectory)||n;h.push({id:`worktree:${n}`,label:a,branch:r||i,description:yn(n,e.homeDirectory),isMain:!1,isArchivedBucket:!1,worktree:t,directory:n,folderScopeKey:n,sessions:u.get(n)??[]})});let v=u.get(d)??[];return h.push({id:`archived`,label:t(`sessions.sidebar.grouping.archived`),branch:null,description:t(`sessions.sidebar.grouping.archivedDescription`),isMain:!1,isArchivedBucket:!0,worktree:null,directory:null,folderScopeKey:!e.isVSCode&&s?yr(s):null,sessions:v}),h},[e.homeDirectory,e.worktreeMetadata,e.pinnedSessionIds,e.gitBranches,e.isVSCode,t])}},ef=e=>{let t=(0,Ts.c)(9),{isSessionSearchOpen:n,setIsSessionSearchOpen:r,sessionSearchInputRef:i,sessionSearchContainerRef:a}=e,o,s;t[0]!==n||t[1]!==i?(o=()=>{if(!n||typeof window>`u`)return;let e=window.requestAnimationFrame(()=>{i.current?.focus(),i.current?.select()});return()=>window.cancelAnimationFrame(e)},s=[n,i],t[0]=n,t[1]=i,t[2]=o,t[3]=s):(o=t[2],s=t[3]),Q.useEffect(o,s);let c,l;t[4]!==n||t[5]!==a||t[6]!==r?(c=()=>{if(!n||typeof document>`u`)return;let e=e=>{a.current&&(a.current.contains(e.target)||r(!1))};return document.addEventListener(`mousedown`,e),()=>document.removeEventListener(`mousedown`,e)},l=[n,r,a],t[4]=n,t[5]=a,t[6]=r,t[7]=c,t[8]=l):(c=t[7],l=t[8]),Q.useEffect(c,l)},tf=e=>{let t=(0,Ts.c)(42),{t:n}=Fe(),[r,i]=Q.useState(null),a=Q.useRef(null),o,s;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(o=()=>()=>{a.current&&clearTimeout(a.current)},s=[],t[0]=o,t[1]=s):(o=t[0],s=t[1]),Q.useEffect(o,s);let c;t[2]===e?c=t[3]:(c=(t,n,r)=>{let i=()=>{!e.isSessionSearchOpen&&e.sessionSearchQuery.length===0||(e.setSessionSearchQuery(``),e.setIsSessionSearchOpen(!1))};if(r&&r!==e.activeProjectId&&e.setActiveProjectIdOnly(r),n&&n!==e.currentDirectory&&e.setDirectory(n,{showOverlay:!1}),e.setActiveMainTab(`chat`)){if(e.mobileVariant&&e.setSessionSwitcherOpen(!1),t===e.currentSessionId){e.allowReselect&&e.onSessionSelected?.(t),i();return}e.setCurrentSession(t,n??null),e.onSessionSelected?.(t),i()}},t[2]=e,t[3]=c);let l=c,u;t[4]===e?u=t[5]:(u=(t,n)=>{e.setEditingId(t),e.setEditTitle(n)},t[4]=e,t[5]=u);let d=u,f;t[6]===e?f=t[7]:(f=async t=>{if(!e.editingId)return;let n=(t??e.editTitle).trim();n&&await e.updateSessionTitle(e.editingId,n),e.setEditingId(null),e.setEditTitle(``)},t[6]=e,t[7]=f);let p=f,m;t[8]===e?m=t[9]:(m=()=>{e.setEditingId(null),e.setEditTitle(``)},t[8]=e,t[9]=m);let h=m,g;t[10]!==e||t[11]!==n?(g=async t=>{let r=await e.shareSession(t.id);r&&r.share?.url?Y.success(n(`sessions.sidebar.session.share.successTitle`),{description:n(`sessions.sidebar.session.share.successDescription`)}):Y.error(n(`sessions.sidebar.session.share.error`))},t[10]=e,t[11]=n,t[12]=g):g=t[12];let _=g,v;t[13]===n?v=t[14]:(v=(e,t)=>{Le(e).then(e=>{if(!e.ok){Y.error(n(`sessions.sidebar.session.share.copyUrlError`));return}i(t),a.current&&clearTimeout(a.current),a.current=window.setTimeout(()=>{i(null),a.current=null},2e3)}).catch(()=>{Y.error(n(`sessions.sidebar.session.share.copyUrlError`))})},t[13]=n,t[14]=v);let y=v,b;t[15]!==e||t[16]!==n?(b=async t=>{await e.unshareSession(t)?Y.success(n(`sessions.sidebar.session.unshare.success`)):Y.error(n(`sessions.sidebar.session.unshare.error`))},t[15]=e,t[16]=n,t[17]=b):b=t[17];let x=b,S;t[18]===e.childrenMap?S=t[19]:(S=t=>{let n=[],r=t=>{(e.childrenMap.get(t)??[]).forEach(e=>{n.push(e),r(e.id)})};return r(t),n},t[18]=e.childrenMap,t[19]=S);let C=S,w=rf,T;t[20]!==e||t[21]!==C||t[22]!==n?(T=async(t,r,i)=>{let a=r?.archivedBucket===!0||r?.hardDelete===!0,o=i?.descendantIds??w(C(t.id),a).map(af);if(o.length===0){if(a){Ko({sessionIds:[t.id],message:n(`sessions.sidebar.session.delete.success`),undoLabel:n(`sessions.sidebar.undo`),commitFailedMessage:n(`sessions.sidebar.session.delete.error`)});return}await e.archiveSession(t.id)?So({sessionIds:[t.id],message:n(`sessions.sidebar.session.archive.success`),undoLabel:n(`sessions.sidebar.undo`),settingsLabel:n(`settings.openchamber.archivedSessions.actions.view`),undoFailedMessage:n(`sessions.sidebar.session.archive.undoFailed`)}):Y.error(n(`sessions.sidebar.session.archive.error`));return}let s=[t.id,...o];if(a){Ko({sessionIds:s,message:s.length===1?n(`sessions.sidebar.bulkActions.deletedSingle`,{count:s.length}):n(`sessions.sidebar.bulkActions.deletedPlural`,{count:s.length}),undoLabel:n(`sessions.sidebar.undo`),commitFailedMessage:n(`sessions.sidebar.session.delete.error`)});return}let{archivedIds:c,failedIds:l}=await e.archiveSessions(s);c.length>0&&So({sessionIds:c,message:c.length===1?n(`sessions.sidebar.bulkActions.archivedSingle`,{count:c.length}):n(`sessions.sidebar.bulkActions.archivedPlural`,{count:c.length}),undoLabel:n(`sessions.sidebar.undo`),settingsLabel:n(`settings.openchamber.archivedSessions.actions.view`),undoFailedMessage:c.length===1?n(`sessions.sidebar.session.archive.undoFailed`):n(`sessions.sidebar.bulkActions.archiveUndoFailed`,{count:c.length})}),l.length>0&&Y.error(l.length===1?n(`sessions.sidebar.bulkActions.failedArchiveSingle`,{count:l.length}):n(`sessions.sidebar.bulkActions.failedArchivePlural`,{count:l.length}))},t[20]=e,t[21]=C,t[22]=n,t[23]=T):T=t[23];let E=T,D;t[24]!==e||t[25]!==C||t[26]!==E?(D=(t,n)=>{let r=n?.archivedBucket===!0||n?.hardDelete===!0,i=w(C(t.id),r).map(of);if(!r||!e.showDeletionDialog||n?.skipConfirm===!0){E(t,n,{descendantIds:i});return}e.setDeleteSessionConfirm({session:t,descendantCount:i.length,descendantIds:i,archivedBucket:r})},t[24]=e,t[25]=C,t[26]=E,t[27]=D):D=t[27];let O=D,k;t[28]!==e||t[29]!==E?(k=async()=>{if(!e.deleteSessionConfirm)return;let{session:t,archivedBucket:n,descendantIds:r}=e.deleteSessionConfirm;e.setDeleteSessionConfirm(null),await E(t,{archivedBucket:n},{descendantIds:r})},t[28]=e,t[29]=E,t[30]=k):k=t[30];let A=k,j;return t[31]!==A||t[32]!==r||t[33]!==h||t[34]!==y||t[35]!==O||t[36]!==p||t[37]!==d||t[38]!==l||t[39]!==_||t[40]!==x?(j={copiedSessionId:r,handleSessionSelect:l,handleSessionDoubleClick:d,handleSaveEdit:p,handleCancelEdit:h,handleShareSession:_,handleCopyShareUrl:y,handleUnshareSession:x,handleDeleteSession:O,confirmDeleteSession:A},t[31]=A,t[32]=r,t[33]=h,t[34]=y,t[35]=O,t[36]=p,t[37]=d,t[38]=l,t[39]=_,t[40]=x,t[41]=j):j=t[41],j};function nf(e){return!e.time?.archived}function rf(e,t){return t?e:e.filter(nf)}function af(e){return e.id}function of(e){return e.id}var sf=[`project:active:`,`project:archived:`,`pinned:active:`,`pinned:archived:`],cf=e=>{let{isVSCode:t,safeStorage:n,keys:r,groupOrderByProject:i,activeSessionByProject:a,collapsedGroups:o,setExpandedParents:s,setCollapsedProjects:c}=e,l=Q.useRef(null),u=Q.useRef(null),[d,f]=Q.useState(!1),p=Q.useCallback(()=>{if(t)return;let e=u.current;if(u.current=null,l.current=null,!e)return;let{projects:n}=vt.getState(),r=n.map(t=>({...t,sidebarCollapsed:e.has(t.id)}));R({projects:r}).catch(()=>{})},[t]),m=Q.useCallback(e=>{typeof window>`u`||t||(u.current=e,l.current!==null&&window.clearTimeout(l.current),l.current=window.setTimeout(()=>{p()},700))},[t,p]);return Q.useEffect(()=>()=>{typeof window<`u`&&l.current!==null&&window.clearTimeout(l.current),l.current=null,u.current=null},[]),Q.useEffect(()=>{try{let e=n.getItem(r.sessionExpanded);if(e){let t=JSON.parse(e);Array.isArray(t)&&s(new Set(t.filter(e=>typeof e==`string`)))}else{let e=n.getItem(r.sessionExpandedLegacy);if(e){try{let t=JSON.parse(e);if(Array.isArray(t)){let e=new Set;if(t.forEach(t=>{typeof t==`string`&&t.length!==0&&sf.forEach(n=>e.add(`${n}${t}`))}),e.size>0){s(e);try{n.setItem(r.sessionExpanded,JSON.stringify(Array.from(e)))}catch{}}}}catch{}try{n.removeItem?.(r.sessionExpandedLegacy)}catch{}}}let t=n.getItem(r.projectCollapse);if(t){let e=JSON.parse(t);Array.isArray(e)&&c(new Set(e.filter(e=>typeof e==`string`)))}}catch{}finally{f(!0)}},[r.projectCollapse,r.sessionExpanded,r.sessionExpandedLegacy,n,c,s]),Q.useEffect(()=>{try{let e=Object.fromEntries(i.entries());n.setItem(r.groupOrder,JSON.stringify(e))}catch{}},[i,r.groupOrder,n]),Q.useEffect(()=>{try{let e=Object.fromEntries(a.entries());n.setItem(r.projectActiveSession,JSON.stringify(e))}catch{}},[a,r.projectActiveSession,n]),Q.useEffect(()=>{try{n.setItem(r.groupCollapse,JSON.stringify(Array.from(o)))}catch{}},[o,r.groupCollapse,n]),{scheduleCollapsedProjectsPersist:m,hasRestoredProjectCollapse:d}},lf=async(e,t,n)=>{if(e.length===0)return[];let r=Math.max(1,Math.min(t,e.length)),i=Array(e.length),a=0,o=async()=>{for(;;){let t=a;if(a+=1,t>=e.length)return;i[t]=await n(e[t])}};return await Promise.all(Array.from({length:r},()=>o())),i},uf=e=>{let{normalizedProjects:t,activeProjectId:n,gitRepoStatus:r,setProjectRepoStatus:i,setProjectRootBranches:a,enabled:o=!0}=e,{git:s}=Xi(),c=ta(e=>e.ensureStatus),l=Q.useMemo(()=>o?t.filter(e=>e.id===n):[],[n,o,t]);Q.useEffect(()=>{if(!o||!s||l.length===0){if(!o)return;i(new Map);return}l.forEach(e=>{c(e.normalizedPath,s)})},[l,o,s,c,i]),Q.useEffect(()=>{let e=new Map;l.forEach(t=>{e.set(t.id,r.get(t.normalizedPath)?.isGitRepo??null)}),i(e)},[l,r,i]);let u=Q.useMemo(()=>l.map(e=>{let t=r.get(e.normalizedPath)?.branch??``;return`${e.id}:${t}`}).join(`|`),[l,r]),d=Q.useRef(new Map),f=Q.useRef(new Map);Q.useEffect(()=>{let e=!1,t=setTimeout(()=>{(async()=>{let t=new Set(l.map(e=>e.id));for(let e of d.current.keys())t.has(e)||(d.current.delete(e),f.current.delete(e));let n=Date.now(),i=l.filter(e=>{let t=r.get(e.normalizedPath);if(t?.isGitRepo===!1)return d.current.delete(e.id),f.current.delete(e.id),!1;if(t?.isGitRepo!==!0||t.branch===null)return!1;let i=t.branch.trim(),a=`${e.normalizedPath}\0${i}`,o=d.current.get(e.id);if(o===a){let t=f.current.get(e.id);return t&&(t.at=n),!1}return!(o!==void 0&&n-(f.current.get(e.id)?.at??0)<3e5)});if(i.length===0)return;let o=await lf(i,2,async e=>{let t=r.get(e.normalizedPath)?.branch?.trim()??``,n=`${e.normalizedPath}\0${t}`,i=await Gr(e.normalizedPath,t?{knownBranch:t}:void 0).catch(()=>null);return{id:e.id,inputKey:n,branch:i}});if(e)return;let s=o.filter(e=>e.branch);if(s.length===0)return;let c=Date.now();a(e=>{let t=new Map(e);return s.forEach(({id:e,branch:n})=>{n&&t.set(e,n)}),t}),s.forEach(({id:e,inputKey:t,branch:n})=>{d.current.set(e,t),n&&f.current.set(e,{branch:n,at:c})})})()},150);return()=>{e=!0,clearTimeout(t)}},[l,u,r,a])},df=e=>{let t=(0,Ts.c)(7),{ownership:n}=e,r;t[0]===n?r=t[1]:(r=e=>n.sessionsByProject.get(e)??[],t[0]=n,t[1]=r);let i=r,a;t[2]===n?a=t[3]:(a=e=>n.archivedSessionsByProject.get(e)??[],t[2]=n,t[3]=a);let o=a,s;return t[4]!==o||t[5]!==i?(s={getSessionsForProject:i,getArchivedSessionsForProject:o},t[4]=o,t[5]=i,t[6]=s):s=t[6],s},ff=e=>{let t=(0,Ts.c)(7),{isSessionsLoading:n,fullCatalogSessionIds:r,fullCatalogGeneration:i,normalizedProjects:a,cleanupSessions:o}=e,s,c;t[0]!==o||t[1]!==i||t[2]!==r||t[3]!==n||t[4]!==a?(s=()=>{if(n||i===0)return;let e=Bt.getState().foldersMap;new Set([...Object.keys(e),...a.map(pf)]).forEach(e=>{o(e,r)})},c=[o,i,r,n,a],t[0]=o,t[1]=i,t[2]=r,t[3]=n,t[4]=a,t[5]=s,t[6]=c):(s=t[5],c=t[6]),Q.useEffect(s,c)};function pf(e){return yr(e.normalizedPath)}var mf=e=>{let t=(0,Ts.c)(10),{isDesktopShellRuntime:n,projectSections:r,projectHeaderSentinelRefs:i,enabled:a}=e,o=a===void 0||a,s;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(s=new Set,t[0]=s):s=t[0];let[c,l]=Q.useState(s),u;t[1]!==o||t[2]!==n||t[3]!==i?(u=()=>{if(!o||!n){l(hf);return}let e=new IntersectionObserver(e=>{e.forEach(e=>{let t=e.target.dataset.projectId;t&&l(n=>{let r=new Set(n);return e.isIntersecting?r.delete(t):r.add(t),r})})},{threshold:0});return i.current.forEach(t=>{t&&e.observe(t)}),()=>e.disconnect()},t[1]=o,t[2]=n,t[3]=i,t[4]=u):u=t[4];let d;return t[5]!==o||t[6]!==n||t[7]!==i||t[8]!==r?(d=[o,n,i,r],t[5]=o,t[6]=n,t[7]=i,t[8]=r,t[9]=d):d=t[9],Q.useEffect(u,d),c};function hf(e){return e.size===0?e:new Set}var gf=9e4,_f=15e3,vf=3e5,yf=[2e3,5e3],bf=6e4,xf=12e4,Sf=3e5,Cf=4,wf=432e5,Tf=`openchamber.github-pr-status`,Ef=e=>e===`closed`||e===`merged`,Df=e=>{let t=e?.checks;return t?t.state===`pending`||t.pending>0:!1},Of=(e,t,n)=>`${e}::${t}`,kf=new Map,Af=new Map,jf=new Set,Mf=new Map,Nf=2,Pf=0,Ff=[],If=()=>Pf<Nf?(Pf+=1,Promise.resolve()):new Promise(e=>{Ff.push(e)}),Lf=()=>{let e=Ff.shift();if(e){e();return}Pf=Math.max(0,Pf-1)},Rf=()=>({status:null,isLoading:!1,error:null,isInitialStatusResolved:!1,lastRefreshAt:0,lastDiscoveryPollAt:0,watchers:0,params:null,identity:null,resolvedRemoteName:null}),zf=e=>e?.params?.directory&&e.params.branch?{directory:e.params.directory,branch:e.params.branch,remoteName:e.params.remoteName??e.resolvedRemoteName??e.identity?.remoteName??null}:!e?.identity?.directory||!e.identity.branch?null:e.identity,Bf=e=>{let t=zf(e);return!t?.directory||!t.branch?null:`${t.directory}::${t.branch}`},Vf=(e,t)=>Object.entries(e).filter(([,e])=>Bf(e)===t).map(([e])=>e),Hf=(e,t)=>{let n=t.remoteName??e.params?.remoteName??e.resolvedRemoteName??e.identity?.remoteName??null;return{...e,params:e.params?{...e.params,...t,remoteName:n}:{...t,remoteName:n},identity:{directory:t.directory,branch:t.branch,remoteName:n}}},Uf=e=>!e?.params?.canShow||!e.params.github?.prStatus?null:{...e.params,remoteName:e.params.remoteName??e.resolvedRemoteName??e.identity?.remoteName??null},Wf=(e,t,n)=>{let r=Vf(e,t),i=r.map(t=>Uf(e[t])).filter(e=>!!e);if(i.length===0)return null;let a=Uf(e[n]);if(a&&Bf(e[n])===t)return a;let o=r.map(t=>e[t]).find(e=>!!(e?.resolvedRemoteName&&Uf(e)));return o?Uf(o):i.find(e=>!!e.remoteName)||(i[0]??null)},Gf=e=>({status:e.status,isInitialStatusResolved:e.isInitialStatusResolved,lastRefreshAt:e.lastRefreshAt,lastDiscoveryPollAt:e.lastDiscoveryPollAt,identity:zf(e),resolvedRemoteName:e.resolvedRemoteName??e.status?.resolvedRemoteName??null}),Kf=e=>({...Rf(),status:e?.status??null,isInitialStatusResolved:e?.isInitialStatusResolved??!1,lastRefreshAt:e?.lastRefreshAt??0,lastDiscoveryPollAt:e?.lastDiscoveryPollAt??0,identity:e?.identity??null,resolvedRemoteName:e?.resolvedRemoteName??e?.status?.resolvedRemoteName??null}),qf=ne()(re((e,t)=>({entries:{},activeRequestCount:0,totalRequestCount:0,ensureEntry:t=>{e(e=>e.entries[t]?e:{entries:{...e.entries,[t]:Rf()}})},setParams:(t,n)=>{e(e=>{let r=e.entries[t]??Rf();return{entries:{...e.entries,[t]:Hf(r,n)}}})},startWatching:n=>{if(e(e=>{let t=e.entries[n]??Rf();return{entries:{...e.entries,[n]:{...t,watchers:t.watchers+1}}}}),kf.has(n))return;let r=e=>{let r=window.setTimeout(()=>{if(typeof document<`u`&&document.visibilityState!==`visible`)return;let e=t().entries[n];!e||e.watchers<=0||e.status?.pr||t().refresh(n,{force:!0,silent:!0,markInitialResolved:!0})},e),i=Af.get(n)??[];i.push(r),Af.set(n,i)};t().refresh(n,{force:!0,silent:!0,markInitialResolved:!0}),yf.forEach(e=>r(e));let i=window.setInterval(()=>{if(typeof document<`u`&&document.visibilityState!==`visible`)return;let r=t().entries[n];if(!(!r||r.watchers<=0)){if(!r.status?.pr){let i=Date.now();if(i-r.lastDiscoveryPollAt<vf)return;e(e=>{let t=e.entries[n];return t?{entries:{...e.entries,[n]:{...t,lastDiscoveryPollAt:i}}}:e}),t().refresh(n,{force:!0,silent:!0,markInitialResolved:!0});return}Ef(r.status?.pr?.state)||Date.now()-r.lastRefreshAt<(Df(r.status)?bf:r.status?.checks&&r.status.checks.state!==`pending`?Sf:xf)||t().refresh(n,{force:!0,onlyExistingPr:!0,silent:!0,markInitialResolved:!0})}},_f);kf.set(n,i)},stopWatching:n=>{e(e=>{let t=e.entries[n];if(!t)return e;let r=Math.max(0,t.watchers-1);return{entries:{...e.entries,[n]:{...t,watchers:r}}}});let r=t().entries[n];if(r&&r.watchers>0)return;let i=kf.get(n);typeof i==`number`&&window.clearInterval(i),kf.delete(n);let a=Af.get(n);a&&a.length>0&&a.forEach(e=>{window.clearTimeout(e)}),Af.delete(n)},refresh:async(n,r)=>{let i=t(),a=i.entries[n],o=Bf(a);if(!a||!o)return;let s=Vf(i.entries,o),c=s.some(e=>!!i.entries[e]?.status?.pr);if(r?.onlyExistingPr&&!c)return;let l=Mf.get(o)??0;if(!r?.force&&Date.now()-l<gf||jf.has(o))return;let u=Wf(i.entries,o,n);if(u){if(jf.add(o),Mf.set(o,Date.now()),e(e=>{let t={...e.entries};return s.forEach(e=>{let n=t[e];n&&(t[e]={...n,lastRefreshAt:Date.now(),isLoading:!r?.silent||n.isLoading,error:null})}),{entries:t}}),u.githubAuthChecked&&u.githubConnected===!1){e(e=>{let t={...e.entries};return s.forEach(e=>{let n=t[e];n&&(t[e]={...n,status:{connected:!1},error:null,isLoading:r?.silent?n.isLoading:!1,isInitialStatusResolved:r?.markInitialResolved!==!1||n.isInitialStatusResolved})}),{entries:t}}),jf.delete(o);return}if(!u.github?.prStatus){e(e=>{let t={...e.entries};return s.forEach(e=>{let n=t[e];n&&(t[e]={...n,status:null,error:`GitHub runtime API unavailable`,isLoading:r?.silent?n.isLoading:!1,isInitialStatusResolved:r?.markInitialResolved!==!1||n.isInitialStatusResolved})}),{entries:t}}),jf.delete(o);return}try{e(e=>({...e,activeRequestCount:e.activeRequestCount+1,totalRequestCount:e.totalRequestCount+1})),await If();let t;try{t=await u.github.prStatus(u.directory,u.branch,u.remoteName??void 0,{force:r?.force})}finally{Lf()}e(e=>{let n={...e.entries};return s.forEach(e=>{let i=n[e];if(!i)return;let a=i.status?.pr,o=t.pr,s=o&&a&&o.number===a.number&&(!o.body||!o.body.trim())&&typeof a.body==`string`&&a.body.trim().length>0&&o&&a?.body?{...t,pr:{...o,body:a.body}}:t,c=s.resolvedRemoteName??i.resolvedRemoteName??u.remoteName??null,l=zf(i)??{directory:u.directory,branch:u.branch,remoteName:u.remoteName??null};n[e]={...i,status:s,error:null,isLoading:r?.silent?i.isLoading:!1,isInitialStatusResolved:r?.markInitialResolved!==!1||i.isInitialStatusResolved,resolvedRemoteName:c,identity:{...l,remoteName:c??l.remoteName??null}}}),{entries:n}})}catch(t){let n=t instanceof Error?t.message:String(t);e(e=>{let t={...e.entries};return s.forEach(e=>{let i=t[e];i&&(t[e]={...i,error:n||`Failed to load PR status`,isLoading:r?.silent?i.isLoading:!1,isInitialStatusResolved:r?.markInitialResolved!==!1||i.isInitialStatusResolved})}),{entries:t}})}finally{jf.delete(o),e(e=>({...e,activeRequestCount:Math.max(0,e.activeRequestCount-1)}))}}},refreshTargets:async(e,n)=>{await lf(Array.from(new Set(e.map(e=>{let t=e.directory.trim(),n=e.branch.trim();return!t||!n?null:Of(t,n,e.remoteName??null)}).filter(e=>!!e))),Cf,e=>t().refresh(e,n))},updateStatus:(t,n)=>{e(e=>{let r=e.entries[t]??Rf();return{entries:{...e.entries,[t]:{...r,status:n(r.status)}}}})}}),{name:Tf,storage:f(),partialize:e=>({entries:Object.fromEntries(Object.entries(e.entries).filter(([,e])=>{let t=zf(e);if(!t?.directory||!t.branch)return!1;let n=Math.max(e.lastRefreshAt,e.lastDiscoveryPollAt);return n===0||Date.now()-n<wf}).map(([e,t])=>[e,Gf(t)]))}),merge:(e,t)=>{let n=e?.entries??{};return{...t,entries:Object.fromEntries(Object.entries(n).map(([e,t])=>[e,Kf(t)]))}}})),Jf=e=>{let t=e?.pr;if(!t)return null;if(t.state===`merged`)return`merged`;if(t.state===`closed`)return`closed`;if(t.draft)return`draft`;let n=e?.checks?.state===`failure`,r=typeof t.mergeableState==`string`?t.mergeableState:``,i=t.mergeable===!1||r===`blocked`||r===`dirty`;return n||i?`blocked`:`open`},Yf=e=>{let t=Jf(e.status??null),n=e.status?.pr;return!t||!n?.number?null:{number:n.number,visualState:t,prState:n.state,draft:!!n.draft,title:typeof n.title==`string`&&n.title.trim().length>0?n.title:null,url:typeof n.url==`string`&&n.url.trim().length>0?n.url:null,base:typeof n.base==`string`&&n.base.trim().length>0?n.base:null,head:typeof n.head==`string`&&n.head.trim().length>0?n.head:null,checks:e.status?.checks?{state:e.status.checks.state,total:e.status.checks.total,success:e.status.checks.success,failure:e.status.checks.failure,pending:e.status.checks.pending}:null,canMerge:typeof e.status?.canMerge==`boolean`?e.status.canMerge:null,mergeableState:typeof n.mergeableState==`string`?n.mergeableState:null,repo:e.status?.repo?{owner:e.status.repo.owner,repo:e.status.repo.repo}:null}},Xf=e=>`${e.number}:${e.visualState}:${e.prState}:${e.draft}:${e.title??``}:${e.url??``}:${e.base??``}:${e.head??``}:${e.canMerge??``}:${e.mergeableState??``}:${e.checks?.state??``}:${e.checks?.total??``}:${e.checks?.success??``}:${e.checks?.failure??``}:${e.checks?.pending??``}:${e.repo?.owner??``}:${e.repo?.repo??``}`,Zf=new Map,Qf=new Map,$f=e=>{let t=(0,Ts.c)(2),n;return t[0]===e?n=t[1]:(n=t=>{let n=new Map,r=new Map;for(let i of e){let e=t.entries[i];if(!e)continue;let a=Yf(e);if(!a)continue;let o=Xf(a);n.set(i,o),r.set(i,a)}if(n.size===Zf.size){let e=!0;for(let[t,r]of n)if(Zf.get(t)!==r){e=!1;break}if(e)return Qf}return Zf=n,Qf=r,r},t[0]=e,t[1]=n),qf(n)},ep=e=>{let t=(0,Ts.c)(10),{open:n,onOpenChange:r,project:i,onSave:a}=e,o;t[0]!==a||t[1]!==n||t[2]!==i?(o=n&&i?(0,$.jsx)($a,{project:i,onIdentitySave:a}):null,t[0]=a,t[1]=n,t[2]=i,t[3]=o):o=t[3];let s;t[4]===o?s=t[5]:(s=(0,$.jsx)(dn,{className:`w-full max-w-2xl gap-0 overflow-hidden p-0`,children:(0,$.jsx)(Nr,{outerClassName:`max-h-[min(90vh,48rem)]`,className:`w-full bg-background`,children:(0,$.jsx)(`div`,{className:`w-full p-3 sm:p-6 sm:pt-8`,children:o})})}),t[4]=o,t[5]=s);let c;return t[6]!==r||t[7]!==n||t[8]!==s?(c=(0,$.jsx)(mn,{open:n,onOpenChange:r,children:s}),t[6]=r,t[7]=n,t[8]=s,t[9]=c):c=t[9],c},tp=Q.memo(e=>{let t=(0,Ts.c)(90),{folder:n,sessions:r,subFolderItems:i,isCollapsed:a,onToggle:o,onRename:s,onDelete:c,renderSessionNode:l,getRenderExtras:u,groupDirectory:d,projectId:f,mobileVariant:p,alwaysShowActions:m,isRenaming:h,renameDraft:g,onRenameDraftChange:_,onRenameSave:v,onRenameCancel:y,droppableRef:b,isDropTarget:x,onNewSession:S,onNewSubFolder:C,depth:w,hideActions:T,archivedBucket:E,sessionSecondaryMeta:D}=e,O=m===void 0?p!==void 0&&p:m,k=h!==void 0&&h,A=g===void 0?``:g,j=x!==void 0&&x,M=w===void 0?0:w,N=T!==void 0&&T,P=E!==void 0&&E,F=D===void 0?null:D,{t:I}=Fe(),[L,R]=Q.useState(!1),[z,B]=Q.useState(``),V=Q.useRef(null),H=k||L,U=k?A:z,W;t[0]===n.name?W=t[1]:(W=()=>{B(n.name),R(!0)},t[0]=n.name,t[1]=W);let ee=W,G;t[2]!==U||t[3]!==n.name||t[4]!==k||t[5]!==s||t[6]!==v?(G=()=>{let e=U.trim();e&&e!==n.name&&s(e),k&&v&&v(),R(!1),B(``)},t[2]=U,t[3]=n.name,t[4]=k,t[5]=s,t[6]=v,t[7]=G):G=t[7];let te=G,K;t[8]!==k||t[9]!==y?(K=()=>{k&&y&&y(),R(!1),B(``)},t[8]=k,t[9]=y,t[10]=K):K=t[10];let ne=K,re;t[11]!==k||t[12]!==_?(re=e=>{if(k&&_){_(e);return}B(e)},t[11]=k,t[12]=_,t[13]=re):re=t[13];let ie=re,ae,oe;t[14]===k?(ae=t[15],oe=t[16]):(ae=()=>{if(!k)return;let e=()=>{let e=V.current;e&&(e.focus(),e.select())},t=requestAnimationFrame(e),n=window.setTimeout(e,0);return()=>{cancelAnimationFrame(t),window.clearTimeout(n)}},oe=[k],t[14]=k,t[15]=ae,t[16]=oe),Q.useEffect(ae,oe);let se;t[17]===M?se=t[18]:(se=er(M),t[17]=M,t[18]=se);let q=se,ce;t[19]===Symbol.for(`react.memo_cache_sentinel`)?(ce=X(`oc-folder`),t[19]=ce):ce=t[19];let le=j&&`bg-primary/10 ring-1 ring-inset ring-primary/30`,ue;t[20]===le?ue=t[21]:(ue=X(`group/folder relative my-0.5 flex items-center justify-between gap-1.5 py-1.5 pr-2 min-w-0 rounded-lg`,`cursor-pointer`,Kn,le),t[20]=le,t[21]=ue);let de;t[22]===q?de=t[23]:(de={paddingLeft:q},t[22]=q,t[23]=de);let fe=H?void 0:o,pe=H?void 0:`button`,me=H?void 0:0,he;t[24]!==o||t[25]!==H?(he=H?void 0:e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),o())},t[24]=o,t[25]=H,t[26]=he):he=t[26];let ge;t[27]!==n.name||t[28]!==a||t[29]!==I?(ge=I(a?`sessions.sidebar.folderItem.expandAria`:`sessions.sidebar.folderItem.collapseAria`,{folderName:n.name}),t[27]=n.name,t[28]=a,t[29]=I,t[30]=ge):ge=t[30];let _e=P?O?`pr-7`:`group-hover/folder:pr-7 group-focus-within/folder:pr-7`:``,ve;t[31]===_e?ve=t[32]:(ve=X(`min-w-0 flex items-center gap-1.5 flex-1 transition-[padding]`,_e),t[31]=_e,t[32]=ve);let ye=j?`text-primary`:`text-muted-foreground`,be;t[33]===ye?be=t[34]:(be=X(`h-4 w-4 flex-shrink-0`,ye),t[33]=ye,t[34]=be);let xe;t[35]===be?xe=t[36]:(xe=(0,$.jsx)(Z,{name:`folder-open`,className:be}),t[35]=be,t[36]=xe);let Se;t[37]!==U||t[38]!==n.name||t[39]!==ne||t[40]!==ie||t[41]!==te||t[42]!==a||t[43]!==j||t[44]!==H||t[45]!==r||t[46]!==I?(Se=H?(0,$.jsxs)(`form`,{className:`flex min-w-0 flex-1 items-center gap-1`,onPointerDown:np,onMouseDown:rp,onSubmit:e=>{e.preventDefault(),te()},children:[(0,$.jsx)(`input`,{ref:V,value:U,onChange:e=>ie(e.target.value),className:`flex-1 min-w-0 bg-transparent typography-ui-label outline-none placeholder:text-muted-foreground`,autoFocus:!0,placeholder:I(`sessions.sidebar.folderItem.namePlaceholder`),onClick:ip,onPointerDown:ap,onMouseDown:op,onKeyDown:e=>{if(e.key===`Escape`){e.stopPropagation(),ne();return}(e.key===` `||e.key===`Enter`)&&e.stopPropagation()}}),(0,$.jsx)(`button`,{type:`submit`,className:`shrink-0 text-muted-foreground hover:text-foreground`,onClick:sp,onPointerDown:cp,onMouseDown:lp,children:(0,$.jsx)(Z,{name:`check`,className:`size-4`})}),(0,$.jsx)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),ne()},onPointerDown:up,onMouseDown:dp,className:`shrink-0 text-muted-foreground hover:text-foreground`,children:(0,$.jsx)(Z,{name:`close`,className:`size-4`})})]}):(0,$.jsxs)(`div`,{className:`min-w-0 flex items-center gap-1.5 flex-1`,children:[(0,$.jsx)(`span`,{className:X(`typography-ui-label font-semibold truncate`,j?`text-primary`:`text-muted-foreground`),children:n.name}),(0,$.jsxs)(`span`,{className:`typography-micro text-muted-foreground/70 flex-shrink-0`,children:[`• `,r.length]}),a?(0,$.jsx)(Z,{name:`arrow-right-s`,className:`h-3.5 w-3.5 flex-shrink-0 text-muted-foreground`}):(0,$.jsx)(Z,{name:`arrow-down-s`,className:`h-3.5 w-3.5 flex-shrink-0 text-muted-foreground`})]}),t[37]=U,t[38]=n.name,t[39]=ne,t[40]=ie,t[41]=te,t[42]=a,t[43]=j,t[44]=H,t[45]=r,t[46]=I,t[47]=Se):Se=t[47];let Ce;t[48]!==ve||t[49]!==xe||t[50]!==Se?(Ce=(0,$.jsxs)(`div`,{className:ve,children:[xe,Se]}),t[48]=ve,t[49]=xe,t[50]=Se,t[51]=Ce):Ce=t[51];let we;t[52]!==O||t[53]!==P||t[54]!==M||t[55]!==n.name||t[56]!==ee||t[57]!==N||t[58]!==c||t[59]!==S||t[60]!==C||t[61]!==H||t[62]!==I?(we=!H&&(!N||P)?(0,$.jsx)(`div`,{className:`flex items-center gap-0.5 px-0.5`,children:(0,$.jsxs)(`div`,{className:X(`flex items-center gap-0.5 transition-opacity`,O?`opacity-100`:`opacity-0 group-hover/folder:opacity-100 group-focus-within/folder:opacity-100`,P&&`absolute right-0.5 top-1/2 z-10 -translate-y-1/2 px-0`),children:[!P&&S?(0,$.jsx)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),S()},className:`inline-flex h-6 w-6 items-center justify-center rounded-md text-muted-foreground hover:text-foreground hover:bg-interactive-hover/50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50`,"aria-label":I(`sessions.sidebar.folderItem.newSessionAria`,{folderName:n.name}),title:I(`sessions.sidebar.project.actions.newSession`),children:(0,$.jsx)(Z,{name:`add`,className:`h-3.5 w-3.5`})}):null,!P&&C&&M===0?(0,$.jsx)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),C()},className:`inline-flex h-6 w-6 items-center justify-center rounded-md text-muted-foreground hover:text-foreground hover:bg-interactive-hover/50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50`,"aria-label":I(`sessions.sidebar.folderItem.newSubfolderAria`,{folderName:n.name}),title:I(`sessions.sidebar.folderItem.newSubfolder`),children:(0,$.jsx)(Z,{name:`folder-add`,className:`h-3.5 w-3.5`})}):null,P?null:(0,$.jsx)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),ee()},className:`inline-flex h-6 w-6 items-center justify-center rounded-md text-muted-foreground hover:text-foreground hover:bg-interactive-hover/50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50`,"aria-label":I(`sessions.sidebar.folderItem.renameAria`,{folderName:n.name}),children:(0,$.jsx)(Z,{name:`pencil-ai`,className:`h-3.5 w-3.5`})}),(0,$.jsx)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),c()},className:`inline-flex h-6 w-6 items-center justify-center rounded-md text-muted-foreground hover:text-destructive hover:bg-interactive-hover/50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50`,"aria-label":I(P?`sessions.sidebar.folderItem.deleteArchivedInFolderAria`:`sessions.sidebar.folderItem.deleteFolderAria`,{folderName:n.name}),children:(0,$.jsx)(Z,{name:`delete-bin`,className:`h-3.5 w-3.5`})})]})}):null,t[52]=O,t[53]=P,t[54]=M,t[55]=n.name,t[56]=ee,t[57]=N,t[58]=c,t[59]=S,t[60]=C,t[61]=H,t[62]=I,t[63]=we):we=t[63];let Te;t[64]!==b||t[65]!==ue||t[66]!==de||t[67]!==fe||t[68]!==pe||t[69]!==me||t[70]!==he||t[71]!==ge||t[72]!==Ce||t[73]!==we?(Te=(0,$.jsxs)(`div`,{ref:b,className:ue,style:de,onClick:fe,role:pe,tabIndex:me,onKeyDown:he,"aria-label":ge,children:[Ce,we]}),t[64]=b,t[65]=ue,t[66]=de,t[67]=fe,t[68]=pe,t[69]=me,t[70]=he,t[71]=ge,t[72]=Ce,t[73]=we,t[74]=Te):Te=t[74];let Ee;t[75]!==P||t[76]!==M||t[77]!==u||t[78]!==d||t[79]!==a||t[80]!==f||t[81]!==l||t[82]!==F||t[83]!==r||t[84]!==i||t[85]!==I?(Ee=a?null:(0,$.jsxs)(`div`,{className:`pb-1`,children:[i,r.length>0?r.map(e=>l(e,M+1,d??null,f??null,P,F,`project`,u?.(e))):i?null:(0,$.jsx)(`div`,{className:`py-1.5 pr-2 text-left typography-micro text-muted-foreground/70`,style:{paddingLeft:er(M+1)},children:I(`sessions.sidebar.folderItem.emptyFolder`)})]}),t[75]=P,t[76]=M,t[77]=u,t[78]=d,t[79]=a,t[80]=f,t[81]=l,t[82]=F,t[83]=r,t[84]=i,t[85]=I,t[86]=Ee):Ee=t[86];let De;return t[87]!==Te||t[88]!==Ee?(De=(0,$.jsxs)(`div`,{className:ce,children:[Te,Ee]}),t[87]=Te,t[88]=Ee,t[89]=De):De=t[89],De});function np(e){return e.stopPropagation()}function rp(e){return e.stopPropagation()}function ip(e){return e.stopPropagation()}function ap(e){return e.stopPropagation()}function op(e){return e.stopPropagation()}function sp(e){return e.stopPropagation()}function cp(e){return e.stopPropagation()}function lp(e){return e.stopPropagation()}function up(e){return e.stopPropagation()}function dp(e){return e.stopPropagation()}var fp=e=>{let t=(0,Ts.c)(21),{sessionId:n,sessionDirectory:r,sessionTitle:i,children:a}=e,o=`session-drag:${n}`,s;t[0]!==r||t[1]!==n||t[2]!==i?(s={type:`session`,sessionId:n,sessionDirectory:r,sessionTitle:i},t[0]=r,t[1]=n,t[2]=i,t[3]=s):s=t[3];let c;t[4]!==o||t[5]!==s?(c={id:o,data:s},t[4]=o,t[5]=s,t[6]=c):c=t[6];let{attributes:l,listeners:u,setNodeRef:d,transform:f,transition:p,isDragging:m}=xa(c),h;t[7]===u?h=t[8]:(h=e=>{e.stopPropagation(),u?.onPointerDown&&u.onPointerDown(e)},t[7]=u,t[8]=h);let g=h,_;t[9]===f?_=t[10]:(_=va.Translate.toString(f),t[9]=f,t[10]=_);let v;t[11]!==_||t[12]!==p?(v={transform:_,transition:p},t[11]=_,t[12]=p,t[13]=v):v=t[13];let y=m?`opacity-30`:void 0,b;return t[14]!==l||t[15]!==a||t[16]!==g||t[17]!==d||t[18]!==v||t[19]!==y?(b=(0,$.jsx)(`div`,{ref:d,...l,onPointerDown:g,style:v,className:y,children:a}),t[14]=l,t[15]=a,t[16]=g,t[17]=d,t[18]=v,t[19]=y,t[20]=b):b=t[20],b},pp=e=>{let t=(0,Ts.c)(11),{folderId:n,children:r}=e,i=`folder-drop:${n}`,a;t[0]===n?a=t[1]:(a={type:`folder`,folderId:n},t[0]=n,t[1]=a);let o;t[2]!==i||t[3]!==a?(o={id:i,data:a},t[2]=i,t[3]=a,t[4]=o):o=t[4];let{setNodeRef:s,isOver:c}=da(o),l;t[5]!==r||t[6]!==c||t[7]!==s?(l=r(s,c),t[5]=r,t[6]=c,t[7]=s,t[8]=l):l=t[8];let u;return t[9]===l?u=t[10]:(u=(0,$.jsx)($.Fragment,{children:l}),t[9]=l,t[10]=u),u},mp=e=>{let t=(0,Ts.c)(26),{scopeKey:n,onSessionDroppedOnFolder:r,sessionIds:i,folderIdBySessionId:a,onSessionsReordered:o,children:s}=e,c;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(c={activationConstraint:{distance:8}},t[0]=c):c=t[0];let l=_a(ua(ha,c)),[u,d]=Q.useState(null),[f,p]=Q.useState(`Session`),[m,h]=Q.useState(null),[g,_]=Q.useState(null);if(!n){let e;return t[1]===s?e=t[2]:(e=(0,$.jsx)($.Fragment,{children:s}),t[1]=s,t[2]=e),e}let v;t[3]!==a||t[4]!==r||t[5]!==o?(v=e=>{d(null),h(null),_(null);let{active:t,over:n}=e;if(!n)return;let i=t.data.current,s=n.data.current;if(i?.type===`session`&&i.sessionId&&s?.type===`folder`&&s.folderId){r(i.sessionId,s.folderId);return}if(i?.type===`session`&&i.sessionId&&s?.type===`session`&&typeof n.id==`string`){let e=n.id.replace(/^session-drag:/,``);Co(i.sessionId,e,a)&&o(i.sessionId,e)}},t[3]=a,t[4]=r,t[5]=o,t[6]=v):v=t[6];let y=v,b,x;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(b=e=>{let t=e.active.data.current;if(t?.type===`session`&&t.sessionId){d(t.sessionId),p(t.sessionTitle??`Session`);let n=e.active.rect.current.initial?.width,r=e.active.rect.current.initial?.height;h(typeof n==`number`?n:null),_(typeof r==`number`?r:null)}},x=()=>{d(null),h(null),_(null)},t[7]=b,t[8]=x):(b=t[7],x=t[8]);let S;t[9]===i?S=t[10]:(S=i.map(hp),t[9]=i,t[10]=S);let C;t[11]!==s||t[12]!==S?(C=(0,$.jsx)(Ca,{items:S,strategy:Sa,children:s}),t[11]=s,t[12]=S,t[13]=C):C=t[13];let w;t[14]!==g||t[15]!==u||t[16]!==f||t[17]!==m?(w=u?(0,$.jsxs)(`div`,{style:{width:m?`${m}px`:`auto`,height:g?`${g}px`:`auto`},className:`flex items-center rounded-lg border border-[var(--interactive-border)] bg-[var(--surface-elevated)] px-2.5 py-1 shadow-none pointer-events-none`,children:[(0,$.jsx)(Z,{name:`sticky-note`,className:`h-4 w-4 text-muted-foreground mr-2 flex-shrink-0`}),(0,$.jsx)(`div`,{className:`min-w-0 flex-1 truncate typography-ui-label font-normal text-foreground`,children:f})]}):null,t[14]=g,t[15]=u,t[16]=f,t[17]=m,t[18]=w):w=t[18];let T;t[19]===w?T=t[20]:(T=(0,$.jsx)(ma,{children:w}),t[19]=w,t[20]=T);let E;return t[21]!==y||t[22]!==l||t[23]!==C||t[24]!==T?(E=(0,$.jsxs)(ga,{sensors:l,collisionDetection:pa,onDragStart:b,onDragCancel:x,onDragEnd:y,children:[C,T]}),t[21]=y,t[22]=l,t[23]=C,t[24]=T,t[25]=E):E=t[25],E};function hp(e){return`session-drag:${e}`}var gp=3e4,_p=e=>{let t=e,n=t.metadata?.openchamber?.titleRefresh,r=ze(e)||0;return[e.title??``,e.share?e.share.url??`1`:``,t.hasChildren?`1`:``,t.parentID??``,t.metadata?.openchamber?.assistant?`1`:``,n?.isGenerating?`1`:``,String(n?.lastError??``),String(n?.failedAt??``),Math.floor(r/gp)].join(`\0`)},vp=(e,t,n)=>{if(!t)return;let r=e=>{let i=e.session.id===t;for(let t of e.children)i=r(t)||i;return i&&n.add(e.session.id),i};for(let t of e)r(t)},yp=(e,t)=>{if(!t)return!1;if(e.session.id===t)return!0;for(let n of e.children)if(yp(n,t))return!0;return!1},bp=e=>e.children.length===0?``:e.children.map(e=>e.children.length===0?e.session.id:`${e.session.id}:${bp(e)}`).join(`|`),xp=(e,t,n,r)=>{if(!t)return null;let i=r?`archived`:`active`,a=null,o=e=>{if(`${n}:${i}:${e.session.id}`===t)return a=e.session.id,!0;for(let t of e.children)if(o(t))return!0;return!1};return e.forEach(e=>o(e)),a},Sp=ne()(re(e=>({displayMode:`minimal`,projectSortOrder:`manual`,setDisplayMode:t=>e({displayMode:t}),setProjectSortOrder:t=>e({projectSortOrder:t})}),{name:`session-display-mode`,storage:P(),version:4,migrate:(e,t)=>{let n=e??{};return t<1?{...n,displayMode:`minimal`,projectSortOrder:`manual`}:t<2||t<3?{...n,projectSortOrder:`manual`}:t<4?{displayMode:n.displayMode??`minimal`,projectSortOrder:n.projectSortOrder??`manual`}:n}}));typeof window<`u`&&t(e=>{c(e)&&Sp.persist.rehydrate()});var Cp=50,wp=30,Tp=28,Ep=(e,t)=>t?e.sessions.some(e=>yp(e,t)):!1,Dp=(e,t,n)=>{let r=e=>{let i=e.session.id;return t.has(i)!==n.has(i)||e.children.some(r)};return e.sessions.some(r)},Op=(e,t,n)=>{let r=e=>{let i=e.session.id;return t.has(i)!==n.has(i)||e.children.some(r)};return e.sessions.some(r)},kp=(e,t,n)=>{let r=i=>{let a=i.session.id,o=e.folderScopeKey??p(e.directory??null);return(o?t[o]?.indexOf(a):-1)!==(o?n[o]?.indexOf(a):-1)||i.children.some(r)};return e.sessions.some(r)},Ap=(e,t,n)=>{let r=e.folderScopeKey??p(e.directory??null);return!!(r&&t[r]!==n[r])},jp=(e,t,n)=>{let r=e.isArchivedBucket?`archived`:`active`,i=e=>{let a=`project:${r}:${e.session.id}`;return t.has(a)!==n.has(a)||e.children.some(i)};return e.sessions.some(i)},Mp=(e,t,n)=>{let r=e=>{let i=e.session.id,a=t.get(i)??e.session,o=n.get(i)??e.session;return a!==o&&_p(a)!==_p(o)||e.children.some(r)};return e.sessions.some(r)},Np=e=>{if(e.projectId)return e.projectRepoStatus.has(e.projectId)?e.projectRepoStatus.get(e.projectId):void 0},Pp=e=>{let t=new WeakMap,n=e=>{t.set(e,bp(e));for(let t of e.children)n(t)};return e.forEach(n),t},Fp=e=>{let t=[],n=e=>{e.forEach(e=>{t.push(e.session),e.children.length>0&&n(e.children)})};return n(e),t},Ip=(e,t)=>{if(e.group!==t.group||e.groupKey!==t.groupKey||e.isArchivedLoading!==t.isArchivedLoading||e.projectId!==t.projectId||e.hideGroupLabel!==t.hideGroupLabel||e.compactBodyPadding!==t.compactBodyPadding||e.groupSearchDataByGroup!==t.groupSearchDataByGroup||e.visibleSessionCount!==t.visibleSessionCount||e.collapsedGroups!==t.collapsedGroups&&e.collapsedGroups.has(e.groupKey)!==t.collapsedGroups.has(t.groupKey)||e.projectRepoStatus!==t.projectRepoStatus&&Np(e)!==Np(t)||e.pinnedSessionIds!==t.pinnedSessionIds&&Dp(t.group,e.pinnedSessionIds,t.pinnedSessionIds)||e.expandedParents!==t.expandedParents&&jp(t.group,e.expandedParents,t.expandedParents)||e.sessionOrderByScope!==t.sessionOrderByScope&&kp(t.group,e.sessionOrderByScope,t.sessionOrderByScope)||e.sessionOrderActivityByScope!==t.sessionOrderActivityByScope&&Ap(t.group,e.sessionOrderActivityByScope,t.sessionOrderActivityByScope)||e.currentSessionId!==t.currentSessionId&&(Ep(e.group,e.currentSessionId)||Ep(t.group,t.currentSessionId))||e.editingId!==t.editingId&&(Ep(e.group,e.editingId)||Ep(t.group,t.editingId))||e.editTitle!==t.editTitle&&(Ep(e.group,e.editingId)||Ep(t.group,t.editingId)))return!1;if(e.openSidebarMenuKey!==t.openSidebarMenuKey){let n=xp(e.group.sessions,e.openSidebarMenuKey,`project`,!!e.group.isArchivedBucket),r=xp(t.group.sessions,t.openSidebarMenuKey,`project`,!!t.group.isArchivedBucket);if(n||r)return!1}if(e.liveSessionById!==t.liveSessionById&&Mp(t.group,e.liveSessionById,t.liveSessionById)||e.alwaysVisibleSessionIds!==t.alwaysVisibleSessionIds&&Op(t.group,e.alwaysVisibleSessionIds,t.alwaysVisibleSessionIds))return!1;if(e.prVisualStateByDirectoryBranch!==t.prVisualStateByDirectoryBranch){let n=e.group?.directory&&e.group?.branch?e.prVisualStateByDirectoryBranch.get(`${e.group.directory}::${e.group.branch.trim()}`):void 0,r=t.group?.directory&&t.group?.branch?t.prVisualStateByDirectoryBranch.get(`${t.group.directory}::${t.group.branch.trim()}`):void 0;if(!Object.is(n,r))return!1}return e.hasSessionSearchQuery===t.hasSessionSearchQuery&&e.normalizedSessionSearchQuery===t.normalizedSessionSearchQuery&&e.collapsedFolderIds===t.collapsedFolderIds&&e.toggleFolderCollapse===t.toggleFolderCollapse&&e.renameFolder===t.renameFolder&&e.deleteFolder===t.deleteFolder&&e.showDeletionDialog===t.showDeletionDialog&&e.setDeleteFolderConfirm===t.setDeleteFolderConfirm&&e.renderSessionNode===t.renderSessionNode&&e.lastRepoStatus===t.lastRepoStatus&&e.showMoreGroupSessions===t.showMoreGroupSessions&&e.resetGroupSessionLimit===t.resetGroupSessionLimit&&e.mobileVariant===t.mobileVariant&&e.alwaysShowActions===t.alwaysShowActions&&e.activeProjectId===t.activeProjectId&&e.setActiveProjectIdOnly===t.setActiveProjectIdOnly&&e.setActiveMainTab===t.setActiveMainTab&&e.setSessionSwitcherOpen===t.setSessionSwitcherOpen&&e.openNewSessionDraft===t.openNewSessionDraft&&e.addSessionToFolder===t.addSessionToFolder&&e.createFolderAndStartRename===t.createFolderAndStartRename&&e.renamingFolderId===t.renamingFolderId&&e.renameFolderDraft===t.renameFolderDraft&&e.setRenameFolderDraft===t.setRenameFolderDraft&&e.setRenamingFolderId===t.setRenamingFolderId&&e.onToggleCollapsedGroup===t.onToggleCollapsedGroup&&e.dragHandleProps===t.dragHandleProps&&e.scrollContainerRef===t.scrollContainerRef&&e.shortcutTargetSessionId===t.shortcutTargetSessionId&&e.shortcutTargetVisibleIndex===t.shortcutTargetVisibleIndex};function Lp(e){let{t}=Fe(),{group:n,groupKey:r,isArchivedLoading:i=!1,projectId:a,hideGroupLabel:o,hasSessionSearchQuery:s,normalizedSessionSearchQuery:c,groupSearchDataByGroup:l,visibleSessionCount:u,collapsedGroups:d,collapsedFolderIds:f,toggleFolderCollapse:h,renameFolder:g,deleteFolder:_,showDeletionDialog:v,setDeleteFolderConfirm:y,renderSessionNode:b,projectRepoStatus:x,lastRepoStatus:S,showMoreGroupSessions:C,resetGroupSessionLimit:w,mobileVariant:T,alwaysShowActions:E,activeProjectId:D,setActiveProjectIdOnly:O,setActiveMainTab:k,setSessionSwitcherOpen:A,openNewSessionDraft:j,addSessionToFolder:M,createFolderAndStartRename:N,renamingFolderId:P,renameFolderDraft:F,setRenameFolderDraft:I,setRenamingFolderId:L,pinnedSessionIds:R,expandedParents:z,sessionOrderByScope:B,sessionOrderActivityByScope:V,onReorderSessions:H,currentSessionId:U,shortcutTargetSessionId:W=null,shortcutTargetVisibleIndex:ee=null,editingId:G,openSidebarMenuKey:te,prVisualStateByDirectoryBranch:K,onToggleCollapsedGroup:ne,dragHandleProps:re,compactBodyPadding:ie=!1,scrollContainerRef:ae,alwaysVisibleSessionIds:oe}=e,se=n.folderScopeKey??p(n.directory??null),q=Q.useMemo(()=>No(n.sessions,se?B[se]:void 0,se?V[se]:void 0,R),[se,n.sessions,R,V,B]),ce=s?l.get(n):null,le=Sp(e=>e.displayMode),ue=Bt(e=>e.foldersMap),de=le===`minimal`&&!m(),fe=n.isArchivedBucket?null:p(n.directory??null),pe=Tt(e=>fe?e.activePaginationByDirectory.get(fe):void 0),me=!s&&d.has(r),he=jo(),ge=Math.max(he,u??he),_e=s?ce?.groupMatches===!0:!1,ve=s,ye=Q.useMemo(()=>[...ve?ce?.filteredNodes??[]:n.sessions].sort(q),[q,n.sessions,ce?.filteredNodes,ve]),be=Q.useMemo(()=>se?ue[se]??[]:[],[se,ue]),xe=Q.useMemo(()=>{let e=new Map,t=n=>{n.forEach(n=>{e.set(n.session.id,n),n.children.length>0&&t(n.children)})};return t(ye),e},[ye]),Se=Q.useMemo(()=>be.map(e=>({folder:e,nodes:e.sessionIds.map(e=>xe.get(e)).filter(e=>!!e).sort(q)})),[be,xe,q]),Ce=Q.useMemo(()=>{let e=new Map(Se.map(e=>[e.folder.id,e])),t=new Map;for(let{folder:e}of Se){if(!e.parentId)continue;let n=t.get(e.parentId);n?n.push(e.id):t.set(e.parentId,[e.id])}let r=new Map,i=a=>{let o=r.get(a);if(o!==void 0)return o;let l=e.get(a);if(!l)return r.set(a,!1),!1;let u=t.get(a)??[];if(n.isArchivedBucket&&l.nodes.length===0){let e=u.some(e=>i(e));return r.set(a,e),e}if(!s||l.folder.name.toLowerCase().includes(c)||l.nodes.length>0)return r.set(a,!0),!0;let d=u.some(e=>i(e));return r.set(a,d),d};return Se.filter(({folder:e})=>i(e.id))},[Se,n.isArchivedBucket,s,c]),we=Q.useMemo(()=>new Set(Ce.flatMap(e=>e.folder.sessionIds)),[Ce]),Te=Q.useMemo(()=>ye.filter(e=>!we.has(e.session.id)),[ye,we]),Ee=Q.useMemo(()=>Ce.filter(({folder:e})=>!e.parentId),[Ce]),De=`project`,Oe=Q.useMemo(()=>{let e=new Set;return vp(ye,U,e),Ce.forEach(({nodes:t})=>{vp(t,U,e)}),e},[ye,Ce,U]),ke=Q.useMemo(()=>{let e=new Set;return vp(ye,G,e),Ce.forEach(({nodes:t})=>{vp(t,G,e)}),e},[ye,Ce,G]),je=Q.useMemo(()=>{if(!te)return null;let e=xp(ye,te,De,!!n.isArchivedBucket);if(e)return e;for(let{nodes:e}of Ce){let t=xp(e,te,De,!!n.isArchivedBucket);if(t)return t}return null},[te,ye,Ce,n.isArchivedBucket]),Ne=Q.useMemo(()=>Pp(ye),[ye]),Pe=Q.useMemo(()=>{let e=new WeakMap;return Ce.forEach(({nodes:t})=>{t.forEach(t=>e.set(t,bp(t)))}),e},[Ce]),Ie=Q.useMemo(()=>e=>Ne.get(e)??Pe.get(e)??``,[Ne,Pe]),Le=Q.useMemo(()=>e=>({subtreeContainsActive:Oe,subtreeContainsEditing:ke,menuOpenSessionId:je,nodeStructureKey:Ie(e)}),[Oe,ke,je,Ie]),Re=Te.length,ze=n.isArchivedBucket||s?Te:Te.slice(0,ge),Ve=n.isArchivedBucket||s?Te:Eo(Te,ge,oe),He=Re-Ve.length,Ue=Q.useMemo(()=>is({folders:Ce,visibleUngroupedNodes:Ve,collapsedFolderIds:f,hasSessionSearchQuery:s}),[Ce,f,s,Ve]),We=pe?.hasMore===!0,Ge=pe?.loadingMore===!0,Ke=u===void 0||u<=he,qe=!n.isArchivedBucket&&!s&&Re>he&&!Ke,Je=n.isArchivedBucket===!0&&!s&&Ve.length>=Cp,Ye=n.isArchivedBucket!==!0&&!s&&Ve.length>=wp,Xe=Je||Ye,J=n.isArchivedBucket?`archived`:`active`,Ze=Xe&&Ve.some(e=>{if(e.children.length===0)return!1;let t=`project:${J}:${e.session.id}`;return z.has(t)}),Qe=Q.useRef(null),[$e,et]=Q.useState(null),[,tt]=Q.useState(0);Me(Xe?Qe:null,()=>{tt(e=>e+1)}),Q.useLayoutEffect(()=>{if(!Xe){et(e=>e===null?e:null);return}let e=Qe.current;if(!e){et(e=>e===null?e:null);return}let t=null,n=ae?.current??null;if(n&&n.contains(e))t=n;else{let n=e.parentElement;for(;n;){let e=window.getComputedStyle(n);if(e.overflowY===`auto`||e.overflowY===`scroll`){t=n;break}n=n.parentElement}}if(!t){et(e=>e===null?e:null);return}let r=e.getBoundingClientRect().top-t.getBoundingClientRect().top+t.scrollTop;et(n=>n?.container===e&&n.scrollElement===t&&Math.abs(n.scrollMargin-r)<1?n:{container:e,scrollElement:t,scrollMargin:r})});let nt=Qe.current,rt=ae?.current??null,it=Xe&&$e!==null&&$e.container===nt&&$e.scrollElement.contains(nt)&&(rt===null||$e.scrollElement===rt),at=$e?.scrollElement??null,ot=$e?.scrollMargin??0,st=ka({count:Ve.length,enabled:it,getScrollElement:()=>at,initialOffset:()=>at?.scrollTop??0,estimateSize:()=>Tp,overscan:Ze?20:8,scrollMargin:ot,getItemKey:e=>Ve[e]?.session.id??e}),ct=wo(Ve,W,ee);Q.useLayoutEffect(()=>{!it||!W||ct===null||st.getVirtualItems().some(e=>e.index===ct)||st.scrollToIndex(ct,{align:`auto`,behavior:`auto`})},[ot,st,W,ct,it]);let lt=Q.useMemo(()=>Fp(ye),[ye]),ut=Q.useMemo(()=>{if(!n.isArchivedBucket)return new Map;let e=new Map,t=new Map;for(let{folder:e}of Ce){if(!e.parentId)continue;let n=t.get(e.parentId)??[];n.push(e.id),t.set(e.parentId,n)}let r=(e,n)=>{if(n.has(e))return[];n.add(e);let i=Ce.find(({folder:t})=>t.id===e),a=i?Fp(i.nodes):[],o=t.get(e)??[];for(let e of o)a.push(...r(e,n));return a};for(let{folder:t}of Ce)e.set(t.id,r(t.id,new Set));return e},[Ce,n.isArchivedBucket]),dt=Q.useMemo(()=>({projectLabel:n.isMain?null:n.label,branchLabel:n.branch&&n.branch!==`HEAD`?n.branch:null}),[n.branch,n.isMain,n.label]),ft=Ae(e=>{e.preventDefault(),e.stopPropagation();let t=p(n.directory??null),r=n.branch?.trim()??null,i=t&&r?K.get(`${t}::${r}`)?.url??null:null;i&&wa(i)});if(s&&!_e&&Ee.length===0&&Te.length===0)return null;let pt=a&&x.has(a)?!!x.get(a):S,mt=p(n.directory??null),ht=n.branch?.trim()??null,gt=mt&&ht?K.get(`${mt}::${ht}`)??null:null,_t=!!(gt&&n.branch),vt=!gt&&!n.isMain&&!!n.branch,yt=gt&>.state===`open`&>.checks?t(`sessions.sidebar.group.pr.checksPassed`,{success:gt.checks.success,total:gt.checks.total}):null,bt=gt&>.state===`open`&>.checks?[gt.checks.failure>0?t(`sessions.sidebar.group.pr.failingCount`,{count:gt.checks.failure}):null,gt.checks.pending>0?t(`sessions.sidebar.group.pr.pendingCount`,{count:gt.checks.pending}):null].filter(e=>!!e).join(`, `):null,xt=gt&>.state===`open`?gt.mergeableState===`blocked`||gt.mergeableState===`dirty`?t(`sessions.sidebar.group.pr.conflictsOrBlocked`):gt.mergeableState===`clean`||gt.canMerge===!0?t(`sessions.sidebar.group.pr.mergeable`):null:null,St=gt&>.state===`open`&>.mergeableState?t(`sessions.sidebar.group.pr.mergeState`,{state:gt.mergeableState}):null,Ct=gt?.base??null,wt=gt?.head??null,Et=(()=>{if(!gt)return n.branch&&tr(n.branch,n.label)?{label:n.branch,color:null}:null;switch(gt.visualState){case`merged`:return{label:t(`sessions.sidebar.group.pr.status.merged`),color:`var(--pr-merged)`};case`open`:return gt.canMerge===!0||gt.mergeableState===`clean`||gt.checks?.state===`success`?{label:t(`sessions.sidebar.group.pr.status.readyToMerge`),color:`var(--pr-open)`}:{label:t(`sessions.sidebar.group.pr.status.open`),color:`var(--pr-open)`};case`blocked`:return{label:gt.mergeableState===`dirty`?t(`sessions.sidebar.group.pr.status.mergeConflicts`):t(`sessions.sidebar.group.pr.status.mergeBlocked`),color:`var(--pr-blocked)`};case`draft`:return{label:t(`sessions.sidebar.group.pr.status.draft`),color:`var(--pr-draft)`};case`closed`:return{label:t(`sessions.sidebar.group.pr.status.closed`),color:`var(--pr-closed)`};default:return null}})(),Dt=(e,t,r)=>{let i=Ce.filter(({folder:t})=>t.parentId===e.id),o=i.length>0?(0,$.jsx)($.Fragment,{children:i.map(({folder:e,nodes:t})=>Dt(e,t,r+1))}):void 0,c=ut.get(e.id)??[];return(0,$.jsx)(pp,{folderId:e.id,children:(i,l)=>(0,$.jsx)(tp,{folder:e,sessions:t,subFolderItems:o,isCollapsed:!s&&f.has(e.id),onToggle:()=>h(e.id),onRename:t=>{se&&g(se,e.id,t)},onDelete:()=>{if(n.isArchivedBucket){Be.requestDelete({sessions:c,mode:`session`});return}if(!se)return;if(!v){_(se,e.id);return}let r=Ce.filter(({folder:t})=>t.parentId===e.id).length,i=t.length;y({scopeKey:se,folderId:e.id,folderName:e.name,subFolderCount:r,sessionCount:i})},renderSessionNode:b,getRenderExtras:Ie?e=>({subtreeContainsActive:Oe,subtreeContainsEditing:ke,menuOpenSessionId:je,nodeStructureKey:Ie(e),childRenderExtrasFor:Le}):void 0,groupDirectory:n.directory,projectId:a,mobileVariant:T,alwaysShowActions:E,isRenaming:P===e.id,renameDraft:P===e.id?F:void 0,onRenameDraftChange:e=>I(e),onRenameSave:()=>{let t=F.trim();t&&se&&g(se,e.id,t),L(null),I(``)},onRenameCancel:()=>{L(null),I(``)},droppableRef:i,isDropTarget:l,depth:r,onNewSession:()=>{a&&a!==D&&O(a),k(`chat`),T&&A(!1),j({directoryOverride:n.directory,targetFolderId:e.id})},onNewSubFolder:r===0?()=>{se&&N(se,e.id)}:void 0,hideActions:!1,archivedBucket:n.isArchivedBucket===!0,sessionSecondaryMeta:{projectLabel:e.name,branchLabel:n.branch&&n.branch!==`HEAD`?n.branch:null}})},e.id)},Ot=+!o,kt=o?1:Ot,Y=()=>Ee.map(({folder:e,nodes:t})=>Dt(e,t,kt)),At=!!(!n.isMain&&n.worktree),jt=E?At?`pr-14`:`pr-7`:de?At?`pr-2 group-hover/gh:pr-14 group-focus-within/gh:pr-14`:`pr-2`:At?`pr-5 group-hover/gh:pr-14 group-focus-within/gh:pr-14`:`pr-5`,Mt=(0,$.jsxs)(mp,{scopeKey:se,sessionIds:Ue.sessionIds,folderIdBySessionId:Ue.folderIdBySessionId,onSessionDroppedOnFolder:(e,t)=>{se&&M(se,t,e)},onSessionsReordered:(e,t)=>{H(Ue.sessionIds,e,t,Mo(n.sessions.map(e=>e.session)))},children:[Y(),Xe?(0,$.jsx)(`div`,{ref:Qe,children:it?(0,$.jsx)(`div`,{style:{height:st.getTotalSize(),position:`relative`},children:st.getVirtualItems().map(e=>{let t=Ve[e.index];return t?(0,$.jsx)(`div`,{"data-index":e.index,ref:st.measureElement,className:`[&_[data-session-row]]:my-px`,style:{position:`absolute`,top:0,left:0,width:`100%`,transform:`translateY(${e.start-ot}px)`},children:b(t,kt,n.directory,a,n.isArchivedBucket===!0,dt,`project`,{subtreeContainsActive:Oe,subtreeContainsEditing:ke,menuOpenSessionId:je,nodeStructureKey:Ie(t),childRenderExtrasFor:Le})},t.session.id):null})}):Ve.map(e=>b(e,kt,n.directory,a,n.isArchivedBucket===!0,dt,`project`,{subtreeContainsActive:Oe,subtreeContainsEditing:ke,menuOpenSessionId:je,nodeStructureKey:Ie(e),childRenderExtrasFor:Le}))}):Ve.map(e=>b(e,kt,n.directory,a,n.isArchivedBucket===!0,dt,`project`,{subtreeContainsActive:Oe,subtreeContainsEditing:ke,menuOpenSessionId:je,nodeStructureKey:Ie(e),childRenderExtrasFor:Le})),Re===0&&Ce.length===0?(0,$.jsx)(`div`,{className:kr,style:{paddingLeft:er(kt)},children:i?t(`sessions.sidebar.project.loadingSessions`):n.isArchivedBucket?t(`sessions.sidebar.group.empty.noArchivedSessions`):t(`sessions.sidebar.group.empty.noSessionsInWorkspace`)}):null,He>0||We||qe?(0,$.jsxs)(`div`,{className:X(kr,`flex w-full items-center gap-3 text-muted-foreground/60`),style:{paddingLeft:er(kt)},children:[He>0||We?(0,$.jsx)(`button`,{type:`button`,onClick:()=>C(r,ze.length,Re),disabled:Ge,className:X(`text-left transition-colors hover:text-muted-foreground/80 disabled:pointer-events-none`,Ge&&`animate-pulse`),children:t(`sessions.sidebar.group.showMore`)}):null,qe?(0,$.jsx)(`button`,{type:`button`,onClick:()=>w(r),className:`text-left transition-colors hover:text-muted-foreground/80`,children:t(`sessions.sidebar.group.showFewer`)}):null]}):null]}),Nt=o?ie?`pb-0`:`pb-0.5`:ie?`pb-1`:`pb-1.5`,Pt=er(Ot);return o?(0,$.jsx)(`div`,{className:`oc-group`,children:(0,$.jsx)(`div`,{className:X(`oc-group-body`,Nt),children:Mt})}):(0,$.jsxs)(`div`,{className:`oc-group`,children:[(0,$.jsxs)(`div`,{"data-mobile-press-feedback":re?`none`:void 0,className:X(`group/gh relative flex min-w-0 cursor-pointer items-start justify-between gap-1.5 rounded-lg py-1.5 pr-2`,Kn),style:{paddingLeft:Pt},onClick:()=>ne(r),role:`button`,tabIndex:0,onKeyDown:e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),ne(r))},"aria-label":t(me?`sessions.sidebar.group.expandAria`:`sessions.sidebar.group.collapseAria`,{label:n.label}),"aria-expanded":!me,children:[(0,$.jsx)(`div`,{ref:re?.setActivatorNodeRef,className:X(`min-w-0 flex flex-1 items-start gap-1.5 overflow-hidden transition-[padding] cursor-grab active:cursor-grabbing`,jt),...re?.listeners??{},children:(0,$.jsxs)(`div`,{className:`min-w-0 flex flex-1 flex-col justify-center gap-0.5 overflow-hidden`,children:[(0,$.jsx)(`p`,{className:`text-[14px] font-normal truncate text-foreground/92`,children:_t&>?(0,$.jsxs)(`span`,{className:`inline-flex min-w-0 max-w-full items-center`,children:[(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsxs)(`span`,{className:`inline-flex shrink-0 items-center gap-1 leading-none align-middle`,children:[(0,$.jsxs)(`span`,{className:`inline-flex h-3.5 w-3.5 shrink-0 items-center justify-center`,children:[(0,$.jsx)(Z,{name:`git-branch`,className:X(`h-3.5 w-3.5 shrink-0`,E?`hidden`:`group-hover/gh:hidden`)}),(0,$.jsx)(`span`,{className:X(`h-3.5 w-3.5 items-center justify-center`,E?`inline-flex`:`hidden group-hover/gh:inline-flex`),children:me?(0,$.jsx)(Z,{name:`arrow-right-s`,className:`h-3.5 w-3.5`}):(0,$.jsx)(Z,{name:`arrow-down-s`,className:`h-3.5 w-3.5`})})]}),gt.url?(0,$.jsxs)(`button`,{type:`button`,className:`inline-flex shrink-0 items-center leading-none`,onMouseDown:e=>e.stopPropagation(),onClick:ft,children:[`#`,gt.number]}):(0,$.jsxs)(`span`,{className:`inline-flex shrink-0 items-center leading-none`,children:[`#`,gt.number]})]})}),(0,$.jsx)(Zr,{side:`top`,sideOffset:6,align:`start`,className:`max-w-sm`,children:(0,$.jsxs)(`div`,{className:`space-y-1 text-xs`,children:[Ct||wt?(0,$.jsx)(`div`,{className:`text-muted-foreground truncate`,children:Ct&&wt?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`span`,{children:Ct}),(0,$.jsx)(Z,{name:`arrow-left-long`,className:`mx-0.5 inline h-3 w-3 align-[-2px]`}),(0,$.jsx)(`span`,{children:wt})]}):(0,$.jsx)(`span`,{children:Ct??wt??``})}):null,St?(0,$.jsx)(`div`,{className:`text-muted-foreground truncate`,children:St}):null,xt||yt?(0,$.jsxs)(`div`,{className:`text-muted-foreground truncate`,children:[xt??``,xt&&yt?` • `:``,yt??``,bt?` (${bt})`:``]}):null]})})]}),(0,$.jsx)(`span`,{className:`ml-1 min-w-0 flex-1 truncate leading-none align-middle`,children:n.branch})]}):n.isArchivedBucket?(0,$.jsxs)(`span`,{className:`inline-flex min-w-0 max-w-full items-center gap-1`,children:[(0,$.jsxs)(`span`,{className:`inline-flex h-3.5 w-3.5 shrink-0 items-center justify-center`,children:[(0,$.jsx)(Z,{name:`archive`,className:X(`h-3.5 w-3.5 shrink-0`,E?`hidden`:`group-hover/gh:hidden`)}),(0,$.jsx)(`span`,{className:X(`h-3.5 w-3.5 items-center justify-center`,E?`inline-flex`:`hidden group-hover/gh:inline-flex`),children:me?(0,$.jsx)(Z,{name:`arrow-right-s`,className:`h-3.5 w-3.5`}):(0,$.jsx)(Z,{name:`arrow-down-s`,className:`h-3.5 w-3.5`})})]}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:Xn(n.label,c)})]}):!n.isMain||n.worktree?(0,$.jsxs)(`span`,{className:`inline-flex min-w-0 max-w-full items-center gap-1`,children:[(0,$.jsxs)(`span`,{className:`inline-flex h-3.5 w-3.5 shrink-0 items-center justify-center`,children:[(0,$.jsx)(Z,{name:`git-branch`,className:X(`h-3.5 w-3.5 shrink-0`,E?`hidden`:`group-hover/gh:hidden`)}),(0,$.jsx)(`span`,{className:X(`h-3.5 w-3.5 items-center justify-center`,E?`inline-flex`:`hidden group-hover/gh:inline-flex`),children:me?(0,$.jsx)(Z,{name:`arrow-right-s`,className:`h-3.5 w-3.5`}):(0,$.jsx)(Z,{name:`arrow-down-s`,className:`h-3.5 w-3.5`})})]}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:Xn(n.label,c)})]}):Xn(n.label,c)}),vt&&Et?(0,$.jsxs)(`span`,{className:X(`inline-flex min-w-0 items-center gap-1.5 leading-tight`,!Et.color&&`text-muted-foreground`),style:Et.color?{color:Et.color}:void 0,children:[n.isArchivedBucket?(0,$.jsx)(Z,{name:`archive`,className:`h-3.5 w-3.5 flex-shrink-0`}):!n.isMain||pt?_t&>?(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`span`,{className:`inline-flex h-3.5 w-3.5 flex-shrink-0 items-center justify-center`,children:(0,$.jsx)(Z,{name:`git-branch`,className:`h-3.5 w-3.5`})})}),(0,$.jsx)(Zr,{side:`top`,sideOffset:6,align:`start`,className:`max-w-sm`,children:(0,$.jsxs)(`div`,{className:`space-y-1 text-xs`,children:[Ct||wt?(0,$.jsx)(`div`,{className:`text-muted-foreground truncate`,children:Ct&&wt?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`span`,{children:Ct}),(0,$.jsx)(Z,{name:`arrow-left-long`,className:`mx-0.5 inline h-3 w-3 align-[-2px]`}),(0,$.jsx)(`span`,{children:wt})]}):(0,$.jsx)(`span`,{children:Ct??wt??``})}):null,St?(0,$.jsx)(`div`,{className:`text-muted-foreground truncate`,children:St}):null,xt||yt?(0,$.jsxs)(`div`,{className:`text-muted-foreground truncate`,children:[xt??``,xt&&yt?` • `:``,yt??``,bt?` (${bt})`:``]}):null]})})]}):(0,$.jsx)(Z,{name:`git-branch`,className:`h-3.5 w-3.5 flex-shrink-0`}):null,(0,$.jsx)(`span`,{className:`min-w-0 truncate text-[11px] font-medium`,children:Et.label})]}):null]})}),n.isArchivedBucket&<.length>0?(0,$.jsx)(`div`,{className:X(`absolute right-0.5 top-1/2 -translate-y-1/2 z-10 transition-opacity`,E?`opacity-100`:`opacity-0 group-hover/gh:opacity-100 group-focus-within/gh:opacity-100`),children:(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),Be.requestDelete({sessions:lt,mode:`session`})},className:`inline-flex h-6 w-6 items-center justify-center rounded-md text-muted-foreground hover:text-destructive hover:bg-interactive-hover/50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50`,"aria-label":t(`sessions.sidebar.group.actions.deleteArchivedInGroupAria`,{label:n.label}),children:(0,$.jsx)(Z,{name:`delete-bin`,className:`h-4 w-4`})})}),(0,$.jsx)(Zr,{side:`bottom`,sideOffset:4,children:(0,$.jsx)(`p`,{children:t(`sessions.sidebar.group.actions.deleteArchivedSessions`)})})]})}):null,n.directory&&!n.isMain&&n.worktree?(0,$.jsx)(`div`,{className:X(`absolute right-7 top-1/2 -translate-y-1/2 z-10 transition-opacity`,E?`opacity-100`:`opacity-0 group-hover/gh:opacity-100 group-focus-within/gh:opacity-100`),children:(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),Be.requestDelete({sessions:lt,mode:`worktree`,worktree:n.worktree})},className:`inline-flex h-6 w-6 items-center justify-center rounded-md text-muted-foreground hover:text-destructive hover:bg-interactive-hover/50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50`,"aria-label":t(`sessions.sidebar.group.actions.deleteGroupAria`,{label:n.label}),children:(0,$.jsx)(Z,{name:`delete-bin`,className:`h-4 w-4`})})}),(0,$.jsx)(Zr,{side:`bottom`,sideOffset:4,children:(0,$.jsx)(`p`,{children:t(`sessions.sidebar.group.actions.deleteWorktree`)})})]})}):null,n.directory?(0,$.jsx)(`div`,{className:X(`absolute right-0.5 top-1/2 -translate-y-1/2 z-10 transition-opacity`,E?`opacity-100`:`opacity-0 group-hover/gh:opacity-100 group-focus-within/gh:opacity-100`),children:(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),a&&a!==D&&O(a),k(`chat`),T&&A(!1),j({directoryOverride:n.directory})},className:`inline-flex h-6 w-6 items-center justify-center rounded-md text-muted-foreground hover:text-foreground hover:bg-interactive-hover/50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50`,"aria-label":t(`sessions.sidebar.group.actions.newDraftInGroupAria`,{label:n.label}),children:(0,$.jsx)(Z,{name:`add`,className:`h-4 w-4`})})}),(0,$.jsx)(Zr,{side:`bottom`,sideOffset:4,children:(0,$.jsx)(`p`,{children:t(`sessions.sidebar.project.actions.newDraftSession`)})})]})}):null]}),me?null:(0,$.jsx)(`div`,{className:X(`oc-group-body`,Nt),children:Mt})]})}var Rp=Q.memo(Lp,Ip);function zp(e){let t=(0,Ts.c)(36),{t:n}=Fe(),{hideDirectoryControls:r,isSessionSearchOpen:i,setIsSessionSearchOpen:a,sessionSearchInputRef:o,sessionSearchQuery:s,setSessionSearchQuery:c,hasSessionSearchQuery:l,searchMatchCount:u}=e;if(r||!i)return null;let d;t[0]!==l||t[1]!==u||t[2]!==n?(d=l?(0,$.jsx)(`span`,{children:n(u===1?`sessions.sidebar.header.search.matchCountSingle`:`sessions.sidebar.header.search.matchCountPlural`,{count:u})}):(0,$.jsx)(`span`,{}),t[0]=l,t[1]=u,t[2]=n,t[3]=d):d=t[3];let f;t[4]===n?f=t[5]:(f=n(`sessions.sidebar.header.search.escapeHint`),t[4]=n,t[5]=f);let p;t[6]===f?p=t[7]:(p=(0,$.jsx)(`span`,{children:f}),t[6]=f,t[7]=p);let m;t[8]!==d||t[9]!==p?(m=(0,$.jsxs)(`div`,{className:`mb-1 flex items-center justify-between px-0.5 typography-micro text-muted-foreground/80`,children:[d,p]}),t[8]=d,t[9]=p,t[10]=m):m=t[10];let h;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(h=(0,$.jsx)(Z,{name:`search`,className:`pointer-events-none absolute left-2 top-1/2 h-4 w-4 -translate-y-1/2 text-muted-foreground`}),t[11]=h):h=t[11];let g;t[12]===c?g=t[13]:(g=e=>c(e.target.value),t[12]=c,t[13]=g);let _;t[14]===n?_=t[15]:(_=n(`sessions.sidebar.header.search.placeholder`),t[14]=n,t[15]=_);let v;t[16]!==l||t[17]!==a||t[18]!==c?(v=e=>{e.key===`Escape`&&(e.stopPropagation(),l?c(``):a(!1))},t[16]=l,t[17]=a,t[18]=c,t[19]=v):v=t[19];let y;t[20]!==o||t[21]!==s||t[22]!==g||t[23]!==_||t[24]!==v?(y=(0,$.jsx)(`input`,{ref:o,value:s,onChange:g,placeholder:_,className:`h-8 w-full rounded-md border border-border bg-transparent pl-8 pr-8 typography-ui-label text-foreground outline-none focus-visible:ring-2 focus-visible:ring-primary/50`,onKeyDown:v}),t[20]=o,t[21]=s,t[22]=g,t[23]=_,t[24]=v,t[25]=y):y=t[25];let b;t[26]!==s.length||t[27]!==c||t[28]!==n?(b=s.length>0?(0,$.jsx)(`button`,{type:`button`,onClick:()=>c(``),className:`absolute right-1 top-1/2 inline-flex h-6 w-6 -translate-y-1/2 items-center justify-center rounded-md text-muted-foreground hover:bg-interactive-hover/60 hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50`,"aria-label":n(`sessions.sidebar.header.search.clear`),children:(0,$.jsx)(Z,{name:`close`,className:`h-3.5 w-3.5`})}):null,t[26]=s.length,t[27]=c,t[28]=n,t[29]=b):b=t[29];let x;t[30]!==y||t[31]!==b?(x=(0,$.jsxs)(`div`,{className:`relative`,children:[h,y,b]}),t[30]=y,t[31]=b,t[32]=x):x=t[32];let S;return t[33]!==x||t[34]!==m?(S=(0,$.jsx)(`div`,{className:`select-none flex-shrink-0 px-3 py-1`,children:(0,$.jsxs)(`div`,{className:`pb-1`,children:[m,x]})}),t[33]=x,t[34]=m,t[35]=S):S=t[35],S}function Bp(e){let t=(0,Ts.c)(13),{title:n,accessory:r,isFirst:i,onToggle:a,expanded:o,className:s}=e,c=i!==void 0&&i?`pt-1 pb-1`:`pt-4 pb-1`,l;t[0]!==s||t[1]!==c?(l=X(`group/section flex w-full items-center gap-1 px-2`,c,s),t[0]=s,t[1]=c,t[2]=l):l=t[2];let u;t[3]!==o||t[4]!==a||t[5]!==n?(u=a?(0,$.jsxs)(`button`,{type:`button`,onClick:a,className:`group/toggle flex min-w-0 flex-1 items-center gap-1 rounded-md text-left focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50`,"aria-expanded":o,children:[(0,$.jsx)(`span`,{className:`typography-micro font-normal tracking-wide text-muted-foreground/80`,children:n}),(0,$.jsx)(Z,{name:o?`arrow-down-s`:`arrow-right-s`,className:`size-3 shrink-0 opacity-0 transition-opacity group-hover/toggle:opacity-100 group-focus-visible/toggle:opacity-100`})]}):(0,$.jsx)(`span`,{className:X(`flex min-w-0 flex-1 items-center gap-1`,`typography-micro font-normal tracking-wide text-muted-foreground/80`),children:n}),t[3]=o,t[4]=a,t[5]=n,t[6]=u):u=t[6];let d;t[7]===r?d=t[8]:(d=r?(0,$.jsx)(`div`,{className:`ml-auto -mr-2 flex shrink-0 items-center`,children:r}):null,t[7]=r,t[8]=d);let f;return t[9]!==l||t[10]!==u||t[11]!==d?(f=(0,$.jsxs)(`div`,{className:l,children:[u,d]}),t[9]=l,t[10]=u,t[11]=d,t[12]=f):f=t[12],f}function Vp(e){let t=(0,Ts.c)(52),{items:n,inProgressItems:r,renderSessionNode:i,currentSessionId:a,editingId:o,openSidebarMenuKey:s,headerAccessory:c,onVisibleSessionIdsChange:l}=e,u;t[0]===r?u=t[1]:(u=r===void 0?[]:r,t[0]=r,t[1]=u);let d=u,{t:f}=Fe(),[p,m]=Q.useState(!1),h=fr(Kp),g,_;t[2]!==p||t[3]!==d||t[4]!==n||t[5]!==l?(g=()=>{if(p){l?.([]);return}l?.([...n.map(Gp),...d.map(Wp)])},_=[p,d,n,l],t[2]=p,t[3]=d,t[4]=n,t[5]=l,t[6]=g,t[7]=_):(g=t[6],_=t[7]),Q.useLayoutEffect(g,_);let v,y;t[8]!==d||t[9]!==n||t[10]!==h?(v=()=>{h&&(n.some(e=>e.node.session.id===h)||d.some(e=>e.node.session.id===h))&&m(!1)},y=[d,n,h],t[8]=d,t[9]=n,t[10]=h,t[11]=v,t[12]=y):(v=t[11],y=t[12]),Q.useLayoutEffect(v,y);let b,x,S,C;if(t[13]!==a||t[14]!==o||t[15]!==d||t[16]!==n||t[17]!==s){let e=[...n,...d].map(Up);S=new Set,vp(e,a,S),C=new Set,vp(e,o,C),b=xp(e,s,`pinned`,!1),x=new WeakMap;let r=e=>{x.set(e,bp(e)),e.children.forEach(r)};e.forEach(r),t[13]=a,t[14]=o,t[15]=d,t[16]=n,t[17]=s,t[18]=b,t[19]=x,t[20]=S,t[21]=C}else b=t[18],x=t[19],S=t[20],C=t[21];let w;t[22]!==b||t[23]!==x||t[24]!==S||t[25]!==C?(w=e=>({subtreeContainsActive:S,subtreeContainsEditing:C,menuOpenSessionId:b,nodeStructureKey:x.get(e)??``,childRenderExtrasFor:w}),t[22]=b,t[23]=x,t[24]=S,t[25]=C,t[26]=w):w=t[26];let T;t[27]!==w||t[28]!==b||t[29]!==x||t[30]!==S||t[31]!==C?(T=e=>({subtreeContainsActive:S,subtreeContainsEditing:C,menuOpenSessionId:b,nodeStructureKey:x.get(e)??``,childRenderExtrasFor:w}),t[27]=w,t[28]=b,t[29]=x,t[30]=S,t[31]=C,t[32]=T):T=t[32];let E=T;if(n.length+d.length===0)return null;let D;t[33]!==E||t[34]!==i?(D=e=>e.map(e=>(0,$.jsx)(Q.Fragment,{children:i(e.node,0,e.groupDirectory,e.projectId,!1,e.secondaryMeta,`pinned`,E(e.node))},`${e.projectId??``}:${e.node.session.id}`)),t[33]=E,t[34]=i,t[35]=D):D=t[35];let O=D,k;t[36]!==d.length||t[37]!==f?(k=d.length>0?f(`directoryTree.section.pinnedInProgress`):f(`directoryTree.section.pinned`),t[36]=d.length,t[37]=f,t[38]=k):k=t[38];let A;t[39]===Symbol.for(`react.memo_cache_sentinel`)?(A=()=>m(Hp),t[39]=A):A=t[39];let j=!p,M;t[40]!==c||t[41]!==j||t[42]!==k?(M=(0,$.jsx)(Bp,{title:k,onToggle:A,expanded:j,accessory:c}),t[40]=c,t[41]=j,t[42]=k,t[43]=M):M=t[43];let N;t[44]!==p||t[45]!==d||t[46]!==n||t[47]!==O?(N=p?null:(0,$.jsxs)(`div`,{className:`space-y-0.5`,children:[O(n),O(d)]}),t[44]=p,t[45]=d,t[46]=n,t[47]=O,t[48]=N):N=t[48];let P;return t[49]!==M||t[50]!==N?(P=(0,$.jsx)(Qr,{delay:0,closeDelay:150,timeout:600,children:(0,$.jsxs)(`div`,{className:`pb-1`,children:[M,N]})}),t[49]=M,t[50]=N,t[51]=P):P=t[51],P}function Hp(e){return!e}function Up(e){return e.node}function Wp(e){return e.node.session.id}function Gp(e){return e.node.session.id}function Kp(e){return e.focus?.scope===`pinned`?e.focus.sessionId:null}function qp(e){let t=(0,Ts.c)(41),{collapseAllProjects:n,expandAllProjects:r,buttonClassName:i,iconClassName:a}=e,{t:o}=Fe(),s;t[0]===i?s=t[1]:(s=X(`size-6 p-0 text-muted-foreground`,i),t[0]=i,t[1]=s);let c;t[2]===o?c=t[3]:(c=o(`sessions.sidebar.header.actions.sessionDisplayMode`),t[2]=o,t[3]=c);let l;t[4]===a?l=t[5]:(l=X(`h-3.5 w-3.5`,a),t[4]=a,t[5]=l);let u;t[6]===l?u=t[7]:(u=(0,$.jsx)(Z,{name:`more-2-fill`,className:l}),t[6]=l,t[7]=u);let d;t[8]!==s||t[9]!==c||t[10]!==u?(d=(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(Oi,{asChild:!0,children:(0,$.jsx)(Sn,{variant:`ghost`,size:`xs`,className:s,"aria-label":c,onClick:Jp,children:u})})}),t[8]=s,t[9]=c,t[10]=u,t[11]=d):d=t[11];let f;t[12]===o?f=t[13]:(f=o(`sessions.sidebar.header.displayMode.label`),t[12]=o,t[13]=f);let p;t[14]===f?p=t[15]:(p=(0,$.jsx)(Zr,{side:`bottom`,sideOffset:4,children:(0,$.jsx)(`p`,{children:f})}),t[14]=f,t[15]=p);let m;t[16]!==d||t[17]!==p?(m=(0,$.jsxs)($r,{children:[d,p]}),t[16]=d,t[17]=p,t[18]=m):m=t[18];let h;t[19]===Symbol.for(`react.memo_cache_sentinel`)?(h=(0,$.jsx)(Z,{name:`contract-up-down`,className:`h-4 w-4`}),t[19]=h):h=t[19];let g;t[20]===o?g=t[21]:(g=o(`sessions.sidebar.header.displayMode.collapseAll`),t[20]=o,t[21]=g);let _;t[22]===g?_=t[23]:(_=(0,$.jsx)(`span`,{children:g}),t[22]=g,t[23]=_);let v;t[24]!==n||t[25]!==_?(v=(0,$.jsxs)(ki,{onClick:n,className:`flex items-center gap-2`,children:[h,_]}),t[24]=n,t[25]=_,t[26]=v):v=t[26];let y;t[27]===Symbol.for(`react.memo_cache_sentinel`)?(y=(0,$.jsx)(Z,{name:`expand-up-down`,className:`h-4 w-4`}),t[27]=y):y=t[27];let b;t[28]===o?b=t[29]:(b=o(`sessions.sidebar.header.displayMode.expandAll`),t[28]=o,t[29]=b);let x;t[30]===b?x=t[31]:(x=(0,$.jsx)(`span`,{children:b}),t[30]=b,t[31]=x);let S;t[32]!==r||t[33]!==x?(S=(0,$.jsxs)(ki,{onClick:r,className:`flex items-center gap-2`,children:[y,x]}),t[32]=r,t[33]=x,t[34]=S):S=t[34];let C;t[35]!==v||t[36]!==S?(C=(0,$.jsxs)(Di,{align:`end`,className:`min-w-[160px]`,children:[v,S]}),t[35]=v,t[36]=S,t[37]=C):C=t[37];let w;return t[38]!==C||t[39]!==m?(w=(0,$.jsxs)(Si,{children:[m,C]}),t[38]=C,t[39]=m,t[40]=w):w=t[40],w}function Jp(e){e.stopPropagation()}var Yp=`group size-7 rounded-md text-muted-foreground/75 transition-colors hover:bg-interactive-hover hover:text-foreground focus-visible:ring-2 focus-visible:ring-primary`,Xp=`size-4 text-foreground/55 transition-colors group-hover:text-foreground group-focus-visible:text-foreground`;function Zp(e){let t=(0,Ts.c)(12),{onOpenSettings:n,onOpenShortcuts:r,onOpenUpdate:i,showRuntimeButtons:a,showUpdateButton:o}=e,s=a===void 0||a,c=o!==void 0&&o,{t:l}=Fe(),u;t[0]!==n||t[1]!==r||t[2]!==s||t[3]!==l?(u=s?(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(Sn,{type:`button`,variant:`ghost`,size:`icon`,className:Yp,onClick:n,"aria-label":l(`sessions.sidebar.footer.actions.settings`),children:(0,$.jsx)(Z,{name:`settings-3`,className:Xp})})}),(0,$.jsx)(Zr,{side:`top`,sideOffset:4,children:l(`sessions.sidebar.footer.actions.settings`)})]}),(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(Sn,{type:`button`,variant:`ghost`,size:`icon`,className:Yp,onClick:r,"aria-label":l(`sessions.sidebar.footer.actions.shortcuts`),children:(0,$.jsx)(Z,{name:`question`,className:Xp})})}),(0,$.jsx)(Zr,{side:`top`,sideOffset:4,children:l(`sessions.sidebar.footer.actions.shortcuts`)})]})]}):null,t[0]=n,t[1]=r,t[2]=s,t[3]=l,t[4]=u):u=t[4];let d;t[5]!==i||t[6]!==c||t[7]!==l?(d=c&&i?(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(Sn,{type:`button`,variant:`ghost`,size:`icon`,className:`ml-auto size-6 rounded-full [corner-shape:round] supports-[corner-shape:squircle]:rounded-full border border-[var(--primary-base)] bg-[var(--primary-base)] text-[var(--primary-foreground)] hover:bg-[var(--primary-hover)] hover:text-[var(--primary-foreground)] active:bg-[var(--primary-hover)]`,onClick:i,"aria-label":l(`sessions.sidebar.footer.actions.update`),children:(0,$.jsx)(Z,{name:`download`,className:`size-3.5`})})}),(0,$.jsx)(Zr,{side:`top`,sideOffset:4,children:(0,$.jsx)(`p`,{children:l(`sessions.sidebar.footer.actions.update`)})})]}):null,t[5]=i,t[6]=c,t[7]=l,t[8]=d):d=t[8];let f;return t[9]!==u||t[10]!==d?(f=(0,$.jsxs)(`div`,{className:`flex shrink-0 items-center justify-start gap-1 px-2.5 py-2`,children:[u,d]}),t[9]=u,t[10]=d,t[11]=f):f=t[11],f}var Qp=e=>{let t=(0,Ts.c)(64),{id:n,disabled:r,projectLabel:i,projectDescription:a,projectIcon:o,projectColor:s,projectIconImage:c,isCollapsed:l,isActiveProject:u,isSessionsLoading:d,isRepo:f,isDesktopShell:p,isStuck:m,hideDirectoryControls:h,alwaysShowActions:g,onToggle:_,onNewSession:v,onNewWorktreeSession:y,onSyncSessions:b,onRenameStart:x,onClose:S,sentinelRef:C,children:w,showCreateButtons:T,hideHeader:E,openSidebarMenuKey:D,setOpenSidebarMenuKey:O,reorderEnabled:k}=e,A=r!==void 0&&r,j=d!==void 0&&d,M=T===void 0||T,N=E!==void 0&&E,P=k===void 0||k,{t:F}=Fe(),I=A||!P,L;t[0]!==n||t[1]!==I?(L={id:n,disabled:I},t[0]=n,t[1]=I,t[2]=L):L=t[2];let{attributes:R,listeners:z,setNodeRef:B,transform:V,transition:H,isDragging:U}=xa(L),W=Q.useRef(!1),ee=`project:${n}`,G=D===ee,[te,K]=Q.useState(!1),ne=o?Br[o]:null,re=s?Wr[s]:void 0,ie=ne??`folder-open`,ae;t[3]===re?ae=t[4]:(ae=re?{color:re}:void 0,t[3]=re,t[4]=ae);let oe;t[5]!==ie||t[6]!==ae?(oe=(0,$.jsx)(Z,{name:ie,className:`h-4 w-4`,style:ae}),t[5]=ie,t[6]=ae,t[7]=oe):oe=t[7];let se=oe,q;t[8]!==ee||t[9]!==O?(q=e=>{e&&K(!1),O(e?ee:null)},t[8]=ee,t[9]=O,t[10]=q):q=t[10];let ce=q,le;t[11]!==h||t[12]!==f||t[13]!==S||t[14]!==v||t[15]!==x||t[16]!==b||t[17]!==M||t[18]!==F?(le=e=>(0,$.jsxs)($.Fragment,{children:[M&&!f&&!h&&v&&(0,$.jsxs)(e,{onClick:v,children:[(0,$.jsx)(Z,{name:`add`,className:`mr-1.5 h-4 w-4`}),F(`sessions.sidebar.project.actions.newSession`)]}),(0,$.jsxs)(e,{onClick:b,children:[(0,$.jsx)(Z,{name:`refresh`,className:`mr-1.5 h-4 w-4`}),F(`sessions.sidebar.project.actions.syncSessions`)]}),(0,$.jsxs)(e,{onClick:x,children:[(0,$.jsx)(Z,{name:`pencil-ai`,className:`mr-1.5 h-4 w-4`}),F(`sessions.sidebar.project.actions.edit`)]}),(0,$.jsxs)(e,{onClick:S,className:`text-destructive focus:text-destructive`,children:[(0,$.jsx)(Z,{name:`close`,className:`mr-1.5 h-4 w-4`}),F(`sessions.sidebar.project.actions.closeProject`)]})]}),t[11]=h,t[12]=f,t[13]=S,t[14]=v,t[15]=x,t[16]=b,t[17]=M,t[18]=F,t[19]=le):le=t[19];let ue=le,de=em,fe=tm,pe=nm,me;t[20]===Symbol.for(`react.memo_cache_sentinel`)?(me=e=>{(e.button===2||e.button===0&&e.ctrlKey)&&(W.current=!0)},t[20]=me):me=t[20];let he=me,ge;t[21]===_?ge=t[22]:(ge=()=>{if(W.current){W.current=!1;return}_()},t[21]=_,t[22]=ge);let _e=ge,ve;t[23]===V?ve=t[24]:(ve=va.Transform.toString(V),t[23]=V,t[24]=ve);let ye;t[25]!==ve||t[26]!==H?(ye={transform:ve,transition:H},t[25]=ve,t[26]=H,t[27]=ye):ye=t[27];let be=U&&`opacity-30`,xe;t[28]===be?xe=t[29]:(xe=X(`relative`,be),t[28]=be,t[29]=xe);let Se;t[30]!==g||t[31]!==R||t[32]!==ce||t[33]!==_e||t[34]!==h||t[35]!==N||t[36]!==n||t[37]!==u||t[38]!==l||t[39]!==te||t[40]!==p||t[41]!==G||t[42]!==f||t[43]!==j||t[44]!==m||t[45]!==z||t[46]!==v||t[47]!==y||t[48]!==a||t[49]!==se||t[50]!==c||t[51]!==i||t[52]!==ue||t[53]!==P||t[54]!==C||t[55]!==M||t[56]!==F?(Se=N?null:(0,$.jsxs)($.Fragment,{children:[p&&(0,$.jsx)(`div`,{ref:C,"data-project-id":n,className:`absolute top-0 h-px w-full pointer-events-none`,"aria-hidden":`true`}),(0,$.jsxs)(as,{open:te,onOpenChange:K,children:[(0,$.jsx)(ss,{render:(0,$.jsx)(`div`,{className:X(`w-full text-left group/project select-none`),style:{backgroundColor:p&&m?`transparent`:void 0},onContextMenu:e=>{h||(e.preventDefault(),K(!0))}}),children:(0,$.jsxs)(`div`,{className:X(`relative flex items-center gap-1.5 rounded-lg px-2 py-1.5`,Kn),...R,children:[(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsxs)(`button`,{type:`button`,onMouseDown:he,onClick:_e,...P?z:{},className:X(`flex-1 min-w-0 flex items-center gap-1.5 text-left focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50 rounded-md transition-[padding]`,P?`cursor-grab active:cursor-grabbing`:`cursor-pointer`,f&&!h?g?`pr-20`:`pr-7 group-hover/project:pr-20 group-has-[:focus-visible]/project:pr-20`:g?`pr-14`:`pr-7 group-hover/project:pr-14 group-has-[:focus-visible]/project:pr-14`),children:[(0,$.jsx)(`span`,{className:`inline-flex h-4 w-4 flex-shrink-0 items-center justify-center overflow-hidden text-foreground`,children:j?(0,$.jsx)(Z,{name:`loader-4`,className:`h-4 w-4 animate-spin`,"aria-label":F(`sessions.sidebar.project.loadingSessions`)}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`span`,{className:X(`h-4 w-4 items-center justify-center`,g?`inline-flex`:`hidden group-hover/project:inline-flex group-has-[:focus-visible]/project:inline-flex`),children:l?(0,$.jsx)(Z,{name:`arrow-right-s`,className:`h-3.5 w-3.5`}):(0,$.jsx)(Z,{name:`arrow-down-s`,className:`h-3.5 w-3.5`})}),(0,$.jsx)(`span`,{className:X(g?`hidden`:`group-hover/project:hidden group-has-[:focus-visible]/project:hidden`),children:c?(0,$.jsx)(Ir,{project:{id:n,iconImage:c},className:`size-full object-contain`,fallback:se}):se})]})}),(0,$.jsx)(`span`,{className:X(`text-[14px] font-normal truncate lowercase`,u?`text-foreground`:`text-foreground group-hover/project:text-foreground`),children:i})]})}),(0,$.jsx)(Zr,{side:`right`,sideOffset:8,children:a})]}),(0,$.jsxs)(`div`,{className:X(`absolute top-1/2 z-10 flex -translate-y-1/2 items-center gap-1`,M?`right-7`:`right-0.5`),children:[M&&f&&!h&&y?(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),y()},className:X(`inline-flex h-6 w-6 items-center justify-center rounded-md text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50 hover:text-foreground transition-opacity`,g?`opacity-100`:`opacity-0 pointer-events-none group-hover/project:opacity-100 group-hover/project:pointer-events-auto group-has-[:focus-visible]/project:opacity-100 group-has-[:focus-visible]/project:pointer-events-auto`),"aria-label":F(`sessions.sidebar.project.actions.newWorktree`),children:(0,$.jsx)(Z,{name:`node-tree`,className:`h-4 w-4`})})}),(0,$.jsx)(Zr,{side:`bottom`,sideOffset:4,children:(0,$.jsx)(`p`,{children:F(`sessions.sidebar.project.actions.newWorktreeEllipsis`)})})]}):null,h?null:(0,$.jsxs)(Si,{open:G,onOpenChange:ce,children:[(0,$.jsx)(Oi,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,className:X(`inline-flex h-6 w-6 items-center justify-center rounded-md text-muted-foreground transition-opacity focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50 hover:text-foreground`,G?`opacity-100 pointer-events-auto`:g?`opacity-100`:`opacity-0 pointer-events-none group-hover/project:opacity-100 group-hover/project:pointer-events-auto group-has-[:focus-visible]/project:opacity-100 group-has-[:focus-visible]/project:pointer-events-auto`),"aria-label":F(`sessions.sidebar.project.actions.projectMenu`),onPointerDown:fe,onMouseDown:pe,onClick:de,children:(0,$.jsx)(Z,{name:`more-2`,className:`h-3.5 w-3.5`})})}),(0,$.jsx)(Di,{align:`end`,className:`min-w-[180px]`,children:ue(ki)})]})]}),M&&v?(0,$.jsx)(`div`,{className:`absolute right-0.5 top-1/2 z-10 -translate-y-1/2`,children:(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),v()},className:X(`inline-flex h-6 w-6 items-center justify-center rounded-md text-muted-foreground hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50 transition-opacity`,g?`opacity-100`:`opacity-0 pointer-events-none group-hover/project:opacity-100 group-hover/project:pointer-events-auto group-has-[:focus-visible]/project:opacity-100 group-has-[:focus-visible]/project:pointer-events-auto`),"aria-label":F(f?`sessions.sidebar.project.actions.newDraftSession`:`sessions.sidebar.project.actions.newSession`),children:(0,$.jsx)(Z,{name:`add`,className:`h-4 w-4`})})}),(0,$.jsx)(Zr,{side:`bottom`,sideOffset:4,children:(0,$.jsx)(`p`,{children:F(f?`sessions.sidebar.project.actions.newDraftSession`:`sessions.sidebar.project.actions.newSession`)})})]})}):null]})}),(0,$.jsx)(cs,{className:`min-w-[180px]`,children:ue(ls)})]})]}),t[30]=g,t[31]=R,t[32]=ce,t[33]=_e,t[34]=h,t[35]=N,t[36]=n,t[37]=u,t[38]=l,t[39]=te,t[40]=p,t[41]=G,t[42]=f,t[43]=j,t[44]=m,t[45]=z,t[46]=v,t[47]=y,t[48]=a,t[49]=se,t[50]=c,t[51]=i,t[52]=ue,t[53]=P,t[54]=C,t[55]=M,t[56]=F,t[57]=Se):Se=t[57];let Ce;return t[58]!==w||t[59]!==B||t[60]!==ye||t[61]!==xe||t[62]!==Se?(Ce=(0,$.jsxs)(`div`,{ref:B,style:ye,className:xe,children:[Se,w]}),t[58]=w,t[59]=B,t[60]=ye,t[61]=xe,t[62]=Se,t[63]=Ce):Ce=t[63],Ce},$p=Q.memo(e=>{let t=(0,Ts.c)(21),{id:n,disabled:r,children:i}=e,a=r!==void 0&&r,o;t[0]!==a||t[1]!==n?(o={id:n,disabled:a},t[0]=a,t[1]=n,t[2]=o):o=t[2];let{listeners:s,setNodeRef:c,setActivatorNodeRef:l,transform:u,transition:d,isDragging:f}=xa(o),p;t[3]!==s||t[4]!==l?(p={listeners:s,setActivatorNodeRef:l},t[3]=s,t[4]=l,t[5]=p):p=t[5];let m=p,h;t[6]===u?h=t[7]:(h=va.Transform.toString(u),t[6]=u,t[7]=h);let g;t[8]!==h||t[9]!==d?(g={transform:h,transition:d},t[8]=h,t[9]=d,t[10]=g):g=t[10];let _=f&&`opacity-50`,v;t[11]===_?v=t[12]:(v=X(`space-y-0.5 rounded-md`,_),t[11]=_,t[12]=v);let y;t[13]!==i||t[14]!==m?(y=typeof i==`function`?i(m):i,t[13]=i,t[14]=m,t[15]=y):y=t[15];let b;return t[16]!==c||t[17]!==g||t[18]!==v||t[19]!==y?(b=(0,$.jsx)(`div`,{ref:c,style:g,className:v,children:y}),t[16]=c,t[17]=g,t[18]=v,t[19]=y,t[20]=b):b=t[20],b});function em(e){e.stopPropagation()}function tm(e){e.stopPropagation()}function nm(e){e.stopPropagation()}var rm=e=>{let t=(0,Ts.c)(2),{children:n}=e,r;return t[0]===n?r=t[1]:(r=(0,$.jsx)(Qr,{delay:0,closeDelay:150,timeout:600,children:n}),t[0]=n,t[1]=r),r};function im(e){let{t}=Fe(),n=_a(ua(ha,{activationConstraint:{distance:8}}),ua(fa,{coordinateGetter:ya})),r=_a(ua(ha,{activationConstraint:{distance:8}})),i=e.hasSessionSearchQuery?null:(0,$.jsx)(Bp,{title:t(`sessions.sidebar.projectsTitle`),isFirst:!e.hasLeadingSection,accessory:e.headerAccessory}),a=Q.useRef(null),o=Q.useRef(new Map),s=Q.useRef(e.getOrderedGroups);s.current!==e.getOrderedGroups&&(s.current=e.getOrderedGroups,o.current.clear());let c=(t,n)=>{let r=o.current,i=r.get(t);if(i&&i.groups===n)return i.ordered;let a=e.getOrderedGroups(t,n);if(r.set(t,{groups:n,ordered:a}),r.size>256){let e=r.keys().next().value;e!==void 0&&r.delete(e)}return a};return e.sharedSessionsOnly?(0,$.jsx)(rm,{children:(0,$.jsxs)(Nr,{useScrollShadow:!0,scrollShadowSize:96,outerClassName:`flex-1 min-h-0`,className:X(`space-y-1 px-3 pb-1`,(e.mobileVariant,``)),children:[e.topContent,e.hasSharedSessions?null:e.hasSessionSearchQuery?e.searchEmptyState:e.emptyState]})}):e.projectSections.length===0?(0,$.jsx)(rm,{children:(0,$.jsxs)(Nr,{useScrollShadow:!0,scrollShadowSize:96,outerClassName:`flex-1 min-h-0`,className:X(`space-y-1 px-3 pb-1`,(e.mobileVariant,``)),children:[e.topContent,i,e.emptyState]})}):e.sectionsForRender.length===0?(0,$.jsx)(rm,{children:(0,$.jsx)(Nr,{useScrollShadow:!0,scrollShadowSize:96,outerClassName:`flex-1 min-h-0`,className:X(`space-y-1 px-3 pb-1`,(e.mobileVariant,``)),children:e.searchEmptyState})}):(0,$.jsx)(rm,{children:(0,$.jsxs)(Nr,{ref:a,useScrollShadow:!0,scrollShadowSize:96,outerClassName:`flex-1 min-h-0`,className:X(`space-y-1 px-3 pb-1 [overflow-anchor:none]`,(e.mobileVariant,``)),children:[e.topContent,e.showOnlyMainWorkspace?(0,$.jsx)(`div`,{className:`space-y-[0.6rem] py-1`,children:(()=>{let n=e.sectionsForRender.find(t=>t.project.id===e.activeProjectId)??e.sectionsForRender[0];if(!n)return e.hasSessionSearchQuery?e.searchEmptyState:e.emptyState;let r=n.groups.find(e=>e.isMain&&e.sessions.length>0)??n.groups.find(e=>e.sessions.length>0)??n.groups.find(e=>e.isMain)??n.groups[0];if(!r)return(0,$.jsx)(`div`,{className:kr,children:t(`sessions.sidebar.empty.noSessions.title`)});let i=n.groups.find(e=>e.isArchivedBucket);return[r,...i&&i.id!==r.id?[i]:[]].map(t=>{let i=`${n.project.id}:${t.id}`,o=t.id===r.id;return(0,$.jsx)(Q.Fragment,{children:e.renderGroupSessions(t,i,n.project.id,o,null,!0,a)},i)})})()}):(0,$.jsxs)($.Fragment,{children:[i,(0,$.jsxs)(ga,{sensors:n,collisionDetection:pa,onDragEnd:t=>{if(e.isInlineEditing||e.projectSortOrder!==`manual`)return;let{active:n,over:r}=t;!r||n.id===r.id||e.reorderProjects(String(n.id),String(r.id))},children:[(0,$.jsx)(Ca,{items:e.sectionsForRender.map(e=>e.project.id),strategy:Sa,children:e.sectionsForRender.map(n=>{let i=n.project,o=i.id,s=_n(i.normalizedPath)||i.normalizedPath,l=yn(i.normalizedPath,e.homeDirectory),u=e.collapsedProjects.has(o),d=o===e.activeProjectId,f=e.loadingProjectIds.has(o),p=e.refreshingProjectIds.has(o),m=e.projectRepoStatus.get(o),h=c(o,n.groups),g=h.find(e=>e.isMain)??null,_=g?h.filter(e=>e.id!==g.id):h;return(0,$.jsx)(Qp,{id:o,disabled:e.projectSortOrder!==`manual`,projectLabel:s,projectDescription:l,projectIcon:i.icon,projectColor:i.color,projectIconImage:i.iconImage,isCollapsed:u,isActiveProject:d,isSessionsLoading:f||p,isRepo:!!m,isDesktopShell:e.isDesktopShellRuntime,isStuck:e.stuckProjectHeaders.has(o),hideDirectoryControls:e.hideDirectoryControls,mobileVariant:e.mobileVariant,alwaysShowActions:e.alwaysShowActions,onToggle:()=>e.toggleProject(o),onNewSession:()=>{o!==e.activeProjectId&&e.setActiveProjectIdOnly(o),e.setActiveMainTab(`chat`),e.mobileVariant&&e.setSessionSwitcherOpen(!1),e.openNewSessionDraft({directoryOverride:i.normalizedPath})},onNewWorktreeSession:()=>{o!==e.activeProjectId&&e.setActiveProjectIdOnly(o),e.setActiveMainTab(`chat`),e.openNewWorktreeDialog()},onSyncSessions:()=>e.syncProjectSessions(o),onRenameStart:()=>e.openProjectEditDialog(o),onClose:()=>e.removeProject(o),sentinelRef:t=>{e.projectHeaderSentinelRefs.current.set(o,t)},showCreateButtons:!0,openSidebarMenuKey:e.openSidebarMenuKey,setOpenSidebarMenuKey:e.setOpenSidebarMenuKey,reorderEnabled:e.projectReorderEnabled??!1,children:u?null:(0,$.jsx)(`div`,{className:`space-y-0 pt-0 pb-0.5`,children:f&&n.groups.length===0?(0,$.jsx)(`div`,{className:`box-border w-full py-1.5 text-left typography-ui-label font-normal text-muted-foreground/80 animate-pulse select-none`,style:{paddingLeft:er(1)},role:`status`,"aria-live":`polite`,children:t(`sessions.sidebar.project.loadingSessions`)}):n.groups.length>0?(0,$.jsxs)(ga,{sensors:r,collisionDetection:pa,onDragEnd:t=>{if(e.isInlineEditing)return;let{active:n,over:r}=t;if(!r||n.id===r.id)return;let i=_.findIndex(e=>e.id===n.id),a=_.findIndex(e=>e.id===r.id);if(i===-1||a===-1||i===a)return;let s=ba(_,i,a).map(e=>e.id),c=g?[g.id,...s]:s;e.setGroupOrderByProject(e=>{let t=new Map(e);return t.set(o,c),t})},children:[g?e.renderGroupSessions(g,`${o}:${g.id}`,o,!0,null,void 0,a):null,(0,$.jsx)(Ca,{items:_.map(e=>e.id),strategy:Sa,children:_.map(t=>{let n=`${o}:${t.id}`;return(0,$.jsx)($p,{id:t.id,disabled:e.isInlineEditing,children:r=>e.renderGroupSessions(t,n,o,!1,r,void 0,a)},t.id)})}),(0,$.jsx)(ma,{dropAnimation:null})]}):(0,$.jsx)(`div`,{className:kr,children:t(`sessions.sidebar.empty.noSessions.title`)})})},o)})}),(0,$.jsx)(ma,{dropAnimation:null})]})]})]})})}function am(e){if(typeof e!=`number`||!Number.isFinite(e))return``;let t=new Date(e);return Number.isNaN(t.getTime())?``:`${t.toLocaleString(Ie(),{month:`short`})} ${t.getDate()}, ${t.getFullYear()}, ${String(t.getHours()).padStart(2,`0`)}:${String(t.getMinutes()).padStart(2,`0`)}`}function om(e){if(e.info.role===`user`)return``;let t=typeof e.info.providerID==`string`?e.info.providerID.trim():``,n=typeof e.info.modelID==`string`?e.info.modelID.trim():``;return t&&n?`${t}/${n}`:n||t}function sm(e){let t=e.info.role===`user`?`User`:`Assistant`,n=am(e.info.time?.created),r=om(e),i=n&&r?`${n} (${r})`:n||r;return i?`**${t}**\n\n*${i}*`:`**${t}**`}function cm(e){return e.filter(e=>e.type===`text`&&typeof e.text==`string`).map(e=>e.text).join(``)}function lm(e){let t=sm(e),n=cm(e.parts).trim();return n?`${t}\n\n${n}`:``}function um(e,t){let n=`#`.repeat(Math.min(t+1,6)),r=e.agent?` — ${e.agent}`:``,i=[`${n} Sub-agent: ${e.title}${r}\n\n---\n\n`+e.records.map(lm).filter(Boolean).join(`
|
|
6
|
+
`)}`.trim()}),Je()},[Je]),bn=Q.useCallback((e,t)=>{let n=t||e;he(r=>{let i=r.trimStart();return i.startsWith(e)||t&&i.startsWith(t)?r:`${n.endsWith(` `)?n:`${n} `}${r}`.trimStart()}),ct(``),Se(!1)},[]),xn=Q.useCallback(async()=>{if(r)try{bt===`merge`?(await n.abortMerge(r),Y.success(t(`gitView.toast.mergeAborted`))):(await n.abortRebase(r),Y.success(t(`gitView.toast.rebaseAborted`))),At(),await Pt(),await It()}catch(e){let t=e instanceof Error?e.message:`Failed to abort ${bt}`;Y.error(t)}},[r,n,bt,Pt,It,At,t]),Sn=Q.useMemo(()=>v?.files?v.files.some(e=>e.index===`U`||e.working_dir===`U`||e.index===`A`&&e.working_dir===`A`||e.index===`D`&&e.working_dir===`D`):!1,[v?.files]),Cn=Q.useCallback(async()=>{if(r)try{let e=!!v?.mergeInProgress?.head,i=!!(v?.rebaseInProgress?.headName||v?.rebaseInProgress?.onto);if(e){let e=await n.continueMerge(r);e.conflict?(yt(e.conflictFiles??[]),xt(`merge`),_t(!0),kt(r,e.conflictFiles??[],`merge`),Y.error(t(`gitView.toast.mergeConflictsDetected`))):(At(),Y.success(t(`gitView.toast.mergeCompleted`)),await Pt(),await It())}else if(i){let e=await n.continueRebase(r);e.conflict?(yt(e.conflictFiles??[]),xt(`rebase`),_t(!0),kt(r,e.conflictFiles??[],`rebase`),Y.error(t(`gitView.toast.rebaseConflictsDetected`))):(At(),Y.success(t(`gitView.toast.rebaseStepCompleted`)),await Pt(),await It())}}catch(e){let n=e instanceof Error?e.message:t(`gitView.toast.continueOperationFailed`);Y.error(n)}},[r,n,v,Pt,It,kt,At,t]),wn=Q.useCallback(async()=>{if(r)try{v?.mergeInProgress?.head?(await n.abortMerge(r),Y.success(t(`gitView.toast.mergeAborted`))):(await n.abortRebase(r),Y.success(t(`gitView.toast.rebaseAborted`))),At(),await Pt(),await It()}catch(e){let n=e instanceof Error?e.message:t(`gitView.toast.abortOperationFailed`);Y.error(n)}},[r,n,v,Pt,It,At,t]),Tn=Q.useCallback(()=>{if(!r)return;let e=v?.mergeInProgress?.head?`merge`:`rebase`,t=v?.files?.filter(e=>e.index===`U`||e.working_dir===`U`).map(e=>e.path)??[];t.length>0&&yt(t),xt(e),_t(!0)},[r,v]),En=Q.useCallback(e=>{je(e),r&&(N(r,e),M(r,n,e))},[r,M,n,N]),Dn=Q.useCallback(e=>{Dt(e)},[]),On=Q.useCallback(()=>{ft(null),r&&(A(r,n),j(r,n,{force:!0}),M(r,n,Ae))},[r,A,j,M,Ae,n]),kn=Q.useCallback(e=>{if(e.conflict){if(e.operation===`cherry-pick`||e.operation===`revert`){Y.error(t(`gitView.history.actions.conflictToastTitle`),{description:t(`gitView.history.actions.conflictToastDescription`,{files:e.conflictFiles?.join(`, `)??`unknown files`})}),r&&(A(r,n),j(r,n,{force:!0}),M(r,n,Ae));return}yt(e.conflictFiles??[]),xt(e.operation),_t(!0),r&&kt(r,e.conflictFiles??[],e.operation)}},[t,yt,xt,_t,kt,r,A,j,M,Ae,n]);if(!r)return(0,$.jsx)(`div`,{className:`flex h-full items-center justify-center px-4 text-center`,children:(0,$.jsx)(`p`,{className:`typography-ui-label text-muted-foreground`,children:t(`gitView.empty.selectSessionOrDirectory`)})});if(_===null||_===!0&&!v)return(0,$.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-muted-foreground`,children:[(0,$.jsx)(Z,{name:`loader-4`,className:`size-4 animate-spin`}),(0,$.jsx)(`span`,{className:`typography-ui-label`,children:t(`gitView.loading.checkingRepository`)})]})});if(_===!1)return ce?(0,$.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center px-4 text-center`,children:[(0,$.jsx)(Z,{name:`loader-4`,className:`mb-3 size-6 animate-spin text-muted-foreground`}),(0,$.jsx)(`p`,{className:`typography-ui-label font-semibold text-foreground`,children:t(`gitView.empty.worktreeSetupInProgress`)}),(0,$.jsx)(`p`,{className:`typography-meta mt-1 text-muted-foreground`,children:t(`gitView.empty.worktreeSetupDescription`)})]}):(0,$.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center px-4 text-center`,children:[(0,$.jsx)(Z,{name:`git-branch`,className:`mb-3 size-6 text-muted-foreground`}),(0,$.jsx)(`p`,{className:`typography-ui-label font-semibold text-foreground`,children:t(`gitView.empty.notGitRepository`)}),(0,$.jsx)(`p`,{className:`typography-meta mt-1 text-muted-foreground`,children:t(`gitView.empty.notGitRepositoryDescription`)}),b.includes(`open-without-worktree-features`)?(0,$.jsx)(`p`,{className:`typography-meta mt-2 text-muted-foreground`,children:t(`gitView.empty.worktreeFeaturesUnavailable`)}):null]});let An=v?S?(0,$.jsx)(Ho,{currentBranch:v.current,onRename:Jt,iconOnly:!0}):(0,$.jsx)(Li,{currentBranch:v.current,localBranches:Xt,remoteBranches:Qt,branchInfo:C?.branches,onCheckout:Yt,onCreate:qt,remotes:$t,iconOnly:!0}):null,jn=v?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Uo,{syncAction:we,remotes:$t,onSync:e=>Ut(`sync`,e),disabled:!v,aheadCount:v.ahead,behindCount:v.behind,trackingRemoteName:v.tracking?.split(`/`)[0],hasUncommittedChanges:(v.files?.length??0)>0}),(0,$.jsxs)(Si,{children:[(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(Oi,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,className:`flex size-6 items-center justify-center rounded text-muted-foreground hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--interactive-focus-ring)]`,"aria-label":t(`gitView.header.repositoryViews`),children:(0,$.jsx)(Z,{name:`git-repository`,className:`size-3.5`})})})}),(0,$.jsx)(Zr,{sideOffset:8,children:t(`gitView.header.repositoryViews`)})]}),(0,$.jsxs)(Di,{align:`end`,children:[(0,$.jsxs)(ki,{onSelect:()=>ft(`history`),children:[(0,$.jsx)(Z,{name:`history`,className:`size-4`}),t(`gitView.history.title`)]}),(0,$.jsxs)(ki,{onSelect:()=>ft(`graph`),children:[(0,$.jsx)(Z,{name:`git-merge`,className:`size-4`}),t(`gitView.graph.title`)]}),(0,$.jsxs)(ki,{onSelect:_n,children:[(0,$.jsx)(Z,{name:`archive-stack`,className:`size-4`}),t(`gitView.stashes.title`)]})]})]})]}):null,Mn=v?(0,$.jsxs)($.Fragment,{children:[An,jn]}):null;return(0,$.jsxs)(`div`,{className:X(`flex h-full flex-col overflow-hidden`),children:[r&&(v?.mergeInProgress?.head||v?.rebaseInProgress?.headName||v?.rebaseInProgress?.onto)&&(0,$.jsx)(Ql,{mergeInProgress:v?.mergeInProgress,rebaseInProgress:v?.rebaseInProgress,onContinue:Cn,onAbort:wn,onResolveWithAI:Tn,hasUnresolvedConflicts:Sn,isLoading:T}),(0,$.jsx)(`div`,{className:`flex-1 min-h-0 overflow-hidden`,children:(0,$.jsx)(`div`,{className:`h-full min-h-0 flex flex-col`,children:(0,$.jsx)(`div`,{className:X(`min-w-0 min-h-0 h-full flex flex-col`),children:(0,$.jsx)(Nr,{as:Vr,ref:Ce,outerClassName:`flex-1 min-h-0`,className:X(`px-4`,`pt-2 pb-4`),disableHorizontal:!0,preventOverscroll:!0,children:(0,$.jsx)(`div`,{className:`flex h-full min-h-0 flex-col gap-2`,children:be?(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`div`,{className:`mb-1 flex h-8 shrink-0 items-center bg-background pr-2`,children:[(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate typography-ui-label font-semibold text-foreground`,children:t(`gitView.changes.deferredTitle`,{count:v?.files?.length??0})}),(0,$.jsx)(`div`,{className:`ml-auto grid shrink-0 grid-flow-col auto-cols-[1.5rem] items-center justify-end`,children:Mn})]}),(0,$.jsx)(ts,{stagedCount:Bt,unstagedCount:Vt,onLoad:()=>ye(!0)})]}):(Lt?.length??0)>0?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`div`,{className:`min-h-0 flex-1 overflow-hidden`,children:(0,$.jsx)(Bo,{groups:vn,diffStats:v?.diffStats,revertingPaths:Ne,isRevertingAll:ze,onVisiblePathsChange:_e,onRevertAll:un,onRevertDirectory:hn,headerBackgroundClassName:`bg-background`,headerLeadingActions:An,headerActions:jn})}),(0,$.jsx)(zo,{stagedCount:nn,commitMessage:me,onCommitMessageChange:he,generatedHighlights:We,onInsertHighlights:yn,onGenerateMessage:Gt,isGeneratingMessage:He,onCommit:()=>Wt({pushAfter:!1}),onCommitAndPush:()=>Wt({pushAfter:!0}),commitAction:Oe,hasPendingIndexMutation:Ke,gitmojiEnabled:ue,onOpenGitmojiPicker:()=>Se(!0)})]}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`div`,{className:`mb-1 flex h-8 shrink-0 items-center bg-background pr-2`,children:[(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate typography-ui-label font-semibold text-foreground`,children:t(`gitView.empty.cleanTitle`)}),(0,$.jsx)(`div`,{className:`ml-auto grid shrink-0 grid-flow-col auto-cols-[1.5rem] items-center justify-end`,children:Mn})]}),(0,$.jsx)(xl,{onOpenStashes:()=>De(!0)})]})})})})})}),(0,$.jsx)(mn,{open:ut!==null,onOpenChange:e=>{e||ft(null)},children:(0,$.jsxs)(dn,{className:`max-w-5xl h-[90vh] max-h-[90vh] flex flex-col overflow-hidden`,children:[(0,$.jsxs)(ln,{children:[(0,$.jsx)(fn,{children:t(ut===`graph`?`gitView.graph.title`:`gitView.history.title`)}),(0,$.jsx)(pn,{children:t(`gitView.history.dialogDescription`)})]}),(0,$.jsx)(`div`,{className:`flex-1 min-h-0`,children:(0,$.jsx)(Bl,{mode:ut===`graph`?`graph`:`history`,log:ut===`graph`?St??w:w,isLogLoading:ut===`graph`&&wt||E,logMaxCount:ut===`graph`?Et:Ae,onLogMaxCountChange:ut===`graph`?Dn:En,expandedCommitHashes:Ye,onToggleCommit:Mt,commitFilesMap:J,loadingCommitHashes:$e,onCopyHash:jt,directory:r??void 0,showHeader:!1,contentMaxHeightClassName:`h-full max-h-none`,branchDivider:ut===`graph`?null:rt,onConflict:ut===`graph`?kn:void 0,onActionSuccess:ut===`graph`?On:void 0})})]})}),(0,$.jsx)(yl,{open:Ee,onOpenChange:De,directory:r,hasUncommittedChanges:(v?.files?.length??0)>0,hasStagedChanges:Rt.length>0,uncommittedFileCount:v?.files?.length??0,onChanged:async e=>{r&&e?.affectsIndex&&L(r),await Pt(!1),await It()}}),(0,$.jsx)(mn,{open:xe,onOpenChange:Se,children:(0,$.jsxs)(dn,{className:`max-w-md p-0 overflow-hidden`,children:[(0,$.jsx)(ln,{className:`px-4 pt-4`,children:(0,$.jsx)(fn,{children:t(`gitView.gitmoji.title`)})}),(0,$.jsxs)(Mi,{className:`h-[420px]`,children:[(0,$.jsx)(Pi,{placeholder:t(`gitView.gitmoji.searchPlaceholder`),value:st,onValueChange:ct}),(0,$.jsxs)(Ii,{children:[(0,$.jsx)(Ji,{children:t(`gitView.gitmoji.empty`)}),(0,$.jsx)(Ri,{children:(pe.length===0?[]:pe.filter(e=>{let t=st.trim().toLowerCase();return!t||e.emoji.includes(t)||e.code.toLowerCase().includes(t)||e.description.toLowerCase().includes(t)})).map(e=>(0,$.jsxs)(Ni,{onSelect:()=>bn(e.emoji,e.code),children:[(0,$.jsx)(`span`,{className:`text-lg`,children:e.emoji}),(0,$.jsx)(`span`,{className:`typography-ui-label text-foreground`,children:e.code}),(0,$.jsx)(`span`,{className:`typography-meta text-muted-foreground`,children:e.description})]},e.code))})]})]})]})}),r&&(0,$.jsx)(Gl,{open:ht,onOpenChange:_t,conflictFiles:vt,directory:r,operation:bt,onAbort:xn,onClearState:At})]})},fu=e=>e.slice().sort((e,t)=>e.type===t.type?e.name.localeCompare(t.name):e.type===`directory`?-1:1),pu=e=>{if(!e)return``;let t=e.replace(/\\/g,`/`),n=t.startsWith(`//`),r=t.replace(/\/+$/g,``);return r=r.replace(/\/+/g,`/`),n&&!r.startsWith(`//`)&&(r=`/${r}`),r===``?t.startsWith(`/`)?`/`:``:r},mu=(e,t)=>{let n=pu(t),r=pu(e).replace(/\/+$/,``);return n===r?`.`:!r||!n.startsWith(`${r}/`)?n:n.slice(r.length+1)},hu=e=>e.startsWith(`/`)||e.startsWith(`//`)||/^[A-Za-z]:\//.test(e),gu=new Set([`node_modules`]),_u=e=>gu.has(e),vu=e=>{let t=pu(e);return t===`node_modules`||t.endsWith(`/node_modules`)||t.includes(`/node_modules/`)},yu=8,bu=new Map,xu=e=>{let t=bu.get(e);return t?(t.touchedAt=Date.now(),bu.delete(e),bu.set(e,t),t):null},Su=e=>{let t=bu.get(e);if(t)return t.touchedAt=Date.now(),t;if(bu.size>=yu){let e=bu.keys().next().value;e!==void 0&&bu.delete(e)}let n={childrenByDir:{},loadErrorsByDir:{},loadedDirs:new Set,touchedAt:Date.now()};return bu.set(e,n),n},Cu=e=>{bu.delete(e)},wu=(e,t)=>(0,$.jsx)(Wi,{filePath:e,extension:t,className:`size-3.5`}),Tu=e=>{let t=(0,Ts.c)(3),{status:n}=e,r;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r={open:`var(--status-info)`,modified:`var(--status-warning)`,"git-modified":`var(--status-warning)`,"git-added":`var(--status-success)`,"git-deleted":`var(--status-error)`},t[0]=r):r=t[0];let i=r[n],a;return t[1]===i?a=t[2]:(a=(0,$.jsx)(`span`,{className:`h-2 w-2 rounded-full`,style:{backgroundColor:i}}),t[1]=i,t[2]=a),a},Eu=Q.memo(e=>{let t=(0,Ts.c)(73),{node:n,root:r,isExpanded:i,isActive:a,status:o,badge:s,permissions:c,downloadFile:l,onSelect:u,onToggle:d,onRevealPath:f,onOpenDialog:p}=e,{t:m}=Fe(),h=n.type===`directory`,{canRename:g,canCreateFile:_,canCreateFolder:v,canDelete:y,canReveal:b}=c,[x,S]=Q.useState(!1),[C,w]=Q.useState(!1),T;t[0]!==_||t[1]!==v||t[2]!==y||t[3]!==g||t[4]!==b?(T=e=>{!g&&!_&&!v&&!y&&!b||(e?.preventDefault(),w(!0))},t[0]=_,t[1]=v,t[2]=y,t[3]=g,t[4]=b,t[5]=T):T=t[5];let E=T,D;t[6]!==h||t[7]!==n||t[8]!==u||t[9]!==d?(D=()=>{h?d(n.path):u(n)},t[6]=h,t[7]=n,t[8]=u,t[9]=d,t[10]=D):D=t[10];let O=D,k;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(k=e=>{e.stopPropagation(),w(!1),S(!0)},t[11]=k):k=t[11];let A=k,j;t[12]!==_||t[13]!==v||t[14]!==y||t[15]!==g||t[16]!==b||t[17]!==l||t[18]!==h||t[19]!==n||t[20]!==p||t[21]!==f||t[22]!==m?(j=e=>{let{Item:t,Separator:r}=e;return(0,$.jsxs)($.Fragment,{children:[g&&(0,$.jsxs)(t,{onClick:e=>{e.stopPropagation(),p(`rename`,n)},children:[(0,$.jsx)(Z,{name:`edit`,className:`mr-2 h-4 w-4`}),` `,m(`sidebarFilesTree.menu.rename`)]}),(0,$.jsxs)(t,{onClick:e=>{e.stopPropagation(),Le(n.path).then(e=>{e.ok||Y.error(m(`sidebarFilesTree.toast.copyFailed`))})},children:[(0,$.jsx)(Z,{name:`file-copy`,className:`mr-2 h-4 w-4`}),` `,m(`sidebarFilesTree.menu.copyPath`)]}),!h&&l&&(0,$.jsxs)(t,{onClick:e=>{e.stopPropagation(),l(n.path).catch(e=>{console.error(`Download failed:`,e),Y.error(m(`sidebarFilesTree.toast.operationFailed`))})},children:[(0,$.jsx)(Z,{name:`download`,className:`mr-2 h-4 w-4`}),` `,m(`sidebarFilesTree.menu.save`)]}),b&&(0,$.jsxs)(t,{onClick:e=>{e.stopPropagation(),f(n.path)},children:[(0,$.jsx)(Z,{name:`folder-received`,className:`mr-2 h-4 w-4`}),` `,m(hn())]}),h&&(_||v)&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(r,{}),_&&(0,$.jsxs)(t,{onClick:e=>{e.stopPropagation(),p(`createFile`,n)},children:[(0,$.jsx)(Z,{name:`file-add`,className:`mr-2 h-4 w-4`}),` `,m(`sidebarFilesTree.menu.newFile`)]}),v&&(0,$.jsxs)(t,{onClick:e=>{e.stopPropagation(),p(`createFolder`,n)},children:[(0,$.jsx)(Z,{name:`folder-add`,className:`mr-2 h-4 w-4`}),` `,m(`sidebarFilesTree.menu.newFolder`)]})]}),y&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(r,{}),(0,$.jsxs)(t,{onClick:e=>{e.stopPropagation(),p(`delete`,n)},className:`text-destructive focus:text-destructive`,children:[(0,$.jsx)(Z,{name:`delete-bin`,className:`mr-2 h-4 w-4`}),` `,m(`sidebarFilesTree.menu.delete`)]})]})]})},t[12]=_,t[13]=v,t[14]=y,t[15]=g,t[16]=b,t[17]=l,t[18]=h,t[19]=n,t[20]=p,t[21]=f,t[22]=m,t[23]=j):j=t[23];let M=j,N;t[24]!==n.path||t[25]!==r?(N=e=>{let t=mu(r,n.path);!t||t===`.`||(e.dataTransfer.setData(`application/x-openchamber-file-path`,t),e.dataTransfer.effectAllowed=`copy`)},t[24]=n.path,t[25]=r,t[26]=N):N=t[26];let P=N,F;t[27]===E?F=t[28]:(F=(0,$.jsx)(`div`,{className:`group relative flex items-center`,onContextMenu:E}),t[27]=E,t[28]=F);let I=a?`bg-interactive-selection/70`:`hover:bg-interactive-hover/40`,L;t[29]===I?L=t[30]:(L=X(`flex w-full items-center gap-1.5 rounded-md px-2 py-1 text-left text-foreground transition-colors pr-8 select-none`,I,`cursor-grab active:cursor-grabbing`),t[29]=I,t[30]=L);let R;t[31]!==h||t[32]!==i||t[33]!==n.extension||t[34]!==n.path?(R=h?i?(0,$.jsx)(Z,{name:`folder-open-fill`,className:`size-3.5 flex-shrink-0 text-muted-foreground`}):(0,$.jsx)(Z,{name:`folder-3-fill`,className:`size-3.5 flex-shrink-0 text-muted-foreground`}):wu(n.path,n.extension),t[31]=h,t[32]=i,t[33]=n.extension,t[34]=n.path,t[35]=R):R=t[35];let z;t[36]!==n.name||t[37]!==n.path?(z=(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate typography-code`,title:n.path,children:n.name}),t[36]=n.name,t[37]=n.path,t[38]=z):z=t[38];let B;t[39]!==h||t[40]!==o?(B=!h&&o&&(0,$.jsx)(Tu,{status:o}),t[39]=h,t[40]=o,t[41]=B):B=t[41];let V;t[42]!==s||t[43]!==h?(V=h&&s&&(0,$.jsxs)(`span`,{className:`text-xs flex items-center gap-1 ml-auto mr-1`,children:[s.modified>0&&(0,$.jsxs)(`span`,{className:`text-[var(--status-warning)]`,children:[`M`,s.modified]}),s.added>0&&(0,$.jsxs)(`span`,{className:`text-[var(--status-success)]`,children:[`+`,s.added]})]}),t[42]=s,t[43]=h,t[44]=V):V=t[44];let H;t[45]!==E||t[46]!==P||t[47]!==O||t[48]!==z||t[49]!==B||t[50]!==V||t[51]!==L||t[52]!==R?(H=(0,$.jsxs)(`button`,{type:`button`,onClick:O,onContextMenu:E,draggable:!0,onDragStart:P,className:L,children:[R,z,B,V]}),t[45]=E,t[46]=P,t[47]=O,t[48]=z,t[49]=B,t[50]=V,t[51]=L,t[52]=R,t[53]=H):H=t[53];let U;t[54]!==_||t[55]!==v||t[56]!==y||t[57]!==g||t[58]!==b||t[59]!==x||t[60]!==M||t[61]!==m?(U=(g||_||v||y||b)&&(0,$.jsx)(`div`,{className:`absolute right-1 top-1/2 -translate-y-1/2 opacity-0 focus-within:opacity-100 group-hover:opacity-100`,children:(0,$.jsxs)(Si,{open:x,onOpenChange:S,children:[(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`span`,{className:`inline-flex`,children:(0,$.jsx)(Oi,{asChild:!0,children:(0,$.jsx)(Sn,{variant:`ghost`,size:`icon`,className:`h-6 w-6`,onClick:A,title:m(`sidebarFilesTree.actions.fileMenuTitle`),"aria-label":m(`sidebarFilesTree.actions.fileMenuTitle`),children:(0,$.jsx)(Z,{name:`more-2-fill`,className:`h-4 w-4`})})})})}),(0,$.jsx)(Zr,{side:`bottom`,sideOffset:6,children:m(`sidebarFilesTree.actions.fileMenuTitle`)})]}),(0,$.jsx)(Di,{align:`end`,side:`bottom`,onCloseAutoFocus:()=>S(!1),children:M({Item:ki,Separator:li})})]})}),t[54]=_,t[55]=v,t[56]=y,t[57]=g,t[58]=b,t[59]=x,t[60]=M,t[61]=m,t[62]=U):U=t[62];let W;t[63]!==H||t[64]!==U||t[65]!==F?(W=(0,$.jsxs)(ss,{render:F,children:[H,U]}),t[63]=H,t[64]=U,t[65]=F,t[66]=W):W=t[66];let ee;t[67]===M?ee=t[68]:(ee=(0,$.jsx)(cs,{className:`min-w-[180px]`,children:M({Item:ls,Separator:os})}),t[67]=M,t[68]=ee);let G;return t[69]!==C||t[70]!==W||t[71]!==ee?(G=(0,$.jsxs)(as,{open:C,onOpenChange:w,children:[W,ee]}),t[69]=C,t[70]=W,t[71]=ee,t[72]=G):G=t[72],G},(e,t)=>e.node===t.node&&e.root===t.root&&e.isExpanded===t.isExpanded&&e.isActive===t.isActive&&e.status===t.status&&e.badge===t.badge&&e.permissions===t.permissions&&e.downloadFile===t.downloadFile&&e.onSelect===t.onSelect&&e.onToggle===t.onToggle&&e.onRevealPath===t.onRevealPath&&e.onOpenDialog===t.onOpenDialog),Du=()=>{let{t:e}=Fe(),{files:t}=Xi(),n=Ea()??``,r=pu(n.trim()),i=M(),a=_(),o=be(e=>e.searchFiles),s=u(e=>e.openContextFile),c=ca(n),[l,d]=Q.useState(``),f=Qi(l,200),p=Q.useRef(null),[m,h]=Q.useState([]),[g,v]=Q.useState(!1),[y,b]=Q.useState({}),[x,S]=Q.useState({}),C=Q.useRef(new Set),w=Q.useRef(new Set),T=Q.useRef(null),E=Q.useRef(!1);Q.useEffect(()=>{if(!r){b({}),S({}),C.current=new Set;return}let e=xu(r);e?(b({...e.childrenByDir}),S({...e.loadErrorsByDir}),C.current=new Set(e.loadedDirs)):(b({}),S({}),C.current=new Set)},[r]),Q.useEffect(()=>{if(!r)return;let e=Su(r);e.childrenByDir=y},[r,y]),Q.useEffect(()=>{if(!r)return;let e=Su(r);e.loadErrorsByDir=x},[r,x]),Q.useEffect(()=>{if(!r)return;let e=Su(r);e.loadedDirs=new Set(C.current)},[r,y,x]),Q.useEffect(()=>()=>{if(!r)return;let e=bu.get(r);e&&e.loadedDirs.size===0&&Object.keys(e.childrenByDir).length===0&&Cu(r)},[r]);let D=Q.useMemo(()=>[],[]),O=Q.useMemo(()=>[],[]),k=$i(e=>r?e.byRoot[r]?.expandedPaths??D:D),A=$i(e=>r?e.byRoot[r]?.selectedPath??null:null),j=$i(e=>e.setSelectedPath),N=$i(e=>e.addOpenPath),P=$i(e=>e.removeOpenPathsByPrefix),F=$i(e=>e.removeExpandedPathsByPrefix),I=$i(e=>e.toggleExpandedPath),L=$i(e=>e.expandPaths),R=u(e=>r?e.contextPanelByDirectory[r]?.tabs??O:O),z=Q.useMemo(()=>new Set(R.map(e=>e.mode===`file`?e.targetPath:null).filter(e=>typeof e==`string`&&e.length>0).map(e=>pu(e))),[R]),[B,V]=Q.useState(null),[H,U]=Q.useState(null),[W,ee]=Q.useState(``),[G,te]=Q.useState(!1),K=!!t.writeFile,ne=!!t.createDirectory,re=!!t.rename,ie=!!t.delete,ae=!!t.revealPath,oe=Q.useMemo(()=>({canRename:re,canCreateFile:K,canCreateFolder:ne,canDelete:ie,canReveal:ae}),[re,K,ne,ie,ae]),se=Q.useCallback(n=>{t.revealPath&&t.revealPath(n).catch(()=>{Y.error(e(`sidebarFilesTree.toast.revealFailed`))})},[t,e]),q=Q.useCallback((e,t)=>{V(e),U(t),ee(e===`rename`&&t.name||``),te(!1)},[]),ce=Q.useCallback((e,t)=>fu(t.filter(e=>e&&typeof e.name==`string`&&e.name.length>0).filter(e=>i||!e.name.startsWith(`.`)).filter(e=>a||!_u(e.name)).map(t=>{let n=t.name,r=pu(t.path||``),i=r?hu(r)?r:pu(`${e}/${r}`):pu(`${e}/${n}`),a=t.isDirectory?`directory`:`file`;return{name:n,path:i,type:a,extension:a===`file`&&n.includes(`.`)?n.split(`.`).pop()?.toLowerCase():void 0}})),[a,i]),le=Q.useCallback(async(e,n)=>{let r=pu(e.trim());if(!r||C.current.has(r)||w.current.has(r))return;w.current=new Set(w.current),w.current.add(r);let i=t.listDirectory?t.listDirectory(r).then(e=>e.entries.map(e=>({name:e.name,path:e.path,isDirectory:e.isDirectory}))):xe.listLocalDirectory(r).then(e=>e.map(e=>({name:e.name,path:e.path,isDirectory:e.isDirectory})));try{let e=await i;if(n?.())return;let t=ce(r,e);C.current=new Set(C.current),C.current.add(r),S(e=>{if(!e[r])return e;let t={...e};return delete t[r],t}),b(e=>({...e,[r]:t}))}catch(e){if(n?.())return;let t=e instanceof Error?e.message:String(e??``);console.error(`Failed to load sidebar directory:`,e),S(e=>({...e,[r]:t}))}finally{w.current=new Set(w.current),w.current.delete(r)}},[t,ce]),ue=Q.useCallback(async()=>{if(!r)return;T.current?.abort();let e=new AbortController;T.current=e;try{let t=($i.getState().byRoot[r]?.expandedPaths??[]).map(e=>pu(e)).filter(e=>!!e&&e!==r&&e.startsWith(`${r}/`)),n=[r,...t];C.current=new Set(C.current);for(let e of n)C.current.delete(e);S(e=>{if(Object.keys(e).length===0)return e;let t={...e},r=!1;for(let e of n)e in t&&(delete t[e],r=!0);return r?t:e});let i=()=>e.signal.aborted;await le(r,i);for(let n=0;n<t.length&&!e.signal.aborted;n+=3){let e=t.slice(n,n+3);await Promise.all(e.map(e=>le(e,i)))}}catch(t){if(e.signal.aborted)return;console.error(`Failed to refresh sidebar tree:`,t)}finally{T.current===e&&(T.current=null)}},[le,r]),de=Q.useCallback(async e=>{if(!e){await ue();return}let t=pu(e);C.current=new Set(C.current),C.current.delete(t),w.current=new Set(w.current),w.current.delete(t),await le(t)},[le,ue]);Q.useEffect(()=>{r&&(T.current?.abort(),E.current=!1,C.current=new Set,w.current=new Set,S({}),b(e=>Object.keys(e).length===0?e:{}),le(r))},[le,r,i,a]),Q.useEffect(()=>{if(!r||k.length===0)return;let e=k.map(e=>pu(e)).filter(e=>!!e&&e!==r&&e.startsWith(`${r}/`)&&!C.current.has(e)&&!w.current.has(e)).sort((e,t)=>e.split(`/`).length-t.split(`/`).length);if(e.length===0)return;let t=!1,n=()=>t;return(async()=>{for(let r=0;r<e.length&&!t;r+=3){let t=e.slice(r,r+3);await Promise.all(t.map(e=>le(e,n)))}})(),()=>{t=!0}},[k,le,r]),Q.useEffect(()=>{if(!n){h([]),v(!1);return}let e=f.trim();if(!e){h([]),v(!1);return}let t=!1;return v(!0),o(n,e,150,{includeHidden:i,respectGitignore:!a,type:`file`}).then(e=>{if(t)return;let n=e.filter(e=>a||!vu(e.path)).map(e=>({name:e.name,path:pu(e.path),type:`file`,extension:e.extension,relativePath:e.relativePath}));h(n)}).catch(()=>{t||h([])}).finally(()=>{t||v(!1)}),()=>{t=!0}},[n,f,o,i,a]);let fe=Q.useMemo(()=>{let e=new Map;if(!c?.files)return e;for(let t of c.files)t.index===`A`||t.working_dir===`?`?e.set(t.path,`git-added`):t.index===`D`?e.set(t.path,`git-deleted`):(t.index===`M`||t.working_dir===`M`)&&e.set(t.path,`git-modified`);return e},[c]),pe=Q.useMemo(()=>{let e=new Map;if(!c?.files||!r)return e;for(let t of c.files){let n=t.index===`M`||t.working_dir===`M`,i=t.index===`A`||t.working_dir===`?`;if(!n&&!i)continue;let a=t.path.split(`/`);if(a.length<=1)continue;let o=r;for(let t=0;t<a.length-1;t++){o=`${o}/${a[t]}`;let r=e.get(o);r||(r={modified:0,added:0},e.set(o,r)),n&&r.modified++,i&&r.added++}}return e},[c,r]),me=Q.useCallback(e=>{if(z.has(e))return`open`;if(fe.size===0)return null;let t=e.startsWith(r+`/`)?e.slice(r.length+1):e;return fe.get(t)??null},[z,fe,r]),he=Q.useCallback(e=>{if(pe.size===0)return null;let t=pe.get(e);return t&&t.modified+t.added>0?t:null},[pe]),ge=Q.useCallback(async e=>{if(!r)return;let n=await uo(t,e.path);if(!n.ok){Y.error(lo(n.reason));return}j(r,e.path),N(r,e.path),s(r,e.path)},[N,t,s,r,j]),_e=Q.useCallback(async e=>{let t=pu(e);r&&(I(r,t),C.current.has(t)||await le(t))},[le,r,I]),ve=Q.useMemo(()=>r?_o(r,y):[],[y,r]),ye=Q.useMemo(()=>new Set(k.map(e=>pu(e))),[k]),Se=mo(k),Ce=Q.useCallback(()=>{if(r){if(Se){E.current=!1,F(r,r);return}E.current=!0,L(r,ve)}},[Se,ve,L,F,r]);Q.useEffect(()=>{if(!r||!E.current)return;let e=yo(ve,k);if(e.length>0){L(r,e);return}let t=new Set([...C.current,...Object.keys(x)]);co(ve,k,t)&&(E.current=!1)},[ve,L,k,x,r]);let we=Q.useCallback(async n=>{if(n?.preventDefault(),!H||!B)return;te(!0);let i=()=>te(!1),a=()=>V(null);if(B===`createFile`){if(!W.trim()){Y.error(e(`sidebarFilesTree.toast.filenameRequired`)),i();return}if(!t.writeFile){Y.error(e(`sidebarFilesTree.toast.writeNotSupported`)),i();return}let n=H.path,r=pu(`${n?`${n}/`:``}${W.trim()}`);await t.writeFile(r,``).then(async t=>{t.success&&(Y.success(e(`sidebarFilesTree.toast.fileCreated`)),await de(n)),a()}).catch(()=>Y.error(e(`sidebarFilesTree.toast.operationFailed`))).finally(i);return}if(B===`createFolder`){if(!W.trim()){Y.error(e(`sidebarFilesTree.toast.folderNameRequired`)),i();return}let n=H.path,r=pu(`${n?`${n}/`:``}${W.trim()}`);await t.createDirectory(r).then(async t=>{t.success&&(Y.success(e(`sidebarFilesTree.toast.folderCreated`)),await de(n)),a()}).catch(()=>Y.error(e(`sidebarFilesTree.toast.operationFailed`))).finally(i);return}if(B===`rename`){if(!W.trim()){Y.error(e(`sidebarFilesTree.toast.nameRequired`)),i();return}if(!t.rename){Y.error(e(`sidebarFilesTree.toast.renameNotSupported`)),i();return}let n=H.path,o=n.split(`/`).slice(0,-1).join(`/`),s=pu(`${o?`${o}/`:``}${W.trim()}`);await t.rename(n,s).then(async t=>{t.success&&(Y.success(e(`sidebarFilesTree.toast.renamedSuccessfully`)),await de(o),r&&P(r,n),(A===n||A&&A.startsWith(`${n}/`))&&j(r,null)),a()}).catch(()=>Y.error(e(`sidebarFilesTree.toast.operationFailed`))).finally(i);return}if(B===`delete`){if(!t.delete){Y.error(e(`sidebarFilesTree.toast.deleteNotSupported`)),i();return}let n=H.path,o=n.split(`/`).slice(0,-1).join(`/`);await t.delete(n).then(async t=>{t.success&&(Y.success(e(`sidebarFilesTree.toast.deletedSuccessfully`)),await de(o),r&&P(r,n),(A===n||A&&A.startsWith(n+`/`))&&j(r,null)),a()}).catch(()=>Y.error(e(`sidebarFilesTree.toast.operationFailed`))).finally(i);return}i()},[B,H,W,t,de,P,r,A,j,e]);function Te(n,i){return(y[n]??[]).map(n=>{let a=n.type===`directory`,o=a&&ye.has(pu(n.path)),s=A===n.path;return(0,$.jsxs)(`li`,{className:`relative`,children:[i>0&&(0,$.jsx)(`span`,{className:`absolute top-3 left-[-12px] h-px w-3 bg-border/40`}),(0,$.jsx)(Eu,{node:n,root:r,isExpanded:o,isActive:s,status:a?void 0:me(n.path),badge:a?he(n.path):void 0,permissions:oe,downloadFile:t.downloadFile,onSelect:ge,onToggle:_e,onRevealPath:se,onOpenDialog:q}),a&&o&&(0,$.jsxs)(`ul`,{className:`relative ml-3 flex flex-col border-l border-border/40 pl-3`,children:[x[n.path]?(0,$.jsxs)(`li`,{className:`flex items-center gap-2 px-2 py-1 typography-code text-muted-foreground`,children:[(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-[var(--status-error)]`,title:x[n.path],children:x[n.path]}),(0,$.jsxs)(Sn,{variant:`ghost`,size:`xs`,className:`h-6 gap-1`,onClick:()=>void de(n.path),children:[(0,$.jsx)(Z,{name:`refresh`,className:`h-3.5 w-3.5`}),e(`sidebarFilesTree.actions.refreshTitle`)]})]}):null,Te(n.path,i+1)]})]},n.path)})}let Ee=!!(r&&y[r]),De=r?x[r]:null,Oe=e(Se?`sidebarFilesTree.actions.collapseAllTitle`:`sidebarFilesTree.actions.expandAllTitle`);return(0,$.jsxs)(`section`,{className:`flex h-full min-h-0 flex-col overflow-hidden`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-1 border-b border-border/40 px-3 py-2`,children:[(0,$.jsxs)(`div`,{className:`relative min-w-0 flex-1`,children:[(0,$.jsx)(Z,{name:`search`,className:`pointer-events-none absolute left-2 top-2 h-4 w-4 text-muted-foreground`}),(0,$.jsx)(Yr,{ref:p,value:l,onChange:e=>d(e.target.value),placeholder:e(`sidebarFilesTree.search.placeholder`),className:`h-8 pl-8 pr-8 typography-meta`}),l.trim().length>0?(0,$.jsx)(`button`,{type:`button`,"aria-label":e(`sidebarFilesTree.search.clearAria`),className:`absolute right-2 top-2 inline-flex h-4 w-4 items-center justify-center text-muted-foreground hover:text-foreground`,onClick:()=>{d(``),p.current?.focus()},children:(0,$.jsx)(Z,{name:`close`,className:`h-4 w-4`})}):null]}),(0,$.jsxs)(`div`,{className:`flex flex-shrink-0 items-center gap-0.5`,children:[K&&(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`span`,{className:`inline-flex flex-shrink-0`,children:(0,$.jsx)(Sn,{variant:`ghost`,size:`xs`,onClick:()=>q(`createFile`,{path:n,type:`directory`}),className:`w-6 flex-shrink-0 p-0`,title:e(`sidebarFilesTree.actions.newFileTitle`),"aria-label":e(`sidebarFilesTree.actions.newFileTitle`),children:(0,$.jsx)(Z,{name:`file-add`,className:`size-3.5`})})})}),(0,$.jsx)(Zr,{side:`bottom`,sideOffset:6,children:e(`sidebarFilesTree.actions.newFileTitle`)})]}),ne&&(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`span`,{className:`inline-flex flex-shrink-0`,children:(0,$.jsx)(Sn,{variant:`ghost`,size:`xs`,onClick:()=>q(`createFolder`,{path:n,type:`directory`}),className:`w-6 flex-shrink-0 p-0`,title:e(`sidebarFilesTree.actions.newFolderTitle`),"aria-label":e(`sidebarFilesTree.actions.newFolderTitle`),children:(0,$.jsx)(Z,{name:`folder-add`,className:`size-3.5`})})})}),(0,$.jsx)(Zr,{side:`bottom`,sideOffset:6,children:e(`sidebarFilesTree.actions.newFolderTitle`)})]}),(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`span`,{className:`inline-flex flex-shrink-0`,children:(0,$.jsx)(Sn,{variant:`ghost`,size:`xs`,onClick:()=>void ue(),className:`w-6 flex-shrink-0 p-0`,title:e(`sidebarFilesTree.actions.refreshTitle`),"aria-label":e(`sidebarFilesTree.actions.refreshTitle`),children:(0,$.jsx)(Z,{name:`refresh`,className:`size-3.5`})})})}),(0,$.jsx)(Zr,{side:`bottom`,sideOffset:6,children:e(`sidebarFilesTree.actions.refreshTitle`)})]}),(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(Sn,{variant:`ghost`,size:`xs`,onClick:Ce,disabled:ve.length===0&&k.length===0,className:`w-6 flex-shrink-0 p-0`,title:Oe,"aria-label":Oe,children:(0,$.jsx)(Z,{name:Se?`contract-up-down`:`expand-up-down`,className:`size-3.5`})})}),(0,$.jsx)(Zr,{side:`bottom`,sideOffset:6,children:Oe})]})]})]}),(0,$.jsx)(Nr,{outerClassName:`flex-1 min-h-0`,className:`p-2`,children:(0,$.jsx)(`ul`,{className:`flex flex-col`,children:g?(0,$.jsxs)(`li`,{className:`flex items-center gap-1.5 px-2 py-1 typography-code text-muted-foreground`,children:[(0,$.jsx)(Z,{name:`loader-4`,className:`h-4 w-4 animate-spin`}),e(`sidebarFilesTree.state.searching`)]}):m.length>0?m.map(e=>{let t=A===e.path;return(0,$.jsx)(`li`,{children:(0,$.jsxs)(`button`,{type:`button`,onClick:()=>ge(e),draggable:!0,onDragStart:t=>{let n=e.relativePath||mu(r??``,e.path);!n||n===`.`||(t.dataTransfer.setData(`application/x-openchamber-file-path`,n),t.dataTransfer.effectAllowed=`copy`)},className:X(`flex w-full items-center gap-1.5 rounded-md px-2 py-1 text-left text-foreground transition-colors cursor-grab active:cursor-grabbing`,t?`bg-interactive-selection/70`:`hover:bg-interactive-hover/40`),title:e.path,children:[wu(e.path,e.extension),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate typography-code`,style:{direction:`rtl`,textAlign:`left`},children:e.relativePath??e.path})]})},e.path)}):De?(0,$.jsxs)(`li`,{className:`flex flex-col gap-2 px-2 py-1 typography-code text-muted-foreground`,children:[(0,$.jsx)(`span`,{children:De}),(0,$.jsxs)(Sn,{variant:`outline`,size:`xs`,className:`w-fit gap-1.5`,onClick:()=>void ue(),children:[(0,$.jsx)(Z,{name:`refresh`,className:`h-3.5 w-3.5`}),e(`sidebarFilesTree.actions.refreshTitle`)]})]}):Ee&&r?Te(r,0):(0,$.jsx)(`li`,{className:`px-2 py-1 typography-code text-muted-foreground`,children:e(`sidebarFilesTree.state.loading`)})})}),(0,$.jsx)(mn,{open:!!B,onOpenChange:e=>!e&&V(null),children:(0,$.jsxs)(dn,{children:[(0,$.jsxs)(ln,{children:[(0,$.jsxs)(fn,{children:[B===`createFile`&&e(`sidebarFilesTree.dialog.createFile.title`),B===`createFolder`&&e(`sidebarFilesTree.dialog.createFolder.title`),B===`rename`&&e(`sidebarFilesTree.dialog.rename.title`),B===`delete`&&e(`sidebarFilesTree.dialog.delete.title`)]}),(0,$.jsxs)(pn,{children:[B===`createFile`&&e(`sidebarFilesTree.dialog.createFile.description`,{path:H?.path??e(`sidebarFilesTree.dialog.rootFallback`)}),B===`createFolder`&&e(`sidebarFilesTree.dialog.createFolder.description`,{path:H?.path??e(`sidebarFilesTree.dialog.rootFallback`)}),B===`rename`&&e(`sidebarFilesTree.dialog.rename.description`,{name:H?.name??``}),B===`delete`&&e(`sidebarFilesTree.dialog.delete.description`,{name:H?.name??``})]})]}),B!==`delete`&&(0,$.jsx)(`div`,{className:`py-4`,children:(0,$.jsx)(Yr,{value:W,onChange:e=>ee(e.target.value),placeholder:e(B===`rename`?`sidebarFilesTree.dialog.rename.placeholder`:`sidebarFilesTree.dialog.namePlaceholder`),onKeyDown:e=>{e.key===`Enter`&&we()},autoFocus:!0})}),(0,$.jsxs)(un,{children:[(0,$.jsx)(Sn,{variant:`outline`,onClick:()=>V(null),disabled:G,children:e(`sidebarFilesTree.dialog.cancel`)}),(0,$.jsx)(Sn,{variant:B===`delete`?`destructive`:`default`,onClick:()=>void we(),disabled:G||B!==`delete`&&!W.trim(),children:G?(0,$.jsx)(Z,{name:`loader-4`,className:`size-4 animate-spin`}):e(B===`delete`?`sidebarFilesTree.dialog.delete.confirm`:`sidebarFilesTree.dialog.confirm`)})]})]})})]})},Ou=e=>e===`git`||e===`files`,ku=`files`,Au=()=>!(typeof document<`u`&&document.hidden||typeof navigator<`u`&&!navigator.onLine);function ju(e,t,n,r){let i=(0,Ts.c)(6),{git:a}=Xi(),o=ta(Mu),s=!!(e&&a&&t&&n===`git`&&r!==`git`),c,l;i[0]!==e||i[1]!==o||i[2]!==a||i[3]!==s?(c=()=>{if(!s||!e||!a)return;o(e,a);let t=window.setInterval(()=>{Au()&&o(e,a)},1e4);return()=>window.clearInterval(t)},l=[s,e,a,o],i[0]=e,i[1]=o,i[2]=a,i[3]=s,i[4]=c,i[5]=l):(c=i[4],l=i[5]),Q.useEffect(c,l)}function Mu(e){return e.ensureStatus}var Nu=()=>{let e=(0,Ts.c)(45),{t}=Fe(),n=u(Pu),r=u(Fu),i=u(Iu),a=u(Lu);ju(Ea(),i,n,a);let o=a===`git`?`git`:null,s,c;e[0]!==o||e[1]!==n||e[2]!==r?(s=()=>{o&&n===o&&r(ku)},c=[o,n,r],e[0]=o,e[1]=n,e[2]=r,e[3]=s,e[4]=c):(s=e[3],c=e[4]),Q.useEffect(s,c);let l;e[5]===t?l=e[6]:(l=t(`layout.rightSidebar.git`),e[5]=t,e[6]=l);let d;e[7]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,$.jsx)(Z,{name:`git-branch`,className:`h-3.5 w-3.5`}),e[7]=d):d=e[7];let f;e[8]===l?f=e[9]:(f={id:`git`,label:l,icon:d},e[8]=l,e[9]=f);let p;e[10]===t?p=e[11]:(p=t(`layout.rightSidebar.files`),e[10]=t,e[11]=p);let m;e[12]===Symbol.for(`react.memo_cache_sentinel`)?(m=(0,$.jsx)(Z,{name:`folder-3`,className:`h-3.5 w-3.5`}),e[12]=m):m=e[12];let h;e[13]===p?h=e[14]:(h={id:`files`,label:p,icon:m},e[13]=p,e[14]=h);let g;e[15]!==f||e[16]!==h?(g=[f,h],e[15]=f,e[16]=h,e[17]=g):g=e[17];let _=g,v;e[18]!==o||e[19]!==_?(v=o?_.filter(e=>e.id!==o):_,e[18]=o,e[19]=_,e[20]=v):v=e[20];let y=v,b=i&&n===`git`&&o!==`git`,x;e[21]===r?x=e[22]:(x=e=>{Ou(e)&&r(e)},e[21]=r,e[22]=x);let S=x,C;e[23]!==S||e[24]!==n||e[25]!==y?(C=(0,$.jsx)(`div`,{className:`h-9 bg-background pt-1 px-2`,children:(0,$.jsx)(Oa,{items:y,activeId:n,onSelect:S,layoutMode:`fit`,variant:`active-pill`,activePillLowercase:!1,className:`h-full`})}),e[23]=S,e[24]=n,e[25]=y,e[26]=C):C=e[26];let w=n!==`git`&&`hidden`,T;e[27]===w?T=e[28]:(T=X(`h-full`,w),e[27]=w,e[28]=T);let E;e[29]===b?E=e[30]:(E=(0,$.jsx)(du,{isActive:b}),e[29]=b,e[30]=E);let D;e[31]!==T||e[32]!==E?(D=(0,$.jsx)(`div`,{className:T,children:E}),e[31]=T,e[32]=E,e[33]=D):D=e[33];let O=n!==`files`&&`hidden`,k;e[34]===O?k=e[35]:(k=X(`h-full`,O),e[34]=O,e[35]=k);let A;e[36]===Symbol.for(`react.memo_cache_sentinel`)?(A=(0,$.jsx)(Du,{}),e[36]=A):A=e[36];let j;e[37]===k?j=e[38]:(j=(0,$.jsx)(`div`,{className:k,children:A}),e[37]=k,e[38]=j);let M;e[39]!==D||e[40]!==j?(M=(0,$.jsxs)(`div`,{className:`min-h-0 flex-1 overflow-hidden`,children:[D,j]}),e[39]=D,e[40]=j,e[41]=M):M=e[41];let N;return e[42]!==C||e[43]!==M?(N=(0,$.jsxs)(`div`,{className:`flex h-full min-h-0 flex-col overflow-hidden bg-background`,children:[C,M]}),e[42]=C,e[43]=M,e[44]=N):N=e[44],N};function Pu(e){return e.rightSidebarTab}function Fu(e){return e.setRightSidebarTab}function Iu(e){return e.isRightSidebarOpen}function Lu(e){return e.activeMainTab}var Ru=(e,t)=>!e||t.length===0?``:JSON.stringify([e,t]),zu=(e,t,n,r)=>!n||r!==n||e.length===0?[]:Kt(e,t,e=>e.name,{limit:10,threshold:.4}),Bu=e=>{let t=(0,Ts.c)(13),{title:n,description:r,trailing:i}=e,a=r?`min-w-0 max-w-[58%] shrink-0 truncate typography-meta font-medium leading-4 text-foreground`:`min-w-0 flex-1 truncate typography-meta font-medium leading-4 text-foreground`,o;t[0]!==a||t[1]!==n?(o=(0,$.jsx)(`span`,{className:a,children:n}),t[0]=a,t[1]=n,t[2]=o):o=t[2];let s;t[3]===r?s=t[4]:(s=r?(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate typography-micro leading-4 text-muted-foreground/65`,children:r}):null,t[3]=r,t[4]=s);let c;t[5]!==o||t[6]!==s?(c=(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-2.5`,children:[o,s]}),t[5]=o,t[6]=s,t[7]=c):c=t[7];let l;t[8]===i?l=t[9]:(l=i?(0,$.jsx)(`div`,{className:`ml-auto flex shrink-0 items-center pl-2 text-muted-foreground/50`,children:i}):null,t[8]=i,t[9]=l);let u;return t[10]!==c||t[11]!==l?(u=(0,$.jsxs)($.Fragment,{children:[c,l]}),t[10]=c,t[11]=l,t[12]=u):u=t[12],u},Vu=`h-8 gap-2 rounded-md px-2.5 py-0 typography-meta`,Hu=`py-0 [&_[cmdk-group-heading]]:px-2.5 [&_[cmdk-group-heading]]:pb-0.5 [&_[cmdk-group-heading]]:pt-1.5 [&_[cmdk-group-heading]]:!text-[12px] [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:leading-4 [&_[cmdk-group-heading]]:text-muted-foreground/65`,Uu=e=>{if(!e)return``;let t=e.replace(/\\/g,`/`),n=t.startsWith(`//`),r=t.replace(/\/+/g,`/`);n&&!r.startsWith(`//`)&&(r=`/${r}`);let i=r===`/`,a=/^[A-Za-z]:\/$/.test(r);return!i&&!a&&(r=r.replace(/\/+$/,``)),r},Wu=()=>{let e=(0,Ts.c)(177),{t}=Fe(),n=u(Gu),r=u(Ku),i=u(qu),a=u(Ju),o=u(Yu),s=u(Xu),c=u(Zu),l=u(Qu),d=u($u),f=u(ed),p=u(td),h=u(nd),g=Ft(rd),_=Ft(id),v=Tt(ad),y=ge(od),x=vt(sd),S=vt(cd),C=Ea(),w=be(ld),{files:E,git:D}=Xi(),O=ta(ud),{isMobile:A}=Ai(),j;e[0]===C?j=e[1]:(j=C?Uu(C):null,e[0]=C,e[1]=j);let M=j,[N,P]=Q.useState(``),F=Qi(N,200).trim(),I;e[2]===N?I=e[3]:(I=N.trim(),e[2]=N,e[3]=I);let R=I,z,B;e[4]===n?(z=e[5],B=e[6]):(z=()=>{n&&P(``)},B=[n],e[4]=n,e[5]=z,e[6]=B),Q.useEffect(z,B);let V,H;e[7]!==v||e[8]!==O||e[9]!==D||e[10]!==n?(V=()=>{if(!n||!D)return;let e=setTimeout(()=>{let e=new Set;for(let t of v){let n=Rt(t);!n||e.has(n)||(e.add(n),O(n,D))}},0);return()=>clearTimeout(e)},H=[n,v,D,O],e[7]=v,e[8]=O,e[9]=D,e[10]=n,e[11]=V,e[12]=H):(V=e[11],H=e[12]),Q.useEffect(V,H);let U;e[13]===r?U=e[14]:(U=()=>r(!1),e[13]=r,e[14]=U);let W=U,ee;e[15]===W?ee=e[16]:(ee=e=>()=>{W(),e()},e[15]=W,e[16]=ee);let G=ee,te;e[17]!==x?.id||e[18]!==x?.path||e[19]!==y||e[20]!==C||e[21]!==A||e[22]!==f||e[23]!==g||e[24]!==G||e[25]!==i||e[26]!==s||e[27]!==a||e[28]!==t||e[29]!==d||e[30]!==l||e[31]!==c?(te=()=>{let e=[{id:`new-session`,title:t(`commandPalette.item.newSession`),shortcutId:`new_chat`,searchText:t(`commandPalette.item.newSession`),onSelect:G(()=>{i(`chat`),s(!1),g()})},{id:`new-worktree`,title:t(`commandPalette.item.newWorktreeDraft`),shortcutId:`new_chat_worktree`,searchText:t(`commandPalette.item.newWorktreeDraft`),onSelect:G(dd)},{id:`add-project`,title:t(`commandPalette.item.addProject`),searchText:t(`commandPalette.item.addProject`),onSelect:G(fd)},{id:`toggle-sidebar`,title:t(A?`commandPalette.item.showSessionSwitcher`:`commandPalette.item.toggleSidebar`),shortcutId:`toggle_sidebar`,searchText:t(A?`commandPalette.item.showSessionSwitcher`:`commandPalette.item.toggleSidebar`),onSelect:G(()=>{if(A){let{isSessionSwitcherOpen:e}=u.getState();s(!e)}else c()})},{id:`toggle-right-sidebar`,title:t(`commandPalette.item.toggleRightSidebar`),shortcutId:`toggle_right_sidebar`,searchText:t(`commandPalette.item.toggleRightSidebar`),onSelect:G(()=>l())},{id:`toggle-terminal`,title:t(`commandPalette.item.toggleTerminal`),shortcutId:`toggle_terminal`,searchText:t(`commandPalette.item.toggleTerminal`),onSelect:G(()=>d())},{id:`new-terminal-tab`,title:t(`commandPalette.item.newTerminalTab`),shortcutId:`open_new_terminal`,searchText:t(`commandPalette.item.newTerminalTab`),onSelect:G(()=>{C&&pr(C)})},{id:`context-usage`,title:t(`commandPalette.item.showContextUsage`),searchText:t(`commandPalette.item.showContextUsage`),onSelect:G(()=>{y&&f(y)})},{id:`open-settings`,title:t(`commandPalette.item.openSettings`),shortcutId:`open_settings`,searchText:t(`commandPalette.item.openSettings`),onSelect:G(()=>a(!0))}];return b()&&e.splice(1,0,{id:`new-mini-chat`,title:t(`commandPalette.item.newMiniChat`),shortcutId:`new_mini_chat`,searchText:t(`commandPalette.item.newMiniChat`),onSelect:G(()=>{L(`desktop_open_draft_mini_chat_window`,{directory:Uu(y||x?.path||``),projectId:x?.id??null}).catch(pd)})}),e},e[17]=x?.id,e[18]=x?.path,e[19]=y,e[20]=C,e[21]=A,e[22]=f,e[23]=g,e[24]=G,e[25]=i,e[26]=s,e[27]=a,e[28]=t,e[29]=d,e[30]=l,e[31]=c,e[32]=te):te=e[32],x?.id,x?.path;let K;e[33]===te?K=e[34]:(K=te(),e[33]=te,e[34]=K);let ne=K,re;e[35]===Symbol.for(`react.memo_cache_sentinel`)?(re=T(),e[35]=re):re=e[35];let ie=re,ae,oe;e[36]===Symbol.for(`react.memo_cache_sentinel`)?(ae=m(),oe=!ie&&k(),e[36]=ae,e[37]=oe):(ae=e[36],oe=e[37]);let se;e[38]===A?se=e[39]:(se={isVSCode:ae,isWeb:oe,isDesktop:ie,isMobile:A},e[38]=A,e[39]=se);let q=se,ce;if(e[40]!==G||e[41]!==a||e[42]!==o||e[43]!==q){let t;e[45]===q?t=e[46]:(t=e=>!e.isAvailable||e.isAvailable(q),e[45]=q,e[46]=t);let n;e[47]!==G||e[48]!==a||e[49]!==o?(n=e=>{let t=(e.keywords??[]).join(` `);return{id:`settings:${e.slug}`,title:e.title,searchText:`${e.title} ${e.group} ${t}`,onSelect:G(()=>{o(e.slug),a(!0)})}},e[47]=G,e[48]=a,e[49]=o,e[50]=n):n=e[50],ce=Za.filter(md).filter(t).map(n),e[40]=G,e[41]=a,e[42]=o,e[43]=q,e[44]=ce}else ce=e[44];let le=ce,ue=hd,de;if(e[51]!==v){let t;e[53]===Symbol.for(`react.memo_cache_sentinel`)?(t=(e,t)=>ue(t)-ue(e),e[53]=t):t=e[53],de=[...v].sort(t),e[51]=v,e[52]=de}else de=e[52];let fe=de,pe=na(),me=Ft(gd),he;e[54]!==pe||e[55]!==me?(he=(e,t)=>{let n=me.get(e);return n?.branch?n.branch.trim()||null:t&&pe.get(t)?.trim()||null},e[54]=pe,e[55]=me,e[56]=he):he=e[56];let _e=he,ve;e[57]===Symbol.for(`react.memo_cache_sentinel`)?(ve=[],e[57]=ve):ve=e[57];let[ye,xe]=Q.useState(ve),[Se,Ce]=Q.useState(``),we=Ru(M,F),Te;e[58]!==M||e[59]!==we||e[60]!==n||e[61]!==w||e[62]!==xe||e[63]!==Ce||e[64]!==F?(Te=()=>{if(!n){xe([]),Ce(``);return}if(!we){xe([]),Ce(``);return}if(!M){xe([]),Ce(``);return}let e=!1;return w(M,F,10,{type:`file`}).then(t=>{e||(xe(t.map(_d)),Ce(we))}).catch(()=>{e||(xe([]),Ce(we))}),()=>{e=!0}},e[58]=M,e[59]=we,e[60]=n,e[61]=w,e[62]=xe,e[63]=Ce,e[64]=F,e[65]=Te):Te=e[65];let Ee;e[66]!==M||e[67]!==we||e[68]!==n||e[69]!==w||e[70]!==F?(Ee=[n,M,F,we,w],e[66]=M,e[67]=we,e[68]=n,e[69]=w,e[70]=F,e[71]=Ee):Ee=e[71],Q.useEffect(Te,Ee);let De=R.length>0,Oe;bb0:{if(!De){let t;e[72]===ne?t=e[73]:(t=ne.map(vd),e[72]=ne,e[73]=t),Oe=t;break bb0}let t;e[74]!==ne||e[75]!==R?(t=Kt(ne,R,yd,{limit:7,noFuzzy:!0}),e[74]=ne,e[75]=R,e[76]=t):t=e[76],Oe=t}let ke=Oe,Ae;bb1:{if(!De){let t;e[77]===Symbol.for(`react.memo_cache_sentinel`)?(t=[],e[77]=t):t=e[77],Ae=t;break bb1}let t;e[78]!==R||e[79]!==le?(t=Kt(le,R,bd,{limit:7,noFuzzy:!0}),e[78]=R,e[79]=le,e[80]=t):t=e[80],Ae=t}let je=Ae,Me;bb2:{if(!De){let t;e[81]===fe?t=e[82]:(t=fe.slice(0,5).map(xd),e[81]=fe,e[82]=t),Me=t;break bb2}let t;e[83]!==R||e[84]!==fe?(t=Kt(fe,R,Sd,{limit:7,threshold:.2}),e[83]=R,e[84]=fe,e[85]=t):t=e[85],Me=t}let Ne=Me,Pe;bb3:{if(!n){let t;e[86]===Symbol.for(`react.memo_cache_sentinel`)?(t=[],e[86]=t):t=e[86],Pe=t;break bb3}let t;e[87]!==ye||e[88]!==Se||e[89]!==we||e[90]!==F?(t=zu(ye,F,we,Se),e[87]=ye,e[88]=Se,e[89]=we,e[90]=F,e[91]=t):t=e[91],Pe=t}let Ie=Pe,Le=n&&we.length>0&&Se!==we,Re;bb4:{if(!De){let t;e[92]===Symbol.for(`react.memo_cache_sentinel`)?(t=[],e[92]=t):t=e[92],Re=t;break bb4}let t;if(e[93]!==R||e[94]!==S){let n=S.map(Cd);t=Kt(n,R,wd,{limit:7,threshold:.4}),e[93]=R,e[94]=S,e[95]=t}else t=e[95];Re=t}let ze=Re,Be,Ve,He,Ue,We,Ge,Ke,qe,Je,Ye,Xe,J,Ze,Qe,$e,et;if(e[96]!==_e||e[97]!==W||e[98]!==M||e[99]!==E||e[100]!==De||e[101]!==n||e[102]!==p||e[103]!==g||e[104]!==N||e[105]!==ke||e[106]!==Ie||e[107]!==ze||e[108]!==Ne||e[109]!==je||e[110]!==r||e[111]!==_||e[112]!==h||e[113]!==t){let i=ke.map(Td),a=je.map(Ed),o=Ne.map(Dd),s=De?Ie.map(Od):[],c=De?ze.map(kd):[],l;bb5:{if(!De){l=[`commands`,`sessions`];break bb5}let e=Ad,t=[{key:`commands`,score:e(ke)},{key:`settings`,score:e(je)},{key:`sessions`,score:e(Ne)},{key:`files`,score:e(Ie)},{key:`projects`,score:e(ze)}];t.sort(jd),l=t.map(Md)}let u=l,d=e=>{W(),_(e.id,Rt(e))},f=async e=>{if(!M)return;let t=await uo(E,e);if(!t.ok){Y.error(lo(t.reason));return}p(M,e),W()},m=(e,t)=>{W(),g({selectedProjectId:e,directoryOverride:t})},v=e=>_i(yi(e,h));Ue=mn,Qe=n,$e=r;let y;e[130]===t?y=e[131]:(y=t(`commandPalette.title`),e[130]=t,e[131]=y);let b;e[132]===y?b=e[133]:(b=(0,$.jsx)(fn,{children:y}),e[132]=y,e[133]=b);let x;e[134]===t?x=e[135]:(x=t(`commandPalette.description`),e[134]=t,e[135]=x);let S;e[136]===x?S=e[137]:(S=(0,$.jsx)(pn,{children:x}),e[136]=x,e[137]=S),e[138]!==b||e[139]!==S?(et=(0,$.jsxs)(ln,{className:`sr-only`,children:[b,S]}),e[138]=b,e[139]=S,e[140]=et):et=e[140],He=dn,Xe=`fixed left-1/2 top-[12vh] z-50 max-h-[min(32rem,calc(100vh-2rem))] w-[min(40rem,calc(100vw-1.5rem))] max-w-none -translate-x-1/2 translate-y-0 gap-0 overflow-hidden rounded-2xl border border-[var(--interactive-border)]/55 bg-[color:color-mix(in_srgb,var(--surface-elevated)_80%,transparent)] p-0 shadow-2xl backdrop-blur-2xl supports-[backdrop-filter]:bg-[color:color-mix(in_srgb,var(--surface-elevated)_72%,transparent)] sm:top-[14vh] sm:max-h-[min(32rem,calc(100vh-4rem))] sm:w-[min(40rem,calc(100vw-3rem))]`,J=`block p-0`,Ze=!1,Ve=Mi,qe=!1,Je=`max-h-full min-h-0 rounded-[inherit] bg-transparent [&_[cmdk-group]]:px-0 [&_[data-slot=command-input-wrapper]]:px-2.5 [&_[data-slot=command-input-wrapper]]:pt-2.5 [&_[data-slot=command-input-wrapper]]:pb-1.5 [&_[data-slot=command-input-field]]:!bg-transparent`;let C;e[141]===t?C=e[142]:(C=t(`commandPalette.input.placeholder`),e[141]=t,e[142]=C),e[143]!==N||e[144]!==C?(Ye=(0,$.jsx)(Pi,{value:N,onValueChange:P,placeholder:C}),e[143]=N,e[144]=C,e[145]=Ye):Ye=e[145],Be=Ii,We=`px-1.5 pb-2`;let w;e[146]===t?w=e[147]:(w=t(`commandPalette.empty.noResults`),e[146]=t,e[147]=w),e[148]===w?Ge=e[149]:(Ge=(0,$.jsx)(Ji,{className:`py-10 text-muted-foreground`,children:w}),e[148]=w,e[149]=Ge),Ke=u.map(e=>e===`commands`&&i.length>0?(0,$.jsx)(Ri,{heading:t(`settings.page.commands.title`),className:Hu,children:i.map(e=>(0,$.jsx)(Ni,{value:e.id,onSelect:e.onSelect,className:Vu,children:(0,$.jsx)(Bu,{title:e.title,trailing:e.shortcutId?(0,$.jsx)(Bi,{className:`h-3.5 min-w-0 shrink-0 rounded-full border-0 bg-[color-mix(in_srgb,var(--surface-foreground)_6%,transparent)] px-1.5 font-sans text-[10px] font-medium tracking-tight text-muted-foreground/65 shadow-none`,children:v(e.shortcutId)}):void 0})},e.id))},`commands`):e===`settings`&&a.length>0?(0,$.jsx)(Ri,{heading:t(`settings.view.home.title`),className:Hu,children:a.map(Nd)},`settings`):e===`sessions`&&o.length>0?(0,$.jsx)(Ri,{heading:t(`header.sessions.title`),className:Hu,children:o.map(e=>{let n=e.title||t(`commandPalette.session.untitled`),r=Rt(e),i=_e(e.id,r);return(0,$.jsx)(Ni,{value:`session:${e.id}`,onSelect:()=>d(e),className:Vu,children:(0,$.jsx)(Bu,{title:n,trailing:i?(0,$.jsx)(`span`,{className:`max-w-40 truncate typography-micro leading-none opacity-70`,children:i}):void 0})},e.id)})},`sessions`):e===`files`&&s.length>0?(0,$.jsx)(Ri,{heading:t(`layout.mainTab.files`),className:Hu,children:s.map(e=>{let t=gn(e.relativePath||e.name,{maxLength:80});return(0,$.jsx)(Ni,{value:`file:${e.path}`,onSelect:()=>{f(e.path)},className:Vu,children:(0,$.jsx)(Bu,{title:e.name,description:t===e.name?void 0:t})},`file:${e.path}`)})},`files`):e===`projects`&&c.length>0?(0,$.jsx)(Ri,{heading:t(`sessions.sidebar.projectsTitle`),className:Hu,children:c.map(e=>{let t=e.displayName;return(0,$.jsx)(Ni,{value:`project:${e.id}`,onSelect:()=>m(e.id,e.path),className:Vu,children:(0,$.jsx)(Bu,{title:t})},`project:${e.id}`)})},`projects`):null),e[96]=_e,e[97]=W,e[98]=M,e[99]=E,e[100]=De,e[101]=n,e[102]=p,e[103]=g,e[104]=N,e[105]=ke,e[106]=Ie,e[107]=ze,e[108]=Ne,e[109]=je,e[110]=r,e[111]=_,e[112]=h,e[113]=t,e[114]=Be,e[115]=Ve,e[116]=He,e[117]=Ue,e[118]=We,e[119]=Ge,e[120]=Ke,e[121]=qe,e[122]=Je,e[123]=Ye,e[124]=Xe,e[125]=J,e[126]=Ze,e[127]=Qe,e[128]=$e,e[129]=et}else Be=e[114],Ve=e[115],He=e[116],Ue=e[117],We=e[118],Ge=e[119],Ke=e[120],qe=e[121],Je=e[122],Ye=e[123],Xe=e[124],J=e[125],Ze=e[126],Qe=e[127],$e=e[128],et=e[129];let tt;e[150]!==Le||e[151]!==t?(tt=Le?(0,$.jsx)(`div`,{className:`px-3 py-2 typography-micro text-muted-foreground/70`,children:t(`commandPalette.empty.searchingFiles`)}):null,e[150]=Le,e[151]=t,e[152]=tt):tt=e[152];let nt;e[153]!==Be||e[154]!==We||e[155]!==Ge||e[156]!==Ke||e[157]!==tt?(nt=(0,$.jsxs)(Be,{className:We,children:[Ge,Ke,tt]}),e[153]=Be,e[154]=We,e[155]=Ge,e[156]=Ke,e[157]=tt,e[158]=nt):nt=e[158];let rt;e[159]!==Ve||e[160]!==qe||e[161]!==Je||e[162]!==Ye||e[163]!==nt?(rt=(0,$.jsxs)(Ve,{shouldFilter:qe,className:Je,children:[Ye,nt]}),e[159]=Ve,e[160]=qe,e[161]=Je,e[162]=Ye,e[163]=nt,e[164]=rt):rt=e[164];let it;e[165]!==He||e[166]!==Xe||e[167]!==J||e[168]!==Ze||e[169]!==rt?(it=(0,$.jsx)(He,{className:Xe,containerClassName:J,showCloseButton:Ze,children:rt}),e[165]=He,e[166]=Xe,e[167]=J,e[168]=Ze,e[169]=rt,e[170]=it):it=e[170];let at;return e[171]!==Ue||e[172]!==Qe||e[173]!==$e||e[174]!==et||e[175]!==it?(at=(0,$.jsxs)(Ue,{open:Qe,onOpenChange:$e,children:[et,it]}),e[171]=Ue,e[172]=Qe,e[173]=$e,e[174]=et,e[175]=it,e[176]=at):at=e[176],at};function Gu(e){return e.isCommandPaletteOpen}function Ku(e){return e.setCommandPaletteOpen}function qu(e){return e.setActiveMainTab}function Ju(e){return e.setSettingsDialogOpen}function Yu(e){return e.setSettingsPage}function Xu(e){return e.setSessionSwitcherOpen}function Zu(e){return e.toggleSidebar}function Qu(e){return e.toggleRightSidebar}function $u(e){return e.toggleBottomTerminal}function ed(e){return e.openContextOverview}function td(e){return e.openContextFile}function nd(e){return e.shortcutOverrides}function rd(e){return e.openNewSessionDraft}function id(e){return e.setCurrentSession}function ad(e){return e.activeSessions}function od(e){return e.currentDirectory}function sd(e){return e.getActiveProject()}function cd(e){return e.projects}function ld(e){return e.searchFiles}function ud(e){return e.ensureStatus}function dd(){Ui()}function fd(){Be.requestDirectoryDialog()}function pd(e){console.warn(`[command-palette] failed to open draft mini chat window`,e)}function md(e){return e.slug!==`home`}function hd(e){return(typeof e.time?.updated==`number`?e.time.updated:0)||(typeof e.time?.created==`number`?e.time.created:0)}function gd(e){return e.worktreeMetadata}function _d(e){return{path:Uu(e.path),name:e.name,relativePath:e.relativePath}}function vd(e){return{item:e,score:0}}function yd(e){return e.searchText}function bd(e){return e.searchText}function xd(e){return{item:e,score:0}}function Sd(e){return e.title||``}function Cd(e){return{...e,displayName:e.label||e.path.split(`/`).pop()||e.path,searchText:`${e.label||``} ${e.path}`}}function wd(e){return e.searchText}function Td(e){return e.item}function Ed(e){return e.item}function Dd(e){return e.item}function Od(e){return e.item}function kd(e){return e.item}function Ad(e){return e.length?e[0].score:1/0}function jd(e,t){return e.score-t.score}function Md(e){return e.key}function Nd(e){return(0,$.jsx)(Ni,{value:e.id,onSelect:e.onSelect,className:Vu,children:(0,$.jsx)(Bu,{title:e.title})},e.id)}var Pd=(e,t,n)=>gi(e)?fi(e,n).map(_i):t,Fd=()=>{let e=(0,Ts.c)(69),{t}=Fe(),n=u(Id),r=u(Ld),i=u(Rd),a;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(a=mi(),e[0]=a):a=e[0];let o=a,s;e[1]===Symbol.for(`react.memo_cache_sentinel`)?(s=m(),e[1]=s):s=e[1];let c=s,l,d,f,p,h,g,_,v,y;if(e[2]!==n||e[3]!==r||e[4]!==i||e[5]!==t){let a=[{categoryKey:`helpDialog.section.navigationCommands`,items:[{id:`open_command_palette`,descriptionKey:`helpDialog.item.openCommandPalette`,icon:`command`,keys:``},{id:`open_help`,descriptionKey:`helpDialog.item.showKeyboardShortcuts`,icon:`question`,keys:``},{id:`toggle_sidebar`,descriptionKey:`helpDialog.item.toggleSessionSidebar`,icon:`layout-left`,keys:``},{id:`cycle_agent`,keys:``,descriptionKey:`helpDialog.item.cycleAgent`,icon:`ai-agent`},{id:`open_model_selector`,descriptionKey:`helpDialog.item.openModelSelector`,icon:`ai-generate-2`,keys:``},{keys:[`↑↓`],descriptionKey:`helpDialog.item.navigateModels`,icon:`ai-generate-2`},{keys:[`←→`],descriptionKey:`helpDialog.item.adjustThinkingMode`,icon:`brain-ai-3`},{id:`cycle_thinking_variant`,descriptionKey:`helpDialog.item.cycleThinkingVariant`,icon:`brain-ai-3`,keys:``},{keys:[`Shift + ${o} + N`],descriptionKey:`helpDialog.item.newWindow`,icon:`window`}]},{categoryKey:`helpDialog.section.sessionManagement`,items:[{id:`new_chat`,descriptionKey:`helpDialog.item.createNewSession`,icon:`add`,keys:``},{id:`new_chat_worktree`,descriptionKey:`helpDialog.item.createNewWorktreeDraft`,icon:`git-branch`,keys:``},{id:`previous_session`,descriptionKey:`helpDialog.item.previousSession`,icon:`arrow-left`,keys:``},{id:`next_session`,descriptionKey:`helpDialog.item.nextSession`,icon:`arrow-right`,keys:``},{id:`focus_input`,descriptionKey:`helpDialog.item.focusChatInput`,icon:`text`,keys:``},{id:`toggle_prompt_navigator`,descriptionKey:`helpDialog.item.togglePromptNavigator`,icon:`list-unordered`,keys:``},{id:`abort_run`,descriptionKey:`helpDialog.item.abortActiveRun`,icon:`close-circle`,keys:``}]},{categoryKey:`helpDialog.section.leaderChords`,items:[{keys:`Ctrl+X → M`,descriptionKey:`helpDialog.item.leaderOpenModel`,icon:`ai-generate-2`},{keys:`Ctrl+X → A`,descriptionKey:`helpDialog.item.leaderOpenAgent`,icon:`ai-agent`},{keys:`Ctrl+X → N`,descriptionKey:`helpDialog.item.leaderNewSession`,icon:`add`},{keys:`Ctrl+X → C`,descriptionKey:`helpDialog.item.leaderCompact`,icon:`scissors`}]},{categoryKey:`helpDialog.section.panels`,items:[{id:`toggle_right_sidebar`,descriptionKey:`helpDialog.item.toggleRightSidebar`,icon:`layout-right`,keys:``},{id:`open_right_sidebar_git`,descriptionKey:`helpDialog.item.openRightSidebarGitTab`,icon:`git-branch`,keys:``},{id:`open_right_sidebar_files`,descriptionKey:`helpDialog.item.openRightSidebarFilesTab`,icon:`layout-right`,keys:``},{id:`cycle_right_sidebar_tab`,descriptionKey:`helpDialog.item.cycleRightSidebarTab`,icon:`layout-right`,keys:``},{id:`close_context_panel_tab`,descriptionKey:`helpDialog.item.closeContextPanelTab`,icon:`close`,keys:``},{id:`toggle_terminal`,descriptionKey:`helpDialog.item.toggleTerminal`,icon:`window`,keys:``},{id:`new_terminal_tab`,descriptionKey:`helpDialog.item.newTerminalTab`,icon:`terminal-box`,keys:``},{id:`open_new_terminal`,descriptionKey:`helpDialog.item.openNewTerminal`,icon:`terminal-box`,keys:``},{id:`previous_terminal_tab`,descriptionKey:`helpDialog.item.previousTerminalTab`,icon:`arrow-left`,keys:``},{id:`next_terminal_tab`,descriptionKey:`helpDialog.item.nextTerminalTab`,icon:`arrow-right`,keys:``},{id:`toggle_bottom_panel`,descriptionKey:`helpDialog.item.toggleBottomPanel`,icon:`window`,keys:``},{id:`toggle_terminal_expanded`,descriptionKey:`helpDialog.item.toggleTerminalExpanded`,icon:`window`,keys:``}]},{categoryKey:`helpDialog.section.interface`,items:[{id:`cycle_theme`,descriptionKey:`helpDialog.item.cycleTheme`,icon:`palette`,keys:``},{id:`zoom_in`,descriptionKey:`helpDialog.item.zoomIn`,icon:`add`,keys:``},{id:`zoom_out`,descriptionKey:`helpDialog.item.zoomOut`,icon:`subtract`,keys:``},{id:`zoom_reset`,descriptionKey:`helpDialog.item.zoomReset`,icon:`restart`,keys:``},{keys:[`${o} + 1...9`],descriptionKey:`helpDialog.item.switchSession`,icon:`layout-left`},{id:`toggle_services_menu`,descriptionKey:`helpDialog.item.toggleServicesMenu`,icon:`stack`,keys:``},{id:`open_usage`,descriptionKey:`helpDialog.item.openUsage`,icon:`timer`,keys:``},{id:`cycle_services_tab`,descriptionKey:`helpDialog.item.cycleServicesTab`,icon:`stack`,keys:``},{id:`open_settings`,descriptionKey:`helpDialog.item.openSettings`,icon:`settings-3`,keys:``}]}];d=mn,v=n,y=r,l=dn,g=`max-w-2xl w-[min(42rem,calc(100vw-1.5rem))] max-h-[calc(100dvh-2rem)] flex flex-col overflow-hidden`;let s;e[15]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,$.jsx)(Z,{name:`settings-3`,className:`h-5 w-5`}),e[15]=s):s=e[15];let u;e[16]===t?u=e[17]:(u=t(`helpDialog.title`),e[16]=t,e[17]=u);let m;e[18]===u?m=e[19]:(m=(0,$.jsxs)(fn,{className:`flex items-center gap-2`,children:[s,u]}),e[18]=u,e[19]=m);let b;e[20]===t?b=e[21]:(b=t(`helpDialog.description`),e[20]=t,e[21]=b);let x;e[22]===b?x=e[23]:(x=(0,$.jsx)(pn,{children:b}),e[22]=b,e[23]=x),e[24]!==m||e[25]!==x?(_=(0,$.jsxs)(ln,{children:[m,x]}),e[24]=m,e[25]=x,e[26]=_):_=e[26],h=`flex-1 overflow-y-auto mt-3 pr-1`,f=`space-y-4`,p=a.map(e=>(0,$.jsxs)(`div`,{children:[(0,$.jsx)(`h3`,{className:`typography-meta font-semibold text-muted-foreground uppercase tracking-wider mb-2`,children:t(e.categoryKey)}),(0,$.jsx)(`div`,{className:`space-y-1`,children:e.items.filter(e=>!(c&&e.id===`toggle_prompt_navigator`)).map(e=>{let n=e.id?Pd(e.id,Array.isArray(e.keys)?e.keys[0]:e.keys,i):Array.isArray(e.keys)?e.keys:e.keys.split(` / `);return(0,$.jsxs)(`div`,{className:`flex items-center justify-between py-1 px-2`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[e.icon&&(0,$.jsx)(Z,{name:e.icon,className:`h-3.5 w-3.5 text-muted-foreground`}),(0,$.jsx)(`span`,{className:`typography-meta`,children:t(e.descriptionKey)})]}),(0,$.jsx)(`div`,{className:`flex items-center gap-1`,children:(Array.isArray(n)?n:[n]).map((e,n)=>(0,$.jsxs)(Q.Fragment,{children:[n>0&&(0,$.jsx)(`span`,{className:`typography-meta text-muted-foreground mx-1`,children:t(`helpDialog.keyCombiner.or`)}),(0,$.jsx)(Fi,{shortcut:e})]},`${e}-${n}`))})]},e.id||e.descriptionKey)})})]},e.categoryKey)),e[2]=n,e[3]=r,e[4]=i,e[5]=t,e[6]=l,e[7]=d,e[8]=f,e[9]=p,e[10]=h,e[11]=g,e[12]=_,e[13]=v,e[14]=y}else l=e[6],d=e[7],f=e[8],p=e[9],h=e[10],g=e[11],_=e[12],v=e[13],y=e[14];let b;e[27]!==f||e[28]!==p?(b=(0,$.jsx)(`div`,{className:f,children:p}),e[27]=f,e[28]=p,e[29]=b):b=e[29];let x;e[30]===Symbol.for(`react.memo_cache_sentinel`)?(x=(0,$.jsx)(Z,{name:`question`,className:`h-3.5 w-3.5 text-muted-foreground mt-0.5`}),e[30]=x):x=e[30];let S;e[31]===t?S=e[32]:(S=t(`helpDialog.proTips.title`),e[31]=t,e[32]=S);let C;e[33]===S?C=e[34]:(C=(0,$.jsx)(`p`,{className:`font-medium mb-1`,children:S}),e[33]=S,e[34]=C);let w;e[35]!==i||e[36]!==t?(w=t(`helpDialog.proTips.commandPalette`,{shortcut:_i(fi(`open_command_palette`,i)[0]??``)}),e[35]=i,e[36]=t,e[37]=w):w=e[37];let T;e[38]===w?T=e[39]:(T=(0,$.jsxs)(`li`,{children:[`• `,w]}),e[38]=w,e[39]=T);let E;e[40]===t?E=e[41]:(E=t(`helpDialog.proTips.recentSessions`),e[40]=t,e[41]=E);let D;e[42]===E?D=e[43]:(D=(0,$.jsxs)(`li`,{children:[`• `,E]}),e[42]=E,e[43]=D);let O;e[44]===t?O=e[45]:(O=t(`helpDialog.proTips.themeCycling`),e[44]=t,e[45]=O);let k;e[46]===O?k=e[47]:(k=(0,$.jsxs)(`li`,{children:[`• `,O]}),e[46]=O,e[47]=k);let A;e[48]!==T||e[49]!==D||e[50]!==k?(A=(0,$.jsxs)(`ul`,{className:`space-y-0.5 typography-meta`,children:[T,D,k]}),e[48]=T,e[49]=D,e[50]=k,e[51]=A):A=e[51];let j;e[52]!==C||e[53]!==A?(j=(0,$.jsx)(`div`,{className:`mt-4 p-2 bg-muted/30 rounded-xl`,children:(0,$.jsxs)(`div`,{className:`flex items-start gap-2`,children:[x,(0,$.jsxs)(`div`,{className:`typography-meta text-muted-foreground`,children:[C,A]})]})}),e[52]=C,e[53]=A,e[54]=j):j=e[54];let M;e[55]!==j||e[56]!==h||e[57]!==b?(M=(0,$.jsxs)(`div`,{className:h,children:[b,j]}),e[55]=j,e[56]=h,e[57]=b,e[58]=M):M=e[58];let N;e[59]!==l||e[60]!==M||e[61]!==g||e[62]!==_?(N=(0,$.jsxs)(l,{className:g,children:[_,M]}),e[59]=l,e[60]=M,e[61]=g,e[62]=_,e[63]=N):N=e[63];let P;return e[64]!==d||e[65]!==N||e[66]!==v||e[67]!==y?(P=(0,$.jsx)(d,{open:v,onOpenChange:y,children:N}),e[64]=d,e[65]=N,e[66]=v,e[67]=y,e[68]=P):P=e[68],P};function Id(e){return e.isHelpDialogOpen}function Ld(e){return e.setHelpDialogOpen}function Rd(e){return e.shortcutOverrides}var zd=()=>{let e=(0,Ts.c)(32),{t}=Fe(),n=u(Bd),r=u(Vd),i=u(Hd),a;e[0]!==i||e[1]!==t?(a=async()=>{if(i){if((await Le(i)).ok){Y.success(t(`openCodeStatusDialog.toast.copiedTitle`),{description:t(`openCodeStatusDialog.toast.copiedDescription`)});return}Y.error(t(`openCodeStatusDialog.toast.copyFailed`))}},e[0]=i,e[1]=t,e[2]=a):a=e[2];let o=a,s;e[3]===t?s=e[4]:(s=t(`openCodeStatusDialog.title`),e[3]=t,e[4]=s);let c;e[5]===s?c=e[6]:(c=(0,$.jsx)(fn,{children:s}),e[5]=s,e[6]=c);let l;e[7]===t?l=e[8]:(l=t(`openCodeStatusDialog.description`),e[7]=t,e[8]=l);let d;e[9]===l?d=e[10]:(d=(0,$.jsx)(pn,{children:l}),e[9]=l,e[10]=d);let f;e[11]!==c||e[12]!==d?(f=(0,$.jsxs)(ln,{children:[c,d]}),e[11]=c,e[12]=d,e[13]=f):f=e[13];let p;e[14]===t?p=e[15]:(p=t(`openCodeStatusDialog.actions.copy`),e[14]=t,e[15]=p);let m;e[16]!==o||e[17]!==p?(m=(0,$.jsx)(`div`,{className:`flex items-center justify-end`,children:(0,$.jsx)(`button`,{type:`button`,onClick:o,className:`app-region-no-drag inline-flex h-9 items-center justify-center rounded-md px-3 typography-ui-label font-medium text-muted-foreground transition-colors hover:bg-interactive-hover hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary`,children:p})}),e[16]=o,e[17]=p,e[18]=m):m=e[18];let h;e[19]!==i||e[20]!==t?(h=i||t(`openCodeStatusDialog.empty.noData`),e[19]=i,e[20]=t,e[21]=h):h=e[21];let g;e[22]===h?g=e[23]:(g=(0,$.jsx)(`pre`,{className:`max-h-[60vh] overflow-auto rounded-lg bg-surface-muted p-4 typography-code text-foreground whitespace-pre-wrap`,children:h}),e[22]=h,e[23]=g);let _;e[24]!==f||e[25]!==m||e[26]!==g?(_=(0,$.jsxs)(dn,{className:`max-w-2xl`,children:[f,m,g]}),e[24]=f,e[25]=m,e[26]=g,e[27]=_):_=e[27];let v;return e[28]!==n||e[29]!==r||e[30]!==_?(v=(0,$.jsx)(mn,{open:n,onOpenChange:r,children:_}),e[28]=n,e[29]=r,e[30]=_,e[31]=v):v=e[31],v};function Bd(e){return e.isOpenCodeStatusDialogOpen}function Vd(e){return e.setOpenCodeStatusDialogOpen}function Hd(e){return e.openCodeStatusText}var Ud=`__other__`;function Wd(e){return e.time?.updated??e.time?.archived??e.time?.created??0}function Gd(){let{t:e}=Fe(),{isMobile:t,isTablet:n,hasTouchInput:r}=Ai(),i=t||n||r,a=u(e=>e.isArchivedSessionsDialogOpen),o=u(e=>e.setArchivedSessionsDialogOpen),s=vt(e=>e.projects),c=Tt(e=>e.archivedSessions),l=Ft(e=>e.setCurrentSession),d=u(e=>e.setSettingsDialogOpen),[f,p]=Q.useState(!1),[h,g]=Q.useState(null),[_,v]=Q.useState(null);Q.useEffect(()=>{if(!a){g(null),v(null);return}let t=!1;return p(!0),Yt().catch(()=>{t||Y.error(e(`settings.openchamber.archivedSessions.toast.loadFailed`))}).finally(()=>{t||p(!1)}),()=>{t=!0}},[a,e]);let y=Q.useMemo(()=>{let t=s.map(e=>({id:e.id,normalizedPath:e.path})),n=Wo([],t,new Map,m(),c),r=new Map;for(let[e,t]of n.archivedSessionsByProject)r.set(e,[...t].sort((e,t)=>Wd(t)-Wd(e)));let i=new Set;for(let e of r.values())for(let t of e)i.add(t.id);let a=c.filter(e=>!i.has(e.id)).sort((e,t)=>Wd(t)-Wd(e));a.length>0&&r.set(Ud,a);let o=[];for(let e of s){let t=r.get(e.id)??[];t.length!==0&&o.push({projectId:e.id,label:e.label||e.path,path:e.path,sessions:t})}let l=r.get(Ud);return l&&l.length>0&&o.push({projectId:Ud,label:e(`settings.openchamber.archivedSessions.otherProjects`),path:null,sessions:l}),o.sort((e,t)=>t.sessions.length-e.sessions.length||e.label.localeCompare(t.label)),o},[c,s,e]),b=c.length,x=h?y.find(e=>e.projectId===h)??null:null,S=Q.useCallback(async t=>{v(t.id);try{await Ze(t.id)?Y.success(e(`settings.openchamber.archivedSessions.toast.restored`)):Y.error(e(`settings.openchamber.archivedSessions.toast.restoreFailed`))}finally{v(null)}},[e]),C=Q.useCallback(e=>{let t=Rt(e);l(e.id,t),o(!1),d(!1)},[l,o,d]),w=x?x.label:e(`settings.openchamber.archivedSessions.dialog.title`),T=x?x.sessions.length===1?e(`settings.openchamber.archivedSessions.dialog.sessionCountSingle`,{count:x.sessions.length}):e(`settings.openchamber.archivedSessions.dialog.sessionCountPlural`,{count:x.sessions.length}):e(`settings.openchamber.archivedSessions.dialog.description`),E=(0,$.jsxs)(`div`,{className:`space-y-3`,children:[x?(0,$.jsxs)(Sn,{type:`button`,variant:`ghost`,size:`sm`,className:`!h-7 !px-2 !font-normal text-muted-foreground`,onClick:()=>g(null),children:[(0,$.jsx)(Z,{name:`arrow-left-s`,className:`mr-1 h-4 w-4`}),e(`settings.openchamber.archivedSessions.dialog.backToProjects`)]}):null,f?(0,$.jsxs)(`div`,{className:`flex items-center gap-2 typography-meta text-muted-foreground py-6`,children:[(0,$.jsx)(Z,{name:`loader-4`,className:`h-4 w-4 animate-spin`}),e(`settings.openchamber.archivedSessions.dialog.loading`)]}):x?x.sessions.length===0?(0,$.jsx)(`div`,{className:`rounded-lg border border-dashed border-border p-4 typography-meta text-muted-foreground`,children:e(`settings.openchamber.archivedSessions.dialog.emptyProject`)}):(0,$.jsx)(`div`,{className:`space-y-1.5`,children:x.sessions.map(t=>{let n=Rt(t),r=Wd(t),i=_===t.id;return(0,$.jsxs)(`div`,{className:`flex flex-col gap-2 rounded-lg border border-border/60 px-3 py-2.5 sm:flex-row sm:items-center sm:gap-3`,children:[(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(`div`,{className:`typography-ui-label font-medium text-foreground truncate`,children:t.title||e(`sessions.sidebar.session.untitled`)}),(0,$.jsxs)(`div`,{className:`typography-meta text-muted-foreground truncate`,children:[r>0?br(r):null,r>0&&n?` · `:null,n?yn(n):null]})]}),(0,$.jsxs)(`div`,{className:`flex items-center gap-1.5 shrink-0`,children:[(0,$.jsx)(Sn,{type:`button`,variant:`outline`,size:`xs`,className:`!font-normal`,disabled:i,onClick:()=>C(t),children:e(`settings.openchamber.archivedSessions.actions.preview`)}),(0,$.jsxs)(Sn,{type:`button`,variant:`default`,size:`xs`,className:`!font-normal`,disabled:i,onClick:()=>void S(t),children:[i?(0,$.jsx)(Z,{name:`loader-4`,className:`mr-1 h-3.5 w-3.5 animate-spin`}):(0,$.jsx)(Z,{name:`inbox-unarchive`,className:`mr-1 h-3.5 w-3.5`}),e(`settings.openchamber.archivedSessions.actions.restore`)]})]})]},t.id)})}):y.length===0?(0,$.jsx)(`div`,{className:`rounded-lg border border-dashed border-border p-4 typography-meta text-muted-foreground`,children:e(`settings.openchamber.archivedSessions.dialog.empty`)}):(0,$.jsx)(`div`,{className:`space-y-1.5`,children:y.map(t=>(0,$.jsxs)(`button`,{type:`button`,onClick:()=>g(t.projectId),className:X(`flex w-full items-center gap-3 rounded-lg border border-border/60 px-3 py-2.5 text-left`,`hover:bg-interactive-hover/50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50`),children:[(0,$.jsx)(Z,{name:`folder`,className:`h-4 w-4 shrink-0 text-muted-foreground`}),(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(`div`,{className:`typography-ui-label font-medium text-foreground truncate`,children:t.label}),t.path?(0,$.jsx)(`div`,{className:`typography-meta text-muted-foreground truncate`,children:yn(t.path)}):null]}),(0,$.jsx)(`span`,{className:`typography-meta tabular-nums text-muted-foreground shrink-0`,children:t.sessions.length===1?e(`settings.openchamber.archivedSessions.dialog.sessionCountSingle`,{count:t.sessions.length}):e(`settings.openchamber.archivedSessions.dialog.sessionCountPlural`,{count:t.sessions.length})}),(0,$.jsx)(Z,{name:`arrow-right-s`,className:`h-4 w-4 shrink-0 text-muted-foreground`})]},t.projectId))}),!x&&!f&&b>0?(0,$.jsx)(`p`,{className:`typography-meta text-muted-foreground`,children:e(b===1?`settings.openchamber.archivedSessions.summarySingle`:`settings.openchamber.archivedSessions.summaryPlural`,{count:b})}):null]});return i?(0,$.jsx)(zi,{open:a,title:w,onClose:()=>o(!1),contentMaxHeightClassName:`max-h-[min(80vh,640px)]`,renderHeader:e=>(0,$.jsxs)(`div`,{className:`flex flex-col gap-1 border-b border-border/40 px-3 py-2`,children:[(0,$.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,$.jsx)(`h2`,{className:`typography-ui-label font-semibold text-foreground`,children:w}),e]}),(0,$.jsx)(`p`,{className:`typography-micro text-muted-foreground`,children:T})]}),children:E}):(0,$.jsx)(mn,{open:a,onOpenChange:o,children:(0,$.jsxs)(dn,{className:`max-h-[85vh] max-w-2xl overflow-y-auto`,children:[(0,$.jsxs)(ln,{children:[(0,$.jsx)(fn,{children:w}),(0,$.jsx)(pn,{children:T})]}),E]})})}var Kd=e=>{let t=(0,Ts.c)(12),{normalizedProjects:n,ownership:r,isSessionsLoading:i,fullCatalogSessionIds:a,fullCatalogGeneration:o,foldersMap:s,createFolder:c,addSessionToFolder:l,cleanupSessions:u,enabled:d}=e,f=d===void 0||d,p,m;t[0]!==l||t[1]!==u||t[2]!==c||t[3]!==f||t[4]!==s||t[5]!==o||t[6]!==a||t[7]!==i||t[8]!==n||t[9]!==r?(p=()=>{!f||i||n.forEach(e=>{let t=yr(e.normalizedPath),n=r.archivedSessionsByProject.get(e.id)??[],i=s[t]??[],d=new Map(i.map(qd));n.forEach(n=>{let r=$n(n,e.normalizedPath),i=r.toLowerCase(),a=d.get(i);a||(a=c(t,r),d.set(i,a)),a.sessionIds.includes(n.id)||l(t,a.id,n.id)}),o>0&&u(t,a)})},m=[f,n,r,i,o,a,s,c,l,u],t[0]=l,t[1]=u,t[2]=c,t[3]=f,t[4]=s,t[5]=o,t[6]=a,t[7]=i,t[8]=n,t[9]=r,t[10]=p,t[11]=m):(p=t[10],m=t[11]),Q.useEffect(p,m)};function qd(e){return[e.name.toLowerCase(),e]}var Jd=e=>{let t=(0,Ts.c)(41),{normalizedProjects:n,getSessionsForProject:r,getArchivedSessionsForProject:i,availableWorktreesByProject:a,projectRepoStatus:o,projectRootBranches:s,lastRepoStatus:c,buildGroupedSessions:l,hasSessionSearchQuery:u,normalizedSessionSearchQuery:d,filterSessionNodesForSearch:f,buildGroupSearchText:m,foldersMap:h}=e,g;if(t[0]!==a||t[1]!==l||t[2]!==i||t[3]!==r||t[4]!==c||t[5]!==n||t[6]!==o||t[7]!==s){let e;t[9]!==a||t[10]!==l||t[11]!==i||t[12]!==r||t[13]!==c||t[14]!==o||t[15]!==s?(e=e=>{let t=nr([...r(e.id),...i(e.id)]),n=a.get(e.normalizedPath)??[],u=o.has(e.id)?!!o.get(e.id):c;return{project:e,groups:l(t,e.normalizedPath,n,s.get(e.id)??null,u)}},t[9]=a,t[10]=l,t[11]=i,t[12]=r,t[13]=c,t[14]=o,t[15]=s,t[16]=e):e=t[16],g=n.map(e),t[0]=a,t[1]=l,t[2]=i,t[3]=r,t[4]=c,t[5]=n,t[6]=o,t[7]=s,t[8]=g}else g=t[8];let _=g,v=_,y;if(t[17]!==m||t[18]!==f||t[19]!==h||t[20]!==u||t[21]!==d||t[22]!==v){bb0:{let e=new WeakMap;if(!u){y=e;break bb0}let t=e=>e.reduce((e,n)=>e+1+t(n.children),0);v.forEach(n=>{n.groups.forEach(n=>{let r=f(n.sessions,d),i=t(r),a=m(n).includes(d),o=p(n.directory??null),s=(o?h[o]??[]:[]).filter(e=>e.name.toLowerCase().includes(d)).length;e.set(n,{filteredNodes:r,matchedSessionCount:i,folderNameMatchCount:s,groupMatches:a,hasMatch:a||i>0||s>0})})}),y=e}t[17]=m,t[18]=f,t[19]=h,t[20]=u,t[21]=d,t[22]=v,t[23]=y}else y=t[23];let b=y,x;bb1:{if(!u){x=v;break bb1}let e;if(t[24]!==b||t[25]!==v){let n;t[27]===b?n=t[28]:(n=e=>({...e,groups:e.groups.filter(e=>b.get(e)?.hasMatch===!0)}),t[27]=b,t[28]=n),e=v.map(n).filter(Yd),t[24]=b,t[25]=v,t[26]=e}else e=t[26];x=e}let S=x,C=u?S:v,w;bb2:{if(!u){w=0;break bb2}let e;if(t[29]!==b||t[30]!==C){let n;t[32]===b?n=t[33]:(n=(e,t)=>e+t.groups.reduce((e,t)=>{let n=b.get(t);if(!n)return e;let r=n.folderNameMatchCount+ +!!n.groupMatches;return e+n.matchedSessionCount+r},0),t[32]=b,t[33]=n),e=C.reduce(n,0),t[29]=b,t[30]=C,t[31]=e}else e=t[31];w=e}let T=w,E;return t[34]!==b||t[35]!==_||t[36]!==T||t[37]!==S||t[38]!==C||t[39]!==v?(E={projectSections:_,visibleProjectSections:v,groupSearchDataByGroup:b,searchableProjectSections:S,sectionsForRender:C,searchMatchCount:T},t[34]=b,t[35]=_,t[36]=T,t[37]=S,t[38]=C,t[39]=v,t[40]=E):E=t[40],E};function Yd(e){return e.groups.length>0}var Xd=e=>{let t=(0,Ts.c)(26),{projectSections:n,activeProjectId:r,activeSessionByProject:i,setActiveSessionByProject:a,currentSessionId:o,handleSessionSelect:s,newSessionDraftOpen:c,mobileVariant:l,openNewSessionDraft:d,setActiveMainTab:f,setSessionSwitcherOpen:m}=e,h,g;if(t[0]!==n){g=new Map,h=new Map;let e=(t,n,r,i)=>{g.has(t)||g.set(t,new Map);let a=g.get(t);i.forEach(i=>{let o=p(i.worktree?.path??i.session.directory??r??n);a.set(i.session.id,{directory:o}),h.has(t)||h.set(t,{id:i.session.id,directory:o}),i.children.length>0&&e(t,n,o,i.children)})};n.forEach(t=>{t.groups.forEach(n=>{e(t.project.id,t.project.normalizedPath,n.directory,n.sessions)})}),t[0]=n,t[1]=h,t[2]=g}else h=t[1],g=t[2];let _;t[3]!==h||t[4]!==g?(_={metaByProject:g,firstSessionByProject:h},t[3]=h,t[4]=g,t[5]=_):_=t[5];let v=_,y=Q.useRef(null),b,x;t[6]!==r||t[7]!==i||t[8]!==o||t[9]!==s||t[10]!==l||t[11]!==c||t[12]!==d||t[13]!==n||t[14]!==v||t[15]!==f||t[16]!==a||t[17]!==m?(b=()=>{if(!r||c||u.getState().isNewWorktreeDialogOpen||y.current===r)return;let e=n.find(e=>e.project.id===r);if(!e)return;y.current=r;let t=v.metaByProject.get(r);if(o&&t&&t.has(o)){a(e=>{if(e.get(r)===o)return e;let t=new Map(e);return t.set(r,o),t});return}if(o&&t)return;if(!t||t.size===0){f(`chat`),l&&m(!1),d({directoryOverride:e.project.normalizedPath});return}let p=i.get(r),h=p&&t.has(p)?p:null,g=v.firstSessionByProject.get(r)?.id??null,_=h??g;if(!_||_===o)return;let b=t.get(_)?.directory??null;s(_,b,r)},x=[r,i,o,s,c,l,d,n,v,f,m,a],t[6]=r,t[7]=i,t[8]=o,t[9]=s,t[10]=l,t[11]=c,t[12]=d,t[13]=n,t[14]=v,t[15]=f,t[16]=a,t[17]=m,t[18]=b,t[19]=x):(b=t[18],x=t[19]),Q.useLayoutEffect(b,x);let S,C;t[20]!==r||t[21]!==o||t[22]!==v||t[23]!==a?(S=()=>{if(!r||!o)return;let e=v.metaByProject.get(r);!e||!e.has(o)||a(e=>{if(e.get(r)===o)return e;let t=new Map(e);return t.set(r,o),t})},C=[r,o,v,a],t[20]=r,t[21]=o,t[22]=v,t[23]=a,t[24]=S,t[25]=C):(S=t[24],C=t[25]),Q.useEffect(S,C)},Zd=e=>{let t=(0,Ts.c)(4),n;t[0]===e?n=t[1]:(n=(t,n)=>{let r=e.get(t);if(!r||r.length===0)return n;let i=new Map(n.map(Qd)),a=[];return r.forEach(e=>{let t=i.get(e);t&&(a.push(t),i.delete(e))}),n.forEach(e=>{i.has(e.id)&&a.push(e)}),a},t[0]=e,t[1]=n);let r=n,i;return t[2]===r?i=t[3]:(i={getOrderedGroups:r},t[2]=r,t[3]=i),i};function Qd(e){return[e.id,e]}var $d=e=>{let{t}=Fe(),n=Q.useCallback(e=>[e.label,e.branch??``,e.description??``,e.directory??``].join(` `).toLowerCase(),[]),r=Q.useCallback(e=>{let n=p(e.directory??null)??``;return`${(e.title||t(`sessions.sidebar.session.untitled`)).trim()} ${n}`.toLowerCase()},[t]),i=Q.useCallback((e,t)=>t?e.flatMap(e=>{if(r(e.session).includes(t))return[e];let n=i(e.children,t);return n.length===0?[]:[{...e,children:n}]}):e,[r]);return{buildGroupSearchText:n,buildSessionSearchText:r,filterSessionNodesForSearch:i,buildGroupedSessions:Q.useCallback((n,r,i,a,o)=>{let s=p(r??null),c=new Map;i.forEach(e=>{if(e.path){let t=p(e.path)??e.path;c.set(t,e)}});let l=$o(n,{pinnedSessionIds:e.pinnedSessionIds,omitPinnedSessions:!0,getWorktree:t=>{let n=p(t.directory??null),r=e.worktreeMetadata.get(t.id)??null;if(r)return r;if(n){let e=c.get(n)??null;if(e&&n!==s)return e}return null}}),u=new Map,d=`__archived__`,f=t=>{if(t.time?.archived)return d;if(e.isVSCode)return s??`__project_root__`;let n=p(e.worktreeMetadata.get(t.id)?.path??null)??Rt(t);return n?n!==s&&c.has(n)?n:n===s?s??`__project_root__`:d:d};l.forEach(e=>{let t=f(e.session);u.has(t)||u.set(t,[]),u.get(t)?.push(e)});let m=s??`__project_root__`,h=[{id:`root`,label:o&&a&&a!==`HEAD`?t(`sessions.sidebar.grouping.projectRootWithBranch`,{branch:a}):t(`sessions.sidebar.grouping.projectRoot`),branch:a??null,description:s?yn(s,e.homeDirectory):null,isMain:!0,isArchivedBucket:!1,worktree:null,directory:s,folderScopeKey:s,sessions:u.get(m)??[]}],g=new Map;i.forEach(e=>{let t=p(e.path)??e.path,n=u.get(t)??[],r=n.length>0,i=n.reduce((e,t)=>{let n=ze(t.session);return Number.isFinite(n)?Math.max(e,n):e},0);g.set(t,{hasActiveSession:r,lastUpdatedAt:i})});let _=[...i].sort((e,t)=>{let n=p(e.path)??e.path,r=p(t.path)??t.path,i=g.get(n)??{hasActiveSession:!1,lastUpdatedAt:0},a=g.get(r)??{hasActiveSession:!1,lastUpdatedAt:0};if(i.hasActiveSession!==a.hasActiveSession)return i.hasActiveSession?-1:1;if(i.hasActiveSession&&a.hasActiveSession)return a.lastUpdatedAt-i.lastUpdatedAt;let o=(e.label||e.branch||e.name||e.path||``).toLowerCase(),s=(t.label||t.branch||t.name||t.path||``).toLowerCase();return o.localeCompare(s)});(e.isVSCode?[]:_).forEach(t=>{let n=p(t.path)??t.path,r=e.gitBranches.get(n)?.trim()||null,i=t.branch?.trim()||null,a=r&&i&&t.label&&qn(t.label)===qn(i)?r:t.label||t.name||_n(n,e.homeDirectory)||n;h.push({id:`worktree:${n}`,label:a,branch:r||i,description:yn(n,e.homeDirectory),isMain:!1,isArchivedBucket:!1,worktree:t,directory:n,folderScopeKey:n,sessions:u.get(n)??[]})});let v=u.get(d)??[];return h.push({id:`archived`,label:t(`sessions.sidebar.grouping.archived`),branch:null,description:t(`sessions.sidebar.grouping.archivedDescription`),isMain:!1,isArchivedBucket:!0,worktree:null,directory:null,folderScopeKey:!e.isVSCode&&s?yr(s):null,sessions:v}),h},[e.homeDirectory,e.worktreeMetadata,e.pinnedSessionIds,e.gitBranches,e.isVSCode,t])}},ef=e=>{let t=(0,Ts.c)(9),{isSessionSearchOpen:n,setIsSessionSearchOpen:r,sessionSearchInputRef:i,sessionSearchContainerRef:a}=e,o,s;t[0]!==n||t[1]!==i?(o=()=>{if(!n||typeof window>`u`)return;let e=window.requestAnimationFrame(()=>{i.current?.focus(),i.current?.select()});return()=>window.cancelAnimationFrame(e)},s=[n,i],t[0]=n,t[1]=i,t[2]=o,t[3]=s):(o=t[2],s=t[3]),Q.useEffect(o,s);let c,l;t[4]!==n||t[5]!==a||t[6]!==r?(c=()=>{if(!n||typeof document>`u`)return;let e=e=>{a.current&&(a.current.contains(e.target)||r(!1))};return document.addEventListener(`mousedown`,e),()=>document.removeEventListener(`mousedown`,e)},l=[n,r,a],t[4]=n,t[5]=a,t[6]=r,t[7]=c,t[8]=l):(c=t[7],l=t[8]),Q.useEffect(c,l)},tf=e=>{let t=(0,Ts.c)(42),{t:n}=Fe(),[r,i]=Q.useState(null),a=Q.useRef(null),o,s;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(o=()=>()=>{a.current&&clearTimeout(a.current)},s=[],t[0]=o,t[1]=s):(o=t[0],s=t[1]),Q.useEffect(o,s);let c;t[2]===e?c=t[3]:(c=(t,n,r)=>{let i=()=>{!e.isSessionSearchOpen&&e.sessionSearchQuery.length===0||(e.setSessionSearchQuery(``),e.setIsSessionSearchOpen(!1))};if(r&&r!==e.activeProjectId&&e.setActiveProjectIdOnly(r),n&&n!==e.currentDirectory&&e.setDirectory(n,{showOverlay:!1}),e.setActiveMainTab(`chat`)){if(e.mobileVariant&&e.setSessionSwitcherOpen(!1),t===e.currentSessionId){e.allowReselect&&e.onSessionSelected?.(t),i();return}e.setCurrentSession(t,n??null),e.onSessionSelected?.(t),i()}},t[2]=e,t[3]=c);let l=c,u;t[4]===e?u=t[5]:(u=(t,n)=>{e.setEditingId(t),e.setEditTitle(n)},t[4]=e,t[5]=u);let d=u,f;t[6]===e?f=t[7]:(f=async t=>{if(!e.editingId)return;let n=(t??e.editTitle).trim();n&&await e.updateSessionTitle(e.editingId,n),e.setEditingId(null),e.setEditTitle(``)},t[6]=e,t[7]=f);let p=f,m;t[8]===e?m=t[9]:(m=()=>{e.setEditingId(null),e.setEditTitle(``)},t[8]=e,t[9]=m);let h=m,g;t[10]!==e||t[11]!==n?(g=async t=>{let r=await e.shareSession(t.id);r&&r.share?.url?Y.success(n(`sessions.sidebar.session.share.successTitle`),{description:n(`sessions.sidebar.session.share.successDescription`)}):Y.error(n(`sessions.sidebar.session.share.error`))},t[10]=e,t[11]=n,t[12]=g):g=t[12];let _=g,v;t[13]===n?v=t[14]:(v=(e,t)=>{Le(e).then(e=>{if(!e.ok){Y.error(n(`sessions.sidebar.session.share.copyUrlError`));return}i(t),a.current&&clearTimeout(a.current),a.current=window.setTimeout(()=>{i(null),a.current=null},2e3)}).catch(()=>{Y.error(n(`sessions.sidebar.session.share.copyUrlError`))})},t[13]=n,t[14]=v);let y=v,b;t[15]!==e||t[16]!==n?(b=async t=>{await e.unshareSession(t)?Y.success(n(`sessions.sidebar.session.unshare.success`)):Y.error(n(`sessions.sidebar.session.unshare.error`))},t[15]=e,t[16]=n,t[17]=b):b=t[17];let x=b,S;t[18]===e.childrenMap?S=t[19]:(S=t=>{let n=[],r=t=>{(e.childrenMap.get(t)??[]).forEach(e=>{n.push(e),r(e.id)})};return r(t),n},t[18]=e.childrenMap,t[19]=S);let C=S,w=rf,T;t[20]!==e||t[21]!==C||t[22]!==n?(T=async(t,r,i)=>{let a=r?.archivedBucket===!0||r?.hardDelete===!0,o=i?.descendantIds??w(C(t.id),a).map(af);if(o.length===0){if(a){Ko({sessionIds:[t.id],message:n(`sessions.sidebar.session.delete.success`),undoLabel:n(`sessions.sidebar.undo`),commitFailedMessage:n(`sessions.sidebar.session.delete.error`)});return}await e.archiveSession(t.id)?So({sessionIds:[t.id],message:n(`sessions.sidebar.session.archive.success`),undoLabel:n(`sessions.sidebar.undo`),settingsLabel:n(`settings.openchamber.archivedSessions.actions.view`),undoFailedMessage:n(`sessions.sidebar.session.archive.undoFailed`)}):Y.error(n(`sessions.sidebar.session.archive.error`));return}let s=[t.id,...o];if(a){Ko({sessionIds:s,message:s.length===1?n(`sessions.sidebar.bulkActions.deletedSingle`,{count:s.length}):n(`sessions.sidebar.bulkActions.deletedPlural`,{count:s.length}),undoLabel:n(`sessions.sidebar.undo`),commitFailedMessage:n(`sessions.sidebar.session.delete.error`)});return}let{archivedIds:c,failedIds:l}=await e.archiveSessions(s);c.length>0&&So({sessionIds:c,message:c.length===1?n(`sessions.sidebar.bulkActions.archivedSingle`,{count:c.length}):n(`sessions.sidebar.bulkActions.archivedPlural`,{count:c.length}),undoLabel:n(`sessions.sidebar.undo`),settingsLabel:n(`settings.openchamber.archivedSessions.actions.view`),undoFailedMessage:c.length===1?n(`sessions.sidebar.session.archive.undoFailed`):n(`sessions.sidebar.bulkActions.archiveUndoFailed`,{count:c.length})}),l.length>0&&Y.error(l.length===1?n(`sessions.sidebar.bulkActions.failedArchiveSingle`,{count:l.length}):n(`sessions.sidebar.bulkActions.failedArchivePlural`,{count:l.length}))},t[20]=e,t[21]=C,t[22]=n,t[23]=T):T=t[23];let E=T,D;t[24]!==e||t[25]!==C||t[26]!==E?(D=(t,n)=>{let r=n?.archivedBucket===!0||n?.hardDelete===!0,i=w(C(t.id),r).map(of);if(!r||!e.showDeletionDialog||n?.skipConfirm===!0){E(t,n,{descendantIds:i});return}e.setDeleteSessionConfirm({session:t,descendantCount:i.length,descendantIds:i,archivedBucket:r})},t[24]=e,t[25]=C,t[26]=E,t[27]=D):D=t[27];let O=D,k;t[28]!==e||t[29]!==E?(k=async()=>{if(!e.deleteSessionConfirm)return;let{session:t,archivedBucket:n,descendantIds:r}=e.deleteSessionConfirm;e.setDeleteSessionConfirm(null),await E(t,{archivedBucket:n},{descendantIds:r})},t[28]=e,t[29]=E,t[30]=k):k=t[30];let A=k,j;return t[31]!==A||t[32]!==r||t[33]!==h||t[34]!==y||t[35]!==O||t[36]!==p||t[37]!==d||t[38]!==l||t[39]!==_||t[40]!==x?(j={copiedSessionId:r,handleSessionSelect:l,handleSessionDoubleClick:d,handleSaveEdit:p,handleCancelEdit:h,handleShareSession:_,handleCopyShareUrl:y,handleUnshareSession:x,handleDeleteSession:O,confirmDeleteSession:A},t[31]=A,t[32]=r,t[33]=h,t[34]=y,t[35]=O,t[36]=p,t[37]=d,t[38]=l,t[39]=_,t[40]=x,t[41]=j):j=t[41],j};function nf(e){return!e.time?.archived}function rf(e,t){return t?e:e.filter(nf)}function af(e){return e.id}function of(e){return e.id}var sf=[`project:active:`,`project:archived:`,`pinned:active:`,`pinned:archived:`],cf=e=>{let{isVSCode:t,safeStorage:n,keys:r,groupOrderByProject:i,activeSessionByProject:a,collapsedGroups:o,setExpandedParents:s,setCollapsedProjects:c}=e,l=Q.useRef(null),u=Q.useRef(null),[d,f]=Q.useState(!1),p=Q.useCallback(()=>{if(t)return;let e=u.current;if(u.current=null,l.current=null,!e)return;let{projects:n}=vt.getState(),r=n.map(t=>({...t,sidebarCollapsed:e.has(t.id)}));R({projects:r}).catch(()=>{})},[t]),m=Q.useCallback(e=>{typeof window>`u`||t||(u.current=e,l.current!==null&&window.clearTimeout(l.current),l.current=window.setTimeout(()=>{p()},700))},[t,p]);return Q.useEffect(()=>()=>{typeof window<`u`&&l.current!==null&&window.clearTimeout(l.current),l.current=null,u.current=null},[]),Q.useEffect(()=>{try{let e=n.getItem(r.sessionExpanded);if(e){let t=JSON.parse(e);Array.isArray(t)&&s(new Set(t.filter(e=>typeof e==`string`)))}else{let e=n.getItem(r.sessionExpandedLegacy);if(e){try{let t=JSON.parse(e);if(Array.isArray(t)){let e=new Set;if(t.forEach(t=>{typeof t==`string`&&t.length!==0&&sf.forEach(n=>e.add(`${n}${t}`))}),e.size>0){s(e);try{n.setItem(r.sessionExpanded,JSON.stringify(Array.from(e)))}catch{}}}}catch{}try{n.removeItem?.(r.sessionExpandedLegacy)}catch{}}}let t=n.getItem(r.projectCollapse);if(t){let e=JSON.parse(t);Array.isArray(e)&&c(new Set(e.filter(e=>typeof e==`string`)))}}catch{}finally{f(!0)}},[r.projectCollapse,r.sessionExpanded,r.sessionExpandedLegacy,n,c,s]),Q.useEffect(()=>{try{let e=Object.fromEntries(i.entries());n.setItem(r.groupOrder,JSON.stringify(e))}catch{}},[i,r.groupOrder,n]),Q.useEffect(()=>{try{let e=Object.fromEntries(a.entries());n.setItem(r.projectActiveSession,JSON.stringify(e))}catch{}},[a,r.projectActiveSession,n]),Q.useEffect(()=>{try{n.setItem(r.groupCollapse,JSON.stringify(Array.from(o)))}catch{}},[o,r.groupCollapse,n]),{scheduleCollapsedProjectsPersist:m,hasRestoredProjectCollapse:d}},lf=async(e,t,n)=>{if(e.length===0)return[];let r=Math.max(1,Math.min(t,e.length)),i=Array(e.length),a=0,o=async()=>{for(;;){let t=a;if(a+=1,t>=e.length)return;i[t]=await n(e[t])}};return await Promise.all(Array.from({length:r},()=>o())),i},uf=e=>{let{normalizedProjects:t,activeProjectId:n,gitRepoStatus:r,setProjectRepoStatus:i,setProjectRootBranches:a,enabled:o=!0}=e,{git:s}=Xi(),c=ta(e=>e.ensureStatus),l=Q.useMemo(()=>o?t.filter(e=>e.id===n):[],[n,o,t]);Q.useEffect(()=>{if(!o||!s||l.length===0){if(!o)return;i(new Map);return}l.forEach(e=>{c(e.normalizedPath,s)})},[l,o,s,c,i]),Q.useEffect(()=>{let e=new Map;l.forEach(t=>{e.set(t.id,r.get(t.normalizedPath)?.isGitRepo??null)}),i(e)},[l,r,i]);let u=Q.useMemo(()=>l.map(e=>{let t=r.get(e.normalizedPath)?.branch??``;return`${e.id}:${t}`}).join(`|`),[l,r]),d=Q.useRef(new Map),f=Q.useRef(new Map);Q.useEffect(()=>{let e=!1,t=setTimeout(()=>{(async()=>{let t=new Set(l.map(e=>e.id));for(let e of d.current.keys())t.has(e)||(d.current.delete(e),f.current.delete(e));let n=Date.now(),i=l.filter(e=>{let t=r.get(e.normalizedPath);if(t?.isGitRepo===!1)return d.current.delete(e.id),f.current.delete(e.id),!1;if(t?.isGitRepo!==!0||t.branch===null)return!1;let i=t.branch.trim(),a=`${e.normalizedPath}\0${i}`,o=d.current.get(e.id);if(o===a){let t=f.current.get(e.id);return t&&(t.at=n),!1}return!(o!==void 0&&n-(f.current.get(e.id)?.at??0)<3e5)});if(i.length===0)return;let o=await lf(i,2,async e=>{let t=r.get(e.normalizedPath)?.branch?.trim()??``,n=`${e.normalizedPath}\0${t}`,i=await Gr(e.normalizedPath,t?{knownBranch:t}:void 0).catch(()=>null);return{id:e.id,inputKey:n,branch:i}});if(e)return;let s=o.filter(e=>e.branch);if(s.length===0)return;let c=Date.now();a(e=>{let t=new Map(e);return s.forEach(({id:e,branch:n})=>{n&&t.set(e,n)}),t}),s.forEach(({id:e,inputKey:t,branch:n})=>{d.current.set(e,t),n&&f.current.set(e,{branch:n,at:c})})})()},150);return()=>{e=!0,clearTimeout(t)}},[l,u,r,a])},df=e=>{let t=(0,Ts.c)(7),{ownership:n}=e,r;t[0]===n?r=t[1]:(r=e=>n.sessionsByProject.get(e)??[],t[0]=n,t[1]=r);let i=r,a;t[2]===n?a=t[3]:(a=e=>n.archivedSessionsByProject.get(e)??[],t[2]=n,t[3]=a);let o=a,s;return t[4]!==o||t[5]!==i?(s={getSessionsForProject:i,getArchivedSessionsForProject:o},t[4]=o,t[5]=i,t[6]=s):s=t[6],s},ff=e=>{let t=(0,Ts.c)(7),{isSessionsLoading:n,fullCatalogSessionIds:r,fullCatalogGeneration:i,normalizedProjects:a,cleanupSessions:o}=e,s,c;t[0]!==o||t[1]!==i||t[2]!==r||t[3]!==n||t[4]!==a?(s=()=>{if(n||i===0)return;let e=Bt.getState().foldersMap;new Set([...Object.keys(e),...a.map(pf)]).forEach(e=>{o(e,r)})},c=[o,i,r,n,a],t[0]=o,t[1]=i,t[2]=r,t[3]=n,t[4]=a,t[5]=s,t[6]=c):(s=t[5],c=t[6]),Q.useEffect(s,c)};function pf(e){return yr(e.normalizedPath)}var mf=e=>{let t=(0,Ts.c)(10),{isDesktopShellRuntime:n,projectSections:r,projectHeaderSentinelRefs:i,enabled:a}=e,o=a===void 0||a,s;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(s=new Set,t[0]=s):s=t[0];let[c,l]=Q.useState(s),u;t[1]!==o||t[2]!==n||t[3]!==i?(u=()=>{if(!o||!n){l(hf);return}let e=new IntersectionObserver(e=>{e.forEach(e=>{let t=e.target.dataset.projectId;t&&l(n=>{let r=new Set(n);return e.isIntersecting?r.delete(t):r.add(t),r})})},{threshold:0});return i.current.forEach(t=>{t&&e.observe(t)}),()=>e.disconnect()},t[1]=o,t[2]=n,t[3]=i,t[4]=u):u=t[4];let d;return t[5]!==o||t[6]!==n||t[7]!==i||t[8]!==r?(d=[o,n,i,r],t[5]=o,t[6]=n,t[7]=i,t[8]=r,t[9]=d):d=t[9],Q.useEffect(u,d),c};function hf(e){return e.size===0?e:new Set}var gf=9e4,_f=15e3,vf=3e5,yf=[2e3,5e3],bf=6e4,xf=12e4,Sf=3e5,Cf=4,wf=432e5,Tf=`openchamber.github-pr-status`,Ef=e=>e===`closed`||e===`merged`,Df=e=>{let t=e?.checks;return t?t.state===`pending`||t.pending>0:!1},Of=(e,t,n)=>`${e}::${t}`,kf=new Map,Af=new Map,jf=new Set,Mf=new Map,Nf=2,Pf=0,Ff=[],If=()=>Pf<Nf?(Pf+=1,Promise.resolve()):new Promise(e=>{Ff.push(e)}),Lf=()=>{let e=Ff.shift();if(e){e();return}Pf=Math.max(0,Pf-1)},Rf=()=>({status:null,isLoading:!1,error:null,isInitialStatusResolved:!1,lastRefreshAt:0,lastDiscoveryPollAt:0,watchers:0,params:null,identity:null,resolvedRemoteName:null}),zf=e=>e?.params?.directory&&e.params.branch?{directory:e.params.directory,branch:e.params.branch,remoteName:e.params.remoteName??e.resolvedRemoteName??e.identity?.remoteName??null}:!e?.identity?.directory||!e.identity.branch?null:e.identity,Bf=e=>{let t=zf(e);return!t?.directory||!t.branch?null:`${t.directory}::${t.branch}`},Vf=(e,t)=>Object.entries(e).filter(([,e])=>Bf(e)===t).map(([e])=>e),Hf=(e,t)=>{let n=t.remoteName??e.params?.remoteName??e.resolvedRemoteName??e.identity?.remoteName??null;return{...e,params:e.params?{...e.params,...t,remoteName:n}:{...t,remoteName:n},identity:{directory:t.directory,branch:t.branch,remoteName:n}}},Uf=e=>!e?.params?.canShow||!e.params.github?.prStatus?null:{...e.params,remoteName:e.params.remoteName??e.resolvedRemoteName??e.identity?.remoteName??null},Wf=(e,t,n)=>{let r=Vf(e,t),i=r.map(t=>Uf(e[t])).filter(e=>!!e);if(i.length===0)return null;let a=Uf(e[n]);if(a&&Bf(e[n])===t)return a;let o=r.map(t=>e[t]).find(e=>!!(e?.resolvedRemoteName&&Uf(e)));return o?Uf(o):i.find(e=>!!e.remoteName)||(i[0]??null)},Gf=e=>({status:e.status,isInitialStatusResolved:e.isInitialStatusResolved,lastRefreshAt:e.lastRefreshAt,lastDiscoveryPollAt:e.lastDiscoveryPollAt,identity:zf(e),resolvedRemoteName:e.resolvedRemoteName??e.status?.resolvedRemoteName??null}),Kf=e=>({...Rf(),status:e?.status??null,isInitialStatusResolved:e?.isInitialStatusResolved??!1,lastRefreshAt:e?.lastRefreshAt??0,lastDiscoveryPollAt:e?.lastDiscoveryPollAt??0,identity:e?.identity??null,resolvedRemoteName:e?.resolvedRemoteName??e?.status?.resolvedRemoteName??null}),qf=ne()(re((e,t)=>({entries:{},activeRequestCount:0,totalRequestCount:0,ensureEntry:t=>{e(e=>e.entries[t]?e:{entries:{...e.entries,[t]:Rf()}})},setParams:(t,n)=>{e(e=>{let r=e.entries[t]??Rf();return{entries:{...e.entries,[t]:Hf(r,n)}}})},startWatching:n=>{if(e(e=>{let t=e.entries[n]??Rf();return{entries:{...e.entries,[n]:{...t,watchers:t.watchers+1}}}}),kf.has(n))return;let r=e=>{let r=window.setTimeout(()=>{if(typeof document<`u`&&document.visibilityState!==`visible`)return;let e=t().entries[n];!e||e.watchers<=0||e.status?.pr||t().refresh(n,{force:!0,silent:!0,markInitialResolved:!0})},e),i=Af.get(n)??[];i.push(r),Af.set(n,i)};t().refresh(n,{force:!0,silent:!0,markInitialResolved:!0}),yf.forEach(e=>r(e));let i=window.setInterval(()=>{if(typeof document<`u`&&document.visibilityState!==`visible`)return;let r=t().entries[n];if(!(!r||r.watchers<=0)){if(!r.status?.pr){let i=Date.now();if(i-r.lastDiscoveryPollAt<vf)return;e(e=>{let t=e.entries[n];return t?{entries:{...e.entries,[n]:{...t,lastDiscoveryPollAt:i}}}:e}),t().refresh(n,{force:!0,silent:!0,markInitialResolved:!0});return}Ef(r.status?.pr?.state)||Date.now()-r.lastRefreshAt<(Df(r.status)?bf:r.status?.checks&&r.status.checks.state!==`pending`?Sf:xf)||t().refresh(n,{force:!0,onlyExistingPr:!0,silent:!0,markInitialResolved:!0})}},_f);kf.set(n,i)},stopWatching:n=>{e(e=>{let t=e.entries[n];if(!t)return e;let r=Math.max(0,t.watchers-1);return{entries:{...e.entries,[n]:{...t,watchers:r}}}});let r=t().entries[n];if(r&&r.watchers>0)return;let i=kf.get(n);typeof i==`number`&&window.clearInterval(i),kf.delete(n);let a=Af.get(n);a&&a.length>0&&a.forEach(e=>{window.clearTimeout(e)}),Af.delete(n)},refresh:async(n,r)=>{let i=t(),a=i.entries[n],o=Bf(a);if(!a||!o)return;let s=Vf(i.entries,o),c=s.some(e=>!!i.entries[e]?.status?.pr);if(r?.onlyExistingPr&&!c)return;let l=Mf.get(o)??0;if(!r?.force&&Date.now()-l<gf||jf.has(o))return;let u=Wf(i.entries,o,n);if(u){if(jf.add(o),Mf.set(o,Date.now()),e(e=>{let t={...e.entries};return s.forEach(e=>{let n=t[e];n&&(t[e]={...n,lastRefreshAt:Date.now(),isLoading:!r?.silent||n.isLoading,error:null})}),{entries:t}}),u.githubAuthChecked&&u.githubConnected===!1){e(e=>{let t={...e.entries};return s.forEach(e=>{let n=t[e];n&&(t[e]={...n,status:{connected:!1},error:null,isLoading:r?.silent?n.isLoading:!1,isInitialStatusResolved:r?.markInitialResolved!==!1||n.isInitialStatusResolved})}),{entries:t}}),jf.delete(o);return}if(!u.github?.prStatus){e(e=>{let t={...e.entries};return s.forEach(e=>{let n=t[e];n&&(t[e]={...n,status:null,error:`GitHub runtime API unavailable`,isLoading:r?.silent?n.isLoading:!1,isInitialStatusResolved:r?.markInitialResolved!==!1||n.isInitialStatusResolved})}),{entries:t}}),jf.delete(o);return}try{e(e=>({...e,activeRequestCount:e.activeRequestCount+1,totalRequestCount:e.totalRequestCount+1})),await If();let t;try{t=await u.github.prStatus(u.directory,u.branch,u.remoteName??void 0,{force:r?.force})}finally{Lf()}e(e=>{let n={...e.entries};return s.forEach(e=>{let i=n[e];if(!i)return;let a=i.status?.pr,o=t.pr,s=o&&a&&o.number===a.number&&(!o.body||!o.body.trim())&&typeof a.body==`string`&&a.body.trim().length>0&&o&&a?.body?{...t,pr:{...o,body:a.body}}:t,c=s.resolvedRemoteName??i.resolvedRemoteName??u.remoteName??null,l=zf(i)??{directory:u.directory,branch:u.branch,remoteName:u.remoteName??null};n[e]={...i,status:s,error:null,isLoading:r?.silent?i.isLoading:!1,isInitialStatusResolved:r?.markInitialResolved!==!1||i.isInitialStatusResolved,resolvedRemoteName:c,identity:{...l,remoteName:c??l.remoteName??null}}}),{entries:n}})}catch(t){let n=t instanceof Error?t.message:String(t);e(e=>{let t={...e.entries};return s.forEach(e=>{let i=t[e];i&&(t[e]={...i,error:n||`Failed to load PR status`,isLoading:r?.silent?i.isLoading:!1,isInitialStatusResolved:r?.markInitialResolved!==!1||i.isInitialStatusResolved})}),{entries:t}})}finally{jf.delete(o),e(e=>({...e,activeRequestCount:Math.max(0,e.activeRequestCount-1)}))}}},refreshTargets:async(e,n)=>{await lf(Array.from(new Set(e.map(e=>{let t=e.directory.trim(),n=e.branch.trim();return!t||!n?null:Of(t,n,e.remoteName??null)}).filter(e=>!!e))),Cf,e=>t().refresh(e,n))},updateStatus:(t,n)=>{e(e=>{let r=e.entries[t]??Rf();return{entries:{...e.entries,[t]:{...r,status:n(r.status)}}}})}}),{name:Tf,storage:f(),partialize:e=>({entries:Object.fromEntries(Object.entries(e.entries).filter(([,e])=>{let t=zf(e);if(!t?.directory||!t.branch)return!1;let n=Math.max(e.lastRefreshAt,e.lastDiscoveryPollAt);return n===0||Date.now()-n<wf}).map(([e,t])=>[e,Gf(t)]))}),merge:(e,t)=>{let n=e?.entries??{};return{...t,entries:Object.fromEntries(Object.entries(n).map(([e,t])=>[e,Kf(t)]))}}})),Jf=e=>{let t=e?.pr;if(!t)return null;if(t.state===`merged`)return`merged`;if(t.state===`closed`)return`closed`;if(t.draft)return`draft`;let n=e?.checks?.state===`failure`,r=typeof t.mergeableState==`string`?t.mergeableState:``,i=t.mergeable===!1||r===`blocked`||r===`dirty`;return n||i?`blocked`:`open`},Yf=e=>{let t=Jf(e.status??null),n=e.status?.pr;return!t||!n?.number?null:{number:n.number,visualState:t,prState:n.state,draft:!!n.draft,title:typeof n.title==`string`&&n.title.trim().length>0?n.title:null,url:typeof n.url==`string`&&n.url.trim().length>0?n.url:null,base:typeof n.base==`string`&&n.base.trim().length>0?n.base:null,head:typeof n.head==`string`&&n.head.trim().length>0?n.head:null,checks:e.status?.checks?{state:e.status.checks.state,total:e.status.checks.total,success:e.status.checks.success,failure:e.status.checks.failure,pending:e.status.checks.pending}:null,canMerge:typeof e.status?.canMerge==`boolean`?e.status.canMerge:null,mergeableState:typeof n.mergeableState==`string`?n.mergeableState:null,repo:e.status?.repo?{owner:e.status.repo.owner,repo:e.status.repo.repo}:null}},Xf=e=>`${e.number}:${e.visualState}:${e.prState}:${e.draft}:${e.title??``}:${e.url??``}:${e.base??``}:${e.head??``}:${e.canMerge??``}:${e.mergeableState??``}:${e.checks?.state??``}:${e.checks?.total??``}:${e.checks?.success??``}:${e.checks?.failure??``}:${e.checks?.pending??``}:${e.repo?.owner??``}:${e.repo?.repo??``}`,Zf=new Map,Qf=new Map,$f=e=>{let t=(0,Ts.c)(2),n;return t[0]===e?n=t[1]:(n=t=>{let n=new Map,r=new Map;for(let i of e){let e=t.entries[i];if(!e)continue;let a=Yf(e);if(!a)continue;let o=Xf(a);n.set(i,o),r.set(i,a)}if(n.size===Zf.size){let e=!0;for(let[t,r]of n)if(Zf.get(t)!==r){e=!1;break}if(e)return Qf}return Zf=n,Qf=r,r},t[0]=e,t[1]=n),qf(n)},ep=e=>{let t=(0,Ts.c)(10),{open:n,onOpenChange:r,project:i,onSave:a}=e,o;t[0]!==a||t[1]!==n||t[2]!==i?(o=n&&i?(0,$.jsx)($a,{project:i,onIdentitySave:a}):null,t[0]=a,t[1]=n,t[2]=i,t[3]=o):o=t[3];let s;t[4]===o?s=t[5]:(s=(0,$.jsx)(dn,{className:`w-full max-w-2xl gap-0 overflow-hidden p-0`,children:(0,$.jsx)(Nr,{outerClassName:`max-h-[min(90vh,48rem)]`,className:`w-full bg-background`,children:(0,$.jsx)(`div`,{className:`w-full p-3 sm:p-6 sm:pt-8`,children:o})})}),t[4]=o,t[5]=s);let c;return t[6]!==r||t[7]!==n||t[8]!==s?(c=(0,$.jsx)(mn,{open:n,onOpenChange:r,children:s}),t[6]=r,t[7]=n,t[8]=s,t[9]=c):c=t[9],c},tp=Q.memo(e=>{let t=(0,Ts.c)(90),{folder:n,sessions:r,subFolderItems:i,isCollapsed:a,onToggle:o,onRename:s,onDelete:c,renderSessionNode:l,getRenderExtras:u,groupDirectory:d,projectId:f,mobileVariant:p,alwaysShowActions:m,isRenaming:h,renameDraft:g,onRenameDraftChange:_,onRenameSave:v,onRenameCancel:y,droppableRef:b,isDropTarget:x,onNewSession:S,onNewSubFolder:C,depth:w,hideActions:T,archivedBucket:E,sessionSecondaryMeta:D}=e,O=m===void 0?p!==void 0&&p:m,k=h!==void 0&&h,A=g===void 0?``:g,j=x!==void 0&&x,M=w===void 0?0:w,N=T!==void 0&&T,P=E!==void 0&&E,F=D===void 0?null:D,{t:I}=Fe(),[L,R]=Q.useState(!1),[z,B]=Q.useState(``),V=Q.useRef(null),H=k||L,U=k?A:z,W;t[0]===n.name?W=t[1]:(W=()=>{B(n.name),R(!0)},t[0]=n.name,t[1]=W);let ee=W,G;t[2]!==U||t[3]!==n.name||t[4]!==k||t[5]!==s||t[6]!==v?(G=()=>{let e=U.trim();e&&e!==n.name&&s(e),k&&v&&v(),R(!1),B(``)},t[2]=U,t[3]=n.name,t[4]=k,t[5]=s,t[6]=v,t[7]=G):G=t[7];let te=G,K;t[8]!==k||t[9]!==y?(K=()=>{k&&y&&y(),R(!1),B(``)},t[8]=k,t[9]=y,t[10]=K):K=t[10];let ne=K,re;t[11]!==k||t[12]!==_?(re=e=>{if(k&&_){_(e);return}B(e)},t[11]=k,t[12]=_,t[13]=re):re=t[13];let ie=re,ae,oe;t[14]===k?(ae=t[15],oe=t[16]):(ae=()=>{if(!k)return;let e=()=>{let e=V.current;e&&(e.focus(),e.select())},t=requestAnimationFrame(e),n=window.setTimeout(e,0);return()=>{cancelAnimationFrame(t),window.clearTimeout(n)}},oe=[k],t[14]=k,t[15]=ae,t[16]=oe),Q.useEffect(ae,oe);let se;t[17]===M?se=t[18]:(se=er(M),t[17]=M,t[18]=se);let q=se,ce;t[19]===Symbol.for(`react.memo_cache_sentinel`)?(ce=X(`oc-folder`),t[19]=ce):ce=t[19];let le=j&&`bg-primary/10 ring-1 ring-inset ring-primary/30`,ue;t[20]===le?ue=t[21]:(ue=X(`group/folder relative my-0.5 flex items-center justify-between gap-1.5 py-1.5 pr-2 min-w-0 rounded-lg`,`cursor-pointer`,Kn,le),t[20]=le,t[21]=ue);let de;t[22]===q?de=t[23]:(de={paddingLeft:q},t[22]=q,t[23]=de);let fe=H?void 0:o,pe=H?void 0:`button`,me=H?void 0:0,he;t[24]!==o||t[25]!==H?(he=H?void 0:e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),o())},t[24]=o,t[25]=H,t[26]=he):he=t[26];let ge;t[27]!==n.name||t[28]!==a||t[29]!==I?(ge=I(a?`sessions.sidebar.folderItem.expandAria`:`sessions.sidebar.folderItem.collapseAria`,{folderName:n.name}),t[27]=n.name,t[28]=a,t[29]=I,t[30]=ge):ge=t[30];let _e=P?O?`pr-7`:`group-hover/folder:pr-7 group-focus-within/folder:pr-7`:``,ve;t[31]===_e?ve=t[32]:(ve=X(`min-w-0 flex items-center gap-1.5 flex-1 transition-[padding]`,_e),t[31]=_e,t[32]=ve);let ye=j?`text-primary`:`text-muted-foreground`,be;t[33]===ye?be=t[34]:(be=X(`h-4 w-4 flex-shrink-0`,ye),t[33]=ye,t[34]=be);let xe;t[35]===be?xe=t[36]:(xe=(0,$.jsx)(Z,{name:`folder-open`,className:be}),t[35]=be,t[36]=xe);let Se;t[37]!==U||t[38]!==n.name||t[39]!==ne||t[40]!==ie||t[41]!==te||t[42]!==a||t[43]!==j||t[44]!==H||t[45]!==r||t[46]!==I?(Se=H?(0,$.jsxs)(`form`,{className:`flex min-w-0 flex-1 items-center gap-1`,onPointerDown:np,onMouseDown:rp,onSubmit:e=>{e.preventDefault(),te()},children:[(0,$.jsx)(`input`,{ref:V,value:U,onChange:e=>ie(e.target.value),className:`flex-1 min-w-0 bg-transparent typography-ui-label outline-none placeholder:text-muted-foreground`,autoFocus:!0,placeholder:I(`sessions.sidebar.folderItem.namePlaceholder`),onClick:ip,onPointerDown:ap,onMouseDown:op,onKeyDown:e=>{if(e.key===`Escape`){e.stopPropagation(),ne();return}(e.key===` `||e.key===`Enter`)&&e.stopPropagation()}}),(0,$.jsx)(`button`,{type:`submit`,className:`shrink-0 text-muted-foreground hover:text-foreground`,onClick:sp,onPointerDown:cp,onMouseDown:lp,children:(0,$.jsx)(Z,{name:`check`,className:`size-4`})}),(0,$.jsx)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),ne()},onPointerDown:up,onMouseDown:dp,className:`shrink-0 text-muted-foreground hover:text-foreground`,children:(0,$.jsx)(Z,{name:`close`,className:`size-4`})})]}):(0,$.jsxs)(`div`,{className:`min-w-0 flex items-center gap-1.5 flex-1`,children:[(0,$.jsx)(`span`,{className:X(`typography-ui-label font-semibold truncate`,j?`text-primary`:`text-muted-foreground`),children:n.name}),(0,$.jsxs)(`span`,{className:`typography-micro text-muted-foreground/70 flex-shrink-0`,children:[`• `,r.length]}),a?(0,$.jsx)(Z,{name:`arrow-right-s`,className:`h-3.5 w-3.5 flex-shrink-0 text-muted-foreground`}):(0,$.jsx)(Z,{name:`arrow-down-s`,className:`h-3.5 w-3.5 flex-shrink-0 text-muted-foreground`})]}),t[37]=U,t[38]=n.name,t[39]=ne,t[40]=ie,t[41]=te,t[42]=a,t[43]=j,t[44]=H,t[45]=r,t[46]=I,t[47]=Se):Se=t[47];let Ce;t[48]!==ve||t[49]!==xe||t[50]!==Se?(Ce=(0,$.jsxs)(`div`,{className:ve,children:[xe,Se]}),t[48]=ve,t[49]=xe,t[50]=Se,t[51]=Ce):Ce=t[51];let we;t[52]!==O||t[53]!==P||t[54]!==M||t[55]!==n.name||t[56]!==ee||t[57]!==N||t[58]!==c||t[59]!==S||t[60]!==C||t[61]!==H||t[62]!==I?(we=!H&&(!N||P)?(0,$.jsx)(`div`,{className:`flex items-center gap-0.5 px-0.5`,children:(0,$.jsxs)(`div`,{className:X(`flex items-center gap-0.5 transition-opacity`,O?`opacity-100`:`opacity-0 group-hover/folder:opacity-100 group-focus-within/folder:opacity-100`,P&&`absolute right-0.5 top-1/2 z-10 -translate-y-1/2 px-0`),children:[!P&&S?(0,$.jsx)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),S()},className:`inline-flex h-6 w-6 items-center justify-center rounded-md text-muted-foreground hover:text-foreground hover:bg-interactive-hover/50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50`,"aria-label":I(`sessions.sidebar.folderItem.newSessionAria`,{folderName:n.name}),title:I(`sessions.sidebar.project.actions.newSession`),children:(0,$.jsx)(Z,{name:`add`,className:`h-3.5 w-3.5`})}):null,!P&&C&&M===0?(0,$.jsx)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),C()},className:`inline-flex h-6 w-6 items-center justify-center rounded-md text-muted-foreground hover:text-foreground hover:bg-interactive-hover/50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50`,"aria-label":I(`sessions.sidebar.folderItem.newSubfolderAria`,{folderName:n.name}),title:I(`sessions.sidebar.folderItem.newSubfolder`),children:(0,$.jsx)(Z,{name:`folder-add`,className:`h-3.5 w-3.5`})}):null,P?null:(0,$.jsx)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),ee()},className:`inline-flex h-6 w-6 items-center justify-center rounded-md text-muted-foreground hover:text-foreground hover:bg-interactive-hover/50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50`,"aria-label":I(`sessions.sidebar.folderItem.renameAria`,{folderName:n.name}),children:(0,$.jsx)(Z,{name:`pencil-ai`,className:`h-3.5 w-3.5`})}),(0,$.jsx)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),c()},className:`inline-flex h-6 w-6 items-center justify-center rounded-md text-muted-foreground hover:text-destructive hover:bg-interactive-hover/50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50`,"aria-label":I(P?`sessions.sidebar.folderItem.deleteArchivedInFolderAria`:`sessions.sidebar.folderItem.deleteFolderAria`,{folderName:n.name}),children:(0,$.jsx)(Z,{name:`delete-bin`,className:`h-3.5 w-3.5`})})]})}):null,t[52]=O,t[53]=P,t[54]=M,t[55]=n.name,t[56]=ee,t[57]=N,t[58]=c,t[59]=S,t[60]=C,t[61]=H,t[62]=I,t[63]=we):we=t[63];let Te;t[64]!==b||t[65]!==ue||t[66]!==de||t[67]!==fe||t[68]!==pe||t[69]!==me||t[70]!==he||t[71]!==ge||t[72]!==Ce||t[73]!==we?(Te=(0,$.jsxs)(`div`,{ref:b,className:ue,style:de,onClick:fe,role:pe,tabIndex:me,onKeyDown:he,"aria-label":ge,children:[Ce,we]}),t[64]=b,t[65]=ue,t[66]=de,t[67]=fe,t[68]=pe,t[69]=me,t[70]=he,t[71]=ge,t[72]=Ce,t[73]=we,t[74]=Te):Te=t[74];let Ee;t[75]!==P||t[76]!==M||t[77]!==u||t[78]!==d||t[79]!==a||t[80]!==f||t[81]!==l||t[82]!==F||t[83]!==r||t[84]!==i||t[85]!==I?(Ee=a?null:(0,$.jsxs)(`div`,{className:`pb-1`,children:[i,r.length>0?r.map(e=>l(e,M+1,d??null,f??null,P,F,`project`,u?.(e))):i?null:(0,$.jsx)(`div`,{className:`py-1.5 pr-2 text-left typography-micro text-muted-foreground/70`,style:{paddingLeft:er(M+1)},children:I(`sessions.sidebar.folderItem.emptyFolder`)})]}),t[75]=P,t[76]=M,t[77]=u,t[78]=d,t[79]=a,t[80]=f,t[81]=l,t[82]=F,t[83]=r,t[84]=i,t[85]=I,t[86]=Ee):Ee=t[86];let De;return t[87]!==Te||t[88]!==Ee?(De=(0,$.jsxs)(`div`,{className:ce,children:[Te,Ee]}),t[87]=Te,t[88]=Ee,t[89]=De):De=t[89],De});function np(e){return e.stopPropagation()}function rp(e){return e.stopPropagation()}function ip(e){return e.stopPropagation()}function ap(e){return e.stopPropagation()}function op(e){return e.stopPropagation()}function sp(e){return e.stopPropagation()}function cp(e){return e.stopPropagation()}function lp(e){return e.stopPropagation()}function up(e){return e.stopPropagation()}function dp(e){return e.stopPropagation()}var fp=e=>{let t=(0,Ts.c)(21),{sessionId:n,sessionDirectory:r,sessionTitle:i,children:a}=e,o=`session-drag:${n}`,s;t[0]!==r||t[1]!==n||t[2]!==i?(s={type:`session`,sessionId:n,sessionDirectory:r,sessionTitle:i},t[0]=r,t[1]=n,t[2]=i,t[3]=s):s=t[3];let c;t[4]!==o||t[5]!==s?(c={id:o,data:s},t[4]=o,t[5]=s,t[6]=c):c=t[6];let{attributes:l,listeners:u,setNodeRef:d,transform:f,transition:p,isDragging:m}=xa(c),h;t[7]===u?h=t[8]:(h=e=>{e.stopPropagation(),u?.onPointerDown&&u.onPointerDown(e)},t[7]=u,t[8]=h);let g=h,_;t[9]===f?_=t[10]:(_=va.Translate.toString(f),t[9]=f,t[10]=_);let v;t[11]!==_||t[12]!==p?(v={transform:_,transition:p},t[11]=_,t[12]=p,t[13]=v):v=t[13];let y=m?`opacity-30`:void 0,b;return t[14]!==l||t[15]!==a||t[16]!==g||t[17]!==d||t[18]!==v||t[19]!==y?(b=(0,$.jsx)(`div`,{ref:d,...l,onPointerDown:g,style:v,className:y,children:a}),t[14]=l,t[15]=a,t[16]=g,t[17]=d,t[18]=v,t[19]=y,t[20]=b):b=t[20],b},pp=e=>{let t=(0,Ts.c)(11),{folderId:n,children:r}=e,i=`folder-drop:${n}`,a;t[0]===n?a=t[1]:(a={type:`folder`,folderId:n},t[0]=n,t[1]=a);let o;t[2]!==i||t[3]!==a?(o={id:i,data:a},t[2]=i,t[3]=a,t[4]=o):o=t[4];let{setNodeRef:s,isOver:c}=da(o),l;t[5]!==r||t[6]!==c||t[7]!==s?(l=r(s,c),t[5]=r,t[6]=c,t[7]=s,t[8]=l):l=t[8];let u;return t[9]===l?u=t[10]:(u=(0,$.jsx)($.Fragment,{children:l}),t[9]=l,t[10]=u),u},mp=e=>{let t=(0,Ts.c)(26),{scopeKey:n,onSessionDroppedOnFolder:r,sessionIds:i,folderIdBySessionId:a,onSessionsReordered:o,children:s}=e,c;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(c={activationConstraint:{distance:8}},t[0]=c):c=t[0];let l=_a(ua(ha,c)),[u,d]=Q.useState(null),[f,p]=Q.useState(`Session`),[m,h]=Q.useState(null),[g,_]=Q.useState(null);if(!n){let e;return t[1]===s?e=t[2]:(e=(0,$.jsx)($.Fragment,{children:s}),t[1]=s,t[2]=e),e}let v;t[3]!==a||t[4]!==r||t[5]!==o?(v=e=>{d(null),h(null),_(null);let{active:t,over:n}=e;if(!n)return;let i=t.data.current,s=n.data.current;if(i?.type===`session`&&i.sessionId&&s?.type===`folder`&&s.folderId){r(i.sessionId,s.folderId);return}if(i?.type===`session`&&i.sessionId&&s?.type===`session`&&typeof n.id==`string`){let e=n.id.replace(/^session-drag:/,``);Co(i.sessionId,e,a)&&o(i.sessionId,e)}},t[3]=a,t[4]=r,t[5]=o,t[6]=v):v=t[6];let y=v,b,x;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(b=e=>{let t=e.active.data.current;if(t?.type===`session`&&t.sessionId){d(t.sessionId),p(t.sessionTitle??`Session`);let n=e.active.rect.current.initial?.width,r=e.active.rect.current.initial?.height;h(typeof n==`number`?n:null),_(typeof r==`number`?r:null)}},x=()=>{d(null),h(null),_(null)},t[7]=b,t[8]=x):(b=t[7],x=t[8]);let S;t[9]===i?S=t[10]:(S=i.map(hp),t[9]=i,t[10]=S);let C;t[11]!==s||t[12]!==S?(C=(0,$.jsx)(Ca,{items:S,strategy:Sa,children:s}),t[11]=s,t[12]=S,t[13]=C):C=t[13];let w;t[14]!==g||t[15]!==u||t[16]!==f||t[17]!==m?(w=u?(0,$.jsxs)(`div`,{style:{width:m?`${m}px`:`auto`,height:g?`${g}px`:`auto`},className:`flex items-center rounded-lg border border-[var(--interactive-border)] bg-[var(--surface-elevated)] px-2.5 py-1 shadow-none pointer-events-none`,children:[(0,$.jsx)(Z,{name:`sticky-note`,className:`h-4 w-4 text-muted-foreground mr-2 flex-shrink-0`}),(0,$.jsx)(`div`,{className:`min-w-0 flex-1 truncate typography-ui-label font-normal text-foreground`,children:f})]}):null,t[14]=g,t[15]=u,t[16]=f,t[17]=m,t[18]=w):w=t[18];let T;t[19]===w?T=t[20]:(T=(0,$.jsx)(ma,{children:w}),t[19]=w,t[20]=T);let E;return t[21]!==y||t[22]!==l||t[23]!==C||t[24]!==T?(E=(0,$.jsxs)(ga,{sensors:l,collisionDetection:pa,onDragStart:b,onDragCancel:x,onDragEnd:y,children:[C,T]}),t[21]=y,t[22]=l,t[23]=C,t[24]=T,t[25]=E):E=t[25],E};function hp(e){return`session-drag:${e}`}var gp=3e4,_p=e=>{let t=e,n=t.metadata?.openchamber?.titleRefresh,r=ze(e)||0;return[e.title??``,e.share?e.share.url??`1`:``,t.hasChildren?`1`:``,t.parentID??``,t.metadata?.openchamber?.assistant?`1`:``,n?.isGenerating?`1`:``,String(n?.lastError??``),String(n?.failedAt??``),Math.floor(r/gp)].join(`\0`)},vp=(e,t,n)=>{if(!t)return;let r=e=>{let i=e.session.id===t;for(let t of e.children)i=r(t)||i;return i&&n.add(e.session.id),i};for(let t of e)r(t)},yp=(e,t)=>{if(!t)return!1;if(e.session.id===t)return!0;for(let n of e.children)if(yp(n,t))return!0;return!1},bp=e=>e.children.length===0?``:e.children.map(e=>e.children.length===0?e.session.id:`${e.session.id}:${bp(e)}`).join(`|`),xp=(e,t,n,r)=>{if(!t)return null;let i=r?`archived`:`active`,a=null,o=e=>{if(`${n}:${i}:${e.session.id}`===t)return a=e.session.id,!0;for(let t of e.children)if(o(t))return!0;return!1};return e.forEach(e=>o(e)),a},Sp=ne()(re(e=>({displayMode:`minimal`,projectSortOrder:`manual`,setDisplayMode:t=>e({displayMode:t}),setProjectSortOrder:t=>e({projectSortOrder:t})}),{name:`session-display-mode`,storage:P(),version:4,migrate:(e,t)=>{let n=e??{};return t<1?{...n,displayMode:`minimal`,projectSortOrder:`manual`}:t<2||t<3?{...n,projectSortOrder:`manual`}:t<4?{displayMode:n.displayMode??`minimal`,projectSortOrder:n.projectSortOrder??`manual`}:n}}));typeof window<`u`&&t(e=>{c(e)&&Sp.persist.rehydrate()});var Cp=50,wp=30,Tp=28,Ep=(e,t)=>t?e.sessions.some(e=>yp(e,t)):!1,Dp=(e,t,n)=>{let r=e=>{let i=e.session.id;return t.has(i)!==n.has(i)||e.children.some(r)};return e.sessions.some(r)},Op=(e,t,n)=>{let r=e=>{let i=e.session.id;return t.has(i)!==n.has(i)||e.children.some(r)};return e.sessions.some(r)},kp=(e,t,n)=>{let r=i=>{let a=i.session.id,o=e.folderScopeKey??p(e.directory??null);return(o?t[o]?.indexOf(a):-1)!==(o?n[o]?.indexOf(a):-1)||i.children.some(r)};return e.sessions.some(r)},Ap=(e,t,n)=>{let r=e.folderScopeKey??p(e.directory??null);return!!(r&&t[r]!==n[r])},jp=(e,t,n)=>{let r=e.isArchivedBucket?`archived`:`active`,i=e=>{let a=`project:${r}:${e.session.id}`;return t.has(a)!==n.has(a)||e.children.some(i)};return e.sessions.some(i)},Mp=(e,t,n)=>{let r=e=>{let i=e.session.id,a=t.get(i)??e.session,o=n.get(i)??e.session;return a!==o&&_p(a)!==_p(o)||e.children.some(r)};return e.sessions.some(r)},Np=e=>{if(e.projectId)return e.projectRepoStatus.has(e.projectId)?e.projectRepoStatus.get(e.projectId):void 0},Pp=e=>{let t=new WeakMap,n=e=>{t.set(e,bp(e));for(let t of e.children)n(t)};return e.forEach(n),t},Fp=e=>{let t=[],n=e=>{e.forEach(e=>{t.push(e.session),e.children.length>0&&n(e.children)})};return n(e),t},Ip=(e,t)=>{if(e.group!==t.group||e.groupKey!==t.groupKey||e.isArchivedLoading!==t.isArchivedLoading||e.projectId!==t.projectId||e.hideGroupLabel!==t.hideGroupLabel||e.compactBodyPadding!==t.compactBodyPadding||e.groupSearchDataByGroup!==t.groupSearchDataByGroup||e.visibleSessionCount!==t.visibleSessionCount||e.collapsedGroups!==t.collapsedGroups&&e.collapsedGroups.has(e.groupKey)!==t.collapsedGroups.has(t.groupKey)||e.projectRepoStatus!==t.projectRepoStatus&&Np(e)!==Np(t)||e.pinnedSessionIds!==t.pinnedSessionIds&&Dp(t.group,e.pinnedSessionIds,t.pinnedSessionIds)||e.expandedParents!==t.expandedParents&&jp(t.group,e.expandedParents,t.expandedParents)||e.sessionOrderByScope!==t.sessionOrderByScope&&kp(t.group,e.sessionOrderByScope,t.sessionOrderByScope)||e.sessionOrderActivityByScope!==t.sessionOrderActivityByScope&&Ap(t.group,e.sessionOrderActivityByScope,t.sessionOrderActivityByScope)||e.currentSessionId!==t.currentSessionId&&(Ep(e.group,e.currentSessionId)||Ep(t.group,t.currentSessionId))||e.editingId!==t.editingId&&(Ep(e.group,e.editingId)||Ep(t.group,t.editingId))||e.editTitle!==t.editTitle&&(Ep(e.group,e.editingId)||Ep(t.group,t.editingId)))return!1;if(e.openSidebarMenuKey!==t.openSidebarMenuKey){let n=xp(e.group.sessions,e.openSidebarMenuKey,`project`,!!e.group.isArchivedBucket),r=xp(t.group.sessions,t.openSidebarMenuKey,`project`,!!t.group.isArchivedBucket);if(n||r)return!1}if(e.liveSessionById!==t.liveSessionById&&Mp(t.group,e.liveSessionById,t.liveSessionById)||e.alwaysVisibleSessionIds!==t.alwaysVisibleSessionIds&&Op(t.group,e.alwaysVisibleSessionIds,t.alwaysVisibleSessionIds))return!1;if(e.prVisualStateByDirectoryBranch!==t.prVisualStateByDirectoryBranch){let n=e.group?.directory&&e.group?.branch?e.prVisualStateByDirectoryBranch.get(`${e.group.directory}::${e.group.branch.trim()}`):void 0,r=t.group?.directory&&t.group?.branch?t.prVisualStateByDirectoryBranch.get(`${t.group.directory}::${t.group.branch.trim()}`):void 0;if(!Object.is(n,r))return!1}return e.hasSessionSearchQuery===t.hasSessionSearchQuery&&e.normalizedSessionSearchQuery===t.normalizedSessionSearchQuery&&e.collapsedFolderIds===t.collapsedFolderIds&&e.toggleFolderCollapse===t.toggleFolderCollapse&&e.renameFolder===t.renameFolder&&e.deleteFolder===t.deleteFolder&&e.showDeletionDialog===t.showDeletionDialog&&e.setDeleteFolderConfirm===t.setDeleteFolderConfirm&&e.renderSessionNode===t.renderSessionNode&&e.lastRepoStatus===t.lastRepoStatus&&e.showMoreGroupSessions===t.showMoreGroupSessions&&e.resetGroupSessionLimit===t.resetGroupSessionLimit&&e.mobileVariant===t.mobileVariant&&e.alwaysShowActions===t.alwaysShowActions&&e.activeProjectId===t.activeProjectId&&e.setActiveProjectIdOnly===t.setActiveProjectIdOnly&&e.setActiveMainTab===t.setActiveMainTab&&e.setSessionSwitcherOpen===t.setSessionSwitcherOpen&&e.openNewSessionDraft===t.openNewSessionDraft&&e.addSessionToFolder===t.addSessionToFolder&&e.createFolderAndStartRename===t.createFolderAndStartRename&&e.renamingFolderId===t.renamingFolderId&&e.renameFolderDraft===t.renameFolderDraft&&e.setRenameFolderDraft===t.setRenameFolderDraft&&e.setRenamingFolderId===t.setRenamingFolderId&&e.onToggleCollapsedGroup===t.onToggleCollapsedGroup&&e.dragHandleProps===t.dragHandleProps&&e.scrollContainerRef===t.scrollContainerRef&&e.shortcutTargetSessionId===t.shortcutTargetSessionId&&e.shortcutTargetVisibleIndex===t.shortcutTargetVisibleIndex};function Lp(e){let{t}=Fe(),{group:n,groupKey:r,isArchivedLoading:i=!1,projectId:a,hideGroupLabel:o,hasSessionSearchQuery:s,normalizedSessionSearchQuery:c,groupSearchDataByGroup:l,visibleSessionCount:u,collapsedGroups:d,collapsedFolderIds:f,toggleFolderCollapse:h,renameFolder:g,deleteFolder:_,showDeletionDialog:v,setDeleteFolderConfirm:y,renderSessionNode:b,projectRepoStatus:x,lastRepoStatus:S,showMoreGroupSessions:C,resetGroupSessionLimit:w,mobileVariant:T,alwaysShowActions:E,activeProjectId:D,setActiveProjectIdOnly:O,setActiveMainTab:k,setSessionSwitcherOpen:A,openNewSessionDraft:j,addSessionToFolder:M,createFolderAndStartRename:N,renamingFolderId:P,renameFolderDraft:F,setRenameFolderDraft:I,setRenamingFolderId:L,pinnedSessionIds:R,expandedParents:z,sessionOrderByScope:B,sessionOrderActivityByScope:V,onReorderSessions:H,currentSessionId:U,shortcutTargetSessionId:W=null,shortcutTargetVisibleIndex:ee=null,editingId:G,openSidebarMenuKey:te,prVisualStateByDirectoryBranch:K,onToggleCollapsedGroup:ne,dragHandleProps:re,compactBodyPadding:ie=!1,scrollContainerRef:ae,alwaysVisibleSessionIds:oe}=e,se=n.folderScopeKey??p(n.directory??null),q=Q.useMemo(()=>No(n.sessions,se?B[se]:void 0,se?V[se]:void 0,R),[se,n.sessions,R,V,B]),ce=s?l.get(n):null,le=Sp(e=>e.displayMode),ue=Bt(e=>e.foldersMap),de=le===`minimal`&&!m(),fe=n.isArchivedBucket?null:p(n.directory??null),pe=Tt(e=>fe?e.activePaginationByDirectory.get(fe):void 0),me=!s&&d.has(r),he=jo(),ge=Math.max(he,u??he),_e=s?ce?.groupMatches===!0:!1,ve=s,ye=Q.useMemo(()=>[...ve?ce?.filteredNodes??[]:n.sessions].sort(q),[q,n.sessions,ce?.filteredNodes,ve]),be=Q.useMemo(()=>se?ue[se]??[]:[],[se,ue]),xe=Q.useMemo(()=>{let e=new Map,t=n=>{n.forEach(n=>{e.set(n.session.id,n),n.children.length>0&&t(n.children)})};return t(ye),e},[ye]),Se=Q.useMemo(()=>be.map(e=>({folder:e,nodes:e.sessionIds.map(e=>xe.get(e)).filter(e=>!!e).sort(q)})),[be,xe,q]),Ce=Q.useMemo(()=>{let e=new Map(Se.map(e=>[e.folder.id,e])),t=new Map;for(let{folder:e}of Se){if(!e.parentId)continue;let n=t.get(e.parentId);n?n.push(e.id):t.set(e.parentId,[e.id])}let r=new Map,i=a=>{let o=r.get(a);if(o!==void 0)return o;let l=e.get(a);if(!l)return r.set(a,!1),!1;let u=t.get(a)??[];if(n.isArchivedBucket&&l.nodes.length===0){let e=u.some(e=>i(e));return r.set(a,e),e}if(!s||l.folder.name.toLowerCase().includes(c)||l.nodes.length>0)return r.set(a,!0),!0;let d=u.some(e=>i(e));return r.set(a,d),d};return Se.filter(({folder:e})=>i(e.id))},[Se,n.isArchivedBucket,s,c]),we=Q.useMemo(()=>new Set(Ce.flatMap(e=>e.folder.sessionIds)),[Ce]),Te=Q.useMemo(()=>ye.filter(e=>!we.has(e.session.id)),[ye,we]),Ee=Q.useMemo(()=>Ce.filter(({folder:e})=>!e.parentId),[Ce]),De=`project`,Oe=Q.useMemo(()=>{let e=new Set;return vp(ye,U,e),Ce.forEach(({nodes:t})=>{vp(t,U,e)}),e},[ye,Ce,U]),ke=Q.useMemo(()=>{let e=new Set;return vp(ye,G,e),Ce.forEach(({nodes:t})=>{vp(t,G,e)}),e},[ye,Ce,G]),je=Q.useMemo(()=>{if(!te)return null;let e=xp(ye,te,De,!!n.isArchivedBucket);if(e)return e;for(let{nodes:e}of Ce){let t=xp(e,te,De,!!n.isArchivedBucket);if(t)return t}return null},[te,ye,Ce,n.isArchivedBucket]),Ne=Q.useMemo(()=>Pp(ye),[ye]),Pe=Q.useMemo(()=>{let e=new WeakMap;return Ce.forEach(({nodes:t})=>{t.forEach(t=>e.set(t,bp(t)))}),e},[Ce]),Ie=Q.useMemo(()=>e=>Ne.get(e)??Pe.get(e)??``,[Ne,Pe]),Le=Q.useMemo(()=>e=>({subtreeContainsActive:Oe,subtreeContainsEditing:ke,menuOpenSessionId:je,nodeStructureKey:Ie(e)}),[Oe,ke,je,Ie]),Re=Te.length,ze=n.isArchivedBucket||s?Te:Te.slice(0,ge),Ve=n.isArchivedBucket||s?Te:Eo(Te,ge,oe),He=Re-Ve.length,Ue=Q.useMemo(()=>is({folders:Ce,visibleUngroupedNodes:Ve,collapsedFolderIds:f,hasSessionSearchQuery:s}),[Ce,f,s,Ve]),We=pe?.hasMore===!0,Ge=pe?.loadingMore===!0,Ke=u===void 0||u<=he,qe=!n.isArchivedBucket&&!s&&Re>he&&!Ke,Je=n.isArchivedBucket===!0&&!s&&Ve.length>=Cp,Ye=n.isArchivedBucket!==!0&&!s&&Ve.length>=wp,Xe=Je||Ye,J=n.isArchivedBucket?`archived`:`active`,Ze=Xe&&Ve.some(e=>{if(e.children.length===0)return!1;let t=`project:${J}:${e.session.id}`;return z.has(t)}),Qe=Q.useRef(null),[$e,et]=Q.useState(null),[,tt]=Q.useState(0);Me(Xe?Qe:null,()=>{tt(e=>e+1)}),Q.useLayoutEffect(()=>{if(!Xe){et(e=>e===null?e:null);return}let e=Qe.current;if(!e){et(e=>e===null?e:null);return}let t=null,n=ae?.current??null;if(n&&n.contains(e))t=n;else{let n=e.parentElement;for(;n;){let e=window.getComputedStyle(n);if(e.overflowY===`auto`||e.overflowY===`scroll`){t=n;break}n=n.parentElement}}if(!t){et(e=>e===null?e:null);return}let r=e.getBoundingClientRect().top-t.getBoundingClientRect().top+t.scrollTop;et(n=>n?.container===e&&n.scrollElement===t&&Math.abs(n.scrollMargin-r)<1?n:{container:e,scrollElement:t,scrollMargin:r})});let nt=Qe.current,rt=ae?.current??null,it=Xe&&$e!==null&&$e.container===nt&&$e.scrollElement.contains(nt)&&(rt===null||$e.scrollElement===rt),at=$e?.scrollElement??null,ot=$e?.scrollMargin??0,st=ka({count:Ve.length,enabled:it,getScrollElement:()=>at,initialOffset:()=>at?.scrollTop??0,estimateSize:()=>Tp,overscan:Ze?20:8,scrollMargin:ot,getItemKey:e=>Ve[e]?.session.id??e}),ct=wo(Ve,W,ee);Q.useLayoutEffect(()=>{!it||!W||ct===null||st.getVirtualItems().some(e=>e.index===ct)||st.scrollToIndex(ct,{align:`auto`,behavior:`auto`})},[ot,st,W,ct,it]);let lt=Q.useMemo(()=>Fp(ye),[ye]),ut=Q.useMemo(()=>{if(!n.isArchivedBucket)return new Map;let e=new Map,t=new Map;for(let{folder:e}of Ce){if(!e.parentId)continue;let n=t.get(e.parentId)??[];n.push(e.id),t.set(e.parentId,n)}let r=(e,n)=>{if(n.has(e))return[];n.add(e);let i=Ce.find(({folder:t})=>t.id===e),a=i?Fp(i.nodes):[],o=t.get(e)??[];for(let e of o)a.push(...r(e,n));return a};for(let{folder:t}of Ce)e.set(t.id,r(t.id,new Set));return e},[Ce,n.isArchivedBucket]),dt=Q.useMemo(()=>({projectLabel:n.isMain?null:n.label,branchLabel:n.branch&&n.branch!==`HEAD`?n.branch:null}),[n.branch,n.isMain,n.label]),ft=Ae(e=>{e.preventDefault(),e.stopPropagation();let t=p(n.directory??null),r=n.branch?.trim()??null,i=t&&r?K.get(`${t}::${r}`)?.url??null:null;i&&wa(i)});if(s&&!_e&&Ee.length===0&&Te.length===0)return null;let pt=a&&x.has(a)?!!x.get(a):S,mt=p(n.directory??null),ht=n.branch?.trim()??null,gt=mt&&ht?K.get(`${mt}::${ht}`)??null:null,_t=!!(gt&&n.branch),vt=!gt&&!n.isMain&&!!n.branch,yt=gt&>.state===`open`&>.checks?t(`sessions.sidebar.group.pr.checksPassed`,{success:gt.checks.success,total:gt.checks.total}):null,bt=gt&>.state===`open`&>.checks?[gt.checks.failure>0?t(`sessions.sidebar.group.pr.failingCount`,{count:gt.checks.failure}):null,gt.checks.pending>0?t(`sessions.sidebar.group.pr.pendingCount`,{count:gt.checks.pending}):null].filter(e=>!!e).join(`, `):null,xt=gt&>.state===`open`?gt.mergeableState===`blocked`||gt.mergeableState===`dirty`?t(`sessions.sidebar.group.pr.conflictsOrBlocked`):gt.mergeableState===`clean`||gt.canMerge===!0?t(`sessions.sidebar.group.pr.mergeable`):null:null,St=gt&>.state===`open`&>.mergeableState?t(`sessions.sidebar.group.pr.mergeState`,{state:gt.mergeableState}):null,Ct=gt?.base??null,wt=gt?.head??null,Et=(()=>{if(!gt)return n.branch&&tr(n.branch,n.label)?{label:n.branch,color:null}:null;switch(gt.visualState){case`merged`:return{label:t(`sessions.sidebar.group.pr.status.merged`),color:`var(--pr-merged)`};case`open`:return gt.canMerge===!0||gt.mergeableState===`clean`||gt.checks?.state===`success`?{label:t(`sessions.sidebar.group.pr.status.readyToMerge`),color:`var(--pr-open)`}:{label:t(`sessions.sidebar.group.pr.status.open`),color:`var(--pr-open)`};case`blocked`:return{label:gt.mergeableState===`dirty`?t(`sessions.sidebar.group.pr.status.mergeConflicts`):t(`sessions.sidebar.group.pr.status.mergeBlocked`),color:`var(--pr-blocked)`};case`draft`:return{label:t(`sessions.sidebar.group.pr.status.draft`),color:`var(--pr-draft)`};case`closed`:return{label:t(`sessions.sidebar.group.pr.status.closed`),color:`var(--pr-closed)`};default:return null}})(),Dt=(e,t,r)=>{let i=Ce.filter(({folder:t})=>t.parentId===e.id),o=i.length>0?(0,$.jsx)($.Fragment,{children:i.map(({folder:e,nodes:t})=>Dt(e,t,r+1))}):void 0,c=ut.get(e.id)??[];return(0,$.jsx)(pp,{folderId:e.id,children:(i,l)=>(0,$.jsx)(tp,{folder:e,sessions:t,subFolderItems:o,isCollapsed:!s&&f.has(e.id),onToggle:()=>h(e.id),onRename:t=>{se&&g(se,e.id,t)},onDelete:()=>{if(n.isArchivedBucket){Be.requestDelete({sessions:c,mode:`session`});return}if(!se)return;if(!v){_(se,e.id);return}let r=Ce.filter(({folder:t})=>t.parentId===e.id).length,i=t.length;y({scopeKey:se,folderId:e.id,folderName:e.name,subFolderCount:r,sessionCount:i})},renderSessionNode:b,getRenderExtras:Ie?e=>({subtreeContainsActive:Oe,subtreeContainsEditing:ke,menuOpenSessionId:je,nodeStructureKey:Ie(e),childRenderExtrasFor:Le}):void 0,groupDirectory:n.directory,projectId:a,mobileVariant:T,alwaysShowActions:E,isRenaming:P===e.id,renameDraft:P===e.id?F:void 0,onRenameDraftChange:e=>I(e),onRenameSave:()=>{let t=F.trim();t&&se&&g(se,e.id,t),L(null),I(``)},onRenameCancel:()=>{L(null),I(``)},droppableRef:i,isDropTarget:l,depth:r,onNewSession:()=>{a&&a!==D&&O(a),k(`chat`),T&&A(!1),j({directoryOverride:n.directory,targetFolderId:e.id})},onNewSubFolder:r===0?()=>{se&&N(se,e.id)}:void 0,hideActions:!1,archivedBucket:n.isArchivedBucket===!0,sessionSecondaryMeta:{projectLabel:e.name,branchLabel:n.branch&&n.branch!==`HEAD`?n.branch:null}})},e.id)},Ot=+!o,kt=o?1:Ot,Y=()=>Ee.map(({folder:e,nodes:t})=>Dt(e,t,kt)),At=!!(!n.isMain&&n.worktree),jt=E?At?`pr-14`:`pr-7`:de?At?`pr-2 group-hover/gh:pr-14 group-focus-within/gh:pr-14`:`pr-2`:At?`pr-5 group-hover/gh:pr-14 group-focus-within/gh:pr-14`:`pr-5`,Mt=(0,$.jsxs)(mp,{scopeKey:se,sessionIds:Ue.sessionIds,folderIdBySessionId:Ue.folderIdBySessionId,onSessionDroppedOnFolder:(e,t)=>{se&&M(se,t,e)},onSessionsReordered:(e,t)=>{H(Ue.sessionIds,e,t,Mo(n.sessions.map(e=>e.session)))},children:[Y(),Xe?(0,$.jsx)(`div`,{ref:Qe,children:it?(0,$.jsx)(`div`,{style:{height:st.getTotalSize(),position:`relative`},children:st.getVirtualItems().map(e=>{let t=Ve[e.index];return t?(0,$.jsx)(`div`,{"data-index":e.index,ref:st.measureElement,className:`[&_[data-session-row]]:my-px`,style:{position:`absolute`,top:0,left:0,width:`100%`,transform:`translateY(${e.start-ot}px)`},children:b(t,kt,n.directory,a,n.isArchivedBucket===!0,dt,`project`,{subtreeContainsActive:Oe,subtreeContainsEditing:ke,menuOpenSessionId:je,nodeStructureKey:Ie(t),childRenderExtrasFor:Le})},t.session.id):null})}):Ve.map(e=>b(e,kt,n.directory,a,n.isArchivedBucket===!0,dt,`project`,{subtreeContainsActive:Oe,subtreeContainsEditing:ke,menuOpenSessionId:je,nodeStructureKey:Ie(e),childRenderExtrasFor:Le}))}):Ve.map(e=>b(e,kt,n.directory,a,n.isArchivedBucket===!0,dt,`project`,{subtreeContainsActive:Oe,subtreeContainsEditing:ke,menuOpenSessionId:je,nodeStructureKey:Ie(e),childRenderExtrasFor:Le})),Re===0&&Ce.length===0?(0,$.jsx)(`div`,{className:kr,style:{paddingLeft:er(kt)},children:i?t(`sessions.sidebar.project.loadingSessions`):n.isArchivedBucket?t(`sessions.sidebar.group.empty.noArchivedSessions`):t(`sessions.sidebar.group.empty.noSessionsInWorkspace`)}):null,He>0||We||qe?(0,$.jsxs)(`div`,{className:X(kr,`flex w-full items-center gap-3 text-muted-foreground/60`),style:{paddingLeft:er(kt)},children:[He>0||We?(0,$.jsx)(`button`,{type:`button`,onClick:()=>C(r,ze.length,Re),disabled:Ge,className:X(`text-left transition-colors hover:text-muted-foreground/80 disabled:pointer-events-none`,Ge&&`animate-pulse`),children:t(`sessions.sidebar.group.showMore`)}):null,qe?(0,$.jsx)(`button`,{type:`button`,onClick:()=>w(r),className:`text-left transition-colors hover:text-muted-foreground/80`,children:t(`sessions.sidebar.group.showFewer`)}):null]}):null]}),Nt=o?ie?`pb-0`:`pb-0.5`:ie?`pb-1`:`pb-1.5`,Pt=er(Ot);return o?(0,$.jsx)(`div`,{className:`oc-group`,children:(0,$.jsx)(`div`,{className:X(`oc-group-body`,Nt),children:Mt})}):(0,$.jsxs)(`div`,{className:`oc-group`,children:[(0,$.jsxs)(`div`,{"data-mobile-press-feedback":re?`none`:void 0,className:X(`group/gh relative flex min-w-0 cursor-pointer items-start justify-between gap-1.5 rounded-lg py-1.5 pr-2`,Kn),style:{paddingLeft:Pt},onClick:()=>ne(r),role:`button`,tabIndex:0,onKeyDown:e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),ne(r))},"aria-label":t(me?`sessions.sidebar.group.expandAria`:`sessions.sidebar.group.collapseAria`,{label:n.label}),"aria-expanded":!me,children:[(0,$.jsx)(`div`,{ref:re?.setActivatorNodeRef,className:X(`min-w-0 flex flex-1 items-start gap-1.5 overflow-hidden transition-[padding] cursor-grab active:cursor-grabbing`,jt),...re?.listeners??{},children:(0,$.jsxs)(`div`,{className:`min-w-0 flex flex-1 flex-col justify-center gap-0.5 overflow-hidden`,children:[(0,$.jsx)(`p`,{className:`text-[14px] font-normal truncate text-foreground/92`,children:_t&>?(0,$.jsxs)(`span`,{className:`inline-flex min-w-0 max-w-full items-center`,children:[(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsxs)(`span`,{className:`inline-flex shrink-0 items-center gap-1 leading-none align-middle`,children:[(0,$.jsxs)(`span`,{className:`inline-flex h-3.5 w-3.5 shrink-0 items-center justify-center`,children:[(0,$.jsx)(Z,{name:`git-branch`,className:X(`h-3.5 w-3.5 shrink-0`,E?`hidden`:`group-hover/gh:hidden`)}),(0,$.jsx)(`span`,{className:X(`h-3.5 w-3.5 items-center justify-center`,E?`inline-flex`:`hidden group-hover/gh:inline-flex`),children:me?(0,$.jsx)(Z,{name:`arrow-right-s`,className:`h-3.5 w-3.5`}):(0,$.jsx)(Z,{name:`arrow-down-s`,className:`h-3.5 w-3.5`})})]}),gt.url?(0,$.jsxs)(`button`,{type:`button`,className:`inline-flex shrink-0 items-center leading-none`,onMouseDown:e=>e.stopPropagation(),onClick:ft,children:[`#`,gt.number]}):(0,$.jsxs)(`span`,{className:`inline-flex shrink-0 items-center leading-none`,children:[`#`,gt.number]})]})}),(0,$.jsx)(Zr,{side:`top`,sideOffset:6,align:`start`,className:`max-w-sm`,children:(0,$.jsxs)(`div`,{className:`space-y-1 text-xs`,children:[Ct||wt?(0,$.jsx)(`div`,{className:`text-muted-foreground truncate`,children:Ct&&wt?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`span`,{children:Ct}),(0,$.jsx)(Z,{name:`arrow-left-long`,className:`mx-0.5 inline h-3 w-3 align-[-2px]`}),(0,$.jsx)(`span`,{children:wt})]}):(0,$.jsx)(`span`,{children:Ct??wt??``})}):null,St?(0,$.jsx)(`div`,{className:`text-muted-foreground truncate`,children:St}):null,xt||yt?(0,$.jsxs)(`div`,{className:`text-muted-foreground truncate`,children:[xt??``,xt&&yt?` • `:``,yt??``,bt?` (${bt})`:``]}):null]})})]}),(0,$.jsx)(`span`,{className:`ml-1 min-w-0 flex-1 truncate leading-none align-middle`,children:n.branch})]}):n.isArchivedBucket?(0,$.jsxs)(`span`,{className:`inline-flex min-w-0 max-w-full items-center gap-1`,children:[(0,$.jsxs)(`span`,{className:`inline-flex h-3.5 w-3.5 shrink-0 items-center justify-center`,children:[(0,$.jsx)(Z,{name:`archive`,className:X(`h-3.5 w-3.5 shrink-0`,E?`hidden`:`group-hover/gh:hidden`)}),(0,$.jsx)(`span`,{className:X(`h-3.5 w-3.5 items-center justify-center`,E?`inline-flex`:`hidden group-hover/gh:inline-flex`),children:me?(0,$.jsx)(Z,{name:`arrow-right-s`,className:`h-3.5 w-3.5`}):(0,$.jsx)(Z,{name:`arrow-down-s`,className:`h-3.5 w-3.5`})})]}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:Xn(n.label,c)})]}):!n.isMain||n.worktree?(0,$.jsxs)(`span`,{className:`inline-flex min-w-0 max-w-full items-center gap-1`,children:[(0,$.jsxs)(`span`,{className:`inline-flex h-3.5 w-3.5 shrink-0 items-center justify-center`,children:[(0,$.jsx)(Z,{name:`git-branch`,className:X(`h-3.5 w-3.5 shrink-0`,E?`hidden`:`group-hover/gh:hidden`)}),(0,$.jsx)(`span`,{className:X(`h-3.5 w-3.5 items-center justify-center`,E?`inline-flex`:`hidden group-hover/gh:inline-flex`),children:me?(0,$.jsx)(Z,{name:`arrow-right-s`,className:`h-3.5 w-3.5`}):(0,$.jsx)(Z,{name:`arrow-down-s`,className:`h-3.5 w-3.5`})})]}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:Xn(n.label,c)})]}):Xn(n.label,c)}),vt&&Et?(0,$.jsxs)(`span`,{className:X(`inline-flex min-w-0 items-center gap-1.5 leading-tight`,!Et.color&&`text-muted-foreground`),style:Et.color?{color:Et.color}:void 0,children:[n.isArchivedBucket?(0,$.jsx)(Z,{name:`archive`,className:`h-3.5 w-3.5 flex-shrink-0`}):!n.isMain||pt?_t&>?(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`span`,{className:`inline-flex h-3.5 w-3.5 flex-shrink-0 items-center justify-center`,children:(0,$.jsx)(Z,{name:`git-branch`,className:`h-3.5 w-3.5`})})}),(0,$.jsx)(Zr,{side:`top`,sideOffset:6,align:`start`,className:`max-w-sm`,children:(0,$.jsxs)(`div`,{className:`space-y-1 text-xs`,children:[Ct||wt?(0,$.jsx)(`div`,{className:`text-muted-foreground truncate`,children:Ct&&wt?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`span`,{children:Ct}),(0,$.jsx)(Z,{name:`arrow-left-long`,className:`mx-0.5 inline h-3 w-3 align-[-2px]`}),(0,$.jsx)(`span`,{children:wt})]}):(0,$.jsx)(`span`,{children:Ct??wt??``})}):null,St?(0,$.jsx)(`div`,{className:`text-muted-foreground truncate`,children:St}):null,xt||yt?(0,$.jsxs)(`div`,{className:`text-muted-foreground truncate`,children:[xt??``,xt&&yt?` • `:``,yt??``,bt?` (${bt})`:``]}):null]})})]}):(0,$.jsx)(Z,{name:`git-branch`,className:`h-3.5 w-3.5 flex-shrink-0`}):null,(0,$.jsx)(`span`,{className:`min-w-0 truncate text-[11px] font-medium`,children:Et.label})]}):null]})}),n.isArchivedBucket&<.length>0?(0,$.jsx)(`div`,{className:X(`absolute right-0.5 top-1/2 -translate-y-1/2 z-10 transition-opacity`,E?`opacity-100`:`opacity-0 group-hover/gh:opacity-100 group-focus-within/gh:opacity-100`),children:(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),Be.requestDelete({sessions:lt,mode:`session`})},className:`inline-flex h-6 w-6 items-center justify-center rounded-md text-muted-foreground hover:text-destructive hover:bg-interactive-hover/50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50`,"aria-label":t(`sessions.sidebar.group.actions.deleteArchivedInGroupAria`,{label:n.label}),children:(0,$.jsx)(Z,{name:`delete-bin`,className:`h-4 w-4`})})}),(0,$.jsx)(Zr,{side:`bottom`,sideOffset:4,children:(0,$.jsx)(`p`,{children:t(`sessions.sidebar.group.actions.deleteArchivedSessions`)})})]})}):null,n.directory&&!n.isMain&&n.worktree?(0,$.jsx)(`div`,{className:X(`absolute right-7 top-1/2 -translate-y-1/2 z-10 transition-opacity`,E?`opacity-100`:`opacity-0 group-hover/gh:opacity-100 group-focus-within/gh:opacity-100`),children:(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),Be.requestDelete({sessions:lt,mode:`worktree`,worktree:n.worktree})},className:`inline-flex h-6 w-6 items-center justify-center rounded-md text-muted-foreground hover:text-destructive hover:bg-interactive-hover/50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50`,"aria-label":t(`sessions.sidebar.group.actions.deleteGroupAria`,{label:n.label}),children:(0,$.jsx)(Z,{name:`delete-bin`,className:`h-4 w-4`})})}),(0,$.jsx)(Zr,{side:`bottom`,sideOffset:4,children:(0,$.jsx)(`p`,{children:t(`sessions.sidebar.group.actions.deleteWorktree`)})})]})}):null,n.directory?(0,$.jsx)(`div`,{className:X(`absolute right-0.5 top-1/2 -translate-y-1/2 z-10 transition-opacity`,E?`opacity-100`:`opacity-0 group-hover/gh:opacity-100 group-focus-within/gh:opacity-100`),children:(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),a&&a!==D&&O(a),k(`chat`),T&&A(!1),j({directoryOverride:n.directory})},className:`inline-flex h-6 w-6 items-center justify-center rounded-md text-muted-foreground hover:text-foreground hover:bg-interactive-hover/50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50`,"aria-label":t(`sessions.sidebar.group.actions.newDraftInGroupAria`,{label:n.label}),children:(0,$.jsx)(Z,{name:`add`,className:`h-4 w-4`})})}),(0,$.jsx)(Zr,{side:`bottom`,sideOffset:4,children:(0,$.jsx)(`p`,{children:t(`sessions.sidebar.project.actions.newDraftSession`)})})]})}):null]}),me?null:(0,$.jsx)(`div`,{className:X(`oc-group-body`,Nt),children:Mt})]})}var Rp=Q.memo(Lp,Ip);function zp(e){let t=(0,Ts.c)(36),{t:n}=Fe(),{hideDirectoryControls:r,isSessionSearchOpen:i,setIsSessionSearchOpen:a,sessionSearchInputRef:o,sessionSearchQuery:s,setSessionSearchQuery:c,hasSessionSearchQuery:l,searchMatchCount:u}=e;if(r||!i)return null;let d;t[0]!==l||t[1]!==u||t[2]!==n?(d=l?(0,$.jsx)(`span`,{children:n(u===1?`sessions.sidebar.header.search.matchCountSingle`:`sessions.sidebar.header.search.matchCountPlural`,{count:u})}):(0,$.jsx)(`span`,{}),t[0]=l,t[1]=u,t[2]=n,t[3]=d):d=t[3];let f;t[4]===n?f=t[5]:(f=n(`sessions.sidebar.header.search.escapeHint`),t[4]=n,t[5]=f);let p;t[6]===f?p=t[7]:(p=(0,$.jsx)(`span`,{children:f}),t[6]=f,t[7]=p);let m;t[8]!==d||t[9]!==p?(m=(0,$.jsxs)(`div`,{className:`mb-1 flex items-center justify-between px-0.5 typography-micro text-muted-foreground/80`,children:[d,p]}),t[8]=d,t[9]=p,t[10]=m):m=t[10];let h;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(h=(0,$.jsx)(Z,{name:`search`,className:`pointer-events-none absolute left-2 top-1/2 h-4 w-4 -translate-y-1/2 text-muted-foreground`}),t[11]=h):h=t[11];let g;t[12]===c?g=t[13]:(g=e=>c(e.target.value),t[12]=c,t[13]=g);let _;t[14]===n?_=t[15]:(_=n(`sessions.sidebar.header.search.placeholder`),t[14]=n,t[15]=_);let v;t[16]!==l||t[17]!==a||t[18]!==c?(v=e=>{e.key===`Escape`&&(e.stopPropagation(),l?c(``):a(!1))},t[16]=l,t[17]=a,t[18]=c,t[19]=v):v=t[19];let y;t[20]!==o||t[21]!==s||t[22]!==g||t[23]!==_||t[24]!==v?(y=(0,$.jsx)(`input`,{ref:o,value:s,onChange:g,placeholder:_,className:`h-8 w-full rounded-md border border-border bg-transparent pl-8 pr-8 typography-ui-label text-foreground outline-none focus-visible:ring-2 focus-visible:ring-primary/50`,onKeyDown:v}),t[20]=o,t[21]=s,t[22]=g,t[23]=_,t[24]=v,t[25]=y):y=t[25];let b;t[26]!==s.length||t[27]!==c||t[28]!==n?(b=s.length>0?(0,$.jsx)(`button`,{type:`button`,onClick:()=>c(``),className:`absolute right-1 top-1/2 inline-flex h-6 w-6 -translate-y-1/2 items-center justify-center rounded-md text-muted-foreground hover:bg-interactive-hover/60 hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50`,"aria-label":n(`sessions.sidebar.header.search.clear`),children:(0,$.jsx)(Z,{name:`close`,className:`h-3.5 w-3.5`})}):null,t[26]=s.length,t[27]=c,t[28]=n,t[29]=b):b=t[29];let x;t[30]!==y||t[31]!==b?(x=(0,$.jsxs)(`div`,{className:`relative`,children:[h,y,b]}),t[30]=y,t[31]=b,t[32]=x):x=t[32];let S;return t[33]!==x||t[34]!==m?(S=(0,$.jsx)(`div`,{className:`select-none flex-shrink-0 px-3 py-1`,children:(0,$.jsxs)(`div`,{className:`pb-1`,children:[m,x]})}),t[33]=x,t[34]=m,t[35]=S):S=t[35],S}function Bp(e){let t=(0,Ts.c)(13),{title:n,accessory:r,isFirst:i,onToggle:a,expanded:o,className:s}=e,c=i!==void 0&&i?`pt-1 pb-1`:`pt-4 pb-1`,l;t[0]!==s||t[1]!==c?(l=X(`group/section flex w-full items-center gap-1 px-2`,c,s),t[0]=s,t[1]=c,t[2]=l):l=t[2];let u;t[3]!==o||t[4]!==a||t[5]!==n?(u=a?(0,$.jsxs)(`button`,{type:`button`,onClick:a,className:`group/toggle flex min-w-0 flex-1 items-center gap-1 rounded-md text-left focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50`,"aria-expanded":o,children:[(0,$.jsx)(`span`,{className:`typography-micro font-normal tracking-wide text-muted-foreground/80`,children:n}),(0,$.jsx)(Z,{name:o?`arrow-down-s`:`arrow-right-s`,className:`size-3 shrink-0 opacity-0 transition-opacity group-hover/toggle:opacity-100 group-focus-visible/toggle:opacity-100`})]}):(0,$.jsx)(`span`,{className:X(`flex min-w-0 flex-1 items-center gap-1`,`typography-micro font-normal tracking-wide text-muted-foreground/80`),children:n}),t[3]=o,t[4]=a,t[5]=n,t[6]=u):u=t[6];let d;t[7]===r?d=t[8]:(d=r?(0,$.jsx)(`div`,{className:`ml-auto -mr-2 flex shrink-0 items-center`,children:r}):null,t[7]=r,t[8]=d);let f;return t[9]!==l||t[10]!==u||t[11]!==d?(f=(0,$.jsxs)(`div`,{className:l,children:[u,d]}),t[9]=l,t[10]=u,t[11]=d,t[12]=f):f=t[12],f}function Vp(e){let t=(0,Ts.c)(52),{items:n,inProgressItems:r,renderSessionNode:i,currentSessionId:a,editingId:o,openSidebarMenuKey:s,headerAccessory:c,onVisibleSessionIdsChange:l}=e,u;t[0]===r?u=t[1]:(u=r===void 0?[]:r,t[0]=r,t[1]=u);let d=u,{t:f}=Fe(),[p,m]=Q.useState(!1),h=fr(Kp),g,_;t[2]!==p||t[3]!==d||t[4]!==n||t[5]!==l?(g=()=>{if(p){l?.([]);return}l?.([...n.map(Gp),...d.map(Wp)])},_=[p,d,n,l],t[2]=p,t[3]=d,t[4]=n,t[5]=l,t[6]=g,t[7]=_):(g=t[6],_=t[7]),Q.useLayoutEffect(g,_);let v,y;t[8]!==d||t[9]!==n||t[10]!==h?(v=()=>{h&&(n.some(e=>e.node.session.id===h)||d.some(e=>e.node.session.id===h))&&m(!1)},y=[d,n,h],t[8]=d,t[9]=n,t[10]=h,t[11]=v,t[12]=y):(v=t[11],y=t[12]),Q.useLayoutEffect(v,y);let b,x,S,C;if(t[13]!==a||t[14]!==o||t[15]!==d||t[16]!==n||t[17]!==s){let e=[...n,...d].map(Up);S=new Set,vp(e,a,S),C=new Set,vp(e,o,C),b=xp(e,s,`pinned`,!1),x=new WeakMap;let r=e=>{x.set(e,bp(e)),e.children.forEach(r)};e.forEach(r),t[13]=a,t[14]=o,t[15]=d,t[16]=n,t[17]=s,t[18]=b,t[19]=x,t[20]=S,t[21]=C}else b=t[18],x=t[19],S=t[20],C=t[21];let w;t[22]!==b||t[23]!==x||t[24]!==S||t[25]!==C?(w=e=>({subtreeContainsActive:S,subtreeContainsEditing:C,menuOpenSessionId:b,nodeStructureKey:x.get(e)??``,childRenderExtrasFor:w}),t[22]=b,t[23]=x,t[24]=S,t[25]=C,t[26]=w):w=t[26];let T;t[27]!==w||t[28]!==b||t[29]!==x||t[30]!==S||t[31]!==C?(T=e=>({subtreeContainsActive:S,subtreeContainsEditing:C,menuOpenSessionId:b,nodeStructureKey:x.get(e)??``,childRenderExtrasFor:w}),t[27]=w,t[28]=b,t[29]=x,t[30]=S,t[31]=C,t[32]=T):T=t[32];let E=T;if(n.length+d.length===0)return null;let D;t[33]!==E||t[34]!==i?(D=e=>e.map(e=>(0,$.jsx)(Q.Fragment,{children:i(e.node,0,e.groupDirectory,e.projectId,!1,e.secondaryMeta,`pinned`,E(e.node))},`${e.projectId??``}:${e.node.session.id}`)),t[33]=E,t[34]=i,t[35]=D):D=t[35];let O=D,k;t[36]!==d.length||t[37]!==f?(k=d.length>0?f(`directoryTree.section.pinnedInProgress`):f(`directoryTree.section.pinned`),t[36]=d.length,t[37]=f,t[38]=k):k=t[38];let A;t[39]===Symbol.for(`react.memo_cache_sentinel`)?(A=()=>m(Hp),t[39]=A):A=t[39];let j=!p,M;t[40]!==c||t[41]!==j||t[42]!==k?(M=(0,$.jsx)(Bp,{title:k,onToggle:A,expanded:j,accessory:c}),t[40]=c,t[41]=j,t[42]=k,t[43]=M):M=t[43];let N;t[44]!==p||t[45]!==d||t[46]!==n||t[47]!==O?(N=p?null:(0,$.jsxs)(`div`,{className:`space-y-0.5`,children:[O(n),O(d)]}),t[44]=p,t[45]=d,t[46]=n,t[47]=O,t[48]=N):N=t[48];let P;return t[49]!==M||t[50]!==N?(P=(0,$.jsx)(Qr,{delay:0,closeDelay:150,timeout:600,children:(0,$.jsxs)(`div`,{className:`pb-1`,children:[M,N]})}),t[49]=M,t[50]=N,t[51]=P):P=t[51],P}function Hp(e){return!e}function Up(e){return e.node}function Wp(e){return e.node.session.id}function Gp(e){return e.node.session.id}function Kp(e){return e.focus?.scope===`pinned`?e.focus.sessionId:null}function qp(e){let t=(0,Ts.c)(41),{collapseAllProjects:n,expandAllProjects:r,buttonClassName:i,iconClassName:a}=e,{t:o}=Fe(),s;t[0]===i?s=t[1]:(s=X(`size-6 p-0 text-muted-foreground`,i),t[0]=i,t[1]=s);let c;t[2]===o?c=t[3]:(c=o(`sessions.sidebar.header.actions.sessionDisplayMode`),t[2]=o,t[3]=c);let l;t[4]===a?l=t[5]:(l=X(`h-3.5 w-3.5`,a),t[4]=a,t[5]=l);let u;t[6]===l?u=t[7]:(u=(0,$.jsx)(Z,{name:`more-2-fill`,className:l}),t[6]=l,t[7]=u);let d;t[8]!==s||t[9]!==c||t[10]!==u?(d=(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(Oi,{asChild:!0,children:(0,$.jsx)(Sn,{variant:`ghost`,size:`xs`,className:s,"aria-label":c,onClick:Jp,children:u})})}),t[8]=s,t[9]=c,t[10]=u,t[11]=d):d=t[11];let f;t[12]===o?f=t[13]:(f=o(`sessions.sidebar.header.displayMode.label`),t[12]=o,t[13]=f);let p;t[14]===f?p=t[15]:(p=(0,$.jsx)(Zr,{side:`bottom`,sideOffset:4,children:(0,$.jsx)(`p`,{children:f})}),t[14]=f,t[15]=p);let m;t[16]!==d||t[17]!==p?(m=(0,$.jsxs)($r,{children:[d,p]}),t[16]=d,t[17]=p,t[18]=m):m=t[18];let h;t[19]===Symbol.for(`react.memo_cache_sentinel`)?(h=(0,$.jsx)(Z,{name:`contract-up-down`,className:`h-4 w-4`}),t[19]=h):h=t[19];let g;t[20]===o?g=t[21]:(g=o(`sessions.sidebar.header.displayMode.collapseAll`),t[20]=o,t[21]=g);let _;t[22]===g?_=t[23]:(_=(0,$.jsx)(`span`,{children:g}),t[22]=g,t[23]=_);let v;t[24]!==n||t[25]!==_?(v=(0,$.jsxs)(ki,{onClick:n,className:`flex items-center gap-2`,children:[h,_]}),t[24]=n,t[25]=_,t[26]=v):v=t[26];let y;t[27]===Symbol.for(`react.memo_cache_sentinel`)?(y=(0,$.jsx)(Z,{name:`expand-up-down`,className:`h-4 w-4`}),t[27]=y):y=t[27];let b;t[28]===o?b=t[29]:(b=o(`sessions.sidebar.header.displayMode.expandAll`),t[28]=o,t[29]=b);let x;t[30]===b?x=t[31]:(x=(0,$.jsx)(`span`,{children:b}),t[30]=b,t[31]=x);let S;t[32]!==r||t[33]!==x?(S=(0,$.jsxs)(ki,{onClick:r,className:`flex items-center gap-2`,children:[y,x]}),t[32]=r,t[33]=x,t[34]=S):S=t[34];let C;t[35]!==v||t[36]!==S?(C=(0,$.jsxs)(Di,{align:`end`,className:`min-w-[160px]`,children:[v,S]}),t[35]=v,t[36]=S,t[37]=C):C=t[37];let w;return t[38]!==C||t[39]!==m?(w=(0,$.jsxs)(Si,{children:[m,C]}),t[38]=C,t[39]=m,t[40]=w):w=t[40],w}function Jp(e){e.stopPropagation()}var Yp=`group size-7 rounded-md text-muted-foreground/75 transition-colors hover:bg-interactive-hover hover:text-foreground focus-visible:ring-2 focus-visible:ring-primary`,Xp=`size-4 text-foreground/55 transition-colors group-hover:text-foreground group-focus-visible:text-foreground`;function Zp(e){let t=(0,Ts.c)(12),{onOpenSettings:n,onOpenShortcuts:r,onOpenUpdate:i,showRuntimeButtons:a,showUpdateButton:o}=e,s=a===void 0||a,c=o!==void 0&&o,{t:l}=Fe(),u;t[0]!==n||t[1]!==r||t[2]!==s||t[3]!==l?(u=s?(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(Sn,{type:`button`,variant:`ghost`,size:`icon`,className:Yp,onClick:n,"aria-label":l(`sessions.sidebar.footer.actions.settings`),children:(0,$.jsx)(Z,{name:`settings-3`,className:Xp})})}),(0,$.jsx)(Zr,{side:`top`,sideOffset:4,children:l(`sessions.sidebar.footer.actions.settings`)})]}),(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(Sn,{type:`button`,variant:`ghost`,size:`icon`,className:Yp,onClick:r,"aria-label":l(`sessions.sidebar.footer.actions.shortcuts`),children:(0,$.jsx)(Z,{name:`question`,className:Xp})})}),(0,$.jsx)(Zr,{side:`top`,sideOffset:4,children:l(`sessions.sidebar.footer.actions.shortcuts`)})]})]}):null,t[0]=n,t[1]=r,t[2]=s,t[3]=l,t[4]=u):u=t[4];let d;t[5]!==i||t[6]!==c||t[7]!==l?(d=c&&i?(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(Sn,{type:`button`,variant:`ghost`,size:`icon`,className:`ml-auto size-6 rounded-full [corner-shape:round] supports-[corner-shape:squircle]:rounded-full border border-[var(--primary-base)] bg-[var(--primary-base)] text-[var(--primary-foreground)] hover:bg-[var(--primary-hover)] hover:text-[var(--primary-foreground)] active:bg-[var(--primary-hover)]`,onClick:i,"aria-label":l(`sessions.sidebar.footer.actions.update`),children:(0,$.jsx)(Z,{name:`download`,className:`size-3.5`})})}),(0,$.jsx)(Zr,{side:`top`,sideOffset:4,children:(0,$.jsx)(`p`,{children:l(`sessions.sidebar.footer.actions.update`)})})]}):null,t[5]=i,t[6]=c,t[7]=l,t[8]=d):d=t[8];let f;return t[9]!==u||t[10]!==d?(f=(0,$.jsxs)(`div`,{className:`flex shrink-0 items-center justify-start gap-1 px-2.5 py-2`,children:[u,d]}),t[9]=u,t[10]=d,t[11]=f):f=t[11],f}var Qp=e=>{let t=(0,Ts.c)(64),{id:n,disabled:r,projectLabel:i,projectDescription:a,projectIcon:o,projectColor:s,projectIconImage:c,isCollapsed:l,isActiveProject:u,isSessionsLoading:d,isRepo:f,isDesktopShell:p,isStuck:m,hideDirectoryControls:h,alwaysShowActions:g,onToggle:_,onNewSession:v,onNewWorktreeSession:y,onSyncSessions:b,onRenameStart:x,onClose:S,sentinelRef:C,children:w,showCreateButtons:T,hideHeader:E,openSidebarMenuKey:D,setOpenSidebarMenuKey:O,reorderEnabled:k}=e,A=r!==void 0&&r,j=d!==void 0&&d,M=T===void 0||T,N=E!==void 0&&E,P=k===void 0||k,{t:F}=Fe(),I=A||!P,L;t[0]!==n||t[1]!==I?(L={id:n,disabled:I},t[0]=n,t[1]=I,t[2]=L):L=t[2];let{attributes:R,listeners:z,setNodeRef:B,transform:V,transition:H,isDragging:U}=xa(L),W=Q.useRef(!1),ee=`project:${n}`,G=D===ee,[te,K]=Q.useState(!1),ne=o?Br[o]:null,re=s?Wr[s]:void 0,ie=ne??`folder-open`,ae;t[3]===re?ae=t[4]:(ae=re?{color:re}:void 0,t[3]=re,t[4]=ae);let oe;t[5]!==ie||t[6]!==ae?(oe=(0,$.jsx)(Z,{name:ie,className:`h-4 w-4`,style:ae}),t[5]=ie,t[6]=ae,t[7]=oe):oe=t[7];let se=oe,q;t[8]!==ee||t[9]!==O?(q=e=>{e&&K(!1),O(e?ee:null)},t[8]=ee,t[9]=O,t[10]=q):q=t[10];let ce=q,le;t[11]!==h||t[12]!==f||t[13]!==S||t[14]!==v||t[15]!==x||t[16]!==b||t[17]!==M||t[18]!==F?(le=e=>(0,$.jsxs)($.Fragment,{children:[M&&!f&&!h&&v&&(0,$.jsxs)(e,{onClick:v,children:[(0,$.jsx)(Z,{name:`add`,className:`mr-1.5 h-4 w-4`}),F(`sessions.sidebar.project.actions.newSession`)]}),(0,$.jsxs)(e,{onClick:b,children:[(0,$.jsx)(Z,{name:`refresh`,className:`mr-1.5 h-4 w-4`}),F(`sessions.sidebar.project.actions.syncSessions`)]}),(0,$.jsxs)(e,{onClick:x,children:[(0,$.jsx)(Z,{name:`pencil-ai`,className:`mr-1.5 h-4 w-4`}),F(`sessions.sidebar.project.actions.edit`)]}),(0,$.jsxs)(e,{onClick:S,className:`text-destructive focus:text-destructive`,children:[(0,$.jsx)(Z,{name:`close`,className:`mr-1.5 h-4 w-4`}),F(`sessions.sidebar.project.actions.closeProject`)]})]}),t[11]=h,t[12]=f,t[13]=S,t[14]=v,t[15]=x,t[16]=b,t[17]=M,t[18]=F,t[19]=le):le=t[19];let ue=le,de=em,fe=tm,pe=nm,me;t[20]===Symbol.for(`react.memo_cache_sentinel`)?(me=e=>{(e.button===2||e.button===0&&e.ctrlKey)&&(W.current=!0)},t[20]=me):me=t[20];let he=me,ge;t[21]===_?ge=t[22]:(ge=()=>{if(W.current){W.current=!1;return}_()},t[21]=_,t[22]=ge);let _e=ge,ve;t[23]===V?ve=t[24]:(ve=va.Transform.toString(V),t[23]=V,t[24]=ve);let ye;t[25]!==ve||t[26]!==H?(ye={transform:ve,transition:H},t[25]=ve,t[26]=H,t[27]=ye):ye=t[27];let be=U&&`opacity-30`,xe;t[28]===be?xe=t[29]:(xe=X(`relative`,be),t[28]=be,t[29]=xe);let Se;t[30]!==g||t[31]!==R||t[32]!==ce||t[33]!==_e||t[34]!==h||t[35]!==N||t[36]!==n||t[37]!==u||t[38]!==l||t[39]!==te||t[40]!==p||t[41]!==G||t[42]!==f||t[43]!==j||t[44]!==m||t[45]!==z||t[46]!==v||t[47]!==y||t[48]!==a||t[49]!==se||t[50]!==c||t[51]!==i||t[52]!==ue||t[53]!==P||t[54]!==C||t[55]!==M||t[56]!==F?(Se=N?null:(0,$.jsxs)($.Fragment,{children:[p&&(0,$.jsx)(`div`,{ref:C,"data-project-id":n,className:`absolute top-0 h-px w-full pointer-events-none`,"aria-hidden":`true`}),(0,$.jsxs)(as,{open:te,onOpenChange:K,children:[(0,$.jsx)(ss,{render:(0,$.jsx)(`div`,{className:X(`w-full text-left group/project select-none`),style:{backgroundColor:p&&m?`transparent`:void 0},onContextMenu:e=>{h||(e.preventDefault(),K(!0))}}),children:(0,$.jsxs)(`div`,{className:X(`relative flex items-center gap-1.5 rounded-lg px-2 py-1.5`,Kn),...R,children:[(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsxs)(`button`,{type:`button`,onMouseDown:he,onClick:_e,...P?z:{},className:X(`flex-1 min-w-0 flex items-center gap-1.5 text-left focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50 rounded-md transition-[padding]`,P?`cursor-grab active:cursor-grabbing`:`cursor-pointer`,f&&!h?g?`pr-20`:`pr-7 group-hover/project:pr-20 group-has-[:focus-visible]/project:pr-20`:g?`pr-14`:`pr-7 group-hover/project:pr-14 group-has-[:focus-visible]/project:pr-14`),children:[(0,$.jsx)(`span`,{className:`inline-flex h-4 w-4 flex-shrink-0 items-center justify-center overflow-hidden text-foreground`,children:j?(0,$.jsx)(Z,{name:`loader-4`,className:`h-4 w-4 animate-spin`,"aria-label":F(`sessions.sidebar.project.loadingSessions`)}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`span`,{className:X(`h-4 w-4 items-center justify-center`,g?`inline-flex`:`hidden group-hover/project:inline-flex group-has-[:focus-visible]/project:inline-flex`),children:l?(0,$.jsx)(Z,{name:`arrow-right-s`,className:`h-3.5 w-3.5`}):(0,$.jsx)(Z,{name:`arrow-down-s`,className:`h-3.5 w-3.5`})}),(0,$.jsx)(`span`,{className:X(g?`hidden`:`group-hover/project:hidden group-has-[:focus-visible]/project:hidden`),children:c?(0,$.jsx)(Ir,{project:{id:n,iconImage:c},className:`size-full object-contain`,fallback:se}):se})]})}),(0,$.jsx)(`span`,{className:X(`text-[14px] font-normal truncate lowercase`,u?`text-foreground`:`text-foreground group-hover/project:text-foreground`),children:i})]})}),(0,$.jsx)(Zr,{side:`right`,sideOffset:8,children:a})]}),(0,$.jsxs)(`div`,{className:X(`absolute top-1/2 z-10 flex -translate-y-1/2 items-center gap-1`,M?`right-7`:`right-0.5`),children:[M&&f&&!h&&y?(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),y()},className:X(`inline-flex h-6 w-6 items-center justify-center rounded-md text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50 hover:text-foreground transition-opacity`,g?`opacity-100`:`opacity-0 pointer-events-none group-hover/project:opacity-100 group-hover/project:pointer-events-auto group-has-[:focus-visible]/project:opacity-100 group-has-[:focus-visible]/project:pointer-events-auto`),"aria-label":F(`sessions.sidebar.project.actions.newWorktree`),children:(0,$.jsx)(Z,{name:`node-tree`,className:`h-4 w-4`})})}),(0,$.jsx)(Zr,{side:`bottom`,sideOffset:4,children:(0,$.jsx)(`p`,{children:F(`sessions.sidebar.project.actions.newWorktreeEllipsis`)})})]}):null,h?null:(0,$.jsxs)(Si,{open:G,onOpenChange:ce,children:[(0,$.jsx)(Oi,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,className:X(`inline-flex h-6 w-6 items-center justify-center rounded-md text-muted-foreground transition-opacity focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50 hover:text-foreground`,G?`opacity-100 pointer-events-auto`:g?`opacity-100`:`opacity-0 pointer-events-none group-hover/project:opacity-100 group-hover/project:pointer-events-auto group-has-[:focus-visible]/project:opacity-100 group-has-[:focus-visible]/project:pointer-events-auto`),"aria-label":F(`sessions.sidebar.project.actions.projectMenu`),onPointerDown:fe,onMouseDown:pe,onClick:de,children:(0,$.jsx)(Z,{name:`more-2`,className:`h-3.5 w-3.5`})})}),(0,$.jsx)(Di,{align:`end`,className:`min-w-[180px]`,children:ue(ki)})]})]}),M&&v?(0,$.jsx)(`div`,{className:`absolute right-0.5 top-1/2 z-10 -translate-y-1/2`,children:(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),v()},className:X(`inline-flex h-6 w-6 items-center justify-center rounded-md text-muted-foreground hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50 transition-opacity`,g?`opacity-100`:`opacity-0 pointer-events-none group-hover/project:opacity-100 group-hover/project:pointer-events-auto group-has-[:focus-visible]/project:opacity-100 group-has-[:focus-visible]/project:pointer-events-auto`),"aria-label":F(f?`sessions.sidebar.project.actions.newDraftSession`:`sessions.sidebar.project.actions.newSession`),children:(0,$.jsx)(Z,{name:`add`,className:`h-4 w-4`})})}),(0,$.jsx)(Zr,{side:`bottom`,sideOffset:4,children:(0,$.jsx)(`p`,{children:F(f?`sessions.sidebar.project.actions.newDraftSession`:`sessions.sidebar.project.actions.newSession`)})})]})}):null]})}),(0,$.jsx)(cs,{className:`min-w-[180px]`,children:ue(ls)})]})]}),t[30]=g,t[31]=R,t[32]=ce,t[33]=_e,t[34]=h,t[35]=N,t[36]=n,t[37]=u,t[38]=l,t[39]=te,t[40]=p,t[41]=G,t[42]=f,t[43]=j,t[44]=m,t[45]=z,t[46]=v,t[47]=y,t[48]=a,t[49]=se,t[50]=c,t[51]=i,t[52]=ue,t[53]=P,t[54]=C,t[55]=M,t[56]=F,t[57]=Se):Se=t[57];let Ce;return t[58]!==w||t[59]!==B||t[60]!==ye||t[61]!==xe||t[62]!==Se?(Ce=(0,$.jsxs)(`div`,{ref:B,style:ye,className:xe,children:[Se,w]}),t[58]=w,t[59]=B,t[60]=ye,t[61]=xe,t[62]=Se,t[63]=Ce):Ce=t[63],Ce},$p=Q.memo(e=>{let t=(0,Ts.c)(21),{id:n,disabled:r,children:i}=e,a=r!==void 0&&r,o;t[0]!==a||t[1]!==n?(o={id:n,disabled:a},t[0]=a,t[1]=n,t[2]=o):o=t[2];let{listeners:s,setNodeRef:c,setActivatorNodeRef:l,transform:u,transition:d,isDragging:f}=xa(o),p;t[3]!==s||t[4]!==l?(p={listeners:s,setActivatorNodeRef:l},t[3]=s,t[4]=l,t[5]=p):p=t[5];let m=p,h;t[6]===u?h=t[7]:(h=va.Transform.toString(u),t[6]=u,t[7]=h);let g;t[8]!==h||t[9]!==d?(g={transform:h,transition:d},t[8]=h,t[9]=d,t[10]=g):g=t[10];let _=f&&`opacity-50`,v;t[11]===_?v=t[12]:(v=X(`space-y-0.5 rounded-md`,_),t[11]=_,t[12]=v);let y;t[13]!==i||t[14]!==m?(y=typeof i==`function`?i(m):i,t[13]=i,t[14]=m,t[15]=y):y=t[15];let b;return t[16]!==c||t[17]!==g||t[18]!==v||t[19]!==y?(b=(0,$.jsx)(`div`,{ref:c,style:g,className:v,children:y}),t[16]=c,t[17]=g,t[18]=v,t[19]=y,t[20]=b):b=t[20],b});function em(e){e.stopPropagation()}function tm(e){e.stopPropagation()}function nm(e){e.stopPropagation()}var rm=e=>{let t=(0,Ts.c)(2),{children:n}=e,r;return t[0]===n?r=t[1]:(r=(0,$.jsx)(Qr,{delay:0,closeDelay:150,timeout:600,children:n}),t[0]=n,t[1]=r),r};function im(e){let{t}=Fe(),n=_a(ua(ha,{activationConstraint:{distance:8}}),ua(fa,{coordinateGetter:ya})),r=_a(ua(ha,{activationConstraint:{distance:8}})),i=e.hasSessionSearchQuery?null:(0,$.jsx)(Bp,{title:t(`sessions.sidebar.projectsTitle`),isFirst:!e.hasLeadingSection,accessory:e.headerAccessory}),a=Q.useRef(null),o=Q.useRef(new Map),s=Q.useRef(e.getOrderedGroups);s.current!==e.getOrderedGroups&&(s.current=e.getOrderedGroups,o.current.clear());let c=(t,n)=>{let r=o.current,i=r.get(t);if(i&&i.groups===n)return i.ordered;let a=e.getOrderedGroups(t,n);if(r.set(t,{groups:n,ordered:a}),r.size>256){let e=r.keys().next().value;e!==void 0&&r.delete(e)}return a};return e.sharedSessionsOnly?(0,$.jsx)(rm,{children:(0,$.jsxs)(Nr,{useScrollShadow:!0,scrollShadowSize:96,outerClassName:`flex-1 min-h-0`,className:X(`space-y-1 px-3 pb-1`,(e.mobileVariant,``)),children:[e.topContent,e.hasSharedSessions?null:e.hasSessionSearchQuery?e.searchEmptyState:e.emptyState]})}):e.projectSections.length===0?(0,$.jsx)(rm,{children:(0,$.jsxs)(Nr,{useScrollShadow:!0,scrollShadowSize:96,outerClassName:`flex-1 min-h-0`,className:X(`space-y-1 px-3 pb-1`,(e.mobileVariant,``)),children:[e.topContent,i,e.emptyState]})}):e.sectionsForRender.length===0?(0,$.jsx)(rm,{children:(0,$.jsx)(Nr,{useScrollShadow:!0,scrollShadowSize:96,outerClassName:`flex-1 min-h-0`,className:X(`space-y-1 px-3 pb-1`,(e.mobileVariant,``)),children:e.searchEmptyState})}):(0,$.jsx)(rm,{children:(0,$.jsxs)(Nr,{ref:a,useScrollShadow:!0,scrollShadowSize:96,outerClassName:`flex-1 min-h-0`,className:X(`space-y-1 px-3 pb-1 [overflow-anchor:none]`,(e.mobileVariant,``)),children:[e.topContent,e.showOnlyMainWorkspace?(0,$.jsx)(`div`,{className:`space-y-[0.6rem] py-1`,children:(()=>{let n=e.sectionsForRender.find(t=>t.project.id===e.activeProjectId)??e.sectionsForRender[0];if(!n)return e.hasSessionSearchQuery?e.searchEmptyState:e.emptyState;let r=n.groups.find(e=>e.isMain&&e.sessions.length>0)??n.groups.find(e=>e.sessions.length>0)??n.groups.find(e=>e.isMain)??n.groups[0];if(!r)return(0,$.jsx)(`div`,{className:kr,children:t(`sessions.sidebar.empty.noSessions.title`)});let i=n.groups.find(e=>e.isArchivedBucket);return[r,...i&&i.id!==r.id?[i]:[]].map(t=>{let i=`${n.project.id}:${t.id}`,o=t.id===r.id;return(0,$.jsx)(Q.Fragment,{children:e.renderGroupSessions(t,i,n.project.id,o,null,!0,a)},i)})})()}):(0,$.jsxs)($.Fragment,{children:[i,(0,$.jsxs)(ga,{sensors:n,collisionDetection:pa,onDragEnd:t=>{if(e.isInlineEditing||e.projectSortOrder!==`manual`)return;let{active:n,over:r}=t;!r||n.id===r.id||e.reorderProjects(String(n.id),String(r.id))},children:[(0,$.jsx)(Ca,{items:e.sectionsForRender.map(e=>e.project.id),strategy:Sa,children:e.sectionsForRender.map(n=>{let i=n.project,o=i.id,s=_n(i.normalizedPath)||i.normalizedPath,l=yn(i.normalizedPath,e.homeDirectory),u=e.collapsedProjects.has(o),d=o===e.activeProjectId,f=e.loadingProjectIds.has(o),p=e.refreshingProjectIds.has(o),m=e.projectRepoStatus.get(o),h=c(o,n.groups),g=h.find(e=>e.isMain)??null,_=g?h.filter(e=>e.id!==g.id):h;return(0,$.jsx)(Qp,{id:o,disabled:e.projectSortOrder!==`manual`,projectLabel:s,projectDescription:l,projectIcon:i.icon,projectColor:i.color,projectIconImage:i.iconImage,isCollapsed:u,isActiveProject:d,isSessionsLoading:f||p,isRepo:!!m,isDesktopShell:e.isDesktopShellRuntime,isStuck:e.stuckProjectHeaders.has(o),hideDirectoryControls:e.hideDirectoryControls,mobileVariant:e.mobileVariant,alwaysShowActions:e.alwaysShowActions,onToggle:()=>e.toggleProject(o),onNewSession:()=>{o!==e.activeProjectId&&e.setActiveProjectIdOnly(o),e.setActiveMainTab(`chat`),e.mobileVariant&&e.setSessionSwitcherOpen(!1),e.openNewSessionDraft({directoryOverride:i.normalizedPath})},onNewWorktreeSession:()=>{o!==e.activeProjectId&&e.setActiveProjectIdOnly(o),e.setActiveMainTab(`chat`),e.openNewWorktreeDialog()},onSyncSessions:()=>e.syncProjectSessions(o),onRenameStart:()=>e.openProjectEditDialog(o),onClose:()=>e.removeProject(o),sentinelRef:t=>{e.projectHeaderSentinelRefs.current.set(o,t)},showCreateButtons:!0,openSidebarMenuKey:e.openSidebarMenuKey,setOpenSidebarMenuKey:e.setOpenSidebarMenuKey,reorderEnabled:e.projectReorderEnabled??!1,children:u?null:(0,$.jsx)(`div`,{className:`space-y-0 pt-0 pb-0.5`,children:f&&n.groups.length===0?(0,$.jsx)(`div`,{className:`box-border w-full py-1.5 text-left typography-ui-label font-normal text-muted-foreground/80 animate-pulse select-none`,style:{paddingLeft:er(1)},role:`status`,"aria-live":`polite`,children:t(`sessions.sidebar.project.loadingSessions`)}):n.groups.length>0?(0,$.jsxs)(ga,{sensors:r,collisionDetection:pa,onDragEnd:t=>{if(e.isInlineEditing)return;let{active:n,over:r}=t;if(!r||n.id===r.id)return;let i=_.findIndex(e=>e.id===n.id),a=_.findIndex(e=>e.id===r.id);if(i===-1||a===-1||i===a)return;let s=ba(_,i,a).map(e=>e.id),c=g?[g.id,...s]:s;e.setGroupOrderByProject(e=>{let t=new Map(e);return t.set(o,c),t})},children:[g?e.renderGroupSessions(g,`${o}:${g.id}`,o,!0,null,void 0,a):null,(0,$.jsx)(Ca,{items:_.map(e=>e.id),strategy:Sa,children:_.map(t=>{let n=`${o}:${t.id}`;return(0,$.jsx)($p,{id:t.id,disabled:e.isInlineEditing,children:r=>e.renderGroupSessions(t,n,o,!1,r,void 0,a)},t.id)})}),(0,$.jsx)(ma,{dropAnimation:null})]}):(0,$.jsx)(`div`,{className:kr,children:t(`sessions.sidebar.empty.noSessions.title`)})})},o)})}),(0,$.jsx)(ma,{dropAnimation:null})]})]})]})})}function am(e){if(typeof e!=`number`||!Number.isFinite(e))return``;let t=new Date(e);return Number.isNaN(t.getTime())?``:`${t.toLocaleString(Ie(),{month:`short`})} ${t.getDate()}, ${t.getFullYear()}, ${String(t.getHours()).padStart(2,`0`)}:${String(t.getMinutes()).padStart(2,`0`)}`}function om(e){if(e.info.role===`user`)return``;let t=typeof e.info.providerID==`string`?e.info.providerID.trim():``,n=typeof e.info.modelID==`string`?e.info.modelID.trim():``;return t&&n?`${t}/${n}`:n||t}function sm(e){let t=e.info.role===`user`?`User`:`Assistant`,n=am(e.info.time?.created),r=om(e),i=n&&r?`${n} (${r})`:n||r;return i?`**${t}**\n\n*${i}*`:`**${t}**`}function cm(e){return e.filter(e=>e.type===`text`&&typeof e.text==`string`).map(e=>e.text).join(``)}function lm(e){let t=sm(e),n=cm(e.parts).trim();return n?`${t}\n\n${n}`:``}function um(e,t){let n=`#`.repeat(Math.min(t+1,6)),r=e.agent?` — ${e.agent}`:``,i=[`${n} Sub-agent: ${e.title}${r}\n\n---\n\n`+e.records.map(lm).filter(Boolean).join(`
|
|
7
7
|
|
|
8
8
|
---
|
|
9
9
|
|
|
@@ -26,4 +26,4 @@ import{o as e}from"./rolldown-runtime-C0FnF6B9.js";import{A as t,B as n,C as r,O
|
|
|
26
26
|
`+e}return r}function fm(e,t){let n=new Blob([e],{type:`text/markdown;charset=utf-8`}),r=URL.createObjectURL(n),i=document.createElement(`a`);i.href=r,i.download=t,document.body.appendChild(i),i.click(),document.body.removeChild(i),URL.revokeObjectURL(r)}async function pm(e,t){let n=await I(t,e);if(n)return n;if(!m())return null;try{let n=await U()?.vscode?.saveMarkdown?.({fileName:t,content:e});if(!n||n.saved!==!0)return null;let r=typeof n.path==`string`?n.path.trim():``;return r.length>0?r:null}catch{return null}}async function mm(e){let t=U()?.files;if(t?.revealPath)try{return!!(await t.revealPath(e))?.success}catch{return!1}return await A(e)?!0:j(e)}function hm(){return hn()}function gm(e){return`${(e?.trim()||`session`).normalize(`NFKC`).toLowerCase().replace(/[^\p{L}\p{N}]+/gu,`-`).replace(/^-+|-+$/g,``).slice(0,60)||`session`}-${new Date().toISOString().split(`T`)[0]}.md`}var _m=(e,t)=>{if(!t)return Array.from(e);let n=[],r=new Set;for(let i of e){r.has(i)||(r.add(i),n.push(i));let e=t.get(i);if(e)for(let t of e)r.has(t)||(r.add(t),n.push(t))}return n},vm=ne()((e,t)=>({enabled:!1,selectedIds:new Set,scopeKey:null,anchorId:null,enable:()=>{t().enabled||e({enabled:!0})},disable:()=>{e({enabled:!1,selectedIds:new Set,scopeKey:null,anchorId:null})},toggleMode:()=>{t().enabled?e({enabled:!1,selectedIds:new Set,scopeKey:null,anchorId:null}):e({enabled:!0})},toggleSelected:(n,r,i)=>{let a=t(),o=new Set(a.selectedIds),s=a.scopeKey,c=a.anchorId;r!==null&&a.scopeKey!==null&&r!==a.scopeKey?(o.clear(),s=r,c=null):s===null&&r!==null&&(s=r);let l=i&&i.length>0?[n,...i]:[n];if(o.has(n)){for(let e of l)o.delete(e);c===n&&(c=null)}else{for(let e of l)o.add(e);c=n}o.size===0?e({selectedIds:o,scopeKey:null,anchorId:null}):e({selectedIds:o,scopeKey:s,anchorId:c})},setRange:(n,r,i,a,o)=>{let s=t();if(i.length===0)return;let c=n&&i.includes(n)?n:i[0],l=i.indexOf(c),u=i.indexOf(r);if(l<0||u<0)return;let[d,f]=l<=u?[l,u]:[u,l],p=_m(i.slice(d,f+1),o),m=a!==null&&s.scopeKey!==null&&a!==s.scopeKey?new Set:new Set(s.selectedIds);for(let e of p)m.add(e);e({selectedIds:m,scopeKey:a??s.scopeKey,anchorId:c})},replaceAll:(t,n)=>{if(t.length===0){e({selectedIds:new Set,scopeKey:null,anchorId:null});return}e({selectedIds:new Set(t),scopeKey:n,anchorId:t[0]??null})},clear:()=>{e({selectedIds:new Set,scopeKey:null,anchorId:null})},removeMany:n=>{let r=t();if(r.selectedIds.size===0||n.length===0)return;let i=new Set(r.selectedIds);for(let e of n)i.delete(e);i.size!==r.selectedIds.size&&(i.size===0?e({selectedIds:i,scopeKey:null,anchorId:null}):e({selectedIds:i}))}})),ym=!1,bm=new Set,xm=!1;function Sm(){for(let e of bm)e()}function Cm(e){ym!==e&&(ym=e,Sm())}function wm(e){e.key===`Shift`&&Cm(!0)}function Tm(e){e.key===`Shift`&&Cm(!1)}function Em(){Cm(!1)}function Dm(){xm||typeof window>`u`||(xm=!0,window.addEventListener(`keydown`,wm),window.addEventListener(`keyup`,Tm),window.addEventListener(`blur`,Em))}function Om(e){return Dm(),bm.add(e),()=>{bm.delete(e)}}function km(){return ym}function Am(){return!1}function jm(){return(0,Q.useSyncExternalStore)(Om,km,Am)}var Mm=!1,Nm=!1,Pm=new Set;function Fm(){Pm.forEach(e=>e())}function Im(e){Mm!==e&&(Mm=e,Fm())}function Lm(e){return bn()?e.key===`Meta`:e.key===`Control`}var Rm=(({setVisible:e,schedule:t=(e,t)=>setTimeout(e,t),cancel:n=e=>clearTimeout(e)})=>{let r=!1,i=null,a=()=>{i!==null&&(n(i),i=null)};return{press(){r||(r=!0,a(),i=t(()=>{i=null,r&&e(!0)},500))},release(){r=!1,a(),e(!1)}}})({setVisible:Im});function zm(e){Lm(e)&&Rm.press()}function Bm(){Rm.release()}function Vm(e){Lm(e)&&Bm()}function Hm(){document.visibilityState!==`visible`&&Bm()}function Um(){Nm||typeof window>`u`||(Nm=!0,window.addEventListener(`keydown`,zm),window.addEventListener(`keyup`,Vm),window.addEventListener(`blur`,Bm),document.addEventListener(`visibilitychange`,Hm))}function Wm(e){return Um(),Pm.add(e),()=>Pm.delete(e)}function Gm(){return Mm}function Km(){return!1}function qm(){return(0,Q.useSyncExternalStore)(Wm,Gm,Km)}var Jm=(e,t,n)=>{let r=e.session.title?.trim()||e.session.id;return`\n\n--- RESULT ${n+1}: ${r} ---\n${t.trim()}\n--- END RESULT ${n+1} ---`},Ym=(e,t)=>Ft.getState().getWorktreeMetadata(e)?.projectDirectory??t,Xm=async e=>{let t=e.directory??void 0,n=mt(e.session.id,t);if(n.length===0&&e.directory){let t=(await xe.withDirectory(e.directory,()=>xe.getSdkClient().session.messages({sessionID:e.session.id,directory:e.directory??void 0,limit:50}))).data??[];for(let e=t.length-1;e>=0;--e){let n=t[e];if(n.info?.role===`assistant`)return ot(n.parts??[]).trim()}return``}for(let e=n.length-1;e>=0;--e){let r=n[e];if(r.role===`assistant`)return ot(Vt(r.id,t)).trim()}return``};function Zm({session:e,open:t,onOpenChange:n}){let{t:r}=Fe(),i=ct(),a=Tt(e=>e.activeSessions),o=Tt(e=>e.archivedSessions),s=Zt(e=>e.providers),c=Zt(e=>e.currentProviderId),l=Zt(e=>e.currentModelId),u=Zt(e=>e.currentAgentName),[d,f]=Q.useState(c??``),[p,m]=Q.useState(l??``),[h,g]=Q.useState(()=>c&&l?[{providerID:c,modelID:l,instanceId:ys()}]:[]),[_,v]=Q.useState(``),[y,b]=Q.useState(u??``),[x,S]=Q.useState([]),[C,w]=Q.useState(!1),T=Q.useMemo(()=>xs(e.title),[e.title]),E=Q.useMemo(()=>{let t=new Map;for(let e of i)t.set(e.id,e);for(let e of a)t.set(e.id,e);for(let e of o)t.set(e.id,e);return e.id&&t.set(e.id,e),Array.from(t.values())},[a,o,i,e]);Q.useEffect(()=>{if(!t||!T)return;let n=Ft.getState().getDirectoryForSession(e.id),r=Ym(e.id,n),i=E.map(e=>{let t=xs(e.title);if(!t||t.groupSlug!==T.groupSlug||t.fusion||(t.runGroup??null)!==(T.runGroup??null))return null;let n=Ft.getState().getDirectoryForSession(e.id)??Rt(e),i=Ym(e.id,n);return r&&i&&r!==i?null:{session:e,directory:n,projectDirectory:i}}).filter(e=>e!==null).sort((e,t)=>(e.session.time?.created??0)-(t.session.time?.created??0));S(i)},[E,t,T,e.id]);let D=s.find(e=>e.id===d)?.models.find(e=>e.id===p),O=D?.variants?Object.keys(D.variants):[],k=!!(T&&d&&p&&x.length>0&&!C),A=Q.useCallback(e=>{g([e]),f(e.providerID),m(e.modelID),v(``)},[]),j=h[0]?.displayName||h[0]?.modelID||r(`multirun.fusion.model.placeholder`);return(0,$.jsx)(mn,{open:t,onOpenChange:n,children:(0,$.jsxs)(dn,{className:`max-w-xl overflow-visible`,children:[(0,$.jsxs)(ln,{children:[(0,$.jsx)(fn,{children:r(`multirun.fusion.title`)}),(0,$.jsx)(pn,{children:r(`multirun.fusion.description`)})]}),(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,$.jsx)(`div`,{className:`max-w-full`,children:(0,$.jsx)(Ss,{selectedModels:h,onAdd:A,onUpdate:(e,t)=>A(t),onRemove:()=>{g([]),f(``),m(``),v(``)},maxModels:1,addButtonLabel:j,showChips:!1,addButtonClassName:`h-8 w-fit max-w-[min(28rem,calc(100vw-8rem))] justify-start rounded-[9px] [corner-shape:squircle] supports-[corner-shape:squircle]:rounded-[50px] px-3 py-1.5`,dropdownSide:`bottom`,dropdownClassName:`w-[min(28rem,calc(100vw-8rem))]`,triggerIcon:d||p?(0,$.jsx)(Hr,{modelId:p,providerId:d,className:`h-3.5 w-3.5 mr-1`}):void 0})}),O.length>0?(0,$.jsxs)(zr,{value:_||`__default__`,onValueChange:e=>v(e===`__default__`?``:e),children:[(0,$.jsxs)(Jr,{size:`lg`,className:`h-8 w-fit rounded-[9px] [corner-shape:squircle] supports-[corner-shape:squircle]:rounded-[50px] !border-border/80 !bg-[var(--surface-subtle)] hover:!bg-[var(--interactive-hover)]/70 typography-meta font-medium text-foreground px-3 py-1.5`,children:[(0,$.jsx)(Z,{name:`brain-ai-3`,className:`h-3.5 w-3.5 text-muted-foreground`}),(0,$.jsx)(Fr,{children:e=>e===`__default__`?r(`multirun.modelMultiSelect.variant.default`):e})]}),(0,$.jsxs)(Rr,{fitContent:!0,portalToBody:!0,children:[(0,$.jsx)(qr,{value:`__default__`,children:r(`multirun.modelMultiSelect.variant.default`)}),O.map(e=>(0,$.jsx)(qr,{value:e,children:e},e))]})]}):null,(0,$.jsx)(bs,{value:y,onChange:b,portalToBody:!0,className:`h-8 rounded-[9px] [corner-shape:squircle] supports-[corner-shape:squircle]:rounded-[50px] px-3 py-1.5`})]}),(0,$.jsxs)(`div`,{className:`space-y-2`,children:[(0,$.jsx)(`div`,{className:`typography-meta font-medium text-foreground`,children:r(`multirun.fusion.sources.label`,{count:x.length})}),(0,$.jsx)(`div`,{className:`max-h-56 space-y-1 overflow-auto rounded-lg border border-[var(--interactive-border)] p-1`,children:x.map(e=>{let t=xs(e.session.title);return(0,$.jsxs)(`div`,{className:`flex items-center gap-2 rounded-md px-2 py-1.5 typography-meta`,children:[(0,$.jsx)(Hr,{modelId:t?.modelID,providerId:t?.providerID,className:`h-4 w-4`}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:e.session.title||e.session.id}),(0,$.jsx)(`button`,{type:`button`,onClick:()=>S(t=>t.filter(t=>t.session.id!==e.session.id)),className:`text-muted-foreground hover:text-foreground`,children:(0,$.jsx)(Z,{name:`close`,className:`h-4 w-4`})})]},e.session.id)})})]}),(0,$.jsxs)(un,{children:[(0,$.jsx)(Sn,{variant:`ghost`,onClick:()=>n(!1),children:r(`multirun.fusion.actions.cancel`)}),(0,$.jsx)(Sn,{onClick:async()=>{if(!(!T||!d||!p)){w(!0);try{let e=await Promise.all(x.map(e=>Xm(e))),t=x.map((t,n)=>({source:t,text:e[n]??``})).filter(e=>e.text.trim().length>0);if(t.length===0){Y.error(r(`multirun.fusion.toast.noOutputs`));return}let i=x[0]?.projectDirectory??x[0]?.directory??null,a=vs(T.groupSlug,d,p,T.runGroup),[o,s]=await Promise.all([qt(`session.fusion.visible`),qt(`session.fusion.instructions`)]),c=await Ft.getState().createSession(a,i,null);if(!c)throw Error(`Failed to create fusion session`);Ft.getState().setCurrentSession(c.id,i),n(!1),await xe.sendMessage({id:c.id,providerID:d,modelID:p,variant:_||void 0,agent:y||void 0,text:o,additionalParts:[{text:s,synthetic:!0},...t.map((e,t)=>({text:Jm(e.source,e.text,t),synthetic:!0})),{text:`
|
|
27
27
|
|
|
28
28
|
--- FUSION INPUTS END ---
|
|
29
|
-
Now write the final fused answer.`,synthetic:!0}],directory:i??xe.getDirectory()})}catch(e){console.error(`[MultiRunFusion] Failed to start fusion`,e),Y.error(r(`multirun.fusion.toast.failed`))}finally{w(!1)}}},disabled:!k,children:r(C?`multirun.fusion.actions.starting`:`multirun.fusion.actions.start`)})]})]})})}function Qm(e){let t=(0,Ts.c)(13),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=[`oc-icon`,n].filter(Boolean),t[3]=n,t[4]=i);let a=i.join(` `),o,s,c,l,u;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,$.jsx)(`path`,{d:`M12 4.5v6.25M12 10.75v3.5M12 10.75H7.25A3.25 3.25 0 0 0 4 14v1.25M12 10.75h4.75A3.25 3.25 0 0 1 20 14v1.25`}),s=(0,$.jsx)(`path`,{d:`M9.25 7.25 12 4.5l2.75 2.75`}),c=(0,$.jsx)(`circle`,{cx:`4`,cy:`17.25`,r:`1.55`}),l=(0,$.jsx)(`circle`,{cx:`12`,cy:`17.25`,r:`1.55`}),u=(0,$.jsx)(`circle`,{cx:`20`,cy:`17.25`,r:`1.55`}),t[5]=o,t[6]=s,t[7]=c,t[8]=l,t[9]=u):(o=t[5],s=t[6],c=t[7],l=t[8],u=t[9]);let d;return t[10]!==r||t[11]!==a?(d=(0,$.jsxs)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:xn,strokeLinecap:`round`,strokeLinejoin:`round`,"aria-hidden":`true`,className:a,...r,children:[o,s,c,l,u]}),t[10]=r,t[11]=a,t[12]=d):d=t[12],d}var $m=e(he(),1),eh=null,th=!1,nh=(e,t=fr.getState().focus)=>e===null?null:typeof e==`string`?t?.sessionId===e?t:dr(e):e,rh=e=>{typeof window>`u`||(e.commitFrame!==null&&window.cancelAnimationFrame(e.commitFrame),e.paintFrame!==null&&window.cancelAnimationFrame(e.paintFrame),e.fallbackTimer!==null&&window.clearTimeout(e.fallbackTimer))},ih=()=>{eh&&=(rh(eh),null)},ah=(e,t)=>{ih(),Wt(!0);let n=nh(e);if(!n)return;th=!0;let r;try{r=Qt(n.sessionId)}finally{th=!1}eh={commit:t,commitFrame:null,fallbackTimer:null,focus:n,intent:r,paintFrame:null,scheduled:!1},(0,$m.flushSync)(()=>{fr.getState().setFocus(n)}),typeof window<`u`&&(eh.fallbackTimer=window.setTimeout(()=>{oh(n)},150))},oh=e=>{let t=eh,n=nh(e);if(!t||!jr(t.focus,n)||t.scheduled)return;t.scheduled=!0,typeof window<`u`&&t.fallbackTimer!==null&&(window.clearTimeout(t.fallbackTimer),t.fallbackTimer=null);let r=()=>{eh===t&&St()===t.intent&&(eh=null,Ot(),t.commit())};if(typeof window>`u`){r();return}t.commitFrame=window.requestAnimationFrame(()=>{eh===t&&St()===t.intent&&(t.paintFrame=window.requestAnimationFrame(r))})},sh=e=>{if(eh)return;let t=fr.getState();t.setFocus(nh(e,t.focus))};wt(e=>{if(th)return;let t=eh;if(t?.intent===e)return;t&&ih();let n=fr.getState();n.setFocus(nh(e.sessionId,n.focus))});var ch=e=>{let t=[],n=e=>{e.children.forEach(e=>{t.push(e.session.id),n(e)})};return n(e),t},lh=Q.memo(function(e){let t=(0,Ts.c)(18),{pinLabel:n,buttonSizeClass:r,iconSizeClass:i,onPointerDown:a,onMouseDown:o,onPin:s}=e,c;t[0]===r?c=t[1]:(c=X(`inline-flex items-center justify-center rounded-md text-muted-foreground hover:text-foreground hover:bg-[color-mix(in_srgb,var(--surface-foreground)_8%,transparent)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50 transition-none`,r),t[0]=r,t[1]=c);let l;t[2]===i?l=t[3]:(l=X(i,`rotate-45`),t[2]=i,t[3]=l);let u;t[4]===l?u=t[5]:(u=(0,$.jsx)(Z,{name:`pushpin-2`,className:l}),t[4]=l,t[5]=u);let d;t[6]!==o||t[7]!==s||t[8]!==a||t[9]!==n||t[10]!==c||t[11]!==u?(d=(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,className:c,"aria-label":n,onPointerDown:a,onMouseDown:o,onClick:s,onKeyDown:Sh,children:u})}),t[6]=o,t[7]=s,t[8]=a,t[9]=n,t[10]=c,t[11]=u,t[12]=d):d=t[12];let f;t[13]===n?f=t[14]:(f=(0,$.jsx)(Zr,{side:`top`,sideOffset:4,className:`rounded-md px-1.5 py-0.5 typography-micro`,children:n}),t[13]=n,t[14]=f);let p;return t[15]!==d||t[16]!==f?(p=(0,$.jsxs)($r,{children:[d,f]}),t[15]=d,t[16]=f,t[17]=p):p=t[17],p}),uh=Q.memo(function(e){let t=(0,Ts.c)(24),{archiveLabel:n,deleteLabel:r,deleteOnly:i,buttonSizeClass:a,iconSizeClass:o,revealClassName:s,onPointerDown:c,onMouseDown:l,onArchive:u,onDelete:d}=e,f=i!==void 0&&i,p=jm(),m=f||p,h=m?r:n,g;t[0]!==f||t[1]!==u||t[2]!==d||t[3]!==p?(g=e=>{if(f||p||e.shiftKey){d(e);return}u(e)},t[0]=f,t[1]=u,t[2]=d,t[3]=p,t[4]=g):g=t[4];let _=g,v=m?`text-destructive hover:text-destructive hover:bg-[color-mix(in_srgb,var(--status-error)_12%,transparent)]`:`text-muted-foreground hover:text-foreground hover:bg-[color-mix(in_srgb,var(--surface-foreground)_8%,transparent)]`,y;t[5]!==a||t[6]!==s||t[7]!==v?(y=X(`inline-flex items-center justify-center rounded-md focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50 transition-none`,v,a,s),t[5]=a,t[6]=s,t[7]=v,t[8]=y):y=t[8];let b=m?`delete-bin`:`inbox-archive`,x;t[9]!==o||t[10]!==b?(x=(0,$.jsx)(Z,{name:b,className:o}),t[9]=o,t[10]=b,t[11]=x):x=t[11];let S;t[12]!==_||t[13]!==h||t[14]!==l||t[15]!==c||t[16]!==y||t[17]!==x?(S=(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,className:y,"aria-label":h,onPointerDown:c,onMouseDown:l,onClick:_,onKeyDown:Ch,children:x})}),t[12]=_,t[13]=h,t[14]=l,t[15]=c,t[16]=y,t[17]=x,t[18]=S):S=t[18];let C;t[19]===h?C=t[20]:(C=(0,$.jsx)(Zr,{side:`top`,sideOffset:4,className:`rounded-md px-1.5 py-0.5 typography-micro`,children:h}),t[19]=h,t[20]=C);let w;return t[21]!==S||t[22]!==C?(w=(0,$.jsxs)($r,{children:[S,C]}),t[21]=S,t[22]=C,t[23]=w):w=t[23],w}),dh=Q.memo(function(e){let t=(0,Ts.c)(3),{number:n}=e;if(!qm())return null;let r=bn()?`⌘${n}`:`Ctrl+${n}`,i;return t[0]!==n||t[1]!==r?(i=(0,$.jsx)(Bi,{"data-sidebar-shortcut-number":n,className:`h-3.5 min-w-0 shrink-0 rounded-full border-0 bg-[color-mix(in_srgb,var(--surface-foreground)_6%,transparent)] px-1.5 font-sans text-[10px] font-medium tracking-tight text-muted-foreground/65 shadow-none`,"aria-hidden":`true`,children:r}),t[0]=n,t[1]=r,t[2]=i):i=t[2],i});function fh(e){let{t}=Fe(),{node:i,depth:a=0,groupDirectory:o,projectId:s,archivedBucket:c=!1,pinnedSessionIds:l,expandedParents:u,hasSessionSearchQuery:d,normalizedSessionSearchQuery:f,editingId:h,setEditingId:g,editTitle:_,setEditTitle:v,handleSaveEdit:y,handleCancelEdit:x,toggleParent:S,handleSessionSelect:C,handleSessionDoubleClick:w,togglePinnedSession:T,handleShareSession:E,copiedSessionId:D,handleCopyShareUrl:O,handleUnshareSession:k,setOpenSidebarMenuKey:A,renamingFolderId:j,getFoldersForScope:M,getSessionFolderId:N,removeSessionFromFolder:P,addSessionToFolder:F,createFolderAndStartRename:I,openContextPanelTab:R,handleDeleteSession:z,mobileVariant:B,alwaysShowActions:V,renderSessionNode:H,secondaryMeta:U,renderContext:W=`project`,subtreeContainsActive:ee,subtreeContainsEditing:G,menuOpenSessionId:te,childRenderExtrasFor:K,liveSessionById:ne,shortcutNumber:re=null}=e,ie=!!U?.projectLabel,pe=!!U?.branchLabel,me=Sp(e=>e.displayMode),he=Q.useMemo(()=>m(),[]),ge=me===`minimal`||he,_e=Q.useMemo(()=>b(),[]),ve=Q.useContext(Zi),ye=he?`group-hover:opacity-100 group-hover:pointer-events-auto`:`group-hover:opacity-100 group-hover:pointer-events-auto group-focus-within:opacity-100 group-focus-within:pointer-events-auto`,be=he,xe=W===`pinned`&&l.has(i.session.id),Se=!xe&&!c&&!B,Ce=`h-5 w-5`,we=`h-3.5 w-3.5`,Te=(Se||xe?1:0)+ +!!be+1,Ee=Te>=3?`group-hover:pr-18 group-focus-within:pr-18`:Te>=2?`group-hover:pr-12 group-focus-within:pr-12`:`group-hover:pr-7 group-focus-within:pr-7`,De=Te>=2?`pr-12`:`pr-8`,Oe=Q.useRef(!1),ke=Q.useRef(!1),[Me,Ne]=Q.useState(!1),Pe=Q.useRef(h);Pe.current=h;let Ie=Q.useRef(null),Le=Q.useRef(y);Le.current=y;let[Re,Be]=Q.useState(_),[Ve,He]=Q.useState(null),Ge=Q.useRef(Re);Ge.current=Re;let Ke=Q.useRef(null),qe=Q.useRef(null),Xe=Q.useRef(null),J=i.session,Ze=ne.get(J.id)??J,Qe=!!Ze.metadata?.openchamber?.assistant,et=p(J.directory??null)??p(o??null),tt=Ye(et??void 0,{bootstrap:!1}),nt=Vi(),rt=vm(e=>e.enabled),it=vm(Q.useMemo(()=>e=>e.selectedIds.has(J.id),[J.id])),ot=vm(e=>e.toggleSelected),st=vm(e=>e.setRange),[ct,lt]=Q.useState(!1),[ut,dt]=Q.useState(!0),[pt,mt]=Q.useState(!1),ht=`${W}:${c?`archived`:`active`}:${J.id}`,gt=at(Q.useMemo(()=>e=>!!e.sessionMemoryState.get(We(J.id))?.isZombie,[J.id])),_t=ft(J.id),vt=bt(J.id,et??void 0,{bootstrap:!1}),yt=Lt(J.id,et??void 0,{bootstrap:!1}),xt=Q.useMemo(()=>({scope:W,sessionId:J.id,projectId:s??null}),[s,W,J.id]),St=Q.useMemo(()=>Or(xt)??``,[xt]),Ct=Q.useRef(null),wt=fr(Q.useMemo(()=>e=>jr(e.focus,xt),[xt]));Q.useLayoutEffect(()=>{wt&&(Ct.current?.scrollIntoView({block:`nearest`,inline:`nearest`}),oh(xt))},[wt,xt]);let Tt=Ze.title||t(`sessions.sidebar.session.untitled`),Dt=Ze.metadata?.openchamber?.titleRefresh,Ot=typeof Dt?.lastError==`string`?Dt.lastError:null,kt=typeof Dt?.failedAt==`number`?Dt.failedAt:null;Q.useEffect(()=>{!Ot||kt===null||(He(null),console.warn(`[session-title] generation failed for ${J.id}: ${Ot}`))},[J.id,Ot,kt]),Q.useEffect(()=>{if(Ve===null)return;if(Tt!==Ve){He(null);return}let e=window.setTimeout(()=>He(null),3e4);return()=>window.clearTimeout(e)},[Ve,Tt]);let At=i.children.length>0||!!Ze.hasChildren,jt=l.has(J.id),Mt=ht,Nt=d?!0:u.has(Mt),Pt=!!Ze.parentID,Ft=W===`pinned`,It=$e(J.id)>0&&!Pt,Rt=ze(Ze)||Date.now(),zt=Hn(Rt),Bt=br(Rt),[Vt,Ht]=Q.useState(!1),Ut=Vt,Wt=Q.useMemo(()=>xs(Ze.title)!==null,[Ze.title]),[Gt,Kt]=Q.useState(!1),qt=Q.useMemo(()=>ch(i).length,[i]),Jt=Ae(e=>{let t=et??``,n=(Et()??rn(t,tt)).getTranscript(nn(t,e)),r=tt.getState().session.find(t=>t.id===e)?.revert?.messageID;return Je({sessionID:e,messages:$t(n),parts:n.partsByMessageID,revertMessageID:r}).list}),Yt=Ae(async e=>{let n=[],r=0;for(let i of e)try{await nt.ensureSessionRenderable(i.session.id);let e=Jt(i.session.id),a=i.session.title||t(`sessions.sidebar.session.export.untitledSubagent`),o=i.session.agent,s=await Yt(i.children);r+=s.skipped,n.push({title:a,agent:o,records:e,children:s.children})}catch{r+=ch(i).length+1}return{children:n,skipped:r}}),Xt=Ae(e=>{e<=0||Y.warning(t(e===1?`sessions.sidebar.session.export.skippedSubtaskSingle`:`sessions.sidebar.session.export.skippedSubtaskMany`,{count:e}))}),Zt=Ae(async e=>{if(!et){Y.error(t(`sessions.sidebar.session.export.nothingToExport`));return}await nt.ensureSessionRenderable(J.id);let n=Jt(J.id);if(n.length===0){Y.error(t(`sessions.sidebar.session.export.nothingToExport`));return}let r,a=0;if(e&&i.children.length>0){let e=await Yt(i.children);r=e.children,a=e.skipped}let o=dm(n,Ze.title??null,r),s=gm(Ze.title??null),c=await pm(o,s);if(c){Y.success(t(`sessions.sidebar.session.export.success`),{action:{label:t(hm()),onClick:()=>{mm(c).then(e=>{e||Y.error(t(`sessions.sidebar.session.export.failedRevealPath`))})}}}),Xt(a);return}fm(o,s),Y.success(t(`sessions.sidebar.session.export.success`)),Xt(a)}),Qt=Ae(async()=>{if(i.children.length>0){dt(!0),lt(!0);return}await Zt(!1)}),en=Ae(()=>{et&&L(`desktop_open_session_mini_chat_window`,{sessionId:J.id,directory:et,apiBaseUrl:r(),clientToken:n()}).catch(e=>{console.warn(`[session-sidebar] failed to open mini chat window`,e)})});je(qe,()=>{Le.current(Ge.current)},h===J.id),Q.useLayoutEffect(()=>{if(h!==J.id){Ke.current===J.id&&(Ke.current=null);return}Ke.current!==J.id&&(Ke.current=J.id,Be(_),queueMicrotask(()=>Xe.current?.select()))},[h,_,J.id]);let tn=Ae(e=>{if(!e&&Ie.current){let{id:e,title:t}=Ie.current;Ie.current=null,g(e),v(t)}}),an=Ae(e=>{Ht(e)}),on=Ae(e=>{e.preventDefault(),e.stopPropagation()}),sn=Ae(e=>{e.preventDefault(),e.stopPropagation()}),cn=Ae(e=>{e.preventDefault(),e.stopPropagation(),A(null),T(J.id)}),hn=Ae(e=>{e.preventDefault(),e.stopPropagation(),A(null),z(J,{archivedBucket:c})}),gn=Ae(e=>{e.preventDefault(),e.stopPropagation(),A(null),z(J,{archivedBucket:c,hardDelete:!0,skipConfirm:!0})}),_n=Ae(e=>{e.preventDefault(),e.stopPropagation(),A(null),T(J.id)}),vn=Ae(()=>{let e=_t?.type??`idle`;!et||pt||e===`busy`||e===`retry`||(mt(!0),(async()=>{try{await nt.refreshSessionTranscript(J.id,{directory:et}),Y.success(t(`sessions.sidebar.session.menu.refreshTranscriptSuccess`))}catch{Y.error(t(`sessions.sidebar.session.menu.refreshTranscriptFailed`))}finally{mt(!1)}})())}),yn=Ae(e=>{e.preventDefault(),e.stopPropagation()}),bn=Ae(e=>{e.preventDefault(),e.stopPropagation()}),xn=Ae(e=>{e.preventDefault(),e.stopPropagation(),ve?.vscode?.executeCommand(`openchamber.openSessionInEditor`,J.id,Tt)}),Cn=Ae(e=>{if(Oe.current){Oe.current=!1;return}if(rt){if(e?.preventDefault(),e?.stopPropagation(),e?.shiftKey){let e=(typeof document<`u`?Array.from(document.querySelectorAll(`[data-session-row]`)):[]).map(e=>e.getAttribute(`data-session-row`)).filter(e=>typeof e==`string`&&e.length>0),t=vm.getState().anchorId,n=new Map;n.set(J.id,ch(i)),st(t,J.id,e,et??null,n);return}ot(J.id,et??null,ch(i));return}C(J.id,et,s,W)}),wn=Ae(e=>{e.defaultPrevented||e.target?.closest(`button, a, input, [role="menuitem"], [role="menu"]`)||Cn(e)}),Tn=Ae(e=>{(e.button===2||e.button===0&&e.ctrlKey&&!rt)&&(Oe.current=!0)}),En=Ae(e=>{ke.current=e.pointerType===`mouse`,B&&e.pointerType===`touch`&&Ne(!0)}),Dn=Ae(e=>{B&&e.pointerType===`touch`&&Ne(!1)}),On=Ae(e=>{e.key!==`Enter`||!ke.current||(e.preventDefault(),e.stopPropagation(),w(J.id,Tt))}),kn=Ae(e=>{if(Cn(e),!ke.current)return;let t=e.currentTarget;window.requestAnimationFrame(()=>{ke.current=!0,t.focus({preventScroll:!0})})}),An=Ae(()=>{ke.current=!1}),jn=Ae(e=>{if(!ke.current)return;let t=e.relatedTarget;if(t instanceof Node&&e.currentTarget.contains(t))return;let n=document.activeElement;!(n instanceof HTMLElement)||!e.currentTarget.contains(n)||(n.blur(),ke.current=!1)});if(h===J.id){let e=async()=>{He(Tt),x();try{await Ue(J.id)}catch(e){He(null),console.warn(`[session-sidebar] failed to request smart title:`,e)}};return(0,$.jsx)(`div`,{className:`group relative my-0.5 flex items-center rounded-lg py-1.5 pr-2`,style:{paddingLeft:er(a)},children:(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-0`,children:[(0,$.jsxs)(`form`,{ref:qe,className:`flex w-full items-center gap-2`,onSubmit:e=>{e.preventDefault(),y(Re)},children:[(0,$.jsx)(`input`,{ref:Xe,value:Re,onChange:e=>Be(e.target.value),className:`flex-1 min-w-0 bg-transparent typography-ui-label outline-none placeholder:text-muted-foreground`,autoFocus:!0,placeholder:t(`sessions.sidebar.session.menu.rename`),onKeyDown:e=>{if(e.stopPropagation(),e.key===`Escape`){x();return}}}),(0,$.jsx)(`button`,{type:`button`,onClick:()=>{e()},"aria-label":t(`sessions.sidebar.session.rename.smartTitle`),title:t(`sessions.sidebar.session.rename.smartTitle`),className:`shrink-0 text-muted-foreground hover:text-foreground`,children:(0,$.jsx)(Z,{name:`ai-generate-2`,className:`size-3.5`})}),(0,$.jsx)(`button`,{type:`submit`,"aria-label":t(`sessions.sidebar.session.rename.save`),title:t(`sessions.sidebar.session.rename.save`),className:`shrink-0 text-muted-foreground hover:text-foreground`,children:(0,$.jsx)(Z,{name:`check`,className:`size-3.5`})})]}),ge?null:(0,$.jsx)(`div`,{className:`flex items-center justify-between gap-3 text-muted-foreground/60 min-w-0 overflow-hidden leading-tight`,style:{fontSize:`calc(var(--text-ui-label) * 0.85)`},children:(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1.5 overflow-hidden`,children:[At&&!Ft&&!Pt?(0,$.jsx)(`span`,{className:`inline-flex items-center justify-center flex-shrink-0`,children:Nt?(0,$.jsx)(Z,{name:`arrow-down-s`,className:`h-3 w-3`}):(0,$.jsx)(Z,{name:`arrow-right-s`,className:`h-3 w-3`})}):null,(0,$.jsx)(`span`,{className:`flex-shrink-0`,children:zt}),ie?(0,$.jsx)(`span`,{className:`truncate`,children:U?.projectLabel}):null,pe?(0,$.jsxs)(`span`,{className:`inline-flex min-w-0 items-center gap-0.5`,children:[(0,$.jsx)(Z,{name:`git-branch`,className:`h-3 w-3 flex-shrink-0`}),(0,$.jsx)(`span`,{className:`truncate`,children:U?.branchLabel})]}):null]})})]})},J.id)}let Mn=_t?.type??`idle`,Nn=Mn===`busy`||Mn===`retry`,Pn=Ve!==null||Dt?.isGenerating===!0,Fn=vt.length,In=yt.length>0,Ln=In||Nn||!In&&!Nn&&It&&!wt,Rn=!V||he,zn=In?(0,$.jsx)(`span`,{className:`inline-flex h-3.5 w-3.5 items-center justify-center`,"aria-label":t(`sessions.sidebar.session.status.questionRequired`),title:t(`sessions.sidebar.session.status.questionRequired`),children:(0,$.jsx)(Z,{name:`question`,className:`h-3.5 w-3.5 text-primary`})}):Nn?(0,$.jsx)(`span`,{className:`inline-flex h-3.5 w-3.5 items-center justify-center`,"aria-label":t(`sessions.sidebar.session.status.active`),title:t(`sessions.sidebar.session.status.active`),children:(0,$.jsx)(Go,{})}):(0,$.jsx)(`span`,{className:`inline-flex h-3.5 w-3.5 items-center justify-center`,"aria-label":t(`sessions.sidebar.session.status.unread`),title:t(`sessions.sidebar.session.status.unread`),children:(0,$.jsx)(`span`,{className:`h-2 w-2 rounded-full bg-[var(--status-info)]`})}),Bn=!Ft&&!V&&At&&jt,Vn=!Ft&&jt,Un=(0,$.jsx)(Z,{name:`pushpin-2-fill`,className:`h-3 w-3 flex-shrink-0 text-foreground`,"aria-label":t(`sessions.sidebar.session.status.pinned`)}),Wn=Vn?(0,$.jsx)(`span`,{className:X(`pointer-events-none absolute inline-flex h-3.5 w-3.5 items-center justify-center transition-opacity`,ge?`top-1/2 -translate-y-1/2`:`top-[14.5px] -translate-y-1/2`,Bn?`opacity-100 group-hover:opacity-0 group-focus-within:opacity-0`:``),style:{left:er(Math.max(0,a-1))},children:Un}):null,Gn=!Ft&&!Pt&&At,Kn=Gn&&!V,qn=er(Math.max(0,a-1)),Jn=()=>{!Nt&&i.children.length===0&&nt.loadChildren(J.id,et).catch(()=>void 0),S(Mt)},Yn=Gn?(0,$.jsx)(`span`,{role:`button`,tabIndex:0,onClick:e=>{e.stopPropagation(),e.currentTarget.blur(),Jn()},onKeyDown:e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),e.stopPropagation(),Jn())},style:{minWidth:14,minHeight:14,left:qn},className:X(`absolute inline-flex h-3.5 w-3.5 items-center justify-center rounded-md text-muted-foreground hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50 transition-opacity`,ge?`top-1/2 -translate-y-1/2`:`top-[14.5px] -translate-y-1/2`,Kn?`opacity-0 pointer-events-none group-hover:opacity-100 group-hover:pointer-events-auto group-focus-within:opacity-100 group-focus-within:pointer-events-auto`:``),"aria-label":t(Nt?`sessions.sidebar.session.subsessions.collapse`:`sessions.sidebar.session.subsessions.expand`),children:Nt?(0,$.jsx)(Z,{name:`arrow-down-s`,className:`h-3 w-3`}):(0,$.jsx)(Z,{name:`arrow-right-s`,className:`h-3 w-3`})}):null,Zn=gt?(0,$.jsx)(Z,{name:`error-warning`,className:`h-4 w-4 text-status-warning`}):null,Qn=(0,$.jsx)(le,{children:(0,$.jsx)(q,{className:`app-region-no-drag z-50`,children:(0,$.jsx)(oe,{"data-slot":`dropdown-menu-content`,finalFocus:()=>!(j||Pe.current),style:{backgroundColor:`var(--surface-elevated)`,color:`var(--surface-elevated-foreground)`},className:X(di,`min-w-[180px]`),children:(({Item:e,Separator:n,Sub:r,SubTrigger:i,SubContent:a})=>(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(e,{onClick:()=>{Ie.current={id:J.id,title:Tt}},className:`[&>svg]:mr-1`,children:[(0,$.jsx)(Z,{name:`pencil-ai`,className:`mr-1 h-4 w-4`}),t(`sessions.sidebar.session.menu.rename`)]}),(0,$.jsxs)(e,{onClick:()=>T(J.id),className:`[&>svg]:mr-1`,children:[jt?(0,$.jsx)(Z,{name:`unpin`,className:`mr-1 h-4 w-4`}):(0,$.jsx)(Z,{name:`pushpin`,className:`mr-1 h-4 w-4`}),t(jt?`sessions.sidebar.session.menu.unpin`:`sessions.sidebar.session.menu.pin`)]}),Ze.share?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(e,{onClick:()=>{Ze.share?.url&&O(Ze.share.url,J.id)},className:`[&>svg]:mr-1`,children:D===J.id?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Z,{name:`check`,className:`mr-1 h-4 w-4`,style:{color:`var(--status-success)`}}),t(`sessions.sidebar.session.menu.copied`)]}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Z,{name:`file-copy`,className:`mr-1 h-4 w-4`}),t(`sessions.sidebar.session.menu.copyLink`)]})}),(0,$.jsxs)(e,{onClick:()=>k(J.id),className:`[&>svg]:mr-1`,children:[(0,$.jsx)(Z,{name:`link-unlink-m`,className:`mr-1 h-4 w-4`}),t(`sessions.sidebar.session.menu.unshare`)]})]}):(0,$.jsxs)(e,{onClick:()=>E(Ze),className:`[&>svg]:mr-1`,children:[(0,$.jsx)(Z,{name:`share-2`,className:`mr-1 h-4 w-4`}),t(`sessions.sidebar.session.menu.share`)]}),(0,$.jsxs)(e,{onClick:()=>{Qt()},className:`[&>svg]:mr-1`,children:[(0,$.jsx)(Z,{name:`download`,className:`mr-1 h-4 w-4`}),t(`sessions.sidebar.session.menu.exportMarkdown`)]}),(0,$.jsxs)(e,{disabled:!et||Nn||pt,onClick:()=>{vn()},className:`[&>svg]:mr-1`,children:[(0,$.jsx)(Z,{name:`refresh`,className:X(`mr-1 h-4 w-4`,pt&&`animate-spin`)}),t(`sessions.sidebar.session.menu.refreshTranscript`)]}),Wt?(0,$.jsxs)(e,{onClick:()=>Kt(!0),className:`[&>svg]:mr-1`,children:[(0,$.jsx)(Qm,{className:`mr-1 h-4 w-4`}),t(`sessions.sidebar.session.menu.runFusion`)]}):null,et&&!c?(()=>{let o=M(et),s=N(et,J.id);return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(n,{}),(0,$.jsxs)(r,{children:[(0,$.jsxs)(i,{className:`[&>svg]:mr-1`,children:[(0,$.jsx)(Z,{name:`folder`,className:`h-4 w-4`}),t(`sessions.sidebar.folders.moveToFolder`)]}),(0,$.jsxs)(a,{className:`min-w-[180px]`,children:[o.length===0?(0,$.jsx)(e,{disabled:!0,className:`text-muted-foreground`,children:t(`sessions.sidebar.folders.none`)}):o.map(t=>(0,$.jsxs)(e,{onClick:()=>{s===t.id?P(et,J.id):F(et,t.id,J.id)},children:[(0,$.jsx)(`span`,{className:`flex-1 truncate`,children:t.name}),s===t.id?(0,$.jsx)(Z,{name:`check`,className:`ml-2 h-3.5 w-3.5 text-primary flex-shrink-0`}):null]},t.id)),(0,$.jsx)(n,{}),(0,$.jsxs)(e,{onClick:()=>{let e=I(et);e&&F(et,e.id,J.id)},children:[(0,$.jsx)(Z,{name:`add`,className:`mr-1 h-4 w-4`}),t(`sessions.sidebar.folders.newFolderEllipsis`)]}),s?(0,$.jsxs)(e,{onClick:()=>{P(et,J.id)},className:`text-destructive focus:text-destructive`,children:[(0,$.jsx)(Z,{name:`close`,className:`mr-1 h-4 w-4`}),t(`sessions.sidebar.folders.removeFromFolder`)]}):null]})]})]})})():null,he?null:(0,$.jsxs)(e,{disabled:!et,onClick:()=>{et&&R(et,{mode:`chat`,dedupeKey:`session:${J.id}`,label:Tt,sessionTitleFallback:Tt})},className:`[&>svg]:mr-1`,children:[(0,$.jsx)(Z,{name:`chat-thread`,className:`mr-1 h-4 w-4`}),(0,$.jsx)(`span`,{className:`truncate`,children:t(`sessions.sidebar.session.menu.openInSidePanel`)}),(0,$.jsx)(`span`,{className:`shrink-0 typography-micro px-1 rounded leading-none pb-px text-[var(--status-warning)] bg-[var(--status-warning)]/10`,children:t(`sessions.sidebar.session.menu.betaBadge`)})]}),_e?(0,$.jsxs)(e,{disabled:!et,onClick:en,className:`[&>svg]:mr-1`,children:[(0,$.jsx)(Z,{name:`window`,className:`mr-1 h-4 w-4`}),(0,$.jsx)(`span`,{className:`truncate`,children:t(`sessions.sidebar.session.menu.openMiniChatWindow`)})]}):null,(0,$.jsx)(n,{}),c?null:(0,$.jsxs)(e,{className:`[&>svg]:mr-1`,onClick:()=>z(J,{archivedBucket:c}),children:[(0,$.jsx)(Z,{name:`inbox-archive`,className:`mr-1 h-4 w-4`}),t(`sessions.sidebar.bulkActions.archive`)]}),(0,$.jsxs)(e,{className:`text-destructive focus:text-destructive [&>svg]:mr-1`,onClick:()=>z(J,{archivedBucket:c,hardDelete:!0}),children:[(0,$.jsx)(Z,{name:`delete-bin`,className:`mr-1 h-4 w-4`}),t(`sessions.sidebar.bulkActions.delete`)]})]}))({Item:({className:e,...t})=>(0,$.jsx)(se,{className:X(bi,e),...t}),Separator:({className:e,...t})=>(0,$.jsx)(ae,{className:X(ui,e),...t}),Sub:ce,SubTrigger:({className:e,children:t,...n})=>(0,$.jsxs)(ue,{className:X(vi,e),...n,children:[t,(0,$.jsx)(Z,{name:`arrow-right-s`,className:`ml-auto size-3.5`})]}),SubContent:({className:e,children:t,...n})=>(0,$.jsx)(le,{children:(0,$.jsx)(q,{className:`app-region-no-drag z-50`,children:(0,$.jsx)(oe,{"data-slot":`dropdown-menu-sub-content`,style:{backgroundColor:`var(--surface-elevated)`,color:`var(--surface-elevated-foreground)`},className:X(di,e),...n,children:t})})})})})})});return(0,$.jsxs)(Q.Fragment,{children:[(0,$.jsx)(fp,{sessionId:J.id,sessionDirectory:et??null,sessionTitle:Tt,children:(0,$.jsxs)(de,{open:Vt,onOpenChange:an,onOpenChangeComplete:tn,children:[(0,$.jsxs)(fe,{render:(0,$.jsx)(`div`,{ref:Ct,"data-session-row":J.id,"data-session-scope":et??``,"data-session-focus-scope":W,"data-session-focus-key":St,"data-session-project-id":s??``,"data-session-archived":c?`1`:`0`,"data-session-depth":a,onClick:wn,onMouseLeave:jn,className:X(`group relative my-0.5 flex cursor-pointer items-center rounded-lg py-1.5 pr-2`,wt&&!it&&`bg-[color-mix(in_srgb,var(--surface-foreground)_6%,transparent)] dark:bg-[color-mix(in_srgb,var(--surface-foreground)_11%,transparent)]`,it&&`bg-[color-mix(in_srgb,var(--surface-foreground)_6%,transparent)] dark:bg-[color-mix(in_srgb,var(--surface-foreground)_11%,transparent)]`,!wt&&!it&&`hover:bg-[color-mix(in_srgb,var(--surface-foreground)_3.5%,transparent)] dark:hover:bg-[color-mix(in_srgb,var(--surface-foreground)_8%,transparent)]`)}),children:[Wn,Yn,(0,$.jsx)(`div`,{className:`flex min-w-0 flex-1 items-center`,style:{paddingLeft:er(a)},children:(0,$.jsx)(`div`,{className:`flex min-w-0 flex-1 items-center`,children:(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,onPointerDown:En,onPointerUp:Dn,onPointerCancel:Dn,onMouseDown:Tn,onKeyDown:On,onBlur:An,onClick:kn,onDoubleClick:e=>{e.stopPropagation(),w(J.id,Tt)},className:X(`relative flex min-w-0 flex-1 cursor-pointer flex-col gap-0 overflow-hidden rounded-md text-left focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50 text-foreground select-none has-[[data-sidebar-shortcut-number]]:!pr-0`,Me&&`bg-[color-mix(in_srgb,var(--surface-foreground)_8%,transparent)]`,V?he?Ee:De:Ee),children:(0,$.jsxs)(`div`,{className:`flex w-full items-center min-w-0 flex-1 gap-1 overflow-hidden`,children:[(0,$.jsx)(`div`,{className:X(`block min-w-0 flex-1 truncate typography-ui-label font-normal text-foreground`,Pn&&`animate-text-shimmer`),"aria-busy":Pn||void 0,children:Xn(Tt,f)}),Qe?(0,$.jsx)(Z,{name:`ai-agent`,className:`size-3 shrink-0 text-muted-foreground`,"aria-label":`Assistant`}):null,Fn>0?(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded bg-destructive/10 px-1 py-0.5 text-[0.7rem] text-destructive flex-shrink-0`,title:t(`sessions.sidebar.session.status.permissionRequired`),"aria-label":t(`sessions.sidebar.session.status.permissionRequired`),children:[(0,$.jsx)(Z,{name:`shield`,className:`h-3 w-3`}),(0,$.jsx)(`span`,{className:`leading-none`,children:Fn})]}):null,Ln?(0,$.jsx)(`span`,{className:X(`inline-flex shrink-0 items-center justify-center transition-none`,Rn?X(`group-hover:hidden group-focus-within:hidden`,Ut?`hidden`:``):Ut?`invisible`:``),children:zn}):null,re?(0,$.jsx)(dh,{number:re}):null]})})}),he?null:(0,$.jsx)(Zr,{side:`right`,align:`start`,sideOffset:8,className:`w-64 max-w-[min(16rem,calc(100vw-2rem))] px-3 py-2.5 text-left shadow-md`,children:(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5 text-left`,children:[(0,$.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,$.jsx)(`div`,{className:`min-w-0 flex-1 break-words typography-ui-label font-medium text-foreground`,children:Tt}),(0,$.jsx)(`div`,{className:`flex-shrink-0 typography-meta text-muted-foreground`,children:Bt})]}),ie?(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1.5 typography-meta text-muted-foreground`,children:[(0,$.jsx)(Z,{name:`folder-open`,className:`h-3.5 w-3.5 flex-shrink-0`}),(0,$.jsx)(`span`,{className:`truncate`,children:U?.projectLabel})]}):null,pe?(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1.5 typography-meta text-muted-foreground`,children:[(0,$.jsx)(Z,{name:`git-branch`,className:`h-3.5 w-3.5 flex-shrink-0`}),(0,$.jsx)(`span`,{className:`truncate`,children:U?.branchLabel})]}):null]})})]})})}),Zn&&!B?(0,$.jsx)(`div`,{className:X(`absolute top-1/2 -translate-y-1/2 z-10`,ge?`right-0`:`right-[30px]`),children:Zn}):null,(0,$.jsxs)(`div`,{className:X(`absolute right-1 top-1/2 z-10 flex -translate-y-1/2 items-center gap-1 transition-none group-has-[[data-sidebar-shortcut-number]]:hidden`,Ut||V&&!he?`opacity-100`:X(`opacity-0`,ye)),children:[Se?(0,$.jsx)(lh,{pinLabel:t(`sessions.sidebar.session.menu.pin`),buttonSizeClass:Ce,iconSizeClass:we,onPointerDown:on,onMouseDown:sn,onPin:cn}):null,xe?(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,className:X(`inline-flex items-center justify-center rounded-md text-muted-foreground hover:text-foreground hover:bg-[color-mix(in_srgb,var(--surface-foreground)_8%,transparent)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50 transition-none`,Ce),"aria-label":t(`sessions.sidebar.session.actions.pinned`),onPointerDown:on,onMouseDown:sn,onClick:_n,onKeyDown:e=>e.stopPropagation(),children:(0,$.jsx)(Z,{name:`pushpin-2-fill`,className:we})})}),(0,$.jsx)(Zr,{side:`top`,sideOffset:4,className:`rounded-md px-1.5 py-0.5 typography-micro`,children:t(`sessions.sidebar.session.actions.pinned`)})]}):null,be?(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,className:X(`inline-flex items-center justify-center rounded-md text-muted-foreground hover:text-foreground hover:bg-[color-mix(in_srgb,var(--surface-foreground)_8%,transparent)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50 transition-none`,Ce),"aria-label":t(`sessions.sidebar.session.actions.openInEditor`),onPointerDown:yn,onMouseDown:bn,onClick:xn,onKeyDown:e=>e.stopPropagation(),children:(0,$.jsx)(Z,{name:`external-link`,className:we})})}),(0,$.jsx)(Zr,{side:`top`,sideOffset:4,className:`rounded-md px-1.5 py-0.5 typography-micro`,children:t(`sessions.sidebar.session.actions.openInEditor`)})]}):null,(0,$.jsx)(uh,{archiveLabel:t(`sessions.sidebar.bulkActions.archive`),deleteLabel:t(`sessions.sidebar.bulkActions.delete`),deleteOnly:c===!0,buttonSizeClass:Ce,iconSizeClass:we,revealClassName:ge&&!V&&!Ut?X(`opacity-0`,ye):`opacity-100`,onPointerDown:on,onMouseDown:sn,onArchive:hn,onDelete:gn})]})]}),Qn]})}),!Ft&&At&&Nt?i.children.map(e=>{let t=K?K(e):{subtreeContainsActive:ee,subtreeContainsEditing:G,menuOpenSessionId:te,nodeStructureKey:``};return H(e,a+1,et??o,s,c,void 0,W,t)}):null,(0,$.jsx)(mn,{open:ct,onOpenChange:lt,children:(0,$.jsxs)(dn,{showCloseButton:!1,className:`max-w-sm gap-5`,children:[(0,$.jsxs)(ln,{children:[(0,$.jsx)(fn,{children:t(`sessions.sidebar.session.export.dialog.title`)}),(0,$.jsx)(pn,{children:t(qt===1?`sessions.sidebar.session.export.dialog.descriptionSingle`:`sessions.sidebar.session.export.dialog.descriptionMany`,{count:qt})})]}),(0,$.jsxs)(`label`,{className:`flex items-center gap-2 typography-ui-label cursor-pointer`,children:[(0,$.jsx)(`input`,{type:`checkbox`,checked:ut,onChange:e=>dt(e.target.checked),className:`h-4 w-4 rounded border-border accent-primary`}),t(`sessions.sidebar.session.export.dialog.includeSubtasks`)]}),(0,$.jsxs)(un,{children:[(0,$.jsx)(Sn,{type:`button`,onClick:()=>lt(!1),variant:`outline`,size:`sm`,children:t(`sessions.sidebar.dialogs.cancel`)}),(0,$.jsx)(Sn,{type:`button`,onClick:()=>{lt(!1),Zt(ut)},size:`sm`,children:t(`sessions.sidebar.session.export.dialog.confirm`)})]})]})}),Wt?(0,$.jsx)(Zm,{session:Ze,open:Gt,onOpenChange:Kt}):null]},J.id)}var ph=e=>p(e.session.directory??null),mh=(e,t)=>(e?.projectLabel??null)===(t?.projectLabel??null)&&(e?.branchLabel??null)===(t?.branchLabel??null),hh=e=>{if(!e.openSidebarMenuKey)return null;let t=e.archivedBucket?`archived`:`active`,n=`${e.renderContext??`project`}:${t}:`;return e.openSidebarMenuKey.startsWith(n)?e.openSidebarMenuKey.slice(n.length):null},gh=e=>e.menuOpenSessionId??hh(e),_h=(e,t,n)=>t?n.has(e.node.session.id)?!0:yp(e.node,t):!1,vh=(e,t,n,r,i)=>{if(e.session.id!==t.session.id)return!0;let a=i(e);if(n.has(a)!==r.has(a)||e.children.length!==t.children.length)return!0;for(let a=0;a<e.children.length;a+=1)if(vh(e.children[a],t.children[a],n,r,i))return!0;return!1},yh=(e,t,n,r)=>{if(e.session.id!==t.session.id)return!0;let i=e.session.id,a=n.get(i)??e.session,o=r.get(i)??t.session;if(a!==o&&_p(a)!==_p(o)||e.children.length!==t.children.length)return!0;for(let i=0;i<e.children.length;i+=1)if(yh(e.children[i],t.children[i],n,r))return!0;return!1},bh=(e,t)=>{if(e.hasSessionSearchQuery||t.hasSessionSearchQuery)return!1;let n=e.archivedBucket?`archived`:`active`,r=t.archivedBucket?`archived`:`active`;return vh(e.node,t.node,e.expandedParents,t.expandedParents,t=>`${e.renderContext??`project`}:${n}:${t.session.id}`)||vh(e.node,t.node,e.expandedParents,t.expandedParents,e=>`${t.renderContext??`project`}:${r}:${e.session.id}`)},xh=Q.memo(fh,(e,t)=>{if(e.node.session.id!==t.node.session.id||e.depth!==t.depth||e.groupDirectory!==t.groupDirectory||e.projectId!==t.projectId||e.archivedBucket!==t.archivedBucket||(e.renderContext??`project`)!==(t.renderContext??`project`)||e.mobileVariant!==t.mobileVariant||e.alwaysShowActions!==t.alwaysShowActions||e.shortcutNumber!==t.shortcutNumber||e.hasSessionSearchQuery!==t.hasSessionSearchQuery||e.normalizedSessionSearchQuery!==t.normalizedSessionSearchQuery||e.notifyOnSubtasks!==t.notifyOnSubtasks||e.nodeStructureKey!==t.nodeStructureKey||ph(e.node)!==ph(t.node)||!mh(e.secondaryMeta,t.secondaryMeta)||e.liveSessionById!==t.liveSessionById&&yh(e.node,t.node,e.liveSessionById,t.liveSessionById)||e.pinnedSessionIds!==t.pinnedSessionIds&&vh(e.node,t.node,e.pinnedSessionIds,t.pinnedSessionIds,e=>e.session.id)||e.expandedParents!==t.expandedParents&&bh(e,t)||e.currentSessionId!==t.currentSessionId&&(_h(e,e.currentSessionId,e.subtreeContainsActive)||_h(t,t.currentSessionId,t.subtreeContainsActive))||e.editingId!==t.editingId&&(_h(e,e.editingId,e.subtreeContainsEditing)||_h(t,t.editingId,t.subtreeContainsEditing))||e.editTitle!==t.editTitle&&(_h(e,e.editingId,e.subtreeContainsEditing)||_h(t,t.editingId,t.subtreeContainsEditing))||e.copiedSessionId!==t.copiedSessionId&&(yp(e.node,e.copiedSessionId)||yp(t.node,t.copiedSessionId)))return!1;if(e.openSidebarMenuKey!==t.openSidebarMenuKey){let n=gh(e),r=gh(t);if(yp(e.node,n)||yp(t.node,r))return!1}if(e.renamingFolderId!==t.renamingFolderId){let n=gh(e),r=gh(t);if(yp(e.node,n)||yp(t.node,r))return!1}return e.setEditingId===t.setEditingId&&e.setEditTitle===t.setEditTitle&&e.handleSaveEdit===t.handleSaveEdit&&e.handleCancelEdit===t.handleCancelEdit&&e.toggleParent===t.toggleParent&&e.handleSessionSelect===t.handleSessionSelect&&e.handleSessionDoubleClick===t.handleSessionDoubleClick&&e.togglePinnedSession===t.togglePinnedSession&&e.handleShareSession===t.handleShareSession&&e.handleCopyShareUrl===t.handleCopyShareUrl&&e.handleUnshareSession===t.handleUnshareSession&&e.setOpenSidebarMenuKey===t.setOpenSidebarMenuKey&&e.getFoldersForScope===t.getFoldersForScope&&e.getSessionFolderId===t.getSessionFolderId&&e.removeSessionFromFolder===t.removeSessionFromFolder&&e.addSessionToFolder===t.addSessionToFolder&&e.createFolderAndStartRename===t.createFolderAndStartRename&&e.openContextPanelTab===t.openContextPanelTab&&e.handleDeleteSession===t.handleDeleteSession&&e.renderSessionNode===t.renderSessionNode});function Sh(e){return e.stopPropagation()}function Ch(e){return e.stopPropagation()}function wh(e){let t=(0,Ts.c)(71),{t:n}=Fe(),{value:r,setValue:i,showDeletionDialog:a,setShowDeletionDialog:o,onConfirm:s}=e,c,l,u,d,f,p,m,h,g,_;if(t[0]!==i||t[1]!==n||t[2]!==r){let e=n(`sessions.sidebar.session.untitled`);d=mn,g=!!r,t[13]===i?_=t[14]:(_=e=>{e||i(null)},t[13]=i,t[14]=_),u=dn,m=!1,h=`max-w-sm gap-5`,l=ln;let a;t[15]!==n||t[16]!==r?.archivedBucket?(a=r?.archivedBucket?n(`sessions.sidebar.dialogs.deleteSession.title`):n(`sessions.sidebar.dialogs.archiveSession.title`),t[15]=n,t[16]=r?.archivedBucket,t[17]=a):a=t[17],t[18]===a?p=t[19]:(p=(0,$.jsx)(fn,{children:a}),t[18]=a,t[19]=p),c=pn,f=r&&r.descendantCount>0?r.archivedBucket?r.descendantCount===1?n(`sessions.sidebar.dialogs.deleteSession.withOneSubtask`,{sessionTitle:r.session.title||e,count:r.descendantCount}):n(`sessions.sidebar.dialogs.deleteSession.withManySubtasks`,{sessionTitle:r.session.title||e,count:r.descendantCount}):r.descendantCount===1?n(`sessions.sidebar.dialogs.archiveSession.withOneSubtask`,{sessionTitle:r.session.title||e,count:r.descendantCount}):n(`sessions.sidebar.dialogs.archiveSession.withManySubtasks`,{sessionTitle:r.session.title||e,count:r.descendantCount}):r?.archivedBucket?n(`sessions.sidebar.dialogs.deleteSession.single`,{sessionTitle:r?.session.title||e}):n(`sessions.sidebar.dialogs.archiveSession.single`,{sessionTitle:r?.session.title||e}),t[0]=i,t[1]=n,t[2]=r,t[3]=c,t[4]=l,t[5]=u,t[6]=d,t[7]=f,t[8]=p,t[9]=m,t[10]=h,t[11]=g,t[12]=_}else c=t[3],l=t[4],u=t[5],d=t[6],f=t[7],p=t[8],m=t[9],h=t[10],g=t[11],_=t[12];let v;t[20]!==c||t[21]!==f?(v=(0,$.jsx)(c,{children:f}),t[20]=c,t[21]=f,t[22]=v):v=t[22];let y;t[23]!==l||t[24]!==p||t[25]!==v?(y=(0,$.jsxs)(l,{children:[p,v]}),t[23]=l,t[24]=p,t[25]=v,t[26]=y):y=t[26];let b;t[27]!==o||t[28]!==a?(b=()=>o(!a),t[27]=o,t[28]=a,t[29]=b):b=t[29];let x=!a,S;t[30]===a?S=t[31]:(S=a?(0,$.jsx)(Z,{name:`checkbox-blank`,className:`h-4 w-4`}):(0,$.jsx)(Z,{name:`checkbox`,className:`h-4 w-4 text-primary`}),t[30]=a,t[31]=S);let C;t[32]===n?C=t[33]:(C=n(`sessions.sidebar.dialogs.neverAsk`),t[32]=n,t[33]=C);let w;t[34]!==S||t[35]!==C||t[36]!==b||t[37]!==x?(w=(0,$.jsxs)(`button`,{type:`button`,onClick:b,className:`inline-flex items-center gap-1.5 typography-ui-label text-muted-foreground transition-colors hover:text-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-primary/50`,"aria-pressed":x,children:[S,C]}),t[34]=S,t[35]=C,t[36]=b,t[37]=x,t[38]=w):w=t[38];let T;t[39]===i?T=t[40]:(T=()=>i(null),t[39]=i,t[40]=T);let E;t[41]===n?E=t[42]:(E=n(`sessions.sidebar.dialogs.cancel`),t[41]=n,t[42]=E);let D;t[43]!==T||t[44]!==E?(D=(0,$.jsx)(`button`,{type:`button`,onClick:T,className:`inline-flex h-8 items-center justify-center rounded-md border border-border px-3 typography-ui-label text-foreground hover:bg-interactive-hover/50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50`,children:E}),t[43]=T,t[44]=E,t[45]=D):D=t[45];let O;t[46]===s?O=t[47]:(O=()=>void s(),t[46]=s,t[47]=O);let k;t[48]!==n||t[49]!==r?.archivedBucket?(k=r?.archivedBucket?n(`sessions.sidebar.bulkActions.delete`):n(`sessions.sidebar.bulkActions.archive`),t[48]=n,t[49]=r?.archivedBucket,t[50]=k):k=t[50];let A;t[51]!==O||t[52]!==k?(A=(0,$.jsx)(`button`,{type:`button`,onClick:O,className:`inline-flex h-8 items-center justify-center rounded-md bg-destructive px-3 typography-ui-label text-destructive-foreground hover:bg-destructive/90 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-destructive/50`,children:k}),t[51]=O,t[52]=k,t[53]=A):A=t[53];let j;t[54]!==D||t[55]!==A?(j=(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[D,A]}),t[54]=D,t[55]=A,t[56]=j):j=t[56];let M;t[57]!==w||t[58]!==j?(M=(0,$.jsxs)(un,{className:`w-full sm:items-center sm:justify-between`,children:[w,j]}),t[57]=w,t[58]=j,t[59]=M):M=t[59];let N;t[60]!==u||t[61]!==m||t[62]!==M||t[63]!==h||t[64]!==y?(N=(0,$.jsxs)(u,{showCloseButton:m,className:h,children:[y,M]}),t[60]=u,t[61]=m,t[62]=M,t[63]=h,t[64]=y,t[65]=N):N=t[65];let P;return t[66]!==d||t[67]!==N||t[68]!==g||t[69]!==_?(P=(0,$.jsx)(d,{open:g,onOpenChange:_,children:N}),t[66]=d,t[67]=N,t[68]=g,t[69]=_,t[70]=P):P=t[70],P}function Th(e){let t=(0,Ts.c)(57),{t:n}=Fe(),{value:r,setValue:i,showDeletionDialog:a,setShowDeletionDialog:o,onConfirm:s}=e,c=r?.archivedBucket===!0,l=r?.sessionCount??0,u;t[0]!==c||t[1]!==l||t[2]!==n?(u=n(c?l===1?`sessions.sidebar.dialogs.deleteSession.title`:`sessions.sidebar.dialogs.deleteSessions.title`:l===1?`sessions.sidebar.dialogs.archiveSession.title`:`sessions.sidebar.dialogs.archiveSessions.title`),t[0]=c,t[1]=l,t[2]=n,t[3]=u):u=t[3];let d=u,f;t[4]!==c||t[5]!==l||t[6]!==n?(f=n(c?l===1?`sessions.sidebar.dialogs.deleteSessions.singleDescription`:`sessions.sidebar.dialogs.deleteSessions.pluralDescription`:l===1?`sessions.sidebar.dialogs.archiveSessions.singleDescription`:`sessions.sidebar.dialogs.archiveSessions.pluralDescription`,{count:l}),t[4]=c,t[5]=l,t[6]=n,t[7]=f):f=t[7];let p=f,m=!!r,h;t[8]===i?h=t[9]:(h=e=>{e||i(null)},t[8]=i,t[9]=h);let g;t[10]===d?g=t[11]:(g=(0,$.jsx)(fn,{children:d}),t[10]=d,t[11]=g);let _;t[12]===p?_=t[13]:(_=(0,$.jsx)(pn,{children:p}),t[12]=p,t[13]=_);let v;t[14]!==g||t[15]!==_?(v=(0,$.jsxs)(ln,{children:[g,_]}),t[14]=g,t[15]=_,t[16]=v):v=t[16];let y;t[17]!==o||t[18]!==a?(y=()=>o(!a),t[17]=o,t[18]=a,t[19]=y):y=t[19];let b=!a,x;t[20]===a?x=t[21]:(x=a?(0,$.jsx)(Z,{name:`checkbox-blank`,className:`h-4 w-4`}):(0,$.jsx)(Z,{name:`checkbox`,className:`h-4 w-4 text-primary`}),t[20]=a,t[21]=x);let S;t[22]===n?S=t[23]:(S=n(`sessions.sidebar.dialogs.neverAsk`),t[22]=n,t[23]=S);let C;t[24]!==S||t[25]!==y||t[26]!==b||t[27]!==x?(C=(0,$.jsxs)(`button`,{type:`button`,onClick:y,className:`inline-flex items-center gap-1.5 typography-ui-label text-muted-foreground transition-colors hover:text-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-primary/50`,"aria-pressed":b,children:[x,S]}),t[24]=S,t[25]=y,t[26]=b,t[27]=x,t[28]=C):C=t[28];let w;t[29]===i?w=t[30]:(w=()=>i(null),t[29]=i,t[30]=w);let T;t[31]===n?T=t[32]:(T=n(`sessions.sidebar.dialogs.cancel`),t[31]=n,t[32]=T);let E;t[33]!==w||t[34]!==T?(E=(0,$.jsx)(`button`,{type:`button`,onClick:w,className:`inline-flex h-8 items-center justify-center rounded-md border border-border px-3 typography-ui-label text-foreground hover:bg-interactive-hover/50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50`,children:T}),t[33]=w,t[34]=T,t[35]=E):E=t[35];let D;t[36]===s?D=t[37]:(D=()=>void s(),t[36]=s,t[37]=D);let O;t[38]!==c||t[39]!==n?(O=n(c?`sessions.sidebar.bulkActions.delete`:`sessions.sidebar.bulkActions.archive`),t[38]=c,t[39]=n,t[40]=O):O=t[40];let k;t[41]!==D||t[42]!==O?(k=(0,$.jsx)(`button`,{type:`button`,onClick:D,className:`inline-flex h-8 items-center justify-center rounded-md bg-destructive px-3 typography-ui-label text-destructive-foreground hover:bg-destructive/90 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-destructive/50`,children:O}),t[41]=D,t[42]=O,t[43]=k):k=t[43];let A;t[44]!==E||t[45]!==k?(A=(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[E,k]}),t[44]=E,t[45]=k,t[46]=A):A=t[46];let j;t[47]!==C||t[48]!==A?(j=(0,$.jsxs)(un,{className:`w-full sm:items-center sm:justify-between`,children:[C,A]}),t[47]=C,t[48]=A,t[49]=j):j=t[49];let M;t[50]!==j||t[51]!==v?(M=(0,$.jsxs)(dn,{showCloseButton:!1,className:`max-w-sm gap-5`,children:[v,j]}),t[50]=j,t[51]=v,t[52]=M):M=t[52];let N;return t[53]!==m||t[54]!==M||t[55]!==h?(N=(0,$.jsx)(mn,{open:m,onOpenChange:h,children:M}),t[53]=m,t[54]=M,t[55]=h,t[56]=N):N=t[56],N}function Eh(e){let t=(0,Ts.c)(36),{t:n}=Fe(),{value:r,setValue:i,onConfirm:a}=e,o=!!r,s;t[0]===i?s=t[1]:(s=e=>{e||i(null)},t[0]=i,t[1]=s);let c;t[2]===n?c=t[3]:(c=n(`sessions.sidebar.dialogs.deleteFolder.title`),t[2]=n,t[3]=c);let l;t[4]===c?l=t[5]:(l=(0,$.jsx)(fn,{children:c}),t[4]=c,t[5]=l);let u;t[6]!==n||t[7]!==r?(u=r&&(r.subFolderCount>0||r.sessionCount>0)?r.subFolderCount>0?r.subFolderCount===1?n(`sessions.sidebar.dialogs.deleteFolder.withOneSubfolder`,{folderName:r.folderName,count:r.subFolderCount}):n(`sessions.sidebar.dialogs.deleteFolder.withManySubfolders`,{folderName:r.folderName,count:r.subFolderCount}):n(`sessions.sidebar.dialogs.deleteFolder.withContentsNoSubfolders`,{folderName:r.folderName}):n(`sessions.sidebar.dialogs.deleteFolder.single`,{folderName:r?.folderName??``}),t[6]=n,t[7]=r,t[8]=u):u=t[8];let d;t[9]===u?d=t[10]:(d=(0,$.jsx)(pn,{children:u}),t[9]=u,t[10]=d);let f;t[11]!==l||t[12]!==d?(f=(0,$.jsxs)(ln,{children:[l,d]}),t[11]=l,t[12]=d,t[13]=f):f=t[13];let p;t[14]===i?p=t[15]:(p=()=>i(null),t[14]=i,t[15]=p);let m;t[16]===n?m=t[17]:(m=n(`sessions.sidebar.dialogs.cancel`),t[16]=n,t[17]=m);let h;t[18]!==p||t[19]!==m?(h=(0,$.jsx)(`button`,{type:`button`,onClick:p,className:`inline-flex h-8 items-center justify-center rounded-md border border-border px-3 typography-ui-label text-foreground hover:bg-interactive-hover/50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50`,children:m}),t[18]=p,t[19]=m,t[20]=h):h=t[20];let g;t[21]===n?g=t[22]:(g=n(`sessions.sidebar.bulkActions.delete`),t[21]=n,t[22]=g);let _;t[23]!==a||t[24]!==g?(_=(0,$.jsx)(`button`,{type:`button`,onClick:a,className:`inline-flex h-8 items-center justify-center rounded-md bg-destructive px-3 typography-ui-label text-destructive-foreground hover:bg-destructive/90 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-destructive/50`,children:g}),t[23]=a,t[24]=g,t[25]=_):_=t[25];let v;t[26]!==_||t[27]!==h?(v=(0,$.jsxs)(un,{children:[h,_]}),t[26]=_,t[27]=h,t[28]=v):v=t[28];let y;t[29]!==v||t[30]!==f?(y=(0,$.jsxs)(dn,{showCloseButton:!1,className:`max-w-sm gap-5`,children:[f,v]}),t[29]=v,t[30]=f,t[31]=y):y=t[31];let b;return t[32]!==o||t[33]!==s||t[34]!==y?(b=(0,$.jsx)(mn,{open:o,onOpenChange:s,children:y}),t[32]=o,t[33]=s,t[34]=y,t[35]=b):b=t[35],b}var Dh=e=>{let t=(0,Ts.c)(46),{selectedCount:n,scopeKey:r,scopeFolders:i,archivedBucket:a,onMoveToFolder:o,onCreateFolderAndMove:s,onRemoveFromFolder:c,canRemoveFromFolder:l,onDelete:u,onDone:d}=e,{t:f}=Fe(),p=!!r&&!a,m;t[0]!==a||t[1]!==f?(m=f(a?`sessions.sidebar.bulkActions.delete`:`sessions.sidebar.bulkActions.archive`),t[0]=a,t[1]=f,t[2]=m):m=t[2];let h=m,g;t[3]!==n||t[4]!==f?(g=f(`sessions.sidebar.bulkActions.selectedCount`,{count:n}),t[3]=n,t[4]=f,t[5]=g):g=t[5];let _;t[6]===g?_=t[7]:(_=(0,$.jsx)(`span`,{className:`typography-ui-label text-muted-foreground whitespace-nowrap`,children:g}),t[6]=g,t[7]=_);let v;t[8]!==p||t[9]!==l||t[10]!==s||t[11]!==o||t[12]!==c||t[13]!==i||t[14]!==f?(v=p?(0,$.jsxs)(Si,{children:[(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(Oi,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,className:`inline-flex h-7 w-7 items-center justify-center rounded-md text-muted-foreground hover:bg-interactive-hover/50 hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50`,"aria-label":f(`sessions.sidebar.bulkActions.moveToFolder`),children:(0,$.jsx)(Z,{name:`folder`,className:`h-4 w-4`})})})}),(0,$.jsx)(Zr,{side:`top`,sideOffset:4,children:(0,$.jsx)(`p`,{children:f(`sessions.sidebar.bulkActions.moveToFolder`)})})]}),(0,$.jsxs)(Di,{align:`end`,className:`min-w-[180px]`,children:[i.length===0?(0,$.jsx)(ki,{disabled:!0,className:`text-muted-foreground`,children:f(`sessions.sidebar.folders.none`)}):i.map(e=>(0,$.jsx)(ki,{onClick:()=>o(e.id),children:(0,$.jsx)(`span`,{className:`flex-1 truncate`,children:e.name})},e.id)),(0,$.jsx)(li,{}),(0,$.jsxs)(ki,{onClick:s,children:[(0,$.jsx)(Z,{name:`add`,className:`mr-1 h-4 w-4`}),f(`sessions.sidebar.folders.newFolderEllipsis`)]}),l?(0,$.jsxs)(ki,{onClick:c,className:`text-destructive focus:text-destructive`,children:[(0,$.jsx)(Z,{name:`close`,className:`mr-1 h-4 w-4`}),f(`sessions.sidebar.folders.removeFromFolder`)]}):null]})]}):null,t[8]=p,t[9]=l,t[10]=s,t[11]=o,t[12]=c,t[13]=i,t[14]=f,t[15]=v):v=t[15];let y;t[16]===Symbol.for(`react.memo_cache_sentinel`)?(y=X(`inline-flex h-7 w-7 items-center justify-center rounded-md text-destructive hover:bg-destructive/10 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-destructive/50`),t[16]=y):y=t[16];let b;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(b=(0,$.jsx)(Z,{name:`delete-bin`,className:`h-4 w-4`}),t[17]=b):b=t[17];let x;t[18]!==h||t[19]!==u?(x=(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,onClick:u,className:y,"aria-label":h,children:b})}),t[18]=h,t[19]=u,t[20]=x):x=t[20];let S;t[21]===h?S=t[22]:(S=(0,$.jsx)(Zr,{side:`top`,sideOffset:4,children:(0,$.jsx)(`p`,{children:h})}),t[21]=h,t[22]=S);let C;t[23]!==x||t[24]!==S?(C=(0,$.jsxs)($r,{children:[x,S]}),t[23]=x,t[24]=S,t[25]=C):C=t[25];let w;t[26]===f?w=t[27]:(w=f(`sessions.sidebar.header.actions.exitSelection`),t[26]=f,t[27]=w);let T;t[28]===Symbol.for(`react.memo_cache_sentinel`)?(T=(0,$.jsx)(Z,{name:`close`,className:`h-4 w-4`}),t[28]=T):T=t[28];let E;t[29]!==d||t[30]!==w?(E=(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,onClick:d,className:`inline-flex h-7 w-7 items-center justify-center rounded-md text-muted-foreground hover:bg-interactive-hover/50 hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50`,"aria-label":w,children:T})}),t[29]=d,t[30]=w,t[31]=E):E=t[31];let D;t[32]===f?D=t[33]:(D=f(`sessions.sidebar.header.actions.exitSelection`),t[32]=f,t[33]=D);let O;t[34]===D?O=t[35]:(O=(0,$.jsx)(Zr,{side:`top`,sideOffset:4,children:(0,$.jsx)(`p`,{children:D})}),t[34]=D,t[35]=O);let k;t[36]!==E||t[37]!==O?(k=(0,$.jsxs)($r,{children:[E,O]}),t[36]=E,t[37]=O,t[38]=k):k=t[38];let A;t[39]!==k||t[40]!==v||t[41]!==C?(A=(0,$.jsxs)(`div`,{className:`ml-auto flex items-center gap-0.5`,children:[v,C,k]}),t[39]=k,t[40]=v,t[41]=C,t[42]=A):A=t[42];let j;return t[43]!==A||t[44]!==_?(j=(0,$.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1 border-t border-border px-2.5 py-1.5`,children:[_,A]}),t[43]=A,t[44]=_,t[45]=j):j=t[45],j},Oh=e=>{let{t}=Fe(),{isInlineEditing:n,showDeletionDialog:r,foldersMap:i,addSessionsToFolder:a,removeSessionsFromFolders:o,createFolderAndStartRename:s,archiveSessions:c,setBulkDeleteConfirm:l}=e,u=vm(e=>e.enabled),d=vm(e=>e.selectedIds.size),f=d>0,p=vm(e=>e.selectedIds),m=vm(e=>e.scopeKey),h=Q.useCallback(()=>{vm.getState().toggleMode()},[]),g=Q.useCallback(()=>{vm.getState().disable()},[]),_=Q.useMemo(()=>{if(!f||typeof document>`u`)return!1;let e=!1,t=!1;for(let n of p){let r=document.querySelectorAll(`[data-session-row="${CSS.escape(n)}"]`);for(let n of r)n.getAttribute(`data-session-archived`)===`1`?t=!0:e=!0}return t&&!e},[f,p]),v=Q.useMemo(()=>{if(m)return m;if(!f||typeof document>`u`)return null;for(let e of p){let t=document.querySelector(`[data-session-row="${CSS.escape(e)}"]`)?.getAttribute(`data-session-scope`);if(t&&t.length>0)return t}return null},[f,p,m]),y=Q.useMemo(()=>v?i[v]??[]:[],[i,v]),b=Q.useMemo(()=>{if(!v||!f)return!1;let e=i[v]??[];for(let t of e)for(let e of t.sessionIds)if(p.has(e))return!0;return!1},[i,v,f,p]),x=Q.useCallback(e=>{!v||!f||a(v,e,Array.from(p))},[a,p,v,f]),S=Q.useCallback(()=>{if(!v||!f)return;let e=s(v);e&&a(v,e.id,Array.from(p))},[a,s,p,v,f]),C=Q.useCallback(()=>{!v||!f||o(v,Array.from(p))},[o,p,v,f]),w=Q.useCallback(async()=>{let e=Array.from(p);if(e.length!==0){if(_)Ko({sessionIds:e,message:e.length===1?t(`sessions.sidebar.bulkActions.deletedSingle`,{count:e.length}):t(`sessions.sidebar.bulkActions.deletedPlural`,{count:e.length}),undoLabel:t(`sessions.sidebar.undo`),commitFailedMessage:e.length===1?t(`sessions.sidebar.bulkActions.failedDeleteSingle`,{count:e.length}):t(`sessions.sidebar.bulkActions.failedDeletePlural`,{count:e.length})});else{let{archivedIds:n,failedIds:r}=await c(e);n.length>0&&So({sessionIds:n,message:n.length===1?t(`sessions.sidebar.bulkActions.archivedSingle`,{count:n.length}):t(`sessions.sidebar.bulkActions.archivedPlural`,{count:n.length}),undoLabel:t(`sessions.sidebar.undo`),settingsLabel:t(`settings.openchamber.archivedSessions.actions.view`),undoFailedMessage:n.length===1?t(`sessions.sidebar.session.archive.undoFailed`):t(`sessions.sidebar.bulkActions.archiveUndoFailed`,{count:n.length})}),r.length>0&&Y.error(r.length===1?t(`sessions.sidebar.bulkActions.failedArchiveSingle`,{count:r.length}):t(`sessions.sidebar.bulkActions.failedArchivePlural`,{count:r.length}))}vm.getState().clear()}},[c,_,p,t]),T=Q.useCallback(()=>{if(!f)return;let e=p.size;if(!_||!r){w();return}l({sessionCount:e,archivedBucket:_})},[_,w,p,r,l,f]),E=Q.useCallback(async()=>{l(null),await w()},[w]);return Q.useEffect(()=>{if(!u)return;let e=typeof navigator<`u`&&/Macintosh|Mac OS X/.test(navigator.userAgent||``),t=t=>{if(n)return;let r=t.target;if(r&&(r.tagName===`INPUT`||r.tagName===`TEXTAREA`||r.isContentEditable))return;let i=e?t.metaKey:t.ctrlKey;if(t.key===`Escape`){t.preventDefault(),vm.getState().disable();return}if(i&&t.key===`Backspace`){t.preventDefault(),T();return}if(i&&(t.key===`a`||t.key===`A`)){let e=typeof document<`u`?Array.from(document.querySelectorAll(`[data-session-row]`)):[];if(e.length===0)return;t.preventDefault();let n=vm.getState().scopeKey??e[0]?.getAttribute(`data-session-scope`)??null,r=e.filter(e=>!n||e.getAttribute(`data-session-scope`)===n).map(e=>e.getAttribute(`data-session-row`)).filter(e=>typeof e==`string`&&e.length>0);if(r.length===0)return;vm.getState().replaceAll(r,n||null)}};return window.addEventListener(`keydown`,t),()=>window.removeEventListener(`keydown`,t)},[T,n,u]),{selectionModeEnabled:u,hasSelection:f,selectedIdsSize:d,bulkScopeIsArchived:_,derivedSelectionScope:v,bulkScopeFolders:y,bulkCanRemoveFromFolder:b,handleToggleSelectionMode:h,handleExitSelectionMode:g,handleBulkMoveToFolder:x,handleBulkCreateFolderAndMove:S,handleBulkRemoveFromFolder:C,handleBulkDelete:T,confirmBulkDelete:E}},kh=(e,t,n)=>{let r=[],i=new Set,a=e=>{let t=p(e??null);!t||i.has(t)||(i.add(t),r.push(t))};if(a(e),a(n?.workspaceRoot),a(n?.currentDirectory),n?.includeWorktrees!==!1)for(let e of t)a(e.path);return r},Ah=(e,t,n,r)=>{let i=e.filter(e=>e.sessionId===t);if(i.length===0)return null;if(n){let e=i.find(e=>e.projectId===n);if(e)return e}if(r){let e=i.find(e=>e.projectId===r);if(e)return e}return i[0]??null},jh=({currentSessionId:e,focus:t,pinnedFocuses:n,projectFocuses:r,fallbackProjectId:i})=>{if(!e)return null;let a=t?.sessionId===e,o=a?t.projectId:null,s=Ah(r,e,o,i)??{scope:`project`,sessionId:e,projectId:i};return!a||t.scope===`project`?s:Ah(n,e,o,i)??s};function Mh(e,t,n=null){if(!e||e.scope!==`project`||!e.sessionId)return null;if(e.projectId){let n=t.find(t=>t.sessionId===e.sessionId&&t.projectId===e.projectId);if(n)return n}if(n){let r=t.find(t=>t.sessionId===e.sessionId&&t.projectId===n);if(r)return r}return t.find(t=>t.sessionId===e.sessionId)??null}var Nh=`oc.sessions.projectCollapse`,Ph=`oc.sessions.groupOrder`,Fh=`oc.sessions.groupCollapse`,Ih=`oc.sessions.activeSessionByProject`,Lh=`oc.sessions.expandedParents.v2`,Rh=`oc.sessions.expandedParents`,zh=h(s()),Bh=e=>{try{let t=zh.getItem(e);if(!t)return new Set;let n=JSON.parse(t);return new Set(Array.isArray(n)?n.filter(e=>typeof e==`string`):[])}catch{return new Set}},Vh=e=>{try{let t=zh.getItem(e);if(!t)return new Map;let n=JSON.parse(t),r=new Map;return!n||typeof n!=`object`||Array.isArray(n)||Object.entries(n).forEach(([e,t])=>{typeof t==`string`&&t.length>0&&r.set(e,t)}),r}catch{return new Map}},Hh=e=>{try{let t=zh.getItem(e);if(!t)return new Map;let n=JSON.parse(t),r=new Map;return!n||typeof n!=`object`||Array.isArray(n)||Object.entries(n).forEach(([e,t])=>{Array.isArray(t)&&r.set(e,t.filter(e=>typeof e==`string`))}),r}catch{return new Map}},Uh=(e,t,n)=>{let r=new Set;for(let t of e){let e=p(t.path)?.toLowerCase();e&&r.add(e)}if(n?.includeWorktrees===!1)return r;for(let e of t.values())for(let t of e){let e=p(t.path)?.toLowerCase();e&&r.add(e)}return r},Wh=(e,t,n)=>{if(e.time?.archived)return!0;let r=p(Rt(e))?.toLowerCase();return r?t.size===0?n?.allowEmptyDirectorySet??!0:t.has(r):n?.allowUnknownDirectory??!0},Gh=3e5,Kh=new Set,qh=[],Jh={},Yh=e=>{let t=Q.useRef(e);return t.current=e,Q.useCallback((...e)=>t.current(...e),[])},Xh=({mobileVariant:e=!1,onSessionSelected:n,allowReselect:r=!1,hideDirectoryControls:i=!1,showOnlyMainWorkspace:a=!1,isVisible:o=!0})=>{let{t:s}=Fe(),[l,d]=Q.useState(!1),[f,h]=Q.useState(!1),[g,_]=Q.useState(``),v=Q.useRef(null),y=Q.useRef(null),b=Q.useRef(new Set),[x,S]=Q.useState(null),[C,w]=Q.useState(``),[E,D]=Q.useState(null),[O,k]=Q.useState(new Set),A=Q.useMemo(()=>zh,[]),[j,M]=Q.useState(new Set),[N,P]=Q.useState(new Map),[F,I]=Q.useState(new Map),L=u(e=>e.isNewWorktreeDialogOpen),R=u(e=>e.setNewWorktreeDialogOpen),[z,B]=Q.useState(null),[V,H]=Q.useState(null),[U,W]=Q.useState(``),[ee,G]=Q.useState(null),[te,K]=Q.useState(null),[ne,re]=Q.useState(null),ae=Gt(),oe=zt(),[se,q]=Q.useState(()=>Bh(Fh)),[ce,le]=Q.useState(()=>Hh(Ph)),[ue,de]=Q.useState(()=>Vh(Ih));Q.useEffect(()=>t(e=>{c(e)&&(q(Bh(Fh)),le(Hh(Ph)),de(Vh(Ih)),M(Bh(Nh)),k(Bh(Lh)))}),[]);let[fe,pe]=Q.useState(new Map),me=Q.useRef(new Map),he=Q.useRef(0),_e=ge(e=>e.homeDirectory),ve=ge(e=>e.currentDirectory),ye=ge(e=>e.setDirectory),be=vt(e=>e.projects),xe=vt(e=>e.activeProjectId),Se=vt(e=>e.removeProject),Ce=vt(e=>e.setActiveProjectIdOnly),we=vt(e=>e.updateProjectMeta),Te=vt(e=>e.reorderProjectsById),Ee=u(e=>e.setActiveMainTab),De=u(e=>e.activeMainTab),Oe=sn(),ke=u(e=>e.openContextPanelTab),Ae=u(e=>e.setSettingsDialogOpen),je=u(e=>e.toggleHelpDialog),Me=u(e=>e.setSessionSwitcherOpen),Ne=u(e=>e.setScheduledTasksDialogOpen),Pe=u(e=>e.notifyOnSubtasks),Ie=u(e=>e.showDeletionDialog),Le=u(e=>e.setShowDeletionDialog),Re=$i(g,120),ze=Q.useMemo(()=>Re.trim().toLowerCase(),[Re]),Ve=ze.length>0,He=La(ie(e=>({checkForUpdates:e.checkForUpdates,available:e.available,runtimeType:e.runtimeType,info:e.info,downloading:e.downloading,downloaded:e.downloaded,progress:e.progress,error:e.error,downloadUpdate:e.downloadUpdate,restartToUpdate:e.restartToUpdate}))),Ue=Bt(e=>e.collapsedFolderIds),We=Bt(e=>e.foldersMap),Ge=Bt(e=>e.sessionOrderByScope),Ke=Bt(e=>e.sessionOrderActivityByScope),qe=Bt(e=>e.getFoldersForScope),Je=Bt(e=>e.createFolder),Ye=Bt(e=>e.renameFolder),Xe=Bt(e=>e.deleteFolder),J=Bt(e=>e.addSessionToFolder),Ze=Bt(e=>e.addSessionsToFolder),Qe=Bt(e=>e.removeSessionFromFolder),$e=Bt(e=>e.removeSessionsFromFolders),et=Bt(e=>e.toggleFolderCollapse),tt=Bt(e=>e.cleanupSessions),rt=Bt(e=>e.getSessionFolderId),it=Bt(e=>e.reorderSessions);ef({isSessionSearchOpen:o&&f,setIsSessionSearchOpen:h,sessionSearchInputRef:y,sessionSearchContainerRef:v});let at=Q.useMemo(()=>new Map,[]),ot=ct({enabled:o}),st=Po({enabled:o}),lt=To({enabled:o}),ut=Mt(e=>o?e.index.session.unseenCount:Jh),dt=Q.useMemo(()=>m(),[]),ft=Tt(e=>e.fullCatalogSessionIds),pt=Tt(e=>e.fullCatalogGeneration),mt=Tt(e=>e.status),gt=Tt(e=>e.activeSessions),_t=Tt(e=>e.archivedSessions),yt=Tt(e=>e.loadingDirectories),bt=Tt(e=>e.refreshingDirectories),Et=Tt(e=>e.archivedLoadingDirectories),Dt=Q.useDeferredValue(gt),Ot=Q.useDeferredValue(_t),kt=Ft(e=>e.currentSessionId),At=fr(e=>e.focus),jt=Q.useSyncExternalStore(wt,St,St),Nt=Ft(e=>!!e.newSessionDraft?.open),Pt=Ft(e=>e.setCurrentSession),It=Ft(e=>e.updateSessionTitle),Lt=Ft(e=>e.shareSession),Vt=Ft(e=>e.unshareSession),Ht=Ft(e=>e.worktreeMetadata),Wt=Ft(e=>e.availableWorktreesByProject),Kt=Ft(e=>e.openNewSessionDraft),qt=Q.useCallback(e=>{Kt(e),dt&&window.dispatchEvent(new CustomEvent(`openchamber:navigate`,{detail:{view:`chat`}}))},[dt,Kt]),Jt=Q.useMemo(()=>Uh(be,Wt,{includeWorktrees:!dt}),[Wt,dt,be]),Yt=Q.useMemo(()=>{let e=new Map(ot.map(e=>[e.id,e])),t=Dt.map(t=>{let n=e.get(t.id);return n?Ut(n,t):t}),n=new Set(t.map(e=>e.id));return ot.forEach(e=>{n.has(e.id)||t.push(e)}),t.filter(e=>Wh(e,Jt,{allowUnknownDirectory:!dt,allowEmptyDirectorySet:!dt}))},[Dt,dt,Jt,ot]),Zt=Q.useMemo(()=>ot.map(e=>{let t=p(e.directory??null)??``;return`${e.id}:${e.title??``}:${+!!e.time?.archived}:${t}`}).join(`|`),[ot]),$t=Q.useRef(ot);Q.useEffect(()=>{$t.current=ot},[Zt,ot]);let en=Q.useMemo(()=>new Map(ot.map(e=>[e.id,e])),[ot]);Q.useEffect(()=>{let e=null,t=nt(t=>{t.type===`scheduled-task-ran`&&(e&&clearTimeout(e),e=setTimeout(()=>{let e=vt.getState().projects.find(e=>e.id===t.projectId),n=p(e?.path??null);if(!n)return;let r=[n];(Ft.getState().availableWorktreesByProject.get(n)??[]).forEach(e=>{let t=p(e.path);t&&r.push(t)}),xt(r,$t.current)},500))});return()=>{e&&clearTimeout(e),t()}},[]);let tn=Q.useMemo(()=>T(),[]),nn=Ga(e=>e.sidebarBrandName.trim().length>0),{isTablet:rn}=Ai(),an=e||rn,{buildGroupSearchText:on,filterSessionNodesForSearch:ln,buildGroupedSessions:un}=$d({homeDirectory:_e,worktreeMetadata:Ht,pinnedSessionIds:ae,gitBranches:at,isVSCode:dt}),{scheduleCollapsedProjectsPersist:dn,hasRestoredProjectCollapse:fn}=cf({isVSCode:dt,safeStorage:A,keys:{sessionExpanded:Lh,sessionExpandedLegacy:Rh,projectCollapse:Nh,groupOrder:Ph,projectActiveSession:Ih,groupCollapse:Fh},groupOrderByProject:ce,activeSessionByProject:ue,collapsedGroups:se,setExpandedParents:k,setCollapsedProjects:M}),pn=Q.useMemo(()=>[...Yt].sort((e,t)=>Gn(e,t,ae)),[Yt,ae]),mn=Q.useMemo(()=>{let e=new Map;return pn.forEach(t=>{let n=t.parentID;if(!n)return;let r=e.get(n)??[];r.push(t),e.set(n,r)}),e.forEach(e=>e.sort((e,t)=>Gn(e,t,ae))),e},[pn,ae]),hn=(0,$.jsxs)(`div`,{className:`py-6 text-center text-muted-foreground`,children:[(0,$.jsx)(`p`,{className:`typography-ui-label font-semibold`,children:s(`sessions.sidebar.empty.noSessions.title`)}),(0,$.jsx)(`p`,{className:`typography-meta mt-1`,children:s(`sessions.sidebar.empty.noSessions.description`)})]}),gn=Q.useMemo(()=>be.find(e=>e.id===E)??null,[be,E]),vn=Q.useCallback(e=>{E&&we(E,{label:e.label,icon:e.icon,color:e.color,iconBackground:e.iconBackground,defaultModel:e.defaultModel??null})},[E,we]),yn=Q.useCallback(()=>{R(!0)},[R]),bn=Q.useCallback((t,n)=>{if(Ee(`chat`),e&&Me(!1),n?.sessionId){Pt(n.sessionId,t);return}Kt({directoryOverride:t,preserveDirectoryOverride:!0})},[e,Kt,Ee,Pt,Me]),xn=Q.useCallback(()=>{let e=La.getState();if(e.available&&e.info){d(!0);return}He.checkForUpdates().then(()=>{let{available:e,error:t}=La.getState();if(t){Y.error(s(`sessions.sidebar.updateCheck.errorTitle`),{description:t});return}if(!e){Y.success(s(`sessions.sidebar.updateCheck.latestVersion`));return}d(!0)})},[s,He]),Cn=Q.useCallback(()=>{e&&Me(!1),Ae(!0)},[e,Me,Ae]),wn=Q.useCallback(()=>{Ee(`chat`),Kt(),e&&Me(!1)},[e,Kt,Ee,Me]),Tn=Q.useCallback(()=>{if(!e){Ee(`schedule`);return}Ne(!0),Me(!1)},[e,Ee,Ne,Me]),En=Q.useCallback(()=>{cn(),e&&Me(!1)},[e,Me]),Dn=He.available&&(He.runtimeType===`desktop`||He.runtimeType===`web`),On=Ft(e=>e.archiveSession),kn=Ft(e=>e.archiveSessions),{copiedSessionId:An,handleSessionSelect:jn,handleSessionDoubleClick:Mn,handleSaveEdit:Nn,handleCancelEdit:Pn,handleShareSession:Fn,handleCopyShareUrl:In,handleUnshareSession:Ln,handleDeleteSession:Rn,confirmDeleteSession:zn}=tf({activeProjectId:xe,currentDirectory:ve,currentSessionId:kt,mobileVariant:e,allowReselect:r,onSessionSelected:n,isSessionSearchOpen:f,sessionSearchQuery:g,setSessionSearchQuery:_,setIsSessionSearchOpen:h,setActiveProjectIdOnly:Ce,setDirectory:ye,setActiveMainTab:Ee,setSessionSwitcherOpen:Me,setCurrentSession:Pt,updateSessionTitle:It,shareSession:Lt,unshareSession:Vt,archiveSession:On,archiveSessions:kn,childrenMap:mn,showDeletionDialog:Ie,setDeleteSessionConfirm:G,deleteSessionConfirm:ee,setEditingId:S,setEditTitle:w,editingId:x,editTitle:C}),Bn=Q.useCallback((e,t,n,r=`project`)=>{let i={sessionId:e,scope:r,projectId:n??null};if(e===kt){Qt(e),sh(i),jn(e,t,n);return}ah(i,()=>jn(e,t,n))},[jn,kt]);Q.useEffect(()=>()=>{ih()},[]);let Vn=Q.useCallback(()=>{if(!te)return;let{scopeKey:e,folderId:t}=te;K(null),Xe(e,t)},[te,Xe]);Q.useEffect(()=>{if(!kt)return;let e=Yt.find(e=>e.id===kt)?.parentID;if(!e)return;let t=[`project:active:${e}`,`project:archived:${e}`,`recent:active:${e}`,`recent:archived:${e}`];k(e=>{if(t.every(t=>e.has(t)))return e;let n=new Set(e);t.forEach(e=>n.add(e));try{A.setItem(Lh,JSON.stringify(Array.from(n)))}catch{}return n})},[kt,Yt,A]);let Hn=Q.useCallback(e=>{k(t=>{let n=new Set(t);n.has(e)?n.delete(e):n.add(e);try{A.setItem(Lh,JSON.stringify(Array.from(n)))}catch{}return n})},[A]),Un=Q.useCallback((e,t)=>{if(!e)return null;t&&Ue.has(t)&&et(t);let n=Je(e,s(`sessions.sidebar.folder.newFolderName`),t);return H(n.id),W(n.name),n},[Ue,et,Je,s]),Wn=Yh(Bn),Kn=Yh(Mn),qn=Yh(Nn),Jn=Yh(Pn),Yn=Yh(Fn),Xn=Yh(In),Zn=Yh(Ln),Qn=Yh(Rn),$n=Yh(Un),er=Q.useCallback((e,t,n,r)=>{let i=jo(),a=Math.max(i,n)+7;if(I(e=>{let r=Math.max(i,e.get(t)??i,n),a=new Map(e);return a.set(t,r+7),a}),e.isArchivedBucket||a<r)return;let o=p(e.directory??null);if(!o)return;let s=Tt.getState().activePaginationByDirectory.get(o);s?.hasMore&&!s.loadingMore&&ht(o)},[]),tr=Q.useCallback(e=>{I(t=>{if(!t.has(e))return t;let n=new Map(t);return n.delete(e),n})},[]),nr=Q.useCallback(e=>{I(t=>{let n=!1,r=new Map(t),i=`${e}:`;for(let e of r.keys())e.startsWith(i)&&(r.delete(e),n=!0);return n?r:t})},[]),rr=Q.useCallback(e=>{let t=be.find(t=>t.id===e),n=p(t?.path??null);if(!n)return[];let r=[n];return dt||(Wt.get(n)??[]).forEach(e=>{let t=p(e.path);t&&r.push(t)}),r},[Wt,dt,be]),ir=Q.useCallback(e=>{let t=rr(e);if(t.length===0)return;let n=Tt.getState().loadedDirectories,r=t.filter(e=>!n.has(e));r.length!==0&&xt(r,$t.current)},[rr]),ar=Q.useCallback(e=>{let t=be.find(t=>t.id===e);t&&(async()=>{let e=[];if(!dt)try{e=(await Lr({id:t.id,path:t.path})).worktrees}catch(n){console.warn(`[SessionSidebar] Worktree refresh before session sync failed:`,n);let r=p(t.path);e=r?Ft.getState().availableWorktreesByProject.get(r)??[]:[]}let n=kh(t.path,e,{currentDirectory:ve,workspaceRoot:t.path,includeWorktrees:!dt});n.length!==0&&await Ct(n,$t.current)})()},[ve,dt,be]);Q.useEffect(()=>{if(!fn)return;let e=Tt.getState(),t=be.flatMap(t=>j.has(t.id)?[]:rr(t.id).filter(t=>!e.loadedDirectories.has(t)&&!e.loadingDirectories.has(t)&&!e.refreshingDirectories.has(t)));t.length>0&&xt(t,$t.current)},[j,rr,fn,be]);let or=Q.useCallback(()=>{he.current=Date.now()+150,I(new Map),M(()=>{let e=new Set(be.map(e=>e.id));try{A.setItem(Nh,JSON.stringify(Array.from(e)))}catch{}return dt||dn(e),e})},[be,dt,A,dn]),sr=Q.useCallback(()=>{he.current=Date.now()+150,I(new Map),M(()=>{let e=new Set;try{A.setItem(Nh,JSON.stringify([]))}catch{}return dt||dn(e),e});let e=Tt.getState().loadedDirectories,t=be.flatMap(t=>rr(t.id).filter(t=>!e.has(t)));t.length>0&&xt(t,$t.current)},[rr,dt,be,A,dn]),cr=Q.useCallback(e=>{he.current=Date.now()+150,nr(e),M(t=>{let n=new Set(t);n.has(e)?(n.delete(e),queueMicrotask(()=>ir(e))):n.add(e);try{A.setItem(Nh,JSON.stringify(Array.from(n)))}catch{}return dt||dn(n),n})},[ir,dt,nr,A,dn]),lr=Q.useCallback(e=>{he.current=Date.now()+150,ir(e),M(t=>{if(!t.has(e))return t;let n=new Set(t);n.delete(e);try{A.setItem(Nh,JSON.stringify(Array.from(n)))}catch{}return dt||dn(n),n})},[ir,dt,A,dn]),ur=Q.useMemo(()=>be.map(e=>({...e,normalizedPath:p(e.path)})).filter(e=>!!e.normalizedPath),[be]),dr=Q.useMemo(()=>ur.map(e=>e.normalizedPath),[ur]),pr=Q.useMemo(()=>{let e=new Set(ur.map(e=>e.normalizedPath));if(!dt)for(let t of Wt.values())for(let n of t){let t=p(n.path);t&&e.add(t)}return[...e].sort()},[Wt,dt,ur]),hr=Q.useRef(null);Q.useEffect(()=>{let e=new Set(pr),t=hr.current;if(hr.current=e,!t)return;let n=pr.filter(e=>!t.has(e));if(n.length===0)return;let r=Tt.getState().loadedDirectories,i=p(ve),a=ur.find(e=>e.id===xe)??ur.find(e=>e.normalizedPath===i)??null,o=new Set;i&&o.add(i),a?.normalizedPath&&(o.add(a.normalizedPath),dt||(Wt.get(a.normalizedPath)??[]).forEach(e=>{let t=p(e.path);t&&o.add(t)}));let s=n.filter(e=>o.has(e)&&!r.has(e));s.length!==0&&xt(s,$t.current)},[xe,Wt,ve,dt,ur,pr]);let{github:_r}=Xi(),vr=wi(),yr=vr.data??null,br=vr.isFetched,Sr=oa(o?dr:qh),Cr=qf(e=>e.ensureEntry),wr=qf(e=>e.setParams),Tr=qf(e=>e.refreshTargets);uf({normalizedProjects:ur,activeProjectId:xe,gitRepoStatus:Sr,setProjectRepoStatus:P,setProjectRootBranches:pe,enabled:o});let Er=Ft(e=>e.isLoading),kr=Q.useMemo(()=>Wo(Yt,ur,Wt,dt,Ot),[Ot,Wt,dt,ur,Yt]);ff({isSessionsLoading:Er,fullCatalogSessionIds:ft,fullCatalogGeneration:pt,normalizedProjects:ur,cleanupSessions:tt});let{getSessionsForProject:Ar,getArchivedSessionsForProject:jr}=df({ownership:kr}),Mr=Q.useMemo(()=>{let e=new Set;if(yt.size===0)return e;for(let t of ur){let n=[t.normalizedPath];dt||(Wt.get(t.normalizedPath)??[]).forEach(e=>{let t=p(e.path);t&&n.push(t)}),n.some(e=>yt.has(e))&&e.add(t.id)}return e},[Wt,dt,yt,ur]),Nr=Q.useMemo(()=>{let e=new Set;if(bt.size===0)return e;for(let t of ur)rr(t.id).some(e=>bt.has(e))&&e.add(t.id);return e},[rr,ur,bt]),Pr=yt.size>0||bt.size>0||mt===`idle`||mt===`loading`;Kd({normalizedProjects:ur,ownership:kr,isSessionsLoading:Er,fullCatalogSessionIds:ft,fullCatalogGeneration:pt,foldersMap:We,createFolder:Je,addSessionToFolder:J,cleanupSessions:tt,enabled:o});let Fr=Q.useRef(!1);xe&&N.has(xe)&&(Fr.current=!!N.get(xe));let Ir=Sp(e=>e.projectSortOrder),Rr=vt(e=>e.manualProjectOrder),zr=Q.useMemo(()=>{let e=[...ur];switch(Ir){case`a-z`:e.sort((e,t)=>{let n=(e.label||e.path).toLowerCase(),r=(t.label||t.path).toLowerCase();return n.localeCompare(r)});break;case`z-a`:e.sort((e,t)=>{let n=(e.label||e.path).toLowerCase();return(t.label||t.path).toLowerCase().localeCompare(n)});break;case`date-added`:e.sort((e,t)=>(t.addedAt??0)-(e.addedAt??0));break;case`recent`:e.sort((e,t)=>(t.lastOpenedAt??0)-(e.lastOpenedAt??0));break;case`manual`:{let t=new Map(Rr.map((e,t)=>[e,t]));e.sort((e,n)=>(t.get(e.id)??1/0)-(t.get(n.id)??1/0));break}}return e},[ur,Ir,Rr]),{projectSections:Br,groupSearchDataByGroup:Vr,sectionsForRender:Hr,searchMatchCount:Ur}=Jd({normalizedProjects:zr,getSessionsForProject:Ar,getArchivedSessionsForProject:jr,availableWorktreesByProject:Wt,projectRepoStatus:N,projectRootBranches:fe,lastRepoStatus:Fr.current,buildGroupedSessions:un,hasSessionSearchQuery:Ve,normalizedSessionSearchQuery:ze,filterSessionNodesForSearch:ln,buildGroupSearchText:on,foldersMap:We}),Wr=(0,$.jsxs)(`div`,{className:`py-6 text-center text-muted-foreground`,children:[(0,$.jsx)(`p`,{className:`typography-ui-label font-semibold`,children:s(`sessions.sidebar.empty.noMatches.title`)}),(0,$.jsx)(`p`,{className:`typography-meta mt-1`,children:s(`sessions.sidebar.empty.noMatches.description`)})]});Xd({projectSections:Br,activeProjectId:xe,activeSessionByProject:ue,setActiveSessionByProject:de,currentSessionId:kt,handleSessionSelect:jn,newSessionDraftOpen:Nt,mobileVariant:e,openNewSessionDraft:Kt,setActiveMainTab:Ee,setSessionSwitcherOpen:Me});let{getOrderedGroups:Gr}=Zd(ce),Kr=Q.useRef(!1);Q.useEffect(()=>{if(Kr.current||Br.length===0)return;let e=Br.flatMap(e=>e.groups.filter(e=>e.isArchivedBucket).map(t=>`${e.project.id}:${t.id}`));e.length>0&&q(t=>new Set([...t,...e])),Kr.current=!0},[Br]);let qr=Q.useMemo(()=>{let e=new Map,t=new Map;return Br.forEach(n=>{let r=_n(n.project.normalizedPath)||n.project.normalizedPath;n.groups.forEach(i=>{let a=i.branch&&i.branch!==`HEAD`&&i.branch!==r?i.branch:null,o={projectLabel:r,branchLabel:a},s=r=>{r.forEach(r=>{let a=n.project.normalizedPath.length;a<(t.get(r.session.id)??-1)||(e.set(r.session.id,{node:r,projectId:n.project.id,groupDirectory:i.directory,secondaryMeta:o}),t.set(r.session.id,a),r.children.length>0&&s(r.children))})};s(i.sessions)})}),e},[Br]);Q.useLayoutEffect(()=>{if(!kt){sh(null);return}let e=fr.getState().focus;if(e?.sessionId===kt){e.scope===`project`&&!e.projectId&&sh({...e,projectId:qr.get(kt)?.projectId??null});return}sh({scope:`project`,sessionId:kt,projectId:qr.get(kt)?.projectId??null})},[kt,qr]);let Jr=Q.useMemo(()=>dt?[]:Ro(Yt,ae),[dt,ae,Yt]),Yr=Q.useMemo(()=>Ve?[]:Xo(Yt,ae,lt,ut),[Ve,ae,lt,Yt,ut]),{pinnedItems:Xr,inProgressItems:Zr}=Q.useMemo(()=>{let e=e=>{let t=qr.get(e.id),n=p(e.directory??null),r={session:e,children:[],worktree:Ht.get(e.id)??null};if(Ve&&ln([r],ze).length===0)return null;let i=kr.bySessionId.get(e.id),a=i?zr.find(e=>e.id===i.projectId):void 0,o=a?_n(a.normalizedPath)||a.normalizedPath:t?.secondaryMeta?.projectLabel??null,s=es({projectLabel:o,owner:i,sessionWorktree:Ht.get(e.id)??null,worktrees:a?Wt.get(a.normalizedPath)??[]:[],projectRootBranch:i?fe.get(i.projectId)??(a?Sr.get(a.normalizedPath)?.branch:null)??null:null,isVSCode:dt})??t?.secondaryMeta??null;return{node:r,projectId:i?.projectId??t?.projectId??null,groupDirectory:i?.scopeDirectory??t?.groupDirectory??n,secondaryMeta:s}},t=t=>t.map(e).filter(e=>e!==null);return{pinnedItems:dt?[]:t(Jr),inProgressItems:t(Yr)}},[Wt,ln,Sr,Ve,Yr,dt,ze,Jr,fe,kr,qr,zr,Ht]),Qr=Q.useMemo(()=>Hr.map(e=>({...e,groups:e.groups.filter(e=>!e.isArchivedBucket)})),[Hr]),$r=Q.useMemo(()=>{let e=Ve?Qr.map(e=>({...e,groups:e.groups.map(e=>({...e,sessions:Vr.get(e)?.filteredNodes??[]}))})):Qr;if(!a)return e;let t=e.find(e=>e.project.id===xe)??e[0];if(!t)return[];let n=t.groups.find(e=>e.isMain&&e.sessions.length>0)??t.groups.find(e=>e.sessions.length>0)??t.groups.find(e=>e.isMain)??t.groups[0];return n?[{...t,groups:[n]}]:[]},[xe,Vr,Ve,Qr,a]),ei=Q.useMemo(()=>ko({sections:$r,foldersMap:We,getOrderedGroups:Gr,pinnedSessionIds:ae,sessionOrderByScope:Ge,sessionOrderActivityByScope:Ke}),[We,Gr,$r,ae,Ke,Ge]),ti=Q.useMemo(()=>Ao({targets:ei,collapsedProjectIds:j,collapsedGroupKeys:se,collapsedFolderIds:Ue,visibleSessionCountByGroup:F,defaultVisibleSessionCount:jo(),hasSessionSearchQuery:Ve,alwaysVisibleSessionIds:st}),[st,Ue,se,j,Ve,ei,F]),ni=Q.useMemo(()=>Ve?[]:[...Jr,...Yr].map((e,t)=>{let n=qr.get(e.id);return{scope:`pinned`,sessionId:e.id,projectId:n?.projectId??null,directory:p(Rt(e))??n?.groupDirectory??null,visibleIndex:t}}),[Ve,Yr,Jr,qr]),[ri,ii]=Q.useState(null),ai=Q.useCallback(e=>{ii(t=>t&&t.length===e.length&&t.every((t,n)=>t===e[n])?t:[...e])},[]),oi=Q.useMemo(()=>{if(!ri)return ni;let e=new Set(ri);return ni.filter(t=>e.has(t.sessionId))},[ni,ri]),si=Q.useMemo(()=>e?[]:xr({pinnedTargets:oi,projectTargets:ti}),[e,oi,ti]),ci=Q.useCallback(e=>{Ee(`chat`),Me(!1),e.scope===`project`&&e.projectId&&Ce(e.projectId),Bn(e.sessionId,e.directory,e.projectId,e.scope)},[Bn,Ee,Ce,Me]);Q.useLayoutEffect(()=>mr({targets:si,activate:ci}),[ci,si]);let li=Q.useMemo(()=>{let e=new Map;return si.forEach(t=>{let n=Or({scope:t.scope,sessionId:t.sessionId,projectId:t.projectId});n&&e.set(n,Dr(si,t)??0)}),e},[si]),ui=Q.useMemo(()=>{if(!kt||Ve)return[];let e=[],t=(n,r)=>{if(n.session.id===kt){e.push({scope:`pinned`,sessionId:kt,projectId:r});return}n.children.forEach(e=>t(e,r))};return Xr.forEach(e=>t(e.node,e.projectId)),Zr.forEach(e=>t(e.node,e.projectId)),e},[kt,Ve,Zr,Xr]),di=Q.useMemo(()=>{if(!kt)return[];let e=[],t=(n,r)=>{if(n.session.id===kt){e.push({scope:`project`,sessionId:kt,projectId:r});return}n.children.forEach(e=>t(e,r))};return Br.forEach(e=>{e.groups.forEach(n=>{n.sessions.forEach(n=>t(n,e.project.id))})}),e},[kt,Br]);Q.useLayoutEffect(()=>gr({pinned:oi,project:ti}),[oi,ti]),Q.useLayoutEffect(()=>{Pr||sh(jh({currentSessionId:kt,focus:At,pinnedFocuses:ui,projectFocuses:di,fallbackProjectId:kt?qr.get(kt)?.projectId??null:null}))},[kt,Pr,di,ui,At,qr]);let fi=Q.useMemo(()=>{let e=At?.sessionId?qr.get(At.sessionId)?.projectId??null:null;return Mh(At,ei,e)},[ei,At,qr]),pi=Q.useRef(null),mi=Q.useRef(null);Q.useEffect(()=>{mi.current&&mi.current!==kt&&(mi.current=null)},[kt]),Q.useLayoutEffect(()=>{if(!fi?.projectId)return;let e=fi.sessionId,t=jt.sessionId===e;if(!(!t&&kt!==e)){if(t){if(pi.current===jt.revision)return;pi.current=jt.revision,mi.current=e}else{if(mi.current===e)return;mi.current=e}if(lr(fi.projectId),fi.groupKey&&q(e=>{if(!e.has(fi.groupKey))return e;let t=new Set(e);return t.delete(fi.groupKey),t}),fi.folderAncestorIds?.forEach(e=>{let t=Bt.getState();t.collapsedFolderIds.has(e)&&t.toggleFolderCollapse(e)}),fi.groupKey&&fi.visibleIndex!==void 0){let e=fi.visibleIndex+1;I(t=>{if((t.get(fi.groupKey)??0)>=e)return t;let n=new Map(t);return n.set(fi.groupKey,e),n})}}},[kt,lr,fi,jt]);let hi=$f(Q.useMemo(()=>{let e=new Set;return Qr.forEach(t=>{j.has(t.project.id)||t.groups.forEach(n=>{if(se.has(`${t.project.id}:${n.id}`))return;let r=p(n.directory??null),i=n.branch?.trim()||at.get(r||``)?.trim();!r||!i||e.add(Of(r,i))})}),[...e]},[se,j,at,Qr]));Q.useEffect(()=>{if(!o||!br||!yr?.connected||!_r)return;let e=[],t=Date.now();if(Qr.forEach(n=>{j.has(n.project.id)||n.groups.forEach(r=>{if(se.has(`${n.project.id}:${r.id}`))return;let i=p(r.directory??null),a=r.branch?.trim()||at.get(i||``)?.trim();if(!i||!a)return;let o=Of(i,a),s=qf.getState().entries[o],c=!!s?.status?.pr,l=`${i}::${a}`,u=Math.max(s?.lastRefreshAt??0,s?.lastDiscoveryPollAt??0),d=!!(s?.isInitialStatusResolved&&!c&&(!b.current.has(l)||t-u>=Gh));(!s||!s.isInitialStatusResolved||d)&&(d&&b.current.add(l),e.push({directory:i,branch:a}))})}),e.length===0)return;let n=new Map;e.forEach(e=>{let t=Of(e.directory,e.branch,e.remoteName??null);n.has(t)||n.set(t,e)}),n.forEach((e,t)=>{Cr(t),wr(t,{directory:e.directory,branch:e.branch,remoteName:e.remoteName??null,canShow:!0,github:_r,githubAuthChecked:br,githubConnected:yr.connected})}),Tr([...n.values()],{silent:!0,markInitialResolved:!0})},[j,se,Cr,_r,br,yr?.connected,at,o,Tr,Qr,wr]);let gi=mf({isDesktopShellRuntime:tn,projectSections:Br,projectHeaderSentinelRefs:me,enabled:o}),_i=Yh((t,n=0,r,i,a=!1,o,s=`project`,c)=>(0,$.jsx)(xh,{node:t,depth:n,groupDirectory:r,projectId:i,archivedBucket:a,currentSessionId:kt,pinnedSessionIds:ae,expandedParents:O,hasSessionSearchQuery:Ve,normalizedSessionSearchQuery:ze,notifyOnSubtasks:Pe,editingId:x,setEditingId:S,editTitle:C,setEditTitle:w,handleSaveEdit:qn,handleCancelEdit:Jn,toggleParent:Hn,handleSessionSelect:Wn,handleSessionDoubleClick:Kn,togglePinnedSession:oe,handleShareSession:Yn,copiedSessionId:An,handleCopyShareUrl:Xn,handleUnshareSession:Zn,openSidebarMenuKey:z,setOpenSidebarMenuKey:B,renamingFolderId:V,getFoldersForScope:qe,getSessionFolderId:rt,removeSessionFromFolder:Qe,addSessionToFolder:J,createFolderAndStartRename:$n,openContextPanelTab:ke,handleDeleteSession:Qn,mobileVariant:e,alwaysShowActions:an,renderSessionNode:_i,secondaryMeta:o,renderContext:s,subtreeContainsActive:c?.subtreeContainsActive??Kh,subtreeContainsEditing:c?.subtreeContainsEditing??Kh,menuOpenSessionId:c?.menuOpenSessionId??null,nodeStructureKey:c?.nodeStructureKey??``,childRenderExtrasFor:c?.childRenderExtrasFor,liveSessionById:en,shortcutNumber:li.get(Or({scope:s,sessionId:t.session.id,projectId:i??null})??``)??null},`${s}:${i??``}:${t.session.id}`)),vi=Q.useCallback(e=>{tr(e),q(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})},[tr]),yi=Q.useCallback(e=>{let t=rr(e);if(t.length===0)return;let n=Tt.getState(),r=t.filter(e=>!n.archivedLoadedDirectories.has(e));r.length>0&&Xt(r)},[rr]),bi=Q.useMemo(()=>{let e=new Map;for(let[t,n]of hi)e.set(t,{visualState:n.visualState,number:n.number,url:n.url,state:n.prState,draft:n.draft,title:n.title,base:n.base,head:n.head,checks:n.checks,canMerge:n.canMerge,mergeableState:n.mergeableState,repo:n.repo});return e},[hi]),xi=Q.useCallback((t,n,r,i,a,o,s)=>(0,$.jsx)(Rp,{group:t,groupKey:n,isArchivedLoading:!!(t.isArchivedBucket&&r&&rr(r).some(e=>Et.has(e))),projectId:r,hideGroupLabel:i,compactBodyPadding:o,hasSessionSearchQuery:Ve,normalizedSessionSearchQuery:ze,groupSearchDataByGroup:Vr,visibleSessionCount:F.get(n),collapsedGroups:se,collapsedFolderIds:Ue,toggleFolderCollapse:et,renameFolder:Ye,deleteFolder:Xe,showDeletionDialog:Ie,setDeleteFolderConfirm:K,renderSessionNode:_i,projectRepoStatus:N,lastRepoStatus:Fr.current,showMoreGroupSessions:(e,n,r)=>er(t,e,n,r),resetGroupSessionLimit:tr,mobileVariant:e,alwaysShowActions:an,activeProjectId:xe,setActiveProjectIdOnly:Ce,setActiveMainTab:Ee,setSessionSwitcherOpen:Me,openNewSessionDraft:qt,addSessionToFolder:J,createFolderAndStartRename:$n,renamingFolderId:V,renameFolderDraft:U,setRenameFolderDraft:W,setRenamingFolderId:H,pinnedSessionIds:ae,expandedParents:O,sessionOrderByScope:Ge,sessionOrderActivityByScope:Ke,onReorderSessions:(e,n,r,i)=>{let a=t.folderScopeKey??p(t.directory??null);a&&it(a,e,n,r,i)},currentSessionId:kt,shortcutTargetSessionId:fi?.groupKey===n?fi.sessionId:null,shortcutTargetVisibleIndex:fi?.groupKey===n?fi.visibleIndex??null:null,editingId:x,editTitle:C,openSidebarMenuKey:z,liveSessionById:en,alwaysVisibleSessionIds:st,prVisualStateByDirectoryBranch:bi,onToggleCollapsedGroup:e=>{t.isArchivedBucket&&se.has(e)&&r&&yi(r),vi(e)},dragHandleProps:a,scrollContainerRef:s}),[Ve,ze,Vr,Et,rr,F,se,Ue,et,Ye,Xe,Ie,_i,N,er,tr,e,an,xe,Ce,Ee,Me,qt,J,$n,V,U,ae,O,Ge,Ke,it,kt,fi,x,C,z,en,st,bi,vi,yi]),Si=i?null:(0,$.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,$.jsx)(qp,{collapseAllProjects:or,expandAllProjects:sr}),(0,$.jsx)(Sn,{variant:`ghost`,size:`xs`,className:`size-6 p-0 text-muted-foreground`,"aria-label":s(`sessions.sidebar.header.actions.addProject`),title:s(`sessions.sidebar.header.actions.addProject`),onClick:Be.requestDirectoryDialog,children:(0,$.jsx)(Z,{name:`add`,className:`size-4`})})]}),Ci=tn&&nn&&!dt&&!Ve?(0,$.jsx)(`div`,{className:`shrink-0 px-3`,children:(0,$.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,$.jsx)(Ac,{className:`min-w-0 flex-1`}),(0,$.jsx)(Nc,{className:`ml-auto shrink-0`})]})}):null,Ti=!dt&&!Ve,Ei=!Ve&&(Xr.length>0||Zr.length>0),Di=Ti||Ei?(0,$.jsxs)($.Fragment,{children:[Ti?(0,$.jsxs)($.Fragment,{children:[e&&nn?(0,$.jsx)(Ac,{}):null,(0,$.jsxs)(`div`,{className:`space-y-0.5 py-1`,children:[(0,$.jsxs)(Sn,{variant:`ghost`,size:`sm`,className:X(`w-full justify-start font-normal`,e&&`h-11`),onClick:wn,children:[(0,$.jsx)(Z,{name:`chat-new`,className:`size-4`}),(0,$.jsx)(`span`,{className:`truncate`,children:s(`sessions.sidebar.header.actions.newSession`)})]}),(0,$.jsxs)(Sn,{variant:`ghost`,size:`sm`,className:X(`w-full justify-start font-normal`,De===`schedule`&&`bg-interactive-selection text-interactive-selection-foreground`,e&&`h-11`),onClick:Tn,children:[(0,$.jsx)(Z,{name:`time`,className:`size-4`}),(0,$.jsx)(`span`,{className:`truncate`,children:s(`sessions.sidebar.header.actions.scheduledTasks`)})]}),Oe.data?.supported&&Oe.data?.enabled?(0,$.jsxs)(Sn,{variant:`ghost`,size:`sm`,className:X(`w-full justify-start font-normal`,De===`assistant`&&`bg-interactive-selection text-interactive-selection-foreground`,e&&`h-11`),onClick:En,children:[(0,$.jsx)(Z,{name:`ai-agent`,className:`size-4`}),(0,$.jsx)(`span`,{className:`truncate`,children:s(`assistants.title`)})]}):null]})]}):null,Ei?(0,$.jsx)(Vp,{items:Xr,inProgressItems:Zr,renderSessionNode:_i,currentSessionId:kt,editingId:x,openSidebarMenuKey:z,onVisibleSessionIdsChange:ai}):null]}):null,Oi=!!(V||x||E),{selectionModeEnabled:ki,hasSelection:ji,selectedIdsSize:Mi,bulkScopeIsArchived:Ni,derivedSelectionScope:Pi,bulkScopeFolders:Fi,bulkCanRemoveFromFolder:Ii,handleExitSelectionMode:Li,handleBulkMoveToFolder:Ri,handleBulkCreateFolderAndMove:zi,handleBulkRemoveFromFolder:Bi,handleBulkDelete:Vi,confirmBulkDelete:Hi}=Oh({isInlineEditing:Oi,showDeletionDialog:Ie,foldersMap:We,addSessionsToFolder:Ze,removeSessionsFromFolders:$e,createFolderAndStartRename:Un,archiveSessions:kn,setBulkDeleteConfirm:re});return(0,$.jsxs)(`div`,{ref:v,className:X(`oc-session-sidebar relative flex h-full flex-col text-foreground overflow-x-hidden`,e?``:`bg-transparent`),children:[(0,$.jsx)(zp,{hideDirectoryControls:i,isSessionSearchOpen:f,setIsSessionSearchOpen:h,sessionSearchInputRef:y,sessionSearchQuery:g,setSessionSearchQuery:_,hasSessionSearchQuery:Ve,searchMatchCount:Ur}),Ci,o?(0,$.jsx)(im,{topContent:Di,hasLeadingSection:Di!==null&&(Xr.length>0||Zr.length>0),headerAccessory:Si,sectionsForRender:Qr,projectSections:Br,activeProjectId:xe,showOnlyMainWorkspace:a,hasSessionSearchQuery:Ve,emptyState:hn,searchEmptyState:Wr,renderGroupSessions:xi,homeDirectory:_e,collapsedProjects:j,hideDirectoryControls:i,projectRepoStatus:N,isDesktopShellRuntime:tn,stuckProjectHeaders:gi,mobileVariant:e,alwaysShowActions:an,toggleProject:cr,setActiveProjectIdOnly:Ce,setActiveMainTab:Ee,setSessionSwitcherOpen:Me,openNewSessionDraft:qt,openNewWorktreeDialog:yn,syncProjectSessions:ar,openProjectEditDialog:D,removeProject:Se,projectHeaderSentinelRefs:me,projectReorderEnabled:Ir===`manual`,reorderProjects:Te,projectSortOrder:Ir,getOrderedGroups:Gr,setGroupOrderByProject:le,openSidebarMenuKey:z,setOpenSidebarMenuKey:B,isInlineEditing:Oi,loadingProjectIds:Mr,refreshingProjectIds:Nr,isProjectSessionsSyncing:Pr}):null,ki&&ji?(0,$.jsx)(Dh,{selectedCount:Mi,scopeKey:Pi,scopeFolders:Fi,archivedBucket:Ni,onMoveToFolder:Ri,onCreateFolderAndMove:zi,onRemoveFromFolder:Bi,canRemoveFromFolder:Ii,onDelete:Vi,onDone:Li}):null,(0,$.jsx)(Zp,{onOpenSettings:Cn,onOpenShortcuts:je,onOpenUpdate:xn,showRuntimeButtons:!dt,showUpdateButton:Dn}),l?(0,$.jsx)(Ia,{open:l,onOpenChange:d,info:He.info,downloading:He.downloading,downloaded:He.downloaded,progress:He.progress,error:He.error,onDownload:He.downloadUpdate,onRestart:He.restartToUpdate,runtimeType:He.runtimeType}):null,gn?(0,$.jsx)(ep,{open:!0,onOpenChange:e=>{e||D(null)},project:gn,onSave:vn}):null,L?(0,$.jsx)(Yi,{open:!0,onOpenChange:R,onWorktreeCreated:bn}):null,(0,$.jsx)(Vo,{}),(0,$.jsx)(Gd,{}),(0,$.jsx)(wh,{value:ee,setValue:G,showDeletionDialog:Ie,setShowDeletionDialog:Le,onConfirm:zn}),(0,$.jsx)(Eh,{value:te,setValue:K,onConfirm:Vn}),(0,$.jsx)(Th,{value:ne,setValue:re,showDeletionDialog:Ie,setShowDeletionDialog:Le,onConfirm:Hi})]})},Zh=e=>e?(0,$.jsx)(`span`,{className:`text-foreground/80 dark:text-foreground/70`,children:e}):void 0,Qh=e=>{if(!e)return``;let t=e.replace(/\\/g,`/`);return t===`/`?`/`:t.replace(/\/+$/,``)},$h=()=>{let{t:e}=Fe(),[t,n]=Q.useState(!1),[r,i]=Q.useState(!1),[a,o]=Q.useState(null),[s,c]=Q.useState([]),[l,d]=Q.useState(!1),[f,p]=Q.useState(!1),[m,h]=Q.useState(!1),[g,_]=Q.useState(!1),[v,y]=Q.useState(new Set),b=Ft(e=>e.getWorktreeMetadata),x=Ft(e=>e.newSessionDraft),S=Ft(e=>e.setNewSessionDraftTarget),C=Ft(e=>e.setDraftBootstrapPendingDirectory),w=tt,T=Ft(e=>e.archiveSessions),E=u(e=>e.showDeletionDialog),D=u(e=>e.setShowDeletionDialog),O=ge(e=>e.currentDirectory),k=ge(e=>e.homeDirectory),A=ge(e=>e.isHomeReady),j=vt(e=>e.projects),M=vt(e=>e.activeProjectId),{isMobile:N,isTablet:P,hasTouchInput:F}=Ai(),I=N||P||F,L=Q.useMemo(()=>Qh((M?j.find(e=>e.id===M)??null:null)?.path??O),[M,O,j]),R=Q.useCallback(e=>{let t=Qh(e.projectDirectory)||L;return{id:(j.find(e=>Qh(e.path)===t)??null)?.id??`path:${t}`,path:t}},[L,j]),z=g&&v.size>0,B=Q.useMemo(()=>{let e=a?.worktree;return e&&typeof e.branch==`string`&&e.branch.trim().length>0?!0:s.length>0&&s.every(({metadata:e})=>typeof e.branch==`string`&&e.branch.trim().length>0)},[a?.worktree,s]),V=a?.mode===`worktree`,H=V,U=m||!V||!B,W=m||!V;Q.useEffect(()=>{r||!A||j.length>0||(i(!0),n(!0))},[r,A,j.length]);let ee=Q.useCallback(e=>{o({sessions:e.sessions,dateLabel:e.dateLabel,mode:e.mode??`session`,worktree:e.worktree??null})},[]),G=Q.useCallback(()=>{o(null),c([]),d(!1),p(!1),h(!1),_(!1),y(new Set)},[]),te=Q.useCallback(t=>{if(t.sessions.length===0)return;let n=t.sessions.map(e=>e.id);Ko({sessionIds:n,message:n.length===1?e(`sessions.sidebar.session.delete.success`):e(`sessions.sidebar.bulkActions.deletedPlural`,{count:n.length}),undoLabel:e(`sessions.sidebar.undo`),commitFailedMessage:n.length===1?e(`sessions.sidebar.session.delete.error`):e(`sessions.sidebar.bulkActions.failedDeletePlural`,{count:n.length})})},[e]);Q.useEffect(()=>Be.onDeleteRequest(e=>{if(!E&&(e.mode??`session`)===`session`){te(e);return}ee(e)}),[ee,E,te]),Q.useEffect(()=>Be.onDirectoryRequest(()=>{n(!0)}),[]),Q.useEffect(()=>{if(!a){c([]),d(!1),p(!1),_(!1),y(new Set);return}let e=a.sessions.map(e=>{let t=b(e.id);return t?{session:e,metadata:t}:null}).filter(e=>!!e);c(e),d(!1),_(!1),y(new Set);let t=new Map;if(a.worktree?.path&&t.set(Qh(a.worktree.path),a.worktree),e.forEach(({metadata:e})=>{e.path&&t.set(Qh(e.path),e)}),t.size===0){_(!0);return}let n=!1;return(async()=>{let e=new Map,r=new Set;await Promise.all(Array.from(t.entries()).map(async([t,n])=>{try{let i=await Ur(n.path);e.set(t,i),i?.isDirty&&r.add(t)}catch{n.status&&(e.set(t,n.status),n.status.isDirty&&r.add(t))}})).catch(e=>{console.warn(`Failed to inspect worktree status before deletion:`,e)}),!n&&(y(r),_(!0),o(t=>{if(!t?.worktree?.path)return t;let n=Qh(t.worktree.path),r=e.get(n);if(!r)return t;let i=t.worktree.status;return i?.isDirty===r.isDirty&&i?.ahead===r.ahead&&i?.behind===r.behind&&i?.upstream===r.upstream?t:{...t,worktree:{...t.worktree,status:r}}}),c(t=>t.map(t=>{let n=Qh(t.metadata.path),r=e.get(n);return r?{session:t.session,metadata:{...t.metadata,status:r}}:t})))})(),()=>{n=!0}},[a,b]),Q.useEffect(()=>{B||d(!1)},[B]);let K=Q.useCallback(async(t,n)=>{let r=l&&B,i=R(t),a=Qh(t.path),o=Qh(i.path);try{await Kr(i,t,{deleteRemoteBranch:r,deleteLocalBranch:n});let e=Qh(x?.directoryOverride);return x?.open&&a&&e===a&&o&&(C(null),S({projectId:i.id,directoryOverride:o},{force:!0})),Qh(O)===a&&o&&ge.getState().setDirectory(o,{showOverlay:!1}),!0}catch(t){return Y.error(e(`sessions.sidebar.sessionDialogs.worktree.errorRemoveTitle`),{description:Zh(t instanceof Error?t.message:e(`sessions.sidebar.dialogs.deleteResult.tryAgain`))}),!1}},[B,O,l,R,x?.directoryOverride,x?.open,C,S,e]),ne=Q.useCallback((t,n)=>{let r=l&&B;(async()=>{if(!await K(t,n))return;let i=e(r?`sessions.sidebar.sessionDialogs.worktree.removedWithRemote`:`sessions.sidebar.sessionDialogs.worktree.removed`);Y.success(e(`sessions.sidebar.sessionDialogs.worktree.removedTitle`),{description:Zh(i)})})()},[B,l,K,e]),re=Q.useCallback(async()=>{if(a){h(!0);try{let t=H&&f;if(a.sessions.length===0&&V&&a.worktree){ne(a.worktree,t),G();return}if(a.sessions.length===1){let t=a.sessions[0];if(V){if(!await w(t.id)){Y.error(e(`sessions.sidebar.session.archive.error`)),h(!1);return}So({sessionIds:[t.id],message:e(`sessions.sidebar.session.archive.success`),undoLabel:e(`sessions.sidebar.undo`),settingsLabel:e(`settings.openchamber.archivedSessions.actions.view`),undoFailedMessage:e(`sessions.sidebar.session.archive.undoFailed`)})}else Ko({sessionIds:[t.id],message:e(`sessions.sidebar.session.delete.success`),undoLabel:e(`sessions.sidebar.undo`),commitFailedMessage:e(`sessions.sidebar.session.delete.error`)})}else{let n=a.sessions.map(e=>e.id),r=[],i=[];if(V){let e=await T(n);r=e.archivedIds,i=e.failedIds}else Ko({sessionIds:n,message:n.length===1?e(`sessions.sidebar.bulkActions.deletedSingle`,{count:n.length}):e(`sessions.sidebar.bulkActions.deletedPlural`,{count:n.length}),undoLabel:e(`sessions.sidebar.undo`),commitFailedMessage:n.length===1?e(`sessions.sidebar.bulkActions.failedDeleteSingle`,{count:n.length}):e(`sessions.sidebar.bulkActions.failedDeletePlural`,{count:n.length})}),r=n,i=[];if(V&&a.worktree&&i.length===0&&ne(a.worktree,t),V&&r.length>0&&So({sessionIds:r,message:r.length===1?e(`sessions.sidebar.bulkActions.archivedSingle`,{count:r.length}):e(`sessions.sidebar.bulkActions.archivedPlural`,{count:r.length}),undoLabel:e(`sessions.sidebar.undo`),settingsLabel:e(`settings.openchamber.archivedSessions.actions.view`),undoFailedMessage:r.length===1?e(`sessions.sidebar.session.archive.undoFailed`):e(`sessions.sidebar.bulkActions.archiveUndoFailed`,{count:r.length})}),i.length>0&&(Y.error(V?i.length===1?e(`sessions.sidebar.bulkActions.failedArchiveSingle`,{count:i.length}):e(`sessions.sidebar.bulkActions.failedArchivePlural`,{count:i.length}):i.length===1?e(`sessions.sidebar.bulkActions.failedDeleteSingle`,{count:i.length}):e(`sessions.sidebar.bulkActions.failedDeletePlural`,{count:i.length}),{description:Zh(e(`sessions.sidebar.dialogs.deleteResult.tryAgain`))}),r.length===0)){h(!1);return}}V&&a.sessions.length===1&&a.worktree&&ne(a.worktree,t),G()}finally{h(!1)}}},[a,f,w,T,G,H,V,ne,e]),ie=a?.worktree??s[0]?.metadata??null,ae=a?a.mode===`worktree`?a.sessions.length===0?e(`sessions.sidebar.dialogs.worktreeDelete.descriptionNoLinked`):a.sessions.length===1?e(`sessions.sidebar.dialogs.worktreeDelete.descriptionOneLinked`,{count:a.sessions.length}):e(`sessions.sidebar.dialogs.worktreeDelete.descriptionManyLinked`,{count:a.sessions.length}):a.sessions.length===1?a.dateLabel?e(`sessions.sidebar.dialogs.sessionDelete.descriptionOneWithDate`,{dateLabel:a.dateLabel}):e(`sessions.sidebar.dialogs.sessionDelete.descriptionOne`):a.dateLabel?e(`sessions.sidebar.dialogs.sessionDelete.descriptionManyWithDate`,{count:a.sessions.length,dateLabel:a.dateLabel}):e(`sessions.sidebar.dialogs.sessionDelete.descriptionMany`,{count:a.sessions.length}):``,oe=a?(0,$.jsxs)(`div`,{className:X(V?`space-y-3`:`space-y-2`),children:[a.sessions.length>0&&(0,$.jsxs)(`div`,{className:X(V?`rounded-lg bg-muted/30 p-3`:`space-y-1.5 rounded-xl border border-border/40 bg-sidebar/60 p-3`),children:[V&&(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(`span`,{className:`typography-meta font-medium text-foreground`,children:a.sessions.length===1?e(`sessions.sidebar.sessionDialogs.linkedSessionSingle`):e(`sessions.sidebar.sessionDialogs.linkedSessionPlural`)}),(0,$.jsx)(`span`,{className:`typography-micro text-muted-foreground/70`,children:a.sessions.length})]}),(0,$.jsxs)(`ul`,{className:X(V?`mt-2 space-y-1`:`space-y-0.5`),children:[a.sessions.slice(0,5).map(t=>(0,$.jsxs)(`li`,{className:X(V?`flex items-center gap-2 rounded-md px-2.5 py-1.5 text-sm text-muted-foreground`:`typography-micro text-muted-foreground/80`),children:[(0,$.jsx)(`span`,{className:X(!V&&`hidden`),children:`•`}),(0,$.jsx)(`span`,{className:`truncate`,children:t.title||e(`sessions.sidebar.session.untitled`)})]},t.id)),a.sessions.length>5&&(0,$.jsx)(`li`,{className:X(V?`px-2.5 py-1 text-xs text-muted-foreground/70`:`typography-micro text-muted-foreground/70`),children:e(`sessions.sidebar.dialogs.sessionList.more`,{count:a.sessions.length-5})})]})]}),V?(0,$.jsxs)(`div`,{className:`space-y-2 rounded-lg bg-muted/30 p-3`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(Z,{name:`git-branch`,className:`h-4 w-4 text-muted-foreground`}),(0,$.jsx)(`span`,{className:`typography-meta font-medium text-foreground`,children:e(`sessions.sidebar.sessionDialogs.worktree.label`)}),ie?.label?(0,$.jsx)(`span`,{className:`typography-micro text-muted-foreground/70`,children:ie.label}):null]}),(0,$.jsx)(`p`,{className:`typography-micro text-muted-foreground/80 break-all`,children:ie?yn(ie.path,k):e(`sessions.sidebar.sessionDialogs.worktree.pathUnavailable`)}),z&&(0,$.jsx)(`p`,{className:`typography-micro text-status-warning`,children:e(`sessions.sidebar.sessionDialogs.worktree.uncommittedWarning`)})]}):(0,$.jsx)(`div`,{className:`rounded-xl border border-border/40 bg-sidebar/60 p-3`,children:(0,$.jsx)(`p`,{className:`typography-meta text-muted-foreground/80`,children:e(`sessions.sidebar.sessionDialogs.delete.note`)})})]}):null,se=V?B?(0,$.jsxs)(`button`,{type:`button`,onClick:()=>{U||d(e=>!e)},disabled:U,className:X(`flex items-center gap-2 rounded-md px-2 py-1 text-sm text-muted-foreground transition-colors`,U?`cursor-not-allowed opacity-60`:`hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary`),children:[l?(0,$.jsx)(Z,{name:`checkbox`,className:`size-4 text-primary`}):(0,$.jsx)(Z,{name:`checkbox-blank`,className:`size-4`}),e(`sessions.sidebar.sessionDialogs.actions.deleteRemoteBranch`)]}):(0,$.jsx)(`span`,{className:`text-xs text-muted-foreground/70`,children:e(`sessions.sidebar.sessionDialogs.actions.remoteBranchInfoUnavailable`)}):null,q=V?(0,$.jsxs)(`button`,{type:`button`,onClick:()=>{W||p(e=>!e)},disabled:W,className:X(`flex items-center gap-2 rounded-md px-2 py-1 text-sm text-muted-foreground transition-colors`,W?`cursor-not-allowed opacity-60`:`hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary`),children:[f?(0,$.jsx)(Z,{name:`checkbox`,className:`size-4 text-primary`}):(0,$.jsx)(Z,{name:`checkbox-blank`,className:`size-4`}),e(`sessions.sidebar.sessionDialogs.actions.deleteLocalBranch`)]}):null,ce=V?(0,$.jsxs)(`div`,{className:`flex w-full items-center justify-between gap-3`,children:[(0,$.jsxs)(`div`,{className:`flex flex-col items-start gap-1`,children:[q,se]}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(Sn,{variant:`ghost`,onClick:G,disabled:m,children:e(`sessions.sidebar.dialogs.cancel`)}),(0,$.jsx)(Sn,{variant:`destructive`,onClick:re,disabled:m,children:e(m?`sessions.sidebar.sessionDialogs.actions.deleting`:`sessions.sidebar.sessionDialogs.actions.deleteWorktree`)})]})]}):(0,$.jsxs)(`div`,{className:`flex w-full items-center justify-between gap-3`,children:[(0,$.jsxs)(`button`,{type:`button`,onClick:()=>D(!E),className:`inline-flex items-center gap-1.5 typography-meta text-muted-foreground transition-colors hover:text-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-primary/50`,"aria-pressed":!E,children:[E?(0,$.jsx)(Z,{name:`checkbox-blank`,className:`size-4`}):(0,$.jsx)(Z,{name:`checkbox`,className:`size-4 text-primary`}),e(`sessions.sidebar.dialogs.neverAsk`)]}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(Sn,{variant:`ghost`,onClick:G,disabled:m,children:e(`sessions.sidebar.dialogs.cancel`)}),(0,$.jsx)(Sn,{variant:`destructive`,onClick:re,disabled:m,children:m?e(`sessions.sidebar.sessionDialogs.actions.deleting`):a?.sessions.length===1?e(`sessions.sidebar.dialogs.deleteSession.titleAction`):e(`sessions.sidebar.dialogs.deleteSessions.titleAction`)})]})]}),le=V?e(`sessions.sidebar.sessionDialogs.actions.deleteWorktree`):a?.sessions.length===1?e(`sessions.sidebar.dialogs.deleteSession.titleAction`):e(`sessions.sidebar.dialogs.deleteSessions.titleAction`);return(0,$.jsxs)($.Fragment,{children:[I?(0,$.jsx)(zi,{open:!!a,onClose:()=>{m||G()},title:le,footer:(0,$.jsx)(`div`,{className:`flex justify-end gap-2`,children:ce}),children:(0,$.jsxs)(`div`,{className:`space-y-2 pb-2`,children:[ae&&(0,$.jsx)(`p`,{className:`typography-meta text-muted-foreground/80`,children:ae}),oe]})}):(0,$.jsx)(mn,{open:!!a,onOpenChange:e=>{if(!e){if(m)return;G()}},children:(0,$.jsxs)(dn,{className:X(V?`max-w-xl max-h-[70vh] flex flex-col overflow-hidden gap-3`:`max-w-[min(520px,100vw-2rem)] space-y-2 pb-2`),children:[(0,$.jsxs)(ln,{children:[(0,$.jsxs)(fn,{className:X(V&&`flex items-center gap-2`),children:[V&&(0,$.jsx)(Z,{name:`delete-bin`,className:`h-5 w-5`}),le]}),ae&&(0,$.jsx)(pn,{children:ae})]}),(0,$.jsx)(`div`,{className:X(V&&`flex-1 min-h-0 overflow-y-auto space-y-2`),children:oe}),(0,$.jsx)(un,{className:`mt-2 gap-2 pt-1 pb-1`,children:ce})]})}),(0,$.jsx)(Jo,{open:t,onOpenChange:n})]})},eg=Q.createContext(null),tg=e=>{let t=(0,Ts.c)(3),{children:n,value:r}=e,i;return t[0]!==n||t[1]!==r?(i=(0,$.jsx)(eg.Provider,{value:r,children:n}),t[0]=n,t[1]=r,t[2]=i):i=t[2],i},ng=la(()=>Te(()=>import(`./TerminalView-6sWzKRGD.js`).then(e=>({default:e.TerminalView})),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38]))),rg=la(()=>Te(()=>import(`./DiagramView-OKYwsnsC.js`).then(e=>({default:e.DiagramView})),__vite__mapDeps([39,1,2,3,4,17,8,18,14,5,6,7,15,12,27,24,25,26,31,32,10,11,16,19,20,21,22,23,40,41,42]))),ig=la(()=>Te(()=>import(`./SettingsView-DFUGEb2U.js`).then(e=>e.n).then(e=>({default:e.SettingsView})),__vite__mapDeps([43,1,2,3,4,5,6,7,8,44,45,10,11,12,17,46,18,19,20,21,14,15,47,16,22,23,48,24,25,26,27,28,49,50,51,52,53,54,30,34,35,36,55,56,57,58,59,60,61,62,29,63,31,64,65,66,67,68,69,70,71,72,73,74,75,76,33,77,78,79,38,80,81,82,83,84,85,86]))),ag=la(()=>Te(()=>import(`./SettingsWindow-Dnp3Z2TY.js`).then(e=>({default:e.SettingsWindow})),__vite__mapDeps([87,1,4,7,14,5,2,3,6,8,15,12,24,25,26,43,44,45,10,11,17,46,18,19,20,21,47,16,22,23,48,27,28,49,50,51,52,53,54,30,34,35,36,55,56,57,58,59,60,61,62,29,63,31,64,65,66,67,68,69,70,71,72,73,74,75,76,33,77,78,79,38,80,81,82,83,84,85,86]))),og=la(()=>Te(()=>import(`./MultiRunWindow-CHrt8pAc.js`).then(e=>({default:e.MultiRunWindow})),__vite__mapDeps([88,1,4,7,14,5,2,3,6,8,15,12,24,25,26,27,89,10,11,19,20,21,16,17,18,22,23,28,52,51,53,54,30,34,35,36,31,90,79]))),sg=la(()=>Te(()=>import(`./AssistantView-C2nt7gTA.js`).then(e=>e.n).then(e=>({default:e.AssistantView})),__vite__mapDeps([91,1,2,3,4,5,6,7,8,10,11,12,18,19,20,21,14,15,47,16,17,22,23,48,24,25,26,27,28,49,50,30,92,46,52,51,53,54,34,35,36,29,57,58,59,60,61,62,63,93,66,67,68,69,70,71,72,73,74,75,31,90,64,65,76,32,94,95,96,97,98,33,99,100,101,80,81,82,83,79,40,41,102,103]))),cg=()=>{let e=1220,t=u(e=>e.isSidebarOpen),n=u(e=>e.isRightSidebarOpen),r=u(e=>e.isBottomTerminalOpen),i=u(e=>e.setRightSidebarOpen),a=u(e=>e.setBottomTerminalOpen),o=u(e=>e.activeMainTab),s=u(e=>e.setIsMobile),c=u(e=>e.isSessionSwitcherOpen),l=u(e=>e.isSettingsDialogOpen),d=u(e=>e.setSettingsDialogOpen),f=u(e=>e.isMultiRunLauncherOpen),p=u(e=>e.setMultiRunLauncherOpen),{isMobile:m,isTablet:h}=Ai(),g=Q.useRef(!1),_=Q.useRef(!1),v=Q.useRef(!1),[y,b]=Q.useState(!1),[x,S]=Q.useState(!1),[C,w]=Q.useState(!1),[T,E]=Q.useState(!1),D=Q.useCallback(e=>{b(e),u.getState().setSessionSwitcherOpen(e)},[]),O=Q.useRef(!1),k=Q.useRef(typeof window>`u`?0:window.innerWidth),A=ja(-k.current),j=(0,Q.useRef)(0),M=ja(k.current),N=(0,Q.useRef)(0);(0,Q.useEffect)(()=>{m&&(j.current=window.innerWidth,N.current=window.innerWidth)},[m]),(0,Q.useEffect)(()=>{if(!m){w(!1);return}y&&w(!0),Ma(A,y?0:-j.current,{type:`spring`,stiffness:400,damping:35,mass:.8})},[y,m,A]),(0,Q.useEffect)(()=>{if(!m){E(!1);return}O.current=x,x&&E(!0),Ma(M,x?0:N.current,{type:`spring`,stiffness:400,damping:35,mass:.8})},[m,x,M]),(0,Q.useEffect)(()=>{if(m)return A.on(`change`,e=>{let t=j.current||k.current,n=y||e>-t+.5;w(e=>e===n?e:n)})},[m,A,y]),(0,Q.useEffect)(()=>{if(m)return M.on(`change`,e=>{let t=N.current||k.current,n=x||e<t-.5;E(e=>e===n?e:n)})},[m,x,M]),(0,Q.useEffect)(()=>{m&&!c&&y&&D(!1)},[c,m,y,D]),(0,Q.useEffect)(()=>{if(!m){v.current=!1;return}v.current||(v.current=!0,D(!1),S(!1),u.getState().isRightSidebarOpen&&i(!1))},[m,D,i]),(0,Q.useEffect)(()=>{if(!m||o!==`chat`||y||x||l)return;let e=!1,t,n=r=>{t=window.setTimeout(()=>{if(e)return;let t=Ft.getState(),r=u.getState();if(!(r.activeMainTab!==`chat`||r.isSettingsDialogOpen||t.currentSessionId||t.newSessionDraft?.open)){if(t.isLoading){n(250);return}t.openNewSessionDraft()}},r)};return n(500),()=>{e=!0,t!==void 0&&window.clearTimeout(t)}},[o,m,l,y,x]),(0,Q.useEffect)(()=>{!m||!l||(D(!1),S(!1),n&&i(!1))},[m,l,n,D,i]),Q.useEffect(()=>{u.getState().isMobile!==m&&s(m)},[m,s]),Q.useEffect(()=>{if(typeof window>`u`)return;let e,t=()=>{e===void 0&&(e=window.requestAnimationFrame(()=>{e=void 0,u.getState().updateProportionalSidebarWidths()}))};return window.addEventListener(`resize`,t),()=>{window.removeEventListener(`resize`,t),e!==void 0&&window.cancelAnimationFrame(e)}},[]),Q.useEffect(()=>{if(typeof window>`u`)return;let t,n=()=>{let t=u.getState(),n=window.innerWidth,r=window.innerHeight;!m&&!h&&(n<1140?t.isRightSidebarOpen&&(i(!1),g.current=!0):n>=e&&g.current&&(i(!0),g.current=!1),r<640?t.isBottomTerminalOpen&&(a(!1),_.current=!0):r>=700&&_.current&&(a(!0),_.current=!1))},r=()=>{t===void 0&&(t=window.requestAnimationFrame(()=>{t=void 0,n()}))};return n(),window.addEventListener(`resize`,r),()=>{window.removeEventListener(`resize`,r),t!==void 0&&window.cancelAnimationFrame(t)}},[m,h,a,i]),Q.useEffect(()=>{if(typeof window>`u`)return;let t=u.subscribe((t,n)=>{let r=window.innerWidth,i=window.innerHeight,a=r>=e,o=i>=700;t.isRightSidebarOpen!==n.isRightSidebarOpen&&a&&(g.current=!1),t.isBottomTerminalOpen!==n.isBottomTerminalOpen&&o&&(_.current=!1)});return()=>{t()}},[m,h,a,i]);let P=Q.useCallback(()=>{y&&D(!1),S(!x)},[y,x,D]),F=Q.useMemo(()=>{switch(o){case`git`:return(0,$.jsx)(Q.Suspense,{fallback:null,children:(0,$.jsx)(du,{isActive:!x})});case`diff`:return(0,$.jsx)(Q.Suspense,{fallback:null,children:(0,$.jsx)(xo,{})});case`terminal`:return r?null:(0,$.jsx)(Q.Suspense,{fallback:null,children:(0,$.jsx)(ng,{})});case`files`:return(0,$.jsx)(Q.Suspense,{fallback:null,children:(0,$.jsx)(go,{})});case`diagram`:return(0,$.jsx)(Q.Suspense,{fallback:null,children:(0,$.jsx)(rg,{})});default:return null}},[o,r,x]),I=o===`schedule`,L=o===`assistant`,R=I||L,z=o===`chat`,B=!R&&!l;return(0,$.jsx)(fo,{children:(0,$.jsxs)(`div`,{"data-page-scroll-lock":`true`,className:X(`main-content-safe-area`,m?`flex h-[100dvh] flex-col`:`relative flex h-[100dvh]`,`bg-background`),children:[(0,$.jsx)(Wu,{}),(0,$.jsx)(Fd,{}),(0,$.jsx)(zd,{}),(0,$.jsx)($h,{}),m?(0,$.jsxs)(tg,{value:{leftDrawerOpen:y,rightDrawerOpen:x,toggleLeftDrawer:()=>{let e=!y;x&&S(!1),D(e)},toggleRightDrawer:P,leftDrawerX:A,rightDrawerX:M,leftDrawerWidth:j,rightDrawerWidth:N,setMobileLeftDrawerOpen:D,setRightSidebarOpen:S},children:[!l&&!R&&(0,$.jsx)(hc,{onToggleLeftDrawer:()=>{let e=!y;x&&S(!1),D(e)},onToggleRightDrawer:()=>{P()},leftDrawerOpen:y,rightDrawerOpen:x}),(0,$.jsx)(`div`,{"data-page-scroll-lock":`true`,className:X(`flex flex-1 overflow-hidden relative`,l&&`hidden`),children:(0,$.jsxs)(`main`,{className:`w-full h-full overflow-hidden bg-background relative`,"data-page-scroll-lock":`true`,children:[I&&(0,$.jsx)(`div`,{className:`absolute inset-0`,children:(0,$.jsx)(xi,{children:(0,$.jsx)(Q.Suspense,{fallback:null,children:(0,$.jsx)(Zo,{})})})}),L&&(0,$.jsx)(`div`,{className:`absolute inset-0`,children:(0,$.jsx)(xi,{children:(0,$.jsx)(Q.Suspense,{fallback:null,children:(0,$.jsx)(sg,{})})})}),B&&(0,$.jsx)(`div`,{className:X(`absolute inset-0`,!z&&`invisible`),children:(0,$.jsx)(xi,{children:(0,$.jsx)(Oo,{})})}),B&&F&&(0,$.jsx)(`div`,{className:`absolute inset-0`,children:(0,$.jsx)(xi,{children:F})}),f&&(0,$.jsx)(`div`,{className:`absolute inset-0 z-10 bg-background`,children:(0,$.jsx)(xi,{children:(0,$.jsx)(Cs,{onCreated:()=>p(!1),onCancel:()=>p(!1)})})}),(0,$.jsx)(Aa.div,{className:X(`absolute inset-0 z-20 bg-sidebar`,!C&&`pointer-events-none invisible`),"data-page-scroll-lock":`true`,style:{x:A},"aria-hidden":!y,children:(0,$.jsx)(xi,{children:(0,$.jsx)(Xh,{mobileVariant:!0,isVisible:C})})}),T&&(0,$.jsx)(Aa.div,{className:`absolute inset-0 z-20 bg-sidebar`,"data-page-scroll-lock":`true`,style:{x:M},"aria-hidden":!x,children:(0,$.jsx)(xi,{children:(0,$.jsx)(Q.Suspense,{fallback:null,children:(0,$.jsx)(du,{isActive:x})})})})]})}),l&&(0,$.jsx)(`div`,{className:`absolute inset-0 z-10 bg-background`,style:{paddingTop:`var(--oc-safe-area-top, 0px)`},children:(0,$.jsx)(xi,{children:(0,$.jsx)(Q.Suspense,{fallback:null,children:(0,$.jsx)(ig,{onClose:()=>d(!1)})})})}),(0,$.jsx)(xi,{children:(0,$.jsx)(rs,{})})]}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Lc,{}),(0,$.jsxs)(`div`,{className:`flex flex-1 overflow-hidden`,"data-page-scroll-lock":`true`,children:[(0,$.jsx)(Oc,{isOpen:t,isMobile:m,className:`border-border/50`,topBar:(0,$.jsx)(kc,{}),children:(0,$.jsx)(Xh,{isVisible:t})}),(0,$.jsx)(`div`,{className:`relative flex flex-1 min-w-0 flex-col overflow-hidden bg-background`,"data-page-scroll-lock":`true`,children:R?(0,$.jsx)(`main`,{className:`flex-1 overflow-hidden bg-background`,"data-page-scroll-lock":`true`,children:(0,$.jsx)(xi,{children:(0,$.jsx)(Q.Suspense,{fallback:null,children:L?(0,$.jsx)(sg,{}):(0,$.jsx)(Zo,{})})})}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(hc,{}),(0,$.jsxs)(`div`,{className:`relative flex flex-1 min-h-0 overflow-hidden bg-background`,"data-page-scroll-lock":`true`,children:[(0,$.jsxs)(`div`,{className:`relative flex flex-1 min-w-0 flex-col overflow-hidden oc-layout-divider-t bg-background`,"data-page-scroll-lock":`true`,children:[(0,$.jsx)(`div`,{className:`flex flex-1 min-h-0 overflow-hidden`,"data-page-scroll-lock":`true`,children:(0,$.jsxs)(`div`,{className:`relative flex flex-1 min-h-0 min-w-0 overflow-hidden`,"data-page-scroll-lock":`true`,children:[(0,$.jsxs)(`main`,{className:`flex-1 overflow-hidden bg-background relative`,"data-page-scroll-lock":`true`,children:[B&&(0,$.jsx)(`div`,{className:X(`absolute inset-0`,!z&&`invisible`),children:(0,$.jsx)(xi,{children:(0,$.jsx)(Oo,{})})}),B&&F&&(0,$.jsx)(`div`,{className:`absolute inset-0`,children:(0,$.jsx)(xi,{children:F})})]}),(0,$.jsx)(bo,{})]})}),(0,$.jsx)(bc,{isOpen:r,isMobile:m,children:r?(0,$.jsx)(xi,{children:(0,$.jsx)(Q.Suspense,{fallback:null,children:(0,$.jsx)(ng,{})})}):null})]}),(0,$.jsx)(Kc,{isOpen:n,className:`bg-background oc-layout-divider-t`,children:(0,$.jsx)(xi,{children:(0,$.jsx)(Nu,{})})})]})]})})]}),(0,$.jsx)(Q.Suspense,{fallback:null,children:(0,$.jsx)(ag,{open:l,onOpenChange:d})}),(0,$.jsx)(Q.Suspense,{fallback:null,children:(0,$.jsx)(og,{open:f,onOpenChange:p})})]})]})})},lg=e=>{if(e<1e3)return`${Math.round(e)}ms`;let t=e/1e3;return t<60?`${t.toFixed(1)}s`:`${Math.floor(t/60)}m ${Math.round(t%60)}s`},ug=e=>{let t=(0,Ts.c)(8),{label:n,value:r}=e,i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(i={backgroundColor:`color-mix(in srgb, var(--surface-muted) 55%, transparent)`},t[0]=i):i=t[0];let a;t[1]===n?a=t[2]:(a=(0,$.jsx)(`div`,{className:`typography-meta text-[var(--surface-muted-foreground)]`,children:n}),t[1]=n,t[2]=a);let o;t[3]===r?o=t[4]:(o=(0,$.jsx)(`div`,{className:`typography-markdown font-semibold text-[var(--surface-foreground)]`,children:r}),t[3]=r,t[4]=o);let s;return t[5]!==a||t[6]!==o?(s=(0,$.jsxs)(`div`,{className:`rounded-md p-2`,style:i,children:[a,o]}),t[5]=a,t[6]=o,t[7]=s):s=t[7],s},dg=e=>{let t=(0,Ts.c)(43),{title:n,snapshot:r,emptyLabel:i}=e,{t:a}=Fe(),o;if(t[0]!==i||t[1]!==r.durationMs||t[2]!==r.entries||t[3]!==r.lastUpdatedAt||t[4]!==r.startedAt||t[5]!==a||t[6]!==n){let e=r.entries.slice(0,12),s;t[8]===r.entries?s=t[9]:(s=r.entries.reduce(pg,0),t[8]=r.entries,t[9]=s);let c=s,l;t[10]===n?l=t[11]:(l=(0,$.jsx)(`div`,{className:`typography-ui-label font-semibold text-[var(--surface-foreground)]`,children:n}),t[10]=n,t[11]=l);let u;t[12]!==r.durationMs||t[13]!==r.startedAt||t[14]!==a?(u=r.startedAt?lg(r.durationMs):a(`memoryDebugPanel.common.idle`),t[12]=r.durationMs,t[13]=r.startedAt,t[14]=a,t[15]=u):u=t[15];let d;t[16]===u?d=t[17]:(d=(0,$.jsx)(`div`,{className:`typography-meta text-[var(--surface-muted-foreground)]`,children:u}),t[16]=u,t[17]=d);let f;t[18]!==l||t[19]!==d?(f=(0,$.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[l,d]}),t[18]=l,t[19]=d,t[20]=f):f=t[20];let p;t[21]===a?p=t[22]:(p=a(`memoryDebugPanel.metric.metrics`),t[21]=a,t[22]=p);let m;t[23]!==r.entries.length||t[24]!==p?(m=(0,$.jsx)(ug,{label:p,value:r.entries.length}),t[23]=r.entries.length,t[24]=p,t[25]=m):m=t[25];let h;t[26]===a?h=t[27]:(h=a(`memoryDebugPanel.metric.samples`),t[26]=a,t[27]=h);let g;t[28]!==h||t[29]!==c?(g=(0,$.jsx)(ug,{label:h,value:c}),t[28]=h,t[29]=c,t[30]=g):g=t[30];let _;t[31]===a?_=t[32]:(_=a(`memoryDebugPanel.metric.lastUpdate`),t[31]=a,t[32]=_);let v;t[33]!==r.lastUpdatedAt||t[34]!==a?(v=r.lastUpdatedAt?a(`memoryDebugPanel.common.live`):a(`memoryDebugPanel.common.notAvailable`),t[33]=r.lastUpdatedAt,t[34]=a,t[35]=v):v=t[35];let y;t[36]!==_||t[37]!==v?(y=(0,$.jsx)(ug,{label:_,value:v}),t[36]=_,t[37]=v,t[38]=y):y=t[38];let b;t[39]!==g||t[40]!==y||t[41]!==m?(b=(0,$.jsxs)(`div`,{className:`grid grid-cols-3 gap-2`,children:[m,g,y]}),t[39]=g,t[40]=y,t[41]=m,t[42]=b):b=t[42],o=(0,$.jsxs)(`div`,{className:`space-y-2 border-t border-[var(--interactive-border)] pt-2 first:border-t-0 first:pt-0`,children:[f,b,e.length===0?(0,$.jsx)(`div`,{className:`rounded-md p-3 typography-meta text-[var(--surface-muted-foreground)]`,style:{backgroundColor:`color-mix(in srgb, var(--surface-muted) 45%, transparent)`},children:i}):(0,$.jsx)(Nr,{outerClassName:`max-h-64`,className:`pr-1`,children:(0,$.jsx)(`div`,{className:`space-y-1`,children:e.map(e=>(0,$.jsxs)(`div`,{className:`rounded-md border border-[var(--interactive-border)] p-2`,style:{backgroundColor:`color-mix(in srgb, var(--surface-elevated) 88%, transparent)`},children:[(0,$.jsx)(`div`,{className:`typography-meta font-medium text-[var(--surface-foreground)] break-all`,children:e.metric}),(0,$.jsxs)(`div`,{className:`mt-1 grid grid-cols-4 gap-2 typography-meta text-[var(--surface-muted-foreground)]`,children:[(0,$.jsx)(`span`,{children:a(`memoryDebugPanel.metric.countValue`,{value:e.count})}),(0,$.jsx)(`span`,{children:a(`memoryDebugPanel.metric.avgValue`,{value:e.avg})}),(0,$.jsx)(`span`,{children:a(`memoryDebugPanel.metric.maxValue`,{value:e.max})}),(0,$.jsx)(`span`,{children:a(`memoryDebugPanel.metric.totalValue`,{value:e.total})})]})]},e.metric))})})]}),t[0]=i,t[1]=r.durationMs,t[2]=r.entries,t[3]=r.lastUpdatedAt,t[4]=r.startedAt,t[5]=a,t[6]=n,t[7]=o}else o=t[7];return o},fg=e=>{let t=(0,Ts.c)(104),{onClose:n}=e,{t:r}=Fe(),[i,a]=Q.useState(`memory`),[o,s]=Q.useState(`idle`),c=Ft(mg),l=at(hg),u=kt(),d=Dt(),[f,p]=Q.useState(gg),m,h;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(m=()=>Ge(()=>{p(pt())}),h=[],t[0]=m,t[1]=h):(m=t[0],h=t[1]),Q.useEffect(m,h);let g;if(t[2]!==d||t[3]!==u){bb0:{let e=Et(),t={};if(!e){g=t;break bb0}let n=e.getCacheBudget?.(),r=n?n.listCanonical().map(_g):u.map(e=>({directory:d,sessionID:e.id}));for(let n of r){if(d&&n.directory!==d)continue;let r=e.getTranscript(nn(n.directory,n.sessionID));t[n.sessionID]=r.messageOrder.map(e=>r.messagesByID[e]).filter(vg)}g=t}t[2]=d,t[3]=u,t[4]=g}else g=t[4];let _=g,v=qf(yg),[y,b]=Q.useState(bg),[x,S]=Q.useState(xg),C;t[5]===y.entries?C=t[6]:(C=new Map,y.entries.forEach(e=>{C.set(e.metric,e.count)}),t[5]=y.entries,t[6]=C);let w;t[7]===C?w=t[8]:(w=C.get(`ui.message_list.render`)??0,t[7]=C,t[8]=w);let T;t[9]===C?T=t[10]:(T=C.get(`ui.message_list.render.streaming`)??0,t[9]=C,t[10]=T);let E;t[11]===C?E=t[12]:(E=C.get(`ui.chat_message.render`)??0,t[11]=C,t[12]=E);let D;t[13]===C?D=t[14]:(D=C.get(`ui.chat_message.render.streaming`)??0,t[13]=C,t[14]=D);let O;t[15]===C?O=t[16]:(O=C.get(`ui.chat_message.render.static_during_stream`)??0,t[15]=C,t[16]=O);let k;t[17]===C?k=t[18]:(k=C.get(`ui.chat_message.render.static_outside_active_turn_during_stream`)??0,t[17]=C,t[18]=k);let A;t[19]!==w||t[20]!==T||t[21]!==E||t[22]!==D||t[23]!==O||t[24]!==k?(A={messageListRender:w,messageListRenderStreaming:T,chatMessageRender:E,chatMessageRenderStreaming:D,chatMessageRenderStaticDuringStream:O,chatMessageRenderStaticOutsideActiveTurnDuringStream:k},t[19]=w,t[20]=T,t[21]=E,t[22]=D,t[23]=O,t[24]=k,t[25]=A):A=t[25];let j=A,M,N;t[26]===Symbol.for(`react.memo_cache_sentinel`)?(M=()=>{let e=()=>{b(we()),S(Ce())};e();let t=window.setInterval(e,500);return()=>window.clearInterval(t)},N=[],t[26]=M,t[27]=N):(M=t[26],N=t[27]),Q.useEffect(M,N);let P,F;t[28]===o?(P=t[29],F=t[30]):(P=()=>{if(o===`idle`)return;let e=window.setTimeout(()=>{s(`idle`)},1500);return()=>window.clearTimeout(e)},F=[o],t[28]=o,t[29]=P,t[30]=F),Q.useEffect(P,F);let I=0,L=0,R=0;for(let e of Object.keys(_)){let t=_[e]??[];L+=t.length;for(let e of t)e.role===`user`?R+=1:e.role===`assistant`&&(I+=1)}let z;t[31]!==I||t[32]!==L||t[33]!==R?(z={assistant:I,total:L,user:R},t[31]=I,t[32]=L,t[33]=R,t[34]=z):z=t[34];let B=z,V;if(t[35]!==c||t[36]!==_||t[37]!==l||t[38]!==u||t[39]!==r){let e;t[41]!==c||t[42]!==_||t[43]!==l||t[44]!==r?(e=e=>{let t=_[e.id]??[],n=0,i=0;for(let e of t)e.role===`user`?i+=1:e.role===`assistant`&&(n+=1);let a=l.get(e.id);return{id:e.id,title:e.title||r(`memoryDebugPanel.common.untitled`),assistantMessageCount:n,messageCount:t.length,userMessageCount:i,isStreaming:a?.isStreaming||!1,isZombie:a?.isZombie||!1,backgroundCount:a?.backgroundMessageCount||0,lastAccessed:a?.lastAccessedAt||0,isCurrent:e.id===c}},t[41]=c,t[42]=_,t[43]=l,t[44]=r,t[45]=e):e=t[45],V=u.map(e).sort(Sg),t[35]=c,t[36]=_,t[37]=l,t[38]=u,t[39]=r,t[40]=V}else V=t[40];let H=V,U;t[46]===_?U=t[47]:(U=Object.keys(_),t[46]=_,t[47]=U);let W=U.length,ee;t[48]===Symbol.for(`react.memo_cache_sentinel`)?(ee=async()=>{try{let e={generatedAt:new Date().toISOString(),ui:we(),vscode:Ce()};await navigator.clipboard.writeText(JSON.stringify(e,null,2)),s(`copied`)}catch{s(`error`)}},t[48]=ee):ee=t[48];let G=ee,te;t[49]===Symbol.for(`react.memo_cache_sentinel`)?(te={backgroundColor:`color-mix(in srgb, var(--surface-background) 94%, transparent)`},t[49]=te):te=t[49];let K;t[50]===i?K=t[51]:(K=i===`memory`?(0,$.jsx)(Z,{name:`database-2`,className:`h-4 w-4 text-[var(--surface-foreground)]`}):(0,$.jsx)(Z,{name:`bar-chart-box`,className:`h-4 w-4 text-[var(--surface-foreground)]`}),t[50]=i,t[51]=K);let ne;t[52]===r?ne=t[53]:(ne=r(`memoryDebugPanel.title`),t[52]=r,t[53]=ne);let re;t[54]===ne?re=t[55]:(re=(0,$.jsx)(`h3`,{className:`typography-ui-label font-semibold text-[var(--surface-foreground)]`,children:ne}),t[54]=ne,t[55]=re);let ie;t[56]!==K||t[57]!==re?(ie=(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[K,re]}),t[56]=K,t[57]=re,t[58]=ie):ie=t[58];let ae;t[59]===i?ae=t[60]:(ae=i===`streaming`?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Sn,{size:`xs`,variant:`ghost`,onClick:G,children:(0,$.jsx)(Z,{name:`file-copy`,className:`h-3.5 w-3.5`})}),(0,$.jsx)(Sn,{size:`xs`,variant:`ghost`,onClick:()=>{ve(),b(we()),S(Ce())},children:(0,$.jsx)(Z,{name:`refresh`,className:`h-3.5 w-3.5`})})]}):null,t[59]=i,t[60]=ae);let oe;t[61]===n?oe=t[62]:(oe=n?(0,$.jsx)(Sn,{size:`icon`,variant:`ghost`,className:`h-6 w-6`,onClick:n,children:(0,$.jsx)(Z,{name:`close`,className:`h-4 w-4`})}):null,t[61]=n,t[62]=oe);let se;t[63]!==ae||t[64]!==oe?(se=(0,$.jsxs)(`div`,{className:`flex items-center gap-1`,children:[ae,oe]}),t[63]=ae,t[64]=oe,t[65]=se):se=t[65];let q;t[66]!==ie||t[67]!==se?(q=(0,$.jsxs)(`div`,{className:`mb-3 flex items-center justify-between gap-2`,children:[ie,se]}),t[66]=ie,t[67]=se,t[68]=q):q=t[68];let ce;t[69]===Symbol.for(`react.memo_cache_sentinel`)?(ce={backgroundColor:`color-mix(in srgb, var(--surface-muted) 55%, transparent)`},t[69]=ce):ce=t[69];let le=i===`memory`?`secondary`:`ghost`,ue;t[70]===Symbol.for(`react.memo_cache_sentinel`)?(ue=()=>a(`memory`),t[70]=ue):ue=t[70];let de;t[71]===r?de=t[72]:(de=r(`memoryDebugPanel.tabs.memory`),t[71]=r,t[72]=de);let fe;t[73]!==le||t[74]!==de?(fe=(0,$.jsx)(Sn,{size:`sm`,variant:le,className:`flex-1`,onClick:ue,children:de}),t[73]=le,t[74]=de,t[75]=fe):fe=t[75];let pe=i===`streaming`?`secondary`:`ghost`,me;t[76]===Symbol.for(`react.memo_cache_sentinel`)?(me=()=>a(`streaming`),t[76]=me):me=t[76];let he;t[77]===r?he=t[78]:(he=r(`memoryDebugPanel.tabs.streaming`),t[77]=r,t[78]=he);let ge;t[79]!==pe||t[80]!==he?(ge=(0,$.jsx)(Sn,{size:`sm`,variant:pe,className:`flex-1`,onClick:me,children:he}),t[79]=pe,t[80]=he,t[81]=ge):ge=t[81];let _e;t[82]!==fe||t[83]!==ge?(_e=(0,$.jsxs)(`div`,{className:`mb-3 flex gap-1 rounded-md p-1`,style:ce,children:[fe,ge]}),t[82]=fe,t[83]=ge,t[84]=_e):_e=t[84];let ye;t[85]!==i||t[86]!==W||t[87]!==o||t[88]!==c||t[89]!==_||t[90]!==B||t[91]!==l||t[92]!==H||t[93]!==u||t[94]!==j||t[95]!==y||t[96]!==r||t[97]!==v||t[98]!==x?(ye=i===`memory`?(0,$.jsxs)(`div`,{className:`space-y-3`,children:[(0,$.jsxs)(`div`,{className:`grid grid-cols-2 gap-2 typography-meta`,children:[(0,$.jsx)(ug,{label:r(`memoryDebugPanel.metric.totalMessages`),value:B.total}),(0,$.jsx)(ug,{label:r(`memoryDebugPanel.metric.cachedSessions`),value:`${W} / ${Gi.MAX_SESSIONS}`}),(0,$.jsx)(ug,{label:r(`memoryDebugPanel.metric.userMessages`),value:B.user}),(0,$.jsx)(ug,{label:r(`memoryDebugPanel.metric.assistantMessages`),value:B.assistant})]}),(0,$.jsxs)(`div`,{className:`typography-meta space-y-1 border-t border-[var(--interactive-border)] pt-2`,children:[(0,$.jsxs)(`div`,{className:`flex justify-between gap-2`,children:[(0,$.jsx)(`span`,{className:`text-[var(--surface-muted-foreground)]`,children:r(`memoryDebugPanel.metric.viewportWindow`)}),(0,$.jsx)(`span`,{className:`text-[var(--surface-foreground)]`,children:r(`memoryDebugPanel.metric.messagesValue`,{count:Hi()})})]}),(0,$.jsxs)(`div`,{className:`flex justify-between gap-2`,children:[(0,$.jsx)(`span`,{className:`text-[var(--surface-muted-foreground)]`,children:r(`memoryDebugPanel.metric.zombieTimeout`)}),(0,$.jsx)(`span`,{className:`text-[var(--surface-foreground)]`,children:r(`memoryDebugPanel.metric.minutesValue`,{count:Gi.ZOMBIE_TIMEOUT/1e3/60})})]}),(0,$.jsxs)(`div`,{className:`flex justify-between gap-2`,children:[(0,$.jsx)(`span`,{className:`text-[var(--surface-muted-foreground)]`,children:r(`memoryDebugPanel.metric.githubTotalRequests`)}),(0,$.jsx)(`span`,{className:`text-[var(--surface-foreground)]`,children:v})]})]}),(0,$.jsxs)(`div`,{className:`border-t border-[var(--interactive-border)] pt-2`,children:[(0,$.jsx)(`div`,{className:`mb-1 typography-meta font-semibold text-[var(--surface-foreground)]`,children:r(`memoryDebugPanel.section.sessionsInMemory`)}),(0,$.jsx)(Nr,{outerClassName:`max-h-48`,className:`space-y-1 pr-1`,children:H.map(e=>(0,$.jsxs)(`div`,{className:`typography-meta flex items-center justify-between rounded p-1.5`,style:{backgroundColor:e.isCurrent?`color-mix(in srgb, var(--interactive-selection) 22%, transparent)`:`color-mix(in srgb, var(--surface-muted) 35%, transparent)`},children:[(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-2`,children:[(0,$.jsx)(`span`,{className:`truncate text-[var(--surface-foreground)]`,children:e.title}),e.isStreaming?(0,$.jsx)(Z,{name:`pulse`,className:`h-3 w-3 animate-pulse text-[var(--status-info)]`}):null,e.isZombie?(0,$.jsx)(`span`,{className:`text-[var(--status-warning)]`,children:`!`}):null]}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(`span`,{className:`font-mono text-[var(--surface-muted-foreground)]`,children:r(`memoryDebugPanel.metric.roleMsgsValue`,{assistant:e.assistantMessageCount,user:e.userMessageCount})}),(0,$.jsx)(`span`,{className:`font-mono text-[var(--surface-foreground)]`,children:r(`memoryDebugPanel.metric.msgsValue`,{count:e.messageCount})}),e.backgroundCount>0?(0,$.jsxs)(`span`,{className:`text-[var(--status-info)]`,children:[`+`,e.backgroundCount]}):null]})]},e.id))})]}),(0,$.jsx)(`div`,{className:`flex gap-2 border-t border-[var(--interactive-border)] pt-2`,children:(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(Sn,{size:`sm`,variant:`outline`,className:`typography-meta`,onClick:()=>{u.map(Cg),Object.keys(_),H.map(wg),Object.fromEntries(l)},children:r(`memoryDebugPanel.actions.logState`)})}),(0,$.jsx)(Zr,{side:`top`,children:r(`memoryDebugPanel.tooltip.logCurrentState`)})]})})]}):(0,$.jsxs)(`div`,{className:`space-y-3`,children:[(0,$.jsxs)(`div`,{className:`flex items-center justify-between gap-2 rounded-md border border-[var(--interactive-border)] px-3 py-2 typography-meta text-[var(--surface-muted-foreground)]`,children:[(0,$.jsx)(`span`,{children:r(o===`copied`?`memoryDebugPanel.streaming.copy.copied`:o===`error`?`memoryDebugPanel.streaming.copy.failed`:`memoryDebugPanel.streaming.copy.hint`)}),(0,$.jsx)(Sn,{size:`xs`,variant:`outline`,onClick:G,children:r(`memoryDebugPanel.actions.copyJson`)})]}),(0,$.jsxs)(`div`,{className:`grid grid-cols-2 gap-2`,children:[(0,$.jsx)(ug,{label:r(`memoryDebugPanel.metric.uiMetrics`),value:y.entries.length}),(0,$.jsx)(ug,{label:r(`memoryDebugPanel.metric.vscodeMetrics`),value:x.entries.length}),(0,$.jsx)(ug,{label:r(`memoryDebugPanel.metric.messageListRenders`),value:j.messageListRender}),(0,$.jsx)(ug,{label:r(`memoryDebugPanel.metric.messageListStreamRenders`),value:j.messageListRenderStreaming}),(0,$.jsx)(ug,{label:r(`memoryDebugPanel.metric.chatMessageRenders`),value:j.chatMessageRender}),(0,$.jsx)(ug,{label:r(`memoryDebugPanel.metric.chatMessageStreamRenders`),value:j.chatMessageRenderStreaming}),(0,$.jsx)(ug,{label:r(`memoryDebugPanel.metric.chatMessageStaticDuringStream`),value:j.chatMessageRenderStaticDuringStream}),(0,$.jsx)(ug,{label:r(`memoryDebugPanel.metric.chatMessageStaticOutsideActiveTurn`),value:j.chatMessageRenderStaticOutsideActiveTurnDuringStream})]}),(0,$.jsx)(dg,{title:r(`memoryDebugPanel.section.uiStreamingMetrics`),snapshot:y,emptyLabel:r(`memoryDebugPanel.section.noUiSamples`)}),x.entries.length>0?(0,$.jsx)(dg,{title:r(`memoryDebugPanel.section.vscodeBridgeMetrics`),snapshot:x,emptyLabel:r(`memoryDebugPanel.section.noVscodeSamples`)}):null]}),t[85]=i,t[86]=W,t[87]=o,t[88]=c,t[89]=_,t[90]=B,t[91]=l,t[92]=H,t[93]=u,t[94]=j,t[95]=y,t[96]=r,t[97]=v,t[98]=x,t[99]=ye):ye=t[99];let be;return t[100]!==q||t[101]!==_e||t[102]!==ye?(be=(0,$.jsxs)(pi,{className:`fixed bottom-4 right-4 z-50 w-[28rem] p-4 shadow-none bottom-safe-area`,style:te,children:[q,_e,ye]}),t[100]=q,t[101]=_e,t[102]=ye,t[103]=be):be=t[103],be};function pg(e,t){return e+t.count}function mg(e){return e.currentSessionId}function hg(e){return e.sessionMemoryState}function gg(){return pt()}function _g(e){return e.scope}function vg(e){return!!e}function yg(e){return e.totalRequestCount}function bg(){return we()}function xg(){return Ce()}function Sg(e,t){return t.lastAccessed-e.lastAccessed}function Cg(e){return{id:e.id,title:e.title}}function wg(e){return{id:e.id,title:e.title,total:e.messageCount,user:e.userMessageCount,assistant:e.assistantMessageCount}}var Tg=()=>{let{isMobile:e,closeActiveContextPanelTab:t}=u.getState();if(e)return;let n=Da();n&&t(n)||b()&&L(`desktop_close_current_window`).catch(e=>{console.warn(`[menu-actions] failed to close current window`,e)})},Eg=()=>{if(typeof document>`u`)return``;let e=document.activeElement;if(e instanceof HTMLTextAreaElement)return e.value.slice(e.selectionStart??0,e.selectionEnd??0);if(e instanceof HTMLInputElement){let t=e.type?.toLowerCase()??`text`;if([`text`,`search`,`url`,`tel`,`password`].includes(t))return e.value.slice(e.selectionStart??0,e.selectionEnd??0)}return e instanceof HTMLElement&&e.isContentEditable?e.ownerDocument.defaultView?.getSelection?.()?.toString()??``:``},Dg=async()=>{let e=Eg()||window.getSelection()?.toString()||``;if(!e.trim())return!1;try{if(typeof navigator<`u`&&navigator.clipboard?.writeText)return await navigator.clipboard.writeText(e),!0}catch{}return document.execCommand(`copy`)},Og=`openchamber:menu-action`,kg=`openchamber:check-for-updates`,Ag=e=>typeof e?.listen==`function`?`bridge`:`dom`,jg=e=>{let t=Ft(e=>e.openNewSessionDraft),n=u(e=>e.toggleCommandPalette),r=u(e=>e.setCommandPaletteOpen),i=u(e=>e.toggleHelpDialog),a=u(e=>e.toggleSidebar),o=u(e=>e.setSessionSwitcherOpen),s=u(e=>e.setActiveMainTab),c=u(e=>e.setSettingsDialogOpen),l=u(e=>e.setSettingsPage),d=u(e=>e.setAboutDialogOpen),f=u(e=>e.toggleRightSidebar),p=u(e=>e.setRightSidebarOpen),m=u(e=>e.setRightSidebarTab),h=u(e=>e.toggleBottomTerminal),g=u(e=>e.setBottomTerminalExpanded),_=La(e=>e.checkForUpdates),{setThemeMode:v}=si(),{t:y}=Fe(),b=Q.useRef(!1),x=typeof window>`u`?null:window.__OPENCHAMBER_DESKTOP__,S=Ag(x),C=Q.useCallback(()=>{b.current||(b.current=!0,_().then(()=>{let{available:e,error:t}=La.getState();if(t){Y.error(y(`sessions.sidebar.updateCheck.errorTitle`),{description:t});return}e||Y.success(y(`sessions.sidebar.updateCheck.latestVersion`))}).finally(()=>{b.current=!1}))},[_,y]),w=Q.useCallback(()=>{Be.requestDirectoryDialog()},[]),T=Q.useCallback(e=>{_r(e,Ft.getState().currentSessionId,e=>{s(`chat`),o(!1),Ft.getState().setCurrentSession(e.sessionId,e.directory)})},[s,o]),E=Q.useCallback(e=>{let{activeProjectId:t,projects:n,setActiveProject:r}=vt.getState();if(n.length===0)return;let i=n.findIndex(e=>e.id===t),a=e>0?0:n.length-1;i>=0&&(a=(i+e+n.length)%n.length);let o=n[a];o&&r(o.id)},[]),D=Q.useCallback(_=>{switch(_){case`about`:d(!0);break;case`settings`:c(!0);break;case`switch-instance`:l(`remote-instances`),c(!0);break;case`command-palette`:n();break;case`quick-open`:r(!0);break;case`new-session`:s(`chat`),o(!1),t();break;case`new-worktree-session`:s(`chat`),o(!1),Ui();break;case`change-workspace`:w();break;case`close-tab-or-window`:Tg();break;case`toggle-right-sidebar`:f();break;case`open-right-sidebar-git`:p(!0),m(`git`);break;case`open-right-sidebar-files`:p(!0),m(`files`);break;case`toggle-terminal`:h();break;case`toggle-terminal-expanded`:g(!u.getState().isBottomTerminalExpanded);break;case`copy`:{let e=new Event(`openchamber:copy`,{cancelable:!0});window.dispatchEvent(e)&&Dg();break}case`theme-light`:v(`light`);break;case`theme-dark`:v(`dark`);break;case`theme-system`:v(`system`);break;case`toggle-sidebar`:a();break;case`toggle-memory-debug`:e?.();break;case`zoom-in`:wr();break;case`zoom-out`:Sr();break;case`zoom-reset`:hr();break;case`go-back`:ge.getState().goBack();break;case`go-forward`:ge.getState().goForward();break;case`previous-session`:T(-1);break;case`next-session`:T(1);break;case`previous-project`:E(-1);break;case`next-project`:E(1);break;case`help-dialog`:i();break;case`download-logs`:Ar().catch(()=>{Y.error(`Failed to collect OpenCode status`)})}},[w,E,T,e,t,d,s,o,r,c,l,g,p,m,v,h,n,i,f,a]);Q.useEffect(()=>{if(S!==`dom`)return;let e=e=>{let t=e.detail;t&&D(t)},t=()=>{C()};return window.addEventListener(Og,e),window.addEventListener(kg,t),()=>{window.removeEventListener(Og,e),window.removeEventListener(kg,t)}},[D,C,S]),Q.useEffect(()=>{if(S!==`bridge`)return;let e=x?.listen;if(typeof e!=`function`)return;let t=null,n=null;return e(`openchamber:menu-action`,e=>{let t=e?.payload;typeof t==`string`&&D(t)}).then(e=>{t=e}).catch(()=>{}),e(`openchamber:check-for-updates`,C).then(e=>{n=e}).catch(()=>{}),()=>{(async()=>{try{let e=t?.();e instanceof Promise&&await e}catch{}try{let e=n?.();e instanceof Promise&&await e}catch{}})()}},[x,D,C,S])},Mg=(e,t)=>e<t?-1:+(e>t),Ng=e=>JSON.stringify([...e.entries()].map(([e,t])=>[e,[...new Set(t)].sort(Mg)]).sort(([e],[t])=>Mg(e,t)));async function Pg({targets:e,isReady:t,fetchStatus:n,applySnapshot:r,concurrency:i=2,isDisposed:a=()=>!1}){if(!t()||a())return;let o=[...e.entries()],s=0,c=Math.min(Math.max(1,i),o.length),l=async()=>{for(;s<o.length&&t()&&!a();){let e=o[s];if(s+=1,!e)return;let[t,i]=e,c=await n(t);c===null||a()||r(t,c,i)}};await Promise.all(Array.from({length:c},()=>l()))}var Fg=`openchamber:tray-action`,Ig=3e4,Lg=120,Rg=20,zg=()=>{if(typeof window>`u`)return!1;let e=window.__OPENCHAMBER_PLATFORM__;return e===`darwin`||e===`win32`},Bg=e=>{let t=typeof e.permission==`string`?e.permission:`Permission`,n=Array.isArray(e.patterns)?e.patterns.find(e=>typeof e==`string`&&e.trim()):``;return n?`${t}: ${n}`:t},Vg=e=>{let t=Array.isArray(e.questions)?e.questions[0]:void 0;return t?.header||t?.question||`Question`},Hg=e=>ze(e),Ug=e=>{let t=e.replace(/\\/g,`/`).replace(/\/+$/,``),n=t.lastIndexOf(`/`);return n>=0?t.slice(n+1):t},Wg=(e,t,n,r)=>{if(!e)return``;let i=it(t,n,e),a=Ug(i?i.path:e),o=J(e),s=o&&r.get(o)||``;if(!s){for(let[e,t]of ta.getState().directories)if(J(e)===o){s=t.status?.current??``;break}}if(!s)for(let e of n.values()){let t=e.find(e=>J(e.path)===o);if(t?.branch){s=t.branch;break}}return s?`${a} · ${s}`:a},Gg=()=>{let{results:e,dropdownProviderIds:t,displayMode:n}=Qa.getState(),r=n===`remaining`?`remaining`:`usage`;if(!t.length)return{mode:r,groups:[]};let i=new Map(e.map(e=>[e.providerId,e])),a=[];for(let e of Ha){if(!t.includes(e.id))continue;let n=i.get(e.id);if(!n||n.configured!==!0)continue;let o=[];for(let[e,t]of Object.entries(n.usage?.windows??{})){let n=r===`remaining`?t.remainingPercent:t.usedPercent;o.push({label:oi(e),value:ri(t.valueLabel,n)})}let s=!n.ok&&n.error?n.error:o.length===0?`No rate limits reported`:null;a.push({provider:e.name,rows:o,status:s})}return{mode:r,groups:a}},Kg=async()=>{try{if(E())return`Local OpenChamber`;let e=window.__OPENCHAMBER_LOCAL_ORIGIN__||window.location.origin,t=r();if(t&&W(t,e))return`Local OpenChamber`;let n=(await K()).hosts.find(e=>t?W(t,G(e)):!1);return n?.label?.trim()?ee(n.label.trim()):`Instance`}catch{return``}},qg=()=>{let e=new Map,t=new Map,n=[],r=new Map,i;try{i=At()}catch{return{statusById:e,branchByDirectory:t,approvals:n,titleById:r}}for(let[a,o]of i.children.entries()){let i=o.getState();i.vcs?.branch&&t.set(J(a)??a,i.vcs.branch);for(let e of i.session)e?.id&&r.set(e.id,e.title);for(let[t,n]of Object.entries(i.session_status??{})){let r=n?.type,i=r===`busy`?`busy`:r===`retry`?`retry`:`idle`,a=e.get(t);(!a||a===`idle`)&&e.set(t,i)}for(let[e,t]of Object.entries(i.permission??{}))for(let r of t??[]){if(!r?.id)continue;let t=r.sessionID||e;n.push({kind:`permission`,id:r.id,sessionId:t,sessionTitle:``,label:Bg(r),directory:a})}for(let[e,t]of Object.entries(i.question??{}))for(let r of t??[]){if(!r?.id)continue;let t=r.sessionID||e;n.push({kind:`question`,id:r.id,sessionId:t,sessionTitle:``,label:Vg(r),directory:a})}}return{statusById:e,branchByDirectory:t,approvals:n,titleById:r}},Jg=()=>{let e=Tt.getState().activeSessions,t=new Set;e.filter(e=>e?.id&&!e.parentID).slice().sort((e,t)=>Hg(t)-Hg(e)).slice(0,Rg).forEach(e=>{let n=Rt(e);n&&t.add(n)});let n=new Map;for(let r of e){if(!r?.id)continue;let e=Rt(r);if(!e||!t.has(e))continue;let i=n.get(e)??[];i.push(r.id),n.set(e,i)}return n},Yg=e=>{let t=qg(),n=Mt.getState().index.session,r=Tt.getState().activeSessions,i=new Map(t.titleById),a=new Map;for(let e of r)if(e?.id&&(e.title&&i.set(e.id,e.title),e.parentID)){let t=a.get(e.parentID)??[];t.push(e.id),a.set(e.parentID,t)}let o=e=>{let t=[],n=[...a.get(e)??[]],r=new Set;for(;n.length;){let e=n.pop();r.has(e)||(r.add(e),t.push(e),n.push(...a.get(e)??[]))}return t},s=an.getState().statusById,c=e=>{let n=t.statusById.get(e);return n&&n!==`idle`?n:s.get(e)?.status??n??`idle`},l=e=>{let t=e.map(e=>c(e));return t.includes(`busy`)?`busy`:t.includes(`retry`)?`retry`:`idle`},d=vt.getState().projects,f=Ft.getState().availableWorktreesByProject,p=r.filter(e=>e?.id&&!e.parentID).slice().sort((e,t)=>Hg(t)-Hg(e)).slice(0,Rg).map(e=>{let r=[e.id,...o(e.id)],i=Rt(e)??``;return{id:e.id,title:e.title||`Untitled session`,status:l(r),branch:i?t.branchByDirectory.get(i)??``:``,unseen:n.unseenCount[e.id]??0,hasError:n.unseenHasError[e.id]??!1,directory:i,subtitle:Wg(i,d,f,t.branchByDirectory)}}),m=t.approvals.map(e=>({...e,sessionTitle:i.get(e.sessionId)||``})),h=u.getState(),g=0;if(h.dockBadgeEnabled)for(let e of r)!e?.id||e.parentID||(n.unseenCount[e.id]??0)>0&&(g+=1);return{sessions:p,approvals:m,instanceName:e,usage:Gg(),dockBadgeCount:g}},Xg=()=>{Q.useEffect(()=>{if(!zg()||!b())return;let e=!1,t=``,n=null,r=``,i=()=>{if(e)return;let n=Yg(r),i=JSON.stringify(n);i!==t&&(t=i,L(`desktop_tray_update`,n))};Kg().then(t=>{e||(r=t,i())});let a=null,o=``,s=()=>{let e=Zt.getState();return e.isConnected&&e.connectionPhase===`connected`},c=()=>{if(a)return a;let t=Jg();return o=Ng(t),a=Pg({targets:t,isReady:s,concurrency:2,isDisposed:()=>e,fetchStatus:e=>xe.getSessionStatusForDirectory(e).catch(()=>null),applySnapshot:(e,t,n)=>{_t(e,t,[...n])}}).finally(()=>{a=null;let t=Jg();!e&&s()&&Ng(t)!==o&&c()}),a},l=()=>{e||n!==null||(n=window.setTimeout(()=>{n=null,i()},Lg))},d=new Map,f=()=>{if(e)return;let t;try{t=At()}catch{return}let n=new Set;for(let[e,r]of t.children.entries())n.add(e),d.has(e)||d.set(e,r.subscribe(()=>l()));for(let[e,t]of d)n.has(e)||(t(),d.delete(e))},p=null;try{p=At().subscribeRegistry(()=>{f(),l()})}catch{}f();let m=Mt.subscribe(()=>l()),h=Tt.subscribe(()=>{l(),s()&&Ng(Jg())!==o&&c()}),g=vt.subscribe(()=>l()),_=Ft.subscribe(()=>l()),v=ta.subscribe(()=>l()),y=u.subscribe(()=>l()),x=an.subscribe(()=>l()),S=s(),C=Zt.subscribe(()=>{let e=s();e&&!S&&c(),S=e});S&&c();let w=Qa.subscribe(()=>l());Qa.getState().loadSettings().then(()=>{if(e)return;let{dropdownProviderIds:t,results:n}=Qa.getState();t.length>0&&t.some(e=>!n.some(t=>t.providerId===e))&&Qa.getState().fetchAllQuotas()});let T=window.setInterval(()=>{let e=Qa.getState();e.autoRefresh&&e.dropdownProviderIds.length>0&&e.fetchAllQuotas()},Math.max(3e4,Qa.getState().refreshIntervalMs||6e4)),E=window.setInterval(()=>{f(),i()},Ig);return i(),()=>{e=!0,n!==null&&window.clearTimeout(n),window.clearInterval(E),window.clearInterval(T),m(),h(),g(),_(),v(),y(),x(),C(),w(),p?.();for(let e of d.values())e();d.clear()}},[]),Q.useEffect(()=>{if(!zg()||typeof window>`u`)return;let e=window.__OPENCHAMBER_DESKTOP__?.listen;if(typeof e!=`function`)return;let t=e=>{e.type===`respond-permission`&&st(e.sessionId,e.id,e.response).catch(()=>{Y.error(`Failed to respond to permission request`)})},n=null;return e(Fg,e=>{let n=e?.payload;!n||typeof n!=`object`||typeof n.type!=`string`||t(n)}).then(e=>{n=e}).catch(()=>{}),()=>{try{let e=n?.();e instanceof Promise&&e.catch(()=>{})}catch{}}},[])},Zg=`/api/notifications/stream`,Qg=()=>typeof document>`u`||document.visibilityState===`visible`&&document.hasFocus(),$g=e=>{if(!e||typeof e!=`object`)return null;let t=e,n=t.properties&&typeof t.properties==`object`?t.properties:null;return t.type!==`openchamber:notification`||!n?null:{title:typeof n.title==`string`?n.title:void 0,body:typeof n.body==`string`?n.body:void 0,tag:typeof n.tag==`string`?n.tag:void 0}},e_=e=>{let t=(0,Ts.c)(3),n=e?.enabled??!0,r,i;t[0]===n?(r=t[1],i=t[2]):(r=()=>{if(!n||T()||!k()||typeof window>`u`||typeof EventSource>`u`)return;let e=new EventSource(a().sse(Zg));return e.onmessage=t_,()=>{e.close()}},i=[n],t[0]=n,t[1]=r,t[2]=i),Q.useEffect(r,i)};function t_(e){let t;try{t=JSON.parse(e.data)}catch{return}let n=u.getState();if(!n.nativeNotificationsEnabled||n.notificationMode!==`always`&&Qg())return;let r=$g(t);r&&U()?.notifications?.notifyAgentCompletion(r)}var n_=`pwa-install-toast-shown`,r_=`pwa-install-toast-dismissed`,i_=()=>{let e=(0,Ts.c)(6),{browserTab:t}=Ka(),{t:n}=Fe(),r=Q.useRef(n),i,a;e[0]===n?(i=e[1],a=e[2]):(i=()=>{r.current=n},a=[n],e[0]=n,e[1]=i,e[2]=a),Q.useEffect(i,a);let o,c;e[3]===t?(o=e[4],c=e[5]):(o=()=>{if(typeof window>`u`||!k()||!t)return;let e=null,n=null,i=()=>{n!==null&&(Y.dismiss(n),n=null)},a=async()=>{if(!e)return;let t=e;e=null,i(),await t.prompt();let{outcome:n}=await t.userChoice;n===`accepted`&&Y.success(r.current(`pwa.installPrompt.started`))},o=t=>{let o=t;if(typeof o.prompt!=`function`)return;o.preventDefault(),e=o;let c=s(),l=d();Io({dismissed:c.getItem(r_),sessionShown:l.getItem(n_),hasActiveToast:n!==null})&&(l.setItem(n_,`true`),n=Y.info(r.current(`pwa.installPrompt.description`),{duration:1/0,action:{label:r.current(`pwa.installPrompt.action`),onClick:()=>{a()}},cancel:{label:r.current(`pwa.installPrompt.dismiss`),onClick:()=>{s().setItem(r_,`true`),i()}}}))},c=()=>{e=null,i(),Y.success(r.current(`pwa.installPrompt.installed`))};return window.addEventListener(`beforeinstallprompt`,o),window.addEventListener(`appinstalled`,c),()=>{i(),window.removeEventListener(`beforeinstallprompt`,o),window.removeEventListener(`appinstalled`,c)}},c=[t],e[3]=t,e[4]=o,e[5]=c),Q.useEffect(o,c)},a_=()=>typeof window>`u`?``:window.__OPENCHAMBER_LOCAL_ORIGIN__||window.location.origin,o_=()=>!D()||o()===`local`,s_=e=>({id:`local`,label:`Local`,url:e}),c_=async()=>{if(!D()||o_())return{ok:!0};let e=a_(),t=await te().catch(()=>``),n=await ei({host:s_(e),localApiOrigin:e,localClientToken:t});return n.ok?{ok:!0}:{ok:!1,reason:n.reason}},l_=100,u_=1e4,d_=null,f_=()=>{d_&&=(d_.unsubscribe?.(),d_.openTimer!==null&&clearTimeout(d_.openTimer),d_.timeoutTimer!==null&&clearTimeout(d_.timeoutTimer),null)};function p_(){f_()}var m_=(e,t)=>{u.getState().setActiveMainTab(`chat`),Ft.getState().setCurrentSession(e,t)};function h_(e){let n=typeof e?.sessionId==`string`?e.sessionId.trim():``;if(!n)return;let r=typeof e?.directory==`string`&&e.directory.trim().length>0?e.directory.trim():null;if(o_()){m_(n,r);return}f_(),c_().then(e=>{if(!e.ok){tn(n,`missing-directory`);return}if(o()===`local`){m_(n,r);return}let i=!1,a=()=>{i||(i=!0,f_(),m_(n,r))},s=t(e=>{if(e.runtimeKey!==`local`)return;s(),d_&&(d_.unsubscribe=null);let t=setTimeout(()=>{d_&&(d_.openTimer=null),a()},l_);d_&&(d_.openTimer=t)});d_={unsubscribe:s,openTimer:null,timeoutTimer:setTimeout(()=>{i||(f_(),tn(n,`missing-directory`))},u_)}})}var g_=({open:e,onOpenChange:t})=>{let{t:n}=Fe(),[r,i]=Q.useState(null),[a,o]=Q.useState(null),[s,c]=Q.useState(!1),[l,u]=Q.useState(!1),[d,f]=Q.useState(null),[p,m]=Q.useState(!1),[h,g]=Q.useState(!1),[_,v]=Q.useState(()=>jt()),y=Ae(e=>{It(e),v(e)}),b=Ae(async()=>{if(!h){g(!0);try{let{outcome:e,eventCount:t}=await Jt();if(e===`cancelled`)return;if(e===`failed`){Y.error(n(`settings.openchamber.about.diagnostics.toast.failed`));return}Y.success(n(t>0?`settings.openchamber.about.diagnostics.toast.exported`:`settings.openchamber.about.diagnostics.toast.empty`))}catch{Y.error(n(`settings.openchamber.about.diagnostics.toast.failed`))}finally{g(!1)}}});Q.useCallback(async()=>{},[d,s,!1,n]),Q.useEffect(()=>{e&&(async()=>{try{let e=await N(`/api/system/info`);if(e.ok){let t=await e.json();if(typeof t.openchamberVersion==`string`&&t.openchamberVersion.trim()){i(t.openchamberVersion);return}}}catch{}i(await Ne())})()},[e]),Q.useEffect(()=>{if(!e)return;let t=!1;return(async()=>{try{let e=await N(`/api/opencode/upgrade-status`,{headers:{Accept:`application/json`}});if(!e.ok)return;let n=await e.json().catch(()=>null),r=typeof n?.currentVersion==`string`?n.currentVersion.trim():``;!t&&r&&o(r)}catch{}})(),()=>{t=!0}},[e]),Q.useEffect(()=>{f(null),m(!1)},[e,!1]);let x=r;return(0,$.jsx)(mn,{open:e,onOpenChange:t,children:(0,$.jsx)(dn,{className:`max-w-xs p-6`,children:(0,$.jsxs)(`div`,{className:`flex flex-col items-center text-center space-y-4`,children:[(0,$.jsx)(hi,{width:64,height:64}),(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`h2`,{className:`text-lg font-semibold`,children:`OpenChamber`}),(0,$.jsxs)(`div`,{className:`space-y-0.5 typography-meta text-muted-foreground`,children:[x&&(0,$.jsx)(`p`,{children:n(`aboutDialog.openChamberVersionLabel`,{version:x})}),a&&(0,$.jsx)(`p`,{children:n(`aboutDialog.openCodeVersionLabel`,{version:a})})]})]}),(0,$.jsxs)(`div`,{className:`flex w-full flex-col items-stretch gap-3 pt-2`,children:[(0,$.jsx)(Ba,{itemId:`about.diagnostics`,checked:_,onChange:y,label:n(`settings.openchamber.about.diagnostics.label`),ariaLabel:n(`settings.openchamber.about.diagnostics.label`)}),_&&(0,$.jsx)(Sn,{type:`button`,variant:`outline`,size:`sm`,disabled:h,onClick:()=>void b(),children:n(h?`settings.openchamber.about.diagnostics.exporting`:`settings.openchamber.about.diagnostics.export`)})]}),!1,(0,$.jsxs)(`div`,{className:`flex flex-col items-center gap-2 pt-2`,children:[(0,$.jsxs)(`div`,{className:`flex items-center justify-center gap-4`,children:[(0,$.jsxs)(`a`,{href:`https://github.com/yee94/openchamber`,target:`_blank`,rel:`noopener noreferrer`,className:`flex items-center gap-1.5 typography-meta text-muted-foreground hover:text-foreground transition-colors`,children:[(0,$.jsx)(Z,{name:`github-fill`,className:`h-4 w-4`}),(0,$.jsx)(`span`,{children:`GitHub`})]}),(0,$.jsxs)(`a`,{href:`https://discord.gg/ZYRSdnwwKA`,target:`_blank`,rel:`noopener noreferrer`,className:`flex items-center gap-1.5 typography-meta text-muted-foreground hover:text-foreground transition-colors`,children:[(0,$.jsx)(Z,{name:`discord-fill`,className:`h-4 w-4`}),(0,$.jsx)(`span`,{children:`Discord`})]})]}),(0,$.jsxs)(`a`,{href:`https://x.com/openchamber_dev`,target:`_blank`,rel:`noopener noreferrer`,className:`flex items-center gap-1.5 typography-meta text-muted-foreground hover:text-foreground transition-colors`,children:[(0,$.jsx)(Z,{name:`twitter-xfill`,className:`h-4 w-4`}),(0,$.jsx)(`span`,{children:`@openchamber_dev`})]})]}),(0,$.jsx)(`p`,{className:`typography-meta text-muted-foreground/60 pt-2`,children:n(`aboutDialog.footerNote`)})]})})})},__=(e,t)=>{let n=e.get(t);return typeof n==`string`&&n.trim()||null},v_=(e,t)=>{let n=e instanceof Error?e.message:t;return/oauth state required/i.test(n)?`Authorization session expired or was cleared during reload. Return to OpenChamber and click Authorize again.`:n},y_=()=>{let e=Na(e=>e.completeAuth),[t,n]=Q.useState(`working`),[r,i]=Q.useState(`Completing MCP authorization...`);return Q.useEffect(()=>{if(typeof window>`u`){n(`error`),i(`Browser context unavailable.`);return}let t=new URLSearchParams(window.location.search),r=__(t,`code`),a=za(t),o=Ja(t),s=__(t,`error`),c=__(t,`error_description`);if(s){o&&N(`/api/mcp/auth/pending?state=${encodeURIComponent(o)}`,{method:`DELETE`}).catch(()=>void 0),n(`error`),i(c??s);return}(async()=>{try{if(!r)throw Error(`Missing OAuth authorization code. Start authorization again from MCP Settings or paste the returned code into OpenChamber manually.`);let t=a;if(!t&&o){let e=await N(`/api/mcp/auth/pending?state=${encodeURIComponent(o)}`);if(e.ok){let n=await e.json().catch(()=>null);n?.name?.trim()&&(t={name:n.name.trim(),directory:typeof n.directory==`string`&&n.directory.trim()?n.directory.trim():null})}}if(!t?.name)throw Error(`Authorization session details were not available. Start authorization again from MCP Settings or paste the returned code into OpenChamber manually.`);await e(t.name,r,t.directory),o&&await N(`/api/mcp/auth/pending?state=${encodeURIComponent(o)}`,{method:`DELETE`}).catch(()=>void 0),n(`success`),i(`Authorization completed. You can close this tab and return to OpenChamber.`)}catch(e){o&&await N(`/api/mcp/auth/pending?state=${encodeURIComponent(o)}`,{method:`DELETE`}).catch(()=>void 0),n(`error`),i(v_(e,`Failed to complete MCP authorization.`))}})()},[e]),(0,$.jsx)(`div`,{className:`flex min-h-screen items-center justify-center bg-background px-6 py-12 text-foreground`,children:(0,$.jsxs)(`div`,{className:`w-full max-w-xl rounded-xl border border-[var(--interactive-border)] bg-[var(--surface-elevated)] p-8 shadow-sm dark:shadow-none`,children:[(0,$.jsxs)(`div`,{className:`space-y-3 text-center`,children:[(0,$.jsx)(`div`,{className:t===`error`?`text-[var(--status-error)]`:t===`success`?`text-[var(--status-success)]`:`text-[var(--status-info)]`,children:(0,$.jsx)(`h1`,{className:`typography-hero font-semibold`,children:t===`working`?`Completing Authorization`:t===`success`?`Authorization Complete`:`Authorization Failed`})}),(0,$.jsx)(`p`,{className:`typography-body text-muted-foreground`,children:r})]}),t!==`working`&&(0,$.jsx)(`div`,{className:`mt-8 flex justify-center`,children:(0,$.jsx)(Sn,{type:`button`,onClick:()=>{typeof window>`u`||window.location.replace(`/`)},children:`Return to OpenChamber`})})]})})},b_=()=>{let e=(0,Ts.c)(16),t=Tt(x_),n=Tt(S_),r=Tt(C_),i=Tt(w_),{t:a}=Fe(),o;e[0]!==r||e[1]!==i?(o=i>0?Math.round(r/i*100):0,e[0]=r,e[1]=i,e[2]=o):o=e[2];let s=o,c;e[3]!==r||e[4]!==n||e[5]!==a||e[6]!==i?(c=n===`restoring`?a(`common.loading`):a(`sessions.startupSync.progress`,{completed:r,total:i}),e[3]=r,e[4]=n,e[5]=a,e[6]=i,e[7]=c):c=e[7];let l=c,u,d;return e[8]!==t||e[9]!==r||e[10]!==s||e[11]!==l||e[12]!==a||e[13]!==i?(u=()=>{let e=document.getElementById(`startup-session-progress`),n=document.getElementById(`startup-session-progress-track`),o=document.getElementById(`startup-session-progress-fill`),c=document.getElementById(`startup-session-progress-text`);!e||!n||!o||!c||(e.hidden=!t,t&&(o.style.width=`${s}%`,n.setAttribute(`aria-label`,a(`sessions.startupSync.title`)),n.setAttribute(`aria-valuemax`,String(Math.max(i,1))),n.setAttribute(`aria-valuenow`,String(r)),n.setAttribute(`aria-valuetext`,l),c.textContent=l))},d=[t,r,s,l,a,i],e[8]=t,e[9]=r,e[10]=s,e[11]=l,e[12]=a,e[13]=i,e[14]=u,e[15]=d):(u=e[14],d=e[15]),Q.useLayoutEffect(u,d),null};function x_(e){return e.startupSyncProgress.active}function S_(e){return e.startupSyncProgress.phase}function C_(e){return e.startupSyncProgress.completed}function w_(e){return e.startupSyncProgress.total}var T_=(e,t,n,r=350)=>n?Math.max(0,r-Math.max(0,t-e)):null;function E_(e){let t=(0,Ts.c)(21),{transition:n,ready:r}=e,{t:i}=Fe(),a=ti(),[o,s]=Q.useState(0),c=n.epoch>o,l=a||c,u,d;if(t[0]!==c||t[1]!==a||t[2]!==r||t[3]!==n.epoch||t[4]!==n.startedAt?(u=()=>{if(!c||a)return;let e=T_(n.startedAt,Date.now(),r);if(e===null)return;let t=window.setTimeout(()=>{s(e=>Math.max(e,n.epoch))},e);return()=>window.clearTimeout(t)},d=[c,a,r,n.epoch,n.startedAt],t[0]=c,t[1]=a,t[2]=r,t[3]=n.epoch,t[4]=n.startedAt,t[5]=u,t[6]=d):(u=t[5],d=t[6]),Q.useEffect(u,d),!l)return null;let f;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,$.jsxs)(`div`,{className:`pointer-events-none absolute inset-0 opacity-70`,"aria-hidden":`true`,children:[(0,$.jsx)(`div`,{className:`absolute left-1/2 top-1/2 size-[28rem] -translate-x-1/2 -translate-y-1/2 rounded-full border border-[var(--interactive-border)]/40`}),(0,$.jsx)(`div`,{className:`absolute left-1/2 top-1/2 size-72 -translate-x-1/2 -translate-y-1/2 rounded-full bg-[var(--interactive-selection)]/10 blur-3xl`})]}),t[7]=f):f=t[7];let p;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(p=(0,$.jsx)(`div`,{className:`mb-7 flex size-28 items-center justify-center rounded-[2rem] border border-[var(--interactive-border)]/60 bg-[var(--surface-elevated)]/75 shadow-2xl shadow-background/40`,children:(0,$.jsx)(hi,{width:76,height:76,isAnimated:!0})}),t[8]=p):p=t[8];let m;t[9]===i?m=t[10]:(m=i(`desktopHostSwitcher.transition.title`),t[9]=i,t[10]=m);let h;t[11]===m?h=t[12]:(h=(0,$.jsx)(`h1`,{className:`typography-title text-foreground`,children:m}),t[11]=m,t[12]=h);let g;t[13]===i?g=t[14]:(g=i(`desktopHostSwitcher.transition.description`),t[13]=i,t[14]=g);let _;t[15]===g?_=t[16]:(_=(0,$.jsx)(`p`,{className:`mt-2 typography-body text-muted-foreground`,children:g}),t[15]=g,t[16]=_);let v;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(v=(0,$.jsx)(`div`,{className:`mt-7 h-1 w-28 overflow-hidden rounded-full bg-[var(--surface-muted)]`,"aria-hidden":`true`,children:(0,$.jsx)(`div`,{className:`h-full w-1/2 animate-pulse rounded-full bg-[var(--status-info)] motion-reduce:animate-none`})}),t[17]=v):v=t[17];let y;return t[18]!==h||t[19]!==_?(y=(0,$.jsxs)(`div`,{className:`fixed inset-0 z-[9998] flex items-center justify-center overflow-hidden bg-background/95 px-6 backdrop-blur-xl`,role:`status`,"aria-live":`polite`,"aria-atomic":`true`,children:[f,(0,$.jsxs)(`div`,{className:`relative flex max-w-md animate-in flex-col items-center text-center fade-in zoom-in-95 duration-300 motion-reduce:animate-none`,children:[p,h,_,v]})]}),t[18]=h,t[19]=_,t[20]=y):y=t[20],y}var D_=la(()=>Te(()=>import(`./OnboardingScreen-BkbprNa7.js`).then(e=>({default:e.OnboardingScreen})),__vite__mapDeps([104,1,5,2,3,4,6,7,8,44,14,15,12,24,25,26,27,28,53]))),O_=36e5,k_=12e5,A_=()=>{let e=(0,Ts.c)(3),t=u(L_),n=u(R_),r;return e[0]!==t||e[1]!==n?(r=(0,$.jsx)(g_,{open:t,onOpenChange:n}),e[0]=t,e[1]=n,e[2]=r):r=e[2],r},j_=e=>{let t=(0,Ts.c)(21),{onRetry:n,isRetrying:r}=e,{t:i}=Fe(),a;t[0]===i?a=t[1]:(a=i(`startup.initRecovery.title`),t[0]=i,t[1]=a);let o;t[2]===a?o=t[3]:(o=(0,$.jsx)(`h1`,{className:`typography-title text-foreground`,children:a}),t[2]=a,t[3]=o);let s;t[4]===i?s=t[5]:(s=i(`startup.initRecovery.description`),t[4]=i,t[5]=s);let c;t[6]===s?c=t[7]:(c=(0,$.jsx)(`p`,{className:`typography-body text-muted-foreground`,children:s}),t[6]=s,t[7]=c);let l;t[8]!==o||t[9]!==c?(l=(0,$.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[o,c]}),t[8]=o,t[9]=c,t[10]=l):l=t[10];let u;t[11]!==r||t[12]!==i?(u=i(r?`startup.initRecovery.retrying`:`startup.initRecovery.retry`),t[11]=r,t[12]=i,t[13]=u):u=t[13];let d;t[14]!==r||t[15]!==n||t[16]!==u?(d=(0,$.jsx)(Sn,{type:`button`,onClick:n,disabled:r,children:u}),t[14]=r,t[15]=n,t[16]=u,t[17]=d):d=t[17];let f;return t[18]!==l||t[19]!==d?(f=(0,$.jsx)(`div`,{className:`flex h-full items-center justify-center bg-background px-6 text-foreground`,children:(0,$.jsxs)(`div`,{className:`flex max-w-md flex-col items-center gap-4 text-center`,children:[l,d]})}),t[18]=l,t[19]=d,t[20]=f):f=t[20],f},M_=e=>e?e.replace(/\\/g,`/`).replace(/\/+$/g,``):``,N_=()=>{if(typeof window>`u`||!Ki())return null;let e=new URLSearchParams(window.location.search),t=e.get(`sessionId`),n=typeof t==`string`?t.trim():``;if(!n)return null;let r=e.get(`directory`);return{sessionId:n,directory:typeof r==`string`&&r.trim().length>0?r.trim():null,readOnly:e.get(`readOnly`)===`1`||e.get(`readOnly`)===`true`}},P_=()=>typeof window>`u`?!1:window.location.pathname===Fa,F_=e=>{let t=(0,Ts.c)(22),{embeddedSessionChat:n,isVSCodeRuntime:r,embeddedBackgroundWorkEnabled:i}=e,a=ge(z_),o=Ft(B_),s=Ft(V_),c=Vi(),l=Q.useRef(null),u;t[0]===n.directory?u=t[1]:(u=M_(n.directory),t[0]=n.directory,t[1]=u);let d=u,f;t[2]===a?f=t[3]:(f=M_(a),t[2]=a,t[3]=f);let p=f,m,h;if(t[4]!==p||t[5]!==o||t[6]!==n.directory||t[7]!==n.sessionId||t[8]!==d||t[9]!==r||t[10]!==s||t[11]!==c?(m=()=>{if(r||d&&p!==d)return;let e=`${d}\n${n.sessionId}`;l.current===e&&o||(l.current=e,s(n.sessionId,n.directory),c.ensureSessionRenderable(n.sessionId,!0))},h=[p,o,n.directory,n.sessionId,d,r,s,c],t[4]=p,t[5]=o,t[6]=n.directory,t[7]=n.sessionId,t[8]=d,t[9]=r,t[10]=s,t[11]=c,t[12]=m,t[13]=h):(m=t[12],h=t[13]),Q.useEffect(m,h),d&&p!==d)return null;let g;t[14]===i?g=t[15]:(g=(0,$.jsx)(vr,{embeddedBackgroundWorkEnabled:i}),t[14]=i,t[15]=g);let _;t[16]===n.readOnly?_=t[17]:(_=(0,$.jsx)(Oo,{readOnly:n.readOnly}),t[16]=n.readOnly,t[17]=_);let v;t[18]===Symbol.for(`react.memo_cache_sentinel`)?(v=(0,$.jsx)(ir,{}),t[18]=v):v=t[18];let y;return t[19]!==g||t[20]!==_?(y=(0,$.jsxs)($.Fragment,{children:[g,_,v]}),t[19]=g,t[20]=_,t[21]=y):y=t[21],y};function I_({apis:e}){Q.useEffect(()=>{Se(`App:mounted`),ye()},[]),Q.useEffect(()=>yt(),[]);let n=Zt(e=>e.initializeApp),r=Zt(e=>e.isInitialized),a=Zt(e=>e.isConnected),s=Ft(e=>e.error),c=Ft(e=>e.clearError),d=Ft(e=>e.currentSessionId),f=Ft(e=>!!e.newSessionDraft?.open),p=ge(e=>e.currentDirectory),m=ge(e=>e.setDirectory),h=ge(e=>e.isSwitchingDirectory),[_,b]=Q.useState(!1),x=Xa(e=>e.refreshStatus),[D,O]=Q.useState(()=>e.runtime.isVSCode),[k,A]=Q.useState(!1),[j,M]=Q.useState(!1),[N,P]=Q.useState(0),[F,I]=Q.useState(0),[R,z]=Q.useState({epoch:0,startedAt:0}),[V,U]=Q.useState(!1),W=Q.useRef(!1),ee=u(e=>e.wideChatLayoutEnabled),G=u(e=>e.mobileKeyboardMode),te=Q.useMemo(()=>T(),[]),K=Tt(e=>e.hasCachedSessionIndex),ne=Tt(e=>e.hasHydratedSessionIndex),[re,ie]=Q.useState(()=>H()),[ae,oe]=Q.useState(()=>{let e=w();return e===null?null:y({isDesktopShell:!0,bootOutcome:e})}),se=Q.useRef(!1),q=Q.useMemo(()=>N_(),[]),ce=!q||k,le=Q.useMemo(()=>P_(),[]);Q.useEffect(()=>(_e(_),()=>{_e(!1)}),[_]),Q.useEffect(()=>{l(G)},[G]),Q.useEffect(()=>{O(e.runtime.isVSCode)},[e.runtime.isVSCode]),Q.useEffect(()=>{let e=lr(e=>{i(e)&&(te&&z(e=>({epoch:e.epoch+1,startedAt:Date.now()})),Yo(e),I(e=>e+1),M(!1),P(e=>e+1))}),n=t(t=>e.schedule(t));return()=>{n(),e.cancel()}},[te]);let ue=Xe(e=>{let t=o();return Object.values(e.runsByOriginalSessionID).filter(e=>e.status===`running`&&e.runtimeKey===t).map(e=>`${e.originalSessionID}:${e.phase}:${e.lastForwardedMessageID??``}:${e.expectedAssistantParentID??``}`).sort().join(`|`)});Q.useEffect(()=>{if(q)return;let e=!1;return et().then(()=>{if(e)return;let t=o(),n=Object.values(Xe.getState().runsByOriginalSessionID).filter(e=>e.status===`running`&&e.runtimeKey===t);for(let e of n)Ke(e.originalSessionID)}),()=>{e=!0}},[ue,q,F]),Q.useEffect(()=>(document.documentElement.classList.toggle(`wide-chat-layout`,ee),()=>{document.documentElement.classList.remove(`wide-chat-layout`)}),[ee]),Q.useEffect(()=>(C(e),()=>C(null)),[e]),Q.useEffect(()=>{if(q)return;let t=!1;return et().then(()=>{t||x(e.github,{force:!0})}),()=>{t=!0}},[e.github,q,x]),Er();let de=re===`valid`,fe=ae?.screen===`main`;Q.useEffect(()=>{if(!ce||!g({isDesktopShell:te,isInitialized:te&&fe?K||r&&ne:r,bootOutcomeKnown:de,bootViewIsMain:fe}))return;let e,t=setTimeout(()=>{let t=document.getElementById(`initial-loading`);t&&(t.classList.add(`fade-out`),e=setTimeout(()=>{t.remove()},300))},150);return()=>{clearTimeout(t),e&&clearTimeout(e)}},[ce,te,r,de,fe,K,ne]),Q.useEffect(()=>{if(!te||re!==`malformed`)return;let e=document.getElementById(`initial-loading`);e&&(e.textContent=`Desktop startup failed — please restart the app.`)},[te,re]),Q.useEffect(()=>{if(!ce||te)return;let e,t=setTimeout(()=>{let t=document.getElementById(`initial-loading`);t&&!r&&(t.classList.add(`fade-out`),e=setTimeout(()=>{t.remove()},300))},5e3);return()=>{clearTimeout(t),e&&clearTimeout(e)}},[ce,te,r]),Q.useEffect(()=>{if(!ce||D)return;let e=!1;return et().then(()=>{if(!e)return n()}),()=>{e=!0}},[ce,n,D]),Q.useEffect(()=>{if(!ce||D||r)return;let e=!0,t,n=0,i=1e3,a=async()=>{if(!e)return;if(n>=10){M(!0);return}let r=Zt.getState();if(r.isInitialized){M(!1);return}if(n+=1,await et(),!e)return;await r.initializeApp();let o=Zt.getState();if(!e)return;if(o.isInitialized){M(!1);return}if(n>=10){M(!0);return}let s=Math.min(i*2**(n-1),16e3);t=setTimeout(a,s)};return t=setTimeout(a,i),()=>{e=!1,t&&clearTimeout(t)}},[ce,N,r,D]),Q.useEffect(()=>{ce&&r&&M(!1)},[ce,r]),Q.useEffect(()=>{if(!ce||!j)return;let e=document.getElementById(`initial-loading`);if(e){e.classList.add(`fade-out`);let t=setTimeout(()=>{e.remove()},300);return()=>clearTimeout(t)}},[ce,j]),Un({enabled:ce&&!D,source:`startupRecovery`}),Q.useEffect(()=>{h||D||a&&xe.setDirectory(p)},[p,h,a,D]),Q.useEffect(()=>{if(!q||typeof window>`u`)return;let e=e=>{let t=e?.visible===!0;A(t)},t=t=>{if(t.origin!==window.location.origin)return;let n=t.data;n?.type===`openchamber:embedded-visibility`&&e(n.payload)},n=window;return n.__openchamberSetEmbeddedVisibility=e,window.addEventListener(`message`,t),window.parent&&window.parent!==window&&window.parent.postMessage({type:qi},window.location.origin),()=>{window.removeEventListener(`message`,t),n.__openchamberSetEmbeddedVisibility===e&&delete n.__openchamberSetEmbeddedVisibility}},[q]),Q.useEffect(()=>{!q?.directory||D||p!==q.directory&&m(q.directory,{showOverlay:!1})},[p,q,D,m]),Q.useEffect(()=>{if(!q||typeof window>`u`)return;let e=e=>{e.storageArea===window.localStorage&&e.key===`ui-store`&&u.persist.rehydrate()};return window.addEventListener(`storage`,e),()=>{window.removeEventListener(`storage`,e)}},[q]),Q.useEffect(()=>{if(typeof window>`u`)return;let e=e=>{let t=e.detail;h_(t??{})};return window.addEventListener(`openchamber:open-session`,e),()=>{p_(),window.removeEventListener(`openchamber:open-session`,e)}},[]),Q.useEffect(()=>{if(typeof window>`u`)return;let e=()=>{let e=ge.getState().currentDirectory,{activeProjectId:t,projects:n}=vt.getState(),r=n.find(e=>e.id===t)??null;L(`desktop_open_draft_mini_chat_window`,{directory:e||r?.path||``,projectId:r?.id??null})};return window.addEventListener(`openchamber:open-mini-chat`,e),()=>window.removeEventListener(`openchamber:open-mini-chat`,e)},[]),Q.useEffect(()=>{if(typeof window>`u`)return;let e=()=>{let e=Ft.getState().currentSessionId;e&&Ve(e)};return window.addEventListener(`focus`,e),()=>window.removeEventListener(`focus`,e)},[]),Q.useEffect(()=>{if(typeof window>`u`)return;let e=e=>{let t=e.detail,n=typeof t?.directory==`string`&&t.directory.trim().length>0?t.directory.trim():null,r=typeof t?.projectId==`string`&&t.projectId.trim().length>0?t.projectId.trim():null,i=typeof t?.initialPrompt==`string`&&t.initialPrompt.trim().length>0?t.initialPrompt.trim():void 0;u.getState().setActiveMainTab(`chat`),u.getState().setSessionSwitcherOpen(!1),Ft.getState().openNewSessionDraft({selectedProjectId:r,directoryOverride:n,preserveDirectoryOverride:!!n,ensureProjectForDirectory:!!n,initialPrompt:i})};return window.addEventListener(`openchamber:open-draft-session`,e),()=>window.removeEventListener(`openchamber:open-draft-session`,e)},[]),Q.useEffect(()=>{if(typeof window>`u`)return;let e=e=>{let t=e.detail,n=typeof t?.projectPath==`string`?t.projectPath.trim():``;if(!n)return;let r=vt.getState(),i=r.projects.find(e=>e.path===n);i?r.setActiveProject(i.id):r.addProject(n)};return window.addEventListener(`openchamber:open-project`,e),()=>window.removeEventListener(`openchamber:open-project`,e)},[]),Q.useEffect(()=>{typeof window>`u`||!ce||!r||h||se.current||(se.current=!0,window.__openchamberAppReady=!0,window.dispatchEvent(new Event(`openchamber:app-ready`)))},[ce,r,h]),Wn({enabled:ce}),e_({enabled:ce}),i_(),ar(),ns(),jg(Ae(()=>{b(e=>!e)})),Q.useEffect(()=>{if(!r||!S()||W.current)return;W.current=!0;let e=!1,t=null,n=null;La.getState().subscribeDesktopUpdateEvents().then(t=>{if(e){t();return}n=t});let i=()=>{let e=La.getState();e.checking||e.checkForUpdates()},a=n=>{t=window.setTimeout(()=>{e||(document.visibilityState===`visible`&&i(),a(O_))},n)},o=()=>{if(e||document.visibilityState!==`visible`)return;let t=La.getState().lastChecked;t!=null&&Date.now()-t<k_||i()};return a(0),window.addEventListener(`focus`,o),()=>{e=!0,t!==null&&window.clearTimeout(t),window.removeEventListener(`focus`,o),n&&n()}},[r]),Xg(),Q.useEffect(()=>{if(q)return;let e=e=>{vn(e)&&e.shiftKey&&!e.altKey&&(e.code===`KeyD`||e.key.toLowerCase()===`d`)&&(e.preventDefault(),b(e=>!e))};return window.addEventListener(`keydown`,e,!0),()=>window.removeEventListener(`keydown`,e,!0)},[q]),Q.useEffect(()=>{q||s&&setTimeout(()=>c(),5e3)},[c,q,s]),Q.useEffect(()=>{if(!te||re!==`not-injected`)return;let e=!1,t=0,n=()=>{if(e)return;t++;let r=H();if(r!==`not-injected`){if(e=!0,ie(r),r===`valid`){let e=w();e&&oe(y({isDesktopShell:!0,bootOutcome:e}))}return}let i=Math.min(200*1.1**t,2e3);if(t>=50){let e=document.getElementById(`initial-loading`);e&&!e.textContent?.includes(`taking longer`)&&(e.textContent=`Desktop startup is taking longer than expected...`)}window.setTimeout(n,i)};return window.setTimeout(n,200),()=>{e=!0}},[te,re]);let pe=Ae(async()=>{if(v({isDesktopShell:T(),isDesktopLocalOriginActive:E()})){await B();return}window.location.reload()}),me=Ae(async()=>{if(!V){M(!1),U(!0);try{await et(),await Zt.getState().initializeApp()}finally{U(!1)}Zt.getState().isInitialized||P(e=>e+1)}}),he=e=>{if(e.screen===`recovery`)return e.variant};if(te&&ae&&ae.screen!==`main`){if(ae.screen===`chooser`)return(0,$.jsx)(xi,{children:(0,$.jsx)(`div`,{className:`h-full text-foreground bg-transparent`,children:(0,$.jsx)(Q.Suspense,{fallback:(0,$.jsx)(`div`,{className:`h-full`}),children:(0,$.jsx)(D_,{mode:`first-launch`,onCliAvailable:pe,onChooseRemote:()=>{}})})})});let e=he(ae),t=ae.screen===`recovery`&&`url`in ae?ae.url:void 0;return(0,$.jsx)(xi,{children:(0,$.jsx)(`div`,{className:`h-full text-foreground bg-transparent`,children:(0,$.jsx)(Q.Suspense,{fallback:(0,$.jsx)(`div`,{className:`h-full`}),children:(0,$.jsx)(D_,{mode:`recovery`,recoveryVariant:e,recoveryHostUrl:t,recoveryHostLabel:void 0,onCliAvailable:pe})})})})}if(q)return Nt(),(0,$.jsx)(xi,{children:(0,$.jsx)(rt,{sdk:xe.getSdkClient(),directory:p||``,bootstrapDirectory:!(f&&d===null),children:(0,$.jsx)(Mr,{apis:e,children:(0,$.jsx)(Qr,{delayDuration:300,skipDelayDuration:150,children:(0,$.jsx)(`div`,{className:`h-full text-foreground bg-background`,children:(0,$.jsx)(F_,{embeddedSessionChat:q,isVSCodeRuntime:D,embeddedBackgroundWorkEnabled:ce})})})})},F)});if(le)return(0,$.jsx)(xi,{children:(0,$.jsx)(y_,{})});if(j&&!r&&!D&&!q)return(0,$.jsx)(xi,{children:(0,$.jsx)(j_,{onRetry:()=>{me()},isRetrying:V})});let ve=!r&&!te;return(0,$.jsx)(xi,{children:(0,$.jsx)(rt,{sdk:xe.getSdkClient(),directory:p||``,bootstrapDirectory:!(f&&d===null),children:(0,$.jsx)(Mr,{apis:e,children:(0,$.jsx)(nl,{children:(0,$.jsx)(Qr,{delayDuration:300,skipDelayDuration:150,children:(0,$.jsxs)(`div`,{className:te?`h-full text-foreground bg-transparent`:`h-full text-foreground bg-background`,children:[(0,$.jsx)(vr,{embeddedBackgroundWorkEnabled:ce}),(0,$.jsx)(Lo,{}),(0,$.jsx)(Do,{}),(0,$.jsx)(cg,{}),te&&(0,$.jsx)(E_,{transition:R,ready:r&&a}),(0,$.jsx)(b_,{}),(0,$.jsx)(ir,{}),!ve&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Qo,{}),(0,$.jsx)(A_,{}),_&&(0,$.jsx)(fg,{onClose:()=>b(!1)})]})]})})})})},F)})}function L_(e){return e.isAboutDialogOpen}function R_(e){return e.setAboutDialogOpen}function z_(e){return e.currentDirectory}function B_(e){return e.currentSessionId}function V_(e){return e.setCurrentSession}if(typeof window<`u`&&!window.__OPENCHAMBER_REFRESH_DEBUG_INSTALLED__){window.__OPENCHAMBER_REFRESH_DEBUG_INSTALLED__=!0;let e=performance.getEntriesByType(`navigation`)[0];console.warn(`[refresh-debug] renderer-entry`,{navigationType:e?.type??`unknown`,protocol:window.location.protocol}),window.addEventListener(`beforeunload`,()=>{console.warn(`[refresh-debug] beforeunload`,{visibilityState:document.visibilityState})}),window.addEventListener(`pagehide`,e=>{console.warn(`[refresh-debug] pagehide`,{persisted:e.persisted})})}var H_=typeof window<`u`&&window.__OPENCHAMBER_RUNTIME_APIS__||(()=>{throw Error(`Runtime APIs not provided for legacy UI entrypoint.`)})();Re(),T()&&He(),ur({runtimeKey:o(),initializeAppearance:z,syncSettings:F,applyDirectory:rr,startWatchers:()=>{cr(),or(),Yn()},onError:(e,t)=>{console.error(e===`appearance`?`[main] appearance init failed:`:`[main] settings init failed:`,t)}});var U_=document.getElementById(`root`);if(!U_)throw Error(`Root element not found`);(0,ws.createRoot)(U_).render((0,$.jsx)(Q.StrictMode,{children:(0,$.jsx)(sr,{children:(0,$.jsx)(Pe,{children:(0,$.jsx)(Jn,{children:(0,$.jsx)(Qn,{children:(0,$.jsx)(Tr,{children:(0,$.jsx)(I_,{apis:H_})})})})})})}));
|
|
29
|
+
Now write the final fused answer.`,synthetic:!0}],directory:i??xe.getDirectory()})}catch(e){console.error(`[MultiRunFusion] Failed to start fusion`,e),Y.error(r(`multirun.fusion.toast.failed`))}finally{w(!1)}}},disabled:!k,children:r(C?`multirun.fusion.actions.starting`:`multirun.fusion.actions.start`)})]})]})})}function Qm(e){let t=(0,Ts.c)(13),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=[`oc-icon`,n].filter(Boolean),t[3]=n,t[4]=i);let a=i.join(` `),o,s,c,l,u;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,$.jsx)(`path`,{d:`M12 4.5v6.25M12 10.75v3.5M12 10.75H7.25A3.25 3.25 0 0 0 4 14v1.25M12 10.75h4.75A3.25 3.25 0 0 1 20 14v1.25`}),s=(0,$.jsx)(`path`,{d:`M9.25 7.25 12 4.5l2.75 2.75`}),c=(0,$.jsx)(`circle`,{cx:`4`,cy:`17.25`,r:`1.55`}),l=(0,$.jsx)(`circle`,{cx:`12`,cy:`17.25`,r:`1.55`}),u=(0,$.jsx)(`circle`,{cx:`20`,cy:`17.25`,r:`1.55`}),t[5]=o,t[6]=s,t[7]=c,t[8]=l,t[9]=u):(o=t[5],s=t[6],c=t[7],l=t[8],u=t[9]);let d;return t[10]!==r||t[11]!==a?(d=(0,$.jsxs)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:xn,strokeLinecap:`round`,strokeLinejoin:`round`,"aria-hidden":`true`,className:a,...r,children:[o,s,c,l,u]}),t[10]=r,t[11]=a,t[12]=d):d=t[12],d}var $m=e(he(),1),eh=null,th=!1,nh=(e,t=fr.getState().focus)=>e===null?null:typeof e==`string`?t?.sessionId===e?t:dr(e):e,rh=e=>{typeof window>`u`||(e.commitFrame!==null&&window.cancelAnimationFrame(e.commitFrame),e.paintFrame!==null&&window.cancelAnimationFrame(e.paintFrame),e.fallbackTimer!==null&&window.clearTimeout(e.fallbackTimer))},ih=()=>{eh&&=(rh(eh),null)},ah=(e,t)=>{ih(),Wt(!0);let n=nh(e);if(!n)return;th=!0;let r;try{r=Qt(n.sessionId)}finally{th=!1}eh={commit:t,commitFrame:null,fallbackTimer:null,focus:n,intent:r,paintFrame:null,scheduled:!1},(0,$m.flushSync)(()=>{fr.getState().setFocus(n)}),typeof window<`u`&&(eh.fallbackTimer=window.setTimeout(()=>{oh(n)},150))},oh=e=>{let t=eh,n=nh(e);if(!t||!jr(t.focus,n)||t.scheduled)return;t.scheduled=!0,typeof window<`u`&&t.fallbackTimer!==null&&(window.clearTimeout(t.fallbackTimer),t.fallbackTimer=null);let r=()=>{eh===t&&St()===t.intent&&(eh=null,Ot(),t.commit())};if(typeof window>`u`){r();return}t.commitFrame=window.requestAnimationFrame(()=>{eh===t&&St()===t.intent&&(t.paintFrame=window.requestAnimationFrame(r))})},sh=e=>{if(eh)return;let t=fr.getState();t.setFocus(nh(e,t.focus))};wt(e=>{if(th)return;let t=eh;if(t?.intent===e)return;t&&ih();let n=fr.getState();n.setFocus(nh(e.sessionId,n.focus))});var ch=e=>{let t=[],n=e=>{e.children.forEach(e=>{t.push(e.session.id),n(e)})};return n(e),t},lh=Q.memo(function(e){let t=(0,Ts.c)(18),{pinLabel:n,buttonSizeClass:r,iconSizeClass:i,onPointerDown:a,onMouseDown:o,onPin:s}=e,c;t[0]===r?c=t[1]:(c=X(`inline-flex items-center justify-center rounded-md text-muted-foreground hover:text-foreground hover:bg-[color-mix(in_srgb,var(--surface-foreground)_8%,transparent)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50 transition-none`,r),t[0]=r,t[1]=c);let l;t[2]===i?l=t[3]:(l=X(i,`rotate-45`),t[2]=i,t[3]=l);let u;t[4]===l?u=t[5]:(u=(0,$.jsx)(Z,{name:`pushpin-2`,className:l}),t[4]=l,t[5]=u);let d;t[6]!==o||t[7]!==s||t[8]!==a||t[9]!==n||t[10]!==c||t[11]!==u?(d=(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,className:c,"aria-label":n,onPointerDown:a,onMouseDown:o,onClick:s,onKeyDown:Sh,children:u})}),t[6]=o,t[7]=s,t[8]=a,t[9]=n,t[10]=c,t[11]=u,t[12]=d):d=t[12];let f;t[13]===n?f=t[14]:(f=(0,$.jsx)(Zr,{side:`top`,sideOffset:4,className:`rounded-md px-1.5 py-0.5 typography-micro`,children:n}),t[13]=n,t[14]=f);let p;return t[15]!==d||t[16]!==f?(p=(0,$.jsxs)($r,{children:[d,f]}),t[15]=d,t[16]=f,t[17]=p):p=t[17],p}),uh=Q.memo(function(e){let t=(0,Ts.c)(24),{archiveLabel:n,deleteLabel:r,deleteOnly:i,buttonSizeClass:a,iconSizeClass:o,revealClassName:s,onPointerDown:c,onMouseDown:l,onArchive:u,onDelete:d}=e,f=i!==void 0&&i,p=jm(),m=f||p,h=m?r:n,g;t[0]!==f||t[1]!==u||t[2]!==d||t[3]!==p?(g=e=>{if(f||p||e.shiftKey){d(e);return}u(e)},t[0]=f,t[1]=u,t[2]=d,t[3]=p,t[4]=g):g=t[4];let _=g,v=m?`text-destructive hover:text-destructive hover:bg-[color-mix(in_srgb,var(--status-error)_12%,transparent)]`:`text-muted-foreground hover:text-foreground hover:bg-[color-mix(in_srgb,var(--surface-foreground)_8%,transparent)]`,y;t[5]!==a||t[6]!==s||t[7]!==v?(y=X(`inline-flex items-center justify-center rounded-md focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50 transition-none`,v,a,s),t[5]=a,t[6]=s,t[7]=v,t[8]=y):y=t[8];let b=m?`delete-bin`:`inbox-archive`,x;t[9]!==o||t[10]!==b?(x=(0,$.jsx)(Z,{name:b,className:o}),t[9]=o,t[10]=b,t[11]=x):x=t[11];let S;t[12]!==_||t[13]!==h||t[14]!==l||t[15]!==c||t[16]!==y||t[17]!==x?(S=(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,className:y,"aria-label":h,onPointerDown:c,onMouseDown:l,onClick:_,onKeyDown:Ch,children:x})}),t[12]=_,t[13]=h,t[14]=l,t[15]=c,t[16]=y,t[17]=x,t[18]=S):S=t[18];let C;t[19]===h?C=t[20]:(C=(0,$.jsx)(Zr,{side:`top`,sideOffset:4,className:`rounded-md px-1.5 py-0.5 typography-micro`,children:h}),t[19]=h,t[20]=C);let w;return t[21]!==S||t[22]!==C?(w=(0,$.jsxs)($r,{children:[S,C]}),t[21]=S,t[22]=C,t[23]=w):w=t[23],w}),dh=Q.memo(function(e){let t=(0,Ts.c)(3),{number:n}=e;if(!qm())return null;let r=bn()?`⌘${n}`:`Ctrl+${n}`,i;return t[0]!==n||t[1]!==r?(i=(0,$.jsx)(Bi,{"data-sidebar-shortcut-number":n,className:`h-3.5 min-w-0 shrink-0 rounded-full border-0 bg-[color-mix(in_srgb,var(--surface-foreground)_6%,transparent)] px-1.5 font-sans text-[10px] font-medium tracking-tight text-muted-foreground/65 shadow-none`,"aria-hidden":`true`,children:r}),t[0]=n,t[1]=r,t[2]=i):i=t[2],i});function fh(e){let{t}=Fe(),{node:i,depth:a=0,groupDirectory:o,projectId:s,archivedBucket:c=!1,pinnedSessionIds:l,expandedParents:u,hasSessionSearchQuery:d,normalizedSessionSearchQuery:f,editingId:h,setEditingId:g,editTitle:_,setEditTitle:v,handleSaveEdit:y,handleCancelEdit:x,toggleParent:S,handleSessionSelect:C,handleSessionDoubleClick:w,togglePinnedSession:T,handleShareSession:E,copiedSessionId:D,handleCopyShareUrl:O,handleUnshareSession:k,setOpenSidebarMenuKey:A,renamingFolderId:j,getFoldersForScope:M,getSessionFolderId:N,removeSessionFromFolder:P,addSessionToFolder:F,createFolderAndStartRename:I,openContextPanelTab:R,handleDeleteSession:z,mobileVariant:B,alwaysShowActions:V,renderSessionNode:H,secondaryMeta:U,renderContext:W=`project`,subtreeContainsActive:ee,subtreeContainsEditing:G,menuOpenSessionId:te,childRenderExtrasFor:K,liveSessionById:ne,shortcutNumber:re=null}=e,ie=!!U?.projectLabel,pe=!!U?.branchLabel,me=Sp(e=>e.displayMode),he=Q.useMemo(()=>m(),[]),ge=me===`minimal`||he,_e=Q.useMemo(()=>b(),[]),ve=Q.useContext(Zi),ye=he?`group-hover:opacity-100 group-hover:pointer-events-auto`:`group-hover:opacity-100 group-hover:pointer-events-auto group-focus-within:opacity-100 group-focus-within:pointer-events-auto`,be=he,xe=W===`pinned`&&l.has(i.session.id),Se=!xe&&!c&&!B,Ce=`h-5 w-5`,we=`h-3.5 w-3.5`,Te=(Se||xe?1:0)+ +!!be+1,Ee=Te>=3?`group-hover:pr-18 group-focus-within:pr-18`:Te>=2?`group-hover:pr-12 group-focus-within:pr-12`:`group-hover:pr-7 group-focus-within:pr-7`,De=Te>=2?`pr-12`:`pr-8`,Oe=Q.useRef(!1),ke=Q.useRef(!1),[Me,Ne]=Q.useState(!1),Pe=Q.useRef(h);Pe.current=h;let Ie=Q.useRef(null),Le=Q.useRef(y);Le.current=y;let[Re,Be]=Q.useState(_),[Ve,He]=Q.useState(null),Ge=Q.useRef(Re);Ge.current=Re;let Ke=Q.useRef(null),qe=Q.useRef(null),Xe=Q.useRef(null),J=i.session,Ze=ne.get(J.id)??J,Qe=!!Ze.metadata?.openchamber?.assistant,et=p(J.directory??null)??p(o??null),tt=Ye(et??void 0,{bootstrap:!1}),nt=Vi(),rt=vm(e=>e.enabled),it=vm(Q.useMemo(()=>e=>e.selectedIds.has(J.id),[J.id])),ot=vm(e=>e.toggleSelected),st=vm(e=>e.setRange),[ct,lt]=Q.useState(!1),[ut,dt]=Q.useState(!0),[pt,mt]=Q.useState(!1),ht=`${W}:${c?`archived`:`active`}:${J.id}`,gt=at(Q.useMemo(()=>e=>!!e.sessionMemoryState.get(We(J.id))?.isZombie,[J.id])),_t=ft(J.id),vt=bt(J.id,et??void 0,{bootstrap:!1}),yt=Lt(J.id,et??void 0,{bootstrap:!1}),xt=Q.useMemo(()=>({scope:W,sessionId:J.id,projectId:s??null}),[s,W,J.id]),St=Q.useMemo(()=>Or(xt)??``,[xt]),Ct=Q.useRef(null),wt=fr(Q.useMemo(()=>e=>jr(e.focus,xt),[xt]));Q.useLayoutEffect(()=>{wt&&(Ct.current?.scrollIntoView({block:`nearest`,inline:`nearest`}),oh(xt))},[wt,xt]);let Tt=Ze.title||t(`sessions.sidebar.session.untitled`),Dt=Ze.metadata?.openchamber?.titleRefresh,Ot=typeof Dt?.lastError==`string`?Dt.lastError:null,kt=typeof Dt?.failedAt==`number`?Dt.failedAt:null;Q.useEffect(()=>{!Ot||kt===null||(He(null),console.warn(`[session-title] generation failed for ${J.id}: ${Ot}`))},[J.id,Ot,kt]),Q.useEffect(()=>{if(Ve===null)return;if(Tt!==Ve){He(null);return}let e=window.setTimeout(()=>He(null),3e4);return()=>window.clearTimeout(e)},[Ve,Tt]);let At=i.children.length>0||!!Ze.hasChildren,jt=l.has(J.id),Mt=ht,Nt=d?!0:u.has(Mt),Pt=!!Ze.parentID,Ft=W===`pinned`,It=$e(J.id)>0&&!Pt,Rt=ze(Ze)||Date.now(),zt=Hn(Rt),Bt=br(Rt),[Vt,Ht]=Q.useState(!1),Ut=Vt,Wt=Q.useMemo(()=>xs(Ze.title)!==null,[Ze.title]),[Gt,Kt]=Q.useState(!1),qt=Q.useMemo(()=>ch(i).length,[i]),Jt=Ae(e=>{let t=et??``,n=(Et()??rn(t,tt)).getTranscript(nn(t,e)),r=tt.getState().session.find(t=>t.id===e)?.revert?.messageID;return Je({sessionID:e,messages:$t(n),parts:n.partsByMessageID,revertMessageID:r}).list}),Yt=Ae(async e=>{let n=[],r=0;for(let i of e)try{await nt.ensureSessionRenderable(i.session.id);let e=Jt(i.session.id),a=i.session.title||t(`sessions.sidebar.session.export.untitledSubagent`),o=i.session.agent,s=await Yt(i.children);r+=s.skipped,n.push({title:a,agent:o,records:e,children:s.children})}catch{r+=ch(i).length+1}return{children:n,skipped:r}}),Xt=Ae(e=>{e<=0||Y.warning(t(e===1?`sessions.sidebar.session.export.skippedSubtaskSingle`:`sessions.sidebar.session.export.skippedSubtaskMany`,{count:e}))}),Zt=Ae(async e=>{if(!et){Y.error(t(`sessions.sidebar.session.export.nothingToExport`));return}await nt.ensureSessionRenderable(J.id);let n=Jt(J.id);if(n.length===0){Y.error(t(`sessions.sidebar.session.export.nothingToExport`));return}let r,a=0;if(e&&i.children.length>0){let e=await Yt(i.children);r=e.children,a=e.skipped}let o=dm(n,Ze.title??null,r),s=gm(Ze.title??null),c=await pm(o,s);if(c){Y.success(t(`sessions.sidebar.session.export.success`),{action:{label:t(hm()),onClick:()=>{mm(c).then(e=>{e||Y.error(t(`sessions.sidebar.session.export.failedRevealPath`))})}}}),Xt(a);return}fm(o,s),Y.success(t(`sessions.sidebar.session.export.success`)),Xt(a)}),Qt=Ae(async()=>{if(i.children.length>0){dt(!0),lt(!0);return}await Zt(!1)}),en=Ae(()=>{et&&L(`desktop_open_session_mini_chat_window`,{sessionId:J.id,directory:et,apiBaseUrl:r(),clientToken:n()}).catch(e=>{console.warn(`[session-sidebar] failed to open mini chat window`,e)})});je(qe,()=>{Le.current(Ge.current)},h===J.id),Q.useLayoutEffect(()=>{if(h!==J.id){Ke.current===J.id&&(Ke.current=null);return}Ke.current!==J.id&&(Ke.current=J.id,Be(_),queueMicrotask(()=>Xe.current?.select()))},[h,_,J.id]);let tn=Ae(e=>{if(!e&&Ie.current){let{id:e,title:t}=Ie.current;Ie.current=null,g(e),v(t)}}),an=Ae(e=>{Ht(e)}),on=Ae(e=>{e.preventDefault(),e.stopPropagation()}),sn=Ae(e=>{e.preventDefault(),e.stopPropagation()}),cn=Ae(e=>{e.preventDefault(),e.stopPropagation(),A(null),T(J.id)}),hn=Ae(e=>{e.preventDefault(),e.stopPropagation(),A(null),z(J,{archivedBucket:c})}),gn=Ae(e=>{e.preventDefault(),e.stopPropagation(),A(null),z(J,{archivedBucket:c,hardDelete:!0,skipConfirm:!0})}),_n=Ae(e=>{e.preventDefault(),e.stopPropagation(),A(null),T(J.id)}),vn=Ae(()=>{let e=_t?.type??`idle`;!et||pt||e===`busy`||e===`retry`||(mt(!0),(async()=>{try{await nt.refreshSessionTranscript(J.id,{directory:et}),Y.success(t(`sessions.sidebar.session.menu.refreshTranscriptSuccess`))}catch{Y.error(t(`sessions.sidebar.session.menu.refreshTranscriptFailed`))}finally{mt(!1)}})())}),yn=Ae(e=>{e.preventDefault(),e.stopPropagation()}),bn=Ae(e=>{e.preventDefault(),e.stopPropagation()}),xn=Ae(e=>{e.preventDefault(),e.stopPropagation(),ve?.vscode?.executeCommand(`openchamber.openSessionInEditor`,J.id,Tt)}),Cn=Ae(e=>{if(Oe.current){Oe.current=!1;return}if(rt){if(e?.preventDefault(),e?.stopPropagation(),e?.shiftKey){let e=(typeof document<`u`?Array.from(document.querySelectorAll(`[data-session-row]`)):[]).map(e=>e.getAttribute(`data-session-row`)).filter(e=>typeof e==`string`&&e.length>0),t=vm.getState().anchorId,n=new Map;n.set(J.id,ch(i)),st(t,J.id,e,et??null,n);return}ot(J.id,et??null,ch(i));return}C(J.id,et,s,W)}),wn=Ae(e=>{e.defaultPrevented||e.target?.closest(`button, a, input, [role="menuitem"], [role="menu"]`)||Cn(e)}),Tn=Ae(e=>{(e.button===2||e.button===0&&e.ctrlKey&&!rt)&&(Oe.current=!0)}),En=Ae(e=>{ke.current=e.pointerType===`mouse`,B&&e.pointerType===`touch`&&Ne(!0)}),Dn=Ae(e=>{B&&e.pointerType===`touch`&&Ne(!1)}),On=Ae(e=>{e.key!==`Enter`||!ke.current||(e.preventDefault(),e.stopPropagation(),w(J.id,Tt))}),kn=Ae(e=>{if(Cn(e),!ke.current)return;let t=e.currentTarget;window.requestAnimationFrame(()=>{ke.current=!0,t.focus({preventScroll:!0})})}),An=Ae(()=>{ke.current=!1}),jn=Ae(e=>{if(!ke.current)return;let t=e.relatedTarget;if(t instanceof Node&&e.currentTarget.contains(t))return;let n=document.activeElement;!(n instanceof HTMLElement)||!e.currentTarget.contains(n)||(n.blur(),ke.current=!1)});if(h===J.id){let e=async()=>{He(Tt),x();try{await Ue(J.id)}catch(e){He(null),console.warn(`[session-sidebar] failed to request smart title:`,e)}};return(0,$.jsx)(`div`,{className:`group relative my-0.5 flex items-center rounded-lg py-1.5 pr-2`,style:{paddingLeft:er(a)},children:(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-0`,children:[(0,$.jsxs)(`form`,{ref:qe,className:`flex w-full items-center gap-2`,onSubmit:e=>{e.preventDefault(),y(Re)},children:[(0,$.jsx)(`input`,{ref:Xe,value:Re,onChange:e=>Be(e.target.value),className:`flex-1 min-w-0 bg-transparent typography-ui-label outline-none placeholder:text-muted-foreground`,autoFocus:!0,placeholder:t(`sessions.sidebar.session.menu.rename`),onKeyDown:e=>{if(e.stopPropagation(),e.key===`Escape`){x();return}}}),(0,$.jsx)(`button`,{type:`button`,onClick:()=>{e()},"aria-label":t(`sessions.sidebar.session.rename.smartTitle`),title:t(`sessions.sidebar.session.rename.smartTitle`),className:`shrink-0 text-muted-foreground hover:text-foreground`,children:(0,$.jsx)(Z,{name:`ai-generate-2`,className:`size-3.5`})}),(0,$.jsx)(`button`,{type:`submit`,"aria-label":t(`sessions.sidebar.session.rename.save`),title:t(`sessions.sidebar.session.rename.save`),className:`shrink-0 text-muted-foreground hover:text-foreground`,children:(0,$.jsx)(Z,{name:`check`,className:`size-3.5`})})]}),ge?null:(0,$.jsx)(`div`,{className:`flex items-center justify-between gap-3 text-muted-foreground/60 min-w-0 overflow-hidden leading-tight`,style:{fontSize:`calc(var(--text-ui-label) * 0.85)`},children:(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1.5 overflow-hidden`,children:[At&&!Ft&&!Pt?(0,$.jsx)(`span`,{className:`inline-flex items-center justify-center flex-shrink-0`,children:Nt?(0,$.jsx)(Z,{name:`arrow-down-s`,className:`h-3 w-3`}):(0,$.jsx)(Z,{name:`arrow-right-s`,className:`h-3 w-3`})}):null,(0,$.jsx)(`span`,{className:`flex-shrink-0`,children:zt}),ie?(0,$.jsx)(`span`,{className:`truncate`,children:U?.projectLabel}):null,pe?(0,$.jsxs)(`span`,{className:`inline-flex min-w-0 items-center gap-0.5`,children:[(0,$.jsx)(Z,{name:`git-branch`,className:`h-3 w-3 flex-shrink-0`}),(0,$.jsx)(`span`,{className:`truncate`,children:U?.branchLabel})]}):null]})})]})},J.id)}let Mn=_t?.type??`idle`,Nn=Mn===`busy`||Mn===`retry`,Pn=Ve!==null||Dt?.isGenerating===!0,Fn=vt.length,In=yt.length>0,Ln=In||Nn||!In&&!Nn&&It&&!wt,Rn=!V||he,zn=In?(0,$.jsx)(`span`,{className:`inline-flex h-3.5 w-3.5 items-center justify-center`,"aria-label":t(`sessions.sidebar.session.status.questionRequired`),title:t(`sessions.sidebar.session.status.questionRequired`),children:(0,$.jsx)(Z,{name:`question`,className:`h-3.5 w-3.5 text-primary`})}):Nn?(0,$.jsx)(`span`,{className:`inline-flex h-3.5 w-3.5 items-center justify-center`,"aria-label":t(`sessions.sidebar.session.status.active`),title:t(`sessions.sidebar.session.status.active`),children:(0,$.jsx)(Go,{})}):(0,$.jsx)(`span`,{className:`inline-flex h-3.5 w-3.5 items-center justify-center`,"aria-label":t(`sessions.sidebar.session.status.unread`),title:t(`sessions.sidebar.session.status.unread`),children:(0,$.jsx)(`span`,{className:`h-2 w-2 rounded-full bg-[var(--status-info)]`})}),Bn=!Ft&&!V&&At&&jt,Vn=!Ft&&jt,Un=(0,$.jsx)(Z,{name:`pushpin-2-fill`,className:`h-3 w-3 flex-shrink-0 text-foreground`,"aria-label":t(`sessions.sidebar.session.status.pinned`)}),Wn=Vn?(0,$.jsx)(`span`,{className:X(`pointer-events-none absolute inline-flex h-3.5 w-3.5 items-center justify-center transition-opacity`,ge?`top-1/2 -translate-y-1/2`:`top-[14.5px] -translate-y-1/2`,Bn?`opacity-100 group-hover:opacity-0 group-focus-within:opacity-0`:``),style:{left:er(Math.max(0,a-1))},children:Un}):null,Gn=!Ft&&!Pt&&At,Kn=Gn&&!V,qn=er(Math.max(0,a-1)),Jn=()=>{!Nt&&i.children.length===0&&nt.loadChildren(J.id,et).catch(()=>void 0),S(Mt)},Yn=Gn?(0,$.jsx)(`span`,{role:`button`,tabIndex:0,onClick:e=>{e.stopPropagation(),e.currentTarget.blur(),Jn()},onKeyDown:e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),e.stopPropagation(),Jn())},style:{minWidth:14,minHeight:14,left:qn},className:X(`absolute inline-flex h-3.5 w-3.5 items-center justify-center rounded-md text-muted-foreground hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50 transition-opacity`,ge?`top-1/2 -translate-y-1/2`:`top-[14.5px] -translate-y-1/2`,Kn?`opacity-0 pointer-events-none group-hover:opacity-100 group-hover:pointer-events-auto group-focus-within:opacity-100 group-focus-within:pointer-events-auto`:``),"aria-label":t(Nt?`sessions.sidebar.session.subsessions.collapse`:`sessions.sidebar.session.subsessions.expand`),children:Nt?(0,$.jsx)(Z,{name:`arrow-down-s`,className:`h-3 w-3`}):(0,$.jsx)(Z,{name:`arrow-right-s`,className:`h-3 w-3`})}):null,Zn=gt?(0,$.jsx)(Z,{name:`error-warning`,className:`h-4 w-4 text-status-warning`}):null,Qn=(0,$.jsx)(le,{children:(0,$.jsx)(q,{className:`app-region-no-drag z-50`,children:(0,$.jsx)(oe,{"data-slot":`dropdown-menu-content`,finalFocus:()=>!(j||Pe.current),style:{backgroundColor:`var(--surface-elevated)`,color:`var(--surface-elevated-foreground)`},className:X(di,`min-w-[180px]`),children:(({Item:e,Separator:n,Sub:r,SubTrigger:i,SubContent:a})=>(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(e,{onClick:()=>{Ie.current={id:J.id,title:Tt}},className:`[&>svg]:mr-1`,children:[(0,$.jsx)(Z,{name:`pencil-ai`,className:`mr-1 h-4 w-4`}),t(`sessions.sidebar.session.menu.rename`)]}),(0,$.jsxs)(e,{onClick:()=>T(J.id),className:`[&>svg]:mr-1`,children:[jt?(0,$.jsx)(Z,{name:`unpin`,className:`mr-1 h-4 w-4`}):(0,$.jsx)(Z,{name:`pushpin`,className:`mr-1 h-4 w-4`}),t(jt?`sessions.sidebar.session.menu.unpin`:`sessions.sidebar.session.menu.pin`)]}),Ze.share?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(e,{onClick:()=>{Ze.share?.url&&O(Ze.share.url,J.id)},className:`[&>svg]:mr-1`,children:D===J.id?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Z,{name:`check`,className:`mr-1 h-4 w-4`,style:{color:`var(--status-success)`}}),t(`sessions.sidebar.session.menu.copied`)]}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Z,{name:`file-copy`,className:`mr-1 h-4 w-4`}),t(`sessions.sidebar.session.menu.copyLink`)]})}),(0,$.jsxs)(e,{onClick:()=>k(J.id),className:`[&>svg]:mr-1`,children:[(0,$.jsx)(Z,{name:`link-unlink-m`,className:`mr-1 h-4 w-4`}),t(`sessions.sidebar.session.menu.unshare`)]})]}):(0,$.jsxs)(e,{onClick:()=>E(Ze),className:`[&>svg]:mr-1`,children:[(0,$.jsx)(Z,{name:`share-2`,className:`mr-1 h-4 w-4`}),t(`sessions.sidebar.session.menu.share`)]}),(0,$.jsxs)(e,{onClick:()=>{Qt()},className:`[&>svg]:mr-1`,children:[(0,$.jsx)(Z,{name:`download`,className:`mr-1 h-4 w-4`}),t(`sessions.sidebar.session.menu.exportMarkdown`)]}),(0,$.jsxs)(e,{disabled:!et||Nn||pt,onClick:()=>{vn()},className:`[&>svg]:mr-1`,children:[(0,$.jsx)(Z,{name:`refresh`,className:X(`mr-1 h-4 w-4`,pt&&`animate-spin`)}),t(`sessions.sidebar.session.menu.refreshTranscript`)]}),Wt?(0,$.jsxs)(e,{onClick:()=>Kt(!0),className:`[&>svg]:mr-1`,children:[(0,$.jsx)(Qm,{className:`mr-1 h-4 w-4`}),t(`sessions.sidebar.session.menu.runFusion`)]}):null,et&&!c?(()=>{let o=M(et),s=N(et,J.id);return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(n,{}),(0,$.jsxs)(r,{children:[(0,$.jsxs)(i,{className:`[&>svg]:mr-1`,children:[(0,$.jsx)(Z,{name:`folder`,className:`h-4 w-4`}),t(`sessions.sidebar.folders.moveToFolder`)]}),(0,$.jsxs)(a,{className:`min-w-[180px]`,children:[o.length===0?(0,$.jsx)(e,{disabled:!0,className:`text-muted-foreground`,children:t(`sessions.sidebar.folders.none`)}):o.map(t=>(0,$.jsxs)(e,{onClick:()=>{s===t.id?P(et,J.id):F(et,t.id,J.id)},children:[(0,$.jsx)(`span`,{className:`flex-1 truncate`,children:t.name}),s===t.id?(0,$.jsx)(Z,{name:`check`,className:`ml-2 h-3.5 w-3.5 text-primary flex-shrink-0`}):null]},t.id)),(0,$.jsx)(n,{}),(0,$.jsxs)(e,{onClick:()=>{let e=I(et);e&&F(et,e.id,J.id)},children:[(0,$.jsx)(Z,{name:`add`,className:`mr-1 h-4 w-4`}),t(`sessions.sidebar.folders.newFolderEllipsis`)]}),s?(0,$.jsxs)(e,{onClick:()=>{P(et,J.id)},className:`text-destructive focus:text-destructive`,children:[(0,$.jsx)(Z,{name:`close`,className:`mr-1 h-4 w-4`}),t(`sessions.sidebar.folders.removeFromFolder`)]}):null]})]})]})})():null,he?null:(0,$.jsxs)(e,{disabled:!et,onClick:()=>{et&&R(et,{mode:`chat`,dedupeKey:`session:${J.id}`,label:Tt,sessionTitleFallback:Tt})},className:`[&>svg]:mr-1`,children:[(0,$.jsx)(Z,{name:`chat-thread`,className:`mr-1 h-4 w-4`}),(0,$.jsx)(`span`,{className:`truncate`,children:t(`sessions.sidebar.session.menu.openInSidePanel`)}),(0,$.jsx)(`span`,{className:`shrink-0 typography-micro px-1 rounded leading-none pb-px text-[var(--status-warning)] bg-[var(--status-warning)]/10`,children:t(`sessions.sidebar.session.menu.betaBadge`)})]}),_e?(0,$.jsxs)(e,{disabled:!et,onClick:en,className:`[&>svg]:mr-1`,children:[(0,$.jsx)(Z,{name:`window`,className:`mr-1 h-4 w-4`}),(0,$.jsx)(`span`,{className:`truncate`,children:t(`sessions.sidebar.session.menu.openMiniChatWindow`)})]}):null,(0,$.jsx)(n,{}),c?null:(0,$.jsxs)(e,{className:`[&>svg]:mr-1`,onClick:()=>z(J,{archivedBucket:c}),children:[(0,$.jsx)(Z,{name:`inbox-archive`,className:`mr-1 h-4 w-4`}),t(`sessions.sidebar.bulkActions.archive`)]}),(0,$.jsxs)(e,{className:`text-destructive focus:text-destructive [&>svg]:mr-1`,onClick:()=>z(J,{archivedBucket:c,hardDelete:!0}),children:[(0,$.jsx)(Z,{name:`delete-bin`,className:`mr-1 h-4 w-4`}),t(`sessions.sidebar.bulkActions.delete`)]})]}))({Item:({className:e,...t})=>(0,$.jsx)(se,{className:X(bi,e),...t}),Separator:({className:e,...t})=>(0,$.jsx)(ae,{className:X(ui,e),...t}),Sub:ce,SubTrigger:({className:e,children:t,...n})=>(0,$.jsxs)(ue,{className:X(vi,e),...n,children:[t,(0,$.jsx)(Z,{name:`arrow-right-s`,className:`ml-auto size-3.5`})]}),SubContent:({className:e,children:t,...n})=>(0,$.jsx)(le,{children:(0,$.jsx)(q,{className:`app-region-no-drag z-50`,children:(0,$.jsx)(oe,{"data-slot":`dropdown-menu-sub-content`,style:{backgroundColor:`var(--surface-elevated)`,color:`var(--surface-elevated-foreground)`},className:X(di,e),...n,children:t})})})})})})});return(0,$.jsxs)(Q.Fragment,{children:[(0,$.jsx)(fp,{sessionId:J.id,sessionDirectory:et??null,sessionTitle:Tt,children:(0,$.jsxs)(de,{open:Vt,onOpenChange:an,onOpenChangeComplete:tn,children:[(0,$.jsxs)(fe,{render:(0,$.jsx)(`div`,{ref:Ct,"data-session-row":J.id,"data-session-scope":et??``,"data-session-focus-scope":W,"data-session-focus-key":St,"data-session-project-id":s??``,"data-session-archived":c?`1`:`0`,"data-session-depth":a,onClick:wn,onMouseLeave:jn,className:X(`group relative my-0.5 flex cursor-pointer items-center rounded-lg py-1.5 pr-2`,wt&&!it&&`bg-[color-mix(in_srgb,var(--surface-foreground)_6%,transparent)] dark:bg-[color-mix(in_srgb,var(--surface-foreground)_11%,transparent)]`,it&&`bg-[color-mix(in_srgb,var(--surface-foreground)_6%,transparent)] dark:bg-[color-mix(in_srgb,var(--surface-foreground)_11%,transparent)]`,!wt&&!it&&`hover:bg-[color-mix(in_srgb,var(--surface-foreground)_3.5%,transparent)] dark:hover:bg-[color-mix(in_srgb,var(--surface-foreground)_8%,transparent)]`)}),children:[Wn,Yn,(0,$.jsx)(`div`,{className:`flex min-w-0 flex-1 items-center`,style:{paddingLeft:er(a)},children:(0,$.jsx)(`div`,{className:`flex min-w-0 flex-1 items-center`,children:(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,onPointerDown:En,onPointerUp:Dn,onPointerCancel:Dn,onMouseDown:Tn,onKeyDown:On,onBlur:An,onClick:kn,onDoubleClick:e=>{e.stopPropagation(),w(J.id,Tt)},className:X(`relative flex min-w-0 flex-1 cursor-pointer flex-col gap-0 overflow-hidden rounded-md text-left focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50 text-foreground select-none has-[[data-sidebar-shortcut-number]]:!pr-0`,Me&&`bg-[color-mix(in_srgb,var(--surface-foreground)_8%,transparent)]`,V?he?Ee:De:Ee),children:(0,$.jsxs)(`div`,{className:`flex w-full items-center min-w-0 flex-1 gap-1 overflow-hidden`,children:[(0,$.jsx)(`div`,{className:X(`block min-w-0 flex-1 truncate typography-ui-label font-normal text-foreground`,Pn&&`animate-text-shimmer`),"aria-busy":Pn||void 0,children:Xn(Tt,f)}),Qe?(0,$.jsx)(Z,{name:`ai-agent`,className:`size-3 shrink-0 text-muted-foreground`,"aria-label":`Assistant`}):null,Fn>0?(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded bg-destructive/10 px-1 py-0.5 text-[0.7rem] text-destructive flex-shrink-0`,title:t(`sessions.sidebar.session.status.permissionRequired`),"aria-label":t(`sessions.sidebar.session.status.permissionRequired`),children:[(0,$.jsx)(Z,{name:`shield`,className:`h-3 w-3`}),(0,$.jsx)(`span`,{className:`leading-none`,children:Fn})]}):null,Ln?(0,$.jsx)(`span`,{className:X(`inline-flex shrink-0 items-center justify-center transition-none`,Rn?X(`group-hover:hidden group-focus-within:hidden`,Ut?`hidden`:``):Ut?`invisible`:``),children:zn}):null,re?(0,$.jsx)(dh,{number:re}):null]})})}),he?null:(0,$.jsx)(Zr,{side:`right`,align:`start`,sideOffset:8,className:`w-64 max-w-[min(16rem,calc(100vw-2rem))] px-3 py-2.5 text-left shadow-md`,children:(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5 text-left`,children:[(0,$.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,$.jsx)(`div`,{className:`min-w-0 flex-1 break-words typography-ui-label font-medium text-foreground`,children:Tt}),(0,$.jsx)(`div`,{className:`flex-shrink-0 typography-meta text-muted-foreground`,children:Bt})]}),ie?(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1.5 typography-meta text-muted-foreground`,children:[(0,$.jsx)(Z,{name:`folder-open`,className:`h-3.5 w-3.5 flex-shrink-0`}),(0,$.jsx)(`span`,{className:`truncate`,children:U?.projectLabel})]}):null,pe?(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1.5 typography-meta text-muted-foreground`,children:[(0,$.jsx)(Z,{name:`git-branch`,className:`h-3.5 w-3.5 flex-shrink-0`}),(0,$.jsx)(`span`,{className:`truncate`,children:U?.branchLabel})]}):null]})})]})})}),Zn&&!B?(0,$.jsx)(`div`,{className:X(`absolute top-1/2 -translate-y-1/2 z-10`,ge?`right-0`:`right-[30px]`),children:Zn}):null,(0,$.jsxs)(`div`,{className:X(`absolute right-1 top-1/2 z-10 flex -translate-y-1/2 items-center gap-1 transition-none group-has-[[data-sidebar-shortcut-number]]:hidden`,Ut||V&&!he?`opacity-100`:X(`opacity-0`,ye)),children:[Se?(0,$.jsx)(lh,{pinLabel:t(`sessions.sidebar.session.menu.pin`),buttonSizeClass:Ce,iconSizeClass:we,onPointerDown:on,onMouseDown:sn,onPin:cn}):null,xe?(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,className:X(`inline-flex items-center justify-center rounded-md text-muted-foreground hover:text-foreground hover:bg-[color-mix(in_srgb,var(--surface-foreground)_8%,transparent)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50 transition-none`,Ce),"aria-label":t(`sessions.sidebar.session.actions.pinned`),onPointerDown:on,onMouseDown:sn,onClick:_n,onKeyDown:e=>e.stopPropagation(),children:(0,$.jsx)(Z,{name:`pushpin-2-fill`,className:we})})}),(0,$.jsx)(Zr,{side:`top`,sideOffset:4,className:`rounded-md px-1.5 py-0.5 typography-micro`,children:t(`sessions.sidebar.session.actions.pinned`)})]}):null,be?(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,className:X(`inline-flex items-center justify-center rounded-md text-muted-foreground hover:text-foreground hover:bg-[color-mix(in_srgb,var(--surface-foreground)_8%,transparent)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50 transition-none`,Ce),"aria-label":t(`sessions.sidebar.session.actions.openInEditor`),onPointerDown:yn,onMouseDown:bn,onClick:xn,onKeyDown:e=>e.stopPropagation(),children:(0,$.jsx)(Z,{name:`external-link`,className:we})})}),(0,$.jsx)(Zr,{side:`top`,sideOffset:4,className:`rounded-md px-1.5 py-0.5 typography-micro`,children:t(`sessions.sidebar.session.actions.openInEditor`)})]}):null,(0,$.jsx)(uh,{archiveLabel:t(`sessions.sidebar.bulkActions.archive`),deleteLabel:t(`sessions.sidebar.bulkActions.delete`),deleteOnly:c===!0,buttonSizeClass:Ce,iconSizeClass:we,revealClassName:ge&&!V&&!Ut?X(`opacity-0`,ye):`opacity-100`,onPointerDown:on,onMouseDown:sn,onArchive:hn,onDelete:gn})]})]}),Qn]})}),!Ft&&At&&Nt?i.children.map(e=>{let t=K?K(e):{subtreeContainsActive:ee,subtreeContainsEditing:G,menuOpenSessionId:te,nodeStructureKey:``};return H(e,a+1,et??o,s,c,void 0,W,t)}):null,(0,$.jsx)(mn,{open:ct,onOpenChange:lt,children:(0,$.jsxs)(dn,{showCloseButton:!1,className:`max-w-sm gap-5`,children:[(0,$.jsxs)(ln,{children:[(0,$.jsx)(fn,{children:t(`sessions.sidebar.session.export.dialog.title`)}),(0,$.jsx)(pn,{children:t(qt===1?`sessions.sidebar.session.export.dialog.descriptionSingle`:`sessions.sidebar.session.export.dialog.descriptionMany`,{count:qt})})]}),(0,$.jsxs)(`label`,{className:`flex items-center gap-2 typography-ui-label cursor-pointer`,children:[(0,$.jsx)(`input`,{type:`checkbox`,checked:ut,onChange:e=>dt(e.target.checked),className:`h-4 w-4 rounded border-border accent-primary`}),t(`sessions.sidebar.session.export.dialog.includeSubtasks`)]}),(0,$.jsxs)(un,{children:[(0,$.jsx)(Sn,{type:`button`,onClick:()=>lt(!1),variant:`outline`,size:`sm`,children:t(`sessions.sidebar.dialogs.cancel`)}),(0,$.jsx)(Sn,{type:`button`,onClick:()=>{lt(!1),Zt(ut)},size:`sm`,children:t(`sessions.sidebar.session.export.dialog.confirm`)})]})]})}),Wt?(0,$.jsx)(Zm,{session:Ze,open:Gt,onOpenChange:Kt}):null]},J.id)}var ph=e=>p(e.session.directory??null),mh=(e,t)=>(e?.projectLabel??null)===(t?.projectLabel??null)&&(e?.branchLabel??null)===(t?.branchLabel??null),hh=e=>{if(!e.openSidebarMenuKey)return null;let t=e.archivedBucket?`archived`:`active`,n=`${e.renderContext??`project`}:${t}:`;return e.openSidebarMenuKey.startsWith(n)?e.openSidebarMenuKey.slice(n.length):null},gh=e=>e.menuOpenSessionId??hh(e),_h=(e,t,n)=>t?n.has(e.node.session.id)?!0:yp(e.node,t):!1,vh=(e,t,n,r,i)=>{if(e.session.id!==t.session.id)return!0;let a=i(e);if(n.has(a)!==r.has(a)||e.children.length!==t.children.length)return!0;for(let a=0;a<e.children.length;a+=1)if(vh(e.children[a],t.children[a],n,r,i))return!0;return!1},yh=(e,t,n,r)=>{if(e.session.id!==t.session.id)return!0;let i=e.session.id,a=n.get(i)??e.session,o=r.get(i)??t.session;if(a!==o&&_p(a)!==_p(o)||e.children.length!==t.children.length)return!0;for(let i=0;i<e.children.length;i+=1)if(yh(e.children[i],t.children[i],n,r))return!0;return!1},bh=(e,t)=>{if(e.hasSessionSearchQuery||t.hasSessionSearchQuery)return!1;let n=e.archivedBucket?`archived`:`active`,r=t.archivedBucket?`archived`:`active`;return vh(e.node,t.node,e.expandedParents,t.expandedParents,t=>`${e.renderContext??`project`}:${n}:${t.session.id}`)||vh(e.node,t.node,e.expandedParents,t.expandedParents,e=>`${t.renderContext??`project`}:${r}:${e.session.id}`)},xh=Q.memo(fh,(e,t)=>{if(e.node.session.id!==t.node.session.id||e.depth!==t.depth||e.groupDirectory!==t.groupDirectory||e.projectId!==t.projectId||e.archivedBucket!==t.archivedBucket||(e.renderContext??`project`)!==(t.renderContext??`project`)||e.mobileVariant!==t.mobileVariant||e.alwaysShowActions!==t.alwaysShowActions||e.shortcutNumber!==t.shortcutNumber||e.hasSessionSearchQuery!==t.hasSessionSearchQuery||e.normalizedSessionSearchQuery!==t.normalizedSessionSearchQuery||e.notifyOnSubtasks!==t.notifyOnSubtasks||e.nodeStructureKey!==t.nodeStructureKey||ph(e.node)!==ph(t.node)||!mh(e.secondaryMeta,t.secondaryMeta)||e.liveSessionById!==t.liveSessionById&&yh(e.node,t.node,e.liveSessionById,t.liveSessionById)||e.pinnedSessionIds!==t.pinnedSessionIds&&vh(e.node,t.node,e.pinnedSessionIds,t.pinnedSessionIds,e=>e.session.id)||e.expandedParents!==t.expandedParents&&bh(e,t)||e.currentSessionId!==t.currentSessionId&&(_h(e,e.currentSessionId,e.subtreeContainsActive)||_h(t,t.currentSessionId,t.subtreeContainsActive))||e.editingId!==t.editingId&&(_h(e,e.editingId,e.subtreeContainsEditing)||_h(t,t.editingId,t.subtreeContainsEditing))||e.editTitle!==t.editTitle&&(_h(e,e.editingId,e.subtreeContainsEditing)||_h(t,t.editingId,t.subtreeContainsEditing))||e.copiedSessionId!==t.copiedSessionId&&(yp(e.node,e.copiedSessionId)||yp(t.node,t.copiedSessionId)))return!1;if(e.openSidebarMenuKey!==t.openSidebarMenuKey){let n=gh(e),r=gh(t);if(yp(e.node,n)||yp(t.node,r))return!1}if(e.renamingFolderId!==t.renamingFolderId){let n=gh(e),r=gh(t);if(yp(e.node,n)||yp(t.node,r))return!1}return e.setEditingId===t.setEditingId&&e.setEditTitle===t.setEditTitle&&e.handleSaveEdit===t.handleSaveEdit&&e.handleCancelEdit===t.handleCancelEdit&&e.toggleParent===t.toggleParent&&e.handleSessionSelect===t.handleSessionSelect&&e.handleSessionDoubleClick===t.handleSessionDoubleClick&&e.togglePinnedSession===t.togglePinnedSession&&e.handleShareSession===t.handleShareSession&&e.handleCopyShareUrl===t.handleCopyShareUrl&&e.handleUnshareSession===t.handleUnshareSession&&e.setOpenSidebarMenuKey===t.setOpenSidebarMenuKey&&e.getFoldersForScope===t.getFoldersForScope&&e.getSessionFolderId===t.getSessionFolderId&&e.removeSessionFromFolder===t.removeSessionFromFolder&&e.addSessionToFolder===t.addSessionToFolder&&e.createFolderAndStartRename===t.createFolderAndStartRename&&e.openContextPanelTab===t.openContextPanelTab&&e.handleDeleteSession===t.handleDeleteSession&&e.renderSessionNode===t.renderSessionNode});function Sh(e){return e.stopPropagation()}function Ch(e){return e.stopPropagation()}function wh(e){let t=(0,Ts.c)(71),{t:n}=Fe(),{value:r,setValue:i,showDeletionDialog:a,setShowDeletionDialog:o,onConfirm:s}=e,c,l,u,d,f,p,m,h,g,_;if(t[0]!==i||t[1]!==n||t[2]!==r){let e=n(`sessions.sidebar.session.untitled`);d=mn,g=!!r,t[13]===i?_=t[14]:(_=e=>{e||i(null)},t[13]=i,t[14]=_),u=dn,m=!1,h=`max-w-sm gap-5`,l=ln;let a;t[15]!==n||t[16]!==r?.archivedBucket?(a=r?.archivedBucket?n(`sessions.sidebar.dialogs.deleteSession.title`):n(`sessions.sidebar.dialogs.archiveSession.title`),t[15]=n,t[16]=r?.archivedBucket,t[17]=a):a=t[17],t[18]===a?p=t[19]:(p=(0,$.jsx)(fn,{children:a}),t[18]=a,t[19]=p),c=pn,f=r&&r.descendantCount>0?r.archivedBucket?r.descendantCount===1?n(`sessions.sidebar.dialogs.deleteSession.withOneSubtask`,{sessionTitle:r.session.title||e,count:r.descendantCount}):n(`sessions.sidebar.dialogs.deleteSession.withManySubtasks`,{sessionTitle:r.session.title||e,count:r.descendantCount}):r.descendantCount===1?n(`sessions.sidebar.dialogs.archiveSession.withOneSubtask`,{sessionTitle:r.session.title||e,count:r.descendantCount}):n(`sessions.sidebar.dialogs.archiveSession.withManySubtasks`,{sessionTitle:r.session.title||e,count:r.descendantCount}):r?.archivedBucket?n(`sessions.sidebar.dialogs.deleteSession.single`,{sessionTitle:r?.session.title||e}):n(`sessions.sidebar.dialogs.archiveSession.single`,{sessionTitle:r?.session.title||e}),t[0]=i,t[1]=n,t[2]=r,t[3]=c,t[4]=l,t[5]=u,t[6]=d,t[7]=f,t[8]=p,t[9]=m,t[10]=h,t[11]=g,t[12]=_}else c=t[3],l=t[4],u=t[5],d=t[6],f=t[7],p=t[8],m=t[9],h=t[10],g=t[11],_=t[12];let v;t[20]!==c||t[21]!==f?(v=(0,$.jsx)(c,{children:f}),t[20]=c,t[21]=f,t[22]=v):v=t[22];let y;t[23]!==l||t[24]!==p||t[25]!==v?(y=(0,$.jsxs)(l,{children:[p,v]}),t[23]=l,t[24]=p,t[25]=v,t[26]=y):y=t[26];let b;t[27]!==o||t[28]!==a?(b=()=>o(!a),t[27]=o,t[28]=a,t[29]=b):b=t[29];let x=!a,S;t[30]===a?S=t[31]:(S=a?(0,$.jsx)(Z,{name:`checkbox-blank`,className:`h-4 w-4`}):(0,$.jsx)(Z,{name:`checkbox`,className:`h-4 w-4 text-primary`}),t[30]=a,t[31]=S);let C;t[32]===n?C=t[33]:(C=n(`sessions.sidebar.dialogs.neverAsk`),t[32]=n,t[33]=C);let w;t[34]!==S||t[35]!==C||t[36]!==b||t[37]!==x?(w=(0,$.jsxs)(`button`,{type:`button`,onClick:b,className:`inline-flex items-center gap-1.5 typography-ui-label text-muted-foreground transition-colors hover:text-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-primary/50`,"aria-pressed":x,children:[S,C]}),t[34]=S,t[35]=C,t[36]=b,t[37]=x,t[38]=w):w=t[38];let T;t[39]===i?T=t[40]:(T=()=>i(null),t[39]=i,t[40]=T);let E;t[41]===n?E=t[42]:(E=n(`sessions.sidebar.dialogs.cancel`),t[41]=n,t[42]=E);let D;t[43]!==T||t[44]!==E?(D=(0,$.jsx)(`button`,{type:`button`,onClick:T,className:`inline-flex h-8 items-center justify-center rounded-md border border-border px-3 typography-ui-label text-foreground hover:bg-interactive-hover/50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50`,children:E}),t[43]=T,t[44]=E,t[45]=D):D=t[45];let O;t[46]===s?O=t[47]:(O=()=>void s(),t[46]=s,t[47]=O);let k;t[48]!==n||t[49]!==r?.archivedBucket?(k=r?.archivedBucket?n(`sessions.sidebar.bulkActions.delete`):n(`sessions.sidebar.bulkActions.archive`),t[48]=n,t[49]=r?.archivedBucket,t[50]=k):k=t[50];let A;t[51]!==O||t[52]!==k?(A=(0,$.jsx)(`button`,{type:`button`,onClick:O,className:`inline-flex h-8 items-center justify-center rounded-md bg-destructive px-3 typography-ui-label text-destructive-foreground hover:bg-destructive/90 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-destructive/50`,children:k}),t[51]=O,t[52]=k,t[53]=A):A=t[53];let j;t[54]!==D||t[55]!==A?(j=(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[D,A]}),t[54]=D,t[55]=A,t[56]=j):j=t[56];let M;t[57]!==w||t[58]!==j?(M=(0,$.jsxs)(un,{className:`w-full sm:items-center sm:justify-between`,children:[w,j]}),t[57]=w,t[58]=j,t[59]=M):M=t[59];let N;t[60]!==u||t[61]!==m||t[62]!==M||t[63]!==h||t[64]!==y?(N=(0,$.jsxs)(u,{showCloseButton:m,className:h,children:[y,M]}),t[60]=u,t[61]=m,t[62]=M,t[63]=h,t[64]=y,t[65]=N):N=t[65];let P;return t[66]!==d||t[67]!==N||t[68]!==g||t[69]!==_?(P=(0,$.jsx)(d,{open:g,onOpenChange:_,children:N}),t[66]=d,t[67]=N,t[68]=g,t[69]=_,t[70]=P):P=t[70],P}function Th(e){let t=(0,Ts.c)(57),{t:n}=Fe(),{value:r,setValue:i,showDeletionDialog:a,setShowDeletionDialog:o,onConfirm:s}=e,c=r?.archivedBucket===!0,l=r?.sessionCount??0,u;t[0]!==c||t[1]!==l||t[2]!==n?(u=n(c?l===1?`sessions.sidebar.dialogs.deleteSession.title`:`sessions.sidebar.dialogs.deleteSessions.title`:l===1?`sessions.sidebar.dialogs.archiveSession.title`:`sessions.sidebar.dialogs.archiveSessions.title`),t[0]=c,t[1]=l,t[2]=n,t[3]=u):u=t[3];let d=u,f;t[4]!==c||t[5]!==l||t[6]!==n?(f=n(c?l===1?`sessions.sidebar.dialogs.deleteSessions.singleDescription`:`sessions.sidebar.dialogs.deleteSessions.pluralDescription`:l===1?`sessions.sidebar.dialogs.archiveSessions.singleDescription`:`sessions.sidebar.dialogs.archiveSessions.pluralDescription`,{count:l}),t[4]=c,t[5]=l,t[6]=n,t[7]=f):f=t[7];let p=f,m=!!r,h;t[8]===i?h=t[9]:(h=e=>{e||i(null)},t[8]=i,t[9]=h);let g;t[10]===d?g=t[11]:(g=(0,$.jsx)(fn,{children:d}),t[10]=d,t[11]=g);let _;t[12]===p?_=t[13]:(_=(0,$.jsx)(pn,{children:p}),t[12]=p,t[13]=_);let v;t[14]!==g||t[15]!==_?(v=(0,$.jsxs)(ln,{children:[g,_]}),t[14]=g,t[15]=_,t[16]=v):v=t[16];let y;t[17]!==o||t[18]!==a?(y=()=>o(!a),t[17]=o,t[18]=a,t[19]=y):y=t[19];let b=!a,x;t[20]===a?x=t[21]:(x=a?(0,$.jsx)(Z,{name:`checkbox-blank`,className:`h-4 w-4`}):(0,$.jsx)(Z,{name:`checkbox`,className:`h-4 w-4 text-primary`}),t[20]=a,t[21]=x);let S;t[22]===n?S=t[23]:(S=n(`sessions.sidebar.dialogs.neverAsk`),t[22]=n,t[23]=S);let C;t[24]!==S||t[25]!==y||t[26]!==b||t[27]!==x?(C=(0,$.jsxs)(`button`,{type:`button`,onClick:y,className:`inline-flex items-center gap-1.5 typography-ui-label text-muted-foreground transition-colors hover:text-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-primary/50`,"aria-pressed":b,children:[x,S]}),t[24]=S,t[25]=y,t[26]=b,t[27]=x,t[28]=C):C=t[28];let w;t[29]===i?w=t[30]:(w=()=>i(null),t[29]=i,t[30]=w);let T;t[31]===n?T=t[32]:(T=n(`sessions.sidebar.dialogs.cancel`),t[31]=n,t[32]=T);let E;t[33]!==w||t[34]!==T?(E=(0,$.jsx)(`button`,{type:`button`,onClick:w,className:`inline-flex h-8 items-center justify-center rounded-md border border-border px-3 typography-ui-label text-foreground hover:bg-interactive-hover/50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50`,children:T}),t[33]=w,t[34]=T,t[35]=E):E=t[35];let D;t[36]===s?D=t[37]:(D=()=>void s(),t[36]=s,t[37]=D);let O;t[38]!==c||t[39]!==n?(O=n(c?`sessions.sidebar.bulkActions.delete`:`sessions.sidebar.bulkActions.archive`),t[38]=c,t[39]=n,t[40]=O):O=t[40];let k;t[41]!==D||t[42]!==O?(k=(0,$.jsx)(`button`,{type:`button`,onClick:D,className:`inline-flex h-8 items-center justify-center rounded-md bg-destructive px-3 typography-ui-label text-destructive-foreground hover:bg-destructive/90 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-destructive/50`,children:O}),t[41]=D,t[42]=O,t[43]=k):k=t[43];let A;t[44]!==E||t[45]!==k?(A=(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[E,k]}),t[44]=E,t[45]=k,t[46]=A):A=t[46];let j;t[47]!==C||t[48]!==A?(j=(0,$.jsxs)(un,{className:`w-full sm:items-center sm:justify-between`,children:[C,A]}),t[47]=C,t[48]=A,t[49]=j):j=t[49];let M;t[50]!==j||t[51]!==v?(M=(0,$.jsxs)(dn,{showCloseButton:!1,className:`max-w-sm gap-5`,children:[v,j]}),t[50]=j,t[51]=v,t[52]=M):M=t[52];let N;return t[53]!==m||t[54]!==M||t[55]!==h?(N=(0,$.jsx)(mn,{open:m,onOpenChange:h,children:M}),t[53]=m,t[54]=M,t[55]=h,t[56]=N):N=t[56],N}function Eh(e){let t=(0,Ts.c)(36),{t:n}=Fe(),{value:r,setValue:i,onConfirm:a}=e,o=!!r,s;t[0]===i?s=t[1]:(s=e=>{e||i(null)},t[0]=i,t[1]=s);let c;t[2]===n?c=t[3]:(c=n(`sessions.sidebar.dialogs.deleteFolder.title`),t[2]=n,t[3]=c);let l;t[4]===c?l=t[5]:(l=(0,$.jsx)(fn,{children:c}),t[4]=c,t[5]=l);let u;t[6]!==n||t[7]!==r?(u=r&&(r.subFolderCount>0||r.sessionCount>0)?r.subFolderCount>0?r.subFolderCount===1?n(`sessions.sidebar.dialogs.deleteFolder.withOneSubfolder`,{folderName:r.folderName,count:r.subFolderCount}):n(`sessions.sidebar.dialogs.deleteFolder.withManySubfolders`,{folderName:r.folderName,count:r.subFolderCount}):n(`sessions.sidebar.dialogs.deleteFolder.withContentsNoSubfolders`,{folderName:r.folderName}):n(`sessions.sidebar.dialogs.deleteFolder.single`,{folderName:r?.folderName??``}),t[6]=n,t[7]=r,t[8]=u):u=t[8];let d;t[9]===u?d=t[10]:(d=(0,$.jsx)(pn,{children:u}),t[9]=u,t[10]=d);let f;t[11]!==l||t[12]!==d?(f=(0,$.jsxs)(ln,{children:[l,d]}),t[11]=l,t[12]=d,t[13]=f):f=t[13];let p;t[14]===i?p=t[15]:(p=()=>i(null),t[14]=i,t[15]=p);let m;t[16]===n?m=t[17]:(m=n(`sessions.sidebar.dialogs.cancel`),t[16]=n,t[17]=m);let h;t[18]!==p||t[19]!==m?(h=(0,$.jsx)(`button`,{type:`button`,onClick:p,className:`inline-flex h-8 items-center justify-center rounded-md border border-border px-3 typography-ui-label text-foreground hover:bg-interactive-hover/50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50`,children:m}),t[18]=p,t[19]=m,t[20]=h):h=t[20];let g;t[21]===n?g=t[22]:(g=n(`sessions.sidebar.bulkActions.delete`),t[21]=n,t[22]=g);let _;t[23]!==a||t[24]!==g?(_=(0,$.jsx)(`button`,{type:`button`,onClick:a,className:`inline-flex h-8 items-center justify-center rounded-md bg-destructive px-3 typography-ui-label text-destructive-foreground hover:bg-destructive/90 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-destructive/50`,children:g}),t[23]=a,t[24]=g,t[25]=_):_=t[25];let v;t[26]!==_||t[27]!==h?(v=(0,$.jsxs)(un,{children:[h,_]}),t[26]=_,t[27]=h,t[28]=v):v=t[28];let y;t[29]!==v||t[30]!==f?(y=(0,$.jsxs)(dn,{showCloseButton:!1,className:`max-w-sm gap-5`,children:[f,v]}),t[29]=v,t[30]=f,t[31]=y):y=t[31];let b;return t[32]!==o||t[33]!==s||t[34]!==y?(b=(0,$.jsx)(mn,{open:o,onOpenChange:s,children:y}),t[32]=o,t[33]=s,t[34]=y,t[35]=b):b=t[35],b}var Dh=e=>{let t=(0,Ts.c)(46),{selectedCount:n,scopeKey:r,scopeFolders:i,archivedBucket:a,onMoveToFolder:o,onCreateFolderAndMove:s,onRemoveFromFolder:c,canRemoveFromFolder:l,onDelete:u,onDone:d}=e,{t:f}=Fe(),p=!!r&&!a,m;t[0]!==a||t[1]!==f?(m=f(a?`sessions.sidebar.bulkActions.delete`:`sessions.sidebar.bulkActions.archive`),t[0]=a,t[1]=f,t[2]=m):m=t[2];let h=m,g;t[3]!==n||t[4]!==f?(g=f(`sessions.sidebar.bulkActions.selectedCount`,{count:n}),t[3]=n,t[4]=f,t[5]=g):g=t[5];let _;t[6]===g?_=t[7]:(_=(0,$.jsx)(`span`,{className:`typography-ui-label text-muted-foreground whitespace-nowrap`,children:g}),t[6]=g,t[7]=_);let v;t[8]!==p||t[9]!==l||t[10]!==s||t[11]!==o||t[12]!==c||t[13]!==i||t[14]!==f?(v=p?(0,$.jsxs)(Si,{children:[(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(Oi,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,className:`inline-flex h-7 w-7 items-center justify-center rounded-md text-muted-foreground hover:bg-interactive-hover/50 hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50`,"aria-label":f(`sessions.sidebar.bulkActions.moveToFolder`),children:(0,$.jsx)(Z,{name:`folder`,className:`h-4 w-4`})})})}),(0,$.jsx)(Zr,{side:`top`,sideOffset:4,children:(0,$.jsx)(`p`,{children:f(`sessions.sidebar.bulkActions.moveToFolder`)})})]}),(0,$.jsxs)(Di,{align:`end`,className:`min-w-[180px]`,children:[i.length===0?(0,$.jsx)(ki,{disabled:!0,className:`text-muted-foreground`,children:f(`sessions.sidebar.folders.none`)}):i.map(e=>(0,$.jsx)(ki,{onClick:()=>o(e.id),children:(0,$.jsx)(`span`,{className:`flex-1 truncate`,children:e.name})},e.id)),(0,$.jsx)(li,{}),(0,$.jsxs)(ki,{onClick:s,children:[(0,$.jsx)(Z,{name:`add`,className:`mr-1 h-4 w-4`}),f(`sessions.sidebar.folders.newFolderEllipsis`)]}),l?(0,$.jsxs)(ki,{onClick:c,className:`text-destructive focus:text-destructive`,children:[(0,$.jsx)(Z,{name:`close`,className:`mr-1 h-4 w-4`}),f(`sessions.sidebar.folders.removeFromFolder`)]}):null]})]}):null,t[8]=p,t[9]=l,t[10]=s,t[11]=o,t[12]=c,t[13]=i,t[14]=f,t[15]=v):v=t[15];let y;t[16]===Symbol.for(`react.memo_cache_sentinel`)?(y=X(`inline-flex h-7 w-7 items-center justify-center rounded-md text-destructive hover:bg-destructive/10 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-destructive/50`),t[16]=y):y=t[16];let b;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(b=(0,$.jsx)(Z,{name:`delete-bin`,className:`h-4 w-4`}),t[17]=b):b=t[17];let x;t[18]!==h||t[19]!==u?(x=(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,onClick:u,className:y,"aria-label":h,children:b})}),t[18]=h,t[19]=u,t[20]=x):x=t[20];let S;t[21]===h?S=t[22]:(S=(0,$.jsx)(Zr,{side:`top`,sideOffset:4,children:(0,$.jsx)(`p`,{children:h})}),t[21]=h,t[22]=S);let C;t[23]!==x||t[24]!==S?(C=(0,$.jsxs)($r,{children:[x,S]}),t[23]=x,t[24]=S,t[25]=C):C=t[25];let w;t[26]===f?w=t[27]:(w=f(`sessions.sidebar.header.actions.exitSelection`),t[26]=f,t[27]=w);let T;t[28]===Symbol.for(`react.memo_cache_sentinel`)?(T=(0,$.jsx)(Z,{name:`close`,className:`h-4 w-4`}),t[28]=T):T=t[28];let E;t[29]!==d||t[30]!==w?(E=(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,onClick:d,className:`inline-flex h-7 w-7 items-center justify-center rounded-md text-muted-foreground hover:bg-interactive-hover/50 hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50`,"aria-label":w,children:T})}),t[29]=d,t[30]=w,t[31]=E):E=t[31];let D;t[32]===f?D=t[33]:(D=f(`sessions.sidebar.header.actions.exitSelection`),t[32]=f,t[33]=D);let O;t[34]===D?O=t[35]:(O=(0,$.jsx)(Zr,{side:`top`,sideOffset:4,children:(0,$.jsx)(`p`,{children:D})}),t[34]=D,t[35]=O);let k;t[36]!==E||t[37]!==O?(k=(0,$.jsxs)($r,{children:[E,O]}),t[36]=E,t[37]=O,t[38]=k):k=t[38];let A;t[39]!==k||t[40]!==v||t[41]!==C?(A=(0,$.jsxs)(`div`,{className:`ml-auto flex items-center gap-0.5`,children:[v,C,k]}),t[39]=k,t[40]=v,t[41]=C,t[42]=A):A=t[42];let j;return t[43]!==A||t[44]!==_?(j=(0,$.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1 border-t border-border px-2.5 py-1.5`,children:[_,A]}),t[43]=A,t[44]=_,t[45]=j):j=t[45],j},Oh=e=>{let{t}=Fe(),{isInlineEditing:n,showDeletionDialog:r,foldersMap:i,addSessionsToFolder:a,removeSessionsFromFolders:o,createFolderAndStartRename:s,archiveSessions:c,setBulkDeleteConfirm:l}=e,u=vm(e=>e.enabled),d=vm(e=>e.selectedIds.size),f=d>0,p=vm(e=>e.selectedIds),m=vm(e=>e.scopeKey),h=Q.useCallback(()=>{vm.getState().toggleMode()},[]),g=Q.useCallback(()=>{vm.getState().disable()},[]),_=Q.useMemo(()=>{if(!f||typeof document>`u`)return!1;let e=!1,t=!1;for(let n of p){let r=document.querySelectorAll(`[data-session-row="${CSS.escape(n)}"]`);for(let n of r)n.getAttribute(`data-session-archived`)===`1`?t=!0:e=!0}return t&&!e},[f,p]),v=Q.useMemo(()=>{if(m)return m;if(!f||typeof document>`u`)return null;for(let e of p){let t=document.querySelector(`[data-session-row="${CSS.escape(e)}"]`)?.getAttribute(`data-session-scope`);if(t&&t.length>0)return t}return null},[f,p,m]),y=Q.useMemo(()=>v?i[v]??[]:[],[i,v]),b=Q.useMemo(()=>{if(!v||!f)return!1;let e=i[v]??[];for(let t of e)for(let e of t.sessionIds)if(p.has(e))return!0;return!1},[i,v,f,p]),x=Q.useCallback(e=>{!v||!f||a(v,e,Array.from(p))},[a,p,v,f]),S=Q.useCallback(()=>{if(!v||!f)return;let e=s(v);e&&a(v,e.id,Array.from(p))},[a,s,p,v,f]),C=Q.useCallback(()=>{!v||!f||o(v,Array.from(p))},[o,p,v,f]),w=Q.useCallback(async()=>{let e=Array.from(p);if(e.length!==0){if(_)Ko({sessionIds:e,message:e.length===1?t(`sessions.sidebar.bulkActions.deletedSingle`,{count:e.length}):t(`sessions.sidebar.bulkActions.deletedPlural`,{count:e.length}),undoLabel:t(`sessions.sidebar.undo`),commitFailedMessage:e.length===1?t(`sessions.sidebar.bulkActions.failedDeleteSingle`,{count:e.length}):t(`sessions.sidebar.bulkActions.failedDeletePlural`,{count:e.length})});else{let{archivedIds:n,failedIds:r}=await c(e);n.length>0&&So({sessionIds:n,message:n.length===1?t(`sessions.sidebar.bulkActions.archivedSingle`,{count:n.length}):t(`sessions.sidebar.bulkActions.archivedPlural`,{count:n.length}),undoLabel:t(`sessions.sidebar.undo`),settingsLabel:t(`settings.openchamber.archivedSessions.actions.view`),undoFailedMessage:n.length===1?t(`sessions.sidebar.session.archive.undoFailed`):t(`sessions.sidebar.bulkActions.archiveUndoFailed`,{count:n.length})}),r.length>0&&Y.error(r.length===1?t(`sessions.sidebar.bulkActions.failedArchiveSingle`,{count:r.length}):t(`sessions.sidebar.bulkActions.failedArchivePlural`,{count:r.length}))}vm.getState().clear()}},[c,_,p,t]),T=Q.useCallback(()=>{if(!f)return;let e=p.size;if(!_||!r){w();return}l({sessionCount:e,archivedBucket:_})},[_,w,p,r,l,f]),E=Q.useCallback(async()=>{l(null),await w()},[w]);return Q.useEffect(()=>{if(!u)return;let e=typeof navigator<`u`&&/Macintosh|Mac OS X/.test(navigator.userAgent||``),t=t=>{if(n)return;let r=t.target;if(r&&(r.tagName===`INPUT`||r.tagName===`TEXTAREA`||r.isContentEditable))return;let i=e?t.metaKey:t.ctrlKey;if(t.key===`Escape`){t.preventDefault(),vm.getState().disable();return}if(i&&t.key===`Backspace`){t.preventDefault(),T();return}if(i&&(t.key===`a`||t.key===`A`)){let e=typeof document<`u`?Array.from(document.querySelectorAll(`[data-session-row]`)):[];if(e.length===0)return;t.preventDefault();let n=vm.getState().scopeKey??e[0]?.getAttribute(`data-session-scope`)??null,r=e.filter(e=>!n||e.getAttribute(`data-session-scope`)===n).map(e=>e.getAttribute(`data-session-row`)).filter(e=>typeof e==`string`&&e.length>0);if(r.length===0)return;vm.getState().replaceAll(r,n||null)}};return window.addEventListener(`keydown`,t),()=>window.removeEventListener(`keydown`,t)},[T,n,u]),{selectionModeEnabled:u,hasSelection:f,selectedIdsSize:d,bulkScopeIsArchived:_,derivedSelectionScope:v,bulkScopeFolders:y,bulkCanRemoveFromFolder:b,handleToggleSelectionMode:h,handleExitSelectionMode:g,handleBulkMoveToFolder:x,handleBulkCreateFolderAndMove:S,handleBulkRemoveFromFolder:C,handleBulkDelete:T,confirmBulkDelete:E}},kh=(e,t,n)=>{let r=[],i=new Set,a=e=>{let t=p(e??null);!t||i.has(t)||(i.add(t),r.push(t))};if(a(e),a(n?.workspaceRoot),a(n?.currentDirectory),n?.includeWorktrees!==!1)for(let e of t)a(e.path);return r},Ah=(e,t,n,r)=>{let i=e.filter(e=>e.sessionId===t);if(i.length===0)return null;if(n){let e=i.find(e=>e.projectId===n);if(e)return e}if(r){let e=i.find(e=>e.projectId===r);if(e)return e}return i[0]??null},jh=({currentSessionId:e,focus:t,pinnedFocuses:n,projectFocuses:r,fallbackProjectId:i})=>{if(!e)return null;let a=t?.sessionId===e,o=a?t.projectId:null,s=Ah(r,e,o,i)??{scope:`project`,sessionId:e,projectId:i};return!a||t.scope===`project`?s:Ah(n,e,o,i)??s};function Mh(e,t,n=null){if(!e||e.scope!==`project`||!e.sessionId)return null;if(e.projectId){let n=t.find(t=>t.sessionId===e.sessionId&&t.projectId===e.projectId);if(n)return n}if(n){let r=t.find(t=>t.sessionId===e.sessionId&&t.projectId===n);if(r)return r}return t.find(t=>t.sessionId===e.sessionId)??null}var Nh=`oc.sessions.projectCollapse`,Ph=`oc.sessions.groupOrder`,Fh=`oc.sessions.groupCollapse`,Ih=`oc.sessions.activeSessionByProject`,Lh=`oc.sessions.expandedParents.v2`,Rh=`oc.sessions.expandedParents`,zh=h(s()),Bh=e=>{try{let t=zh.getItem(e);if(!t)return new Set;let n=JSON.parse(t);return new Set(Array.isArray(n)?n.filter(e=>typeof e==`string`):[])}catch{return new Set}},Vh=e=>{try{let t=zh.getItem(e);if(!t)return new Map;let n=JSON.parse(t),r=new Map;return!n||typeof n!=`object`||Array.isArray(n)||Object.entries(n).forEach(([e,t])=>{typeof t==`string`&&t.length>0&&r.set(e,t)}),r}catch{return new Map}},Hh=e=>{try{let t=zh.getItem(e);if(!t)return new Map;let n=JSON.parse(t),r=new Map;return!n||typeof n!=`object`||Array.isArray(n)||Object.entries(n).forEach(([e,t])=>{Array.isArray(t)&&r.set(e,t.filter(e=>typeof e==`string`))}),r}catch{return new Map}},Uh=(e,t,n)=>{let r=new Set;for(let t of e){let e=p(t.path)?.toLowerCase();e&&r.add(e)}if(n?.includeWorktrees===!1)return r;for(let e of t.values())for(let t of e){let e=p(t.path)?.toLowerCase();e&&r.add(e)}return r},Wh=(e,t,n)=>{if(e.time?.archived)return!0;let r=p(Rt(e))?.toLowerCase();return r?t.size===0?n?.allowEmptyDirectorySet??!0:t.has(r):n?.allowUnknownDirectory??!0},Gh=3e5,Kh=new Set,qh=[],Jh={},Yh=e=>{let t=Q.useRef(e);return t.current=e,Q.useCallback((...e)=>t.current(...e),[])},Xh=({mobileVariant:e=!1,onSessionSelected:n,allowReselect:r=!1,hideDirectoryControls:i=!1,showOnlyMainWorkspace:a=!1,isVisible:o=!0})=>{let{t:s}=Fe(),[l,d]=Q.useState(!1),[f,h]=Q.useState(!1),[g,_]=Q.useState(``),v=Q.useRef(null),y=Q.useRef(null),b=Q.useRef(new Set),[x,S]=Q.useState(null),[C,w]=Q.useState(``),[E,D]=Q.useState(null),[O,k]=Q.useState(new Set),A=Q.useMemo(()=>zh,[]),[j,M]=Q.useState(new Set),[N,P]=Q.useState(new Map),[F,I]=Q.useState(new Map),L=u(e=>e.isNewWorktreeDialogOpen),R=u(e=>e.setNewWorktreeDialogOpen),[z,B]=Q.useState(null),[V,H]=Q.useState(null),[U,W]=Q.useState(``),[ee,G]=Q.useState(null),[te,K]=Q.useState(null),[ne,re]=Q.useState(null),ae=Gt(),oe=zt(),[se,q]=Q.useState(()=>Bh(Fh)),[ce,le]=Q.useState(()=>Hh(Ph)),[ue,de]=Q.useState(()=>Vh(Ih));Q.useEffect(()=>t(e=>{c(e)&&(q(Bh(Fh)),le(Hh(Ph)),de(Vh(Ih)),M(Bh(Nh)),k(Bh(Lh)))}),[]);let[fe,pe]=Q.useState(new Map),me=Q.useRef(new Map),he=Q.useRef(0),_e=ge(e=>e.homeDirectory),ve=ge(e=>e.currentDirectory),ye=ge(e=>e.setDirectory),be=vt(e=>e.projects),xe=vt(e=>e.activeProjectId),Se=vt(e=>e.removeProject),Ce=vt(e=>e.setActiveProjectIdOnly),we=vt(e=>e.updateProjectMeta),Te=vt(e=>e.reorderProjectsById),Ee=u(e=>e.setActiveMainTab),De=u(e=>e.activeMainTab),Oe=sn(),ke=u(e=>e.openContextPanelTab),Ae=u(e=>e.setSettingsDialogOpen),je=u(e=>e.toggleHelpDialog),Me=u(e=>e.setSessionSwitcherOpen),Ne=u(e=>e.setScheduledTasksDialogOpen),Pe=u(e=>e.notifyOnSubtasks),Ie=u(e=>e.showDeletionDialog),Le=u(e=>e.setShowDeletionDialog),Re=Qi(g,120),ze=Q.useMemo(()=>Re.trim().toLowerCase(),[Re]),Ve=ze.length>0,He=La(ie(e=>({checkForUpdates:e.checkForUpdates,available:e.available,runtimeType:e.runtimeType,info:e.info,downloading:e.downloading,downloaded:e.downloaded,progress:e.progress,error:e.error,downloadUpdate:e.downloadUpdate,restartToUpdate:e.restartToUpdate}))),Ue=Bt(e=>e.collapsedFolderIds),We=Bt(e=>e.foldersMap),Ge=Bt(e=>e.sessionOrderByScope),Ke=Bt(e=>e.sessionOrderActivityByScope),qe=Bt(e=>e.getFoldersForScope),Je=Bt(e=>e.createFolder),Ye=Bt(e=>e.renameFolder),Xe=Bt(e=>e.deleteFolder),J=Bt(e=>e.addSessionToFolder),Ze=Bt(e=>e.addSessionsToFolder),Qe=Bt(e=>e.removeSessionFromFolder),$e=Bt(e=>e.removeSessionsFromFolders),et=Bt(e=>e.toggleFolderCollapse),tt=Bt(e=>e.cleanupSessions),rt=Bt(e=>e.getSessionFolderId),it=Bt(e=>e.reorderSessions);ef({isSessionSearchOpen:o&&f,setIsSessionSearchOpen:h,sessionSearchInputRef:y,sessionSearchContainerRef:v});let at=Q.useMemo(()=>new Map,[]),ot=ct({enabled:o}),st=Po({enabled:o}),lt=To({enabled:o}),ut=Mt(e=>o?e.index.session.unseenCount:Jh),dt=Q.useMemo(()=>m(),[]),ft=Tt(e=>e.fullCatalogSessionIds),pt=Tt(e=>e.fullCatalogGeneration),mt=Tt(e=>e.status),gt=Tt(e=>e.activeSessions),_t=Tt(e=>e.archivedSessions),yt=Tt(e=>e.loadingDirectories),bt=Tt(e=>e.refreshingDirectories),Et=Tt(e=>e.archivedLoadingDirectories),Dt=Q.useDeferredValue(gt),Ot=Q.useDeferredValue(_t),kt=Ft(e=>e.currentSessionId),At=fr(e=>e.focus),jt=Q.useSyncExternalStore(wt,St,St),Nt=Ft(e=>!!e.newSessionDraft?.open),Pt=Ft(e=>e.setCurrentSession),It=Ft(e=>e.updateSessionTitle),Lt=Ft(e=>e.shareSession),Vt=Ft(e=>e.unshareSession),Ht=Ft(e=>e.worktreeMetadata),Wt=Ft(e=>e.availableWorktreesByProject),Kt=Ft(e=>e.openNewSessionDraft),qt=Q.useCallback(e=>{Kt(e),dt&&window.dispatchEvent(new CustomEvent(`openchamber:navigate`,{detail:{view:`chat`}}))},[dt,Kt]),Jt=Q.useMemo(()=>Uh(be,Wt,{includeWorktrees:!dt}),[Wt,dt,be]),Yt=Q.useMemo(()=>{let e=new Map(ot.map(e=>[e.id,e])),t=Dt.map(t=>{let n=e.get(t.id);return n?Ut(n,t):t}),n=new Set(t.map(e=>e.id));return ot.forEach(e=>{n.has(e.id)||t.push(e)}),t.filter(e=>Wh(e,Jt,{allowUnknownDirectory:!dt,allowEmptyDirectorySet:!dt}))},[Dt,dt,Jt,ot]),Zt=Q.useMemo(()=>ot.map(e=>{let t=p(e.directory??null)??``;return`${e.id}:${e.title??``}:${+!!e.time?.archived}:${t}`}).join(`|`),[ot]),$t=Q.useRef(ot);Q.useEffect(()=>{$t.current=ot},[Zt,ot]);let en=Q.useMemo(()=>new Map(ot.map(e=>[e.id,e])),[ot]);Q.useEffect(()=>{let e=null,t=nt(t=>{t.type===`scheduled-task-ran`&&(e&&clearTimeout(e),e=setTimeout(()=>{let e=vt.getState().projects.find(e=>e.id===t.projectId),n=p(e?.path??null);if(!n)return;let r=[n];(Ft.getState().availableWorktreesByProject.get(n)??[]).forEach(e=>{let t=p(e.path);t&&r.push(t)}),xt(r,$t.current)},500))});return()=>{e&&clearTimeout(e),t()}},[]);let tn=Q.useMemo(()=>T(),[]),nn=Ga(e=>e.sidebarBrandName.trim().length>0),{isTablet:rn}=Ai(),an=e||rn,{buildGroupSearchText:on,filterSessionNodesForSearch:ln,buildGroupedSessions:un}=$d({homeDirectory:_e,worktreeMetadata:Ht,pinnedSessionIds:ae,gitBranches:at,isVSCode:dt}),{scheduleCollapsedProjectsPersist:dn,hasRestoredProjectCollapse:fn}=cf({isVSCode:dt,safeStorage:A,keys:{sessionExpanded:Lh,sessionExpandedLegacy:Rh,projectCollapse:Nh,groupOrder:Ph,projectActiveSession:Ih,groupCollapse:Fh},groupOrderByProject:ce,activeSessionByProject:ue,collapsedGroups:se,setExpandedParents:k,setCollapsedProjects:M}),pn=Q.useMemo(()=>[...Yt].sort((e,t)=>Gn(e,t,ae)),[Yt,ae]),mn=Q.useMemo(()=>{let e=new Map;return pn.forEach(t=>{let n=t.parentID;if(!n)return;let r=e.get(n)??[];r.push(t),e.set(n,r)}),e.forEach(e=>e.sort((e,t)=>Gn(e,t,ae))),e},[pn,ae]),hn=(0,$.jsxs)(`div`,{className:`py-6 text-center text-muted-foreground`,children:[(0,$.jsx)(`p`,{className:`typography-ui-label font-semibold`,children:s(`sessions.sidebar.empty.noSessions.title`)}),(0,$.jsx)(`p`,{className:`typography-meta mt-1`,children:s(`sessions.sidebar.empty.noSessions.description`)})]}),gn=Q.useMemo(()=>be.find(e=>e.id===E)??null,[be,E]),vn=Q.useCallback(e=>{E&&we(E,{label:e.label,icon:e.icon,color:e.color,iconBackground:e.iconBackground,defaultModel:e.defaultModel??null})},[E,we]),yn=Q.useCallback(()=>{R(!0)},[R]),bn=Q.useCallback((t,n)=>{if(Ee(`chat`),e&&Me(!1),n?.sessionId){Pt(n.sessionId,t);return}Kt({directoryOverride:t,preserveDirectoryOverride:!0})},[e,Kt,Ee,Pt,Me]),xn=Q.useCallback(()=>{let e=La.getState();if(e.available&&e.info){d(!0);return}He.checkForUpdates().then(()=>{let{available:e,error:t}=La.getState();if(t){Y.error(s(`sessions.sidebar.updateCheck.errorTitle`),{description:t});return}if(!e){Y.success(s(`sessions.sidebar.updateCheck.latestVersion`));return}d(!0)})},[s,He]),Cn=Q.useCallback(()=>{e&&Me(!1),Ae(!0)},[e,Me,Ae]),wn=Q.useCallback(()=>{Ee(`chat`),Kt(),e&&Me(!1)},[e,Kt,Ee,Me]),Tn=Q.useCallback(()=>{if(!e){Ee(`schedule`);return}Ne(!0),Me(!1)},[e,Ee,Ne,Me]),En=Q.useCallback(()=>{cn(),e&&Me(!1)},[e,Me]),Dn=He.available&&(He.runtimeType===`desktop`||He.runtimeType===`web`),On=Ft(e=>e.archiveSession),kn=Ft(e=>e.archiveSessions),{copiedSessionId:An,handleSessionSelect:jn,handleSessionDoubleClick:Mn,handleSaveEdit:Nn,handleCancelEdit:Pn,handleShareSession:Fn,handleCopyShareUrl:In,handleUnshareSession:Ln,handleDeleteSession:Rn,confirmDeleteSession:zn}=tf({activeProjectId:xe,currentDirectory:ve,currentSessionId:kt,mobileVariant:e,allowReselect:r,onSessionSelected:n,isSessionSearchOpen:f,sessionSearchQuery:g,setSessionSearchQuery:_,setIsSessionSearchOpen:h,setActiveProjectIdOnly:Ce,setDirectory:ye,setActiveMainTab:Ee,setSessionSwitcherOpen:Me,setCurrentSession:Pt,updateSessionTitle:It,shareSession:Lt,unshareSession:Vt,archiveSession:On,archiveSessions:kn,childrenMap:mn,showDeletionDialog:Ie,setDeleteSessionConfirm:G,deleteSessionConfirm:ee,setEditingId:S,setEditTitle:w,editingId:x,editTitle:C}),Bn=Q.useCallback((e,t,n,r=`project`)=>{let i={sessionId:e,scope:r,projectId:n??null};if(e===kt){Qt(e),sh(i),jn(e,t,n);return}ah(i,()=>jn(e,t,n))},[jn,kt]);Q.useEffect(()=>()=>{ih()},[]);let Vn=Q.useCallback(()=>{if(!te)return;let{scopeKey:e,folderId:t}=te;K(null),Xe(e,t)},[te,Xe]);Q.useEffect(()=>{if(!kt)return;let e=Yt.find(e=>e.id===kt)?.parentID;if(!e)return;let t=[`project:active:${e}`,`project:archived:${e}`,`recent:active:${e}`,`recent:archived:${e}`];k(e=>{if(t.every(t=>e.has(t)))return e;let n=new Set(e);t.forEach(e=>n.add(e));try{A.setItem(Lh,JSON.stringify(Array.from(n)))}catch{}return n})},[kt,Yt,A]);let Hn=Q.useCallback(e=>{k(t=>{let n=new Set(t);n.has(e)?n.delete(e):n.add(e);try{A.setItem(Lh,JSON.stringify(Array.from(n)))}catch{}return n})},[A]),Un=Q.useCallback((e,t)=>{if(!e)return null;t&&Ue.has(t)&&et(t);let n=Je(e,s(`sessions.sidebar.folder.newFolderName`),t);return H(n.id),W(n.name),n},[Ue,et,Je,s]),Wn=Yh(Bn),Kn=Yh(Mn),qn=Yh(Nn),Jn=Yh(Pn),Yn=Yh(Fn),Xn=Yh(In),Zn=Yh(Ln),Qn=Yh(Rn),$n=Yh(Un),er=Q.useCallback((e,t,n,r)=>{let i=jo(),a=Math.max(i,n)+7;if(I(e=>{let r=Math.max(i,e.get(t)??i,n),a=new Map(e);return a.set(t,r+7),a}),e.isArchivedBucket||a<r)return;let o=p(e.directory??null);if(!o)return;let s=Tt.getState().activePaginationByDirectory.get(o);s?.hasMore&&!s.loadingMore&&ht(o)},[]),tr=Q.useCallback(e=>{I(t=>{if(!t.has(e))return t;let n=new Map(t);return n.delete(e),n})},[]),nr=Q.useCallback(e=>{I(t=>{let n=!1,r=new Map(t),i=`${e}:`;for(let e of r.keys())e.startsWith(i)&&(r.delete(e),n=!0);return n?r:t})},[]),rr=Q.useCallback(e=>{let t=be.find(t=>t.id===e),n=p(t?.path??null);if(!n)return[];let r=[n];return dt||(Wt.get(n)??[]).forEach(e=>{let t=p(e.path);t&&r.push(t)}),r},[Wt,dt,be]),ir=Q.useCallback(e=>{let t=rr(e);if(t.length===0)return;let n=Tt.getState().loadedDirectories,r=t.filter(e=>!n.has(e));r.length!==0&&xt(r,$t.current)},[rr]),ar=Q.useCallback(e=>{let t=be.find(t=>t.id===e);t&&(async()=>{let e=[];if(!dt)try{e=(await Lr({id:t.id,path:t.path})).worktrees}catch(n){console.warn(`[SessionSidebar] Worktree refresh before session sync failed:`,n);let r=p(t.path);e=r?Ft.getState().availableWorktreesByProject.get(r)??[]:[]}let n=kh(t.path,e,{currentDirectory:ve,workspaceRoot:t.path,includeWorktrees:!dt});n.length!==0&&await Ct(n,$t.current)})()},[ve,dt,be]);Q.useEffect(()=>{if(!fn)return;let e=Tt.getState(),t=be.flatMap(t=>j.has(t.id)?[]:rr(t.id).filter(t=>!e.loadedDirectories.has(t)&&!e.loadingDirectories.has(t)&&!e.refreshingDirectories.has(t)));t.length>0&&xt(t,$t.current)},[j,rr,fn,be]);let or=Q.useCallback(()=>{he.current=Date.now()+150,I(new Map),M(()=>{let e=new Set(be.map(e=>e.id));try{A.setItem(Nh,JSON.stringify(Array.from(e)))}catch{}return dt||dn(e),e})},[be,dt,A,dn]),sr=Q.useCallback(()=>{he.current=Date.now()+150,I(new Map),M(()=>{let e=new Set;try{A.setItem(Nh,JSON.stringify([]))}catch{}return dt||dn(e),e});let e=Tt.getState().loadedDirectories,t=be.flatMap(t=>rr(t.id).filter(t=>!e.has(t)));t.length>0&&xt(t,$t.current)},[rr,dt,be,A,dn]),cr=Q.useCallback(e=>{he.current=Date.now()+150,nr(e),M(t=>{let n=new Set(t);n.has(e)?(n.delete(e),queueMicrotask(()=>ir(e))):n.add(e);try{A.setItem(Nh,JSON.stringify(Array.from(n)))}catch{}return dt||dn(n),n})},[ir,dt,nr,A,dn]),lr=Q.useCallback(e=>{he.current=Date.now()+150,ir(e),M(t=>{if(!t.has(e))return t;let n=new Set(t);n.delete(e);try{A.setItem(Nh,JSON.stringify(Array.from(n)))}catch{}return dt||dn(n),n})},[ir,dt,A,dn]),ur=Q.useMemo(()=>be.map(e=>({...e,normalizedPath:p(e.path)})).filter(e=>!!e.normalizedPath),[be]),dr=Q.useMemo(()=>ur.map(e=>e.normalizedPath),[ur]),pr=Q.useMemo(()=>{let e=new Set(ur.map(e=>e.normalizedPath));if(!dt)for(let t of Wt.values())for(let n of t){let t=p(n.path);t&&e.add(t)}return[...e].sort()},[Wt,dt,ur]),hr=Q.useRef(null);Q.useEffect(()=>{let e=new Set(pr),t=hr.current;if(hr.current=e,!t)return;let n=pr.filter(e=>!t.has(e));if(n.length===0)return;let r=Tt.getState().loadedDirectories,i=p(ve),a=ur.find(e=>e.id===xe)??ur.find(e=>e.normalizedPath===i)??null,o=new Set;i&&o.add(i),a?.normalizedPath&&(o.add(a.normalizedPath),dt||(Wt.get(a.normalizedPath)??[]).forEach(e=>{let t=p(e.path);t&&o.add(t)}));let s=n.filter(e=>o.has(e)&&!r.has(e));s.length!==0&&xt(s,$t.current)},[xe,Wt,ve,dt,ur,pr]);let{github:_r}=Xi(),vr=wi(),yr=vr.data??null,br=vr.isFetched,Sr=oa(o?dr:qh),Cr=qf(e=>e.ensureEntry),wr=qf(e=>e.setParams),Tr=qf(e=>e.refreshTargets);uf({normalizedProjects:ur,activeProjectId:xe,gitRepoStatus:Sr,setProjectRepoStatus:P,setProjectRootBranches:pe,enabled:o});let Er=Ft(e=>e.isLoading),kr=Q.useMemo(()=>Wo(Yt,ur,Wt,dt,Ot),[Ot,Wt,dt,ur,Yt]);ff({isSessionsLoading:Er,fullCatalogSessionIds:ft,fullCatalogGeneration:pt,normalizedProjects:ur,cleanupSessions:tt});let{getSessionsForProject:Ar,getArchivedSessionsForProject:jr}=df({ownership:kr}),Mr=Q.useMemo(()=>{let e=new Set;if(yt.size===0)return e;for(let t of ur){let n=[t.normalizedPath];dt||(Wt.get(t.normalizedPath)??[]).forEach(e=>{let t=p(e.path);t&&n.push(t)}),n.some(e=>yt.has(e))&&e.add(t.id)}return e},[Wt,dt,yt,ur]),Nr=Q.useMemo(()=>{let e=new Set;if(bt.size===0)return e;for(let t of ur)rr(t.id).some(e=>bt.has(e))&&e.add(t.id);return e},[rr,ur,bt]),Pr=yt.size>0||bt.size>0||mt===`idle`||mt===`loading`;Kd({normalizedProjects:ur,ownership:kr,isSessionsLoading:Er,fullCatalogSessionIds:ft,fullCatalogGeneration:pt,foldersMap:We,createFolder:Je,addSessionToFolder:J,cleanupSessions:tt,enabled:o});let Fr=Q.useRef(!1);xe&&N.has(xe)&&(Fr.current=!!N.get(xe));let Ir=Sp(e=>e.projectSortOrder),Rr=vt(e=>e.manualProjectOrder),zr=Q.useMemo(()=>{let e=[...ur];switch(Ir){case`a-z`:e.sort((e,t)=>{let n=(e.label||e.path).toLowerCase(),r=(t.label||t.path).toLowerCase();return n.localeCompare(r)});break;case`z-a`:e.sort((e,t)=>{let n=(e.label||e.path).toLowerCase();return(t.label||t.path).toLowerCase().localeCompare(n)});break;case`date-added`:e.sort((e,t)=>(t.addedAt??0)-(e.addedAt??0));break;case`recent`:e.sort((e,t)=>(t.lastOpenedAt??0)-(e.lastOpenedAt??0));break;case`manual`:{let t=new Map(Rr.map((e,t)=>[e,t]));e.sort((e,n)=>(t.get(e.id)??1/0)-(t.get(n.id)??1/0));break}}return e},[ur,Ir,Rr]),{projectSections:Br,groupSearchDataByGroup:Vr,sectionsForRender:Hr,searchMatchCount:Ur}=Jd({normalizedProjects:zr,getSessionsForProject:Ar,getArchivedSessionsForProject:jr,availableWorktreesByProject:Wt,projectRepoStatus:N,projectRootBranches:fe,lastRepoStatus:Fr.current,buildGroupedSessions:un,hasSessionSearchQuery:Ve,normalizedSessionSearchQuery:ze,filterSessionNodesForSearch:ln,buildGroupSearchText:on,foldersMap:We}),Wr=(0,$.jsxs)(`div`,{className:`py-6 text-center text-muted-foreground`,children:[(0,$.jsx)(`p`,{className:`typography-ui-label font-semibold`,children:s(`sessions.sidebar.empty.noMatches.title`)}),(0,$.jsx)(`p`,{className:`typography-meta mt-1`,children:s(`sessions.sidebar.empty.noMatches.description`)})]});Xd({projectSections:Br,activeProjectId:xe,activeSessionByProject:ue,setActiveSessionByProject:de,currentSessionId:kt,handleSessionSelect:jn,newSessionDraftOpen:Nt,mobileVariant:e,openNewSessionDraft:Kt,setActiveMainTab:Ee,setSessionSwitcherOpen:Me});let{getOrderedGroups:Gr}=Zd(ce),Kr=Q.useRef(!1);Q.useEffect(()=>{if(Kr.current||Br.length===0)return;let e=Br.flatMap(e=>e.groups.filter(e=>e.isArchivedBucket).map(t=>`${e.project.id}:${t.id}`));e.length>0&&q(t=>new Set([...t,...e])),Kr.current=!0},[Br]);let qr=Q.useMemo(()=>{let e=new Map,t=new Map;return Br.forEach(n=>{let r=_n(n.project.normalizedPath)||n.project.normalizedPath;n.groups.forEach(i=>{let a=i.branch&&i.branch!==`HEAD`&&i.branch!==r?i.branch:null,o={projectLabel:r,branchLabel:a},s=r=>{r.forEach(r=>{let a=n.project.normalizedPath.length;a<(t.get(r.session.id)??-1)||(e.set(r.session.id,{node:r,projectId:n.project.id,groupDirectory:i.directory,secondaryMeta:o}),t.set(r.session.id,a),r.children.length>0&&s(r.children))})};s(i.sessions)})}),e},[Br]);Q.useLayoutEffect(()=>{if(!kt){sh(null);return}let e=fr.getState().focus;if(e?.sessionId===kt){e.scope===`project`&&!e.projectId&&sh({...e,projectId:qr.get(kt)?.projectId??null});return}sh({scope:`project`,sessionId:kt,projectId:qr.get(kt)?.projectId??null})},[kt,qr]);let Jr=Q.useMemo(()=>dt?[]:Ro(Yt,ae),[dt,ae,Yt]),Yr=Q.useMemo(()=>Ve?[]:Xo(Yt,ae,lt,ut),[Ve,ae,lt,Yt,ut]),{pinnedItems:Xr,inProgressItems:Zr}=Q.useMemo(()=>{let e=e=>{let t=qr.get(e.id),n=p(e.directory??null),r={session:e,children:[],worktree:Ht.get(e.id)??null};if(Ve&&ln([r],ze).length===0)return null;let i=kr.bySessionId.get(e.id),a=i?zr.find(e=>e.id===i.projectId):void 0,o=a?_n(a.normalizedPath)||a.normalizedPath:t?.secondaryMeta?.projectLabel??null,s=es({projectLabel:o,owner:i,sessionWorktree:Ht.get(e.id)??null,worktrees:a?Wt.get(a.normalizedPath)??[]:[],projectRootBranch:i?fe.get(i.projectId)??(a?Sr.get(a.normalizedPath)?.branch:null)??null:null,isVSCode:dt})??t?.secondaryMeta??null;return{node:r,projectId:i?.projectId??t?.projectId??null,groupDirectory:i?.scopeDirectory??t?.groupDirectory??n,secondaryMeta:s}},t=t=>t.map(e).filter(e=>e!==null);return{pinnedItems:dt?[]:t(Jr),inProgressItems:t(Yr)}},[Wt,ln,Sr,Ve,Yr,dt,ze,Jr,fe,kr,qr,zr,Ht]),Qr=Q.useMemo(()=>Hr.map(e=>({...e,groups:e.groups.filter(e=>!e.isArchivedBucket)})),[Hr]),$r=Q.useMemo(()=>{let e=Ve?Qr.map(e=>({...e,groups:e.groups.map(e=>({...e,sessions:Vr.get(e)?.filteredNodes??[]}))})):Qr;if(!a)return e;let t=e.find(e=>e.project.id===xe)??e[0];if(!t)return[];let n=t.groups.find(e=>e.isMain&&e.sessions.length>0)??t.groups.find(e=>e.sessions.length>0)??t.groups.find(e=>e.isMain)??t.groups[0];return n?[{...t,groups:[n]}]:[]},[xe,Vr,Ve,Qr,a]),ei=Q.useMemo(()=>ko({sections:$r,foldersMap:We,getOrderedGroups:Gr,pinnedSessionIds:ae,sessionOrderByScope:Ge,sessionOrderActivityByScope:Ke}),[We,Gr,$r,ae,Ke,Ge]),ti=Q.useMemo(()=>Ao({targets:ei,collapsedProjectIds:j,collapsedGroupKeys:se,collapsedFolderIds:Ue,visibleSessionCountByGroup:F,defaultVisibleSessionCount:jo(),hasSessionSearchQuery:Ve,alwaysVisibleSessionIds:st}),[st,Ue,se,j,Ve,ei,F]),ni=Q.useMemo(()=>Ve?[]:[...Jr,...Yr].map((e,t)=>{let n=qr.get(e.id);return{scope:`pinned`,sessionId:e.id,projectId:n?.projectId??null,directory:p(Rt(e))??n?.groupDirectory??null,visibleIndex:t}}),[Ve,Yr,Jr,qr]),[ri,ii]=Q.useState(null),ai=Q.useCallback(e=>{ii(t=>t&&t.length===e.length&&t.every((t,n)=>t===e[n])?t:[...e])},[]),oi=Q.useMemo(()=>{if(!ri)return ni;let e=new Set(ri);return ni.filter(t=>e.has(t.sessionId))},[ni,ri]),si=Q.useMemo(()=>e?[]:xr({pinnedTargets:oi,projectTargets:ti}),[e,oi,ti]),ci=Q.useCallback(e=>{Ee(`chat`),Me(!1),e.scope===`project`&&e.projectId&&Ce(e.projectId),Bn(e.sessionId,e.directory,e.projectId,e.scope)},[Bn,Ee,Ce,Me]);Q.useLayoutEffect(()=>mr({targets:si,activate:ci}),[ci,si]);let li=Q.useMemo(()=>{let e=new Map;return si.forEach(t=>{let n=Or({scope:t.scope,sessionId:t.sessionId,projectId:t.projectId});n&&e.set(n,Dr(si,t)??0)}),e},[si]),ui=Q.useMemo(()=>{if(!kt||Ve)return[];let e=[],t=(n,r)=>{if(n.session.id===kt){e.push({scope:`pinned`,sessionId:kt,projectId:r});return}n.children.forEach(e=>t(e,r))};return Xr.forEach(e=>t(e.node,e.projectId)),Zr.forEach(e=>t(e.node,e.projectId)),e},[kt,Ve,Zr,Xr]),di=Q.useMemo(()=>{if(!kt)return[];let e=[],t=(n,r)=>{if(n.session.id===kt){e.push({scope:`project`,sessionId:kt,projectId:r});return}n.children.forEach(e=>t(e,r))};return Br.forEach(e=>{e.groups.forEach(n=>{n.sessions.forEach(n=>t(n,e.project.id))})}),e},[kt,Br]);Q.useLayoutEffect(()=>gr({pinned:oi,project:ti}),[oi,ti]),Q.useLayoutEffect(()=>{Pr||sh(jh({currentSessionId:kt,focus:At,pinnedFocuses:ui,projectFocuses:di,fallbackProjectId:kt?qr.get(kt)?.projectId??null:null}))},[kt,Pr,di,ui,At,qr]);let fi=Q.useMemo(()=>{let e=At?.sessionId?qr.get(At.sessionId)?.projectId??null:null;return Mh(At,ei,e)},[ei,At,qr]),pi=Q.useRef(null),mi=Q.useRef(null);Q.useEffect(()=>{mi.current&&mi.current!==kt&&(mi.current=null)},[kt]),Q.useLayoutEffect(()=>{if(!fi?.projectId)return;let e=fi.sessionId,t=jt.sessionId===e;if(!(!t&&kt!==e)){if(t){if(pi.current===jt.revision)return;pi.current=jt.revision,mi.current=e}else{if(mi.current===e)return;mi.current=e}if(lr(fi.projectId),fi.groupKey&&q(e=>{if(!e.has(fi.groupKey))return e;let t=new Set(e);return t.delete(fi.groupKey),t}),fi.folderAncestorIds?.forEach(e=>{let t=Bt.getState();t.collapsedFolderIds.has(e)&&t.toggleFolderCollapse(e)}),fi.groupKey&&fi.visibleIndex!==void 0){let e=fi.visibleIndex+1;I(t=>{if((t.get(fi.groupKey)??0)>=e)return t;let n=new Map(t);return n.set(fi.groupKey,e),n})}}},[kt,lr,fi,jt]);let hi=$f(Q.useMemo(()=>{let e=new Set;return Qr.forEach(t=>{j.has(t.project.id)||t.groups.forEach(n=>{if(se.has(`${t.project.id}:${n.id}`))return;let r=p(n.directory??null),i=n.branch?.trim()||at.get(r||``)?.trim();!r||!i||e.add(Of(r,i))})}),[...e]},[se,j,at,Qr]));Q.useEffect(()=>{if(!o||!br||!yr?.connected||!_r)return;let e=[],t=Date.now();if(Qr.forEach(n=>{j.has(n.project.id)||n.groups.forEach(r=>{if(se.has(`${n.project.id}:${r.id}`))return;let i=p(r.directory??null),a=r.branch?.trim()||at.get(i||``)?.trim();if(!i||!a)return;let o=Of(i,a),s=qf.getState().entries[o],c=!!s?.status?.pr,l=`${i}::${a}`,u=Math.max(s?.lastRefreshAt??0,s?.lastDiscoveryPollAt??0),d=!!(s?.isInitialStatusResolved&&!c&&(!b.current.has(l)||t-u>=Gh));(!s||!s.isInitialStatusResolved||d)&&(d&&b.current.add(l),e.push({directory:i,branch:a}))})}),e.length===0)return;let n=new Map;e.forEach(e=>{let t=Of(e.directory,e.branch,e.remoteName??null);n.has(t)||n.set(t,e)}),n.forEach((e,t)=>{Cr(t),wr(t,{directory:e.directory,branch:e.branch,remoteName:e.remoteName??null,canShow:!0,github:_r,githubAuthChecked:br,githubConnected:yr.connected})}),Tr([...n.values()],{silent:!0,markInitialResolved:!0})},[j,se,Cr,_r,br,yr?.connected,at,o,Tr,Qr,wr]);let gi=mf({isDesktopShellRuntime:tn,projectSections:Br,projectHeaderSentinelRefs:me,enabled:o}),_i=Yh((t,n=0,r,i,a=!1,o,s=`project`,c)=>(0,$.jsx)(xh,{node:t,depth:n,groupDirectory:r,projectId:i,archivedBucket:a,currentSessionId:kt,pinnedSessionIds:ae,expandedParents:O,hasSessionSearchQuery:Ve,normalizedSessionSearchQuery:ze,notifyOnSubtasks:Pe,editingId:x,setEditingId:S,editTitle:C,setEditTitle:w,handleSaveEdit:qn,handleCancelEdit:Jn,toggleParent:Hn,handleSessionSelect:Wn,handleSessionDoubleClick:Kn,togglePinnedSession:oe,handleShareSession:Yn,copiedSessionId:An,handleCopyShareUrl:Xn,handleUnshareSession:Zn,openSidebarMenuKey:z,setOpenSidebarMenuKey:B,renamingFolderId:V,getFoldersForScope:qe,getSessionFolderId:rt,removeSessionFromFolder:Qe,addSessionToFolder:J,createFolderAndStartRename:$n,openContextPanelTab:ke,handleDeleteSession:Qn,mobileVariant:e,alwaysShowActions:an,renderSessionNode:_i,secondaryMeta:o,renderContext:s,subtreeContainsActive:c?.subtreeContainsActive??Kh,subtreeContainsEditing:c?.subtreeContainsEditing??Kh,menuOpenSessionId:c?.menuOpenSessionId??null,nodeStructureKey:c?.nodeStructureKey??``,childRenderExtrasFor:c?.childRenderExtrasFor,liveSessionById:en,shortcutNumber:li.get(Or({scope:s,sessionId:t.session.id,projectId:i??null})??``)??null},`${s}:${i??``}:${t.session.id}`)),vi=Q.useCallback(e=>{tr(e),q(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})},[tr]),yi=Q.useCallback(e=>{let t=rr(e);if(t.length===0)return;let n=Tt.getState(),r=t.filter(e=>!n.archivedLoadedDirectories.has(e));r.length>0&&Xt(r)},[rr]),bi=Q.useMemo(()=>{let e=new Map;for(let[t,n]of hi)e.set(t,{visualState:n.visualState,number:n.number,url:n.url,state:n.prState,draft:n.draft,title:n.title,base:n.base,head:n.head,checks:n.checks,canMerge:n.canMerge,mergeableState:n.mergeableState,repo:n.repo});return e},[hi]),xi=Q.useCallback((t,n,r,i,a,o,s)=>(0,$.jsx)(Rp,{group:t,groupKey:n,isArchivedLoading:!!(t.isArchivedBucket&&r&&rr(r).some(e=>Et.has(e))),projectId:r,hideGroupLabel:i,compactBodyPadding:o,hasSessionSearchQuery:Ve,normalizedSessionSearchQuery:ze,groupSearchDataByGroup:Vr,visibleSessionCount:F.get(n),collapsedGroups:se,collapsedFolderIds:Ue,toggleFolderCollapse:et,renameFolder:Ye,deleteFolder:Xe,showDeletionDialog:Ie,setDeleteFolderConfirm:K,renderSessionNode:_i,projectRepoStatus:N,lastRepoStatus:Fr.current,showMoreGroupSessions:(e,n,r)=>er(t,e,n,r),resetGroupSessionLimit:tr,mobileVariant:e,alwaysShowActions:an,activeProjectId:xe,setActiveProjectIdOnly:Ce,setActiveMainTab:Ee,setSessionSwitcherOpen:Me,openNewSessionDraft:qt,addSessionToFolder:J,createFolderAndStartRename:$n,renamingFolderId:V,renameFolderDraft:U,setRenameFolderDraft:W,setRenamingFolderId:H,pinnedSessionIds:ae,expandedParents:O,sessionOrderByScope:Ge,sessionOrderActivityByScope:Ke,onReorderSessions:(e,n,r,i)=>{let a=t.folderScopeKey??p(t.directory??null);a&&it(a,e,n,r,i)},currentSessionId:kt,shortcutTargetSessionId:fi?.groupKey===n?fi.sessionId:null,shortcutTargetVisibleIndex:fi?.groupKey===n?fi.visibleIndex??null:null,editingId:x,editTitle:C,openSidebarMenuKey:z,liveSessionById:en,alwaysVisibleSessionIds:st,prVisualStateByDirectoryBranch:bi,onToggleCollapsedGroup:e=>{t.isArchivedBucket&&se.has(e)&&r&&yi(r),vi(e)},dragHandleProps:a,scrollContainerRef:s}),[Ve,ze,Vr,Et,rr,F,se,Ue,et,Ye,Xe,Ie,_i,N,er,tr,e,an,xe,Ce,Ee,Me,qt,J,$n,V,U,ae,O,Ge,Ke,it,kt,fi,x,C,z,en,st,bi,vi,yi]),Si=i?null:(0,$.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,$.jsx)(qp,{collapseAllProjects:or,expandAllProjects:sr}),(0,$.jsx)(Sn,{variant:`ghost`,size:`xs`,className:`size-6 p-0 text-muted-foreground`,"aria-label":s(`sessions.sidebar.header.actions.addProject`),title:s(`sessions.sidebar.header.actions.addProject`),onClick:Be.requestDirectoryDialog,children:(0,$.jsx)(Z,{name:`add`,className:`size-4`})})]}),Ci=tn&&nn&&!dt&&!Ve?(0,$.jsx)(`div`,{className:`shrink-0 px-3`,children:(0,$.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,$.jsx)(Ac,{className:`min-w-0 flex-1`}),(0,$.jsx)(Nc,{className:`ml-auto shrink-0`})]})}):null,Ti=!dt&&!Ve,Ei=!Ve&&(Xr.length>0||Zr.length>0),Di=Ti||Ei?(0,$.jsxs)($.Fragment,{children:[Ti?(0,$.jsxs)($.Fragment,{children:[e&&nn?(0,$.jsx)(Ac,{}):null,(0,$.jsxs)(`div`,{className:`space-y-0.5 py-1`,children:[(0,$.jsxs)(Sn,{variant:`ghost`,size:`sm`,className:X(`w-full justify-start font-normal`,e&&`h-11`),onClick:wn,children:[(0,$.jsx)(Z,{name:`chat-new`,className:`size-4`}),(0,$.jsx)(`span`,{className:`truncate`,children:s(`sessions.sidebar.header.actions.newSession`)})]}),(0,$.jsxs)(Sn,{variant:`ghost`,size:`sm`,className:X(`w-full justify-start font-normal`,De===`schedule`&&`bg-interactive-selection text-interactive-selection-foreground`,e&&`h-11`),onClick:Tn,children:[(0,$.jsx)(Z,{name:`time`,className:`size-4`}),(0,$.jsx)(`span`,{className:`truncate`,children:s(`sessions.sidebar.header.actions.scheduledTasks`)})]}),Oe.data?.supported&&Oe.data?.enabled?(0,$.jsxs)(Sn,{variant:`ghost`,size:`sm`,className:X(`w-full justify-start font-normal`,De===`assistant`&&`bg-interactive-selection text-interactive-selection-foreground`,e&&`h-11`),onClick:En,children:[(0,$.jsx)(Z,{name:`ai-agent`,className:`size-4`}),(0,$.jsx)(`span`,{className:`truncate`,children:s(`assistants.title`)})]}):null]})]}):null,Ei?(0,$.jsx)(Vp,{items:Xr,inProgressItems:Zr,renderSessionNode:_i,currentSessionId:kt,editingId:x,openSidebarMenuKey:z,onVisibleSessionIdsChange:ai}):null]}):null,Oi=!!(V||x||E),{selectionModeEnabled:ki,hasSelection:ji,selectedIdsSize:Mi,bulkScopeIsArchived:Ni,derivedSelectionScope:Pi,bulkScopeFolders:Fi,bulkCanRemoveFromFolder:Ii,handleExitSelectionMode:Li,handleBulkMoveToFolder:Ri,handleBulkCreateFolderAndMove:zi,handleBulkRemoveFromFolder:Bi,handleBulkDelete:Vi,confirmBulkDelete:Hi}=Oh({isInlineEditing:Oi,showDeletionDialog:Ie,foldersMap:We,addSessionsToFolder:Ze,removeSessionsFromFolders:$e,createFolderAndStartRename:Un,archiveSessions:kn,setBulkDeleteConfirm:re});return(0,$.jsxs)(`div`,{ref:v,className:X(`oc-session-sidebar relative flex h-full flex-col text-foreground overflow-x-hidden`,e?``:`bg-transparent`),children:[(0,$.jsx)(zp,{hideDirectoryControls:i,isSessionSearchOpen:f,setIsSessionSearchOpen:h,sessionSearchInputRef:y,sessionSearchQuery:g,setSessionSearchQuery:_,hasSessionSearchQuery:Ve,searchMatchCount:Ur}),Ci,o?(0,$.jsx)(im,{topContent:Di,hasLeadingSection:Di!==null&&(Xr.length>0||Zr.length>0),headerAccessory:Si,sectionsForRender:Qr,projectSections:Br,activeProjectId:xe,showOnlyMainWorkspace:a,hasSessionSearchQuery:Ve,emptyState:hn,searchEmptyState:Wr,renderGroupSessions:xi,homeDirectory:_e,collapsedProjects:j,hideDirectoryControls:i,projectRepoStatus:N,isDesktopShellRuntime:tn,stuckProjectHeaders:gi,mobileVariant:e,alwaysShowActions:an,toggleProject:cr,setActiveProjectIdOnly:Ce,setActiveMainTab:Ee,setSessionSwitcherOpen:Me,openNewSessionDraft:qt,openNewWorktreeDialog:yn,syncProjectSessions:ar,openProjectEditDialog:D,removeProject:Se,projectHeaderSentinelRefs:me,projectReorderEnabled:Ir===`manual`,reorderProjects:Te,projectSortOrder:Ir,getOrderedGroups:Gr,setGroupOrderByProject:le,openSidebarMenuKey:z,setOpenSidebarMenuKey:B,isInlineEditing:Oi,loadingProjectIds:Mr,refreshingProjectIds:Nr,isProjectSessionsSyncing:Pr}):null,ki&&ji?(0,$.jsx)(Dh,{selectedCount:Mi,scopeKey:Pi,scopeFolders:Fi,archivedBucket:Ni,onMoveToFolder:Ri,onCreateFolderAndMove:zi,onRemoveFromFolder:Bi,canRemoveFromFolder:Ii,onDelete:Vi,onDone:Li}):null,(0,$.jsx)(Zp,{onOpenSettings:Cn,onOpenShortcuts:je,onOpenUpdate:xn,showRuntimeButtons:!dt,showUpdateButton:Dn}),l?(0,$.jsx)(Ia,{open:l,onOpenChange:d,info:He.info,downloading:He.downloading,downloaded:He.downloaded,progress:He.progress,error:He.error,onDownload:He.downloadUpdate,onRestart:He.restartToUpdate,runtimeType:He.runtimeType}):null,gn?(0,$.jsx)(ep,{open:!0,onOpenChange:e=>{e||D(null)},project:gn,onSave:vn}):null,L?(0,$.jsx)(Yi,{open:!0,onOpenChange:R,onWorktreeCreated:bn}):null,(0,$.jsx)(Vo,{}),(0,$.jsx)(Gd,{}),(0,$.jsx)(wh,{value:ee,setValue:G,showDeletionDialog:Ie,setShowDeletionDialog:Le,onConfirm:zn}),(0,$.jsx)(Eh,{value:te,setValue:K,onConfirm:Vn}),(0,$.jsx)(Th,{value:ne,setValue:re,showDeletionDialog:Ie,setShowDeletionDialog:Le,onConfirm:Hi})]})},Zh=e=>e?(0,$.jsx)(`span`,{className:`text-foreground/80 dark:text-foreground/70`,children:e}):void 0,Qh=e=>{if(!e)return``;let t=e.replace(/\\/g,`/`);return t===`/`?`/`:t.replace(/\/+$/,``)},$h=()=>{let{t:e}=Fe(),[t,n]=Q.useState(!1),[r,i]=Q.useState(!1),[a,o]=Q.useState(null),[s,c]=Q.useState([]),[l,d]=Q.useState(!1),[f,p]=Q.useState(!1),[m,h]=Q.useState(!1),[g,_]=Q.useState(!1),[v,y]=Q.useState(new Set),b=Ft(e=>e.getWorktreeMetadata),x=Ft(e=>e.newSessionDraft),S=Ft(e=>e.setNewSessionDraftTarget),C=Ft(e=>e.setDraftBootstrapPendingDirectory),w=tt,T=Ft(e=>e.archiveSessions),E=u(e=>e.showDeletionDialog),D=u(e=>e.setShowDeletionDialog),O=ge(e=>e.currentDirectory),k=ge(e=>e.homeDirectory),A=ge(e=>e.isHomeReady),j=vt(e=>e.projects),M=vt(e=>e.activeProjectId),{isMobile:N,isTablet:P,hasTouchInput:F}=Ai(),I=N||P||F,L=Q.useMemo(()=>Qh((M?j.find(e=>e.id===M)??null:null)?.path??O),[M,O,j]),R=Q.useCallback(e=>{let t=Qh(e.projectDirectory)||L;return{id:(j.find(e=>Qh(e.path)===t)??null)?.id??`path:${t}`,path:t}},[L,j]),z=g&&v.size>0,B=Q.useMemo(()=>{let e=a?.worktree;return e&&typeof e.branch==`string`&&e.branch.trim().length>0?!0:s.length>0&&s.every(({metadata:e})=>typeof e.branch==`string`&&e.branch.trim().length>0)},[a?.worktree,s]),V=a?.mode===`worktree`,H=V,U=m||!V||!B,W=m||!V;Q.useEffect(()=>{r||!A||j.length>0||(i(!0),n(!0))},[r,A,j.length]);let ee=Q.useCallback(e=>{o({sessions:e.sessions,dateLabel:e.dateLabel,mode:e.mode??`session`,worktree:e.worktree??null})},[]),G=Q.useCallback(()=>{o(null),c([]),d(!1),p(!1),h(!1),_(!1),y(new Set)},[]),te=Q.useCallback(t=>{if(t.sessions.length===0)return;let n=t.sessions.map(e=>e.id);Ko({sessionIds:n,message:n.length===1?e(`sessions.sidebar.session.delete.success`):e(`sessions.sidebar.bulkActions.deletedPlural`,{count:n.length}),undoLabel:e(`sessions.sidebar.undo`),commitFailedMessage:n.length===1?e(`sessions.sidebar.session.delete.error`):e(`sessions.sidebar.bulkActions.failedDeletePlural`,{count:n.length})})},[e]);Q.useEffect(()=>Be.onDeleteRequest(e=>{if(!E&&(e.mode??`session`)===`session`){te(e);return}ee(e)}),[ee,E,te]),Q.useEffect(()=>Be.onDirectoryRequest(()=>{n(!0)}),[]),Q.useEffect(()=>{if(!a){c([]),d(!1),p(!1),_(!1),y(new Set);return}let e=a.sessions.map(e=>{let t=b(e.id);return t?{session:e,metadata:t}:null}).filter(e=>!!e);c(e),d(!1),_(!1),y(new Set);let t=new Map;if(a.worktree?.path&&t.set(Qh(a.worktree.path),a.worktree),e.forEach(({metadata:e})=>{e.path&&t.set(Qh(e.path),e)}),t.size===0){_(!0);return}let n=!1;return(async()=>{let e=new Map,r=new Set;await Promise.all(Array.from(t.entries()).map(async([t,n])=>{try{let i=await Ur(n.path);e.set(t,i),i?.isDirty&&r.add(t)}catch{n.status&&(e.set(t,n.status),n.status.isDirty&&r.add(t))}})).catch(e=>{console.warn(`Failed to inspect worktree status before deletion:`,e)}),!n&&(y(r),_(!0),o(t=>{if(!t?.worktree?.path)return t;let n=Qh(t.worktree.path),r=e.get(n);if(!r)return t;let i=t.worktree.status;return i?.isDirty===r.isDirty&&i?.ahead===r.ahead&&i?.behind===r.behind&&i?.upstream===r.upstream?t:{...t,worktree:{...t.worktree,status:r}}}),c(t=>t.map(t=>{let n=Qh(t.metadata.path),r=e.get(n);return r?{session:t.session,metadata:{...t.metadata,status:r}}:t})))})(),()=>{n=!0}},[a,b]),Q.useEffect(()=>{B||d(!1)},[B]);let K=Q.useCallback(async(t,n)=>{let r=l&&B,i=R(t),a=Qh(t.path),o=Qh(i.path);try{await Kr(i,t,{deleteRemoteBranch:r,deleteLocalBranch:n});let e=Qh(x?.directoryOverride);return x?.open&&a&&e===a&&o&&(C(null),S({projectId:i.id,directoryOverride:o},{force:!0})),Qh(O)===a&&o&&ge.getState().setDirectory(o,{showOverlay:!1}),!0}catch(t){return Y.error(e(`sessions.sidebar.sessionDialogs.worktree.errorRemoveTitle`),{description:Zh(t instanceof Error?t.message:e(`sessions.sidebar.dialogs.deleteResult.tryAgain`))}),!1}},[B,O,l,R,x?.directoryOverride,x?.open,C,S,e]),ne=Q.useCallback((t,n)=>{let r=l&&B;(async()=>{if(!await K(t,n))return;let i=e(r?`sessions.sidebar.sessionDialogs.worktree.removedWithRemote`:`sessions.sidebar.sessionDialogs.worktree.removed`);Y.success(e(`sessions.sidebar.sessionDialogs.worktree.removedTitle`),{description:Zh(i)})})()},[B,l,K,e]),re=Q.useCallback(async()=>{if(a){h(!0);try{let t=H&&f;if(a.sessions.length===0&&V&&a.worktree){ne(a.worktree,t),G();return}if(a.sessions.length===1){let t=a.sessions[0];if(V){if(!await w(t.id)){Y.error(e(`sessions.sidebar.session.archive.error`)),h(!1);return}So({sessionIds:[t.id],message:e(`sessions.sidebar.session.archive.success`),undoLabel:e(`sessions.sidebar.undo`),settingsLabel:e(`settings.openchamber.archivedSessions.actions.view`),undoFailedMessage:e(`sessions.sidebar.session.archive.undoFailed`)})}else Ko({sessionIds:[t.id],message:e(`sessions.sidebar.session.delete.success`),undoLabel:e(`sessions.sidebar.undo`),commitFailedMessage:e(`sessions.sidebar.session.delete.error`)})}else{let n=a.sessions.map(e=>e.id),r=[],i=[];if(V){let e=await T(n);r=e.archivedIds,i=e.failedIds}else Ko({sessionIds:n,message:n.length===1?e(`sessions.sidebar.bulkActions.deletedSingle`,{count:n.length}):e(`sessions.sidebar.bulkActions.deletedPlural`,{count:n.length}),undoLabel:e(`sessions.sidebar.undo`),commitFailedMessage:n.length===1?e(`sessions.sidebar.bulkActions.failedDeleteSingle`,{count:n.length}):e(`sessions.sidebar.bulkActions.failedDeletePlural`,{count:n.length})}),r=n,i=[];if(V&&a.worktree&&i.length===0&&ne(a.worktree,t),V&&r.length>0&&So({sessionIds:r,message:r.length===1?e(`sessions.sidebar.bulkActions.archivedSingle`,{count:r.length}):e(`sessions.sidebar.bulkActions.archivedPlural`,{count:r.length}),undoLabel:e(`sessions.sidebar.undo`),settingsLabel:e(`settings.openchamber.archivedSessions.actions.view`),undoFailedMessage:r.length===1?e(`sessions.sidebar.session.archive.undoFailed`):e(`sessions.sidebar.bulkActions.archiveUndoFailed`,{count:r.length})}),i.length>0&&(Y.error(V?i.length===1?e(`sessions.sidebar.bulkActions.failedArchiveSingle`,{count:i.length}):e(`sessions.sidebar.bulkActions.failedArchivePlural`,{count:i.length}):i.length===1?e(`sessions.sidebar.bulkActions.failedDeleteSingle`,{count:i.length}):e(`sessions.sidebar.bulkActions.failedDeletePlural`,{count:i.length}),{description:Zh(e(`sessions.sidebar.dialogs.deleteResult.tryAgain`))}),r.length===0)){h(!1);return}}V&&a.sessions.length===1&&a.worktree&&ne(a.worktree,t),G()}finally{h(!1)}}},[a,f,w,T,G,H,V,ne,e]),ie=a?.worktree??s[0]?.metadata??null,ae=a?a.mode===`worktree`?a.sessions.length===0?e(`sessions.sidebar.dialogs.worktreeDelete.descriptionNoLinked`):a.sessions.length===1?e(`sessions.sidebar.dialogs.worktreeDelete.descriptionOneLinked`,{count:a.sessions.length}):e(`sessions.sidebar.dialogs.worktreeDelete.descriptionManyLinked`,{count:a.sessions.length}):a.sessions.length===1?a.dateLabel?e(`sessions.sidebar.dialogs.sessionDelete.descriptionOneWithDate`,{dateLabel:a.dateLabel}):e(`sessions.sidebar.dialogs.sessionDelete.descriptionOne`):a.dateLabel?e(`sessions.sidebar.dialogs.sessionDelete.descriptionManyWithDate`,{count:a.sessions.length,dateLabel:a.dateLabel}):e(`sessions.sidebar.dialogs.sessionDelete.descriptionMany`,{count:a.sessions.length}):``,oe=a?(0,$.jsxs)(`div`,{className:X(V?`space-y-3`:`space-y-2`),children:[a.sessions.length>0&&(0,$.jsxs)(`div`,{className:X(V?`rounded-lg bg-muted/30 p-3`:`space-y-1.5 rounded-xl border border-border/40 bg-sidebar/60 p-3`),children:[V&&(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(`span`,{className:`typography-meta font-medium text-foreground`,children:a.sessions.length===1?e(`sessions.sidebar.sessionDialogs.linkedSessionSingle`):e(`sessions.sidebar.sessionDialogs.linkedSessionPlural`)}),(0,$.jsx)(`span`,{className:`typography-micro text-muted-foreground/70`,children:a.sessions.length})]}),(0,$.jsxs)(`ul`,{className:X(V?`mt-2 space-y-1`:`space-y-0.5`),children:[a.sessions.slice(0,5).map(t=>(0,$.jsxs)(`li`,{className:X(V?`flex items-center gap-2 rounded-md px-2.5 py-1.5 text-sm text-muted-foreground`:`typography-micro text-muted-foreground/80`),children:[(0,$.jsx)(`span`,{className:X(!V&&`hidden`),children:`•`}),(0,$.jsx)(`span`,{className:`truncate`,children:t.title||e(`sessions.sidebar.session.untitled`)})]},t.id)),a.sessions.length>5&&(0,$.jsx)(`li`,{className:X(V?`px-2.5 py-1 text-xs text-muted-foreground/70`:`typography-micro text-muted-foreground/70`),children:e(`sessions.sidebar.dialogs.sessionList.more`,{count:a.sessions.length-5})})]})]}),V?(0,$.jsxs)(`div`,{className:`space-y-2 rounded-lg bg-muted/30 p-3`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(Z,{name:`git-branch`,className:`h-4 w-4 text-muted-foreground`}),(0,$.jsx)(`span`,{className:`typography-meta font-medium text-foreground`,children:e(`sessions.sidebar.sessionDialogs.worktree.label`)}),ie?.label?(0,$.jsx)(`span`,{className:`typography-micro text-muted-foreground/70`,children:ie.label}):null]}),(0,$.jsx)(`p`,{className:`typography-micro text-muted-foreground/80 break-all`,children:ie?yn(ie.path,k):e(`sessions.sidebar.sessionDialogs.worktree.pathUnavailable`)}),z&&(0,$.jsx)(`p`,{className:`typography-micro text-status-warning`,children:e(`sessions.sidebar.sessionDialogs.worktree.uncommittedWarning`)})]}):(0,$.jsx)(`div`,{className:`rounded-xl border border-border/40 bg-sidebar/60 p-3`,children:(0,$.jsx)(`p`,{className:`typography-meta text-muted-foreground/80`,children:e(`sessions.sidebar.sessionDialogs.delete.note`)})})]}):null,se=V?B?(0,$.jsxs)(`button`,{type:`button`,onClick:()=>{U||d(e=>!e)},disabled:U,className:X(`flex items-center gap-2 rounded-md px-2 py-1 text-sm text-muted-foreground transition-colors`,U?`cursor-not-allowed opacity-60`:`hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary`),children:[l?(0,$.jsx)(Z,{name:`checkbox`,className:`size-4 text-primary`}):(0,$.jsx)(Z,{name:`checkbox-blank`,className:`size-4`}),e(`sessions.sidebar.sessionDialogs.actions.deleteRemoteBranch`)]}):(0,$.jsx)(`span`,{className:`text-xs text-muted-foreground/70`,children:e(`sessions.sidebar.sessionDialogs.actions.remoteBranchInfoUnavailable`)}):null,q=V?(0,$.jsxs)(`button`,{type:`button`,onClick:()=>{W||p(e=>!e)},disabled:W,className:X(`flex items-center gap-2 rounded-md px-2 py-1 text-sm text-muted-foreground transition-colors`,W?`cursor-not-allowed opacity-60`:`hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary`),children:[f?(0,$.jsx)(Z,{name:`checkbox`,className:`size-4 text-primary`}):(0,$.jsx)(Z,{name:`checkbox-blank`,className:`size-4`}),e(`sessions.sidebar.sessionDialogs.actions.deleteLocalBranch`)]}):null,ce=V?(0,$.jsxs)(`div`,{className:`flex w-full items-center justify-between gap-3`,children:[(0,$.jsxs)(`div`,{className:`flex flex-col items-start gap-1`,children:[q,se]}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(Sn,{variant:`ghost`,onClick:G,disabled:m,children:e(`sessions.sidebar.dialogs.cancel`)}),(0,$.jsx)(Sn,{variant:`destructive`,onClick:re,disabled:m,children:e(m?`sessions.sidebar.sessionDialogs.actions.deleting`:`sessions.sidebar.sessionDialogs.actions.deleteWorktree`)})]})]}):(0,$.jsxs)(`div`,{className:`flex w-full items-center justify-between gap-3`,children:[(0,$.jsxs)(`button`,{type:`button`,onClick:()=>D(!E),className:`inline-flex items-center gap-1.5 typography-meta text-muted-foreground transition-colors hover:text-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-primary/50`,"aria-pressed":!E,children:[E?(0,$.jsx)(Z,{name:`checkbox-blank`,className:`size-4`}):(0,$.jsx)(Z,{name:`checkbox`,className:`size-4 text-primary`}),e(`sessions.sidebar.dialogs.neverAsk`)]}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(Sn,{variant:`ghost`,onClick:G,disabled:m,children:e(`sessions.sidebar.dialogs.cancel`)}),(0,$.jsx)(Sn,{variant:`destructive`,onClick:re,disabled:m,children:m?e(`sessions.sidebar.sessionDialogs.actions.deleting`):a?.sessions.length===1?e(`sessions.sidebar.dialogs.deleteSession.titleAction`):e(`sessions.sidebar.dialogs.deleteSessions.titleAction`)})]})]}),le=V?e(`sessions.sidebar.sessionDialogs.actions.deleteWorktree`):a?.sessions.length===1?e(`sessions.sidebar.dialogs.deleteSession.titleAction`):e(`sessions.sidebar.dialogs.deleteSessions.titleAction`);return(0,$.jsxs)($.Fragment,{children:[I?(0,$.jsx)(zi,{open:!!a,onClose:()=>{m||G()},title:le,footer:(0,$.jsx)(`div`,{className:`flex justify-end gap-2`,children:ce}),children:(0,$.jsxs)(`div`,{className:`space-y-2 pb-2`,children:[ae&&(0,$.jsx)(`p`,{className:`typography-meta text-muted-foreground/80`,children:ae}),oe]})}):(0,$.jsx)(mn,{open:!!a,onOpenChange:e=>{if(!e){if(m)return;G()}},children:(0,$.jsxs)(dn,{className:X(V?`max-w-xl max-h-[70vh] flex flex-col overflow-hidden gap-3`:`max-w-[min(520px,100vw-2rem)] space-y-2 pb-2`),children:[(0,$.jsxs)(ln,{children:[(0,$.jsxs)(fn,{className:X(V&&`flex items-center gap-2`),children:[V&&(0,$.jsx)(Z,{name:`delete-bin`,className:`h-5 w-5`}),le]}),ae&&(0,$.jsx)(pn,{children:ae})]}),(0,$.jsx)(`div`,{className:X(V&&`flex-1 min-h-0 overflow-y-auto space-y-2`),children:oe}),(0,$.jsx)(un,{className:`mt-2 gap-2 pt-1 pb-1`,children:ce})]})}),(0,$.jsx)(Jo,{open:t,onOpenChange:n})]})},eg=Q.createContext(null),tg=e=>{let t=(0,Ts.c)(3),{children:n,value:r}=e,i;return t[0]!==n||t[1]!==r?(i=(0,$.jsx)(eg.Provider,{value:r,children:n}),t[0]=n,t[1]=r,t[2]=i):i=t[2],i},ng=la(()=>Te(()=>import(`./TerminalView-BfaV2UtT.js`).then(e=>({default:e.TerminalView})),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38]))),rg=la(()=>Te(()=>import(`./DiagramView-chb1AAev.js`).then(e=>({default:e.DiagramView})),__vite__mapDeps([39,1,2,3,4,17,8,18,14,5,6,7,15,12,27,24,25,26,31,32,10,11,16,19,20,21,22,23,40,41,42]))),ig=la(()=>Te(()=>import(`./SettingsView-DI-xR28w.js`).then(e=>e.n).then(e=>({default:e.SettingsView})),__vite__mapDeps([43,1,2,3,4,5,6,7,8,44,45,10,11,12,17,46,18,19,20,21,14,15,47,16,22,23,48,24,25,26,27,28,49,50,51,52,53,54,30,34,35,36,55,56,57,58,59,60,61,62,29,63,31,64,65,66,67,68,69,70,71,72,73,74,75,76,33,77,78,79,38,80,81,82,83,84,85,86]))),ag=la(()=>Te(()=>import(`./SettingsWindow-C08nRzF9.js`).then(e=>({default:e.SettingsWindow})),__vite__mapDeps([87,1,4,7,14,5,2,3,6,8,15,12,24,25,26,43,44,45,10,11,17,46,18,19,20,21,47,16,22,23,48,27,28,49,50,51,52,53,54,30,34,35,36,55,56,57,58,59,60,61,62,29,63,31,64,65,66,67,68,69,70,71,72,73,74,75,76,33,77,78,79,38,80,81,82,83,84,85,86]))),og=la(()=>Te(()=>import(`./MultiRunWindow-CL9HUaQ6.js`).then(e=>({default:e.MultiRunWindow})),__vite__mapDeps([88,1,4,7,14,5,2,3,6,8,15,12,24,25,26,27,89,10,11,19,20,21,16,17,18,22,23,28,52,51,53,54,30,34,35,36,31,90,79]))),sg=la(()=>Te(()=>import(`./AssistantView-B5gousNu.js`).then(e=>e.n).then(e=>({default:e.AssistantView})),__vite__mapDeps([91,1,2,3,4,5,6,7,8,10,11,12,18,19,20,21,14,15,47,16,17,22,23,48,24,25,26,27,28,49,50,30,92,46,52,51,53,54,34,35,36,29,57,58,59,60,61,62,63,93,66,67,68,69,70,71,72,73,74,75,31,90,64,65,76,32,94,95,96,97,98,33,99,100,101,80,81,82,83,79,40,41,102,103]))),cg=()=>{let e=1220,t=u(e=>e.isSidebarOpen),n=u(e=>e.isRightSidebarOpen),r=u(e=>e.isBottomTerminalOpen),i=u(e=>e.setRightSidebarOpen),a=u(e=>e.setBottomTerminalOpen),o=u(e=>e.activeMainTab),s=u(e=>e.setIsMobile),c=u(e=>e.isSessionSwitcherOpen),l=u(e=>e.isSettingsDialogOpen),d=u(e=>e.setSettingsDialogOpen),f=u(e=>e.isMultiRunLauncherOpen),p=u(e=>e.setMultiRunLauncherOpen),{isMobile:m,isTablet:h}=Ai(),g=Q.useRef(!1),_=Q.useRef(!1),v=Q.useRef(!1),[y,b]=Q.useState(!1),[x,S]=Q.useState(!1),[C,w]=Q.useState(!1),[T,E]=Q.useState(!1),D=Q.useCallback(e=>{b(e),u.getState().setSessionSwitcherOpen(e)},[]),O=Q.useRef(!1),k=Q.useRef(typeof window>`u`?0:window.innerWidth),A=ja(-k.current),j=(0,Q.useRef)(0),M=ja(k.current),N=(0,Q.useRef)(0);(0,Q.useEffect)(()=>{m&&(j.current=window.innerWidth,N.current=window.innerWidth)},[m]),(0,Q.useEffect)(()=>{if(!m){w(!1);return}y&&w(!0),Ma(A,y?0:-j.current,{type:`spring`,stiffness:400,damping:35,mass:.8})},[y,m,A]),(0,Q.useEffect)(()=>{if(!m){E(!1);return}O.current=x,x&&E(!0),Ma(M,x?0:N.current,{type:`spring`,stiffness:400,damping:35,mass:.8})},[m,x,M]),(0,Q.useEffect)(()=>{if(m)return A.on(`change`,e=>{let t=j.current||k.current,n=y||e>-t+.5;w(e=>e===n?e:n)})},[m,A,y]),(0,Q.useEffect)(()=>{if(m)return M.on(`change`,e=>{let t=N.current||k.current,n=x||e<t-.5;E(e=>e===n?e:n)})},[m,x,M]),(0,Q.useEffect)(()=>{m&&!c&&y&&D(!1)},[c,m,y,D]),(0,Q.useEffect)(()=>{if(!m){v.current=!1;return}v.current||(v.current=!0,D(!1),S(!1),u.getState().isRightSidebarOpen&&i(!1))},[m,D,i]),(0,Q.useEffect)(()=>{if(!m||o!==`chat`||y||x||l)return;let e=!1,t,n=r=>{t=window.setTimeout(()=>{if(e)return;let t=Ft.getState(),r=u.getState();if(!(r.activeMainTab!==`chat`||r.isSettingsDialogOpen||t.currentSessionId||t.newSessionDraft?.open)){if(t.isLoading){n(250);return}t.openNewSessionDraft()}},r)};return n(500),()=>{e=!0,t!==void 0&&window.clearTimeout(t)}},[o,m,l,y,x]),(0,Q.useEffect)(()=>{!m||!l||(D(!1),S(!1),n&&i(!1))},[m,l,n,D,i]),Q.useEffect(()=>{u.getState().isMobile!==m&&s(m)},[m,s]),Q.useEffect(()=>{if(typeof window>`u`)return;let e,t=()=>{e===void 0&&(e=window.requestAnimationFrame(()=>{e=void 0,u.getState().updateProportionalSidebarWidths()}))};return window.addEventListener(`resize`,t),()=>{window.removeEventListener(`resize`,t),e!==void 0&&window.cancelAnimationFrame(e)}},[]),Q.useEffect(()=>{if(typeof window>`u`)return;let t,n=()=>{let t=u.getState(),n=window.innerWidth,r=window.innerHeight;!m&&!h&&(n<1140?t.isRightSidebarOpen&&(i(!1),g.current=!0):n>=e&&g.current&&(i(!0),g.current=!1),r<640?t.isBottomTerminalOpen&&(a(!1),_.current=!0):r>=700&&_.current&&(a(!0),_.current=!1))},r=()=>{t===void 0&&(t=window.requestAnimationFrame(()=>{t=void 0,n()}))};return n(),window.addEventListener(`resize`,r),()=>{window.removeEventListener(`resize`,r),t!==void 0&&window.cancelAnimationFrame(t)}},[m,h,a,i]),Q.useEffect(()=>{if(typeof window>`u`)return;let t=u.subscribe((t,n)=>{let r=window.innerWidth,i=window.innerHeight,a=r>=e,o=i>=700;t.isRightSidebarOpen!==n.isRightSidebarOpen&&a&&(g.current=!1),t.isBottomTerminalOpen!==n.isBottomTerminalOpen&&o&&(_.current=!1)});return()=>{t()}},[m,h,a,i]);let P=Q.useCallback(()=>{y&&D(!1),S(!x)},[y,x,D]),F=Q.useMemo(()=>{switch(o){case`git`:return(0,$.jsx)(Q.Suspense,{fallback:null,children:(0,$.jsx)(du,{isActive:!x})});case`diff`:return(0,$.jsx)(Q.Suspense,{fallback:null,children:(0,$.jsx)(xo,{})});case`terminal`:return r?null:(0,$.jsx)(Q.Suspense,{fallback:null,children:(0,$.jsx)(ng,{})});case`files`:return(0,$.jsx)(Q.Suspense,{fallback:null,children:(0,$.jsx)(go,{})});case`diagram`:return(0,$.jsx)(Q.Suspense,{fallback:null,children:(0,$.jsx)(rg,{})});default:return null}},[o,r,x]),I=o===`schedule`,L=o===`assistant`,R=I||L,z=o===`chat`,B=!R&&!l;return(0,$.jsx)(fo,{children:(0,$.jsxs)(`div`,{"data-page-scroll-lock":`true`,className:X(`main-content-safe-area`,m?`flex h-[100dvh] flex-col`:`relative flex h-[100dvh]`,`bg-background`),children:[(0,$.jsx)(Wu,{}),(0,$.jsx)(Fd,{}),(0,$.jsx)(zd,{}),(0,$.jsx)($h,{}),m?(0,$.jsxs)(tg,{value:{leftDrawerOpen:y,rightDrawerOpen:x,toggleLeftDrawer:()=>{let e=!y;x&&S(!1),D(e)},toggleRightDrawer:P,leftDrawerX:A,rightDrawerX:M,leftDrawerWidth:j,rightDrawerWidth:N,setMobileLeftDrawerOpen:D,setRightSidebarOpen:S},children:[!l&&!R&&(0,$.jsx)(hc,{onToggleLeftDrawer:()=>{let e=!y;x&&S(!1),D(e)},onToggleRightDrawer:()=>{P()},leftDrawerOpen:y,rightDrawerOpen:x}),(0,$.jsx)(`div`,{"data-page-scroll-lock":`true`,className:X(`flex flex-1 overflow-hidden relative`,l&&`hidden`),children:(0,$.jsxs)(`main`,{className:`w-full h-full overflow-hidden bg-background relative`,"data-page-scroll-lock":`true`,children:[I&&(0,$.jsx)(`div`,{className:`absolute inset-0`,children:(0,$.jsx)(xi,{children:(0,$.jsx)(Q.Suspense,{fallback:null,children:(0,$.jsx)(Zo,{})})})}),L&&(0,$.jsx)(`div`,{className:`absolute inset-0`,children:(0,$.jsx)(xi,{children:(0,$.jsx)(Q.Suspense,{fallback:null,children:(0,$.jsx)(sg,{})})})}),B&&(0,$.jsx)(`div`,{className:X(`absolute inset-0`,!z&&`invisible`),children:(0,$.jsx)(xi,{children:(0,$.jsx)(Oo,{})})}),B&&F&&(0,$.jsx)(`div`,{className:`absolute inset-0`,children:(0,$.jsx)(xi,{children:F})}),f&&(0,$.jsx)(`div`,{className:`absolute inset-0 z-10 bg-background`,children:(0,$.jsx)(xi,{children:(0,$.jsx)(Cs,{onCreated:()=>p(!1),onCancel:()=>p(!1)})})}),(0,$.jsx)(Aa.div,{className:X(`absolute inset-0 z-20 bg-sidebar`,!C&&`pointer-events-none invisible`),"data-page-scroll-lock":`true`,style:{x:A},"aria-hidden":!y,children:(0,$.jsx)(xi,{children:(0,$.jsx)(Xh,{mobileVariant:!0,isVisible:C})})}),T&&(0,$.jsx)(Aa.div,{className:`absolute inset-0 z-20 bg-sidebar`,"data-page-scroll-lock":`true`,style:{x:M},"aria-hidden":!x,children:(0,$.jsx)(xi,{children:(0,$.jsx)(Q.Suspense,{fallback:null,children:(0,$.jsx)(du,{isActive:x})})})})]})}),l&&(0,$.jsx)(`div`,{className:`absolute inset-0 z-10 bg-background`,style:{paddingTop:`var(--oc-safe-area-top, 0px)`},children:(0,$.jsx)(xi,{children:(0,$.jsx)(Q.Suspense,{fallback:null,children:(0,$.jsx)(ig,{onClose:()=>d(!1)})})})}),(0,$.jsx)(xi,{children:(0,$.jsx)(rs,{})})]}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Lc,{}),(0,$.jsxs)(`div`,{className:`flex flex-1 overflow-hidden`,"data-page-scroll-lock":`true`,children:[(0,$.jsx)(Oc,{isOpen:t,isMobile:m,className:`border-border/50`,topBar:(0,$.jsx)(kc,{}),children:(0,$.jsx)(Xh,{isVisible:t})}),(0,$.jsx)(`div`,{className:`relative flex flex-1 min-w-0 flex-col overflow-hidden bg-background`,"data-page-scroll-lock":`true`,children:R?(0,$.jsx)(`main`,{className:`flex-1 overflow-hidden bg-background`,"data-page-scroll-lock":`true`,children:(0,$.jsx)(xi,{children:(0,$.jsx)(Q.Suspense,{fallback:null,children:L?(0,$.jsx)(sg,{}):(0,$.jsx)(Zo,{})})})}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(hc,{}),(0,$.jsxs)(`div`,{className:`relative flex flex-1 min-h-0 overflow-hidden bg-background`,"data-page-scroll-lock":`true`,children:[(0,$.jsxs)(`div`,{className:`relative flex flex-1 min-w-0 flex-col overflow-hidden oc-layout-divider-t bg-background`,"data-page-scroll-lock":`true`,children:[(0,$.jsx)(`div`,{className:`flex flex-1 min-h-0 overflow-hidden`,"data-page-scroll-lock":`true`,children:(0,$.jsxs)(`div`,{className:`relative flex flex-1 min-h-0 min-w-0 overflow-hidden`,"data-page-scroll-lock":`true`,children:[(0,$.jsxs)(`main`,{className:`flex-1 overflow-hidden bg-background relative`,"data-page-scroll-lock":`true`,children:[B&&(0,$.jsx)(`div`,{className:X(`absolute inset-0`,!z&&`invisible`),children:(0,$.jsx)(xi,{children:(0,$.jsx)(Oo,{})})}),B&&F&&(0,$.jsx)(`div`,{className:`absolute inset-0`,children:(0,$.jsx)(xi,{children:F})})]}),(0,$.jsx)(bo,{})]})}),(0,$.jsx)(bc,{isOpen:r,isMobile:m,children:r?(0,$.jsx)(xi,{children:(0,$.jsx)(Q.Suspense,{fallback:null,children:(0,$.jsx)(ng,{})})}):null})]}),(0,$.jsx)(Kc,{isOpen:n,className:`bg-background oc-layout-divider-t`,children:(0,$.jsx)(xi,{children:(0,$.jsx)(Nu,{})})})]})]})})]}),(0,$.jsx)(Q.Suspense,{fallback:null,children:(0,$.jsx)(ag,{open:l,onOpenChange:d})}),(0,$.jsx)(Q.Suspense,{fallback:null,children:(0,$.jsx)(og,{open:f,onOpenChange:p})})]})]})})},lg=e=>{if(e<1e3)return`${Math.round(e)}ms`;let t=e/1e3;return t<60?`${t.toFixed(1)}s`:`${Math.floor(t/60)}m ${Math.round(t%60)}s`},ug=e=>{let t=(0,Ts.c)(8),{label:n,value:r}=e,i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(i={backgroundColor:`color-mix(in srgb, var(--surface-muted) 55%, transparent)`},t[0]=i):i=t[0];let a;t[1]===n?a=t[2]:(a=(0,$.jsx)(`div`,{className:`typography-meta text-[var(--surface-muted-foreground)]`,children:n}),t[1]=n,t[2]=a);let o;t[3]===r?o=t[4]:(o=(0,$.jsx)(`div`,{className:`typography-markdown font-semibold text-[var(--surface-foreground)]`,children:r}),t[3]=r,t[4]=o);let s;return t[5]!==a||t[6]!==o?(s=(0,$.jsxs)(`div`,{className:`rounded-md p-2`,style:i,children:[a,o]}),t[5]=a,t[6]=o,t[7]=s):s=t[7],s},dg=e=>{let t=(0,Ts.c)(43),{title:n,snapshot:r,emptyLabel:i}=e,{t:a}=Fe(),o;if(t[0]!==i||t[1]!==r.durationMs||t[2]!==r.entries||t[3]!==r.lastUpdatedAt||t[4]!==r.startedAt||t[5]!==a||t[6]!==n){let e=r.entries.slice(0,12),s;t[8]===r.entries?s=t[9]:(s=r.entries.reduce(pg,0),t[8]=r.entries,t[9]=s);let c=s,l;t[10]===n?l=t[11]:(l=(0,$.jsx)(`div`,{className:`typography-ui-label font-semibold text-[var(--surface-foreground)]`,children:n}),t[10]=n,t[11]=l);let u;t[12]!==r.durationMs||t[13]!==r.startedAt||t[14]!==a?(u=r.startedAt?lg(r.durationMs):a(`memoryDebugPanel.common.idle`),t[12]=r.durationMs,t[13]=r.startedAt,t[14]=a,t[15]=u):u=t[15];let d;t[16]===u?d=t[17]:(d=(0,$.jsx)(`div`,{className:`typography-meta text-[var(--surface-muted-foreground)]`,children:u}),t[16]=u,t[17]=d);let f;t[18]!==l||t[19]!==d?(f=(0,$.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[l,d]}),t[18]=l,t[19]=d,t[20]=f):f=t[20];let p;t[21]===a?p=t[22]:(p=a(`memoryDebugPanel.metric.metrics`),t[21]=a,t[22]=p);let m;t[23]!==r.entries.length||t[24]!==p?(m=(0,$.jsx)(ug,{label:p,value:r.entries.length}),t[23]=r.entries.length,t[24]=p,t[25]=m):m=t[25];let h;t[26]===a?h=t[27]:(h=a(`memoryDebugPanel.metric.samples`),t[26]=a,t[27]=h);let g;t[28]!==h||t[29]!==c?(g=(0,$.jsx)(ug,{label:h,value:c}),t[28]=h,t[29]=c,t[30]=g):g=t[30];let _;t[31]===a?_=t[32]:(_=a(`memoryDebugPanel.metric.lastUpdate`),t[31]=a,t[32]=_);let v;t[33]!==r.lastUpdatedAt||t[34]!==a?(v=r.lastUpdatedAt?a(`memoryDebugPanel.common.live`):a(`memoryDebugPanel.common.notAvailable`),t[33]=r.lastUpdatedAt,t[34]=a,t[35]=v):v=t[35];let y;t[36]!==_||t[37]!==v?(y=(0,$.jsx)(ug,{label:_,value:v}),t[36]=_,t[37]=v,t[38]=y):y=t[38];let b;t[39]!==g||t[40]!==y||t[41]!==m?(b=(0,$.jsxs)(`div`,{className:`grid grid-cols-3 gap-2`,children:[m,g,y]}),t[39]=g,t[40]=y,t[41]=m,t[42]=b):b=t[42],o=(0,$.jsxs)(`div`,{className:`space-y-2 border-t border-[var(--interactive-border)] pt-2 first:border-t-0 first:pt-0`,children:[f,b,e.length===0?(0,$.jsx)(`div`,{className:`rounded-md p-3 typography-meta text-[var(--surface-muted-foreground)]`,style:{backgroundColor:`color-mix(in srgb, var(--surface-muted) 45%, transparent)`},children:i}):(0,$.jsx)(Nr,{outerClassName:`max-h-64`,className:`pr-1`,children:(0,$.jsx)(`div`,{className:`space-y-1`,children:e.map(e=>(0,$.jsxs)(`div`,{className:`rounded-md border border-[var(--interactive-border)] p-2`,style:{backgroundColor:`color-mix(in srgb, var(--surface-elevated) 88%, transparent)`},children:[(0,$.jsx)(`div`,{className:`typography-meta font-medium text-[var(--surface-foreground)] break-all`,children:e.metric}),(0,$.jsxs)(`div`,{className:`mt-1 grid grid-cols-4 gap-2 typography-meta text-[var(--surface-muted-foreground)]`,children:[(0,$.jsx)(`span`,{children:a(`memoryDebugPanel.metric.countValue`,{value:e.count})}),(0,$.jsx)(`span`,{children:a(`memoryDebugPanel.metric.avgValue`,{value:e.avg})}),(0,$.jsx)(`span`,{children:a(`memoryDebugPanel.metric.maxValue`,{value:e.max})}),(0,$.jsx)(`span`,{children:a(`memoryDebugPanel.metric.totalValue`,{value:e.total})})]})]},e.metric))})})]}),t[0]=i,t[1]=r.durationMs,t[2]=r.entries,t[3]=r.lastUpdatedAt,t[4]=r.startedAt,t[5]=a,t[6]=n,t[7]=o}else o=t[7];return o},fg=e=>{let t=(0,Ts.c)(104),{onClose:n}=e,{t:r}=Fe(),[i,a]=Q.useState(`memory`),[o,s]=Q.useState(`idle`),c=Ft(mg),l=at(hg),u=kt(),d=Dt(),[f,p]=Q.useState(gg),m,h;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(m=()=>Ge(()=>{p(pt())}),h=[],t[0]=m,t[1]=h):(m=t[0],h=t[1]),Q.useEffect(m,h);let g;if(t[2]!==d||t[3]!==u){bb0:{let e=Et(),t={};if(!e){g=t;break bb0}let n=e.getCacheBudget?.(),r=n?n.listCanonical().map(_g):u.map(e=>({directory:d,sessionID:e.id}));for(let n of r){if(d&&n.directory!==d)continue;let r=e.getTranscript(nn(n.directory,n.sessionID));t[n.sessionID]=r.messageOrder.map(e=>r.messagesByID[e]).filter(vg)}g=t}t[2]=d,t[3]=u,t[4]=g}else g=t[4];let _=g,v=qf(yg),[y,b]=Q.useState(bg),[x,S]=Q.useState(xg),C;t[5]===y.entries?C=t[6]:(C=new Map,y.entries.forEach(e=>{C.set(e.metric,e.count)}),t[5]=y.entries,t[6]=C);let w;t[7]===C?w=t[8]:(w=C.get(`ui.message_list.render`)??0,t[7]=C,t[8]=w);let T;t[9]===C?T=t[10]:(T=C.get(`ui.message_list.render.streaming`)??0,t[9]=C,t[10]=T);let E;t[11]===C?E=t[12]:(E=C.get(`ui.chat_message.render`)??0,t[11]=C,t[12]=E);let D;t[13]===C?D=t[14]:(D=C.get(`ui.chat_message.render.streaming`)??0,t[13]=C,t[14]=D);let O;t[15]===C?O=t[16]:(O=C.get(`ui.chat_message.render.static_during_stream`)??0,t[15]=C,t[16]=O);let k;t[17]===C?k=t[18]:(k=C.get(`ui.chat_message.render.static_outside_active_turn_during_stream`)??0,t[17]=C,t[18]=k);let A;t[19]!==w||t[20]!==T||t[21]!==E||t[22]!==D||t[23]!==O||t[24]!==k?(A={messageListRender:w,messageListRenderStreaming:T,chatMessageRender:E,chatMessageRenderStreaming:D,chatMessageRenderStaticDuringStream:O,chatMessageRenderStaticOutsideActiveTurnDuringStream:k},t[19]=w,t[20]=T,t[21]=E,t[22]=D,t[23]=O,t[24]=k,t[25]=A):A=t[25];let j=A,M,N;t[26]===Symbol.for(`react.memo_cache_sentinel`)?(M=()=>{let e=()=>{b(we()),S(Ce())};e();let t=window.setInterval(e,500);return()=>window.clearInterval(t)},N=[],t[26]=M,t[27]=N):(M=t[26],N=t[27]),Q.useEffect(M,N);let P,F;t[28]===o?(P=t[29],F=t[30]):(P=()=>{if(o===`idle`)return;let e=window.setTimeout(()=>{s(`idle`)},1500);return()=>window.clearTimeout(e)},F=[o],t[28]=o,t[29]=P,t[30]=F),Q.useEffect(P,F);let I=0,L=0,R=0;for(let e of Object.keys(_)){let t=_[e]??[];L+=t.length;for(let e of t)e.role===`user`?R+=1:e.role===`assistant`&&(I+=1)}let z;t[31]!==I||t[32]!==L||t[33]!==R?(z={assistant:I,total:L,user:R},t[31]=I,t[32]=L,t[33]=R,t[34]=z):z=t[34];let B=z,V;if(t[35]!==c||t[36]!==_||t[37]!==l||t[38]!==u||t[39]!==r){let e;t[41]!==c||t[42]!==_||t[43]!==l||t[44]!==r?(e=e=>{let t=_[e.id]??[],n=0,i=0;for(let e of t)e.role===`user`?i+=1:e.role===`assistant`&&(n+=1);let a=l.get(e.id);return{id:e.id,title:e.title||r(`memoryDebugPanel.common.untitled`),assistantMessageCount:n,messageCount:t.length,userMessageCount:i,isStreaming:a?.isStreaming||!1,isZombie:a?.isZombie||!1,backgroundCount:a?.backgroundMessageCount||0,lastAccessed:a?.lastAccessedAt||0,isCurrent:e.id===c}},t[41]=c,t[42]=_,t[43]=l,t[44]=r,t[45]=e):e=t[45],V=u.map(e).sort(Sg),t[35]=c,t[36]=_,t[37]=l,t[38]=u,t[39]=r,t[40]=V}else V=t[40];let H=V,U;t[46]===_?U=t[47]:(U=Object.keys(_),t[46]=_,t[47]=U);let W=U.length,ee;t[48]===Symbol.for(`react.memo_cache_sentinel`)?(ee=async()=>{try{let e={generatedAt:new Date().toISOString(),ui:we(),vscode:Ce()};await navigator.clipboard.writeText(JSON.stringify(e,null,2)),s(`copied`)}catch{s(`error`)}},t[48]=ee):ee=t[48];let G=ee,te;t[49]===Symbol.for(`react.memo_cache_sentinel`)?(te={backgroundColor:`color-mix(in srgb, var(--surface-background) 94%, transparent)`},t[49]=te):te=t[49];let K;t[50]===i?K=t[51]:(K=i===`memory`?(0,$.jsx)(Z,{name:`database-2`,className:`h-4 w-4 text-[var(--surface-foreground)]`}):(0,$.jsx)(Z,{name:`bar-chart-box`,className:`h-4 w-4 text-[var(--surface-foreground)]`}),t[50]=i,t[51]=K);let ne;t[52]===r?ne=t[53]:(ne=r(`memoryDebugPanel.title`),t[52]=r,t[53]=ne);let re;t[54]===ne?re=t[55]:(re=(0,$.jsx)(`h3`,{className:`typography-ui-label font-semibold text-[var(--surface-foreground)]`,children:ne}),t[54]=ne,t[55]=re);let ie;t[56]!==K||t[57]!==re?(ie=(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[K,re]}),t[56]=K,t[57]=re,t[58]=ie):ie=t[58];let ae;t[59]===i?ae=t[60]:(ae=i===`streaming`?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Sn,{size:`xs`,variant:`ghost`,onClick:G,children:(0,$.jsx)(Z,{name:`file-copy`,className:`h-3.5 w-3.5`})}),(0,$.jsx)(Sn,{size:`xs`,variant:`ghost`,onClick:()=>{ve(),b(we()),S(Ce())},children:(0,$.jsx)(Z,{name:`refresh`,className:`h-3.5 w-3.5`})})]}):null,t[59]=i,t[60]=ae);let oe;t[61]===n?oe=t[62]:(oe=n?(0,$.jsx)(Sn,{size:`icon`,variant:`ghost`,className:`h-6 w-6`,onClick:n,children:(0,$.jsx)(Z,{name:`close`,className:`h-4 w-4`})}):null,t[61]=n,t[62]=oe);let se;t[63]!==ae||t[64]!==oe?(se=(0,$.jsxs)(`div`,{className:`flex items-center gap-1`,children:[ae,oe]}),t[63]=ae,t[64]=oe,t[65]=se):se=t[65];let q;t[66]!==ie||t[67]!==se?(q=(0,$.jsxs)(`div`,{className:`mb-3 flex items-center justify-between gap-2`,children:[ie,se]}),t[66]=ie,t[67]=se,t[68]=q):q=t[68];let ce;t[69]===Symbol.for(`react.memo_cache_sentinel`)?(ce={backgroundColor:`color-mix(in srgb, var(--surface-muted) 55%, transparent)`},t[69]=ce):ce=t[69];let le=i===`memory`?`secondary`:`ghost`,ue;t[70]===Symbol.for(`react.memo_cache_sentinel`)?(ue=()=>a(`memory`),t[70]=ue):ue=t[70];let de;t[71]===r?de=t[72]:(de=r(`memoryDebugPanel.tabs.memory`),t[71]=r,t[72]=de);let fe;t[73]!==le||t[74]!==de?(fe=(0,$.jsx)(Sn,{size:`sm`,variant:le,className:`flex-1`,onClick:ue,children:de}),t[73]=le,t[74]=de,t[75]=fe):fe=t[75];let pe=i===`streaming`?`secondary`:`ghost`,me;t[76]===Symbol.for(`react.memo_cache_sentinel`)?(me=()=>a(`streaming`),t[76]=me):me=t[76];let he;t[77]===r?he=t[78]:(he=r(`memoryDebugPanel.tabs.streaming`),t[77]=r,t[78]=he);let ge;t[79]!==pe||t[80]!==he?(ge=(0,$.jsx)(Sn,{size:`sm`,variant:pe,className:`flex-1`,onClick:me,children:he}),t[79]=pe,t[80]=he,t[81]=ge):ge=t[81];let _e;t[82]!==fe||t[83]!==ge?(_e=(0,$.jsxs)(`div`,{className:`mb-3 flex gap-1 rounded-md p-1`,style:ce,children:[fe,ge]}),t[82]=fe,t[83]=ge,t[84]=_e):_e=t[84];let ye;t[85]!==i||t[86]!==W||t[87]!==o||t[88]!==c||t[89]!==_||t[90]!==B||t[91]!==l||t[92]!==H||t[93]!==u||t[94]!==j||t[95]!==y||t[96]!==r||t[97]!==v||t[98]!==x?(ye=i===`memory`?(0,$.jsxs)(`div`,{className:`space-y-3`,children:[(0,$.jsxs)(`div`,{className:`grid grid-cols-2 gap-2 typography-meta`,children:[(0,$.jsx)(ug,{label:r(`memoryDebugPanel.metric.totalMessages`),value:B.total}),(0,$.jsx)(ug,{label:r(`memoryDebugPanel.metric.cachedSessions`),value:`${W} / ${Gi.MAX_SESSIONS}`}),(0,$.jsx)(ug,{label:r(`memoryDebugPanel.metric.userMessages`),value:B.user}),(0,$.jsx)(ug,{label:r(`memoryDebugPanel.metric.assistantMessages`),value:B.assistant})]}),(0,$.jsxs)(`div`,{className:`typography-meta space-y-1 border-t border-[var(--interactive-border)] pt-2`,children:[(0,$.jsxs)(`div`,{className:`flex justify-between gap-2`,children:[(0,$.jsx)(`span`,{className:`text-[var(--surface-muted-foreground)]`,children:r(`memoryDebugPanel.metric.viewportWindow`)}),(0,$.jsx)(`span`,{className:`text-[var(--surface-foreground)]`,children:r(`memoryDebugPanel.metric.messagesValue`,{count:Hi()})})]}),(0,$.jsxs)(`div`,{className:`flex justify-between gap-2`,children:[(0,$.jsx)(`span`,{className:`text-[var(--surface-muted-foreground)]`,children:r(`memoryDebugPanel.metric.zombieTimeout`)}),(0,$.jsx)(`span`,{className:`text-[var(--surface-foreground)]`,children:r(`memoryDebugPanel.metric.minutesValue`,{count:Gi.ZOMBIE_TIMEOUT/1e3/60})})]}),(0,$.jsxs)(`div`,{className:`flex justify-between gap-2`,children:[(0,$.jsx)(`span`,{className:`text-[var(--surface-muted-foreground)]`,children:r(`memoryDebugPanel.metric.githubTotalRequests`)}),(0,$.jsx)(`span`,{className:`text-[var(--surface-foreground)]`,children:v})]})]}),(0,$.jsxs)(`div`,{className:`border-t border-[var(--interactive-border)] pt-2`,children:[(0,$.jsx)(`div`,{className:`mb-1 typography-meta font-semibold text-[var(--surface-foreground)]`,children:r(`memoryDebugPanel.section.sessionsInMemory`)}),(0,$.jsx)(Nr,{outerClassName:`max-h-48`,className:`space-y-1 pr-1`,children:H.map(e=>(0,$.jsxs)(`div`,{className:`typography-meta flex items-center justify-between rounded p-1.5`,style:{backgroundColor:e.isCurrent?`color-mix(in srgb, var(--interactive-selection) 22%, transparent)`:`color-mix(in srgb, var(--surface-muted) 35%, transparent)`},children:[(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-2`,children:[(0,$.jsx)(`span`,{className:`truncate text-[var(--surface-foreground)]`,children:e.title}),e.isStreaming?(0,$.jsx)(Z,{name:`pulse`,className:`h-3 w-3 animate-pulse text-[var(--status-info)]`}):null,e.isZombie?(0,$.jsx)(`span`,{className:`text-[var(--status-warning)]`,children:`!`}):null]}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(`span`,{className:`font-mono text-[var(--surface-muted-foreground)]`,children:r(`memoryDebugPanel.metric.roleMsgsValue`,{assistant:e.assistantMessageCount,user:e.userMessageCount})}),(0,$.jsx)(`span`,{className:`font-mono text-[var(--surface-foreground)]`,children:r(`memoryDebugPanel.metric.msgsValue`,{count:e.messageCount})}),e.backgroundCount>0?(0,$.jsxs)(`span`,{className:`text-[var(--status-info)]`,children:[`+`,e.backgroundCount]}):null]})]},e.id))})]}),(0,$.jsx)(`div`,{className:`flex gap-2 border-t border-[var(--interactive-border)] pt-2`,children:(0,$.jsxs)($r,{children:[(0,$.jsx)(Xr,{asChild:!0,children:(0,$.jsx)(Sn,{size:`sm`,variant:`outline`,className:`typography-meta`,onClick:()=>{u.map(Cg),Object.keys(_),H.map(wg),Object.fromEntries(l)},children:r(`memoryDebugPanel.actions.logState`)})}),(0,$.jsx)(Zr,{side:`top`,children:r(`memoryDebugPanel.tooltip.logCurrentState`)})]})})]}):(0,$.jsxs)(`div`,{className:`space-y-3`,children:[(0,$.jsxs)(`div`,{className:`flex items-center justify-between gap-2 rounded-md border border-[var(--interactive-border)] px-3 py-2 typography-meta text-[var(--surface-muted-foreground)]`,children:[(0,$.jsx)(`span`,{children:r(o===`copied`?`memoryDebugPanel.streaming.copy.copied`:o===`error`?`memoryDebugPanel.streaming.copy.failed`:`memoryDebugPanel.streaming.copy.hint`)}),(0,$.jsx)(Sn,{size:`xs`,variant:`outline`,onClick:G,children:r(`memoryDebugPanel.actions.copyJson`)})]}),(0,$.jsxs)(`div`,{className:`grid grid-cols-2 gap-2`,children:[(0,$.jsx)(ug,{label:r(`memoryDebugPanel.metric.uiMetrics`),value:y.entries.length}),(0,$.jsx)(ug,{label:r(`memoryDebugPanel.metric.vscodeMetrics`),value:x.entries.length}),(0,$.jsx)(ug,{label:r(`memoryDebugPanel.metric.messageListRenders`),value:j.messageListRender}),(0,$.jsx)(ug,{label:r(`memoryDebugPanel.metric.messageListStreamRenders`),value:j.messageListRenderStreaming}),(0,$.jsx)(ug,{label:r(`memoryDebugPanel.metric.chatMessageRenders`),value:j.chatMessageRender}),(0,$.jsx)(ug,{label:r(`memoryDebugPanel.metric.chatMessageStreamRenders`),value:j.chatMessageRenderStreaming}),(0,$.jsx)(ug,{label:r(`memoryDebugPanel.metric.chatMessageStaticDuringStream`),value:j.chatMessageRenderStaticDuringStream}),(0,$.jsx)(ug,{label:r(`memoryDebugPanel.metric.chatMessageStaticOutsideActiveTurn`),value:j.chatMessageRenderStaticOutsideActiveTurnDuringStream})]}),(0,$.jsx)(dg,{title:r(`memoryDebugPanel.section.uiStreamingMetrics`),snapshot:y,emptyLabel:r(`memoryDebugPanel.section.noUiSamples`)}),x.entries.length>0?(0,$.jsx)(dg,{title:r(`memoryDebugPanel.section.vscodeBridgeMetrics`),snapshot:x,emptyLabel:r(`memoryDebugPanel.section.noVscodeSamples`)}):null]}),t[85]=i,t[86]=W,t[87]=o,t[88]=c,t[89]=_,t[90]=B,t[91]=l,t[92]=H,t[93]=u,t[94]=j,t[95]=y,t[96]=r,t[97]=v,t[98]=x,t[99]=ye):ye=t[99];let be;return t[100]!==q||t[101]!==_e||t[102]!==ye?(be=(0,$.jsxs)(pi,{className:`fixed bottom-4 right-4 z-50 w-[28rem] p-4 shadow-none bottom-safe-area`,style:te,children:[q,_e,ye]}),t[100]=q,t[101]=_e,t[102]=ye,t[103]=be):be=t[103],be};function pg(e,t){return e+t.count}function mg(e){return e.currentSessionId}function hg(e){return e.sessionMemoryState}function gg(){return pt()}function _g(e){return e.scope}function vg(e){return!!e}function yg(e){return e.totalRequestCount}function bg(){return we()}function xg(){return Ce()}function Sg(e,t){return t.lastAccessed-e.lastAccessed}function Cg(e){return{id:e.id,title:e.title}}function wg(e){return{id:e.id,title:e.title,total:e.messageCount,user:e.userMessageCount,assistant:e.assistantMessageCount}}var Tg=()=>{let{isMobile:e,closeActiveContextPanelTab:t}=u.getState();if(e)return;let n=Da();n&&t(n)||b()&&L(`desktop_close_current_window`).catch(e=>{console.warn(`[menu-actions] failed to close current window`,e)})},Eg=()=>{if(typeof document>`u`)return``;let e=document.activeElement;if(e instanceof HTMLTextAreaElement)return e.value.slice(e.selectionStart??0,e.selectionEnd??0);if(e instanceof HTMLInputElement){let t=e.type?.toLowerCase()??`text`;if([`text`,`search`,`url`,`tel`,`password`].includes(t))return e.value.slice(e.selectionStart??0,e.selectionEnd??0)}return e instanceof HTMLElement&&e.isContentEditable?e.ownerDocument.defaultView?.getSelection?.()?.toString()??``:``},Dg=async()=>{let e=Eg()||window.getSelection()?.toString()||``;if(!e.trim())return!1;try{if(typeof navigator<`u`&&navigator.clipboard?.writeText)return await navigator.clipboard.writeText(e),!0}catch{}return document.execCommand(`copy`)},Og=`openchamber:menu-action`,kg=`openchamber:check-for-updates`,Ag=e=>typeof e?.listen==`function`?`bridge`:`dom`,jg=e=>{let t=Ft(e=>e.openNewSessionDraft),n=u(e=>e.toggleCommandPalette),r=u(e=>e.setCommandPaletteOpen),i=u(e=>e.toggleHelpDialog),a=u(e=>e.toggleSidebar),o=u(e=>e.setSessionSwitcherOpen),s=u(e=>e.setActiveMainTab),c=u(e=>e.setSettingsDialogOpen),l=u(e=>e.setSettingsPage),d=u(e=>e.setAboutDialogOpen),f=u(e=>e.toggleRightSidebar),p=u(e=>e.setRightSidebarOpen),m=u(e=>e.setRightSidebarTab),h=u(e=>e.toggleBottomTerminal),g=u(e=>e.setBottomTerminalExpanded),_=La(e=>e.checkForUpdates),{setThemeMode:v}=si(),{t:y}=Fe(),b=Q.useRef(!1),x=typeof window>`u`?null:window.__OPENCHAMBER_DESKTOP__,S=Ag(x),C=Q.useCallback(()=>{b.current||(b.current=!0,_().then(()=>{let{available:e,error:t}=La.getState();if(t){Y.error(y(`sessions.sidebar.updateCheck.errorTitle`),{description:t});return}e||Y.success(y(`sessions.sidebar.updateCheck.latestVersion`))}).finally(()=>{b.current=!1}))},[_,y]),w=Q.useCallback(()=>{Be.requestDirectoryDialog()},[]),T=Q.useCallback(e=>{_r(e,Ft.getState().currentSessionId,e=>{s(`chat`),o(!1),Ft.getState().setCurrentSession(e.sessionId,e.directory)})},[s,o]),E=Q.useCallback(e=>{let{activeProjectId:t,projects:n,setActiveProject:r}=vt.getState();if(n.length===0)return;let i=n.findIndex(e=>e.id===t),a=e>0?0:n.length-1;i>=0&&(a=(i+e+n.length)%n.length);let o=n[a];o&&r(o.id)},[]),D=Q.useCallback(_=>{switch(_){case`about`:d(!0);break;case`settings`:c(!0);break;case`switch-instance`:l(`remote-instances`),c(!0);break;case`command-palette`:n();break;case`quick-open`:r(!0);break;case`new-session`:s(`chat`),o(!1),t();break;case`new-worktree-session`:s(`chat`),o(!1),Ui();break;case`change-workspace`:w();break;case`close-tab-or-window`:Tg();break;case`toggle-right-sidebar`:f();break;case`open-right-sidebar-git`:p(!0),m(`git`);break;case`open-right-sidebar-files`:p(!0),m(`files`);break;case`toggle-terminal`:h();break;case`toggle-terminal-expanded`:g(!u.getState().isBottomTerminalExpanded);break;case`copy`:{let e=new Event(`openchamber:copy`,{cancelable:!0});window.dispatchEvent(e)&&Dg();break}case`theme-light`:v(`light`);break;case`theme-dark`:v(`dark`);break;case`theme-system`:v(`system`);break;case`toggle-sidebar`:a();break;case`toggle-memory-debug`:e?.();break;case`zoom-in`:wr();break;case`zoom-out`:Sr();break;case`zoom-reset`:hr();break;case`go-back`:ge.getState().goBack();break;case`go-forward`:ge.getState().goForward();break;case`previous-session`:T(-1);break;case`next-session`:T(1);break;case`previous-project`:E(-1);break;case`next-project`:E(1);break;case`help-dialog`:i();break;case`download-logs`:Ar().catch(()=>{Y.error(`Failed to collect OpenCode status`)})}},[w,E,T,e,t,d,s,o,r,c,l,g,p,m,v,h,n,i,f,a]);Q.useEffect(()=>{if(S!==`dom`)return;let e=e=>{let t=e.detail;t&&D(t)},t=()=>{C()};return window.addEventListener(Og,e),window.addEventListener(kg,t),()=>{window.removeEventListener(Og,e),window.removeEventListener(kg,t)}},[D,C,S]),Q.useEffect(()=>{if(S!==`bridge`)return;let e=x?.listen;if(typeof e!=`function`)return;let t=null,n=null;return e(`openchamber:menu-action`,e=>{let t=e?.payload;typeof t==`string`&&D(t)}).then(e=>{t=e}).catch(()=>{}),e(`openchamber:check-for-updates`,C).then(e=>{n=e}).catch(()=>{}),()=>{(async()=>{try{let e=t?.();e instanceof Promise&&await e}catch{}try{let e=n?.();e instanceof Promise&&await e}catch{}})()}},[x,D,C,S])},Mg=(e,t)=>e<t?-1:+(e>t),Ng=e=>JSON.stringify([...e.entries()].map(([e,t])=>[e,[...new Set(t)].sort(Mg)]).sort(([e],[t])=>Mg(e,t)));async function Pg({targets:e,isReady:t,fetchStatus:n,applySnapshot:r,concurrency:i=2,isDisposed:a=()=>!1}){if(!t()||a())return;let o=[...e.entries()],s=0,c=Math.min(Math.max(1,i),o.length),l=async()=>{for(;s<o.length&&t()&&!a();){let e=o[s];if(s+=1,!e)return;let[t,i]=e,c=await n(t);c===null||a()||r(t,c,i)}};await Promise.all(Array.from({length:c},()=>l()))}var Fg=`openchamber:tray-action`,Ig=3e4,Lg=120,Rg=20,zg=()=>{if(typeof window>`u`)return!1;let e=window.__OPENCHAMBER_PLATFORM__;return e===`darwin`||e===`win32`},Bg=e=>{let t=typeof e.permission==`string`?e.permission:`Permission`,n=Array.isArray(e.patterns)?e.patterns.find(e=>typeof e==`string`&&e.trim()):``;return n?`${t}: ${n}`:t},Vg=e=>{let t=Array.isArray(e.questions)?e.questions[0]:void 0;return t?.header||t?.question||`Question`},Hg=e=>ze(e),Ug=e=>{let t=e.replace(/\\/g,`/`).replace(/\/+$/,``),n=t.lastIndexOf(`/`);return n>=0?t.slice(n+1):t},Wg=(e,t,n,r)=>{if(!e)return``;let i=it(t,n,e),a=Ug(i?i.path:e),o=J(e),s=o&&r.get(o)||``;if(!s){for(let[e,t]of ta.getState().directories)if(J(e)===o){s=t.status?.current??``;break}}if(!s)for(let e of n.values()){let t=e.find(e=>J(e.path)===o);if(t?.branch){s=t.branch;break}}return s?`${a} · ${s}`:a},Gg=()=>{let{results:e,dropdownProviderIds:t,displayMode:n}=Qa.getState(),r=n===`remaining`?`remaining`:`usage`;if(!t.length)return{mode:r,groups:[]};let i=new Map(e.map(e=>[e.providerId,e])),a=[];for(let e of Ha){if(!t.includes(e.id))continue;let n=i.get(e.id);if(!n||n.configured!==!0)continue;let o=[];for(let[e,t]of Object.entries(n.usage?.windows??{})){let n=r===`remaining`?t.remainingPercent:t.usedPercent;o.push({label:oi(e),value:ri(t.valueLabel,n)})}let s=!n.ok&&n.error?n.error:o.length===0?`No rate limits reported`:null;a.push({provider:e.name,rows:o,status:s})}return{mode:r,groups:a}},Kg=async()=>{try{if(E())return`Local OpenChamber`;let e=window.__OPENCHAMBER_LOCAL_ORIGIN__||window.location.origin,t=r();if(t&&W(t,e))return`Local OpenChamber`;let n=(await K()).hosts.find(e=>t?W(t,G(e)):!1);return n?.label?.trim()?ee(n.label.trim()):`Instance`}catch{return``}},qg=()=>{let e=new Map,t=new Map,n=[],r=new Map,i;try{i=At()}catch{return{statusById:e,branchByDirectory:t,approvals:n,titleById:r}}for(let[a,o]of i.children.entries()){let i=o.getState();i.vcs?.branch&&t.set(J(a)??a,i.vcs.branch);for(let e of i.session)e?.id&&r.set(e.id,e.title);for(let[t,n]of Object.entries(i.session_status??{})){let r=n?.type,i=r===`busy`?`busy`:r===`retry`?`retry`:`idle`,a=e.get(t);(!a||a===`idle`)&&e.set(t,i)}for(let[e,t]of Object.entries(i.permission??{}))for(let r of t??[]){if(!r?.id)continue;let t=r.sessionID||e;n.push({kind:`permission`,id:r.id,sessionId:t,sessionTitle:``,label:Bg(r),directory:a})}for(let[e,t]of Object.entries(i.question??{}))for(let r of t??[]){if(!r?.id)continue;let t=r.sessionID||e;n.push({kind:`question`,id:r.id,sessionId:t,sessionTitle:``,label:Vg(r),directory:a})}}return{statusById:e,branchByDirectory:t,approvals:n,titleById:r}},Jg=()=>{let e=Tt.getState().activeSessions,t=new Set;e.filter(e=>e?.id&&!e.parentID).slice().sort((e,t)=>Hg(t)-Hg(e)).slice(0,Rg).forEach(e=>{let n=Rt(e);n&&t.add(n)});let n=new Map;for(let r of e){if(!r?.id)continue;let e=Rt(r);if(!e||!t.has(e))continue;let i=n.get(e)??[];i.push(r.id),n.set(e,i)}return n},Yg=e=>{let t=qg(),n=Mt.getState().index.session,r=Tt.getState().activeSessions,i=new Map(t.titleById),a=new Map;for(let e of r)if(e?.id&&(e.title&&i.set(e.id,e.title),e.parentID)){let t=a.get(e.parentID)??[];t.push(e.id),a.set(e.parentID,t)}let o=e=>{let t=[],n=[...a.get(e)??[]],r=new Set;for(;n.length;){let e=n.pop();r.has(e)||(r.add(e),t.push(e),n.push(...a.get(e)??[]))}return t},s=an.getState().statusById,c=e=>{let n=t.statusById.get(e);return n&&n!==`idle`?n:s.get(e)?.status??n??`idle`},l=e=>{let t=e.map(e=>c(e));return t.includes(`busy`)?`busy`:t.includes(`retry`)?`retry`:`idle`},d=vt.getState().projects,f=Ft.getState().availableWorktreesByProject,p=r.filter(e=>e?.id&&!e.parentID).slice().sort((e,t)=>Hg(t)-Hg(e)).slice(0,Rg).map(e=>{let r=[e.id,...o(e.id)],i=Rt(e)??``;return{id:e.id,title:e.title||`Untitled session`,status:l(r),branch:i?t.branchByDirectory.get(i)??``:``,unseen:n.unseenCount[e.id]??0,hasError:n.unseenHasError[e.id]??!1,directory:i,subtitle:Wg(i,d,f,t.branchByDirectory)}}),m=t.approvals.map(e=>({...e,sessionTitle:i.get(e.sessionId)||``})),h=u.getState(),g=0;if(h.dockBadgeEnabled)for(let e of r)!e?.id||e.parentID||(n.unseenCount[e.id]??0)>0&&(g+=1);return{sessions:p,approvals:m,instanceName:e,usage:Gg(),dockBadgeCount:g}},Xg=()=>{Q.useEffect(()=>{if(!zg()||!b())return;let e=!1,t=``,n=null,r=``,i=()=>{if(e)return;let n=Yg(r),i=JSON.stringify(n);i!==t&&(t=i,L(`desktop_tray_update`,n))};Kg().then(t=>{e||(r=t,i())});let a=null,o=``,s=()=>{let e=Zt.getState();return e.isConnected&&e.connectionPhase===`connected`},c=()=>{if(a)return a;let t=Jg();return o=Ng(t),a=Pg({targets:t,isReady:s,concurrency:2,isDisposed:()=>e,fetchStatus:e=>xe.getSessionStatusForDirectory(e).catch(()=>null),applySnapshot:(e,t,n)=>{_t(e,t,[...n])}}).finally(()=>{a=null;let t=Jg();!e&&s()&&Ng(t)!==o&&c()}),a},l=()=>{e||n!==null||(n=window.setTimeout(()=>{n=null,i()},Lg))},d=new Map,f=()=>{if(e)return;let t;try{t=At()}catch{return}let n=new Set;for(let[e,r]of t.children.entries())n.add(e),d.has(e)||d.set(e,r.subscribe(()=>l()));for(let[e,t]of d)n.has(e)||(t(),d.delete(e))},p=null;try{p=At().subscribeRegistry(()=>{f(),l()})}catch{}f();let m=Mt.subscribe(()=>l()),h=Tt.subscribe(()=>{l(),s()&&Ng(Jg())!==o&&c()}),g=vt.subscribe(()=>l()),_=Ft.subscribe(()=>l()),v=ta.subscribe(()=>l()),y=u.subscribe(()=>l()),x=an.subscribe(()=>l()),S=s(),C=Zt.subscribe(()=>{let e=s();e&&!S&&c(),S=e});S&&c();let w=Qa.subscribe(()=>l());Qa.getState().loadSettings().then(()=>{if(e)return;let{dropdownProviderIds:t,results:n}=Qa.getState();t.length>0&&t.some(e=>!n.some(t=>t.providerId===e))&&Qa.getState().fetchAllQuotas()});let T=window.setInterval(()=>{let e=Qa.getState();e.autoRefresh&&e.dropdownProviderIds.length>0&&e.fetchAllQuotas()},Math.max(3e4,Qa.getState().refreshIntervalMs||6e4)),E=window.setInterval(()=>{f(),i()},Ig);return i(),()=>{e=!0,n!==null&&window.clearTimeout(n),window.clearInterval(E),window.clearInterval(T),m(),h(),g(),_(),v(),y(),x(),C(),w(),p?.();for(let e of d.values())e();d.clear()}},[]),Q.useEffect(()=>{if(!zg()||typeof window>`u`)return;let e=window.__OPENCHAMBER_DESKTOP__?.listen;if(typeof e!=`function`)return;let t=e=>{e.type===`respond-permission`&&st(e.sessionId,e.id,e.response).catch(()=>{Y.error(`Failed to respond to permission request`)})},n=null;return e(Fg,e=>{let n=e?.payload;!n||typeof n!=`object`||typeof n.type!=`string`||t(n)}).then(e=>{n=e}).catch(()=>{}),()=>{try{let e=n?.();e instanceof Promise&&e.catch(()=>{})}catch{}}},[])},Zg=`/api/notifications/stream`,Qg=()=>typeof document>`u`||document.visibilityState===`visible`&&document.hasFocus(),$g=e=>{if(!e||typeof e!=`object`)return null;let t=e,n=t.properties&&typeof t.properties==`object`?t.properties:null;return t.type!==`openchamber:notification`||!n?null:{title:typeof n.title==`string`?n.title:void 0,body:typeof n.body==`string`?n.body:void 0,tag:typeof n.tag==`string`?n.tag:void 0}},e_=e=>{let t=(0,Ts.c)(3),n=e?.enabled??!0,r,i;t[0]===n?(r=t[1],i=t[2]):(r=()=>{if(!n||T()||!k()||typeof window>`u`||typeof EventSource>`u`)return;let e=new EventSource(a().sse(Zg));return e.onmessage=t_,()=>{e.close()}},i=[n],t[0]=n,t[1]=r,t[2]=i),Q.useEffect(r,i)};function t_(e){let t;try{t=JSON.parse(e.data)}catch{return}let n=u.getState();if(!n.nativeNotificationsEnabled||n.notificationMode!==`always`&&Qg())return;let r=$g(t);r&&U()?.notifications?.notifyAgentCompletion(r)}var n_=`pwa-install-toast-shown`,r_=`pwa-install-toast-dismissed`,i_=()=>{let e=(0,Ts.c)(6),{browserTab:t}=Ka(),{t:n}=Fe(),r=Q.useRef(n),i,a;e[0]===n?(i=e[1],a=e[2]):(i=()=>{r.current=n},a=[n],e[0]=n,e[1]=i,e[2]=a),Q.useEffect(i,a);let o,c;e[3]===t?(o=e[4],c=e[5]):(o=()=>{if(typeof window>`u`||!k()||!t)return;let e=null,n=null,i=()=>{n!==null&&(Y.dismiss(n),n=null)},a=async()=>{if(!e)return;let t=e;e=null,i(),await t.prompt();let{outcome:n}=await t.userChoice;n===`accepted`&&Y.success(r.current(`pwa.installPrompt.started`))},o=t=>{let o=t;if(typeof o.prompt!=`function`)return;o.preventDefault(),e=o;let c=s(),l=d();Io({dismissed:c.getItem(r_),sessionShown:l.getItem(n_),hasActiveToast:n!==null})&&(l.setItem(n_,`true`),n=Y.info(r.current(`pwa.installPrompt.description`),{duration:1/0,action:{label:r.current(`pwa.installPrompt.action`),onClick:()=>{a()}},cancel:{label:r.current(`pwa.installPrompt.dismiss`),onClick:()=>{s().setItem(r_,`true`),i()}}}))},c=()=>{e=null,i(),Y.success(r.current(`pwa.installPrompt.installed`))};return window.addEventListener(`beforeinstallprompt`,o),window.addEventListener(`appinstalled`,c),()=>{i(),window.removeEventListener(`beforeinstallprompt`,o),window.removeEventListener(`appinstalled`,c)}},c=[t],e[3]=t,e[4]=o,e[5]=c),Q.useEffect(o,c)},a_=()=>typeof window>`u`?``:window.__OPENCHAMBER_LOCAL_ORIGIN__||window.location.origin,o_=()=>!D()||o()===`local`,s_=e=>({id:`local`,label:`Local`,url:e}),c_=async()=>{if(!D()||o_())return{ok:!0};let e=a_(),t=await te().catch(()=>``),n=await ei({host:s_(e),localApiOrigin:e,localClientToken:t});return n.ok?{ok:!0}:{ok:!1,reason:n.reason}},l_=100,u_=1e4,d_=null,f_=()=>{d_&&=(d_.unsubscribe?.(),d_.openTimer!==null&&clearTimeout(d_.openTimer),d_.timeoutTimer!==null&&clearTimeout(d_.timeoutTimer),null)};function p_(){f_()}var m_=(e,t)=>{u.getState().setActiveMainTab(`chat`),Ft.getState().setCurrentSession(e,t)};function h_(e){let n=typeof e?.sessionId==`string`?e.sessionId.trim():``;if(!n)return;let r=typeof e?.directory==`string`&&e.directory.trim().length>0?e.directory.trim():null;if(o_()){m_(n,r);return}f_(),c_().then(e=>{if(!e.ok){tn(n,`missing-directory`);return}if(o()===`local`){m_(n,r);return}let i=!1,a=()=>{i||(i=!0,f_(),m_(n,r))},s=t(e=>{if(e.runtimeKey!==`local`)return;s(),d_&&(d_.unsubscribe=null);let t=setTimeout(()=>{d_&&(d_.openTimer=null),a()},l_);d_&&(d_.openTimer=t)});d_={unsubscribe:s,openTimer:null,timeoutTimer:setTimeout(()=>{i||(f_(),tn(n,`missing-directory`))},u_)}})}var g_=({open:e,onOpenChange:t})=>{let{t:n}=Fe(),[r,i]=Q.useState(null),[a,o]=Q.useState(null),[s,c]=Q.useState(!1),[l,u]=Q.useState(!1),[d,f]=Q.useState(null),[p,m]=Q.useState(!1),[h,g]=Q.useState(!1),[_,v]=Q.useState(()=>jt()),y=Ae(e=>{It(e),v(e)}),b=Ae(async()=>{if(!h){g(!0);try{let{outcome:e,eventCount:t}=await Jt();if(e===`cancelled`)return;if(e===`failed`){Y.error(n(`settings.openchamber.about.diagnostics.toast.failed`));return}Y.success(n(t>0?`settings.openchamber.about.diagnostics.toast.exported`:`settings.openchamber.about.diagnostics.toast.empty`))}catch{Y.error(n(`settings.openchamber.about.diagnostics.toast.failed`))}finally{g(!1)}}});Q.useCallback(async()=>{},[d,s,!1,n]),Q.useEffect(()=>{e&&(async()=>{try{let e=await N(`/api/system/info`);if(e.ok){let t=await e.json();if(typeof t.openchamberVersion==`string`&&t.openchamberVersion.trim()){i(t.openchamberVersion);return}}}catch{}i(await Ne())})()},[e]),Q.useEffect(()=>{if(!e)return;let t=!1;return(async()=>{try{let e=await N(`/api/opencode/upgrade-status`,{headers:{Accept:`application/json`}});if(!e.ok)return;let n=await e.json().catch(()=>null),r=typeof n?.currentVersion==`string`?n.currentVersion.trim():``;!t&&r&&o(r)}catch{}})(),()=>{t=!0}},[e]),Q.useEffect(()=>{f(null),m(!1)},[e,!1]);let x=r;return(0,$.jsx)(mn,{open:e,onOpenChange:t,children:(0,$.jsx)(dn,{className:`max-w-xs p-6`,children:(0,$.jsxs)(`div`,{className:`flex flex-col items-center text-center space-y-4`,children:[(0,$.jsx)(hi,{width:64,height:64}),(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`h2`,{className:`text-lg font-semibold`,children:`OpenChamber`}),(0,$.jsxs)(`div`,{className:`space-y-0.5 typography-meta text-muted-foreground`,children:[x&&(0,$.jsx)(`p`,{children:n(`aboutDialog.openChamberVersionLabel`,{version:x})}),a&&(0,$.jsx)(`p`,{children:n(`aboutDialog.openCodeVersionLabel`,{version:a})})]})]}),(0,$.jsxs)(`div`,{className:`flex w-full flex-col items-stretch gap-3 pt-2`,children:[(0,$.jsx)(Ba,{itemId:`about.diagnostics`,checked:_,onChange:y,label:n(`settings.openchamber.about.diagnostics.label`),ariaLabel:n(`settings.openchamber.about.diagnostics.label`)}),_&&(0,$.jsx)(Sn,{type:`button`,variant:`outline`,size:`sm`,disabled:h,onClick:()=>void b(),children:n(h?`settings.openchamber.about.diagnostics.exporting`:`settings.openchamber.about.diagnostics.export`)})]}),!1,(0,$.jsxs)(`div`,{className:`flex flex-col items-center gap-2 pt-2`,children:[(0,$.jsxs)(`div`,{className:`flex items-center justify-center gap-4`,children:[(0,$.jsxs)(`a`,{href:`https://github.com/yee94/openchamber`,target:`_blank`,rel:`noopener noreferrer`,className:`flex items-center gap-1.5 typography-meta text-muted-foreground hover:text-foreground transition-colors`,children:[(0,$.jsx)(Z,{name:`github-fill`,className:`h-4 w-4`}),(0,$.jsx)(`span`,{children:`GitHub`})]}),(0,$.jsxs)(`a`,{href:`https://discord.gg/ZYRSdnwwKA`,target:`_blank`,rel:`noopener noreferrer`,className:`flex items-center gap-1.5 typography-meta text-muted-foreground hover:text-foreground transition-colors`,children:[(0,$.jsx)(Z,{name:`discord-fill`,className:`h-4 w-4`}),(0,$.jsx)(`span`,{children:`Discord`})]})]}),(0,$.jsxs)(`a`,{href:`https://x.com/openchamber_dev`,target:`_blank`,rel:`noopener noreferrer`,className:`flex items-center gap-1.5 typography-meta text-muted-foreground hover:text-foreground transition-colors`,children:[(0,$.jsx)(Z,{name:`twitter-xfill`,className:`h-4 w-4`}),(0,$.jsx)(`span`,{children:`@openchamber_dev`})]})]}),(0,$.jsx)(`p`,{className:`typography-meta text-muted-foreground/60 pt-2`,children:n(`aboutDialog.footerNote`)})]})})})},__=(e,t)=>{let n=e.get(t);return typeof n==`string`&&n.trim()||null},v_=(e,t)=>{let n=e instanceof Error?e.message:t;return/oauth state required/i.test(n)?`Authorization session expired or was cleared during reload. Return to OpenChamber and click Authorize again.`:n},y_=()=>{let e=Na(e=>e.completeAuth),[t,n]=Q.useState(`working`),[r,i]=Q.useState(`Completing MCP authorization...`);return Q.useEffect(()=>{if(typeof window>`u`){n(`error`),i(`Browser context unavailable.`);return}let t=new URLSearchParams(window.location.search),r=__(t,`code`),a=za(t),o=Ja(t),s=__(t,`error`),c=__(t,`error_description`);if(s){o&&N(`/api/mcp/auth/pending?state=${encodeURIComponent(o)}`,{method:`DELETE`}).catch(()=>void 0),n(`error`),i(c??s);return}(async()=>{try{if(!r)throw Error(`Missing OAuth authorization code. Start authorization again from MCP Settings or paste the returned code into OpenChamber manually.`);let t=a;if(!t&&o){let e=await N(`/api/mcp/auth/pending?state=${encodeURIComponent(o)}`);if(e.ok){let n=await e.json().catch(()=>null);n?.name?.trim()&&(t={name:n.name.trim(),directory:typeof n.directory==`string`&&n.directory.trim()?n.directory.trim():null})}}if(!t?.name)throw Error(`Authorization session details were not available. Start authorization again from MCP Settings or paste the returned code into OpenChamber manually.`);await e(t.name,r,t.directory),o&&await N(`/api/mcp/auth/pending?state=${encodeURIComponent(o)}`,{method:`DELETE`}).catch(()=>void 0),n(`success`),i(`Authorization completed. You can close this tab and return to OpenChamber.`)}catch(e){o&&await N(`/api/mcp/auth/pending?state=${encodeURIComponent(o)}`,{method:`DELETE`}).catch(()=>void 0),n(`error`),i(v_(e,`Failed to complete MCP authorization.`))}})()},[e]),(0,$.jsx)(`div`,{className:`flex min-h-screen items-center justify-center bg-background px-6 py-12 text-foreground`,children:(0,$.jsxs)(`div`,{className:`w-full max-w-xl rounded-xl border border-[var(--interactive-border)] bg-[var(--surface-elevated)] p-8 shadow-sm dark:shadow-none`,children:[(0,$.jsxs)(`div`,{className:`space-y-3 text-center`,children:[(0,$.jsx)(`div`,{className:t===`error`?`text-[var(--status-error)]`:t===`success`?`text-[var(--status-success)]`:`text-[var(--status-info)]`,children:(0,$.jsx)(`h1`,{className:`typography-hero font-semibold`,children:t===`working`?`Completing Authorization`:t===`success`?`Authorization Complete`:`Authorization Failed`})}),(0,$.jsx)(`p`,{className:`typography-body text-muted-foreground`,children:r})]}),t!==`working`&&(0,$.jsx)(`div`,{className:`mt-8 flex justify-center`,children:(0,$.jsx)(Sn,{type:`button`,onClick:()=>{typeof window>`u`||window.location.replace(`/`)},children:`Return to OpenChamber`})})]})})},b_=()=>{let e=(0,Ts.c)(16),t=Tt(x_),n=Tt(S_),r=Tt(C_),i=Tt(w_),{t:a}=Fe(),o;e[0]!==r||e[1]!==i?(o=i>0?Math.round(r/i*100):0,e[0]=r,e[1]=i,e[2]=o):o=e[2];let s=o,c;e[3]!==r||e[4]!==n||e[5]!==a||e[6]!==i?(c=n===`restoring`?a(`common.loading`):a(`sessions.startupSync.progress`,{completed:r,total:i}),e[3]=r,e[4]=n,e[5]=a,e[6]=i,e[7]=c):c=e[7];let l=c,u,d;return e[8]!==t||e[9]!==r||e[10]!==s||e[11]!==l||e[12]!==a||e[13]!==i?(u=()=>{let e=document.getElementById(`startup-session-progress`),n=document.getElementById(`startup-session-progress-track`),o=document.getElementById(`startup-session-progress-fill`),c=document.getElementById(`startup-session-progress-text`);!e||!n||!o||!c||(e.hidden=!t,t&&(o.style.width=`${s}%`,n.setAttribute(`aria-label`,a(`sessions.startupSync.title`)),n.setAttribute(`aria-valuemax`,String(Math.max(i,1))),n.setAttribute(`aria-valuenow`,String(r)),n.setAttribute(`aria-valuetext`,l),c.textContent=l))},d=[t,r,s,l,a,i],e[8]=t,e[9]=r,e[10]=s,e[11]=l,e[12]=a,e[13]=i,e[14]=u,e[15]=d):(u=e[14],d=e[15]),Q.useLayoutEffect(u,d),null};function x_(e){return e.startupSyncProgress.active}function S_(e){return e.startupSyncProgress.phase}function C_(e){return e.startupSyncProgress.completed}function w_(e){return e.startupSyncProgress.total}var T_=(e,t,n,r=350)=>n?Math.max(0,r-Math.max(0,t-e)):null;function E_(e){let t=(0,Ts.c)(21),{transition:n,ready:r}=e,{t:i}=Fe(),a=ti(),[o,s]=Q.useState(0),c=n.epoch>o,l=a||c,u,d;if(t[0]!==c||t[1]!==a||t[2]!==r||t[3]!==n.epoch||t[4]!==n.startedAt?(u=()=>{if(!c||a)return;let e=T_(n.startedAt,Date.now(),r);if(e===null)return;let t=window.setTimeout(()=>{s(e=>Math.max(e,n.epoch))},e);return()=>window.clearTimeout(t)},d=[c,a,r,n.epoch,n.startedAt],t[0]=c,t[1]=a,t[2]=r,t[3]=n.epoch,t[4]=n.startedAt,t[5]=u,t[6]=d):(u=t[5],d=t[6]),Q.useEffect(u,d),!l)return null;let f;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,$.jsxs)(`div`,{className:`pointer-events-none absolute inset-0 opacity-70`,"aria-hidden":`true`,children:[(0,$.jsx)(`div`,{className:`absolute left-1/2 top-1/2 size-[28rem] -translate-x-1/2 -translate-y-1/2 rounded-full border border-[var(--interactive-border)]/40`}),(0,$.jsx)(`div`,{className:`absolute left-1/2 top-1/2 size-72 -translate-x-1/2 -translate-y-1/2 rounded-full bg-[var(--interactive-selection)]/10 blur-3xl`})]}),t[7]=f):f=t[7];let p;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(p=(0,$.jsx)(`div`,{className:`mb-7 flex size-28 items-center justify-center rounded-[2rem] border border-[var(--interactive-border)]/60 bg-[var(--surface-elevated)]/75 shadow-2xl shadow-background/40`,children:(0,$.jsx)(hi,{width:76,height:76,isAnimated:!0})}),t[8]=p):p=t[8];let m;t[9]===i?m=t[10]:(m=i(`desktopHostSwitcher.transition.title`),t[9]=i,t[10]=m);let h;t[11]===m?h=t[12]:(h=(0,$.jsx)(`h1`,{className:`typography-title text-foreground`,children:m}),t[11]=m,t[12]=h);let g;t[13]===i?g=t[14]:(g=i(`desktopHostSwitcher.transition.description`),t[13]=i,t[14]=g);let _;t[15]===g?_=t[16]:(_=(0,$.jsx)(`p`,{className:`mt-2 typography-body text-muted-foreground`,children:g}),t[15]=g,t[16]=_);let v;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(v=(0,$.jsx)(`div`,{className:`mt-7 h-1 w-28 overflow-hidden rounded-full bg-[var(--surface-muted)]`,"aria-hidden":`true`,children:(0,$.jsx)(`div`,{className:`h-full w-1/2 animate-pulse rounded-full bg-[var(--status-info)] motion-reduce:animate-none`})}),t[17]=v):v=t[17];let y;return t[18]!==h||t[19]!==_?(y=(0,$.jsxs)(`div`,{className:`fixed inset-0 z-[9998] flex items-center justify-center overflow-hidden bg-background/95 px-6 backdrop-blur-xl`,role:`status`,"aria-live":`polite`,"aria-atomic":`true`,children:[f,(0,$.jsxs)(`div`,{className:`relative flex max-w-md animate-in flex-col items-center text-center fade-in zoom-in-95 duration-300 motion-reduce:animate-none`,children:[p,h,_,v]})]}),t[18]=h,t[19]=_,t[20]=y):y=t[20],y}var D_=la(()=>Te(()=>import(`./OnboardingScreen-BkbprNa7.js`).then(e=>({default:e.OnboardingScreen})),__vite__mapDeps([104,1,5,2,3,4,6,7,8,44,14,15,12,24,25,26,27,28,53]))),O_=36e5,k_=12e5,A_=()=>{let e=(0,Ts.c)(3),t=u(L_),n=u(R_),r;return e[0]!==t||e[1]!==n?(r=(0,$.jsx)(g_,{open:t,onOpenChange:n}),e[0]=t,e[1]=n,e[2]=r):r=e[2],r},j_=e=>{let t=(0,Ts.c)(21),{onRetry:n,isRetrying:r}=e,{t:i}=Fe(),a;t[0]===i?a=t[1]:(a=i(`startup.initRecovery.title`),t[0]=i,t[1]=a);let o;t[2]===a?o=t[3]:(o=(0,$.jsx)(`h1`,{className:`typography-title text-foreground`,children:a}),t[2]=a,t[3]=o);let s;t[4]===i?s=t[5]:(s=i(`startup.initRecovery.description`),t[4]=i,t[5]=s);let c;t[6]===s?c=t[7]:(c=(0,$.jsx)(`p`,{className:`typography-body text-muted-foreground`,children:s}),t[6]=s,t[7]=c);let l;t[8]!==o||t[9]!==c?(l=(0,$.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[o,c]}),t[8]=o,t[9]=c,t[10]=l):l=t[10];let u;t[11]!==r||t[12]!==i?(u=i(r?`startup.initRecovery.retrying`:`startup.initRecovery.retry`),t[11]=r,t[12]=i,t[13]=u):u=t[13];let d;t[14]!==r||t[15]!==n||t[16]!==u?(d=(0,$.jsx)(Sn,{type:`button`,onClick:n,disabled:r,children:u}),t[14]=r,t[15]=n,t[16]=u,t[17]=d):d=t[17];let f;return t[18]!==l||t[19]!==d?(f=(0,$.jsx)(`div`,{className:`flex h-full items-center justify-center bg-background px-6 text-foreground`,children:(0,$.jsxs)(`div`,{className:`flex max-w-md flex-col items-center gap-4 text-center`,children:[l,d]})}),t[18]=l,t[19]=d,t[20]=f):f=t[20],f},M_=e=>e?e.replace(/\\/g,`/`).replace(/\/+$/g,``):``,N_=()=>{if(typeof window>`u`||!Ki())return null;let e=new URLSearchParams(window.location.search),t=e.get(`sessionId`),n=typeof t==`string`?t.trim():``;if(!n)return null;let r=e.get(`directory`);return{sessionId:n,directory:typeof r==`string`&&r.trim().length>0?r.trim():null,readOnly:e.get(`readOnly`)===`1`||e.get(`readOnly`)===`true`}},P_=()=>typeof window>`u`?!1:window.location.pathname===Fa,F_=e=>{let t=(0,Ts.c)(22),{embeddedSessionChat:n,isVSCodeRuntime:r,embeddedBackgroundWorkEnabled:i}=e,a=ge(z_),o=Ft(B_),s=Ft(V_),c=Vi(),l=Q.useRef(null),u;t[0]===n.directory?u=t[1]:(u=M_(n.directory),t[0]=n.directory,t[1]=u);let d=u,f;t[2]===a?f=t[3]:(f=M_(a),t[2]=a,t[3]=f);let p=f,m,h;if(t[4]!==p||t[5]!==o||t[6]!==n.directory||t[7]!==n.sessionId||t[8]!==d||t[9]!==r||t[10]!==s||t[11]!==c?(m=()=>{if(r||d&&p!==d)return;let e=`${d}\n${n.sessionId}`;l.current===e&&o||(l.current=e,s(n.sessionId,n.directory),c.ensureSessionRenderable(n.sessionId,!0))},h=[p,o,n.directory,n.sessionId,d,r,s,c],t[4]=p,t[5]=o,t[6]=n.directory,t[7]=n.sessionId,t[8]=d,t[9]=r,t[10]=s,t[11]=c,t[12]=m,t[13]=h):(m=t[12],h=t[13]),Q.useEffect(m,h),d&&p!==d)return null;let g;t[14]===i?g=t[15]:(g=(0,$.jsx)(vr,{embeddedBackgroundWorkEnabled:i}),t[14]=i,t[15]=g);let _;t[16]===n.readOnly?_=t[17]:(_=(0,$.jsx)(Oo,{readOnly:n.readOnly}),t[16]=n.readOnly,t[17]=_);let v;t[18]===Symbol.for(`react.memo_cache_sentinel`)?(v=(0,$.jsx)(ir,{}),t[18]=v):v=t[18];let y;return t[19]!==g||t[20]!==_?(y=(0,$.jsxs)($.Fragment,{children:[g,_,v]}),t[19]=g,t[20]=_,t[21]=y):y=t[21],y};function I_({apis:e}){Q.useEffect(()=>{Se(`App:mounted`),ye()},[]),Q.useEffect(()=>yt(),[]);let n=Zt(e=>e.initializeApp),r=Zt(e=>e.isInitialized),a=Zt(e=>e.isConnected),s=Ft(e=>e.error),c=Ft(e=>e.clearError),d=Ft(e=>e.currentSessionId),f=Ft(e=>!!e.newSessionDraft?.open),p=ge(e=>e.currentDirectory),m=ge(e=>e.setDirectory),h=ge(e=>e.isSwitchingDirectory),[_,b]=Q.useState(!1),x=Xa(e=>e.refreshStatus),[D,O]=Q.useState(()=>e.runtime.isVSCode),[k,A]=Q.useState(!1),[j,M]=Q.useState(!1),[N,P]=Q.useState(0),[F,I]=Q.useState(0),[R,z]=Q.useState({epoch:0,startedAt:0}),[V,U]=Q.useState(!1),W=Q.useRef(!1),ee=u(e=>e.wideChatLayoutEnabled),G=u(e=>e.mobileKeyboardMode),te=Q.useMemo(()=>T(),[]),K=Tt(e=>e.hasCachedSessionIndex),ne=Tt(e=>e.hasHydratedSessionIndex),[re,ie]=Q.useState(()=>H()),[ae,oe]=Q.useState(()=>{let e=w();return e===null?null:y({isDesktopShell:!0,bootOutcome:e})}),se=Q.useRef(!1),q=Q.useMemo(()=>N_(),[]),ce=!q||k,le=Q.useMemo(()=>P_(),[]);Q.useEffect(()=>(_e(_),()=>{_e(!1)}),[_]),Q.useEffect(()=>{l(G)},[G]),Q.useEffect(()=>{O(e.runtime.isVSCode)},[e.runtime.isVSCode]),Q.useEffect(()=>{let e=lr(e=>{i(e)&&(te&&z(e=>({epoch:e.epoch+1,startedAt:Date.now()})),Yo(e),I(e=>e+1),M(!1),P(e=>e+1))}),n=t(t=>e.schedule(t));return()=>{n(),e.cancel()}},[te]);let ue=Xe(e=>{let t=o();return Object.values(e.runsByOriginalSessionID).filter(e=>e.status===`running`&&e.runtimeKey===t).map(e=>`${e.originalSessionID}:${e.phase}:${e.lastForwardedMessageID??``}:${e.expectedAssistantParentID??``}`).sort().join(`|`)});Q.useEffect(()=>{if(q)return;let e=!1;return et().then(()=>{if(e)return;let t=o(),n=Object.values(Xe.getState().runsByOriginalSessionID).filter(e=>e.status===`running`&&e.runtimeKey===t);for(let e of n)Ke(e.originalSessionID)}),()=>{e=!0}},[ue,q,F]),Q.useEffect(()=>(document.documentElement.classList.toggle(`wide-chat-layout`,ee),()=>{document.documentElement.classList.remove(`wide-chat-layout`)}),[ee]),Q.useEffect(()=>(C(e),()=>C(null)),[e]),Q.useEffect(()=>{if(q)return;let t=!1;return et().then(()=>{t||x(e.github,{force:!0})}),()=>{t=!0}},[e.github,q,x]),Er();let de=re===`valid`,fe=ae?.screen===`main`;Q.useEffect(()=>{if(!ce||!g({isDesktopShell:te,isInitialized:te&&fe?K||r&&ne:r,bootOutcomeKnown:de,bootViewIsMain:fe}))return;let e,t=setTimeout(()=>{let t=document.getElementById(`initial-loading`);t&&(t.classList.add(`fade-out`),e=setTimeout(()=>{t.remove()},300))},150);return()=>{clearTimeout(t),e&&clearTimeout(e)}},[ce,te,r,de,fe,K,ne]),Q.useEffect(()=>{if(!te||re!==`malformed`)return;let e=document.getElementById(`initial-loading`);e&&(e.textContent=`Desktop startup failed — please restart the app.`)},[te,re]),Q.useEffect(()=>{if(!ce||te)return;let e,t=setTimeout(()=>{let t=document.getElementById(`initial-loading`);t&&!r&&(t.classList.add(`fade-out`),e=setTimeout(()=>{t.remove()},300))},5e3);return()=>{clearTimeout(t),e&&clearTimeout(e)}},[ce,te,r]),Q.useEffect(()=>{if(!ce||D)return;let e=!1;return et().then(()=>{if(!e)return n()}),()=>{e=!0}},[ce,n,D]),Q.useEffect(()=>{if(!ce||D||r)return;let e=!0,t,n=0,i=1e3,a=async()=>{if(!e)return;if(n>=10){M(!0);return}let r=Zt.getState();if(r.isInitialized){M(!1);return}if(n+=1,await et(),!e)return;await r.initializeApp();let o=Zt.getState();if(!e)return;if(o.isInitialized){M(!1);return}if(n>=10){M(!0);return}let s=Math.min(i*2**(n-1),16e3);t=setTimeout(a,s)};return t=setTimeout(a,i),()=>{e=!1,t&&clearTimeout(t)}},[ce,N,r,D]),Q.useEffect(()=>{ce&&r&&M(!1)},[ce,r]),Q.useEffect(()=>{if(!ce||!j)return;let e=document.getElementById(`initial-loading`);if(e){e.classList.add(`fade-out`);let t=setTimeout(()=>{e.remove()},300);return()=>clearTimeout(t)}},[ce,j]),Un({enabled:ce&&!D,source:`startupRecovery`}),Q.useEffect(()=>{h||D||a&&xe.setDirectory(p)},[p,h,a,D]),Q.useEffect(()=>{if(!q||typeof window>`u`)return;let e=e=>{let t=e?.visible===!0;A(t)},t=t=>{if(t.origin!==window.location.origin)return;let n=t.data;n?.type===`openchamber:embedded-visibility`&&e(n.payload)},n=window;return n.__openchamberSetEmbeddedVisibility=e,window.addEventListener(`message`,t),window.parent&&window.parent!==window&&window.parent.postMessage({type:qi},window.location.origin),()=>{window.removeEventListener(`message`,t),n.__openchamberSetEmbeddedVisibility===e&&delete n.__openchamberSetEmbeddedVisibility}},[q]),Q.useEffect(()=>{!q?.directory||D||p!==q.directory&&m(q.directory,{showOverlay:!1})},[p,q,D,m]),Q.useEffect(()=>{if(!q||typeof window>`u`)return;let e=e=>{e.storageArea===window.localStorage&&e.key===`ui-store`&&u.persist.rehydrate()};return window.addEventListener(`storage`,e),()=>{window.removeEventListener(`storage`,e)}},[q]),Q.useEffect(()=>{if(typeof window>`u`)return;let e=e=>{let t=e.detail;h_(t??{})};return window.addEventListener(`openchamber:open-session`,e),()=>{p_(),window.removeEventListener(`openchamber:open-session`,e)}},[]),Q.useEffect(()=>{if(typeof window>`u`)return;let e=()=>{let e=ge.getState().currentDirectory,{activeProjectId:t,projects:n}=vt.getState(),r=n.find(e=>e.id===t)??null;L(`desktop_open_draft_mini_chat_window`,{directory:e||r?.path||``,projectId:r?.id??null})};return window.addEventListener(`openchamber:open-mini-chat`,e),()=>window.removeEventListener(`openchamber:open-mini-chat`,e)},[]),Q.useEffect(()=>{if(typeof window>`u`)return;let e=()=>{let e=Ft.getState().currentSessionId;e&&Ve(e)};return window.addEventListener(`focus`,e),()=>window.removeEventListener(`focus`,e)},[]),Q.useEffect(()=>{if(typeof window>`u`)return;let e=e=>{let t=e.detail,n=typeof t?.directory==`string`&&t.directory.trim().length>0?t.directory.trim():null,r=typeof t?.projectId==`string`&&t.projectId.trim().length>0?t.projectId.trim():null,i=typeof t?.initialPrompt==`string`&&t.initialPrompt.trim().length>0?t.initialPrompt.trim():void 0;u.getState().setActiveMainTab(`chat`),u.getState().setSessionSwitcherOpen(!1),Ft.getState().openNewSessionDraft({selectedProjectId:r,directoryOverride:n,preserveDirectoryOverride:!!n,ensureProjectForDirectory:!!n,initialPrompt:i})};return window.addEventListener(`openchamber:open-draft-session`,e),()=>window.removeEventListener(`openchamber:open-draft-session`,e)},[]),Q.useEffect(()=>{if(typeof window>`u`)return;let e=e=>{let t=e.detail,n=typeof t?.projectPath==`string`?t.projectPath.trim():``;if(!n)return;let r=vt.getState(),i=r.projects.find(e=>e.path===n);i?r.setActiveProject(i.id):r.addProject(n)};return window.addEventListener(`openchamber:open-project`,e),()=>window.removeEventListener(`openchamber:open-project`,e)},[]),Q.useEffect(()=>{typeof window>`u`||!ce||!r||h||se.current||(se.current=!0,window.__openchamberAppReady=!0,window.dispatchEvent(new Event(`openchamber:app-ready`)))},[ce,r,h]),Wn({enabled:ce}),e_({enabled:ce}),i_(),ar(),ns(),jg(Ae(()=>{b(e=>!e)})),Q.useEffect(()=>{if(!r||!S()||W.current)return;W.current=!0;let e=!1,t=null,n=null;La.getState().subscribeDesktopUpdateEvents().then(t=>{if(e){t();return}n=t});let i=()=>{let e=La.getState();e.checking||e.checkForUpdates()},a=n=>{t=window.setTimeout(()=>{e||(document.visibilityState===`visible`&&i(),a(O_))},n)},o=()=>{if(e||document.visibilityState!==`visible`)return;let t=La.getState().lastChecked;t!=null&&Date.now()-t<k_||i()};return a(0),window.addEventListener(`focus`,o),()=>{e=!0,t!==null&&window.clearTimeout(t),window.removeEventListener(`focus`,o),n&&n()}},[r]),Xg(),Q.useEffect(()=>{if(q)return;let e=e=>{vn(e)&&e.shiftKey&&!e.altKey&&(e.code===`KeyD`||e.key.toLowerCase()===`d`)&&(e.preventDefault(),b(e=>!e))};return window.addEventListener(`keydown`,e,!0),()=>window.removeEventListener(`keydown`,e,!0)},[q]),Q.useEffect(()=>{q||s&&setTimeout(()=>c(),5e3)},[c,q,s]),Q.useEffect(()=>{if(!te||re!==`not-injected`)return;let e=!1,t=0,n=()=>{if(e)return;t++;let r=H();if(r!==`not-injected`){if(e=!0,ie(r),r===`valid`){let e=w();e&&oe(y({isDesktopShell:!0,bootOutcome:e}))}return}let i=Math.min(200*1.1**t,2e3);if(t>=50){let e=document.getElementById(`initial-loading`);e&&!e.textContent?.includes(`taking longer`)&&(e.textContent=`Desktop startup is taking longer than expected...`)}window.setTimeout(n,i)};return window.setTimeout(n,200),()=>{e=!0}},[te,re]);let pe=Ae(async()=>{if(v({isDesktopShell:T(),isDesktopLocalOriginActive:E()})){await B();return}window.location.reload()}),me=Ae(async()=>{if(!V){M(!1),U(!0);try{await et(),await Zt.getState().initializeApp()}finally{U(!1)}Zt.getState().isInitialized||P(e=>e+1)}}),he=e=>{if(e.screen===`recovery`)return e.variant};if(te&&ae&&ae.screen!==`main`){if(ae.screen===`chooser`)return(0,$.jsx)(xi,{children:(0,$.jsx)(`div`,{className:`h-full text-foreground bg-transparent`,children:(0,$.jsx)(Q.Suspense,{fallback:(0,$.jsx)(`div`,{className:`h-full`}),children:(0,$.jsx)(D_,{mode:`first-launch`,onCliAvailable:pe,onChooseRemote:()=>{}})})})});let e=he(ae),t=ae.screen===`recovery`&&`url`in ae?ae.url:void 0;return(0,$.jsx)(xi,{children:(0,$.jsx)(`div`,{className:`h-full text-foreground bg-transparent`,children:(0,$.jsx)(Q.Suspense,{fallback:(0,$.jsx)(`div`,{className:`h-full`}),children:(0,$.jsx)(D_,{mode:`recovery`,recoveryVariant:e,recoveryHostUrl:t,recoveryHostLabel:void 0,onCliAvailable:pe})})})})}if(q)return Nt(),(0,$.jsx)(xi,{children:(0,$.jsx)(rt,{sdk:xe.getSdkClient(),directory:p||``,bootstrapDirectory:!(f&&d===null),children:(0,$.jsx)(Mr,{apis:e,children:(0,$.jsx)(Qr,{delayDuration:300,skipDelayDuration:150,children:(0,$.jsx)(`div`,{className:`h-full text-foreground bg-background`,children:(0,$.jsx)(F_,{embeddedSessionChat:q,isVSCodeRuntime:D,embeddedBackgroundWorkEnabled:ce})})})})},F)});if(le)return(0,$.jsx)(xi,{children:(0,$.jsx)(y_,{})});if(j&&!r&&!D&&!q)return(0,$.jsx)(xi,{children:(0,$.jsx)(j_,{onRetry:()=>{me()},isRetrying:V})});let ve=!r&&!te;return(0,$.jsx)(xi,{children:(0,$.jsx)(rt,{sdk:xe.getSdkClient(),directory:p||``,bootstrapDirectory:!(f&&d===null),children:(0,$.jsx)(Mr,{apis:e,children:(0,$.jsx)(nl,{children:(0,$.jsx)(Qr,{delayDuration:300,skipDelayDuration:150,children:(0,$.jsxs)(`div`,{className:te?`h-full text-foreground bg-transparent`:`h-full text-foreground bg-background`,children:[(0,$.jsx)(vr,{embeddedBackgroundWorkEnabled:ce}),(0,$.jsx)(Lo,{}),(0,$.jsx)(Do,{}),(0,$.jsx)(cg,{}),te&&(0,$.jsx)(E_,{transition:R,ready:r&&a}),(0,$.jsx)(b_,{}),(0,$.jsx)(ir,{}),!ve&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Qo,{}),(0,$.jsx)(A_,{}),_&&(0,$.jsx)(fg,{onClose:()=>b(!1)})]})]})})})})},F)})}function L_(e){return e.isAboutDialogOpen}function R_(e){return e.setAboutDialogOpen}function z_(e){return e.currentDirectory}function B_(e){return e.currentSessionId}function V_(e){return e.setCurrentSession}if(typeof window<`u`&&!window.__OPENCHAMBER_REFRESH_DEBUG_INSTALLED__){window.__OPENCHAMBER_REFRESH_DEBUG_INSTALLED__=!0;let e=performance.getEntriesByType(`navigation`)[0];console.warn(`[refresh-debug] renderer-entry`,{navigationType:e?.type??`unknown`,protocol:window.location.protocol}),window.addEventListener(`beforeunload`,()=>{console.warn(`[refresh-debug] beforeunload`,{visibilityState:document.visibilityState})}),window.addEventListener(`pagehide`,e=>{console.warn(`[refresh-debug] pagehide`,{persisted:e.persisted})})}var H_=typeof window<`u`&&window.__OPENCHAMBER_RUNTIME_APIS__||(()=>{throw Error(`Runtime APIs not provided for legacy UI entrypoint.`)})();Re(),T()&&He(),ur({runtimeKey:o(),initializeAppearance:z,syncSettings:F,applyDirectory:rr,startWatchers:()=>{cr(),or(),Yn()},onError:(e,t)=>{console.error(e===`appearance`?`[main] appearance init failed:`:`[main] settings init failed:`,t)}});var U_=document.getElementById(`root`);if(!U_)throw Error(`Root element not found`);(0,ws.createRoot)(U_).render((0,$.jsx)(Q.StrictMode,{children:(0,$.jsx)(sr,{children:(0,$.jsx)(Pe,{children:(0,$.jsx)(Jn,{children:(0,$.jsx)(Qn,{children:(0,$.jsx)(Tr,{children:(0,$.jsx)(I_,{apis:H_})})})})})})}));
|