bb-app 0.0.2 → 0.0.3

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.
@@ -1,4 +1,4 @@
1
- import{Br as e,Bt as t,Gn as n,Gr as r,Gt as i,Hi as a,Hr as o,Ht as s,I as c,In as l,Jn as u,Ki as d,Kn as f,Lr as p,M as m,P as h,Pt as g,R as _,Rr as v,Tr as y,Tt as b,Un as x,Ur as S,Ut as C,Vi as w,Vn as T,Vr as E,Vt as D,Wn as O,Wt as k,Yn as A,Yr as j,_i as M,ai as N,bn as P,bt as F,ii as I,j as ee,kn as te,kt as ne,mn as re,n as ie,ni as L,ri as R,t as z,tn as ae,vi as oe,vr as se,wr as ce,wt as le,xn as ue,yn as de,z as fe}from"./page-shell-Dglk9LmR.js";import{Nt as pe,Pt as me,c as he,d as ge,ht as _e,i as B,l as ve,o as ye,p as V,t as be,xt as H}from"./effective-hosts-BWRuszG7.js";import{C as xe,S as Se,_ as Ce,a as we,b as Te,c as Ee,d as De,f as Oe,g as ke,h as Ae,i as je,l as Me,m as Ne,o as Pe,p as Fe,r as Ie,s as Le,t as Re,u as ze,w as Be}from"./thread-queries-BOTfj5Vv.js";import{c as Ve,d as He,f as Ue,i as We,l as Ge,m as Ke,r as qe,t as Je}from"./pill-BHnTA2D7.js";import{a as Ye,g as Xe,h as Ze,i as U,o as W,r as Qe,s as $e,t as et,u as tt,v as G,y as nt}from"./dialog-CxN4lDeD.js";import{A as rt,O as it,S as at,_ as ot,a as st,b as ct,g as lt,h as ut,k as dt,m as ft,p as pt,t as mt,v as ht,y as gt}from"./localhost-badge-BBCmn0GW.js";import{f as _t,v as vt,y as yt}from"./mutation-cache-effects-BQHFwGL7.js";import{$ as bt,$t as xt,A as St,At as Ct,B as wt,Ct as Tt,D as Et,Dt,E as Ot,Et as kt,F as At,Ft as jt,G as Mt,Gt as Nt,H as Pt,Ht as Ft,I as It,It as Lt,J as Rt,Jt as zt,K as Bt,Kt as Vt,L as Ht,Lt as Ut,M as Wt,Mt as Gt,N as Kt,O as qt,Ot as Jt,P as Yt,Pt as Xt,Q as Zt,Qt,R as $t,S as en,St as tn,T as nn,Tt as rn,U as an,Ut as on,V as sn,Vt as cn,W as ln,Wt as un,X as dn,Y as fn,Yt as pn,Z as mn,Zt as hn,_ as gn,_t as _n,a as vn,an as yn,at as bn,b as xn,bt as Sn,c as Cn,ct as wn,d as Tn,dt as En,et as Dn,f as On,ft as kn,g as An,gt as jn,h as Mn,ht as Nn,i as Pn,it as Fn,j as In,jt as Ln,k as Rn,kt as zn,l as Bn,ln as Vn,lt as Hn,m as Un,mt as Wn,n as Gn,nt as Kn,o as qn,on as Jn,ot as Yn,p as Xn,pt as Zn,q as Qn,qt as $n,r as er,rt as tr,s as nr,st as rr,t as ir,tt as ar,u as or,un as sr,ut as cr,v as lr,vt as ur,w as dr,wt as fr,x as pr,xt as mr,y as hr,yt as gr,z as _r,zt as vr}from"./index-D_DARDfc.js";import{t as yr}from"./split-button-CeV-MQ2f.js";import{t as br}from"./ThreadUnarchiveButton-EqnpnszW.js";var K=d(w(),1);function xr(e,t){return rt((0,K.useMemo)(()=>nt(null,(t,n,...r)=>e(t,n,...r)),[e]),t)}var Sr=class{highlighter;renderCache;computedLang=`text`;lineAnnotations={};constructor(e={theme:Ct},t,n){this.options=e,this.onRenderUpdate=t,this.workerManager=n,n?.isWorkingPool()!==!0&&(this.highlighter=gr(e.theme??Ct)?mr():void 0)}setOptions(e){this.options=e}mergeOptions(e){this.options={...this.options,...e}}setThemeType(e){(this.options.themeType??`system`)!==e&&this.mergeOptions({themeType:e})}setLineAnnotations(e){this.lineAnnotations={};for(let t of e){let e=this.lineAnnotations[t.lineNumber]??[];this.lineAnnotations[t.lineNumber]=e,e.push(t)}}cleanUp(){this.renderCache=void 0,this.highlighter=void 0,this.workerManager=void 0,this.onRenderUpdate=void 0}hydrate(e){let{options:t}=this.getRenderOptions(e),n=this.workerManager?.getFileResultCache(e);n!=null&&!Cr(t,n.options)&&(n=void 0),this.renderCache??={file:e,options:t,highlighted:!0,result:n?.result},this.workerManager?.isWorkingPool()===!0&&this.renderCache.result==null?this.workerManager.highlightFileAST(this,e):this.asyncHighlight(e).then(({result:t,options:n})=>{this.onHighlightSuccess(e,t,n)})}getRenderOptions(e){let t=(()=>{if(this.workerManager?.isWorkingPool()===!0)return this.workerManager.getFileRenderOptions();let{theme:e=Ct,tokenizeMaxLineLength:t=1e3}=this.options;return{theme:e,tokenizeMaxLineLength:t}})(),{renderCache:n}=this;return n?.result==null||e!==n.file||!Cr(t,n.options)?{options:t,forceRender:!0}:{options:t,forceRender:!1}}renderFile(e=this.renderCache?.file){if(e==null)return;let t=this.workerManager?.getFileResultCache(e);t!=null&&this.renderCache==null&&(this.renderCache={file:e,highlighted:!0,...t});let{options:n,forceRender:r}=this.getRenderOptions(e);if(this.renderCache??={file:e,highlighted:!1,options:n,result:void 0},this.workerManager?.isWorkingPool()===!0)this.renderCache.result??=this.workerManager.getPlainFileAST(e),(!this.renderCache.highlighted||r)&&this.workerManager.highlightFileAST(this,e);else{this.computedLang=e.lang??kn(e.name);let t=this.highlighter!=null&&gr(n.theme),i=this.highlighter!=null&&fr(this.computedLang);if(this.highlighter!=null&&t&&(r||!this.renderCache.highlighted&&i||this.renderCache.result==null)){let{result:t,options:n}=this.renderFileWithHighlighter(e,this.highlighter,!i);this.renderCache={file:e,options:n,highlighted:i,result:t}}(!t||!i)&&this.asyncHighlight(e).then(({result:t,options:n})=>{this.onHighlightSuccess(e,t,n)})}return this.renderCache.result==null?void 0:this.processFileResult(this.renderCache.file,this.renderCache.result)}async asyncRender(e){let{result:t}=await this.asyncHighlight(e);return this.processFileResult(e,t)}async asyncHighlight(e){this.computedLang=e.lang??kn(e.name);let t=this.highlighter!=null&&ur(Sn(this.options.theme)),n=this.highlighter!=null&&fr(this.computedLang);return(this.highlighter==null||!t||!n)&&(this.highlighter=await this.initializeHighlighter()),this.renderFileWithHighlighter(e,this.highlighter)}renderFileWithHighlighter(e,t,n=!1){let{options:r}=this.getRenderOptions(e);return{result:Hn(e,t,r,n),options:r}}processFileResult(e,t){let{disableFileHeader:n=!1}=this.options,r=[],i=1;for(let e of t.code){r.push(e);let t=this.lineAnnotations[i];t!=null&&r.push(Nn({type:`annotation`,hunkIndex:0,lineIndex:i,annotations:t.map(e=>cr(e))})),i++}return{codeAST:r,preAST:this.createPreElement(t.code.length,t.themeStyles,t.baseThemeType),headerAST:n?void 0:this.renderHeader(e,t.themeStyles,t.baseThemeType),totalLines:t.code.length,themeStyles:t.themeStyles,baseThemeType:t.baseThemeType,css:``}}renderHeader(e,t,n){let{themeType:r=`system`}=this.options;return Wn({fileOrDiff:e,themeStyles:t,themeType:n??r})}renderFullHTML(e){return Tt(this.renderFullAST(e))}renderFullAST(e,t=[]){return t.push(jn({tagName:`code`,children:e.codeAST,properties:{"data-code":``}})),{...e.preAST,children:t}}renderPartialHTML(e,t=!1){return Tt(t?jn({tagName:`code`,children:e,properties:{"data-code":``}}):e)}async initializeHighlighter(){return this.highlighter=await tn(En(this.computedLang,this.options)),this.highlighter}onHighlightSuccess(e,t,n){if(this.renderCache==null)return;let r=this.renderCache.file!==e||!this.renderCache.highlighted||!Cr(n,this.renderCache.options);this.renderCache={file:e,options:n,highlighted:!0,result:t},r&&this.onRenderUpdate?.()}onHighlightError(e){console.error(e)}createPreElement(e,t,n){let{disableLineNumbers:r=!1,overflow:i=`scroll`,themeType:a=`system`}=this.options;return Zn({diffIndicators:`none`,disableBackground:!0,disableLineNumbers:r,overflow:i,themeStyles:t,themeType:n??a,split:!1,totalLines:e})}};function Cr(e,t){return _n(e.theme,t.theme)&&e.tokenizeMaxLineLength===t.tokenizeMaxLineLength}var wr=-1,Tr=class{static LoadedCustomComponent=!0;__id=++wr;fileContainer;spriteSVG;pre;code;unsafeCSSStyle;hoverContent;errorWrapper;headerElement;headerMetadata;fileRenderer;resizeManager;mouseEventManager;lineSelectionManager;annotationElements=[];lineAnnotations=[];file;constructor(e={theme:Ct},t,n=!1){this.options=e,this.workerManager=t,this.isContainerManaged=n,this.fileRenderer=new Sr(e,this.handleHighlightRender,this.workerManager),this.resizeManager=new rn,this.mouseEventManager=new kt(`file`,Dt(e)),this.lineSelectionManager=new Jt(zn(e)),this.workerManager?.subscribeToThemeChanges(this)}handleHighlightRender=()=>{this.rerender()};rerender(){this.file!=null&&this.render({file:this.file,forceRender:!0})}setOptions(e){e!=null&&(this.options=e,this.mouseEventManager.setOptions(Dt(e)),this.lineSelectionManager.setOptions(zn(e)))}mergeOptions(e){this.options={...this.options,...e}}setThemeType(e){if((this.options.themeType??`system`)!==e&&(this.mergeOptions({themeType:e}),this.fileRenderer.setThemeType(e),this.headerElement!=null&&(e===`system`?delete this.headerElement.dataset.themeType:this.headerElement.dataset.themeType=e),this.pre!=null))switch(e){case`system`:delete this.pre.dataset.themeType;break;case`light`:case`dark`:this.pre.dataset.themeType=e;break}}getHoveredLine=()=>this.mouseEventManager.getHoveredLine();setLineAnnotations(e){this.lineAnnotations=e}setSelectedLines(e){this.lineSelectionManager.setSelection(e)}cleanUp(){this.fileRenderer.cleanUp(),this.resizeManager.cleanUp(),this.mouseEventManager.cleanUp(),this.lineSelectionManager.cleanUp(),this.workerManager?.unsubscribeToThemeChanges(this),this.workerManager=void 0,this.file=void 0,this.isContainerManaged||this.fileContainer?.parentNode?.removeChild(this.fileContainer),this.fileContainer?.shadowRoot!=null&&(this.fileContainer.shadowRoot.innerHTML=``),this.fileContainer=void 0,this.pre=void 0,this.headerElement=void 0,this.errorWrapper=void 0,this.unsafeCSSStyle=void 0}hydrate(e){let{fileContainer:t,prerenderedHTML:n}=e;ar(t,n);for(let e of Array.from(t.shadowRoot?.children??[])){if(e instanceof SVGElement){this.spriteSVG=e;continue}if(e instanceof HTMLElement){if(e instanceof HTMLPreElement){this.pre=e;continue}if(e instanceof HTMLStyleElement&&e.hasAttribute(`data-unsafe-css`)){this.unsafeCSSStyle=e;continue}if(`diffsHeader`in e.dataset){this.headerElement=e;continue}}}if(this.pre==null)this.render(e);else{let{file:n,lineAnnotations:r}=e;this.fileContainer=t,delete this.pre.dataset.dehydrated,this.lineAnnotations=r??this.lineAnnotations,this.file=n,this.fileRenderer.hydrate(n),this.renderAnnotations(),this.renderHoverUtility(),this.injectUnsafeCSS(),this.mouseEventManager.setup(this.pre),this.lineSelectionManager.setup(this.pre),(this.options.overflow??`scroll`)===`scroll`&&this.resizeManager.setup(this.pre)}}render({file:e,fileContainer:t,forceRender:n=!1,containerWrapper:r,lineAnnotations:i}){let a=i!=null&&(i.length>0||this.lineAnnotations.length>0)?i!==this.lineAnnotations:!1;if(!n&&rr(this.file,e)&&!a)return;this.file=e,this.fileRenderer.setOptions(this.options),i!=null&&this.setLineAnnotations(i),this.fileRenderer.setLineAnnotations(this.lineAnnotations);let{disableFileHeader:o=!1,disableErrorHandling:s=!1}=this.options;o&&this.headerElement!=null&&(this.headerElement.parentNode?.removeChild(this.headerElement),this.headerElement=void 0),t=this.getOrCreateFileContainerNode(t,r);try{let n=this.fileRenderer.renderFile(e);if(n==null){this.workerManager!=null&&!this.workerManager.isInitialized()&&this.workerManager.initialize().then(()=>this.rerender());return}n.headerAST!=null&&this.applyHeaderToDOM(n.headerAST,t);let r=this.getOrCreatePreNode(t);this.applyHunksToDOM(n,r),this.renderAnnotations(),this.renderHoverUtility()}catch(e){if(s)throw e;console.error(e),e instanceof Error&&this.applyErrorToDOM(e,t)}}renderAnnotations(){if(this.isContainerManaged||this.fileContainer==null)return;for(let e of this.annotationElements)e.parentNode?.removeChild(e);this.annotationElements.length=0;let{renderAnnotation:e}=this.options;if(e!=null&&this.lineAnnotations.length>0)for(let t of this.lineAnnotations){let n=e(t);if(n==null)continue;let r=Yn(cr(t));r.appendChild(n),this.annotationElements.push(r),this.fileContainer.appendChild(r)}}renderHoverUtility(){let{renderHoverUtility:e}=this.options;if(this.fileContainer==null||e==null)return;this.hoverContent??(this.hoverContent=Fn(),this.fileContainer.appendChild(this.hoverContent));let t=e(this.mouseEventManager.getHoveredLine);this.hoverContent.innerHTML=``,t!=null&&this.hoverContent.appendChild(t)}injectUnsafeCSS(){if(this.fileContainer?.shadowRoot==null)return;let{unsafeCSS:e}=this.options;if(e==null||e===``){this.unsafeCSSStyle!=null&&(this.unsafeCSSStyle.parentNode?.removeChild(this.unsafeCSSStyle),this.unsafeCSSStyle=void 0);return}this.unsafeCSSStyle??(this.unsafeCSSStyle=tr(),this.fileContainer.shadowRoot.appendChild(this.unsafeCSSStyle)),this.unsafeCSSStyle.innerText=Kn(e)}applyHunksToDOM(e,t){this.cleanupErrorWrapper(),this.applyPreNodeAttributes(t,e),t.innerHTML=``,this.code=bn(),this.code.innerHTML=this.fileRenderer.renderPartialHTML(e.codeAST),t.appendChild(this.code),this.injectUnsafeCSS(),this.mouseEventManager.setup(t),this.lineSelectionManager.setup(t),this.lineSelectionManager.setDirty(),(this.options.overflow??`scroll`)===`scroll`?this.resizeManager.setup(t):this.resizeManager.cleanUp()}applyHeaderToDOM(e,t){let{file:n}=this;if(n==null)return;this.cleanupErrorWrapper();let r=document.createElement(`div`);r.innerHTML=Tt(e);let i=r.firstElementChild;if(!(i instanceof HTMLElement)||(this.headerElement==null?t.shadowRoot?.prepend(i):t.shadowRoot?.replaceChild(i,this.headerElement),this.headerElement=i,this.isContainerManaged))return;let{renderCustomMetadata:a}=this.options;this.headerMetadata!=null&&this.headerMetadata.parentNode?.removeChild(this.headerMetadata);let o=a?.(n)??void 0;o!=null&&(this.headerMetadata=document.createElement(`div`),this.headerMetadata.slot=Gt,o instanceof Element?this.headerMetadata.appendChild(o):this.headerMetadata.innerText=`${o}`,t.appendChild(this.headerMetadata))}getOrCreateFileContainerNode(e,t){if(this.fileContainer=e??this.fileContainer??document.createElement(`diffs-container`),t!=null&&this.fileContainer.parentNode!==t&&t.appendChild(this.fileContainer),this.spriteSVG==null){let e=document.createElement(`div`);e.innerHTML=wn;let t=e.firstChild;t instanceof SVGElement&&(this.spriteSVG=t,this.fileContainer.shadowRoot?.appendChild(this.spriteSVG))}return this.fileContainer}getOrCreatePreNode(e){return this.pre==null?(this.pre=document.createElement(`pre`),e.shadowRoot?.appendChild(this.pre)):this.pre.parentNode!==e&&e.shadowRoot?.appendChild(this.pre),this.pre}applyPreNodeAttributes(e,{totalLines:t,themeStyles:n,baseThemeType:r}){let{overflow:i=`scroll`,themeType:a=`system`,disableLineNumbers:o=!1}=this.options;Dn({pre:e,split:!1,themeStyles:n,overflow:i,disableLineNumbers:o,themeType:r??a,diffIndicators:`none`,disableBackground:!0,totalLines:t})}applyErrorToDOM(e,t){this.cleanupErrorWrapper();let n=this.getOrCreatePreNode(t);n.innerHTML=``,n.parentNode?.removeChild(n),this.pre=void 0;let r=t.shadowRoot??t.attachShadow({mode:`open`});this.errorWrapper??=document.createElement(`div`),this.errorWrapper.dataset.errorWrapper=``,this.errorWrapper.innerHTML=``,r.appendChild(this.errorWrapper);let i=document.createElement(`div`);i.dataset.errorMessage=``,i.innerText=e.message,this.errorWrapper.appendChild(i);let a=document.createElement(`pre`);a.dataset.errorStack=``,a.innerText=e.stack??`No Error Stack`,this.errorWrapper.appendChild(a)}cleanupErrorWrapper(){this.errorWrapper?.parentNode?.removeChild(this.errorWrapper),this.errorWrapper=void 0}},q=oe();function Er({file:e,renderHeaderMetadata:t,renderAnnotation:n,lineAnnotations:r,renderHoverUtility:i,getHoveredLine:a}){let o=t?.(e);return(0,q.jsxs)(q.Fragment,{children:[o!=null&&(0,q.jsx)(`div`,{slot:`header-metadata`,children:o}),n!=null&&r?.map((e,t)=>(0,q.jsx)(`div`,{slot:cr(e),children:n(e)},t)),i!=null&&(0,q.jsx)(`div`,{slot:`hover-slot`,style:Zt,children:i(a)})]})}var Dr=typeof window>`u`?K.useEffect:K.useLayoutEffect;function Or({file:e,options:t,lineAnnotations:n,selectedLines:r,prerenderedHTML:i}){let a=(0,K.useContext)(fn),o=(0,K.useRef)(null),s=Rt(r=>{if(r!=null){if(o.current!=null)throw Error(`File: An instance should not already exist when a node is created`);o.current=new Tr(t,a,!0),o.current.hydrate({file:e,fileContainer:r,lineAnnotations:n,prerenderedHTML:i})}else{if(o.current==null)throw Error(`File: A File instance should exist when unmounting`);o.current.cleanUp(),o.current=null}});return Dr(()=>{if(o.current==null)return;let i=!bt(o.current.options,t);o.current.setOptions(t),o.current.render({file:e,lineAnnotations:n,forceRender:i}),r!==void 0&&o.current.setSelectedLines(r)}),{ref:s,getHoveredLine:(0,K.useCallback)(()=>o.current?.getHoveredLine(),[])}}function kr({file:e,lineAnnotations:t,selectedLines:n,options:r,className:i,style:a,renderAnnotation:o,renderHeaderMetadata:s,prerenderedHTML:c,renderHoverUtility:l}){let{ref:u,getHoveredLine:d}=Or({file:e,options:r,lineAnnotations:t,selectedLines:n,prerenderedHTML:c});return(0,q.jsx)(Ln,{ref:u,className:i,style:a,children:mn(Er({file:e,renderAnnotation:o,renderHeaderMetadata:s,renderHoverUtility:l,lineAnnotations:t,getHoveredLine:d}),c)})}var Ar=8,jr=1;function Mr(){let e=typeof navigator<`u`?navigator.hardwareConcurrency:void 0;return e===void 0||e<=2?jr:Math.max(jr,Math.min(Ar,e-1))}function Nr(){return new Worker(new URL(`/assets/worker-portable-CA4_6zkQ.js`,``+import.meta.url),{name:`pierre-diffs-worker`})}var Pr=`bb.thread.terminalPanelState`,Fr=336*60*60*1e3,Ir=S({version:E(1),isOpen:v(),activeTerminalId:r().min(1).nullable(),panelHeightPercent:o().int().min(18).max(70),lastUsedAt:o().int().nonnegative()}).strict();function Lr(){return typeof window>`u`?null:window.localStorage}function Rr(e){return encodeURIComponent(e.trim())}function zr(e={}){return{version:1,isOpen:e.isOpen??!1,activeTerminalId:e.activeTerminalId??null,panelHeightPercent:e.panelHeightPercent??32,lastUsedAt:e.lastUsedAt??0}}var Br=zr();function Vr({threadId:e}){return`${Pr}-${Rr(e)}-1`}function Hr(e){return e.startsWith(`bb.thread.terminalPanelState-`)&&e.endsWith(`-1`)}function Ur({now:e,state:t}){return e-t.lastUsedAt>Fr}function Wr({initialValue:e,now:t,storedValue:n}){return Gr({initialValue:e,now:t,storedValue:n}).state}function Gr({initialValue:e,now:t,storedValue:n}){if(n===null)return{shouldPrune:!1,state:e};let r;try{r=JSON.parse(n)}catch{return{shouldPrune:!0,state:e}}let i=Ir.safeParse(r);return!i.success||Ur({now:t,state:i.data})?{shouldPrune:!0,state:e}:{shouldPrune:!1,state:i.data}}function Kr({state:e}){return JSON.stringify(e)}function qr({now:e}){let t=Lr();if(!t)return;let n=[];for(let e=0;e<t.length;e+=1){let r=t.key(e);r&&Hr(r)&&n.push(r)}for(let r of n)Gr({initialValue:Br,now:e,storedValue:t.getItem(r)}).shouldPrune&&t.removeItem(r)}function Jr(e){return e!=null&&e.length>0}function Yr(e,t){return{...e,lastUsedAt:t}}var Xr=tt({parse:(e,t)=>Wr({initialValue:t,now:Date.now(),storedValue:e}),serialize:e=>Kr({state:e})}),Zr=nt(Br),Qr=Ze(e=>G(Vr({threadId:e}),Br,Xr,{getOnInit:!0}));function $r(e){return Jr(e)?Qr(e):Zr}function ei(e){return t=>t.isOpen===e?t:{...t,isOpen:e}}function ti(e){(0,K.useEffect)(()=>{qr({now:Date.now()})},[e])}function ni(e){return dt($r(e))}function ri(e){let t=rt($r(e));return(0,K.useCallback)(n=>{if(!Jr(e))return;let r=Date.now();t(e=>{let t=n(e);return t===e?e:Yr(t,r)})},[t,e])}function ii(e){let t=ri(e);return(0,K.useCallback)(e=>{t(ei(e))},[t])}function ai(e){let t=ri(e);return(0,K.useCallback)(()=>{t(e=>({...e,isOpen:!e.isOpen}))},[t])}function oi(){let e=M();return I({meta:{errorMessage:`Failed to run environment action.`,showErrorToast:!1},mutationFn:({id:e,...t})=>P(e,t),onSuccess:(t,n)=>{vt({environmentId:n.id,queryClient:e})}})}function si(){let e=M();return I({meta:{errorMessage:`Failed to update environment.`,showErrorToast:!1},mutationFn:({id:e,...t})=>te(e,t),onSuccess:t=>{e.setQueryData(_(t.id),t),yt({environmentId:t.id,queryClient:e})}})}var ci=1e4,li=3e4;function ui(e,t){if(!e)throw Error(`${t}: environmentId is required when query is enabled`);return e}function di(e){if(!e)throw Error(`useEnvironmentFilePreview: path is required when query is enabled`);return e}function fi(e){if(!e)throw Error(`useEnvironmentFilePreview: source is required when query is enabled`);return e}function pi(e){if(!e)throw Error(`useEnvironmentGitDiff: target is required when query is enabled`);return e}function mi(e,n){return N({queryKey:_(e),queryFn:()=>t(ui(e,`useEnvironment`)),enabled:(n?.enabled??!0)&&!!e,staleTime:n?.staleTime})}function hi(e,t,n){return N({queryKey:fe(e,t??null),queryFn:()=>i(ui(e,`useEnvironmentWorkStatus`),t),enabled:(n?.enabled??!0)&&!!e,refetchOnWindowFocus:!1,staleTime:ci,placeholderData:(t,n)=>e?Ce(t,n?.queryKey,e):void 0})}function gi(e,t){return N({queryKey:c(e),queryFn:()=>s(e),enabled:(t?.enabled??!0)&&!!e,refetchOnWindowFocus:!1,staleTime:li})}function _i(e,t,n,r){return N({queryKey:m(e,t,n),queryFn:({signal:r})=>k({id:ui(e,`useEnvironmentFilePreview`),path:di(t),source:fi(n),signal:r}),enabled:(r?.enabled??!0)&&!!e&&!!t&&n!==null,refetchOnWindowFocus:!1})}function vi(e,t){let n=t.target,r=n?.type===`commit`?n.sha:n?.type===`all`||n?.type===`branch_committed`?n.mergeBaseBranch:null;return N({queryKey:h(e,n?.type??null,r),queryFn:()=>D(e,pi(n)),enabled:(t.enabled??!0)&&!!e&&n!==void 0,placeholderData:(t,n)=>ke(t,n?.queryKey,e),refetchOnWindowFocus:!1,staleTime:5e3})}function yi(e){return{filesCount:e.files.length,insertions:e.insertions,deletions:e.deletions}}function bi(e){return`${e} file${e===1?``:`s`}`}function xi(e){if(e.filesCount===0&&e.insertions===0&&e.deletions===0)return`No changes`;let t=bi(e.filesCount);return e.insertions===0&&e.deletions===0?t:`${t}, ${Nt({added:e.insertions,removed:e.deletions})}`}function Si(e){if(e.filesCount===0&&e.insertions===0&&e.deletions===0)return`No changes`;let t=bi(e.filesCount);return e.insertions===0&&e.deletions===0?t:(0,q.jsxs)(q.Fragment,{children:[t,`,`,` `,(0,q.jsx)(Lt,{insertions:e.insertions,deletions:e.deletions})]})}function Ci(e){if(!e)return[];let t=[],n=e.workingTree;if(n.files.length>0){let e=n.state===`untracked`;t.push({kind:e?`untracked`:`uncommitted`,label:e?`Untracked`:`Uncommitted`,files:n.files,mergeBaseRef:null,stats:n})}let r=e.mergeBase;return r&&r.files.length>0&&t.push({kind:`committed`,label:`Committed`,files:r.files,mergeBaseRef:r.baseRef,stats:r}),t}function wi(e){return Ci(e)[0]??null}function Ti(e){return e===`??`?`A?`:e}function Ei({files:e,className:t=`max-h-32`,emptyMessage:n=`No changed files detected.`,onFileClick:r}){return!e||e.length===0?(0,q.jsx)(Jn,{message:n}):(0,q.jsx)(`ul`,{className:R(`space-y-1 overflow-auto`,t),children:e.map(e=>(0,q.jsxs)(`li`,{className:`grid grid-cols-[1.5rem_minmax(0,1fr)_auto] items-start gap-x-3`,children:[(0,q.jsx)(`span`,{className:`text-xs leading-5 text-muted-foreground/80`,children:Ti(e.status)}),(0,q.jsx)(Mt,{path:e.path,onClick:r?()=>r(e):void 0}),e.insertions!==null&&e.deletions!==null?(0,q.jsx)(Lt,{insertions:e.insertions,deletions:e.deletions,hideZero:!0,className:`text-xs leading-5`}):null]},`${e.status}:${e.path}`))})}function Di({sections:e,onFileClick:t,listClassName:n,rowClassName:r,rowValueClassName:i}){let[a,o]=(0,K.useState)(null);if(e.length===0)return null;let s=e.find(e=>e.kind===a)??e[0],c=yi(s.stats),l=e.length>1,u=(0,q.jsx)(`span`,{className:`truncate text-muted-foreground`,children:Si(c)});return(0,q.jsx)(Wt,{label:l?(0,q.jsxs)(`span`,{className:`flex items-baseline gap-x-3`,children:[(0,q.jsx)(`span`,{className:`flex min-w-[var(--detail-label-width,96px)] items-baseline`,children:(0,q.jsxs)(B,{children:[(0,q.jsx)(ge,{asChild:!0,children:(0,q.jsxs)(j,{type:`button`,variant:`ghost`,size:`sm`,className:`h-5 w-auto min-w-0 justify-between gap-1 rounded-sm px-0 text-xs font-normal shadow-none hover:bg-transparent data-[state=open]:bg-transparent data-[state=open]:hover:bg-transparent`,title:s.label,"aria-label":`Switch changed files bucket`,children:[(0,q.jsx)(`span`,{className:`truncate`,children:s.label}),(0,q.jsx)(L,{name:`ChevronDown`,className:`size-3 shrink-0 text-muted-foreground`})]})}),(0,q.jsx)(ye,{align:`start`,children:e.map(e=>(0,q.jsxs)(he,{onSelect:()=>o(e.kind),className:`flex items-center justify-between gap-2`,children:[(0,q.jsx)(`span`,{className:`truncate`,children:e.label}),(0,q.jsx)(L,{name:`Check`,className:R(`size-3.5 shrink-0`,e.kind===s.kind?`opacity-100`:`opacity-0`)})]},e.kind))})]})}),u]}):(0,q.jsxs)(`span`,{className:`flex items-baseline gap-x-3`,children:[(0,q.jsx)(`span`,{className:`min-w-[var(--detail-label-width,96px)] truncate`,children:s.label}),u]}),orientation:`vertical`,className:r,valueClassName:i,children:(0,q.jsx)(Ei,{files:s.files,className:n,onFileClick:t?e=>t({file:e,section:s}):void 0})})}function Oi(e){switch(e.kind){case`commit`:return{title:`Commit changes`,description:`Create a commit from the current workspace changes.`,submitLabel:`Commit changes`,showCommitControls:!0,showMergeBase:!1};case`commit_and_squash_merge`:return{title:`Commit and squash merge`,description:`Commit the current workspace changes, then squash merge this branch.`,submitLabel:`Commit + squash merge`,showCommitControls:!0,showMergeBase:!0};case`squash_merge`:return{title:`Squash merge`,description:`Squash merge this branch into the selected merge base.`,submitLabel:`Squash merge`,showCommitControls:!1,showMergeBase:!0};default:return f(e)}}function ki({target:e,branchName:t,gitStatusDisplay:n,changedFilesSection:r,threadId:i,threadType:a,showMergeBaseDetails:o=!1,mergeBaseBranch:s,mergeBaseBranchOptions:c,mergeBaseBranchOptionsLoading:l=!1,onMergeBaseBranchChange:u,onOpenChange:d,onCommit:f,onSquashMerge:p}){let m=(0,K.useMemo)(()=>e?Oi(e):null,[e]);return(0,q.jsx)(et,{open:e!==null,onOpenChange:d,children:(0,q.jsx)(Qe,{className:`max-w-[34rem] gap-0 overflow-hidden border-border/80 bg-background p-0 shadow-xl`,children:e&&m?(0,q.jsx)(Ai,{target:e,branchName:t,gitStatusDisplay:n,changedFilesSection:r,threadId:i,threadType:a,showMergeBaseDetails:o,mergeBaseBranch:s,mergeBaseBranchOptions:c,mergeBaseBranchOptionsLoading:l,onMergeBaseBranchChange:u,onOpenChange:d,onCommit:f,onSquashMerge:p},e.kind):null})})}function Ai({target:e,branchName:t,gitStatusDisplay:n,changedFilesSection:r,threadId:i,threadType:a,showMergeBaseDetails:o,mergeBaseBranch:s,mergeBaseBranchOptions:c,mergeBaseBranchOptionsLoading:l,onMergeBaseBranchChange:u,onOpenChange:d,onCommit:p,onSquashMerge:m}){let[h,g]=(0,K.useState)(null),_=Oi(e),v=Un({mergeBaseBranch:s,mergeBaseBranchOptions:c}),y=s??v[0],b=_.showMergeBase&&o===!0&&!!u&&v.length>0,x=_.showMergeBase&&o===!0&&(b||!!y),S=!!(r&&r.files.length>0);return(0,q.jsxs)(q.Fragment,{children:[(0,q.jsxs)(W,{className:`px-6 pt-5 pb-3`,children:[(0,q.jsx)($e,{children:_.title}),(0,q.jsx)(U,{children:_.description})]}),(0,q.jsxs)(`form`,{className:`space-y-5 px-6 pt-3 pb-5`,onSubmit:t=>{switch(t.preventDefault(),g(null),e.kind){case`commit`:d(!1),p();break;case`commit_and_squash_merge`:if(!y){g(`A merge base branch is required`);return}d(!1),m({mergeBaseBranch:y});break;case`squash_merge`:if(!y){g(`A merge base branch is required`);return}d(!1),m({mergeBaseBranch:y});break;default:f(e)}},children:[t||n||x||S?(0,q.jsxs)(In,{className:`border-border/70 bg-muted/20`,children:[t?(0,q.jsx)(Wt,{label:`Branch`,valueClassName:`min-w-0 truncate`,children:(0,q.jsx)(`span`,{className:`block truncate`,title:t,children:t})}):null,n?(0,q.jsx)(Wt,{label:`Git status`,valueClassName:`min-w-0`,children:(0,q.jsxs)(`div`,{className:`flex min-w-0 items-baseline gap-2 whitespace-nowrap`,title:`${n.label} ${n.summary}`.trim(),children:[(0,q.jsx)(`span`,{className:`shrink-0 font-medium`,children:n.label}),(0,q.jsx)(`span`,{className:`min-w-0 truncate text-muted-foreground`,children:n.summaryContent})]})}):null,x&&y?(0,q.jsx)(Wt,{label:`Merge base`,valueClassName:`min-w-0`,children:b?(0,q.jsx)(Xn,{value:y,options:v,loading:l,onChange:e=>u?.(e),className:`max-w-full`}):(0,q.jsx)(`span`,{className:`block truncate`,title:y,children:y})}):null,S&&r?(0,q.jsx)(Di,{sections:[r],rowValueClassName:`pt-0.5`,listClassName:`max-h-40`}):null]}):null,(0,q.jsx)(Gn,{message:h}),(0,q.jsx)(Ye,{children:(0,q.jsx)(j,{type:`submit`,disabled:_.showMergeBase&&!y,children:_.submitLabel})})]})]})}var ji={vscode:`data:image/png;base64,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`,cursor:`data:image/png;base64,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`,"sublime-text":`data:image/png;base64,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`,zed:`/assets/zed-C-eVD5h3.png`,windsurf:`/assets/windsurf-Do5nbXdF.png`,antigravity:`data:image/png;base64,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`,finder:`/assets/finder-BYyfd7HG.png`,terminal:`data:image/png;base64,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`,iterm2:`data:image/png;base64,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`,ghostty:`/assets/ghostty-D5T950Nz.png`,xcode:`/assets/xcode-BOSzsT4U.png`};function Mi({target:e,className:t=`size-4`}){return(0,q.jsx)(`img`,{alt:``,className:`${t} shrink-0 rounded-[3px]`,draggable:!1,src:ji[e.id]})}function Ni({onOpenPreferredTarget:e,onOpenTarget:t,preferredTarget:n,targets:r}){let[i,a]=(0,K.useState)(null),o=i!==null,s=(0,K.useCallback)(async(e,t)=>{if(i===null){a(e.id);try{await t()}finally{a(null)}}},[i]);return n?(0,q.jsx)(yr,{disabled:o,className:`px-1`,primaryAction:{label:`Open workspace in ${n.label}`,onSelect:()=>{s(n,e)},content:(0,q.jsx)(Mi,{target:n,className:`size-5`})},secondaryActions:r.map(e=>({label:e.label,onSelect:()=>{s(e,()=>t(e.id))},content:(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(Mi,{target:e,className:`size-5`}),(0,q.jsx)(`span`,{className:`min-w-0 flex-1`,children:e.label})]})})),triggerLabel:`Choose workspace open target`,mobileTitle:`Open Workspace`}):null}var Pi=nt(null),Fi=nt(null),Ii=nt([]);function Li(e){let t=dt(e.enabled?lt:Pi),n=dt(e.enabled?ut:Fi),r=dt(e.enabled?ot:Ii);return{openWorkspace:(0,K.useMemo)(()=>{if(!e.enabled||!t||!n||r.length===0)return null;let i=n;return e=>at(i,e)},[e.enabled,t,n,r.length]),workspaceOpenTargets:r}}var Ri=`Failed to open file locally`,zi=`Localhost is disconnected.`,Bi=`No local editor is available.`;function Vi(e){return e.hasDaemon?Bi:zi}function Hi(e){let{hasDaemon:t}=ft(),{openWorkspace:n,workspaceOpenTargets:r}=Li(e),[i,a]=ct(),o=(0,K.useMemo)(()=>gt({preferredTargetId:i,targets:r}),[i,r]),s=(0,K.useCallback)(async e=>{if(!r.find(t=>t.id===e.targetId)||!n)return hn.error(Ri,{description:Vi({hasDaemon:t})}),!1;e.rememberTarget&&a(e.targetId);try{return await n({lineNumber:e.lineNumber,path:e.path,targetId:e.targetId}),!0}catch(e){return hn.error(Ri,{description:e instanceof Error?e.message:void 0}),!1}},[t,n,a,r]),c=(0,K.useCallback)(async e=>o?s({lineNumber:e.lineNumber,path:e.path,rememberTarget:!1,targetId:o.id}):(hn.error(Ri,{description:Vi({hasDaemon:t})}),!1),[t,s,o]);return{canOpenPreferredTarget:o!==null,openPathInPreferredTarget:c,openPathInTarget:s,preferredTarget:o,workspaceOpenTargets:r}}function Ui(e,t){return e?e.sessions.findIndex(e=>e.id===t.id)===-1?{sessions:[...e.sessions,t]}:{sessions:e.sessions.map(e=>e.id===t.id?t:e)}:{sessions:[t]}}function Wi(e,t){if(!e)return e;let n=e.sessions.filter(e=>e.id!==t);return n.length===e.sessions.length?e:{sessions:n}}function Gi(e,t){if(!e)throw Error(`${t}: thread id is required when query is enabled`);return e}function Ki(e,t){return N({queryKey:F(e),queryFn:({signal:t})=>re(Gi(e,`useThreadTerminals`),t),enabled:(t?.enabled??!0)&&!!e,refetchOnWindowFocus:!1})}function qi(){let e=M();return I({meta:{errorMessage:`Failed to start terminal.`},mutationFn:({threadId:e,...t})=>g(e,t),onSuccess:t=>{e.setQueryData(F(t.threadId),e=>Ui(e,t)),e.invalidateQueries({queryKey:F(t.threadId)})}})}function Ji(){let e=M();return I({meta:{errorMessage:`Failed to rename terminal.`},mutationFn:({terminalId:e,threadId:t,...n})=>de(t,e,n),onSuccess:t=>{e.setQueryData(F(t.threadId),e=>Ui(e,t)),e.invalidateQueries({queryKey:F(t.threadId)})}})}function Yi(){let e=M();return I({meta:{errorMessage:`Failed to close terminal.`},mutationFn:({mode:e,terminalId:t,threadId:n})=>ne(n,t,{mode:e,reason:`user`}),onSuccess:(t,n)=>{e.setQueryData(F(t.threadId),e=>t.status===`exited`?Wi(e,n.terminalId):Ui(e,t)),e.invalidateQueries({queryKey:F(t.threadId)})}})}var Xi=`bb.thread.useStandardManagerTimeline`,Zi=`bb.thread.showAllEvents`;function Qi(){return typeof window>`u`?null:window.localStorage}function $i(e,t){return e===`true`?!0:e===`false`?!1:t}function ea({currentValue:e,initialValue:t,legacyValue:n}){return $i(e===null?n:e,t)}var ta=tt({parse:$i,serialize:e=>String(e)}),na=G(Xi,!1,{getItem:(e,t)=>{let n=Qi();return ea({currentValue:n?.getItem(e)??null,legacyValue:n?.getItem(Zi)??null,initialValue:t})},removeItem:e=>{ta.removeItem(e)},setItem:(e,t)=>{ta.setItem(e,t)},subscribe:ta.subscribe},{getOnInit:!0});function ra(){return it(na)}function ia(e,t){let n=e.mergeBase?.aheadCount??0,r=e.mergeBase?.behindCount??0;return n===0&&r===0?null:n>0&&r>0?t?`${n} ahead, ${r} behind relative to ${t}`:`${n} ahead, ${r} behind`:n>0?t?`${n} ahead of ${t}`:`${n} ahead`:t?`${r} behind ${t}`:`${r} behind`}function aa(e,t){return{label:e,summary:t,summaryContent:t}}function oa(e,t){if(!e){let e=t?.error instanceof b&&t.error.code===`path_not_found`;return t?.workspaceDeleted||e?aa(`Unknown`,`Workspace not found.`):aa(`Unknown`,`Workspace status unavailable.`)}let n=t?.mergeBaseBranch??e.mergeBase?.mergeBaseBranch,r=t?.showBranchComparison?ia(e,n):null;switch(e.workingTree.state){case`clean`:return(e.mergeBase?.aheadCount??0)>0&&(e.mergeBase?.behindCount??0)>0?aa(`Diverged`,r??`Branch has diverged.`):(e.mergeBase?.aheadCount??0)>0?aa(`Ahead`,r??`Local commits pending merge.`):(e.mergeBase?.behindCount??0)>0?aa(`Behind`,r??`Branch is behind its merge base.`):aa(t?.showBranchComparison?`Up to date`:`Clean`,n?`No local changes relative to ${n}.`:`No local changes.`);case`untracked`:return aa(`Untracked`,r??``);case`dirty_uncommitted`:return aa(`Dirty`,r??``);case`committed_unmerged`:return(e.mergeBase?.aheadCount??0)>0&&(e.mergeBase?.behindCount??0)>0?aa(`Diverged`,r??`Branch has diverged.`):(e.mergeBase?.behindCount??0)>0?aa(`Behind`,r??`Branch is behind its merge base.`):aa(`Ahead`,r??`Local commits pending merge.`);case`dirty_and_committed_unmerged`:return aa(`Dirty`,r??``);default:return f(e.workingTree.state)}}var sa=nt(!1),ca=G(`bb.thread.secondaryPanel.widthPercent`,50,tt({parse:(e,t)=>{if(e===null)return t;let n=Number.parseFloat(e);return Number.isFinite(n)&&n>0&&n<=100?n:t},serialize:e=>String(e)}),{getOnInit:!0}),la=nt(new Set),ua=nt(new Set),da=nt(void 0),fa=nt(null);function pa({activeSecondaryPanel:e,clearActiveFileTabs:t,defaultMergeBaseBranch:n,environmentId:r,mergeBaseBranchOptionsEnabled:i=!1,setThreadSecondaryPanel:a}){let o=dt(da),s=rt(da),c=rt(fa),{data:l,isLoading:u}=gi(r??``,{enabled:!!r&&(i||e===`git-diff`)});(0,K.useEffect)(()=>{s(void 0)},[r,s]);let d=(0,K.useCallback)(e=>{a(e)},[a]),f=(0,K.useCallback)(()=>{d(`git-diff`)},[d]);return{closeThreadSecondaryPanel:(0,K.useCallback)(()=>{e!==null&&a(null)},[e,a]),defaultMergeBaseBranch:n,isLoadingMergeBaseBranchOptions:u,mergeBaseBranchOptions:l,openDiffFile:(0,K.useCallback)(e=>{t(),c(e),f()},[t,f,c]),openThreadDiffPanel:f,openThreadSecondaryPanel:d,selectedMergeBaseBranch:o,setSelectedMergeBaseBranch:s}}function ma(e){return!!e.threadId&&e.inlineRowCount===0&&e.cachedRowCount===0&&!e.isLoading}function ha(e){return{sourceSeqEnd:e.sourceSeqEnd,sourceSeqStart:e.sourceSeqStart,turnId:e.turnId}}function ga(e,t){return e.turnId===t.turnId&&e.sourceSeqStart===t.sourceSeqStart&&e.sourceSeqEnd===t.sourceSeqEnd}function _a(e){let t={},n=e=>{for(let r of e){if(r.kind===`turn`){t[r.id]=ha(r),r.children&&n(r.children);continue}r.kind===`work`&&r.workKind===`delegation`&&n(r.childRows)}};return n(e),t}function va({candidateRowIds:e,previousRangesById:t,visibleRangesById:n}){let r=new Set;for(let i of e){let e=n[i],a=t[i];(!e||a&&!ga(a,e))&&r.add(i)}return r}function ya(e,t){let n=null;for(let r of t)e.has(r)&&(n??=new Set(e),n.delete(r));return n}function ba(e,t){let n=null;for(let r of t)r in e&&(n??={...e},delete n[r]);return n}function xa({currentLoadGeneration:e,request:t,visibleRangesById:n}){if(e!==t.loadGeneration)return!1;let r=n[t.rowId];return r!==void 0&&ga(r,t.range)}function Sa({loadTurnSummaryRows:e,managerTimelineView:t,timelineRows:n,threadId:r}){let i=(0,K.useRef)(0),a=(0,K.useRef)(e),o=(0,K.useRef)(r),s=(0,K.useRef)({}),c=(0,K.useRef)(new Set),l=(0,K.useRef)(new Set),u=(0,K.useRef)(new Set),d=(0,K.useRef)({}),[f,p]=(0,K.useState)(()=>new Set),[m,h]=(0,K.useState)(()=>new Set),[g,_]=(0,K.useState)({});(0,K.useLayoutEffect)(()=>{a.current=e},[e]),(0,K.useLayoutEffect)(()=>{o.current=r},[r]),(0,K.useLayoutEffect)(()=>{let e=_a(n),t=va({candidateRowIds:[...Object.keys(d.current),...c.current,...l.current,...u.current],previousRangesById:s.current,visibleRangesById:e});if(s.current=e,t.size===0)return;let r=ya(c.current,t);r&&(c.current=r);let i=ya(l.current,t);i&&(l.current=i,p(i));let a=ya(u.current,t);a&&(u.current=a,h(a));let o=ba(d.current,t);o&&(d.current=o,_(o))},[n]);let v=(0,K.useCallback)(e=>{let t=o.current,n={loadGeneration:i.current,range:ha(e),rowId:e.id},r=c.current,f=s.current[e.id];if(f===void 0||!ga(f,n.range)||r.has(e.id)||!ma({cachedRowCount:d.current[e.id]?.length??0,inlineRowCount:e.children?.length??0,isLoading:l.current.has(e.id),threadId:t})||!t)return;r.add(e.id);let m=new Set(l.current).add(e.id);if(l.current=m,p(m),u.current.has(e.id)){let t=new Set(u.current);t.delete(e.id),u.current=t,h(t)}a.current({id:t,turnId:e.turnId,sourceSeqStart:e.sourceSeqStart,sourceSeqEnd:e.sourceSeqEnd}).then(t=>{if(!xa({currentLoadGeneration:i.current,request:n,visibleRangesById:s.current}))return;let r={...d.current,[e.id]:t.rows};d.current=r,_(r)}).catch(()=>{if(!xa({currentLoadGeneration:i.current,request:n,visibleRangesById:s.current}))return;c.current.delete(e.id);let t=new Set(u.current).add(e.id);u.current=t,h(t)}).finally(()=>{if(!xa({currentLoadGeneration:i.current,request:n,visibleRangesById:s.current}))return;let t=new Set(l.current);t.delete(e.id),l.current=t,p(t)})},[]);return(0,K.useLayoutEffect)(()=>{i.current+=1,c.current=new Set;let e=new Set,t=new Set,n={};l.current=e,u.current=t,d.current=n,p(e),h(t),_(n)},[t,r]),{erroredTurnSummaryIds:m,handleLoadTurnSummaryRows:v,loadingTurnSummaryIds:f,turnSummaryRowsById:g}}function Ca({managerTimelineView:e,timelineRows:t,threadId:n}){let{mutateAsync:r}=Ne();return Sa({managerTimelineView:e,timelineRows:t,threadId:n,loadTurnSummaryRows:(0,K.useCallback)(t=>r({...t,managerTimelineView:e}),[r,e])})}var wa=pe;function Ta({actionsMenu:e,activeTerminalCount:t,isManagedThread:n,isManagerThread:r,isSecondaryPanelOpen:i,isTerminalPanelOpen:a,isThreadGitActionPending:o,onOpenThreadGitAction:s,onToggleSecondaryPanel:c,onToggleTerminalPanel:l,showTerminalPanelToggle:u,threadHeaderGitActions:d,threadTitle:f,workspaceOpenButton:p}){let[m,...h]=d,g=me(),_=g?`PanelBottom`:`PanelRight`;return(0,q.jsx)(dr,{center:(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(`p`,{className:`truncate text-sm font-semibold`,children:f}),r?(0,q.jsx)(Je,{variant:`outline`,children:`manager`}):null,!r&&n?(0,q.jsx)(Je,{variant:`outline`,children:`managed`}):null]}),actions:(0,q.jsxs)(q.Fragment,{children:[p,m&&h.length>0?(0,q.jsx)(yr,{disabled:o,primaryAction:{label:m.label,onSelect:()=>s(m.target)},secondaryActions:h.map(e=>({label:e.label,onSelect:()=>s(e.target)}))}):m?(0,q.jsx)(j,{type:`button`,variant:`outline`,size:`sm`,disabled:o,className:wa,onClick:()=>s(m.target),children:m.label}):null,u?(0,q.jsxs)(j,{type:`button`,variant:`ghost`,size:`icon`,className:`${nn} relative`,"aria-label":a?`Hide terminal panel`:`Show terminal panel`,"aria-pressed":a,title:a?`Hide terminal panel`:`Show terminal panel`,onClick:l,children:[(0,q.jsx)(L,{name:`Terminal`}),t>0?(0,q.jsx)(`span`,{"aria-hidden":`true`,className:`pointer-events-none absolute -right-0.5 -top-0.5 flex h-3.5 min-w-3.5 items-center justify-center rounded-full bg-primary px-1 text-[9px] font-semibold leading-none text-primary-foreground`,children:t>9?`9+`:t}):null]}):null,e,!g&&i?null:(0,q.jsx)(j,{type:`button`,variant:`ghost`,size:`icon`,className:nn,"aria-label":i?`Hide secondary panel`:`Show secondary panel`,"aria-pressed":i,title:i?`Hide secondary panel`:`Show secondary panel`,onClick:c,children:(0,q.jsx)(L,{name:_})})]})})}function Ea(){let e=M();return I({meta:{errorMessage:`Failed to resolve pending interaction.`,showErrorToast:!1},mutationFn:({threadId:e,interactionId:t,resolution:n})=>ue(e,t,n),onSuccess:(t,n)=>(_t({queryClient:e,threadId:n.threadId}),t)})}var Da=[];function Oa(){return{freeTextByQuestionId:{},selectedValuesByQuestionId:{}}}function ka({formState:e,question:t}){return e.selectedValuesByQuestionId[t.id]??Da}function Aa({formState:e,question:t}){return e.freeTextByQuestionId[t.id]??``}function ja({question:e,selectedValues:t}){let n=new Set((e.options??[]).map(e=>e.value));return t.filter(e=>n.has(e))}function Ma({optionValue:e,question:t,selectedValues:n}){return t.multiSelect?n.includes(e)?n.filter(t=>t!==e):[...n,e]:[e]}function Na(e,t){let n=ka({formState:e,question:t.question});return{...e,selectedValuesByQuestionId:{...e.selectedValuesByQuestionId,[t.question.id]:Ma({optionValue:t.optionValue,question:t.question,selectedValues:n})}}}function Pa(e,t){return{...e,freeTextByQuestionId:{...e.freeTextByQuestionId,[t.questionId]:t.value}}}function Fa({formState:e,question:t}){return ja({question:t,selectedValues:ka({formState:e,question:t})}).length>0?!0:t.allowFreeText&&Aa({formState:e,question:t}).trim().length>0}function Ia({formState:e,questions:t}){let n={};for(let r of t){let t=ja({question:r,selectedValues:ka({formState:e,question:r})}),i=Aa({formState:e,question:r}).trim();n[r.id]=r.allowFreeText&&i.length>0?{selected:t,freeText:i}:{selected:t}}return{kind:`user_answer`,answers:n}}function La({question:e}){return(0,q.jsxs)(`div`,{className:`min-w-0`,children:[e.shortLabel?(0,q.jsx)(`div`,{className:`text-xs font-medium uppercase text-muted-foreground`,children:e.shortLabel}):null,(0,q.jsx)(`div`,{className:`text-sm font-semibold text-foreground`,children:e.prompt})]})}function Ra({checked:e,disabled:t,inputName:n,onOptionToggle:r,option:i,question:a}){let o=a.multiSelect?`checkbox`:`radio`;return(0,q.jsxs)(`label`,{className:R(`flex min-w-0 cursor-pointer items-start gap-2 rounded-md border px-3 py-2 transition-colors`,e?`border-primary/40 bg-primary/10 text-foreground`:`border-border bg-background/70 text-muted-foreground hover:bg-state-hover hover:text-foreground`,t&&`cursor-not-allowed opacity-60`),children:[(0,q.jsx)(`input`,{type:o,name:n,value:i.value,checked:e,disabled:t,onChange:()=>r({question:a,optionValue:i.value}),className:`mt-0.5 size-4 shrink-0 accent-primary`}),(0,q.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[(0,q.jsx)(`span`,{className:`block text-sm font-medium`,children:i.label}),i.description?(0,q.jsx)(`span`,{className:`mt-0.5 block text-xs text-muted-foreground`,children:i.description}):null]})]})}function za({disabled:e,formState:t,interactionId:n,onFreeTextChange:r,onOptionToggle:i,onSubmit:a,question:o}){let s=ka({formState:t,question:o}),c=Aa({formState:t,question:o}),l=`${n}-${o.id}`,u=o.options??[],d=`${o.shortLabel??o.prompt} answer`;return(0,q.jsxs)(`fieldset`,{className:`space-y-2 rounded-md border border-border bg-card px-4 py-3`,children:[(0,q.jsx)(`legend`,{className:`sr-only`,children:o.prompt}),(0,q.jsx)(La,{question:o}),u.length>0?(0,q.jsx)(`div`,{className:`grid gap-2`,children:u.map(t=>(0,q.jsx)(Ra,{checked:s.includes(t.value),disabled:e,inputName:l,onOptionToggle:i,option:t,question:o},t.value))}):null,o.allowFreeText?(0,q.jsx)(`textarea`,{"aria-label":d,value:c,disabled:e,rows:3,onChange:e=>r({questionId:o.id,value:e.target.value}),onKeyDown:e=>{e.nativeEvent.isComposing||e.key!==`Enter`||!e.metaKey&&!e.ctrlKey||(e.preventDefault(),a())},className:`min-h-20 w-full resize-y rounded-md border border-input bg-background px-3 py-2 text-sm text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50`,placeholder:`Add an answer`}):null]})}function Ba({interactionId:e,questions:t,threadId:n}){let[r,i]=(0,K.useState)(Oa),a=Ea();(0,K.useEffect)(()=>{i(Oa())},[e]);let o=(0,K.useMemo)(()=>t.length>0&&t.every(e=>Fa({formState:r,question:e})),[r,t]),s=a.error?pn({error:a.error,fallbackMessage:`Failed to submit answer.`}):null,c=a.isPending,l=c||!o;return{disabled:c,formState:r,mutationErrorMessage:s,submitAnswer:()=>{if(l)return;let i=Ia({formState:r,questions:t});a.mutateAsync({threadId:n,interactionId:e,resolution:i}).catch(()=>{})},updateFreeTextAnswer:e=>{i(t=>Pa(t,e))},updateSelectedAnswer:e=>{i(t=>Na(t,e))}}}function Va({className:e,interactionId:t,isResolving:n=!1,questions:r,threadId:i}){let{disabled:a,formState:o,mutationErrorMessage:s,submitAnswer:c,updateFreeTextAnswer:l,updateSelectedAnswer:u}=Ba({interactionId:t,questions:r,threadId:i}),d=a||n,[f,p]=(0,K.useState)(0);(0,K.useEffect)(()=>{p(0)},[t]);let m=r.length,h=r[f]??null,g=f===m-1,_=h?Fa({formState:o,question:h}):!1,v=()=>{p(e=>Math.max(e-1,0))},y=()=>{if(g){c();return}p(e=>Math.min(e+1,m-1))};return h?(0,q.jsxs)(`form`,{className:R(`space-y-3`,e),onSubmit:e=>{e.preventDefault(),y()},children:[m>1?(0,q.jsx)(Ha,{currentIndex:f,totalQuestions:m}):null,(0,q.jsx)(za,{disabled:d,formState:o,interactionId:t,onFreeTextChange:l,onOptionToggle:u,onSubmit:y,question:h}),(0,q.jsxs)(`div`,{className:`flex items-center justify-end gap-2`,children:[f>0?(0,q.jsx)(j,{type:`button`,size:`sm`,variant:`outline`,disabled:d,onClick:v,children:`Back`}):null,(0,q.jsxs)(j,{type:`submit`,size:`sm`,disabled:d||!_,children:[n?(0,q.jsx)(L,{name:`Spinner`,className:`size-3 animate-spin`}):null,g?`Submit answer`:`Next`]})]}),s?(0,q.jsx)(`div`,{className:`rounded-md border border-destructive/30 bg-destructive/[0.06] px-3 py-2 text-xs text-destructive`,children:s}):null]}):null}function Ha({currentIndex:e,totalQuestions:t}){return(0,q.jsxs)(`div`,{className:`flex items-center justify-between text-xs text-muted-foreground`,children:[(0,q.jsxs)(`span`,{children:[`Question `,e+1,` of `,t]}),(0,q.jsx)(`div`,{className:`flex items-center gap-1.5`,"aria-hidden":!0,children:Array.from({length:t}).map((t,n)=>(0,q.jsx)(`span`,{className:R(`size-1.5 rounded-full transition-colors`,n===e?`bg-foreground`:n<e?`bg-foreground/60`:`bg-foreground/25`)},n))})]})}function Ua({interaction:e,threadId:t}){return y(e.payload)?(0,q.jsx)(Ka,{interaction:e,payload:e.payload,threadId:t}):ce(e.payload)?(0,q.jsx)(Ga,{interaction:e,payload:e.payload,threadId:t}):f(e.payload)}function Wa({title:e,errorMessage:t,footer:n,children:r}){return(0,q.jsxs)(`div`,{className:`mb-2 rounded-lg border border-border/60 bg-muted/40 px-4 py-3 text-xs text-muted-foreground`,children:[(0,q.jsx)(`h3`,{className:`min-w-0 text-sm font-semibold text-foreground`,children:(0,q.jsx)(Xt,{fullText:e,collapsedClassName:`line-clamp-2`,children:e})}),r?(0,q.jsx)(`div`,{className:`mt-3`,children:r}):null,n?(0,q.jsx)(`div`,{className:`mt-3 flex flex-wrap items-center justify-end gap-2`,children:n}):null,t?(0,q.jsx)(`div`,{className:`mt-2 rounded-md border border-destructive/30 bg-destructive/[0.06] px-2 py-1 text-xs text-destructive`,children:t}):null]})}function Ga({interaction:e,payload:t,threadId:n}){let r=Ea(),i=e.status===`resolving`,a=Ya(e.resolution),o=(0,K.useMemo)(()=>Xa({interaction:e,payload:t}),[e,t]),s=r.error?pn({error:r.error,fallbackMessage:`Failed to resolve pending interaction.`}):null,c=r.isPending||i,l=t=>{let i=x(e,t);r.mutateAsync({threadId:n,interactionId:e.id,resolution:i}).catch(()=>{})};return(0,q.jsx)(Wa,{title:o.title,errorMessage:s,footer:t.availableDecisions.map(e=>(0,q.jsx)(qa,{decision:e,disabled:c,isLoading:i&&a===e,onClick:()=>l(e)},e)),children:o.body})}function Ka({interaction:e,payload:t,threadId:n}){let r=e.status===`resolving`;return(0,q.jsx)(Wa,{title:T({interaction:e,surface:`app`}),children:(0,q.jsx)(Va,{interactionId:e.id,isResolving:r,questions:t.questions,threadId:n})})}function qa({decision:e,disabled:t,isLoading:n,onClick:r}){return(0,q.jsxs)(j,{type:`button`,size:`sm`,variant:Ja(e),disabled:t,onClick:r,children:[n?(0,q.jsx)(L,{name:`Spinner`,className:`size-3 animate-spin`}):null,Za(e)]})}function Ja(e){switch(e){case`allow_once`:return`default`;case`allow_for_session`:return`outline`;case`deny`:return`ghost`}}function Ya(e){return!e||`kind`in e?null:e.decision}function Xa({interaction:e,payload:t}){switch(t.subject.kind){case`command`:{let n=t.subject.command,r=n?un(n)??n:null,i=O(e).filter(e=>!e.startsWith(`Command: `)).map(e=>e.startsWith(`Cwd: `)?e.slice(5):e);return{title:t.reason??`Do you want to run this command?`,body:r?(0,q.jsxs)(`div`,{className:`overflow-hidden rounded-lg border border-border bg-card`,children:[(0,q.jsxs)(`pre`,{className:R(jt(`base`),`overflow-auto whitespace-pre px-4 py-3 font-mono text-sm leading-tight text-foreground`),children:[`$ `,r]}),i.length>0?(0,q.jsx)(`ul`,{className:`border-t border-border/60 px-4 py-3 text-xs text-muted-foreground`,children:i.map(e=>(0,q.jsx)(`li`,{children:e},e))}):null]}):null}}case`file_change`:{let n=O(e);return{title:t.reason??`Do you want to make these changes?`,body:n.length>0?(0,q.jsx)(`ul`,{className:`rounded-lg border border-border bg-card px-4 py-3 text-xs text-muted-foreground`,children:n.map(e=>(0,q.jsx)(`li`,{children:e},e))}):null}}case`permission_grant`:{let n=O(e);return{title:t.reason??`Do you want to grant this permission?`,body:n.length>0?(0,q.jsx)(`ul`,{className:`rounded-lg border border-border bg-card px-4 py-3 text-xs text-muted-foreground`,children:n.map(e=>(0,q.jsx)(`li`,{children:e},e))}):null}}default:return f(t.subject)}}function Za(e){switch(e){case`allow_once`:return`Allow once`;case`allow_for_session`:return`Allow for session`;case`deny`:return`Deny`}}var Qa=`rounded-md border border-border/60 bg-muted/30`;function $a({children:e,ariaLabel:t,className:n,style:r}){return t?(0,q.jsx)(`section`,{"aria-label":t,className:R(Qa,n),style:r,children:e}):(0,q.jsx)(`div`,{className:R(Qa,n),style:r,children:e})}var eo=new Set([`active`,`host-reconnecting`,`waiting-for-host`]);function to(e){return eo.has(e)}var no={uncommitted:`Uncommitted`,untracked:`Untracked`,committed:`Committed`},ro={managedBy:{toggle:`thread-prompt-banner-managed-by-toggle`,body:`thread-prompt-banner-managed-by-body`},managerChildren:{toggle:`thread-prompt-banner-manager-children-toggle`,body:`thread-prompt-banner-manager-children-body`},todos:{toggle:`thread-prompt-banner-todos-toggle`,body:`thread-prompt-banner-todos-body`},git:{toggle:`thread-prompt-banner-git-toggle`,body:`thread-prompt-banner-git-body`}},io={in_progress:0,pending:1,completed:2};function ao(e){return e.items.length>0}function oo(e){if(e.length===0)return null;let t=0;for(let n of e)n.status===`completed`&&(t+=1);return t===0?`${e.length}`:`${t}/${e.length}`}function so({className:e}){return(0,q.jsx)(L,{name:`ChevronDown`,className:R(`size-3.5 shrink-0 rotate-45`,e),"aria-hidden":`true`})}function co({id:e,controlsId:t,ariaLabel:n,icon:r,label:i,isExpanded:a,onToggle:o}){return(0,q.jsxs)(`button`,{type:`button`,id:e,"aria-expanded":a,"aria-controls":t,"aria-label":n,onClick:o,className:R(`flex min-w-0 items-center rounded px-1 py-0.5 text-xs transition-colors hover:bg-state-hover`,i==null?`gap-0`:`gap-1.5`,a?`text-foreground/90`:`text-muted-foreground`),children:[r,i==null?null:(0,q.jsx)(`span`,{className:`min-w-0 truncate`,children:i}),(0,q.jsx)(L,{name:`ChevronDown`,className:R(`size-3.5 shrink-0 text-muted-foreground/70 transition-transform duration-200`,a&&`rotate-180`),"aria-hidden":`true`})]})}function lo({status:e}){let t=`size-3.5 shrink-0`;switch(e){case`in_progress`:return(0,q.jsx)(L,{name:`Square`,className:R(t,`fill-current text-muted-foreground/30`),"aria-hidden":`true`});case`completed`:return(0,q.jsx)(L,{name:`Check`,className:R(t,`text-muted-foreground/60`),"aria-hidden":`true`});case`pending`:return(0,q.jsx)(L,{name:`Square`,className:R(t,`text-muted-foreground/45`),"aria-hidden":`true`})}}function uo({items:e}){return(0,q.jsx)(`ul`,{className:`max-h-40 space-y-0.5 overflow-y-auto px-3 pb-2 pt-1.5`,children:[...e].sort((e,t)=>io[e.status]-io[t.status]).map(e=>(0,q.jsxs)(`li`,{className:`flex min-w-0 items-center gap-2 py-0.5 text-xs`,children:[(0,q.jsx)(lo,{status:e.status}),(0,q.jsx)(`span`,{className:R(`min-w-0 flex-1 truncate`,e.status===`in_progress`&&`font-medium text-foreground/90`,e.status===`pending`&&`text-foreground/85`,e.status===`completed`&&`text-muted-foreground/70 line-through decoration-muted-foreground/40`),title:e.text,children:e.text})]},e.id))})}function fo({managerName:e,href:t}){return(0,q.jsxs)(`div`,{className:`px-3 pb-2 pt-1.5 text-xs leading-relaxed text-muted-foreground`,children:[`This thread is managed by`,` `,(0,q.jsx)(We,{to:t,className:`text-foreground/90 underline-offset-2 hover:underline`,children:e}),`.`]})}function po({items:e}){return(0,q.jsx)(`ul`,{className:`max-h-40 space-y-0.5 overflow-y-auto px-3 pb-2 pt-1.5`,children:e.map(e=>(0,q.jsx)(`li`,{className:`text-xs`,children:(0,q.jsxs)(We,{to:e.href,title:e.title,className:`flex min-w-0 items-center gap-2 py-0.5 text-foreground/90 underline-offset-2 hover:underline`,children:[(0,q.jsx)(so,{className:`text-muted-foreground/60 no-underline`}),(0,q.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:e.title})]})},e.id))})}function mo({id:e,labelledBy:t,isExpanded:n,children:r}){return(0,q.jsx)(`section`,{id:e,role:`region`,"aria-labelledby":t,"aria-hidden":!n,className:R(`grid overflow-hidden transition-[grid-template-rows,opacity,border-color] duration-200 ease-out`,n?`grid-rows-[1fr] border-t border-border/40 opacity-100`:`pointer-events-none grid-rows-[0fr] border-t border-transparent opacity-0`),children:(0,q.jsx)(`div`,{className:`overflow-hidden`,children:r})})}function ho({todoSection:e,gitSection:t,gitSectionPending:n,archivedSection:r,managedBySection:i,managerChildrenSection:a,expandedSection:o,onToggleSection:s}){if(n)return null;if(r){let e=o===`managedBy`&&i!==null;return(0,q.jsxs)($a,{ariaLabel:`Thread context before sending`,className:`overflow-hidden`,style:{minHeight:32},children:[(0,q.jsxs)(`div`,{className:`flex items-center gap-0.5 px-2 py-1 text-xs text-muted-foreground`,children:[i?(0,q.jsx)(co,{id:ro.managedBy.toggle,controlsId:ro.managedBy.body,ariaLabel:`Managed by ${i.managerName}`,icon:(0,q.jsx)(L,{name:`UserRound`,className:`size-3.5 shrink-0`,"aria-hidden":`true`}),label:null,isExpanded:e,onToggle:()=>s(`managedBy`)}):null,(0,q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1.5 px-1 py-0.5`,children:[(0,q.jsx)(L,{name:`Archive`,className:`size-3.5 shrink-0`,"aria-hidden":`true`}),(0,q.jsx)(`span`,{className:`min-w-0 truncate`,children:`Thread is archived`})]})]}),i?(0,q.jsx)(mo,{id:ro.managedBy.body,labelledBy:ro.managedBy.toggle,isExpanded:e,children:(0,q.jsx)(fo,{managerName:i.managerName,href:i.href})}):null]})}let c=e!==null&&ao(e.pendingTodos),l=t!==null,u=i!==null,d=a!==null&&a.items.length>0;if(!c&&!l&&!u&&!d)return null;let f=c&&e?e.pendingTodos.items:[],p=o===`todos`&&c,m=o===`git`&&l,h=o===`managedBy`&&u,g=o===`managerChildren`&&d,_=l?(0,q.jsxs)(q.Fragment,{children:[c?null:(0,q.jsxs)(q.Fragment,{children:[no[t.changedFiles.kind],` · `]}),Si(yi(t.changedFiles.stats))]}):null,v=l&&t.mergeBase?Un({mergeBaseBranch:t.mergeBase.branch,mergeBaseBranchOptions:t.mergeBase.options}):[],y=u&&!c&&!l&&!d;return(0,q.jsxs)($a,{ariaLabel:`Thread context before sending`,className:`overflow-hidden`,style:{minHeight:32},children:[(0,q.jsxs)(`div`,{className:`flex items-center gap-0.5 px-2 py-1 text-xs text-muted-foreground`,children:[u&&i&&y?(0,q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1.5 px-1 py-0.5`,children:[(0,q.jsx)(L,{name:`UserRound`,className:`size-3.5 shrink-0`,"aria-hidden":`true`}),(0,q.jsxs)(`span`,{className:`min-w-0 truncate`,children:[`Managed by`,` `,(0,q.jsx)(We,{to:i.href,className:`text-foreground/90 underline underline-offset-2`,children:i.managerName})]})]}):null,u&&i&&!y?(0,q.jsx)(co,{id:ro.managedBy.toggle,controlsId:ro.managedBy.body,ariaLabel:`Managed by ${i.managerName}`,icon:(0,q.jsx)(L,{name:`UserRound`,className:`size-3.5 shrink-0`,"aria-hidden":`true`}),label:null,isExpanded:h,onToggle:()=>s(`managedBy`)}):null,d&&a?(0,q.jsx)(co,{id:ro.managerChildren.toggle,controlsId:ro.managerChildren.body,icon:(0,q.jsx)(L,{name:`CircleDashed`,className:`size-3.5 shrink-0 animate-spin`,"aria-hidden":`true`}),label:`${a.items.length} active managed ${a.items.length===1?`thread`:`threads`}`,isExpanded:g,onToggle:()=>s(`managerChildren`)}):null,c?(0,q.jsx)(co,{id:ro.todos.toggle,controlsId:ro.todos.body,icon:(0,q.jsx)(L,{name:`ListTodo`,className:`size-3.5 shrink-0`,"aria-hidden":`true`}),label:oo(f),isExpanded:p,onToggle:()=>s(`todos`)}):null,l&&_?(0,q.jsx)(co,{id:ro.git.toggle,controlsId:ro.git.body,icon:(0,q.jsx)(L,{name:`FileDiff`,className:`size-3.5 shrink-0`,"aria-hidden":`true`}),label:_,isExpanded:m,onToggle:()=>s(`git`)}):null,l&&t.mergeBase?(0,q.jsxs)(`div`,{className:`ml-auto flex shrink-0 items-center gap-1.5 text-xs text-muted-foreground/90`,children:[(0,q.jsx)(`span`,{className:`shrink-0`,children:`Merge base:`}),(0,q.jsx)(Xn,{value:t.mergeBase.branch,options:v,variant:`minimal`,loading:t.mergeBase.optionsLoading,onChange:t.mergeBase.onChange,onOpenChange:t.mergeBase.onPickerOpenChange,className:`max-w-[10rem]`,muted:!0,popoverAlign:`end`})]}):null]}),u&&i&&!y?(0,q.jsx)(mo,{id:ro.managedBy.body,labelledBy:ro.managedBy.toggle,isExpanded:h,children:(0,q.jsx)(fo,{managerName:i.managerName,href:i.href})}):null,d&&a?(0,q.jsx)(mo,{id:ro.managerChildren.body,labelledBy:ro.managerChildren.toggle,isExpanded:g,children:(0,q.jsx)(po,{items:a.items})}):null,c?(0,q.jsx)(mo,{id:ro.todos.body,labelledBy:ro.todos.toggle,isExpanded:p,children:(0,q.jsx)(uo,{items:f})}):null,l?(0,q.jsx)(mo,{id:ro.git.body,labelledBy:ro.git.toggle,isExpanded:m,children:(0,q.jsx)(Ei,{files:t.changedFiles.files,className:`max-h-32 px-3 pb-2 pt-1`,onFileClick:e=>t.onPromptBannerFileClick({file:e,section:t.changedFiles})})}):null]})}var go=220;function _o(e){let t=e.trim();return t.length===0?`Attachment`:Vt(t)}function vo(e){let t=0;for(let n of e)(n.type===`localImage`||n.type===`localFile`)&&(t+=1);return t}function yo(e){let t=e.filter(e=>e.type===`text`).map(e=>e.text.trim()).filter(e=>e.length>0).join(`
1
+ import{Br as e,Bt as t,Gn as n,Gr as r,Gt as i,Hi as a,Hr as o,Ht as s,I as c,In as l,Jn as u,Ki as d,Kn as f,Lr as p,M as m,P as h,Pt as g,R as _,Rr as v,Tr as y,Tt as b,Un as x,Ur as S,Ut as C,Vi as w,Vn as T,Vr as E,Vt as D,Wn as O,Wt as k,Yn as A,Yr as j,_i as M,ai as N,bn as P,bt as F,ii as I,j as ee,kn as te,kt as ne,mn as re,n as ie,ni as L,ri as R,t as z,tn as ae,vi as oe,vr as se,wr as ce,wt as le,xn as ue,yn as de,z as fe}from"./page-shell-Dglk9LmR.js";import{Nt as pe,Pt as me,c as he,d as ge,ht as _e,i as B,l as ve,o as ye,p as V,t as be,xt as H}from"./effective-hosts-BWRuszG7.js";import{C as xe,S as Se,_ as Ce,a as we,b as Te,c as Ee,d as De,f as Oe,g as ke,h as Ae,i as je,l as Me,m as Ne,o as Pe,p as Fe,r as Ie,s as Le,t as Re,u as ze,w as Be}from"./thread-queries-BOTfj5Vv.js";import{c as Ve,d as He,f as Ue,i as We,l as Ge,m as Ke,r as qe,t as Je}from"./pill-BHnTA2D7.js";import{a as Ye,g as Xe,h as Ze,i as U,o as W,r as Qe,s as $e,t as et,u as tt,v as G,y as nt}from"./dialog-CxN4lDeD.js";import{A as rt,O as it,S as at,_ as ot,a as st,b as ct,g as lt,h as ut,k as dt,m as ft,p as pt,t as mt,v as ht,y as gt}from"./localhost-badge-BBCmn0GW.js";import{f as _t,v as vt,y as yt}from"./mutation-cache-effects-BQHFwGL7.js";import{$ as bt,$t as xt,A as St,At as Ct,B as wt,Ct as Tt,D as Et,Dt,E as Ot,Et as kt,F as At,Ft as jt,G as Mt,Gt as Nt,H as Pt,Ht as Ft,I as It,It as Lt,J as Rt,Jt as zt,K as Bt,Kt as Vt,L as Ht,Lt as Ut,M as Wt,Mt as Gt,N as Kt,O as qt,Ot as Jt,P as Yt,Pt as Xt,Q as Zt,Qt,R as $t,S as en,St as tn,T as nn,Tt as rn,U as an,Ut as on,V as sn,Vt as cn,W as ln,Wt as un,X as dn,Y as fn,Yt as pn,Z as mn,Zt as hn,_ as gn,_t as _n,a as vn,an as yn,at as bn,b as xn,bt as Sn,c as Cn,ct as wn,d as Tn,dt as En,et as Dn,f as On,ft as kn,g as An,gt as jn,h as Mn,ht as Nn,i as Pn,it as Fn,j as In,jt as Ln,k as Rn,kt as zn,l as Bn,ln as Vn,lt as Hn,m as Un,mt as Wn,n as Gn,nt as Kn,o as qn,on as Jn,ot as Yn,p as Xn,pt as Zn,q as Qn,qt as $n,r as er,rt as tr,s as nr,st as rr,t as ir,tt as ar,u as or,un as sr,ut as cr,v as lr,vt as ur,w as dr,wt as fr,x as pr,xt as mr,y as hr,yt as gr,z as _r,zt as vr}from"./index-ByQGFt4l.js";import{t as yr}from"./split-button-CeV-MQ2f.js";import{t as br}from"./ThreadUnarchiveButton-EqnpnszW.js";var K=d(w(),1);function xr(e,t){return rt((0,K.useMemo)(()=>nt(null,(t,n,...r)=>e(t,n,...r)),[e]),t)}var Sr=class{highlighter;renderCache;computedLang=`text`;lineAnnotations={};constructor(e={theme:Ct},t,n){this.options=e,this.onRenderUpdate=t,this.workerManager=n,n?.isWorkingPool()!==!0&&(this.highlighter=gr(e.theme??Ct)?mr():void 0)}setOptions(e){this.options=e}mergeOptions(e){this.options={...this.options,...e}}setThemeType(e){(this.options.themeType??`system`)!==e&&this.mergeOptions({themeType:e})}setLineAnnotations(e){this.lineAnnotations={};for(let t of e){let e=this.lineAnnotations[t.lineNumber]??[];this.lineAnnotations[t.lineNumber]=e,e.push(t)}}cleanUp(){this.renderCache=void 0,this.highlighter=void 0,this.workerManager=void 0,this.onRenderUpdate=void 0}hydrate(e){let{options:t}=this.getRenderOptions(e),n=this.workerManager?.getFileResultCache(e);n!=null&&!Cr(t,n.options)&&(n=void 0),this.renderCache??={file:e,options:t,highlighted:!0,result:n?.result},this.workerManager?.isWorkingPool()===!0&&this.renderCache.result==null?this.workerManager.highlightFileAST(this,e):this.asyncHighlight(e).then(({result:t,options:n})=>{this.onHighlightSuccess(e,t,n)})}getRenderOptions(e){let t=(()=>{if(this.workerManager?.isWorkingPool()===!0)return this.workerManager.getFileRenderOptions();let{theme:e=Ct,tokenizeMaxLineLength:t=1e3}=this.options;return{theme:e,tokenizeMaxLineLength:t}})(),{renderCache:n}=this;return n?.result==null||e!==n.file||!Cr(t,n.options)?{options:t,forceRender:!0}:{options:t,forceRender:!1}}renderFile(e=this.renderCache?.file){if(e==null)return;let t=this.workerManager?.getFileResultCache(e);t!=null&&this.renderCache==null&&(this.renderCache={file:e,highlighted:!0,...t});let{options:n,forceRender:r}=this.getRenderOptions(e);if(this.renderCache??={file:e,highlighted:!1,options:n,result:void 0},this.workerManager?.isWorkingPool()===!0)this.renderCache.result??=this.workerManager.getPlainFileAST(e),(!this.renderCache.highlighted||r)&&this.workerManager.highlightFileAST(this,e);else{this.computedLang=e.lang??kn(e.name);let t=this.highlighter!=null&&gr(n.theme),i=this.highlighter!=null&&fr(this.computedLang);if(this.highlighter!=null&&t&&(r||!this.renderCache.highlighted&&i||this.renderCache.result==null)){let{result:t,options:n}=this.renderFileWithHighlighter(e,this.highlighter,!i);this.renderCache={file:e,options:n,highlighted:i,result:t}}(!t||!i)&&this.asyncHighlight(e).then(({result:t,options:n})=>{this.onHighlightSuccess(e,t,n)})}return this.renderCache.result==null?void 0:this.processFileResult(this.renderCache.file,this.renderCache.result)}async asyncRender(e){let{result:t}=await this.asyncHighlight(e);return this.processFileResult(e,t)}async asyncHighlight(e){this.computedLang=e.lang??kn(e.name);let t=this.highlighter!=null&&ur(Sn(this.options.theme)),n=this.highlighter!=null&&fr(this.computedLang);return(this.highlighter==null||!t||!n)&&(this.highlighter=await this.initializeHighlighter()),this.renderFileWithHighlighter(e,this.highlighter)}renderFileWithHighlighter(e,t,n=!1){let{options:r}=this.getRenderOptions(e);return{result:Hn(e,t,r,n),options:r}}processFileResult(e,t){let{disableFileHeader:n=!1}=this.options,r=[],i=1;for(let e of t.code){r.push(e);let t=this.lineAnnotations[i];t!=null&&r.push(Nn({type:`annotation`,hunkIndex:0,lineIndex:i,annotations:t.map(e=>cr(e))})),i++}return{codeAST:r,preAST:this.createPreElement(t.code.length,t.themeStyles,t.baseThemeType),headerAST:n?void 0:this.renderHeader(e,t.themeStyles,t.baseThemeType),totalLines:t.code.length,themeStyles:t.themeStyles,baseThemeType:t.baseThemeType,css:``}}renderHeader(e,t,n){let{themeType:r=`system`}=this.options;return Wn({fileOrDiff:e,themeStyles:t,themeType:n??r})}renderFullHTML(e){return Tt(this.renderFullAST(e))}renderFullAST(e,t=[]){return t.push(jn({tagName:`code`,children:e.codeAST,properties:{"data-code":``}})),{...e.preAST,children:t}}renderPartialHTML(e,t=!1){return Tt(t?jn({tagName:`code`,children:e,properties:{"data-code":``}}):e)}async initializeHighlighter(){return this.highlighter=await tn(En(this.computedLang,this.options)),this.highlighter}onHighlightSuccess(e,t,n){if(this.renderCache==null)return;let r=this.renderCache.file!==e||!this.renderCache.highlighted||!Cr(n,this.renderCache.options);this.renderCache={file:e,options:n,highlighted:!0,result:t},r&&this.onRenderUpdate?.()}onHighlightError(e){console.error(e)}createPreElement(e,t,n){let{disableLineNumbers:r=!1,overflow:i=`scroll`,themeType:a=`system`}=this.options;return Zn({diffIndicators:`none`,disableBackground:!0,disableLineNumbers:r,overflow:i,themeStyles:t,themeType:n??a,split:!1,totalLines:e})}};function Cr(e,t){return _n(e.theme,t.theme)&&e.tokenizeMaxLineLength===t.tokenizeMaxLineLength}var wr=-1,Tr=class{static LoadedCustomComponent=!0;__id=++wr;fileContainer;spriteSVG;pre;code;unsafeCSSStyle;hoverContent;errorWrapper;headerElement;headerMetadata;fileRenderer;resizeManager;mouseEventManager;lineSelectionManager;annotationElements=[];lineAnnotations=[];file;constructor(e={theme:Ct},t,n=!1){this.options=e,this.workerManager=t,this.isContainerManaged=n,this.fileRenderer=new Sr(e,this.handleHighlightRender,this.workerManager),this.resizeManager=new rn,this.mouseEventManager=new kt(`file`,Dt(e)),this.lineSelectionManager=new Jt(zn(e)),this.workerManager?.subscribeToThemeChanges(this)}handleHighlightRender=()=>{this.rerender()};rerender(){this.file!=null&&this.render({file:this.file,forceRender:!0})}setOptions(e){e!=null&&(this.options=e,this.mouseEventManager.setOptions(Dt(e)),this.lineSelectionManager.setOptions(zn(e)))}mergeOptions(e){this.options={...this.options,...e}}setThemeType(e){if((this.options.themeType??`system`)!==e&&(this.mergeOptions({themeType:e}),this.fileRenderer.setThemeType(e),this.headerElement!=null&&(e===`system`?delete this.headerElement.dataset.themeType:this.headerElement.dataset.themeType=e),this.pre!=null))switch(e){case`system`:delete this.pre.dataset.themeType;break;case`light`:case`dark`:this.pre.dataset.themeType=e;break}}getHoveredLine=()=>this.mouseEventManager.getHoveredLine();setLineAnnotations(e){this.lineAnnotations=e}setSelectedLines(e){this.lineSelectionManager.setSelection(e)}cleanUp(){this.fileRenderer.cleanUp(),this.resizeManager.cleanUp(),this.mouseEventManager.cleanUp(),this.lineSelectionManager.cleanUp(),this.workerManager?.unsubscribeToThemeChanges(this),this.workerManager=void 0,this.file=void 0,this.isContainerManaged||this.fileContainer?.parentNode?.removeChild(this.fileContainer),this.fileContainer?.shadowRoot!=null&&(this.fileContainer.shadowRoot.innerHTML=``),this.fileContainer=void 0,this.pre=void 0,this.headerElement=void 0,this.errorWrapper=void 0,this.unsafeCSSStyle=void 0}hydrate(e){let{fileContainer:t,prerenderedHTML:n}=e;ar(t,n);for(let e of Array.from(t.shadowRoot?.children??[])){if(e instanceof SVGElement){this.spriteSVG=e;continue}if(e instanceof HTMLElement){if(e instanceof HTMLPreElement){this.pre=e;continue}if(e instanceof HTMLStyleElement&&e.hasAttribute(`data-unsafe-css`)){this.unsafeCSSStyle=e;continue}if(`diffsHeader`in e.dataset){this.headerElement=e;continue}}}if(this.pre==null)this.render(e);else{let{file:n,lineAnnotations:r}=e;this.fileContainer=t,delete this.pre.dataset.dehydrated,this.lineAnnotations=r??this.lineAnnotations,this.file=n,this.fileRenderer.hydrate(n),this.renderAnnotations(),this.renderHoverUtility(),this.injectUnsafeCSS(),this.mouseEventManager.setup(this.pre),this.lineSelectionManager.setup(this.pre),(this.options.overflow??`scroll`)===`scroll`&&this.resizeManager.setup(this.pre)}}render({file:e,fileContainer:t,forceRender:n=!1,containerWrapper:r,lineAnnotations:i}){let a=i!=null&&(i.length>0||this.lineAnnotations.length>0)?i!==this.lineAnnotations:!1;if(!n&&rr(this.file,e)&&!a)return;this.file=e,this.fileRenderer.setOptions(this.options),i!=null&&this.setLineAnnotations(i),this.fileRenderer.setLineAnnotations(this.lineAnnotations);let{disableFileHeader:o=!1,disableErrorHandling:s=!1}=this.options;o&&this.headerElement!=null&&(this.headerElement.parentNode?.removeChild(this.headerElement),this.headerElement=void 0),t=this.getOrCreateFileContainerNode(t,r);try{let n=this.fileRenderer.renderFile(e);if(n==null){this.workerManager!=null&&!this.workerManager.isInitialized()&&this.workerManager.initialize().then(()=>this.rerender());return}n.headerAST!=null&&this.applyHeaderToDOM(n.headerAST,t);let r=this.getOrCreatePreNode(t);this.applyHunksToDOM(n,r),this.renderAnnotations(),this.renderHoverUtility()}catch(e){if(s)throw e;console.error(e),e instanceof Error&&this.applyErrorToDOM(e,t)}}renderAnnotations(){if(this.isContainerManaged||this.fileContainer==null)return;for(let e of this.annotationElements)e.parentNode?.removeChild(e);this.annotationElements.length=0;let{renderAnnotation:e}=this.options;if(e!=null&&this.lineAnnotations.length>0)for(let t of this.lineAnnotations){let n=e(t);if(n==null)continue;let r=Yn(cr(t));r.appendChild(n),this.annotationElements.push(r),this.fileContainer.appendChild(r)}}renderHoverUtility(){let{renderHoverUtility:e}=this.options;if(this.fileContainer==null||e==null)return;this.hoverContent??(this.hoverContent=Fn(),this.fileContainer.appendChild(this.hoverContent));let t=e(this.mouseEventManager.getHoveredLine);this.hoverContent.innerHTML=``,t!=null&&this.hoverContent.appendChild(t)}injectUnsafeCSS(){if(this.fileContainer?.shadowRoot==null)return;let{unsafeCSS:e}=this.options;if(e==null||e===``){this.unsafeCSSStyle!=null&&(this.unsafeCSSStyle.parentNode?.removeChild(this.unsafeCSSStyle),this.unsafeCSSStyle=void 0);return}this.unsafeCSSStyle??(this.unsafeCSSStyle=tr(),this.fileContainer.shadowRoot.appendChild(this.unsafeCSSStyle)),this.unsafeCSSStyle.innerText=Kn(e)}applyHunksToDOM(e,t){this.cleanupErrorWrapper(),this.applyPreNodeAttributes(t,e),t.innerHTML=``,this.code=bn(),this.code.innerHTML=this.fileRenderer.renderPartialHTML(e.codeAST),t.appendChild(this.code),this.injectUnsafeCSS(),this.mouseEventManager.setup(t),this.lineSelectionManager.setup(t),this.lineSelectionManager.setDirty(),(this.options.overflow??`scroll`)===`scroll`?this.resizeManager.setup(t):this.resizeManager.cleanUp()}applyHeaderToDOM(e,t){let{file:n}=this;if(n==null)return;this.cleanupErrorWrapper();let r=document.createElement(`div`);r.innerHTML=Tt(e);let i=r.firstElementChild;if(!(i instanceof HTMLElement)||(this.headerElement==null?t.shadowRoot?.prepend(i):t.shadowRoot?.replaceChild(i,this.headerElement),this.headerElement=i,this.isContainerManaged))return;let{renderCustomMetadata:a}=this.options;this.headerMetadata!=null&&this.headerMetadata.parentNode?.removeChild(this.headerMetadata);let o=a?.(n)??void 0;o!=null&&(this.headerMetadata=document.createElement(`div`),this.headerMetadata.slot=Gt,o instanceof Element?this.headerMetadata.appendChild(o):this.headerMetadata.innerText=`${o}`,t.appendChild(this.headerMetadata))}getOrCreateFileContainerNode(e,t){if(this.fileContainer=e??this.fileContainer??document.createElement(`diffs-container`),t!=null&&this.fileContainer.parentNode!==t&&t.appendChild(this.fileContainer),this.spriteSVG==null){let e=document.createElement(`div`);e.innerHTML=wn;let t=e.firstChild;t instanceof SVGElement&&(this.spriteSVG=t,this.fileContainer.shadowRoot?.appendChild(this.spriteSVG))}return this.fileContainer}getOrCreatePreNode(e){return this.pre==null?(this.pre=document.createElement(`pre`),e.shadowRoot?.appendChild(this.pre)):this.pre.parentNode!==e&&e.shadowRoot?.appendChild(this.pre),this.pre}applyPreNodeAttributes(e,{totalLines:t,themeStyles:n,baseThemeType:r}){let{overflow:i=`scroll`,themeType:a=`system`,disableLineNumbers:o=!1}=this.options;Dn({pre:e,split:!1,themeStyles:n,overflow:i,disableLineNumbers:o,themeType:r??a,diffIndicators:`none`,disableBackground:!0,totalLines:t})}applyErrorToDOM(e,t){this.cleanupErrorWrapper();let n=this.getOrCreatePreNode(t);n.innerHTML=``,n.parentNode?.removeChild(n),this.pre=void 0;let r=t.shadowRoot??t.attachShadow({mode:`open`});this.errorWrapper??=document.createElement(`div`),this.errorWrapper.dataset.errorWrapper=``,this.errorWrapper.innerHTML=``,r.appendChild(this.errorWrapper);let i=document.createElement(`div`);i.dataset.errorMessage=``,i.innerText=e.message,this.errorWrapper.appendChild(i);let a=document.createElement(`pre`);a.dataset.errorStack=``,a.innerText=e.stack??`No Error Stack`,this.errorWrapper.appendChild(a)}cleanupErrorWrapper(){this.errorWrapper?.parentNode?.removeChild(this.errorWrapper),this.errorWrapper=void 0}},q=oe();function Er({file:e,renderHeaderMetadata:t,renderAnnotation:n,lineAnnotations:r,renderHoverUtility:i,getHoveredLine:a}){let o=t?.(e);return(0,q.jsxs)(q.Fragment,{children:[o!=null&&(0,q.jsx)(`div`,{slot:`header-metadata`,children:o}),n!=null&&r?.map((e,t)=>(0,q.jsx)(`div`,{slot:cr(e),children:n(e)},t)),i!=null&&(0,q.jsx)(`div`,{slot:`hover-slot`,style:Zt,children:i(a)})]})}var Dr=typeof window>`u`?K.useEffect:K.useLayoutEffect;function Or({file:e,options:t,lineAnnotations:n,selectedLines:r,prerenderedHTML:i}){let a=(0,K.useContext)(fn),o=(0,K.useRef)(null),s=Rt(r=>{if(r!=null){if(o.current!=null)throw Error(`File: An instance should not already exist when a node is created`);o.current=new Tr(t,a,!0),o.current.hydrate({file:e,fileContainer:r,lineAnnotations:n,prerenderedHTML:i})}else{if(o.current==null)throw Error(`File: A File instance should exist when unmounting`);o.current.cleanUp(),o.current=null}});return Dr(()=>{if(o.current==null)return;let i=!bt(o.current.options,t);o.current.setOptions(t),o.current.render({file:e,lineAnnotations:n,forceRender:i}),r!==void 0&&o.current.setSelectedLines(r)}),{ref:s,getHoveredLine:(0,K.useCallback)(()=>o.current?.getHoveredLine(),[])}}function kr({file:e,lineAnnotations:t,selectedLines:n,options:r,className:i,style:a,renderAnnotation:o,renderHeaderMetadata:s,prerenderedHTML:c,renderHoverUtility:l}){let{ref:u,getHoveredLine:d}=Or({file:e,options:r,lineAnnotations:t,selectedLines:n,prerenderedHTML:c});return(0,q.jsx)(Ln,{ref:u,className:i,style:a,children:mn(Er({file:e,renderAnnotation:o,renderHeaderMetadata:s,renderHoverUtility:l,lineAnnotations:t,getHoveredLine:d}),c)})}var Ar=8,jr=1;function Mr(){let e=typeof navigator<`u`?navigator.hardwareConcurrency:void 0;return e===void 0||e<=2?jr:Math.max(jr,Math.min(Ar,e-1))}function Nr(){return new Worker(new URL(`/assets/worker-portable-CA4_6zkQ.js`,``+import.meta.url),{name:`pierre-diffs-worker`})}var Pr=`bb.thread.terminalPanelState`,Fr=336*60*60*1e3,Ir=S({version:E(1),isOpen:v(),activeTerminalId:r().min(1).nullable(),panelHeightPercent:o().int().min(18).max(70),lastUsedAt:o().int().nonnegative()}).strict();function Lr(){return typeof window>`u`?null:window.localStorage}function Rr(e){return encodeURIComponent(e.trim())}function zr(e={}){return{version:1,isOpen:e.isOpen??!1,activeTerminalId:e.activeTerminalId??null,panelHeightPercent:e.panelHeightPercent??32,lastUsedAt:e.lastUsedAt??0}}var Br=zr();function Vr({threadId:e}){return`${Pr}-${Rr(e)}-1`}function Hr(e){return e.startsWith(`bb.thread.terminalPanelState-`)&&e.endsWith(`-1`)}function Ur({now:e,state:t}){return e-t.lastUsedAt>Fr}function Wr({initialValue:e,now:t,storedValue:n}){return Gr({initialValue:e,now:t,storedValue:n}).state}function Gr({initialValue:e,now:t,storedValue:n}){if(n===null)return{shouldPrune:!1,state:e};let r;try{r=JSON.parse(n)}catch{return{shouldPrune:!0,state:e}}let i=Ir.safeParse(r);return!i.success||Ur({now:t,state:i.data})?{shouldPrune:!0,state:e}:{shouldPrune:!1,state:i.data}}function Kr({state:e}){return JSON.stringify(e)}function qr({now:e}){let t=Lr();if(!t)return;let n=[];for(let e=0;e<t.length;e+=1){let r=t.key(e);r&&Hr(r)&&n.push(r)}for(let r of n)Gr({initialValue:Br,now:e,storedValue:t.getItem(r)}).shouldPrune&&t.removeItem(r)}function Jr(e){return e!=null&&e.length>0}function Yr(e,t){return{...e,lastUsedAt:t}}var Xr=tt({parse:(e,t)=>Wr({initialValue:t,now:Date.now(),storedValue:e}),serialize:e=>Kr({state:e})}),Zr=nt(Br),Qr=Ze(e=>G(Vr({threadId:e}),Br,Xr,{getOnInit:!0}));function $r(e){return Jr(e)?Qr(e):Zr}function ei(e){return t=>t.isOpen===e?t:{...t,isOpen:e}}function ti(e){(0,K.useEffect)(()=>{qr({now:Date.now()})},[e])}function ni(e){return dt($r(e))}function ri(e){let t=rt($r(e));return(0,K.useCallback)(n=>{if(!Jr(e))return;let r=Date.now();t(e=>{let t=n(e);return t===e?e:Yr(t,r)})},[t,e])}function ii(e){let t=ri(e);return(0,K.useCallback)(e=>{t(ei(e))},[t])}function ai(e){let t=ri(e);return(0,K.useCallback)(()=>{t(e=>({...e,isOpen:!e.isOpen}))},[t])}function oi(){let e=M();return I({meta:{errorMessage:`Failed to run environment action.`,showErrorToast:!1},mutationFn:({id:e,...t})=>P(e,t),onSuccess:(t,n)=>{vt({environmentId:n.id,queryClient:e})}})}function si(){let e=M();return I({meta:{errorMessage:`Failed to update environment.`,showErrorToast:!1},mutationFn:({id:e,...t})=>te(e,t),onSuccess:t=>{e.setQueryData(_(t.id),t),yt({environmentId:t.id,queryClient:e})}})}var ci=1e4,li=3e4;function ui(e,t){if(!e)throw Error(`${t}: environmentId is required when query is enabled`);return e}function di(e){if(!e)throw Error(`useEnvironmentFilePreview: path is required when query is enabled`);return e}function fi(e){if(!e)throw Error(`useEnvironmentFilePreview: source is required when query is enabled`);return e}function pi(e){if(!e)throw Error(`useEnvironmentGitDiff: target is required when query is enabled`);return e}function mi(e,n){return N({queryKey:_(e),queryFn:()=>t(ui(e,`useEnvironment`)),enabled:(n?.enabled??!0)&&!!e,staleTime:n?.staleTime})}function hi(e,t,n){return N({queryKey:fe(e,t??null),queryFn:()=>i(ui(e,`useEnvironmentWorkStatus`),t),enabled:(n?.enabled??!0)&&!!e,refetchOnWindowFocus:!1,staleTime:ci,placeholderData:(t,n)=>e?Ce(t,n?.queryKey,e):void 0})}function gi(e,t){return N({queryKey:c(e),queryFn:()=>s(e),enabled:(t?.enabled??!0)&&!!e,refetchOnWindowFocus:!1,staleTime:li})}function _i(e,t,n,r){return N({queryKey:m(e,t,n),queryFn:({signal:r})=>k({id:ui(e,`useEnvironmentFilePreview`),path:di(t),source:fi(n),signal:r}),enabled:(r?.enabled??!0)&&!!e&&!!t&&n!==null,refetchOnWindowFocus:!1})}function vi(e,t){let n=t.target,r=n?.type===`commit`?n.sha:n?.type===`all`||n?.type===`branch_committed`?n.mergeBaseBranch:null;return N({queryKey:h(e,n?.type??null,r),queryFn:()=>D(e,pi(n)),enabled:(t.enabled??!0)&&!!e&&n!==void 0,placeholderData:(t,n)=>ke(t,n?.queryKey,e),refetchOnWindowFocus:!1,staleTime:5e3})}function yi(e){return{filesCount:e.files.length,insertions:e.insertions,deletions:e.deletions}}function bi(e){return`${e} file${e===1?``:`s`}`}function xi(e){if(e.filesCount===0&&e.insertions===0&&e.deletions===0)return`No changes`;let t=bi(e.filesCount);return e.insertions===0&&e.deletions===0?t:`${t}, ${Nt({added:e.insertions,removed:e.deletions})}`}function Si(e){if(e.filesCount===0&&e.insertions===0&&e.deletions===0)return`No changes`;let t=bi(e.filesCount);return e.insertions===0&&e.deletions===0?t:(0,q.jsxs)(q.Fragment,{children:[t,`,`,` `,(0,q.jsx)(Lt,{insertions:e.insertions,deletions:e.deletions})]})}function Ci(e){if(!e)return[];let t=[],n=e.workingTree;if(n.files.length>0){let e=n.state===`untracked`;t.push({kind:e?`untracked`:`uncommitted`,label:e?`Untracked`:`Uncommitted`,files:n.files,mergeBaseRef:null,stats:n})}let r=e.mergeBase;return r&&r.files.length>0&&t.push({kind:`committed`,label:`Committed`,files:r.files,mergeBaseRef:r.baseRef,stats:r}),t}function wi(e){return Ci(e)[0]??null}function Ti(e){return e===`??`?`A?`:e}function Ei({files:e,className:t=`max-h-32`,emptyMessage:n=`No changed files detected.`,onFileClick:r}){return!e||e.length===0?(0,q.jsx)(Jn,{message:n}):(0,q.jsx)(`ul`,{className:R(`space-y-1 overflow-auto`,t),children:e.map(e=>(0,q.jsxs)(`li`,{className:`grid grid-cols-[1.5rem_minmax(0,1fr)_auto] items-start gap-x-3`,children:[(0,q.jsx)(`span`,{className:`text-xs leading-5 text-muted-foreground/80`,children:Ti(e.status)}),(0,q.jsx)(Mt,{path:e.path,onClick:r?()=>r(e):void 0}),e.insertions!==null&&e.deletions!==null?(0,q.jsx)(Lt,{insertions:e.insertions,deletions:e.deletions,hideZero:!0,className:`text-xs leading-5`}):null]},`${e.status}:${e.path}`))})}function Di({sections:e,onFileClick:t,listClassName:n,rowClassName:r,rowValueClassName:i}){let[a,o]=(0,K.useState)(null);if(e.length===0)return null;let s=e.find(e=>e.kind===a)??e[0],c=yi(s.stats),l=e.length>1,u=(0,q.jsx)(`span`,{className:`truncate text-muted-foreground`,children:Si(c)});return(0,q.jsx)(Wt,{label:l?(0,q.jsxs)(`span`,{className:`flex items-baseline gap-x-3`,children:[(0,q.jsx)(`span`,{className:`flex min-w-[var(--detail-label-width,96px)] items-baseline`,children:(0,q.jsxs)(B,{children:[(0,q.jsx)(ge,{asChild:!0,children:(0,q.jsxs)(j,{type:`button`,variant:`ghost`,size:`sm`,className:`h-5 w-auto min-w-0 justify-between gap-1 rounded-sm px-0 text-xs font-normal shadow-none hover:bg-transparent data-[state=open]:bg-transparent data-[state=open]:hover:bg-transparent`,title:s.label,"aria-label":`Switch changed files bucket`,children:[(0,q.jsx)(`span`,{className:`truncate`,children:s.label}),(0,q.jsx)(L,{name:`ChevronDown`,className:`size-3 shrink-0 text-muted-foreground`})]})}),(0,q.jsx)(ye,{align:`start`,children:e.map(e=>(0,q.jsxs)(he,{onSelect:()=>o(e.kind),className:`flex items-center justify-between gap-2`,children:[(0,q.jsx)(`span`,{className:`truncate`,children:e.label}),(0,q.jsx)(L,{name:`Check`,className:R(`size-3.5 shrink-0`,e.kind===s.kind?`opacity-100`:`opacity-0`)})]},e.kind))})]})}),u]}):(0,q.jsxs)(`span`,{className:`flex items-baseline gap-x-3`,children:[(0,q.jsx)(`span`,{className:`min-w-[var(--detail-label-width,96px)] truncate`,children:s.label}),u]}),orientation:`vertical`,className:r,valueClassName:i,children:(0,q.jsx)(Ei,{files:s.files,className:n,onFileClick:t?e=>t({file:e,section:s}):void 0})})}function Oi(e){switch(e.kind){case`commit`:return{title:`Commit changes`,description:`Create a commit from the current workspace changes.`,submitLabel:`Commit changes`,showCommitControls:!0,showMergeBase:!1};case`commit_and_squash_merge`:return{title:`Commit and squash merge`,description:`Commit the current workspace changes, then squash merge this branch.`,submitLabel:`Commit + squash merge`,showCommitControls:!0,showMergeBase:!0};case`squash_merge`:return{title:`Squash merge`,description:`Squash merge this branch into the selected merge base.`,submitLabel:`Squash merge`,showCommitControls:!1,showMergeBase:!0};default:return f(e)}}function ki({target:e,branchName:t,gitStatusDisplay:n,changedFilesSection:r,threadId:i,threadType:a,showMergeBaseDetails:o=!1,mergeBaseBranch:s,mergeBaseBranchOptions:c,mergeBaseBranchOptionsLoading:l=!1,onMergeBaseBranchChange:u,onOpenChange:d,onCommit:f,onSquashMerge:p}){let m=(0,K.useMemo)(()=>e?Oi(e):null,[e]);return(0,q.jsx)(et,{open:e!==null,onOpenChange:d,children:(0,q.jsx)(Qe,{className:`max-w-[34rem] gap-0 overflow-hidden border-border/80 bg-background p-0 shadow-xl`,children:e&&m?(0,q.jsx)(Ai,{target:e,branchName:t,gitStatusDisplay:n,changedFilesSection:r,threadId:i,threadType:a,showMergeBaseDetails:o,mergeBaseBranch:s,mergeBaseBranchOptions:c,mergeBaseBranchOptionsLoading:l,onMergeBaseBranchChange:u,onOpenChange:d,onCommit:f,onSquashMerge:p},e.kind):null})})}function Ai({target:e,branchName:t,gitStatusDisplay:n,changedFilesSection:r,threadId:i,threadType:a,showMergeBaseDetails:o,mergeBaseBranch:s,mergeBaseBranchOptions:c,mergeBaseBranchOptionsLoading:l,onMergeBaseBranchChange:u,onOpenChange:d,onCommit:p,onSquashMerge:m}){let[h,g]=(0,K.useState)(null),_=Oi(e),v=Un({mergeBaseBranch:s,mergeBaseBranchOptions:c}),y=s??v[0],b=_.showMergeBase&&o===!0&&!!u&&v.length>0,x=_.showMergeBase&&o===!0&&(b||!!y),S=!!(r&&r.files.length>0);return(0,q.jsxs)(q.Fragment,{children:[(0,q.jsxs)(W,{className:`px-6 pt-5 pb-3`,children:[(0,q.jsx)($e,{children:_.title}),(0,q.jsx)(U,{children:_.description})]}),(0,q.jsxs)(`form`,{className:`space-y-5 px-6 pt-3 pb-5`,onSubmit:t=>{switch(t.preventDefault(),g(null),e.kind){case`commit`:d(!1),p();break;case`commit_and_squash_merge`:if(!y){g(`A merge base branch is required`);return}d(!1),m({mergeBaseBranch:y});break;case`squash_merge`:if(!y){g(`A merge base branch is required`);return}d(!1),m({mergeBaseBranch:y});break;default:f(e)}},children:[t||n||x||S?(0,q.jsxs)(In,{className:`border-border/70 bg-muted/20`,children:[t?(0,q.jsx)(Wt,{label:`Branch`,valueClassName:`min-w-0 truncate`,children:(0,q.jsx)(`span`,{className:`block truncate`,title:t,children:t})}):null,n?(0,q.jsx)(Wt,{label:`Git status`,valueClassName:`min-w-0`,children:(0,q.jsxs)(`div`,{className:`flex min-w-0 items-baseline gap-2 whitespace-nowrap`,title:`${n.label} ${n.summary}`.trim(),children:[(0,q.jsx)(`span`,{className:`shrink-0 font-medium`,children:n.label}),(0,q.jsx)(`span`,{className:`min-w-0 truncate text-muted-foreground`,children:n.summaryContent})]})}):null,x&&y?(0,q.jsx)(Wt,{label:`Merge base`,valueClassName:`min-w-0`,children:b?(0,q.jsx)(Xn,{value:y,options:v,loading:l,onChange:e=>u?.(e),className:`max-w-full`}):(0,q.jsx)(`span`,{className:`block truncate`,title:y,children:y})}):null,S&&r?(0,q.jsx)(Di,{sections:[r],rowValueClassName:`pt-0.5`,listClassName:`max-h-40`}):null]}):null,(0,q.jsx)(Gn,{message:h}),(0,q.jsx)(Ye,{children:(0,q.jsx)(j,{type:`submit`,disabled:_.showMergeBase&&!y,children:_.submitLabel})})]})]})}var ji={vscode:`data:image/png;base64,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`,cursor:`data:image/png;base64,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`,"sublime-text":`data:image/png;base64,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`,zed:`/assets/zed-C-eVD5h3.png`,windsurf:`/assets/windsurf-Do5nbXdF.png`,antigravity:`data:image/png;base64,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`,finder:`/assets/finder-BYyfd7HG.png`,terminal:`data:image/png;base64,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`,iterm2:`data:image/png;base64,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`,ghostty:`/assets/ghostty-D5T950Nz.png`,xcode:`/assets/xcode-BOSzsT4U.png`};function Mi({target:e,className:t=`size-4`}){return(0,q.jsx)(`img`,{alt:``,className:`${t} shrink-0 rounded-[3px]`,draggable:!1,src:ji[e.id]})}function Ni({onOpenPreferredTarget:e,onOpenTarget:t,preferredTarget:n,targets:r}){let[i,a]=(0,K.useState)(null),o=i!==null,s=(0,K.useCallback)(async(e,t)=>{if(i===null){a(e.id);try{await t()}finally{a(null)}}},[i]);return n?(0,q.jsx)(yr,{disabled:o,className:`px-1`,primaryAction:{label:`Open workspace in ${n.label}`,onSelect:()=>{s(n,e)},content:(0,q.jsx)(Mi,{target:n,className:`size-5`})},secondaryActions:r.map(e=>({label:e.label,onSelect:()=>{s(e,()=>t(e.id))},content:(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(Mi,{target:e,className:`size-5`}),(0,q.jsx)(`span`,{className:`min-w-0 flex-1`,children:e.label})]})})),triggerLabel:`Choose workspace open target`,mobileTitle:`Open Workspace`}):null}var Pi=nt(null),Fi=nt(null),Ii=nt([]);function Li(e){let t=dt(e.enabled?lt:Pi),n=dt(e.enabled?ut:Fi),r=dt(e.enabled?ot:Ii);return{openWorkspace:(0,K.useMemo)(()=>{if(!e.enabled||!t||!n||r.length===0)return null;let i=n;return e=>at(i,e)},[e.enabled,t,n,r.length]),workspaceOpenTargets:r}}var Ri=`Failed to open file locally`,zi=`Localhost is disconnected.`,Bi=`No local editor is available.`;function Vi(e){return e.hasDaemon?Bi:zi}function Hi(e){let{hasDaemon:t}=ft(),{openWorkspace:n,workspaceOpenTargets:r}=Li(e),[i,a]=ct(),o=(0,K.useMemo)(()=>gt({preferredTargetId:i,targets:r}),[i,r]),s=(0,K.useCallback)(async e=>{if(!r.find(t=>t.id===e.targetId)||!n)return hn.error(Ri,{description:Vi({hasDaemon:t})}),!1;e.rememberTarget&&a(e.targetId);try{return await n({lineNumber:e.lineNumber,path:e.path,targetId:e.targetId}),!0}catch(e){return hn.error(Ri,{description:e instanceof Error?e.message:void 0}),!1}},[t,n,a,r]),c=(0,K.useCallback)(async e=>o?s({lineNumber:e.lineNumber,path:e.path,rememberTarget:!1,targetId:o.id}):(hn.error(Ri,{description:Vi({hasDaemon:t})}),!1),[t,s,o]);return{canOpenPreferredTarget:o!==null,openPathInPreferredTarget:c,openPathInTarget:s,preferredTarget:o,workspaceOpenTargets:r}}function Ui(e,t){return e?e.sessions.findIndex(e=>e.id===t.id)===-1?{sessions:[...e.sessions,t]}:{sessions:e.sessions.map(e=>e.id===t.id?t:e)}:{sessions:[t]}}function Wi(e,t){if(!e)return e;let n=e.sessions.filter(e=>e.id!==t);return n.length===e.sessions.length?e:{sessions:n}}function Gi(e,t){if(!e)throw Error(`${t}: thread id is required when query is enabled`);return e}function Ki(e,t){return N({queryKey:F(e),queryFn:({signal:t})=>re(Gi(e,`useThreadTerminals`),t),enabled:(t?.enabled??!0)&&!!e,refetchOnWindowFocus:!1})}function qi(){let e=M();return I({meta:{errorMessage:`Failed to start terminal.`},mutationFn:({threadId:e,...t})=>g(e,t),onSuccess:t=>{e.setQueryData(F(t.threadId),e=>Ui(e,t)),e.invalidateQueries({queryKey:F(t.threadId)})}})}function Ji(){let e=M();return I({meta:{errorMessage:`Failed to rename terminal.`},mutationFn:({terminalId:e,threadId:t,...n})=>de(t,e,n),onSuccess:t=>{e.setQueryData(F(t.threadId),e=>Ui(e,t)),e.invalidateQueries({queryKey:F(t.threadId)})}})}function Yi(){let e=M();return I({meta:{errorMessage:`Failed to close terminal.`},mutationFn:({mode:e,terminalId:t,threadId:n})=>ne(n,t,{mode:e,reason:`user`}),onSuccess:(t,n)=>{e.setQueryData(F(t.threadId),e=>t.status===`exited`?Wi(e,n.terminalId):Ui(e,t)),e.invalidateQueries({queryKey:F(t.threadId)})}})}var Xi=`bb.thread.useStandardManagerTimeline`,Zi=`bb.thread.showAllEvents`;function Qi(){return typeof window>`u`?null:window.localStorage}function $i(e,t){return e===`true`?!0:e===`false`?!1:t}function ea({currentValue:e,initialValue:t,legacyValue:n}){return $i(e===null?n:e,t)}var ta=tt({parse:$i,serialize:e=>String(e)}),na=G(Xi,!1,{getItem:(e,t)=>{let n=Qi();return ea({currentValue:n?.getItem(e)??null,legacyValue:n?.getItem(Zi)??null,initialValue:t})},removeItem:e=>{ta.removeItem(e)},setItem:(e,t)=>{ta.setItem(e,t)},subscribe:ta.subscribe},{getOnInit:!0});function ra(){return it(na)}function ia(e,t){let n=e.mergeBase?.aheadCount??0,r=e.mergeBase?.behindCount??0;return n===0&&r===0?null:n>0&&r>0?t?`${n} ahead, ${r} behind relative to ${t}`:`${n} ahead, ${r} behind`:n>0?t?`${n} ahead of ${t}`:`${n} ahead`:t?`${r} behind ${t}`:`${r} behind`}function aa(e,t){return{label:e,summary:t,summaryContent:t}}function oa(e,t){if(!e){let e=t?.error instanceof b&&t.error.code===`path_not_found`;return t?.workspaceDeleted||e?aa(`Unknown`,`Workspace not found.`):aa(`Unknown`,`Workspace status unavailable.`)}let n=t?.mergeBaseBranch??e.mergeBase?.mergeBaseBranch,r=t?.showBranchComparison?ia(e,n):null;switch(e.workingTree.state){case`clean`:return(e.mergeBase?.aheadCount??0)>0&&(e.mergeBase?.behindCount??0)>0?aa(`Diverged`,r??`Branch has diverged.`):(e.mergeBase?.aheadCount??0)>0?aa(`Ahead`,r??`Local commits pending merge.`):(e.mergeBase?.behindCount??0)>0?aa(`Behind`,r??`Branch is behind its merge base.`):aa(t?.showBranchComparison?`Up to date`:`Clean`,n?`No local changes relative to ${n}.`:`No local changes.`);case`untracked`:return aa(`Untracked`,r??``);case`dirty_uncommitted`:return aa(`Dirty`,r??``);case`committed_unmerged`:return(e.mergeBase?.aheadCount??0)>0&&(e.mergeBase?.behindCount??0)>0?aa(`Diverged`,r??`Branch has diverged.`):(e.mergeBase?.behindCount??0)>0?aa(`Behind`,r??`Branch is behind its merge base.`):aa(`Ahead`,r??`Local commits pending merge.`);case`dirty_and_committed_unmerged`:return aa(`Dirty`,r??``);default:return f(e.workingTree.state)}}var sa=nt(!1),ca=G(`bb.thread.secondaryPanel.widthPercent`,50,tt({parse:(e,t)=>{if(e===null)return t;let n=Number.parseFloat(e);return Number.isFinite(n)&&n>0&&n<=100?n:t},serialize:e=>String(e)}),{getOnInit:!0}),la=nt(new Set),ua=nt(new Set),da=nt(void 0),fa=nt(null);function pa({activeSecondaryPanel:e,clearActiveFileTabs:t,defaultMergeBaseBranch:n,environmentId:r,mergeBaseBranchOptionsEnabled:i=!1,setThreadSecondaryPanel:a}){let o=dt(da),s=rt(da),c=rt(fa),{data:l,isLoading:u}=gi(r??``,{enabled:!!r&&(i||e===`git-diff`)});(0,K.useEffect)(()=>{s(void 0)},[r,s]);let d=(0,K.useCallback)(e=>{a(e)},[a]),f=(0,K.useCallback)(()=>{d(`git-diff`)},[d]);return{closeThreadSecondaryPanel:(0,K.useCallback)(()=>{e!==null&&a(null)},[e,a]),defaultMergeBaseBranch:n,isLoadingMergeBaseBranchOptions:u,mergeBaseBranchOptions:l,openDiffFile:(0,K.useCallback)(e=>{t(),c(e),f()},[t,f,c]),openThreadDiffPanel:f,openThreadSecondaryPanel:d,selectedMergeBaseBranch:o,setSelectedMergeBaseBranch:s}}function ma(e){return!!e.threadId&&e.inlineRowCount===0&&e.cachedRowCount===0&&!e.isLoading}function ha(e){return{sourceSeqEnd:e.sourceSeqEnd,sourceSeqStart:e.sourceSeqStart,turnId:e.turnId}}function ga(e,t){return e.turnId===t.turnId&&e.sourceSeqStart===t.sourceSeqStart&&e.sourceSeqEnd===t.sourceSeqEnd}function _a(e){let t={},n=e=>{for(let r of e){if(r.kind===`turn`){t[r.id]=ha(r),r.children&&n(r.children);continue}r.kind===`work`&&r.workKind===`delegation`&&n(r.childRows)}};return n(e),t}function va({candidateRowIds:e,previousRangesById:t,visibleRangesById:n}){let r=new Set;for(let i of e){let e=n[i],a=t[i];(!e||a&&!ga(a,e))&&r.add(i)}return r}function ya(e,t){let n=null;for(let r of t)e.has(r)&&(n??=new Set(e),n.delete(r));return n}function ba(e,t){let n=null;for(let r of t)r in e&&(n??={...e},delete n[r]);return n}function xa({currentLoadGeneration:e,request:t,visibleRangesById:n}){if(e!==t.loadGeneration)return!1;let r=n[t.rowId];return r!==void 0&&ga(r,t.range)}function Sa({loadTurnSummaryRows:e,managerTimelineView:t,timelineRows:n,threadId:r}){let i=(0,K.useRef)(0),a=(0,K.useRef)(e),o=(0,K.useRef)(r),s=(0,K.useRef)({}),c=(0,K.useRef)(new Set),l=(0,K.useRef)(new Set),u=(0,K.useRef)(new Set),d=(0,K.useRef)({}),[f,p]=(0,K.useState)(()=>new Set),[m,h]=(0,K.useState)(()=>new Set),[g,_]=(0,K.useState)({});(0,K.useLayoutEffect)(()=>{a.current=e},[e]),(0,K.useLayoutEffect)(()=>{o.current=r},[r]),(0,K.useLayoutEffect)(()=>{let e=_a(n),t=va({candidateRowIds:[...Object.keys(d.current),...c.current,...l.current,...u.current],previousRangesById:s.current,visibleRangesById:e});if(s.current=e,t.size===0)return;let r=ya(c.current,t);r&&(c.current=r);let i=ya(l.current,t);i&&(l.current=i,p(i));let a=ya(u.current,t);a&&(u.current=a,h(a));let o=ba(d.current,t);o&&(d.current=o,_(o))},[n]);let v=(0,K.useCallback)(e=>{let t=o.current,n={loadGeneration:i.current,range:ha(e),rowId:e.id},r=c.current,f=s.current[e.id];if(f===void 0||!ga(f,n.range)||r.has(e.id)||!ma({cachedRowCount:d.current[e.id]?.length??0,inlineRowCount:e.children?.length??0,isLoading:l.current.has(e.id),threadId:t})||!t)return;r.add(e.id);let m=new Set(l.current).add(e.id);if(l.current=m,p(m),u.current.has(e.id)){let t=new Set(u.current);t.delete(e.id),u.current=t,h(t)}a.current({id:t,turnId:e.turnId,sourceSeqStart:e.sourceSeqStart,sourceSeqEnd:e.sourceSeqEnd}).then(t=>{if(!xa({currentLoadGeneration:i.current,request:n,visibleRangesById:s.current}))return;let r={...d.current,[e.id]:t.rows};d.current=r,_(r)}).catch(()=>{if(!xa({currentLoadGeneration:i.current,request:n,visibleRangesById:s.current}))return;c.current.delete(e.id);let t=new Set(u.current).add(e.id);u.current=t,h(t)}).finally(()=>{if(!xa({currentLoadGeneration:i.current,request:n,visibleRangesById:s.current}))return;let t=new Set(l.current);t.delete(e.id),l.current=t,p(t)})},[]);return(0,K.useLayoutEffect)(()=>{i.current+=1,c.current=new Set;let e=new Set,t=new Set,n={};l.current=e,u.current=t,d.current=n,p(e),h(t),_(n)},[t,r]),{erroredTurnSummaryIds:m,handleLoadTurnSummaryRows:v,loadingTurnSummaryIds:f,turnSummaryRowsById:g}}function Ca({managerTimelineView:e,timelineRows:t,threadId:n}){let{mutateAsync:r}=Ne();return Sa({managerTimelineView:e,timelineRows:t,threadId:n,loadTurnSummaryRows:(0,K.useCallback)(t=>r({...t,managerTimelineView:e}),[r,e])})}var wa=pe;function Ta({actionsMenu:e,activeTerminalCount:t,isManagedThread:n,isManagerThread:r,isSecondaryPanelOpen:i,isTerminalPanelOpen:a,isThreadGitActionPending:o,onOpenThreadGitAction:s,onToggleSecondaryPanel:c,onToggleTerminalPanel:l,showTerminalPanelToggle:u,threadHeaderGitActions:d,threadTitle:f,workspaceOpenButton:p}){let[m,...h]=d,g=me(),_=g?`PanelBottom`:`PanelRight`;return(0,q.jsx)(dr,{center:(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(`p`,{className:`truncate text-sm font-semibold`,children:f}),r?(0,q.jsx)(Je,{variant:`outline`,children:`manager`}):null,!r&&n?(0,q.jsx)(Je,{variant:`outline`,children:`managed`}):null]}),actions:(0,q.jsxs)(q.Fragment,{children:[p,m&&h.length>0?(0,q.jsx)(yr,{disabled:o,primaryAction:{label:m.label,onSelect:()=>s(m.target)},secondaryActions:h.map(e=>({label:e.label,onSelect:()=>s(e.target)}))}):m?(0,q.jsx)(j,{type:`button`,variant:`outline`,size:`sm`,disabled:o,className:wa,onClick:()=>s(m.target),children:m.label}):null,u?(0,q.jsxs)(j,{type:`button`,variant:`ghost`,size:`icon`,className:`${nn} relative`,"aria-label":a?`Hide terminal panel`:`Show terminal panel`,"aria-pressed":a,title:a?`Hide terminal panel`:`Show terminal panel`,onClick:l,children:[(0,q.jsx)(L,{name:`Terminal`}),t>0?(0,q.jsx)(`span`,{"aria-hidden":`true`,className:`pointer-events-none absolute -right-0.5 -top-0.5 flex h-3.5 min-w-3.5 items-center justify-center rounded-full bg-primary px-1 text-[9px] font-semibold leading-none text-primary-foreground`,children:t>9?`9+`:t}):null]}):null,e,!g&&i?null:(0,q.jsx)(j,{type:`button`,variant:`ghost`,size:`icon`,className:nn,"aria-label":i?`Hide secondary panel`:`Show secondary panel`,"aria-pressed":i,title:i?`Hide secondary panel`:`Show secondary panel`,onClick:c,children:(0,q.jsx)(L,{name:_})})]})})}function Ea(){let e=M();return I({meta:{errorMessage:`Failed to resolve pending interaction.`,showErrorToast:!1},mutationFn:({threadId:e,interactionId:t,resolution:n})=>ue(e,t,n),onSuccess:(t,n)=>(_t({queryClient:e,threadId:n.threadId}),t)})}var Da=[];function Oa(){return{freeTextByQuestionId:{},selectedValuesByQuestionId:{}}}function ka({formState:e,question:t}){return e.selectedValuesByQuestionId[t.id]??Da}function Aa({formState:e,question:t}){return e.freeTextByQuestionId[t.id]??``}function ja({question:e,selectedValues:t}){let n=new Set((e.options??[]).map(e=>e.value));return t.filter(e=>n.has(e))}function Ma({optionValue:e,question:t,selectedValues:n}){return t.multiSelect?n.includes(e)?n.filter(t=>t!==e):[...n,e]:[e]}function Na(e,t){let n=ka({formState:e,question:t.question});return{...e,selectedValuesByQuestionId:{...e.selectedValuesByQuestionId,[t.question.id]:Ma({optionValue:t.optionValue,question:t.question,selectedValues:n})}}}function Pa(e,t){return{...e,freeTextByQuestionId:{...e.freeTextByQuestionId,[t.questionId]:t.value}}}function Fa({formState:e,question:t}){return ja({question:t,selectedValues:ka({formState:e,question:t})}).length>0?!0:t.allowFreeText&&Aa({formState:e,question:t}).trim().length>0}function Ia({formState:e,questions:t}){let n={};for(let r of t){let t=ja({question:r,selectedValues:ka({formState:e,question:r})}),i=Aa({formState:e,question:r}).trim();n[r.id]=r.allowFreeText&&i.length>0?{selected:t,freeText:i}:{selected:t}}return{kind:`user_answer`,answers:n}}function La({question:e}){return(0,q.jsxs)(`div`,{className:`min-w-0`,children:[e.shortLabel?(0,q.jsx)(`div`,{className:`text-xs font-medium uppercase text-muted-foreground`,children:e.shortLabel}):null,(0,q.jsx)(`div`,{className:`text-sm font-semibold text-foreground`,children:e.prompt})]})}function Ra({checked:e,disabled:t,inputName:n,onOptionToggle:r,option:i,question:a}){let o=a.multiSelect?`checkbox`:`radio`;return(0,q.jsxs)(`label`,{className:R(`flex min-w-0 cursor-pointer items-start gap-2 rounded-md border px-3 py-2 transition-colors`,e?`border-primary/40 bg-primary/10 text-foreground`:`border-border bg-background/70 text-muted-foreground hover:bg-state-hover hover:text-foreground`,t&&`cursor-not-allowed opacity-60`),children:[(0,q.jsx)(`input`,{type:o,name:n,value:i.value,checked:e,disabled:t,onChange:()=>r({question:a,optionValue:i.value}),className:`mt-0.5 size-4 shrink-0 accent-primary`}),(0,q.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[(0,q.jsx)(`span`,{className:`block text-sm font-medium`,children:i.label}),i.description?(0,q.jsx)(`span`,{className:`mt-0.5 block text-xs text-muted-foreground`,children:i.description}):null]})]})}function za({disabled:e,formState:t,interactionId:n,onFreeTextChange:r,onOptionToggle:i,onSubmit:a,question:o}){let s=ka({formState:t,question:o}),c=Aa({formState:t,question:o}),l=`${n}-${o.id}`,u=o.options??[],d=`${o.shortLabel??o.prompt} answer`;return(0,q.jsxs)(`fieldset`,{className:`space-y-2 rounded-md border border-border bg-card px-4 py-3`,children:[(0,q.jsx)(`legend`,{className:`sr-only`,children:o.prompt}),(0,q.jsx)(La,{question:o}),u.length>0?(0,q.jsx)(`div`,{className:`grid gap-2`,children:u.map(t=>(0,q.jsx)(Ra,{checked:s.includes(t.value),disabled:e,inputName:l,onOptionToggle:i,option:t,question:o},t.value))}):null,o.allowFreeText?(0,q.jsx)(`textarea`,{"aria-label":d,value:c,disabled:e,rows:3,onChange:e=>r({questionId:o.id,value:e.target.value}),onKeyDown:e=>{e.nativeEvent.isComposing||e.key!==`Enter`||!e.metaKey&&!e.ctrlKey||(e.preventDefault(),a())},className:`min-h-20 w-full resize-y rounded-md border border-input bg-background px-3 py-2 text-sm text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50`,placeholder:`Add an answer`}):null]})}function Ba({interactionId:e,questions:t,threadId:n}){let[r,i]=(0,K.useState)(Oa),a=Ea();(0,K.useEffect)(()=>{i(Oa())},[e]);let o=(0,K.useMemo)(()=>t.length>0&&t.every(e=>Fa({formState:r,question:e})),[r,t]),s=a.error?pn({error:a.error,fallbackMessage:`Failed to submit answer.`}):null,c=a.isPending,l=c||!o;return{disabled:c,formState:r,mutationErrorMessage:s,submitAnswer:()=>{if(l)return;let i=Ia({formState:r,questions:t});a.mutateAsync({threadId:n,interactionId:e,resolution:i}).catch(()=>{})},updateFreeTextAnswer:e=>{i(t=>Pa(t,e))},updateSelectedAnswer:e=>{i(t=>Na(t,e))}}}function Va({className:e,interactionId:t,isResolving:n=!1,questions:r,threadId:i}){let{disabled:a,formState:o,mutationErrorMessage:s,submitAnswer:c,updateFreeTextAnswer:l,updateSelectedAnswer:u}=Ba({interactionId:t,questions:r,threadId:i}),d=a||n,[f,p]=(0,K.useState)(0);(0,K.useEffect)(()=>{p(0)},[t]);let m=r.length,h=r[f]??null,g=f===m-1,_=h?Fa({formState:o,question:h}):!1,v=()=>{p(e=>Math.max(e-1,0))},y=()=>{if(g){c();return}p(e=>Math.min(e+1,m-1))};return h?(0,q.jsxs)(`form`,{className:R(`space-y-3`,e),onSubmit:e=>{e.preventDefault(),y()},children:[m>1?(0,q.jsx)(Ha,{currentIndex:f,totalQuestions:m}):null,(0,q.jsx)(za,{disabled:d,formState:o,interactionId:t,onFreeTextChange:l,onOptionToggle:u,onSubmit:y,question:h}),(0,q.jsxs)(`div`,{className:`flex items-center justify-end gap-2`,children:[f>0?(0,q.jsx)(j,{type:`button`,size:`sm`,variant:`outline`,disabled:d,onClick:v,children:`Back`}):null,(0,q.jsxs)(j,{type:`submit`,size:`sm`,disabled:d||!_,children:[n?(0,q.jsx)(L,{name:`Spinner`,className:`size-3 animate-spin`}):null,g?`Submit answer`:`Next`]})]}),s?(0,q.jsx)(`div`,{className:`rounded-md border border-destructive/30 bg-destructive/[0.06] px-3 py-2 text-xs text-destructive`,children:s}):null]}):null}function Ha({currentIndex:e,totalQuestions:t}){return(0,q.jsxs)(`div`,{className:`flex items-center justify-between text-xs text-muted-foreground`,children:[(0,q.jsxs)(`span`,{children:[`Question `,e+1,` of `,t]}),(0,q.jsx)(`div`,{className:`flex items-center gap-1.5`,"aria-hidden":!0,children:Array.from({length:t}).map((t,n)=>(0,q.jsx)(`span`,{className:R(`size-1.5 rounded-full transition-colors`,n===e?`bg-foreground`:n<e?`bg-foreground/60`:`bg-foreground/25`)},n))})]})}function Ua({interaction:e,threadId:t}){return y(e.payload)?(0,q.jsx)(Ka,{interaction:e,payload:e.payload,threadId:t}):ce(e.payload)?(0,q.jsx)(Ga,{interaction:e,payload:e.payload,threadId:t}):f(e.payload)}function Wa({title:e,errorMessage:t,footer:n,children:r}){return(0,q.jsxs)(`div`,{className:`mb-2 rounded-lg border border-border/60 bg-muted/40 px-4 py-3 text-xs text-muted-foreground`,children:[(0,q.jsx)(`h3`,{className:`min-w-0 text-sm font-semibold text-foreground`,children:(0,q.jsx)(Xt,{fullText:e,collapsedClassName:`line-clamp-2`,children:e})}),r?(0,q.jsx)(`div`,{className:`mt-3`,children:r}):null,n?(0,q.jsx)(`div`,{className:`mt-3 flex flex-wrap items-center justify-end gap-2`,children:n}):null,t?(0,q.jsx)(`div`,{className:`mt-2 rounded-md border border-destructive/30 bg-destructive/[0.06] px-2 py-1 text-xs text-destructive`,children:t}):null]})}function Ga({interaction:e,payload:t,threadId:n}){let r=Ea(),i=e.status===`resolving`,a=Ya(e.resolution),o=(0,K.useMemo)(()=>Xa({interaction:e,payload:t}),[e,t]),s=r.error?pn({error:r.error,fallbackMessage:`Failed to resolve pending interaction.`}):null,c=r.isPending||i,l=t=>{let i=x(e,t);r.mutateAsync({threadId:n,interactionId:e.id,resolution:i}).catch(()=>{})};return(0,q.jsx)(Wa,{title:o.title,errorMessage:s,footer:t.availableDecisions.map(e=>(0,q.jsx)(qa,{decision:e,disabled:c,isLoading:i&&a===e,onClick:()=>l(e)},e)),children:o.body})}function Ka({interaction:e,payload:t,threadId:n}){let r=e.status===`resolving`;return(0,q.jsx)(Wa,{title:T({interaction:e,surface:`app`}),children:(0,q.jsx)(Va,{interactionId:e.id,isResolving:r,questions:t.questions,threadId:n})})}function qa({decision:e,disabled:t,isLoading:n,onClick:r}){return(0,q.jsxs)(j,{type:`button`,size:`sm`,variant:Ja(e),disabled:t,onClick:r,children:[n?(0,q.jsx)(L,{name:`Spinner`,className:`size-3 animate-spin`}):null,Za(e)]})}function Ja(e){switch(e){case`allow_once`:return`default`;case`allow_for_session`:return`outline`;case`deny`:return`ghost`}}function Ya(e){return!e||`kind`in e?null:e.decision}function Xa({interaction:e,payload:t}){switch(t.subject.kind){case`command`:{let n=t.subject.command,r=n?un(n)??n:null,i=O(e).filter(e=>!e.startsWith(`Command: `)).map(e=>e.startsWith(`Cwd: `)?e.slice(5):e);return{title:t.reason??`Do you want to run this command?`,body:r?(0,q.jsxs)(`div`,{className:`overflow-hidden rounded-lg border border-border bg-card`,children:[(0,q.jsxs)(`pre`,{className:R(jt(`base`),`overflow-auto whitespace-pre px-4 py-3 font-mono text-sm leading-tight text-foreground`),children:[`$ `,r]}),i.length>0?(0,q.jsx)(`ul`,{className:`border-t border-border/60 px-4 py-3 text-xs text-muted-foreground`,children:i.map(e=>(0,q.jsx)(`li`,{children:e},e))}):null]}):null}}case`file_change`:{let n=O(e);return{title:t.reason??`Do you want to make these changes?`,body:n.length>0?(0,q.jsx)(`ul`,{className:`rounded-lg border border-border bg-card px-4 py-3 text-xs text-muted-foreground`,children:n.map(e=>(0,q.jsx)(`li`,{children:e},e))}):null}}case`permission_grant`:{let n=O(e);return{title:t.reason??`Do you want to grant this permission?`,body:n.length>0?(0,q.jsx)(`ul`,{className:`rounded-lg border border-border bg-card px-4 py-3 text-xs text-muted-foreground`,children:n.map(e=>(0,q.jsx)(`li`,{children:e},e))}):null}}default:return f(t.subject)}}function Za(e){switch(e){case`allow_once`:return`Allow once`;case`allow_for_session`:return`Allow for session`;case`deny`:return`Deny`}}var Qa=`rounded-md border border-border/60 bg-muted/30`;function $a({children:e,ariaLabel:t,className:n,style:r}){return t?(0,q.jsx)(`section`,{"aria-label":t,className:R(Qa,n),style:r,children:e}):(0,q.jsx)(`div`,{className:R(Qa,n),style:r,children:e})}var eo=new Set([`active`,`host-reconnecting`,`waiting-for-host`]);function to(e){return eo.has(e)}var no={uncommitted:`Uncommitted`,untracked:`Untracked`,committed:`Committed`},ro={managedBy:{toggle:`thread-prompt-banner-managed-by-toggle`,body:`thread-prompt-banner-managed-by-body`},managerChildren:{toggle:`thread-prompt-banner-manager-children-toggle`,body:`thread-prompt-banner-manager-children-body`},todos:{toggle:`thread-prompt-banner-todos-toggle`,body:`thread-prompt-banner-todos-body`},git:{toggle:`thread-prompt-banner-git-toggle`,body:`thread-prompt-banner-git-body`}},io={in_progress:0,pending:1,completed:2};function ao(e){return e.items.length>0}function oo(e){if(e.length===0)return null;let t=0;for(let n of e)n.status===`completed`&&(t+=1);return t===0?`${e.length}`:`${t}/${e.length}`}function so({className:e}){return(0,q.jsx)(L,{name:`ChevronDown`,className:R(`size-3.5 shrink-0 rotate-45`,e),"aria-hidden":`true`})}function co({id:e,controlsId:t,ariaLabel:n,icon:r,label:i,isExpanded:a,onToggle:o}){return(0,q.jsxs)(`button`,{type:`button`,id:e,"aria-expanded":a,"aria-controls":t,"aria-label":n,onClick:o,className:R(`flex min-w-0 items-center rounded px-1 py-0.5 text-xs transition-colors hover:bg-state-hover`,i==null?`gap-0`:`gap-1.5`,a?`text-foreground/90`:`text-muted-foreground`),children:[r,i==null?null:(0,q.jsx)(`span`,{className:`min-w-0 truncate`,children:i}),(0,q.jsx)(L,{name:`ChevronDown`,className:R(`size-3.5 shrink-0 text-muted-foreground/70 transition-transform duration-200`,a&&`rotate-180`),"aria-hidden":`true`})]})}function lo({status:e}){let t=`size-3.5 shrink-0`;switch(e){case`in_progress`:return(0,q.jsx)(L,{name:`Square`,className:R(t,`fill-current text-muted-foreground/30`),"aria-hidden":`true`});case`completed`:return(0,q.jsx)(L,{name:`Check`,className:R(t,`text-muted-foreground/60`),"aria-hidden":`true`});case`pending`:return(0,q.jsx)(L,{name:`Square`,className:R(t,`text-muted-foreground/45`),"aria-hidden":`true`})}}function uo({items:e}){return(0,q.jsx)(`ul`,{className:`max-h-40 space-y-0.5 overflow-y-auto px-3 pb-2 pt-1.5`,children:[...e].sort((e,t)=>io[e.status]-io[t.status]).map(e=>(0,q.jsxs)(`li`,{className:`flex min-w-0 items-center gap-2 py-0.5 text-xs`,children:[(0,q.jsx)(lo,{status:e.status}),(0,q.jsx)(`span`,{className:R(`min-w-0 flex-1 truncate`,e.status===`in_progress`&&`font-medium text-foreground/90`,e.status===`pending`&&`text-foreground/85`,e.status===`completed`&&`text-muted-foreground/70 line-through decoration-muted-foreground/40`),title:e.text,children:e.text})]},e.id))})}function fo({managerName:e,href:t}){return(0,q.jsxs)(`div`,{className:`px-3 pb-2 pt-1.5 text-xs leading-relaxed text-muted-foreground`,children:[`This thread is managed by`,` `,(0,q.jsx)(We,{to:t,className:`text-foreground/90 underline-offset-2 hover:underline`,children:e}),`.`]})}function po({items:e}){return(0,q.jsx)(`ul`,{className:`max-h-40 space-y-0.5 overflow-y-auto px-3 pb-2 pt-1.5`,children:e.map(e=>(0,q.jsx)(`li`,{className:`text-xs`,children:(0,q.jsxs)(We,{to:e.href,title:e.title,className:`flex min-w-0 items-center gap-2 py-0.5 text-foreground/90 underline-offset-2 hover:underline`,children:[(0,q.jsx)(so,{className:`text-muted-foreground/60 no-underline`}),(0,q.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:e.title})]})},e.id))})}function mo({id:e,labelledBy:t,isExpanded:n,children:r}){return(0,q.jsx)(`section`,{id:e,role:`region`,"aria-labelledby":t,"aria-hidden":!n,className:R(`grid overflow-hidden transition-[grid-template-rows,opacity,border-color] duration-200 ease-out`,n?`grid-rows-[1fr] border-t border-border/40 opacity-100`:`pointer-events-none grid-rows-[0fr] border-t border-transparent opacity-0`),children:(0,q.jsx)(`div`,{className:`overflow-hidden`,children:r})})}function ho({todoSection:e,gitSection:t,gitSectionPending:n,archivedSection:r,managedBySection:i,managerChildrenSection:a,expandedSection:o,onToggleSection:s}){if(n)return null;if(r){let e=o===`managedBy`&&i!==null;return(0,q.jsxs)($a,{ariaLabel:`Thread context before sending`,className:`overflow-hidden`,style:{minHeight:32},children:[(0,q.jsxs)(`div`,{className:`flex items-center gap-0.5 px-2 py-1 text-xs text-muted-foreground`,children:[i?(0,q.jsx)(co,{id:ro.managedBy.toggle,controlsId:ro.managedBy.body,ariaLabel:`Managed by ${i.managerName}`,icon:(0,q.jsx)(L,{name:`UserRound`,className:`size-3.5 shrink-0`,"aria-hidden":`true`}),label:null,isExpanded:e,onToggle:()=>s(`managedBy`)}):null,(0,q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1.5 px-1 py-0.5`,children:[(0,q.jsx)(L,{name:`Archive`,className:`size-3.5 shrink-0`,"aria-hidden":`true`}),(0,q.jsx)(`span`,{className:`min-w-0 truncate`,children:`Thread is archived`})]})]}),i?(0,q.jsx)(mo,{id:ro.managedBy.body,labelledBy:ro.managedBy.toggle,isExpanded:e,children:(0,q.jsx)(fo,{managerName:i.managerName,href:i.href})}):null]})}let c=e!==null&&ao(e.pendingTodos),l=t!==null,u=i!==null,d=a!==null&&a.items.length>0;if(!c&&!l&&!u&&!d)return null;let f=c&&e?e.pendingTodos.items:[],p=o===`todos`&&c,m=o===`git`&&l,h=o===`managedBy`&&u,g=o===`managerChildren`&&d,_=l?(0,q.jsxs)(q.Fragment,{children:[c?null:(0,q.jsxs)(q.Fragment,{children:[no[t.changedFiles.kind],` · `]}),Si(yi(t.changedFiles.stats))]}):null,v=l&&t.mergeBase?Un({mergeBaseBranch:t.mergeBase.branch,mergeBaseBranchOptions:t.mergeBase.options}):[],y=u&&!c&&!l&&!d;return(0,q.jsxs)($a,{ariaLabel:`Thread context before sending`,className:`overflow-hidden`,style:{minHeight:32},children:[(0,q.jsxs)(`div`,{className:`flex items-center gap-0.5 px-2 py-1 text-xs text-muted-foreground`,children:[u&&i&&y?(0,q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1.5 px-1 py-0.5`,children:[(0,q.jsx)(L,{name:`UserRound`,className:`size-3.5 shrink-0`,"aria-hidden":`true`}),(0,q.jsxs)(`span`,{className:`min-w-0 truncate`,children:[`Managed by`,` `,(0,q.jsx)(We,{to:i.href,className:`text-foreground/90 underline underline-offset-2`,children:i.managerName})]})]}):null,u&&i&&!y?(0,q.jsx)(co,{id:ro.managedBy.toggle,controlsId:ro.managedBy.body,ariaLabel:`Managed by ${i.managerName}`,icon:(0,q.jsx)(L,{name:`UserRound`,className:`size-3.5 shrink-0`,"aria-hidden":`true`}),label:null,isExpanded:h,onToggle:()=>s(`managedBy`)}):null,d&&a?(0,q.jsx)(co,{id:ro.managerChildren.toggle,controlsId:ro.managerChildren.body,icon:(0,q.jsx)(L,{name:`CircleDashed`,className:`size-3.5 shrink-0 animate-spin`,"aria-hidden":`true`}),label:`${a.items.length} active managed ${a.items.length===1?`thread`:`threads`}`,isExpanded:g,onToggle:()=>s(`managerChildren`)}):null,c?(0,q.jsx)(co,{id:ro.todos.toggle,controlsId:ro.todos.body,icon:(0,q.jsx)(L,{name:`ListTodo`,className:`size-3.5 shrink-0`,"aria-hidden":`true`}),label:oo(f),isExpanded:p,onToggle:()=>s(`todos`)}):null,l&&_?(0,q.jsx)(co,{id:ro.git.toggle,controlsId:ro.git.body,icon:(0,q.jsx)(L,{name:`FileDiff`,className:`size-3.5 shrink-0`,"aria-hidden":`true`}),label:_,isExpanded:m,onToggle:()=>s(`git`)}):null,l&&t.mergeBase?(0,q.jsxs)(`div`,{className:`ml-auto flex shrink-0 items-center gap-1.5 text-xs text-muted-foreground/90`,children:[(0,q.jsx)(`span`,{className:`shrink-0`,children:`Merge base:`}),(0,q.jsx)(Xn,{value:t.mergeBase.branch,options:v,variant:`minimal`,loading:t.mergeBase.optionsLoading,onChange:t.mergeBase.onChange,onOpenChange:t.mergeBase.onPickerOpenChange,className:`max-w-[10rem]`,muted:!0,popoverAlign:`end`})]}):null]}),u&&i&&!y?(0,q.jsx)(mo,{id:ro.managedBy.body,labelledBy:ro.managedBy.toggle,isExpanded:h,children:(0,q.jsx)(fo,{managerName:i.managerName,href:i.href})}):null,d&&a?(0,q.jsx)(mo,{id:ro.managerChildren.body,labelledBy:ro.managerChildren.toggle,isExpanded:g,children:(0,q.jsx)(po,{items:a.items})}):null,c?(0,q.jsx)(mo,{id:ro.todos.body,labelledBy:ro.todos.toggle,isExpanded:p,children:(0,q.jsx)(uo,{items:f})}):null,l?(0,q.jsx)(mo,{id:ro.git.body,labelledBy:ro.git.toggle,isExpanded:m,children:(0,q.jsx)(Ei,{files:t.changedFiles.files,className:`max-h-32 px-3 pb-2 pt-1`,onFileClick:e=>t.onPromptBannerFileClick({file:e,section:t.changedFiles})})}):null]})}var go=220;function _o(e){let t=e.trim();return t.length===0?`Attachment`:Vt(t)}function vo(e){let t=0;for(let n of e)(n.type===`localImage`||n.type===`localFile`)&&(t+=1);return t}function yo(e){let t=e.filter(e=>e.type===`text`).map(e=>e.text.trim()).filter(e=>e.length>0).join(`
2
2
 
3
3
  `).trim();if(t.length>0)return t.length<=go?t:`${t.slice(0,go-1)}...`;let n=vo(e);if(n===1){let t=e.find(e=>e.type===`localImage`||e.type===`localFile`);return t?t.type===`localFile`&&t.name?`Attachment only (${t.name})`:`Attachment only (${_o(t.path)})`:`Attachment only (1 file)`}return n>1?`Attachment only (${n} files)`:`(empty message)`}function bo(e){return hr(e)}var xo=(0,K.memo)(function({queuedMessage:e,index:t,isProcessing:n,sendDisabled:r,actionDisabled:i,onSendImmediately:a,onEdit:o,onDelete:s}){let c=(0,K.useMemo)(()=>yo(e.content),[e.content]),l=(0,K.useMemo)(()=>vo(e.content),[e.content]);return(0,q.jsx)(`li`,{className:`px-2.5 py-0.5`,children:(0,q.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,q.jsx)(`div`,{className:`p-0.5 text-muted-foreground`,children:(0,q.jsx)(L,{name:`CornerDownRight`,className:`size-3.5`})}),(0,q.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1 text-xs leading-4`,children:[(0,q.jsx)(`p`,{className:`min-w-0 truncate text-foreground`,title:c,children:c}),l>0?(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(`span`,{className:`shrink-0 text-muted-foreground`,children:`.`}),(0,q.jsx)(`span`,{className:`shrink-0 text-muted-foreground`,children:l===1?`1 attachment`:`${l} attachments`})]}):null,n?(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(`span`,{className:`shrink-0 text-muted-foreground`,children:`.`}),(0,q.jsx)(`span`,{className:`shrink-0 text-muted-foreground`,children:`Sending...`})]}):null]})}),(0,q.jsxs)(`div`,{className:`ml-1 flex shrink-0 items-center gap-1`,children:[(0,q.jsx)(j,{type:`button`,size:`sm`,variant:`link`,className:`h-auto px-0 pr-1 text-xs text-muted-foreground underline`,disabled:r||n,onClick:()=>a(e.id),children:n?`Sending...`:`Send now`}),(0,q.jsx)(j,{type:`button`,size:`icon`,variant:`ghost`,className:`size-7 text-muted-foreground`,disabled:i||n,onClick:()=>o(e.id),"aria-label":`Edit queued message ${t+1}`,title:`Edit queued message`,children:(0,q.jsx)(L,{name:`Edit`,className:`size-3.5`})}),(0,q.jsx)(j,{type:`button`,size:`icon`,variant:`ghost`,className:`size-7 text-muted-foreground hover:text-destructive`,disabled:i||n,onClick:()=>s(e.id),"aria-label":`Delete queued message ${t+1}`,title:`Delete queued message`,children:(0,q.jsx)(L,{name:`Trash2`,className:`size-3.5`})})]})]})})});function So({queuedMessages:e,sendDisabled:t,actionDisabled:n,processingMessageId:r,onSendImmediately:i,onEdit:a,onDelete:o}){return e.length===0?null:(0,q.jsxs)($a,{ariaLabel:`Queued messages`,className:`overflow-hidden`,children:[(0,q.jsx)(`div`,{className:`flex items-center justify-between px-2.5 pb-1 pt-2.5`,children:(0,q.jsxs)(`p`,{className:`text-xs text-muted-foreground`,children:[`Queued (`,e.length,`)`]})}),(0,q.jsx)(`ul`,{children:e.map((e,s)=>(0,q.jsx)(xo,{queuedMessage:e,index:s,isProcessing:r===e.id,sendDisabled:t,actionDisabled:n,onSendImmediately:i,onEdit:a,onDelete:o},e.id))})]})}var Co=(0,K.memo)(function({environmentLabel:e,environmentHostLabel:t,environmentHostConnected:n,environmentIcon:r,environmentBranchName:i,onCreateNewThreadInWorktree:a}){return!e&&n===void 0?null:(0,q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2 pr-1.5`,children:[e?(0,q.jsx)(pr,{label:`Environment`,value:(0,q.jsxs)(`span`,{className:`flex items-center gap-1.5`,children:[(0,q.jsx)(`span`,{children:e}),t?(0,q.jsxs)(`span`,{className:`hidden text-muted-foreground/60 lg:inline`,children:[`· `,t]}):null,n===void 0?null:(0,q.jsx)(On,{connected:n,className:`translate-y-px`})]}),leading:r?(0,q.jsx)(L,{name:r,className:`size-4 shrink-0`}):null,className:`h-6 shrink-0`,muted:!0}):n===void 0?null:(0,q.jsx)(On,{connected:n}),i?(0,q.jsxs)(`button`,{type:`button`,className:`hidden min-w-0 items-center gap-1 rounded-md px-1.5 py-0.5 text-xs text-muted-foreground/75 transition-colors hover:bg-state-hover hover:text-foreground md:flex`,title:`Copy branch name: ${i}`,onClick:()=>{on(i,{successMessage:`Branch name copied`,errorMessage:`Failed to copy branch name`})},children:[(0,q.jsx)(L,{name:`GitMerge`,className:`size-3.5 shrink-0`}),(0,q.jsx)(`span`,{className:`truncate`,children:i})]}):null,a?(0,q.jsx)(`button`,{type:`button`,"aria-label":`Create new thread in this worktree`,title:`New thread in this worktree`,onClick:a,className:`-ml-1 inline-flex shrink-0 items-center justify-center rounded-md px-1 py-0.5 text-muted-foreground/75 transition-colors hover:bg-state-hover hover:text-foreground`,children:(0,q.jsx)(L,{name:`MessageSquarePlus`,className:`size-4`})}):null]})});function wo({visible:e,active:t=!1,onClick:n,className:r,ariaLabel:i=`Scroll to latest event`}){return(0,q.jsx)(`div`,{className:R(`flex h-0 items-center justify-center`,r),children:(0,q.jsx)(`button`,{onClick:n,className:R(`z-20 -mt-20 flex size-8 items-center justify-center rounded-full border border-foreground/20 bg-background/80 backdrop-blur-md transition-all duration-200 hover:border-foreground/30 hover:bg-background/90`,e?`translate-y-0 opacity-100`:`pointer-events-none translate-y-2 opacity-0`),"aria-label":i,type:`button`,children:t?(0,q.jsx)(To,{}):(0,q.jsx)(L,{name:`ArrowDown`,className:`size-4`})})})}function To(){return(0,q.jsxs)(`span`,{className:`flex items-center gap-0.5`,"aria-hidden":!0,children:[(0,q.jsx)(`span`,{className:`size-1 animate-typing-dot rounded-full bg-current [animation-delay:-240ms]`}),(0,q.jsx)(`span`,{className:`size-1 animate-typing-dot rounded-full bg-current [animation-delay:-120ms]`}),(0,q.jsx)(`span`,{className:`size-1 animate-typing-dot rounded-full bg-current`})]})}function Eo({active:e}){let t=ie();return t?(0,q.jsx)(wo,{visible:!t.isAtBottom,active:e,onClick:t.scrollToBottom}):null}function Do({onSubmit:e,submission:t,...n}){let r=ie(),i=()=>{e(),r?.scrollToBottom()},a=t?.onModifierSubmit===void 0?void 0:()=>{t.onModifierSubmit?.(),r?.scrollToBottom()},o=t===void 0?void 0:{...t,...a?{onModifierSubmit:a}:{}};return(0,q.jsx)(An,{...n,onSubmit:i,submission:o})}var Oo=68,ko=Oo+32,Ao=(0,K.memo)(function({attachments:e,stack:t,composer:n,environmentSummary:r,contextWindowUsage:i,execution:a,permission:o,mentions:s,zenModeResetKey:c}){let l=n.submitMode,u=l.kind===`queue`,d=l.kind===`ready`||l.kind===`queue`,f=l.kind===`blocked`&&l.reason===`stopping`,p=l.kind===`queue`||l.kind===`stop-only`?l.onStop:void 0,m=p!==void 0,h=(0,K.useRef)(null),g=Mn(h),_=n.canSteerSubmit?n.onSteerSubmit:void 0,v=(0,K.useRef)(null),[y,b]=(0,K.useState)(0);(0,K.useLayoutEffect)(()=>{let e=v.current;if(!e)return;let t=e.offsetHeight;b(e=>e===t?e:t)},[t]),(0,K.useEffect)(()=>{let e=v.current;if(!e||typeof ResizeObserver>`u`)return;let t=new ResizeObserver(e=>{let t=e[0];t&&b(t.contentRect.height)});return t.observe(e),()=>t.disconnect()},[]);let x=Math.max(Oo,ko-y);return(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(Eo,{active:n.threadRuntimeDisplayStatus===`active`}),(0,q.jsxs)(`div`,{className:`space-y-2`,children:[(0,q.jsx)(`div`,{ref:v,className:`space-y-2`,children:t}),(0,q.jsx)(Do,{promptBoxRef:h,voice:g,minHeight:x,value:n.message,onChange:n.onChangeMessage,onSubmit:n.onSubmit,history:n.history,placeholder:n.promptPlaceholder,mentionMenuPlacement:`top`,autoFocus:!0,submission:{onStop:p,isSubmitting:n.isFollowUpSubmitting||f,disabled:!d||n.isFollowUpSubmitting,onModifierSubmit:_,title:u?`Queue follow-up (Enter)`:f?`Stopping run...`:`Submit (Enter)`,isRunning:m,mode:`enter`},mentions:s,attachments:e,zenMode:{layout:`thread`,storageKey:null,resetKey:c,resetOnSubmit:!0},footerStart:(0,q.jsx)(xn,{...a})}),(0,q.jsxs)(`div`,{className:`mt-1 flex min-h-6 items-center justify-between gap-2 pl-[15px] pr-3.5`,children:[(0,q.jsx)(`div`,{className:`flex min-w-0 flex-1 flex-wrap items-center gap-1`,children:r}),(0,q.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[(0,q.jsx)(Tn,{value:o.value,options:o.options,onChange:o.onChange,supported:o.supported,className:`h-6`}),i?(0,q.jsx)(Ot,{usage:i}):null]})]})]})]})});function jo(e){return e===`active`||e===`host-reconnecting`}function Mo({hasPromptDraftInput:e,isFollowUpSubmitting:t,isQueueMutationPending:n,queuedMessageCount:r,runtimeDisplayStatus:i,submitModeKind:a}){return i===`active`&&a===`queue`&&!t&&!n&&(r>0||e)}function No({input:e,threadId:t,...n}){return e.length===0?null:{id:t,input:e,mode:`auto`,...n.model?{model:n.model}:{},...Lo(n)}}function Po({input:e,threadId:t}){return e.length===0?null:{id:t,input:e,mode:`steer`}}function Fo({input:e,threadId:t,...n}){return e.length===0?null:{id:t,input:e,model:n.model,...Lo(n)}}function Io({queuedMessages:e,threadId:t}){return e.map(e=>({id:t,mode:`steer`,queuedMessageId:e.id}))}function Lo({permissionMode:e,reasoningLevel:t,serviceTier:n,supportsServiceTier:r}){return{...r&&n?{serviceTier:n}:{},reasoningLevel:t,permissionMode:e}}function Ro(e,t){if(e===`created`||e===`provisioning`)return t?`Hiring manager...`:`Creating thread...`;switch(e){case`waiting-for-host`:return`Host daemon disconnected`;case`host-reconnecting`:return`Waiting for host daemon to reconnect...`;case`error`:return`Retry by sending a follow-up message`;case`idle`:case`active`:return t?`Send a message. @ to mention files or threads`:`Ask for follow-up changes. @ to mention files`;default:return f(e)}}function zo({canUseGitUi:e,composerQueriesEnabled:t,composerQueriesRefetchOnMount:n,composerQueriesStaleTime:r,contextWindowUsage:i,environmentBranchName:a,environmentHostConnected:o,environmentHostLabel:s,environmentIcon:c,environmentLabel:l,onCreateNewThreadInWorktree:u,isEnvironmentActionPending:d,pendingInteractions:f,onChangedFileClick:p,openThreadDiffPanel:m,projectId:h,workspaceChangedFilesSection:g,workspaceStatusPending:_,contextBannerMergeBase:v,pendingTodos:y,managedBySection:b,managerChildrenSection:x,sendMessage:S,thread:C}){let{data:w}=we(C.id,{enabled:t,refetchOnMount:n,staleTime:r}),{data:T=[]}=ze(C.id,{enabled:t,refetchOnMount:n,staleTime:r}),E=(0,K.useRef)(new Map);E.current=(0,K.useMemo)(()=>{let e=new Map;for(let t of T)e.set(t.id,t);return e},[T]);let{data:D=[]}=Me(C.id,{enabled:t,refetchOnMount:n,staleTime:r}),O=vn(),k=Cn(),A=qn(),j=Bn(),M=pt(),N=Pn({projectId:h,threadId:C.id}),P=er(h,{threadSuggestionMode:C.type===`manager`?`all`:`managers`,currentThreadId:C.id,environmentId:C.environmentId??null}),[F,I]=(0,K.useState)(null),[ee,te]=(0,K.useState)(null),[ne,re]=(0,K.useState)(null),[ie,L]=(0,K.useState)(!1),R=(0,K.useMemo)(()=>or(D),[D]),{selectedProviderId:z,providerOptions:ae,hasMultipleProviders:oe,selectedProviderDisplayName:se,selectedModel:ce,setSelectedModel:le,serviceTier:ue,setServiceTier:de,reasoningLevel:fe,setReasoningLevel:pe,permissionMode:me,setPermissionMode:he,activeModel:ge,modelOptions:_e,reasoningOptions:B,permissionModeOptions:ve,supportsPermissionModeSelection:ye,supportsServiceTier:V,serviceTierSupportByProvider:be}=en({enabled:t,environmentId:C.environmentId??void 0,scope:`component-local`,resetKey:C.id,initialProviderId:C.providerId,initialModel:w?.model,initialServiceTier:w?.serviceTier,initialReasoningLevel:w?.reasoningLevel,initialPermissionMode:w?.permissionMode,initialEnvironmentSelectionValue:C.environmentId??void 0}),H=C.runtime.displayStatus,xe=H===`created`,Se=H===`provisioning`,Ce=H===`waiting-for-host`,Te=C.stopRequestedAt!==null||j.isPending&&j.variables===C.id,Ee=Re(f),De=Ee!==null,Oe=O.isPending||k.isPending||A.isPending||ie,ke=S.isPending||d||O.isPending||ie,Ae=(0,K.useCallback)(()=>{j.mutate(C.id)},[j,C.id]),je=(0,K.useMemo)(()=>Te?{kind:`blocked`,reason:`stopping`}:De?{kind:`blocked`,reason:`pending-interaction`}:xe||Se?{kind:`blocked`,reason:`provisioning`}:Ce?{kind:`stop-only`,onStop:Ae}:H===`active`||H===`host-reconnecting`?{kind:`queue`,onStop:Ae}:{kind:`ready`},[Ae,De,xe,Se,Te,Ce,H]),Ne=Te?`Stopping thread...`:Ro(H,C.type===`manager`),Pe=(0,K.useMemo)(()=>({text:N.text,attachments:N.attachments}),[N.attachments,N.text]),Fe=(0,K.useMemo)(()=>lr(Pe),[Pe]),Ie=Mo({hasPromptDraftInput:Fe.length>0,isFollowUpSubmitting:ke,isQueueMutationPending:Oe,queuedMessageCount:T.length,runtimeDisplayStatus:H,submitModeKind:je.kind}),Le=(0,K.useCallback)(async e=>{if(e.length===0)return;I(null);let t=[];for(let n of e)try{let e=await M.mutateAsync({projectId:h,file:n});N.addAttachment(e)}catch{t.push(n.name)}t.length>0&&I(`Failed to attach: ${t.join(`, `)}`)},[h,N,M]),Be=(0,K.useCallback)(async()=>{let e=Pe,t=Fe;if(t.length===0)return;N.clearIfCurrentMatches(e),I(null);let n=jo(H);try{if(n){let e=Fo({threadId:C.id,input:t,model:ge?.model??ce,supportsServiceTier:V,serviceTier:ue,reasoningLevel:fe,permissionMode:me});e&&await O.mutateAsync(e)}else{let e=No({threadId:C.id,input:t,model:ge?.model??ce,supportsServiceTier:V,serviceTier:ue,reasoningLevel:fe,permissionMode:me});e&&await S.mutateAsync(e)}}catch(t){N.restoreIfEmpty(e),hn.error(pn({error:t,fallbackMessage:n?`Failed to queue message.`:`Failed to send follow-up.`}))}},[ge?.model,O,Pe,Fe,N,fe,me,ce,S,ue,V,C.id,H]),Ve=(0,K.useCallback)(async()=>{if(!Ie)return;let e=Pe,t=Fe;if(!(T.length===0&&t.length===0)){L(!0),t.length>0&&N.clearIfCurrentMatches(e),I(null);try{for(let e of Io({queuedMessages:T,threadId:C.id}))await k.mutateAsync(e);let e=Po({input:t,threadId:C.id});e&&await S.mutateAsync(e)}catch(t){N.restoreIfEmpty(e),hn.error(pn({error:t,fallbackMessage:`Failed to send steer.`}))}finally{L(!1)}}},[Ie,Pe,Fe,N,T,S,k,C.id]),He=(0,K.useCallback)(e=>{E.current.has(e)&&(re(e),k.mutateAsync({id:C.id,mode:`auto`,queuedMessageId:e}).then(()=>{I(null)}).catch(e=>{hn.error(pn({error:e,fallbackMessage:`Failed to send queued message.`}))}).finally(()=>{re(t=>t===e?null:t)}))},[k,C.id]),Ue=(0,K.useCallback)(e=>{let t=E.current.get(e);t&&(re(e),A.mutateAsync({id:C.id,queuedMessageId:e}).then(()=>{let e=bo(t.content);N.setDraft(e),I(null)}).catch(e=>{hn.error(pn({error:e,fallbackMessage:`Failed to edit queued message.`}))}).finally(()=>{re(t=>t===e?null:t)}))},[A,N,C.id]),We=(0,K.useCallback)(e=>{re(e),A.mutateAsync({id:C.id,queuedMessageId:e}).catch(e=>{hn.error(pn({error:e,fallbackMessage:`Failed to delete queued message.`}))}).finally(()=>{re(t=>t===e?null:t)})},[A,C.id]),Ge=(0,K.useCallback)(e=>{p(e)},[p]),Ke=(0,K.useCallback)(e=>{te(t=>t===e?null:e)},[]),qe=(0,K.useMemo)(()=>({items:N.attachments,projectId:h,isAttaching:M.isPending,error:F,onAttachFiles:Le,onRemove:N.removeAttachment}),[F,Le,h,N.attachments,N.removeAttachment,M.isPending]),Je=(0,K.useMemo)(()=>({history:{currentDraft:Pe,entries:R,onSelectEntry:N.setDraft,resetKey:C.id},isFollowUpSubmitting:ke,message:N.text,onChangeMessage:N.setText,onSteerSubmit:Ve,onSubmit:Be,promptPlaceholder:Ne,canSteerSubmit:Ie,submitMode:je,threadRuntimeDisplayStatus:H}),[Ie,Pe,Be,Ve,ke,N.setDraft,N.setText,N.text,R,Ne,H,je,C.id]),Ye=(0,K.useMemo)(()=>({provider:{options:ae,selectedId:z,hasMultiple:oe,displayName:se},model:{active:ge,selected:ce,options:_e,onChange:le},serviceTier:{value:ue,onChange:de,supported:V,supportByProvider:be},reasoning:{value:fe,options:B,onChange:pe}}),[ge,oe,_e,ae,fe,B,ce,se,z,ue,be,pe,le,de,V]),Xe=(0,K.useMemo)(()=>({value:me,options:ve,onChange:he,supported:ye}),[me,ve,he,ye]),Ze=(0,K.useMemo)(()=>({suggestions:P.suggestions,isLoading:P.isLoading,isError:P.isError,onQueryChange:P.setQuery}),[P.isError,P.isLoading,P.setQuery,P.suggestions]),U=(0,K.useMemo)(()=>l||o!==void 0?(0,q.jsx)(Co,{environmentLabel:l,environmentHostLabel:s,environmentHostConnected:o,environmentIcon:c,environmentBranchName:a,onCreateNewThreadInWorktree:u}):null,[a,o,s,c,l,u]);return Ee?(0,q.jsx)(Ua,{interaction:Ee,threadId:C.id}):(0,q.jsx)(Ao,{attachments:qe,stack:(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(ho,{todoSection:C.type===`manager`||!y?null:{pendingTodos:y},archivedSection:C.archivedAt===null?null:{archivedAt:C.archivedAt},managedBySection:b,managerChildrenSection:x,gitSection:g?{changedFiles:g,mergeBase:v,onPromptBannerFileClick:e?Ge:()=>{}}:null,gitSectionPending:_,expandedSection:ee,onToggleSection:Ke}),(0,q.jsx)(So,{queuedMessages:T,sendDisabled:!(je.kind===`ready`||je.kind===`queue`)||ke||Oe,actionDisabled:Oe,processingMessageId:ne,onSendImmediately:He,onEdit:Ue,onDelete:We})]}),composer:Je,zenModeResetKey:C.id,environmentSummary:U,contextWindowUsage:i??null,execution:Ye,permission:Xe,mentions:Ze})}var Bo=a((e=>{Object.defineProperty(e,`__esModule`,{value:!0});var t=w();function n(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach(function(n){if(n!==`default`){var r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:function(){return e[n]}})}}),t.default=e,Object.freeze(t)}var r=n(t),i=typeof window<`u`,a=t.createContext(null);a.displayName=`PanelGroupContext`;var o={group:`data-panel-group`,groupDirection:`data-panel-group-direction`,groupId:`data-panel-group-id`,panel:`data-panel`,panelCollapsible:`data-panel-collapsible`,panelId:`data-panel-id`,panelSize:`data-panel-size`,resizeHandle:`data-resize-handle`,resizeHandleActive:`data-resize-handle-active`,resizeHandleEnabled:`data-panel-resize-handle-enabled`,resizeHandleId:`data-panel-resize-handle-id`,resizeHandleState:`data-resize-handle-state`},s=10,c=i?t.useLayoutEffect:()=>{},l=r.useId,u=typeof l==`function`?l:()=>null,d=0;function f(e=null){let n=u(),r=t.useRef(e||n||null);return r.current===null&&(r.current=``+ d++),e??r.current}function p({children:e,className:n=``,collapsedSize:r,collapsible:i,defaultSize:s,forwardedRef:l,id:u,maxSize:d,minSize:p,onCollapse:m,onExpand:h,onResize:g,order:_,style:v,tagName:y=`div`,...b}){let x=t.useContext(a);if(x===null)throw Error(`Panel components must be rendered within a PanelGroup container`);let{collapsePanel:S,expandPanel:C,getPanelSize:w,getPanelStyle:T,groupId:E,isPanelCollapsed:D,reevaluatePanelConstraints:O,registerPanel:k,resizePanel:A,unregisterPanel:j}=x,M=f(u),N=t.useRef({callbacks:{onCollapse:m,onExpand:h,onResize:g},constraints:{collapsedSize:r,collapsible:i,defaultSize:s,maxSize:d,minSize:p},id:M,idIsFromProps:u!==void 0,order:_});t.useRef({didLogMissingDefaultSizeWarning:!1}),c(()=>{let{callbacks:e,constraints:t}=N.current,n={...t};N.current.id=M,N.current.idIsFromProps=u!==void 0,N.current.order=_,e.onCollapse=m,e.onExpand=h,e.onResize=g,t.collapsedSize=r,t.collapsible=i,t.defaultSize=s,t.maxSize=d,t.minSize=p,(n.collapsedSize!==t.collapsedSize||n.collapsible!==t.collapsible||n.maxSize!==t.maxSize||n.minSize!==t.minSize)&&O(N.current,n)}),c(()=>{let e=N.current;return k(e),()=>{j(e)}},[_,M,k,j]),t.useImperativeHandle(l,()=>({collapse:()=>{S(N.current)},expand:e=>{C(N.current,e)},getId(){return M},getSize(){return w(N.current)},isCollapsed(){return D(N.current)},isExpanded(){return!D(N.current)},resize:e=>{A(N.current,e)}}),[S,C,w,D,M,A]);let P=T(N.current,s);return t.createElement(y,{...b,children:e,className:n,id:M,style:{...P,...v},[o.groupId]:E,[o.panel]:``,[o.panelCollapsible]:i||void 0,[o.panelId]:M,[o.panelSize]:parseFloat(``+P.flexGrow).toFixed(1)})}var m=t.forwardRef((e,n)=>t.createElement(p,{...e,forwardedRef:n}));p.displayName=`Panel`,m.displayName=`forwardRef(Panel)`;var h;function g(){return h}var _=null,v=!0,y=-1,b=null;function x(e,t){if(t){let e=(t&ne)!==0,n=(t&re)!==0,r=(t&ie)!==0,i=(t&L)!==0;if(e)return r?`se-resize`:i?`ne-resize`:`e-resize`;if(n)return r?`sw-resize`:i?`nw-resize`:`w-resize`;if(r)return`s-resize`;if(i)return`n-resize`}switch(e){case`horizontal`:return`ew-resize`;case`intersection`:return`move`;case`vertical`:return`ns-resize`}}function S(){b!==null&&(document.head.removeChild(b),_=null,b=null,y=-1)}function C(e,t){if(!v)return;let n=x(e,t);if(_!==n){if(_=n,b===null){b=document.createElement(`style`);let e=g();e&&b.setAttribute(`nonce`,e),document.head.appendChild(b)}if(y>=0){var r;(r=b.sheet)==null||r.removeRule(y)}y=b.sheet?.insertRule(`*{cursor: ${n} !important;}`)??-1}}function T(e){return e.type===`keydown`}function E(e){return e.type.startsWith(`pointer`)}function D(e){return e.type.startsWith(`mouse`)}function O(e){if(E(e)){if(e.isPrimary)return{x:e.clientX,y:e.clientY}}else if(D(e))return{x:e.clientX,y:e.clientY};return{x:1/0,y:1/0}}function k(){if(typeof matchMedia==`function`)return matchMedia(`(pointer:coarse)`).matches?`coarse`:`fine`}function A(e,t,n){return n?e.x<t.x+t.width&&e.x+e.width>t.x&&e.y<t.y+t.height&&e.y+e.height>t.y:e.x<=t.x+t.width&&e.x+e.width>=t.x&&e.y<=t.y+t.height&&e.y+e.height>=t.y}function j(e,t){if(e===t)throw Error(`Cannot compare node with itself`);let n={a:ee(e),b:ee(t)},r;for(;n.a.at(-1)===n.b.at(-1);)e=n.a.pop(),t=n.b.pop(),r=e;V(r,`Stacking order can only be calculated for elements with a common ancestor`);let i={a:I(F(n.a)),b:I(F(n.b))};if(i.a===i.b){let e=r.childNodes,t={a:n.a.at(-1),b:n.b.at(-1)},i=e.length;for(;i--;){let n=e[i];if(n===t.a)return 1;if(n===t.b)return-1}}return Math.sign(i.a-i.b)}var M=/\b(?:position|zIndex|opacity|transform|webkitTransform|mixBlendMode|filter|webkitFilter|isolation)\b/;function N(e){let t=getComputedStyle(te(e)??e).display;return t===`flex`||t===`inline-flex`}function P(e){let t=getComputedStyle(e);return!!(t.position===`fixed`||t.zIndex!==`auto`&&(t.position!==`static`||N(e))||+t.opacity<1||`transform`in t&&t.transform!==`none`||`webkitTransform`in t&&t.webkitTransform!==`none`||`mixBlendMode`in t&&t.mixBlendMode!==`normal`||`filter`in t&&t.filter!==`none`||`webkitFilter`in t&&t.webkitFilter!==`none`||`isolation`in t&&t.isolation===`isolate`||M.test(t.willChange)||t.webkitOverflowScrolling===`touch`)}function F(e){let t=e.length;for(;t--;){let n=e[t];if(V(n,`Missing node`),P(n))return n}return null}function I(e){return e&&Number(getComputedStyle(e).zIndex)||0}function ee(e){let t=[];for(;e;)t.push(e),e=te(e);return t}function te(e){let{parentNode:t}=e;return t&&t instanceof ShadowRoot?t.host:t}var ne=1,re=2,ie=4,L=8,R=k()===`coarse`,z=[],ae=!1,oe=new Map,se=new Map,ce=new Set;function le(e,t,n,r,i){let{ownerDocument:a}=t,o={direction:n,element:t,hitAreaMargins:r,setResizeHandlerState:i},s=oe.get(a)??0;return oe.set(a,s+1),ce.add(o),B(),function(){se.delete(e),ce.delete(o);let t=oe.get(a)??1;if(oe.set(a,t-1),B(),t===1&&oe.delete(a),z.includes(o)){let e=z.indexOf(o);e>=0&&z.splice(e,1),ge(),i(`up`,!0,null)}}}function ue(e){let{target:t}=e,{x:n,y:r}=O(e);ae=!0,me({target:t,x:n,y:r}),B(),z.length>0&&(ve(`down`,e),e.preventDefault(),pe(t)||e.stopImmediatePropagation())}function de(e){let{x:t,y:n}=O(e);if(ae&&e.buttons===0&&(ae=!1,ve(`up`,e)),!ae){let{target:r}=e;me({target:r,x:t,y:n})}ve(`move`,e),ge(),z.length>0&&e.preventDefault()}function fe(e){let{target:t}=e,{x:n,y:r}=O(e);se.clear(),ae=!1,z.length>0&&(e.preventDefault(),pe(t)||e.stopImmediatePropagation()),ve(`up`,e),me({target:t,x:n,y:r}),ge(),B()}function pe(e){let t=e;for(;t;){if(t.hasAttribute(o.resizeHandle))return!0;t=t.parentElement}return!1}function me({target:e,x:t,y:n}){z.splice(0);let r=null;(e instanceof HTMLElement||e instanceof SVGElement)&&(r=e),ce.forEach(e=>{let{element:i,hitAreaMargins:a}=e,o=i.getBoundingClientRect(),{bottom:s,left:c,right:l,top:u}=o,d=R?a.coarse:a.fine;if(t>=c-d&&t<=l+d&&n>=u-d&&n<=s+d){if(r!==null&&document.contains(r)&&i!==r&&!i.contains(r)&&!r.contains(i)&&j(r,i)>0){let e=r,t=!1;for(;e&&!e.contains(i);){if(A(e.getBoundingClientRect(),o,!0)){t=!0;break}e=e.parentElement}if(t)return}z.push(e)}})}function he(e,t){se.set(e,t)}function ge(){let e=!1,t=!1;z.forEach(n=>{let{direction:r}=n;r===`horizontal`?e=!0:t=!0});let n=0;se.forEach(e=>{n|=e}),e&&t?C(`intersection`,n):e?C(`horizontal`,n):t?C(`vertical`,n):S()}var _e=new AbortController;function B(){_e.abort(),_e=new AbortController;let e={capture:!0,signal:_e.signal};ce.size&&(ae?(z.length>0&&oe.forEach((t,n)=>{let{body:r}=n;t>0&&(r.addEventListener(`contextmenu`,fe,e),r.addEventListener(`pointerleave`,de,e),r.addEventListener(`pointermove`,de,e))}),window.addEventListener(`pointerup`,fe,e),window.addEventListener(`pointercancel`,fe,e)):oe.forEach((t,n)=>{let{body:r}=n;t>0&&(r.addEventListener(`pointerdown`,ue,e),r.addEventListener(`pointermove`,de,e))}))}function ve(e,t){ce.forEach(n=>{let{setResizeHandlerState:r}=n;r(e,z.includes(n),t)})}function ye(){let[e,n]=t.useState(0);return t.useCallback(()=>n(e=>e+1),[])}function V(e,t){if(!e)throw console.error(t),Error(t)}function be(e,t,n=s){return e.toFixed(n)===t.toFixed(n)?0:e>t?1:-1}function H(e,t,n=s){return be(e,t,n)===0}function xe(e,t,n){return be(e,t,n)===0}function Se(e,t,n){if(e.length!==t.length)return!1;for(let r=0;r<e.length;r++){let i=e[r],a=t[r];if(!xe(i,a,n))return!1}return!0}function Ce({panelConstraints:e,panelIndex:t,size:n}){let r=e[t];V(r!=null,`Panel constraints not found for index ${t}`);let{collapsedSize:i=0,collapsible:a,maxSize:o=100,minSize:c=0}=r;if(be(n,c)<0)if(a){let e=(i+c)/2;n=be(n,e)<0?i:c}else n=c;return n=Math.min(o,n),n=parseFloat(n.toFixed(s)),n}function we({delta:e,initialLayout:t,panelConstraints:n,pivotIndices:r,prevLayout:i,trigger:a}){if(xe(e,0))return t;let o=[...t],[s,c]=r;V(s!=null,`Invalid first pivot index`),V(c!=null,`Invalid second pivot index`);let l=0;if(a===`keyboard`){{let r=e<0?c:s,i=n[r];V(i,`Panel constraints not found for index ${r}`);let{collapsedSize:a=0,collapsible:o,minSize:l=0}=i;if(o){let n=t[r];if(V(n!=null,`Previous layout not found for panel index ${r}`),xe(n,a)){let t=l-n;be(t,Math.abs(e))>0&&(e=e<0?0-t:t)}}}{let r=e<0?s:c,i=n[r];V(i,`No panel constraints found for index ${r}`);let{collapsedSize:a=0,collapsible:o,minSize:l=0}=i;if(o){let n=t[r];if(V(n!=null,`Previous layout not found for panel index ${r}`),xe(n,l)){let t=n-a;be(t,Math.abs(e))>0&&(e=e<0?0-t:t)}}}}{let r=e<0?1:-1,i=e<0?c:s,a=0;for(;;){let e=t[i];V(e!=null,`Previous layout not found for panel index ${i}`);let o=Ce({panelConstraints:n,panelIndex:i,size:100})-e;if(a+=o,i+=r,i<0||i>=n.length)break}let o=Math.min(Math.abs(e),Math.abs(a));e=e<0?0-o:o}{let r=e<0?s:c;for(;r>=0&&r<n.length;){let i=Math.abs(e)-Math.abs(l),a=t[r];V(a!=null,`Previous layout not found for panel index ${r}`);let s=a-i,c=Ce({panelConstraints:n,panelIndex:r,size:s});if(!xe(a,c)&&(l+=a-c,o[r]=c,l.toPrecision(3).localeCompare(Math.abs(e).toPrecision(3),void 0,{numeric:!0})>=0))break;e<0?r--:r++}}if(Se(i,o))return i;{let r=e<0?c:s,i=t[r];V(i!=null,`Previous layout not found for panel index ${r}`);let a=i+l,u=Ce({panelConstraints:n,panelIndex:r,size:a});if(o[r]=u,!xe(u,a)){let t=a-u,r=e<0?c:s;for(;r>=0&&r<n.length;){let i=o[r];V(i!=null,`Previous layout not found for panel index ${r}`);let a=i+t,s=Ce({panelConstraints:n,panelIndex:r,size:a});if(xe(i,s)||(t-=s-i,o[r]=s),xe(t,0))break;e>0?r--:r++}}}return xe(o.reduce((e,t)=>t+e,0),100)?o:i}function Te({layout:e,panelsArray:t,pivotIndices:n}){let r=0,i=100,a=0,o=0,s=n[0];return V(s!=null,`No pivot index found`),t.forEach((e,t)=>{let{constraints:n}=e,{maxSize:c=100,minSize:l=0}=n;t===s?(r=l,i=c):(a+=l,o+=c)}),{valueMax:Math.min(i,100-a),valueMin:Math.max(r,100-o),valueNow:e[s]}}function Ee(e,t=document){return Array.from(t.querySelectorAll(`[${o.resizeHandleId}][data-panel-group-id="${e}"]`))}function De(e,t,n=document){return Ee(e,n).findIndex(e=>e.getAttribute(o.resizeHandleId)===t)??null}function Oe(e,t,n){let r=De(e,t,n);return r==null?[-1,-1]:[r,r+1]}function ke(e,t=document){return t instanceof HTMLElement&&t?.dataset?.panelGroupId==e?t:t.querySelector(`[data-panel-group][data-panel-group-id="${e}"]`)||null}function Ae(e,t=document){return t.querySelector(`[${o.resizeHandleId}="${e}"]`)||null}function je(e,t,n,r=document){let i=Ae(t,r),a=Ee(e,r),o=i?a.indexOf(i):-1;return[n[o]?.id??null,n[o+1]?.id??null]}function Me({committedValuesRef:e,eagerValuesRef:n,groupId:r,layout:i,panelDataArray:a,panelGroupElement:s,setLayout:l}){t.useRef({didWarnAboutMissingResizeHandle:!1}),c(()=>{if(!s)return;let e=Ee(r,s);for(let t=0;t<a.length-1;t++){let{valueMax:n,valueMin:r,valueNow:o}=Te({layout:i,panelsArray:a,pivotIndices:[t,t+1]}),s=e[t];if(s!=null){let e=a[t];V(e,`No panel data found for index "${t}"`),s.setAttribute(`aria-controls`,e.id),s.setAttribute(`aria-valuemax`,``+Math.round(n)),s.setAttribute(`aria-valuemin`,``+Math.round(r)),s.setAttribute(`aria-valuenow`,o==null?``:``+Math.round(o))}}return()=>{e.forEach((e,t)=>{e.removeAttribute(`aria-controls`),e.removeAttribute(`aria-valuemax`),e.removeAttribute(`aria-valuemin`),e.removeAttribute(`aria-valuenow`)})}},[r,i,a,s]),t.useEffect(()=>{if(!s)return;let e=n.current;V(e,`Eager values not found`);let{panelDataArray:t}=e;V(ke(r,s)!=null,`No group found for id "${r}"`);let a=Ee(r,s);V(a,`No resize handles found for group id "${r}"`);let c=a.map(e=>{let n=e.getAttribute(o.resizeHandleId);V(n,`Resize handle element has no handle id attribute`);let[a,c]=je(r,n,t,s);if(a==null||c==null)return()=>{};let u=e=>{if(!e.defaultPrevented)switch(e.key){case`Enter`:{e.preventDefault();let o=t.findIndex(e=>e.id===a);if(o>=0){let e=t[o];V(e,`No panel data found for index ${o}`);let a=i[o],{collapsedSize:c=0,collapsible:u,minSize:d=0}=e.constraints;if(a!=null&&u){let e=we({delta:xe(a,c)?d-c:c-a,initialLayout:i,panelConstraints:t.map(e=>e.constraints),pivotIndices:Oe(r,n,s),prevLayout:i,trigger:`keyboard`});i!==e&&l(e)}}break}}};return e.addEventListener(`keydown`,u),()=>{e.removeEventListener(`keydown`,u)}});return()=>{c.forEach(e=>e())}},[s,e,n,r,i,a,l])}function Ne(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}function Pe(e,t){let n=e===`horizontal`,{x:r,y:i}=O(t);return n?r:i}function Fe(e,t,n,r,i){let a=n===`horizontal`,s=Ae(t,i);V(s,`No resize handle element found for id "${t}"`);let c=s.getAttribute(o.groupId);V(c,`Resize handle element has no group id attribute`);let{initialCursorPosition:l}=r,u=Pe(n,e),d=ke(c,i);V(d,`No group element found for id "${c}"`);let f=d.getBoundingClientRect(),p=a?f.width:f.height;return(u-l)/p*100}function Ie(e,t,n,r,i,a){if(T(e)){let t=n===`horizontal`,r=0;r=e.shiftKey?100:i??10;let a=0;switch(e.key){case`ArrowDown`:a=t?0:r;break;case`ArrowLeft`:a=t?-r:0;break;case`ArrowRight`:a=t?r:0;break;case`ArrowUp`:a=t?0:-r;break;case`End`:a=100;break;case`Home`:a=-100;break}return a}else return r==null?0:Fe(e,t,n,r,a)}function Le({panelDataArray:e}){let t=Array(e.length),n=e.map(e=>e.constraints),r=0,i=100;for(let a=0;a<e.length;a++){let e=n[a];V(e,`Panel constraints not found for index ${a}`);let{defaultSize:o}=e;o!=null&&(r++,t[a]=o,i-=o)}for(let a=0;a<e.length;a++){let o=n[a];V(o,`Panel constraints not found for index ${a}`);let{defaultSize:s}=o;if(s!=null)continue;let c=e.length-r,l=i/c;r++,t[a]=l,i-=l}return t}function Re(e,t,n){t.forEach((t,r)=>{let i=e[r];V(i,`Panel data not found for index ${r}`);let{callbacks:a,constraints:o,id:s}=i,{collapsedSize:c=0,collapsible:l}=o,u=n[s];if(u==null||t!==u){n[s]=t;let{onCollapse:e,onExpand:r,onResize:i}=a;i&&i(t,u),l&&(e||r)&&(r&&(u==null||H(u,c))&&!H(t,c)&&r(),e&&(u==null||!H(u,c))&&H(t,c)&&e())}})}function ze(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!=t[n])return!1;return!0}function Be({defaultSize:e,dragState:t,layout:n,panelData:r,panelIndex:i,precision:a=3}){let o=n[i],s;return s=o==null?e==null?`1`:e.toPrecision(a):r.length===1?`1`:o.toPrecision(a),{flexBasis:0,flexGrow:s,flexShrink:1,overflow:`hidden`,pointerEvents:t===null?void 0:`none`}}function Ve(e,t=10){let n=null;return(...r)=>{n!==null&&clearTimeout(n),n=setTimeout(()=>{e(...r)},t)}}function He(e){try{if(typeof localStorage<`u`)e.getItem=e=>localStorage.getItem(e),e.setItem=(e,t)=>{localStorage.setItem(e,t)};else throw Error(`localStorage not supported in this environment`)}catch(t){console.error(t),e.getItem=()=>null,e.setItem=()=>{}}}function Ue(e){return`react-resizable-panels:${e}`}function We(e){return e.map(e=>{let{constraints:t,id:n,idIsFromProps:r,order:i}=e;return r?n:i?`${i}:${JSON.stringify(t)}`:JSON.stringify(t)}).sort((e,t)=>e.localeCompare(t)).join(`,`)}function Ge(e,t){try{let n=Ue(e),r=t.getItem(n);if(r){let e=JSON.parse(r);if(typeof e==`object`&&e)return e}}catch{}return null}function Ke(e,t,n){return(Ge(e,n)??{})[We(t)]??null}function qe(e,t,n,r,i){let a=Ue(e),o=We(t),s=Ge(e,i)??{};s[o]={expandToSizes:Object.fromEntries(n.entries()),layout:r};try{i.setItem(a,JSON.stringify(s))}catch(e){console.error(e)}}function Je({layout:e,panelConstraints:t}){let n=[...e],r=n.reduce((e,t)=>e+t,0);if(n.length!==t.length)throw Error(`Invalid ${t.length} panel layout: ${n.map(e=>`${e}%`).join(`, `)}`);if(!xe(r,100)&&n.length>0)for(let e=0;e<t.length;e++){let t=n[e];V(t!=null,`No layout data found for index ${e}`),n[e]=100/r*t}let i=0;for(let e=0;e<t.length;e++){let r=n[e];V(r!=null,`No layout data found for index ${e}`);let a=Ce({panelConstraints:t,panelIndex:e,size:r});r!=a&&(i+=r-a,n[e]=a)}if(!xe(i,0))for(let e=0;e<t.length;e++){let r=n[e];V(r!=null,`No layout data found for index ${e}`);let a=r+i,o=Ce({panelConstraints:t,panelIndex:e,size:a});if(r!==o&&(i-=o-r,n[e]=o,xe(i,0)))break}return n}var Ye=100,Xe={getItem:e=>(He(Xe),Xe.getItem(e)),setItem:(e,t)=>{He(Xe),Xe.setItem(e,t)}},Ze={};function U({autoSaveId:e=null,children:n,className:r=``,direction:i,forwardedRef:s,id:l=null,onLayout:u=null,keyboardResizeBy:d=null,storage:p=Xe,style:m,tagName:h=`div`,...g}){let _=f(l),v=t.useRef(null),[y,b]=t.useState(null),[x,S]=t.useState([]),C=ye(),w=t.useRef({}),O=t.useRef(new Map),k=t.useRef(0),A=t.useRef({autoSaveId:e,direction:i,dragState:y,id:_,keyboardResizeBy:d,onLayout:u,storage:p}),j=t.useRef({layout:x,panelDataArray:[],panelDataArrayChanged:!1});t.useRef({didLogIdAndOrderWarning:!1,didLogPanelConstraintsWarning:!1,prevPanelIds:[]}),t.useImperativeHandle(s,()=>({getId:()=>A.current.id,getLayout:()=>{let{layout:e}=j.current;return e},setLayout:e=>{let{onLayout:t}=A.current,{layout:n,panelDataArray:r}=j.current,i=Je({layout:e,panelConstraints:r.map(e=>e.constraints)});Ne(n,i)||(S(i),j.current.layout=i,t&&t(i),Re(r,i,w.current))}}),[]),c(()=>{A.current.autoSaveId=e,A.current.direction=i,A.current.dragState=y,A.current.id=_,A.current.onLayout=u,A.current.storage=p}),Me({committedValuesRef:A,eagerValuesRef:j,groupId:_,layout:x,panelDataArray:j.current.panelDataArray,setLayout:S,panelGroupElement:v.current}),t.useEffect(()=>{let{panelDataArray:t}=j.current;if(e){if(x.length===0||x.length!==t.length)return;let n=Ze[e];n??(n=Ve(qe,Ye),Ze[e]=n);let r=[...t],i=new Map(O.current);n(e,r,i,x,p)}},[e,x,p]),t.useEffect(()=>{});let M=t.useCallback(e=>{let{onLayout:t}=A.current,{layout:n,panelDataArray:r}=j.current;if(e.constraints.collapsible){let i=r.map(e=>e.constraints),{collapsedSize:a=0,panelSize:o,pivotIndices:s}=$e(r,e,n);if(V(o!=null,`Panel size not found for panel "${e.id}"`),!H(o,a)){O.current.set(e.id,o);let c=we({delta:Qe(r,e)===r.length-1?o-a:a-o,initialLayout:n,panelConstraints:i,pivotIndices:s,prevLayout:n,trigger:`imperative-api`});ze(n,c)||(S(c),j.current.layout=c,t&&t(c),Re(r,c,w.current))}}},[]),N=t.useCallback((e,t)=>{let{onLayout:n}=A.current,{layout:r,panelDataArray:i}=j.current;if(e.constraints.collapsible){let a=i.map(e=>e.constraints),{collapsedSize:o=0,panelSize:s=0,minSize:c=0,pivotIndices:l}=$e(i,e,r),u=t??c;if(H(s,o)){let t=O.current.get(e.id),o=t!=null&&t>=u?t:u,c=we({delta:Qe(i,e)===i.length-1?s-o:o-s,initialLayout:r,panelConstraints:a,pivotIndices:l,prevLayout:r,trigger:`imperative-api`});ze(r,c)||(S(c),j.current.layout=c,n&&n(c),Re(i,c,w.current))}}},[]),P=t.useCallback(e=>{let{layout:t,panelDataArray:n}=j.current,{panelSize:r}=$e(n,e,t);return V(r!=null,`Panel size not found for panel "${e.id}"`),r},[]),F=t.useCallback((e,t)=>{let{panelDataArray:n}=j.current;return Be({defaultSize:t,dragState:y,layout:x,panelData:n,panelIndex:Qe(n,e)})},[y,x]),I=t.useCallback(e=>{let{layout:t,panelDataArray:n}=j.current,{collapsedSize:r=0,collapsible:i,panelSize:a}=$e(n,e,t);return V(a!=null,`Panel size not found for panel "${e.id}"`),i===!0&&H(a,r)},[]),ee=t.useCallback(e=>{let{layout:t,panelDataArray:n}=j.current,{collapsedSize:r=0,collapsible:i,panelSize:a}=$e(n,e,t);return V(a!=null,`Panel size not found for panel "${e.id}"`),!i||be(a,r)>0},[]),te=t.useCallback(e=>{let{panelDataArray:t}=j.current;t.push(e),t.sort((e,t)=>{let n=e.order,r=t.order;return n==null&&r==null?0:n==null?-1:r==null?1:n-r}),j.current.panelDataArrayChanged=!0,C()},[C]);c(()=>{if(j.current.panelDataArrayChanged){j.current.panelDataArrayChanged=!1;let{autoSaveId:e,onLayout:t,storage:n}=A.current,{layout:r,panelDataArray:i}=j.current,a=null;if(e){let t=Ke(e,i,n);t&&(O.current=new Map(Object.entries(t.expandToSizes)),a=t.layout)}a??=Le({panelDataArray:i});let o=Je({layout:a,panelConstraints:i.map(e=>e.constraints)});Ne(r,o)||(S(o),j.current.layout=o,t&&t(o),Re(i,o,w.current))}}),c(()=>{let e=j.current;return()=>{e.layout=[]}},[]);let R=t.useCallback(e=>{let t=!1,n=v.current;return n&&window.getComputedStyle(n,null).getPropertyValue(`direction`)===`rtl`&&(t=!0),function(n){n.preventDefault();let r=v.current;if(!r)return()=>null;let{direction:i,dragState:a,id:o,keyboardResizeBy:s,onLayout:c}=A.current,{layout:l,panelDataArray:u}=j.current,{initialLayout:d}=a??{},f=Oe(o,e,r),p=Ie(n,e,i,a,s,r),m=i===`horizontal`;m&&t&&(p=-p);let h=u.map(e=>e.constraints),g=we({delta:p,initialLayout:d??l,panelConstraints:h,pivotIndices:f,prevLayout:l,trigger:T(n)?`keyboard`:`mouse-or-touch`}),_=!ze(l,g);(E(n)||D(n))&&k.current!=p&&(k.current=p,!_&&p!==0?m?he(e,p<0?ne:re):he(e,p<0?ie:L):he(e,0)),_&&(S(g),j.current.layout=g,c&&c(g),Re(u,g,w.current))}},[]),z=t.useCallback((e,t)=>{let{onLayout:n}=A.current,{layout:r,panelDataArray:i}=j.current,a=i.map(e=>e.constraints),{panelSize:o,pivotIndices:s}=$e(i,e,r);V(o!=null,`Panel size not found for panel "${e.id}"`);let c=we({delta:Qe(i,e)===i.length-1?o-t:t-o,initialLayout:r,panelConstraints:a,pivotIndices:s,prevLayout:r,trigger:`imperative-api`});ze(r,c)||(S(c),j.current.layout=c,n&&n(c),Re(i,c,w.current))},[]),ae=t.useCallback((e,t)=>{let{layout:n,panelDataArray:r}=j.current,{collapsedSize:i=0,collapsible:a}=t,{collapsedSize:o=0,collapsible:s,maxSize:c=100,minSize:l=0}=e.constraints,{panelSize:u}=$e(r,e,n);u!=null&&(a&&s&&H(u,i)?H(i,o)||z(e,o):u<l?z(e,l):u>c&&z(e,c))},[z]),oe=t.useCallback((e,t)=>{let{direction:n}=A.current,{layout:r}=j.current;if(!v.current)return;let i=Ae(e,v.current);V(i,`Drag handle element not found for id "${e}"`);let a=Pe(n,t);b({dragHandleId:e,dragHandleRect:i.getBoundingClientRect(),initialCursorPosition:a,initialLayout:r})},[]),se=t.useCallback(()=>{b(null)},[]),ce=t.useCallback(e=>{let{panelDataArray:t}=j.current,n=Qe(t,e);n>=0&&(t.splice(n,1),delete w.current[e.id],j.current.panelDataArrayChanged=!0,C())},[C]),le=t.useMemo(()=>({collapsePanel:M,direction:i,dragState:y,expandPanel:N,getPanelSize:P,getPanelStyle:F,groupId:_,isPanelCollapsed:I,isPanelExpanded:ee,reevaluatePanelConstraints:ae,registerPanel:te,registerResizeHandle:R,resizePanel:z,startDragging:oe,stopDragging:se,unregisterPanel:ce,panelGroupElement:v.current}),[M,y,i,N,P,F,_,I,ee,ae,te,R,z,oe,se,ce]),ue={display:`flex`,flexDirection:i===`horizontal`?`row`:`column`,height:`100%`,overflow:`hidden`,width:`100%`};return t.createElement(a.Provider,{value:le},t.createElement(h,{...g,children:n,className:r,id:l,ref:v,style:{...ue,...m},[o.group]:``,[o.groupDirection]:i,[o.groupId]:_}))}var W=t.forwardRef((e,n)=>t.createElement(U,{...e,forwardedRef:n}));U.displayName=`PanelGroup`,W.displayName=`forwardRef(PanelGroup)`;function Qe(e,t){return e.findIndex(e=>e===t||e.id===t.id)}function $e(e,t,n){let r=Qe(e,t),i=r===e.length-1?[r-1,r]:[r,r+1],a=n[r];return{...t.constraints,panelSize:a,pivotIndices:i}}function et({disabled:e,handleId:n,resizeHandler:r,panelGroupElement:i}){t.useEffect(()=>{if(e||r==null||i==null)return;let t=Ae(n,i);if(t==null)return;let a=e=>{if(!e.defaultPrevented)switch(e.key){case`ArrowDown`:case`ArrowLeft`:case`ArrowRight`:case`ArrowUp`:case`End`:case`Home`:e.preventDefault(),r(e);break;case`F6`:{e.preventDefault();let r=t.getAttribute(o.groupId);V(r,`No group element found for id "${r}"`);let a=Ee(r,i),s=De(r,n,i);V(s!==null,`No resize element found for id "${n}"`),a[e.shiftKey?s>0?s-1:a.length-1:s+1<a.length?s+1:0].focus();break}}};return t.addEventListener(`keydown`,a),()=>{t.removeEventListener(`keydown`,a)}},[i,e,n,r])}function tt({children:e=null,className:n=``,disabled:r=!1,hitAreaMargins:i,id:s,onBlur:l,onClick:u,onDragging:d,onFocus:p,onPointerDown:m,onPointerUp:h,style:g={},tabIndex:_=0,tagName:v=`div`,...y}){let b=t.useRef(null),x=t.useRef({onClick:u,onDragging:d,onPointerDown:m,onPointerUp:h});t.useEffect(()=>{x.current.onClick=u,x.current.onDragging=d,x.current.onPointerDown=m,x.current.onPointerUp=h});let S=t.useContext(a);if(S===null)throw Error(`PanelResizeHandle components must be rendered within a PanelGroup container`);let{direction:C,groupId:w,registerResizeHandle:T,startDragging:E,stopDragging:D,panelGroupElement:O}=S,k=f(s),[A,j]=t.useState(`inactive`),[M,N]=t.useState(!1),[P,F]=t.useState(null),I=t.useRef({state:A});c(()=>{I.current.state=A}),t.useEffect(()=>{if(r)F(null);else{let e=T(k);F(()=>e)}},[r,k,T]);let ee=i?.coarse??15,te=i?.fine??5;t.useEffect(()=>{if(r||P==null)return;let e=b.current;V(e,`Element ref not attached`);let t=!1;return le(k,e,C,{coarse:ee,fine:te},(e,n,r)=>{if(!n){j(`inactive`);return}switch(e){case`down`:{j(`drag`),t=!1,V(r,`Expected event to be defined for "down" action`),E(k,r);let{onDragging:e,onPointerDown:n}=x.current;e?.(!0),n?.();break}case`move`:{let{state:e}=I.current;t=!0,e!==`drag`&&j(`hover`),V(r,`Expected event to be defined for "move" action`),P(r);break}case`up`:{j(`hover`),D();let{onClick:e,onDragging:n,onPointerUp:r}=x.current;n?.(!1),r?.(),t||e?.();break}}})},[ee,C,r,te,T,k,P,E,D]),et({disabled:r,handleId:k,resizeHandler:P,panelGroupElement:O});let ne={touchAction:`none`,userSelect:`none`};return t.createElement(v,{...y,children:e,className:n,id:s,onBlur:()=>{N(!1),l?.()},onFocus:()=>{N(!0),p?.()},ref:b,role:`separator`,style:{...ne,...g},tabIndex:_,[o.groupDirection]:C,[o.groupId]:w,[o.resizeHandle]:``,[o.resizeHandleActive]:A===`drag`?`pointer`:M?`keyboard`:void 0,[o.resizeHandleEnabled]:!r,[o.resizeHandleId]:k,[o.resizeHandleState]:A})}tt.displayName=`PanelResizeHandle`,e.Panel=m,e.PanelGroup=W,e.PanelResizeHandle=tt}))(),Vo=`max-w-[180px]`;function Ho({label:e,secondaryLabel:t=null,title:n,isActive:r,onSelect:i,labelMaxWidthClass:a=Vo,closeAction:o}){let s=o!==null;return(0,q.jsxs)(`div`,{className:R(`inline-flex h-7 shrink-0 items-center rounded-md text-xs transition-colors`,r?`bg-muted text-foreground`:`text-muted-foreground hover:bg-muted/60`),children:[(0,q.jsxs)(`button`,{type:`button`,onClick:i,"aria-pressed":r,title:n,className:R(`flex h-full min-w-0 items-center rounded-l-md pl-2 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring`,s?`pr-1`:`rounded-r-md pr-2`),children:[(0,q.jsx)(`span`,{className:R(`truncate`,a),children:e}),t?(0,q.jsx)(`span`,{className:`ml-1 shrink-0 text-muted-foreground/80`,children:t}):null]}),o?(0,q.jsx)(`button`,{type:`button`,onClick:o.onClose,disabled:o.isClosing,"aria-label":o.closeLabel,title:o.closeTooltip,className:`mr-1 ml-0.5 inline-flex size-4 shrink-0 items-center justify-center rounded opacity-70 transition-opacity hover:bg-muted-foreground/15 hover:opacity-100 focus-visible:opacity-100 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-30`,children:o.isClosing?(0,q.jsx)(L,{name:`Spinner`,className:`size-3 animate-spin`}):(0,q.jsx)(L,{name:`X`,className:`size-3`})}):null]})}var Uo=`uncommitted`;function Wo(e,t){if(e===`uncommitted`)return{type:`uncommitted`};if(e)return{type:`commit`,sha:e};if(t)return{type:`all`,mergeBaseBranch:t}}function Go(e,t={hasUncommittedChanges:!1}){let n={value:`all`,label:`All changes`},r={value:Uo,label:`Uncommitted changes`},i=e.map(e=>({value:e.sha,label:e.subject,monoPrefix:e.shortSha}));return e.length>0||t.hasUncommittedChanges?[n,...t.hasUncommittedChanges?[r]:[],...i]:[n]}function Ko(e,t,n={hasUncommittedChanges:!1}){return e?e===`uncommitted`?!n.hasUncommittedChanges:!t.some(t=>t.sha===e):!1}function qo(e){let t=e.currentGitDiff.trim().length>0,n=$t(e.currentGitDiff),r=e.parsedGitDiffFileCount>0,i=t&&e.lastParsedGitDiffKey!==n;return{currentGitDiffKey:n,hasCurrentGitDiff:t,hasParsedGitDiffFiles:r,isAwaitingCurrentGitDiffParse:i,isPreparingGitDiff:!r&&(e.isAwaitingPrerequisites||e.isGitDiffLoading||e.isParsingGitDiffFiles||i)}}function Jo({entry:e,expectedFileCount:t}){return t>10?!0:Ht(e.fileDiff)===`deleted`}function Yo({bulkCollapsePreference:e,currentCollapsedFileKeys:t,expectedFileCount:n,focusedFileKey:r,parsedGitDiffFileEntries:i,previousFileKeys:a}){if(e===`expanded-all`)return new Set;let o=new Set;for(let s of i){if(r!==null){s.key!==r&&o.add(s.key);continue}if(e===`collapsed-all`){o.add(s.key);continue}if(a.has(s.key)){t.has(s.key)&&o.add(s.key);continue}Jo({entry:s,expectedFileCount:n})&&o.add(s.key)}return o}function Xo(e){let t=$t(e.gitDiff);if(!e.isDiffPanelActive||e.gitDiff.trim().length===0)return{kind:`reset`,gitDiffKey:t,patchChunks:[]};let n=sn(e.gitDiff);return n.length===0?{kind:`empty`,gitDiffKey:t,patchChunks:[]}:n.length<=24?{kind:`immediate`,gitDiffKey:t,patchChunks:n}:{kind:`batched`,gitDiffKey:t,patchChunks:n}}var Zo=150,Qo=4,$o=6,es=30,ts=70;function ns(e,t){if(e.size!==t.size)return!1;for(let n of e)if(!t.has(n))return!1;return!0}function rs({environmentId:e,gitDiffIdentity:t,expectedGitDiffFileCount:n,parsedGitDiffFileEntries:r,isDiffPanelActive:i,isParsingGitDiffFiles:a}){let o=xr((0,K.useCallback)(e=>e(la),[])),s=rt(la),c=rt(ua),l=(0,K.useRef)(new Map),u=(0,K.useRef)(new Map),d=(0,K.useRef)(`default`),f=(0,K.useRef)(null),p=(0,K.useRef)(new Set),m=(0,K.useRef)(new Set),h=(0,K.useRef)(new Map),g=(0,K.useCallback)(e=>{let t=u.current.get(e);if(t===void 0)return;u.current.delete(e);let n=l.current.get(t);n&&(n.delete(e),n.size===0&&(window.clearTimeout(t),l.current.delete(t)))},[]),_=(0,K.useCallback)(()=>{for(let e of l.current.keys())window.clearTimeout(e);l.current.clear(),u.current.clear()},[]);(0,K.useLayoutEffect)(()=>{_(),d.current=`default`,f.current=null,p.current=new Set,m.current.clear(),s(new Set),c(new Set)},[e,t,_,s,c]),(0,K.useEffect)(()=>()=>{_(),m.current.clear()},[_]);let v=(0,K.useCallback)((e,t)=>{if(e.length===0)return;let n=[],r=new Set;for(let t of e)r.has(t)||(r.add(t),n.push(t));if(n.length===0)return;let i=Math.max(1,Math.min(t?.initialBatchSize??n.length,n.length)),a=Math.max(1,t?.batchSize??n.length),o=Math.max(0,t?.initialDelayMs??Zo),s=Math.max(0,t?.batchDelayMs??Zo);c(e=>{let t=new Set(e);for(let e of n)t.add(e);return t});for(let e of n)g(e);let d=(e,t)=>{let n=new Set(e),r=0;r=window.setTimeout(()=>{let e=l.current.get(r);if(e){l.current.delete(r);for(let t of e)u.current.delete(t);c(t=>{let n=!1,r=new Set(t);for(let t of e)n=r.delete(t)||n;return n?r:t})}},t),l.current.set(r,n);for(let e of n)u.current.set(e,r)};d(n.slice(0,i),o);let f=0;for(let e=i;e<n.length;e+=a){let t=o+(f+1)*s;d(n.slice(e,e+a),t),f+=1}},[g,c]);(0,K.useLayoutEffect)(()=>{if(!i)return;if(r.length===0&&!a&&n===0){p.current=new Set,m.current.clear(),s(e=>e.size===0?e:new Set),c(e=>e.size===0?e:new Set),_();return}if(r.length===0)return;let e=new Set(r.map(({key:e})=>e));f.current!==null&&!e.has(f.current)&&(f.current=null);for(let t of m.current)e.has(t)||m.current.delete(t);let t=Yo({bulkCollapsePreference:d.current,currentCollapsedFileKeys:o(),expectedFileCount:n,focusedFileKey:f.current,parsedGitDiffFileEntries:r,previousFileKeys:p.current});p.current=e,s(e=>ns(e,t)?e:t);let l=[];for(let{key:e}of r)m.current.has(e)||(m.current.add(e),t.has(e)||l.push(e));l.length!==0&&v(l,n>10||a||l.length>Qo?{initialBatchSize:Qo,initialDelayMs:es,batchSize:$o,batchDelayMs:ts}:void 0)},[_,n,o,i,a,r,v,s,c]);let y=(0,K.useCallback)(e=>{d.current=`default`,f.current=null;let t=o().has(e);if(s(n=>{let r=new Set(n);return t?r.delete(e):r.add(e),r}),t){v([e]);return}g(e),c(t=>{if(!t.has(e))return t;let n=new Set(t);return n.delete(e),n})},[g,v,s,c,o]),b=(0,K.useCallback)(e=>{if(r.length===0)return;let t=r.map(({key:e})=>e);if(!t.includes(e))return;d.current=`default`,f.current=e,m.current.add(e);let n=o().has(e);for(let n of t)n!==e&&g(n);s(new Set(t.filter(t=>t!==e))),c(t=>{let n=!1,r=new Set(t);for(let i of t)i!==e&&(n=r.delete(i)||n);return n?r:t}),n&&v([e])},[g,o,r,v,s,c]),x=(0,K.useCallback)(()=>{if(r.length===0)return;let e=r.map(({key:e})=>e),t=o();if(e.every(e=>t.has(e))){d.current=`expanded-all`,f.current=null,s(new Set),v(e);return}d.current=`collapsed-all`,f.current=null,_(),s(new Set(e)),c(new Set)},[_,r,v,s,c,o]),S=(0,K.useCallback)((e,t)=>{if(t){h.current.set(e,t);return}h.current.delete(e)},[]);return{focusGitDiffFile:b,gitDiffFileRefs:h,queuedGitDiffFileRenderKeys:m.current,setGitDiffFileRef:S,toggleAllGitDiffFilesCollapsed:x,toggleGitDiffFileCollapsed:y}}function is({environmentId:e,isDiffPanelActive:t,defaultMergeBaseBranch:n}){let r=dt(da),i=dt(fa),a=rt(fa),o=dt(la),s=dt(ua),c=(0,K.useRef)(null),[l,u]=(0,K.useState)(null),[d,f]=(0,K.useState)([]),[p,m]=(0,K.useState)(0),[h,g]=(0,K.useState)(!1),[_,v]=(0,K.useState)(``),[y,b]=(0,K.useState)(null),x=r??n,S=(0,K.useMemo)(()=>Wo(l,x),[x,l]),w=(0,K.useMemo)(()=>os({environmentId:e,target:S}),[e,S]),{data:T}=hi(e??``,x,{enabled:!!e&&!!x&&t}),{data:E,isLoading:D,isPlaceholderData:O,error:k}=vi(e??``,{enabled:!!e&&t&&S!==void 0,target:S});(0,K.useEffect)(()=>{if(E&&!O){b(e=>e?.requestIdentity===w&&e.response===E?e:{requestIdentity:w,response:E});return}D||b(e=>e?.requestIdentity===w?e:null)},[E,w,D,O]);let A=E&&!O?E:y?.requestIdentity===w?y.response:void 0,j=A?.mergeBaseRef??null,N=(0,K.useMemo)(()=>as({environmentId:e,mergeBaseRef:j,target:S}),[j,e,S]),P=A?.diff??``,F=(0,K.useMemo)(()=>At(d),[d]),{focusGitDiffFile:I,gitDiffFileRefs:te,queuedGitDiffFileRenderKeys:ne,setGitDiffFileRef:re,toggleAllGitDiffFilesCollapsed:ie,toggleGitDiffFileCollapsed:L}=rs({environmentId:e,gitDiffIdentity:N,expectedGitDiffFileCount:p,parsedGitDiffFileEntries:F,isDiffPanelActive:t,isParsingGitDiffFiles:h}),R=qo({currentGitDiff:P,isAwaitingPrerequisites:t&&!!e&&S===void 0,isGitDiffLoading:D,isParsingGitDiffFiles:h,lastParsedGitDiffKey:_,parsedGitDiffFileCount:F.length});(0,K.useEffect)(()=>{let e=Xo({gitDiff:P,isDiffPanelActive:t});if(e.kind===`reset`){f([]),m(0),g(!1),v(``);return}if(f([]),m(e.patchChunks.length),e.kind===`empty`){g(!1),v(e.gitDiffKey);return}if(e.kind===`immediate`){f(_r(P)),g(!1),v(e.gitDiffKey);return}let n=e.patchChunks,r=!1,i=null,a=0,o=!1,s=()=>{if(r)return;let t=a===0?6:18,c=n.slice(a,a+t);if(c.length===0){g(!1),v(e.gitDiffKey);return}let l=wt(c);if(!r){if(a+=c.length,f(e=>o?[...e,...l]:l),o=!0,a>=n.length||r){g(!1),v(e.gitDiffKey);return}i=window.setTimeout(s,24)}};return g(!0),s(),()=>{r=!0,i!==null&&window.clearTimeout(i)}},[P,t]),(0,K.useEffect)(()=>{u(null)},[e]),(0,K.useEffect)(()=>{a(null)},[e,a]),(0,K.useEffect)(()=>{i&&u(null)},[i]);let z=(T?.workingTree.files.length??0)>0;(0,K.useEffect)(()=>{Ko(l,T?.mergeBase?.commits??[],{hasUncommittedChanges:z})&&u(null)},[T?.mergeBase?.commits,z,l]),(0,K.useLayoutEffect)(()=>{if(!i||!t){c.current=null;return}let e=F.find(({fileDiff:e})=>It(e,i));if(!e){!D&&!h&&!R.isAwaitingCurrentGitDiffParse&&a(null);return}if(c.current!==i){c.current=i,I(e.key);return}let n=o.has(e.key),r=!ne.has(e.key)||s.has(e.key);n||r||(te.current.get(e.key)?.scrollIntoView({block:`start`,behavior:`instant`}),a(null))},[o,I,te,R.isAwaitingCurrentGitDiffParse,t,D,h,s,F,i,ne,a]);let ae=(0,K.useMemo)(()=>T?.mergeBase?.commits??[],[T?.mergeBase?.commits]),oe=l??`all`,se=(0,K.useMemo)(()=>Go(ae,{hasUncommittedChanges:z}),[ae,z]),ce=(0,K.useMemo)(()=>Pt(h?[]:d,P),[P,h,d]),{hasParsedGitDiffFiles:le,isPreparingGitDiff:ue}=R,de=(0,K.useCallback)(e=>{u(e===`all`?null:e)},[]),fe=M(),pe=(0,K.useMemo)(()=>cs(S,j),[S,j]);return{currentGitDiff:P,gitDiffError:k,gitDiffSelectOptions:se,gitDiffSelectValue:oe,gitDiffStats:ce,hasParsedGitDiffFiles:le,isGitDiffLoading:D,isParsingGitDiffFiles:h,isPreparingGitDiff:ue,onGitDiffSelectionChange:de,onRequestFileContents:(0,K.useMemo)(()=>{if(!e||pe===void 0)return;let t=e,n=pe,r=ss(n);return async(e,i)=>{let a=await fe.fetchQuery({queryKey:ee(t,n.type,r,e,i),queryFn:()=>C(t,n,e,i),staleTime:5e3});return ls(e,a.content,a.contentEncoding)}},[e,pe,fe]),parsedGitDiffFileEntries:F,queuedGitDiffFileRenderKeys:ne,setGitDiffFileRef:re,threadGitDiff:A,toggleAllGitDiffFilesCollapsed:ie,toggleGitDiffFileCollapsed:L}}function as({environmentId:e,mergeBaseRef:t,target:n}){let r=e??`none`;if(!n)return`${r}:none`;switch(n.type){case`uncommitted`:return`${r}:uncommitted`;case`branch_committed`:return[r,`branch_committed`,n.mergeBaseBranch,t??`pending`].join(`:`);case`all`:return[r,`all`,n.mergeBaseBranch,t??`pending`].join(`:`);case`commit`:return`${r}:commit:${n.sha}`;default:return n}}function os({environmentId:e,target:t}){let n=e??`none`;if(!t)return`${n}:none`;switch(t.type){case`uncommitted`:return`${n}:uncommitted`;case`branch_committed`:return[n,`branch_committed`,t.mergeBaseBranch].join(`:`);case`all`:return[n,`all`,t.mergeBaseBranch].join(`:`);case`commit`:return`${n}:commit:${t.sha}`;default:return t}}function ss(e){switch(e.type){case`uncommitted`:return null;case`branch_committed`:case`all`:return e.mergeBaseRef;case`commit`:return e.sha;default:return e}}function cs(e,t){if(e)switch(e.type){case`uncommitted`:return{type:`uncommitted`};case`branch_committed`:return t?{type:`branch_committed`,mergeBaseRef:t}:void 0;case`all`:return t?{type:`all`,mergeBaseRef:t}:void 0;case`commit`:return{type:`commit`,sha:e.sha};default:return e}}function ls(e,t,n){return n===`utf8`?{name:e,contents:t}:null}var us=760;function ds({isSecondaryPanelOpen:e}){let[t,n]=(0,K.useState)(`unified`),r=rt(sa),i=dt(ca),a=rt(ca),o=(0,K.useRef)(null),s=(0,K.useRef)(null),c=(0,K.useRef)(i),l=(0,K.useRef)(null),u=(0,K.useRef)(!1),d=(0,K.useCallback)(t=>{if(!e||t===void 0)return;let r=t>=us,i=l.current,a=i!==null&&i!==r;if(a&&u.current&&(u.current=!1),!u.current||a){let e=r?`split`:`unified`;n(t=>t===e?t:e)}l.current=r},[e,n]),f=(0,K.useRef)(e);return(0,K.useEffect)(()=>{if(f.current===e)return;f.current=e;let t=s.current;t&&(e?(t.expand(c.current),d(o.current?.getBoundingClientRect().width)):t.collapse())},[e,d]),(0,K.useEffect)(()=>{e||(u.current=!1,l.current=null)},[e]),Qn({ref:o,onResize:({width:e})=>{d(e??o.current?.getBoundingClientRect().width)}}),{gitDiffDisplayMode:t,handleGitDiffDisplayModeChange:(0,K.useCallback)(e=>{u.current=!0,n(e)},[n]),handleSecondaryPanelDragging:(0,K.useCallback)(e=>{if(r(e),e){u.current=!1;return}c.current>0&&a(c.current)},[r,a]),handleSecondaryPanelResize:(0,K.useCallback)(e=>{e<=0||(c.current=e)},[]),persistedWidthPercent:i,secondaryPanelRef:o,secondaryResizablePanelRef:s}}var fs=`20rem`;function ps({value:e,options:t,onChange:n,disabled:r,panelWidthPx:i}){let a=t.find(t=>t.value===e),o=a?.label??e,s=a?.monoPrefix;return(0,q.jsxs)(B,{children:[(0,q.jsx)(ge,{asChild:!0,disabled:r,children:(0,q.jsxs)(j,{type:`button`,variant:`ghost`,size:`sm`,disabled:r,className:R(`h-8 w-full min-w-0 justify-between gap-2 rounded-lg border border-border/70 bg-transparent px-2.5 text-xs font-normal`,r&&`opacity-60`),children:[(0,q.jsxs)(`span`,{className:`flex min-w-0 items-baseline gap-2`,children:[s?(0,q.jsx)(`span`,{className:`shrink-0 font-mono text-muted-foreground`,children:s}):null,(0,q.jsx)(`span`,{className:`truncate`,children:o})]}),(0,q.jsx)(L,{name:`ChevronDown`,className:`size-3.5 shrink-0 text-muted-foreground`})]})}),(0,q.jsx)(ye,{align:`start`,className:`min-w-[var(--radix-dropdown-menu-trigger-width)]`,style:{maxWidth:`min(var(--radix-popper-available-width), max(${fs}, ${i}px))`},children:t.map(t=>(0,q.jsxs)(he,{onSelect:()=>n(t.value),className:`flex items-center justify-between gap-2`,children:[(0,q.jsxs)(`span`,{className:`flex min-w-0 items-baseline gap-2`,title:t.monoPrefix?`${t.monoPrefix} ${t.label}`:t.label,children:[t.monoPrefix?(0,q.jsx)(`span`,{className:`shrink-0 font-mono text-muted-foreground`,children:t.monoPrefix}):null,(0,q.jsx)(`span`,{className:`truncate`,children:t.label})]}),(0,q.jsx)(L,{name:`Check`,className:R(_e,t.value===e?`opacity-100`:`opacity-0`)})]},t.value))})]})}function ms({selectionValue:e,selectionOptions:t,onSelectionChange:n,isSelectorDisabled:r,stats:i,isParsing:a,areAllFilesCollapsed:o,isCollapseAllDisabled:s,onToggleAllCollapsed:c,displayMode:l,onDisplayModeChange:u}){let d=(0,K.useRef)(null),{width:f=0}=Qn({ref:d,box:`content-box`});return(0,q.jsx)(`div`,{ref:d,className:`px-4 pb-3`,children:(0,q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-3`,children:[(0,q.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,q.jsx)(ps,{value:e,options:t,onChange:n,disabled:r,panelWidthPx:f})}),(0,q.jsx)(`span`,{className:`min-w-0 shrink truncate text-xs text-muted-foreground`,title:xi(i),children:Si(i)}),a?(0,q.jsxs)(`span`,{className:`inline-flex shrink-0 items-center gap-1 text-xs text-muted-foreground`,children:[(0,q.jsx)(L,{name:`Spinner`,className:`size-3 animate-spin`}),`Parsing`]}):null,(0,q.jsxs)(`div`,{className:`ml-auto flex min-w-0 shrink-0 items-center justify-end gap-1`,children:[(0,q.jsx)(j,{type:`button`,variant:`ghost`,size:`sm`,className:`h-7 w-7 rounded-md p-0 text-muted-foreground`,onClick:c,disabled:s,"aria-label":o?`Expand all files`:`Collapse all files`,title:o?`Expand all files`:`Collapse all files`,children:o?(0,q.jsx)(L,{name:`ChevronsDown`,className:`size-3.5`}):(0,q.jsx)(L,{name:`ChevronsUp`,className:`size-3.5`})}),(0,q.jsxs)(`div`,{className:`inline-flex items-center gap-1 rounded-lg border border-border/70 p-0.5`,role:`tablist`,"aria-label":`Diff view mode`,children:[(0,q.jsx)(j,{type:`button`,variant:`ghost`,size:`sm`,className:`h-7 w-7 rounded-md p-0 text-muted-foreground`,onClick:()=>u(`unified`),"aria-label":`Stacked diff view`,"aria-pressed":l===`unified`,title:`Stacked diff view`,children:(0,q.jsx)(L,{name:`Rows2`,className:`size-3.5`})}),(0,q.jsx)(j,{type:`button`,variant:`ghost`,size:`sm`,className:`h-7 w-7 rounded-md p-0 text-muted-foreground`,onClick:()=>u(`split`),"aria-label":`Split diff view`,"aria-pressed":l===`split`,title:`Split diff view`,children:(0,q.jsx)(L,{name:`Columns2`,className:`size-3.5`})})]})]})]})})}var hs=new Set([`md`,`mdx`,`markdown`]),gs={"--diffs-font-size":`12px`,"--diffs-line-height":`18px`,"--diffs-gap-block":`16px`},_s={"--md-content-w":`100cqi`},vs={width:`100%`,height:`100%`,border:0};function ys(e){let t=e.split(`.`).pop()?.toLowerCase();return t!==void 0&&hs.has(t)}function bs({state:e,path:t,copyPath:n=null,onOpenInEditor:r,statusLabel:i=null}){let a=e.kind===`ready`&&ys(e.file.name),[o,s]=(0,K.useState)(`preview`);return(0,K.useEffect)(()=>{s(`preview`)},[t]),(0,q.jsxs)(`div`,{className:e.kind===`html`?`@container/page flex h-full min-h-0 flex-col`:`@container/page`,style:_s,children:[(0,q.jsx)(Ss,{path:t,copyPath:n,onOpenInEditor:r,statusLabel:i,markdownMode:a?o:null,onMarkdownModeChange:s}),(0,q.jsx)(xs,{state:e,path:t,markdownMode:a?o:`preview`})]})}function xs({state:e,path:t,markdownMode:n}){return e.kind===`loading`?(0,q.jsx)(Os,{}):e.kind===`empty`?(0,q.jsx)(ks,{message:`Empty file.`}):e.kind===`not-found`?(0,q.jsx)(ks,{message:`File not found.`,role:`alert`}):e.kind===`manager-status-pending`?(0,q.jsx)(ks,{message:`Manager hasn't written a status yet.`}):e.kind===`error`?(0,q.jsx)(ks,{message:e.message??`Failed to load file`,role:e.message===void 0?`alert`:void 0}):e.kind===`image`?(0,q.jsx)(ws,{url:e.url,alt:t}):e.kind===`html`?(0,q.jsx)(Ts,{file:e.file}):ys(e.file.name)&&n===`preview`?(0,q.jsx)(Cs,{file:e.file}):(0,q.jsx)(As,{file:e.file,lineNumber:e.lineNumber??null})}function Ss({path:e,copyPath:t,onOpenInEditor:n,statusLabel:r,markdownMode:i,onMarkdownModeChange:a}){return(0,q.jsxs)(`div`,{className:`sticky top-0 z-10`,children:[(0,q.jsxs)(`div`,{className:`flex h-9 items-center gap-2 border-b border-border/70 bg-background px-4`,children:[(0,q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1`,children:[(0,q.jsx)(Bt,{className:`min-w-0 font-mono text-xs font-medium leading-5 text-foreground`,title:e,children:e}),r===null?null:(0,q.jsxs)(`span`,{className:`shrink-0 text-xs leading-5 text-muted-foreground`,children:[`(`,r,`)`]}),t===null?null:(0,q.jsx)(cn,{text:t,label:`Copy file path`,className:`shrink-0 rounded-md hover:bg-state-hover hover:text-foreground`}),n?(0,q.jsx)(`button`,{type:`button`,onClick:()=>n(e),"aria-label":`Open in editor`,title:`Open in editor`,className:`inline-flex size-5 shrink-0 items-center justify-center rounded-md text-muted-foreground hover:bg-state-hover hover:text-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring`,children:(0,q.jsx)(L,{name:`ExternalLink`,"aria-hidden":!0,className:`size-3`})}):null]}),i===null?null:(0,q.jsxs)(`div`,{className:`ml-auto inline-flex shrink-0 items-center gap-0.5 rounded-md border border-border/70 p-0.5`,role:`tablist`,"aria-label":`Markdown view mode`,children:[(0,q.jsx)(j,{type:`button`,variant:`ghost`,size:`sm`,className:`h-5 rounded-sm px-2 text-xs text-muted-foreground`,onClick:()=>a(`preview`),"aria-pressed":i===`preview`,title:`Rendered preview`,children:`Preview`}),(0,q.jsx)(j,{type:`button`,variant:`ghost`,size:`sm`,className:`h-5 rounded-sm px-2 text-xs text-muted-foreground`,onClick:()=>a(`source`),"aria-pressed":i===`source`,title:`Markdown source`,children:`Raw`})]})]}),(0,q.jsx)(`div`,{"aria-hidden":!0,className:`pointer-events-none absolute inset-x-0 top-full h-4 bg-gradient-to-b from-background to-transparent`})]})}function Cs({file:e}){return(0,q.jsx)(`div`,{className:`px-4 pt-4`,children:(0,q.jsx)(Ut,{allowHtml:!0,content:e.contents})})}function ws({url:e,alt:t}){return(0,q.jsx)(`div`,{className:`pt-4`,children:(0,q.jsx)(`img`,{src:e,alt:t,className:`block max-h-[34rem] w-full object-contain`})})}function Ts({file:e}){return(0,q.jsx)(`div`,{className:`min-h-0 flex-1`,children:(0,q.jsx)(`iframe`,{title:e.name,srcDoc:e.contents,style:vs})})}function Es(e){let t=e.querySelectorAll(`[data-file-preview-target-line]`);for(let e of t)e.removeAttribute(`data-file-preview-target-line`),e.removeAttribute(`data-selected-line`)}function Ds(e,t){let n=e.querySelectorAll(`[data-line="${t}"]`);for(let e of n)if(e instanceof HTMLElement&&e.dataset.lineIndex!==void 0)return e;for(let e of n)if(e instanceof HTMLElement)return e;return null}function Os(){return(0,q.jsxs)(`div`,{className:`space-y-2 px-4 pt-4`,"aria-busy":!0,children:[(0,q.jsx)(sr,{className:`h-3 w-3/4 rounded-sm`}),(0,q.jsx)(sr,{className:`h-3 w-full rounded-sm`}),(0,q.jsx)(sr,{className:`h-3 w-5/6 rounded-sm`}),(0,q.jsx)(sr,{className:`h-3 w-2/3 rounded-sm`}),(0,q.jsx)(sr,{className:`h-3 w-full rounded-sm`}),(0,q.jsx)(sr,{className:`h-3 w-3/5 rounded-sm`})]})}function ks({message:e,role:t}){return(0,q.jsx)(`p`,{role:t,className:`mx-4 mt-4 rounded-lg border border-dashed border-border/70 bg-background/45 px-3 py-6 text-center text-sm text-muted-foreground`,children:e})}function As({file:e,lineNumber:t}){let n=vr(),r=(0,K.useRef)(null),i=(0,K.useMemo)(()=>({themeType:n,overflow:`scroll`,disableFileHeader:!0,enableLineSelection:t!==null}),[t,n]),a=(0,K.useMemo)(()=>t===null?null:{start:t,end:t},[t]);return(0,K.useEffect)(()=>{let e=r.current,n=null,i=null,a=0;function o(){n=window.requestAnimationFrame(s),i=window.setTimeout(s,16)}function s(){let e=r.current;if(!e||(Es(e),Es(e.ownerDocument.body),t===null))return;let n=Ds(e,t)??Ds(e.ownerDocument.body,t);if(n){n.setAttribute(`data-file-preview-target-line`,``),n.setAttribute(`data-selected-line`,`single`),n.scrollIntoView?.({block:`center`});return}a+=1,a<8&&o()}return s(),()=>{e&&(Es(e),Es(e.ownerDocument.body)),n!==null&&window.cancelAnimationFrame(n),i!==null&&window.clearTimeout(i)}},[e.contents,e.name,t]),(0,q.jsx)(`div`,{ref:r,style:gs,"data-file-preview-line-number":t??void 0,children:(0,q.jsx)(kr,{file:e,options:i,selectedLines:a})})}var js=`STATUS.md`,Ms=`STATUS.html`;function Ns(e){return e===`STATUS.md`||e===`STATUS.html`}function Ps(e){return e?.some(e=>e.path===`STATUS.html`)??!1?Ms:js}function Fs({activePath:e,copyPath:t=null,error:n,filePreview:r,isLoading:i,lineNumber:a=null,onOpenInEditor:o,pendingNotFoundPath:s,statusLabel:c=null}){if(n){let r=n instanceof b&&n.status===404;return r&&e===s?(0,q.jsx)(bs,{path:e,copyPath:t,onOpenInEditor:o,statusLabel:c,state:{kind:`manager-status-pending`}}):(0,q.jsx)(bs,{path:e,copyPath:t,onOpenInEditor:o,statusLabel:c,state:{kind:r?`not-found`:`error`}})}return i||!r||r.path!==e?(0,q.jsx)(bs,{path:e,copyPath:t,onOpenInEditor:o,statusLabel:c,state:{kind:`loading`}}):e===`STATUS.html`&&r.kind===`text`?(0,q.jsx)(bs,{path:e,copyPath:t,onOpenInEditor:o,statusLabel:c,state:{kind:`html`,file:{name:r.name??e,contents:r.content}}}):r.kind===`text`?r.content.length===0?(0,q.jsx)(bs,{path:e,copyPath:t,onOpenInEditor:o,statusLabel:c,state:{kind:`empty`}}):(0,q.jsx)(bs,{path:e,copyPath:t,onOpenInEditor:o,statusLabel:c,state:{kind:`ready`,lineNumber:a,file:{name:r.name??e,contents:r.content}}}):r.kind===`image`?(0,q.jsx)(bs,{path:e,copyPath:t,onOpenInEditor:o,statusLabel:c,state:{kind:`image`,url:r.url}}):(0,q.jsx)(bs,{path:e,copyPath:t,onOpenInEditor:o,statusLabel:c,state:{kind:`error`,message:`Preview not available for ${r.mimeType}.`}})}function Is({activePath:e,copyPath:t,error:n,filePreview:r,isLoading:i,lineNumber:a,onOpenInEditor:o,pinnedPath:s}){return(0,q.jsx)(Fs,{activePath:e,copyPath:t,error:n,filePreview:r,isLoading:i,lineNumber:a,onOpenInEditor:o,pendingNotFoundPath:s})}var Ls=3,Rs=`min-h-0 flex-1 overflow-x-hidden overflow-y-auto`;function zs({count:e=Ls}){return(0,q.jsx)(`div`,{className:`space-y-2 pt-2`,children:Array.from({length:e}).map((e,t)=>(0,q.jsxs)(`div`,{className:`rounded-lg border border-border/70 bg-background/70`,children:[(0,q.jsx)(`div`,{className:`border-b border-border/70 bg-card/70 px-3 py-1.5`,children:(0,q.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,q.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-1.5`,children:[(0,q.jsx)(sr,{className:`size-4 shrink-0 rounded-sm`}),(0,q.jsx)(sr,{className:`h-3 w-48 max-w-full rounded-sm`})]}),(0,q.jsx)(sr,{className:`h-3 w-14 shrink-0 rounded-sm`})]})}),(0,q.jsxs)(`div`,{className:`space-y-1.5 px-2.5 py-2`,children:[(0,q.jsx)(sr,{className:`h-3 w-full rounded-sm`}),(0,q.jsx)(sr,{className:`h-3 w-[94%] rounded-sm`}),(0,q.jsx)(sr,{className:`h-3 w-[90%] rounded-sm`}),(0,q.jsx)(sr,{className:`h-3 w-[86%] rounded-sm`})]})]},`git-diff-skeleton-${t}`))})}var Bs=(0,K.memo)(function({fileKey:e,fileDiff:t,diffViewOptions:n,filePathRoot:r,onOpenFileInEditor:i,onOpenFilePreview:a,isCollapsed:o,isRendering:s,setGitDiffFileRef:c,toggleGitDiffFileCollapsed:l,onRequestFileContents:u}){return(0,q.jsx)(Yt,{fileDiff:t,diffViewOptions:n,filePathRoot:r,onOpenFileInEditor:i,onOpenFilePreview:a,isCollapsed:o,onToggleCollapsed:(0,K.useCallback)(()=>{l(e)},[e,l]),stickyHeader:!0,isRendering:s,cardRef:(0,K.useCallback)(t=>{c(e,t)},[e,c]),onRequestFileContents:u})});function Vs({collapsedGitDiffFileKeys:e,currentGitDiff:t,gitDiffError:n,gitDiffViewOptions:r,isParsingGitDiffFiles:i,isPreparingGitDiff:a,loadingGitDiffFileKeys:o,onOpenFileInEditor:s,onOpenFilePreview:c,onRequestFileContents:l,parsedGitDiffFileEntries:u,queuedGitDiffFileRenderKeys:d,setGitDiffFileRef:f,threadGitDiff:p,toggleGitDiffFileCollapsed:m,workspaceRootPath:h}){let g=t.trim().length>0;return(0,q.jsx)(`div`,{className:R(Rs,`px-4 pb-3`),children:a?(0,q.jsx)(zs,{}):n?(0,q.jsx)(`p`,{className:`rounded-lg border border-destructive/20 bg-destructive/5 px-3 py-2 text-xs text-destructive`,children:n.message}):p&&g?(0,q.jsxs)(q.Fragment,{children:[u.length>0?(0,q.jsxs)(`div`,{className:`space-y-2`,children:[u.map(({key:t,fileDiff:n})=>(0,q.jsx)(Bs,{fileKey:t,fileDiff:n,diffViewOptions:r,filePathRoot:h,onOpenFileInEditor:s,onOpenFilePreview:c,isCollapsed:e.has(t),isRendering:!d.has(t)||o.has(t),setGitDiffFileRef:f,toggleGitDiffFileCollapsed:m,onRequestFileContents:l},t)),i?(0,q.jsx)(`div`,{className:`rounded-lg border border-border/70 bg-background/70 px-3 py-3`,children:(0,q.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,q.jsx)(sr,{className:`h-3 w-52 max-w-full rounded-sm`}),(0,q.jsx)(sr,{className:`h-3 w-5/6 rounded-sm`})]})}):null]}):(0,q.jsx)(`pre`,{className:`overflow-auto whitespace-pre rounded-lg border border-border/70 bg-background/70 p-3 font-mono text-xs text-foreground`,children:p.diff}),p.truncated?(0,q.jsx)(`p`,{className:`pt-2 text-xs text-muted-foreground`,children:`Diff output was truncated for display.`}):null]}):(0,q.jsx)(`p`,{className:`rounded-lg border border-dashed border-border/70 bg-background/45 px-3 py-6 text-center text-sm text-muted-foreground`,children:`No diff to display.`})})}function Hs({metadataContent:e}){return(0,q.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col px-4 pb-3`,children:e})}function Us({activePath:e,copyPath:t=null,environmentId:n,lineNumber:r,onOpenInEditor:i,source:a,statusLabel:o}){let{data:s,error:c,isLoading:l}=_i(n,e,a);return(0,q.jsx)(Fs,{activePath:e,copyPath:t,error:c,filePreview:s,isLoading:l,lineNumber:r,onOpenInEditor:i,statusLabel:o})}function Ws({activePath:e,environmentId:t,lineNumber:n,onOpenInEditor:r,threadId:i}){let{data:a,error:o,isLoading:s}=Le(i,t,e);return(0,q.jsx)(Fs,{activePath:e,error:o,filePreview:a,isLoading:s,lineNumber:n,onOpenInEditor:r,statusLabel:null})}function Gs({activePath:e,copyPath:t=null,isManagerThread:n,onOpenInEditor:r,pinnedPath:i,threadId:a}){let{data:o,error:s,isLoading:c}=De(a,e,{enabled:n});return(0,q.jsx)(Is,{activePath:e,copyPath:t,error:s,filePreview:o,isLoading:c,onOpenInEditor:r,pinnedPath:i})}var Ks=24,qs=70,Js=`duration-[220ms] ease-[cubic-bezier(0.32,0.72,0,1)]`,Ys=`min-h-0 flex-1 overflow-x-hidden overflow-y-auto`;function Xs({activePanel:e,canUseGitUi:t,defaultMergeBaseBranch:n,environmentId:r,metadataContent:i,fileTabs:a,fileTabContent:o,isOpen:s,showGitDiffTab:c=!0,onPanelFocus:l,onPanelChange:u,onCollapse:d,onClose:f,workspaceRootPath:p,onOpenFileInEditor:m,onOpenFilePreview:h,renderAsDrawer:g}){let _=a?.find(e=>e.isActive)!==void 0,v=g?`X`:`PanelRight`,{gitDiffDisplayMode:y,handleGitDiffDisplayModeChange:b,handleSecondaryPanelDragging:x,handleSecondaryPanelResize:S,persistedWidthPercent:C,secondaryPanelRef:w,secondaryResizablePanelRef:T}=ds({isSecondaryPanelOpen:s}),E=!t&&e===`git-diff`?`thread-info`:e,D=E===`git-diff`,{currentGitDiff:O,gitDiffError:k,gitDiffSelectOptions:A,gitDiffSelectValue:M,gitDiffStats:N,hasParsedGitDiffFiles:P,isGitDiffLoading:F,isParsingGitDiffFiles:I,isPreparingGitDiff:ee,onGitDiffSelectionChange:te,onRequestFileContents:ne,parsedGitDiffFileEntries:re,queuedGitDiffFileRenderKeys:ie,setGitDiffFileRef:z,threadGitDiff:ae,toggleAllGitDiffFilesCollapsed:oe,toggleGitDiffFileCollapsed:se}=is({environmentId:r,isDiffPanelActive:D,defaultMergeBaseBranch:n}),ce=dt(la),le=dt(ua),ue=(0,K.useMemo)(()=>P&&re.every(({key:e})=>ce.has(e)),[ce,P,re]),de=vr(),fe=(0,K.useMemo)(()=>({...Kt,diffStyle:y,themeType:de}),[y,de]),pe=(0,q.jsxs)(`aside`,{ref:w,"aria-hidden":!s,onFocusCapture:e=>{let t=e.relatedTarget;t instanceof Node&&e.currentTarget.contains(t)||l()},className:R(`flex h-full min-h-0 min-w-0 flex-1 flex-col overflow-hidden bg-background`,!g&&[`transition-[transform,opacity,background-color]`,Js,s?`opacity-100`:`pointer-events-none translate-x-[8%] opacity-0`]),children:[(0,q.jsxs)(`div`,{className:`bg-background`,children:[(0,q.jsxs)(`div`,{className:`flex h-12 min-w-0 items-center justify-between gap-2 px-4`,children:[(0,q.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-1`,role:`tablist`,"aria-label":`Secondary panel views`,children:[(0,q.jsx)(j,{type:`button`,variant:`ghost`,size:`sm`,className:`h-7 w-7 shrink-0 rounded-md p-0`,onClick:()=>u(`thread-info`),"aria-label":`Show thread info panel`,"aria-pressed":E===`thread-info`&&!_,title:`Info`,children:(0,q.jsx)(L,{name:`Info`})}),c===!1?null:(0,q.jsx)(j,{type:`button`,variant:`ghost`,size:`sm`,className:`h-7 w-7 shrink-0 rounded-md p-0`,onClick:()=>u(`git-diff`),"aria-label":`Show diff panel`,"aria-pressed":D&&!_,title:`Diff`,children:(0,q.jsx)(L,{name:`FileDiff`})}),a&&a.length>0?(0,q.jsx)(`div`,{className:`flex min-w-0 items-center gap-1 overflow-x-auto`,children:a.map(e=>(0,q.jsx)(Zs,{tab:e},e.id))}):null]}),(0,q.jsx)(j,{type:`button`,variant:`ghost`,size:`icon`,className:`h-7 w-7 shrink-0 rounded-md p-0`,onClick:f,"aria-label":g?`Close secondary panel`:`Hide secondary panel`,title:g?`Close secondary panel`:`Hide secondary panel`,children:(0,q.jsx)(L,{name:v})})]}),D&&!_?(0,q.jsx)(ms,{selectionValue:M,selectionOptions:A,onSelectionChange:te,isSelectorDisabled:F||ae===void 0,stats:N,isParsing:I,areAllFilesCollapsed:ue,isCollapseAllDisabled:!P||F,onToggleAllCollapsed:oe,displayMode:y,onDisplayModeChange:b}):null]}),(0,q.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col overflow-hidden bg-background`,children:_?(0,q.jsx)(`div`,{className:R(Ys,`pb-3`),children:o??(0,q.jsx)(`p`,{className:`mx-4 rounded-lg border border-dashed border-border/70 bg-background/45 px-3 py-6 text-center text-sm text-muted-foreground`,children:`No file preview content provided.`})}):D?(0,q.jsx)(Vs,{collapsedGitDiffFileKeys:ce,currentGitDiff:O,gitDiffError:k instanceof Error?k:k?Error(`Failed to load git diff`):null,gitDiffViewOptions:fe,isParsingGitDiffFiles:I,isPreparingGitDiff:ee,loadingGitDiffFileKeys:le,onOpenFileInEditor:m,onOpenFilePreview:h,onRequestFileContents:ne,parsedGitDiffFileEntries:re,queuedGitDiffFileRenderKeys:ie,setGitDiffFileRef:z,threadGitDiff:ae,toggleGitDiffFileCollapsed:se,workspaceRootPath:p}):(0,q.jsx)(Hs,{metadataContent:i})})]});return g?pe:(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(Qs,{isOpen:s,onDragging:x}),(0,q.jsx)(Bo.Panel,{ref:T,id:`thread-detail-secondary-panel`,collapsible:!0,collapsedSize:0,defaultSize:s?C:0,minSize:Ks,maxSize:qs,onCollapse:d,onResize:S,order:2,className:R(`min-w-0 overflow-hidden transition-[flex-grow,flex-basis,opacity]`,Js,s?`opacity-100`:`opacity-0`),children:pe})]})}function Zs({tab:e}){let t=e.statusLabel===null?e.filename:`${e.filename} (${e.statusLabel})`;return(0,q.jsx)(Ho,{label:e.filename,secondaryLabel:e.statusLabel===null?null:`(${e.statusLabel})`,title:t,isActive:e.isActive,onSelect:e.onSelect,labelMaxWidthClass:`max-w-[160px]`,closeAction:e.isPinned?null:{onClose:e.onClose,closeLabel:`Close ${e.filename}`,closeTooltip:`Close tab`}})}function Qs({isOpen:e,onDragging:t}){let n=dt(sa);return(0,q.jsx)(Bo.PanelResizeHandle,{id:`thread-detail-secondary-panel-handle`,disabled:!e,onDragging:t,className:R(`group relative shrink-0 cursor-col-resize overflow-visible bg-transparent transition-[width,opacity,background-color] before:absolute before:inset-y-0 before:-left-1.5 before:-right-1.5 before:content-['']`,Js,e?`w-px opacity-100`:`pointer-events-none w-0 opacity-0`,n&&`bg-accent/20`),"aria-label":`Resize thread and secondary panels`,children:(0,q.jsx)(`span`,{className:R(`pointer-events-none absolute inset-y-0 left-1/2 w-px -translate-x-1/2 bg-border/70 transition-colors`,n?`bg-accent-foreground/50`:`group-hover:bg-accent-foreground/35`)})})}var $s=`file-tree-container`,ec=`data-file-tree-style`,tc=`data-file-tree-unsafe-css`,nc=`data-file-tree-scrollbar-measure`,rc=`data-file-tree-scrollbar-gutter-measured`,ic=`--trees-scrollbar-gutter-measured`,ac=`header`,oc=`context-menu`,sc=`context-menu-trigger`,cc=typeof window>`u`?K.useEffect:K.useLayoutEffect;function lc(e,t,n){let r=e==null?null:(0,q.jsx)(`div`,{slot:ac,children:e}),i=t!=null&&n!=null?(0,q.jsx)(`div`,{slot:oc,children:t(n.item,n.context)}):null;return r==null&&i==null?null:(0,q.jsxs)(q.Fragment,{children:[r,i]})}function uc(e,t){return typeof window>`u`&&t!=null?(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(`template`,{shadowrootmode:`open`,dangerouslySetInnerHTML:{__html:t.shadowHtml}}),e]}):(0,q.jsx)(q.Fragment,{children:e})}function dc(e){let t=e.shadowRoot;return t?.querySelector(`[data-file-tree-id]`)instanceof HTMLElement||t?.querySelector(`[data-file-tree-id]`)instanceof SVGElement?!0:e.querySelector(`template[shadowrootmode="open"]`)instanceof HTMLTemplateElement}function fc(e,t,n,r,i){let a={...e??{}};if(t!=null&&delete a.header,n){let t=e?.contextMenu,n=t?.onClose,o=t?.onOpen;a.contextMenu={...t??{},enabled:!0,onClose:()=>{n?.(),r()},onOpen:(e,t)=>{i(e,t),o?.(e,t)}},delete a.contextMenu.render}return a.header!=null||a.contextMenu!=null?a:void 0}function pc({header:e,id:t,model:n,preloadedData:r,renderContextMenu:i,...a}){let[o,s]=(0,K.useState)(null),[c,l]=(0,K.useState)(null),u=(0,K.useRef)(n.getComposition()),d=(0,K.useRef)(n);d.current!==n&&(d.current=n,u.current=n.getComposition());let f=i!=null,p=(0,K.useCallback)(()=>{s(null)},[]),m=(0,K.useCallback)((e,t)=>{s({context:t,item:e})},[]),h=u.current,g=(0,K.useMemo)(()=>fc(h,e,f,p,m),[h,p,m,f,e]),_=(0,K.useCallback)(e=>{l(e)},[]);(0,K.useEffect)(()=>{f||s(null)},[f]),cc(()=>{n.setComposition(g)},[g,n]),cc(()=>{if(c!=null)return r!=null&&dc(c)?n.hydrate({fileTreeContainer:c}):n.render({fileTreeContainer:c}),()=>{n.unmount(),n.setComposition(h)}},[h,c,n,r]);let v=uc(lc(e,i,o),r),y=t??r?.id,b={"--trees-item-height":`${String(n.getItemHeight())}px`,"--trees-density-override":n.getDensityFactor(),...a.style};return(0,q.jsx)($s,{...a,id:y,ref:_,style:b,suppressHydrationWarning:r!=null,children:v})}var mc=`<svg data-icon-sprite aria-hidden="true" width="0" height="0">
4
4
  <symbol id="file-tree-icon-chevron" viewBox="0 0 16 16">