bb-app 0.0.5 → 0.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/app/dist/assets/AppSettingsView-DH1waGrt.js +1 -0
- package/app/dist/assets/{InternalReplayListView-BMzOdu0K.js → InternalReplayListView-DjsfJLJv.js} +1 -1
- package/app/dist/assets/{ProjectArchivedThreadsView-DzbW3kSk.js → ProjectArchivedThreadsView-Bj8oRQmq.js} +1 -1
- package/app/dist/assets/ProjectSettingsView-B5yhhmEc.js +1 -0
- package/app/dist/assets/ThreadDetailRoute-DKYxhL5B.js +2680 -0
- package/app/dist/assets/ThreadUnarchiveButton-CdRo7M97.js +1 -0
- package/app/dist/assets/{angular-html-CM7ZtmlE.js → angular-html-CoYv0XJY.js} +1 -1
- package/app/dist/assets/{angular-ts-B4aAwutb.js → angular-ts--oE0vL6J.js} +1 -1
- package/app/dist/assets/{apl-Db6aaGYX.js → apl-mu0Mp6u1.js} +1 -1
- package/app/dist/assets/{astro-CXkhV095.js → astro-DGoqbRGX.js} +1 -1
- package/app/dist/assets/{blade-CfLZY3kt.js → blade-DQujc1A5.js} +1 -1
- package/app/dist/assets/{c-CwV4mx9Z.js → c-2jbVFmuV.js} +1 -1
- package/app/dist/assets/{chunk-JZWAC4HX-CrzST-zS.js → chunk-JZWAC4HX-C_-VEW9Q.js} +1 -1
- package/app/dist/assets/{cobol-Bx9V6w-A.js → cobol-Dk2pgWM3.js} +1 -1
- package/app/dist/assets/{coffee-4vexivp2.js → coffee-6v78fbbf.js} +1 -1
- package/app/dist/assets/{cpp-B9JgHtmn.js → cpp-QzZpOrzC.js} +1 -1
- package/app/dist/assets/{crystal-CV6ainQY.js → crystal-CvexRWdz.js} +1 -1
- package/app/dist/assets/{css-BahFL25I.js → css-OM3bJ3_6.js} +1 -1
- package/app/dist/assets/dialog-BjpdbSmZ.js +1 -0
- package/app/dist/assets/{edge-Dbi7IqBU.js → edge-C3m71CuX.js} +1 -1
- package/app/dist/assets/effective-hosts-D-vDT9_r.js +68 -0
- package/app/dist/assets/{elixir-Bcybagr3.js → elixir-BhRXZTvD.js} +1 -1
- package/app/dist/assets/{elm-Cg7kNsW7.js → elm-DYE0yZFL.js} +1 -1
- package/app/dist/assets/{erb-CUdWoCwh.js → erb-SSD9uhMe.js} +1 -1
- package/app/dist/assets/{git-rebase-CebuXWOz.js → git-rebase-D0Fw5_xo.js} +1 -1
- package/app/dist/assets/{glimmer-js-DHD_iF4f.js → glimmer-js-Jn4VQcUP.js} +1 -1
- package/app/dist/assets/{glimmer-ts-x8YwQhtI.js → glimmer-ts-BNZNfWU-.js} +1 -1
- package/app/dist/assets/{glsl-DTvpjV5x.js → glsl-DGR2Z9QX.js} +1 -1
- package/app/dist/assets/{graphql-BABFRhpo.js → graphql-DQM3uC9O.js} +1 -1
- package/app/dist/assets/{hack-BTa_6UF4.js → hack-D9UfM1Cn.js} +1 -1
- package/app/dist/assets/{haml-DwZg9pb5.js → haml-BB_Vekn8.js} +1 -1
- package/app/dist/assets/{handlebars-Bkp0I46S.js → handlebars-Dttle2Wb.js} +1 -1
- package/app/dist/assets/{html-BrFG164I.js → html-Df_qp_V9.js} +1 -1
- package/app/dist/assets/{html-derivative-Dm50cCgO.js → html-derivative-rl3w8zDj.js} +1 -1
- package/app/dist/assets/{http-DHs85vmZ.js → http-CgnYHPQJ.js} +1 -1
- package/app/dist/assets/{hurl-Dh07B-Ro.js → hurl-CUdIfmn9.js} +1 -1
- package/app/dist/assets/index-CCJm8W3d.css +2 -0
- package/app/dist/assets/index-D2Ze5muL.js +1360 -0
- package/app/dist/assets/{java-CyElhBLV.js → java-CNjohX-o.js} +1 -1
- package/app/dist/assets/{javascript-Iw1B_HiK.js → javascript-Bmzu-1YP.js} +1 -1
- package/app/dist/assets/{jinja-CwNzTCBn.js → jinja-DXX545BW.js} +1 -1
- package/app/dist/assets/{jison-DmnCmBdi.js → jison-BFsONSRA.js} +1 -1
- package/app/dist/assets/{json-2cvnIy7t.js → json-D3Qqjr3g.js} +1 -1
- package/app/dist/assets/{jsx-CUP6THJt.js → jsx-tZzot0X9.js} +1 -1
- package/app/dist/assets/{julia-C5QkPIf6.js → julia-BwzvM27y.js} +1 -1
- package/app/dist/assets/{just-DKTy3QCk.js → just-6CfdIddw.js} +1 -1
- package/app/dist/assets/{latex-D6EezuXB.js → latex-DNTJjbTj.js} +1 -1
- package/app/dist/assets/{liquid-CIoyldIJ.js → liquid-DjUlzYiW.js} +1 -1
- package/app/dist/assets/localhost-badge-C8-uvmR_.js +22 -0
- package/app/dist/assets/{lua-DdZ7KAyq.js → lua-LZQVLoh_.js} +1 -1
- package/app/dist/assets/{marko-DzUNPeS3.js → marko-Dclxmh1h.js} +1 -1
- package/app/dist/assets/{mdc-D5459Kci.js → mdc-BpaMcHe8.js} +1 -1
- package/app/dist/assets/{mutation-cache-effects-DiCFYnTh.js → mutation-cache-effects-BAn11UmS.js} +1 -1
- package/app/dist/assets/{nginx-0z5C7Rx2.js → nginx-CYoL5nkY.js} +1 -1
- package/app/dist/assets/{nim-DqH405Ip.js → nim-CxULhr2M.js} +1 -1
- package/app/dist/assets/page-shell-BYLrlYTH.js +39 -0
- package/app/dist/assets/{perl-DFMDl6Q7.js → perl-5LAV6neX.js} +1 -1
- package/app/dist/assets/{php-CnLHesuB.js → php-D8BcRHFY.js} +1 -1
- package/app/dist/assets/{pill-BNIxU09I.js → pill-C-0inATv.js} +1 -1
- package/app/dist/assets/{pug-Bd_9REL_.js → pug-C9t1Hjhu.js} +1 -1
- package/app/dist/assets/{qml-Lr6hdC-5.js → qml-DGkLNN9v.js} +1 -1
- package/app/dist/assets/{r-Ce3-ySeQ.js → r-CeMfeXpy.js} +1 -1
- package/app/dist/assets/{razor-FG0QpIgS.js → razor-DRG-JA5B.js} +1 -1
- package/app/dist/assets/{regexp-CIUvMYKc.js → regexp-C6eJQVWV.js} +1 -1
- package/app/dist/assets/{rst-Dz7v6x4B.js → rst-_TSRDHac.js} +1 -1
- package/app/dist/assets/{ruby-C-FBX9Yb.js → ruby-dQqgg9kc.js} +1 -1
- package/app/dist/assets/{sas-C9h-w7MI.js → sas-C4F5TLRE.js} +1 -1
- package/app/dist/assets/{scss-D6OzIOrm.js → scss-CmYsLoFC.js} +1 -1
- package/app/dist/assets/{settings-section-BKzVpY8V.js → settings-section-DrGaArro.js} +1 -1
- package/app/dist/assets/{shellscript-D87RcbyJ.js → shellscript-WXnX1Mec.js} +1 -1
- package/app/dist/assets/{shellsession-TIQjKTe8.js → shellsession-Bn3Xgpma.js} +1 -1
- package/app/dist/assets/{soy-B-dmhoWy.js → soy-c3pX5x_S.js} +1 -1
- package/app/dist/assets/split-button-BVu8nD9J.js +1 -0
- package/app/dist/assets/{sql-CbBIAEKN.js → sql-D6zVwCTB.js} +1 -1
- package/app/dist/assets/{stata-BQ_FGGIg.js → stata-CVENOXDm.js} +1 -1
- package/app/dist/assets/{surrealql-B5__VBgQ.js → surrealql-BT_Ybe_U.js} +1 -1
- package/app/dist/assets/{svelte-CgBSZjLG.js → svelte-C_ktJHww.js} +1 -1
- package/app/dist/assets/{templ-_lWYjbQF.js → templ-BWI48nlj.js} +1 -1
- package/app/dist/assets/{tex-BYUs5HV3.js → tex-BCbKiW8N.js} +1 -1
- package/app/dist/assets/thread-queries-VdTjp5RH.js +1 -0
- package/app/dist/assets/{ts-tags-hjuJ4isf.js → ts-tags--q5Co27x.js} +1 -1
- package/app/dist/assets/{tsx-DlvScFgB.js → tsx-D9Tu2qDP.js} +1 -1
- package/app/dist/assets/{twig-DgkARV1o.js → twig-0tBvYCLy.js} +1 -1
- package/app/dist/assets/{typescript-BE5MgbU9.js → typescript-usoJ9tbx.js} +1 -1
- package/app/dist/assets/{vue-C6mGC-Xh.js → vue-BQb85j8g.js} +1 -1
- package/app/dist/assets/{vue-html-BcBAJPrV.js → vue-html-gWLUM0tZ.js} +1 -1
- package/app/dist/assets/{vue-vine-DsdYqYVB.js → vue-vine-B47td4pS.js} +1 -1
- package/app/dist/assets/{xml-CMIrlqCw.js → xml-BHrSCP44.js} +1 -1
- package/app/dist/assets/{xsl-BL_g6M4v.js → xsl-D48ooQoQ.js} +1 -1
- package/app/dist/assets/{yaml-D4rIwiAS.js → yaml-DyYbpBBV.js} +1 -1
- package/app/dist/index.html +9 -9
- package/dist/bb-app.js +19 -1
- package/dist/bb-host-daemon.js +16 -1
- package/dist/bb-server.js +16 -1
- package/dist/bb.js +16 -1
- package/host-daemon/dist/bb +226 -81
- package/host-daemon/dist/bb-claude-code-bridge.mjs +35 -35
- package/host-daemon/dist/daemon-bundle.mjs +389 -386
- package/package.json +1 -1
- package/server/dist/drizzle/0003_thread_dynamic_context_file_states.sql +12 -0
- package/server/dist/drizzle/meta/0003_snapshot.json +3178 -0
- package/server/dist/drizzle/meta/_journal.json +7 -0
- package/server/dist/index.js +13190 -8111
- package/app/dist/assets/AppSettingsView-Dmjbm_4y.js +0 -1
- package/app/dist/assets/ProjectSettingsView-BCVVMJFB.js +0 -1
- package/app/dist/assets/ThreadDetailRoute-BI3VVE99.js +0 -2535
- package/app/dist/assets/ThreadUnarchiveButton-BJStGY8f.js +0 -1
- package/app/dist/assets/dialog-sqh89xvD.js +0 -1
- package/app/dist/assets/effective-hosts-Dc1pzW51.js +0 -68
- package/app/dist/assets/index-8oyVoqEg.js +0 -1360
- package/app/dist/assets/index-Cdqw3W2G.css +0 -2
- package/app/dist/assets/localhost-badge-DMyU8aEl.js +0 -22
- package/app/dist/assets/page-shell-DBPkwDcw.js +0 -39
- package/app/dist/assets/split-button-DqIwadhH.js +0 -1
- package/app/dist/assets/thread-queries-BX-3vM7I.js +0 -1
|
@@ -1,2535 +0,0 @@
|
|
|
1
|
-
import{$i as e,Ar as t,At as n,B as r,Ci as i,Dn as a,En as o,Fn as s,Gt as c,Hn as l,I as u,Ji as d,Jr as f,Jt as p,Kr as m,Kt as h,N as g,P as _,Pt as v,Qn as y,R as b,Tn as x,Tt as S,Ur as C,V as w,Wr as T,Xn as E,Xt as D,Yn as O,Yr as k,Yt as A,Zn as j,Zr as M,bn as N,ci as P,di as F,er as I,jr as ee,kt as te,li as L,n as ne,on as re,qi as ie,qn as ae,qr as R,qt as oe,t as se,ti as z,tr as ce,ui as B,wi as le,wr as ue,zt as de}from"./page-shell-DBPkwDcw.js";import{Nt as fe,Pt as pe,c as me,d as he,ht as ge,i as V,l as _e,o as ve,p as H,t as ye,xt as U}from"./effective-hosts-Dc1pzW51.js";import{C as be,T as xe,_ as Se,a as Ce,c as we,d as Te,f as Ee,g as De,h as Oe,i as ke,l as Ae,m as je,o as Me,r as Ne,s as Pe,t as Fe,u as Ie,v as Le,w as Re,x as ze}from"./thread-queries-BX-3vM7I.js";import{c as Be,d as Ve,n as He,p as Ue,r as We,s as Ge,u as Ke}from"./chunk-JZWAC4HX-CrzST-zS.js";import{a as qe,g as Je,h as Ye,i as Xe,o as W,r as G,s as Ze,t as Qe,u as $e,v as et,y as tt}from"./dialog-sqh89xvD.js";import{A as nt,O as rt,S as it,_ as at,a as ot,b as st,g as ct,h as lt,k as ut,m as dt,p as ft,t as pt,v as mt,y as ht}from"./localhost-badge-DMyU8aEl.js";import{f as gt,v as _t,y as vt}from"./mutation-cache-effects-DiCFYnTh.js";import{$ as yt,$t as bt,A as xt,At as St,B as Ct,Bt 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,Nt as qt,O as Jt,Ot as Yt,P as Xt,Q as Zt,Qt,R as $t,Rt as en,S as tn,St as nn,T as rn,Tt as an,U as on,Ut as sn,V as cn,W as ln,Wt as un,X as dn,Xt as fn,Y as pn,Yt as mn,Z as hn,_ as gn,_t as _n,a as vn,at as yn,b as bn,bt as xn,c as Sn,ct as Cn,d as wn,dn as Tn,dt as En,en as Dn,et as On,f as kn,ft as An,g as jn,gt as Mn,h as Nn,ht as Pn,i as Fn,it as In,j as Ln,jt as Rn,k as zn,kt as Bn,l 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,sn as rr,st as ir,t as ar,tt as or,u as sr,un as cr,ut as lr,v as ur,vt as dr,w as fr,wt as pr,x as mr,xt as hr,y as gr,yt as _r,z as vr}from"./index-8oyVoqEg.js";import{t as yr}from"./pill-BNIxU09I.js";import{t as br}from"./split-button-DqIwadhH.js";import{t as xr}from"./ThreadUnarchiveButton-BJStGY8f.js";var K=e(ie(),1);function Sr(e,t){return nt((0,K.useMemo)(()=>tt(null,(t,n,...r)=>e(t,n,...r)),[e]),t)}var Cr=class{highlighter;renderCache;computedLang=`text`;lineAnnotations={};constructor(e={theme:Rn},t,n){this.options=e,this.onRenderUpdate=t,this.workerManager=n,n?.isWorkingPool()!==!0&&(this.highlighter=xn(e.theme??Rn)?nn():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&&!wr(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=Rn,tokenizeMaxLineLength:t=1e3}=this.options;return{theme:e,tokenizeMaxLineLength:t}})(),{renderCache:n}=this;return n?.result==null||e!==n.file||!wr(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??Zn(e.name);let t=this.highlighter!=null&&xn(n.theme),i=this.highlighter!=null&&an(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??Zn(e.name);let t=this.highlighter!=null&&_r(hr(this.options.theme)),n=this.highlighter!=null&&an(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:lr(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(Mn({type:`annotation`,hunkIndex:0,lineIndex:i,annotations:t.map(e=>En(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 Pn({fileOrDiff:e,themeStyles:t,themeType:n??r})}renderFullHTML(e){return pr(this.renderFullAST(e))}renderFullAST(e,t=[]){return t.push(_n({tagName:`code`,children:e.codeAST,properties:{"data-code":``}})),{...e.preAST,children:t}}renderPartialHTML(e,t=!1){return pr(t?_n({tagName:`code`,children:e,properties:{"data-code":``}}):e)}async initializeHighlighter(){return this.highlighter=await Tt(An(this.computedLang,this.options)),this.highlighter}onHighlightSuccess(e,t,n){if(this.renderCache==null)return;let r=this.renderCache.file!==e||!this.renderCache.highlighted||!wr(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 Wn({diffIndicators:`none`,disableBackground:!0,disableLineNumbers:r,overflow:i,themeStyles:t,themeType:n??a,split:!1,totalLines:e})}};function wr(e,t){return dr(e.theme,t.theme)&&e.tokenizeMaxLineLength===t.tokenizeMaxLineLength}var Tr=-1,Er=class{static LoadedCustomComponent=!0;__id=++Tr;fileContainer;spriteSVG;pre;code;unsafeCSSStyle;hoverContent;errorWrapper;headerElement;headerMetadata;fileRenderer;resizeManager;mouseEventManager;lineSelectionManager;annotationElements=[];lineAnnotations=[];file;constructor(e={theme:Rn},t,n=!1){this.options=e,this.workerManager=t,this.isContainerManaged=n,this.fileRenderer=new Cr(e,this.handleHighlightRender,this.workerManager),this.resizeManager=new kt,this.mouseEventManager=new Dt(`file`,Yt(e)),this.lineSelectionManager=new Bn(St(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(Yt(e)),this.lineSelectionManager.setOptions(St(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;Kn(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&&Cn(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=ir(En(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=yn(),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=In(),this.fileContainer.shadowRoot.appendChild(this.unsafeCSSStyle)),this.unsafeCSSStyle.innerText=tr(e)}applyHunksToDOM(e,t){this.cleanupErrorWrapper(),this.applyPreNodeAttributes(t,e),t.innerHTML=``,this.code=Yn(),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=pr(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=qt,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=Hn;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;or({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=le();function Dr({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:En(e),children:n(e)},t)),i!=null&&(0,q.jsx)(`div`,{slot:`hover-slot`,style:yt,children:i(a)})]})}var Or=typeof window>`u`?K.useEffect:K.useLayoutEffect;function kr({file:e,options:t,lineAnnotations:n,selectedLines:r,prerenderedHTML:i}){let a=(0,K.useContext)(dn),o=(0,K.useRef)(null),s=pn(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 Er(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 Or(()=>{if(o.current==null)return;let i=!On(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 Ar({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}=kr({file:e,options:r,lineAnnotations:t,selectedLines:n,prerenderedHTML:c});return(0,q.jsx)(Gt,{ref:u,className:i,style:a,children:Zt(Dr({file:e,renderAnnotation:o,renderHeaderMetadata:s,renderHoverUtility:l,lineAnnotations:t,getHoveredLine:d}),c)})}var jr=8,Mr=1;function Nr(){let e=typeof navigator<`u`?navigator.hardwareConcurrency:void 0;return e===void 0||e<=2?Mr:Math.max(Mr,Math.min(jr,e-1))}function Pr(){return new Worker(new URL(`/assets/worker-portable-CA4_6zkQ.js`,``+import.meta.url),{name:`pierre-diffs-worker`})}var Fr=`bb.thread.terminalPanelState`,Ir=336*60*60*1e3,Lr=k({version:R(1),isOpen:T(),activeTerminalId:M().min(1).nullable(),panelHeightPercent:f().int().min(18).max(70),lastUsedAt:f().int().nonnegative()}).strict();function Rr(){return typeof window>`u`?null:window.localStorage}function zr(e){return encodeURIComponent(e.trim())}function Br(e={}){return{version:1,isOpen:e.isOpen??!1,activeTerminalId:e.activeTerminalId??null,panelHeightPercent:e.panelHeightPercent??32,lastUsedAt:e.lastUsedAt??0}}var Vr=Br();function Hr({threadId:e}){return`${Fr}-${zr(e)}-1`}function Ur(e){return e.startsWith(`bb.thread.terminalPanelState-`)&&e.endsWith(`-1`)}function Wr({now:e,state:t}){return e-t.lastUsedAt>Ir}function Gr({initialValue:e,now:t,storedValue:n}){return Kr({initialValue:e,now:t,storedValue:n}).state}function Kr({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=Lr.safeParse(r);return!i.success||Wr({now:t,state:i.data})?{shouldPrune:!0,state:e}:{shouldPrune:!1,state:i.data}}function qr({state:e}){return JSON.stringify(e)}function Jr({now:e}){let t=Rr();if(!t)return;let n=[];for(let e=0;e<t.length;e+=1){let r=t.key(e);r&&Ur(r)&&n.push(r)}for(let r of n)Kr({initialValue:Vr,now:e,storedValue:t.getItem(r)}).shouldPrune&&t.removeItem(r)}function Yr(e){return e!=null&&e.length>0}function Xr(e,t){return{...e,lastUsedAt:t}}var Zr=$e({parse:(e,t)=>Gr({initialValue:t,now:Date.now(),storedValue:e}),serialize:e=>qr({state:e})}),Qr=tt(Vr),$r=Ye(e=>et(Hr({threadId:e}),Vr,Zr,{getOnInit:!0}));function ei(e){return Yr(e)?$r(e):Qr}function ti(e){return t=>t.isOpen===e?t:{...t,isOpen:e}}function ni(e){(0,K.useEffect)(()=>{Jr({now:Date.now()})},[e])}function ri(e){return ut(ei(e))}function ii(e){let t=nt(ei(e));return(0,K.useCallback)(n=>{if(!Yr(e))return;let r=Date.now();t(e=>{let t=n(e);return t===e?e:Xr(t,r)})},[t,e])}function ai(e){let t=ii(e);return(0,K.useCallback)(e=>{t(ti(e))},[t])}function oi(e){let t=ii(e);return(0,K.useCallback)(()=>{t(e=>({...e,isOpen:!e.isOpen}))},[t])}function si(){let e=i();return B({meta:{errorMessage:`Failed to run environment action.`,showErrorToast:!1},mutationFn:({id:e,...t})=>o(e,t),onSuccess:(t,n)=>{_t({environmentId:n.id,queryClient:e})}})}function ci(){let e=i();return B({meta:{errorMessage:`Failed to update environment.`,showErrorToast:!1},mutationFn:({id:e,...t})=>s(e,t),onSuccess:t=>{e.setQueryData(r(t.id),t),vt({environmentId:t.id,queryClient:e})}})}var li=1e4,ui=3e4;function di(e,t){if(!e)throw Error(`${t}: environmentId is required when query is enabled`);return e}function fi(e){if(!e)throw Error(`useEnvironmentFilePreview: path is required when query is enabled`);return e}function pi(e){if(!e)throw Error(`useEnvironmentFilePreview: source is required when query is enabled`);return e}function mi(e){if(!e)throw Error(`useEnvironmentGitDiff: target is required when query is enabled`);return e}function hi(e,t){return F({queryKey:r(e),queryFn:()=>c(di(e,`useEnvironment`)),enabled:(t?.enabled??!0)&&!!e,staleTime:t?.staleTime})}function gi(e,t,n){return F({queryKey:w(e,t??null),queryFn:()=>D(di(e,`useEnvironmentWorkStatus`),t),enabled:(n?.enabled??!0)&&!!e,refetchOnWindowFocus:!1,staleTime:li,placeholderData:(t,n)=>e?Le(t,n?.queryKey,e):void 0})}function _i(e,t){return F({queryKey:b(e),queryFn:()=>oe(e),enabled:(t?.enabled??!0)&&!!e,refetchOnWindowFocus:!1,staleTime:ui})}function vi(e,t,n,r){return F({queryKey:_(e,t,n),queryFn:({signal:r})=>A({id:di(e,`useEnvironmentFilePreview`),path:fi(t),source:pi(n),signal:r}),enabled:(r?.enabled??!0)&&!!e&&!!t&&n!==null,refetchOnWindowFocus:!1})}function yi(e,t){let n=t.target,r=n?.type===`commit`?n.sha:n?.type===`all`||n?.type===`branch_committed`?n.mergeBaseBranch:null;return F({queryKey:u(e,n?.type??null,r),queryFn:()=>h(e,mi(n)),enabled:(t.enabled??!0)&&!!e&&n!==void 0,placeholderData:(t,n)=>Se(t,n?.queryKey,e),refetchOnWindowFocus:!1,staleTime:5e3})}function bi(e){return{filesCount:e.files.length,insertions:e.insertions,deletions:e.deletions}}function xi(e){return`${e} file${e===1?``:`s`}`}function Si(e){if(e.filesCount===0&&e.insertions===0&&e.deletions===0)return`No changes`;let t=xi(e.filesCount);return e.insertions===0&&e.deletions===0?t:`${t}, ${Vt({added:e.insertions,removed:e.deletions})}`}function Ci(e){if(e.filesCount===0&&e.insertions===0&&e.deletions===0)return`No changes`;let t=xi(e.filesCount);return e.insertions===0&&e.deletions===0?t:(0,q.jsxs)(q.Fragment,{children:[t,`,`,` `,(0,q.jsx)(Ut,{insertions:e.insertions,deletions:e.deletions})]})}function wi(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 Ti(e){return wi(e)[0]??null}function Ei(e){return e===`??`?`A?`:e}function Di({files:e,className:t=`max-h-32`,emptyMessage:n=`No changed files detected.`,onFileClick:r}){return!e||e.length===0?(0,q.jsx)(rr,{message:n}):(0,q.jsx)(`ul`,{className:L(`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`,children:Ei(e.status)}),(0,q.jsx)(Bt,{path:e.path,onClick:r?()=>r(e):void 0}),e.insertions!==null&&e.deletions!==null?(0,q.jsx)(Ut,{insertions:e.insertions,deletions:e.deletions,hideZero:!0,className:`text-xs leading-5`}):null]},`${e.status}:${e.path}`))})}function Oi({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=bi(s.stats),l=e.length>1,u=(0,q.jsx)(`span`,{className:`truncate text-muted-foreground`,children:Ci(c)});return(0,q.jsx)(Kt,{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)(V,{children:[(0,q.jsx)(he,{asChild:!0,children:(0,q.jsxs)(z,{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)(P,{name:`ChevronDown`,className:`size-3 shrink-0 text-muted-foreground`})]})}),(0,q.jsx)(ve,{align:`start`,children:e.map(e=>(0,q.jsxs)(me,{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)(P,{name:`Check`,className:L(`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)(Di,{files:s.files,className:n,onFileClick:t?e=>t({file:e,section:s}):void 0})})}function ki(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 y(e)}}function Ai({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?ki(e):null,[e]);return(0,q.jsx)(Qe,{open:e!==null,onOpenChange:d,children:(0,q.jsx)(G,{className:`max-w-[34rem] gap-0 overflow-hidden border-border bg-background p-0 shadow-xl`,children:e&&m?(0,q.jsx)(ji,{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 ji({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}){let[m,h]=(0,K.useState)(null),g=ki(e),_=Xn({mergeBaseBranch:s,mergeBaseBranchOptions:c}),v=s??_[0],b=g.showMergeBase&&o===!0&&!!u&&_.length>0,x=g.showMergeBase&&o===!0&&(b||!!v),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)(Ze,{children:g.title}),(0,q.jsx)(Xe,{children:g.description})]}),(0,q.jsxs)(`form`,{className:`space-y-4 px-6 pt-1 pb-5`,onSubmit:t=>{switch(t.preventDefault(),h(null),e.kind){case`commit`:d(!1),f();break;case`commit_and_squash_merge`:if(!v){h(`A merge base branch is required`);return}d(!1),p({mergeBaseBranch:v});break;case`squash_merge`:if(!v){h(`A merge base branch is required`);return}d(!1),p({mergeBaseBranch:v});break;default:y(e)}},children:[t||n||x||S?(0,q.jsxs)(Wt,{appearance:`flat`,children:[t?(0,q.jsx)(Kt,{label:`Branch`,valueClassName:`min-w-0 truncate`,children:(0,q.jsx)(`span`,{className:`block truncate`,title:t,children:t})}):null,n?(0,q.jsx)(Kt,{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&&v?(0,q.jsx)(Kt,{label:`Merge base`,valueClassName:`min-w-0`,children:b?(0,q.jsx)(kn,{value:v,options:_,loading:l,onChange:e=>u?.(e),className:`max-w-full`}):(0,q.jsx)(`span`,{className:`block truncate`,title:v,children:v})}):null,S&&r?(0,q.jsx)(Oi,{sections:[r],rowValueClassName:`pt-0.5`,listClassName:`max-h-40`}):null]}):null,(0,q.jsx)(fr,{message:m}),(0,q.jsx)(qe,{children:(0,q.jsx)(z,{type:`submit`,disabled:g.showMergeBase&&!v,children:g.submitLabel})})]})]})}var Mi={vscode:`data:image/png;base64,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`,cursor:`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAeGVYSWZNTQAqAAAACAAEARoABQAAAAEAAAA+ARsABQAAAAEAAABGASgAAwAAAAEAAgAAh2kABAAAAAEAAABOAAAAAAAAAJAAAAABAAAAkAAAAAEAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAQKADAAQAAAABAAAAQAAAAACU3PoRAAAACXBIWXMAABYlAAAWJQFJUiTwAAABy2lUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNi4wLjAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczpleGlmPSJodHRwOi8vbnMuYWRvYmUuY29tL2V4aWYvMS4wLyI+CiAgICAgICAgIDxleGlmOkNvbG9yU3BhY2U+MTwvZXhpZjpDb2xvclNwYWNlPgogICAgICAgICA8ZXhpZjpQaXhlbFhEaW1lbnNpb24+NTEyPC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjUxMjwvZXhpZjpQaXhlbFlEaW1lbnNpb24+CiAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgoAheCYAAAJbUlEQVR4Ae1bW2wU1xn+Z3Z9wxeW3TU2BrzYzq21SSCoLWqfEElooqqQUEGDVCkvfajUpzxFat8qtY9VpFaRIjVVHiMhocakBQK4pGACNb5hQmobY4xZr70Xr71rY3u9M/2/Y89q2c7sbY6Jq+yR1jN7Lv/83/dfzmXWRKVSYqDEQImBEgPfXgaUYqHvrK31rFQmm3Vdden8p1g5dsYpiqKpq3pkWXdOzM3NzRYjq1ACVK93y08Ujd7RSTnID2zgzzcCPg1sku8DDOQaX/8ajCycS2vLeZs3AV5v7fOkaX/kAa8T/9H1nLKfagdlXSdF0c8kktq70ejSeD4K5EXA9m21P9JU7RPuvHOzAc8ECSJIV8bYWD8LRhf7Mtszv+ckQFhe17oUnXZsMqNnYkl9XyOB7ju15KGp6NKDVIPJTa74LaOk9gGz9H8DHhiFlyrUknA43+evWTFmbax31xxVVDq02d3exLDrOUo/6nZXv2LWbtRlI4ANr//S6Cj7qmlJcjgcpKoqh6smW7yQh/hWcmBAH9PC010TacodbnSZdiiyEmABekdTE+3e7aPY/DxNTfkpGp1lq/HkKgK4SOHmw6YSSWe71TrBaT6GmUs62nRFkwYe4PBxuz3U2tYmrqurq5RYWaE9e1ooFvMwEVMUj8cECRKJaChXVn2M03ShZEmApibdKhzIZuoHaFi9uqaGWlpaqbFxh/CAZDIpCDGIqavbSjU1tRQOh2l6eoqWl5dFPysDFVCv6k5lm1V/SwI4/jk/WEaIlbwn6gGyvLycXb2Zdjf7qKKiglBnFvNGXX19PblcW5mEaQqFQtx/1TYRTLJlrstCwBNYCvoCMHBhxHlLSxvV1tYK0ACfq2Cs01lGu3btFmESCCA/RMUwiWGRUkMqAWvurLEF3SLOPR6vCKF8gKc04hsjLKqqqgSBc3NRCgSmaGFhQXZ+ICkEQGFYbsuWLZzQWqmpaSepDvvTG+SiuFzb2IvqOD8ERWiscOLETCKj2CZgzWWd1Ozzkc/XQpWVlZZxXqzCRkht394oyJieDohkadQXKxfjbBEAC3k8Hnrmmeeoiq0PhR4/XmSx+SVPLIaQ7Q1L5wMEeQBE1NW51sMibmvtYIsAKOxjl//e939Ar7x6hJOXkzC3U55TJ68MCO6cb3/wCgJA75V/dtFnn33KeSGeD2+WfWwRAGUAemRkmGo40588eYqaebrbyIKEOhsJ0eXLn4vHsAq2ii0CjCfD9a9d/Rf13uqhw4dfozffOs6h4TWapVzhKaHQDC2yxW8PDtKX169TWVmZbdlSCIAWWPDA/Ts7z9CNG9107NhxevW1I1xfYUtJkBthi0fCobXwYmlnz3aKRGtL8PpgOXPJujCEREVFJSscoQ8//IB++5v3qKfnZtF6zs/P0f37ozTNawCQixmm+9o1EXIIPRlFjpQMTbDNxQe54Q+//x0dPPhDOnHy52KazOhq+hUzSTA4Q/HYvGjHnI9PJBKmc+f+LmSbDiyickMIMPQwYvTq1S+of6CXfnzkDfrp0Tdp61bzTWYikaAwxzm2xhonOyVtsQOLX7hwXiyEsKeQVTaUAENJKLzC8/3p059Qd/dVeuv4CTp06LCYQdAHcR6djVCIV3rYHsPameDHx8fpiytXRK4x5Mq4PhUCoKjCZ2vIDzMzM/TnP71PXZcv0qlTv6DW1ja2qp8WFxfFHA/wmQULpbOdn4o+SLYyy/8+TaZ0E1nIDQiN4eH/0Mcff0T37g3T0tLSmtVNJnUAHujvp/7+PunWh3pPzQPwMFgSBGBjU8MHJNjtwf0xe5gth1EPz+hk65u1Q6bd8lQIgPIAA9A4+YEHAHguULD+5UsXaXx8zPZ6woqoDSXAAIj5G5kfVxSj3kop1MNTpgMBOn/+nDggydbXTtuGEQCQsDQsXl1dbenmVsojGd68eVMcglj1kVEvPQkCONwdFm9oaBRuD0XzsboBCNb3+/00+WiS2jv28kFqo5gWETayizQPMIDD2gAP66OuEOAGOADt6fk3JRIrQs5OPh/cxsfpAfH+QO75oBQCABKLHQBHZkcpBjjGYcU3PDxMExMTnAecKRLF+WBrG/ELDkEEZgd+rO1iiwCAhMJeb71IcFbTWb5aYjzWBLd4W4379GIQ6nK5xCkzlsujIyOCoMy+6eNy3dvKAVDq4cQDsTWVsTuDxYdu3xbnfWYrQoDBMzE94ugcmyO7XmDLA6DkBBMwMzNN7e176bvt7ewJVal9ey7209sha5b3A4O3By12ezh9coiFEQ5e7t69I84TkTDtFFsE4MFQAKc12PePjY3Svn0vUwvHKgAV8j4Abtzbe0sAzPQmPAOyvv76Lg0M9NEcvyhBnV3w0N82ARAC5aE03uB0dV0S5wD7Xz5ADfweUOeMnmv6ApDJyUkeNyLkQCYKSIRsv/8R9TE5eItsPGuth/2/Uggw1IDCKJOTD8WR9bPPPkcvvrRPLIZgQSORGf1xRa5DG6Y9XEEGQOKKRIdN0Ni90VRb+lgZ91IJMBSC8rD6V1/doQcPxqlj70v0wgvfEVOlODY3OvIViQ/T3iNe9OAenoSZAK5+Z2hIvGdAHWRuRMlCAP8sykYxXBVgbnzZTfdGRwhh4fPtERYGEfAYzOeIfWR1FExt/f29IsMDdGY+KE4layyWBKhJNaKrtjgQuhpEYMq6dPGCeG+wf/8B8vJrcLTBxWOxOB95B6mvr4cmHz4U9XKACxU0ZVVbWz6asPfkaiOtg9tdtYuPIvETmbq0atu3sDzm8ec5JDo6XhSxPTQ0SCN8QII26a6u0PTyitoei8XCZspbEsCdFa+n+hJ3kP4rMSRDJDzsG3CPMABweITMAnG8NftbKBw/ZiU320qQ33nTX6wG2qk3wgL5AS9H4e6ywaf007SsGLIRQC7Pwmn+2el1yYZJ6QbQGwVc6KzThdDs4j9SDzS5yUrA6CgtK5r+K/Yj0/gxkbdpqjh9+zmufs0K8etq65KVAAybiS4M8C973uZwCm2UJ1irV3iL0JEXj6qmnggG50dySchrdfH4cWKsuqL8c1L0DnbZ5s1IBHTCh3PqRV1R3g5F4r25wKOdh+Rf2vklcMBTfYIHvcNhcYBHur5pMta3wxHWid/CKh8FI/EzrFdWt09HXBAB6QOxTnBojlbNobmZ96LlpMss/J7/ZUZzhHVHciwUWvQXPr40osRAiYESAyUGvt0M/Bfz0vXwaPGzHAAAAABJRU5ErkJggg==`,"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 Ni({target:e,className:t=`size-4`}){return(0,q.jsx)(`img`,{alt:``,className:`${t} shrink-0 rounded-[3px]`,draggable:!1,src:Mi[e.id]})}function Pi({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)(br,{disabled:o,className:`px-1`,primaryAction:{label:`Open workspace in ${n.label}`,onSelect:()=>{s(n,e)},content:(0,q.jsx)(Ni,{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)(Ni,{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 Fi=tt(null),Ii=tt(null),Li=tt([]);function Ri(e){let t=ut(e.enabled?ct:Fi),n=ut(e.enabled?lt:Ii),r=ut(e.enabled?at:Li);return{openWorkspace:(0,K.useMemo)(()=>{if(!e.enabled||!t||!n||r.length===0)return null;let i=n;return e=>it(i,e)},[e.enabled,t,n,r.length]),workspaceOpenTargets:r}}var zi=`Failed to open file locally`,Bi=`Localhost is disconnected.`,Vi=`No local editor is available.`;function Hi(e){return e.hasDaemon?Vi:Bi}function Ui(e){let{hasDaemon:t}=dt(),{openWorkspace:n,workspaceOpenTargets:r}=Ri(e),[i,a]=st(),o=(0,K.useMemo)(()=>ht({preferredTargetId:i,targets:r}),[i,r]),s=(0,K.useCallback)(async e=>{if(!r.find(t=>t.id===e.targetId)||!n)return Qt.error(zi,{description:Hi({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 Qt.error(zi,{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}):(Qt.error(zi,{description:Hi({hasDaemon:t})}),!1),[t,s,o]);return{canOpenPreferredTarget:o!==null,openPathInPreferredTarget:c,openPathInTarget:s,preferredTarget:o,workspaceOpenTargets:r}}function Wi(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 Gi(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 Ki(e,t){if(!e)throw Error(`${t}: thread id is required when query is enabled`);return e}function qi(e,t){return F({queryKey:S(e),queryFn:({signal:t})=>N(Ki(e,`useThreadTerminals`),t),enabled:(t?.enabled??!0)&&!!e,refetchOnWindowFocus:!1})}function Ji(){let e=i();return B({meta:{errorMessage:`Failed to start terminal.`},mutationFn:({threadId:e,...t})=>de(e,t),onSuccess:t=>{e.setQueryData(S(t.threadId),e=>Wi(e,t)),e.invalidateQueries({queryKey:S(t.threadId)})}})}function Yi(){let e=i();return B({meta:{errorMessage:`Failed to rename terminal.`},mutationFn:({terminalId:e,threadId:t,...n})=>x(t,e,n),onSuccess:t=>{e.setQueryData(S(t.threadId),e=>Wi(e,t)),e.invalidateQueries({queryKey:S(t.threadId)})}})}function Xi(){let e=i();return B({meta:{errorMessage:`Failed to close terminal.`},mutationFn:({mode:e,terminalId:t,threadId:n})=>v(n,t,{mode:e,reason:`user`}),onSuccess:(t,n)=>{e.setQueryData(S(t.threadId),e=>t.status===`exited`?Gi(e,n.terminalId):Wi(e,t)),e.invalidateQueries({queryKey:S(t.threadId)})}})}var Zi=`bb.thread.useStandardManagerTimeline`,Qi=`bb.thread.showAllEvents`;function $i(){return typeof window>`u`?null:window.localStorage}function ea(e,t){return e===`true`?!0:e===`false`?!1:t}function ta({currentValue:e,initialValue:t,legacyValue:n}){return ea(e===null?n:e,t)}var na=$e({parse:ea,serialize:e=>String(e)}),ra=et(Zi,!1,{getItem:(e,t)=>{let n=$i();return ta({currentValue:n?.getItem(e)??null,legacyValue:n?.getItem(Qi)??null,initialValue:t})},removeItem:e=>{na.removeItem(e)},setItem:(e,t)=>{na.setItem(e,t)},subscribe:na.subscribe},{getOnInit:!0});function ia(){return rt(ra)}function aa(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 oa(e,t){return{label:e,summary:t,summaryContent:t}}function sa(e,t){if(!e){let e=t?.error instanceof n&&t.error.code===`path_not_found`;return t?.workspaceDeleted||e?oa(`Unknown`,`Workspace not found.`):oa(`Unknown`,`Workspace status unavailable.`)}let r=t?.mergeBaseBranch??e.mergeBase?.mergeBaseBranch,i=t?.showBranchComparison?aa(e,r):null;switch(e.workingTree.state){case`clean`:return(e.mergeBase?.aheadCount??0)>0&&(e.mergeBase?.behindCount??0)>0?oa(`Diverged`,i??`Branch has diverged.`):(e.mergeBase?.aheadCount??0)>0?oa(`Ahead`,i??`Local commits pending merge.`):(e.mergeBase?.behindCount??0)>0?oa(`Behind`,i??`Branch is behind its merge base.`):oa(t?.showBranchComparison?`Up to date`:`Clean`,r?`No local changes relative to ${r}.`:`No local changes.`);case`untracked`:return oa(`Untracked`,i??``);case`dirty_uncommitted`:return oa(`Dirty`,i??``);case`committed_unmerged`:return(e.mergeBase?.aheadCount??0)>0&&(e.mergeBase?.behindCount??0)>0?oa(`Diverged`,i??`Branch has diverged.`):(e.mergeBase?.behindCount??0)>0?oa(`Behind`,i??`Branch is behind its merge base.`):oa(`Ahead`,i??`Local commits pending merge.`);case`dirty_and_committed_unmerged`:return oa(`Dirty`,i??``);default:return y(e.workingTree.state)}}var ca=tt(!1),la=et(`bb.thread.secondaryPanel.widthPercent`,50,$e({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}),ua=tt(new Set),da=tt(new Set),fa=tt(void 0),pa=tt(null);function ma({activeSecondaryPanel:e,clearActiveFileTabs:t,defaultMergeBaseBranch:n,environmentId:r,mergeBaseBranchOptionsEnabled:i=!1,setThreadSecondaryPanel:a}){let o=ut(fa),s=nt(fa),c=nt(pa),{data:l,isLoading:u}=_i(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 ha(e){return!!e.threadId&&e.inlineRowCount===0&&e.cachedRowCount===0&&!e.isLoading}function ga(e){return{sourceSeqEnd:e.sourceSeqEnd,sourceSeqStart:e.sourceSeqStart,turnId:e.turnId}}function _a(e,t){return e.turnId===t.turnId&&e.sourceSeqStart===t.sourceSeqStart&&e.sourceSeqEnd===t.sourceSeqEnd}function va(e){let t={},n=e=>{for(let r of e){if(r.kind===`turn`){t[r.id]=ga(r),r.children&&n(r.children);continue}r.kind===`work`&&r.workKind===`delegation`&&n(r.childRows)}};return n(e),t}function ya({candidateRowIds:e,previousRangesById:t,visibleRangesById:n}){let r=new Set;for(let i of e){let e=n[i],a=t[i];(!e||a&&!_a(a,e))&&r.add(i)}return r}function ba(e,t){let n=null;for(let r of t)e.has(r)&&(n??=new Set(e),n.delete(r));return n}function xa(e,t){let n=null;for(let r of t)r in e&&(n??={...e},delete n[r]);return n}function Sa({currentLoadGeneration:e,request:t,visibleRangesById:n}){if(e!==t.loadGeneration)return!1;let r=n[t.rowId];return r!==void 0&&_a(r,t.range)}function Ca({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=va(n),t=ya({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=ba(c.current,t);r&&(c.current=r);let i=ba(l.current,t);i&&(l.current=i,p(i));let a=ba(u.current,t);a&&(u.current=a,h(a));let o=xa(d.current,t);o&&(d.current=o,_(o))},[n]);let v=(0,K.useCallback)(e=>{let t=o.current,n={loadGeneration:i.current,range:ga(e),rowId:e.id},r=c.current,f=s.current[e.id];if(f===void 0||!_a(f,n.range)||r.has(e.id)||!ha({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(!Sa({currentLoadGeneration:i.current,request:n,visibleRangesById:s.current}))return;let r={...d.current,[e.id]:t.rows};d.current=r,_(r)}).catch(()=>{if(!Sa({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(!Sa({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 wa({managerTimelineView:e,timelineRows:t,threadId:n}){let{mutateAsync:r}=Oe();return Ca({managerTimelineView:e,timelineRows:t,threadId:n,loadTurnSummaryRows:(0,K.useCallback)(t=>r({...t,managerTimelineView:e}),[r,e])})}var Ta=fe;function Ea({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=pe(),_=g?`PanelBottom`:`PanelRight`;return(0,q.jsx)(rn,{center:(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(`p`,{className:`truncate text-sm font-semibold`,children:f}),r?(0,q.jsx)(yr,{variant:`outline`,children:`manager`}):null,!r&&n?(0,q.jsx)(yr,{variant:`outline`,children:`managed`}):null]}),actions:(0,q.jsxs)(q.Fragment,{children:[p,m&&h.length>0?(0,q.jsx)(br,{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)(z,{type:`button`,variant:`outline`,size:`sm`,disabled:o,className:Ta,onClick:()=>s(m.target),children:m.label}):null,u?(0,q.jsxs)(z,{type:`button`,variant:`ghost`,size:`icon`,className:`${Ot} 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)(P,{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)(z,{type:`button`,variant:`ghost`,size:`icon`,className:Ot,"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)(P,{name:_})})]})})}function Da(){let e=i();return B({meta:{errorMessage:`Failed to resolve pending interaction.`,showErrorToast:!1},mutationFn:({threadId:e,interactionId:t,resolution:n})=>a(e,t,n),onSuccess:(t,n)=>(gt({queryClient:e,threadId:n.threadId}),t)})}var Oa=[];function ka(){return{freeTextByQuestionId:{},selectedValuesByQuestionId:{}}}function Aa({formState:e,question:t}){return e.selectedValuesByQuestionId[t.id]??Oa}function ja({formState:e,question:t}){return e.freeTextByQuestionId[t.id]??``}function Ma({question:e,selectedValues:t}){let n=new Set((e.options??[]).map(e=>e.value));return t.filter(e=>n.has(e))}function Na({optionValue:e,question:t,selectedValues:n}){return t.multiSelect?n.includes(e)?n.filter(t=>t!==e):[...n,e]:[e]}function Pa(e,t){let n=Aa({formState:e,question:t.question});return{...e,selectedValuesByQuestionId:{...e.selectedValuesByQuestionId,[t.question.id]:Na({optionValue:t.optionValue,question:t.question,selectedValues:n})}}}function Fa(e,t){return{...e,freeTextByQuestionId:{...e.freeTextByQuestionId,[t.questionId]:t.value}}}function Ia({formState:e,question:t}){return Ma({question:t,selectedValues:Aa({formState:e,question:t})}).length>0?!0:t.allowFreeText&&ja({formState:e,question:t}).trim().length>0}function La({formState:e,questions:t}){let n={};for(let r of t){let t=Ma({question:r,selectedValues:Aa({formState:e,question:r})}),i=ja({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 Ra({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 za({checked:e,disabled:t,inputName:n,onOptionToggle:r,option:i,question:a}){let o=a.multiSelect?`checkbox`:`radio`;return(0,q.jsxs)(`label`,{className:L(`flex min-w-0 cursor-pointer items-start gap-2 rounded-md border px-3 py-2 transition-colors`,e?`border-surface-selected-border bg-surface-selected text-foreground`:`border-border bg-surface-raised 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 Ba({disabled:e,formState:t,interactionId:n,onFreeTextChange:r,onOptionToggle:i,onSubmit:a,question:o}){let s=Aa({formState:t,question:o}),c=ja({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)(Ra,{question:o}),u.length>0?(0,q.jsx)(`div`,{className:`grid gap-2`,children:u.map(t=>(0,q.jsx)(za,{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 Va({interactionId:e,questions:t,threadId:n}){let[r,i]=(0,K.useState)(ka),a=Da();(0,K.useEffect)(()=>{i(ka())},[e]);let o=(0,K.useMemo)(()=>t.length>0&&t.every(e=>Ia({formState:r,question:e})),[r,t]),s=a.error?fn({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=La({formState:r,questions:t});a.mutateAsync({threadId:n,interactionId:e,resolution:i}).catch(()=>{})},updateFreeTextAnswer:e=>{i(t=>Fa(t,e))},updateSelectedAnswer:e=>{i(t=>Pa(t,e))}}}function Ha({className:e,interactionId:t,isResolving:n=!1,questions:r,threadId:i}){let{disabled:a,formState:o,mutationErrorMessage:s,submitAnswer:c,updateFreeTextAnswer:l,updateSelectedAnswer:u}=Va({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?Ia({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:L(`space-y-3`,e),onSubmit:e=>{e.preventDefault(),y()},children:[m>1?(0,q.jsx)(Ua,{currentIndex:f,totalQuestions:m}):null,(0,q.jsx)(Ba,{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)(z,{type:`button`,size:`sm`,variant:`outline`,disabled:d,onClick:v,children:`Back`}):null,(0,q.jsxs)(z,{type:`submit`,size:`sm`,disabled:d||!_,children:[n?(0,q.jsx)(P,{name:`Spinner`,className:`size-3 animate-spin`}):null,g?`Submit answer`:`Next`]})]}),s?(0,q.jsx)(`div`,{className:`rounded-md border border-surface-destructive-border bg-surface-destructive px-3 py-2 text-xs text-destructive`,children:s}):null]}):null}function Ua({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:L(`size-1.5 rounded-full transition-colors`,n===e?`bg-foreground`:n<e?`bg-foreground/60`:`bg-foreground/25`)},n))})]})}function Wa({interaction:e,threadId:n}){return ee(e.payload)?(0,q.jsx)(qa,{interaction:e,payload:e.payload,threadId:n}):t(e.payload)?(0,q.jsx)(Ka,{interaction:e,payload:e.payload,threadId:n}):y(e.payload)}function Ga({title:e,errorMessage:t,footer:n,children:r}){return(0,q.jsxs)(`div`,{className:`mb-2 rounded-lg border border-border bg-surface-recessed 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)(jt,{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-surface-destructive-border bg-surface-destructive px-2 py-1 text-xs text-destructive`,children:t}):null]})}function Ka({interaction:e,payload:t,threadId:n}){let r=Da(),i=e.status===`resolving`,a=Xa(e.resolution),o=(0,K.useMemo)(()=>Za({interaction:e,payload:t}),[e,t]),s=r.error?fn({error:r.error,fallbackMessage:`Failed to resolve pending interaction.`}):null,c=r.isPending||i,l=t=>{let i=O(e,t);r.mutateAsync({threadId:n,interactionId:e.id,resolution:i}).catch(()=>{})};return(0,q.jsx)(Ga,{title:o.title,errorMessage:s,footer:t.availableDecisions.map(e=>(0,q.jsx)(Ja,{decision:e,disabled:c,isLoading:i&&a===e,onClick:()=>l(e)},e)),children:o.body})}function qa({interaction:e,payload:t,threadId:n}){let r=e.status===`resolving`;return(0,q.jsx)(Ga,{title:ae({interaction:e,surface:`app`}),children:(0,q.jsx)(Ha,{interactionId:e.id,isResolving:r,questions:t.questions,threadId:n})})}function Ja({decision:e,disabled:t,isLoading:n,onClick:r}){return(0,q.jsxs)(z,{type:`button`,size:`sm`,variant:Ya(e),disabled:t,onClick:r,children:[n?(0,q.jsx)(P,{name:`Spinner`,className:`size-3 animate-spin`}):null,Qa(e)]})}function Ya(e){switch(e){case`allow_once`:return`default`;case`allow_for_session`:return`outline`;case`deny`:return`ghost`}}function Xa(e){return!e||`kind`in e?null:e.decision}function Za({interaction:e,payload:t}){switch(t.subject.kind){case`command`:{let n=t.subject.command,r=n?Nt(n)??n:null,i=E(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:L(Lt(`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 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=E(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=E(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 y(t.subject)}}function Qa(e){switch(e){case`allow_once`:return`Allow once`;case`allow_for_session`:return`Allow for session`;case`deny`:return`Deny`}}var $a=`rounded-md border border-border bg-surface-recessed`;function eo({children:e,ariaLabel:t,className:n,style:r}){return t?(0,q.jsx)(`section`,{"aria-label":t,className:L($a,n),style:r,children:e}):(0,q.jsx)(`div`,{className:L($a,n),style:r,children:e})}var to=new Set([`active`,`host-reconnecting`,`waiting-for-host`]);function no(e){return to.has(e)}var ro={uncommitted:`Uncommitted`,untracked:`Untracked`,committed:`Committed`},io={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`}},ao={in_progress:0,pending:1,completed:2};function oo(e){return e.items.length>0}function so(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 co({className:e}){return(0,q.jsx)(P,{name:`ChevronDown`,className:L(`size-3.5 shrink-0 rotate-45`,e),"aria-hidden":`true`})}function lo({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:L(`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`:`text-muted-foreground`),children:[r,i==null?null:(0,q.jsx)(`span`,{className:`min-w-0 truncate`,children:i}),(0,q.jsx)(P,{name:`ChevronDown`,className:L(`size-3.5 shrink-0 text-subtle-foreground transition-transform duration-200`,a&&`rotate-180`),"aria-hidden":`true`})]})}function uo({status:e}){let t=`size-3.5 shrink-0`;switch(e){case`in_progress`:return(0,q.jsx)(P,{name:`Square`,className:L(t,`fill-current text-muted-foreground/30`),"aria-hidden":`true`});case`completed`:return(0,q.jsx)(P,{name:`Check`,className:L(t,`text-muted-foreground/60`),"aria-hidden":`true`});case`pending`:return(0,q.jsx)(P,{name:`Square`,className:L(t,`text-muted-foreground/45`),"aria-hidden":`true`})}}function fo({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)=>ao[e.status]-ao[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)(uo,{status:e.status}),(0,q.jsx)(`span`,{className:L(`min-w-0 flex-1 truncate`,e.status===`in_progress`&&`font-medium text-foreground`,e.status===`pending`&&`text-muted-foreground`,e.status===`completed`&&`text-subtle-foreground line-through decoration-subtle-foreground`),title:e.text,children:e.text})]},e.id))})}function po({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 mo({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)(co,{className:`text-subtle-foreground no-underline`}),(0,q.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:e.title})]})},e.id))})}function ho({id:e,labelledBy:t,isExpanded:n,children:r}){return(0,q.jsx)(`section`,{id:e,role:`region`,"aria-labelledby":t,"aria-hidden":!n,className:L(`grid overflow-hidden transition-[grid-template-rows,opacity,border-color] duration-200 ease-out`,n?`grid-rows-[1fr] border-t border-border 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 go({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)(eo,{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)(lo,{id:io.managedBy.toggle,controlsId:io.managedBy.body,ariaLabel:`Managed by ${i.managerName}`,icon:(0,q.jsx)(P,{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)(P,{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)(ho,{id:io.managedBy.body,labelledBy:io.managedBy.toggle,isExpanded:e,children:(0,q.jsx)(po,{managerName:i.managerName,href:i.href})}):null]})}let c=e!==null&&oo(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:[ro[t.changedFiles.kind],` · `]}),Ci(bi(t.changedFiles.stats))]}):null,v=l&&t.mergeBase?Xn({mergeBaseBranch:t.mergeBase.branch,mergeBaseBranchOptions:t.mergeBase.options}):[],y=u&&!c&&!l&&!d;return(0,q.jsxs)(eo,{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)(P,{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)(lo,{id:io.managedBy.toggle,controlsId:io.managedBy.body,ariaLabel:`Managed by ${i.managerName}`,icon:(0,q.jsx)(P,{name:`UserRound`,className:`size-3.5 shrink-0`,"aria-hidden":`true`}),label:null,isExpanded:h,onToggle:()=>s(`managedBy`)}):null,d&&a?(0,q.jsx)(lo,{id:io.managerChildren.toggle,controlsId:io.managerChildren.body,icon:(0,q.jsx)(P,{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)(lo,{id:io.todos.toggle,controlsId:io.todos.body,icon:(0,q.jsx)(P,{name:`ListTodo`,className:`size-3.5 shrink-0`,"aria-hidden":`true`}),label:so(f),isExpanded:p,onToggle:()=>s(`todos`)}):null,l&&_?(0,q.jsx)(lo,{id:io.git.toggle,controlsId:io.git.body,icon:(0,q.jsx)(P,{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`,children:[(0,q.jsx)(`span`,{className:`shrink-0`,children:`Merge base:`}),(0,q.jsx)(kn,{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)(ho,{id:io.managedBy.body,labelledBy:io.managedBy.toggle,isExpanded:h,children:(0,q.jsx)(po,{managerName:i.managerName,href:i.href})}):null,d&&a?(0,q.jsx)(ho,{id:io.managerChildren.body,labelledBy:io.managerChildren.toggle,isExpanded:g,children:(0,q.jsx)(mo,{items:a.items})}):null,c?(0,q.jsx)(ho,{id:io.todos.body,labelledBy:io.todos.toggle,isExpanded:p,children:(0,q.jsx)(fo,{items:f})}):null,l?(0,q.jsx)(ho,{id:io.git.body,labelledBy:io.git.toggle,isExpanded:m,children:(0,q.jsx)(Di,{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 _o=220;function vo(e){let t=e.trim();return t.length===0?`Attachment`:$n(t)}function yo(e){let t=0;for(let n of e)(n.type===`localImage`||n.type===`localFile`)&&(t+=1);return t}function bo(e){let t=e.filter(e=>e.type===`text`).map(e=>e.text.trim()).filter(e=>e.length>0).join(`
|
|
2
|
-
|
|
3
|
-
`).trim();if(t.length>0)return t.length<=_o?t:`${t.slice(0,_o-1)}...`;let n=yo(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 (${vo(t.path)})`:`Attachment only (1 file)`}return n>1?`Attachment only (${n} files)`:`(empty message)`}function xo(e){return ur(e)}var So=(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)(()=>bo(e.content),[e.content]),l=(0,K.useMemo)(()=>yo(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)(P,{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)(z,{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)(z,{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)(P,{name:`Edit`,className:`size-3.5`})}),(0,q.jsx)(z,{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)(P,{name:`Trash2`,className:`size-3.5`})})]})]})})});function Co({queuedMessages:e,sendDisabled:t,actionDisabled:n,processingMessageId:r,onSendImmediately:i,onEdit:a,onDelete:o}){return e.length===0?null:(0,q.jsxs)(eo,{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)(So,{queuedMessage:e,index:s,isProcessing:r===e.id,sendDisabled:t,actionDisabled:n,onSendImmediately:i,onEdit:a,onDelete:o},e.id))})]})}var wo=(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)(mr,{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 lg:inline`,children:[`· `,t]}):null,n===void 0?null:(0,q.jsx)(bn,{connected:n,className:`translate-y-px`})]}),leading:r?(0,q.jsx)(P,{name:r,className:`size-4 shrink-0`}):null,className:`h-6 shrink-0`,muted:!0}):n===void 0?null:(0,q.jsx)(bn,{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 transition-colors hover:bg-state-hover hover:text-foreground md:flex`,title:`Copy branch name: ${i}`,onClick:()=>{un(i,{successMessage:`Branch name copied`,errorMessage:`Failed to copy branch name`})},children:[(0,q.jsx)(P,{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 transition-colors hover:bg-state-hover hover:text-foreground`,children:(0,q.jsx)(P,{name:`MessageSquarePlus`,className:`size-4`})}):null]})});function To({visible:e,active:t=!1,onClick:n,className:r,ariaLabel:i=`Scroll to latest event`}){return(0,q.jsx)(`div`,{className:L(`flex h-0 items-center justify-center`,r),children:(0,q.jsx)(`button`,{onClick:n,className:L(`z-20 -mt-20 flex size-8 items-center justify-center rounded-full border border-border bg-surface-scrim backdrop-blur-md transition-all duration-200 hover:bg-state-hover`,e?`translate-y-0 opacity-100`:`pointer-events-none translate-y-2 opacity-0`),"aria-label":i,type:`button`,children:t?(0,q.jsx)(Eo,{}):(0,q.jsx)(P,{name:`ArrowDown`,className:`size-4`})})})}function Eo(){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 Do({active:e}){let t=ne();return t?(0,q.jsx)(To,{visible:!t.isAtBottom,active:e,onClick:t.scrollToBottom}):null}function Oo({onSubmit:e,submission:t,...n}){let r=ne(),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)(Nn,{...n,onSubmit:i,submission:o})}var ko=68,Ao=ko+32,jo=(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=Un(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(ko,Ao-y);return(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(Do,{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)(Oo,{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)(gr,{...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)(wn,{value:o.value,options:o.options,onChange:o.onChange,supported:o.supported,className:`h-6`}),i?(0,q.jsx)(Et,{usage:i}):null]})]})]})]})});function Mo(e){return e===`active`||e===`host-reconnecting`}function No({hasPromptDraftInput:e,isFollowUpSubmitting:t,isQueueMutationPending:n,queuedMessageCount:r,runtimeDisplayStatus:i,submitModeKind:a}){return i===`active`&&a===`queue`&&!t&&!n&&(r>0||e)}function Po({input:e,threadId:t,...n}){return e.length===0?null:{id:t,input:e,mode:`auto`,...n.model?{model:n.model}:{},...Ro(n)}}function Fo({input:e,threadId:t}){return e.length===0?null:{id:t,input:e,mode:`steer`}}function Io({input:e,threadId:t,...n}){return e.length===0?null:{id:t,input:e,model:n.model,...Ro(n)}}function Lo({queuedMessages:e,threadId:t}){return e.map(e=>({id:t,mode:`steer`,queuedMessageId:e.id}))}function Ro({permissionMode:e,reasoningLevel:t,serviceTier:n,supportsServiceTier:r}){return{...r&&n?{serviceTier:n}:{},reasoningLevel:t,permissionMode:e}}function zo(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 threads, files, or folders`:`Ask for follow-up changes. @ to mention files, or folders`;default:return y(e)}}function Bo({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}=Ce(C.id,{enabled:t,refetchOnMount:n,staleTime:r}),{data:T=[]}=Ie(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=[]}=Ae(C.id,{enabled:t,refetchOnMount:n,staleTime:r}),O=vn(),k=Sn(),A=qn(),j=Vn(),M=ft(),N=Fn({projectId:h,threadId:C.id}),P=Gn(h,{threadSuggestionMode:C.type===`manager`?`all`:`managers`,currentThreadId:C.id,currentThreadType:C.type,environmentId:C.environmentId??null}),[F,I]=(0,K.useState)(null),[ee,te]=(0,K.useState)(null),[L,ne]=(0,K.useState)(null),[re,ie]=(0,K.useState)(!1),ae=(0,K.useMemo)(()=>sr(D),[D]),{selectedProviderId:R,providerOptions:oe,hasMultipleProviders:se,selectedProviderDisplayName:z,selectedModel:ce,setSelectedModel:B,serviceTier:le,setServiceTier:ue,reasoningLevel:de,setReasoningLevel:fe,permissionMode:pe,setPermissionMode:me,activeModel:he,modelOptions:ge,reasoningOptions:V,permissionModeOptions:_e,supportsPermissionModeSelection:ve,supportsServiceTier:H,serviceTierSupportByProvider:ye}=tn({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}),U=C.runtime.displayStatus,be=U===`created`,xe=U===`provisioning`,Se=U===`waiting-for-host`,we=C.stopRequestedAt!==null||j.isPending&&j.variables===C.id,Te=Fe(f),Ee=Te!==null,De=O.isPending||k.isPending||A.isPending||re,Oe=S.isPending||d||O.isPending||re,ke=(0,K.useCallback)(()=>{j.mutate(C.id)},[j,C.id]),je=(0,K.useMemo)(()=>we?{kind:`blocked`,reason:`stopping`}:Ee?{kind:`blocked`,reason:`pending-interaction`}:be||xe?{kind:`blocked`,reason:`provisioning`}:Se?{kind:`stop-only`,onStop:ke}:U===`active`||U===`host-reconnecting`?{kind:`queue`,onStop:ke}:{kind:`ready`},[ke,Ee,be,xe,we,Se,U]),Me=we?`Stopping thread...`:zo(U,C.type===`manager`),Ne=(0,K.useMemo)(()=>({text:N.text,attachments:N.attachments}),[N.attachments,N.text]),Pe=(0,K.useMemo)(()=>gn(Ne),[Ne]),Le=No({hasPromptDraftInput:Pe.length>0,isFollowUpSubmitting:Oe,isQueueMutationPending:De,queuedMessageCount:T.length,runtimeDisplayStatus:U,submitModeKind:je.kind}),Re=(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]),ze=(0,K.useCallback)(async()=>{let e=Ne,t=Pe;if(t.length===0)return;N.clearIfCurrentMatches(e),I(null);let n=Mo(U);try{if(n){let e=Io({threadId:C.id,input:t,model:he?.model??ce,supportsServiceTier:H,serviceTier:le,reasoningLevel:de,permissionMode:pe});e&&await O.mutateAsync(e)}else{let e=Po({threadId:C.id,input:t,model:he?.model??ce,supportsServiceTier:H,serviceTier:le,reasoningLevel:de,permissionMode:pe});e&&await S.mutateAsync(e)}}catch(t){N.restoreIfEmpty(e),Qt.error(fn({error:t,fallbackMessage:n?`Failed to queue message.`:`Failed to send follow-up.`}))}},[he?.model,O,Ne,Pe,N,de,pe,ce,S,le,H,C.id,U]),Be=(0,K.useCallback)(async()=>{if(!Le)return;let e=Ne,t=Pe;if(!(T.length===0&&t.length===0)){ie(!0),t.length>0&&N.clearIfCurrentMatches(e),I(null);try{for(let e of Lo({queuedMessages:T,threadId:C.id}))await k.mutateAsync(e);let e=Fo({input:t,threadId:C.id});e&&await S.mutateAsync(e)}catch(t){N.restoreIfEmpty(e),Qt.error(fn({error:t,fallbackMessage:`Failed to send steer.`}))}finally{ie(!1)}}},[Le,Ne,Pe,N,T,S,k,C.id]),Ve=(0,K.useCallback)(e=>{E.current.has(e)&&(ne(e),k.mutateAsync({id:C.id,mode:`auto`,queuedMessageId:e}).then(()=>{I(null)}).catch(e=>{Qt.error(fn({error:e,fallbackMessage:`Failed to send queued message.`}))}).finally(()=>{ne(t=>t===e?null:t)}))},[k,C.id]),He=(0,K.useCallback)(e=>{let t=E.current.get(e);t&&(ne(e),A.mutateAsync({id:C.id,queuedMessageId:e}).then(()=>{let e=xo(t.content);N.setDraft(e),I(null)}).catch(e=>{Qt.error(fn({error:e,fallbackMessage:`Failed to edit queued message.`}))}).finally(()=>{ne(t=>t===e?null:t)}))},[A,N,C.id]),Ue=(0,K.useCallback)(e=>{ne(e),A.mutateAsync({id:C.id,queuedMessageId:e}).catch(e=>{Qt.error(fn({error:e,fallbackMessage:`Failed to delete queued message.`}))}).finally(()=>{ne(t=>t===e?null:t)})},[A,C.id]),We=(0,K.useCallback)(e=>{p(e)},[p]),Ge=(0,K.useCallback)(e=>{te(t=>t===e?null:e)},[]),Ke=(0,K.useMemo)(()=>({items:N.attachments,projectId:h,isAttaching:M.isPending,error:F,onAttachFiles:Re,onRemove:N.removeAttachment}),[F,Re,h,N.attachments,N.removeAttachment,M.isPending]),qe=(0,K.useMemo)(()=>({history:{currentDraft:Ne,entries:ae,onSelectEntry:N.setDraft,resetKey:C.id},isFollowUpSubmitting:Oe,message:N.text,onChangeMessage:N.setText,onSteerSubmit:Be,onSubmit:ze,promptPlaceholder:Me,canSteerSubmit:Le,submitMode:je,threadRuntimeDisplayStatus:U}),[Le,Ne,ze,Be,Oe,N.setDraft,N.setText,N.text,ae,Me,U,je,C.id]),Je=(0,K.useMemo)(()=>({provider:{options:oe,selectedId:R,hasMultiple:se,displayName:z},model:{active:he,selected:ce,options:ge,onChange:B},serviceTier:{value:le,onChange:ue,supported:H,supportByProvider:ye},reasoning:{value:de,options:V,onChange:fe}}),[he,se,ge,oe,de,V,ce,z,R,le,ye,fe,B,ue,H]),Ye=(0,K.useMemo)(()=>({value:pe,options:_e,onChange:me,supported:ve}),[pe,_e,me,ve]),Xe=(0,K.useMemo)(()=>({suggestions:P.suggestions,threadSectionMode:P.threadSectionMode,isLoading:P.isLoading,isError:P.isError,onQueryChange:P.setQuery}),[P.isError,P.isLoading,P.setQuery,P.suggestions,P.threadSectionMode]),W=(0,K.useMemo)(()=>l||o!==void 0?(0,q.jsx)(wo,{environmentLabel:l,environmentHostLabel:s,environmentHostConnected:o,environmentIcon:c,environmentBranchName:a,onCreateNewThreadInWorktree:u}):null,[a,o,s,c,l,u]);return Te?(0,q.jsx)(Wa,{interaction:Te,threadId:C.id}):(0,q.jsx)(jo,{attachments:Ke,stack:(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(go,{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?We:()=>{}}:null,gitSectionPending:_,expandedSection:ee,onToggleSection:Ge}),(0,q.jsx)(Co,{queuedMessages:T,sendDisabled:!(je.kind===`ready`||je.kind===`queue`)||Oe||De,actionDisabled:De,processingMessageId:L,onSendImmediately:Ve,onEdit:He,onDelete:Ue})]}),composer:qe,zenModeResetKey:C.id,environmentSummary:W,contextWindowUsage:i??null,execution:Je,permission:Ye,mentions:Xe})}var Vo=d((e=>{Object.defineProperty(e,`__esModule`,{value:!0});var t=ie();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&te)!==0,n=(t&L)!==0,r=(t&ne)!==0,i=(t&re)!==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 w(e){return e.type===`keydown`}function T(e){return e.type.startsWith(`pointer`)}function E(e){return e.type.startsWith(`mouse`)}function D(e){if(T(e)){if(e.isPrimary)return{x:e.clientX,y:e.clientY}}else if(E(e))return{x:e.clientX,y:e.clientY};return{x:1/0,y:1/0}}function O(){if(typeof matchMedia==`function`)return matchMedia(`(pointer:coarse)`).matches?`coarse`:`fine`}function k(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 A(e,t){if(e===t)throw Error(`Cannot compare node with itself`);let n={a:I(e),b:I(t)},r;for(;n.a.at(-1)===n.b.at(-1);)e=n.a.pop(),t=n.b.pop(),r=e;H(r,`Stacking order can only be calculated for elements with a common ancestor`);let i={a:F(P(n.a)),b:F(P(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 j=/\b(?:position|zIndex|opacity|transform|webkitTransform|mixBlendMode|filter|webkitFilter|isolation)\b/;function M(e){let t=getComputedStyle(ee(e)??e).display;return t===`flex`||t===`inline-flex`}function N(e){let t=getComputedStyle(e);return!!(t.position===`fixed`||t.zIndex!==`auto`&&(t.position!==`static`||M(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`||j.test(t.willChange)||t.webkitOverflowScrolling===`touch`)}function P(e){let t=e.length;for(;t--;){let n=e[t];if(H(n,`Missing node`),N(n))return n}return null}function F(e){return e&&Number(getComputedStyle(e).zIndex)||0}function I(e){let t=[];for(;e;)t.push(e),e=ee(e);return t}function ee(e){let{parentNode:t}=e;return t&&t instanceof ShadowRoot?t.host:t}var te=1,L=2,ne=4,re=8,ae=O()===`coarse`,R=[],oe=!1,se=new Map,z=new Map,ce=new Set;function B(e,t,n,r,i){let{ownerDocument:a}=t,o={direction:n,element:t,hitAreaMargins:r,setResizeHandlerState:i},s=se.get(a)??0;return se.set(a,s+1),ce.add(o),V(),function(){z.delete(e),ce.delete(o);let t=se.get(a)??1;if(se.set(a,t-1),V(),t===1&&se.delete(a),R.includes(o)){let e=R.indexOf(o);e>=0&&R.splice(e,1),he(),i(`up`,!0,null)}}}function le(e){let{target:t}=e,{x:n,y:r}=D(e);oe=!0,pe({target:t,x:n,y:r}),V(),R.length>0&&(_e(`down`,e),e.preventDefault(),fe(t)||e.stopImmediatePropagation())}function ue(e){let{x:t,y:n}=D(e);if(oe&&e.buttons===0&&(oe=!1,_e(`up`,e)),!oe){let{target:r}=e;pe({target:r,x:t,y:n})}_e(`move`,e),he(),R.length>0&&e.preventDefault()}function de(e){let{target:t}=e,{x:n,y:r}=D(e);z.clear(),oe=!1,R.length>0&&(e.preventDefault(),fe(t)||e.stopImmediatePropagation()),_e(`up`,e),pe({target:t,x:n,y:r}),he(),V()}function fe(e){let t=e;for(;t;){if(t.hasAttribute(o.resizeHandle))return!0;t=t.parentElement}return!1}function pe({target:e,x:t,y:n}){R.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=ae?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)&&A(r,i)>0){let e=r,t=!1;for(;e&&!e.contains(i);){if(k(e.getBoundingClientRect(),o,!0)){t=!0;break}e=e.parentElement}if(t)return}R.push(e)}})}function me(e,t){z.set(e,t)}function he(){let e=!1,t=!1;R.forEach(n=>{let{direction:r}=n;r===`horizontal`?e=!0:t=!0});let n=0;z.forEach(e=>{n|=e}),e&&t?C(`intersection`,n):e?C(`horizontal`,n):t?C(`vertical`,n):S()}var ge=new AbortController;function V(){ge.abort(),ge=new AbortController;let e={capture:!0,signal:ge.signal};ce.size&&(oe?(R.length>0&&se.forEach((t,n)=>{let{body:r}=n;t>0&&(r.addEventListener(`contextmenu`,de,e),r.addEventListener(`pointerleave`,ue,e),r.addEventListener(`pointermove`,ue,e))}),window.addEventListener(`pointerup`,de,e),window.addEventListener(`pointercancel`,de,e)):se.forEach((t,n)=>{let{body:r}=n;t>0&&(r.addEventListener(`pointerdown`,le,e),r.addEventListener(`pointermove`,ue,e))}))}function _e(e,t){ce.forEach(n=>{let{setResizeHandlerState:r}=n;r(e,R.includes(n),t)})}function ve(){let[e,n]=t.useState(0);return t.useCallback(()=>n(e=>e+1),[])}function H(e,t){if(!e)throw console.error(t),Error(t)}function ye(e,t,n=s){return e.toFixed(n)===t.toFixed(n)?0:e>t?1:-1}function U(e,t,n=s){return ye(e,t,n)===0}function be(e,t,n){return ye(e,t,n)===0}function xe(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(!be(i,a,n))return!1}return!0}function Se({panelConstraints:e,panelIndex:t,size:n}){let r=e[t];H(r!=null,`Panel constraints not found for index ${t}`);let{collapsedSize:i=0,collapsible:a,maxSize:o=100,minSize:c=0}=r;if(ye(n,c)<0)if(a){let e=(i+c)/2;n=ye(n,e)<0?i:c}else n=c;return n=Math.min(o,n),n=parseFloat(n.toFixed(s)),n}function Ce({delta:e,initialLayout:t,panelConstraints:n,pivotIndices:r,prevLayout:i,trigger:a}){if(be(e,0))return t;let o=[...t],[s,c]=r;H(s!=null,`Invalid first pivot index`),H(c!=null,`Invalid second pivot index`);let l=0;if(a===`keyboard`){{let r=e<0?c:s,i=n[r];H(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(H(n!=null,`Previous layout not found for panel index ${r}`),be(n,a)){let t=l-n;ye(t,Math.abs(e))>0&&(e=e<0?0-t:t)}}}{let r=e<0?s:c,i=n[r];H(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(H(n!=null,`Previous layout not found for panel index ${r}`),be(n,l)){let t=n-a;ye(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];H(e!=null,`Previous layout not found for panel index ${i}`);let o=Se({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];H(a!=null,`Previous layout not found for panel index ${r}`);let s=a-i,c=Se({panelConstraints:n,panelIndex:r,size:s});if(!be(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(xe(i,o))return i;{let r=e<0?c:s,i=t[r];H(i!=null,`Previous layout not found for panel index ${r}`);let a=i+l,u=Se({panelConstraints:n,panelIndex:r,size:a});if(o[r]=u,!be(u,a)){let t=a-u,r=e<0?c:s;for(;r>=0&&r<n.length;){let i=o[r];H(i!=null,`Previous layout not found for panel index ${r}`);let a=i+t,s=Se({panelConstraints:n,panelIndex:r,size:a});if(be(i,s)||(t-=s-i,o[r]=s),be(t,0))break;e>0?r--:r++}}}return be(o.reduce((e,t)=>t+e,0),100)?o:i}function we({layout:e,panelsArray:t,pivotIndices:n}){let r=0,i=100,a=0,o=0,s=n[0];return H(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 Te(e,t=document){return Array.from(t.querySelectorAll(`[${o.resizeHandleId}][data-panel-group-id="${e}"]`))}function Ee(e,t,n=document){return Te(e,n).findIndex(e=>e.getAttribute(o.resizeHandleId)===t)??null}function De(e,t,n){let r=Ee(e,t,n);return r==null?[-1,-1]:[r,r+1]}function Oe(e,t=document){return t instanceof HTMLElement&&t?.dataset?.panelGroupId==e?t:t.querySelector(`[data-panel-group][data-panel-group-id="${e}"]`)||null}function ke(e,t=document){return t.querySelector(`[${o.resizeHandleId}="${e}"]`)||null}function Ae(e,t,n,r=document){let i=ke(t,r),a=Te(e,r),o=i?a.indexOf(i):-1;return[n[o]?.id??null,n[o+1]?.id??null]}function je({committedValuesRef:e,eagerValuesRef:n,groupId:r,layout:i,panelDataArray:a,panelGroupElement:s,setLayout:l}){t.useRef({didWarnAboutMissingResizeHandle:!1}),c(()=>{if(!s)return;let e=Te(r,s);for(let t=0;t<a.length-1;t++){let{valueMax:n,valueMin:r,valueNow:o}=we({layout:i,panelsArray:a,pivotIndices:[t,t+1]}),s=e[t];if(s!=null){let e=a[t];H(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;H(e,`Eager values not found`);let{panelDataArray:t}=e;H(Oe(r,s)!=null,`No group found for id "${r}"`);let a=Te(r,s);H(a,`No resize handles found for group id "${r}"`);let c=a.map(e=>{let n=e.getAttribute(o.resizeHandleId);H(n,`Resize handle element has no handle id attribute`);let[a,c]=Ae(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];H(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=Ce({delta:be(a,c)?d-c:c-a,initialLayout:i,panelConstraints:t.map(e=>e.constraints),pivotIndices:De(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 Me(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 Ne(e,t){let n=e===`horizontal`,{x:r,y:i}=D(t);return n?r:i}function Pe(e,t,n,r,i){let a=n===`horizontal`,s=ke(t,i);H(s,`No resize handle element found for id "${t}"`);let c=s.getAttribute(o.groupId);H(c,`Resize handle element has no group id attribute`);let{initialCursorPosition:l}=r,u=Ne(n,e),d=Oe(c,i);H(d,`No group element found for id "${c}"`);let f=d.getBoundingClientRect(),p=a?f.width:f.height;return(u-l)/p*100}function Fe(e,t,n,r,i,a){if(w(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:Pe(e,t,n,r,a)}function Ie({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];H(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];H(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 Le(e,t,n){t.forEach((t,r)=>{let i=e[r];H(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||U(u,c))&&!U(t,c)&&r(),e&&(u==null||!U(u,c))&&U(t,c)&&e())}})}function Re(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 ze({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 Be(e,t=10){let n=null;return(...r)=>{n!==null&&clearTimeout(n),n=setTimeout(()=>{e(...r)},t)}}function Ve(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 He(e){return`react-resizable-panels:${e}`}function Ue(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 We(e,t){try{let n=He(e),r=t.getItem(n);if(r){let e=JSON.parse(r);if(typeof e==`object`&&e)return e}}catch{}return null}function Ge(e,t,n){return(We(e,n)??{})[Ue(t)]??null}function Ke(e,t,n,r,i){let a=He(e),o=Ue(t),s=We(e,i)??{};s[o]={expandToSizes:Object.fromEntries(n.entries()),layout:r};try{i.setItem(a,JSON.stringify(s))}catch(e){console.error(e)}}function qe({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(!be(r,100)&&n.length>0)for(let e=0;e<t.length;e++){let t=n[e];H(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];H(r!=null,`No layout data found for index ${e}`);let a=Se({panelConstraints:t,panelIndex:e,size:r});r!=a&&(i+=r-a,n[e]=a)}if(!be(i,0))for(let e=0;e<t.length;e++){let r=n[e];H(r!=null,`No layout data found for index ${e}`);let a=r+i,o=Se({panelConstraints:t,panelIndex:e,size:a});if(r!==o&&(i-=o-r,n[e]=o,be(i,0)))break}return n}var Je=100,Ye={getItem:e=>(Ve(Ye),Ye.getItem(e)),setItem:(e,t)=>{Ve(Ye),Ye.setItem(e,t)}},Xe={};function W({autoSaveId:e=null,children:n,className:r=``,direction:i,forwardedRef:s,id:l=null,onLayout:u=null,keyboardResizeBy:d=null,storage:p=Ye,style:m,tagName:h=`div`,...g}){let _=f(l),v=t.useRef(null),[y,b]=t.useState(null),[x,S]=t.useState([]),C=ve(),D=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=qe({layout:e,panelConstraints:r.map(e=>e.constraints)});Me(n,i)||(S(i),j.current.layout=i,t&&t(i),Le(r,i,D.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}),je({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=Xe[e];n??(n=Be(Ke,Je),Xe[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}=Qe(r,e,n);if(H(o!=null,`Panel size not found for panel "${e.id}"`),!U(o,a)){O.current.set(e.id,o);let c=Ce({delta:Ze(r,e)===r.length-1?o-a:a-o,initialLayout:n,panelConstraints:i,pivotIndices:s,prevLayout:n,trigger:`imperative-api`});Re(n,c)||(S(c),j.current.layout=c,t&&t(c),Le(r,c,D.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}=Qe(i,e,r),u=t??c;if(U(s,o)){let t=O.current.get(e.id),o=t!=null&&t>=u?t:u,c=Ce({delta:Ze(i,e)===i.length-1?s-o:o-s,initialLayout:r,panelConstraints:a,pivotIndices:l,prevLayout:r,trigger:`imperative-api`});Re(r,c)||(S(c),j.current.layout=c,n&&n(c),Le(i,c,D.current))}}},[]),P=t.useCallback(e=>{let{layout:t,panelDataArray:n}=j.current,{panelSize:r}=Qe(n,e,t);return H(r!=null,`Panel size not found for panel "${e.id}"`),r},[]),F=t.useCallback((e,t)=>{let{panelDataArray:n}=j.current;return ze({defaultSize:t,dragState:y,layout:x,panelData:n,panelIndex:Ze(n,e)})},[y,x]),I=t.useCallback(e=>{let{layout:t,panelDataArray:n}=j.current,{collapsedSize:r=0,collapsible:i,panelSize:a}=Qe(n,e,t);return H(a!=null,`Panel size not found for panel "${e.id}"`),i===!0&&U(a,r)},[]),ee=t.useCallback(e=>{let{layout:t,panelDataArray:n}=j.current,{collapsedSize:r=0,collapsible:i,panelSize:a}=Qe(n,e,t);return H(a!=null,`Panel size not found for panel "${e.id}"`),!i||ye(a,r)>0},[]),ie=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=Ge(e,i,n);t&&(O.current=new Map(Object.entries(t.expandToSizes)),a=t.layout)}a??=Ie({panelDataArray:i});let o=qe({layout:a,panelConstraints:i.map(e=>e.constraints)});Me(r,o)||(S(o),j.current.layout=o,t&&t(o),Le(i,o,D.current))}}),c(()=>{let e=j.current;return()=>{e.layout=[]}},[]);let ae=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=De(o,e,r),p=Fe(n,e,i,a,s,r),m=i===`horizontal`;m&&t&&(p=-p);let h=u.map(e=>e.constraints),g=Ce({delta:p,initialLayout:d??l,panelConstraints:h,pivotIndices:f,prevLayout:l,trigger:w(n)?`keyboard`:`mouse-or-touch`}),_=!Re(l,g);(T(n)||E(n))&&k.current!=p&&(k.current=p,!_&&p!==0?m?me(e,p<0?te:L):me(e,p<0?ne:re):me(e,0)),_&&(S(g),j.current.layout=g,c&&c(g),Le(u,g,D.current))}},[]),R=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}=Qe(i,e,r);H(o!=null,`Panel size not found for panel "${e.id}"`);let c=Ce({delta:Ze(i,e)===i.length-1?o-t:t-o,initialLayout:r,panelConstraints:a,pivotIndices:s,prevLayout:r,trigger:`imperative-api`});Re(r,c)||(S(c),j.current.layout=c,n&&n(c),Le(i,c,D.current))},[]),oe=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}=Qe(r,e,n);u!=null&&(a&&s&&U(u,i)?U(i,o)||R(e,o):u<l?R(e,l):u>c&&R(e,c))},[R]),se=t.useCallback((e,t)=>{let{direction:n}=A.current,{layout:r}=j.current;if(!v.current)return;let i=ke(e,v.current);H(i,`Drag handle element not found for id "${e}"`);let a=Ne(n,t);b({dragHandleId:e,dragHandleRect:i.getBoundingClientRect(),initialCursorPosition:a,initialLayout:r})},[]),z=t.useCallback(()=>{b(null)},[]),ce=t.useCallback(e=>{let{panelDataArray:t}=j.current,n=Ze(t,e);n>=0&&(t.splice(n,1),delete D.current[e.id],j.current.panelDataArrayChanged=!0,C())},[C]),B=t.useMemo(()=>({collapsePanel:M,direction:i,dragState:y,expandPanel:N,getPanelSize:P,getPanelStyle:F,groupId:_,isPanelCollapsed:I,isPanelExpanded:ee,reevaluatePanelConstraints:oe,registerPanel:ie,registerResizeHandle:ae,resizePanel:R,startDragging:se,stopDragging:z,unregisterPanel:ce,panelGroupElement:v.current}),[M,y,i,N,P,F,_,I,ee,oe,ie,ae,R,se,z,ce]),le={display:`flex`,flexDirection:i===`horizontal`?`row`:`column`,height:`100%`,overflow:`hidden`,width:`100%`};return t.createElement(a.Provider,{value:B},t.createElement(h,{...g,children:n,className:r,id:l,ref:v,style:{...le,...m},[o.group]:``,[o.groupDirection]:i,[o.groupId]:_}))}var G=t.forwardRef((e,n)=>t.createElement(W,{...e,forwardedRef:n}));W.displayName=`PanelGroup`,G.displayName=`forwardRef(PanelGroup)`;function Ze(e,t){return e.findIndex(e=>e===t||e.id===t.id)}function Qe(e,t,n){let r=Ze(e,t),i=r===e.length-1?[r-1,r]:[r,r+1],a=n[r];return{...t.constraints,panelSize:a,pivotIndices:i}}function $e({disabled:e,handleId:n,resizeHandler:r,panelGroupElement:i}){t.useEffect(()=>{if(e||r==null||i==null)return;let t=ke(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);H(r,`No group element found for id "${r}"`);let a=Te(r,i),s=Ee(r,n,i);H(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 et({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;H(e,`Element ref not attached`);let t=!1;return B(k,e,C,{coarse:ee,fine:te},(e,n,r)=>{if(!n){j(`inactive`);return}switch(e){case`down`:{j(`drag`),t=!1,H(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`),H(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]),$e({disabled:r,handleId:k,resizeHandler:P,panelGroupElement:O});let L={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:{...L,...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})}et.displayName=`PanelResizeHandle`,e.Panel=m,e.PanelGroup=G,e.PanelResizeHandle=et}))(),Ho=`max-w-[180px]`;function Uo({label:e,secondaryLabel:t=null,title:n,isActive:r,onSelect:i,labelMaxWidthClass:a=Ho,closeAction:o}){let s=o!==null;return(0,q.jsxs)(`div`,{className:L(`inline-flex h-7 shrink-0 items-center rounded-md text-xs transition-colors`,r?`bg-muted text-foreground`:`text-muted-foreground hover:bg-state-hover`),children:[(0,q.jsxs)(`button`,{type:`button`,onClick:i,"aria-pressed":r,title:n,className:L(`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:L(`truncate`,a),children:e}),t?(0,q.jsx)(`span`,{className:`ml-1 shrink-0 text-muted-foreground`,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)(P,{name:`Spinner`,className:`size-3 animate-spin`}):(0,q.jsx)(P,{name:`X`,className:`size-3`})}):null]})}var Wo=`uncommitted`;function Go(e,t){if(e===`uncommitted`)return{type:`uncommitted`};if(e)return{type:`commit`,sha:e};if(t)return{type:`all`,mergeBaseBranch:t}}function Ko(e,t={hasUncommittedChanges:!1}){let n={value:`all`,label:`All changes`},r={value:Wo,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 qo(e,t,n={hasUncommittedChanges:!1}){return e?e===`uncommitted`?!n.hasUncommittedChanges:!t.some(t=>t.sha===e):!1}function Jo(e){let t=e.currentGitDiff.trim().length>0,n=vr(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 Yo({entry:e,expectedFileCount:t}){return t>10?!0:$t(e.fileDiff)===`deleted`}function Xo({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}Yo({entry:s,expectedFileCount:n})&&o.add(s.key)}return o}function Zo(e){let t=vr(e.gitDiff);if(!e.isDiffPanelActive||e.gitDiff.trim().length===0)return{kind:`reset`,gitDiffKey:t,patchChunks:[]};let n=Pt(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 Qo=150,$o=4,es=6,ts=30,ns=70;function rs(e,t){if(e.size!==t.size)return!1;for(let n of e)if(!t.has(n))return!1;return!0}function is({environmentId:e,gitDiffIdentity:t,expectedGitDiffFileCount:n,parsedGitDiffFileEntries:r,isDiffPanelActive:i,isParsingGitDiffFiles:a}){let o=Sr((0,K.useCallback)(e=>e(ua),[])),s=nt(ua),c=nt(da),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??Qo),s=Math.max(0,t?.batchDelayMs??Qo);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=Xo({bulkCollapsePreference:d.current,currentCollapsedFileKeys:o(),expectedFileCount:n,focusedFileKey:f.current,parsedGitDiffFileEntries:r,previousFileKeys:p.current});p.current=e,s(e=>rs(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>$o?{initialBatchSize:$o,initialDelayMs:ts,batchSize:es,batchDelayMs:ns}: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 as({environmentId:e,isDiffPanelActive:t,defaultMergeBaseBranch:n}){let r=ut(fa),a=ut(pa),o=nt(pa),s=ut(ua),c=ut(da),l=(0,K.useRef)(null),[u,d]=(0,K.useState)(null),[f,m]=(0,K.useState)([]),[h,_]=(0,K.useState)(0),[v,y]=(0,K.useState)(!1),[b,x]=(0,K.useState)(``),[S,C]=(0,K.useState)(null),w=r??n,T=(0,K.useMemo)(()=>Go(u,w),[w,u]),E=(0,K.useMemo)(()=>ss({environmentId:e,target:T}),[e,T]),{data:D}=gi(e??``,w,{enabled:!!e&&!!w&&t}),{data:O,isLoading:k,isPlaceholderData:A,error:j}=yi(e??``,{enabled:!!e&&t&&T!==void 0,target:T});(0,K.useEffect)(()=>{if(O&&!A){C(e=>e?.requestIdentity===E&&e.response===O?e:{requestIdentity:E,response:O});return}k||C(e=>e?.requestIdentity===E?e:null)},[O,E,k,A]);let M=O&&!A?O:S?.requestIdentity===E?S.response:void 0,N=M?.mergeBaseRef??null,P=(0,K.useMemo)(()=>os({environmentId:e,mergeBaseRef:N,target:T}),[N,e,T]),F=M?.diff??``,I=(0,K.useMemo)(()=>It(f),[f]),{focusGitDiffFile:ee,gitDiffFileRefs:te,queuedGitDiffFileRenderKeys:L,setGitDiffFileRef:ne,toggleAllGitDiffFilesCollapsed:re,toggleGitDiffFileCollapsed:ie}=is({environmentId:e,gitDiffIdentity:P,expectedGitDiffFileCount:h,parsedGitDiffFileEntries:I,isDiffPanelActive:t,isParsingGitDiffFiles:v}),ae=Jo({currentGitDiff:F,isAwaitingPrerequisites:t&&!!e&&T===void 0,isGitDiffLoading:k,isParsingGitDiffFiles:v,lastParsedGitDiffKey:b,parsedGitDiffFileCount:I.length});(0,K.useEffect)(()=>{let e=Zo({gitDiff:F,isDiffPanelActive:t});if(e.kind===`reset`){m([]),_(0),y(!1),x(``);return}if(m([]),_(e.patchChunks.length),e.kind===`empty`){y(!1),x(e.gitDiffKey);return}if(e.kind===`immediate`){m(Ct(F)),y(!1),x(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){y(!1),x(e.gitDiffKey);return}let l=cn(c);if(!r){if(a+=c.length,m(e=>o?[...e,...l]:l),o=!0,a>=n.length||r){y(!1),x(e.gitDiffKey);return}i=window.setTimeout(s,24)}};return y(!0),s(),()=>{r=!0,i!==null&&window.clearTimeout(i)}},[F,t]),(0,K.useEffect)(()=>{d(null)},[e]),(0,K.useEffect)(()=>{o(null)},[e,o]),(0,K.useEffect)(()=>{a&&d(null)},[a]);let R=(D?.workingTree.files.length??0)>0;(0,K.useEffect)(()=>{qo(u,D?.mergeBase?.commits??[],{hasUncommittedChanges:R})&&d(null)},[D?.mergeBase?.commits,R,u]),(0,K.useLayoutEffect)(()=>{if(!a||!t){l.current=null;return}let e=I.find(({fileDiff:e})=>Ht(e,a));if(!e){!k&&!v&&!ae.isAwaitingCurrentGitDiffParse&&o(null);return}if(l.current!==a){l.current=a,ee(e.key);return}let n=s.has(e.key),r=!L.has(e.key)||c.has(e.key);n||r||(te.current.get(e.key)?.scrollIntoView({block:`start`,behavior:`instant`}),o(null))},[s,ee,te,ae.isAwaitingCurrentGitDiffParse,t,k,v,c,I,a,L,o]);let oe=(0,K.useMemo)(()=>D?.mergeBase?.commits??[],[D?.mergeBase?.commits]),se=u??`all`,z=(0,K.useMemo)(()=>Ko(oe,{hasUncommittedChanges:R}),[oe,R]),ce=(0,K.useMemo)(()=>on(v?[]:f,F),[F,v,f]),{hasParsedGitDiffFiles:B,isPreparingGitDiff:le}=ae,ue=(0,K.useCallback)(e=>{d(e===`all`?null:e)},[]),de=i(),fe=(0,K.useMemo)(()=>ls(T,N),[T,N]);return{currentGitDiff:F,gitDiffError:j,gitDiffSelectOptions:z,gitDiffSelectValue:se,gitDiffStats:ce,hasParsedGitDiffFiles:B,isGitDiffLoading:k,isParsingGitDiffFiles:v,isPreparingGitDiff:le,onGitDiffSelectionChange:ue,onRequestFileContents:(0,K.useMemo)(()=>{if(!e||fe===void 0)return;let t=e,n=fe,r=cs(n);return async(e,i)=>{let a=await de.fetchQuery({queryKey:g(t,n.type,r,e,i),queryFn:()=>p(t,n,e,i),staleTime:5e3});return us(e,a.content,a.contentEncoding)}},[e,fe,de]),parsedGitDiffFileEntries:I,queuedGitDiffFileRenderKeys:L,setGitDiffFileRef:ne,threadGitDiff:M,toggleAllGitDiffFilesCollapsed:re,toggleGitDiffFileCollapsed:ie}}function os({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 ss({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 cs(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 ls(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 us(e,t,n){return n===`utf8`?{name:e,contents:t}:null}var ds=760;function fs({isSecondaryPanelOpen:e}){let[t,n]=(0,K.useState)(`unified`),r=nt(ca),i=ut(la),a=nt(la),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>=ds,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]),Rt({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 ps=`20rem`;function ms({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)(V,{children:[(0,q.jsx)(he,{asChild:!0,disabled:r,children:(0,q.jsxs)(z,{type:`button`,variant:`ghost`,size:`sm`,disabled:r,className:L(`h-8 w-full min-w-0 justify-between gap-2 rounded-lg border border-border 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)(P,{name:`ChevronDown`,className:`size-3.5 shrink-0 text-muted-foreground`})]})}),(0,q.jsx)(ve,{align:`start`,className:`min-w-[var(--radix-dropdown-menu-trigger-width)]`,style:{maxWidth:`min(var(--radix-popper-available-width), max(${ps}, ${i}px))`},children:t.map(t=>(0,q.jsxs)(me,{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)(P,{name:`Check`,className:L(ge,t.value===e?`opacity-100`:`opacity-0`)})]},t.value))})]})}function hs({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}=Rt({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)(ms,{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:Si(i),children:Ci(i)}),a?(0,q.jsxs)(`span`,{className:`inline-flex shrink-0 items-center gap-1 text-xs text-muted-foreground`,children:[(0,q.jsx)(P,{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)(z,{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)(P,{name:`ChevronsDown`,className:`size-3.5`}):(0,q.jsx)(P,{name:`ChevronsUp`,className:`size-3.5`})}),(0,q.jsxs)(`div`,{className:`inline-flex items-center gap-1 rounded-lg border border-border p-0.5`,role:`tablist`,"aria-label":`Diff view mode`,children:[(0,q.jsx)(z,{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)(P,{name:`Rows2`,className:`size-3.5`})}),(0,q.jsx)(z,{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)(P,{name:`Columns2`,className:`size-3.5`})})]})]})]})})}var gs=new Set([`md`,`mdx`,`markdown`]),_s={"--diffs-font-size":`12px`,"--diffs-line-height":`18px`,"--diffs-gap-block":`16px`},vs={"--md-content-w":`100cqi`},ys={width:`100%`,height:`100%`,border:0};function bs(e){let t=e.split(`.`).pop()?.toLowerCase();return t!==void 0&&gs.has(t)}function xs({state:e,path:t,copyPath:n=null,onOpenInEditor:r,statusLabel:i=null}){let a=e.kind===`ready`&&bs(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:vs,children:[(0,q.jsx)(Cs,{path:t,copyPath:n,onOpenInEditor:r,statusLabel:i,markdownMode:a?o:null,onMarkdownModeChange:s}),(0,q.jsx)(Ss,{state:e,path:t,markdownMode:a?o:`preview`})]})}function Ss({state:e,path:t,markdownMode:n}){return e.kind===`loading`?(0,q.jsx)(ks,{}):e.kind===`empty`?(0,q.jsx)(As,{message:`Empty file.`}):e.kind===`not-found`?(0,q.jsx)(As,{message:`File not found.`,role:`alert`}):e.kind===`manager-status-pending`?(0,q.jsx)(As,{message:`Manager hasn't written a status yet.`}):e.kind===`error`?(0,q.jsx)(As,{message:e.message??`Failed to load file`,role:e.message===void 0?`alert`:void 0}):e.kind===`image`?(0,q.jsx)(Ts,{url:e.url,alt:t}):e.kind===`html`?(0,q.jsx)(Es,{file:e.file}):bs(e.file.name)&&n===`preview`?(0,q.jsx)(ws,{file:e.file}):(0,q.jsx)(js,{file:e.file,lineNumber:e.lineNumber??null})}function Cs({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 bg-background px-4`,children:[(0,q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1`,children:[(0,q.jsx)(Qn,{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)(Ft,{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)(P,{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 p-0.5`,role:`tablist`,"aria-label":`Markdown view mode`,children:[(0,q.jsx)(z,{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)(z,{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 ws({file:e}){return(0,q.jsx)(`div`,{className:`px-4 pt-4`,children:(0,q.jsx)(en,{allowHtml:!0,content:e.contents})})}function Ts({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 Es({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:ys})})}function Ds(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 Os(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 ks(){return(0,q.jsxs)(`div`,{className:`space-y-2 px-4 pt-4`,"aria-busy":!0,children:[(0,q.jsx)(Tn,{className:`h-3 w-3/4 rounded-sm`}),(0,q.jsx)(Tn,{className:`h-3 w-full rounded-sm`}),(0,q.jsx)(Tn,{className:`h-3 w-5/6 rounded-sm`}),(0,q.jsx)(Tn,{className:`h-3 w-2/3 rounded-sm`}),(0,q.jsx)(Tn,{className:`h-3 w-full rounded-sm`}),(0,q.jsx)(Tn,{className:`h-3 w-3/5 rounded-sm`})]})}function As({message:e,role:t}){return(0,q.jsx)(`p`,{role:t,className:`mx-4 mt-4 rounded-lg border border-dashed border-border bg-surface-raised px-3 py-6 text-center text-sm text-muted-foreground`,children:e})}function js({file:e,lineNumber:t}){let n=wt(),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||(Ds(e),Ds(e.ownerDocument.body),t===null))return;let n=Os(e,t)??Os(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&&(Ds(e),Ds(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:_s,"data-file-preview-line-number":t??void 0,children:(0,q.jsx)(Ar,{file:e,options:i,selectedLines:a})})}var Ms=`STATUS.md`,Ns=`STATUS.html`;function Ps(e){return e===`STATUS.md`||e===`STATUS.html`}function Fs(e){return e?.some(e=>e.path===`STATUS.html`)??!1?Ns:Ms}function Is({activePath:e,copyPath:t=null,error:r,filePreview:i,isLoading:a,lineNumber:o=null,onOpenInEditor:s,pendingNotFoundPath:c,statusLabel:l=null}){if(r){let i=r instanceof n&&r.status===404;return i&&e===c?(0,q.jsx)(xs,{path:e,copyPath:t,onOpenInEditor:s,statusLabel:l,state:{kind:`manager-status-pending`}}):(0,q.jsx)(xs,{path:e,copyPath:t,onOpenInEditor:s,statusLabel:l,state:{kind:i?`not-found`:`error`}})}return a||!i||i.path!==e?(0,q.jsx)(xs,{path:e,copyPath:t,onOpenInEditor:s,statusLabel:l,state:{kind:`loading`}}):e===`STATUS.html`&&i.kind===`text`?(0,q.jsx)(xs,{path:e,copyPath:t,onOpenInEditor:s,statusLabel:l,state:{kind:`html`,file:{name:i.name??e,contents:i.content}}}):i.kind===`text`?i.content.length===0?(0,q.jsx)(xs,{path:e,copyPath:t,onOpenInEditor:s,statusLabel:l,state:{kind:`empty`}}):(0,q.jsx)(xs,{path:e,copyPath:t,onOpenInEditor:s,statusLabel:l,state:{kind:`ready`,lineNumber:o,file:{name:i.name??e,contents:i.content}}}):i.kind===`image`?(0,q.jsx)(xs,{path:e,copyPath:t,onOpenInEditor:s,statusLabel:l,state:{kind:`image`,url:i.url}}):(0,q.jsx)(xs,{path:e,copyPath:t,onOpenInEditor:s,statusLabel:l,state:{kind:`error`,message:`Preview not available for ${i.mimeType}.`}})}function Ls({activePath:e,copyPath:t,error:n,filePreview:r,isLoading:i,lineNumber:a,onOpenInEditor:o,pinnedPath:s}){return(0,q.jsx)(Is,{activePath:e,copyPath:t,error:n,filePreview:r,isLoading:i,lineNumber:a,onOpenInEditor:o,pendingNotFoundPath:s})}var Rs=3,zs=`min-h-0 flex-1 overflow-x-hidden overflow-y-auto`;function Bs({count:e=Rs}){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 bg-surface-raised`,children:[(0,q.jsx)(`div`,{className:`border-b border-border bg-surface-recessed 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)(Tn,{className:`size-4 shrink-0 rounded-sm`}),(0,q.jsx)(Tn,{className:`h-3 w-48 max-w-full rounded-sm`})]}),(0,q.jsx)(Tn,{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)(Tn,{className:`h-3 w-full rounded-sm`}),(0,q.jsx)(Tn,{className:`h-3 w-[94%] rounded-sm`}),(0,q.jsx)(Tn,{className:`h-3 w-[90%] rounded-sm`}),(0,q.jsx)(Tn,{className:`h-3 w-[86%] rounded-sm`})]})]},`git-diff-skeleton-${t}`))})}var Vs=(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)(At,{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 Hs({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:L(zs,`px-4 pb-3`),children:a?(0,q.jsx)(Bs,{}):n?(0,q.jsx)(`p`,{className:`rounded-lg border border-surface-destructive-border bg-surface-destructive 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)(Vs,{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 bg-surface-raised px-3 py-3`,children:(0,q.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,q.jsx)(Tn,{className:`h-3 w-52 max-w-full rounded-sm`}),(0,q.jsx)(Tn,{className:`h-3 w-5/6 rounded-sm`})]})}):null]}):(0,q.jsx)(`pre`,{className:`overflow-auto whitespace-pre rounded-lg border border-border bg-surface-raised 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 bg-surface-raised px-3 py-6 text-center text-sm text-muted-foreground`,children:`No diff to display.`})})}function Us({metadataContent:e}){return(0,q.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col px-4 pb-3`,children:e})}function Ws({activePath:e,copyPath:t=null,environmentId:n,lineNumber:r,onOpenInEditor:i,source:a,statusLabel:o}){let{data:s,error:c,isLoading:l}=vi(n,e,a);return(0,q.jsx)(Is,{activePath:e,copyPath:t,error:c,filePreview:s,isLoading:l,lineNumber:r,onOpenInEditor:i,statusLabel:o})}function Gs({activePath:e,environmentId:t,lineNumber:n,onOpenInEditor:r,threadId:i}){let{data:a,error:o,isLoading:s}=Pe(i,t,e);return(0,q.jsx)(Is,{activePath:e,error:o,filePreview:a,isLoading:s,lineNumber:n,onOpenInEditor:r,statusLabel:null})}function Ks({activePath:e,copyPath:t=null,isManagerThread:n,onOpenInEditor:r,pinnedPath:i,threadId:a}){let{data:o,error:s,isLoading:c}=Te(a,e,{enabled:n});return(0,q.jsx)(Ls,{activePath:e,copyPath:t,error:s,filePreview:o,isLoading:c,onOpenInEditor:r,pinnedPath:i})}var qs=24,Js=70,Ys=`duration-[220ms] ease-[cubic-bezier(0.32,0.72,0,1)]`,Xs=`min-h-0 flex-1 overflow-x-hidden overflow-y-auto`;function Zs({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,onOpenFileSearch:p,workspaceRootPath:m,onOpenFileInEditor:h,onOpenFilePreview:g,renderAsDrawer:_}){let v=a?.find(e=>e.isActive)!==void 0,y=_?`X`:`PanelRight`,{gitDiffDisplayMode:b,handleGitDiffDisplayModeChange:x,handleSecondaryPanelDragging:S,handleSecondaryPanelResize:C,persistedWidthPercent:w,secondaryPanelRef:T,secondaryResizablePanelRef:E}=fs({isSecondaryPanelOpen:s}),D=!t&&e===`git-diff`?`thread-info`:e,O=D===`git-diff`,{currentGitDiff:k,gitDiffError:A,gitDiffSelectOptions:j,gitDiffSelectValue:M,gitDiffStats:N,hasParsedGitDiffFiles:F,isGitDiffLoading:I,isParsingGitDiffFiles:ee,isPreparingGitDiff:te,onGitDiffSelectionChange:ne,onRequestFileContents:re,parsedGitDiffFileEntries:ie,queuedGitDiffFileRenderKeys:ae,setGitDiffFileRef:R,threadGitDiff:oe,toggleAllGitDiffFilesCollapsed:se,toggleGitDiffFileCollapsed:ce}=as({environmentId:r,isDiffPanelActive:O,defaultMergeBaseBranch:n}),B=ut(ua),le=ut(da),ue=(0,K.useMemo)(()=>F&&ie.every(({key:e})=>B.has(e)),[B,F,ie]),de=wt(),fe=(0,K.useMemo)(()=>({...Xt,diffStyle:b,themeType:de}),[b,de]),pe=(0,q.jsxs)(`aside`,{ref:T,"aria-hidden":!s,onFocusCapture:e=>{let t=e.relatedTarget;t instanceof Node&&e.currentTarget.contains(t)||l()},className:L(`flex h-full min-h-0 min-w-0 flex-1 flex-col overflow-hidden bg-background`,!_&&[`transition-[transform,opacity,background-color]`,Ys,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)(z,{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":D===`thread-info`&&!v,title:`Info`,children:(0,q.jsx)(P,{name:`Info`})}),c===!1?null:(0,q.jsx)(z,{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":O&&!v,title:`Diff`,children:(0,q.jsx)(P,{name:`FileDiff`})}),(0,q.jsx)(`div`,{className:`flex min-w-0 flex-1 items-center gap-1 overflow-x-auto`,children:a&&a.length>0?a.map(e=>(0,q.jsx)($s,{tab:e},e.id)):null}),(0,q.jsx)(Qs,{onOpenFileSearch:p})]}),(0,q.jsx)(z,{type:`button`,variant:`ghost`,size:`icon`,className:`h-7 w-7 shrink-0 rounded-md p-0`,onClick:f,"aria-label":_?`Close secondary panel`:`Hide secondary panel`,title:_?`Close secondary panel`:`Hide secondary panel`,children:(0,q.jsx)(P,{name:y})})]}),O&&!v?(0,q.jsx)(hs,{selectionValue:M,selectionOptions:j,onSelectionChange:ne,isSelectorDisabled:I||oe===void 0,stats:N,isParsing:ee,areAllFilesCollapsed:ue,isCollapseAllDisabled:!F||I,onToggleAllCollapsed:se,displayMode:b,onDisplayModeChange:x}):null]}),(0,q.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col overflow-hidden bg-background`,children:v?(0,q.jsx)(`div`,{className:L(Xs,`pb-3`),children:o??(0,q.jsx)(`p`,{className:`mx-4 rounded-lg border border-dashed border-border bg-surface-raised px-3 py-6 text-center text-sm text-muted-foreground`,children:`No file preview content provided.`})}):O?(0,q.jsx)(Hs,{collapsedGitDiffFileKeys:B,currentGitDiff:k,gitDiffError:A instanceof Error?A:A?Error(`Failed to load git diff`):null,gitDiffViewOptions:fe,isParsingGitDiffFiles:ee,isPreparingGitDiff:te,loadingGitDiffFileKeys:le,onOpenFileInEditor:h,onOpenFilePreview:g,onRequestFileContents:re,parsedGitDiffFileEntries:ie,queuedGitDiffFileRenderKeys:ae,setGitDiffFileRef:R,threadGitDiff:oe,toggleGitDiffFileCollapsed:ce,workspaceRootPath:m}):(0,q.jsx)(Us,{metadataContent:i})})]});return _?pe:(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(ec,{isOpen:s,onDragging:S}),(0,q.jsx)(Vo.Panel,{ref:E,id:`thread-detail-secondary-panel`,collapsible:!0,collapsedSize:0,defaultSize:s?w:0,minSize:qs,maxSize:Js,onCollapse:d,onResize:C,order:2,className:L(`min-w-0 overflow-hidden transition-[flex-grow,flex-basis,opacity]`,Ys,s?`opacity-100`:`opacity-0`),children:pe})]})}function Qs({onOpenFileSearch:e}){return(0,q.jsxs)(V,{children:[(0,q.jsx)(he,{asChild:!0,children:(0,q.jsx)(z,{type:`button`,variant:`ghost`,size:`sm`,className:`h-7 w-7 shrink-0 rounded-md p-0`,"aria-label":`Add secondary panel tab`,title:`Add tab`,children:(0,q.jsx)(P,{name:`Plus`})})}),(0,q.jsx)(ve,{align:`end`,className:`w-40`,children:(0,q.jsxs)(me,{onSelect:e,children:[(0,q.jsx)(P,{name:`File`}),`Open file`]})})]})}function $s({tab:e}){let t=e.statusLabel===null?e.filename:`${e.filename} (${e.statusLabel})`;return(0,q.jsx)(Uo,{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 ec({isOpen:e,onDragging:t}){let n=ut(ca);return(0,q.jsx)(Vo.PanelResizeHandle,{id:`thread-detail-secondary-panel-handle`,disabled:!e,onDragging:t,className:L(`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-['']`,Ys,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:L(`pointer-events-none absolute inset-y-0 left-1/2 w-px -translate-x-1/2 bg-border transition-colors`,n?`bg-accent-foreground/50`:`group-hover:bg-accent-foreground/35`)})})}var tc=`file-tree-container`,nc=`data-file-tree-style`,rc=`data-file-tree-unsafe-css`,ic=`data-file-tree-scrollbar-measure`,ac=`data-file-tree-scrollbar-gutter-measured`,oc=`--trees-scrollbar-gutter-measured`,sc=`header`,cc=`context-menu`,lc=`context-menu-trigger`,uc=typeof window>`u`?K.useEffect:K.useLayoutEffect;function dc(e,t,n){let r=e==null?null:(0,q.jsx)(`div`,{slot:sc,children:e}),i=t!=null&&n!=null?(0,q.jsx)(`div`,{slot:cc,children:t(n.item,n.context)}):null;return r==null&&i==null?null:(0,q.jsxs)(q.Fragment,{children:[r,i]})}function fc(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 pc(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 mc(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 hc({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)(()=>mc(h,e,f,p,m),[h,p,m,f,e]),_=(0,K.useCallback)(e=>{l(e)},[]);(0,K.useEffect)(()=>{f||s(null)},[f]),uc(()=>{n.setComposition(g)},[g,n]),uc(()=>{if(c!=null)return r!=null&&pc(c)?n.hydrate({fileTreeContainer:c}):n.render({fileTreeContainer:c}),()=>{n.unmount(),n.setComposition(h)}},[h,c,n,r]);let v=fc(dc(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)(tc,{...a,id:y,ref:_,style:b,suppressHydrationWarning:r!=null,children:v})}var gc=`<svg data-icon-sprite aria-hidden="true" width="0" height="0">
|
|
4
|
-
<symbol id="file-tree-icon-chevron" viewBox="0 0 16 16">
|
|
5
|
-
<path d="M3.47 5.47a.75.75 0 0 1 1.06 0L8 8.94l3.47-3.47a.75.75 0 1 1 1.06 1.06l-4 4a.75.75 0 0 1-1.06 0l-4-4a.75.75 0 0 1 0-1.06" fill="currentcolor"/>
|
|
6
|
-
</symbol>
|
|
7
|
-
<symbol id="file-tree-icon-dot" viewBox="0 0 6 6">
|
|
8
|
-
<circle cx="3" cy="3" r="3" />
|
|
9
|
-
</symbol>
|
|
10
|
-
<symbol id="file-tree-icon-file" viewBox="0 0 16 16">
|
|
11
|
-
<path fill="currentColor" d="M8 1v3a3 3 0 0 0 3 3h3v5.5a2.5 2.5 0 0 1-2.5 2.5h-7A2.5 2.5 0 0 1 2 12.5v-9A2.5 2.5 0 0 1 4.5 1z" class="bg" opacity=".5"/>
|
|
12
|
-
<path fill="currentColor" d="M9.5 1a.5.5 0 0 1 .354.146l4 4A.5.5 0 0 1 14 5.5V6h-3a2 2 0 0 1-2-2V1z" class="fg"/>
|
|
13
|
-
</symbol>
|
|
14
|
-
<symbol id="file-tree-icon-lock" viewBox="0 0 16 16">
|
|
15
|
-
<path fill="currentcolor" d="M4 5.336V4a4 4 0 1 1 8 0v1.336c1.586.54 2 1.843 2 4.664v1c0 4.118-.883 5-5 5H7c-4.117 0-5-.883-5-5v-1c0-2.821.414-4.124 2-4.664M5.5 4v1.054Q6.166 4.998 7 5h2q.834-.002 1.5.054V4a2.5 2.5 0 0 0-5 0m-2 6v1c0 .995.055 1.692.167 2.193.107.483.246.686.35.79s.307.243.79.35c.5.112 1.198.167 2.193.167h2c.995 0 1.692-.055 2.193-.166.483-.108.686-.247.79-.35.104-.105.243-.308.35-.791.112-.5.167-1.198.167-2.193v-1c0-.995-.055-1.692-.166-2.193-.108-.483-.247-.686-.35-.79-.105-.104-.308-.243-.791-.35C10.693 6.555 9.995 6.5 9 6.5H7c-.995 0-1.692.055-2.193.167-.483.107-.686.246-.79.35s-.243.307-.35.79C3.555 8.307 3.5 9.005 3.5 10" />
|
|
16
|
-
</symbol>
|
|
17
|
-
<symbol id="file-tree-icon-ellipsis" viewBox="0 0 16 16">
|
|
18
|
-
<path d="M5 8.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0M9.5 8.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0M14 8.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0" />
|
|
19
|
-
</symbol>
|
|
20
|
-
</svg>`,_c=`<symbol id="file-tree-builtin-astro" viewBox="0 0 16 16">
|
|
21
|
-
<path fill="currentColor" d="M6.08 13.92c-.63-.57-.81-1.79-.55-2.67.45.56 1.08.73 1.73.83 1 .15 1.99.1 2.92-.37l.32-.19q.13.38.08.78a2.1 2.1 0 0 1-.9 1.5q-.3.24-.61.43c-.64.44-.81.95-.57 1.69l.02.08a1.7 1.7 0 0 1-.74-.64 2 2 0 0 1-.3-.98q0-.27-.02-.52-.07-.61-.61-.62a.7.7 0 0 0-.75.6z" class="bg" opacity=".6"/>
|
|
22
|
-
<path fill="currentColor" d="M2.5 11.1s1.86-.9 3.72-.9l1.4-4.39c.05-.21.2-.36.38-.36s.33.15.38.36l1.4 4.38c2.2 0 3.72.92 3.72.92l-3.16-8.69q-.13-.4-.45-.42H6.11q-.3.02-.45.42z" class="fg"/>
|
|
23
|
-
</symbol>`,vc=`<symbol id="file-tree-builtin-babel" viewBox="0 0 16 16">
|
|
24
|
-
<path fill="currentColor" fill-rule="evenodd" d="M9.49.5q1.92.05 2.66.54 1.27.6 1.35 1.52v.23a4 4 0 0 1-.53 1.9l-1.38 1.24q-.74.38-.72.63c.77.82 1.33 1.29.85 2.42q-.47 1.1-2.04 2.28c-.5.32-1.88 1.35-2.96 1.86-1.64.77-3.1 1.4-4.65 1.89-.51.16-1.5.16-1.5.16L.5 15A76 76 0 0 0 5.76 3.49q-.1-.08-.1-.2.1 0 .32-.35l-.03-.09q-1.17.39-2.38 1.3l-.13.03q0-.1-.21-.16-.46.31-.82.7l-.13-.19.16-.06-.03-.16-.34.29L2 4.5q.36-.48.72-.54l.04-.1V3.8q.16 0 .15-.06l.13-.06a6 6 0 0 0 1.13-.9v-.03H4.1l-.12.07q0-.1-.1-.1l-.15.07-.04-.1q.93-.52 1.63-1.05Q7.89.65 9.5.5M8.46 7.83l-.32.04c-1.31.54-2.31.82-2.91.88a71 71 0 0 0-2.2 4.54h.07q.58-.04 3.04-1.42.13 0 1.66-1.05L9.18 9.7v.03q.45-.2.81-1.3v-.2q-.5-.46-1.53-.4m.28-5.75c-.5.1-.75.19-.72.38l-1.16 2.6q-.17.1-.34.95-.3.48-.25.77v.1l.22.05A15 15 0 0 1 8.86 6c1.1-.71 2.12-1.38 2.8-2.54q.24-.33.21-.54-.02-.33-.4-.54c-.54 0-1.07-.34-1.63-.28l-.94-.03z" clip-rule="evenodd"/>
|
|
25
|
-
</symbol>`,yc=`<symbol id="file-tree-builtin-bash" viewBox="0 0 16 16">
|
|
26
|
-
<path fill="currentColor" d="M8 1C2.24 1 1 2.24 1 8s1.24 7 7 7 7-1.24 7-7-1.24-7-7-7" class="bg" opacity=".2"/>
|
|
27
|
-
<path fill="currentColor" d="M11.5 11a.5.5 0 0 1 0 1h-3a.5.5 0 0 1 0-1zM7 6.75C7 6.42 6.64 6 6 6s-1 .42-1 .75q-.01.25.22.41.26.21.89.35.74.14 1.28.53c.37.29.61.7.61 1.21 0 .87-.68 1.5-1.5 1.7v.55a.5.5 0 0 1-1 0v-.56c-.82-.18-1.5-.82-1.5-1.69a.5.5 0 0 1 1 0c0 .33.36.75 1 .75s1-.42 1-.75q.01-.25-.22-.41a2 2 0 0 0-.89-.35q-.74-.14-1.28-.53A1.5 1.5 0 0 1 4 6.75c0-.87.68-1.5 1.5-1.7V4.5a.5.5 0 0 1 1 0v.56c.82.18 1.5.82 1.5 1.69a.5.5 0 0 1-1 0" class="fg-stroke"/>
|
|
28
|
-
</symbol>`,bc=`<symbol id="file-tree-builtin-biome" viewBox="0 0 16 16">
|
|
29
|
-
<path fill="currentColor" d="M8 2 4.88 7.35a7 7 0 0 1 3.7-.13l1.04.25-.99 4.16-1.05-.25a2.7 2.7 0 0 0-3.07 1.45l-.98-.47a4 4 0 0 1 1.07-1.31 3.8 3.8 0 0 1 3.23-.71l.5-2.08a6 6 0 0 0-5.07 1.12A5.9 5.9 0 0 0 1 14h14z"/>
|
|
30
|
-
</symbol>`,xc=`<symbol id="file-tree-builtin-bootstrap" viewBox="0 0 16 16">
|
|
31
|
-
<path fill="currentColor" fill-rule="evenodd" d="M11.72 1.5A2.5 2.5 0 0 1 14.2 4q.02 1.08.3 2.09c.22.73.56 1.24 1.08 1.45.22.08.4.27.4.5s-.18.43-.4.51q-.76.34-1.08 1.45c-.2.65-.27 1.32-.3 2a2.5 2.5 0 0 1-2.48 2.5H4.25A2.6 2.6 0 0 1 1.7 12c-.04-.85-.1-1.68-.22-2.04C1.26 9.23.92 8.7.4 8.5.18 8.42 0 8.23 0 8s.18-.42.4-.5q.77-.35 1.09-1.46c.1-.36.17-1.19.2-2.04a2.6 2.6 0 0 1 2.56-2.5z" class="bg" clip-rule="evenodd" opacity=".2"/>
|
|
32
|
-
<path fill="currentColor" fill-rule="evenodd" d="M8.47 4.54c1.23 0 2.04.68 2.04 1.73 0 .73-.55 1.39-1.24 1.5v.04c.94.1 1.58.77 1.58 1.7 0 1.2-.9 1.95-2.37 1.95H5.97a.3.3 0 0 1-.2-.08.3.3 0 0 1-.08-.2V4.82a.3.3 0 0 1 .08-.2.3.3 0 0 1 .2-.08zm-1.7 6.04h1.49q1.47-.01 1.49-1.15Q9.74 8.31 8.2 8.3H6.77zm0-5.16v2.06h1.21c.93 0 1.45-.38 1.45-1.06 0-.65-.44-1-1.22-1z" class="fg" clip-rule="evenodd"/>
|
|
33
|
-
</symbol>`,Sc=`<symbol id="file-tree-builtin-browserslist" viewBox="0 0 16 16">
|
|
34
|
-
<path fill="currentColor" d="M8.88 6.96c0 3.82 3.72 4.7 5.7 3.74-.23.9-1.04 1.67-2.35 1.93-.02.4.42 1.28.82 1.63-.9.35-1.94-.12-2.51-.48a5 5 0 0 0-.32 1.87c-.68 0-1.57-1-1.8-1.37-.3.18-.85 1.15-.96 1.72a2.4 2.4 0 0 1-.81-.86 2.4 2.4 0 0 1-.3-1.15c-.38.27-1.48.95-1.99 1.18-.25-.58-.15-1.3 0-2.06-.21.12-1.8.27-2.43.12.32-.36.75-1.19.94-1.57A4.5 4.5 0 0 1 .44 10.6c.48-.22.97-.53 1.49-1.06C1.26 9.17.24 8.64 0 7.7a6 6 0 0 0 1.79-.32C1.28 7.08.44 6.15.6 5.01c.42.21 1.3.37 1.73.3a3.4 3.4 0 0 1-.25-2.75 5 5 0 0 0 1.48 1c-.08-.8.3-2.31.8-2.71.2.46.73 1.21 1.08 1.4.09-.61.87-2.06 1.57-2.25 0 .5.27 1.4.5 1.67.51-.54 2.25-1.44 3.64-1.13-.43.45-.75.61-.86.98 1.05 0 2.78.34 4.27 1.93-2.34-.89-5.69.56-5.69 3.5" class="bg" opacity=".5"/>
|
|
35
|
-
<path fill="currentColor" d="M11.21 3.59a4.1 4.1 0 0 0 2.47 2.89c.24-.22.61-.38.95-.19.76.44.2 1.26-.34 1.66l-.07.06a13 13 0 0 1-4.49 1.61l-.3-.43a10.5 10.5 0 0 0 4.13-1.31 1 1 0 0 0 .23-.25.5.5 0 0 0-.21-.69l-.15-.06a4.5 4.5 0 0 1-1.77-1.31 4.5 4.5 0 0 1-.88-1.77q.2-.12.43-.21"/>
|
|
36
|
-
<path fill="currentColor" d="M10.36 5.18a.4.4 0 0 0-.03.38c.09.2.3.3.46.23s.24-.3.15-.5l-.01-.02q.23.13.34.39a.83.83 0 0 1-.43 1.08.8.8 0 0 1-1.08-.43.83.83 0 0 1 .6-1.13"/>
|
|
37
|
-
</symbol>`,Cc=`<symbol id="file-tree-builtin-bun" viewBox="0 0 16 16">
|
|
38
|
-
<path fill="currentColor" d="M8 14c3.87 0 7-2.46 7-5.49 0-1.88-1.2-3.53-3.04-4.52q-1.1-.61-1.84-1.07C9.2 2.35 8.64 2 8 2s-1.36.45-2.31 1.03A29 29 0 0 1 4.04 4C2.2 4.98 1 6.63 1 8.51 1 11.54 4.13 14 8 14M7.18 3.88q.3-.66.3-1.37c0-.08.11-.1.13-.01.38 1.57-.53 2.35-1.2 2.61-.08.03-.12-.07-.06-.12a3 3 0 0 0 .83-1.12m1.2-.05a3 3 0 0 0-.45-1.3V2.5c-.04-.07.05-.15.1-.1 1.15 1.2.77 2.3.33 2.87-.05.05-.13 0-.11-.08q.21-.67.13-1.37m1.04-.32a3 3 0 0 0-.94-1.02v-.01c-.06-.05-.01-.16.07-.12 1.51.61 1.61 1.8 1.43 2.5l-.03.03a.07.07 0 0 1-.1-.06 3 3 0 0 0-.43-1.32m-2.97.32c-.36.3-.74.43-1.2.56q-.11 0-.1-.1a3.5 3.5 0 0 0 1.76-1.57s.09-.07.1.04c0 .18-.2.76-.56 1.07m2.89 6.36q-.13.52-.55.88a1.3 1.3 0 0 1-.75.35 1.3 1.3 0 0 1-.77-.35 1.7 1.7 0 0 1-.54-.88.13.13 0 0 1 .15-.15h2.31a.14.14 0 0 1 .15.15M6.15 8.95a1.1 1.1 0 0 1-1.39-.14A1.1 1.1 0 0 1 5.12 7a1.1 1.1 0 0 1 1.2.25 1.1 1.1 0 0 1-.17 1.69m4.96 0a1.1 1.1 0 0 1-1.4-.14 1.1 1.1 0 0 1 .37-1.8 1.1 1.1 0 0 1 1.2.25 1.1 1.1 0 0 1 .24 1.2 1 1 0 0 1-.41.5"/>
|
|
39
|
-
</symbol>`,wc=`<symbol id="file-tree-builtin-claude" viewBox="0 0 16 16">
|
|
40
|
-
<path fill="currentColor" d="M3.75 10.31 6.5 8.77l.04-.14-.04-.07h-.14l-.46-.03-1.57-.04-1.38-.07-1.33-.07-.34-.07L1 7.86l.03-.21.28-.18.4.03.89.07 1.33.08.97.06 1.43.16h.22l.03-.1-.07-.05-.06-.06-1.39-.92-1.48-.98-.79-.57-.42-.28-.2-.28-.1-.6.39-.41.52.04.12.03.52.4 1.12.86L6.2 6.04l.2.17.09-.06.01-.04-.1-.15-.76-1.46-.85-1.46-.37-.6-.1-.36a1 1 0 0 1-.06-.42l.42-.59.25-.07.6.08.22.2.36.84.58 1.3.9 1.77.29.53.14.47.04.14h.1v-.07l.07-1 .14-1.22.14-1.57.04-.45.23-.53.42-.28.36.15.28.41-.04.25-.16 1.08-.36 1.7-.21 1.14h.12l.14-.15.58-.76.97-1.2.42-.5.5-.51.32-.25h.6l.44.66-.2.68-.61.79-.52.65-.74 1-.45.8.04.05h.1l1.68-.36.9-.16 1.06-.18.5.23.05.22-.2.48-1.15.28-1.34.28-2 .46-.04.01.03.04.9.09.4.03h.94l1.77.14.46.28.27.37-.04.28-.72.37-.95-.23-2.24-.53-.76-.18h-.11v.06l.64.63L12 10.86l1.48 1.35.07.34-.18.28-.2-.03-1.29-.98-.5-.42-1.12-.95h-.07v.1l.25.38 1.37 2.05.07.63-.1.2-.36.14-.38-.08-.8-1.12-.85-1.26-.66-1.15-.07.05-.4 4.23-.19.21-.42.17-.35-.28-.2-.42.2-.87.23-1.12.18-.9.17-1.1.1-.36v-.03h-.1l-.84 1.16-1.27 1.72-1 1.07-.24.1-.42-.22.04-.39.22-.32 1.4-1.8.84-1.1.57-.64-.02-.07h-.04l-3.7 2.4-.66.09-.28-.28.03-.42.14-.14 1.12-.77z"/>
|
|
41
|
-
</symbol>`,Tc=`<symbol id="file-tree-builtin-css" viewBox="0 0 16 16">
|
|
42
|
-
<path fill="currentColor" d="M8 15c-5.76 0-7-1.24-7-7V2a1 1 0 0 1 1-1h6c5.77 0 7 1.24 7 7s-1.24 7-7 7" class="vector" opacity=".2"/>
|
|
43
|
-
<path fill="currentColor" d="M10.1 9.19h.73c.03.49.22.6 1 .6.76 0 .93-.12.93-.68 0-.52-.17-.67-.94-.85-1.38-.3-1.68-.56-1.68-1.47 0-1.05.3-1.29 1.67-1.29 1.29 0 1.57.2 1.6 1.13h-.74c-.01-.34-.17-.42-.85-.42-.77 0-.94.1-.94.58 0 .42.17.55.96.73 1.36.3 1.66.58 1.66 1.59 0 1.14-.31 1.39-1.73 1.39-1.39 0-1.69-.24-1.67-1.31m-3.9 0h.74c.03.49.21.6.99.6.76 0 .93-.12.93-.68 0-.52-.17-.67-.93-.85-1.39-.3-1.69-.56-1.69-1.47 0-1.05.3-1.29 1.67-1.29 1.3 0 1.58.2 1.6 1.13h-.73c-.02-.34-.18-.42-.85-.42-.78 0-.95.1-.95.58 0 .42.17.55.96.73 1.37.3 1.67.58 1.67 1.59 0 1.14-.32 1.39-1.74 1.39-1.38 0-1.68-.24-1.66-1.31m-1.22 0h.75c-.09 1.07-.37 1.31-1.56 1.31-1.37 0-1.68-.45-1.68-2.5 0-1.96.36-2.5 1.68-2.5 1.16 0 1.44.25 1.52 1.35h-.76c-.08-.52-.22-.64-.76-.64-.74 0-.9.33-.9 1.78 0 1.47.16 1.8.9 1.8.58 0 .74-.11.8-.6"/>
|
|
44
|
-
</symbol>`,Ec=`<symbol id="file-tree-builtin-database" viewBox="0 0 16 16">
|
|
45
|
-
<path fill="currentColor" d="M14.953 9.733a12.4 12.4 0 0 1-.244 1.936c-.207.933-.532 1.58-.996 2.044s-1.11.789-2.044.996C10.73 14.918 9.533 15 8 15s-2.73-.082-3.669-.291c-.933-.207-1.58-.532-2.044-.996s-.789-1.11-.996-2.044c-.122-.547-.2-1.182-.244-1.92q.23.364.532.667c.64.639 1.482 1.031 2.533 1.265 1.046.232 2.33.315 3.884.315 1.555 0 2.838-.083 3.884-.315 1.051-.234 1.893-.626 2.532-1.265a4 4 0 0 0 .541-.683"/>
|
|
46
|
-
<path fill="currentColor" d="M14.93 5.924c-.046.663-.118 1.24-.23 1.743-.207.932-.532 1.579-.995 2.042s-1.11.789-2.042.996c-.938.209-2.135.291-3.667.291-1.531 0-2.729-.082-3.667-.29-.932-.208-1.579-.534-2.042-.997s-.789-1.11-.996-2.042a12 12 0 0 1-.227-1.683l.016-.188a4 4 0 0 0 .5.62c.638.639 1.48 1.031 2.532 1.265 1.046.232 2.33.315 3.884.315 1.555 0 2.838-.083 3.884-.315 1.051-.234 1.893-.626 2.532-1.265.192-.192.357-.404.506-.633z"/>
|
|
47
|
-
<path fill="currentColor" d="M8 1c1.533 0 2.73.082 3.669.291.933.207 1.58.533 2.044.996.403.404.904.944.91 1.695.004.764-.509 1.318-.918 1.727-.463.463-1.11.789-2.042.996-.938.209-2.135.291-3.667.291-1.531 0-2.729-.082-3.667-.29-.932-.208-1.579-.534-2.042-.997-.406-.406-.915-.953-.915-1.71 0-.758.509-1.305.915-1.712.464-.463 1.11-.789 2.044-.996C5.27 1.082 6.467 1 8 1"/>
|
|
48
|
-
</symbol>`,Dc=`<symbol id="file-tree-builtin-default" viewBox="0 0 16 16">
|
|
49
|
-
<path fill="currentColor" d="M8 1v3a3 3 0 0 0 3 3h3v5.5a2.5 2.5 0 0 1-2.5 2.5h-7A2.5 2.5 0 0 1 2 12.5v-9A2.5 2.5 0 0 1 4.5 1z" class="bg" opacity=".4"/>
|
|
50
|
-
<path fill="currentColor" d="M9.5 1a.5.5 0 0 1 .354.146l4 4A.5.5 0 0 1 14 5.5V6h-3a2 2 0 0 1-2-2V1z" class="fg"/>
|
|
51
|
-
</symbol>`,Oc=`<symbol id="file-tree-builtin-docker" viewBox="0 0 16 16">
|
|
52
|
-
<path fill="currentColor" d="M15.85 6.54c-.05-.04-.45-.36-1.31-.36q-.34 0-.68.06a2.7 2.7 0 0 0-1.14-1.79l-.23-.14-.15.23a3 3 0 0 0-.4 1q-.24 1.01.26 1.84c-.4.24-1.03.3-1.17.3H.5a.5.5 0 0 0-.5.52q-.01 1.46.46 2.83.55 1.5 1.6 2.18c.79.5 2.08.79 3.54.79q.96 0 1.94-.18a8 8 0 0 0 2.55-.97 7 7 0 0 0 1.73-1.5 10 10 0 0 0 1.7-3.06h.15a2.4 2.4 0 0 0 1.8-.7 2 2 0 0 0 .47-.74l.06-.2z"/>
|
|
53
|
-
<path fill="currentColor" d="M1.48 7.36h1.4a.14.14 0 0 0 .14-.13V5.91q-.01-.12-.13-.14H1.48a.13.13 0 0 0-.13.14v1.32q.02.13.13.13m1.94 0h1.41a.14.14 0 0 0 .13-.13V5.91q-.01-.12-.13-.14h-1.4a.13.13 0 0 0-.13.14v1.32q0 .13.12.13m1.98 0h1.4q.13 0 .14-.13V5.91a.13.13 0 0 0-.14-.14H5.4q-.1.01-.12.14v1.32q0 .13.12.13m1.95 0h1.42q.1 0 .12-.13V5.91q0-.12-.12-.14H7.35q-.1.01-.12.14v1.32q.01.13.12.13M3.42 5.5h1.41c.07 0 .13-.08.13-.15V4.03a.13.13 0 0 0-.13-.14h-1.4q-.12 0-.13.14v1.31q0 .13.12.15m1.98 0h1.4c.08 0 .14-.08.14-.15V4.03q0-.13-.14-.14H5.4q-.1 0-.12.14v1.31q0 .13.12.15m1.95 0h1.42c.06 0 .12-.08.12-.15V4.03q-.01-.13-.12-.14H7.35q-.1 0-.12.14v1.31q.01.13.12.15m0-1.9h1.42q.1-.02.12-.14v-1.3Q8.88 2 8.77 2H7.35q-.1 0-.12.14v1.3q.01.13.12.14m1.97 3.78h1.4a.13.13 0 0 0 .14-.13V5.91q-.01-.12-.13-.14H9.32q-.1.01-.12.14v1.32q.01.13.12.13" opacity=".5"/>
|
|
54
|
-
</symbol>`,kc=`<symbol id="file-tree-builtin-eslint" viewBox="0 0 16 16">
|
|
55
|
-
<path fill="currentColor" d="M11.16 6.1 8.12 4.35a.3.3 0 0 0-.24 0L4.84 6.1a.3.3 0 0 0-.12.2v3.5q0 .14.12.22l3.04 1.74q.12.08.24 0l3.04-1.74a.2.2 0 0 0 .13-.22V6.3a.3.3 0 0 0-.13-.2" opacity=".5"/>
|
|
56
|
-
<path fill="currentColor" d="m.1 7.69 3.63-6.3A.8.8 0 0 1 4.37 1h7.26c.26 0 .5.17.64.4l3.63 6.27a.8.8 0 0 1 0 .75l-3.63 6.24a.7.7 0 0 1-.64.34H4.37a.7.7 0 0 1-.64-.34L.1 8.41a.7.7 0 0 1 0-.72m3 3.02q.01.15.14.23l4.63 2.66q.13.06.26 0l4.63-2.66a.3.3 0 0 0 .14-.23V5.4a.3.3 0 0 0-.14-.23L8.13 2.52a.3.3 0 0 0-.26 0L3.24 5.17a.3.3 0 0 0-.14.23z"/>
|
|
57
|
-
</symbol>`,Ac=`<symbol id="file-tree-builtin-font" viewBox="0 0 16 16">
|
|
58
|
-
<path fill="currentColor" d="M12.3 13c-1.59 0-2.68-.99-2.68-2.5 0-1.43 1-2.34 2.88-2.35h2.16v-.83c0-1.08-.62-1.68-1.73-1.68-1.05 0-1.66.54-1.73 1.36H9.93c.09-1.43 1.06-2.48 3.05-2.48 1.75 0 3.02.95 3.02 2.68v5.66h-1.29v-1.02h-.04c-.41.66-1.16 1.16-2.37 1.16m.36-1.12c1.14 0 2-.72 2-1.74v-.96H12.6c-1.12 0-1.6.54-1.6 1.28 0 .97.8 1.42 1.66 1.42m-11.24.98H0L3.8 2h1.39l3.8 10.86H7.54l-1.08-3.2H2.5zm3.09-9.25h-.04l-1.6 4.95H6.1z"/>
|
|
59
|
-
</symbol>`,jc=`<symbol id="file-tree-builtin-git" viewBox="0 0 16 16">
|
|
60
|
-
<path fill="currentColor" d="M14.74 7.38 8.62 1.26a.9.9 0 0 0-1.27 0L6.08 2.53l1.61 1.61a1.07 1.07 0 0 1 1.36 1.37l1.55 1.55a1.07 1.07 0 0 1 1.1 1.77 1.07 1.07 0 0 1-1.74-1.16L8.5 6.22v3.8a1.07 1.07 0 1 1-.89-.02V6.15a1.07 1.07 0 0 1-.58-1.4l-1.58-1.6-4.2 4.2a.9.9 0 0 0 0 1.27l6.12 6.12a.9.9 0 0 0 1.27 0l6.09-6.09a.9.9 0 0 0 0-1.27"/>
|
|
61
|
-
</symbol>`,Mc=`<symbol id="file-tree-builtin-go" viewBox="0 0 16 16">
|
|
62
|
-
<path fill="currentColor" fill-rule="evenodd" d="M4.41 4.57A3.2 3.2 0 0 1 6.87 5q.74.49 1.08 1.29.08.12-.1.16l-1.55.4c-.14.03-.15.04-.27-.1a1 1 0 0 0-.44-.34 1.6 1.6 0 0 0-1.68.14q-.95.61-.94 1.73c0 .73.52 1.33 1.25 1.43q.95.1 1.58-.6l.25-.34h-1.8c-.19 0-.24-.12-.17-.27.12-.28.34-.76.47-1a.3.3 0 0 1 .24-.14h2.98a4 4 0 0 1 .64-1.19 4 4 0 0 1 2.6-1.52 3.5 3.5 0 0 1 2.64.46q1.13.73 1.31 2.04a3.5 3.5 0 0 1-1.06 3.09q-.93.92-2.23 1.17l-.74.08a3.5 3.5 0 0 1-2.27-.8 3 3 0 0 1-.93-1.42 4 4 0 0 1-.39.61 4 4 0 0 1-2.64 1.56 3.3 3.3 0 0 1-2.5-.6 3 3 0 0 1-1.18-2.03 3.5 3.5 0 0 1 .8-2.67 4 4 0 0 1 2.6-1.58M13.1 7.5a1.53 1.53 0 0 0-1.9-1.21q-1.3.3-1.62 1.59a1.5 1.5 0 0 0 .85 1.72q.77.33 1.52-.05a2 2 0 0 0 1.18-1.74q0-.17-.03-.3" clip-rule="evenodd"/>
|
|
63
|
-
</symbol>`,Nc=`<symbol id="file-tree-builtin-graphql" viewBox="0 0 16 16">
|
|
64
|
-
<path fill="currentColor" fill-rule="evenodd" d="M8 1a1.25 1.25 0 0 1 1.18 1.65l2.8 1.61q.33-.25.77-.26a1.25 1.25 0 0 1 .48 2.4v3.2a1.25 1.25 0 1 1-1.25 2.13l-2.8 1.62A1.25 1.25 0 0 1 8 15a1.25 1.25 0 0 1-1.18-1.65l-2.8-1.62q-.33.26-.77.27a1.25 1.25 0 0 1-.48-2.4V6.4a1.25 1.25 0 1 1 1.25-2.14l2.8-1.61A1.25 1.25 0 0 1 8 1M4.44 11.14l-.06.13 2.75 1.58a1.25 1.25 0 0 1 1.74 0l2.74-1.58-.05-.13zm3.89-7.68a1.3 1.3 0 0 1-.66 0L4.03 9.77q.37.3.45.78h7.04q.08-.48.45-.78zM4.38 4.73a1.24 1.24 0 0 1-1.02 1.76v3.02l.13.01 3.67-6.35-.03-.02zm4.46-1.56 3.67 6.35.13-.01V6.49a1.25 1.25 0 0 1-1.03-1.76L8.87 3.15z" clip-rule="evenodd"/>
|
|
65
|
-
</symbol>`,Pc=`<symbol id="file-tree-builtin-html" viewBox="0 0 16 16">
|
|
66
|
-
<path fill="currentColor" d="M8 1C2.24 1 1 2.24 1 8s1.24 7 7 7 7-1.24 7-7-1.24-7-7-7" class="bg" opacity=".2"/>
|
|
67
|
-
<path fill="currentColor" d="M10.48 3.76a.5.5 0 0 1 .4.58L10.6 5.8h1.14a.5.5 0 0 1 0 1h-1.32L10 9.2h1.08a.5.5 0 0 1 0 1H9.8l-.3 1.64a.5.5 0 1 1-.98-.18l.27-1.46H6.4l-.3 1.64a.5.5 0 1 1-.98-.18l.27-1.46H4.25a.5.5 0 0 1 0-1h1.32L6 6.8H4.93a.5.5 0 0 1 0-1H6.2l.3-1.64a.5.5 0 1 1 .98.18L7.2 5.8h2.4l.3-1.64a.5.5 0 0 1 .58-.4M6.58 9.2h2.4l.44-2.4h-2.4z" class="fg"/>
|
|
68
|
-
</symbol>`,Fc=`<symbol id="file-tree-builtin-image" viewBox="0 0 16 16">
|
|
69
|
-
<path fill="currentColor" d="M12.5 2A2.5 2.5 0 0 1 15 4.5v4.67l-4.05-3.54-4.08 4.08-3-2L1 10.6V4.5A2.5 2.5 0 0 1 3.5 2z" opacity=".3"/>
|
|
70
|
-
<path fill="currentColor" d="M15 10.5v1a2.5 2.5 0 0 1-2.5 2.5h-9a2.5 2.5 0 0 1-2.46-2.04L4 9l3 2 4-4zm-7-5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0"/>
|
|
71
|
-
</symbol>`,Ic=`<symbol id="file-tree-builtin-javascript" viewBox="0 0 16 16">
|
|
72
|
-
<path fill="currentColor" d="M8 1C2.24 1 1 2.24 1 8s1.24 7 7 7 7-1.24 7-7-1.24-7-7-7" class="bg" opacity=".2"/>
|
|
73
|
-
<path fill="currentColor" d="M8.1 9.64h.95c.04.62.28.76 1.28.76s1.2-.14 1.2-.85c0-.66-.2-.85-1.2-1.07-1.79-.38-2.18-.7-2.18-1.86C8.15 5.3 8.54 5 10.31 5c1.67 0 2.04.26 2.07 1.42h-.95c-.02-.43-.23-.53-1.1-.53-1 0-1.22.14-1.22.74 0 .52.22.7 1.24.92 1.76.38 2.15.73 2.15 2 0 1.44-.4 1.75-2.24 1.75-1.8 0-2.18-.3-2.15-1.66M3.5 9.5h.98c0 .76.15.92.85.92.77 0 .94-.18.94-1.02V5.1h1v4.34c0 1.54-.35 1.87-1.92 1.87-1.55 0-1.89-.32-1.86-1.8"/>
|
|
74
|
-
</symbol>`,Lc=`<symbol id="file-tree-builtin-json" viewBox="0 0 16 16">
|
|
75
|
-
<path fill="currentColor" d="M13.25 11.5V9.75a.5.5 0 0 1 .36-.48l.55-.15a1.16 1.16 0 0 0 0-2.24l-.55-.15a.5.5 0 0 1-.36-.48V4.5a2.5 2.5 0 0 0-2.5-2.5h-.25a.5.5 0 0 0 0 1h.25a1.5 1.5 0 0 1 1.5 1.5v1.75a1.5 1.5 0 0 0 1.09 1.44l.54.15a.16.16 0 0 1 0 .32l-.54.15a1.5 1.5 0 0 0-1.09 1.44v1.75a1.5 1.5 0 0 1-1.5 1.5h-.25a.5.5 0 0 0 0 1h.25a2.5 2.5 0 0 0 2.5-2.5m-10.5 0V9.75a.5.5 0 0 0-.36-.48l-.55-.15a1.16 1.16 0 0 1 0-2.24l.55-.15a.5.5 0 0 0 .36-.48V4.5A2.5 2.5 0 0 1 5.25 2h.25a.5.5 0 0 1 0 1h-.25a1.5 1.5 0 0 0-1.5 1.5v1.75a1.5 1.5 0 0 1-1.09 1.44l-.54.15a.16.16 0 0 0 0 .32l.54.15a1.5 1.5 0 0 1 1.09 1.45v1.74a1.5 1.5 0 0 0 1.5 1.5h.25a.5.5 0 0 1 0 1h-.25a2.5 2.5 0 0 1-2.5-2.5"/>
|
|
76
|
-
</symbol>`,Rc=`<symbol id="file-tree-builtin-markdown" viewBox="0 0 16 16">
|
|
77
|
-
<path fill="currentColor" d="M1 12V4h2l2 2.5L7 4h2v8H7V7.5l-2 2-2-2V12zm9-3 3 3.5L16 9h-2V4h-2v5z"/>
|
|
78
|
-
</symbol>`,zc=`<symbol id="file-tree-builtin-mcp" viewBox="0 0 16 16">
|
|
79
|
-
<path fill="currentColor" d="M9.26-.04a3 3 0 0 1 2 .82 2.8 2.8 0 0 1 .8 2.35 2.9 2.9 0 0 1 2.41.8l.03.02a2.74 2.74 0 0 1 0 3.94l-5.8 5.69-.04.06-.02.07q0 .04.02.07.01.04.04.06l1.2 1.17a.55.55 0 0 1 0 .79.6.6 0 0 1-.81 0l-1.2-1.17a1.3 1.3 0 0 1 0-1.84L13.7 7.1a1.65 1.65 0 0 0 .37-1.82 2 2 0 0 0-.37-.54l-.03-.03a1.73 1.73 0 0 0-2.4 0L6.47 9.4l-.07.06a.58.58 0 0 1-.92-.18.6.6 0 0 1 .12-.6l4.85-4.76a1.65 1.65 0 0 0 0-2.36 1.73 1.73 0 0 0-2.4 0l-6.43 6.3a.6.6 0 0 1-.8 0 .55.55 0 0 1 0-.8L7.25.79a3 3 0 0 1 2-.82"/>
|
|
80
|
-
<path fill="currentColor" d="M9.26 2.19a.6.6 0 0 1 .52.34.6.6 0 0 1 0 .43l-.12.18L4.9 7.79a1.65 1.65 0 0 0 0 2.36 1.73 1.73 0 0 0 2.4 0l4.75-4.66a.58.58 0 0 1 .93.18.6.6 0 0 1-.12.61l-4.75 4.66a2.9 2.9 0 0 1-4.01 0 2.75 2.75 0 0 1-.62-3.04A3 3 0 0 1 4.1 7l4.74-4.65a.6.6 0 0 1 .4-.16"/>
|
|
81
|
-
</symbol>`,Bc=`<symbol id="file-tree-builtin-nextjs" viewBox="0 0 16 16">
|
|
82
|
-
<defs>
|
|
83
|
-
<linearGradient id="a" x1="4.522" x2="14" y1="3.943" y2="16" gradientUnits="userSpaceOnUse">
|
|
84
|
-
<stop stop-color="currentColor"/>
|
|
85
|
-
<stop offset="1" stop-color="currentColor" stop-opacity="0"/>
|
|
86
|
-
</linearGradient>
|
|
87
|
-
</defs>
|
|
88
|
-
<path fill="currentColor" d="M3 2h1.522v9.09H3z"/>
|
|
89
|
-
<path fill="url(#a)" d="M4.903 2 15 15.075q-.565.5-1.195.925L4.522 3.943z"/>
|
|
90
|
-
<path fill="currentColor" d="M12.172 2h-1.508v9.094h1.508z"/>
|
|
91
|
-
</symbol>`,Vc=`<symbol id="file-tree-builtin-npm" viewBox="0 0 16 16">
|
|
92
|
-
<path fill="currentColor" d="M2 1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1z" class="vector" opacity=".2"/>
|
|
93
|
-
<path fill="currentColor" d="M10.5 13H13V3H3v10h5V5.5h2.5z"/>
|
|
94
|
-
</symbol>`,Hc=`<symbol id="file-tree-builtin-oxc" viewBox="0 0 16 16">
|
|
95
|
-
<path fill="currentColor" d="M9.5 1a.5.5 0 0 1 .5.5V3h3.5a.5.5 0 0 1 .38.83L10.5 7.69v1.44q.41.04.95-.16a4 4 0 0 0 .72-.35l.04-.03h.01a.5.5 0 0 1 .67.1l2 2.5a.5.5 0 0 1 0 .62c-.76.96-3.14 2.69-6.89 2.69s-6.13-1.73-6.89-2.69a.5.5 0 0 1 0-.62l2-2.5a.5.5 0 0 1 .67-.1l.05.03.16.09q.22.13.56.26.54.2.95.16V7.69L2.12 3.83A.5.5 0 0 1 2.5 3H6V1.5a.5.5 0 0 1 .5-.5zM7 3.5a.5.5 0 0 1-.5.5H3.6l2.78 3.17a.5.5 0 0 1 .12.33v2a.5.5 0 0 1-.28.45c-.7.35-1.5.15-2.02-.05a5 5 0 0 1-.58-.26l-1.46 1.84c.82.78 2.8 2.02 5.84 2.02s5.02-1.24 5.84-2.02l-1.46-1.83a5 5 0 0 1-.58.26c-.52.2-1.33.39-2.02.04a.5.5 0 0 1-.28-.45v-2a.5.5 0 0 1 .12-.33L12.4 4H9.5a.5.5 0 0 1-.5-.5V2H7z"/>
|
|
96
|
-
</symbol>`,Uc=`<symbol id="file-tree-builtin-postcss" viewBox="0 0 16 16">
|
|
97
|
-
<path fill="currentColor" d="M14.5 8a6.5 6.5 0 0 0-5.9-6.47l5.42 8.93A7 7 0 0 0 14.5 8M2.88 12A6.5 6.5 0 0 0 8 14.5c2.08 0 3.93-.98 5.12-2.5zm8.62-1h1.68L11.5 8.24zm-1-.55a4 4 0 0 1-.7.55h.7zM8 5.5a2.5 2.5 0 1 0 0 5 2.5 2.5 0 0 0 0-5M5.5 11h.7a4 4 0 0 1-.7-.55zm-2.68 0H4.5V8.24zm3.76-6.2A4 4 0 0 1 8 4.5q.76 0 1.42.3L8 2.46zM1.5 8q0 1.31.48 2.46L7.4 1.53A6.5 6.5 0 0 0 1.5 8m14 0a7.5 7.5 0 0 1-.99 3.72l-.01.03-.02.03A7.5 7.5 0 0 1 8 15.5a7.5 7.5 0 0 1-6.5-3.75l-.01-.03A7.5 7.5 0 1 1 15.5 8"/>
|
|
98
|
-
</symbol>`,Wc=`<symbol id="file-tree-builtin-prettier" viewBox="0 0 16 16">
|
|
99
|
-
<path fill="currentColor" d="M6 12v1H4.93v-1zm1-2v1H2v-1zm6-4v1h-3V6zm-1-4v1H9V2z"/>
|
|
100
|
-
<path fill="currentColor" d="M11.5 10v1H8v-1zM5 6v1H2V6zm5-2v1H9V4z" opacity=".8"/>
|
|
101
|
-
<path fill="currentColor" d="M6 14v1H2v-1zm-.5-6v1H2V8zM13 4v1h-3V4zM4.93 2v1H2V2z" opacity=".6"/>
|
|
102
|
-
<path fill="currentColor" d="M4.93 12v1H2v-1zM13 8v1H9V8zM5.5 4v1H2V4zM9 2v1H4.93V2z" opacity=".4"/>
|
|
103
|
-
</symbol>`,Gc=`<symbol id="file-tree-builtin-python" viewBox="0 0 16 16">
|
|
104
|
-
<path fill="currentColor" d="M8.33 8.4H10c1.16 0 1.9-.73 1.9-1.86V5.08q0-.24.25-.24h.74c.75 0 1.33.32 1.66.97q.4.73.41 1.46c.09.9.09 1.78-.24 2.67-.25.73-.75 1.3-1.58 1.46h-4.8c-.08 0-.25 0-.25.08v.4s.17.09.25.09h2.82q.34-.02.33.32v1.06c0 .56-.25.97-.75 1.13-.41.16-.83.33-1.24.4a7 7 0 0 1-2.98-.07 3 3 0 0 1-1.16-.49c-.33-.32-.58-.65-.5-1.14v-2.91c0-1.13.67-1.78 1.82-1.78q.89-.1 1.66-.08m2.32 4.86a.65.65 0 0 0-.66-.65c-.34 0-.67.33-.67.65s.33.57.67.65a.65.65 0 0 0 .66-.65" class="bg" opacity=".8"/>
|
|
105
|
-
<path fill="currentColor" d="M7.67 7.6H6c-1.16 0-1.9.73-1.9 1.86v1.46q0 .24-.25.24h-.74c-.75 0-1.33-.32-1.66-.97a3 3 0 0 1-.41-1.46 6 6 0 0 1 .24-2.67c.25-.73.75-1.3 1.58-1.46h4.8c.08 0 .25 0 .25-.08v-.4s-.17-.09-.25-.09H4.85c-.24 0-.33-.08-.33-.32V2.65c0-.56.25-.97.75-1.13.41-.16.83-.33 1.24-.4a7 7 0 0 1 2.98.07c.41.09.83.25 1.16.49.33.32.58.65.5 1.13v2.92c0 1.14-.67 1.78-1.82 1.78-.58.08-1.16.08-1.66.08M5.35 2.73c0 .33.25.65.66.65.33 0 .66-.32.66-.65 0-.32-.33-.56-.66-.64a.65.65 0 0 0-.66.64" class="fg"/>
|
|
106
|
-
</symbol>`,Kc=`<symbol id="file-tree-builtin-react" viewBox="0 0 16 16">
|
|
107
|
-
<path fill="currentColor" d="M8 6.65c.73 0 1.31.6 1.31 1.35S8.73 9.35 8 9.35 6.69 8.75 6.69 8 7.27 6.65 8 6.65"/>
|
|
108
|
-
<path fill="currentColor" fill-rule="evenodd" d="M8 2.55c1.3-.99 2.59-1.34 3.5-.8.92.55 1.27 1.87 1.08 3.53C14.06 5.94 15 6.9 15 8s-.94 2.06-2.42 2.72c.19 1.65-.16 2.98-1.08 3.52-.91.55-2.2.2-3.5-.8-1.3 1-2.58 1.35-3.5.8-.91-.54-1.27-1.87-1.08-3.52C1.94 10.06 1 9.1 1 8s.94-2.06 2.42-2.72c-.19-1.66.17-2.98 1.08-3.52s2.2-.2 3.5.8M4.26 11.2c-.08 1.34.28 2.03.68 2.26s1.15.22 2.25-.52l.11-.09a12 12 0 0 1-1.24-1.39 11 11 0 0 1-1.8-.41zm7.47-.15q-.83.27-1.79.41-.6.8-1.24 1.4l.11.08c1.1.74 1.86.76 2.25.52.4-.23.76-.92.68-2.26zm-3.04.54a14 14 0 0 1-1.38 0q.34.38.69.7.35-.32.7-.7M8 5.29q-.76 0-1.47.1A13 13 0 0 0 5.07 8a14 14 0 0 0 1.46 2.62 13 13 0 0 0 2.94 0A13 13 0 0 0 10.93 8a14 14 0 0 0-1.46-2.62A13 13 0 0 0 8 5.3M4.64 9.18q-.15.5-.25.96.44.16.94.27a15 15 0 0 1-.7-1.23m6.73 0a15 15 0 0 1-.7 1.23q.5-.11.95-.27a10 10 0 0 0-.25-.96M3.44 6.26C2.27 6.86 1.87 7.53 1.87 8s.4 1.14 1.57 1.74l.13.07q.18-.88.55-1.81a12 12 0 0 1-.55-1.8q-.07.02-.13.06m8.99-.07A12 12 0 0 1 11.88 8q.36.94.55 1.8l.13-.06c1.17-.6 1.56-1.27 1.56-1.74s-.39-1.14-1.56-1.74zm-7.1-.6q-.5.11-.94.27.1.46.25.96a15 15 0 0 1 .69-1.23m5.34 0a15 15 0 0 1 .7 1.23q.14-.5.24-.96-.44-.15-.94-.27M7.18 3.06c-1.09-.74-1.85-.76-2.24-.52s-.76.92-.69 2.26l.01.15a11 11 0 0 1 1.8-.41q.6-.8 1.24-1.4zm3.88-.52c-.4-.24-1.15-.22-2.25.52l-.12.08q.65.6 1.25 1.4.96.15 1.8.41v-.14c.08-1.35-.28-2.04-.68-2.27M8 3.7a10 10 0 0 0-.7.7 14 14 0 0 1 1.4 0 10 10 0 0 0-.7-.7" clip-rule="evenodd"/>
|
|
109
|
-
</symbol>`,qc=`<symbol id="file-tree-builtin-ruby" viewBox="0 0 16 16">
|
|
110
|
-
<path fill="currentColor" fill-rule="evenodd" d="M11.04 2c.48 0 .92.23 1.18.6l2.54 3.65c.37.52.3 1.23-.15 1.69l-5.58 5.64a1.47 1.47 0 0 1-2.06 0L1.39 7.94a1.3 1.3 0 0 1-.15-1.7l2.54-3.63q.2-.3.5-.45.33-.16.68-.16zm.84 2.17a.5.5 0 0 0-.7-.05L8 6.84 4.83 4.12a.5.5 0 0 0-.65.76L6.65 7H3.5a.5.5 0 0 0 0 1h9a.5.5 0 0 0 0-1H9.35l2.48-2.12a.5.5 0 0 0 .05-.7" clip-rule="evenodd"/>
|
|
111
|
-
</symbol>`,Jc=`<symbol id="file-tree-builtin-rust" viewBox="0 0 16 16">
|
|
112
|
-
<path fill="currentColor" fill-rule="evenodd" d="M8 .8a.2.2 0 0 1 .18.1l.38.6.16.02.5-.53.01-.01a.2.2 0 0 1 .33.08l.25.68.16.05.59-.43h.02a.2.2 0 0 1 .3.14l.12.71.15.08.65-.3a.2.2 0 0 1 .2.02.2.2 0 0 1 .1.18l-.03.72.12.1.71-.16a.2.2 0 0 1 .25.25l-.17.7q.06.06.1.13l.73-.03A.2.2 0 0 1 14 4a.2.2 0 0 1 .02.2l-.3.66.08.14.71.12a.2.2 0 0 1 .14.32l-.43.59.05.16.68.25a.2.2 0 0 1 .07.35l-.53.49.01.16.62.38a.2.2 0 0 1 0 .36l-.62.38-.01.16.53.5a.2.2 0 0 1-.07.34l-.68.25-.05.16.43.59a.2.2 0 0 1-.14.32l-.72.12-.07.15.3.65a.2.2 0 0 1-.02.2.2.2 0 0 1-.18.1l-.72-.03-.1.13.16.7a.2.2 0 0 1-.25.25l-.7-.17-.13.1.03.73a.2.2 0 0 1-.1.18.2.2 0 0 1-.2.02l-.66-.3-.14.08-.12.71a.2.2 0 0 1-.32.14l-.59-.43-.16.05-.25.68a.2.2 0 0 1-.34.07l-.5-.53-.16.01-.38.62a.2.2 0 0 1-.36 0l-.38-.62-.16-.01-.5.53a.2.2 0 0 1-.34-.07l-.25-.68-.16-.05-.59.43a.2.2 0 0 1-.32-.14L5 13.78l-.15-.07-.65.3a.2.2 0 0 1-.2-.02.2.2 0 0 1-.1-.18l.03-.72-.13-.1-.7.16a.2.2 0 0 1-.25-.25l.17-.7-.1-.13-.73.03a.2.2 0 0 1-.2-.3l.3-.66-.08-.14-.71-.12a.2.2 0 0 1-.14-.32l.43-.59-.05-.16-.68-.25A.2.2 0 0 1 1 9.22l.53-.5-.02-.16-.6-.38A.2.2 0 0 1 .8 8a.2.2 0 0 1 .1-.18l.6-.38.02-.16-.53-.5a.2.2 0 0 1 .07-.34l.68-.25.05-.16-.43-.59a.2.2 0 0 1 .14-.32L2.2 5l.08-.15L2 4.2a.2.2 0 0 1 .2-.3l.72.03.1-.13-.16-.7a.2.2 0 0 1 .25-.25l.7.16.13-.1-.03-.72A.2.2 0 0 1 4 2a.2.2 0 0 1 .2-.02l.65.3L5 2.2l.12-.71v-.03a.2.2 0 0 1 .32-.1l.59.41.16-.04.25-.68.01-.02A.2.2 0 0 1 6.8.99l.49.53.16-.02.38-.61.02-.02A.2.2 0 0 1 8 .79M6.8 9.45h1.26l.06.01q.03.01.03.05v1.52q0 .07-.09.06h-4.5A5.4 5.4 0 0 0 8 13.42a5.4 5.4 0 0 0 4.45-2.33h-2.42c-.36 0-.68-.5-.77-.75-.08-.22-.2-.91-.25-1.12-.15-.61-.59-.71-.78-.73H6.8zM8 2.58a5.4 5.4 0 0 0-4.07 1.85h5.74l.17.02c.23.03.6.12.96.35.34.23.83.68.83 1.4 0 .66-.55 1.16-1.08 1.5.42.33.7.53.86 1.44.04.17.34.32.62.29.29-.03.62-.16.62-.75v-.24q0-.1.07-.1h.68A5.43 5.43 0 0 0 8 2.59M2.96 6.03a5.4 5.4 0 0 0-.19 3.37h1.66V6.03zM6.8 7.06h1.66c.35 0 .77-.12.77-.47 0-.42-.55-.53-.65-.53H6.8z" clip-rule="evenodd"/>
|
|
113
|
-
</symbol>`,Yc=`<symbol id="file-tree-builtin-sass" viewBox="0 0 16 16">
|
|
114
|
-
<path fill="currentColor" fill-rule="evenodd" d="M8.08 1.44c2.41-.91 4.96-.37 5.35 1.27.39 1.62-.92 3.56-2.6 4.25a5 5 0 0 1-3.26.35c-.58-.2-.92-.62-1-.85-.03-.09-.09-.24 0-.3.05-.03.08-.02.22.15s.7.6 1.75.48c2.78-.34 4.45-2.64 3.92-3.88-.37-.87-2.5-1.26-5.18.16C4.03 4.81 3.85 6.24 3.82 6.8c-.08 1.5 1.73 2.28 2.7 3.4q.04.03.07.08c.3-.12.7-.19 1.35-.2 1.58-.03 2.47 1.08 2.43 2.08-.03.78-.7 1.1-.82 1.13-.1.01-.14.02-.15-.06q-.03-.06.13-.15c.16-.09.42-.3.48-.72.05-.43-.24-1.44-1.76-1.63a3 3 0 0 0-1.33.08c.27.62.32 1.87-.29 2.83-.63 1-1.8 1.61-2.93 1.27-.37-.1-.93-.92-.45-2.05.46-1.07 2.4-2.12 2.66-2.26-.9-.83-3.08-1.95-3.4-3.65-.08-.49.13-1.65 1.46-2.98a12 12 0 0 1 4.11-2.52m-1.88 9.7c-.01.01-.9.47-1.52 1.17-.59.66-.75 1.48-.43 1.69.3.18 1-.04 1.51-.62a3 3 0 0 0 .5-.9q.2-.64.02-1.39z" clip-rule="evenodd"/>
|
|
115
|
-
</symbol>`,Xc=`<symbol id="file-tree-builtin-stylelint" viewBox="0 0 16 16">
|
|
116
|
-
<path fill="currentColor" d="M4 3v3.5l1.5-1L7 15 .5 6l1-1.5L0 3l2.5-2h1zm12 0-1.5 1.5 1 1.5L9 15l1.5-9.5 1.5 1V3l.5-2h1zm-8 8.5a.5.5 0 1 1 0 1 .5.5 0 0 1 0-1m0-3a.5.5 0 1 1 0 1 .5.5 0 0 1 0-1m0-3a.5.5 0 1 1 0 1 .5.5 0 0 1 0-1"/>
|
|
117
|
-
<path fill="currentColor" d="M6.5 2.5V4l-2 1.5v-4zm5 3L9.5 4V2.5l2-1zM9 4H7V2.5h2z"/>
|
|
118
|
-
</symbol>`,Zc=`<symbol id="file-tree-builtin-svelte" viewBox="0 0 16 16">
|
|
119
|
-
<path fill="currentColor" d="m3.98 3.7 3.36-2.08a4.5 4.5 0 0 1 5.9 1.23 4 4 0 0 1 .7 3.02q-.16.75-.58 1.4c.42.77.56 1.66.4 2.52a3.7 3.7 0 0 1-1.57 2.4l-.17.1-3.36 2.09a4.5 4.5 0 0 1-5.9-1.23 4 4 0 0 1-.66-1.44 4 4 0 0 1-.04-1.58 4 4 0 0 1 .58-1.4 4 4 0 0 1-.4-2.52 3.7 3.7 0 0 1 1.57-2.4zl3.36-2.08zm7.87 0a2.7 2.7 0 0 0-1.26-.95 2.7 2.7 0 0 0-1.6-.07 3 3 0 0 0-.52.2l-.16.09-3.36 2.08a2 2 0 0 0-.69.64 2 2 0 0 0-.36.86 2.3 2.3 0 0 0 .42 1.81A2.7 2.7 0 0 0 7.18 9.4q.28-.06.53-.2l.16-.09 1.28-.79.2-.09a.8.8 0 0 1 .87.31.7.7 0 0 1 .13.55.7.7 0 0 1-.24.4l-.08.05-3.36 2.08-.2.09a1 1 0 0 1-.49-.02 1 1 0 0 1-.38-.3 1 1 0 0 1-.13-.37v-.1l.01-.13-.13-.03a4 4 0 0 1-1.1-.5l-.2-.14-.18-.12-.07.18-.08.3a2.3 2.3 0 0 0 .43 1.82q.45.64 1.19.93.73.28 1.51.14l.16-.04q.27-.07.52-.2l.16-.09 3.36-2.08q.4-.25.69-.64.27-.4.36-.86a2.3 2.3 0 0 0-.42-1.82 2.7 2.7 0 0 0-1.27-.95 2.7 2.7 0 0 0-1.6-.08q-.27.07-.52.2l-.16.1-1.28.79-.2.09a1 1 0 0 1-.49-.03 1 1 0 0 1-.38-.29.7.7 0 0 1-.13-.54.7.7 0 0 1 .24-.4l.08-.06L9.33 4.4l.2-.1a.8.8 0 0 1 .87.32 1 1 0 0 1 .13.38v.22l.11.04q.6.18 1.12.5l.2.14.17.12.06-.19.08-.3a2.3 2.3 0 0 0-.42-1.81z"/>
|
|
120
|
-
</symbol>`,Qc=`<symbol id="file-tree-builtin-svg" viewBox="0 0 16 16">
|
|
121
|
-
<path fill="currentColor" d="M5 7a2 2 0 0 1 2-2h6a2 2 0 0 1 2 2v6a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2z"/>
|
|
122
|
-
<path fill="currentColor" d="M6 1a5 5 0 0 1 4.58 3H7a3 3 0 0 0-3 3v3.58A5 5 0 0 1 6 1" opacity=".5"/>
|
|
123
|
-
</symbol>`,$c=`<symbol id="file-tree-builtin-svgo" viewBox="0 0 16 16">
|
|
124
|
-
<path fill="currentColor" d="M9.43 4.8A.6.6 0 1 1 9.19 6l-.56.96a1.2 1.2 0 0 1 .32 1.58l.7.53a.89.89 0 1 1-.17.22l-.7-.52a1.2 1.2 0 0 1-1.4.25l-.56.87a.75.75 0 1 1-.57-.2 1 1 0 0 1 .32.05l.56-.87a1.2 1.2 0 0 1-.4-1.24l-1.2-.47a.56.56 0 1 1 .1-.28v.02l1.2.47a1.2 1.2 0 0 1 1.56-.55l.56-.97a.6.6 0 0 1-.15-.64.6.6 0 0 1 .63-.4"/>
|
|
125
|
-
<path fill="currentColor" fill-rule="evenodd" d="M9.17 1q.16.63.27 1.26a6 6 0 0 1 1.61.67q.52-.38 1.08-.71l1.65 1.64q-.32.56-.68 1.05.48.78.72 1.67.6.09 1.18.25v2.32q-.55.15-1.11.24a6 6 0 0 1-.7 1.82q.31.44.59.91l-1.65 1.65-.85-.55a6 6 0 0 1-1.9.83q-.08.47-.2.95H6.84q-.12-.46-.2-.93a6 6 0 0 1-1.96-.81q-.39.27-.8.51l-1.65-1.65q.25-.43.53-.84a6 6 0 0 1-.75-1.9L1 9.16V6.83q.54-.14 1.09-.24a6 6 0 0 1 .77-1.74q-.33-.47-.63-.98l1.65-1.65q.54.32 1.03.68a6 6 0 0 1 1.66-.66q.1-.61.26-1.24zM7.96 3.73a4 4 0 0 0-1.74.36 4.5 4.5 0 0 0-2.3 2.3 4.4 4.4 0 0 0-.1 3.29l.03.06a4.4 4.4 0 0 0 2.4 2.47 4.4 4.4 0 0 0 3.48-.02l.03-.02a4.4 4.4 0 0 0 2.3-2.42l.06-.14a4.4 4.4 0 0 0-.2-3.4 4.4 4.4 0 0 0-2.13-2.07L9.47 4a4 4 0 0 0-1.51-.27" clip-rule="evenodd"/>
|
|
126
|
-
</symbol>`,el=`<symbol id="file-tree-builtin-swift" viewBox="0 0 16 16">
|
|
127
|
-
<path fill="currentColor" d="M9.63 1c6.15 4.35 4.16 9.15 4.16 9.15s1.75 2.05 1.04 3.85c0 0-.72-1.26-1.93-1.26-1.17 0-1.85 1.26-4.2 1.26C3.47 14 1 9.46 1 9.46c4.71 3.22 7.93.94 7.93.94C6.8 9.12 2.29 3 2.29 3c3.93 3.47 5.63 4.39 5.63 4.39-1.01-.87-3.86-5.13-3.86-5.13C6.34 4.66 10.86 8 10.86 8c1.28-3.7-1.23-7-1.23-7"/>
|
|
128
|
-
</symbol>`,tl=`<symbol id="file-tree-builtin-table" viewBox="0 0 16 16">
|
|
129
|
-
<path fill="currentColor" d="M8 4a3 3 0 0 0 3 3h3v5.5a2.5 2.5 0 0 1-2.5 2.5h-7A2.5 2.5 0 0 1 2 12.5v-9A2.5 2.5 0 0 1 4.5 1H8z" class="bg" opacity=".4"/>
|
|
130
|
-
<path fill="currentColor" d="M11.5 8a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5v-4a.5.5 0 0 1 .5-.5zM5 12h2.5v-1H5zm3.5 0H11v-1H8.5zM5 10h2.5V9H5zm3.5 0H11V9H8.5zm1-9a.5.5 0 0 1 .354.146l4 4A.5.5 0 0 1 14 5.5V6h-3a2 2 0 0 1-2-2V1z" class="fg"/>
|
|
131
|
-
</symbol>`,nl=`<symbol id="file-tree-builtin-tailwind" viewBox="0 0 16 16">
|
|
132
|
-
<path fill="currentColor" fill-rule="evenodd" d="M8 4Q5.2 4 4.5 6.67q1.05-1.34 2.45-1c.53.12.91.5 1.33.9C8.98 7.23 9.77 8 11.5 8q2.8 0 3.5-2.67-1.05 1.34-2.45 1c-.53-.12-.91-.5-1.33-.9C10.52 4.77 9.73 4 8 4M4.5 8Q1.7 8 1 10.67q1.05-1.34 2.45-1c.53.12.91.5 1.33.9C5.48 11.23 6.26 12 8 12q2.8 0 3.5-2.67-1.05 1.34-2.45 1c-.53-.12-.91-.5-1.33-.9C7.02 8.77 6.24 8 4.5 8" clip-rule="evenodd"/>
|
|
133
|
-
</symbol>`,rl=`<symbol id="file-tree-builtin-terraform" viewBox="0 0 16 16">
|
|
134
|
-
<path fill="currentColor" d="M1 0v5.05l4.35 2.53V2.53zm9.18 5.34L5.83 2.82v5.05l4.35 2.53zm.47 5.06V5.34L15 2.82v5.05zm-.48 5.6-4.35-2.53V8.42l4.35 2.53z"/>
|
|
135
|
-
</symbol>`,il=`<symbol id="file-tree-builtin-text" viewBox="0 0 16 16">
|
|
136
|
-
<path fill="currentColor" fill-rule="evenodd" d="M8 4a3 3 0 0 0 3 3h3v5.5a2.5 2.5 0 0 1-2.5 2.5h-7A2.5 2.5 0 0 1 2 12.5v-9A2.5 2.5 0 0 1 4.5 1H8z" class="bg" clip-rule="evenodd" opacity=".4"/>
|
|
137
|
-
<path fill="currentColor" d="M8.5 11a.5.5 0 0 1 0 1h-3a.5.5 0 0 1 0-1zm2-2a.5.5 0 0 1 0 1h-5a.5.5 0 0 1 0-1zm-1-8a.5.5 0 0 1 .354.146l4 4A.5.5 0 0 1 14 5.5V6h-3a2 2 0 0 1-2-2V1z"/>
|
|
138
|
-
</symbol>`,al=`<symbol id="file-tree-builtin-typescript" viewBox="0 0 16 16">
|
|
139
|
-
<path fill="currentColor" d="M8 1C2.24 1 1 2.24 1 8s1.24 7 7 7 7-1.24 7-7-1.24-7-7-7" class="bg" opacity=".2"/>
|
|
140
|
-
<path fill="currentColor" d="M8.1 9.64h.95c.04.62.28.76 1.28.76s1.2-.14 1.2-.85c0-.66-.2-.85-1.2-1.07-1.79-.38-2.18-.7-2.18-1.86C8.15 5.3 8.54 5 10.31 5c1.67 0 2.04.26 2.07 1.42h-.95c-.02-.43-.23-.53-1.1-.53-1 0-1.22.14-1.22.74 0 .52.22.7 1.24.92 1.76.38 2.15.73 2.15 2 0 1.44-.4 1.75-2.24 1.75-1.8 0-2.18-.3-2.15-1.66m-3 1.57V5.99H3.5v-.9h4.21v.9H6.1v5.22z"/>
|
|
141
|
-
</symbol>`,ol=`<symbol id="file-tree-builtin-vite" viewBox="0 0 16 16">
|
|
142
|
-
<path fill="currentColor" d="M8.57 14.87c-.18.26-.55.11-.55-.22v-3.18l-.05-.27-.13-.22-.2-.15-.24-.06H4.29c-.26 0-.4-.32-.26-.55L6.08 7c.3-.46 0-1.1-.5-1.1H1.8c-.25 0-.4-.32-.25-.56l2.65-4.2A.3.3 0 0 1 4.46 1h7.9c.26 0 .4.32.26.55l-2.05 3.23c-.29.46 0 1.1.5 1.1h3.12c.26 0 .4.34.24.57z"/>
|
|
143
|
-
</symbol>`,sl=`<symbol id="file-tree-builtin-vscode" viewBox="0 0 16 16">
|
|
144
|
-
<path fill="currentColor" d="m5.11 9.68-2.4 1.84a.6.6 0 0 1-.75-.04l-.77-.7a.6.6 0 0 1 0-.87L3.28 8zm5.52-8.42a.51.51 0 0 1 .87.36V4.8L7.32 8 5.1 6.32z" opacity=".75"/>
|
|
145
|
-
<path fill="currentColor" d="M11.1 14.99h.03zM1.96 4.52a.6.6 0 0 1 .75-.04l8.8 6.71v3.19a.51.51 0 0 1-.88.36L1.19 6.1a.6.6 0 0 1 0-.87z" opacity=".65"/>
|
|
146
|
-
<path fill="currentColor" d="M11.62 14.91a.9.9 0 0 1-1-.17.51.51 0 0 0 .88-.36V1.62a.51.51 0 0 0-.87-.36.9.9 0 0 1 1-.17l2.87 1.39a.9.9 0 0 1 .5.8v9.44a.9.9 0 0 1-.5.8z"/>
|
|
147
|
-
</symbol>`,cl=`<symbol id="file-tree-builtin-vue" viewBox="0 0 16 16">
|
|
148
|
-
<path fill="currentColor" d="M9.62 2.25 8 5.02 6.38 2.25H1l7 12 7-12z" opacity=".5"/>
|
|
149
|
-
<path fill="currentColor" d="M9.54 2.25 8 4.95l-1.54-2.7H4l4 7 4-7z"/>
|
|
150
|
-
</symbol>`,ll=`<symbol id="file-tree-builtin-wasm" viewBox="0 0 16 16">
|
|
151
|
-
<path fill="currentColor" d="M13 1a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h3a2 2 0 1 0 4 0z" class="subtract" opacity=".2"/>
|
|
152
|
-
<path fill="currentColor" d="M4.64 11.4h.02l.8-3.4h.91l.73 3.45L7.88 8h.96l-1.25 5h-.97L5.9 9.6 5.1 13h-1L3 8h.98z"/>
|
|
153
|
-
<path fill="currentColor" fill-rule="evenodd" d="M13 13h-1.02l-.33-1.11H9.9L9.64 13h-.97l1.26-5h1.54zm-2.49-3.77-.42 1.84h1.32l-.49-1.84z" clip-rule="evenodd"/>
|
|
154
|
-
</symbol>`,ul=`<symbol id="file-tree-builtin-webpack" viewBox="0 0 16 16">
|
|
155
|
-
<path fill="currentColor" d="M14.1 11.79 8.26 15v-2.5l3.64-1.94zm.4-.35V4.73l-2.14 1.2v4.3zm-12.6.35L7.74 15v-2.5L4.1 10.56zm-.4-.35V4.73l2.14 1.2v4.3zm.25-7.15 6-3.29v2.42L3.9 5.47l-.03.01zm12.5 0L8.25 1v2.42l3.85 2.05.03.01z" class="bg" opacity=".4"/>
|
|
156
|
-
<path fill="currentColor" d="m7.74 11.93-3.59-1.92v-3.8l3.6 2.02zm.52 0 3.59-1.92v-3.8l-3.6 2.02zM4.4 5.77 8 3.85l3.6 1.93L8 7.8z" class="fg"/>
|
|
157
|
-
</symbol>`,dl=`<symbol id="file-tree-builtin-yml" viewBox="0 0 16 16">
|
|
158
|
-
<path fill="currentColor" d="M7.5 2A1.5 1.5 0 0 1 9 3.5v3A1.5 1.5 0 0 1 7.5 8h-2v2A1.5 1.5 0 0 0 7 11.5v-1A1.5 1.5 0 0 1 8.5 9h5a1.5 1.5 0 0 1 1.5 1.5v3a1.5 1.5 0 0 1-1.5 1.5h-5A1.5 1.5 0 0 1 7 13.5v-1A2.5 2.5 0 0 1 4.5 10V8h-2A1.5 1.5 0 0 1 1 6.5v-3A1.5 1.5 0 0 1 2.5 2zm1 8a.5.5 0 0 0-.5.5v3a.5.5 0 0 0 .5.5h5a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 0-.5-.5zm-6-7a.5.5 0 0 0-.5.5v3a.5.5 0 0 0 .5.5h5a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 0-.5-.5z"/>
|
|
159
|
-
</symbol>`,fl=`<symbol id="file-tree-builtin-zig" viewBox="0 0 16 16">
|
|
160
|
-
<path fill="currentColor" d="m14.73 1.5-7.29 8.82h4.17l-1.73 2.04H5.76L1.27 14.5l7.3-8.91H4.39l1.73-2.05h4.12z"/>
|
|
161
|
-
<path fill="currentColor" d="M5.21 3.54 3.56 5.6h-.55v4.73h.83L2.1 12.36H1V3.54zm9.79 0v8.82h-4.3l1.74-2.04h.55V5.68h-.83l1.74-2.14z"/>
|
|
162
|
-
</symbol>`,pl=[yc,Tc,Ec,Dc,Ac,jc,Mc,Pc,Fc,Ic,Lc,Rc,zc,Gc,qc,Jc,el,tl,il,al,`<symbol id="file-tree-builtin-zip" viewBox="0 0 16 16">
|
|
163
|
-
<path fill="currentColor" d="M4.585 2a2 2 0 0 1 1.028.285l1.788 1.072a1 1 0 0 0 .514.143H12A2 2 0 0 1 13.935 5H0V4a2 2 0 0 1 2-2z" class="bg" opacity=".5"/>
|
|
164
|
-
<path fill="currentColor" fill-rule="evenodd" d="M14 12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2v-1.25h1v-1H0V6h14zM9.9 8.25c-.883 0-1.9.5-1.9.5H7v1h1v1s1.017.5 1.9.5c.884 0 1.6-.672 1.6-1.5s-.716-1.5-1.6-1.5M2 9.75v1h1v-1zm2 0v1h1v-1zm2 0v1h1v-1zm-5-1v1h1v-1zm2 0v1h1v-1zm2 0v1h1v-1z" class="fg" clip-rule="evenodd"/>
|
|
165
|
-
</symbol>`],ml=[_c,vc,bc,xc,Sc,Cc,wc,Oc,kc,Nc,Bc,Vc,Hc,Uc,Wc,Kc,Yc,Xc,Zc,Qc,$c,nl,rl,ol,sl,cl,ll,ul,dl,fl];function hl(e,t){return t.length===0?e:e.replace(`</svg>`,`\n ${t.join(`
|
|
166
|
-
`)}\n</svg>`)}var gl=hl(gc,pl),_l={minimal:gc,standard:gl,complete:hl(gl,ml)},vl={".babelrc":`babel`,".babelrc.json":`babel`,".bash_profile":`bash`,".bashrc":`bash`,".browserslistrc":`browserslist`,".dockerignore":`docker`,".eslintignore":`eslint`,".eslintrc":`eslint`,".eslintrc.cjs":`eslint`,".eslintrc.js":`eslint`,".eslintrc.json":`eslint`,".eslintrc.yaml":`eslint`,".eslintrc.yml":`eslint`,".gitattributes":`git`,".gitignore":`git`,".gitkeep":`git`,".gitmodules":`git`,".oxlintrc.json":`oxc`,".postcssrc":`postcss`,".postcssrc.json":`postcss`,".postcssrc.yaml":`postcss`,".postcssrc.yml":`postcss`,".prettierignore":`prettier`,".prettierrc":`prettier`,".prettierrc.cjs":`prettier`,".prettierrc.js":`prettier`,".prettierrc.json":`prettier`,".prettierrc.mjs":`prettier`,".prettierrc.toml":`prettier`,".prettierrc.yaml":`prettier`,".prettierrc.yml":`prettier`,".stylelintignore":`stylelint`,".stylelintrc":`stylelint`,".stylelintrc.cjs":`stylelint`,".stylelintrc.js":`stylelint`,".stylelintrc.json":`stylelint`,".stylelintrc.mjs":`stylelint`,".stylelintrc.yaml":`stylelint`,".stylelintrc.yml":`stylelint`,".terraform.lock.hcl":`terraform`,".zprofile":`bash`,".zshenv":`bash`,".zshrc":`bash`,"babel.config.cjs":`babel`,"babel.config.js":`babel`,"babel.config.json":`babel`,"babel.config.mjs":`babel`,"biome.json":`biome`,"biome.jsonc":`biome`,"bootstrap.bundle.js":`bootstrap`,"bootstrap.bundle.min.js":`bootstrap`,"bootstrap.css":`bootstrap`,"bootstrap.js":`bootstrap`,"bootstrap.min.css":`bootstrap`,"bootstrap.min.js":`bootstrap`,"bun.lock":`bun`,"bun.lockb":`bun`,"bunfig.toml":`bun`,"claude.md":`claude`,"compose.yaml":`docker`,"compose.yml":`docker`,"docker-compose.override.yml":`docker`,"docker-compose.yaml":`docker`,"docker-compose.yml":`docker`,dockerfile:`docker`,"eslint.config.cjs":`eslint`,"eslint.config.js":`eslint`,"eslint.config.mjs":`eslint`,"eslint.config.mts":`eslint`,"eslint.config.ts":`eslint`,gemfile:`ruby`,"next.config.js":`nextjs`,"next.config.mjs":`nextjs`,"next.config.mts":`nextjs`,"next.config.ts":`nextjs`,"postcss.config.cjs":`postcss`,"postcss.config.js":`postcss`,"postcss.config.mjs":`postcss`,"postcss.config.ts":`postcss`,"prettier.config.cjs":`prettier`,"prettier.config.js":`prettier`,"prettier.config.mjs":`prettier`,rakefile:`ruby`,"readme.md":`markdown`,"stylelint.config.cjs":`stylelint`,"stylelint.config.js":`stylelint`,"stylelint.config.mjs":`stylelint`,"svgo.config.cjs":`svgo`,"svgo.config.js":`svgo`,"svgo.config.mjs":`svgo`,"svgo.config.ts":`svgo`,"tailwind.config.cjs":`tailwind`,"tailwind.config.js":`tailwind`,"tailwind.config.mjs":`tailwind`,"tailwind.config.ts":`tailwind`,"vite.config.js":`vite`,"vite.config.mjs":`vite`,"vite.config.mts":`vite`,"vite.config.ts":`vite`,"webpack.config.babel.js":`webpack`,"webpack.config.cjs":`webpack`,"webpack.config.js":`webpack`,"webpack.config.mjs":`webpack`,"webpack.config.ts":`webpack`},yl={"7z":`zip`,astro:`astro`,AUTHORS:`text`,avif:`image`,bash:`bash`,bmp:`image`,bz2:`zip`,cfg:`text`,CHANGELOG:`text`,cjs:`javascript`,"code-workspace":`vscode`,conf:`text`,CONTRIBUTORS:`text`,csh:`bash`,css:`css`,csv:`table`,cts:`typescript`,db:`database`,editorconfig:`text`,env:`text`,"env.development":`text`,"env.local":`text`,"env.production":`text`,eot:`font`,erb:`ruby`,fish:`bash`,gemspec:`ruby`,gif:`image`,go:`go`,gql:`graphql`,graphql:`graphql`,gz:`zip`,htm:`html`,html:`html`,icns:`image`,ico:`image`,ini:`text`,jar:`zip`,jpeg:`image`,jpg:`image`,js:`javascript`,json:`json`,json5:`json`,jsonc:`json`,jsonl:`json`,jsx:`javascript`,ksh:`bash`,less:`css`,LICENSE:`text`,log:`text`,markdown:`markdown`,mcp:`mcp`,md:`markdown`,mdx:`markdown`,"mdx.tsx":`markdown`,mjs:`javascript`,mts:`typescript`,ods:`table`,otf:`font`,png:`image`,postcss:`css`,py:`python`,pyi:`python`,pyw:`python`,pyx:`python`,rake:`ruby`,rar:`zip`,rb:`ruby`,rs:`rust`,rst:`text`,rtf:`text`,sass:`css`,scss:`css`,sh:`bash`,sql:`database`,sqlite:`database`,sqlite3:`database`,styl:`css`,svelte:`svelte`,svg:`svg`,swift:`swift`,tar:`zip`,tf:`terraform`,tfstate:`terraform`,tfvars:`terraform`,tgz:`zip`,tif:`image`,tiff:`image`,ts:`typescript`,tsv:`table`,tsx:`typescript`,ttf:`font`,txt:`text`,vue:`vue`,war:`zip`,wasm:`wasm`,wast:`wasm`,wat:`wasm`,webp:`image`,woff:`font`,woff2:`font`,xhtml:`html`,xls:`table`,xlsx:`table`,xz:`zip`,yaml:`yml`,yml:`yml`,zig:`zig`,zip:`zip`,zsh:`bash`},bl={jsx:`react`,sass:`sass`,scss:`sass`,tsx:`react`},xl=new Set([`bash`,`css`,`database`,`default`,`font`,`git`,`go`,`html`,`image`,`javascript`,`json`,`markdown`,`mcp`,`python`,`ruby`,`rust`,`swift`,`table`,`text`,`typescript`,`zip`]),Sl=new Set([`complete`]);function Cl(e){return _l[e===`none`?`minimal`:e]}function wl(e){return`file-tree-builtin-${e}`}function Tl(e){return e!==`none`&&Sl.has(e)}function El(e,t,n){if(e===`minimal`||e===`none`)return;let r=e===`complete`,i=vl[t.toLowerCase()];if(i!=null&&(r||xl.has(i)))return i;for(let e of n){if(r){let t=bl[e];if(t!=null)return t}let t=yl[e];if(t!=null&&(r||xl.has(t)))return t}return`default`}function Dl(e){return e.spriteSheet!=null||e.remap!=null||e.byFileName!=null||e.byFileExtension!=null||e.byFileNameContains!=null}function Ol(e){return e==null?{set:`complete`,colored:!0}:typeof e==`string`?{set:e,colored:!0}:{...e,set:e.set??(Dl(e)?`none`:`complete`),colored:e.colored??!0}}var kl={compact:{itemHeight:24,factor:.8},default:{itemHeight:30,factor:1},relaxed:{itemHeight:36,factor:1.2}};function Al(e,t){if(typeof e==`number`)return{itemHeight:t??kl.default.itemHeight,factor:e};let n=kl[e??`default`];return{itemHeight:t??n.itemHeight,factor:n.factor}}var jl=kl.default.itemHeight,Ml=`@layer base, theme, unsafe;
|
|
167
|
-
|
|
168
|
-
@layer base {
|
|
169
|
-
:host {
|
|
170
|
-
/*
|
|
171
|
-
CSS variables use a fallback stack to ensure user and theme colors slot
|
|
172
|
-
in with ease. User colors take precedence over theme colors, which take
|
|
173
|
-
precedence over defaults.
|
|
174
|
-
|
|
175
|
-
Fallback order:
|
|
176
|
-
|
|
177
|
-
1. --trees-*-override (explicit)
|
|
178
|
-
2. --trees-theme-* (e.g. Shiki/VS Code tokens)
|
|
179
|
-
3. defaults
|
|
180
|
-
|
|
181
|
-
Theme variable names mirror Shiki/VS Code theme file JSON tokens.
|
|
182
|
-
|
|
183
|
-
// Available CSS Color Overrides
|
|
184
|
-
--trees-fg-override
|
|
185
|
-
--trees-fg-muted-override
|
|
186
|
-
--trees-bg-override
|
|
187
|
-
--trees-bg-muted-override
|
|
188
|
-
--trees-accent-override
|
|
189
|
-
--trees-border-color-override
|
|
190
|
-
|
|
191
|
-
--trees-focus-ring-color-override
|
|
192
|
-
--trees-focus-ring-width-override
|
|
193
|
-
--trees-focus-ring-offset-override
|
|
194
|
-
|
|
195
|
-
--trees-search-fg-override
|
|
196
|
-
--trees-search-font-weight-override
|
|
197
|
-
--trees-search-bg-override
|
|
198
|
-
|
|
199
|
-
--trees-selected-fg-override
|
|
200
|
-
--trees-selected-bg-override
|
|
201
|
-
--trees-selected-focused-border-color-override
|
|
202
|
-
|
|
203
|
-
// Git Status Color Overrides
|
|
204
|
-
--trees-status-added-override
|
|
205
|
-
--trees-status-ignored-override
|
|
206
|
-
--trees-status-modified-override
|
|
207
|
-
--trees-status-renamed-override
|
|
208
|
-
--trees-status-untracked-override
|
|
209
|
-
--trees-status-deleted-override
|
|
210
|
-
--trees-git-added-color-override
|
|
211
|
-
--trees-git-ignored-color-override
|
|
212
|
-
--trees-git-modified-color-override
|
|
213
|
-
--trees-git-renamed-color-override
|
|
214
|
-
--trees-git-untracked-color-override
|
|
215
|
-
--trees-git-deleted-color-override
|
|
216
|
-
|
|
217
|
-
// Built-in File Icon Color Overrides
|
|
218
|
-
--trees-file-icon-color
|
|
219
|
-
--trees-file-icon-color-astro
|
|
220
|
-
--trees-file-icon-color-babel
|
|
221
|
-
--trees-file-icon-color-bash
|
|
222
|
-
--trees-file-icon-color-biome
|
|
223
|
-
--trees-file-icon-color-bootstrap
|
|
224
|
-
--trees-file-icon-color-browserslist
|
|
225
|
-
--trees-file-icon-color-bun
|
|
226
|
-
--trees-file-icon-color-claude
|
|
227
|
-
--trees-file-icon-color-css
|
|
228
|
-
--trees-file-icon-color-database
|
|
229
|
-
--trees-file-icon-color-default
|
|
230
|
-
--trees-file-icon-color-docker
|
|
231
|
-
--trees-file-icon-color-eslint
|
|
232
|
-
--trees-file-icon-color-git
|
|
233
|
-
--trees-file-icon-color-go
|
|
234
|
-
--trees-file-icon-color-graphql
|
|
235
|
-
--trees-file-icon-color-html
|
|
236
|
-
--trees-file-icon-color-image
|
|
237
|
-
--trees-file-icon-color-javascript
|
|
238
|
-
--trees-file-icon-color-json
|
|
239
|
-
--trees-file-icon-color-markdown
|
|
240
|
-
--trees-file-icon-color-mcp
|
|
241
|
-
--trees-file-icon-color-npm
|
|
242
|
-
--trees-file-icon-color-oxc
|
|
243
|
-
--trees-file-icon-color-postcss
|
|
244
|
-
--trees-file-icon-color-prettier
|
|
245
|
-
--trees-file-icon-color-python
|
|
246
|
-
--trees-file-icon-color-react
|
|
247
|
-
--trees-file-icon-color-ruby
|
|
248
|
-
--trees-file-icon-color-rust
|
|
249
|
-
--trees-file-icon-color-sass
|
|
250
|
-
--trees-file-icon-color-svg
|
|
251
|
-
--trees-file-icon-color-svelte
|
|
252
|
-
--trees-file-icon-color-svgo
|
|
253
|
-
--trees-file-icon-color-swift
|
|
254
|
-
--trees-file-icon-color-table
|
|
255
|
-
--trees-file-icon-color-text
|
|
256
|
-
--trees-file-icon-color-tailwind
|
|
257
|
-
--trees-file-icon-color-terraform
|
|
258
|
-
--trees-file-icon-color-typescript
|
|
259
|
-
--trees-file-icon-color-vite
|
|
260
|
-
--trees-file-icon-color-vscode
|
|
261
|
-
--trees-file-icon-color-vue
|
|
262
|
-
--trees-file-icon-color-wasm
|
|
263
|
-
--trees-file-icon-color-webpack
|
|
264
|
-
--trees-file-icon-color-yml
|
|
265
|
-
--trees-file-icon-color-zig
|
|
266
|
-
--trees-file-icon-color-zip
|
|
267
|
-
|
|
268
|
-
// Density
|
|
269
|
-
//
|
|
270
|
-
// A unitless scale factor for padding, gaps, and indentation. Usually
|
|
271
|
-
// set via \`density\` on useFileTree. Individual overrides take precedence.
|
|
272
|
-
//
|
|
273
|
-
// Compact: 0.8
|
|
274
|
-
// Default: 1
|
|
275
|
-
// Relaxed: 1.2
|
|
276
|
-
//
|
|
277
|
-
--trees-density-override
|
|
278
|
-
|
|
279
|
-
// Available CSS Layout Overrides
|
|
280
|
-
--trees-gap-override
|
|
281
|
-
--trees-border-radius-override
|
|
282
|
-
--trees-font-family-override
|
|
283
|
-
--trees-font-size-override
|
|
284
|
-
--trees-font-weight-regular-override
|
|
285
|
-
--trees-font-weight-semibold-override
|
|
286
|
-
--trees-level-gap-override
|
|
287
|
-
--trees-item-padding-x-override
|
|
288
|
-
--trees-item-margin-x-override
|
|
289
|
-
--trees-item-row-gap-override
|
|
290
|
-
--trees-icon-width-override
|
|
291
|
-
--trees-icon-nudge-override
|
|
292
|
-
--trees-scrollbar-gutter-override
|
|
293
|
-
--trees-padding-inline-override
|
|
294
|
-
*/
|
|
295
|
-
|
|
296
|
-
--trees-accent: var(--trees-accent-override, #009fff);
|
|
297
|
-
--trees-fg: var(
|
|
298
|
-
--trees-fg-override,
|
|
299
|
-
var(--trees-theme-sidebar-fg, light-dark(#6c6c71, #adadb1))
|
|
300
|
-
);
|
|
301
|
-
--trees-fg-muted: var(
|
|
302
|
-
--trees-fg-muted-override,
|
|
303
|
-
var(--trees-theme-sidebar-header-fg, light-dark(#84848a, #84848a))
|
|
304
|
-
);
|
|
305
|
-
--trees-bg: var(
|
|
306
|
-
--trees-bg-override,
|
|
307
|
-
var(--trees-theme-sidebar-bg, light-dark(#f8f8f8, #141415))
|
|
308
|
-
);
|
|
309
|
-
/* var(--trees-theme-list-hover-bg, light-dark(#dfebff59, #19283c59)) */
|
|
310
|
-
--trees-bg-muted: var(
|
|
311
|
-
--trees-bg-muted-override,
|
|
312
|
-
var(
|
|
313
|
-
--trees-theme-list-hover-bg,
|
|
314
|
-
light-dark(
|
|
315
|
-
color-mix(
|
|
316
|
-
in lab,
|
|
317
|
-
var(--trees-accent) var(--trees-bg-alpha-light, 8%),
|
|
318
|
-
var(--trees-bg)
|
|
319
|
-
),
|
|
320
|
-
color-mix(
|
|
321
|
-
in lab,
|
|
322
|
-
var(--trees-accent) var(--trees-bg-alpha-dark, 10%),
|
|
323
|
-
var(--trees-bg)
|
|
324
|
-
)
|
|
325
|
-
)
|
|
326
|
-
)
|
|
327
|
-
);
|
|
328
|
-
--trees-input-bg: var(
|
|
329
|
-
--trees-input-bg-override,
|
|
330
|
-
light-dark(#f8f8f8, #070707)
|
|
331
|
-
);
|
|
332
|
-
|
|
333
|
-
--trees-added-light: #16a994;
|
|
334
|
-
--trees-added-dark: #00cab1;
|
|
335
|
-
--trees-ignored-light: #adadb1;
|
|
336
|
-
--trees-ignored-dark: #4a4a4e;
|
|
337
|
-
--trees-modified-light: #1ca1c7;
|
|
338
|
-
--trees-modified-dark: #08c0ef;
|
|
339
|
-
--trees-renamed-light: #d5a910;
|
|
340
|
-
--trees-renamed-dark: #ffd452;
|
|
341
|
-
--trees-untracked-light: #16a994;
|
|
342
|
-
--trees-untracked-dark: #00cab1;
|
|
343
|
-
--trees-deleted-light: #ff2e3f;
|
|
344
|
-
--trees-deleted-dark: #ff6762;
|
|
345
|
-
|
|
346
|
-
--trees-border-color: var(
|
|
347
|
-
--trees-border-color-override,
|
|
348
|
-
var(--trees-theme-sidebar-border, light-dark(#eeeeef, #070707))
|
|
349
|
-
);
|
|
350
|
-
--trees-indent-guide-bg: var(
|
|
351
|
-
--trees-indent-guide-bg-override,
|
|
352
|
-
color-mix(in lab, var(--trees-fg-muted) 25%, transparent)
|
|
353
|
-
);
|
|
354
|
-
--trees-density: var(--trees-density-override, 1);
|
|
355
|
-
--trees-border-radius: var(
|
|
356
|
-
--trees-border-radius-override,
|
|
357
|
-
calc(6px * var(--trees-density))
|
|
358
|
-
);
|
|
359
|
-
|
|
360
|
-
--trees-font-family: var(--trees-font-family-override, system-ui);
|
|
361
|
-
--trees-font-size: var(--trees-font-size-override, 13px);
|
|
362
|
-
--trees-font-weight-regular: var(--trees-font-weight-regular-override, 400);
|
|
363
|
-
--trees-font-weight-semibold: var(
|
|
364
|
-
--trees-font-weight-semibold-override,
|
|
365
|
-
600
|
|
366
|
-
);
|
|
367
|
-
|
|
368
|
-
--trees-focus-ring-color: var(
|
|
369
|
-
--trees-focus-ring-color-override,
|
|
370
|
-
var(--trees-theme-focus-ring, var(--trees-accent))
|
|
371
|
-
);
|
|
372
|
-
--trees-focus-ring-width: var(--trees-focus-ring-width-override, 1px);
|
|
373
|
-
--trees-focus-ring-offset: var(--trees-focus-ring-offset-override, -1px);
|
|
374
|
-
|
|
375
|
-
--trees-search-fg: var(
|
|
376
|
-
--trees-search-fg-override,
|
|
377
|
-
var(--trees-theme-input-fg, var(--trees-fg))
|
|
378
|
-
);
|
|
379
|
-
--trees-search-font-weight: var(--trees-search-font-weight-override, 600);
|
|
380
|
-
--trees-search-bg: var(
|
|
381
|
-
--trees-search-bg-override,
|
|
382
|
-
var(--trees-theme-input-bg, var(--trees-input-bg))
|
|
383
|
-
);
|
|
384
|
-
|
|
385
|
-
--trees-scrollbar-thumb: var(
|
|
386
|
-
--trees-scrollbar-thumb-override,
|
|
387
|
-
var(
|
|
388
|
-
--trees-theme-scrollbar-thumb,
|
|
389
|
-
color-mix(in lab, var(--trees-fg) 25%, var(--trees-bg))
|
|
390
|
-
)
|
|
391
|
-
);
|
|
392
|
-
|
|
393
|
-
--trees-selected-fg: var(
|
|
394
|
-
--trees-selected-fg-override,
|
|
395
|
-
var(--trees-theme-list-active-selection-fg, var(--trees-fg))
|
|
396
|
-
);
|
|
397
|
-
--trees-selected-bg: var(
|
|
398
|
-
--trees-selected-bg-override,
|
|
399
|
-
var(
|
|
400
|
-
--trees-theme-list-active-selection-bg,
|
|
401
|
-
light-dark(
|
|
402
|
-
color-mix(in lab, var(--trees-accent) 12%, var(--trees-bg)),
|
|
403
|
-
color-mix(in lab, var(--trees-accent) 15%, var(--trees-bg))
|
|
404
|
-
)
|
|
405
|
-
)
|
|
406
|
-
);
|
|
407
|
-
--trees-selected-focused-border-color: var(
|
|
408
|
-
--trees-selected-focused-border-color-override,
|
|
409
|
-
var(--trees-theme-focus-ring, var(--trees-accent))
|
|
410
|
-
);
|
|
411
|
-
|
|
412
|
-
/* Git status (e.g. from Shiki theme gitDecoration.*) */
|
|
413
|
-
--trees-status-added: var(
|
|
414
|
-
--trees-status-added-override,
|
|
415
|
-
var(
|
|
416
|
-
--trees-theme-git-added-fg,
|
|
417
|
-
light-dark(var(--trees-added-light), var(--trees-added-dark))
|
|
418
|
-
)
|
|
419
|
-
);
|
|
420
|
-
--trees-status-ignored: var(
|
|
421
|
-
--trees-status-ignored-override,
|
|
422
|
-
var(
|
|
423
|
-
--trees-theme-git-ignored-fg,
|
|
424
|
-
light-dark(var(--trees-ignored-light), var(--trees-ignored-dark))
|
|
425
|
-
)
|
|
426
|
-
);
|
|
427
|
-
--trees-status-modified: var(
|
|
428
|
-
--trees-status-modified-override,
|
|
429
|
-
var(
|
|
430
|
-
--trees-theme-git-modified-fg,
|
|
431
|
-
light-dark(var(--trees-modified-light), var(--trees-modified-dark))
|
|
432
|
-
)
|
|
433
|
-
);
|
|
434
|
-
--trees-status-renamed: var(
|
|
435
|
-
--trees-status-renamed-override,
|
|
436
|
-
var(
|
|
437
|
-
--trees-theme-git-renamed-fg,
|
|
438
|
-
light-dark(var(--trees-renamed-light), var(--trees-renamed-dark))
|
|
439
|
-
)
|
|
440
|
-
);
|
|
441
|
-
--trees-status-untracked: var(
|
|
442
|
-
--trees-status-untracked-override,
|
|
443
|
-
var(
|
|
444
|
-
--trees-theme-git-untracked-fg,
|
|
445
|
-
light-dark(var(--trees-untracked-light), var(--trees-untracked-dark))
|
|
446
|
-
)
|
|
447
|
-
);
|
|
448
|
-
--trees-status-deleted: var(
|
|
449
|
-
--trees-status-deleted-override,
|
|
450
|
-
var(
|
|
451
|
-
--trees-theme-git-deleted-fg,
|
|
452
|
-
light-dark(var(--trees-deleted-light), var(--trees-deleted-dark))
|
|
453
|
-
)
|
|
454
|
-
);
|
|
455
|
-
--trees-git-modified-color: var(
|
|
456
|
-
--trees-git-modified-color-override,
|
|
457
|
-
var(--trees-status-modified)
|
|
458
|
-
);
|
|
459
|
-
--trees-git-added-color: var(
|
|
460
|
-
--trees-git-added-color-override,
|
|
461
|
-
var(--trees-status-added)
|
|
462
|
-
);
|
|
463
|
-
--trees-git-ignored-color: var(
|
|
464
|
-
--trees-git-ignored-color-override,
|
|
465
|
-
var(--trees-status-ignored)
|
|
466
|
-
);
|
|
467
|
-
--trees-git-deleted-color: var(
|
|
468
|
-
--trees-git-deleted-color-override,
|
|
469
|
-
var(--trees-status-deleted)
|
|
470
|
-
);
|
|
471
|
-
--trees-git-renamed-color: var(
|
|
472
|
-
--trees-git-renamed-color-override,
|
|
473
|
-
var(--trees-status-renamed)
|
|
474
|
-
);
|
|
475
|
-
--trees-git-untracked-color: var(
|
|
476
|
-
--trees-git-untracked-color-override,
|
|
477
|
-
var(--trees-status-untracked)
|
|
478
|
-
);
|
|
479
|
-
|
|
480
|
-
--trees-icon-gray: light-dark(#84848a, #adadb1);
|
|
481
|
-
--trees-icon-red: light-dark(#d52c36, #ff6762);
|
|
482
|
-
--trees-icon-vermilion: light-dark(#ff8c5b, #d5512f);
|
|
483
|
-
--trees-icon-orange: light-dark(#d47628, #ffa359);
|
|
484
|
-
--trees-icon-yellow: light-dark(#d5a910, #ffd452);
|
|
485
|
-
--trees-icon-green: light-dark(#199f43, #5ecc71);
|
|
486
|
-
--trees-icon-teal: light-dark(#17a5af, #64d1db);
|
|
487
|
-
--trees-icon-cyan: light-dark(#1ca1c7, #68cdf2);
|
|
488
|
-
--trees-icon-blue: light-dark(#1a85d4, #69b1ff);
|
|
489
|
-
--trees-icon-indigo: light-dark(#693acf, #9d6afb);
|
|
490
|
-
--trees-icon-purple: light-dark(#a631be, #d568ea);
|
|
491
|
-
--trees-icon-pink: light-dark(#d32a61, #ff678d);
|
|
492
|
-
--trees-icon-mauve: light-dark(#594c5b, #79697b);
|
|
493
|
-
|
|
494
|
-
--trees-file-icon-color-default: var(
|
|
495
|
-
--trees-file-icon-color,
|
|
496
|
-
var(--trees-icon-gray)
|
|
497
|
-
);
|
|
498
|
-
--trees-file-icon-color-astro: var(
|
|
499
|
-
--trees-file-icon-color,
|
|
500
|
-
var(--trees-icon-purple)
|
|
501
|
-
);
|
|
502
|
-
--trees-file-icon-color-babel: var(
|
|
503
|
-
--trees-file-icon-color,
|
|
504
|
-
var(--trees-icon-yellow)
|
|
505
|
-
);
|
|
506
|
-
--trees-file-icon-color-bash: var(
|
|
507
|
-
--trees-file-icon-color,
|
|
508
|
-
var(--trees-icon-green)
|
|
509
|
-
);
|
|
510
|
-
--trees-file-icon-color-biome: var(
|
|
511
|
-
--trees-file-icon-color,
|
|
512
|
-
var(--trees-icon-blue)
|
|
513
|
-
);
|
|
514
|
-
--trees-file-icon-color-bootstrap: var(
|
|
515
|
-
--trees-file-icon-color,
|
|
516
|
-
var(--trees-icon-indigo)
|
|
517
|
-
);
|
|
518
|
-
--trees-file-icon-color-browserslist: var(
|
|
519
|
-
--trees-file-icon-color,
|
|
520
|
-
var(--trees-icon-yellow)
|
|
521
|
-
);
|
|
522
|
-
--trees-file-icon-color-bun: var(
|
|
523
|
-
--trees-file-icon-color,
|
|
524
|
-
var(--trees-icon-mauve)
|
|
525
|
-
);
|
|
526
|
-
--trees-file-icon-color-claude: var(
|
|
527
|
-
--trees-file-icon-color,
|
|
528
|
-
var(--trees-icon-orange)
|
|
529
|
-
);
|
|
530
|
-
--trees-file-icon-color-css: var(
|
|
531
|
-
--trees-file-icon-color,
|
|
532
|
-
var(--trees-icon-indigo)
|
|
533
|
-
);
|
|
534
|
-
--trees-file-icon-color-database: var(
|
|
535
|
-
--trees-file-icon-color,
|
|
536
|
-
var(--trees-icon-purple)
|
|
537
|
-
);
|
|
538
|
-
--trees-file-icon-color-docker: var(
|
|
539
|
-
--trees-file-icon-color,
|
|
540
|
-
var(--trees-icon-blue)
|
|
541
|
-
);
|
|
542
|
-
--trees-file-icon-color-eslint: var(
|
|
543
|
-
--trees-file-icon-color,
|
|
544
|
-
var(--trees-icon-indigo)
|
|
545
|
-
);
|
|
546
|
-
--trees-file-icon-color-git: var(
|
|
547
|
-
--trees-file-icon-vermilion,
|
|
548
|
-
var(--trees-icon-vermilion)
|
|
549
|
-
);
|
|
550
|
-
--trees-file-icon-color-go: var(
|
|
551
|
-
--trees-file-icon-color,
|
|
552
|
-
var(--trees-icon-cyan)
|
|
553
|
-
);
|
|
554
|
-
--trees-file-icon-color-graphql: var(
|
|
555
|
-
--trees-file-icon-color,
|
|
556
|
-
var(--trees-icon-pink)
|
|
557
|
-
);
|
|
558
|
-
--trees-file-icon-color-html: var(
|
|
559
|
-
--trees-file-icon-color,
|
|
560
|
-
var(--trees-icon-orange)
|
|
561
|
-
);
|
|
562
|
-
--trees-file-icon-color-image: var(
|
|
563
|
-
--trees-file-icon-color,
|
|
564
|
-
var(--trees-icon-pink)
|
|
565
|
-
);
|
|
566
|
-
--trees-file-icon-color-javascript: var(
|
|
567
|
-
--trees-file-icon-color,
|
|
568
|
-
var(--trees-icon-yellow)
|
|
569
|
-
);
|
|
570
|
-
--trees-file-icon-color-json: var(
|
|
571
|
-
--trees-file-icon-color,
|
|
572
|
-
var(--trees-icon-orange)
|
|
573
|
-
);
|
|
574
|
-
--trees-file-icon-color-markdown: var(
|
|
575
|
-
--trees-file-icon-color,
|
|
576
|
-
var(--trees-icon-green)
|
|
577
|
-
);
|
|
578
|
-
--trees-file-icon-color-mcp: var(
|
|
579
|
-
--trees-file-icon-color,
|
|
580
|
-
var(--trees-icon-teal)
|
|
581
|
-
);
|
|
582
|
-
--trees-file-icon-color-npm: var(
|
|
583
|
-
--trees-file-icon-color,
|
|
584
|
-
var(--trees-icon-red)
|
|
585
|
-
);
|
|
586
|
-
--trees-file-icon-color-oxc: var(
|
|
587
|
-
--trees-file-icon-cyan,
|
|
588
|
-
var(--trees-icon-cyan)
|
|
589
|
-
);
|
|
590
|
-
--trees-file-icon-color-postcss: var(
|
|
591
|
-
--trees-file-icon-color,
|
|
592
|
-
var(--trees-icon-red)
|
|
593
|
-
);
|
|
594
|
-
--trees-file-icon-color-prettier: var(
|
|
595
|
-
--trees-file-icon-color,
|
|
596
|
-
var(--trees-icon-teal)
|
|
597
|
-
);
|
|
598
|
-
--trees-file-icon-color-python: var(
|
|
599
|
-
--trees-file-icon-color,
|
|
600
|
-
var(--trees-icon-blue)
|
|
601
|
-
);
|
|
602
|
-
--trees-file-icon-color-react: var(
|
|
603
|
-
--trees-file-icon-color,
|
|
604
|
-
var(--trees-icon-cyan)
|
|
605
|
-
);
|
|
606
|
-
--trees-file-icon-color-ruby: var(
|
|
607
|
-
--trees-file-icon-color,
|
|
608
|
-
var(--trees-icon-red)
|
|
609
|
-
);
|
|
610
|
-
--trees-file-icon-color-rust: var(
|
|
611
|
-
--trees-file-icon-color,
|
|
612
|
-
var(--trees-icon-orange)
|
|
613
|
-
);
|
|
614
|
-
--trees-file-icon-color-sass: var(
|
|
615
|
-
--trees-file-icon-color,
|
|
616
|
-
var(--trees-icon-pink)
|
|
617
|
-
);
|
|
618
|
-
--trees-file-icon-color-svg: var(
|
|
619
|
-
--trees-file-icon-color,
|
|
620
|
-
var(--trees-icon-orange)
|
|
621
|
-
);
|
|
622
|
-
--trees-file-icon-color-svelte: var(
|
|
623
|
-
--trees-file-icon-color,
|
|
624
|
-
var(--trees-icon-red)
|
|
625
|
-
);
|
|
626
|
-
--trees-file-icon-color-svgo: var(
|
|
627
|
-
--trees-file-icon-color,
|
|
628
|
-
var(--trees-icon-green)
|
|
629
|
-
);
|
|
630
|
-
--trees-file-icon-color-swift: var(
|
|
631
|
-
--trees-file-icon-color,
|
|
632
|
-
var(--trees-icon-orange)
|
|
633
|
-
);
|
|
634
|
-
--trees-file-icon-color-table: var(
|
|
635
|
-
--trees-file-icon-color,
|
|
636
|
-
var(--trees-icon-teal)
|
|
637
|
-
);
|
|
638
|
-
--trees-file-icon-color-text: var(
|
|
639
|
-
--trees-file-icon-color,
|
|
640
|
-
var(--trees-icon-gray)
|
|
641
|
-
);
|
|
642
|
-
--trees-file-icon-color-tailwind: var(
|
|
643
|
-
--trees-file-icon-color,
|
|
644
|
-
var(--trees-icon-cyan)
|
|
645
|
-
);
|
|
646
|
-
--trees-file-icon-color-terraform: var(
|
|
647
|
-
--trees-file-icon-color,
|
|
648
|
-
var(--trees-icon-indigo)
|
|
649
|
-
);
|
|
650
|
-
--trees-file-icon-color-typescript: var(
|
|
651
|
-
--trees-file-icon-color,
|
|
652
|
-
var(--trees-icon-blue)
|
|
653
|
-
);
|
|
654
|
-
--trees-file-icon-color-vite: var(
|
|
655
|
-
--trees-file-icon-color,
|
|
656
|
-
var(--trees-icon-purple)
|
|
657
|
-
);
|
|
658
|
-
--trees-file-icon-color-vscode: var(
|
|
659
|
-
--trees-file-icon-color,
|
|
660
|
-
var(--trees-icon-blue)
|
|
661
|
-
);
|
|
662
|
-
--trees-file-icon-color-vue: var(
|
|
663
|
-
--trees-file-icon-color,
|
|
664
|
-
var(--trees-icon-green)
|
|
665
|
-
);
|
|
666
|
-
--trees-file-icon-color-wasm: var(
|
|
667
|
-
--trees-file-icon-color,
|
|
668
|
-
var(--trees-icon-indigo)
|
|
669
|
-
);
|
|
670
|
-
--trees-file-icon-color-webpack: var(
|
|
671
|
-
--trees-file-icon-color,
|
|
672
|
-
var(--trees-icon-blue)
|
|
673
|
-
);
|
|
674
|
-
--trees-file-icon-color-yml: var(
|
|
675
|
-
--trees-file-icon-color,
|
|
676
|
-
var(--trees-icon-red)
|
|
677
|
-
);
|
|
678
|
-
--trees-file-icon-color-zig: var(
|
|
679
|
-
--trees-file-icon-color,
|
|
680
|
-
var(--trees-icon-orange)
|
|
681
|
-
);
|
|
682
|
-
--trees-file-icon-color-zip: var(
|
|
683
|
-
--trees-file-icon-color,
|
|
684
|
-
var(--trees-icon-orange)
|
|
685
|
-
);
|
|
686
|
-
|
|
687
|
-
--trees-level-gap: var(
|
|
688
|
-
--trees-level-gap-override,
|
|
689
|
-
calc(8px * var(--trees-density))
|
|
690
|
-
);
|
|
691
|
-
--trees-item-padding-x: var(
|
|
692
|
-
--trees-item-padding-x-override,
|
|
693
|
-
calc(8px * var(--trees-density))
|
|
694
|
-
);
|
|
695
|
-
--trees-item-margin-x: var(
|
|
696
|
-
--trees-item-margin-x-override,
|
|
697
|
-
calc(2px * var(--trees-density))
|
|
698
|
-
);
|
|
699
|
-
--trees-item-row-gap: var(
|
|
700
|
-
--trees-item-row-gap-override,
|
|
701
|
-
calc(6px * var(--trees-density))
|
|
702
|
-
);
|
|
703
|
-
--trees-icon-width: var(--trees-icon-width-override, 16px);
|
|
704
|
-
--trees-icon-nudge: var(
|
|
705
|
-
--trees-icon-nudge-override,
|
|
706
|
-
calc(1px * var(--trees-density))
|
|
707
|
-
);
|
|
708
|
-
--trees-row-height: var(--trees-item-height, 30px);
|
|
709
|
-
--trees-git-lane-width: var(--trees-git-lane-width-override, 12px);
|
|
710
|
-
--trees-action-lane-width: var(
|
|
711
|
-
--trees-action-lane-width-override,
|
|
712
|
-
calc(var(--trees-icon-width) + 2px)
|
|
713
|
-
);
|
|
714
|
-
/* Keep the floating trigger aligned with the row's action lane. Going in
|
|
715
|
-
from the root's right edge: the scroll container reserves
|
|
716
|
-
\`--trees-padding-inline\` of effective inset on each side (its asymmetric
|
|
717
|
-
padding formula cancels the scrollbar gutter on the right), the row
|
|
718
|
-
sits inside that inset, and its trailing \`--trees-item-padding-x\` is the
|
|
719
|
-
action lane itself. The trigger's own focus-ring margin then trims one
|
|
720
|
-
pixel back so the button's visible right edge lines up with the lane. */
|
|
721
|
-
--trees-context-menu-trigger-inline-offset: calc(
|
|
722
|
-
var(--trees-padding-inline) + var(--trees-item-padding-x) -
|
|
723
|
-
var(--trees-focus-ring-width)
|
|
724
|
-
);
|
|
725
|
-
|
|
726
|
-
--trees-scrollbar-gutter: var(--trees-scrollbar-gutter-override, 6px);
|
|
727
|
-
--trees-padding-inline: var(--trees-padding-inline-override, 16px);
|
|
728
|
-
|
|
729
|
-
color-scheme: light dark;
|
|
730
|
-
display: flex;
|
|
731
|
-
flex-direction: column;
|
|
732
|
-
font-size: var(--trees-font-size);
|
|
733
|
-
color: var(--trees-fg);
|
|
734
|
-
background-color: var(--trees-bg);
|
|
735
|
-
--truncate-marker-background-color: var(--trees-bg);
|
|
736
|
-
--truncate-marker-background-overlay-color: transparent;
|
|
737
|
-
font-family: var(--trees-font-family);
|
|
738
|
-
font-weight: var(--trees-font-weight-regular);
|
|
739
|
-
}
|
|
740
|
-
|
|
741
|
-
:host([data-file-tree-virtualized='true']) {
|
|
742
|
-
height: 100%;
|
|
743
|
-
overflow: hidden;
|
|
744
|
-
}
|
|
745
|
-
|
|
746
|
-
[data-file-tree-virtualized-wrapper='true'] {
|
|
747
|
-
height: 100%;
|
|
748
|
-
overflow: hidden;
|
|
749
|
-
display: flex;
|
|
750
|
-
flex-direction: column;
|
|
751
|
-
}
|
|
752
|
-
|
|
753
|
-
[data-file-tree-virtualized-root='true'] {
|
|
754
|
-
height: 100%;
|
|
755
|
-
display: flex;
|
|
756
|
-
flex-direction: column;
|
|
757
|
-
overflow: hidden;
|
|
758
|
-
}
|
|
759
|
-
|
|
760
|
-
[data-file-tree-virtualized-scroll='true'],
|
|
761
|
-
[data-file-tree-scrollbar-measure='true'] {
|
|
762
|
-
overflow-y: auto;
|
|
763
|
-
scrollbar-gutter: stable;
|
|
764
|
-
|
|
765
|
-
&::-webkit-scrollbar {
|
|
766
|
-
width: var(--trees-scrollbar-gutter);
|
|
767
|
-
height: var(--trees-scrollbar-gutter);
|
|
768
|
-
}
|
|
769
|
-
|
|
770
|
-
&::-webkit-scrollbar-track {
|
|
771
|
-
background: transparent;
|
|
772
|
-
}
|
|
773
|
-
|
|
774
|
-
&::-webkit-scrollbar-thumb {
|
|
775
|
-
background-color: var(--trees-scrollbar-thumb);
|
|
776
|
-
border: 1px solid transparent;
|
|
777
|
-
background-clip: content-box;
|
|
778
|
-
border-radius: calc(var(--trees-scrollbar-gutter) / 2);
|
|
779
|
-
}
|
|
780
|
-
|
|
781
|
-
&::-webkit-scrollbar-corner {
|
|
782
|
-
background-color: transparent;
|
|
783
|
-
}
|
|
784
|
-
}
|
|
785
|
-
|
|
786
|
-
/* These are styles for a temporarily generated element to measure the size
|
|
787
|
-
* of the scrollbar. It's intended to be somewhat similar in scrollbar style
|
|
788
|
-
* scope to the scrollable tree so \`--trees-scrollbar-gutter-measured\` is an
|
|
789
|
-
* accurate reflection of the size the scrollbar gutter takes up. */
|
|
790
|
-
[data-file-tree-scrollbar-measure='true'] {
|
|
791
|
-
position: absolute;
|
|
792
|
-
top: 0;
|
|
793
|
-
left: 0;
|
|
794
|
-
visibility: hidden;
|
|
795
|
-
pointer-events: none;
|
|
796
|
-
width: 100px;
|
|
797
|
-
height: 100px;
|
|
798
|
-
}
|
|
799
|
-
|
|
800
|
-
@supports (-moz-appearance: none) {
|
|
801
|
-
[data-file-tree-virtualized-scroll='true'],
|
|
802
|
-
[data-file-tree-scrollbar-measure='true'] {
|
|
803
|
-
scrollbar-width: thin;
|
|
804
|
-
scrollbar-color: var(--trees-scrollbar-thumb) transparent;
|
|
805
|
-
}
|
|
806
|
-
}
|
|
807
|
-
|
|
808
|
-
[data-file-tree-virtualized-scroll='true'] {
|
|
809
|
-
position: relative;
|
|
810
|
-
overflow-y: auto;
|
|
811
|
-
flex: 1 1 0;
|
|
812
|
-
min-height: 0;
|
|
813
|
-
padding-inline: max(
|
|
814
|
-
calc(var(--trees-padding-inline) - var(--trees-item-margin-x)),
|
|
815
|
-
0px
|
|
816
|
-
)
|
|
817
|
-
/* NOTE(amadeus): We can assume that all Webkit based browser gutters
|
|
818
|
-
* will align to the value of '--trees-scrollbar-gutter', however if not, then
|
|
819
|
-
* \`--trees-scrollbar-gutter-measured\` should correct it. Mostly we are
|
|
820
|
-
* hoping to avoid SSR alignment jumps if possible. In non-SSR'd environments
|
|
821
|
-
* \`--trees-scrollbar-gutter-measured\` should always be immediately available.
|
|
822
|
-
*/
|
|
823
|
-
max(
|
|
824
|
-
calc(
|
|
825
|
-
var(--trees-padding-inline) - var(--trees-item-margin-x) -
|
|
826
|
-
var(
|
|
827
|
-
--trees-scrollbar-gutter-measured,
|
|
828
|
-
var(--trees-scrollbar-gutter)
|
|
829
|
-
)
|
|
830
|
-
),
|
|
831
|
-
0px
|
|
832
|
-
);
|
|
833
|
-
}
|
|
834
|
-
|
|
835
|
-
@supports (-moz-appearance: none) {
|
|
836
|
-
[data-file-tree-virtualized-scroll='true'] {
|
|
837
|
-
padding-inline: max(
|
|
838
|
-
calc(var(--trees-padding-inline) - var(--trees-item-margin-x)),
|
|
839
|
-
0px
|
|
840
|
-
)
|
|
841
|
-
/* NOTE(amadeus): However on Firefox it can vary a little bit, but most
|
|
842
|
-
* likely the majority of cases will default to a 0px width scrollbar lets
|
|
843
|
-
* inherit that first to avoid SSR jumps. In non-SSR'd environments
|
|
844
|
-
* \`--trees-scrollbar-gutter-measured\` should always be immediately available.
|
|
845
|
-
*/
|
|
846
|
-
max(
|
|
847
|
-
calc(
|
|
848
|
-
var(--trees-padding-inline) - var(--trees-item-margin-x) -
|
|
849
|
-
var(--trees-scrollbar-gutter-measured, 0px)
|
|
850
|
-
),
|
|
851
|
-
0px
|
|
852
|
-
);
|
|
853
|
-
}
|
|
854
|
-
}
|
|
855
|
-
|
|
856
|
-
[data-file-tree-sticky-overlay='true'] {
|
|
857
|
-
position: sticky;
|
|
858
|
-
top: 0;
|
|
859
|
-
height: 0;
|
|
860
|
-
z-index: 4;
|
|
861
|
-
overflow: visible;
|
|
862
|
-
pointer-events: none;
|
|
863
|
-
}
|
|
864
|
-
|
|
865
|
-
/* The overlay DOM is kept populated even at scrollTop=0 so the browser has
|
|
866
|
-
* the rendered rows on hand the moment scrolling begins — otherwise the
|
|
867
|
-
* compositor paints a scrolled frame before React can mount the overlay,
|
|
868
|
-
* and the topmost sticky folder jumps up by a couple of pixels before it
|
|
869
|
-
* "snaps" into its pinned position. We hide it via CSS whenever the scroll
|
|
870
|
-
* is at the top and no scroll is in progress, so the preview doesn't leak
|
|
871
|
-
* through at rest. \`data-overlay-reveal\` is stamped on the root only when
|
|
872
|
-
* the user initiates a scroll while already at the top — exactly the case
|
|
873
|
-
* where we need the pre-mounted overlay to be visible through the first
|
|
874
|
-
* compositor frame. It is deliberately distinct from the general
|
|
875
|
-
* \`data-is-scrolling\` flag so a scroll that ends at the top (e.g. ArrowUp
|
|
876
|
-
* navigation) re-hides the overlay the instant the scroll lands, rather
|
|
877
|
-
* than waiting for the hover-suppression timer to elapse. */
|
|
878
|
-
[data-file-tree-virtualized-root='true'][data-scroll-at-top='true']:not(
|
|
879
|
-
[data-overlay-reveal]
|
|
880
|
-
)
|
|
881
|
-
[data-file-tree-sticky-overlay='true'] {
|
|
882
|
-
visibility: hidden;
|
|
883
|
-
}
|
|
884
|
-
|
|
885
|
-
[data-file-tree-sticky-overlay-content='true'] {
|
|
886
|
-
background-color: var(--trees-bg);
|
|
887
|
-
position: relative;
|
|
888
|
-
pointer-events: none;
|
|
889
|
-
}
|
|
890
|
-
|
|
891
|
-
[data-file-tree-virtualized-list='true'] {
|
|
892
|
-
background-color: var(--trees-bg);
|
|
893
|
-
position: relative;
|
|
894
|
-
min-height: 100%;
|
|
895
|
-
width: 100%;
|
|
896
|
-
overflow-anchor: none;
|
|
897
|
-
|
|
898
|
-
&[data-is-scrolling] {
|
|
899
|
-
pointer-events: none;
|
|
900
|
-
}
|
|
901
|
-
}
|
|
902
|
-
|
|
903
|
-
[data-file-tree-virtualized-sticky-offset='true'] {
|
|
904
|
-
contain: layout size;
|
|
905
|
-
}
|
|
906
|
-
|
|
907
|
-
[data-file-tree-virtualized-sticky='true'] {
|
|
908
|
-
position: sticky;
|
|
909
|
-
top: 0;
|
|
910
|
-
width: 100%;
|
|
911
|
-
display: flex;
|
|
912
|
-
flex-direction: column;
|
|
913
|
-
isolation: isolate;
|
|
914
|
-
/* Promote to its own compositor layer so text inside the window is
|
|
915
|
-
* rasterized once and GPU-translated during scroll. Without this, the
|
|
916
|
-
* browser re-paints the window (and its text) at every scroll frame,
|
|
917
|
-
* which produces visible 1px shake / character tearing. */
|
|
918
|
-
will-change: transform;
|
|
919
|
-
}
|
|
920
|
-
|
|
921
|
-
[data-file-tree-search-container] {
|
|
922
|
-
display: flex;
|
|
923
|
-
padding: 0;
|
|
924
|
-
padding-inline: var(--trees-padding-inline);
|
|
925
|
-
margin-bottom: var(--trees-item-row-gap);
|
|
926
|
-
}
|
|
927
|
-
|
|
928
|
-
[data-file-tree-search-input] {
|
|
929
|
-
--trees-focus-ring-width: 2px;
|
|
930
|
-
font-family: var(--trees-font-family);
|
|
931
|
-
font-size: var(--trees-font-size);
|
|
932
|
-
flex: 1;
|
|
933
|
-
height: var(--trees-row-height);
|
|
934
|
-
/* 1px breathing room so the focus-visible outline isn't clipped when the
|
|
935
|
-
* input sits flush against the top of the scroll container. */
|
|
936
|
-
margin-block: 1px;
|
|
937
|
-
padding-inline: var(--trees-item-padding-x);
|
|
938
|
-
line-height: var(--trees-row-height);
|
|
939
|
-
color: var(--trees-search-fg);
|
|
940
|
-
background-color: var(--trees-search-bg);
|
|
941
|
-
border: 1px solid var(--trees-border-color);
|
|
942
|
-
border-radius: var(--trees-border-radius);
|
|
943
|
-
outline: none;
|
|
944
|
-
|
|
945
|
-
&::placeholder {
|
|
946
|
-
color: color-mix(
|
|
947
|
-
in lab,
|
|
948
|
-
var(--trees-search-fg) 65%,
|
|
949
|
-
var(--trees-search-bg)
|
|
950
|
-
);
|
|
951
|
-
}
|
|
952
|
-
|
|
953
|
-
&:focus-visible,
|
|
954
|
-
&[data-file-tree-search-input-fake-focus='true'] {
|
|
955
|
-
outline: var(--trees-focus-ring-width) solid var(--trees-focus-ring-color);
|
|
956
|
-
outline-offset: var(--trees-focus-ring-offset);
|
|
957
|
-
}
|
|
958
|
-
}
|
|
959
|
-
|
|
960
|
-
/* The wrapper for the tree items */
|
|
961
|
-
[role='tree'] {
|
|
962
|
-
position: relative;
|
|
963
|
-
display: flex;
|
|
964
|
-
flex-direction: column;
|
|
965
|
-
gap: var(--trees-gap-override, 0);
|
|
966
|
-
}
|
|
967
|
-
|
|
968
|
-
/* LIST ITEM */
|
|
969
|
-
[data-type='item'] {
|
|
970
|
-
color: inherit;
|
|
971
|
-
font-family: var(--trees-font-family);
|
|
972
|
-
font-size: var(--trees-font-size);
|
|
973
|
-
text-align: start;
|
|
974
|
-
outline: none;
|
|
975
|
-
background-color: var(--trees-bg);
|
|
976
|
-
border: none;
|
|
977
|
-
position: relative;
|
|
978
|
-
|
|
979
|
-
padding: 0 var(--trees-item-padding-x);
|
|
980
|
-
margin: 0 var(--trees-item-margin-x);
|
|
981
|
-
cursor: pointer;
|
|
982
|
-
-webkit-user-select: none;
|
|
983
|
-
user-select: none;
|
|
984
|
-
-webkit-touch-callout: none;
|
|
985
|
-
touch-action: manipulation;
|
|
986
|
-
display: flex;
|
|
987
|
-
flex: 0 0 var(--trees-row-height);
|
|
988
|
-
align-items: center;
|
|
989
|
-
height: var(--trees-row-height);
|
|
990
|
-
line-height: var(--trees-row-height);
|
|
991
|
-
gap: var(--trees-item-row-gap);
|
|
992
|
-
border-radius: var(--trees-border-radius);
|
|
993
|
-
/* Row states may be translucent, so markers paint the tree background first
|
|
994
|
-
* and then the state color on top to avoid compositing the same alpha twice. */
|
|
995
|
-
--truncate-marker-background-color: var(--trees-bg);
|
|
996
|
-
--truncate-marker-background-overlay-color: transparent;
|
|
997
|
-
--truncate-marker-block-inset: 0px;
|
|
998
|
-
|
|
999
|
-
&:hover,
|
|
1000
|
-
&[data-item-context-hover='true'] {
|
|
1001
|
-
background-color: var(--trees-bg-muted);
|
|
1002
|
-
--truncate-marker-background-overlay-color: var(--trees-bg-muted);
|
|
1003
|
-
}
|
|
1004
|
-
|
|
1005
|
-
&[data-item-focused='true'],
|
|
1006
|
-
&:focus-visible {
|
|
1007
|
-
z-index: 2;
|
|
1008
|
-
|
|
1009
|
-
/* Flattened segment markers sit high enough to cover the row outline unless
|
|
1010
|
-
* their painted background is inset by the focus ring width. */
|
|
1011
|
-
[data-item-flattened-subitems] {
|
|
1012
|
-
--truncate-marker-block-inset: var(--trees-focus-ring-width);
|
|
1013
|
-
}
|
|
1014
|
-
|
|
1015
|
-
&::before {
|
|
1016
|
-
position: absolute;
|
|
1017
|
-
inset: 0;
|
|
1018
|
-
content: '';
|
|
1019
|
-
display: block;
|
|
1020
|
-
border-radius: var(--trees-border-radius);
|
|
1021
|
-
outline: var(--trees-focus-ring-width) solid
|
|
1022
|
-
var(--trees-focus-ring-color);
|
|
1023
|
-
outline-offset: var(--trees-focus-ring-offset);
|
|
1024
|
-
pointer-events: none;
|
|
1025
|
-
}
|
|
1026
|
-
|
|
1027
|
-
&[data-item-selected='true']::before {
|
|
1028
|
-
outline-color: var(--trees-selected-focused-border-color);
|
|
1029
|
-
}
|
|
1030
|
-
}
|
|
1031
|
-
|
|
1032
|
-
&[data-item-selected='true'] {
|
|
1033
|
-
color: var(--trees-selected-fg);
|
|
1034
|
-
background-color: var(--trees-selected-bg);
|
|
1035
|
-
--truncate-marker-background-overlay-color: var(--trees-selected-bg);
|
|
1036
|
-
z-index: 3;
|
|
1037
|
-
|
|
1038
|
-
[data-item-section='icon'] {
|
|
1039
|
-
color: var(--trees-selected-fg);
|
|
1040
|
-
}
|
|
1041
|
-
}
|
|
1042
|
-
|
|
1043
|
-
&[data-item-search-match='true'] {
|
|
1044
|
-
font-weight: var(--trees-search-font-weight);
|
|
1045
|
-
}
|
|
1046
|
-
}
|
|
1047
|
-
|
|
1048
|
-
[data-type='item'][data-file-tree-sticky-row='true'] {
|
|
1049
|
-
pointer-events: auto;
|
|
1050
|
-
}
|
|
1051
|
-
|
|
1052
|
-
/* Sticky rows opt back into pointer events because the overlay wrapper is
|
|
1053
|
-
* inert. During scroll, put them back under the same hover suppression as
|
|
1054
|
-
* the virtualized list so translucent hover states and menu triggers do not
|
|
1055
|
-
* paint over rows moving beneath the sticky stack. */
|
|
1056
|
-
[data-file-tree-virtualized-root='true'][data-is-scrolling]
|
|
1057
|
-
[data-type='item'][data-file-tree-sticky-row='true'] {
|
|
1058
|
-
pointer-events: none;
|
|
1059
|
-
}
|
|
1060
|
-
|
|
1061
|
-
[data-file-tree-virtualized-root='true'][data-is-scrolling]
|
|
1062
|
-
[data-type='item'][data-file-tree-sticky-row='true']:hover:not(
|
|
1063
|
-
[data-item-selected='true']
|
|
1064
|
-
),
|
|
1065
|
-
[data-file-tree-virtualized-root='true'][data-is-scrolling]
|
|
1066
|
-
[data-type='item'][data-file-tree-sticky-row='true'][data-item-context-hover='true']:not(
|
|
1067
|
-
[data-item-selected='true']
|
|
1068
|
-
) {
|
|
1069
|
-
background-color: var(--trees-bg);
|
|
1070
|
-
--truncate-marker-background-overlay-color: transparent;
|
|
1071
|
-
}
|
|
1072
|
-
|
|
1073
|
-
[data-item-selected='true']:has(+ [data-item-selected='true']) {
|
|
1074
|
-
border-bottom-left-radius: 0;
|
|
1075
|
-
border-bottom-right-radius: 0;
|
|
1076
|
-
}
|
|
1077
|
-
|
|
1078
|
-
[data-item-selected='true'] + [data-item-selected='true'] {
|
|
1079
|
-
border-top-left-radius: 0;
|
|
1080
|
-
border-top-right-radius: 0;
|
|
1081
|
-
}
|
|
1082
|
-
|
|
1083
|
-
/* Flattened Directory Parts */
|
|
1084
|
-
[data-item-flattened-subitems] {
|
|
1085
|
-
display: inline-flex;
|
|
1086
|
-
align-items: center;
|
|
1087
|
-
gap: 2px;
|
|
1088
|
-
}
|
|
1089
|
-
[data-item-flattened-subitem]:hover,
|
|
1090
|
-
[data-item-flattened-subitem-drag-target='true'] {
|
|
1091
|
-
text-decoration: underline;
|
|
1092
|
-
}
|
|
1093
|
-
|
|
1094
|
-
/* Icon for each item */
|
|
1095
|
-
[data-item-section='icon'] {
|
|
1096
|
-
flex-shrink: 0;
|
|
1097
|
-
display: flex;
|
|
1098
|
-
align-items: center;
|
|
1099
|
-
justify-content: center;
|
|
1100
|
-
color: var(--trees-fg-muted);
|
|
1101
|
-
fill: currentColor;
|
|
1102
|
-
width: var(--trees-icon-width);
|
|
1103
|
-
}
|
|
1104
|
-
|
|
1105
|
-
:where([data-item-section='icon'] > [data-icon-token]) {
|
|
1106
|
-
color: var(--trees-fg-muted);
|
|
1107
|
-
}
|
|
1108
|
-
|
|
1109
|
-
[data-file-tree-colored-icons='true'] {
|
|
1110
|
-
[data-icon-token='astro'] {
|
|
1111
|
-
color: var(--trees-file-icon-color-astro);
|
|
1112
|
-
}
|
|
1113
|
-
[data-icon-token='babel'] {
|
|
1114
|
-
color: var(--trees-file-icon-color-babel);
|
|
1115
|
-
}
|
|
1116
|
-
[data-icon-token='bash'] {
|
|
1117
|
-
color: var(--trees-file-icon-color-bash);
|
|
1118
|
-
}
|
|
1119
|
-
[data-icon-token='biome'] {
|
|
1120
|
-
color: var(--trees-file-icon-color-biome);
|
|
1121
|
-
}
|
|
1122
|
-
[data-icon-token='bootstrap'] {
|
|
1123
|
-
color: var(--trees-file-icon-color-bootstrap);
|
|
1124
|
-
}
|
|
1125
|
-
[data-icon-token='browserslist'] {
|
|
1126
|
-
color: var(--trees-file-icon-color-browserslist);
|
|
1127
|
-
}
|
|
1128
|
-
[data-icon-token='bun'] {
|
|
1129
|
-
color: var(--trees-file-icon-color-bun);
|
|
1130
|
-
}
|
|
1131
|
-
[data-icon-token='claude'] {
|
|
1132
|
-
color: var(--trees-file-icon-color-claude);
|
|
1133
|
-
}
|
|
1134
|
-
[data-icon-token='css'] {
|
|
1135
|
-
color: var(--trees-file-icon-color-css);
|
|
1136
|
-
}
|
|
1137
|
-
[data-icon-token='database'] {
|
|
1138
|
-
color: var(--trees-file-icon-color-database);
|
|
1139
|
-
}
|
|
1140
|
-
[data-icon-token='default'] {
|
|
1141
|
-
color: var(--trees-file-icon-color-default);
|
|
1142
|
-
}
|
|
1143
|
-
[data-icon-token='docker'] {
|
|
1144
|
-
color: var(--trees-file-icon-color-docker);
|
|
1145
|
-
}
|
|
1146
|
-
[data-icon-token='eslint'] {
|
|
1147
|
-
color: var(--trees-file-icon-color-eslint);
|
|
1148
|
-
}
|
|
1149
|
-
[data-icon-token='git'] {
|
|
1150
|
-
color: var(--trees-file-icon-color-git);
|
|
1151
|
-
}
|
|
1152
|
-
[data-icon-token='go'] {
|
|
1153
|
-
color: var(--trees-file-icon-color-go);
|
|
1154
|
-
}
|
|
1155
|
-
[data-icon-token='graphql'] {
|
|
1156
|
-
color: var(--trees-file-icon-color-graphql);
|
|
1157
|
-
}
|
|
1158
|
-
[data-icon-token='html'] {
|
|
1159
|
-
color: var(--trees-file-icon-color-html);
|
|
1160
|
-
}
|
|
1161
|
-
[data-icon-token='image'] {
|
|
1162
|
-
color: var(--trees-file-icon-color-image);
|
|
1163
|
-
}
|
|
1164
|
-
[data-icon-token='javascript'] {
|
|
1165
|
-
color: var(--trees-file-icon-color-javascript);
|
|
1166
|
-
}
|
|
1167
|
-
[data-icon-token='json'] {
|
|
1168
|
-
color: var(--trees-file-icon-color-json);
|
|
1169
|
-
}
|
|
1170
|
-
[data-icon-token='markdown'] {
|
|
1171
|
-
color: var(--trees-file-icon-color-markdown);
|
|
1172
|
-
}
|
|
1173
|
-
[data-icon-token='mcp'] {
|
|
1174
|
-
color: var(--trees-file-icon-color-mcp);
|
|
1175
|
-
}
|
|
1176
|
-
[data-icon-token='npm'] {
|
|
1177
|
-
color: var(--trees-file-icon-color-npm);
|
|
1178
|
-
}
|
|
1179
|
-
[data-icon-token='oxc'] {
|
|
1180
|
-
color: var(--trees-file-icon-color-oxc);
|
|
1181
|
-
}
|
|
1182
|
-
[data-icon-token='postcss'] {
|
|
1183
|
-
color: var(--trees-file-icon-color-postcss);
|
|
1184
|
-
}
|
|
1185
|
-
[data-icon-token='prettier'] {
|
|
1186
|
-
color: var(--trees-file-icon-color-prettier);
|
|
1187
|
-
}
|
|
1188
|
-
[data-icon-token='python'] {
|
|
1189
|
-
color: var(--trees-file-icon-color-python);
|
|
1190
|
-
}
|
|
1191
|
-
[data-icon-token='react'] {
|
|
1192
|
-
color: var(--trees-file-icon-color-react);
|
|
1193
|
-
}
|
|
1194
|
-
[data-icon-token='ruby'] {
|
|
1195
|
-
color: var(--trees-file-icon-color-ruby);
|
|
1196
|
-
}
|
|
1197
|
-
[data-icon-token='rust'] {
|
|
1198
|
-
color: var(--trees-file-icon-color-rust);
|
|
1199
|
-
}
|
|
1200
|
-
[data-icon-token='sass'] {
|
|
1201
|
-
color: var(--trees-file-icon-color-sass);
|
|
1202
|
-
}
|
|
1203
|
-
[data-icon-token='svg'] {
|
|
1204
|
-
color: var(--trees-file-icon-color-svg);
|
|
1205
|
-
}
|
|
1206
|
-
[data-icon-token='svelte'] {
|
|
1207
|
-
color: var(--trees-file-icon-color-svelte);
|
|
1208
|
-
}
|
|
1209
|
-
[data-icon-token='svgo'] {
|
|
1210
|
-
color: var(--trees-file-icon-color-svgo);
|
|
1211
|
-
}
|
|
1212
|
-
[data-icon-token='swift'] {
|
|
1213
|
-
color: var(--trees-file-icon-color-swift);
|
|
1214
|
-
}
|
|
1215
|
-
[data-icon-token='table'] {
|
|
1216
|
-
color: var(--trees-file-icon-color-table);
|
|
1217
|
-
}
|
|
1218
|
-
[data-icon-token='text'] {
|
|
1219
|
-
color: var(--trees-file-icon-color-text);
|
|
1220
|
-
}
|
|
1221
|
-
[data-icon-token='tailwind'] {
|
|
1222
|
-
color: var(--trees-file-icon-color-tailwind);
|
|
1223
|
-
}
|
|
1224
|
-
[data-icon-token='terraform'] {
|
|
1225
|
-
color: var(--trees-file-icon-color-terraform);
|
|
1226
|
-
}
|
|
1227
|
-
[data-icon-token='typescript'] {
|
|
1228
|
-
color: var(--trees-file-icon-color-typescript);
|
|
1229
|
-
}
|
|
1230
|
-
[data-icon-token='vite'] {
|
|
1231
|
-
color: var(--trees-file-icon-color-vite);
|
|
1232
|
-
}
|
|
1233
|
-
[data-icon-token='vscode'] {
|
|
1234
|
-
color: var(--trees-file-icon-color-vscode);
|
|
1235
|
-
}
|
|
1236
|
-
[data-icon-token='vue'] {
|
|
1237
|
-
color: var(--trees-file-icon-color-vue);
|
|
1238
|
-
}
|
|
1239
|
-
[data-icon-token='wasm'] {
|
|
1240
|
-
color: var(--trees-file-icon-color-wasm);
|
|
1241
|
-
}
|
|
1242
|
-
[data-icon-token='webpack'] {
|
|
1243
|
-
color: var(--trees-file-icon-color-webpack);
|
|
1244
|
-
}
|
|
1245
|
-
[data-icon-token='yml'] {
|
|
1246
|
-
color: var(--trees-file-icon-color-yml);
|
|
1247
|
-
}
|
|
1248
|
-
[data-icon-token='zig'] {
|
|
1249
|
-
color: var(--trees-file-icon-color-zig);
|
|
1250
|
-
}
|
|
1251
|
-
[data-icon-token='zip'] {
|
|
1252
|
-
color: var(--trees-file-icon-color-zip);
|
|
1253
|
-
}
|
|
1254
|
-
}
|
|
1255
|
-
|
|
1256
|
-
/* Chevron rotation and visual alignment */
|
|
1257
|
-
/* Chevron pointing down */
|
|
1258
|
-
[data-icon-name='file-tree-icon-chevron'] {
|
|
1259
|
-
&[data-align-capitals='false'] {
|
|
1260
|
-
transform: translate(0, var(--trees-icon-nudge));
|
|
1261
|
-
}
|
|
1262
|
-
&[data-align-capitals='true'] {
|
|
1263
|
-
transform: translate(0, 0);
|
|
1264
|
-
}
|
|
1265
|
-
}
|
|
1266
|
-
|
|
1267
|
-
[data-item-section='content'] {
|
|
1268
|
-
flex: 0 1 auto;
|
|
1269
|
-
text-align: start;
|
|
1270
|
-
min-width: 0;
|
|
1271
|
-
max-width: 100%;
|
|
1272
|
-
overflow: hidden;
|
|
1273
|
-
text-overflow: ellipsis;
|
|
1274
|
-
/* Breaks middle truncate component to also set this */
|
|
1275
|
-
/* white-space: nowrap; */
|
|
1276
|
-
}
|
|
1277
|
-
|
|
1278
|
-
[data-item-section='decoration'] {
|
|
1279
|
-
flex: 1 1 0;
|
|
1280
|
-
min-width: 0;
|
|
1281
|
-
display: flex;
|
|
1282
|
-
justify-content: flex-end;
|
|
1283
|
-
text-align: end;
|
|
1284
|
-
overflow: hidden;
|
|
1285
|
-
color: var(--trees-fg-muted);
|
|
1286
|
-
}
|
|
1287
|
-
|
|
1288
|
-
[data-item-section='decoration'] > span {
|
|
1289
|
-
min-width: 0;
|
|
1290
|
-
max-width: 100%;
|
|
1291
|
-
display: inline-flex;
|
|
1292
|
-
align-items: center;
|
|
1293
|
-
justify-content: flex-end;
|
|
1294
|
-
overflow: hidden;
|
|
1295
|
-
text-overflow: ellipsis;
|
|
1296
|
-
white-space: nowrap;
|
|
1297
|
-
}
|
|
1298
|
-
|
|
1299
|
-
[data-item-section='git'],
|
|
1300
|
-
[data-item-section='action'] {
|
|
1301
|
-
flex: 0 0 auto;
|
|
1302
|
-
display: flex;
|
|
1303
|
-
align-items: center;
|
|
1304
|
-
justify-content: center;
|
|
1305
|
-
}
|
|
1306
|
-
|
|
1307
|
-
[data-item-section='git'] {
|
|
1308
|
-
width: var(--trees-git-lane-width);
|
|
1309
|
-
}
|
|
1310
|
-
|
|
1311
|
-
[data-item-section='action'] {
|
|
1312
|
-
width: var(--trees-action-lane-width);
|
|
1313
|
-
color: var(--trees-fg-muted);
|
|
1314
|
-
fill: currentColor;
|
|
1315
|
-
pointer-events: none;
|
|
1316
|
-
}
|
|
1317
|
-
|
|
1318
|
-
[data-item-section='git'] > span,
|
|
1319
|
-
[data-item-section='action'] > span {
|
|
1320
|
-
width: 100%;
|
|
1321
|
-
display: inline-flex;
|
|
1322
|
-
align-items: center;
|
|
1323
|
-
justify-content: center;
|
|
1324
|
-
}
|
|
1325
|
-
|
|
1326
|
-
[data-item-action-affordance='decorative'] {
|
|
1327
|
-
opacity: 0.85;
|
|
1328
|
-
}
|
|
1329
|
-
|
|
1330
|
-
[data-item-rename-input] {
|
|
1331
|
-
appearance: none;
|
|
1332
|
-
width: 100%;
|
|
1333
|
-
min-width: 0;
|
|
1334
|
-
height: calc(var(--trees-row-height) - 4px);
|
|
1335
|
-
font-family: inherit;
|
|
1336
|
-
font-size: inherit;
|
|
1337
|
-
/* line-height: calc(var(--trees-row-height) - 8px); */
|
|
1338
|
-
color: inherit;
|
|
1339
|
-
background-color: transparent;
|
|
1340
|
-
border: 0;
|
|
1341
|
-
padding-inline: 6px;
|
|
1342
|
-
outline: none;
|
|
1343
|
-
box-sizing: border-box;
|
|
1344
|
-
}
|
|
1345
|
-
|
|
1346
|
-
[data-item-section='content']:has([data-item-rename-input])
|
|
1347
|
-
~ [data-item-section='action'],
|
|
1348
|
-
[data-item-section='content']:has([data-item-rename-input])
|
|
1349
|
-
~ [data-item-section='decoration'] {
|
|
1350
|
-
display: none;
|
|
1351
|
-
}
|
|
1352
|
-
|
|
1353
|
-
/* Chevron pointing right */
|
|
1354
|
-
[aria-expanded='false'][data-item-type='folder']
|
|
1355
|
-
> [data-item-section='icon']
|
|
1356
|
-
> [data-icon-name='file-tree-icon-chevron'] {
|
|
1357
|
-
&[data-align-capitals='true'] {
|
|
1358
|
-
transform: rotate(-90deg)
|
|
1359
|
-
translate(
|
|
1360
|
-
calc(var(--trees-icon-nudge) / 2),
|
|
1361
|
-
calc(var(--trees-icon-nudge) / 2)
|
|
1362
|
-
);
|
|
1363
|
-
}
|
|
1364
|
-
&[data-align-capitals='false'] {
|
|
1365
|
-
transform: rotate(-90deg)
|
|
1366
|
-
translate(
|
|
1367
|
-
calc(var(--trees-icon-nudge) / 2 * -1),
|
|
1368
|
-
calc(var(--trees-icon-nudge) / 2)
|
|
1369
|
-
);
|
|
1370
|
-
}
|
|
1371
|
-
}
|
|
1372
|
-
|
|
1373
|
-
/* LIST IDENTATION */
|
|
1374
|
-
/* Spacing container */
|
|
1375
|
-
[data-item-section='spacing'] {
|
|
1376
|
-
display: flex;
|
|
1377
|
-
flex-direction: row;
|
|
1378
|
-
align-items: center;
|
|
1379
|
-
justify-content: center;
|
|
1380
|
-
height: var(--trees-row-height);
|
|
1381
|
-
padding-left: calc(calc(var(--trees-icon-width) / 2) - 0.5px);
|
|
1382
|
-
|
|
1383
|
-
&:empty {
|
|
1384
|
-
padding-left: 0;
|
|
1385
|
-
}
|
|
1386
|
-
}
|
|
1387
|
-
|
|
1388
|
-
/* Spacing per level */
|
|
1389
|
-
[data-item-section='spacing-item'] {
|
|
1390
|
-
transform: translateX(-0.25px);
|
|
1391
|
-
display: inline-block;
|
|
1392
|
-
border-left: 1px solid var(--trees-indent-guide-bg);
|
|
1393
|
-
height: 100%;
|
|
1394
|
-
margin-right: calc(var(--trees-level-gap) - 1px);
|
|
1395
|
-
opacity: 0;
|
|
1396
|
-
transition: opacity 150ms ease;
|
|
1397
|
-
|
|
1398
|
-
& + & {
|
|
1399
|
-
margin-left: calc(
|
|
1400
|
-
var(--trees-item-row-gap) + calc(var(--trees-icon-width) / 2) - 0.5px
|
|
1401
|
-
);
|
|
1402
|
-
}
|
|
1403
|
-
}
|
|
1404
|
-
|
|
1405
|
-
:host(:hover) [data-item-section='spacing-item'] {
|
|
1406
|
-
opacity: 0.75;
|
|
1407
|
-
}
|
|
1408
|
-
|
|
1409
|
-
/* Git status indicator */
|
|
1410
|
-
|
|
1411
|
-
/* This is a folder that contains a git change */
|
|
1412
|
-
[data-item-contains-git-change='true'] > [data-item-section='git'] {
|
|
1413
|
-
color: var(--trees-git-modified-color);
|
|
1414
|
-
opacity: 0.5;
|
|
1415
|
-
fill: currentColor;
|
|
1416
|
-
}
|
|
1417
|
-
|
|
1418
|
-
/* These are files that have a git change */
|
|
1419
|
-
[data-item-git-status] {
|
|
1420
|
-
&
|
|
1421
|
-
> :where([data-item-section='icon'])
|
|
1422
|
-
> :where(:not([data-icon-name='file-tree-icon-chevron'])) {
|
|
1423
|
-
color: var(--trees-item-git-status-color);
|
|
1424
|
-
}
|
|
1425
|
-
& > [data-item-section='content'] {
|
|
1426
|
-
color: var(--trees-item-git-status-color);
|
|
1427
|
-
}
|
|
1428
|
-
& > [data-item-section='git'] {
|
|
1429
|
-
color: var(--trees-item-git-status-color);
|
|
1430
|
-
font-weight: var(--trees-font-weight-semibold);
|
|
1431
|
-
}
|
|
1432
|
-
}
|
|
1433
|
-
|
|
1434
|
-
[data-item-git-status='added'] {
|
|
1435
|
-
--trees-item-git-status-color: var(--trees-git-added-color);
|
|
1436
|
-
}
|
|
1437
|
-
|
|
1438
|
-
[data-item-git-status='deleted'] {
|
|
1439
|
-
--trees-item-git-status-color: var(--trees-git-deleted-color);
|
|
1440
|
-
}
|
|
1441
|
-
|
|
1442
|
-
[data-item-git-status='ignored'] {
|
|
1443
|
-
--trees-item-git-status-color: var(--trees-git-ignored-color);
|
|
1444
|
-
|
|
1445
|
-
& > [data-item-section='icon'] {
|
|
1446
|
-
opacity: 0.5;
|
|
1447
|
-
}
|
|
1448
|
-
}
|
|
1449
|
-
|
|
1450
|
-
[data-item-section='git'] [data-icon-name='file-tree-icon-dot'] {
|
|
1451
|
-
/* this is a nudge to align the dot with the likely lowercase text. it's slightly
|
|
1452
|
-
generalizable, but other fonts are gonna need other nudges i assume */
|
|
1453
|
-
transform: translateY(calc(0.65ex - 50%));
|
|
1454
|
-
}
|
|
1455
|
-
|
|
1456
|
-
[data-item-git-status='modified'] {
|
|
1457
|
-
--trees-item-git-status-color: var(--trees-git-modified-color);
|
|
1458
|
-
}
|
|
1459
|
-
|
|
1460
|
-
[data-item-git-status='renamed'] {
|
|
1461
|
-
--trees-item-git-status-color: var(--trees-git-renamed-color);
|
|
1462
|
-
}
|
|
1463
|
-
|
|
1464
|
-
[data-item-git-status='untracked'] {
|
|
1465
|
-
--trees-item-git-status-color: var(--trees-git-untracked-color);
|
|
1466
|
-
}
|
|
1467
|
-
|
|
1468
|
-
/* Drag and drop */
|
|
1469
|
-
[data-item-drag-target='true'] {
|
|
1470
|
-
background-color: var(--trees-selected-bg);
|
|
1471
|
-
}
|
|
1472
|
-
|
|
1473
|
-
[data-item-dragging='true'] {
|
|
1474
|
-
opacity: 0.5;
|
|
1475
|
-
}
|
|
1476
|
-
|
|
1477
|
-
/* Lock icon for locked paths (sibling of content) */
|
|
1478
|
-
[data-item-section='lock'] {
|
|
1479
|
-
flex: 0 0 auto;
|
|
1480
|
-
margin-left: auto;
|
|
1481
|
-
display: flex;
|
|
1482
|
-
align-items: center;
|
|
1483
|
-
color: var(--trees-fg-muted);
|
|
1484
|
-
}
|
|
1485
|
-
[data-item-section='lock'] svg {
|
|
1486
|
-
display: block;
|
|
1487
|
-
}
|
|
1488
|
-
|
|
1489
|
-
[data-type='header-slot'] {
|
|
1490
|
-
display: block;
|
|
1491
|
-
flex: 0 0 auto;
|
|
1492
|
-
}
|
|
1493
|
-
|
|
1494
|
-
[data-type='context-menu-wash'] {
|
|
1495
|
-
position: absolute;
|
|
1496
|
-
inset: 0;
|
|
1497
|
-
z-index: 3;
|
|
1498
|
-
background-color: transparent;
|
|
1499
|
-
touch-action: none;
|
|
1500
|
-
}
|
|
1501
|
-
|
|
1502
|
-
[data-type='context-menu-anchor'] {
|
|
1503
|
-
position: absolute;
|
|
1504
|
-
top: 0;
|
|
1505
|
-
right: var(--trees-context-menu-trigger-inline-offset);
|
|
1506
|
-
z-index: 4;
|
|
1507
|
-
display: none;
|
|
1508
|
-
align-items: center;
|
|
1509
|
-
|
|
1510
|
-
&[data-visible='true'] {
|
|
1511
|
-
display: flex;
|
|
1512
|
-
}
|
|
1513
|
-
}
|
|
1514
|
-
|
|
1515
|
-
/* Hide the floating trigger while the scroll container is actively moving.
|
|
1516
|
-
* The anchor is positioned against the root, not the scroll content, so its
|
|
1517
|
-
* \`top\` follows the row via a React state update — one frame behind the
|
|
1518
|
-
* compositor. That delay is visible as the trigger hovering over the wrong
|
|
1519
|
-
* row during the first frame of a scroll. The \`data-is-scrolling\` flag on
|
|
1520
|
-
* the root is flipped synchronously on \`wheel\`/\`touchmove\`/\`keydown\` before
|
|
1521
|
-
* the compositor commits the next paint, so this selector hides the anchor
|
|
1522
|
-
* in the same frame the scroll begins. */
|
|
1523
|
-
[data-file-tree-virtualized-root='true'][data-is-scrolling]
|
|
1524
|
-
[data-type='context-menu-anchor'] {
|
|
1525
|
-
display: none;
|
|
1526
|
-
}
|
|
1527
|
-
|
|
1528
|
-
[data-type='context-menu-anchor'] > slot[name='context-menu'] {
|
|
1529
|
-
display: block;
|
|
1530
|
-
width: 0;
|
|
1531
|
-
min-width: 0;
|
|
1532
|
-
flex: 0 0 0;
|
|
1533
|
-
overflow: visible;
|
|
1534
|
-
}
|
|
1535
|
-
|
|
1536
|
-
/* Single floating context menu trigger */
|
|
1537
|
-
[data-type='context-menu-trigger'] {
|
|
1538
|
-
all: unset;
|
|
1539
|
-
align-items: center;
|
|
1540
|
-
justify-content: center;
|
|
1541
|
-
width: var(--trees-action-lane-width);
|
|
1542
|
-
color: var(--trees-fg-muted);
|
|
1543
|
-
fill: currentColor;
|
|
1544
|
-
cursor: pointer;
|
|
1545
|
-
font-family: var(--trees-font-family);
|
|
1546
|
-
font-size: var(--trees-font-size);
|
|
1547
|
-
border-top-right-radius: var(--trees-border-radius);
|
|
1548
|
-
border-bottom-right-radius: var(--trees-border-radius);
|
|
1549
|
-
margin: var(--trees-focus-ring-width);
|
|
1550
|
-
height: calc(var(--trees-row-height) - var(--trees-focus-ring-width) * 2);
|
|
1551
|
-
border-width: 0;
|
|
1552
|
-
transition: color 120ms ease;
|
|
1553
|
-
|
|
1554
|
-
display: flex;
|
|
1555
|
-
}
|
|
1556
|
-
|
|
1557
|
-
[data-type='context-menu-trigger']:hover,
|
|
1558
|
-
[data-type='context-menu-trigger'][aria-expanded='true'] {
|
|
1559
|
-
color: var(--trees-fg);
|
|
1560
|
-
}
|
|
1561
|
-
|
|
1562
|
-
/** @pierre/truncate css here, manually copy pasted for now */
|
|
1563
|
-
[data-truncate-container] {
|
|
1564
|
-
/* CUSTOM TO TREES, TO SUPPORT THE OUTLINE */
|
|
1565
|
-
margin-top: -1px;
|
|
1566
|
-
margin-bottom: -1px;
|
|
1567
|
-
|
|
1568
|
-
/* Width of the fade from default marker to text */
|
|
1569
|
-
--truncate-internal-marker-fade-width: var(
|
|
1570
|
-
--truncate-marker-fade-width,
|
|
1571
|
-
2px
|
|
1572
|
-
);
|
|
1573
|
-
/* Width of the solid color between the fade from the default marker to the text */
|
|
1574
|
-
--truncate-internal-marker-gap: var(--truncate-marker-gap, 0px);
|
|
1575
|
-
/* Opacity of the marker 'color' property, not of the element itself */
|
|
1576
|
-
--truncate-internal-marker-opacity: var(--truncate-marker-opacity, 50%);
|
|
1577
|
-
/* Opacity of the marker 'color' property specifically for the middle truncate, not opacity of the element itself */
|
|
1578
|
-
--truncate-internal-middle-marker-opacity: var(
|
|
1579
|
-
--truncate-middle-marker-opacity,
|
|
1580
|
-
80%
|
|
1581
|
-
);
|
|
1582
|
-
/* Background color of the default marker */
|
|
1583
|
-
--truncate-internal-marker-background-color: var(
|
|
1584
|
-
--truncate-marker-background-color,
|
|
1585
|
-
light-dark(white, black)
|
|
1586
|
-
);
|
|
1587
|
-
--truncate-internal-marker-background-overlay-color: var(
|
|
1588
|
-
--truncate-marker-background-overlay-color,
|
|
1589
|
-
transparent
|
|
1590
|
-
);
|
|
1591
|
-
--truncate-internal-marker-block-inset: var(
|
|
1592
|
-
--truncate-marker-block-inset,
|
|
1593
|
-
0px
|
|
1594
|
-
);
|
|
1595
|
-
/* Duration of the fade out animation for the marker */
|
|
1596
|
-
--truncate-internal-marker-fade-out-duration: var(
|
|
1597
|
-
--truncate-marker-fade-out-duration,
|
|
1598
|
-
0ms
|
|
1599
|
-
);
|
|
1600
|
-
/* Duration of the fade in animation for the marker */
|
|
1601
|
-
--truncate-internal-marker-fade-in-duration: var(
|
|
1602
|
-
--truncate-marker-fade-in-duration,
|
|
1603
|
-
100ms
|
|
1604
|
-
);
|
|
1605
|
-
|
|
1606
|
-
/* FADE Variant specifics */
|
|
1607
|
-
--truncate-internal-fade-marker-color: var(
|
|
1608
|
-
--truncate-fade-marker-color,
|
|
1609
|
-
#000
|
|
1610
|
-
);
|
|
1611
|
-
--truncate-internal-fade-marker-width: var(
|
|
1612
|
-
--truncate-fade-marker-width,
|
|
1613
|
-
0.2lh
|
|
1614
|
-
);
|
|
1615
|
-
|
|
1616
|
-
/*
|
|
1617
|
-
In some special cases people might be adding spacing in other ways
|
|
1618
|
-
that would benefit from being able to override this, however the container
|
|
1619
|
-
query below can't use this and would need to be redeclared with the overridden
|
|
1620
|
-
value. It's a bad time, but better than nothing.
|
|
1621
|
-
*/
|
|
1622
|
-
--truncate-internal-single-line-height: 1lh;
|
|
1623
|
-
|
|
1624
|
-
height: var(--truncate-internal-single-line-height);
|
|
1625
|
-
min-width: 0;
|
|
1626
|
-
overflow: hidden;
|
|
1627
|
-
}
|
|
1628
|
-
|
|
1629
|
-
[data-truncate-marker] {
|
|
1630
|
-
display: flex;
|
|
1631
|
-
position: absolute;
|
|
1632
|
-
height: var(--truncate-internal-single-line-height);
|
|
1633
|
-
padding-block: var(--truncate-internal-marker-block-inset);
|
|
1634
|
-
box-sizing: border-box;
|
|
1635
|
-
align-items: center;
|
|
1636
|
-
background-clip: content-box;
|
|
1637
|
-
z-index: 2;
|
|
1638
|
-
color: color-mix(
|
|
1639
|
-
in srgb,
|
|
1640
|
-
currentColor var(--truncate-internal-marker-opacity),
|
|
1641
|
-
transparent
|
|
1642
|
-
);
|
|
1643
|
-
|
|
1644
|
-
/* Core trick for hiding the marker until overflow occurs */
|
|
1645
|
-
opacity: 0;
|
|
1646
|
-
transition: opacity var(--truncate-internal-marker-fade-out-duration)
|
|
1647
|
-
ease-in-out;
|
|
1648
|
-
}
|
|
1649
|
-
|
|
1650
|
-
@container measure (height > 1lh) {
|
|
1651
|
-
[data-truncate-marker] {
|
|
1652
|
-
opacity: 1;
|
|
1653
|
-
transition: opacity var(--truncate-internal-marker-fade-in-duration)
|
|
1654
|
-
ease-in-out;
|
|
1655
|
-
}
|
|
1656
|
-
}
|
|
1657
|
-
|
|
1658
|
-
[data-truncate-grid] {
|
|
1659
|
-
display: grid;
|
|
1660
|
-
position: relative;
|
|
1661
|
-
}
|
|
1662
|
-
|
|
1663
|
-
[data-truncate-content='visible'] {
|
|
1664
|
-
white-space: nowrap;
|
|
1665
|
-
}
|
|
1666
|
-
|
|
1667
|
-
[data-truncate-content='overflow'] {
|
|
1668
|
-
opacity: 0;
|
|
1669
|
-
pointer-events: none;
|
|
1670
|
-
-webkit-user-select: none;
|
|
1671
|
-
user-select: none;
|
|
1672
|
-
word-break: break-all;
|
|
1673
|
-
margin-top: calc(-1 * var(--truncate-internal-single-line-height));
|
|
1674
|
-
}
|
|
1675
|
-
|
|
1676
|
-
[data-truncate-marker-cell] {
|
|
1677
|
-
container: measure / size;
|
|
1678
|
-
overflow: visible;
|
|
1679
|
-
-webkit-user-select: none;
|
|
1680
|
-
user-select: none;
|
|
1681
|
-
pointer-events: none;
|
|
1682
|
-
}
|
|
1683
|
-
|
|
1684
|
-
[data-truncate-container='truncate'] {
|
|
1685
|
-
& [data-truncate-grid] {
|
|
1686
|
-
grid-template-columns: minmax(0, max-content) 0;
|
|
1687
|
-
}
|
|
1688
|
-
& [data-truncate-marker] {
|
|
1689
|
-
right: 0;
|
|
1690
|
-
}
|
|
1691
|
-
& [data-truncate-fade] {
|
|
1692
|
-
margin-right: calc(-2 * var(--truncate-internal-fade-marker-width));
|
|
1693
|
-
}
|
|
1694
|
-
}
|
|
1695
|
-
|
|
1696
|
-
[data-truncate-container='fruncate'] {
|
|
1697
|
-
& [data-truncate-grid] {
|
|
1698
|
-
grid-template-columns: 0 minmax(0, max-content) auto;
|
|
1699
|
-
}
|
|
1700
|
-
& [data-truncate-content] {
|
|
1701
|
-
direction: rtl;
|
|
1702
|
-
}
|
|
1703
|
-
& [data-truncate-content] > span {
|
|
1704
|
-
unicode-bidi: plaintext;
|
|
1705
|
-
}
|
|
1706
|
-
& [data-truncate-fade] {
|
|
1707
|
-
margin-left: calc(-2 * var(--truncate-internal-fade-marker-width));
|
|
1708
|
-
}
|
|
1709
|
-
}
|
|
1710
|
-
|
|
1711
|
-
[data-truncate-variant='default'] {
|
|
1712
|
-
& [data-truncate-marker] {
|
|
1713
|
-
background-color: var(--truncate-internal-marker-background-color);
|
|
1714
|
-
background-image: linear-gradient(
|
|
1715
|
-
var(--truncate-internal-marker-background-overlay-color),
|
|
1716
|
-
var(--truncate-internal-marker-background-overlay-color)
|
|
1717
|
-
);
|
|
1718
|
-
}
|
|
1719
|
-
& [data-truncate-marker]::after,
|
|
1720
|
-
& [data-truncate-marker]::before {
|
|
1721
|
-
content: '';
|
|
1722
|
-
position: absolute;
|
|
1723
|
-
width: calc(
|
|
1724
|
-
var(--truncate-internal-marker-fade-width) +
|
|
1725
|
-
var(--truncate-internal-marker-gap)
|
|
1726
|
-
);
|
|
1727
|
-
inset-block-start: var(--truncate-internal-marker-block-inset);
|
|
1728
|
-
height: max(
|
|
1729
|
-
0px,
|
|
1730
|
-
calc(
|
|
1731
|
-
var(--truncate-internal-single-line-height) -
|
|
1732
|
-
var(--truncate-internal-marker-block-inset) * 2
|
|
1733
|
-
)
|
|
1734
|
-
);
|
|
1735
|
-
background-color: var(--truncate-internal-marker-background-color);
|
|
1736
|
-
background-image: linear-gradient(
|
|
1737
|
-
var(--truncate-internal-marker-background-overlay-color),
|
|
1738
|
-
var(--truncate-internal-marker-background-overlay-color)
|
|
1739
|
-
);
|
|
1740
|
-
mask-image: linear-gradient(
|
|
1741
|
-
var(--truncate-internal-fade-dir),
|
|
1742
|
-
#000 0%,
|
|
1743
|
-
#000 var(--truncate-internal-marker-gap),
|
|
1744
|
-
transparent 100%
|
|
1745
|
-
);
|
|
1746
|
-
}
|
|
1747
|
-
& [data-truncate-marker]::after {
|
|
1748
|
-
--truncate-internal-fade-dir: to right;
|
|
1749
|
-
right: calc(
|
|
1750
|
-
-1 *
|
|
1751
|
-
(
|
|
1752
|
-
var(--truncate-internal-marker-fade-width) +
|
|
1753
|
-
var(--truncate-internal-marker-gap)
|
|
1754
|
-
)
|
|
1755
|
-
);
|
|
1756
|
-
}
|
|
1757
|
-
& [data-truncate-marker]::before {
|
|
1758
|
-
--truncate-internal-fade-dir: to left;
|
|
1759
|
-
left: calc(
|
|
1760
|
-
-1 *
|
|
1761
|
-
(
|
|
1762
|
-
var(--truncate-internal-marker-fade-width) +
|
|
1763
|
-
var(--truncate-internal-marker-gap)
|
|
1764
|
-
)
|
|
1765
|
-
);
|
|
1766
|
-
}
|
|
1767
|
-
}
|
|
1768
|
-
|
|
1769
|
-
[data-truncate-variant='fade'] {
|
|
1770
|
-
& [data-truncate-marker] {
|
|
1771
|
-
background: transparent;
|
|
1772
|
-
}
|
|
1773
|
-
}
|
|
1774
|
-
|
|
1775
|
-
[data-truncate-fade] {
|
|
1776
|
-
box-shadow:
|
|
1777
|
-
0 0 calc(var(--truncate-internal-fade-marker-width) / 2)
|
|
1778
|
-
var(--truncate-internal-fade-marker-color),
|
|
1779
|
-
0 0 var(--truncate-internal-fade-marker-width)
|
|
1780
|
-
var(--truncate-internal-fade-marker-color);
|
|
1781
|
-
width: calc(var(--truncate-internal-fade-marker-width) * 2);
|
|
1782
|
-
height: calc(
|
|
1783
|
-
var(--truncate-internal-single-line-height) -
|
|
1784
|
-
(var(--truncate-internal-fade-marker-width) * 2)
|
|
1785
|
-
);
|
|
1786
|
-
margin: var(--truncate-internal-fade-marker-width) 0;
|
|
1787
|
-
}
|
|
1788
|
-
|
|
1789
|
-
[data-truncate-group-container='middle'] {
|
|
1790
|
-
& [data-truncate-container] {
|
|
1791
|
-
--truncate-marker-opacity: var(--truncate-internal-middle-marker-opacity);
|
|
1792
|
-
}
|
|
1793
|
-
|
|
1794
|
-
display: flex;
|
|
1795
|
-
min-width: 0;
|
|
1796
|
-
|
|
1797
|
-
& > div {
|
|
1798
|
-
min-width: 0;
|
|
1799
|
-
}
|
|
1800
|
-
|
|
1801
|
-
& > div[data-truncate-segment-priority='1'] {
|
|
1802
|
-
flex: 0 1 max-content;
|
|
1803
|
-
}
|
|
1804
|
-
& > div[data-truncate-segment-priority='2'] {
|
|
1805
|
-
flex: 0 999999 max-content;
|
|
1806
|
-
}
|
|
1807
|
-
}
|
|
1808
|
-
}
|
|
1809
|
-
`,Nl=`@layer base, unsafe;`;function Pl(e){return`${Nl}
|
|
1810
|
-
@layer base {
|
|
1811
|
-
${e}
|
|
1812
|
-
}`}function Fl(e){return`${Nl}
|
|
1813
|
-
@layer unsafe {
|
|
1814
|
-
${e}
|
|
1815
|
-
}`}var Il=new WeakMap;function Ll(e){let t=Il.get(e);if(t!=null)return t;let n=document.createElement(`div`);n.setAttribute(ic,`true`);let r=document.createElement(`div`);r.style.position=`relative`,r.style.height=`200%`,n.appendChild(r),e.appendChild(n);let i=Math.max(n.offsetWidth-n.clientWidth,0);return n.remove(),Il.set(e,i),i}function Rl(e,t){if(!e.isConnected)return;let n=Ll(t);if(n==null)return;let r=t.querySelector(`style[${ac}]`),i=r instanceof HTMLStyleElement?r:document.createElement(`style`);r instanceof HTMLStyleElement||(i.setAttribute(ac,``),t.appendChild(i)),i.textContent=`:host { ${oc}: ${n}px; }`}var zl;function Bl(e){if(typeof CSSStyleSheet<`u`&&typeof CSSStyleSheet.prototype.replaceSync==`function`&&`adoptedStyleSheets`in e){zl??(zl=new CSSStyleSheet,zl.replaceSync(Pl(Ml)));let t=!1;try{e.adoptedStyleSheets=[zl],t=!0}catch{}if(t){e.querySelector(`style[${nc}]`)?.remove();return}}if(e.querySelector(`style[data-file-tree-style]`)==null){let t=document.createElement(`style`);t.setAttribute(nc,``),t.textContent=Pl(Ml),e.prepend(t)}}function Vl(e,t){Hl(e,t),Bl(t),Rl(e,t)}function Hl(e,t){let n=e.querySelector(`template[shadowrootmode="open"], template[data-file-tree-shadowrootmode="open"]`);n instanceof HTMLTemplateElement&&(t.childNodes.length>0||(t.appendChild(n.content.cloneNode(!0)),n.hasAttribute(`shadowrootmode`)&&n.remove()))}if(typeof HTMLElement<`u`&&customElements.get(`file-tree-container`)==null){class e extends HTMLElement{constructor(){super()}connectedCallback(){let e=this.shadowRoot??this.attachShadow({mode:`open`});Vl(this,e)}}if(customElements.define(tc,e),typeof document<`u`)for(let e of Array.from(document.querySelectorAll(tc)))e instanceof HTMLElement&&Vl(e,e.shadowRoot??e.attachShadow({mode:`open`}))}var Ul=5,Wl=1<<Ul,Gl=Wl*4;function Kl(){return{childIdByNameId:new Map,childIds:[],childPositionById:new Map,childVisibleChunkSums:null,totalChildSubtreeNodeCount:0,totalChildVisibleSubtreeCount:0}}function ql(){return{childIdByNameId:null,childIds:[],childPositionById:null,childVisibleChunkSums:null,totalChildSubtreeNodeCount:0,totalChildVisibleSubtreeCount:0}}function Jl(e,t){if(t.childIdByNameId!=null)return t.childIdByNameId;let n=new Map;for(let r of t.childIds){let t=e[r];t!=null&&n.set(t.nameId,r)}return t.childIdByNameId=n,n}function Yl(e){if(e.childPositionById!=null)return e.childPositionById;let t=new Map;for(let n=0;n<e.childIds.length;n++){let r=e.childIds[n];r!=null&&t.set(r,n)}return e.childPositionById=t,t}function Xl(e,t){e.childPositionById!=null&&e.childPositionById.set(t,e.childIds.length),e.childIds.push(t)}function Zl(e,t){if(e.childPositionById!=null)for(let n=t;n<e.childIds.length;n++){let t=e.childIds[n];t!=null&&e.childPositionById.set(t,n)}}function Ql(e,t){let n=0,r=0;for(let i of t.childIds){let t=e[i];t!=null&&(n+=t.subtreeNodeCount,r+=t.visibleSubtreeCount)}t.totalChildSubtreeNodeCount=n,t.totalChildVisibleSubtreeCount=r,nu(e,t)}function $l(e,t,n,r){if(e.totalChildSubtreeNodeCount+=n,e.totalChildVisibleSubtreeCount+=r,e.childVisibleChunkSums==null||r===0)return;let i=Yl(e).get(t);if(i===void 0)return;let a=i>>Ul;e.childVisibleChunkSums[a]+=r}function eu(e,t,n){let r=t.childVisibleChunkSums;if(r!=null){let i=n,a=0;for(let o of r){if(i<o){let r=ru(e,t,a,i);return{...r,childVisibleIndex:n-r.localVisibleIndex}}i-=o,a+=Wl}throw Error(`Visible child index ${String(n)} is out of range`)}let i=n;for(let r=0;r<t.childIds.length;r++){let a=t.childIds[r];if(a==null)continue;let o=e[a];if(o!=null){if(i<o.visibleSubtreeCount)return{childIndex:r,childVisibleIndex:n-i,localVisibleIndex:i};i-=o.visibleSubtreeCount}}throw Error(`Visible child index ${String(n)} is out of range`)}function tu(e,t,n){let r=0,i=t.childVisibleChunkSums,a=0;if(i!=null){let e=n>>Ul;for(let t=0;t<e;t+=1)r+=i[t]??0;a=e<<Ul}for(let i=a;i<n;i+=1){let n=t.childIds[i];if(n==null)continue;let a=e[n];a!=null&&(r+=a.visibleSubtreeCount)}return r}function nu(e,t){if(t.childIds.length<Gl){t.childVisibleChunkSums=null;return}let n=Math.ceil(t.childIds.length/Wl),r=new Int32Array(n);for(let n=0;n<t.childIds.length;n++){let i=t.childIds[n];if(i==null)continue;let a=e[i];a!=null&&(r[n>>Ul]+=a.visibleSubtreeCount)}t.childVisibleChunkSums=r}function ru(e,t,n,r){let i=Math.min(t.childIds.length,n+Wl),a=r;for(let r=n;r<i;r++){let n=t.childIds[r];if(n==null)continue;let i=e[n];if(i!=null){if(a<i.visibleSubtreeCount)return{childIndex:r,localVisibleIndex:a};a-=i.visibleSubtreeCount}}throw Error(`Visible child index ${String(r)} is out of range`)}var iu=7,au=3,ou=1<<au,su=4;function cu(e,t,n=0){return e<<su|n<<au|t}function lu(e){return e.depthAndFlags>>>su}function uu(e){return(e.depthAndFlags&ou)>>au}function J(e){return(e.depthAndFlags&ou)!==0}function du(e){return e.depthAndFlags&iu}function fu(e,t){return(du(e)&t)!==0}function pu(e,t){e.depthAndFlags|=t}function mu(e,t){e.depthAndFlags=cu(t,du(e),uu(e))}var hu=Symbol(`benchmarkInstrumentation`);function gu(e,t){return t==null||Object.defineProperty(e,hu,{configurable:!0,enumerable:!1,value:t,writable:!1}),e}function _u(e){return e==null?null:e[hu]??null}function Y(e,t,n){return e==null?n():e.measurePhase(t,n)}function vu(e,t,n){!Number.isFinite(n)||e==null||e.setCounter(t,n)}function yu(e){return e>=48&&e<=57}function bu(e){let t=[],n=0,r=0;for(;r<e.length;){for(;r<e.length&&!yu(e.charCodeAt(r));)r+=1;if(r>=e.length)break;r>n&&t.push(e.slice(n,r));let i=0;for(;r<e.length&&yu(e.charCodeAt(r));)i=i*10+(e.charCodeAt(r)-48),r+=1;t.push(i),n=r}return(n<e.length||t.length===0)&&t.push(e.slice(n)),t}function xu(e){let t=e.toLowerCase();return{lowerValue:t,tokens:bu(t)}}function Su(e,t){let n=Math.min(e.length,t.length);for(let r=0;r<n;r++){let n=e[r],i=t[r];if(n===i)continue;if(typeof n==`number`&&typeof i==`number`)return n<i?-1:1;let a=String(n),o=String(i);if(a!==o)return a<o?-1:1}return e.length===t.length?0:e.length<t.length?-1:1}function Cu(e,t){if(e.tokens.length===1&&t.tokens.length===1&&typeof e.tokens[0]==`string`&&typeof t.tokens[0]==`string`)return e.lowerValue===t.lowerValue?0:e.lowerValue<t.lowerValue?-1:1;let n=Su(e.tokens,t.tokens);return n===0?e.lowerValue===t.lowerValue?0:e.lowerValue<t.lowerValue?-1:1:n}function wu(e,t,n){let r=Cu(n(e),n(t));return r===0?e===t?0:e<t?-1:1:r}function Tu(e,t){return wu(e,t,xu)}function Eu(e,t){return t===e.segments.length-1?+!!e.isDirectory:1}function Du(e,t){let n=Math.min(e.segments.length,t.segments.length);for(let r=0;r<n;r++){let n=e.segments[r],i=t.segments[r];if(n===i)continue;let a=Eu(e,r);return a===Eu(t,r)?Tu(n,i):a===1?-1:1}return e.segments.length===t.segments.length?e.isDirectory===t.isDirectory?0:e.isDirectory?-1:1:e.segments.length<t.segments.length?-1:1}function Ou(e,t){return Du(e,t)}function ku(e,t,n){let r=e=>{let t=n.get(e);if(t!=null)return t;let r=xu(e);return n.set(e,r),r},i=Math.min(e.segments.length,t.segments.length);for(let n=0;n<i;n++){let i=e.segments[n],a=t.segments[n];if(i===a)continue;let o=Eu(e,n);return o===Eu(t,n)?wu(i,a,r):o===1?-1:1}return e.segments.length===t.segments.length?e.isDirectory===t.isDirectory?0:e.isDirectory?-1:1:e.segments.length<t.segments.length?-1:1}function Au(e,t){let n=e.sortKeyById[t];if(n!==void 0)return n;let r=e.valueById[t],i=xu(r);return e.sortKeyById[t]=i,i}function ju(e={}){return{flattenEmptyDirectories:e.flattenEmptyDirectories!==!1,sort:e.sort??`default`}}function Mu(e){let t=e.length>0&&e.charCodeAt(e.length-1)===47,n=t?e.length-1:e.length,r=[],i=0;for(let t=0;t<n;t++)e.charCodeAt(t)===47&&(r.push(e.slice(i,t)),i=t+1);return r.push(e.slice(i,n)),{hasTrailingSlash:t,segments:r}}function Nu(e){let{hasTrailingSlash:t,segments:n}=Mu(e);return{basename:n[n.length-1]??``,isDirectory:t,path:e,segments:n}}function Pu(e){if(e.length===0)return{requiresDirectory:!1,segments:[]};let{hasTrailingSlash:t,segments:n}=Mu(e);return{requiresDirectory:t,segments:n}}var Fu=``;function Iu(){let e=new Map;return e.set(Fu,0),{idByValue:e,valueById:[Fu],sortKeyById:[xu(Fu)]}}function Lu(e,t){let n=e.idByValue.get(t);if(n!==void 0)return n;let r=e.valueById.length;return e.idByValue.set(t,r),e.valueById.push(t),r}function Ru(e,t){let n=e.valueById[t];if(n===void 0)throw Error(`Unknown segment ID: ${String(t)}`);return n}var zu=Symbol(`pathStorePreparedInputKind`);function Bu(e,t){return e[zu]=t,e}function Vu(e){return{basename:e.basename,depth:e.segments.length,isDirectory:e.isDirectory,path:e.path,segments:e.segments}}function Hu(e,t,n){return n===`default`?Ou(e,t):n(Vu(e),Vu(t))}function Uu(){return{depthAndFlags:cu(0,3,1),nameId:0,parentId:0,subtreeNodeCount:1,visibleSubtreeCount:1}}function Wu(e,t){let n=Math.min(e.length,t.length);for(let r=0;r<n;r++)if(e[r]!==t[r])return r;return n}function Gu(e){return e.isDirectory?e.segments.length:e.segments.length-1}function Ku(e){return Array.isArray(e)&&e.every(e=>typeof e==`object`&&!!e&&typeof e.path==`string`&&Array.isArray(e.segments)&&typeof e.basename==`string`&&typeof e.isDirectory==`boolean`)}function qu(e){return Array.isArray(e)&&e.every(e=>typeof e==`string`)}function Ju(e,t={}){return ed(e,t).map(e=>e.path)}function Yu(e,t={}){let n=ed(e,t);return Bu({paths:n.map(e=>e.path),preparedPaths:n},`prepared`)}function Xu(e){let t=e.length,n=!1;for(let r=0;r<t;r+=1){let t=e[r];if(t.length>0&&t.charCodeAt(t.length-1)===47){n=!0;break}}return Bu({paths:e,presortedPaths:e,presortedPathsContainDirectories:n},`presorted`)}function Zu(e){let t=e,n=t.preparedPaths;if(t[zu]===`prepared`&&n!=null)return n;if(!Ku(n))throw Error(`preparedInput must come from PathStore.prepareInput()`);return n}function Qu(e){let t=e;return t[zu]===`presorted`&&t.presortedPaths!=null||qu(t.presortedPaths)?t.presortedPaths:null}function $u(e){let t=e;return typeof t.presortedPathsContainDirectories==`boolean`?t.presortedPathsContainDirectories:null}function ed(e,t={}){let n=ju(t),r=_u(t);vu(r,`workload.inputFiles`,e.length);let i=Y(r,`store.preparePathEntries.parse`,()=>e.map(e=>Nu(e)));return Y(r,`store.preparePathEntries.sort`,()=>i.sort((e,t)=>Hu(e,t,n.sort))),i}var td=class{directories=new Map;directoryStack=[0];presortedDirectoryNodeIds=[];initialExpandedPathSet;createdDirectoriesAllExpanded=!1;createdDirectoryCount=0;lastPreparedPath=null;nodes=[Uu()];options;instrumentation;segmentSortKeyCache=new Map;segmentTable=Iu();hasDeferredDirectoryIndexes=!1;constructor(e={}){this.instrumentation=_u(e),this.options=ju(e);let t=e.initialExpandedPaths??null;if(t==null||t.length===0)this.initialExpandedPathSet=null;else{let e=new Set,n=t.length;for(let r=0;r<n;r+=1){let n=t[r],i=n.length;e.add(i>0&&n.charCodeAt(i-1)===47?n.slice(0,i-1):n)}this.initialExpandedPathSet=e,this.createdDirectoriesAllExpanded=!0}this.directories.set(0,Kl())}appendPaths(e){return Y(this.instrumentation,`store.builder.appendPaths.parse`,()=>this.appendPreparedPaths(e.map(e=>Nu(e))))}appendPreparedPaths(e,t=!0){return this.createdDirectoriesAllExpanded=!1,Y(this.instrumentation,`store.builder.appendPreparedPaths`,()=>{for(let n of e)this.appendPreparedPath(n,t)}),this}appendPresortedPaths(e,t=null){return Y(this.instrumentation,`store.builder.appendPresortedPaths`,()=>{if(t===!1){this.appendPresortedFilePaths(e);return}this.createdDirectoriesAllExpanded=!1;let n=null,r=0,i=this.nodes,a=this.segmentTable,o=a.idByValue,s=a.valueById,c=this.directoryStack,l=0,u=``,d=0;for(let t of e){if(n===t)throw Error(`Duplicate path: "${t}"`);let e=t.length>0&&t.charCodeAt(t.length-1)===47,a=e?t.length-1:t.length,f=0,p=0;if(n!=null)if(u.length>0&&t.length>u.length&&t.startsWith(u))f=d,p=u.length;else{let r=Math.min(a,n.length),i=!0;for(let e=0;e<r;e++){let r=t.charCodeAt(e);if(r!==n.charCodeAt(e)){i=!1;break}r===47&&(f++,p=e+1)}i&&e&&r===a&&n.length>a&&n.charCodeAt(a)===47&&(f++,p=a+1)}l=f,r=f;let m=p,h=t.indexOf(`/`,m);for(;h>=0&&h<a;){let e=c[l];if(e===void 0)throw Error(`Directory stack underflow while building the path store`);r++;let n=t.slice(m,h),a=o.get(n);a===void 0&&(a=s.length,o.set(n,a),s.push(n));let u=i.length;i.push({depthAndFlags:cu(r,0,1),nameId:a,parentId:e,subtreeNodeCount:1,visibleSubtreeCount:1}),this.recordCreatedDirectoryPath(t.slice(0,h)),l++,c[l]=u,m=h+1,h=t.indexOf(`/`,m)}if(e){if(m<a){let e=c[l];if(e===void 0)throw Error(`Unable to resolve directory parent for "${t}"`);r++;let n=t.slice(m,a),u=o.get(n);u===void 0&&(u=s.length,o.set(n,u),s.push(n));let d=i.length;i.push({depthAndFlags:cu(r,0,1),nameId:u,parentId:e,subtreeNodeCount:1,visibleSubtreeCount:1}),l++,c[l]=d}let e=c[l];if(e===void 0)throw Error(`Unable to resolve directory node for "${t}"`);this.promoteDirectoryToExplicit(e,t)}else{let e=c[l];if(e===void 0)throw Error(`Unable to resolve file parent for "${t}"`);let n=t.slice(m),a=o.get(n);a===void 0&&(a=s.length,o.set(n,a),s.push(n)),i.push({depthAndFlags:cu(r+1,0),nameId:a,parentId:e,subtreeNodeCount:1,visibleSubtreeCount:1})}m!==u.length&&(u=t.substring(0,m),d=r),n=t}c.length=l+1,n!=null&&(this.lastPreparedPath=Nu(n)),this.hasDeferredDirectoryIndexes=!0}),this}appendPresortedFilePaths(e){let t=null,n=0,r=this.nodes,i=this.segmentTable,a=i.idByValue,o=i.valueById,s=this.directoryStack,c=0,l=``,u=0;for(let i of e){if(t===i)throw Error(`Duplicate path: "${i}"`);let e=i.length,d=0,f=0;if(t!=null)if(l.length>0&&i.length>l.length&&i.startsWith(l))d=u,f=l.length;else{let n=Math.min(e,t.length);for(let e=0;e<n;e++){let n=i.charCodeAt(e);if(n!==t.charCodeAt(e))break;n===47&&(d++,f=e+1)}}c=d,n=d;let p=f,m=i.indexOf(`/`,p);for(;m>=0;){let e=s[c];if(e===void 0)throw Error(`Directory stack underflow while building the path store`);n++;let t=i.slice(p,m),l=a.get(t);l===void 0&&(l=o.length,a.set(t,l),o.push(t));let u=r.length;r.push({depthAndFlags:cu(n,0,1),nameId:l,parentId:e,subtreeNodeCount:1,visibleSubtreeCount:1}),this.recordCreatedDirectoryPath(i.slice(0,m)),this.presortedDirectoryNodeIds.push(u),c++,s[c]=u,p=m+1,m=i.indexOf(`/`,p)}let h=s[c];if(h===void 0)throw Error(`Unable to resolve file parent for "${i}"`);let g=i.slice(p),_=a.get(g);_===void 0&&(_=o.length,a.set(g,_),o.push(g)),r.push({depthAndFlags:cu(n+1,0),nameId:_,parentId:h,subtreeNodeCount:1,visibleSubtreeCount:1}),p!==l.length&&(l=i.substring(0,p),u=n),t=i}s.length=c+1,t!=null&&(this.lastPreparedPath=Nu(t)),this.hasDeferredDirectoryIndexes=!0}finish(e={}){let t=e.skipSubtreeCountPass===!0;return this.hasDeferredDirectoryIndexes?(Y(this.instrumentation,`store.builder.buildDirectoryIndexes`,()=>this.buildPresortedFinish(t)),this.hasDeferredDirectoryIndexes=!1):t||Y(this.instrumentation,`store.builder.computeSubtreeCounts`,()=>this.computeSubtreeCounts(0)),{directories:this.directories,nodes:this.nodes,options:this.options,rootId:0,segmentTable:this.segmentTable,presortedDirectoryNodeIds:this.presortedDirectoryNodeIds.length>0?this.presortedDirectoryNodeIds:null}}didMatchAllInitialExpandedPaths(){return this.createdDirectoriesAllExpanded&&this.initialExpandedPathSet!=null&&this.createdDirectoryCount===this.initialExpandedPathSet.size}appendPreparedPath(e,t){if(this.hasDeferredDirectoryIndexes&&=(this.buildDirectoryIndexes(),!1),this.lastPreparedPath!=null){if(e.path===this.lastPreparedPath.path)throw Error(`Duplicate path: "${e.path}"`);if(t&&(this.options.sort===`default`?ku(this.lastPreparedPath,e,this.segmentSortKeyCache):Hu(this.lastPreparedPath,e,this.options.sort))>0)throw Error(`Builder input must be sorted before appendPaths(): "${e.path}"`)}let n=this.lastPreparedPath,r=Gu(e),i=n==null?0:Gu(n),a=n==null?0:Wu(n.segments,e.segments),o=Math.min(a,r,i);this.directoryStack.length=o+1;for(let n=o;n<r;n++){let r=this.directoryStack[this.directoryStack.length-1];if(r===void 0)throw Error(`Directory stack underflow while building the path store`);let i=t?this.getOrCreateDirectoryChild(r,e.segments[n]):this.createDirectoryChild(r,e.segments[n]);this.directoryStack.push(i)}if(e.isDirectory){let t=this.directoryStack[this.directoryStack.length-1];if(t===void 0)throw Error(`Unable to resolve directory node for "${e.path}"`);this.promoteDirectoryToExplicit(t,e.path),this.lastPreparedPath=e;return}let s=this.directoryStack[this.directoryStack.length-1];if(s===void 0)throw Error(`Unable to resolve file parent for "${e.path}"`);t?this.createFileChild(s,e.basename,e.path):this.createFileChildUnchecked(s,e.basename),this.lastPreparedPath=e}recordCreatedDirectoryPath(e){!this.createdDirectoriesAllExpanded||this.initialExpandedPathSet==null||(this.createdDirectoryCount+=1,this.initialExpandedPathSet.has(e)||(this.createdDirectoriesAllExpanded=!1))}createFileChild(e,t,n){let r=Lu(this.segmentTable,t),i=this.getDirectoryIndex(e),a=i.childIdByNameId;if(a!=null&&a.get(r)!==void 0)throw Error(`Path collides with an existing entry: "${n}"`);let o=this.nodes[e];if(o===void 0)throw Error(`Unknown parent node ID: ${String(e)}`);let s=this.nodes.length;return this.nodes.push({depthAndFlags:cu(lu(o)+1,0),nameId:r,parentId:e,subtreeNodeCount:1,visibleSubtreeCount:1}),a?.set(r,s),Xl(i,s),s}createFileChildUnchecked(e,t){let n=Lu(this.segmentTable,t),r=this.getDirectoryIndex(e),i=this.nodes[e];if(i===void 0)throw Error(`Unknown parent node ID: ${String(e)}`);let a=this.nodes.length;return this.nodes.push({depthAndFlags:cu(lu(i)+1,0),nameId:n,parentId:e,subtreeNodeCount:1,visibleSubtreeCount:1}),r.childIdByNameId!=null&&r.childIdByNameId.set(n,a),Xl(r,a),a}getOrCreateDirectoryChild(e,t){let n=Lu(this.segmentTable,t),r=this.getDirectoryIndex(e);if(r.childIdByNameId!=null){let e=r.childIdByNameId.get(n);if(e!==void 0){let n=this.nodes[e];if(n!=null&&!J(n))throw Error(`Path collides with an existing file while creating directory "${t}"`);return e}}let i=this.nodes[e];if(i===void 0)throw Error(`Unknown parent node ID: ${String(e)}`);let a=this.nodes.length;return this.nodes.push({depthAndFlags:cu(lu(i)+1,0,1),nameId:n,parentId:e,subtreeNodeCount:1,visibleSubtreeCount:1}),r.childIdByNameId!=null&&r.childIdByNameId.set(n,a),Xl(r,a),this.directories.set(a,Kl()),a}createDirectoryChild(e,t){let n=Lu(this.segmentTable,t),r=this.getDirectoryIndex(e),i=this.nodes[e];if(i===void 0)throw Error(`Unknown parent node ID: ${String(e)}`);let a=this.nodes.length;return this.nodes.push({depthAndFlags:cu(lu(i)+1,0,1),nameId:n,parentId:e,subtreeNodeCount:1,visibleSubtreeCount:1}),r.childIdByNameId!=null&&r.childIdByNameId.set(n,a),Xl(r,a),this.directories.set(a,Kl()),a}promoteDirectoryToExplicit(e,t){let n=this.nodes[e];if(n===void 0)throw Error(`Unknown directory node ID: ${String(e)}`);if(!J(n))throw Error(`Path is not a directory: "${t}"`);if(fu(n,1))throw Error(`Duplicate path: "${t}"`);pu(n,1)}getDirectoryIndex(e){let t=this.directories.get(e);if(t!==void 0)return t;throw Error(`Unknown directory child index for node ${String(e)}`)}buildPresortedFinish(e){let t=this.nodes,n=this.directories;n.set(0,ql());let r=-1,i=null;for(let e=1;e<t.length;e++){let a=t[e];if(a==null)continue;if(J(a)){let t=ql();n.set(e,t),r=e,i=t}let o;a.parentId===r?o=i:(o=n.get(a.parentId),r=a.parentId,i=o??null),o?.childIds.push(e)}if(!e)for(let e=t.length-1;e>=1;e--){let n=t[e];if(n==null)continue;let r=t[n.parentId];r!=null&&(r.subtreeNodeCount+=n.subtreeNodeCount,r.visibleSubtreeCount+=n.visibleSubtreeCount)}}buildDirectoryIndexes(){let e=this.nodes;for(let t=1;t<e.length;t++){let n=e[t];if(n==null)continue;J(n)&&this.directories.set(t,Kl());let r=this.directories.get(n.parentId);r!=null&&(r.childIdByNameId!=null&&r.childIdByNameId.set(n.nameId,t),Xl(r,t))}}computeSubtreeCounts(e){let t=this.nodes[e];if(t===void 0)throw Error(`Unknown node ID: ${String(e)}`);if(!J(t))return t.subtreeNodeCount=1,t.visibleSubtreeCount=1,1;let n=this.getDirectoryIndex(e),r=1;for(let e of n.childIds)r+=this.computeSubtreeCounts(e);return Ql(this.nodes,n),t.subtreeNodeCount=r,t.visibleSubtreeCount=r,r}};function nd(e,t=`closed`,n=null){let r=id(t);return{activeNodeCount:e.nodes.length-1,collapsedDirectoryIds:new Set,collapseNewDirectoriesByDefault:!1,defaultExpansion:r,directoriesOpenByDefault:r===`open`,hasCollapsedDirectoryOverrides:!1,directoryLoadInfoById:new Map,expandedDirectoryIds:new Set,instrumentation:n,listeners:new Map,pathCacheByNodeId:new Map([[e.rootId,{path:``,version:0}]]),pathCacheVersion:0,snapshot:e,transactionStack:[]}}function rd(){return{affectedAncestorIds:new Set,affectedNodeIds:new Set,events:[]}}function id(e){if(typeof e!=`number`)return e;if(!Number.isInteger(e)||e<0)throw Error(`initialExpansion must be "open", "closed", or a non-negative integer depth. Received: ${String(e)}`);return e}function ad(e,t){return fu(t,2)||e.defaultExpansion===`open`?!0:e.defaultExpansion===`closed`?!1:lu(t)<=e.defaultExpansion}function od(e,t,n=e.snapshot.nodes[t]){return n==null||!J(n)?!1:e.directoriesOpenByDefault&&!e.hasCollapsedDirectoryOverrides?!0:e.collapsedDirectoryIds.has(t)?!1:e.expandedDirectoryIds.has(t)?!0:ad(e,n)}function sd(e,t,n,r=e.snapshot.nodes[t]){if(r==null||!J(r))return;let i=ad(e,r);if(n){if(i){e.collapsedDirectoryIds.delete(t),e.hasCollapsedDirectoryOverrides=e.collapsedDirectoryIds.size>0;return}e.expandedDirectoryIds.add(t);return}if(i){e.collapsedDirectoryIds.add(t),e.hasCollapsedDirectoryOverrides=!0;return}e.expandedDirectoryIds.delete(t)}function cd(e,t){let n=e.directoryLoadInfoById.get(t);if(n!=null)return n;let r={activeAttemptId:null,errorMessage:null,nextAttemptId:1,state:`loaded`};return e.directoryLoadInfoById.set(t,r),r}function ld(e,t){return e.directoryLoadInfoById.get(t)?.state??`loaded`}function ud(e,t){let n=cd(e,t);if(n.state===`loading`&&n.activeAttemptId!=null)return{attemptId:n.activeAttemptId,nodeId:t,reused:!0};let r=n.nextAttemptId;return n.activeAttemptId=r,n.errorMessage=null,n.nextAttemptId+=1,n.state=`loading`,{attemptId:r,nodeId:t,reused:!1}}function dd(e,t){let n=cd(e,t);n.activeAttemptId=null,n.errorMessage=null,n.state=`unloaded`}function fd(e,t,n){let r=e.directoryLoadInfoById.get(t);return r==null||r.activeAttemptId!==n?!1:(r.activeAttemptId=null,r.errorMessage=null,r.state=`loaded`,!0)}function pd(e,t,n){return e.directoryLoadInfoById.get(t)?.activeAttemptId===n}function md(e,t,n,r){let i=e.directoryLoadInfoById.get(t);return i==null||i.activeAttemptId!==n?!1:(i.activeAttemptId=null,i.errorMessage=r??null,i.state=`error`,!0)}function hd(e,t){e.directoryLoadInfoById.delete(t)}function gd(e,t,n){let r=n,i=e.listeners.get(t);return i==null?e.listeners.set(t,new Set([r])):i.add(r),()=>{let n=e.listeners.get(t);n!=null&&(n.delete(r),n.size===0&&e.listeners.delete(t))}}function _d(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],canonicalChanged:!0,operation:`add`,path:e.path,projectionChanged:e.projectionChanged,visibleCountDelta:null}}function vd(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],canonicalChanged:!0,operation:`remove`,path:e.path,projectionChanged:e.projectionChanged,recursive:e.recursive,visibleCountDelta:null}}function yd(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],canonicalChanged:!0,from:e.from,operation:`move`,projectionChanged:e.projectionChanged,to:e.to,visibleCountDelta:null}}function bd(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],canonicalChanged:!1,operation:`expand`,path:e.path,projectionChanged:!0,visibleCountDelta:null}}function xd(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],canonicalChanged:!1,operation:`collapse`,path:e.path,projectionChanged:!0,visibleCountDelta:null}}function Sd(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],canonicalChanged:!1,operation:`mark-directory-unloaded`,path:e.path,projectionChanged:e.projectionChanged,visibleCountDelta:null}}function Cd(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],attemptId:e.attemptId,canonicalChanged:!1,operation:`begin-child-load`,path:e.path,projectionChanged:e.projectionChanged,reused:e.reused,visibleCountDelta:null}}function wd(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],attemptId:e.attemptId,canonicalChanged:e.childEvents.some(e=>e.canonicalChanged),childEvents:e.childEvents,operation:`apply-child-patch`,path:e.path,projectionChanged:e.projectionChanged,visibleCountDelta:null}}function Td(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],attemptId:e.attemptId,canonicalChanged:!1,operation:`complete-child-load`,path:e.path,projectionChanged:e.projectionChanged,stale:e.stale,visibleCountDelta:null}}function Ed(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],attemptId:e.attemptId,canonicalChanged:!1,errorMessage:e.errorMessage,operation:`fail-child-load`,path:e.path,projectionChanged:e.projectionChanged,stale:e.stale,visibleCountDelta:null}}function Dd(e){return{activeNodeCountAfter:e.activeNodeCountAfter,activeNodeCountBefore:e.activeNodeCountBefore,affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],cachedPathEntryCountAfter:e.cachedPathEntryCountAfter,cachedPathEntryCountBefore:e.cachedPathEntryCountBefore,canonicalChanged:!1,idsPreserved:e.idsPreserved,loadInfoEntryCountAfter:e.loadInfoEntryCountAfter,loadInfoEntryCountBefore:e.loadInfoEntryCountBefore,mode:e.mode,operation:`cleanup`,projectionChanged:e.projectionChanged,reclaimedCachedPathEntryCount:e.reclaimedCachedPathEntryCount,reclaimedLoadInfoEntryCount:e.reclaimedLoadInfoEntryCount,reclaimedNodeSlotCount:e.reclaimedNodeSlotCount,reclaimedSegmentCount:e.reclaimedSegmentCount,segmentCountAfter:e.segmentCountAfter,segmentCountBefore:e.segmentCountBefore,totalNodeSlotCountAfter:e.totalNodeSlotCountAfter,totalNodeSlotCountBefore:e.totalNodeSlotCountBefore,visibleCountDelta:null}}function Od(e,t,n){return{...n,visibleCountDelta:zd(e)-t}}function kd(e,t){let n=zd(e),r=rd();e.transactionStack.push(r);try{t()}catch(t){throw Md(e,r,!1),t}Md(e,r,!0,zd(e)-n)}function Ad(e,t){let n=e.instrumentation;if(n==null){jd(e,t);return}Y(n,`store.events.record`,()=>jd(e,t))}function jd(e,t){let n=e.transactionStack[e.transactionStack.length-1]??null;if(n==null){Ld(e,t);return}n.events.push(t),Id(n,t)}function Md(e,t,n,r=null){if(e.transactionStack.pop()!==t)throw Error(`Transaction stack underflow`);if(!n)return;let i=e.transactionStack[e.transactionStack.length-1]??null;if(i!=null){let n=e.instrumentation;n==null?Fd(i,t):Y(n,`store.events.batch.merge`,()=>Fd(i,t));return}let a=Nd(t,r),o=e.instrumentation;if(o==null){Ld(e,a);return}Y(o,`store.events.batch.commit`,()=>Ld(e,a))}function Nd(e,t){return{affectedAncestorIds:[...e.affectedAncestorIds],affectedNodeIds:[...e.affectedNodeIds],canonicalChanged:e.events.some(e=>e.canonicalChanged),events:[...e.events],operation:`batch`,projectionChanged:e.events.some(e=>e.projectionChanged),visibleCountDelta:t}}function Pd(e,t){for(let n of t.affectedAncestorIds)e.affectedAncestorIds.add(n);for(let n of t.affectedNodeIds)e.affectedNodeIds.add(n)}function Fd(e,t){for(let n of t.events)e.events.push(n);Pd(e,t)}function Id(e,t){for(let n of t.affectedNodeIds)e.affectedNodeIds.add(n);for(let n of t.affectedAncestorIds)e.affectedAncestorIds.add(n)}function Ld(e,t){let n=e.instrumentation;if(n==null){Rd(e,t);return}Y(n,`store.events.emit`,()=>Rd(e,t))}function Rd(e,t){e.listeners.get(t.operation)?.forEach(e=>e(t)),e.listeners.get(`*`)?.forEach(e=>e(t))}function zd(e){return e.snapshot.nodes[e.snapshot.rootId]?.visibleSubtreeCount??0}function Bd(e,t){if(e.snapshot.options.flattenEmptyDirectories!==!0)return null;let n=e.snapshot.nodes[t];if(n==null||!J(n)||fu(n,2))return null;let r=e.snapshot.directories.get(t);if(r==null||r.childIds.length!==1)return null;let i=r.childIds[0];if(i==null)return null;let a=e.snapshot.nodes[i];return a==null||!J(a)?null:i}function Vd(e,t){let n=t;for(;;){let t=Bd(e,n);if(t==null)return n;n=t}}function Hd(e,t){let n=[t],r=t;for(;;){let t=Bd(e,r);if(t==null)return n;n.push(t),r=t}}function Ud(e,t){let n=t==null?e.snapshot.rootId:$d(e,t);return n==null?[]:nf(e,n)}function Wd(e,t){let n=Nu(t),r=n.isDirectory?n.segments:n.segments.slice(0,-1),i=vf(e,_f(e,r)),{createdNodeIds:a,directoryId:o}=rf(e,r),s=new Set(a),c=o;if(n.isDirectory){let n=X(e,o);if(fu(n,1))throw Error(`Path already exists: "${t}"`);pu(n,1),e.pathCacheByNodeId.set(o,{path:t,version:e.pathCacheVersion}),s.add(o)}else c=of(e,o,n.basename),s.add(c);Xd(e,o);let l=vf(e,o);return _d({affectedAncestorIds:Qd(e,c),affectedNodeIds:[...s],path:t,projectionChanged:yf(i,l)})}function Gd(e,t,n){let r=$d(e,t);if(r==null)throw Error(`Path does not exist: "${t}"`);let i=X(e,r);if(fu(i,2))throw Error(`The root node cannot be removed`);if(J(i)&&tf(e,r).childIds.length>0&&n.recursive!==!0)throw Error(`Cannot remove a non-empty directory without recursive: "${t}"`);let a=i.parentId,o=vf(e,a),s=hf(e,r);lf(e,a,r,i.nameId),gf(e,a),Xd(e,a);let c=vf(e,a);return vd({affectedAncestorIds:Qd(e,a),affectedNodeIds:s,path:t,projectionChanged:yf(o,c),recursive:n.recursive===!0})}function Kd(e,t,n,r){let i=$d(e,t);if(i==null)throw Error(`Source path does not exist: "${t}"`);let a=X(e,i);if(fu(a,2))throw Error(`The root node cannot be moved`);let o=r.collision??`error`,s=pf(e,i,n),c=vf(e,a.parentId),l=vf(e,s.parentId),u=Ru(e.snapshot.segmentTable,a.nameId),d=Lu(e.snapshot.segmentTable,s.basename);if(s.parentId===a.parentId&&u===s.basename)return null;if(J(a)&&Cf(e,i,s.parentId))throw Error(`Cannot move a directory into one of its descendants`);let f=Jl(e.snapshot.nodes,tf(e,s.parentId)).get(d),p=s.existingNodeId??f??null;if(p!=null&&p!==i&&mf(e,p,o,uu(a))===`skip`)return null;let m=a.parentId;lf(e,m,i,a.nameId),a.parentId=s.parentId,a.nameId=d,e.pathCacheByNodeId.delete(i),Sf(e,i),cf(e,s.parentId,i),gf(e,m),e.pathCacheVersion++,Xd(e,m),s.parentId!==m&&Xd(e,s.parentId);let h=vf(e,m),g=vf(e,s.parentId);return yd({affectedAncestorIds:[...new Set([...Qd(e,m),...Qd(e,s.parentId)])],affectedNodeIds:[i],from:t,projectionChanged:bf([c,l],[h,g]),to:Yd(e,i)})}function qd(e,t){let n=e.pathCacheByNodeId.get(t);return n!=null&&n.version===e.pathCacheVersion?n.path:null}function Jd(e,t,n){return e.pathCacheByNodeId.set(t,{path:n,version:e.pathCacheVersion}),n}function Yd(e,t){let n=X(e,t),r=qd(e,t);if(r!=null)return r;if(fu(n,2))return Jd(e,t,``);let i=Yd(e,n.parentId),a=Ru(e.snapshot.segmentTable,n.nameId),o=i.length===0?a:`${i}${a}`;return Jd(e,t,J(n)?`${o}/`:o)}function Xd(e,t){let n=e.instrumentation;if(n==null){Tf(e,t);return}Y(n,`store.recomputeCountsUpwardFrom`,()=>Tf(e,t))}function Zd(e,t){let n=[[t,0]],{nodes:r,directories:i}=e.snapshot;for(;n.length>0;){let t=n[n.length-1],a=t[0],o=r[a];if(o==null||!J(o)){wf(e,a,o,!0),n.pop();continue}let s=i.get(a);if(s==null||t[1]>=s.childIds.length){wf(e,a,o,!0),n.pop();continue}let c=s.childIds[t[1]++];n.push([c,0])}}function Qd(e,t){let n=[],r=t;for(;r!=null;){let t=X(e,r);if(n.push(r),r===e.snapshot.rootId)break;r=t.parentId}return n}function $d(e,t){if(t.length===0)return e.snapshot.rootId;let n=Pu(t);return ef(e,n.segments,n.requiresDirectory)}function ef(e,t,n){let r=e.snapshot.rootId;for(let n of t){let t=e.snapshot.segmentTable.idByValue.get(n);if(t===void 0)return null;let i=tf(e,r),a=Jl(e.snapshot.nodes,i).get(t);if(a===void 0)return null;r=a}let i=X(e,r);return n&&!J(i)?null:r}function tf(e,t){let n=e.snapshot.directories.get(t);if(n===void 0)throw Error(`Unknown directory child index for node ${String(t)}`);return n}function X(e,t){let n=e.snapshot.nodes[t];if(n===void 0||fu(n,4))throw Error(`Unknown node ID: ${String(t)}`);return n}function nf(e,t){let n=e.snapshot.nodes[t];if(n===void 0||fu(n,4))return[];if(!J(n))return[Yd(e,t)];if(tf(e,t).childIds.length===0)return fu(n,1)&&!fu(n,2)?[Yd(e,t)]:[];let r=[],i=[{childIndex:0,nodeId:t}];for(;i.length>0;){let t=i[i.length-1];if(t==null)break;let n=e.snapshot.nodes[t.nodeId];if(n===void 0||fu(n,4)){i.pop();continue}if(!J(n)){r.push(Yd(e,t.nodeId)),i.pop();continue}let a=tf(e,t.nodeId);if(a.childIds.length===0){fu(n,1)&&!fu(n,2)&&r.push(Yd(e,t.nodeId)),i.pop();continue}let o=a.childIds[t.childIndex];if(o==null){i.pop();continue}t.childIndex++,i.push({childIndex:0,nodeId:o})}return r}function rf(e,t){let n=[],r=e.snapshot.rootId;for(let i of t){let t=Lu(e.snapshot.segmentTable,i),a=tf(e,r),o=Jl(e.snapshot.nodes,a).get(t);if(o!==void 0){if(!J(X(e,o)))throw Error(`Cannot create a directory that collides with an existing file: "${i}"`);r=o;continue}r=af(e,r,t),n.push(r)}return{createdNodeIds:n,directoryId:r}}function af(e,t,n){let r=X(e,t),i=e.snapshot.nodes.length;return e.snapshot.nodes.push({depthAndFlags:cu(lu(r)+1,0,1),nameId:n,parentId:t,subtreeNodeCount:1,visibleSubtreeCount:1}),e.snapshot.directories.set(i,Kl()),cf(e,t,i),e.collapseNewDirectoriesByDefault&&(e.collapsedDirectoryIds.add(i),e.hasCollapsedDirectoryOverrides=!0),e.activeNodeCount++,i}function of(e,t,n){let r=Lu(e.snapshot.segmentTable,n),i=tf(e,t);if(Jl(e.snapshot.nodes,i).has(r))throw Error(`Path already exists: "${Df(e,t,n)}"`);let a=X(e,t),o=e.snapshot.nodes.length;return e.snapshot.nodes.push({depthAndFlags:cu(lu(a)+1,0),nameId:r,parentId:t,subtreeNodeCount:1,visibleSubtreeCount:1}),cf(e,t,o),e.activeNodeCount++,o}function sf(e,t,n){let r=0,i=t.childIds.length;for(;r<i;){let a=r+i>>>1,o=t.childIds[a];if(o==null){i=a;continue}uf(e,n,o)<0?i=a:r=a+1}return r}function cf(e,t,n){let r=tf(e,t),i=X(e,n);Jl(e.snapshot.nodes,r).set(i.nameId,n),$l(r,n,i.subtreeNodeCount,i.visibleSubtreeCount);let a=sf(e,r,n);r.childIds.splice(a,0,n),Zl(r,a),nu(e.snapshot.nodes,r)}function lf(e,t,n,r){let i=tf(e,t),a=Yl(i),o=a.get(n)??-1;Jl(e.snapshot.nodes,i).delete(r),a.delete(n);let s=e.snapshot.nodes[n];s!=null&&$l(i,n,-s.subtreeNodeCount,-s.visibleSubtreeCount),o>=0&&(i.childIds.splice(o,1),Zl(i,o),nu(e.snapshot.nodes,i))}function uf(e,t,n){let r=e.snapshot.options.sort;return r===`default`?df(e,t,n):r(ff(e,t),ff(e,n))}function df(e,t,n){let r=X(e,t),i=X(e,n),a=J(r);if(a!==J(i))return a?-1:1;let o=Cu(Au(e.snapshot.segmentTable,r.nameId),Au(e.snapshot.segmentTable,i.nameId));if(o!==0)return o;let s=Ru(e.snapshot.segmentTable,r.nameId),c=Ru(e.snapshot.segmentTable,i.nameId);return s===c?t<n?-1:1:s<c?-1:1}function ff(e,t){let n=X(e,t),r=Yd(e,t),i=J(n),a=i?r.slice(0,-1):r;return{basename:Ru(e.snapshot.segmentTable,n.nameId),depth:lu(n),isDirectory:i,path:r,segments:a.length===0?[]:a.split(`/`)}}function pf(e,t,n){let r=X(e,t),i=$d(e,n);if(i!=null){let t=X(e,i);if(J(t))return{basename:Ru(e.snapshot.segmentTable,r.nameId),existingNodeId:null,parentId:i};let a=Pu(n).segments;return{basename:a[a.length-1]??``,existingNodeId:i,parentId:t.parentId}}let a=Pu(n),o=a.segments[a.segments.length-1]??``,s=a.segments.slice(0,-1),c=s.length===0?e.snapshot.rootId:ef(e,s,!0);if(c==null)throw Error(`Destination parent does not exist: "${n}"`);return{basename:o,existingNodeId:null,parentId:c}}function mf(e,t,n,r){if(n===`skip`)return`skip`;if(n===`error`)throw Error(`Destination already exists: "${Yd(e,t)}"`);let i=X(e,t);if(uu(i)!==r)throw Error(`replace collision requires the same source and destination kinds`);if(J(i)&&tf(e,t).childIds.length>0)throw Error(`replace collision does not support non-empty directories`);let a=i.parentId,o=i.nameId;return hf(e,t),lf(e,a,t,o),gf(e,a),Xd(e,a),`handled`}function hf(e,t){let n=[],r=[{nodeId:t,visitedChildren:!1}];for(;r.length>0;){let t=r.pop();if(t==null)break;let i=X(e,t.nodeId);if(t.visitedChildren||!J(i)){J(i)&&e.snapshot.directories.delete(t.nodeId),pu(i,4),e.pathCacheByNodeId.delete(t.nodeId),e.collapsedDirectoryIds.delete(t.nodeId)&&(e.hasCollapsedDirectoryOverrides=e.collapsedDirectoryIds.size>0),e.expandedDirectoryIds.delete(t.nodeId),hd(e,t.nodeId),e.activeNodeCount--,n.push(t.nodeId);continue}r.push({nodeId:t.nodeId,visitedChildren:!0});let a=tf(e,t.nodeId);for(let e=a.childIds.length-1;e>=0;e--){let t=a.childIds[e];t!=null&&r.push({nodeId:t,visitedChildren:!1})}}return n}function gf(e,t){let n=t;for(;n!=null;){let t=X(e,n);if(!J(t)||fu(t,2)||tf(e,n).childIds.length>0)return;pu(t,1),n=t.parentId===n?null:t.parentId}}function _f(e,t){let n=e.snapshot.rootId;for(let r of t){let t=e.snapshot.segmentTable.idByValue.get(r);if(t==null)break;let i=Jl(e.snapshot.nodes,tf(e,n)).get(t);if(i==null||!J(X(e,i)))break;n=i}return n}function vf(e,t){let n=xf(e,t);if(n==null)return null;let r=Vd(e,n),i=X(e,r),a=n===r?null:Hd(e,n).map(t=>Yd(e,t));return JSON.stringify({flattenedSegmentPaths:a,hasChildren:tf(e,r).childIds.length>0,path:Yd(e,r),terminalKind:uu(i)})}function yf(e,t){return bf([e],[t])}function bf(e,t){for(let n=0;n<e.length;n+=1){let r=e[n],i=t[n];if(r==null||i==null||r!==i)return!0}return!1}function xf(e,t){let n=t;for(;n!=null;){let t=X(e,n);if(!J(t)||fu(t,2))return null;if(!od(e,n,t))return n;n=t.parentId}return null}function Sf(e,t){let n=X(e,t);if(mu(n,(t===e.snapshot.rootId?-1:lu(X(e,n.parentId)))+1),!J(n))return;let r=tf(e,t);for(let t of r.childIds)Sf(e,t)}function Cf(e,t,n){let r=n;for(;r!=null;){if(r===t)return!0;let n=X(e,r);if(r===e.snapshot.rootId)return!1;r=n.parentId}return!1}function wf(e,t,n=X(e,t),r=!1){let i=e.instrumentation;if(i==null){Ef(e,t,n,r);return}Y(i,`store.recomputeNodeCounts`,()=>Ef(e,t,n,r))}function Tf(e,t){let n=t;for(;n!=null;){let t=X(e,n),r=t.subtreeNodeCount,i=t.visibleSubtreeCount;if(wf(e,n,t),n===e.snapshot.rootId)return;let a=t.subtreeNodeCount-r,o=t.visibleSubtreeCount-i,s=t.parentId;(a!==0||o!==0)&&$l(tf(e,s),n,a,o),n=s}}function Ef(e,t,n,r){if(!J(n)){n.subtreeNodeCount=1,n.visibleSubtreeCount=1;return}let i=tf(e,t);if(r){let t=e.instrumentation;t==null?Ql(e.snapshot.nodes,i):Y(t,`store.recomputeNodeCounts.rebuildChildAggregates`,()=>Ql(e.snapshot.nodes,i))}let a=1+i.totalChildSubtreeNodeCount,o=i.totalChildVisibleSubtreeCount;if(n.subtreeNodeCount=a,fu(n,2)){n.visibleSubtreeCount=o;return}n.visibleSubtreeCount=Bd(e,t)==null?od(e,t,n)?1+o:1:o}function Df(e,t,n){let r=Yd(e,t);return r.length===0?n:`${r}${n}`}function Of(e){return e!=null&&!fu(e,4)}function kf(e,t){let n=e.snapshot.nodes[t];return!Of(n)||!J(n)||fu(n,2)?null:n}function Af(e){let t=0;for(let[n,r]of e.pathCacheByNodeId)r.version===e.pathCacheVersion&&Of(e.snapshot.nodes[n])&&(t+=1);return t}function jf(e){return Math.max(0,e.valueById.length-1)}function Mf(e){return{activeNodeCount:e.activeNodeCount,cachedPathEntryCount:Af(e),loadInfoEntryCount:e.directoryLoadInfoById.size,segmentCount:jf(e.snapshot.segmentTable),totalNodeSlotCount:Math.max(0,e.snapshot.nodes.length-1)}}function Nf(e,t,n,r){return{activeNodeCountAfter:r.activeNodeCount,activeNodeCountBefore:n.activeNodeCount,cachedPathEntryCountAfter:r.cachedPathEntryCount,cachedPathEntryCountBefore:n.cachedPathEntryCount,idsPreserved:t,loadInfoEntryCountAfter:r.loadInfoEntryCount,loadInfoEntryCountBefore:n.loadInfoEntryCount,mode:e,reclaimedCachedPathEntryCount:n.cachedPathEntryCount-r.cachedPathEntryCount,reclaimedLoadInfoEntryCount:n.loadInfoEntryCount-r.loadInfoEntryCount,reclaimedNodeSlotCount:n.totalNodeSlotCount-r.totalNodeSlotCount,reclaimedSegmentCount:n.segmentCount-r.segmentCount,segmentCountAfter:r.segmentCount,segmentCountBefore:n.segmentCount,totalNodeSlotCountAfter:r.totalNodeSlotCount,totalNodeSlotCountBefore:n.totalNodeSlotCount}}function Pf(e){let t=[],n=[];for(let n of e.collapsedDirectoryIds)kf(e,n)!=null&&t.push(Yd(e,n));for(let t of e.expandedDirectoryIds)kf(e,t)!=null&&n.push(Yd(e,t));return{collapsedPaths:t,expandedPaths:n}}function Ff(e){let t=[];for(let[n,r]of e.directoryLoadInfoById)kf(e,n)==null||ld(e,n)===`loaded`||t.push({info:{activeAttemptId:null,errorMessage:r.errorMessage,nextAttemptId:r.nextAttemptId,state:r.state},path:Yd(e,n)});return t}function If(e,t){e.collapsedDirectoryIds.clear(),e.hasCollapsedDirectoryOverrides=!1,e.expandedDirectoryIds.clear();for(let n of t.expandedPaths){let t=$d(e,n);t!=null&&sd(e,t,!0,X(e,t))}for(let n of t.collapsedPaths){let t=$d(e,n);t!=null&&sd(e,t,!1,X(e,t))}}function Lf(e,t){e.directoryLoadInfoById.clear();for(let n of t){let t=$d(e,n.path);t!=null&&kf(e,t)!=null&&e.directoryLoadInfoById.set(t,{activeAttemptId:null,errorMessage:n.info.errorMessage,nextAttemptId:n.info.nextAttemptId,state:n.info.state})}}function Rf(e){e.pathCacheVersion+=1,e.pathCacheByNodeId.clear(),e.pathCacheByNodeId.set(e.snapshot.rootId,{path:``,version:e.pathCacheVersion})}function zf(e){let t=e.snapshot.segmentTable,n=Iu();for(let r of e.snapshot.nodes)if(Of(r)){if(fu(r,2)){r.nameId=0;continue}r.nameId=Lu(n,Ru(t,r.nameId))}e.snapshot.segmentTable=n}function Bf(e){for(let[t,n]of e.snapshot.directories){let r=e.snapshot.nodes[t];if(!Of(r)||!J(r)){e.snapshot.directories.delete(t);continue}let i=n.childIds.filter(n=>{let r=e.snapshot.nodes[n];return Of(r)&&r.parentId===t});n.childIds=i,n.childIdByNameId=new Map(i.map(t=>[X(e,t).nameId,t])),n.childPositionById=new Map(i.map((e,t)=>[e,t])),Ql(e.snapshot.nodes,n)}}function Vf(e){let t=e.snapshot.nodes.length-1;for(;t>e.snapshot.rootId;){let n=e.snapshot.nodes[t];if(Of(n))break;--t}e.snapshot.nodes.length=t+1}function Hf(e){let t=Pf(e),n=Ff(e);Y(e.instrumentation,`store.cleanup.stable.clearPathCaches`,()=>Rf(e)),Y(e.instrumentation,`store.cleanup.stable.rebuildSegmentTable`,()=>zf(e)),Y(e.instrumentation,`store.cleanup.stable.rebuildDirectoryIndexes`,()=>Bf(e)),Y(e.instrumentation,`store.cleanup.stable.trimTrailingRemovedNodeSlots`,()=>Vf(e)),Y(e.instrumentation,`store.cleanup.stable.restoreExpansionOverrides`,()=>If(e,t)),Y(e.instrumentation,`store.cleanup.stable.restoreDirectoryLoadInfos`,()=>Lf(e,n)),Y(e.instrumentation,`store.cleanup.stable.recomputeCounts`,()=>Zd(e,e.snapshot.rootId))}function Uf(e){let t=Pf(e),n=Ff(e),r=Y(e.instrumentation,`store.cleanup.aggressive.listPaths`,()=>Ud(e)),i=gu({...e.snapshot.options},e.instrumentation),a=Y(e.instrumentation,`store.cleanup.aggressive.rebuildSnapshot`,()=>{let e=new td(i);return e.appendPaths(r),e.finish()});e.snapshot=a,e.activeNodeCount=a.nodes.length-1,e.pathCacheByNodeId=new Map([[a.rootId,{path:``,version:0}]]),e.pathCacheVersion=0,Y(e.instrumentation,`store.cleanup.aggressive.restoreExpansionOverrides`,()=>If(e,t)),Y(e.instrumentation,`store.cleanup.aggressive.restoreDirectoryLoadInfos`,()=>Lf(e,n)),Y(e.instrumentation,`store.cleanup.aggressive.recomputeCounts`,()=>Zd(e,e.snapshot.rootId))}function Wf(e){for(let t of e.directoryLoadInfoById.values())if(t.state===`loading`&&t.activeAttemptId!=null)return!0;return!1}function Gf(e,t){let n=Mf(e);t===`stable`?Y(e.instrumentation,`store.cleanup.stable`,()=>Hf(e)):Y(e.instrumentation,`store.cleanup.aggressive`,()=>Uf(e));let r=Mf(e);return Nf(t,t===`stable`,n,r)}var Kf=64;function qf(e,t){let n=t+2;if(n<=e.length)return e;let r=e.length;for(;r<n;)r*=2;let i=new Int32Array(r);return i.fill(-1),i.set(e),i}function Jf(e){return X(e,e.snapshot.rootId).visibleSubtreeCount}function Yf(e,t,n,r){let i=X(e,t.terminalNodeId),a=Math.max(1,i.visibleSubtreeCount);return Math.min(r-1,n+a-1)}function Xf(e,t,n,r){return{ancestorPaths:r,index:t.index,posInSet:t.posInSet,row:hp(e,t.cursor),setSize:t.setSize,subtreeEndIndex:Yf(e,t.cursor,t.index,n)}}function Zf(e,t,n,r,i,a){let o=tf(e,t),{childIndex:s,childVisibleIndex:c,localVisibleIndex:l}=eu(e.snapshot.nodes,o,n),u=o.childIds[s];if(u==null)throw Error(`Visible index ${String(n)} is out of range`);return Qf(e,u,l,r+c,i+1,s,o.childIds.length,a)}function Qf(e,t,n,r,i,a,o,s){if(!J(X(e,t))){if(n===0)return{ancestors:s,cursor:{headNodeId:t,terminalNodeId:t,visibleDepth:i},index:r,posInSet:a,setSize:o};throw Error(`Visible index ${String(n)} is out of range for file`)}let c=lp(e,t,i);if(n===0)return{ancestors:s,cursor:c,index:r,posInSet:a,setSize:o};let l=X(e,c.terminalNodeId);if(!J(l)||!od(e,c.terminalNodeId,l))throw Error(`Visible index ${String(n)} is out of range for collapsed directory`);return Zf(e,c.terminalNodeId,n-1,r+1,c.visibleDepth,[...s,{cursor:c,index:r,posInSet:a,setSize:o}])}function $f(e,t){let n=Jf(e);if(t<0||t>=n)return null;let r=Zf(e,e.snapshot.rootId,t,0,-1,[]),i=r.ancestors.map(t=>Yd(e,t.cursor.terminalNodeId)),a=null;return{ancestorPaths:i,get ancestorRows(){if(a!=null)return a;let t=[],i=[];for(let a of r.ancestors){let r=Xf(e,a,n,[...i]);t.push(r),i.push(r.row.path)}return a=t,a},index:r.index,posInSet:r.posInSet,row:hp(e,r.cursor),setSize:r.setSize,subtreeEndIndex:Yf(e,r.cursor,r.index,n)}}function ep(e,t,n){let r=e.instrumentation,i=Jf(e);if(i<=0||n<t)return[];let a=Math.max(0,Math.min(t,i-1)),o=Math.max(a,Math.min(n,i-1));if(r==null){if(a===0)return mp(e,o+1);let t=[],n=op(e,a);for(let r=a;r<=o&&n!=null;r++){let r=hp(e,n);t.push(r),n=dp(e,n)}return t}let s=[],c=0,l=0,u=Y(r,`store.getVisibleSlice.selectFirstRow`,()=>op(e,a));for(let t=a;t<=o&&u!=null;t++){let t=Y(r,`store.getVisibleSlice.materializeRow`,()=>hp(e,u));s.push(t),t.isFlattened&&(c++,l+=t.flattenedSegments?.length??0),u=Y(r,`store.getVisibleSlice.advanceCursor`,()=>dp(e,u))}return vu(r,`workload.visibleRowsRead`,s.length),vu(r,`workload.flattenedRowsRead`,c),vu(r,`workload.flattenedSegmentsRead`,l),s}function tp(e,t=Jf(e)){let n=e.instrumentation;return n==null?pp(e,t):Y(n,`store.getVisibleTreeProjection`,()=>pp(e,t))}function np(e){return fp(tp(e))}function rp(e,t){let n=$d(e,t);if(n==null||n===e.snapshot.rootId||J(X(e,n))&&Vd(e,n)!==n)return null;let r=0,i=n,{nodes:a,rootId:o}=e.snapshot;for(;i!==o;){let t=X(e,i).parentId,n=tf(e,t),s=Yl(n).get(i);if(s==null)throw Error(`Child ${String(i)} was not found in its parent index`);if(r+=tu(a,n,s),t!==o){let n=X(e,t),a=Bd(e,t);if(!od(e,t,n)&&a!==i)return null;Vd(e,t)===t&&(r+=1)}i=t}return r}function ip(e,t){let n=$d(e,t);if(n==null)throw Error(`Path does not exist: "${t}"`);let r=X(e,n);if(!J(r))throw Error(`Path is not a directory: "${t}"`);return od(e,n,r)?null:(sd(e,n,!0,r),Xd(e,n),bd({affectedAncestorIds:Qd(e,n),affectedNodeIds:[n],path:t,projectionChanged:!0}))}function ap(e,t){let n=$d(e,t);if(n==null)throw Error(`Path does not exist: "${t}"`);let r=X(e,n);if(!J(r))throw Error(`Path is not a directory: "${t}"`);return od(e,n,r)?(sd(e,n,!1,r),Xd(e,n),xd({affectedAncestorIds:Qd(e,n),affectedNodeIds:[n],path:t,projectionChanged:!0})):null}function op(e,t){return t<0||t>=Jf(e)?null:sp(e,e.snapshot.rootId,t,-1)}function sp(e,t,n,r){let i=tf(e,t),a=e.instrumentation,{childIndex:o,localVisibleIndex:s}=a==null?eu(e.snapshot.nodes,i,n):Y(a,`store.getVisibleSlice.selectChildIndex`,()=>eu(e.snapshot.nodes,i,n)),c=i.childIds[o];if(c!=null)return cp(e,c,s,r+1);throw Error(`Visible index ${String(n)} is out of range`)}function cp(e,t,n,r){if(!J(X(e,t))){if(n===0)return{headNodeId:t,terminalNodeId:t,visibleDepth:r};throw Error(`Visible index ${String(n)} is out of range for file`)}let i=lp(e,t,r);if(n===0)return i;let a=X(e,i.terminalNodeId);if(!J(a)||!od(e,i.terminalNodeId,a))throw Error(`Visible index ${String(n)} is out of range for collapsed directory`);return sp(e,i.terminalNodeId,n-1,i.visibleDepth)}function lp(e,t,n){return J(X(e,t))?e.instrumentation==null?{headNodeId:t,terminalNodeId:Vd(e,t),visibleDepth:n}:{headNodeId:t,terminalNodeId:Y(e.instrumentation,`store.getVisibleSlice.flatten.resolveTerminalDirectory`,()=>Vd(e,t)),visibleDepth:n}:{headNodeId:t,terminalNodeId:t,visibleDepth:n}}function up(e,t){let n=X(e,t);if(!J(n))return!0;let r=n.parentId;return r===e.snapshot.rootId?!0:Bd(e,r)!==t}function dp(e,t){let n=X(e,t.terminalNodeId);if(J(n)){let r=tf(e,t.terminalNodeId);if(od(e,t.terminalNodeId,n)&&r.childIds.length>0){let n=r.childIds[0];return n==null?null:cp(e,n,0,t.visibleDepth+1)}}let r=t.terminalNodeId,i=t.visibleDepth;for(;;){let t=X(e,r);if(r===e.snapshot.rootId)return null;let n=t.parentId,a=tf(e,n),o=Yl(a).get(r)??-1;if(o<0)throw Error(`Child ${String(r)} was not found in its parent index`);let s=a.childIds[o+1]??null;if(s!=null)return cp(e,s,0,i);up(e,r)&&i--,r=n}}function fp(e){let t=e.paths.length,n=Array(t);for(let r=0;r<t;r+=1){let t=e.getParentIndex(r);n[r]={index:r,parentPath:t>=0?e.paths[t]??null:null,path:e.paths[r]??``,posInSet:e.posInSetByIndex[r]??0,setSize:e.setSizeByIndex[r]??0}}return{getParentIndex:e.getParentIndex,rows:n,get visibleIndexByPath(){return e.visibleIndexByPath}}}function pp(e,t){let n=Array(t),r=new Int32Array(t),i=new Int32Array(t),a=new Int32Array(t),o=new Int32Array(Kf);o.fill(-1);let s=0,{nodes:c,directories:l,segmentTable:u}=e.snapshot,d=[[l.get(e.snapshot.rootId),0,-1,``]],f=e.snapshot.options.flattenEmptyDirectories,p=e.pathCacheByNodeId,m=e.pathCacheVersion,h=u.valueById;for(;d.length>0&&s<t;){let t=d[d.length-1],u=t[0];if(t[1]>=u.childIds.length){d.pop();continue}let g=t[1],_=u.childIds[t[1]++],v=c[_],y=t[2]+1,b=t[3];o=qf(o,y);let x,S=_;if(J(v))S=f?Vd(e,_):_,x=S===_?`${b}${h[v.nameId]}/`:Yd(e,S);else{let e=p.get(_);x=e!=null&&e.version===m?e.path:`${b}${h[v.nameId]}`}r[s]=o[y],n[s]=x,i[s]=g,a[s]=u.childIds.length,o[y+1]=s,s+=1;let C=c[S];C!=null&&J(C)&&od(e,S,C)&&d.push([l.get(S),0,y,x])}s<t&&(n.length=s);let g=r.subarray(0,s),_=i.subarray(0,s),v=a.subarray(0,s),y=null;return{getParentIndex(e){return e<0||e>=s?-1:g[e]??-1},paths:n,posInSetByIndex:_,setSizeByIndex:v,get visibleIndexByPath(){if(y==null){y=new Map;for(let e=0;e<s;e+=1)y.set(n[e]??``,e)}return y}}}function mp(e,t){let n=Array(t),r=0,{nodes:i,directories:a,segmentTable:o}=e.snapshot,s=[[a.get(e.snapshot.rootId),0,-1]],c=o.valueById,l=e.snapshot.options.flattenEmptyDirectories,u=e.pathCacheByNodeId,d=e.pathCacheVersion;for(;s.length>0&&r<t;){let t=s[s.length-1],o=t[0];if(t[1]>=o.childIds.length){s.pop();continue}let f=o.childIds[t[1]++],p=i[f],m=t[2]+1;if(!J(p)){let t=u.get(f);n[r++]={depth:m,flattenedSegments:void 0,hasChildren:!1,id:f,isExpanded:!1,isFlattened:!1,isLoading:!1,kind:`file`,loadState:void 0,name:c[p.nameId],path:t!=null&&t.version===d?t.path:Yd(e,f)};continue}let h=l?Vd(e,f):f,g={headNodeId:f,terminalNodeId:h,visibleDepth:m};n[r++]=hp(e,g);let _=i[h];_!=null&&J(_)&&od(e,h,_)&&s.push([a.get(h),0,m])}return r<t&&(n.length=r),n}function hp(e,t){let n=X(e,t.terminalNodeId),r=J(n)?gp(e,t):null,i=Yd(e,t.terminalNodeId),a=Ru(e.snapshot.segmentTable,n.nameId),o=J(n)&&tf(e,t.terminalNodeId).childIds.length>0,s=t.headNodeId!==t.terminalNodeId,c=e.instrumentation,l=s?c==null?Hd(e,t.headNodeId).map(n=>{let r=X(e,n);return{isTerminal:n===t.terminalNodeId,name:Ru(e.snapshot.segmentTable,r.nameId),nodeId:n,path:Yd(e,n)}}):Y(c,`store.getVisibleSlice.flatten.collectSegments`,()=>Hd(e,t.headNodeId).map(n=>{let r=X(e,n);return{isTerminal:n===t.terminalNodeId,name:Ru(e.snapshot.segmentTable,r.nameId),nodeId:n,path:Yd(e,n)}})):void 0;return{depth:t.visibleDepth,flattenedSegments:l,hasChildren:o,id:t.terminalNodeId,isExpanded:J(n)&&od(e,t.terminalNodeId,n),isFlattened:s,isLoading:r===`loading`,kind:J(n)?`directory`:`file`,loadState:r==null||r===`loaded`?void 0:r,name:a,path:i}}function gp(e,t){if(t.headNodeId===t.terminalNodeId)return ld(e,t.terminalNodeId);let n=Hd(e,t.headNodeId),r=!1,i=!1;for(let t of n){let n=ld(e,t);if(n===`loading`)return`loading`;if(n===`error`){i=!0;continue}n===`unloaded`&&(r=!0)}return i?`error`:r?`unloaded`:`loaded`}function _p(e){let{directories:t,nodes:n,options:r,rootId:i,presortedDirectoryNodeIds:a}=e.snapshot,o=r.flattenEmptyDirectories===!0,s=e=>{let r=n[e];if(r==null||!J(r))return;let i=t.get(e);if(i==null)throw Error(`Unknown directory child index for node ${String(e)}`);let a=i.childIds,s=a.length,c=0,l=0;for(let e=0;e<s;e++){let t=a[e];if(t==null)continue;let r=n[t];c+=r.subtreeNodeCount,l+=r.visibleSubtreeCount}i.totalChildSubtreeNodeCount=c,i.totalChildVisibleSubtreeCount=l,s>=128&&nu(n,i),r.subtreeNodeCount=1+c;let u;if(o&&s===1){let e=n[a[0]];u=e!=null&&J(e)?l:1+l}else u=1+l;r.visibleSubtreeCount=u};if(a!=null)for(let e=a.length-1;e>=0;e--)s(a[e]);else for(let e=n.length-1;e>=1;e--)s(e);let c=n[i],l=t.get(i);if(c==null||l==null)return;let u=l.childIds,d=0,f=0;for(let e=0;e<u.length;e++){let t=u[e];if(t==null)continue;let r=n[t];d+=r.subtreeNodeCount,f+=r.visibleSubtreeCount}l.totalChildSubtreeNodeCount=d,l.totalChildVisibleSubtreeCount=f,nu(n,l),c.subtreeNodeCount=1+d,c.visibleSubtreeCount=f}function vp(e){return e.initialExpansion===`open`&&(e.initialExpandedPaths==null||e.initialExpandedPaths.length===0)}var yp=class e{#e;constructor(e={}){let t=_u(e),n=Y(t,`store.builder.create`,()=>new td(e));if(e.preparedInput!=null){let t=Qu(e.preparedInput);t==null?n.appendPreparedPaths(Zu(e.preparedInput),!1):n.appendPresortedPaths(t,$u(e.preparedInput))}else{let r=e.paths??[];e.presorted===!0?n.appendPaths(r):n.appendPreparedPaths(Y(t,`store.preparePathEntries`,()=>ed(r,e)))}let r=Y(t,`store.builder.finish`,()=>n.finish({skipSubtreeCountPass:!0})),i=Y(t,`store.state.detectAllDirectoriesExpanded`,()=>(e.initialExpansion??`closed`)===`closed`&&n.didMatchAllInitialExpandedPaths());this.#e=Y(t,`store.state.create`,()=>nd(r,i?`open`:e.initialExpansion??`closed`,t)),i&&(this.#e.collapseNewDirectoriesByDefault=!0);let a=i?this.#e.snapshot.directories.size-1:Y(t,`store.state.initializeExpandedPaths`,()=>this.initializeExpandedPaths(e.initialExpandedPaths));i||vp(e)||(e.initialExpansion??`closed`)===`closed`&&a===this.#e.snapshot.directories.size-1||(e.initialExpandedPaths?.length??0)>0&&Y(t,`store.state.checkAllDirectoriesExpanded`,()=>this.hasAllDirectoriesExpanded())?Y(t,`store.state.initializeOpenVisibleCounts`,()=>_p(this.#e)):Y(t,`store.state.recomputeCounts`,()=>Zd(this.#e,this.#e.snapshot.rootId))}static preparePaths(e,t={}){return Ju(e,t)}static prepareInput(e,t={}){return Yu(e,t)}static preparePresortedInput(e){return Xu(e)}list(e){return Y(this.#e.instrumentation,`store.list`,()=>Ud(this.#e,e))}add(e){Y(this.#e.instrumentation,`store.add`,()=>{let t=Jf(this.#e);Ad(this.#e,Od(this.#e,t,Wd(this.#e,e)))})}remove(e,t={}){Y(this.#e.instrumentation,`store.remove`,()=>{let n=Jf(this.#e);Ad(this.#e,Od(this.#e,n,Gd(this.#e,e,t)))})}move(e,t,n={}){Y(this.#e.instrumentation,`store.move`,()=>{let r=Jf(this.#e),i=Kd(this.#e,e,t,n);i!=null&&Ad(this.#e,Od(this.#e,r,i))})}batch(e){kd(this.#e,()=>{if(typeof e==`function`){e(this);return}for(let t of e)switch(t.type){case`add`:this.add(t.path);break;case`remove`:this.remove(t.path,{recursive:t.recursive});break;case`move`:this.move(t.from,t.to,{collision:t.collision});break}})}getVisibleCount(){return Y(this.#e.instrumentation,`store.getVisibleCount`,()=>Jf(this.#e))}getVisibleSlice(e,t){return Y(this.#e.instrumentation,`store.getVisibleSlice`,()=>ep(this.#e,e,t))}getVisibleRowContext(e){return Y(this.#e.instrumentation,`store.getVisibleRowContext`,()=>$f(this.#e,e))}getVisibleTreeProjection(){return np(this.#e)}getVisibleTreeProjectionData(e){return tp(this.#e,e)}getVisibleIndex(e){return Y(this.#e.instrumentation,`store.getVisibleIndex`,()=>rp(this.#e,e))}getPathInfo(e){return Y(this.#e.instrumentation,`store.getPathInfo`,()=>{let t=$d(this.#e,e);if(t==null)return null;let n=X(this.#e,t);return{depth:lu(n),kind:J(n)?`directory`:`file`,path:Yd(this.#e,t)}})}isExpanded(e){return Y(this.#e.instrumentation,`store.isExpanded`,()=>{let t=this.requireDirectoryNodeId(e),n=X(this.#e,t);return od(this.#e,t,n)})}expand(e){Y(this.#e.instrumentation,`store.expand`,()=>{let t=Jf(this.#e),n=ip(this.#e,e);n!=null&&Ad(this.#e,Od(this.#e,t,n))})}collapse(e){Y(this.#e.instrumentation,`store.collapse`,()=>{let t=Jf(this.#e),n=ap(this.#e,e);n!=null&&Ad(this.#e,Od(this.#e,t,n))})}on(e,t){return gd(this.#e,e,t)}getDirectoryLoadState(e){let t=this.requireDirectoryNodeId(e);return ld(this.#e,t)}markDirectoryUnloaded(e){Y(this.#e.instrumentation,`store.markDirectoryUnloaded`,()=>{let t=this.requireDirectoryNodeId(e);if(tf(this.#e,t).childIds.length>0)throw Error(`Cannot mark a directory with known children as unloaded: "${e}"`);let n=Jf(this.#e);dd(this.#e,t),Ad(this.#e,Od(this.#e,n,Sd({affectedAncestorIds:Qd(this.#e,t),affectedNodeIds:[t],path:e,projectionChanged:this.isDirectoryProjectionVisible(t)})))})}beginChildLoad(e){return Y(this.#e.instrumentation,`store.beginChildLoad`,()=>{let t=this.requireDirectoryNodeId(e),n=Jf(this.#e),r=ud(this.#e,t);return Ad(this.#e,Od(this.#e,n,Cd({affectedAncestorIds:Qd(this.#e,t),affectedNodeIds:[t],attemptId:r.attemptId,path:e,projectionChanged:this.isDirectoryProjectionVisible(t),reused:r.reused}))),r})}applyChildPatch(e,t){return Y(this.#e.instrumentation,`store.applyChildPatch`,()=>{let n=this.resolveActiveDirectoryNodeId(e.nodeId);if(n==null||ld(this.#e,n)!==`loading`||!pd(this.#e,n,e.attemptId))return!1;let r=Yd(this.#e,n);this.validateChildPatch(r,t);let i=Jf(this.#e),a=[];for(let e of t.operations){bp(r,e);let t=Jf(this.#e);switch(e.type){case`add`:a.push(Od(this.#e,t,Wd(this.#e,e.path)));break;case`remove`:a.push(Od(this.#e,t,Gd(this.#e,e.path,{recursive:e.recursive})));break;case`move`:{let n=Kd(this.#e,e.from,e.to,{collision:e.collision});n!=null&&a.push(Od(this.#e,t,n));break}}}let o=a.some(e=>e.projectionChanged)||this.isDirectoryProjectionVisible(n);return Ad(this.#e,Od(this.#e,i,wd({affectedAncestorIds:Qd(this.#e,n),affectedNodeIds:[n],attemptId:e.attemptId,childEvents:a,path:Yd(this.#e,n),projectionChanged:o}))),!0})}completeChildLoad(e){return Y(this.#e.instrumentation,`store.completeChildLoad`,()=>{let t=this.resolveActiveDirectoryNodeId(e.nodeId);if(t==null)return!1;let n=Jf(this.#e),r=fd(this.#e,t,e.attemptId);return Ad(this.#e,Od(this.#e,n,Td({affectedAncestorIds:Qd(this.#e,t),affectedNodeIds:[t],attemptId:e.attemptId,path:Yd(this.#e,t),projectionChanged:this.isDirectoryProjectionVisible(t),stale:!r}))),r})}failChildLoad(e,t){return Y(this.#e.instrumentation,`store.failChildLoad`,()=>{let n=this.resolveActiveDirectoryNodeId(e.nodeId);if(n==null)return!1;let r=Jf(this.#e),i=md(this.#e,n,e.attemptId,t);return Ad(this.#e,Od(this.#e,r,Ed({affectedAncestorIds:Qd(this.#e,n),affectedNodeIds:[n],attemptId:e.attemptId,errorMessage:t,path:Yd(this.#e,n),projectionChanged:this.isDirectoryProjectionVisible(n),stale:!i}))),i})}cleanup(e={}){return Y(this.#e.instrumentation,`store.cleanup`,()=>{if(this.#e.transactionStack.length>0)throw Error(`Cleanup cannot run during an open batch or transaction.`);if(Wf(this.#e))throw Error(`Cleanup cannot run while directory loads are active.`);let t=Jf(this.#e),n=Gf(this.#e,e.mode??`stable`);return Ad(this.#e,Od(this.#e,t,Dd({...n,affectedAncestorIds:[],affectedNodeIds:[],projectionChanged:n.idsPreserved===!1}))),n})}getNodeCount(){return this.#e.activeNodeCount}initializeExpandedPaths(e){if(e==null||e.length===0)return 0;let t=0,n=[],r=[],i=0,a=null,o=this.#e.snapshot.segmentTable,s=o.valueById,c=this.#e.snapshot.nodes,l=new Map;for(let u of e){a!=null&&u<a&&(a=null,i=0,n.length=0,r.length=0);let e=u.length>0&&u.charCodeAt(u.length-1)===47?u.length-1:u.length;if(e===0){a=u,i=e,n.length=0,r.length=0;continue}let d=0,f=0;if(a!=null){let t=Math.min(e,i),n=!0;for(let e=0;e<t;e+=1){let t=u.charCodeAt(e);if(t!==a.charCodeAt(e)){n=!1;break}t===47&&(d+=1,f=e+1)}n&&(t===i&&e>t&&u.charCodeAt(t)===47?(d+=1,f=t+1):t===e&&i>t&&a.charCodeAt(t)===47&&(d+=1,f=e+1)),d=Math.min(d,r.length)}let p=d===0?this.#e.snapshot.rootId:r[d-1]??this.#e.snapshot.rootId,m=d,h=!0,g=f;for(;g<=e;){let t=u.indexOf(`/`,g),i=t===-1||t>e?e:t,a=u.slice(g,i),f=tf(this.#e,p).childIds,_=m===d?n[m]??0:0,v=_,y,b=l.get(a)??xu(a);l.set(a,b);let x=(e,t)=>{for(v=e;v<t;v+=1){let e=f[v],t=c[e],n=s[t.nameId];if(n===a)return y=e,!0;let r=Cu(Au(o,t.nameId),b);if(r>0||r===0&&n>a)return!1}return!1};if(!x(_,f.length)&&_>0&&x(0,_),y===void 0){h=!1;break}if(!J(X(this.#e,y))){h=!1;break}if(n[m]=v,r[m]=y,p=y,m+=1,i===e)break;g=i+1}if(a=u,i=e,n.length=m,r.length=m,!h){a=null,i=0,n.length=0,r.length=0;continue}for(let e=d;e<m;e+=1){let n=r[e];if(n==null)continue;let i=X(this.#e,n);od(this.#e,n,i)||(sd(this.#e,n,!0,i),t+=1)}}return t}hasAllDirectoriesExpanded(){for(let e of this.#e.snapshot.directories.keys()){if(e===this.#e.snapshot.rootId)continue;let t=X(this.#e,e);if(!od(this.#e,e,t))return!1}return!0}requireDirectoryNodeId(e){let t=$d(this.#e,e);if(t==null)throw Error(`Path does not exist: "${e}"`);if(!J(X(this.#e,t)))throw Error(`Path is not a directory: "${e}"`);return t}resolveActiveDirectoryNodeId(e){try{if(!J(X(this.#e,e)))throw Error(`Node is not a directory: ${String(e)}`);return e}catch{return null}}isDirectoryProjectionVisible(e){let t=e;for(;t!==this.#e.snapshot.rootId;){let e=X(this.#e,t).parentId;if(e!==this.#e.snapshot.rootId){let n=X(this.#e,e),r=Bd(this.#e,e);if(!od(this.#e,e,n)&&r!==t)return!1}t=e}return!0}validateChildPatch(t,n){new e({paths:this.list(t),presorted:!0,sort:this.#e.snapshot.options.sort}).batch(n.operations)}};function bp(e,t){switch(t.type){case`add`:case`remove`:if(!t.path.startsWith(e)||t.path===e)throw Error(`Child patch operation must stay within ${e}: "${t.path}"`);break;case`move`:if(!t.from.startsWith(e)||!t.to.startsWith(e)||t.from===e||t.to===e)throw Error(`Child patch move must stay within ${e}: "${t.from}" -> "${t.to}"`);break}}var xp=e=>e.startsWith(`f::`)?e.slice(3):e;function Sp(e){let t=e.lastIndexOf(`/`);return t<0?{parentPath:``,baseName:e}:{parentPath:e.slice(0,t),baseName:e.slice(t+1)}}function Cp(e,t){return e===``?t:`${e}/${t}`}function wp({files:e,path:t,isFolder:n,nextBasename:r}){let i=xp(t),a=r.trim();if(a.length===0)return{error:`Name cannot be empty.`};if(a.includes(`/`))return{error:`Name cannot include "/".`};let{parentPath:o,baseName:s}=Sp(i);if(a===s)return{nextFiles:e,sourcePath:i,destinationPath:i,isFolder:n};let c=Cp(o,a),l=Array(e.length),u=new Set;if(!n){let t=`${c}/`,r=!1;for(let n=0;n<e.length;n++){let a=e[n];if(a!==i&&a.startsWith(t))return{error:`"${c}" already exists.`};let o=a===i?c:a;if(u.has(o))return{error:`"${c}" already exists.`};u.add(o),l[n]=o,a===i&&(r=!0)}return r?{nextFiles:l,sourcePath:i,destinationPath:c,isFolder:n}:{error:`Could not find the selected file to rename.`}}let d=`${i}/`,f=`${c}/`,p=0;for(let t=0;t<e.length;t++){let n=e[t],r=n===i||n.startsWith(d);if(!r&&(n===c||n.startsWith(f)))return{error:`"${c}" already exists.`};let a=r?`${c}${n.slice(i.length)}`:n;if(u.has(a))return{error:`"${c}" already exists.`};u.add(a),l[t]=a,r&&p++}return p===0?{error:`Could not find the selected folder to rename.`}:{nextFiles:l,sourcePath:i,destinationPath:c,isFolder:n}}function Tp(e){return e.endsWith(`/`)}function Ep(e){let t=e.endsWith(`/`)?e.slice(0,-1):e,n=t.lastIndexOf(`/`),r=n<0?t:t.slice(n+1);return e.endsWith(`/`)?`${r}/`:r}function Dp(e){let t=[],n=new Set;for(let r of e)n.has(r)||(n.add(r),t.push(r));let r=new Set;for(let e of t.toSorted((e,t)=>e.length===t.length?e.localeCompare(t):e.length-t.length)){let t=(e.endsWith(`/`)?e.slice(0,-1):e).split(`/`),n=!1;for(let e=0;e<t.length-1;e+=1){let i=`${t.slice(0,e+1).join(`/`)}/`;if(r.has(i)){n=!0;break}}n||r.add(e)}return t.filter(e=>r.has(e))}function Op(e,t){return t.includes(e)?Dp(t):[e]}function kp(e,t){return e===t?!0:e==null||t==null?!1:e.kind===t.kind&&e.directoryPath===t.directoryPath&&e.flattenedSegmentPath===t.flattenedSegmentPath&&e.hoveredPath===t.hoveredPath}function Ap(e,t){return{draggedPaths:e,target:t}}function jp(e,t){if(t.kind!==`directory`||t.directoryPath==null)return!1;for(let n of e)if(Tp(n)&&(t.directoryPath===n||t.directoryPath.startsWith(n)))return!0;return!1}function Mp(e,t){return t.kind===`root`||t.directoryPath==null?Ep(e):t.directoryPath}function Np(e,t){let n=e.map(e=>{let n=Mp(e,t);return n===e?null:{from:e,to:n,type:`move`}}).filter(e=>e!=null);return n.length===0?null:{operations:n,result:{draggedPaths:e,operation:n.length===1?`move`:`batch`,target:t}}}var Pp=Symbol(`FILE_TREE_RENAME_VIEW`);function Fp(e){return e.operation===`add`||e.operation===`remove`||e.operation===`move`||e.operation===`batch`}var Ip=512,Lp=512;function Rp(e,t){if(e.size!==t.length)return!1;for(let n of t)if(!e.has(n))return!1;return!0}function zp(e){let t=e.endsWith(`/`)?e.slice(0,-1):e;if(t.length===0)return[];let n=t.split(`/`);return n.slice(0,-1).map((e,t)=>`${n.slice(0,t+1).join(`/`)}/`)}function Bp(e){return zp(e).at(-1)??null}function Vp(e,t){return t==null?e:e.startsWith(t)?e.slice(t.length):e}var Hp=e=>{let t=e.trim();return t.length===0?``:(t.includes(`\\`)?t.replaceAll(`\\`,`/`):t).toLowerCase()},Up=e=>e.toLowerCase();function Wp(e){return e.endsWith(`/`)}function Gp(e){let t=e.endsWith(`/`)?e.slice(0,-1):e,n=t.lastIndexOf(`/`);return n<0?t:t.slice(n+1)}function Kp(e){return e.endsWith(`/`)?e.slice(0,-1):e}function qp(e,t){return t&&!e.endsWith(`/`)?`${e}/`:e}function Jp(e,t,n){if(e===t)return n;let r=t.endsWith(`/`)?t:`${t}/`;return e.startsWith(r)?`${n.endsWith(`/`)?n:`${n}/`}${e.slice(r.length)}`:e}function Yp(e,t){if(e===t)return!0;let n=t.endsWith(`/`)?t:`${t}/`;return e.startsWith(n)}function Xp(e,t,n=!1){if(e==null)return null;switch(t.operation){case`add`:case`expand`:case`collapse`:case`mark-directory-unloaded`:case`begin-child-load`:case`apply-child-patch`:case`complete-child-load`:case`fail-child-load`:case`cleanup`:return e;case`remove`:return Yp(e,t.path)?n?e:null:e;case`move`:return Jp(e,t.from,t.to);case`batch`:{let r=e;for(let e of t.events)if(r=Xp(r,e,n),r==null)return null;return r}}}function Zp(e){return{canonicalChanged:e.canonicalChanged,projectionChanged:e.projectionChanged,visibleCountDelta:e.visibleCountDelta}}function Qp(e,t){if(e===t)return!0;if(e.length!==t.length)return!1;for(let n=0;n<e.length;n+=1)if(e[n]!==t[n])return!1;return!0}function $p(e,t,n){let{paths:r,preparedInput:i}=e;if(i==null){if(r==null)throw Error(`FileTree requires paths or preparedInput`);return{paths:r,preparedInput:void 0}}let a=i.paths;if(r==null)return{paths:a,preparedInput:i};if(!Qp(yp.preparePaths(r,n==null?{}:{sort:n}),a))throw Error(`FileTree ${t} received paths and preparedInput for different path lists`);return{paths:a,preparedInput:i}}function em(e){switch(e.operation){case`add`:return{...Zp(e),operation:`add`,path:e.path};case`remove`:return{...Zp(e),operation:`remove`,path:e.path,recursive:e.recursive};case`move`:return{...Zp(e),from:e.from,operation:`move`,to:e.to}}}function tm(e){return{...Zp(e),events:e.events.filter(e=>e.operation===`add`||e.operation===`remove`||e.operation===`move`).map(e=>em(e)),operation:`batch`}}function nm(e){switch(e.operation){case`add`:case`remove`:case`move`:return em(e);case`batch`:return tm(e);default:return null}}function rm(e,t,n){if(e===0)return-1;if(n!=null){let e=t(n);if(e!=null)return e;let r=zp(n);for(let e=r.length-1;e>=0;--e){let n=r[e];if(n==null)continue;let i=t(n);if(i!=null)return i}}return 0}function im(e,t,n){if(e.paths.length===0)return{focusedIndex:-1,getParentIndex:e.getParentIndex,paths:e.paths,posInSetByIndex:e.posInSetByIndex,setSizeByIndex:e.setSizeByIndex};if(t==null)return{focusedIndex:0,getParentIndex:e.getParentIndex,paths:e.paths,posInSetByIndex:e.posInSetByIndex,setSizeByIndex:e.setSizeByIndex};let r=n??(t=>e.visibleIndexByPath.get(t)??null);return{focusedIndex:rm(e.paths.length,r,t),getParentIndex:e.getParentIndex,paths:e.paths,posInSetByIndex:e.posInSetByIndex,setSizeByIndex:e.setSizeByIndex}}var am=class{#e;#t=new Set;#n=new Map;#r=null;#i=null;#a=new Map;#o=new Map;#s=-1;#c=null;#l=!1;#u=e=>-1;#d=new Map;#f=null;#p=null;#m=null;#h=null;#g=null;#_;#v;#y;#b=[];#x=new Int32Array;#S=new Int32Array;#C=void 0;#w=!1;#T=null;#E=``;#D=!1;#O=new Set;#k=[];#A;#j=null;#M=null;#N=null;#P=null;#F=null;#I=null;#L=null;#R=new Set;#z=0;#B;#V=0;#H=!1;#U=0;#W;constructor(e){let{dragAndDrop:t,fileTreeSearchMode:n,initialSearchQuery:r,initialSelectedPaths:i,renaming:a,onSearchChange:o,paths:s,preparedInput:c,...l}=e,u=$p({paths:s,preparedInput:c},`constructor`,l.sort);this.#e=l,t!=null&&t!==!1&&(this.#r=t===!0?{}:t),this.#w=a!=null&&a!==!1,a!=null&&a!==!1&&a!==!0&&(this.#C=a.canRename,this.#v=a.onError,this.#_=a.onRename),this.#y=o,this.#A=n??`hide-non-matches`,this.#B=this.#se(u.paths,u.preparedInput);let d=i?.map(e=>this.#Ae(e)).filter(e=>e!=null)??[],f=d.at(-1)??null;d.length>0&&(this.#R=new Set(d),this.#L=f,this.#z=1),this.#Oe(f,!1),r!=null&&this.#Se(r,!1),this.#W=this.#Fe()}destroy(){this.#W?.(),this.#W=null,this.#n.clear(),this.#t.clear(),this.#d.clear(),this.#i=null,this.#pe()}focusFirstItem(){this.#ve().length>0&&this.#Me(0)}focusLastItem(){this.#U<=0||(this.#Ne(),this.#Me(this.#U-1))}focusNextItem(){this.#De(1)}focusParentItem(){if(this.#c==null)return;let e=Bp(this.#c);if(e==null)return;let t=this.#Y(e);t>=0&&this.#Me(t)}focusPath(e){let t=this.#B.getPathInfo(e)?.path??null;if(t==null)return;this.#Ne();let n=this.#Y(t);n>=0&&this.#Me(n)}focusNearestPath(e){let t=this.resolveNearestVisiblePath(e);if(t==null)return null;let n=this.#Y(t);return n>=0?(this.#Me(n),this.#ve()[n]??t):null}focusPreviousItem(){this.#De(-1)}getFocusedIndex(){return this.#s}getFocusedItem(){return this.#c==null?null:this.#X(this.#c)}getFocusedPath(){return this.#c}resolveNearestVisiblePath(e){let t=this.#ve();if(this.#U===0)return null;if(e==null)return this.#c??t[0]??null;let n=this.#B.getPathInfo(e)?.path??e,r=this.#Y(n);return r>=0?t[r]??n:this.#J(n)??this.#c??t[0]??null}getSelectedPaths(){return[...this.#R]}getSelectionVersion(){return this.#z}getVisibleCount(){return this.#U}getVisibleRows(e,t){if(t<e||this.#U===0)return[];let n=Math.max(0,e),r=Math.min(this.#U-1,t);if(r<n)return[];let i=r-n+1;if(this.#F==null&&!this.#l&&r>=this.#b.length&&i<=Lp){let e=[];for(let t=n;t<=r;t+=1){let n=this.#B.getVisibleRowContext(t);if(n==null)break;e.push(this.#Q(n))}return e}if(!this.#l&&r>=this.#b.length&&this.#Ne(),this.#F!=null){let e=Array.from({length:r-n+1},(e,t)=>this.#ye(n+t)),t=new Map,i=e[0]??-1,a=i;for(let n=1;n<=e.length;n+=1){let r=e[n];if(r!=null&&r===a+1){a=r;continue}if(i>=0&&this.#B.getVisibleSlice(i,a).forEach((e,n)=>{t.set(i+n,e)}),r==null){i=-1,a=-1;continue}i=r,a=r}return Array.from({length:r-n+1},(e,r)=>{let i=n+r,a=this.#ye(i),o=t.get(a),s=this.#b[a];if(o==null||s==null)throw Error(`Missing projection row for filtered visible index ${String(i)}`);return this.#Z(o,i,a,{ancestorPaths:this.#te(a),path:s})})}return this.#B.getVisibleSlice(n,r).map((e,t)=>{let r=n+t,i=this.#b[r];if(i==null)throw Error(`Missing projection path for visible index ${String(r)}`);return this.#Z(e,r,r,{ancestorPaths:this.#te(r),path:i})})}getStickyRowCandidates(e,t){if(this.#F!=null)return null;if(this.#U===0||e<=0||t<=0)return[];let n=[];for(let r=0;r<this.#U;r+=1){let i=e+r*t,a=Math.min(this.#U-1,Math.floor(i/t)),o=this.#$(a,r)??(a>0?this.#$(a-1,r):void 0);if(o==null)break;n.push({row:this.#Q(o),subtreeEndIndex:o.subtreeEndIndex})}return n}getItem(e){let t=this.#B.getPathInfo(e);return t==null?null:this.#X(t.path,t)}selectAllVisiblePaths(){this.#Ne();let e=[...this.#ve()];this.#re(e,this.#c??this.#L)}selectOnlyPath(e){let t=this.#Ae(e);t!=null&&this.#re([t],t)}selectPath(e){let t=this.#Ae(e);t==null||this.#R.has(t)||this.#re([...this.#R,t])}deselectPath(e){let t=this.#Ae(e);t==null||!this.#R.has(t)||this.#re([...this.#R].filter(e=>e!==t))}toggleFocusedSelection(){this.#c!=null&&this.togglePathSelectionFromInput(this.#c)}togglePathSelection(e){let t=this.#Ae(e);if(t!=null){if(this.#R.has(t)){this.deselectPath(t);return}this.selectPath(t)}}togglePathSelectionFromInput(e){let t=this.#Ae(e);if(t!=null){if(this.#R.has(t)){this.#re([...this.#R].filter(e=>e!==t),t);return}this.#re([...this.#R,t],t)}}selectPathRange(e,t){let n=this.#Ae(e);if(n==null)return;this.#Ne();let r=this.#L,i=r==null?-1:this.#be(r),a=this.#be(n);if(i===-1||a===-1){let e=t?[...this.#R,n]:[n];this.#re(e,n);return}let[o,s]=i<=a?[i,a]:[a,i],c=this.#ve().slice(o,s+1),l=t?[...this.#R,...c]:c;this.#re(l,r)}extendSelectionFromFocused(e){if(this.#c==null)return;let t=this.#s;if(t===-1)return;let n=Math.min(this.#U-1,Math.max(0,t+e));if(n===t)return;!this.#l&&n>=this.#b.length&&this.#Ne();let r=this.#ve(),i=r[t]??null,a=r[n]??null;if(i==null||a==null)return;let o=new Set(this.#R);o.has(i)&&o.has(a)?o.delete(i):o.add(a),this.#re([...o],this.#L??i,!1),this.#Me(n)}getDragAndDropConfig(){return this.#r}isDragAndDropEnabled(){return this.#r!=null}getDragSession(){return this.#i==null?null:{draggedPaths:[...this.#i.draggedPaths],primaryPath:this.#i.primaryPath,target:this.#i.target==null?null:{...this.#i.target}}}startDrag(e){if(this.#r==null)return!1;let t=this.#Ae(e);if(t==null||this.#M!=null&&this.#M.length>0)return!1;let n=this.getSelectedPaths(),r=Op(t,n);return this.#r.canDrag?.(r)===!1?!1:(n.includes(t)||this.#re([t],t,!1),this.#je(t),this.#i={draggedPaths:r,primaryPath:t,target:null},this.#we(),!0)}setDragTarget(e){let t=this.#i;if(t==null)return;let n=e;if(n!=null){let e=Ap(t.draggedPaths,n);(jp(t.draggedPaths,n)||this.#r?.canDrop?.(e)===!1)&&(n=null)}kp(t.target,n)||(this.#i={...t,target:n},this.#we())}cancelDrag(){this.#i!=null&&(this.#i=null,this.#we())}completeDrag(){let e=this.#i;if(e==null)return!1;this.#i=null;let t=e.target==null?null:{...e.target};if(t==null)return this.#we(),!1;let n=Ap(e.draggedPaths,t);if(jp(e.draggedPaths,t)||this.#r?.canDrop?.(n)===!1)return this.#we(),!1;let r=Np(e.draggedPaths,t);if(r==null)return this.#we(),!1;try{if(r.operations.length===1){let e=r.operations[0];if(e==null||e.type!==`move`)throw Error(`Expected a single move operation for one-item drops`);this.#B.move(e.from,e.to,{collision:e.collision})}else this.#oe(r.operations),this.#B.batch(r.operations)}catch(e){return this.#we(),this.#r?.onDropError?.(e instanceof Error?e.message:String(e),n),!1}return this.#r?.onDropComplete?.(r.result),!0}subscribe(e){return this.#t.add(e),e(),()=>{this.#t.delete(e)}}add(e){this.#B.add(e)}remove(e,t={}){this.#B.remove(e,t)}move(e,t,n={}){this.#B.move(e,t,n)}batch(e){this.#B.batch(e)}onMutation(e,t){let n=e,r=t,i=this.#n.get(n);return i??(i=new Set,this.#n.set(n,i)),i.add(r),()=>{let e=this.#n.get(n);e?.delete(r),e?.size===0&&this.#n.delete(n)}}setSearch(e){this.#Se(e,!0)}openSearch(e=``){this.#Se(e,!0)}closeSearch(){this.#Se(null,!0)}isSearchOpen(){return this.#M!==null}getSearchValue(){return this.#M??``}getSearchMatchingPaths(){return this.#k}focusNextSearchMatch(){this.#xe(1)}focusPreviousSearchMatch(){this.#xe(-1)}startRenaming(e=this.#c??``,t={}){if(!this.#w)return!1;let n=this.#B.getPathInfo(e);if(n==null)return!1;let r=n.path,i=Wp(r),a=Kp(r);if(this.#C?.({isFolder:i,path:a})===!1)return!1;for(let e of zp(r))this.#B.isExpanded(e)||this.#B.expand(e);return this.#re([r],r,!1),this.#M!=null&&(this.#Se(null,!1),this.#y?.(this.#M)),this.#je(r),this.#T=r,this.#E=Gp(r),this.#D=t.removeIfCanceled??!1,this.#we(),!0}[Pp](){return{cancel:()=>{this.#G()},commit:()=>{this.#K()},getPath:()=>this.#T,getValue:()=>this.#E,isActive:()=>this.#T!=null,setValue:e=>{this.#q(e)}}}#G(){if(this.#T==null)return;let e=this.#T,t=this.#D;if(this.#T=null,this.#E=``,this.#D=!1,t){this.remove(e,Wp(e)?{recursive:!0}:void 0);return}this.#je(e),this.#we()}#K(){let e=this.#T;if(e==null)return;if(this.#D&&this.#E.trim().length===0){this.#T=null,this.#E=``,this.#D=!1,this.remove(e,Wp(e)?{recursive:!0}:void 0);return}let t=Wp(e),n=wp({files:this.#B.list(),isFolder:t,nextBasename:this.#E,path:Kp(e)});if(this.#T=null,this.#E=``,this.#D=!1,`error`in n){this.#je(e),this.#v?.(n.error),this.#we();return}if(n.sourcePath===n.destinationPath){this.#je(e),this.#we();return}this.#_?.({destinationPath:n.destinationPath,isFolder:n.isFolder,sourcePath:n.sourcePath}),this.move(qp(n.sourcePath,t),qp(n.destinationPath,t))}#q(e){this.#T==null||this.#E===e||(this.#E=e,this.#we())}resetPaths(e,t={}){let n=this.#B.list().length,r=this.#U,i=$p({paths:e,preparedInput:t.preparedInput},`resetPaths`,this.#e.sort),a=this.#se(i.paths,i.preparedInput,t.initialExpandedPaths),o=this.#c,s=this.#T,c=this.getSelectedPaths(),l=this.#L;this.#W?.(),this.#B=a,this.#d.clear(),this.#pe();let u=c.map(e=>a.getPathInfo(e)?.path??null).filter(e=>e!=null),d=!Rp(this.#R,u);this.#R=new Set(u),d&&(this.#z+=1),this.#L=l==null?null:a.getPathInfo(l)?.path??null,this.#T=s==null?null:a.getPathInfo(s)?.path??null,this.#T??(this.#E=``,this.#D=!1),this.#Oe(o,o!=null||u.length>0||this.#L!=null),this.#W=this.#Fe(),this.#we(),this.#Te({canonicalChanged:!0,operation:`reset`,pathCountAfter:i.paths.length,pathCountBefore:n,projectionChanged:!0,usedPreparedInput:t.preparedInput!=null,visibleCountDelta:this.#U-r})}#J(e){this.#Ne();let t=Bp(e),n=Vp(e,t),r=null,i=null;for(let e of this.#ve()){if(Bp(e)!==t)continue;let a=Vp(e,t);if(a<n){r=e;continue}if(a>n){i=e;break}}return r??i}#Y(e){let t=this.#be(e);if(t!==-1)return t;let n=zp(e);for(let e=n.length-1;e>=0;--e){let t=n[e];if(t==null)continue;let r=this.#be(t);if(r!==-1)return r}return this.#ve().length>0?0:-1}#X(e,t){let n=this.#d.get(e);if(n!=null)return n;let r=t??this.#B.getPathInfo(e);if(r==null)return null;let i=r.kind===`directory`?this.#ie(r.path):this.#ae(r.path);return this.#d.set(r.path,i),i}#Z(e,t,n,r){return{ancestorPaths:r.ancestorPaths,depth:e.depth,flattenedSegments:e.flattenedSegments?.map(e=>({isTerminal:e.isTerminal,name:e.name,path:e.path})),hasChildren:e.hasChildren,index:t,isExpanded:e.isExpanded,isFlattened:e.isFlattened,isFocused:r.path===this.#c,isSelected:this.#R.has(r.path),kind:e.kind,level:e.depth,name:e.name,path:r.path,posInSet:r.posInSet??this.#x[n]??0,setSize:r.setSize??this.#S[n]??0}}#Q(e){return this.#Z(e.row,e.index,e.index,{ancestorPaths:e.ancestorPaths,path:e.row.path,posInSet:e.posInSet,setSize:e.setSize})}#$(e,t){let n=this.#B.getVisibleRowContext(e);return n==null?void 0:n.ancestorRows[t]??(t===n.ancestorRows.length&&n.row.kind===`directory`&&n.row.isExpanded?n:void 0)}#ee(e){let t=this.#a.get(e);if(t!=null)return t;let n=this.#u(e),r=n<0?[]:[...this.#ee(n),n];return this.#a.set(e,r),r}#te(e){let t=this.#o.get(e);if(t!=null)return t;let n=this.#ee(e).map(e=>this.#b[e]??``).filter(e=>e!==``);return this.#o.set(e,n),n}#ne(e){this.#B.collapse(e)}#re(e,t=this.#L,n=!0){let r=[...new Set(e)],i=!Rp(this.#R,r),a=this.#L!==t;!i&&!a||(this.#R=new Set(r),this.#L=t,i&&(this.#z+=1),n&&this.#we())}#ie(e){return{collapse:()=>{this.#ne(e)},deselect:()=>{this.deselectPath(e)},expand:()=>{this.#Ee(e)},focus:()=>{this.focusPath(e)},getPath:()=>e,isDirectory:()=>!0,isExpanded:()=>this.#B.isExpanded(e),isFocused:()=>this.#c===e,isSelected:()=>this.#R.has(e),select:()=>{this.selectPath(e)},toggleSelect:()=>{this.togglePathSelection(e)},toggle:()=>{this.#Ie(e)}}}#ae(e){return{deselect:()=>{this.deselectPath(e)},focus:()=>{this.focusPath(e)},getPath:()=>e,isDirectory:()=>!1,isFocused:()=>this.#c===e,isSelected:()=>this.#R.has(e),select:()=>{this.selectPath(e)},toggleSelect:()=>{this.togglePathSelection(e)}}}#oe(e){let t=this.#B.list();this.#se(t).batch(e)}#se(e,t,n){return new yp({...this.#e,paths:e,preparedInput:t??void 0,...n===void 0?{}:{initialExpandedPaths:n}})}#ce(){return this.#h??=this.#B.list(),this.#h}#le(){if(this.#m!=null)return this.#m;let e=new Set;for(let t of this.#ce()){e.add(t);for(let n of zp(t))e.add(n)}return this.#m=[...e].sort(),this.#m}#ue(){return this.#g??=this.#ce().map(Up),this.#g}#de(){return this.#f??=this.#le().filter(e=>e.endsWith(`/`)),this.#f}#fe(){return this.#p??=this.#de().map(Up),this.#p}#pe(){this.#f=null,this.#p=null,this.#m=null,this.#h=null,this.#g=null}#me(){return this.#de().filter(e=>this.#B.isExpanded(e))}#he(e){let t=new Set(this.#j??[]);if(e)for(let e of this.#R)for(let n of zp(e))t.add(n);this.#ge(t)}#ge(e){this.#H=!0;try{for(let t of this.#de()){let n=e.has(t),r=this.#B.isExpanded(t);n&&!r?this.#B.expand(t):!n&&r&&this.#B.collapse(t)}}finally{this.#H=!1}}#_e(){let e=this.#b;if(this.#k=e.filter(e=>this.#O.has(e)),this.#M==null||this.#M.length===0||this.#A!==`hide-non-matches`||this.#O.size===0){this.#F=null,this.#I=null,this.#P=null,this.#U=this.#V;return}let t=[],n=[],r=new Map;for(let[i,a]of e.entries())this.#N?.has(a)===!0&&(r.set(a,n.length),t.push(i),n.push(a));this.#F=t,this.#I=n,this.#P=r,this.#U=n.length}#ve(){return this.#I??this.#b}#ye(e){return this.#F?.[e]??e}#be(e){return this.#P?.get(e)??this.#B.getVisibleIndex(e)??-1}#xe(e){let t=this.#k;if(t.length===0)return;let n=this.#c,r=n==null?-1:t.indexOf(n),i=t[r<0?e>0?0:t.length-1:Math.min(t.length-1,Math.max(0,r+e))];i!=null&&this.focusPath(i)}#Se(e,t){let n=e==null?null:Hp(e),r=this.#M;if(r!==n){if(r==null&&n!=null&&(this.#j=this.#me()),this.#M=n,n==null)this.#he(!0),this.#j=null,this.#O.clear(),this.#N=null,this.#Oe(this.#c,!0);else if(n.length===0)this.#he(!1),this.#O.clear(),this.#N=null,this.#Oe(this.#c,!0);else{let e=this.#Ce();this.#Oe(e,!0)}t&&(this.#y?.(this.#M),this.#we())}}#Ce(){if(this.#M==null||this.#M.length===0)return this.#O.clear(),this.#c;let e=this.#M,t=this.#ce(),n=this.#ue(),r=[],i=new Set,a=null;for(let o=0;o<t.length;o+=1){if(!n[o].includes(e))continue;let s=t[o];r.push(s),i.add(s),a??=s}let o=this.#de(),s=this.#fe();for(let t=0;t<o.length;t+=1){if(!s[t].includes(e))continue;let n=o[t];i.has(n)||(r.push(n),i.add(n),a??=n)}this.#O=i;let c=this.#A===`hide-non-matches`&&r.length>0?new Set:null;this.#N=c;let l=this.#A===`expand-matches`?new Set(this.#j??[]):new Set;for(let e of r){c?.add(e),e.endsWith(`/`)&&l.add(e);for(let t of zp(e))l.add(t),c?.add(t)}return this.#ge(l),a??this.#c}#we(){for(let e of this.#t)e()}#Te(e){this.#n.get(e.operation)?.forEach(t=>{t(e)}),this.#n.get(`*`)?.forEach(t=>{t(e)})}#Ee(e){for(let t of zp(e))this.#B.isExpanded(t)||this.#B.expand(t);this.#B.isExpanded(e)||this.#B.expand(e)}#De(e){let t=this.#U;if(t===0)return;let n=this.#s===-1?0:this.#s,r=Math.min(t-1,Math.max(0,n+e));(r!==n||this.#s===-1)&&(!this.#l&&this.#F==null&&r>=this.#b.length&&this.#Ne(),this.#Me(r))}#Oe(e,t=!0){let n=this.#B.getVisibleCount();this.#V=n;let r=im(this.#B.getVisibleTreeProjectionData(t?void 0:Math.min(n,Ip)),e,t?e=>this.#B.getVisibleIndex(e):void 0);this.#a.clear(),this.#o.clear(),this.#l=r.paths.length>=n,this.#u=r.getParentIndex,this.#b=r.paths,this.#x=r.posInSetByIndex,this.#S=r.setSizeByIndex,this.#_e(),this.#s=e==null?this.#ve().length>0?0:-1:this.#Y(e),this.#c=this.#s<0?null:this.#ke(this.#s)}#ke(e){return this.#ve()[e]??(this.#F==null?this.#B.getVisibleRowContext(e)?.row.path??null:null)}#Ae(e){return this.#B.getPathInfo(e)?.path??null}#je(e){if(e==null)return;let t=this.#Y(e);t>=0&&this.#Me(t,!1)}#Me(e,t=!0){let n=this.#ke(e);n!=null&&(this.#s===e&&this.#c===n||(this.#s=e,this.#c=n,t&&this.#we()))}#Ne(){this.#l||this.#Oe(this.#c,!0)}#Pe(e){let t=Xp(this.#T,e);t==null&&this.#T!=null&&(this.#E=``),this.#T=t;let n=Xp(this.#c,e,!0),r=[...this.#R].map(t=>Xp(t,e)).filter(e=>e!=null).map(e=>this.#B.getPathInfo(e)?.path??null).filter(e=>e!=null),i=Xp(this.#L,e),a=i==null?null:this.#B.getPathInfo(i)?.path??null,o=[...new Set(r)];return Rp(this.#R,o)||(this.#R=new Set(o),this.#z+=1),this.#L=a,n}#Fe(){return this.#B.on(`*`,e=>{if(this.#H)return;e.canonicalChanged&&(this.#d.clear(),this.#pe()),this.#i!=null&&Fp(e)&&(this.#i=null);let t=Fp(e)?this.#Pe(e):this.#c,n=this.#M!=null&&this.#M.length>0?this.#Ce():this.#M===``?this.#c:t,r=this.#M!=null||e.operation!==`expand`&&e.operation!==`collapse`;this.#Oe(n,r),this.#we();let i=nm(e);i!=null&&this.#Te(i)})}#Ie(e){if(this.#B.isExpanded(e)){this.#ne(e);return}this.#Ee(e)}},om=e=>{if(e==null||e.length===0)return`0`;let t=`${e.length}`;for(let n of e)t+=`\0${n.path}\0${n.status}`;return t};function sm(e){let t=e.endsWith(`/`),n=``,r=-1;for(let t=0;t<=e.length;t+=1){if(!(e[t]===`/`||t===e.length)){r===-1&&(r=t);continue}r!==-1&&(n!==``&&(n+=`/`),n+=e.slice(r,t),r=-1)}return n===``?null:{isDirectory:t,path:n}}function cm(e){let t=e.endsWith(`/`)?e.slice(0,-1):e;if(t.length===0)return[];let n=t.split(`/`);return n.slice(0,-1).map((e,t)=>`${n.slice(0,t+1).join(`/`)}/`)}function lm(e,t){return t?`${e}/`:e}function um(e,t=null){let n=om(e==null?void 0:[...e]);if(n===`0`)return null;if(t?.signature===n)return t;let r=new Map,i=new Set,a=new Set;for(let t of e??[]){let e=sm(t.path);if(e==null)continue;let n=lm(e.path,e.isDirectory);r.set(n,t.status),t.status===`ignored`&&e.isDirectory?a.add(n):e.isDirectory&&a.delete(n);for(let t of cm(e.path))i.add(t)}return{directoriesWithChanges:i,ignoredDirectoryPaths:a,signature:n,statusByPath:r}}var dm=e=>e.trim().toLowerCase(),fm=e=>e.split(`/`).at(-1)??e,pm=e=>{let t=e.toLowerCase().split(`.`),n=[];for(let e=1;e<t.length;e+=1)n.push(t.slice(e).join(`.`));return n};function mm(e,t){return typeof e==`string`?{name:e,remappedFrom:t}:{...e,remappedFrom:t}}function hm(e){let t=Ol(e),n=t.remap,r=new Map;for(let[e,n]of Object.entries(t.byFileName??{}))r.set(e.toLowerCase(),n);let i=new Map;for(let[e,n]of Object.entries(t.byFileExtension??{}))i.set(dm(e),n);let a=Object.entries(t.byFileNameContains??{}).map(([e,t])=>[e.toLowerCase(),t]);return{resolveIcon:(e,o)=>{if(e===`file-tree-icon-file`&&o!=null){let n=fm(o),s=n.toLowerCase(),c=r.get(s);if(c!=null)return mm(c,e);for(let[t,n]of a)if(s.includes(t))return mm(n,e);let l=pm(n);for(let t of l){let n=i.get(t);if(n!=null)return mm(n,e)}let u=El(t.set,n,l);if(u!=null&&t.set!==`none`)return{name:wl(u),remappedFrom:e,token:u}}let s=n?.[e];return s==null?{name:e}:mm(s,e)}}}var Z,gm,_m,vm,ym,bm,xm,Sm,Cm,wm,Tm={},Em=[],Dm=Array.isArray,Om=Em.slice,km=Object.assign;function Am(e){e&&e.parentNode&&e.remove()}function jm(e,t,n){var r,i,a,o={};for(a in t)a==`key`?r=t[a]:a==`ref`&&typeof e!=`function`?i=t[a]:o[a]=t[a];return arguments.length>2&&(o.children=arguments.length>3?Om.call(arguments,2):n),Mm(e,o,r,i,null)}function Mm(e,t,n,r,i){var a={type:e,props:t,key:n,ref:r,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:i??++gm,__i:-1,__u:0};return i==null&&Z.vnode!=null&&Z.vnode(a),a}function Nm(e){return e.children}function Pm(e,t){this.props=e,this.context=t,this.__g=0}function Fm(e,t){if(t==null)return e.__?Fm(e.__,e.__i+1):null;for(var n;t<e.__k.length;t++)if((n=e.__k[t])!=null&&n.__e!=null)return n.__e;return typeof e.type==`function`?Fm(e):null}function Im(e){var t,n;if((e=e.__)!=null&&e.__c!=null){for(e.__e=null,t=0;t<e.__k.length;t++)if((n=e.__k[t])!=null&&n.__e!=null){e.__e=n.__e;break}return Im(e)}}function Lm(e){(8&e.__g||!(e.__g|=8)||!_m.push(e)||ym++)&&vm==Z.debounceRendering||((vm=Z.debounceRendering)||queueMicrotask)(Rm)}function Rm(){for(var e,t,n,r,i,a,o,s,c=1;_m.length;)_m.length>c&&_m.sort(bm),e=_m.shift(),c=_m.length,8&e.__g&&(n=void 0,i=(r=(t=e).__v).__e,a=[],o=[],(s=t.__P)&&((n=km({},r)).__v=r.__v+1,Z.vnode&&Z.vnode(n),Km(s,n,r,t.__n,s.namespaceURI,32&r.__u?[i]:null,a,i??Fm(r),!!(32&r.__u),o,s.ownerDocument),n.__v=r.__v,n.__.__k[n.__i]=n,Jm(a,n,o),n.__e!=i&&Im(n)));ym=0}function zm(e,t,n,r,i,a,o,s,c,l,u,d){var f,p,m,h,g,_,v,y=r&&r.__k||Em,b=t.length;for(c=Bm(n,t,y,c,b),f=0;f<b;f++)(m=n.__k[f])!=null&&(p=m.__i==-1?Tm:y[m.__i]||Tm,m.__i=f,_=Km(e,m,p,i,a,o,s,c,l,u,d),h=m.__e,m.ref&&p.ref!=m.ref&&(p.ref&&Zm(p.ref,null,m),u.push(m.ref,m.__c||h,m)),g==null&&h!=null&&(g=h),(v=!!(4&m.__u))||p.__k===m.__k?c=Vm(m,c,e,v):typeof m.type==`function`&&_!==void 0?c=_:h&&(c=h.nextSibling),m.__u&=-7);return n.__e=g,c}function Bm(e,t,n,r,i){var a,o,s,c,l,u=n.length,d=u,f=0;for(e.__k=Array(i),a=0;a<i;a++)(o=t[a])!=null&&typeof o!=`boolean`&&typeof o!=`function`?(c=a+f,(o=e.__k[a]=typeof o==`string`||typeof o==`number`||typeof o==`bigint`||o.constructor==String?Mm(null,o,null,null,null):Dm(o)?Mm(Nm,{children:o},null,null,null):o.constructor==null&&o.__b>0?Mm(o.type,o.props,o.key,o.ref?o.ref:null,o.__v):o).__=e,o.__b=e.__b+1,s=null,(l=o.__i=Hm(o,n,c,d))!=-1&&(d--,(s=n[l])&&(s.__u|=2)),s==null||s.__v==null?(l==-1&&(i>u?f--:i<u&&f++),typeof o.type!=`function`&&(o.__u|=4)):l!=c&&(l==c-1?f--:l==c+1?f++:(l>c?f--:f++,o.__u|=4))):e.__k[a]=null;if(d)for(a=0;a<u;a++)(s=n[a])!=null&&!(2&s.__u)&&(s.__e==r&&(r=Fm(s)),Qm(s,s));return r}function Vm(e,t,n,r){var i,a;if(typeof e.type==`function`){for(i=e.__k,a=0;i&&a<i.length;a++)i[a]&&(i[a].__=e,t=Vm(i[a],t,n,r));return t}e.__e!=t&&(r&&(t&&e.type&&!t.parentNode&&(t=Fm(e)),n.insertBefore(e.__e,t||null)),t=e.__e);do t&&=t.nextSibling;while(t!=null&&t.nodeType==8);return t}function Hm(e,t,n,r){var i,a,o,s=e.key,c=e.type,l=t[n],u=l!=null&&(2&l.__u)==0;if(l===null&&e.key==null||u&&s==l.key&&c==l.type)return n;if(r>+!!u){for(i=n-1,a=n+1;i>=0||a<t.length;)if((l=t[o=i>=0?i--:a++])!=null&&!(2&l.__u)&&s==l.key&&c==l.type)return o}return-1}function Um(e,t,n){t[0]==`-`?e.setProperty(t,n??``):e[t]=n??``}function Wm(e,t,n,r,i){var a;n:if(t==`style`)if(typeof n==`string`)e.style.cssText=n;else{if(typeof r==`string`&&(e.style.cssText=r=``),r)for(t in r)n&&t in n||Um(e.style,t,``);if(n)for(t in n)r&&n[t]==r[t]||Um(e.style,t,n[t])}else if(t[0]==`o`&&t[1]==`n`)a=t!=(t=t.replace(xm,`$1`)),(t=t.slice(2))[0].toLowerCase()!=t[0]&&(t=t.toLowerCase()),e.__l||={},e.__l[t+a]=n,n?r?n.l=r.l:(n.l=Sm,e.addEventListener(t,a?wm:Cm,a)):e.removeEventListener(t,a?wm:Cm,a);else{if(i==`http://www.w3.org/2000/svg`)t=t.replace(/xlink(H|:h)/,`h`).replace(/sName$/,`s`);else if(t!=`width`&&t!=`height`&&t!=`href`&&t!=`list`&&t!=`form`&&t!=`tabIndex`&&t!=`download`&&t!=`rowSpan`&&t!=`colSpan`&&t!=`role`&&t!=`popover`&&t in e)try{e[t]=n??``;break n}catch{}typeof n==`function`||(n==null||!1===n&&t[4]!=`-`?e.removeAttribute(t):e.setAttribute(t,t==`popover`&&n==1?``:n))}}function Gm(e){return function(t){if(this.__l){var n=this.__l[t.type+e];if(t.u==null)t.u=Sm++;else if(t.u<n.l)return;return n(Z.event?Z.event(t):t)}}}function Km(e,t,n,r,i,a,o,s,c,l,u){var d,f,p,m,h,g,_,v,y,b,x,S,C,w,T,E,D,O,k,A,j,M=t.type;if(t.constructor!=null)return null;128&n.__u&&(c=!!(32&n.__u),n.__c.__z&&(s=t.__e=n.__e=(a=n.__c.__z)[0],n.__c.__z=null)),(d=Z.__b)&&d(t);n:if(typeof M==`function`)try{if(v=t.props,y=`prototype`in M&&M.prototype.render,b=(d=M.contextType)&&r[d.__c],x=d?b?b.props.value:d.__:r,n.__c?2&(f=t.__c=n.__c).__g&&(f.__g|=1,_=!0):(y?t.__c=f=new M(v,x):(t.__c=f=new Pm(v,x),f.constructor=M,f.render=$m),b&&b.sub(f),f.props=v,f.state||={},f.context=x,f.__n=r,p=!0,f.__g|=8,f.__h=[],f._sb=[]),y&&f.__s==null&&(f.__s=f.state),y&&M.getDerivedStateFromProps!=null&&(f.__s==f.state&&(f.__s=km({},f.__s)),km(f.__s,M.getDerivedStateFromProps(v,f.__s))),m=f.props,h=f.state,f.__v=t,p)y&&M.getDerivedStateFromProps==null&&f.componentWillMount!=null&&f.componentWillMount(),y&&f.componentDidMount!=null&&f.__h.push(f.componentDidMount);else{if(y&&M.getDerivedStateFromProps==null&&v!==m&&f.componentWillReceiveProps!=null&&f.componentWillReceiveProps(v,x),!(4&f.__g)&&f.shouldComponentUpdate!=null&&!1===f.shouldComponentUpdate(v,f.__s,x)||t.__v==n.__v){for(t.__v!=n.__v&&(f.props=v,f.state=f.__s,f.__g&=-9),t.__e=n.__e,t.__k=n.__k,t.__k.some(function(e){e&&(e.__=t)}),S=0;S<f._sb.length;S++)f.__h.push(f._sb[S]);f._sb=[],f.__h.length&&o.push(f);break n}f.componentWillUpdate!=null&&f.componentWillUpdate(v,f.__s,x),y&&f.componentDidUpdate!=null&&f.__h.push(function(){f.componentDidUpdate(m,h,g)})}if(f.context=x,f.props=v,f.__P=e,f.__g&=-5,C=Z.__r,w=0,y){for(f.state=f.__s,f.__g&=-9,C&&C(t),d=f.render(f.props,f.state,f.context),T=0;T<f._sb.length;T++)f.__h.push(f._sb[T]);f._sb=[]}else do f.__g&=-9,C&&C(t),d=f.render(f.props,f.state,f.context),f.state=f.__s;while(8&f.__g&&++w<25);f.state=f.__s,f.getChildContext!=null&&(r=km({},r,f.getChildContext())),y&&!p&&f.getSnapshotBeforeUpdate!=null&&(g=f.getSnapshotBeforeUpdate(m,h)),E=d,d!=null&&d.type===Nm&&d.key==null&&(E=Ym(d.props.children)),s=zm(e,Dm(E)?E:[E],t,n,r,i,a,o,s,c,l,u),t.__u&=-161,f.__h.length&&o.push(f),_&&(f.__g&=-4)}catch(e){if(t.__v=null,c||a!=null)if(e.then){for(D=0,O=!1,t.__u|=c?160:128,t.__c.__z=[],k=0;k<a.length;k++)(A=a[k])==null||O||(A.nodeType==8&&A.data==`$s`?(D>0&&t.__c.__z.push(A),D++,a[k]=null):A.nodeType==8&&A.data==`/$s`?(--D>0&&t.__c.__z.push(A),O=D===0,s=a[k],a[k]=null):D>0&&(t.__c.__z.push(A),a[k]=null));if(!O){for(;s&&s.nodeType==8&&s.nextSibling;)s=s.nextSibling;a[a.indexOf(s)]=null,t.__c.__z=[s]}t.__e=s}else{for(j=a.length;j--;)Am(a[j]);qm(t)}else t.__e=n.__e,t.__k=n.__k,e.then||qm(t);Z.__e(e,t,n)}else s=t.__e=Xm(n.__e,t,n,r,i,a,o,c,l,u);return(d=Z.diffed)&&d(t),128&t.__u?void 0:s}function qm(e){e&&e.__c&&(e.__c.__g|=4),e&&e.__k&&e.__k.forEach(qm)}function Jm(e,t,n){for(var r=0;r<n.length;r++)Zm(n[r],n[++r],n[++r]);Z.__c&&Z.__c(t,e),e.some(function(t){try{e=t.__h,t.__h=[],e.some(function(e){e.call(t)})}catch(e){Z.__e(e,t.__v)}})}function Ym(e){return typeof e!=`object`||!e||e.__b&&e.__b>0?e:Dm(e)?e.map(Ym):km({},e)}function Xm(e,t,n,r,i,a,o,s,c,l){var u,d,f,p,m,h,g,_,v=n.props,y=t.props,b=t.type;if(b==`svg`?i=`http://www.w3.org/2000/svg`:b==`math`?i=`http://www.w3.org/1998/Math/MathML`:i||=`http://www.w3.org/1999/xhtml`,a!=null){for(u=0;u<a.length;u++)if((m=a[u])&&`setAttribute`in m==!!b&&(b?m.localName==b:m.nodeType==3)){e=m,a[u]=null;break}}if(e==null){if(b==null)return l.createTextNode(y);e=l.createElementNS(i,b,y.is&&y),s&&=(Z.__m&&Z.__m(t,a),!1),a=null}if(b==null)v===y||s&&e.data==y||(e.data=y);else{if(a&&=Om.call(e.childNodes),v=n.props||Tm,!s&&a!=null)for(v={},u=0;u<e.attributes.length;u++)v[(m=e.attributes[u]).name]=m.value;for(u in v)if(m=v[u],u!=`children`){if(u==`dangerouslySetInnerHTML`)f=m;else if(!(u in y)){if(u==`value`&&`defaultValue`in y||u==`checked`&&`defaultChecked`in y)continue;Wm(e,u,null,m,i)}}for(u in _=1&n.__u,y)m=y[u],u==`children`?p=m:u==`dangerouslySetInnerHTML`?d=m:u==`value`?h=m:u==`checked`?g=m:s&&typeof m!=`function`||v[u]===m&&!_||Wm(e,u,m,v[u],i);if(d)s||f&&(d.__html==f.__html||d.__html==e.innerHTML)||(e.innerHTML=d.__html),t.__k=[];else if(f&&(e.innerHTML=``),zm(b==`template`?e.content:e,Dm(p)?p:[p],t,n,r,b==`foreignObject`?`http://www.w3.org/1999/xhtml`:i,a,o,a?a[0]:n.__k&&Fm(n,0),s,c,l),a!=null)for(u=a.length;u--;)Am(a[u]);s||(u=`value`,b==`progress`&&h==null?e.removeAttribute(`value`):h==null||h===e[u]&&(b!==`progress`||h)||Wm(e,u,h,v[u],i),u=`checked`,g!=null&&g!=e[u]&&Wm(e,u,g,v[u],i))}return e}function Zm(e,t,n){try{if(typeof e==`function`){var r=typeof e.__u==`function`;r&&e.__u(),r&&t==null||(e.__u=e(t))}else e.current=t}catch(e){Z.__e(e,n)}}function Qm(e,t,n){var r,i;if(Z.unmount&&Z.unmount(e),(r=e.ref)&&(r.current&&r.current!=e.__e||Zm(r,null,t)),(r=e.__c)!=null){if(r.componentWillUnmount)try{r.componentWillUnmount()}catch(e){Z.__e(e,t)}r.__P=null}if(r=e.__k)for(i=0;i<r.length;i++)r[i]&&Qm(r[i],t,n||typeof e.type!=`function`);n||Am(e.__e),e.__e&&e.__e.__l&&(e.__e.__l=null),e.__e=e.__c=e.__=null}function $m(e,t,n){return this.constructor(e,n)}function eh(e,t){var n,r,i,a;t==document&&(t=document.documentElement),Z.__&&Z.__(e,t),r=(n=!!(e&&32&e.__u))?null:t.__k,e=t.__k=jm(Nm,null,[e]),i=[],a=[],Km(t,e,r||Tm,Tm,t.namespaceURI,r?null:t.firstChild?Om.call(t.childNodes):null,i,r?r.__e:t.firstChild,n,a,t.ownerDocument),Jm(i,e,a)}function th(e,t){e.__u|=32,eh(e,t)}Z={__e:function(e,t,n,r){for(var i,a,o;t=t.__;)if((i=t.__c)&&!(1&i.__g)){i.__g|=4;try{if((a=i.constructor)&&a.getDerivedStateFromError!=null&&(i.setState(a.getDerivedStateFromError(e)),o=8&i.__g),i.componentDidCatch!=null&&(i.componentDidCatch(e,r||{}),o=8&i.__g),o)return void(i.__g|=2)}catch(t){e=t}}throw ym=0,e}},gm=0,Pm.prototype.setState=function(e,t){var n=this.__s!=null&&this.__s!=this.state?this.__s:this.__s=km({},this.state);typeof e==`function`&&(e=e(km({},n),this.props)),e&&km(n,e),e!=null&&this.__v&&(t&&this._sb.push(t),Lm(this))},Pm.prototype.forceUpdate=function(e){this.__v&&(this.__g|=4,e&&this.__h.push(e),Lm(this))},Pm.prototype.render=Nm,_m=[],ym=0,bm=function(e,t){return e.__v.__b-t.__v.__b},xm=/(PointerCapture)$|Capture$/i,Sm=0,Cm=Gm(!1),wm=Gm(!0);var nh=0;Array.isArray;function Q(e,t,n,r,i,a){t||={};var o,s,c=t;if(`ref`in c&&typeof e!=`function`)for(s in c={},t)s==`ref`?o=t[s]:c[s]=t[s];var l={type:e,props:c,key:n,ref:o,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:--nh,__i:-1,__u:0,__source:i,__self:a};return Z.vnode&&Z.vnode(l),l}var rh=16,ih=16,ah={};function oh({name:e,remappedFrom:t,token:n,width:r,height:i,viewBox:a,label:o,alignCapitals:s=!1}){"use no memo";let c=`#${e.replace(/^#/,``)}`,{width:l,height:u,viewBox:d}=ah[e]??{width:rh,height:ih},f=r??l,p=i??u,m=a??d??`0 0 ${l} ${u}`;return Q(`svg`,{"data-icon-name":t??e,"data-icon-token":n,"data-align-capitals":s,...o==null?{"aria-hidden":!0}:{"aria-label":o,role:`img`},viewBox:m,width:f,height:p,children:Q(`use`,{href:c})})}var sh=e=>{if(e.length<2)return[e,``];let t=Math.ceil(e.length/2);return[e.slice(0,t),e.slice(t)]},ch=e=>{if(e.length<4)return[e,``];let t=e.lastIndexOf(`.`)+1,n=e.length-t>10,r=t>=1&&!n?t:Math.ceil(e.length/2);return[e.slice(0,r),e.slice(r)]},lh=e=>{if(e.length<4)return[e,``];let t=e.lastIndexOf(`/`)+1,n=e.length-t>25,r=t>=1&&!n?t:Math.ceil(e.length/2);return[e.slice(0,r),e.slice(r)]},uh=(e,{splitIndex:t}={})=>{if(typeof t!=`number`){let t=Math.ceil(e.length/2);return[e.slice(0,t),e.slice(t)]}return[e.slice(0,t),e.slice(t)]},dh=(e,{splitOffset:t}={})=>{if(typeof t!=`number`||t<=0||t>=e.length){let t=Math.ceil(e.length/2);return[e.slice(0,t),e.slice(t)]}let n=e.length-t;return[e.slice(0,n),e.slice(n)]},fh=(e,{splitOffset:t}={})=>{if(typeof t!=`number`||t<=0||t>=e.length){let t=Math.ceil(e.length/2);return[e.slice(0,t),e.slice(t)]}let n=t;return[e.slice(0,n),e.slice(n)]};function ph({children:e,marker:t,variant:n=`default`}){"use no memo";return Q(`div`,{"aria-hidden":!0,"data-truncate-marker-cell":!0,children:Q(`div`,{"data-truncate-marker":!0,children:typeof t==`function`?t({children:e}):n===`fade`?Q(`span`,{"data-truncate-fade":!0}):t})})}function mh(e){"use no memo";let{mode:t,children:n}=e;return Q(`div`,{children:[Q(`div`,{"data-truncate-content":`visible`,children:t===`fruncate`?Q(`span`,{children:n}):n}),Q(`div`,{"data-truncate-content":`overflow`,"aria-hidden":!0,children:t===`fruncate`?Q(`span`,{children:n}):n})]})}function hh({children:e,mode:t=`truncate`,marker:n=`…`,variant:r=`default`,...i}){"use no memo";let a=Q(mh,{mode:t,children:e},`content`),o=Q(ph,{marker:n,mode:t,variant:r},`marker`),s=Q(`div`,{"data-truncate-fill":!0},`fill`);return Q(`div`,{"data-truncate-container":t,"data-truncate-variant":r,...i,children:Q(`div`,{"data-truncate-grid":!0,children:t===`truncate`?[a,o]:[o,a,s]})})}function gh({children:e,...t}){"use no memo";return Q(hh,{mode:`truncate`,...t,children:e})}function _h({children:e,...t}){"use no memo";return Q(hh,{mode:`fruncate`,...t,children:e})}function vh({children:e,contents:t,priority:n=`end`,split:r=`center`,minimumLength:i=12,className:a,style:o,...s}){"use no memo";let c=null,l=null;if(Array.isArray(t)){if(t.length!==2)return console.error(`MiddleTruncate: contents must be an array of two items`),null;c=Q(gh,{...s,children:t[0]}),l=Q(_h,{...s,children:t[1]})}else{if(typeof e!=`string`)return console.error(`MiddleTruncate: children must be a string`),null;if(e.length===0)return Q(`div`,{className:a,style:o});if(e.length<i)return Q(n===`end`?_h:gh,{...s,className:a,style:o,children:e});let t=null,u=null,d=null;if(typeof r==`string`)r===`center`?t=sh:r===`extension`?t=ch:r===`leaf-path`&&(t=lh);else if(typeof r==`number`)t=uh,u=r;else if(Array.isArray(r)){let[e,n]=r;d=n,e===`last`?t=dh:e===`first`&&(t=fh)}else typeof r==`function`&&(t=r);t??=sh;let[f,p]=t(e,{priority:n,variant:s.variant,splitIndex:typeof u==`number`?u:void 0,splitOffset:typeof d==`number`?d:void 0}),m=f.length>=p.length,h=n===`equal`&&!m,g=n===`equal`&&m,_={},v={};h&&(_.marker=``),g&&(v.marker=``),c=Q(gh,{...s,..._,children:f}),l=Q(_h,{...s,...v,children:p})}return Q(`div`,{"data-truncate-group-container":`middle`,className:a,style:o,children:[Q(`div`,{"data-truncate-segment-priority":n===`start`||n===`equal`?`1`:`2`,children:c}),Q(`div`,{"data-truncate-segment-priority":n===`end`||n===`equal`?`1`:`2`,children:l})]})}var yh={endIndex:-1,startIndex:-1};function bh(e,t,n){return Math.min(Math.max(e,t),n)}function xh(e,t){return e<0||t<e?yh:{endIndex:t,startIndex:e}}function Sh(e){return e.startIndex<0||e.endIndex<e.startIndex}function Ch(e,t){return Sh(e)?0:(e.endIndex-e.startIndex+1)*t}function wh(e,t,n){if(t<=0)return-1;let r=t*n;return e<=0?0:e>=r?t:Math.floor(e/n)}function Th(e,t,n){return t<=0||e<=0?-1:e>=t*n?t-1:Math.ceil(e/n)-1}function Eh(e){let t=new Map;return e.forEach((e,n)=>{if(e.kind!==`directory`||!e.isExpanded)return;let r=e.ancestorPaths.length,i=t.get(r);if(i==null){t.set(r,[n]);return}i.push(n)}),t}function Dh(e,t){let n=0,r=e.length-1,i=-1;for(;n<=r;){let a=Math.floor((n+r)/2),o=e[a];if(o==null)break;if(o<=t){i=a,n=a+1;continue}r=a-1}return i}function Oh(e){let t=new Map,n=[];for(let r=0;r<e.length;r+=1){let i=e[r];if(i==null)continue;let a=i.kind===`directory`&&i.isExpanded?[...i.ancestorPaths,i.path]:i.ancestorPaths,o=0;for(;o<n.length&&o<a.length&&n[o]===a[o];)o+=1;for(let e=n.length-1;e>=o;--e){let i=n[e];i!=null&&t.set(i,r-1)}n.length=o;for(let e=o;e<a.length;e+=1){let t=a[e];t!=null&&n.push(t)}}let r=e.length-1;for(let e of n)t.set(e,r);return t}function kh(e,t,n){if(e.length===0||t<=0)return[];let r=Oh(e),i=Eh(e),a=[];for(let r=0;r<e.length;r+=1){let o=i.get(r);if(o==null||o.length===0)break;let s=t+r*n,c=Dh(o,Math.min(e.length-1,Math.floor(s/n))),l=null;for(;c>=0;){let t=o[c],n=t==null?null:e[t]??null;if(n!=null&&(r===0||n.ancestorPaths[r-1]===a[r-1]?.path)){l=n;break}--c}if(l==null)break;a.push(l)}return a.map((i,a)=>{let o=a*n,s=(r.get(i.path)??e.length-1)+1;if(s>=e.length)return{row:i,top:o};let c=s*n-t;return{row:i,top:Math.min(o,c-n)}}).filter(e=>e.top+n>0)}function Ah(e,t){let n=t.totalRowCount??e.length,r=n*t.itemHeight,i=Math.max(0,t.viewportHeight),a=Math.max(0,Math.floor(t.overscan)),o=Math.max(0,r-i),s=bh(t.scrollTop,0,o),c=t.stickyRows??kh(e,s,t.itemHeight),l=c.reduce((e,n)=>Math.max(e,n.top+t.itemHeight),0),u=Math.min(r,s+l),d=Math.max(0,i-l),f=Math.max(0,r-u),p=wh(s,n,t.itemHeight),m=wh(u,n,t.itemHeight),h=l<=0||p<0||p>=n?-1:p,g=h===-1?-1:Math.min(n-1,m-1),_=h===-1||g<h?0:g-h+1,v=d<=0||m>=n?yh:xh(m,Th(u+d,n,t.itemHeight)),y=g+1,b=Sh(v)?yh:xh(Math.max(y,v.startIndex-a),Math.min(n-1,v.endIndex+a)),x=Ch(b,t.itemHeight);return{occlusion:{firstOccludedIndex:h,lastOccludedIndex:g,occludedCount:_},physical:{itemHeight:t.itemHeight,maxScrollTop:o,overscan:a,scrollTop:s,totalHeight:r,totalRowCount:n,viewportHeight:i},projected:{contentHeight:f,paneHeight:d,paneTop:u},sticky:{height:l,rows:c},visible:v,window:{endIndex:b.endIndex,height:x,offsetTop:Sh(b)?0:b.startIndex*t.itemHeight,startIndex:b.startIndex}}}var jh={added:`A`,deleted:`D`,ignored:null,modified:`M`,renamed:`R`,untracked:`U`},Mh={added:`Git status: added`,deleted:`Git status: deleted`,ignored:`Git status: ignored`,modified:`Git status: modified`,renamed:`Git status: renamed`,untracked:`Git status: untracked`},Nh=`Contains git status items`;function Ph(e){let{renamingPath:t,previousRenamingPath:n,hasRenderedInput:r}=e;return t==null?`reset`:r?n===t?`ignore`:`focus-input`:`reveal-canonical`}function Fh(e){let{row:t,mode:n,targetPath:r,ariaLabel:i,domId:a,isParked:o,itemHeight:s,features:c,state:l,extraStyle:u}=e,d=n===`sticky`,f=t.ancestorPaths.at(-1)??``,p={};return l.isFocusRinged&&(p[`data-item-focused`]=!0),t.isSelected&&(p[`data-item-selected`]=!0),l.isContextHovered&&(p[`data-item-context-hover`]=`true`),l.isDragTarget&&(p[`data-item-drag-target`]=!0),l.isDragging&&(p[`data-item-dragging`]=!0),l.effectiveGitStatus!=null&&(p[`data-item-git-status`]=l.effectiveGitStatus),l.containsGitChange&&(p[`data-item-contains-git-change`]=`true`),{"aria-expanded":!d&&t.kind===`directory`?t.isExpanded:void 0,"aria-haspopup":c.contextMenuEnabled?`menu`:void 0,"aria-label":i,"aria-level":d?void 0:t.level+1,"aria-posinset":d?void 0:t.posInSet+1,"aria-selected":d?void 0:t.isSelected?`true`:`false`,"aria-setsize":d?void 0:t.setSize,"data-file-tree-sticky-path":d?r:void 0,"data-file-tree-sticky-row":d?`true`:void 0,"data-item-context-menu-button-visibility":c.actionLaneEnabled?c.contextMenuButtonVisibility:void 0,"data-item-context-menu-trigger-mode":c.contextMenuEnabled?c.contextMenuTriggerMode:void 0,"data-item-has-context-menu-action-lane":c.actionLaneEnabled?`true`:void 0,"data-item-has-git-lane":c.gitLaneActive?`true`:void 0,"data-item-parent-path":f.length>0?f:void 0,"data-item-parked":o?`true`:void 0,"data-item-path":r,"data-item-type":t.kind===`directory`?`folder`:`file`,"data-type":`item`,id:d?void 0:a,role:d?void 0:`treeitem`,style:{minHeight:`${s}px`,...u},tabIndex:!d&&t.isFocused?0:-1,...p}}function Ih(e){let{event:t,mode:n,isSearchOpen:r,isDirectory:i}=e,a=t.ctrlKey||t.metaKey,o=t.shiftKey||a,s=t.shiftKey?{additive:a,kind:`range`}:a?{kind:`toggle`}:{kind:`single`};return{closeSearch:r,revealCanonical:n===`sticky`,selection:s,toggleDirectory:!o&&i}}function Lh(e){let{currentScrollTop:t,focusedIndex:n,itemHeight:r,topInset:i=0,viewportHeight:a}=e;if(n<0)return null;let o=Math.max(0,i),s=n*r,c=s+r;if(s<t+o){let e=Math.max(0,s-o);return e===t?null:e}if(c>t+a){let e=c-a;return e===t?null:e}return null}function Rh(e){let{currentScrollTop:t,focusedIndex:n,itemHeight:r,targetViewportOffset:i,totalHeight:a,viewportHeight:o}=e;if(n<0)return null;let s=Math.max(0,i),c=n*r,l=c+r,u=t+s,d=t+o;if(c>=u&&l<=d)return null;let f=Math.max(0,a-o),p=Math.max(0,Math.min(c-s,f));return p===t?null:p}var zh,Bh,Vh,Hh,Uh=Object.is,Wh=0,Gh=[],Kh=Z,qh=Kh.__b,Jh=Kh.__r,Yh=Kh.diffed,Xh=Kh.__c,Zh=Kh.unmount,Qh=Kh.__;function $h(e,t){Kh.__h&&Kh.__h(Bh,e,Wh||t),Wh=0;var n=Bh.__H||={__:[],__h:[]};return e>=n.__.length&&n.__.push({}),n.__[e]}function eg(e){return Wh=1,tg(fg,e)}function tg(e,t,n){var r=$h(zh++,2);if(r.t=e,!r.__c&&(r.__=[n?n(t):fg(void 0,t),function(e){var t=r.__N?r.__N[0]:r.__[0],n=r.t(t,e);Uh(t,n)||(r.__N=[n,r.__[1]],r.__c.setState({}))}],r.__c=Bh,!Bh.__f)){var i=function(e,t,n){if(!r.__c.__H)return!0;var i=r.__c.__H.__.filter(function(e){return!!e.__c});if(i.every(function(e){return!e.__N}))return!a||a.call(this,e,t,n);var o=r.__c.props!==e;return i.forEach(function(e){if(e.__N){var t=e.__[0];e.__=e.__N,e.__N=void 0,Uh(t,e.__[0])||(o=!0)}}),a&&a.call(this,e,t,n)||o};Bh.__f=!0;var a=Bh.shouldComponentUpdate,o=Bh.componentWillUpdate;Bh.componentWillUpdate=function(e,t,n){if(4&this.__g){var r=a;a=void 0,i(e,t,n),a=r}o&&o.call(this,e,t,n)},Bh.shouldComponentUpdate=i}return r.__N||r.__}function ng(e,t){var n=$h(zh++,3);!Kh.__s&&dg(n.__H,t)&&(n.__=e,n.u=t,Bh.__H.__h.push(n))}function rg(e,t){var n=$h(zh++,4);!Kh.__s&&dg(n.__H,t)&&(n.__=e,n.u=t,Bh.__h.push(n))}function $(e){return Wh=5,ig(function(){return{current:e}},[])}function ig(e,t){var n=$h(zh++,7);return dg(n.__H,t)&&(n.__=e(),n.__H=t,n.__h=e),n.__}function ag(e,t){return Wh=8,ig(function(){return e},t)}function og(){for(var e;e=Gh.shift();)if(e.__P&&e.__H)try{e.__H.__h.forEach(lg),e.__H.__h.forEach(ug),e.__H.__h=[]}catch(t){e.__H.__h=[],Kh.__e(t,e.__v)}}Kh.__b=function(e){Bh=null,qh&&qh(e)},Kh.__=function(e,t){e&&t.__k&&t.__k.__m&&(e.__m=t.__k.__m),Qh&&Qh(e,t)},Kh.__r=function(e){Jh&&Jh(e),zh=0;var t=(Bh=e.__c).__H;t&&(Vh===Bh?(t.__h=[],Bh.__h=[],t.__.forEach(function(e){e.__N&&(e.__=e.__N),e.u=e.__N=void 0})):(t.__h.forEach(lg),t.__h.forEach(ug),t.__h=[],zh=0)),Vh=Bh},Kh.diffed=function(e){Yh&&Yh(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(Gh.push(t)!==1&&Hh===Kh.requestAnimationFrame||((Hh=Kh.requestAnimationFrame)||cg)(og)),t.__H.__.forEach(function(e){e.u&&(e.__H=e.u),e.u=void 0})),Vh=Bh=null},Kh.__c=function(e,t){t.some(function(e){try{e.__h.forEach(lg),e.__h=e.__h.filter(function(e){return!e.__||ug(e)})}catch(n){t.some(function(e){e.__h&&=[]}),t=[],Kh.__e(n,e.__v)}}),Xh&&Xh(e,t)},Kh.unmount=function(e){Zh&&Zh(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.forEach(function(e){try{lg(e)}catch(e){t=e}}),n.__H=void 0,t&&Kh.__e(t,n.__v))};var sg=typeof requestAnimationFrame==`function`;function cg(e){var t,n=function(){clearTimeout(r),sg&&cancelAnimationFrame(t),setTimeout(e)},r=setTimeout(n,35);sg&&(t=requestAnimationFrame(n))}function lg(e){var t=Bh,n=e.__c;typeof n==`function`&&(e.__c=void 0,n()),Bh=t}function ug(e){var t=Bh;e.__c=e.__(),Bh=t}function dg(e,t){return!e||e.length!==t.length||t.some(function(t,n){return!Uh(t,e[n])})}function fg(e,t){return typeof t==`function`?t(e):t}function pg(e){if(e==null||!e.isConnected||e===document.body||e===document.documentElement)return!1;e.focus({preventScroll:!0});let t=e.getRootNode();return t instanceof ShadowRoot?t.activeElement===e:document.activeElement===e}function mg(e){let t=e.getRootNode();if(t instanceof ShadowRoot){let e=t.activeElement;return e instanceof HTMLElement?e:null}let n=document.activeElement;return n instanceof HTMLElement&&e.contains(n)?n:null}function hg({ariaLabel:e,isFlattened:t=!1,ref:n,value:r,onBlur:i,onInput:a}){return Q(`input`,{ref:n,"data-item-rename-input":!0,...t?{"data-item-flattened-rename-input":!0}:{},"aria-label":e,value:r,onBlur:i,onInput:a,onClick:e=>e.stopPropagation(),onMouseDown:e=>e.stopPropagation(),onPointerDown:e=>e.stopPropagation()})}function gg(e,t=null,n=null){"use no memo";let r=e.flattenedSegments;return r==null||r.length===0?t??e.name:Q(`span`,{"data-item-flattened-subitems":!0,children:r.map((e,i)=>{let a=i===r.length-1;return Q(Nm,{children:[Q(`span`,{"data-item-flattened-subitem":e.path,"data-item-flattened-subitem-drag-target":n===e.path?`true`:void 0,children:a&&t!=null?t:Q(gh,{children:e.name})}),i<r.length-1?` / `:``]},e.path)})})}function _g(e){return e.isFlattened?e.flattenedSegments?.findLast(e=>e.isTerminal)?.path??e.path:e.path}function vg(e){let t=e.flattenedSegments;return t==null||t.length===0?e.name:t.map(e=>e.name).join(` / `)}function yg(e,t,n,r){return e.map((e,i)=>{let a=i*n,o=e.subtreeEndIndex+1;if(o>=r)return{row:e.row,top:a};let s=o*n-t;return{row:e.row,top:Math.min(a,s-n)}}).filter(e=>e.top+n>0)}function bg({controller:e,itemHeight:t,overscan:n,scrollTop:r,stickyFolders:i,viewportHeight:a}){let o=e.getVisibleCount(),s=i&&o>0?e.getStickyRowCandidates(r,t):[],c=s==null&&i&&o>0?e.getVisibleRows(0,o-1):[],l=Ah(c,{itemHeight:t,overscan:n,scrollTop:r,stickyRows:s==null?void 0:yg(s,r,t,o),totalRowCount:o,viewportHeight:a}),u=i&&r<=0&&o>0?e.getStickyRowCandidates(1,t):[],d=u!=null&&r<=0?yg(u,1,t,o):i&&r<=0&&c.length>0?kh(c,1,t):l.sticky.rows;return{overlayHeight:d.reduce((e,n)=>Math.max(e,n.top+t),0),overlayRows:d,snapshot:l,visibleRows:c}}var xg=400,Sg=10,Cg=40,wg=18;function Tg(e,t,n){let r=e,i=document.elementFromPoint?.bind(document)??null,a=r.elementFromPoint?.(t,n)??i?.(t,n)??null;return e instanceof ShadowRoot&&(a==null||!e.contains(a))?Eg(e,t,n):a instanceof HTMLElement?a:null}function Eg(e,t,n){let r=Array.from(e.querySelectorAll(`[data-type="item"], [data-item-flattened-subitem]`));for(let e=r.length-1;e>=0;e--){let i=r[e],a=i.getBoundingClientRect();if(t>=a.left&&t<=a.right&&n>=a.top&&n<=a.bottom)return i}return null}function Dg(e){let t=e?.closest?.(`[data-type="item"]`);if(!(t instanceof HTMLElement))return null;let n=t.dataset.itemPath??null;if(n==null)return null;let r=e?.closest?.(`[data-item-flattened-subitem]`),i=r instanceof HTMLElement?r.getAttribute(`data-item-flattened-subitem`)??null:null;if(i!=null&&i.endsWith(`/`))return{directoryPath:i,flattenedSegmentPath:i,hoveredPath:n,kind:`directory`};if(t.dataset.itemType===`folder`)return{directoryPath:n,flattenedSegmentPath:null,hoveredPath:n,kind:`directory`};let a=t.dataset.itemParentPath??null;return a==null||a.length===0?{directoryPath:null,flattenedSegmentPath:null,hoveredPath:n,kind:`root`}:{directoryPath:a,flattenedSegmentPath:null,hoveredPath:n,kind:`directory`}}function Og(e){let t=e.cloneNode(!0);return t.removeAttribute(`id`),t.dataset.fileTreeDragPreview=`true`,t.setAttribute(`aria-hidden`,`true`),t.tabIndex=-1,Object.assign(t.style,{boxShadow:`0 4px 12px rgba(0, 0, 0, 0.15)`,left:`0px`,margin:`0`,pointerEvents:`none`,position:`fixed`,top:`0px`,willChange:`transform`,zIndex:`10000`}),t}function kg(){return navigator.vendor!==`Apple Computer, Inc.`}function Ag(e,t){let n=e-t.top;if(n<Cg)return-Math.ceil((Cg-Math.max(0,n))/Cg*wg);let r=t.bottom-e;return r<Cg?Math.ceil((Cg-Math.max(0,r))/Cg*wg):0}function jg(e,t){if(e!=null){let t=jh[e];return t==null?null:{text:t,title:Mh[e]}}return t?{icon:{name:`file-tree-icon-dot`,width:6,height:6},title:Nh}:null}function Mg(e,t,n){if(t==null||t.size===0)return null;let r=[];for(let i=e.length-1;i>=0;--i){let a=e[i],o=n.get(a);if(o!=null){for(let e of r)n.set(e,o);return o?`ignored`:null}if(t.has(a)){n.set(a,!0);for(let e of r)n.set(e,!0);return`ignored`}r.push(a)}for(let e of r)n.set(e,!1);return null}function Ng(e){return e!=null&&`toggle`in e}function Pg(e){return e.code===`Space`||e.key===` `||e.key===`Spacebar`}function Fg(e){return e.key.length===1&&/^[\p{L}\p{N}]$/u.test(e.key)&&!e.ctrlKey&&!e.metaKey&&!e.altKey}function Ig(e,t){if(e==null)return t;let n=e.getBoundingClientRect().height;return n>0?n:e.clientHeight>0?e.clientHeight:t}function Lg(e,t){return e!=null&&e>0?e:t}function Rg(e){let t=e.borderBoxSize,n=Array.isArray(t)?t[0]:t;return n!=null&&Number.isFinite(n.blockSize)&&n.blockSize>0?n.blockSize:e.contentRect.height>0?e.contentRect.height:null}function zg(e,t,n,r,i=0){let a=Lh({currentScrollTop:e.scrollTop,focusedIndex:t,itemHeight:n,topInset:i,viewportHeight:r});return a==null?!1:(e.scrollTop=a,!0)}function Bg(e,t,n,r,i,a){let o=Rh({currentScrollTop:e.scrollTop,focusedIndex:t,itemHeight:n,targetViewportOffset:a,totalHeight:i,viewportHeight:r});return o==null?!1:(e.scrollTop=o,!0)}function Vg(e,t,n,r){return n.end<n.start?null:e<n.start?-t:e>n.end?r:null}function Hg(e){return e==null?``:`[data-item-section="spacing-item"][data-ancestor-path="${e.replaceAll(`\\`,`\\\\`).replaceAll(`"`,`\\"`)}"] { opacity: 1; }`}function Ug(e){return e.shiftKey&&e.key===`F10`||e.key===`ContextMenu`}function Wg(e,t){return t&&Ug(e)||(e.ctrlKey||e.metaKey)&&Pg(e)?!0:e.key===`ArrowDown`||e.key===`ArrowLeft`||e.key===`ArrowRight`||e.key===`ArrowUp`}var Gg=new Set([`ArrowDown`,`ArrowLeft`,`ArrowRight`,`ArrowUp`,`End`,`Home`,`PageDown`,`PageUp`]);function Kg(e){for(let t of e.composedPath())if(t instanceof HTMLElement&&(t.dataset.fileTreeContextMenuRoot===`true`||t.dataset.type===`context-menu-anchor`||t.dataset.type===`context-menu-trigger`||t.getAttribute(`slot`)===`context-menu`))return!0;return!1}function qg(e){return{bottom:e.bottom,height:e.height,left:e.left,right:e.right,top:e.top,width:e.width,x:e.x,y:e.y}}function Jg(e,t){return{bottom:t,height:0,left:e,right:e,top:t,width:0,x:e,y:t}}function Yg(e,t){if(e==null)return t.offsetTop;let n=t.getBoundingClientRect(),r=e.getBoundingClientRect();return n.top-r.top}function Xg(e,t,n){if(n==null){e.delete(t);return}e.set(t,n)}function Zg(e,t,n){if(e==null)return null;let r=t.get(e)??null;if(r!=null)return r;let i=n.get(e)??null;return i?.dataset.itemParked===`true`?null:i}function Qg(e){if(e==null)return[];let t=[];for(let n of e.querySelectorAll(`button[data-file-tree-sticky-row="true"]`)){if(!(n instanceof HTMLElement))continue;let e=n.dataset.fileTreeStickyPath;e!=null&&t.push(e)}return t}function $g(e,t){if(e==null||t==null)return null;for(let n of e.querySelectorAll(`button[data-item-focused="true"][data-item-parked="true"]`))if(n instanceof HTMLElement&&n.dataset.itemPath===t)return n;return null}function e_(e,t,n,r,i,a,o){let s=Math.max(0,a-i),c=t?.getBoundingClientRect()??null,l=c==null||n==null?null:n.getBoundingClientRect().top-c.top,u=$g(e,r),d=c==null||u==null?null:u.getBoundingClientRect().top-c.top;return Math.max(0,Math.min(d??Math.max(l??0,s),Math.max(0,o-i)))}function t_(e,t){return{kind:e.kind,name:vg(e),path:t}}function n_(e){return e==null?void 0:`${e}__tree`}function r_(e,t,n){if(e!=null)return`${e}__focused-item-${encodeURIComponent(t)}${n?`__parked`:``}`}function i_(e){return e===`file-tree-icon-chevron`||e===`file-tree-icon-dot`||e===`file-tree-icon-file`||e===`file-tree-icon-lock`}function a_(e,t){if(e==null)return null;if(`text`in e)return Q(`span`,{title:e.title,children:e.text});let n=typeof e.icon==`string`?i_(e.icon)?t(e.icon):{name:e.icon}:i_(e.icon.name)?(()=>{let n=t(e.icon.name),{name:r,...i}=e.icon;return{...n,...i}})():e.icon;return Q(`span`,{title:e.title,children:Q(oh,{...n})})}function o_(e){e!=null&&pg(e.querySelector([`button:not([disabled])`,`[href]`,`input:not([disabled])`,`select:not([disabled])`,`textarea:not([disabled])`,`[tabindex]:not([tabindex="-1"])`].join(`, `))??e)}function s_(e,t,{actionLaneEnabled:n=!1,customDecoration:r=null,decorationLaneEnabled:i=!1,dragTargetFlattenedSegmentPath:a=null,gitDecoration:o=null,gitLaneActive:s=!1,renameInput:c=null,showDecorativeActionAffordance:l=!1}={}){let u=_g(e);return Q(Nm,{children:[e.depth>0?Q(`div`,{"data-item-section":`spacing`,children:Array.from({length:e.depth}).map((t,n)=>Q(`div`,{"data-item-section":`spacing-item`,"data-ancestor-path":e.ancestorPaths[n]},n))}):null,Q(`div`,{"data-item-section":`icon`,children:e.kind===`directory`?Q(oh,{...t(`file-tree-icon-chevron`)}):Q(oh,{...t(`file-tree-icon-file`,u)})}),Q(`div`,{"data-item-section":`content`,children:e.isFlattened?gg(e,c,a):c??Q(vh,{minimumLength:5,split:`extension`,children:e.name})}),i?Q(`div`,{"data-item-section":`decoration`,children:r==null?null:a_(r,t)}):null,s?Q(`div`,{"data-item-section":`git`,children:a_(o,t)}):null,n?Q(`div`,{"data-item-section":`action`,children:l?Q(`span`,{"aria-hidden":`true`,"data-item-action-affordance":`decorative`,children:Q(oh,{...t(`file-tree-icon-ellipsis`)})}):null}):null]})}function c_(e,t,n,r={}){let{controller:i,renameView:a,visualFocusPath:o,contextHoverPath:s,draggedPathSet:c,dragTarget:l,dragAndDropEnabled:u,shouldSuppressContextMenu:d,handleRowDragStart:f,handleRowDragEnd:p,handleRowTouchStart:m,instanceId:h,itemHeight:g,gitStatusByPath:_,ignoredGitDirectories:v,ignoredInheritanceCache:y,directoriesWithGitChanges:b,gitLaneActive:x,contextMenuEnabled:S,contextMenuTriggerMode:C,contextMenuButtonTriggerEnabled:w,contextMenuButtonVisibility:T,contextMenuRightClickEnabled:E,registerRenameInput:D,registerButton:O,resolveIcon:k,renderDecorationForRow:A,openContextMenuForRow:j,onRowClick:M,onKeyDown:N}=e,P=_g(t),{isParked:F=!1,mode:I=`flow`,style:ee}=r,te=I===`sticky`,L=_?.get(P)??null??Mg(t.ancestorPaths,v,y),ne=t.kind===`directory`&&(b?.has(P)??!1),re=A(t,P),ie=jg(L,ne),ae=S&&w,R=re!=null||x||ae,oe=ae&&T===`always`,se=a.getPath()===P,z=se?a.getValue():``,ce=te||!se?null:Q(hg,{ref:D,ariaLabel:`Rename ${vg(t)}`,isFlattened:t.isFlattened,value:z,onBlur:()=>{a.commit()},onInput:e=>{a.setValue(e.currentTarget.value)}}),B=s_(t,k,{actionLaneEnabled:ae,customDecoration:re,decorationLaneEnabled:R,dragTargetFlattenedSegmentPath:l?.flattenedSegmentPath??null,gitDecoration:ie,gitLaneActive:x,renameInput:ce,showDecorativeActionAffordance:oe}),le={...Fh({ariaLabel:vg(t),domId:t.isFocused?r_(h,P,F):void 0,extraStyle:ee,features:{actionLaneEnabled:ae,contextMenuButtonVisibility:ae?T:null,contextMenuEnabled:S,contextMenuTriggerMode:S?C:null,gitLaneActive:x},isParked:F,itemHeight:g,mode:I,row:t,state:{containsGitChange:ne,effectiveGitStatus:L,isContextHovered:s===P,isDragTarget:l?.kind===`directory`&&l.directoryPath===P,isDragging:c?.has(P)===!0,isFocusRinged:t.isFocused&&o===P},targetPath:P}),key:n,onContextMenu:S||u?e=>{if(d()){e.preventDefault();return}S&&(e.preventDefault(),E&&(i.focusPath(P),j(t,P,{anchorRect:Jg(e.clientX,e.clientY),source:`right-click`})))}:void 0,onFocus:te?void 0:()=>{i.focusPath(P)},onKeyDown:te?void 0:N,ref:e=>{O(P,e)}};return!te&&se?Q(`div`,{...le,children:B}):Q(`button`,{...le,type:`button`,draggable:u&&!F,onDragEnd:u&&!F?p:void 0,onDragStart:u&&!F?e=>{f(e,t,P)}:void 0,onMouseDown:e=>{if(te){e.preventDefault();return}i.isSearchOpen()&&e.preventDefault()},onTouchStart:u&&!F?e=>{m(e,t,P)}:void 0,onClick:e=>{M(e,t,P,I)},children:B})}function l_(e,t,n){return t.end<t.start?[]:e.controller.getVisibleRows(t.start,t.end).filter(e=>!n.has(_g(e))).map((n,r)=>c_(e,n,t.start+r))}function u_({composition:e,controller:t,gitStatusByPath:n,ignoredGitDirectories:r,directoriesWithGitChanges:i,icons:a,instanceId:o,itemHeight:s=jl,overscan:c=10,renamingEnabled:l=!1,renderRowDecoration:u,searchBlurBehavior:d=`close`,searchEnabled:f=!1,searchFakeFocus:p=!1,slotHost:m,stickyFolders:h=!1,initialViewportHeight:g=420}){"use no memo";let _=$(null),v=$(null),y=$(!1),b=$(null),x=$(null),S=$(null),C=$(null),w=$(null),T=$(new Map),E=$(new Map),D=$(()=>{}),O=$(null),k=$(!1),A=$(null),j=$(null),M=$(!1),N=$(null),P=$(null),F=$(null),I=$(null),ee=$(null),te=$(null),L=$(null),ne=$(null),re=$(!1),ie=$(null),ae=$(null),R=$(null),oe=$(null),se=ig(()=>new Map,[]),[,z]=eg(0),[ce,B]=eg(null),[le,ue]=eg(null),[de,fe]=eg(null),[pe,me]=eg(null),[he,ge]=eg(0),[V,_e]=eg(null),ve=$(V);ve.current=V;let H=$(null),ye=$(null),U=$(null),be=$(null),xe=$(null),Se=$(!1),Ce=()=>{ye.current=null,U.current=null,be.current=null},we=(e,t)=>{ye.current=e,U.current=null,be.current=t==null?null:{path:e,scrollTop:t}},Te=(e,t)=>{ye.current=null,U.current={path:e,viewportOffset:t},be.current=null},Ee=$(d===`retain`&&t.isSearchOpen()),[De,Oe]=eg(p);ng(()=>{p||Oe(!1)},[p]);let ke=$(!1),Ae=ag(()=>{ke.current=!0,Oe(e=>e&&!1)},[]),[je,Me]=eg(()=>bg({controller:t,itemHeight:s,overscan:c,scrollTop:0,stickyFolders:h,viewportHeight:g})),[Ne,Pe]=eg(!1);ng(()=>{Pe(!0)},[]);let Fe=e?.contextMenu?.enabled===!0||e?.contextMenu?.render!=null||e?.contextMenu?.onOpen!=null||e?.contextMenu?.onClose!=null,Ie=e?.contextMenu?.triggerMode??(Fe?`right-click`:`both`),Le=Ie===`both`||Ie===`button`,Re=e?.contextMenu?.buttonVisibility??`when-needed`,ze=Ie===`both`||Ie===`right-click`;rg(()=>{let e=S.current;if(e==null)return;let t=e=>{if(!(e instanceof CustomEvent))return;let t=e.detail?.path??null;xe.current=t,ue(t),me(t==null?null:`pointer`)},n=e=>{e instanceof CustomEvent&&(Se.current=e.detail?.disabled===!0)};return e.addEventListener(`file-tree-debug-set-context-menu-trigger`,t),e.addEventListener(`file-tree-debug-set-scroll-suppression`,n),()=>{e.removeEventListener(`file-tree-debug-set-context-menu-trigger`,t),e.removeEventListener(`file-tree-debug-set-scroll-suppression`,n)}},[]);let Be=ag((e,t)=>{Xg(T.current,e,t)},[]),Ve=ag((e,t)=>{Xg(E.current,e,t)},[]),He=ag(e=>{x.current=e},[]),Ue=ag(e=>Zg(e,E.current,T.current),[]),We=n!=null||r!=null||i!=null,{resolveIcon:Ge}=ig(()=>hm(a),[a]),Ke=t[Pp](),qe=Ke.getPath(),Je=qe!=null,Ye=t.isSearchOpen(),Xe=t.getSearchValue(),W=t.getFocusedPath(),G=t.getFocusedIndex(),Ze=t.isDragAndDropEnabled(),Qe=t.getDragSession(),$e=ig(()=>Qe==null?null:new Set(Qe.draggedPaths),[Qe]),et=Qe?.target??null,tt=Qe?.primaryPath??null,nt=n_(o),{overlayHeight:rt,overlayRows:it,snapshot:at,visibleRows:ot}=je,st=at.physical.viewportHeight,ct=ig(()=>({end:at.window.endIndex,start:at.window.startIndex}),[at.window.endIndex,at.window.startIndex]),lt=it,ut=at.sticky.rows,dt=at.physical.totalHeight,ft=at.sticky.height,pt=ig(()=>new Set(ut.map(e=>_g(e.row))),[ut]),mt=G>=0&&G>=ct.start&&G<=ct.end,ht=ag((e,t)=>u?.({item:t_(e,t),row:e})??null,[u]),gt=ag(e=>pg(e==null?null:T.current.get(e)??null)?!0:pg(S.current),[]),_t=ag(e=>{gt(t.focusNearestPath(e))},[t,gt]),vt=$(_t);vt.current=_t;let yt=$(!0),bt=$(()=>{}),xt=ag((t=!0)=>{let n=ve.current;n!=null&&(yt.current=yt.current&&t,_e(null),e?.contextMenu?.onClose?.(),yt.current&&_t(n.path))},[e?.contextMenu,_t]);bt.current=xt;let St=ag(e=>{let t=e==null?null:Yg(S.current,e);fe(e=>e===t?e:t)},[]),Ct=ag((e,n,r)=>{let i=t.getItem(n);if(i==null)return;let a=Ue(n);if(a?.dataset.fileTreeStickyRow===`true`){let e=C.current;we(n,e?.scrollTop??null),k.current=!0,B(e=>e===n?e:n)}i.focus(),St(a),yt.current=!0,_e({anchorRect:r?.anchorRect??null,item:t_(e,n),path:n,source:r?.source??`keyboard`})},[t,Ue,St]),wt=ag(e=>{if(l){if(t.isSearchOpen()){let e=C.current,t=Ig(e,st);N.current=G<0||e==null?null:Math.max(0,Math.min(G*s-e.scrollTop,Math.max(0,t-s))),M.current=!0}t.startRenaming(e)!==!1&&(me(`focus`),z(e=>e+1))}},[t,G,s,l,st]),Tt=ag((e,{restoreTreeFocus:n=!0,targetOffset:r=`live-overlay`}={})=>{let i=C.current;if(i==null)return!1;t.focusPath(e);let a=t.getFocusedIndex();if(a<0)return!1;let o=t.getVisibleRows(a,a)[0]??null;if(o==null)return!1;let l=Ig(i,st),u=t.getVisibleCount()*s,d=r===`sticky-parents`?o.ancestorPaths.length*s:bg({controller:t,itemHeight:s,overscan:c,scrollTop:i.scrollTop,stickyFolders:h,viewportHeight:l}).snapshot.sticky.height;return k.current=!0,Bg(i,a,s,l,u,d),D.current(),H.current=n?e:null,!0},[t,s,c,st,h]),Et=()=>y.current===!0||oe.current!=null||re.current===!0,Dt=e=>typeof window.requestAnimationFrame==`function`?window.requestAnimationFrame(()=>{e()}):window.setTimeout(e,16),Ot=e=>{if(e!=null){if(typeof window.cancelAnimationFrame==`function`){window.cancelAnimationFrame(e);return}window.clearTimeout(e)}},kt=()=>{I.current!=null&&(clearTimeout(I.current),I.current=null),F.current=null},At=()=>{te.current?.remove(),te.current=null},jt=()=>{Ot(P.current),P.current=null,ee.current=null},Mt=e=>{let t=S.current?.getRootNode();if(t instanceof ShadowRoot){t.append(e);return}document.body.append(e)},Nt=()=>{ne.current?.(),ne.current=null,oe.current!=null&&(clearTimeout(oe.current),oe.current=null),re.current=!1,ie.current=null,R.current=null,ae.current!=null&&(ae.current.setAttribute(`draggable`,`true`),ae.current.style.removeProperty(`touch-action`),ae.current=null),At(),kt(),jt(),L.current=null},Pt=(e,n)=>{let r=S.current?.getRootNode(),i=Dg(Tg(r instanceof ShadowRoot?r:document,e,n));return t.setDragTarget(i),t.getDragSession()?.target??null},Ft=e=>{let n=t.getDragAndDropConfig()?.openOnDropDelay??800;if(e==null||e.kind!==`directory`||e.directoryPath==null||n<=0){kt();return}let r=t.getItem(e.directoryPath),i=Ng(r)?r:null;if(i==null||i.isExpanded()){kt();return}let a=`${e.directoryPath}::${e.flattenedSegmentPath??``}`;F.current!==a&&(kt(),F.current=a,I.current=setTimeout(()=>{let n=t.getDragSession()?.target;n?.kind!==`directory`||n.directoryPath!==e.directoryPath||n.flattenedSegmentPath!==e.flattenedSegmentPath||i.expand()},n))},It=()=>{P.current=null;let e=ee.current,n=C.current;if(e==null||n==null||t.getDragSession()==null)return;let r=n.getBoundingClientRect(),i=Ag(e.clientY,r);if(i===0)return;let a=Math.max(0,n.scrollHeight-n.clientHeight),o=Math.max(0,Math.min(a,n.scrollTop+i));o!==n.scrollTop&&(n.scrollTop=o,D.current()),Ft(Pt(e.clientX,e.clientY)),P.current=Dt(It)},Lt=(e,t)=>{ee.current={clientX:e,clientY:t},P.current??=Dt(It)},Rt=(e,n,r)=>{let i=e.currentTarget;if(i!=null){if(Nt(),At(),kt(),jt(),t.startDrag(r)===!1){e.preventDefault();return}if(L.current=n,e.dataTransfer!=null&&(e.dataTransfer.effectAllowed=`move`,e.dataTransfer.dropEffect=`move`,e.dataTransfer.setData(`text/plain`,r),kg())){let t=Og(i),n=i.getBoundingClientRect();Object.assign(t.style,{height:`${n.height}px`,opacity:`0.85`,transform:`translate3d(-9999px, 0px, 0)`,width:`${n.width}px`}),Mt(t),te.current=t,e.dataTransfer.setDragImage(t,Math.max(0,e.clientX-n.left),Math.max(0,e.clientY-n.top))}}},zt=()=>{At(),kt(),jt(),L.current=null,t.cancelDrag()},Bt=(e,n,r)=>{if(oe.current!=null||re.current)return;let i=e.touches[0],a=e.currentTarget;if(i==null||a==null)return;R.current={clientX:i.clientX,clientY:i.clientY},ae.current=a,a.setAttribute(`draggable`,`false`);let o=(e={})=>{let t=e.restoreNativeDraggable??!re.current;oe.current!=null&&(clearTimeout(oe.current),oe.current=null),document.removeEventListener(`touchmove`,s),document.removeEventListener(`touchend`,c),document.removeEventListener(`touchcancel`,c),ne.current===o&&(ne.current=null),t&&(a.setAttribute(`draggable`,`true`),ae.current===a&&(ae.current=null),R.current=null)},s=e=>{let t=e.touches[0],n=R.current;if(t==null||n==null)return;let r=t.clientX-n.clientX,i=t.clientY-n.clientY;r*r+i*i<=Sg*Sg||o()},c=()=>{o()};document.addEventListener(`touchmove`,s,{passive:!0}),document.addEventListener(`touchend`,c),document.addEventListener(`touchcancel`,c),ne.current=o,oe.current=setTimeout(()=>{if(o({restoreNativeDraggable:!1}),t.startDrag(r)===!1){a.setAttribute(`draggable`,`true`),ae.current===a&&(ae.current=null),R.current=null;return}re.current=!0,ae.current=a,a.setAttribute(`draggable`,`false`),a.style.setProperty(`touch-action`,`none`),L.current=n;let e=a.getBoundingClientRect(),s=Og(a);Object.assign(s.style,{height:`${e.height}px`,opacity:`0.85`,transform:`translate3d(${e.left}px, ${e.top}px, 0)`,width:`${e.width}px`}),Mt(s),te.current=s,ie.current={x:i.clientX-e.left,y:i.clientY-e.top};let c=e=>{let t=e.touches[0];if(t==null)return;e.preventDefault();let n=ie.current;n!=null&&te.current!=null&&(te.current.style.transform=`translate3d(${t.clientX-n.x}px, ${t.clientY-n.y}px, 0)`),Ft(Pt(t.clientX,t.clientY)),Lt(t.clientX,t.clientY)},l=e=>{let n=e.changedTouches[0];n!=null&&Pt(n.clientX,n.clientY),t.completeDrag(),Nt()},u=()=>{t.cancelDrag(),Nt()};ne.current=()=>{document.removeEventListener(`touchmove`,c),document.removeEventListener(`touchend`,l),document.removeEventListener(`touchcancel`,u)},document.addEventListener(`touchmove`,c,{passive:!1}),document.addEventListener(`touchend`,l),document.addEventListener(`touchcancel`,u)},xg)},Vt=e=>{if(V!=null){if(e.key===`Escape`){xt(),e.preventDefault(),e.stopPropagation();return}Gg.has(e.key)&&(e.preventDefault(),e.stopPropagation());return}if(Ke.isActive()){if(e.key===`Escape`)Ke.cancel();else if(e.key===`Enter`)Ke.commit();else return;me(`focus`),z(e=>e+1),e.preventDefault(),e.stopPropagation();return}if(l&&e.key===`F2`){wt(W??void 0),e.preventDefault(),e.stopPropagation();return}if(Ye){if(e.key===`Escape`)M.current=!1,N.current=null,t.closeSearch();else if(e.key===`Enter`){let e=t.getFocusedPath();e!=null&&t.selectOnlyPath(e);let n=C.current,r=Ig(n,st);N.current=G<0||n==null?null:Math.max(0,Math.min(G*s-n.scrollTop,Math.max(0,r-s))),M.current=!0,t.closeSearch()}else if(e.key===`ArrowDown`)t.focusNextSearchMatch();else if(e.key===`ArrowUp`)t.focusPreviousSearchMatch();else return;me(`focus`),z(e=>e+1),e.preventDefault(),e.stopPropagation();return}if(f&&Fg(e)){t.openSearch(e.key),z(e=>e+1),e.preventDefault(),e.stopPropagation();return}let n=Fe&&Ug(e),r=Wg(e,Fe),i=r&&S.current!=null?mg(S.current):null,a=r?new Set(Qg(S.current)):new Set,o=i?.dataset.fileTreeStickyPath??null,c=i?.dataset.fileTreeStickyRow===`true`&&o!=null;if(c&&o!==W&&a.has(o)){let e=C.current;we(o,e?.scrollTop??null),t.focusPath(o)}let u=t.getFocusedPath(),d=t.getFocusedIndex(),p=t.getFocusedItem();if(p==null)return;let m=Ng(p)?p:null,h=u!=null&&(pt.has(u)||c&&o===u&&a.has(u)),g=e.key===`ArrowDown`||e.key===`ArrowUp`||e.key===`ArrowRight`&&m!=null&&m.isExpanded(),_=e.key===`ArrowLeft`&&h&&m!=null&&m.isExpanded(),v=C.current,y=!0;if(e.shiftKey&&e.key===`ArrowDown`)t.extendSelectionFromFocused(1);else if(e.shiftKey&&e.key===`ArrowUp`)t.extendSelectionFromFocused(-1);else if(n&&u!=null&&d>=0){let e=t.getVisibleRows(d,d)[0]??null,n=Zg(u,E.current,T.current);e==null||n==null?y=!1:Ct(e,u)}else if((e.ctrlKey||e.metaKey)&&Pg(e))t.toggleFocusedSelection();else if((e.ctrlKey||e.metaKey)&&e.key.toLowerCase()===`a`)t.selectAllVisiblePaths();else switch(e.key){case`ArrowDown`:t.focusNextItem();break;case`ArrowUp`:t.focusPreviousItem();break;case`ArrowRight`:m==null||m.isExpanded()?t.focusNextItem():m.expand();break;case`ArrowLeft`:m!=null&&m.isExpanded()?m.collapse():t.focusParentItem();break;case`Home`:t.focusFirstItem();break;case`End`:t.focusLastItem();break;default:y=!1}if(!y)return;me(`focus`);let b=t.getFocusedPath(),x=b!=null&&(pt.has(b)||a.has(b)),w=g&&b!==u,D=n&&c&&o===u&&b===u;if((h||D)&&b!=null&&(w&&x||D))we(b,v?.scrollTop??null),k.current=!0,B(e=>e===b?e:b);else{let t=e.key===`ArrowUp`&&h&&b!==u;b!=null&&(t||_&&b===u)?(Te(b,e_(S.current,v,i,u,s,ft,st)),k.current=!0,B(e=>e===b?e:b)):Ce()}z(e=>e+1),e.preventDefault(),e.stopPropagation()};rg(()=>{if(!(!f||!Ye)){if(Ee.current){Ee.current=!1;return}pg(w.current)}},[Ye,f]),rg(()=>{let e=x.current;switch(Ph({hasRenderedInput:e!=null,previousRenamingPath:j.current,renamingPath:qe})){case`reset`:j.current=null;return;case`reveal-canonical`:qe!=null&&Tt(qe,{restoreTreeFocus:!1,targetOffset:`live-overlay`});return;case`ignore`:return;case`focus-input`:e!=null&&(H.current=null,j.current=qe,pg(e),e.select());return}},[ct.end,ct.start,qe,Tt,pt]),rg(()=>{let e=S.current;if(e==null)return;let t=null,n=()=>{t!=null&&(clearTimeout(t),t=null)},r=()=>{let t=mg(e)?.dataset.itemPath??null;B(e=>e===t?e:t)},i=()=>{n(),k.current=!0,r()},a=i=>{let a=i.relatedTarget;if(a==null){n(),t=setTimeout(()=>{if(t=null,mg(e)!=null){r();return}k.current=!1,B(null)},0);return}if(!(a instanceof Node)||!e.contains(a)){n(),k.current=!1,B(null);return}let o=a instanceof HTMLElement?a.dataset.itemPath??null:null;B(e=>e===o?e:o)};return e.addEventListener(`focusin`,i),e.addEventListener(`focusout`,a),()=>{n(),e.removeEventListener(`focusin`,i),e.removeEventListener(`focusout`,a)}},[]),rg(()=>{let e=S.current;e!=null&&(at.physical.scrollTop<=0?e.dataset.scrollAtTop=`true`:delete e.dataset.scrollAtTop)},[at.physical.scrollTop]),rg(()=>{let e=null,n=C.current,r=b.current,i=S.current;if(n==null)return;O.current=Ig(n,g);let a=()=>{let e=t.getVisibleCount(),r=Lg(O.current,g),i=Math.max(0,e*s-r);n.scrollTop>i&&(n.scrollTop=i),Me(bg({controller:t,itemHeight:s,overscan:c,scrollTop:Math.min(n.scrollTop,i),stickyFolders:h,viewportHeight:r}))};D.current=a;let o=!1,l=t.subscribe(()=>{o?z(e=>e+1):o=!0,a()}),u=()=>{Se.current!==!0&&(r!=null&&(r.dataset.isScrolling??=``),i!=null&&(i.dataset.isScrolling??=``),y.current=!0,e!=null&&clearTimeout(e),e=setTimeout(()=>{r!=null&&delete r.dataset.isScrolling,i!=null&&delete i.dataset.isScrolling,y.current=!1,ge(e=>e+1),e=null},50))},d=null,f=()=>{i!=null&&delete i.dataset.overlayReveal,d!=null&&(clearTimeout(d),d=null)},p=()=>{i==null||Se.current===!0||n.scrollTop>0||(i.dataset.overlayReveal=`true`,d!=null&&clearTimeout(d),d=setTimeout(()=>{f()},200))},m=()=>{if(a(),n.scrollTop>0&&f(),ve.current!=null&&y.current&&bt.current(),Se.current===!0){y.current=!1;return}ue(e=>e==null?e:null),u()},_=()=>{u(),p()},v=new Set([`ArrowUp`,`ArrowDown`,`ArrowLeft`,`ArrowRight`,`PageUp`,`PageDown`,`Home`,`End`,` `,`Spacebar`]),x=e=>{v.has(e.key)&&_()};n.addEventListener(`scroll`,m,{passive:!0}),n.addEventListener(`wheel`,_,{passive:!0}),n.addEventListener(`touchmove`,_,{passive:!0}),n.addEventListener(`keydown`,x);let w=typeof ResizeObserver<`u`?new ResizeObserver(e=>{O.current=(e[0]==null?null:Rg(e[0]))??Ig(n,g),a()}):null;return w?.observe(n),()=>{D.current=()=>{},l(),n.removeEventListener(`scroll`,m),n.removeEventListener(`wheel`,_),n.removeEventListener(`touchmove`,_),n.removeEventListener(`keydown`,x),e!=null&&clearTimeout(e),d!=null&&clearTimeout(d),r!=null&&delete r.dataset.isScrolling,i!=null&&(delete i.dataset.isScrolling,delete i.dataset.overlayReveal),y.current=!1,O.current=null,w?.disconnect()}},[t,g,s,c,h]),rg(()=>{Fe||V==null||xt(!1)},[xt,Fe,V]);let Ht=ig(()=>V==null?null:`${V.path}::${V.source}`,[V]);rg(()=>{if(Ht==null){m?.clearSlotContent(cc);return}let t=ve.current;if(t==null)return;let n=v.current??_.current;if(n==null)return;let r={anchorElement:n,anchorRect:t.anchorRect??qg(n.getBoundingClientRect()),close:e=>{bt.current(e?.restoreFocus??!0)},restoreFocus:()=>{yt.current&&vt.current(ve.current?.path??null)}},i=e?.contextMenu?.render?.(t.item,r)??null;return m?.setSlotContent(cc,i),e?.contextMenu?.onOpen?.(t.item,r),o_(i),queueMicrotask(()=>{i==null||!i.isConnected||document.activeElement===i&&o_(i)}),()=>{m?.clearSlotContent(cc)}},[Ht,e?.contextMenu,m]),rg(()=>{V!=null&&t.getItem(V.path)==null&&xt()},[xt,V,t]),rg(()=>{if(V==null)return;let e=S.current?.getRootNode(),t=e instanceof ShadowRoot?e.host:S.current,n=e=>{let n=e.target;n instanceof Node&&(Kg(e)||_.current?.contains(n)!==!0&&t?.contains(n)!==!0&&xt())},r=e=>{e.key===`Escape`&&(e.preventDefault(),e.stopPropagation(),xt())};return document.addEventListener(`mousedown`,n,!0),document.addEventListener(`keydown`,r,!0),()=>{document.removeEventListener(`mousedown`,n,!0),document.removeEventListener(`keydown`,r,!0)}},[xt,V]),rg(()=>{let e=C.current,t=S.current;if(e==null||t==null){A.current=W;return}let n=W==null?null:T.current.get(W)??null,r=mg(t),i=r?.dataset.itemPath??null,a=Je&&x.current===r,o=f&&w.current===r,c=M.current&&!Ye,l=N.current??0,u=H.current,d=ye.current,p=U.current,m=be.current,h=r!=null,g=k.current||h,_=A.current!==W,v=d!=null&&d===W&&W!=null,y=c&&Bg(e,G,s,st,dt,l),b=u!=null&&u===W&&Bg(e,G,s,st,dt,ft),E=p!=null&&p.path===W&&Bg(e,G,s,st,dt,p.viewportOffset),O=m!=null&&m.path===W&&e.scrollTop!==m.scrollTop;if(O&&(e.scrollTop=m.scrollTop),(O||b||E||y||g&&_&&u!==W&&!v&&zg(e,G,s,st,ft))&&D.current(),!g){A.current=W;return}if(a){A.current=W;return}if(o&&!c){A.current=W;return}if(n==null){c&&G>=0&&(Bg(e,G,s,st,dt,l),D.current()),A.current=W;return}(_||c||u===W||d===W||p?.path===W||m?.path===W||i==null||i!==W)&&(pg(n),u===W&&(H.current=null),d===W&&(ye.current=null),p?.path===W&&(U.current=null),m?.path===W&&(be.current=null),M.current=!1,N.current=null),A.current=W},[t,G,W,mt,s,Je,Ye,ct,st,f,ft,dt,ot]);let Ut=G>=0&&G>=at.visible.startIndex&&G<=at.visible.endIndex,Wt=W!=null&<.some(e=>_g(e.row)===W),Gt=Ut||Wt,Kt=Le&&k.current===!0&&Gt?W:null,qt=pe===`pointer`?le:null,Jt=V?.path??xe.current??qt??Kt??le,Yt=V?.source===`right-click`;rg(()=>{y.current&&V==null||St(Ue(Jt))},[V,Ue,ct,st,he,lt,Jt,St,ot]);let Xt=ag(e=>{if(y.current||Kg(e))return;let t=e.target;if(!(t instanceof HTMLElement)||t.closest?.(`[data-type="context-menu-trigger"]`)!=null)return;let n=t.closest?.(`[data-file-tree-sticky-row="true"]`),r=t.closest?.(`[data-type="item"]`),i=n instanceof HTMLElement?n.dataset.fileTreeStickyPath??null:r instanceof HTMLElement?r.dataset.itemPath??null:null;i!=null&&me(e=>e===`pointer`?e:`pointer`),ue(e=>e===i?e:i)},[]),Zt=ag(()=>{ue(null)},[]);rg(()=>{if(!Ze)return;let e=()=>{Nt(),t.cancelDrag()};return window.addEventListener(`dragend`,e),()=>{window.removeEventListener(`dragend`,e),Nt(),t.cancelDrag()}},[t,Ze]);let Qt=e=>{if(!Ze||t.getDragSession()==null||re.current)return;let n=Dg(e.target instanceof HTMLElement?e.target:null);t.setDragTarget(n),Ft(t.getDragSession()?.target??null),Lt(e.clientX,e.clientY),e.dataTransfer!=null&&(e.dataTransfer.dropEffect=`move`),e.preventDefault()},$t=e=>{if(!Ze||t.getDragSession()==null||re.current)return;let n=e.relatedTarget;n instanceof Node&&S.current?.contains(n)===!0||(kt(),jt(),t.setDragTarget(null))},en=e=>{!Ze||t.getDragSession()==null||re.current||(e.preventDefault(),Pt(e.clientX,e.clientY),t.completeDrag(),At(),kt(),jt(),L.current=null)},tn=at.window.height,nn=at.window.offsetTop,rn=Math.min(0,st-tn-ft),an=ce===W||M.current,on=W!=null&&an&&!mt&&G>=0?ot[G]??t.getVisibleRows(G,G)[0]??null:null,sn=on==null?null:Vg(G,s,ct,tn),cn=L.current,ln=tt!=null&&cn!=null&&cn.path===tt&&cn.index>=ct.start&&cn.index<=ct.end,un=tt!=null&&cn!=null&&cn.path===tt&&!ln&&cn.path!==on?.path?cn:null,dn=un==null?null:Vg(un.index,s,ct,tn),fn=Hg((G>=0?ot[G]??t.getVisibleRows(G,G)[0]??null:null)?.ancestorPaths.at(-1)??null),pn=Ye&&W!=null?r_(o,W,!mt):void 0,mn=V?.path??(Ye?W:ce),hn=V?.path??le,gn=Ue(Jt),_n=Fe&&Le&&!Yt&&!Je&&gn!=null&&de!=null&&Jt!=null,vn=Fe&&(_n||V!=null),yn=V?.anchorRect,bn=yn==null&&gn!=null&&de!=null&&(V!=null||_n)?de:null,xn=yn==null?bn==null?void 0:{top:`${bn}px`}:{left:`${yn.left}px`,position:`fixed`,right:`auto`,top:`${yn.top}px`},Sn=Yt?{opacity:`0`}:void 0,Cn=ag((e,n,r,i)=>{let a=t.getItem(r),o=Ih({event:{ctrlKey:e.ctrlKey,metaKey:e.metaKey,shiftKey:e.shiftKey},isDirectory:n.kind===`directory`,isSearchOpen:t.isSearchOpen(),mode:i});switch(o.selection.kind){case`range`:t.selectPathRange(r,o.selection.additive);break;case`toggle`:t.togglePathSelectionFromInput(r);break;case`single`:t.selectOnlyPath(r);break}let s=e.currentTarget instanceof HTMLElement?e.currentTarget:null,c=n.index>=at.visible.startIndex&&n.index<=at.visible.endIndex,l=i===`flow`&&c&&s!=null&&s.dataset.itemParked!==`true`;a?.focus(),l&&(k.current=!0,B(e=>e===r?e:r),me(`focus`)),o.toggleDirectory&&Ng(a)&&a.toggle(),o.closeSearch&&t.closeSearch(),o.revealCanonical&&Tt(r,{targetOffset:`sticky-parents`})},[t,at.visible.endIndex,at.visible.startIndex,Tt]),wn=()=>{if(y.current||!Le||Jt==null||gn==null)return;let e=t.getItem(Jt);e!=null&&(St(gn),yt.current=!0,_e({anchorRect:null,item:{kind:e.isDirectory()?`directory`:`file`,name:gn.getAttribute(`aria-label`)??Jt,path:e.getPath()},path:e.getPath(),source:`button`}))},Tn={contextHoverPath:hn,contextMenuButtonTriggerEnabled:Le,contextMenuButtonVisibility:Re,contextMenuEnabled:Fe,contextMenuRightClickEnabled:ze,contextMenuTriggerMode:Ie,controller:t,directoriesWithGitChanges:i,dragAndDropEnabled:Ze,draggedPathSet:$e,dragTarget:et,gitLaneActive:We,gitStatusByPath:n,handleRowDragEnd:zt,handleRowDragStart:Rt,handleRowTouchStart:Bt,ignoredGitDirectories:r,ignoredInheritanceCache:se,instanceId:o,itemHeight:s,onKeyDown:Vt,onRowClick:Cn,openContextMenuForRow:Ct,registerButton:Be,registerRenameInput:He,renameView:Ke,renderDecorationForRow:ht,resolveIcon:Ge,shouldSuppressContextMenu:Et,visualFocusPath:mn},En={...Tn,registerButton:Ve};return Q(`div`,{ref:S,id:nt,"data-file-tree-context-menu-button-visibility":Fe&&Le?Re:void 0,"data-file-tree-context-menu-trigger-mode":Fe?Ie:void 0,"data-file-tree-has-context-menu-action-lane":Fe&&Le?`true`:void 0,"data-file-tree-has-git-lane":We?`true`:void 0,"data-file-tree-virtualized-root":`true`,onDragLeave:Ze?$t:void 0,onDragOver:Ze?Qt:void 0,onDrop:Ze?en:void 0,onKeyDown:Vt,onPointerLeave:Fe?Zt:void 0,onPointerOver:Fe?Xt:void 0,role:`tree`,tabIndex:-1,style:{outline:`none`,position:`relative`},children:[Q(`style`,{"data-file-tree-guide-style":`true`,dangerouslySetInnerHTML:{__html:fn}}),Q(`slot`,{name:sc,"data-type":`header-slot`}),f?Q(`div`,{"data-file-tree-search-container":!0,"data-open":Ye?`true`:`false`,children:Q(`input`,{ref:w,"aria-activedescendant":pn,"aria-controls":nt,placeholder:`Search…`,"data-file-tree-search-input":!0,"data-file-tree-search-input-fake-focus":De?`true`:void 0,value:Xe,onBlur:()=>{d===`retain`&&!ke.current||t.closeSearch()},onFocus:Ae,onPointerDown:Ae,onInput:e=>{Ae();let n=e.currentTarget;t.setSearch(n.value)}})}):null,Q(`div`,{ref:C,"data-file-tree-virtualized-scroll":`true`,children:[h&&Ne&<.length>0?Q(`div`,{"aria-hidden":`true`,"data-file-tree-sticky-overlay":`true`,children:Q(`div`,{"data-file-tree-sticky-overlay-content":`true`,style:{height:`${rt}px`},children:lt.map((e,t)=>c_(En,e.row,`sticky:${_g(e.row)}`,{mode:`sticky`,style:{left:`0`,position:`absolute`,right:`0`,top:`${e.top}px`,zIndex:`${lt.length-t}`}}))})}):null,Q(`div`,{ref:b,"data-file-tree-virtualized-list":`true`,style:{height:`${dt}px`},children:[Q(`div`,{"data-file-tree-virtualized-sticky-offset":`true`,"aria-hidden":`true`,style:{height:`${nn}px`}}),Q(`div`,{"data-file-tree-virtualized-sticky":`true`,style:{height:`${tn}px`,top:`${rn}px`,bottom:`${rn}px`},children:[l_(Tn,ct,pt),on!=null&&sn!=null?c_(Tn,on,`parked:${on.path}`,{isParked:!0,style:{left:`0`,opacity:`0`,pointerEvents:tt===on.path?`none`:void 0,position:`absolute`,right:`0`,top:`${sn}px`}}):null,un!=null&&dn!=null?c_(Tn,un,`parked-drag:${un.path}`,{isParked:!0,style:{left:`0`,opacity:`0`,pointerEvents:`none`,position:`absolute`,right:`0`,top:`${dn}px`}}):null]})]})]}),Fe?Q(`div`,{ref:_,"data-type":`context-menu-anchor`,"data-visible":vn?`true`:`false`,style:xn,children:[Q(`button`,{ref:v,type:`button`,"data-type":lc,"aria-label":`Options`,"aria-haspopup":`menu`,"aria-expanded":V==null?`false`:`true`,"data-visible":_n?`true`:`false`,onMouseDown:e=>{e.preventDefault()},onClick:e=>{if(e.preventDefault(),e.stopPropagation(),V!=null){xt();return}wn()},tabIndex:-1,style:Sn,children:Q(oh,{...Ge(`file-tree-icon-ellipsis`)})}),V==null?null:Q(`slot`,{name:cc})]}):null,V==null?null:Q(`div`,{"data-type":`context-menu-wash`,"aria-hidden":`true`,onMouseDownCapture:e=>{e.preventDefault(),xt()},onTouchStartCapture:e=>{e.preventDefault(),e.stopPropagation(),xt()},onTouchMoveCapture:e=>{e.preventDefault(),e.stopPropagation()},onWheelCapture:e=>{e.preventDefault(),e.stopPropagation()}})]})}var d_={hydrateRoot:(e,t)=>{th(jm(u_,t),e)},renderRoot:(e,t)=>{eh(jm(u_,t),e)},unmountRoot:e=>{eh(null,e)}};function f_(e,t){d_.renderRoot(e,t)}function p_(e,t){d_.hydrateRoot(e,t)}function m_(e){d_.unmountRoot(e)}var h_=class{#e=new Map;#t=null;clearAll(){for(let e of this.#e.values())e.remove();this.#e.clear()}clearSlotContent(e){let t=this.#n(e);t!=null&&(t.remove(),this.#e.delete(e))}setHost(e){if(this.#t=e,e!=null){this.#i(e);for(let[e,t]of this.#e)this.#r(e,t)}}setSlotContent(e,t){let n=this.#n(e);if(n===t){t!=null&&(this.#e.set(e,t),this.#r(e,t));return}if(n?.remove(),t==null){this.#e.delete(e);return}this.#e.set(e,t),this.#r(e,t)}setSlotHtml(e,t){let n=t?.trim()??``;if(n.length===0){this.setSlotContent(e,null);return}let r=this.#n(e);if(r!=null&&r.innerHTML===n){this.#e.set(e,r),this.#r(e,r);return}let i=document.createElement(`div`);i.innerHTML=n,this.setSlotContent(e,i)}#n(e){let t=this.#e.get(e)??null;if(t!=null)return t;let n=this.#t;if(n==null)return null;for(let t of Array.from(n.children))if(t instanceof HTMLElement&&t.dataset.fileTreeManagedSlot===e)return t;return null}#r(e,t){t.slot=e,t.dataset.fileTreeManagedSlot=e,this.#t!=null&&t.parentNode!==this.#t&&this.#t.appendChild(t)}#i(e){for(let t of Array.from(e.children)){if(!(t instanceof HTMLElement))continue;let e=t.dataset.fileTreeManagedSlot;e==null||this.#e.has(e)||this.#e.set(e,t)}}},g_=`__c`,__=`__k`,v_=`__d`,y_=`__s`,b_=/[\s\n\\/='"\0<>]/,x_=/^(xlink|xmlns|xml)([A-Z])/,S_=/^(?:accessK|auto[A-Z]|cell|ch|col|cont|cross|dateT|encT|form[A-Z]|frame|hrefL|inputM|maxL|minL|noV|playsI|popoverT|readO|rowS|src[A-Z]|tabI|useM|item[A-Z])/,C_=/^ac|^ali|arabic|basel|cap|clipPath$|clipRule$|color|dominant|enable|fill|flood|font|glyph[^R]|horiz|image|letter|lighting|marker[^WUH]|overline|panose|pointe|paint|rendering|shape|stop|strikethrough|stroke|text[^L]|transform|underline|unicode|units|^v[^i]|^w|^xH/,w_=new Set([`draggable`,`spellcheck`]);function T_(e){e.__g===void 0?e[v_]=!0:e.__g|=8}function E_(e){e.__g===void 0?e[v_]=!1:e.__g&=-9}function D_(e){return e.__g===void 0?!0===e[v_]:!!(8&e.__g)}var O_=/["&<]/;function k_(e){if(e.length===0||!1===O_.test(e))return e;for(var t=0,n=0,r=``,i=``;n<e.length;n++){switch(e.charCodeAt(n)){case 34:i=`"`;break;case 38:i=`&`;break;case 60:i=`<`;break;default:continue}n!==t&&(r+=e.slice(t,n)),r+=i,t=n+1}return n!==t&&(r+=e.slice(t,n)),r}var A_={},j_=new Set(`animation-iteration-count.border-image-outset.border-image-slice.border-image-width.box-flex.box-flex-group.box-ordinal-group.column-count.fill-opacity.flex.flex-grow.flex-negative.flex-order.flex-positive.flex-shrink.flood-opacity.font-weight.grid-column.grid-row.line-clamp.line-height.opacity.order.orphans.stop-opacity.stroke-dasharray.stroke-dashoffset.stroke-miterlimit.stroke-opacity.stroke-width.tab-size.widows.z-index.zoom`.split(`.`)),M_=/[A-Z]/g;function N_(e){var t=``;for(var n in e){var r=e[n];if(r!=null&&r!==``){var i=n[0]==`-`?n:A_[n]||(A_[n]=n.replace(M_,`-$&`).toLowerCase()),a=`;`;typeof r!=`number`||i.startsWith(`--`)||j_.has(i)||(a=`px;`),t=t+i+`:`+r+a}}return t||void 0}function P_(){this.__d=!0}function F_(e,t){return{__v:e,context:t,props:e.props,setState:P_,forceUpdate:P_,__d:!0,__h:[]}}function I_(e,t,n){if(!e.s){if(n instanceof L_){if(!n.s)return void(n.o=I_.bind(null,e,t));1&t&&(t=n.s),n=n.v}if(n&&n.then)return void n.then(I_.bind(null,e,t),I_.bind(null,e,2));e.s=t,e.v=n;let r=e.o;r&&r(e)}}var L_=function(){function e(){}return e.prototype.then=function(t,n){var r=new e,i=this.s;if(i){var a=1&i?t:n;if(a){try{I_(r,1,a(this.v))}catch(e){I_(r,2,e)}return r}return this}return this.o=function(e){try{var i=e.v;1&e.s?I_(r,1,t?t(i):i):n?I_(r,1,n(i)):I_(r,2,i)}catch(e){I_(r,2,e)}},r},e}(),R_,z_,B_,V_,H_={},U_=Array.isArray,W_=Object.assign,G_=``,K_=`<!--$s-->`,q_=`<!--/$s-->`;function J_(e,t){var n,r=e.type,i=!0;return e[g_]?(i=!1,(n=e[g_]).state=n[y_]):n=new r(e.props,t),e[g_]=n,n.__v=e,n.props=e.props,n.context=t,T_(n),n.state??=H_,n[y_]??(n[y_]=n.state),r.getDerivedStateFromProps?n.state=W_({},n.state,r.getDerivedStateFromProps(n.props,n.state)):i&&n.componentWillMount?(n.componentWillMount(),n.state=n[y_]===n.state?n.state:n[y_]):!i&&n.componentWillUpdate&&n.componentWillUpdate(),B_&&B_(e),n.render(n.props,n.state,t)}function Y_(e,t,n,r,i,a,o){if(e==null||!0===e||!1===e||e===G_)return G_;var s=typeof e;if(s!=`object`)return s==`function`?G_:s==`string`?k_(e):e+G_;if(U_(e)){var c,l=G_;i[__]=e;for(var u=e.length,d=0;d<u;d++){var f=e[d];if(f!=null&&typeof f!=`boolean`){var p,m=Y_(f,t,n,r,i,a,o);typeof m==`string`?l+=m:(c||=Array(u),l&&c.push(l),l=G_,U_(m)?(p=c).push.apply(p,m):c.push(m))}}return c?(l&&c.push(l),c):l}if(e.constructor!==void 0)return G_;e.__=i,R_&&R_(e);var h=e.type,g=e.props;if(typeof h==`function`){var _,v,y,b=t;if(h===Nm){if(`tpl`in g){for(var x=G_,S=0;S<g.tpl.length;S++)if(x+=g.tpl[S],g.exprs&&S<g.exprs.length){var C=g.exprs[S];if(C==null)continue;typeof C!=`object`||C.constructor!==void 0&&!U_(C)?x+=C:x+=Y_(C,t,n,r,e,a,o)}return x}if(`UNSTABLE_comment`in g)return`<!--`+k_(g.UNSTABLE_comment)+`-->`;v=g.children}else{if((_=h.contextType)!=null){var w=t[_.__c];b=w?w.props.value:_.__}var T=h.prototype&&typeof h.prototype.render==`function`;if(T)v=J_(e,b),y=e[g_];else{e[g_]=y=F_(e,b);for(var E=0;D_(y)&&E++<25;){E_(y),B_&&B_(e);try{v=h.call(y,g,b)}catch(t){throw a&&t&&typeof t.then==`function`&&(e._suspended=!0),t}}T_(y)}if(y.getChildContext!=null&&(t=W_({},t,y.getChildContext())),T&&Z.errorBoundaries&&(h.getDerivedStateFromError||y.componentDidCatch)){v=v!=null&&v.type===Nm&&v.key==null&&v.props.tpl==null?v.props.children:v;try{return Y_(v,t,n,r,e,a,!1)}catch(i){return h.getDerivedStateFromError&&(y[y_]=h.getDerivedStateFromError(i)),y.componentDidCatch&&y.componentDidCatch(i,H_),D_(y)?(v=J_(e,t),(y=e[g_]).getChildContext!=null&&(t=W_({},t,y.getChildContext())),Y_(v=v!=null&&v.type===Nm&&v.key==null&&v.props.tpl==null?v.props.children:v,t,n,r,e,a,o)):G_}finally{z_&&z_(e),V_&&V_(e)}}}v=v!=null&&v.type===Nm&&v.key==null&&v.props.tpl==null?v.props.children:v;try{var D=Y_(v,t,n,r,e,a,o);return z_&&z_(e),Z.unmount&&Z.unmount(e),e._suspended?typeof D==`string`?K_+D+q_:U_(D)?(D.unshift(K_),D.push(q_),D):D.then(function(e){return K_+e+q_}):D}catch(i){if(!a&&o&&o.onError){var O=function i(s){return o.onError(s,e,function(e,s){try{return Y_(e,t,n,r,s,a,o)}catch(e){return i(e)}})}(i);if(O!==void 0)return O;var k=Z.__e;return k&&k(i,e),G_}if(!a||!i||typeof i.then!=`function`)throw i;return i.then(function i(){try{var s=Y_(v,t,n,r,e,a,o);return e._suspended?K_+s+q_:s}catch(e){if(!e||typeof e.then!=`function`)throw e;return e.then(i)}})}}var A,j=`<`+h,M=G_;for(var N in g){var P=g[N];if(typeof(P=Z_(P)?P.value:P)!=`function`||N===`class`||N===`className`){switch(N){case`children`:A=P;continue;case`key`:case`ref`:case`__self`:case`__source`:continue;case`htmlFor`:if(`for`in g)continue;N=`for`;break;case`className`:if(`class`in g)continue;N=`class`;break;case`defaultChecked`:N=`checked`;break;case`defaultSelected`:N=`selected`;break;case`defaultValue`:case`value`:switch(N=`value`,h){case`textarea`:A=P;continue;case`select`:r=P;continue;case`option`:r!=P||`selected`in g||(j+=` selected`)}break;case`dangerouslySetInnerHTML`:M=P&&P.__html;continue;case`style`:typeof P==`object`&&(P=N_(P));break;case`acceptCharset`:N=`accept-charset`;break;case`httpEquiv`:N=`http-equiv`;break;default:if(x_.test(N))N=N.replace(x_,`$1:$2`).toLowerCase();else{if(b_.test(N))continue;N[4]!==`-`&&!w_.has(N)||P==null?n?C_.test(N)&&(N=N===`panose1`?`panose-1`:N.replace(/([A-Z])/g,`-$1`).toLowerCase()):S_.test(N)&&(N=N.toLowerCase()):P+=G_}}P!=null&&!1!==P&&(j=!0===P||P===G_?j+` `+N:j+` `+N+`="`+(typeof P==`string`?k_(P):P+G_)+`"`)}}if(b_.test(h))throw Error(h+` is not a valid HTML tag name in `+j+`>`);if(M||(typeof A==`string`?M=k_(A):A!=null&&!1!==A&&!0!==A&&(M=Y_(A,t,h===`svg`||h!==`foreignObject`&&n,r,e,a,o))),z_&&z_(e),V_&&V_(e),!M&&X_.has(h))return j+`/>`;var F=`</`+h+`>`,I=j+`>`;return U_(M)?[I].concat(M,[F]):typeof M==`string`?I+M+F:[I,M,F]}var X_=new Set([`area`,`base`,`br`,`col`,`command`,`embed`,`hr`,`img`,`input`,`keygen`,`link`,`meta`,`param`,`source`,`track`,`wbr`]);function Z_(e){return typeof e==`object`&&!!e&&typeof e.peek==`function`&&`value`in e}var Q_=0;function $_(e){return e!=null&&e.length>0?e:(Q_+=1,`pst_ft_${Q_}`)}function ev({initialVisibleRowCount:e,itemHeight:t}){return e==null?420:Math.max(0,e)*(t??jl)}function tv(e){if(typeof document>`u`)return;let t=document.createElement(`div`);t.innerHTML=e;let n=t.querySelector(`svg`);return n instanceof SVGElement?n:void 0}function nv(e){return e.querySelector(`#file-tree-icon-chevron`)instanceof SVGElement&&e.querySelector(`#file-tree-icon-file`)instanceof SVGElement&&e.querySelector(`#file-tree-icon-dot`)instanceof SVGElement&&e.querySelector(`#file-tree-icon-lock`)instanceof SVGElement}function rv(e){return Array.from(e.children).filter(e=>e instanceof SVGElement)}var iv=class{static LoadedCustomComponent=!0;#e;#t;#n;#r;#i;#a;#o;#s;#c;#l=new h_;#u;#d;#f;#p;#m;#h;#g;#_;#v;#y=null;#b;#x=!1;#S=!1;constructor(e){let{composition:t,density:n,fileTreeSearchMode:r,gitStatus:i,id:a,initialSearchQuery:o,icons:s,itemHeight:c,onSearchChange:l,onSelectionChange:u,overscan:d,renderRowDecoration:f,renaming:p,search:m,searchBlurBehavior:h,searchFakeFocus:g,stickyFolders:_,unsafeCSS:v,initialVisibleRowCount:y,...b}=e;this.#e=t,this.#n=$_(a),this.#p=um(i),this.#m=s,this.#h=v,this.#r=u,this.#i=f,this.#a=p!=null&&p!==!1,this.#o=h,this.#s=m===!0,this.#c=g===!0,this.#u=Al(n,c),this.#d={itemHeight:this.#u.itemHeight,overscan:d,stickyFolders:_,initialVisibleRowCount:y},this.#t=new am({...b,fileTreeSearchMode:r,initialSearchQuery:o,onSearchChange:l,renaming:p}),this.#v=this.#t.getSelectionVersion(),this.#y=this.#r==null?null:this.subscribe(()=>{this.#D()})}unmount(){this.#b!=null&&(m_(this.#b),delete this.#b.dataset.fileTreeVirtualizedWrapper,this.#b=void 0),this.#l.clearAll(),this.#l.setHost(null),this.#f!=null&&(delete this.#f.dataset.fileTreeVirtualized,this.#I(this.#f),this.#f=void 0)}cleanUp(){this.unmount(),this.#y?.(),this.#y=null,this.#t.destroy()}getFileTreeContainer(){return this.#f}getItem(e){return this.#t.getItem(e)}getFocusedItem(){return this.#t.getFocusedItem()}getFocusedPath(){return this.#t.getFocusedPath()}getSelectedPaths(){return this.#t.getSelectedPaths()}getComposition(){return this.#e}getItemHeight(){return this.#u.itemHeight}getDensityFactor(){return this.#u.factor}subscribe(e){let t=!1;return this.#t.subscribe(()=>{if(!t){t=!0;return}e()})}focusPath(e){this.#t.focusPath(e)}focusNearestPath(e){return this.#t.focusNearestPath(e)}add(e){this.#t.add(e)}batch(e){this.#t.batch(e)}move(e,t,n){this.#t.move(e,t,n)}onMutation(e,t){return this.#t.onMutation(e,t)}setSearch(e){this.#t.setSearch(e)}openSearch(e){this.#t.openSearch(e)}closeSearch(){this.#t.closeSearch()}isSearchOpen(){return this.#t.isSearchOpen()}getSearchValue(){return this.#t.getSearchValue()}getSearchMatchingPaths(){return this.#t.getSearchMatchingPaths()}focusNextSearchMatch(){this.#t.focusNextSearchMatch()}focusPreviousSearchMatch(){this.#t.focusPreviousSearchMatch()}startRenaming(e,t){return this.#t.startRenaming(e,t)}remove(e,t){this.#t.remove(e,t)}resetPaths(e,t){this.#t.resetPaths(e,t)}setComposition(e){this.#e=e;let t=this.#T();t!=null&&(this.#O(),f_(t.wrapper,this.#w()))}setGitStatus(e){this.#p=um(e,this.#p);let t=this.#T();t!=null&&f_(t.wrapper,this.#w())}setIcons(e){this.#m=e;let t=this.#T();t!=null&&(this.#E(t.host,t.wrapper),f_(t.wrapper,this.#w()))}hydrate({fileTreeContainer:e}){let t=this.#P(e),n=this.#N(t);this.#O(),p_(n,this.#w())}render({containerWrapper:e,fileTreeContainer:t}){let n=this.#P(t??this.#f,e),r=this.#N(n);this.#O(),f_(r,this.#w())}#C(){return{initialViewportHeight:ev({initialVisibleRowCount:this.#d.initialVisibleRowCount,itemHeight:this.#d.itemHeight}),itemHeight:this.#d.itemHeight,overscan:this.#d.overscan,stickyFolders:this.#d.stickyFolders}}#w(){return{composition:this.#e,controller:this.#t,gitStatusByPath:this.#p?.statusByPath,ignoredGitDirectories:this.#p?.ignoredDirectoryPaths,directoriesWithGitChanges:this.#p?.directoriesWithChanges,icons:this.#m,instanceId:this.#n,renamingEnabled:this.#a,renderRowDecoration:this.#i,searchBlurBehavior:this.#o,searchEnabled:this.#s,searchFakeFocus:this.#c,slotHost:this.#l,...this.#C()}}#T(){let e=this.#f,t=this.#b;return e==null||t==null?null:{host:e,wrapper:t}}#E(e,t){let n=e.shadowRoot;n!=null&&(this.#k(n),this.#A(n)),this.#j(t)}#D(){let e=this.#r;if(e==null)return;let t=this.#t.getSelectionVersion();t!==this.#v&&(this.#v=t,e(this.#t.getSelectedPaths()))}#O(){let e=this.#e?.header?.render;if(e!=null){this.#l.setSlotContent(sc,e());return}this.#l.setSlotHtml(sc,this.#e?.header?.html??null)}#k(e){let t=rv(e).find(e=>nv(e)),n=tv(Cl(Ol(this.#m).set));n!=null&&(t!=null&&t.outerHTML===n.outerHTML||(t==null?e.prepend(n):t.replaceWith(n)))}#A(e){let t=rv(e),n=t.find(e=>nv(e)),r=t.filter(e=>e!==n),i=Ol(this.#m).spriteSheet?.trim()??``;if(i.length===0){for(let e of r)e.remove();return}let a=tv(i);if(a==null){for(let e of r)e.remove();return}if(!(r.length===1&&r[0].outerHTML===a.outerHTML)){for(let e of r)e.remove();e.appendChild(a)}}#j(e){let t=Ol(this.#m);t.colored&&Tl(t.set)?e.dataset.fileTreeColoredIcons=`true`:delete e.dataset.fileTreeColoredIcons}#M(e){let t=e.querySelector(`style[${rc}]`);if(this.#g==null&&t instanceof HTMLStyleElement&&(this.#g=t),this.#h==null||this.#h===``){this.#g?.remove(),this.#g=void 0,this.#_=void 0;return}this.#g?.parentNode===e&&this.#_===this.#h||(this.#g??=document.createElement(`style`),this.#g.setAttribute(rc,``),this.#g.parentNode!==e&&e.appendChild(this.#g),this.#g.textContent=Fl(this.#h),this.#_=this.#h)}#N(e){if(this.#b!=null)return this.#b;let t=e.shadowRoot;if(t==null)throw Error(`FileTree requires a shadow root`);let n=Array.from(t.children).filter(e=>e instanceof HTMLDivElement&&typeof e.dataset.fileTreeId==`string`&&e.dataset.fileTreeId.length>0),r=n.find(e=>e.dataset.fileTreeId===this.#n)??n[0];return r!=null&&(this.#n=r.dataset.fileTreeId??this.#n),this.#b=r??document.createElement(`div`),this.#b.dataset.fileTreeId=this.#n,this.#b.dataset.fileTreeVirtualizedWrapper=`true`,this.#E(e,this.#b),this.#b.parentNode!==t&&t.appendChild(this.#b),this.#b}#P(e,t){let n=e??this.#f??document.createElement(`file-tree-container`);t!=null&&n.parentNode!==t&&t.appendChild(n);let r=n.shadowRoot??n.attachShadow({mode:`open`});return Vl(n,r),this.#M(r),n.dataset.fileTreeVirtualized=`true`,n.style.display=`flex`,this.#F(n),this.#l.setHost(n),this.#f=n,n}#F(e){e.style.getPropertyValue(`--trees-item-height`)===``&&(e.style.setProperty(`--trees-item-height`,`${String(this.#u.itemHeight)}px`),this.#x=!0),e.style.getPropertyValue(`--trees-density-override`)===``&&(e.style.setProperty(`--trees-density-override`,String(this.#u.factor)),this.#S=!0)}#I(e){this.#x&&=(e.style.removeProperty(`--trees-item-height`),!1),this.#S&&=(e.style.removeProperty(`--trees-density-override`),!1)}};function av(e){let t=(0,K.useRef)(null);return t.current??=new iv(e),(0,K.useEffect)(()=>{let e=t.current;return()=>{e?.cleanUp(),t.current=null}},[]),{model:t.current}}var ov={"--trees-accent-override":`var(--ring)`,"--trees-bg-muted-override":`color-mix(in srgb, var(--muted) 45%, transparent)`,"--trees-bg-override":`transparent`,"--trees-border-color-override":`var(--border)`,"--trees-fg-muted-override":`var(--muted-foreground)`,"--trees-fg-override":`var(--foreground)`,"--trees-focus-ring-color-override":`var(--ring)`,"--trees-font-family-override":`var(--font-sans)`,"--trees-font-size-override":`var(--text-sm)`,"--trees-item-margin-x-override":`0`,"--trees-padding-inline-override":`0`,"--trees-scrollbar-thumb-override":`color-mix(in srgb, var(--muted-foreground) 35%, transparent)`,"--trees-selected-bg-override":`color-mix(in srgb, var(--accent) 65%, transparent)`,"--trees-selected-fg-override":`var(--foreground)`,"--trees-selected-focused-border-color-override":`var(--ring)`,height:`100%`};function sv({controller:e,filesError:t,isFilesLoading:n}){let{closeSearch:r,filteredFiles:i,isSearchOpen:a,loadedFiles:o,model:s,searchQuery:c,setSearchQuery:l}=e,u=wt(),d=(0,K.useRef)(null);(0,K.useEffect)(()=>{a&&d.current?.focus()},[a]);let f=(0,K.useMemo)(()=>({...ov,colorScheme:u}),[u]),p;return p=t?(0,q.jsx)(rr,{message:t.message,messageClassName:`text-destructive`}):n&&o.length===0?(0,q.jsx)(rr,{icon:`Spinner`,message:`Loading files...`,iconClassName:`animate-spin`}):o.length===0?(0,q.jsx)(rr,{message:`No files yet.`}):i.length===0?(0,q.jsx)(rr,{message:`No files match search.`}):(0,q.jsx)(hc,{"aria-label":`Thread storage file tree`,className:`block h-full min-h-0`,model:s,style:f}),(0,q.jsxs)(`div`,{className:`flex h-full min-h-0 flex-col gap-1`,children:[a?(0,q.jsxs)(`div`,{className:`flex h-7 shrink-0 items-center gap-2`,children:[(0,q.jsxs)(`div`,{className:`relative min-w-0 flex-1`,children:[(0,q.jsx)(P,{name:`Search`,className:`pointer-events-none absolute left-2 top-1/2 size-3.5 -translate-y-1/2 text-muted-foreground`}),(0,q.jsx)(Je,{ref:d,"aria-label":`Search files`,className:`h-7 pl-7 pr-2 text-xs focus-visible:ring-0`,placeholder:`Search files`,value:c,onChange:e=>l(e.target.value),onKeyDown:e=>{e.key===`Escape`&&(e.preventDefault(),r())}})]}),(0,q.jsx)(z,{type:`button`,variant:`ghost`,size:`icon`,className:`h-7 w-7 shrink-0 rounded-md p-0 text-muted-foreground`,"aria-label":`Close search`,onClick:r,children:(0,q.jsx)(P,{name:`X`,className:`size-3.5`})})]}):null,(0,q.jsx)(`div`,{className:`min-h-0 flex-1`,children:p})]})}function cv(e){return e?.type===`standard`&&e.parentThreadId===null}function lv({currentThreadId:e,isManagerThread:t,managerThreads:n,parentThreadDisplayName:r,parentThreadId:i}){if(!e||t)return[];let a=[{value:`none`,label:`None`}],o=new Set([`none`]),s=(t,n)=>{!t||t===e||o.has(t)||(o.add(t),a.push({value:t,label:n}))};s(i??void 0,r??`Manager`);for(let e of n)s(e.id,e.title?.trim()?e.title:`Manager`);return a}function uv({thread:e,projectId:t,parentThreadDisplayName:n,managerThreads:r,canAssignToManager:i,canTakeOverThread:a,updateThreadPending:o,onAssignManager:s,defaultOpen:c}){let l=e.type===`manager`,u=e.parentThreadId??void 0,d=(0,K.useMemo)(()=>lv({currentThreadId:e.id,isManagerThread:l,managerThreads:r,parentThreadDisplayName:n,parentThreadId:u}),[l,r,n,u,e.id]),f=u??`none`,p=d.find(e=>e.value===f)?.label;return l||!u&&!i&&!a?null:(0,q.jsx)(Kt,{label:`Manager`,valueClassName:`min-w-0`,children:u?(0,q.jsxs)(`div`,{className:`inline-flex max-w-full min-w-0 items-center gap-1 text-xs text-foreground`,children:[(0,q.jsx)(He,{to:`/projects/${t}/threads/${u}`,className:`min-w-0 truncate text-xs text-foreground no-underline transition-[text-decoration-color] duration-150 hover:underline hover:underline-offset-2`,children:p??`Manager`}),(0,q.jsx)(z,{type:`button`,variant:`ghost`,size:`icon`,className:`size-3.5 shrink-0 rounded-full p-0 text-muted-foreground hover:bg-transparent hover:text-foreground [&_svg]:size-3`,disabled:o,onClick:()=>{s(null)},"aria-label":`Unassign manager`,children:(0,q.jsx)(P,{name:`X`})})]}):(0,q.jsxs)(V,{defaultOpen:c,children:[(0,q.jsx)(he,{asChild:!0,children:(0,q.jsxs)(`div`,{role:`button`,tabIndex:o||d.length<=1&&f===`none`?-1:0,className:`inline-flex w-fit max-w-full min-w-0 items-center gap-1 rounded-md px-0 text-xs leading-tight text-foreground outline-none ring-sidebar-ring transition-colors hover:text-foreground focus-visible:ring-2`,children:[(0,q.jsx)(`span`,{className:`min-w-0 truncate text-xs text-foreground`,children:p??`None`}),(0,q.jsx)(P,{name:`ChevronDown`,className:`size-3.5 shrink-0 text-muted-foreground`})]})}),(0,q.jsxs)(ve,{align:`start`,className:`min-w-40 max-w-72`,children:[(0,q.jsx)(_e,{children:`Assign to manager`}),d.map(e=>(0,q.jsxs)(me,{onSelect:()=>{s(e.value===`none`?null:e.value)},className:`flex items-center justify-between gap-3`,children:[(0,q.jsx)(`span`,{className:`truncate`,title:e.label,children:e.label}),(0,q.jsx)(P,{name:`Check`,className:f===e.value?L(`opacity-100`,U):L(`opacity-0`,U)})]},e.value))]})]})})}function dv({thread:e}){return e.type===`manager`?(0,q.jsx)(Kt,{label:`Kind`,valueClassName:`min-w-0 truncate`,children:`Manager`}):null}function fv({environmentHost:e,environment:t,environmentIsLocal:n}){if(!e)return null;let r=t?n:void 0,i=e.status===`connected`;return(0,q.jsx)(Kt,{label:`Host`,valueClassName:`min-w-0 truncate`,children:(0,q.jsxs)(`span`,{className:`flex items-center gap-1.5`,children:[(0,q.jsx)(`span`,{className:`truncate`,children:e.name}),r?(0,q.jsx)(pt,{}):null,(0,q.jsx)(bn,{connected:i})]})})}function pv({thread:e,environment:t,environmentHost:n,environmentIsLocal:r}){let i=Jn({projectId:e.projectId,environmentId:t?.id??``});if(e.type===`manager`||!t)return null;let a=j({environment:t,isLocalHost:r,hostName:n?.name}),o=mv(t);return(0,q.jsx)(Kt,{label:`Environment`,valueClassName:`min-w-0`,children:(0,q.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1`,children:[(0,q.jsx)(`span`,{className:`min-w-0 truncate`,children:a.modeLabel}),o?(0,q.jsx)(`button`,{type:`button`,"aria-label":`Create new thread in this worktree`,title:`New thread in this worktree`,onClick:i,className:`inline-flex shrink-0 items-center justify-center rounded-md p-0.5 text-muted-foreground transition-colors hover:bg-state-hover hover:text-foreground`,children:(0,q.jsx)(P,{name:`MessageSquarePlus`,className:`size-4`})}):null]})})}function mv(e){return e.isWorktree||e.workspaceProvisionType===`managed-worktree`}function hv({thread:e,environment:t}){return e.type===`manager`||!t?.path||!mv(t)?null:(0,q.jsx)(Kt,{label:`Worktree path`,valueClassName:`min-w-0`,children:(0,q.jsx)(sn,{text:t.path,label:`Copy worktree path`,title:t.path,successMessage:`Worktree path copied`,errorMessage:`Failed to copy worktree path`})})}function gv({thread:e,workspaceStatus:t}){let n=t?.branch.currentBranch??null;return e.type===`manager`||!n?null:(0,q.jsx)(Kt,{label:`Branch`,valueClassName:`min-w-0 truncate`,children:(0,q.jsx)(sn,{text:n,label:`Copy branch name`,successMessage:`Branch name copied`,errorMessage:`Failed to copy branch name`})})}function _v({thread:e,workspaceStatus:t,selectedMergeBaseBranch:n,mergeBaseBranchOptions:r,isLoadingMergeBaseBranchOptions:i,onMergeBaseBranchChange:a,defaultOpen:o}){let s=n??t?.mergeBase?.mergeBaseBranch??t?.branch.defaultBranch,c=s,l=(0,K.useMemo)(()=>Xn({mergeBaseBranch:c,mergeBaseBranchOptions:r}),[c,r]),u=!!(s||t?.branch.defaultBranch),d=t?.branch.currentBranch!=null&&t.branch.currentBranch===t.branch.defaultBranch,f=u&&!!c&&!d;return e.type===`manager`||!f?null:(0,q.jsx)(Kt,{label:`Merge base`,valueClassName:`min-w-0 truncate`,children:c&&l.length>0&&c?(0,q.jsx)(kn,{value:c,options:l,variant:`minimal`,loading:i,onChange:a,className:`max-w-full`,defaultOpen:o}):c})}function vv({thread:e,environment:t,workspaceStatus:n,workspaceStatusError:r,selectedMergeBaseBranch:i}){let a=e.type!==`manager`,o=t?.status===`destroyed`;if(!(a&&(n||r||o)&&!(e.archivedAt!=null&&t?.managed!==!0)))return null;let s=i??n?.mergeBase?.mergeBaseBranch??n?.branch.defaultBranch,c=sa(n,{mergeBaseBranch:s,showBranchComparison:!!(s||n?.branch.defaultBranch),error:r,workspaceDeleted:o}),l=n?.workingTree.state===`untracked`?`text-muted-foreground`:`text-foreground`;return(0,q.jsx)(Kt,{label:`Git status`,align:`start`,valueClassName:`min-w-0`,children:(0,q.jsxs)(`div`,{className:`flex min-w-0 items-baseline gap-2 whitespace-nowrap`,title:`${c.label} ${c.summary}`,children:[(0,q.jsx)(`span`,{className:L(`shrink-0 font-medium`,l),children:c.label}),(0,q.jsx)(`span`,{className:`min-w-0 truncate text-muted-foreground`,children:c.summaryContent})]})})}function yv({thread:e}){let t=be(),n=t.isPending&&t.variables?.id===e.id,r=(0,K.useCallback)(()=>{t.mutate({id:e.id})},[e.id,t]);return e.archivedAt==null?null:(0,q.jsx)(Kt,{label:`Archived`,valueClassName:`min-w-0 truncate`,children:(0,q.jsx)(xr,{isPending:n,onUnarchive:r,threadType:e.type})})}function bv({thread:e,workspaceStatus:t,onChangedFileClick:n}){return e.type===`manager`?null:(0,q.jsx)(Oi,{sections:wi(t),onFileClick:n,rowClassName:`min-h-0 flex-1`,rowValueClassName:`min-h-0 flex-1`,listClassName:`h-full`})}function xv({controller:e,filesError:t,isFilesLoading:n}){let{isSearchOpen:r,openSearch:i}=e;return(0,q.jsx)(Kt,{orientation:`vertical`,className:`min-h-0 flex-1`,valueClassName:`min-h-0 flex-1 overflow-hidden`,labelClassName:`flex items-center justify-between gap-2`,label:(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(`span`,{children:`Manager workspace`}),r?null:(0,q.jsx)(z,{type:`button`,variant:`ghost`,size:`icon`,className:`h-5 w-5 shrink-0 rounded-md p-0 text-muted-foreground`,"aria-label":`Search files`,onClick:i,children:(0,q.jsx)(P,{name:`Search`,className:`size-3.5`})})]}),children:(0,q.jsx)(sv,{controller:e,filesError:t,isFilesLoading:n})})}function Sv({thread:e,parentThreadDisplayName:t,environment:n,workspaceStatus:r,workspaceStatusError:i}){let a=e.type===`manager`,o=e.parentThreadId??void 0,s=!a,c=n?.status===`destroyed`,l=s&&(!!r||!!i||c)&&!(e.archivedAt!=null&&n?.managed!==!0),u=r?.branch.currentBranch??null,d=wi(r),f=s&&d.length>0;return!!(a||o||!a&&n||!a&&u||l||f||e.archivedAt!=null||t&&o)}function Cv({hasFlexibleHeight:e,children:t}){return(0,q.jsx)(Wt,{appearance:`flat`,className:L(`h-full min-h-0`,e?`flex-1`:`shrink-0`),children:t})}function wv(e){let{thread:t,projectId:n,parentThreadDisplayName:r,managerThreads:i,canAssignToManager:a,canTakeOverThread:o,environmentHost:s,environmentIsLocal:c,environment:l,workspaceStatus:u,workspaceStatusError:d,selectedMergeBaseBranch:f,mergeBaseBranchOptions:p,isLoadingMergeBaseBranchOptions:m,updateThreadPending:h,storage:g,onAssignManager:_,onMergeBaseBranchChange:v,onChangedFileClick:y}=e;return(0,q.jsxs)(Cv,{hasFlexibleHeight:g!==void 0||t.type!==`manager`&&wi(u).length>0,children:[(0,q.jsx)(dv,{thread:t}),(0,q.jsx)(uv,{thread:t,projectId:n,parentThreadDisplayName:r,managerThreads:i,canAssignToManager:a,canTakeOverThread:o,updateThreadPending:h,onAssignManager:_}),(0,q.jsx)(fv,{environmentHost:s,environment:l,environmentIsLocal:c}),(0,q.jsx)(pv,{thread:t,environment:l,environmentHost:s,environmentIsLocal:c}),(0,q.jsx)(hv,{thread:t,environment:l}),(0,q.jsx)(gv,{thread:t,workspaceStatus:u}),(0,q.jsx)(_v,{thread:t,workspaceStatus:u,selectedMergeBaseBranch:f,mergeBaseBranchOptions:p,isLoadingMergeBaseBranchOptions:m,onMergeBaseBranchChange:v}),(0,q.jsx)(vv,{thread:t,environment:l,workspaceStatus:u,workspaceStatusError:d,selectedMergeBaseBranch:f}),(0,q.jsx)(yv,{thread:t}),(0,q.jsx)(bv,{thread:t,workspaceStatus:u,onChangedFileClick:y}),g?(0,q.jsx)(xv,{...g}):null]})}function Tv({children:e,className:t}){return(0,q.jsx)(`div`,{className:L(`flex min-w-0 flex-col gap-1`,t),children:e})}function Ev({stopRequestedAt:e,threadId:t}){return{id:`${t}:pending-stop:${e}`,threadId:t,turnId:null,sourceSeqStart:0,sourceSeqEnd:0,startedAt:e,createdAt:e,kind:`system`,systemKind:`operation`,operationKind:`thread-interrupted`,title:`Stop requested`,detail:null,status:`pending`,completedAt:null}}function Dv(e,t){return e.some(e=>e.kind===`system`&&e.systemKind===`operation`&&e.operationKind===`thread-interrupted`&&e.createdAt>=t)}function Ov({rows:e,stopRequestedAt:t,threadId:n}){return(0,K.useMemo)(()=>t===null||Dv(e,t)?e:[...e,Ev({stopRequestedAt:t,threadId:n})],[e,t,n])}function kv({activeThinking:e,footer:t,hasOlderTimelineRows:n,header:r,hostConnectionNotice:i,isLoadingOlderTimelineRows:a,isThreadTimelinePending:o,timelineError:s,loadingTurnSummaryIds:c,erroredTurnSummaryIds:l,onLoadOlderRows:u,onLoadTurnSummaryRows:d,onOpenLocalFileLink:f,onTitleAction:p,projectId:m,showOngoingIndicator:h,ongoingIndicatorLabel:g,stopRequestedAt:_,timelineRows:v,threadId:y,threadRuntimeDisplayStatus:b,turnSummaryRowsIdentity:x,turnSummaryRowsById:S,unreadDividerPlacement:C,workspaceRootPath:w}){let T=wt(),E=e!==null&&g===void 0,D=e?.text.trim()??``,O=E&&D.length>0?e?.text:void 0,k=E&&e?e.id:g??`working`,A=Ov({rows:v,stopRequestedAt:_,threadId:y});return(0,q.jsxs)(`div`,{className:`flex h-full min-h-0 min-w-0 flex-col overflow-hidden`,children:[r,(0,q.jsx)(se,{scrollBehavior:`bottom-anchor`,shellClassName:`!mx-0 !mt-0 md:!mx-0 md:!mt-0`,contentClassName:`min-h-full gap-2 pt-4`,footerClassName:`chat-prompt-box`,footer:t,children:(0,q.jsxs)(Tv,{className:`flex-1`,children:[n&&!o&&!s?(0,q.jsx)(Av,{isLoadingOlderTimelineRows:a,onLoadOlderRows:u}):null,o?(0,q.jsx)(jv,{}):s?(0,q.jsx)(zn,{label:`Failed to load timeline`,className:`mt-6 text-destructive`}):A.length>0?(0,q.jsx)(xt,{loadingTurnSummaryIds:c,erroredTurnSummaryIds:l,onLoadTurnSummaryRows:d,onOpenLocalFileLink:f,onTitleAction:p,projectId:m,resolveUserAttachmentImageSrc:jn,themeType:T,timelineRows:A,threadRuntimeDisplayStatus:b,turnSummaryRowsIdentity:x,turnSummaryRowsById:S,unreadDividerPlacement:C,workspaceRootPath:w}):null,i?(0,q.jsx)(zn,{label:i.label,className:i.tone===`error`?`mt-4 text-destructive`:`mt-4`}):null,(0,q.jsx)(Ln,{visible:h,children:(0,q.jsx)(Jt,{details:O,isThinking:E,label:g},k)})]})},y)]})}function Av({isLoadingOlderTimelineRows:e,onLoadOlderRows:t}){let n=ne();return(0,q.jsx)(`div`,{className:`flex justify-center pt-2 mb-3`,children:(0,q.jsxs)(z,{type:`button`,variant:`outline`,size:`sm`,onClick:(0,K.useCallback)(()=>{n?.captureScrollAnchor(),t()},[n,t]),disabled:e,children:[(0,q.jsx)(P,{name:`ChevronUp`,"aria-hidden":`true`}),e?`Loading older messages...`:`Load older messages`]})})}function jv(){let[e,t]=(0,K.useState)(!1);return(0,K.useEffect)(()=>{let e=window.setTimeout(()=>t(!0),200);return()=>window.clearTimeout(e)},[]),e?(0,q.jsx)(zn,{label:`Loading thread...`,className:`mt-6`}):null}var Mv=100,Nv=`duration-[220ms] ease-[cubic-bezier(0.32,0.72,0,1)]`;function Pv({footer:e,header:t,isMetadataLoading:n,isSecondaryPanelOpen:r,metadata:i,onTerminalPanelResize:a,secondaryPanel:o,terminalPanel:s,terminalPanelHeightPercent:c,terminalPanelOpen:l,timeline:u}){let d=pe(),f=ut(la),p=(0,K.useRef)(null),m=(0,K.useRef)(c),h=(0,K.useRef)(!1);(0,K.useEffect)(()=>{if(!h.current){h.current=!0;return}let e=p.current;e&&(l?e.expand(m.current):e.collapse())},[l]);let g=(0,K.useCallback)(e=>{e<=0||(m.current=e,a(e))},[a]),_=Sv(i)?(0,q.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col overflow-hidden`,children:(0,q.jsx)(wv,{...i})}):n?(0,q.jsx)(Lv,{}):(0,q.jsx)(`div`,{className:`pt-1 text-sm text-muted-foreground`,children:`No thread details available.`}),v=d?null:(0,q.jsx)(Zs,{...o,renderAsDrawer:!1,metadataContent:_}),y=d?(0,q.jsx)(Zs,{...o,renderAsDrawer:!0,metadataContent:_}):null;return(0,q.jsxs)(`div`,{className:`-mx-4 -mb-4 -mt-4 flex h-full min-h-0 min-w-0 flex-1 flex-col overflow-hidden md:-mx-5 md:-mb-5 md:-mt-5`,children:[(0,q.jsxs)(Vo.PanelGroup,{direction:`vertical`,className:`h-full w-full min-w-0`,children:[(0,q.jsx)(Vo.Panel,{id:`thread-detail-main-panel`,defaultSize:l?100-c:100,minSize:30,order:1,className:`min-w-0 overflow-hidden`,children:(0,q.jsxs)(Vo.PanelGroup,{direction:`horizontal`,className:`h-full w-full min-w-0`,children:[(0,q.jsx)(Vo.Panel,{id:`thread-detail-timeline-panel`,defaultSize:r&&!d?100-f:Mv,minSize:30,order:1,className:`min-w-0 overflow-hidden`,children:(0,q.jsx)(kv,{...u,footer:e,header:t})}),v]})}),s?(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(Fv,{isOpen:l}),(0,q.jsx)(Vo.Panel,{ref:p,id:`thread-detail-terminal-panel`,collapsible:!0,collapsedSize:0,defaultSize:l?c:0,minSize:18,maxSize:70,order:2,onResize:g,className:L(`min-h-0 min-w-0 overflow-hidden transition-[flex-grow,flex-basis,opacity]`,Nv,l?`opacity-100`:`opacity-0`),children:s})]}):null]}),d?(0,q.jsx)(H,{open:r,onOpenChange:e=>{e||o.onClose()},srLabel:`Thread details`,contentClassName:`h-[92dvh] max-h-[92dvh]`,handleOnly:!0,children:(0,q.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col overflow-hidden`,children:y})}):null]})}function Fv({isOpen:e}){return(0,q.jsx)(Vo.PanelResizeHandle,{id:`thread-detail-terminal-panel-handle`,disabled:!e,className:L(`group relative shrink-0 cursor-row-resize overflow-visible bg-transparent transition-[height,opacity,background-color]`,Nv,`before:absolute before:-inset-y-1.5 before:inset-x-0 before:content-['']`,e?`h-px opacity-100`:`pointer-events-none h-0 opacity-0`),"aria-label":`Resize thread and terminal panels`,children:(0,q.jsx)(`span`,{className:`pointer-events-none absolute inset-x-0 top-1/2 h-px -translate-y-1/2 bg-border transition-colors group-hover:bg-accent-foreground/35`})})}var Iv=[`w-40`,`w-28`,`w-36`,`w-24`];function Lv(){return(0,q.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col overflow-hidden`,children:(0,q.jsx)(Cv,{hasFlexibleHeight:!1,children:Iv.map((e,t)=>(0,q.jsxs)(`div`,{className:`grid grid-cols-[var(--detail-label-width,96px)_minmax(0,1fr)] items-center gap-x-3 py-0.5`,children:[(0,q.jsx)(Tn,{className:`h-3 w-14 rounded-sm`}),(0,q.jsx)(Tn,{className:`h-3 ${e} max-w-full rounded-sm`})]},t))})})}function Rv(e){return e!==void 0&&e.length>0}function zv({closePersistedPanel:e,isCompactViewport:t,isPersistedOpen:n,openPersistedDiffFile:r,openPersistedDiffPanel:i,openPersistedPanel:a,threadId:o,togglePersistedPanel:s}){let[c,l]=(0,K.useState)(null);(0,K.useEffect)(()=>{l(null)},[o]),(0,K.useEffect)(()=>{t||l(null)},[t]);let u=(0,K.useCallback)(()=>{Rv(o)&&l(o)},[o]),d=(0,K.useCallback)(()=>{l(e=>e===o?null:e)},[o]),f=Rv(o)&&c===o,p=t?f:n,m=(0,K.useCallback)(e=>{a(e),t&&u()},[t,u,a]),h=(0,K.useCallback)(()=>{i(),t&&u()},[t,u,i]),g=(0,K.useCallback)(e=>{r(e),t&&u()},[t,u,r]),_=(0,K.useCallback)(()=>{if(t){d();return}e()},[d,e,t]),v=(0,K.useCallback)(()=>{if(!t){s();return}if(f){d();return}u()},[d,t,f,u,s]);return(0,K.useMemo)(()=>({closePanel:_,isOpen:p,openDiffFile:g,openDiffPanel:h,openPanel:m,togglePanel:v}),[_,p,g,h,m,v])}function Bv({activePath:e,fileListEnabled:t=!0,fileListOptions:n=te,filePreviewEnabled:r=!0,threadId:i,threadType:a}){let o=a===`manager`,{data:s,isLoading:c,error:l}=Ee(i??``,n,{enabled:o&&t}),{data:u,isLoading:d,error:f}=Te(i??``,e,{enabled:o&&r&&e!==null});return{isThreadStorageFilePreviewLoading:d,isThreadStorageFilesLoading:c,threadStorageFilePreview:u,threadStorageFilePreviewError:f,threadStorageFilesError:l,threadStorageFiles:s,threadStorageRootPath:s?.storageRootPath??null}}var Vv=8;function Hv(e){return e.entryKind===`file`}function Uv(e){return{source:e.source,entryKind:`file`,path:e.path,name:e.name,score:e.score,positions:e.positions}}function Wv(e){let t=e.limit??Vv,n=er({projectId:e.projectId,query:e.query,limit:t,environmentId:e.environmentId,currentThreadId:e.currentThreadId,currentThreadType:e.currentThreadType,includeDirectories:!1}),r=(0,K.useMemo)(()=>n.suggestions.filter(Hv).map(Uv),[n.suggestions]),i=!!e.projectId,a=e.currentThreadType===`manager`&&!!e.currentThreadId;return{suggestions:r,isLoading:n.isLoading,isError:n.isError,isDebouncing:n.isDebouncing,isUnavailable:!i&&!a}}var Gv=20,Kv=[`workspace`,`thread-storage`],qv={workspace:`Workspace`,"thread-storage":`Manager Storage`};function Jv({projectId:e,currentThreadId:t,currentThreadType:n}){let r=[];return e&&r.push(`workspace`),n===`manager`&&t.length>0&&r.push(`thread-storage`),r}function Yv(e){return`open-file-result-${e.source}-${encodeURIComponent(e.path)}`}function Xv(e){let t=e.lastIndexOf(`/`);return t===-1?{name:e,directory:``}:{name:e.slice(t+1),directory:e.slice(0,t)}}function Zv(e){return`${qv[e.source]}: ${e.path}`}function Qv({availableSources:e,suggestions:t}){let n=new Set(e),r=new Map;for(let e of t){let t=e.source;if(!n.has(t))continue;let i=r.get(t);if(i){i.items.push({suggestion:e,index:i.items.length});continue}r.set(t,{source:t,label:qv[t],items:[{suggestion:e,index:0}]})}let i=0;return Kv.flatMap(e=>{let t=r.get(e);return t?[{...t,items:t.items.map(({suggestion:e})=>{let t=i;return i+=1,{suggestion:e,index:t}})}]:[]})}function $v({iconName:e,iconClassName:t,message:n}){return(0,q.jsx)(`div`,{className:`flex min-h-24 items-center justify-center rounded-md border border-dashed border-border bg-surface-raised px-3 py-6 text-center text-sm text-muted-foreground`,children:(0,q.jsxs)(`div`,{className:`flex max-w-64 flex-col items-center gap-2`,children:[(0,q.jsx)(P,{name:e,className:L(`size-4`,t)}),(0,q.jsx)(`p`,{children:n})]})})}function ey({id:e,suggestion:t,isActive:n,onActivate:r,onSelect:i}){let{directory:a}=Xv(t.path),o=a||null;return(0,q.jsx)(`button`,{type:`button`,id:e,role:`option`,"aria-selected":n,onClick:(0,K.useCallback)(()=>{i(t)},[i,t]),onMouseEnter:r,title:Zv(t),className:L(`w-full scroll-mt-7 rounded px-2 py-1.5 text-left text-xs transition-colors`,n?`bg-state-active`:`hover:bg-state-hover`),children:(0,q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1.5`,children:[(0,q.jsx)(P,{name:`File`,className:`size-3.5 shrink-0 text-muted-foreground`,"aria-hidden":!0}),(0,q.jsx)(`span`,{className:`truncate`,children:t.name}),o===null?null:(0,q.jsx)(Qn,{className:`text-muted-foreground [flex-shrink:9999]`,children:o})]})})}function ty({projectId:e,environmentId:t,currentThreadId:n,currentThreadType:r,focusRequest:i,initialQuery:a=``,onSelect:o}){let s=(0,K.useRef)(null),[c,l]=(0,K.useState)(a),[u,d]=(0,K.useState)(-1),f=c.trim().length>0,{suggestions:p,isLoading:m,isError:h,isDebouncing:g,isUnavailable:_}=Wv({projectId:e,query:c,limit:Gv,environmentId:t,currentThreadId:n,currentThreadType:r}),v=(0,K.useMemo)(()=>Jv({projectId:e,currentThreadId:n,currentThreadType:r}),[n,r,e]),y=(0,K.useMemo)(()=>Qv({availableSources:v,suggestions:p}),[v,p]),b=(0,K.useMemo)(()=>y.flatMap(e=>e.items.map(({suggestion:e})=>e)),[y]),x=(0,K.useMemo)(()=>u>=0&&u<b.length?b[u]??null:null,[u,b]);(0,K.useEffect)(()=>{s.current?.focus()},[i]),(0,K.useEffect)(()=>{d(b.length>0?0:-1)},[b]);let S=(0,K.useCallback)(e=>{o({source:e.source,path:e.path})},[o]),C=(0,K.useCallback)(e=>{if(b.length!==0){if(e.key===`ArrowDown`){e.preventDefault(),d(e=>(e+1)%b.length);return}if(e.key===`ArrowUp`){e.preventDefault(),d(e=>e<=0?b.length-1:e-1);return}e.key===`Enter`&&x&&(e.preventDefault(),S(x))}},[x,S,b.length]);return(0,q.jsxs)(`div`,{className:`flex min-h-full flex-col gap-2 px-4 pt-1`,children:[(0,q.jsxs)(`div`,{className:`relative`,children:[(0,q.jsx)(P,{name:`Search`,className:`pointer-events-none absolute left-2.5 top-1/2 size-4 -translate-y-1/2 text-muted-foreground`}),(0,q.jsx)(Je,{ref:s,value:c,onChange:e=>l(e.target.value),onKeyDown:C,disabled:_,"aria-label":`Search files`,"aria-activedescendant":x?Yv(x):void 0,placeholder:_?`No searchable source`:`Search files`,className:`h-8 pl-8 pr-8 font-mono text-xs focus-visible:ring-0`}),g?(0,q.jsx)(P,{name:`Spinner`,className:`pointer-events-none absolute right-2.5 top-1/2 size-3.5 -translate-y-1/2 animate-spin text-muted-foreground`}):null]}),_?(0,q.jsx)($v,{iconName:`FileQuestion`,message:`No searchable file source is available.`}):h?(0,q.jsx)($v,{iconName:`AlertCircle`,message:`File search failed.`}):m?(0,q.jsx)($v,{iconName:`Spinner`,iconClassName:`animate-spin`,message:`Searching files...`}):y.length>0?(0,q.jsx)(`div`,{role:`listbox`,"aria-label":`File search results`,className:`min-h-0 flex-1 overflow-y-auto pb-1`,children:y.map((e,t)=>(0,q.jsxs)(`div`,{className:L(t>0&&`mt-2`),children:[(0,q.jsx)(`div`,{className:L(`sticky top-0 z-10 bg-background px-2 pb-1 text-xs text-muted-foreground`,t===0?`pt-0`:`pt-1.5`),children:e.label}),(0,q.jsx)(`div`,{className:`flex flex-col gap-px`,children:e.items.map(({suggestion:e,index:t})=>(0,q.jsx)(ey,{id:Yv(e),suggestion:e,isActive:t===u,onActivate:()=>d(t),onSelect:S},`${e.source}:${e.path}`))})]},e.source))}):(0,q.jsx)($v,{iconName:`Search`,message:f?`No files match.`:`Type to search files.`})]})}var ny=[];function ry(e){let t=new Set;for(let n of e){let e=n.split(`/`).filter(e=>e.length>0),r=``;for(let n of e.slice(0,-1))r=`${r}${n}/`,t.add(r)}return Array.from(t)}function iy({files:e,onSelectPath:t,selectedPath:n}){let[r,i]=(0,K.useState)(!1),[a,o]=(0,K.useState)(``),s=e??ny,c=(0,K.useMemo)(()=>{let e=a.trim().toLowerCase();return e.length===0?s:s.filter(t=>t.path.toLowerCase().includes(e))},[s,a]),l=(0,K.useMemo)(()=>c.map(e=>e.path),[c]),u=(0,K.useMemo)(()=>new Set(l),[l]),d=(0,K.useRef)(u),f=(0,K.useRef)(t),p=(0,K.useRef)(!1);(0,K.useEffect)(()=>{d.current=u},[u]),(0,K.useEffect)(()=>{f.current=t},[t]);let{model:m}=av({density:`compact`,initialExpansion:`closed`,onSelectionChange:(0,K.useCallback)(e=>{if(p.current)return;let t=e[0];!t||!d.current.has(t)||f.current(t)},[]),paths:[],search:!1}),h=a.trim().length>0,g=(0,K.useMemo)(()=>h?ry(l):[],[h,l]);(0,K.useEffect)(()=>{m.resetPaths(l,{initialExpandedPaths:g})},[g,l,m]),(0,K.useEffect)(()=>{let e=m.getSelectedPaths(),t=n!==null&&u.has(n);if(!(t?e.length===1&&e[0]===n:e.length===0)){p.current=!0;try{for(let r of e)t&&r===n||m.getItem(r)?.deselect();t&&m.getItem(n)?.select()}finally{p.current=!1}}},[u,m,n]);let _=(0,K.useCallback)(()=>{i(!0)},[]);return{closeSearch:(0,K.useCallback)(()=>{i(!1),o(``)},[]),filteredFiles:c,isSearchOpen:r,loadedFiles:s,model:m,openSearch:_,searchQuery:a,setSearchQuery:o}}var ay=`bb.thread.fixedPanelTabsState`,oy=336*60*60*1e3,sy=`thread-info`,cy=`git-diff`,ly=`open-file-search`,uy=m(`kind`,[k({kind:R(`working-tree`)}).strict(),k({kind:R(`head`)}).strict(),k({kind:R(`merge-base`),ref:M().min(1)}).strict()]),dy=R(`deleted`).nullable(),fy=k({id:R(sy),kind:R(`thread-info`)}).strict(),py=k({id:R(cy),kind:R(`git-diff`)}).strict(),my=k({environmentId:M().min(1).nullable(),id:M().min(1),kind:R(`workspace-file-preview`),lineNumber:f().int().positive().nullable(),path:M().min(1),source:uy,statusLabel:dy}).strict(),hy=k({id:M().min(1),kind:R(`host-file-preview`),lineNumber:f().int().positive().nullable(),path:M().min(1)}).strict(),gy=k({id:M().min(1),isPinned:T(),kind:R(`thread-storage-file-preview`),path:M().min(1)}).strict(),_y=k({id:R(ly),kind:R(`open-file-search`)}).strict(),vy=k({id:M().min(1),kind:R(`terminal`),terminalId:M().min(1)}).strict(),yy=m(`kind`,[fy,py,my,hy,gy,_y]),by=m(`kind`,[vy]),xy=k({tabs:C(yy),activeTabId:M().min(1).nullable(),isOpen:T()}).strict(),Sy=k({tabs:C(yy),activeTabId:M().min(1).nullable()}).strict(),Cy=k({tabs:C(by),activeTabId:M().min(1).nullable()}).strict(),wy=k({version:R(1),secondary:xy,bottom:Cy,lastUsedAt:f().int().nonnegative()}).strict(),Ty=k({version:R(1),secondary:Sy,bottom:Cy,lastUsedAt:f().int().nonnegative()}).strict();function Ey(){return typeof window>`u`?null:window.localStorage}function Dy(e){return encodeURIComponent(e.trim())}function Oy(e,t){return`${e}:${encodeURIComponent(t)}`}function ky(){return{id:sy,kind:`thread-info`}}function Ay(){return{id:cy,kind:`git-diff`}}function jy({environmentId:e,tab:t}){return{environmentId:e,id:Oy(`workspace-file-preview`,t.path),kind:`workspace-file-preview`,lineNumber:t.lineNumber,path:t.path,source:t.source,statusLabel:t.statusLabel}}function My(e){return{id:Oy(`host-file-preview`,e.path),kind:`host-file-preview`,lineNumber:e.lineNumber,path:e.path}}function Ny({isPinned:e,path:t}){return{id:Oy(`thread-storage-file-preview`,t),isPinned:e,kind:`thread-storage-file-preview`,path:t}}function Py(){return{id:ly,kind:`open-file-search`}}function Fy({terminalId:e}){return{id:`terminal:${encodeURIComponent(e)}`,kind:`terminal`,terminalId:e}}function Iy(e,t){return e===`bottom`?t.kind===`terminal`:t.kind!==`terminal`}function Ly(e){return e.kind===`open-file-search`}function Ry({group:e,region:t}){let n=new Set,r=[];for(let i of e.tabs)Ly(i)||!Iy(t,i)||n.has(i.id)||(n.add(i.id),r.push(i));return{tabs:r,activeTabId:e.activeTabId!==null&&n.has(e.activeTabId)?e.activeTabId:null}}function zy(e){return{...Ry({group:e,region:`secondary`}),isOpen:e.isOpen}}function By({state:e}){return{...e,secondary:zy(e.secondary),bottom:Ry({group:e.bottom,region:`bottom`})}}function Vy(e={}){return By({state:{version:1,secondary:e.secondary??{tabs:[],activeTabId:null,isOpen:!1},bottom:e.bottom??{tabs:[],activeTabId:null},lastUsedAt:e.lastUsedAt??0}})}var Hy=Vy();function Uy({threadId:e}){return`${ay}-${Dy(e)}-1`}function Wy(e){return e.startsWith(`bb.thread.fixedPanelTabsState-`)&&e.endsWith(`-1`)}function Gy({now:e,state:t}){return e-t.lastUsedAt>oy}function Ky({initialValue:e,now:t,storedValue:n}){return qy({initialValue:e,now:t,storedValue:n}).state}function qy({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=wy.safeParse(r);if(i.success){let n=By({state:i.data});return Gy({now:t,state:n})?{shouldPrune:!0,state:e}:{shouldPrune:!1,state:n}}let a=Ty.safeParse(r);if(!a.success)return{shouldPrune:!0,state:e};let o=By({state:{...a.data,secondary:{...a.data.secondary,isOpen:a.data.secondary.activeTabId!==null}}});return Gy({now:t,state:o})?{shouldPrune:!0,state:e}:{shouldPrune:!1,state:o}}function Jy({state:e}){return JSON.stringify(By({state:e}))}function Yy({now:e}){let t=Ey();if(!t)return;let n=[];for(let e=0;e<t.length;e+=1){let r=t.key(e);r&&Wy(r)&&n.push(r)}for(let r of n)qy({initialValue:Hy,now:e,storedValue:t.getItem(r)}).shouldPrune&&t.removeItem(r)}function Xy(e,t){if(e.id!==t.id||e.kind!==t.kind)return!1;switch(e.kind){case`thread-info`:case`git-diff`:case`open-file-search`:return!0;case`workspace-file-preview`:return t.kind===`workspace-file-preview`&&e.environmentId===t.environmentId&&e.lineNumber===t.lineNumber&&e.path===t.path&&l(e.source,t.source)&&e.statusLabel===t.statusLabel;case`host-file-preview`:return t.kind===`host-file-preview`&&e.lineNumber===t.lineNumber&&e.path===t.path;case`thread-storage-file-preview`:return t.kind===`thread-storage-file-preview`&&e.isPinned===t.isPinned&&e.path===t.path;case`terminal`:return t.kind===`terminal`&&e.terminalId===t.terminalId}}var Zy=`secondaryPanel`,Qy=`git-diff`,$y=`thread-info`;function eb(e){switch(e){case Qy:return`git-diff`;case $y:return`thread-info`;default:return null}}function tb(e){return eb(new URLSearchParams(e).get(Zy))}function nb(e,t){let n=new URLSearchParams(e);return t?n.set(Zy,t):n.delete(Zy),n.toString()}var rb=60*1e3;function ib(e){return e!=null&&e.length>0}function ab(e,t){return{...e,lastUsedAt:t}}var ob=$e({parse:(e,t)=>Ky({initialValue:t,now:Date.now(),storedValue:e}),serialize:e=>Jy({state:e})}),sb=tt(Hy),cb=Ye(e=>et(Uy({threadId:e}),Hy,ob,{getOnInit:!0}));function lb(e){return ib(e)?cb(e):sb}function ub(e){switch(e){case`thread-info`:return ky().id;case`git-diff`:return Ay().id}}function db(e){switch(e){case`thread-info`:return ky();case`git-diff`:return Ay()}}function fb(e){let t=e.bottom.activeTabId;if(t===null)return null;let n=e.bottom.tabs.find(e=>e.id===t);return n?.kind===`terminal`?n:null}function pb(e,t){let n=Fy({terminalId:t});return e.find(e=>e.id===n.id)?e:[...e,n]}function mb(e,t){let n=Fy({terminalId:t}),r=e.filter(e=>e.id!==n.id);return r.length===e.length?e:r}function hb(e,t){let n=ub(t);return e.some(e=>e.id===n)?e:[...e,db(t)]}function gb(e,t){return t!==null&&e.some(e=>e.id===t)}function _b(e){if(gb(e.secondary.tabs,e.secondary.activeTabId))return e.secondary.isOpen?e:{...e,secondary:{...e.secondary,isOpen:!0}};let t=`thread-info`,n=hb(e.secondary.tabs,t),r=ub(t);return{...e,secondary:{tabs:n,activeTabId:r,isOpen:!0}}}function vb(e){return e.secondary.isOpen?{...e,secondary:{...e.secondary,isOpen:!1}}:e}function yb(e){(0,K.useEffect)(()=>{Yy({now:Date.now()})},[e])}function bb(e){return ut(lb(e))}function xb(e){let t=nt(lb(e));return(0,K.useCallback)(n=>{if(!ib(e))return;let r=Date.now();t(e=>{let t=n(e);return t===e?e:ab(t,r)})},[t,e])}function Sb(e){let t=xb(e),n=(0,K.useRef)(null);return(0,K.useCallback)(()=>{let r=Date.now();n.current!==null&&n.current.threadId===e&&r-n.current.touchedAt<rb||(n.current={threadId:e,touchedAt:r},t(e=>!e.secondary.isOpen&&e.secondary.tabs.length===0&&e.bottom.tabs.length===0||r-e.lastUsedAt<rb?e:{...e}))},[e,t])}function Cb(e){let t=xb(e);return(0,K.useCallback)(e=>{t(t=>{let n=hb(t.secondary.tabs,e),r=ub(e);return n===t.secondary.tabs&&t.secondary.activeTabId===r&&t.secondary.isOpen?t:{...t,secondary:{tabs:n,activeTabId:r,isOpen:!0}}})},[t])}function wb(e){let t=xb(e);return(0,K.useCallback)(()=>{t(vb)},[t])}function Tb(e){let t=xb(e);return(0,K.useCallback)(()=>{t(e=>e.secondary.isOpen?vb(e):_b(e))},[t])}function Eb(e,t){let n=Be(),r=Ke();(0,K.useEffect)(()=>{if(!ib(e))return;let i=tb(n.search);if(i===null)return;t(i);let a=nb(n.search,null);r({pathname:n.pathname,search:a.length>0?`?${a}`:``},{replace:!0})},[n.pathname,n.search,r,t,e])}function Db(e){return fb(bb(e))?.terminalId??null}function Ob(e){let t=xb(e);return(0,K.useCallback)(e=>{t(t=>{if(e===null)return t.bottom.activeTabId===null?t:{...t,bottom:{...t.bottom,activeTabId:null}};let n=pb(t.bottom.tabs,e),r=Fy({terminalId:e}).id;return n===t.bottom.tabs&&t.bottom.activeTabId===r?t:{...t,bottom:{tabs:n,activeTabId:r}}})},[t])}function kb(e){let t=xb(e);return(0,K.useCallback)(e=>{t(t=>{let n=mb(t.bottom.tabs,e);if(n===t.bottom.tabs)return t;let r=t.bottom.activeTabId===Fy({terminalId:e}).id;return{...t,bottom:{tabs:n,activeTabId:r?null:t.bottom.activeTabId}}})},[t])}function Ab(e){return e.kind===`workspace-file-preview`}function jb(e){return e.kind===`host-file-preview`}function Mb(e){return e.kind===`thread-storage-file-preview`}function Nb(e){return e.kind===`open-file-search`}function Pb(e,t){return Ab(e)&&e.environmentId===t}function Fb(e){let t=e.secondary.activeTabId;return t===null?null:e.secondary.tabs.find(e=>e.id===t)??null}function Ib({activeTabId:e,isOpen:t,state:n,tabs:r}){return r===n.secondary.tabs&&e===n.secondary.activeTabId&&t===n.secondary.isOpen?n:{...n,secondary:{tabs:r,activeTabId:e,isOpen:t}}}function Lb(e,t){let n=e.filter(e=>!Mb(e)||e.path===t||!Ps(e.path));return n.length===e.length?e:n}function Rb(e,t){let n=e.findIndex(e=>e.id===t.id);if(n===-1)return[...e,t];let r=e[n];return r&&Xy(r,t)?e:e.map(e=>e.id===t.id?t:e)}function zb(e,t){let n=e.filter(e=>e.id!==t);return n.length===e.length?e:n}function Bb(e,t){let n=e.filter(e=>!Ab(e)||e.environmentId===t);return n.length===e.length?e:n}function Vb(e){let t=e.filter(e=>!Mb(e));return t.length===e.length?e:t}function Hb(e,t){let n=e.filter(e=>!Mb(e)||t.has(e.path));return n.length===e.length?e:n}function Ub(e,t){return t!==null&&e.some(e=>e.id===t)}function Wb(e,t){return Ny({isPinned:e===t,path:e})}function Gb(e,t){return Jb(e,t)?.id??Wb(t,t).id}function Kb(e,t){for(let n of e)if(Ab(n)&&n.path===t)return n;return null}function qb(e,t){for(let n of e)if(jb(n)&&n.path===t)return n;return null}function Jb(e,t){for(let n of e)if(Mb(n)&&n.path===t)return n;return null}function Yb(e){for(let t of e)if(Nb(t))return t;return null}function Xb({nextTab:e,state:t}){let n=Yb(t.secondary.tabs),r=n===null?t.secondary.tabs:zb(t.secondary.tabs,n.id),i=r.find(t=>t.id===e.id);if(i)return Ib({activeTabId:i.id,isOpen:!0,state:t,tabs:r});let a=n===null?Rb(r,e):t.secondary.tabs.map(t=>t.id===n.id?e:t);return Ib({activeTabId:e.id,isOpen:!0,state:t,tabs:a})}function Zb(e){return{lineNumber:e.lineNumber,path:e.path,source:e.source,statusLabel:e.statusLabel}}function Qb(e){return{lineNumber:e.lineNumber,path:e.path}}function $b(e){let t=e.filter(e=>e.isPinned),n=e.filter(e=>!e.isPinned);return[...t,...n]}function ex({threadId:e,environmentId:t,threadType:n,storageFiles:r}){let i=bb(e),a=xb(e),o=n!==void 0,s=n===`manager`,c=Fs(r),u=o?t??null:void 0;(0,K.useEffect)(()=>{u!==void 0&&a(e=>{let t=Bb(e.secondary.tabs,u);return Ib({activeTabId:Ub(t,e.secondary.activeTabId)?e.secondary.activeTabId:null,isOpen:e.secondary.isOpen,state:e,tabs:t})})},[u,a]),(0,K.useEffect)(()=>{o&&(s||a(e=>{let t=Vb(e.secondary.tabs);return Ib({activeTabId:Ub(t,e.secondary.activeTabId)?e.secondary.activeTabId:null,isOpen:e.secondary.isOpen,state:e,tabs:t})}))},[s,o,a]);let d=(0,K.useRef)(null);(0,K.useEffect)(()=>{if(!s){d.current=null;return}let e=d.current!==c;d.current=c,a(t=>{let n=Wb(c,c),r=Rb(e?Lb(t.secondary.tabs,c):t.secondary.tabs,n);return Ib({activeTabId:Ub(r,t.secondary.activeTabId)?t.secondary.activeTabId:n.id,isOpen:t.secondary.isOpen,state:t,tabs:r})})},[i.secondary.activeTabId,s,c,a]),(0,K.useEffect)(()=>{!o||!r||s&&a(e=>{let t=new Set([c,...r.map(e=>e.path)]),n=Hb(e.secondary.tabs,t);return Ib({activeTabId:Ub(n,e.secondary.activeTabId)?e.secondary.activeTabId:Gb(n,c),isOpen:e.secondary.isOpen,state:e,tabs:n})})},[s,o,c,r,a]);let f=(0,K.useCallback)(({lineNumber:e,path:t,source:n,statusLabel:r})=>{if(u===void 0)return;let i=jy({environmentId:u,tab:{lineNumber:e,path:t,source:n,statusLabel:r}});a(a=>{let o=Kb(a.secondary.tabs,t),s=Rb(a.secondary.tabs,i);return o&&o.environmentId===u&&o.lineNumber===e&&l(o.source,n)&&o.statusLabel===r&&a.secondary.activeTabId===i.id&&a.secondary.isOpen?a:Ib({activeTabId:i.id,isOpen:!0,state:a,tabs:s})})},[u,a]),p=(0,K.useCallback)(e=>{a(t=>{let n=Kb(t.secondary.tabs,e);if(!n)return t;let r=zb(t.secondary.tabs,n.id);return Ib({activeTabId:t.secondary.activeTabId===n.id?null:t.secondary.activeTabId,isOpen:t.secondary.isOpen,state:t,tabs:r})})},[a]),m=(0,K.useCallback)(e=>{a(t=>{let n=Kb(t.secondary.tabs,e);return!n||t.secondary.activeTabId===n.id&&t.secondary.isOpen?t:Ib({activeTabId:n.id,isOpen:!0,state:t,tabs:t.secondary.tabs})})},[a]),h=(0,K.useCallback)(e=>{if(!s)return;let t=Wb(e,c);a(e=>{let n=Rb(e.secondary.tabs,t);return n===e.secondary.tabs&&e.secondary.activeTabId===t.id&&e.secondary.isOpen?e:Ib({activeTabId:t.id,isOpen:!0,state:e,tabs:n})})},[s,c,a]),g=(0,K.useCallback)(({lineNumber:t,path:n})=>{if(!e)return;let r=My({lineNumber:t,path:n});a(e=>{let i=qb(e.secondary.tabs,n),a=Rb(e.secondary.tabs,r);return i&&i.lineNumber===t&&e.secondary.activeTabId===r.id&&e.secondary.isOpen?e:Ib({activeTabId:r.id,isOpen:!0,state:e,tabs:a})})},[e,a]),_=(0,K.useCallback)(e=>{a(t=>{let n=qb(t.secondary.tabs,e);if(!n)return t;let r=zb(t.secondary.tabs,n.id);return Ib({activeTabId:t.secondary.activeTabId===n.id?null:t.secondary.activeTabId,isOpen:t.secondary.isOpen,state:t,tabs:r})})},[a]),v=(0,K.useCallback)(e=>{a(t=>{let n=qb(t.secondary.tabs,e);return!n||t.secondary.activeTabId===n.id&&t.secondary.isOpen?t:Ib({activeTabId:n.id,isOpen:!0,state:t,tabs:t.secondary.tabs})})},[a]),y=(0,K.useCallback)(e=>{!s||e===c||a(t=>{let n=Jb(t.secondary.tabs,e);if(!n)return t;let r=zb(t.secondary.tabs,n.id);return Ib({activeTabId:t.secondary.activeTabId===n.id?null:t.secondary.activeTabId,isOpen:t.secondary.isOpen,state:t,tabs:r})})},[s,c,a]),b=(0,K.useCallback)(e=>{s&&a(t=>{let n=Jb(t.secondary.tabs,e);return!n||t.secondary.activeTabId===n.id&&t.secondary.isOpen?t:Ib({activeTabId:n.id,isOpen:!0,state:t,tabs:t.secondary.tabs})})},[s,a]),x=(0,K.useCallback)(()=>{let e=Py();a(t=>{let n=Rb(t.secondary.tabs,e);return n===t.secondary.tabs&&t.secondary.activeTabId===e.id&&t.secondary.isOpen?t:Ib({activeTabId:e.id,isOpen:!0,state:t,tabs:n})})},[a]),S=(0,K.useCallback)(()=>{let e=Py();a(t=>!Yb(t.secondary.tabs)||t.secondary.activeTabId===e.id&&t.secondary.isOpen?t:Ib({activeTabId:e.id,isOpen:!0,state:t,tabs:t.secondary.tabs}))},[a]),C=(0,K.useCallback)(()=>{let e=Py();a(t=>{let n=zb(t.secondary.tabs,e.id);return n===t.secondary.tabs?t:Ib({activeTabId:t.secondary.activeTabId===e.id?null:t.secondary.activeTabId,isOpen:t.secondary.isOpen,state:t,tabs:n})})},[a]),w=(0,K.useCallback)(e=>{if(e.source===`workspace`){if(u===void 0)return;let t=jy({environmentId:u,tab:{lineNumber:null,path:e.path,source:{kind:`working-tree`},statusLabel:null}});a(e=>Xb({nextTab:t,state:e}));return}if(!s)return;let t=Wb(e.path,c);a(e=>Xb({nextTab:t,state:e}))},[s,c,u,a]),T=(0,K.useCallback)(()=>{a(e=>{let t=Fb(e);return!t||t.kind!==`workspace-file-preview`&&t.kind!==`host-file-preview`&&t.kind!==`thread-storage-file-preview`?e:Ib({activeTabId:null,isOpen:e.secondary.isOpen,state:e,tabs:e.secondary.tabs})})},[a]),E=Fb(i),D=u===void 0?[]:i.secondary.tabs.filter(e=>Pb(e,u)),O=E?.kind===`workspace-file-preview`&&E.environmentId===u?E:null,k=s&&E?.kind===`thread-storage-file-preview`?E:null,A=E?.kind===`host-file-preview`?E:null,j=E?.kind===`open-file-search`?E:null,M=s?$b(i.secondary.tabs.filter(Mb)):[];return{activateOpenFileSearchTab:S,activateHostFileTab:v,activateStorageFileTab:b,activateWorkspaceFileTab:m,activeHostFileLineNumber:A?.lineNumber??null,activeHostFilePath:A?.path??null,activeStorageFilePath:k?.path??null,activeWorkspaceFileLineNumber:O?.lineNumber??null,activeWorkspaceFilePath:O?.path??null,activeWorkspaceFileSource:O?.source??null,activeWorkspaceFileStatusLabel:O?.statusLabel??null,clearActiveFileTabs:T,closeHostFileTab:_,closeOpenFileSearchTab:C,closeStorageFileTab:y,closeWorkspaceFileTab:p,hasOpenFileSearchTab:Yb(i.secondary.tabs)!==null,isOpenFileSearchActive:j!==null,openFileSearchTab:x,openHostFile:g,openHostFileTabs:i.secondary.tabs.filter(jb).map(Qb),openStorageFile:h,openStorageFilePaths:M.map(e=>e.path),openWorkspaceFile:f,openWorkspaceFileTabs:D.map(Zb),pinnedStorageFilePath:c,selectOpenFileSearchResult:w}}function tx(e){return e??void 0}function nx({previousStateKey:e,nextStateKey:t,persistedMergeBaseBranch:n,selectedMergeBaseBranch:r,updatePending:i}){return e===t?i?!1:r!==tx(n):!0}function rx({environment:e,workspaceStatus:t}){return e?.baseBranch??t?.branch.defaultBranch??e?.defaultBranch??void 0}function ix({environment:e,selectedMergeBaseBranch:t,workspaceStatus:n}){return t??e?.mergeBaseBranch??e?.baseBranch??n?.mergeBase?.mergeBaseBranch??n?.branch.defaultBranch??ue(e)}function ax({branch:e,environment:t,workspaceStatus:n}){let r=e.trim();return r.length===0||r===rx({environment:t,workspaceStatus:n})?null:r}function ox({environment:e,mergeBaseBranchOptions:t,selectedMergeBaseBranch:n,setSelectedMergeBaseBranch:r,thread:i,updateEnvironment:a,workspaceStatus:o}){let s=(0,K.useRef)(void 0),c=e?.id??i?.id,l=a.isPending&&a.variables?.id===e?.id;(0,K.useEffect)(()=>{nx({previousStateKey:s.current,nextStateKey:c,persistedMergeBaseBranch:e?.mergeBaseBranch,selectedMergeBaseBranch:n,updatePending:l})&&(s.current=c,r(tx(e?.mergeBaseBranch)))},[e?.mergeBaseBranch,l,c,n,r]);let u=ix({environment:e,selectedMergeBaseBranch:n,workspaceStatus:o}),d=!!(u||o?.branch.defaultBranch),f=u,p=(0,K.useMemo)(()=>Xn({mergeBaseBranch:f,mergeBaseBranchOptions:t}),[f,t]),m=o?.branch.currentBranch!=null&&o.branch.currentBranch===o.branch.defaultBranch,h=d&&!!f&&!m;return{canSelectMergeBase:!!(h&&f&&p.length>0),effectiveMergeBaseBranch:u,handleMergeBaseBranchChange:(0,K.useCallback)(t=>{if(!e||!i?.environmentId)return;let n=t.trim(),s=ax({branch:n,environment:e,workspaceStatus:o}),c=e.mergeBaseBranch;r(n),s!==c&&a.mutate({id:e.id,mergeBaseBranch:s},{onError:t=>{r(e.mergeBaseBranch??void 0),Qt.error(fn({error:t,fallbackMessage:`Failed to update merge base branch.`}))}})},[e,r,i?.environmentId,a,o]),showBranchComparisonUi:d,showMergeBase:h,mergeBaseBranch:f,mergeBaseCandidates:p}}var sx=d((e=>{e.__esModule=!0,e.extend=a,e.indexOf=l,e.escapeExpression=u,e.isEmpty=d,e.createFrame=f,e.blockParams=p,e.appendContextPath=m;var t={"&":`&`,"<":`<`,">":`>`,'"':`"`,"'":`'`,"`":```,"=":`=`},n=/[&<>"'`=]/g,r=/[&<>"'`=]/;function i(e){return t[e]}function a(e){for(var t=1;t<arguments.length;t++)for(var n in arguments[t])Object.prototype.hasOwnProperty.call(arguments[t],n)&&(e[n]=arguments[t][n]);return e}var o=Object.prototype.toString;e.toString=o;var s=function(e){return typeof e==`function`};s(/x/)&&(e.isFunction=s=function(e){return typeof e==`function`&&o.call(e)===`[object Function]`}),e.isFunction=s;var c=Array.isArray||function(e){return e&&typeof e==`object`?o.call(e)===`[object Array]`:!1};e.isArray=c;function l(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1}function u(e){if(typeof e!=`string`){if(e&&e.toHTML)return e.toHTML();if(e==null)return``;if(!e)return e+``;e=``+e}return r.test(e)?e.replace(n,i):e}function d(e){return!e&&e!==0?!0:!!(c(e)&&e.length===0)}function f(e){var t=a({},e);return t._parent=e,t}function p(e,t){return e.path=t,e}function m(e,t){return(e?e+`.`:``)+t}})),cx=d(((e,t)=>{e.__esModule=!0;var n=[`description`,`fileName`,`lineNumber`,`endLineNumber`,`message`,`name`,`number`,`stack`];function r(e,t){var i=t&&t.loc,a=void 0,o=void 0,s=void 0,c=void 0;i&&(a=i.start.line,o=i.end.line,s=i.start.column,c=i.end.column,e+=` - `+a+`:`+s);for(var l=Error.prototype.constructor.call(this,e),u=0;u<n.length;u++)this[n[u]]=l[n[u]];Error.captureStackTrace&&Error.captureStackTrace(this,r);try{i&&(this.lineNumber=a,this.endLineNumber=o,Object.defineProperty?(Object.defineProperty(this,`column`,{value:s,enumerable:!0}),Object.defineProperty(this,`endColumn`,{value:c,enumerable:!0})):(this.column=s,this.endColumn=c))}catch{}}r.prototype=Error(),e.default=r,t.exports=e.default})),lx=d(((e,t)=>{e.__esModule=!0;var n=sx();e.default=function(e){e.registerHelper(`blockHelperMissing`,function(t,r){var i=r.inverse,a=r.fn;if(t===!0)return a(this);if(t===!1||t==null)return i(this);if(n.isArray(t))return t.length>0?(r.ids&&=[r.name],e.helpers.each(t,r)):i(this);if(r.data&&r.ids){var o=n.createFrame(r.data);o.contextPath=n.appendContextPath(r.data.contextPath,r.name),r={data:o}}return a(t,r)})},t.exports=e.default})),ux=d(((e,t)=>{e.__esModule=!0;function n(e){return e&&e.__esModule?e:{default:e}}var r=sx(),i=n(cx());e.default=function(e){e.registerHelper(`each`,function(e,t){if(!t)throw new i.default(`Must pass iterator to #each`);var n=t.fn,a=t.inverse,o=0,s=``,c=void 0,l=void 0;t.data&&t.ids&&(l=r.appendContextPath(t.data.contextPath,t.ids[0])+`.`),r.isFunction(e)&&(e=e.call(this)),t.data&&(c=r.createFrame(t.data));function u(t,i,a){c&&(c.key=t,c.index=i,c.first=i===0,c.last=!!a,l&&(c.contextPath=l+t)),s+=n(e[t],{data:c,blockParams:r.blockParams([e[t],t],[l+t,null])})}if(e&&typeof e==`object`)if(r.isArray(e))for(var d=e.length;o<d;o++)o in e&&u(o,o,o===e.length-1);else if(typeof Symbol==`function`&&e[Symbol.iterator]){for(var f=[],p=e[Symbol.iterator](),m=p.next();!m.done;m=p.next())f.push(m.value);e=f;for(var d=e.length;o<d;o++)u(o,o,o===e.length-1)}else (function(){var t=void 0;Object.keys(e).forEach(function(e){t!==void 0&&u(t,o-1),t=e,o++}),t!==void 0&&u(t,o-1,!0)})();return o===0&&(s=a(this)),s})},t.exports=e.default})),dx=d(((e,t)=>{e.__esModule=!0;function n(e){return e&&e.__esModule?e:{default:e}}var r=n(cx());e.default=function(e){e.registerHelper(`helperMissing`,function(){if(arguments.length!==1)throw new r.default(`Missing helper: "`+arguments[arguments.length-1].name+`"`)})},t.exports=e.default})),fx=d(((e,t)=>{e.__esModule=!0;function n(e){return e&&e.__esModule?e:{default:e}}var r=sx(),i=n(cx());e.default=function(e){e.registerHelper(`if`,function(e,t){if(arguments.length!=2)throw new i.default(`#if requires exactly one argument`);return r.isFunction(e)&&(e=e.call(this)),!t.hash.includeZero&&!e||r.isEmpty(e)?t.inverse(this):t.fn(this)}),e.registerHelper(`unless`,function(t,n){if(arguments.length!=2)throw new i.default(`#unless requires exactly one argument`);return e.helpers.if.call(this,t,{fn:n.inverse,inverse:n.fn,hash:n.hash})})},t.exports=e.default})),px=d(((e,t)=>{e.__esModule=!0,e.default=function(e){e.registerHelper(`log`,function(){for(var t=[void 0],n=arguments[arguments.length-1],r=0;r<arguments.length-1;r++)t.push(arguments[r]);var i=1;n.hash.level==null?n.data&&n.data.level!=null&&(i=n.data.level):i=n.hash.level,t[0]=i,e.log.apply(e,t)})},t.exports=e.default})),mx=d(((e,t)=>{e.__esModule=!0,e.default=function(e){e.registerHelper(`lookup`,function(e,t,n){return e&&n.lookupProperty(e,t)})},t.exports=e.default})),hx=d(((e,t)=>{e.__esModule=!0;function n(e){return e&&e.__esModule?e:{default:e}}var r=sx(),i=n(cx());e.default=function(e){e.registerHelper(`with`,function(e,t){if(arguments.length!=2)throw new i.default(`#with requires exactly one argument`);r.isFunction(e)&&(e=e.call(this));var n=t.fn;if(r.isEmpty(e))return t.inverse(this);var a=t.data;return t.data&&t.ids&&(a=r.createFrame(t.data),a.contextPath=r.appendContextPath(t.data.contextPath,t.ids[0])),n(e,{data:a,blockParams:r.blockParams([e],[a&&a.contextPath])})})},t.exports=e.default})),gx=d((e=>{e.__esModule=!0,e.registerDefaultHelpers=l,e.moveHelperToHooks=u;function t(e){return e&&e.__esModule?e:{default:e}}var n=t(lx()),r=t(ux()),i=t(dx()),a=t(fx()),o=t(px()),s=t(mx()),c=t(hx());function l(e){n.default(e),r.default(e),i.default(e),a.default(e),o.default(e),s.default(e),c.default(e)}function u(e,t,n){e.helpers[t]&&(e.hooks[t]=e.helpers[t],n||delete e.helpers[t])}})),_x=d(((e,t)=>{e.__esModule=!0;var n=sx();e.default=function(e){e.registerDecorator(`inline`,function(e,t,r,i){var a=e;return t.partials||(t.partials={},a=function(i,a){var o=r.partials;r.partials=n.extend({},o,t.partials);var s=e(i,a);return r.partials=o,s}),t.partials[i.args[0]]=i.fn,a})},t.exports=e.default})),vx=d((e=>{e.__esModule=!0,e.registerDefaultDecorators=r;function t(e){return e&&e.__esModule?e:{default:e}}var n=t(_x());function r(e){n.default(e)}})),yx=d(((e,t)=>{e.__esModule=!0;var n=sx(),r={methodMap:[`debug`,`info`,`warn`,`error`],level:`info`,lookupLevel:function(e){if(typeof e==`string`){var t=n.indexOf(r.methodMap,e.toLowerCase());e=t>=0?t:parseInt(e,10)}return e},log:function(e){if(e=r.lookupLevel(e),typeof console<`u`&&r.lookupLevel(r.level)<=e){var t=r.methodMap[e];console[t]||(t=`log`);var n=[...arguments].slice(1);console[t].apply(console,n)}}};e.default=r,t.exports=e.default})),bx=d((e=>{e.__esModule=!0,e.createNewLookupObject=n;var t=sx();function n(){var e=[...arguments];return t.extend.apply(void 0,[Object.create(null)].concat(e))}})),xx=d((e=>{e.__esModule=!0,e.createProtoAccessControl=a,e.resultIsAllowed=o,e.resetLoggedProperties=l;function t(e){return e&&e.__esModule?e:{default:e}}var n=bx(),r=t(yx()),i=Object.create(null);function a(e){var t=Object.create(null);t.constructor=!1,t.__defineGetter__=!1,t.__defineSetter__=!1,t.__lookupGetter__=!1;var r=Object.create(null);return r.__proto__=!1,{properties:{whitelist:n.createNewLookupObject(r,e.allowedProtoProperties),defaultValue:e.allowProtoPropertiesByDefault},methods:{whitelist:n.createNewLookupObject(t,e.allowedProtoMethods),defaultValue:e.allowProtoMethodsByDefault}}}function o(e,t,n){return s(typeof e==`function`?t.methods:t.properties,n)}function s(e,t){return e.whitelist[t]===void 0?e.defaultValue===void 0?(c(t),!1):e.defaultValue:e.whitelist[t]===!0}function c(e){i[e]!==!0&&(i[e]=!0,r.default.log(`error`,`Handlebars: Access has been denied to resolve the property "`+e+`" because it is not an "own property" of its parent.
|
|
1816
|
-
You can add a runtime option to disable the check or this warning:
|
|
1817
|
-
See https://handlebarsjs.com/api-reference/runtime-options.html#options-to-control-prototype-access for details`))}function l(){Object.keys(i).forEach(function(e){delete i[e]})}})),Sx=d((e=>{e.__esModule=!0,e.HandlebarsEnvironment=l;function t(e){return e&&e.__esModule?e:{default:e}}var n=sx(),r=t(cx()),i=gx(),a=vx(),o=t(yx()),s=xx();e.VERSION=`4.7.8`,e.COMPILER_REVISION=8,e.LAST_COMPATIBLE_COMPILER_REVISION=7,e.REVISION_CHANGES={1:`<= 1.0.rc.2`,2:`== 1.0.0-rc.3`,3:`== 1.0.0-rc.4`,4:`== 1.x.x`,5:`== 2.0.0-alpha.x`,6:`>= 2.0.0-beta.1`,7:`>= 4.0.0 <4.3.0`,8:`>= 4.3.0`};var c=`[object Object]`;function l(e,t,n){this.helpers=e||{},this.partials=t||{},this.decorators=n||{},i.registerDefaultHelpers(this),a.registerDefaultDecorators(this)}l.prototype={constructor:l,logger:o.default,log:o.default.log,registerHelper:function(e,t){if(n.toString.call(e)===c){if(t)throw new r.default(`Arg not supported with multiple helpers`);n.extend(this.helpers,e)}else this.helpers[e]=t},unregisterHelper:function(e){delete this.helpers[e]},registerPartial:function(e,t){if(n.toString.call(e)===c)n.extend(this.partials,e);else{if(t===void 0)throw new r.default(`Attempting to register a partial called "`+e+`" as undefined`);this.partials[e]=t}},unregisterPartial:function(e){delete this.partials[e]},registerDecorator:function(e,t){if(n.toString.call(e)===c){if(t)throw new r.default(`Arg not supported with multiple decorators`);n.extend(this.decorators,e)}else this.decorators[e]=t},unregisterDecorator:function(e){delete this.decorators[e]},resetLoggedPropertyAccesses:function(){s.resetLoggedProperties()}},e.log=o.default.log,e.createFrame=n.createFrame,e.logger=o.default})),Cx=d(((e,t)=>{e.__esModule=!0;function n(e){this.string=e}n.prototype.toString=n.prototype.toHTML=function(){return``+this.string},e.default=n,t.exports=e.default})),wx=d((e=>{e.__esModule=!0,e.wrapHelper=t;function t(e,t){return typeof e==`function`?function(){var n=arguments[arguments.length-1];return arguments[arguments.length-1]=t(n),e.apply(this,arguments)}:e}})),Tx=d((e=>{e.__esModule=!0,e.checkRevision=l,e.template=u,e.wrapProgram=d,e.resolvePartial=f,e.invokePartial=p,e.noop=m;function t(e){return e&&e.__esModule?e:{default:e}}function n(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}var r=n(sx()),i=t(cx()),a=Sx(),o=gx(),s=wx(),c=xx();function l(e){var t=e&&e[0]||1,n=a.COMPILER_REVISION;if(!(t>=a.LAST_COMPATIBLE_COMPILER_REVISION&&t<=a.COMPILER_REVISION))if(t<a.LAST_COMPATIBLE_COMPILER_REVISION){var r=a.REVISION_CHANGES[n],o=a.REVISION_CHANGES[t];throw new i.default(`Template was precompiled with an older version of Handlebars than the current runtime. Please update your precompiler to a newer version (`+r+`) or downgrade your runtime to an older version (`+o+`).`)}else throw new i.default(`Template was precompiled with a newer version of Handlebars than the current runtime. Please update your runtime to a newer version (`+e[1]+`).`)}function u(e,t){if(!t)throw new i.default(`No environment passed to template`);if(!e||!e.main)throw new i.default(`Unknown template object: `+typeof e);e.main.decorator=e.main_d,t.VM.checkRevision(e.compiler);var n=e.compiler&&e.compiler[0]===7;function a(n,a,o){o.hash&&(a=r.extend({},a,o.hash),o.ids&&(o.ids[0]=!0)),n=t.VM.resolvePartial.call(this,n,a,o);var s=r.extend({},o,{hooks:this.hooks,protoAccessControl:this.protoAccessControl}),c=t.VM.invokePartial.call(this,n,a,s);if(c==null&&t.compile&&(o.partials[o.name]=t.compile(n,e.compilerOptions,t),c=o.partials[o.name](a,s)),c!=null){if(o.indent){for(var l=c.split(`
|
|
1818
|
-
`),u=0,d=l.length;u<d&&!(!l[u]&&u+1===d);u++)l[u]=o.indent+l[u];c=l.join(`
|
|
1819
|
-
`)}return c}else throw new i.default(`The partial `+o.name+` could not be compiled when running in runtime-only mode`)}var s={strict:function(e,t,n){if(!e||!(t in e))throw new i.default(`"`+t+`" not defined in `+e,{loc:n});return s.lookupProperty(e,t)},lookupProperty:function(e,t){var n=e[t];if(n==null||Object.prototype.hasOwnProperty.call(e,t)||c.resultIsAllowed(n,s.protoAccessControl,t))return n},lookup:function(e,t){for(var n=e.length,r=0;r<n;r++)if((e[r]&&s.lookupProperty(e[r],t))!=null)return e[r][t]},lambda:function(e,t){return typeof e==`function`?e.call(t):e},escapeExpression:r.escapeExpression,invokePartial:a,fn:function(t){var n=e[t];return n.decorator=e[t+`_d`],n},programs:[],program:function(e,t,n,r,i){var a=this.programs[e],o=this.fn(e);return t||i||r||n?a=d(this,e,o,t,n,r,i):a||=this.programs[e]=d(this,e,o),a},data:function(e,t){for(;e&&t--;)e=e._parent;return e},mergeIfNeeded:function(e,t){var n=e||t;return e&&t&&e!==t&&(n=r.extend({},t,e)),n},nullContext:Object.seal({}),noop:t.VM.noop,compilerInfo:e.compiler};function l(t){var n=arguments.length<=1||arguments[1]===void 0?{}:arguments[1],r=n.data;l._setup(n),!n.partial&&e.useData&&(r=h(t,r));var i=void 0,a=e.useBlockParams?[]:void 0;e.useDepths&&(i=n.depths?t==n.depths[0]?n.depths:[t].concat(n.depths):[t]);function o(t){return``+e.main(s,t,s.helpers,s.partials,r,a,i)}return o=g(e.main,o,s,n.depths||[],r,a),o(t,n)}return l.isTop=!0,l._setup=function(i){if(i.partial)s.protoAccessControl=i.protoAccessControl,s.helpers=i.helpers,s.partials=i.partials,s.decorators=i.decorators,s.hooks=i.hooks;else{var a=r.extend({},t.helpers,i.helpers);_(a,s),s.helpers=a,e.usePartial&&(s.partials=s.mergeIfNeeded(i.partials,t.partials)),(e.usePartial||e.useDecorators)&&(s.decorators=r.extend({},t.decorators,i.decorators)),s.hooks={},s.protoAccessControl=c.createProtoAccessControl(i);var l=i.allowCallsToHelperMissing||n;o.moveHelperToHooks(s,`helperMissing`,l),o.moveHelperToHooks(s,`blockHelperMissing`,l)}},l._child=function(t,n,r,a){if(e.useBlockParams&&!r)throw new i.default(`must pass block params`);if(e.useDepths&&!a)throw new i.default(`must pass parent depths`);return d(s,t,e[t],n,0,r,a)},l}function d(e,t,n,r,i,a,o){function s(t){var i=arguments.length<=1||arguments[1]===void 0?{}:arguments[1],s=o;return o&&t!=o[0]&&!(t===e.nullContext&&o[0]===null)&&(s=[t].concat(o)),n(e,t,e.helpers,e.partials,i.data||r,a&&[i.blockParams].concat(a),s)}return s=g(n,s,e,o,r,a),s.program=t,s.depth=o?o.length:0,s.blockParams=i||0,s}function f(e,t,n){return e?!e.call&&!n.name&&(n.name=e,e=n.partials[e]):e=n.name===`@partial-block`?n.data[`partial-block`]:n.partials[n.name],e}function p(e,t,n){var o=n.data&&n.data[`partial-block`];n.partial=!0,n.ids&&(n.data.contextPath=n.ids[0]||n.data.contextPath);var s=void 0;if(n.fn&&n.fn!==m&&(function(){n.data=a.createFrame(n.data);var e=n.fn;s=n.data[`partial-block`]=function(t){var n=arguments.length<=1||arguments[1]===void 0?{}:arguments[1];return n.data=a.createFrame(n.data),n.data[`partial-block`]=o,e(t,n)},e.partials&&(n.partials=r.extend({},n.partials,e.partials))})(),e===void 0&&s&&(e=s),e===void 0)throw new i.default(`The partial `+n.name+` could not be found`);if(e instanceof Function)return e(t,n)}function m(){return``}function h(e,t){return(!t||!(`root`in t))&&(t=t?a.createFrame(t):{},t.root=e),t}function g(e,t,n,i,a,o){if(e.decorator){var s={};t=e.decorator(t,s,n,i&&i[0],a,o,i),r.extend(t,s)}return t}function _(e,t){Object.keys(e).forEach(function(n){var r=e[n];e[n]=v(r,t)})}function v(e,t){var n=t.lookupProperty;return s.wrapHelper(e,function(e){return r.extend({lookupProperty:n},e)})}})),Ex=d(((e,t)=>{e.__esModule=!0,e.default=function(e){(function(){typeof globalThis!=`object`&&(Object.prototype.__defineGetter__(`__magic__`,function(){return this}),__magic__.globalThis=__magic__,delete Object.prototype.__magic__)})();var t=globalThis.Handlebars;e.noConflict=function(){return globalThis.Handlebars===e&&(globalThis.Handlebars=t),e}},t.exports=e.default})),Dx=d(((e,t)=>{e.__esModule=!0;function n(e){return e&&e.__esModule?e:{default:e}}function r(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}var i=r(Sx()),a=n(Cx()),o=n(cx()),s=r(sx()),c=r(Tx()),l=n(Ex());function u(){var e=new i.HandlebarsEnvironment;return s.extend(e,i),e.SafeString=a.default,e.Exception=o.default,e.Utils=s,e.escapeExpression=s.escapeExpression,e.VM=c,e.template=function(t){return c.template(t,e)},e}var d=u();d.create=u,l.default(d),d.default=d,e.default=d,t.exports=e.default})),Ox=d(((e,t)=>{e.__esModule=!0;var n={helpers:{helperExpression:function(e){return e.type===`SubExpression`||(e.type===`MustacheStatement`||e.type===`BlockStatement`)&&!!(e.params&&e.params.length||e.hash)},scopedId:function(e){return/^\.|this\b/.test(e.original)},simpleId:function(e){return e.parts.length===1&&!n.helpers.scopedId(e)&&!e.depth}}};e.default=n,t.exports=e.default})),kx=d(((e,t)=>{e.__esModule=!0,e.default=(function(){var e={trace:function(){},yy:{},symbols_:{error:2,root:3,program:4,EOF:5,program_repetition0:6,statement:7,mustache:8,block:9,rawBlock:10,partial:11,partialBlock:12,content:13,COMMENT:14,CONTENT:15,openRawBlock:16,rawBlock_repetition0:17,END_RAW_BLOCK:18,OPEN_RAW_BLOCK:19,helperName:20,openRawBlock_repetition0:21,openRawBlock_option0:22,CLOSE_RAW_BLOCK:23,openBlock:24,block_option0:25,closeBlock:26,openInverse:27,block_option1:28,OPEN_BLOCK:29,openBlock_repetition0:30,openBlock_option0:31,openBlock_option1:32,CLOSE:33,OPEN_INVERSE:34,openInverse_repetition0:35,openInverse_option0:36,openInverse_option1:37,openInverseChain:38,OPEN_INVERSE_CHAIN:39,openInverseChain_repetition0:40,openInverseChain_option0:41,openInverseChain_option1:42,inverseAndProgram:43,INVERSE:44,inverseChain:45,inverseChain_option0:46,OPEN_ENDBLOCK:47,OPEN:48,mustache_repetition0:49,mustache_option0:50,OPEN_UNESCAPED:51,mustache_repetition1:52,mustache_option1:53,CLOSE_UNESCAPED:54,OPEN_PARTIAL:55,partialName:56,partial_repetition0:57,partial_option0:58,openPartialBlock:59,OPEN_PARTIAL_BLOCK:60,openPartialBlock_repetition0:61,openPartialBlock_option0:62,param:63,sexpr:64,OPEN_SEXPR:65,sexpr_repetition0:66,sexpr_option0:67,CLOSE_SEXPR:68,hash:69,hash_repetition_plus0:70,hashSegment:71,ID:72,EQUALS:73,blockParams:74,OPEN_BLOCK_PARAMS:75,blockParams_repetition_plus0:76,CLOSE_BLOCK_PARAMS:77,path:78,dataName:79,STRING:80,NUMBER:81,BOOLEAN:82,UNDEFINED:83,NULL:84,DATA:85,pathSegments:86,SEP:87,$accept:0,$end:1},terminals_:{2:`error`,5:`EOF`,14:`COMMENT`,15:`CONTENT`,18:`END_RAW_BLOCK`,19:`OPEN_RAW_BLOCK`,23:`CLOSE_RAW_BLOCK`,29:`OPEN_BLOCK`,33:`CLOSE`,34:`OPEN_INVERSE`,39:`OPEN_INVERSE_CHAIN`,44:`INVERSE`,47:`OPEN_ENDBLOCK`,48:`OPEN`,51:`OPEN_UNESCAPED`,54:`CLOSE_UNESCAPED`,55:`OPEN_PARTIAL`,60:`OPEN_PARTIAL_BLOCK`,65:`OPEN_SEXPR`,68:`CLOSE_SEXPR`,72:`ID`,73:`EQUALS`,75:`OPEN_BLOCK_PARAMS`,77:`CLOSE_BLOCK_PARAMS`,80:`STRING`,81:`NUMBER`,82:`BOOLEAN`,83:`UNDEFINED`,84:`NULL`,85:`DATA`,87:`SEP`},productions_:[0,[3,2],[4,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[13,1],[10,3],[16,5],[9,4],[9,4],[24,6],[27,6],[38,6],[43,2],[45,3],[45,1],[26,3],[8,5],[8,5],[11,5],[12,3],[59,5],[63,1],[63,1],[64,5],[69,1],[71,3],[74,3],[20,1],[20,1],[20,1],[20,1],[20,1],[20,1],[20,1],[56,1],[56,1],[79,2],[78,1],[86,3],[86,1],[6,0],[6,2],[17,0],[17,2],[21,0],[21,2],[22,0],[22,1],[25,0],[25,1],[28,0],[28,1],[30,0],[30,2],[31,0],[31,1],[32,0],[32,1],[35,0],[35,2],[36,0],[36,1],[37,0],[37,1],[40,0],[40,2],[41,0],[41,1],[42,0],[42,1],[46,0],[46,1],[49,0],[49,2],[50,0],[50,1],[52,0],[52,2],[53,0],[53,1],[57,0],[57,2],[58,0],[58,1],[61,0],[61,2],[62,0],[62,1],[66,0],[66,2],[67,0],[67,1],[70,1],[70,2],[76,1],[76,2]],performAction:function(e,t,n,r,i,a,o){var s=a.length-1;switch(i){case 1:return a[s-1];case 2:this.$=r.prepareProgram(a[s]);break;case 3:this.$=a[s];break;case 4:this.$=a[s];break;case 5:this.$=a[s];break;case 6:this.$=a[s];break;case 7:this.$=a[s];break;case 8:this.$=a[s];break;case 9:this.$={type:`CommentStatement`,value:r.stripComment(a[s]),strip:r.stripFlags(a[s],a[s]),loc:r.locInfo(this._$)};break;case 10:this.$={type:`ContentStatement`,original:a[s],value:a[s],loc:r.locInfo(this._$)};break;case 11:this.$=r.prepareRawBlock(a[s-2],a[s-1],a[s],this._$);break;case 12:this.$={path:a[s-3],params:a[s-2],hash:a[s-1]};break;case 13:this.$=r.prepareBlock(a[s-3],a[s-2],a[s-1],a[s],!1,this._$);break;case 14:this.$=r.prepareBlock(a[s-3],a[s-2],a[s-1],a[s],!0,this._$);break;case 15:this.$={open:a[s-5],path:a[s-4],params:a[s-3],hash:a[s-2],blockParams:a[s-1],strip:r.stripFlags(a[s-5],a[s])};break;case 16:this.$={path:a[s-4],params:a[s-3],hash:a[s-2],blockParams:a[s-1],strip:r.stripFlags(a[s-5],a[s])};break;case 17:this.$={path:a[s-4],params:a[s-3],hash:a[s-2],blockParams:a[s-1],strip:r.stripFlags(a[s-5],a[s])};break;case 18:this.$={strip:r.stripFlags(a[s-1],a[s-1]),program:a[s]};break;case 19:var c=r.prepareBlock(a[s-2],a[s-1],a[s],a[s],!1,this._$),l=r.prepareProgram([c],a[s-1].loc);l.chained=!0,this.$={strip:a[s-2].strip,program:l,chain:!0};break;case 20:this.$=a[s];break;case 21:this.$={path:a[s-1],strip:r.stripFlags(a[s-2],a[s])};break;case 22:this.$=r.prepareMustache(a[s-3],a[s-2],a[s-1],a[s-4],r.stripFlags(a[s-4],a[s]),this._$);break;case 23:this.$=r.prepareMustache(a[s-3],a[s-2],a[s-1],a[s-4],r.stripFlags(a[s-4],a[s]),this._$);break;case 24:this.$={type:`PartialStatement`,name:a[s-3],params:a[s-2],hash:a[s-1],indent:``,strip:r.stripFlags(a[s-4],a[s]),loc:r.locInfo(this._$)};break;case 25:this.$=r.preparePartialBlock(a[s-2],a[s-1],a[s],this._$);break;case 26:this.$={path:a[s-3],params:a[s-2],hash:a[s-1],strip:r.stripFlags(a[s-4],a[s])};break;case 27:this.$=a[s];break;case 28:this.$=a[s];break;case 29:this.$={type:`SubExpression`,path:a[s-3],params:a[s-2],hash:a[s-1],loc:r.locInfo(this._$)};break;case 30:this.$={type:`Hash`,pairs:a[s],loc:r.locInfo(this._$)};break;case 31:this.$={type:`HashPair`,key:r.id(a[s-2]),value:a[s],loc:r.locInfo(this._$)};break;case 32:this.$=r.id(a[s-1]);break;case 33:this.$=a[s];break;case 34:this.$=a[s];break;case 35:this.$={type:`StringLiteral`,value:a[s],original:a[s],loc:r.locInfo(this._$)};break;case 36:this.$={type:`NumberLiteral`,value:Number(a[s]),original:Number(a[s]),loc:r.locInfo(this._$)};break;case 37:this.$={type:`BooleanLiteral`,value:a[s]===`true`,original:a[s]===`true`,loc:r.locInfo(this._$)};break;case 38:this.$={type:`UndefinedLiteral`,original:void 0,value:void 0,loc:r.locInfo(this._$)};break;case 39:this.$={type:`NullLiteral`,original:null,value:null,loc:r.locInfo(this._$)};break;case 40:this.$=a[s];break;case 41:this.$=a[s];break;case 42:this.$=r.preparePath(!0,a[s],this._$);break;case 43:this.$=r.preparePath(!1,a[s],this._$);break;case 44:a[s-2].push({part:r.id(a[s]),original:a[s],separator:a[s-1]}),this.$=a[s-2];break;case 45:this.$=[{part:r.id(a[s]),original:a[s]}];break;case 46:this.$=[];break;case 47:a[s-1].push(a[s]);break;case 48:this.$=[];break;case 49:a[s-1].push(a[s]);break;case 50:this.$=[];break;case 51:a[s-1].push(a[s]);break;case 58:this.$=[];break;case 59:a[s-1].push(a[s]);break;case 64:this.$=[];break;case 65:a[s-1].push(a[s]);break;case 70:this.$=[];break;case 71:a[s-1].push(a[s]);break;case 78:this.$=[];break;case 79:a[s-1].push(a[s]);break;case 82:this.$=[];break;case 83:a[s-1].push(a[s]);break;case 86:this.$=[];break;case 87:a[s-1].push(a[s]);break;case 90:this.$=[];break;case 91:a[s-1].push(a[s]);break;case 94:this.$=[];break;case 95:a[s-1].push(a[s]);break;case 98:this.$=[a[s]];break;case 99:a[s-1].push(a[s]);break;case 100:this.$=[a[s]];break;case 101:a[s-1].push(a[s]);break}},table:[{3:1,4:2,5:[2,46],6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{1:[3]},{5:[1,4]},{5:[2,2],7:5,8:6,9:7,10:8,11:9,12:10,13:11,14:[1,12],15:[1,20],16:17,19:[1,23],24:15,27:16,29:[1,21],34:[1,22],39:[2,2],44:[2,2],47:[2,2],48:[1,13],51:[1,14],55:[1,18],59:19,60:[1,24]},{1:[2,1]},{5:[2,47],14:[2,47],15:[2,47],19:[2,47],29:[2,47],34:[2,47],39:[2,47],44:[2,47],47:[2,47],48:[2,47],51:[2,47],55:[2,47],60:[2,47]},{5:[2,3],14:[2,3],15:[2,3],19:[2,3],29:[2,3],34:[2,3],39:[2,3],44:[2,3],47:[2,3],48:[2,3],51:[2,3],55:[2,3],60:[2,3]},{5:[2,4],14:[2,4],15:[2,4],19:[2,4],29:[2,4],34:[2,4],39:[2,4],44:[2,4],47:[2,4],48:[2,4],51:[2,4],55:[2,4],60:[2,4]},{5:[2,5],14:[2,5],15:[2,5],19:[2,5],29:[2,5],34:[2,5],39:[2,5],44:[2,5],47:[2,5],48:[2,5],51:[2,5],55:[2,5],60:[2,5]},{5:[2,6],14:[2,6],15:[2,6],19:[2,6],29:[2,6],34:[2,6],39:[2,6],44:[2,6],47:[2,6],48:[2,6],51:[2,6],55:[2,6],60:[2,6]},{5:[2,7],14:[2,7],15:[2,7],19:[2,7],29:[2,7],34:[2,7],39:[2,7],44:[2,7],47:[2,7],48:[2,7],51:[2,7],55:[2,7],60:[2,7]},{5:[2,8],14:[2,8],15:[2,8],19:[2,8],29:[2,8],34:[2,8],39:[2,8],44:[2,8],47:[2,8],48:[2,8],51:[2,8],55:[2,8],60:[2,8]},{5:[2,9],14:[2,9],15:[2,9],19:[2,9],29:[2,9],34:[2,9],39:[2,9],44:[2,9],47:[2,9],48:[2,9],51:[2,9],55:[2,9],60:[2,9]},{20:25,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:36,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:37,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],39:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{4:38,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{15:[2,48],17:39,18:[2,48]},{20:41,56:40,64:42,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:44,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{5:[2,10],14:[2,10],15:[2,10],18:[2,10],19:[2,10],29:[2,10],34:[2,10],39:[2,10],44:[2,10],47:[2,10],48:[2,10],51:[2,10],55:[2,10],60:[2,10]},{20:45,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:46,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:47,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:41,56:48,64:42,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[2,78],49:49,65:[2,78],72:[2,78],80:[2,78],81:[2,78],82:[2,78],83:[2,78],84:[2,78],85:[2,78]},{23:[2,33],33:[2,33],54:[2,33],65:[2,33],68:[2,33],72:[2,33],75:[2,33],80:[2,33],81:[2,33],82:[2,33],83:[2,33],84:[2,33],85:[2,33]},{23:[2,34],33:[2,34],54:[2,34],65:[2,34],68:[2,34],72:[2,34],75:[2,34],80:[2,34],81:[2,34],82:[2,34],83:[2,34],84:[2,34],85:[2,34]},{23:[2,35],33:[2,35],54:[2,35],65:[2,35],68:[2,35],72:[2,35],75:[2,35],80:[2,35],81:[2,35],82:[2,35],83:[2,35],84:[2,35],85:[2,35]},{23:[2,36],33:[2,36],54:[2,36],65:[2,36],68:[2,36],72:[2,36],75:[2,36],80:[2,36],81:[2,36],82:[2,36],83:[2,36],84:[2,36],85:[2,36]},{23:[2,37],33:[2,37],54:[2,37],65:[2,37],68:[2,37],72:[2,37],75:[2,37],80:[2,37],81:[2,37],82:[2,37],83:[2,37],84:[2,37],85:[2,37]},{23:[2,38],33:[2,38],54:[2,38],65:[2,38],68:[2,38],72:[2,38],75:[2,38],80:[2,38],81:[2,38],82:[2,38],83:[2,38],84:[2,38],85:[2,38]},{23:[2,39],33:[2,39],54:[2,39],65:[2,39],68:[2,39],72:[2,39],75:[2,39],80:[2,39],81:[2,39],82:[2,39],83:[2,39],84:[2,39],85:[2,39]},{23:[2,43],33:[2,43],54:[2,43],65:[2,43],68:[2,43],72:[2,43],75:[2,43],80:[2,43],81:[2,43],82:[2,43],83:[2,43],84:[2,43],85:[2,43],87:[1,50]},{72:[1,35],86:51},{23:[2,45],33:[2,45],54:[2,45],65:[2,45],68:[2,45],72:[2,45],75:[2,45],80:[2,45],81:[2,45],82:[2,45],83:[2,45],84:[2,45],85:[2,45],87:[2,45]},{52:52,54:[2,82],65:[2,82],72:[2,82],80:[2,82],81:[2,82],82:[2,82],83:[2,82],84:[2,82],85:[2,82]},{25:53,38:55,39:[1,57],43:56,44:[1,58],45:54,47:[2,54]},{28:59,43:60,44:[1,58],47:[2,56]},{13:62,15:[1,20],18:[1,61]},{33:[2,86],57:63,65:[2,86],72:[2,86],80:[2,86],81:[2,86],82:[2,86],83:[2,86],84:[2,86],85:[2,86]},{33:[2,40],65:[2,40],72:[2,40],80:[2,40],81:[2,40],82:[2,40],83:[2,40],84:[2,40],85:[2,40]},{33:[2,41],65:[2,41],72:[2,41],80:[2,41],81:[2,41],82:[2,41],83:[2,41],84:[2,41],85:[2,41]},{20:64,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{26:65,47:[1,66]},{30:67,33:[2,58],65:[2,58],72:[2,58],75:[2,58],80:[2,58],81:[2,58],82:[2,58],83:[2,58],84:[2,58],85:[2,58]},{33:[2,64],35:68,65:[2,64],72:[2,64],75:[2,64],80:[2,64],81:[2,64],82:[2,64],83:[2,64],84:[2,64],85:[2,64]},{21:69,23:[2,50],65:[2,50],72:[2,50],80:[2,50],81:[2,50],82:[2,50],83:[2,50],84:[2,50],85:[2,50]},{33:[2,90],61:70,65:[2,90],72:[2,90],80:[2,90],81:[2,90],82:[2,90],83:[2,90],84:[2,90],85:[2,90]},{20:74,33:[2,80],50:71,63:72,64:75,65:[1,43],69:73,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{72:[1,79]},{23:[2,42],33:[2,42],54:[2,42],65:[2,42],68:[2,42],72:[2,42],75:[2,42],80:[2,42],81:[2,42],82:[2,42],83:[2,42],84:[2,42],85:[2,42],87:[1,50]},{20:74,53:80,54:[2,84],63:81,64:75,65:[1,43],69:82,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{26:83,47:[1,66]},{47:[2,55]},{4:84,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],39:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{47:[2,20]},{20:85,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:86,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{26:87,47:[1,66]},{47:[2,57]},{5:[2,11],14:[2,11],15:[2,11],19:[2,11],29:[2,11],34:[2,11],39:[2,11],44:[2,11],47:[2,11],48:[2,11],51:[2,11],55:[2,11],60:[2,11]},{15:[2,49],18:[2,49]},{20:74,33:[2,88],58:88,63:89,64:75,65:[1,43],69:90,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{65:[2,94],66:91,68:[2,94],72:[2,94],80:[2,94],81:[2,94],82:[2,94],83:[2,94],84:[2,94],85:[2,94]},{5:[2,25],14:[2,25],15:[2,25],19:[2,25],29:[2,25],34:[2,25],39:[2,25],44:[2,25],47:[2,25],48:[2,25],51:[2,25],55:[2,25],60:[2,25]},{20:92,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,31:93,33:[2,60],63:94,64:75,65:[1,43],69:95,70:76,71:77,72:[1,78],75:[2,60],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,33:[2,66],36:96,63:97,64:75,65:[1,43],69:98,70:76,71:77,72:[1,78],75:[2,66],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,22:99,23:[2,52],63:100,64:75,65:[1,43],69:101,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,33:[2,92],62:102,63:103,64:75,65:[1,43],69:104,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[1,105]},{33:[2,79],65:[2,79],72:[2,79],80:[2,79],81:[2,79],82:[2,79],83:[2,79],84:[2,79],85:[2,79]},{33:[2,81]},{23:[2,27],33:[2,27],54:[2,27],65:[2,27],68:[2,27],72:[2,27],75:[2,27],80:[2,27],81:[2,27],82:[2,27],83:[2,27],84:[2,27],85:[2,27]},{23:[2,28],33:[2,28],54:[2,28],65:[2,28],68:[2,28],72:[2,28],75:[2,28],80:[2,28],81:[2,28],82:[2,28],83:[2,28],84:[2,28],85:[2,28]},{23:[2,30],33:[2,30],54:[2,30],68:[2,30],71:106,72:[1,107],75:[2,30]},{23:[2,98],33:[2,98],54:[2,98],68:[2,98],72:[2,98],75:[2,98]},{23:[2,45],33:[2,45],54:[2,45],65:[2,45],68:[2,45],72:[2,45],73:[1,108],75:[2,45],80:[2,45],81:[2,45],82:[2,45],83:[2,45],84:[2,45],85:[2,45],87:[2,45]},{23:[2,44],33:[2,44],54:[2,44],65:[2,44],68:[2,44],72:[2,44],75:[2,44],80:[2,44],81:[2,44],82:[2,44],83:[2,44],84:[2,44],85:[2,44],87:[2,44]},{54:[1,109]},{54:[2,83],65:[2,83],72:[2,83],80:[2,83],81:[2,83],82:[2,83],83:[2,83],84:[2,83],85:[2,83]},{54:[2,85]},{5:[2,13],14:[2,13],15:[2,13],19:[2,13],29:[2,13],34:[2,13],39:[2,13],44:[2,13],47:[2,13],48:[2,13],51:[2,13],55:[2,13],60:[2,13]},{38:55,39:[1,57],43:56,44:[1,58],45:111,46:110,47:[2,76]},{33:[2,70],40:112,65:[2,70],72:[2,70],75:[2,70],80:[2,70],81:[2,70],82:[2,70],83:[2,70],84:[2,70],85:[2,70]},{47:[2,18]},{5:[2,14],14:[2,14],15:[2,14],19:[2,14],29:[2,14],34:[2,14],39:[2,14],44:[2,14],47:[2,14],48:[2,14],51:[2,14],55:[2,14],60:[2,14]},{33:[1,113]},{33:[2,87],65:[2,87],72:[2,87],80:[2,87],81:[2,87],82:[2,87],83:[2,87],84:[2,87],85:[2,87]},{33:[2,89]},{20:74,63:115,64:75,65:[1,43],67:114,68:[2,96],69:116,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[1,117]},{32:118,33:[2,62],74:119,75:[1,120]},{33:[2,59],65:[2,59],72:[2,59],75:[2,59],80:[2,59],81:[2,59],82:[2,59],83:[2,59],84:[2,59],85:[2,59]},{33:[2,61],75:[2,61]},{33:[2,68],37:121,74:122,75:[1,120]},{33:[2,65],65:[2,65],72:[2,65],75:[2,65],80:[2,65],81:[2,65],82:[2,65],83:[2,65],84:[2,65],85:[2,65]},{33:[2,67],75:[2,67]},{23:[1,123]},{23:[2,51],65:[2,51],72:[2,51],80:[2,51],81:[2,51],82:[2,51],83:[2,51],84:[2,51],85:[2,51]},{23:[2,53]},{33:[1,124]},{33:[2,91],65:[2,91],72:[2,91],80:[2,91],81:[2,91],82:[2,91],83:[2,91],84:[2,91],85:[2,91]},{33:[2,93]},{5:[2,22],14:[2,22],15:[2,22],19:[2,22],29:[2,22],34:[2,22],39:[2,22],44:[2,22],47:[2,22],48:[2,22],51:[2,22],55:[2,22],60:[2,22]},{23:[2,99],33:[2,99],54:[2,99],68:[2,99],72:[2,99],75:[2,99]},{73:[1,108]},{20:74,63:125,64:75,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{5:[2,23],14:[2,23],15:[2,23],19:[2,23],29:[2,23],34:[2,23],39:[2,23],44:[2,23],47:[2,23],48:[2,23],51:[2,23],55:[2,23],60:[2,23]},{47:[2,19]},{47:[2,77]},{20:74,33:[2,72],41:126,63:127,64:75,65:[1,43],69:128,70:76,71:77,72:[1,78],75:[2,72],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{5:[2,24],14:[2,24],15:[2,24],19:[2,24],29:[2,24],34:[2,24],39:[2,24],44:[2,24],47:[2,24],48:[2,24],51:[2,24],55:[2,24],60:[2,24]},{68:[1,129]},{65:[2,95],68:[2,95],72:[2,95],80:[2,95],81:[2,95],82:[2,95],83:[2,95],84:[2,95],85:[2,95]},{68:[2,97]},{5:[2,21],14:[2,21],15:[2,21],19:[2,21],29:[2,21],34:[2,21],39:[2,21],44:[2,21],47:[2,21],48:[2,21],51:[2,21],55:[2,21],60:[2,21]},{33:[1,130]},{33:[2,63]},{72:[1,132],76:131},{33:[1,133]},{33:[2,69]},{15:[2,12],18:[2,12]},{14:[2,26],15:[2,26],19:[2,26],29:[2,26],34:[2,26],47:[2,26],48:[2,26],51:[2,26],55:[2,26],60:[2,26]},{23:[2,31],33:[2,31],54:[2,31],68:[2,31],72:[2,31],75:[2,31]},{33:[2,74],42:134,74:135,75:[1,120]},{33:[2,71],65:[2,71],72:[2,71],75:[2,71],80:[2,71],81:[2,71],82:[2,71],83:[2,71],84:[2,71],85:[2,71]},{33:[2,73],75:[2,73]},{23:[2,29],33:[2,29],54:[2,29],65:[2,29],68:[2,29],72:[2,29],75:[2,29],80:[2,29],81:[2,29],82:[2,29],83:[2,29],84:[2,29],85:[2,29]},{14:[2,15],15:[2,15],19:[2,15],29:[2,15],34:[2,15],39:[2,15],44:[2,15],47:[2,15],48:[2,15],51:[2,15],55:[2,15],60:[2,15]},{72:[1,137],77:[1,136]},{72:[2,100],77:[2,100]},{14:[2,16],15:[2,16],19:[2,16],29:[2,16],34:[2,16],44:[2,16],47:[2,16],48:[2,16],51:[2,16],55:[2,16],60:[2,16]},{33:[1,138]},{33:[2,75]},{33:[2,32]},{72:[2,101],77:[2,101]},{14:[2,17],15:[2,17],19:[2,17],29:[2,17],34:[2,17],39:[2,17],44:[2,17],47:[2,17],48:[2,17],51:[2,17],55:[2,17],60:[2,17]}],defaultActions:{4:[2,1],54:[2,55],56:[2,20],60:[2,57],73:[2,81],82:[2,85],86:[2,18],90:[2,89],101:[2,53],104:[2,93],110:[2,19],111:[2,77],116:[2,97],119:[2,63],122:[2,69],135:[2,75],136:[2,32]},parseError:function(e,t){throw Error(e)},parse:function(e){var t=this,n=[0],r=[null],i=[],a=this.table,o=``,s=0,c=0,l=0;this.lexer.setInput(e),this.lexer.yy=this.yy,this.yy.lexer=this.lexer,this.yy.parser=this,this.lexer.yylloc===void 0&&(this.lexer.yylloc={});var u=this.lexer.yylloc;i.push(u);var d=this.lexer.options&&this.lexer.options.ranges;typeof this.yy.parseError==`function`&&(this.parseError=this.yy.parseError);function f(){var e=t.lexer.lex()||1;return typeof e!=`number`&&(e=t.symbols_[e]||e),e}for(var p,m,h,g,_,v={},y,b,x,S;;){if(h=n[n.length-1],this.defaultActions[h]?g=this.defaultActions[h]:(p??=f(),g=a[h]&&a[h][p]),g===void 0||!g.length||!g[0]){var C=``;if(!l){for(y in S=[],a[h])this.terminals_[y]&&y>2&&S.push(`'`+this.terminals_[y]+`'`);C=this.lexer.showPosition?`Parse error on line `+(s+1)+`:
|
|
1820
|
-
`+this.lexer.showPosition()+`
|
|
1821
|
-
Expecting `+S.join(`, `)+`, got '`+(this.terminals_[p]||p)+`'`:`Parse error on line `+(s+1)+`: Unexpected `+(p==1?`end of input`:`'`+(this.terminals_[p]||p)+`'`),this.parseError(C,{text:this.lexer.match,token:this.terminals_[p]||p,line:this.lexer.yylineno,loc:u,expected:S})}}if(g[0]instanceof Array&&g.length>1)throw Error(`Parse Error: multiple actions possible at state: `+h+`, token: `+p);switch(g[0]){case 1:n.push(p),r.push(this.lexer.yytext),i.push(this.lexer.yylloc),n.push(g[1]),p=null,m?(p=m,m=null):(c=this.lexer.yyleng,o=this.lexer.yytext,s=this.lexer.yylineno,u=this.lexer.yylloc,l>0&&l--);break;case 2:if(b=this.productions_[g[1]][1],v.$=r[r.length-b],v._$={first_line:i[i.length-(b||1)].first_line,last_line:i[i.length-1].last_line,first_column:i[i.length-(b||1)].first_column,last_column:i[i.length-1].last_column},d&&(v._$.range=[i[i.length-(b||1)].range[0],i[i.length-1].range[1]]),_=this.performAction.call(v,o,c,s,this.yy,g[1],r,i),_!==void 0)return _;b&&(n=n.slice(0,-1*b*2),r=r.slice(0,-1*b),i=i.slice(0,-1*b)),n.push(this.productions_[g[1]][0]),r.push(v.$),i.push(v._$),x=a[n[n.length-2]][n[n.length-1]],n.push(x);break;case 3:return!0}}return!0}};e.lexer=(function(){var e={EOF:1,parseError:function(e,t){if(this.yy.parser)this.yy.parser.parseError(e,t);else throw Error(e)},setInput:function(e){return this._input=e,this._more=this._less=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match=``,this.conditionStack=[`INITIAL`],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var e=this._input[0];return this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e,e.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e},unput:function(e){var t=e.length,n=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t-1),this.offset-=t;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-t]),this},more:function(){return this._more=!0,this},less:function(e){this.unput(this.match.slice(e))},pastInput:function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?`...`:``)+e.substr(-20).replace(/\n/g,``)},upcomingInput:function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?`...`:``)).replace(/\n/g,``)},showPosition:function(){var e=this.pastInput(),t=Array(e.length+1).join(`-`);return e+this.upcomingInput()+`
|
|
1822
|
-
`+t+`^`},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var e,t,n,r,i;this._more||(this.yytext=``,this.match=``);for(var a=this._currentRules(),o=0;o<a.length&&(n=this._input.match(this.rules[a[o]]),!(n&&(!t||n[0].length>t[0].length)&&(t=n,r=o,!this.options.flex)));o++);return t?(i=t[0].match(/(?:\r\n?|\n).*/g),i&&(this.yylineno+=i.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:i?i[i.length-1].length-i[i.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],e=this.performAction.call(this,this.yy,this,a[r],this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),e||void 0):this._input===``?this.EOF:this.parseError(`Lexical error on line `+(this.yylineno+1)+`. Unrecognized text.
|
|
1823
|
-
`+this.showPosition(),{text:``,token:null,line:this.yylineno})},lex:function(){var e=this.next();return e===void 0?this.lex():e},begin:function(e){this.conditionStack.push(e)},popState:function(){return this.conditionStack.pop()},_currentRules:function(){return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules},topState:function(){return this.conditionStack[this.conditionStack.length-2]},pushState:function(e){this.begin(e)}};return e.options={},e.performAction=function(e,t,n,r){function i(e,n){return t.yytext=t.yytext.substring(e,t.yyleng-n+e)}switch(n){case 0:if(t.yytext.slice(-2)===`\\\\`?(i(0,1),this.begin(`mu`)):t.yytext.slice(-1)===`\\`?(i(0,1),this.begin(`emu`)):this.begin(`mu`),t.yytext)return 15;break;case 1:return 15;case 2:return this.popState(),15;case 3:return this.begin(`raw`),15;case 4:return this.popState(),this.conditionStack[this.conditionStack.length-1]===`raw`?15:(i(5,9),`END_RAW_BLOCK`);case 5:return 15;case 6:return this.popState(),14;case 7:return 65;case 8:return 68;case 9:return 19;case 10:return this.popState(),this.begin(`raw`),23;case 11:return 55;case 12:return 60;case 13:return 29;case 14:return 47;case 15:return this.popState(),44;case 16:return this.popState(),44;case 17:return 34;case 18:return 39;case 19:return 51;case 20:return 48;case 21:this.unput(t.yytext),this.popState(),this.begin(`com`);break;case 22:return this.popState(),14;case 23:return 48;case 24:return 73;case 25:return 72;case 26:return 72;case 27:return 87;case 28:break;case 29:return this.popState(),54;case 30:return this.popState(),33;case 31:return t.yytext=i(1,2).replace(/\\"/g,`"`),80;case 32:return t.yytext=i(1,2).replace(/\\'/g,`'`),80;case 33:return 85;case 34:return 82;case 35:return 82;case 36:return 83;case 37:return 84;case 38:return 81;case 39:return 75;case 40:return 77;case 41:return 72;case 42:return t.yytext=t.yytext.replace(/\\([\\\]])/g,`$1`),72;case 43:return`INVALID`;case 44:return 5}},e.rules=[/^(?:[^\x00]*?(?=(\{\{)))/,/^(?:[^\x00]+)/,/^(?:[^\x00]{2,}?(?=(\{\{|\\\{\{|\\\\\{\{|$)))/,/^(?:\{\{\{\{(?=[^/]))/,/^(?:\{\{\{\{\/[^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=[=}\s\/.])\}\}\}\})/,/^(?:[^\x00]+?(?=(\{\{\{\{)))/,/^(?:[\s\S]*?--(~)?\}\})/,/^(?:\()/,/^(?:\))/,/^(?:\{\{\{\{)/,/^(?:\}\}\}\})/,/^(?:\{\{(~)?>)/,/^(?:\{\{(~)?#>)/,/^(?:\{\{(~)?#\*?)/,/^(?:\{\{(~)?\/)/,/^(?:\{\{(~)?\^\s*(~)?\}\})/,/^(?:\{\{(~)?\s*else\s*(~)?\}\})/,/^(?:\{\{(~)?\^)/,/^(?:\{\{(~)?\s*else\b)/,/^(?:\{\{(~)?\{)/,/^(?:\{\{(~)?&)/,/^(?:\{\{(~)?!--)/,/^(?:\{\{(~)?![\s\S]*?\}\})/,/^(?:\{\{(~)?\*?)/,/^(?:=)/,/^(?:\.\.)/,/^(?:\.(?=([=~}\s\/.)|])))/,/^(?:[\/.])/,/^(?:\s+)/,/^(?:\}(~)?\}\})/,/^(?:(~)?\}\})/,/^(?:"(\\["]|[^"])*")/,/^(?:'(\\[']|[^'])*')/,/^(?:@)/,/^(?:true(?=([~}\s)])))/,/^(?:false(?=([~}\s)])))/,/^(?:undefined(?=([~}\s)])))/,/^(?:null(?=([~}\s)])))/,/^(?:-?[0-9]+(?:\.[0-9]+)?(?=([~}\s)])))/,/^(?:as\s+\|)/,/^(?:\|)/,/^(?:([^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=([=~}\s\/.)|]))))/,/^(?:\[(\\\]|[^\]])*\])/,/^(?:.)/,/^(?:$)/],e.conditions={mu:{rules:[7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44],inclusive:!1},emu:{rules:[2],inclusive:!1},com:{rules:[6],inclusive:!1},raw:{rules:[3,4,5],inclusive:!1},INITIAL:{rules:[0,1,44],inclusive:!0}},e})();function t(){this.yy={}}return t.prototype=e,e.Parser=t,new t})(),t.exports=e.default})),Ax=d(((e,t)=>{e.__esModule=!0;function n(e){return e&&e.__esModule?e:{default:e}}var r=n(cx());function i(){this.parents=[]}i.prototype={constructor:i,mutating:!1,acceptKey:function(e,t){var n=this.accept(e[t]);if(this.mutating){if(n&&!i.prototype[n.type])throw new r.default(`Unexpected node type "`+n.type+`" found when accepting `+t+` on `+e.type);e[t]=n}},acceptRequired:function(e,t){if(this.acceptKey(e,t),!e[t])throw new r.default(e.type+` requires `+t)},acceptArray:function(e){for(var t=0,n=e.length;t<n;t++)this.acceptKey(e,t),e[t]||(e.splice(t,1),t--,n--)},accept:function(e){if(e){if(!this[e.type])throw new r.default(`Unknown type: `+e.type,e);this.current&&this.parents.unshift(this.current),this.current=e;var t=this[e.type](e);if(this.current=this.parents.shift(),!this.mutating||t)return t;if(t!==!1)return e}},Program:function(e){this.acceptArray(e.body)},MustacheStatement:a,Decorator:a,BlockStatement:o,DecoratorBlock:o,PartialStatement:s,PartialBlockStatement:function(e){s.call(this,e),this.acceptKey(e,`program`)},ContentStatement:function(){},CommentStatement:function(){},SubExpression:a,PathExpression:function(){},StringLiteral:function(){},NumberLiteral:function(){},BooleanLiteral:function(){},UndefinedLiteral:function(){},NullLiteral:function(){},Hash:function(e){this.acceptArray(e.pairs)},HashPair:function(e){this.acceptRequired(e,`value`)}};function a(e){this.acceptRequired(e,`path`),this.acceptArray(e.params),this.acceptKey(e,`hash`)}function o(e){a.call(this,e),this.acceptKey(e,`program`),this.acceptKey(e,`inverse`)}function s(e){this.acceptRequired(e,`name`),this.acceptArray(e.params),this.acceptKey(e,`hash`)}e.default=i,t.exports=e.default})),jx=d(((e,t)=>{e.__esModule=!0;function n(e){return e&&e.__esModule?e:{default:e}}var r=n(Ax());function i(){var e=arguments.length<=0||arguments[0]===void 0?{}:arguments[0];this.options=e}i.prototype=new r.default,i.prototype.Program=function(e){var t=!this.options.ignoreStandalone,n=!this.isRootSeen;this.isRootSeen=!0;for(var r=e.body,i=0,l=r.length;i<l;i++){var u=r[i],d=this.accept(u);if(d){var f=a(r,i,n),p=o(r,i,n),m=d.openStandalone&&f,h=d.closeStandalone&&p,g=d.inlineStandalone&&f&&p;d.close&&s(r,i,!0),d.open&&c(r,i,!0),t&&g&&(s(r,i),c(r,i)&&u.type===`PartialStatement`&&(u.indent=/([ \t]+$)/.exec(r[i-1].original)[1])),t&&m&&(s((u.program||u.inverse).body),c(r,i)),t&&h&&(s(r,i),c((u.inverse||u.program).body))}}return e},i.prototype.BlockStatement=i.prototype.DecoratorBlock=i.prototype.PartialBlockStatement=function(e){this.accept(e.program),this.accept(e.inverse);var t=e.program||e.inverse,n=e.program&&e.inverse,r=n,i=n;if(n&&n.chained)for(r=n.body[0].program;i.chained;)i=i.body[i.body.length-1].program;var l={open:e.openStrip.open,close:e.closeStrip.close,openStandalone:o(t.body),closeStandalone:a((r||t).body)};if(e.openStrip.close&&s(t.body,null,!0),n){var u=e.inverseStrip;u.open&&c(t.body,null,!0),u.close&&s(r.body,null,!0),e.closeStrip.open&&c(i.body,null,!0),!this.options.ignoreStandalone&&a(t.body)&&o(r.body)&&(c(t.body),s(r.body))}else e.closeStrip.open&&c(t.body,null,!0);return l},i.prototype.Decorator=i.prototype.MustacheStatement=function(e){return e.strip},i.prototype.PartialStatement=i.prototype.CommentStatement=function(e){var t=e.strip||{};return{inlineStandalone:!0,open:t.open,close:t.close}};function a(e,t,n){t===void 0&&(t=e.length);var r=e[t-1],i=e[t-2];if(!r)return n;if(r.type===`ContentStatement`)return(i||!n?/\r?\n\s*?$/:/(^|\r?\n)\s*?$/).test(r.original)}function o(e,t,n){t===void 0&&(t=-1);var r=e[t+1],i=e[t+2];if(!r)return n;if(r.type===`ContentStatement`)return(i||!n?/^\s*?\r?\n/:/^\s*?(\r?\n|$)/).test(r.original)}function s(e,t,n){var r=e[t==null?0:t+1];if(!(!r||r.type!==`ContentStatement`||!n&&r.rightStripped)){var i=r.value;r.value=r.value.replace(n?/^\s+/:/^[ \t]*\r?\n?/,``),r.rightStripped=r.value!==i}}function c(e,t,n){var r=e[t==null?e.length-1:t-1];if(!(!r||r.type!==`ContentStatement`||!n&&r.leftStripped)){var i=r.value;return r.value=r.value.replace(n?/\s+$/:/[ \t]+$/,``),r.leftStripped=r.value!==i,r.leftStripped}}e.default=i,t.exports=e.default})),Mx=d((e=>{e.__esModule=!0,e.SourceLocation=i,e.id=a,e.stripFlags=o,e.stripComment=s,e.preparePath=c,e.prepareMustache=l,e.prepareRawBlock=u,e.prepareBlock=d,e.prepareProgram=f,e.preparePartialBlock=p;function t(e){return e&&e.__esModule?e:{default:e}}var n=t(cx());function r(e,t){if(t=t.path?t.path.original:t,e.path.original!==t){var r={loc:e.path.loc};throw new n.default(e.path.original+` doesn't match `+t,r)}}function i(e,t){this.source=e,this.start={line:t.first_line,column:t.first_column},this.end={line:t.last_line,column:t.last_column}}function a(e){return/^\[.*\]$/.test(e)?e.substring(1,e.length-1):e}function o(e,t){return{open:e.charAt(2)===`~`,close:t.charAt(t.length-3)===`~`}}function s(e){return e.replace(/^\{\{~?!-?-?/,``).replace(/-?-?~?\}\}$/,``)}function c(e,t,r){r=this.locInfo(r);for(var i=e?`@`:``,a=[],o=0,s=0,c=t.length;s<c;s++){var l=t[s].part,u=t[s].original!==l;if(i+=(t[s].separator||``)+l,!u&&(l===`..`||l===`.`||l===`this`)){if(a.length>0)throw new n.default(`Invalid path: `+i,{loc:r});l===`..`&&o++}else a.push(l)}return{type:`PathExpression`,data:e,depth:o,parts:a,original:i,loc:r}}function l(e,t,n,r,i,a){var o=r.charAt(3)||r.charAt(2),s=o!==`{`&&o!==`&`;return{type:/\*/.test(r)?`Decorator`:`MustacheStatement`,path:e,params:t,hash:n,escaped:s,strip:i,loc:this.locInfo(a)}}function u(e,t,n,i){r(e,n),i=this.locInfo(i);var a={type:`Program`,body:t,strip:{},loc:i};return{type:`BlockStatement`,path:e.path,params:e.params,hash:e.hash,program:a,openStrip:{},inverseStrip:{},closeStrip:{},loc:i}}function d(e,t,i,a,o,s){a&&a.path&&r(e,a);var c=/\*/.test(e.open);t.blockParams=e.blockParams;var l=void 0,u=void 0;if(i){if(c)throw new n.default(`Unexpected inverse block on decorator`,i);i.chain&&(i.program.body[0].closeStrip=a.strip),u=i.strip,l=i.program}return o&&(o=l,l=t,t=o),{type:c?`DecoratorBlock`:`BlockStatement`,path:e.path,params:e.params,hash:e.hash,program:t,inverse:l,openStrip:e.strip,inverseStrip:u,closeStrip:a&&a.strip,loc:this.locInfo(s)}}function f(e,t){if(!t&&e.length){var n=e[0].loc,r=e[e.length-1].loc;n&&r&&(t={source:n.source,start:{line:n.start.line,column:n.start.column},end:{line:r.end.line,column:r.end.column}})}return{type:`Program`,body:e,strip:{},loc:t}}function p(e,t,n,i){return r(e,n),{type:`PartialBlockStatement`,name:e.path,params:e.params,hash:e.hash,program:t,openStrip:e.strip,closeStrip:n&&n.strip,loc:this.locInfo(i)}}})),Nx=d((e=>{e.__esModule=!0,e.parseWithoutProcessing=c,e.parse=l;function t(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}function n(e){return e&&e.__esModule?e:{default:e}}var r=n(kx()),i=n(jx()),a=t(Mx()),o=sx();e.parser=r.default;var s={};o.extend(s,a);function c(e,t){return e.type===`Program`?e:(r.default.yy=s,s.locInfo=function(e){return new s.SourceLocation(t&&t.srcName,e)},r.default.parse(e))}function l(e,t){var n=c(e,t);return new i.default(t).accept(n)}})),Px=d((e=>{e.__esModule=!0,e.Compiler=o,e.precompile=s,e.compile=c;function t(e){return e&&e.__esModule?e:{default:e}}var n=t(cx()),r=sx(),i=t(Ox()),a=[].slice;function o(){}o.prototype={compiler:o,equals:function(e){var t=this.opcodes.length;if(e.opcodes.length!==t)return!1;for(var n=0;n<t;n++){var r=this.opcodes[n],i=e.opcodes[n];if(r.opcode!==i.opcode||!l(r.args,i.args))return!1}t=this.children.length;for(var n=0;n<t;n++)if(!this.children[n].equals(e.children[n]))return!1;return!0},guid:0,compile:function(e,t){return this.sourceNode=[],this.opcodes=[],this.children=[],this.options=t,this.stringParams=t.stringParams,this.trackIds=t.trackIds,t.blockParams=t.blockParams||[],t.knownHelpers=r.extend(Object.create(null),{helperMissing:!0,blockHelperMissing:!0,each:!0,if:!0,unless:!0,with:!0,log:!0,lookup:!0},t.knownHelpers),this.accept(e)},compileProgram:function(e){var t=new this.compiler().compile(e,this.options),n=this.guid++;return this.usePartial=this.usePartial||t.usePartial,this.children[n]=t,this.useDepths=this.useDepths||t.useDepths,n},accept:function(e){if(!this[e.type])throw new n.default(`Unknown type: `+e.type,e);this.sourceNode.unshift(e);var t=this[e.type](e);return this.sourceNode.shift(),t},Program:function(e){this.options.blockParams.unshift(e.blockParams);for(var t=e.body,n=t.length,r=0;r<n;r++)this.accept(t[r]);return this.options.blockParams.shift(),this.isSimple=n===1,this.blockParams=e.blockParams?e.blockParams.length:0,this},BlockStatement:function(e){u(e);var t=e.program,n=e.inverse;t&&=this.compileProgram(t),n&&=this.compileProgram(n);var r=this.classifySexpr(e);r===`helper`?this.helperSexpr(e,t,n):r===`simple`?(this.simpleSexpr(e),this.opcode(`pushProgram`,t),this.opcode(`pushProgram`,n),this.opcode(`emptyHash`),this.opcode(`blockValue`,e.path.original)):(this.ambiguousSexpr(e,t,n),this.opcode(`pushProgram`,t),this.opcode(`pushProgram`,n),this.opcode(`emptyHash`),this.opcode(`ambiguousBlockValue`)),this.opcode(`append`)},DecoratorBlock:function(e){var t=e.program&&this.compileProgram(e.program),n=this.setupFullMustacheParams(e,t,void 0),r=e.path;this.useDecorators=!0,this.opcode(`registerDecorator`,n.length,r.original)},PartialStatement:function(e){this.usePartial=!0;var t=e.program;t&&=this.compileProgram(e.program);var r=e.params;if(r.length>1)throw new n.default(`Unsupported number of partial arguments: `+r.length,e);r.length||(this.options.explicitPartialContext?this.opcode(`pushLiteral`,`undefined`):r.push({type:`PathExpression`,parts:[],depth:0}));var i=e.name.original,a=e.name.type===`SubExpression`;a&&this.accept(e.name),this.setupFullMustacheParams(e,t,void 0,!0);var o=e.indent||``;this.options.preventIndent&&o&&(this.opcode(`appendContent`,o),o=``),this.opcode(`invokePartial`,a,i,o),this.opcode(`append`)},PartialBlockStatement:function(e){this.PartialStatement(e)},MustacheStatement:function(e){this.SubExpression(e),e.escaped&&!this.options.noEscape?this.opcode(`appendEscaped`):this.opcode(`append`)},Decorator:function(e){this.DecoratorBlock(e)},ContentStatement:function(e){e.value&&this.opcode(`appendContent`,e.value)},CommentStatement:function(){},SubExpression:function(e){u(e);var t=this.classifySexpr(e);t===`simple`?this.simpleSexpr(e):t===`helper`?this.helperSexpr(e):this.ambiguousSexpr(e)},ambiguousSexpr:function(e,t,n){var r=e.path,i=r.parts[0],a=t!=null||n!=null;this.opcode(`getContext`,r.depth),this.opcode(`pushProgram`,t),this.opcode(`pushProgram`,n),r.strict=!0,this.accept(r),this.opcode(`invokeAmbiguous`,i,a)},simpleSexpr:function(e){var t=e.path;t.strict=!0,this.accept(t),this.opcode(`resolvePossibleLambda`)},helperSexpr:function(e,t,r){var a=this.setupFullMustacheParams(e,t,r),o=e.path,s=o.parts[0];if(this.options.knownHelpers[s])this.opcode(`invokeKnownHelper`,a.length,s);else if(this.options.knownHelpersOnly)throw new n.default(`You specified knownHelpersOnly, but used the unknown helper `+s,e);else o.strict=!0,o.falsy=!0,this.accept(o),this.opcode(`invokeHelper`,a.length,o.original,i.default.helpers.simpleId(o))},PathExpression:function(e){this.addDepth(e.depth),this.opcode(`getContext`,e.depth);var t=e.parts[0],n=i.default.helpers.scopedId(e),r=!e.depth&&!n&&this.blockParamIndex(t);r?this.opcode(`lookupBlockParam`,r,e.parts):t?e.data?(this.options.data=!0,this.opcode(`lookupData`,e.depth,e.parts,e.strict)):this.opcode(`lookupOnContext`,e.parts,e.falsy,e.strict,n):this.opcode(`pushContext`)},StringLiteral:function(e){this.opcode(`pushString`,e.value)},NumberLiteral:function(e){this.opcode(`pushLiteral`,e.value)},BooleanLiteral:function(e){this.opcode(`pushLiteral`,e.value)},UndefinedLiteral:function(){this.opcode(`pushLiteral`,`undefined`)},NullLiteral:function(){this.opcode(`pushLiteral`,`null`)},Hash:function(e){var t=e.pairs,n=0,r=t.length;for(this.opcode(`pushHash`);n<r;n++)this.pushParam(t[n].value);for(;n--;)this.opcode(`assignToHash`,t[n].key);this.opcode(`popHash`)},opcode:function(e){this.opcodes.push({opcode:e,args:a.call(arguments,1),loc:this.sourceNode[0].loc})},addDepth:function(e){e&&(this.useDepths=!0)},classifySexpr:function(e){var t=i.default.helpers.simpleId(e.path),n=t&&!!this.blockParamIndex(e.path.parts[0]),r=!n&&i.default.helpers.helperExpression(e),a=!n&&(r||t);if(a&&!r){var o=e.path.parts[0],s=this.options;s.knownHelpers[o]?r=!0:s.knownHelpersOnly&&(a=!1)}return r?`helper`:a?`ambiguous`:`simple`},pushParams:function(e){for(var t=0,n=e.length;t<n;t++)this.pushParam(e[t])},pushParam:function(e){var t=e.value==null?e.original||``:e.value;if(this.stringParams)t.replace&&(t=t.replace(/^(\.?\.\/)*/g,``).replace(/\//g,`.`)),e.depth&&this.addDepth(e.depth),this.opcode(`getContext`,e.depth||0),this.opcode(`pushStringParam`,t,e.type),e.type===`SubExpression`&&this.accept(e);else{if(this.trackIds){var n=void 0;if(e.parts&&!i.default.helpers.scopedId(e)&&!e.depth&&(n=this.blockParamIndex(e.parts[0])),n){var r=e.parts.slice(1).join(`.`);this.opcode(`pushId`,`BlockParam`,n,r)}else t=e.original||t,t.replace&&(t=t.replace(/^this(?:\.|$)/,``).replace(/^\.\//,``).replace(/^\.$/,``)),this.opcode(`pushId`,e.type,t)}this.accept(e)}},setupFullMustacheParams:function(e,t,n,r){var i=e.params;return this.pushParams(i),this.opcode(`pushProgram`,t),this.opcode(`pushProgram`,n),e.hash?this.accept(e.hash):this.opcode(`emptyHash`,r),i},blockParamIndex:function(e){for(var t=0,n=this.options.blockParams.length;t<n;t++){var i=this.options.blockParams[t],a=i&&r.indexOf(i,e);if(i&&a>=0)return[t,a]}}};function s(e,t,r){if(e==null||typeof e!=`string`&&e.type!==`Program`)throw new n.default(`You must pass a string or Handlebars AST to Handlebars.precompile. You passed `+e);t||={},`data`in t||(t.data=!0),t.compat&&(t.useDepths=!0);var i=r.parse(e,t),a=new r.Compiler().compile(i,t);return new r.JavaScriptCompiler().compile(a,t)}function c(e,t,i){if(t===void 0&&(t={}),e==null||typeof e!=`string`&&e.type!==`Program`)throw new n.default(`You must pass a string or Handlebars AST to Handlebars.compile. You passed `+e);t=r.extend({},t),`data`in t||(t.data=!0),t.compat&&(t.useDepths=!0);var a=void 0;function o(){var n=i.parse(e,t),r=new i.Compiler().compile(n,t),a=new i.JavaScriptCompiler().compile(r,t,void 0,!0);return i.template(a)}function s(e,t){return a||=o(),a.call(this,e,t)}return s._setup=function(e){return a||=o(),a._setup(e)},s._child=function(e,t,n,r){return a||=o(),a._child(e,t,n,r)},s}function l(e,t){if(e===t)return!0;if(r.isArray(e)&&r.isArray(t)&&e.length===t.length){for(var n=0;n<e.length;n++)if(!l(e[n],t[n]))return!1;return!0}}function u(e){if(!e.path.parts){var t=e.path;e.path={type:`PathExpression`,data:!1,depth:0,parts:[t.original+``],original:t.original+``,loc:t.loc}}}})),Fx=d((e=>{var t=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`.split(``);e.encode=function(e){if(0<=e&&e<t.length)return t[e];throw TypeError(`Must be between 0 and 63: `+e)},e.decode=function(e){var t=65,n=90,r=97,i=122,a=48;return t<=e&&e<=n?e-t:r<=e&&e<=i?e-r+26:a<=e&&e<=57?e-a+52:e==43?62:e==47?63:-1}})),Ix=d((e=>{var t=Fx(),n=5,r=1<<n,i=r-1,a=r;function o(e){return e<0?(-e<<1)+1:(e<<1)+0}function s(e){var t=(e&1)==1,n=e>>1;return t?-n:n}e.encode=function(e){var r=``,s,c=o(e);do s=c&i,c>>>=n,c>0&&(s|=a),r+=t.encode(s);while(c>0);return r},e.decode=function(e,r,o){var c=e.length,l=0,u=0,d,f;do{if(r>=c)throw Error(`Expected more digits in base 64 VLQ value.`);if(f=t.decode(e.charCodeAt(r++)),f===-1)throw Error(`Invalid base64 digit: `+e.charAt(r-1));d=!!(f&a),f&=i,l+=f<<u,u+=n}while(d);o.value=s(l),o.rest=r}})),Lx=d((e=>{function t(e,t,n){if(t in e)return e[t];if(arguments.length===3)return n;throw Error(`"`+t+`" is a required argument.`)}e.getArg=t;var n=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/,r=/^data:.+\,.+$/;function i(e){var t=e.match(n);return t?{scheme:t[1],auth:t[2],host:t[3],port:t[4],path:t[5]}:null}e.urlParse=i;function a(e){var t=``;return e.scheme&&(t+=e.scheme+`:`),t+=`//`,e.auth&&(t+=e.auth+`@`),e.host&&(t+=e.host),e.port&&(t+=`:`+e.port),e.path&&(t+=e.path),t}e.urlGenerate=a;function o(t){var n=t,r=i(t);if(r){if(!r.path)return t;n=r.path}for(var o=e.isAbsolute(n),s=n.split(/\/+/),c,l=0,u=s.length-1;u>=0;u--)c=s[u],c===`.`?s.splice(u,1):c===`..`?l++:l>0&&(c===``?(s.splice(u+1,l),l=0):(s.splice(u,2),l--));return n=s.join(`/`),n===``&&(n=o?`/`:`.`),r?(r.path=n,a(r)):n}e.normalize=o;function s(e,t){e===``&&(e=`.`),t===``&&(t=`.`);var n=i(t),s=i(e);if(s&&(e=s.path||`/`),n&&!n.scheme)return s&&(n.scheme=s.scheme),a(n);if(n||t.match(r))return t;if(s&&!s.host&&!s.path)return s.host=t,a(s);var c=t.charAt(0)===`/`?t:o(e.replace(/\/+$/,``)+`/`+t);return s?(s.path=c,a(s)):c}e.join=s,e.isAbsolute=function(e){return e.charAt(0)===`/`||n.test(e)};function c(e,t){e===``&&(e=`.`),e=e.replace(/\/$/,``);for(var n=0;t.indexOf(e+`/`)!==0;){var r=e.lastIndexOf(`/`);if(r<0||(e=e.slice(0,r),e.match(/^([^\/]+:\/)?\/*$/)))return t;++n}return Array(n+1).join(`../`)+t.substr(e.length+1)}e.relative=c;var l=function(){return!(`__proto__`in Object.create(null))}();function u(e){return e}function d(e){return p(e)?`$`+e:e}e.toSetString=l?u:d;function f(e){return p(e)?e.slice(1):e}e.fromSetString=l?u:f;function p(e){if(!e)return!1;var t=e.length;if(t<9||e.charCodeAt(t-1)!==95||e.charCodeAt(t-2)!==95||e.charCodeAt(t-3)!==111||e.charCodeAt(t-4)!==116||e.charCodeAt(t-5)!==111||e.charCodeAt(t-6)!==114||e.charCodeAt(t-7)!==112||e.charCodeAt(t-8)!==95||e.charCodeAt(t-9)!==95)return!1;for(var n=t-10;n>=0;n--)if(e.charCodeAt(n)!==36)return!1;return!0}function m(e,t,n){var r=g(e.source,t.source);return r!==0||(r=e.originalLine-t.originalLine,r!==0)||(r=e.originalColumn-t.originalColumn,r!==0||n)||(r=e.generatedColumn-t.generatedColumn,r!==0)||(r=e.generatedLine-t.generatedLine,r!==0)?r:g(e.name,t.name)}e.compareByOriginalPositions=m;function h(e,t,n){var r=e.generatedLine-t.generatedLine;return r!==0||(r=e.generatedColumn-t.generatedColumn,r!==0||n)||(r=g(e.source,t.source),r!==0)||(r=e.originalLine-t.originalLine,r!==0)||(r=e.originalColumn-t.originalColumn,r!==0)?r:g(e.name,t.name)}e.compareByGeneratedPositionsDeflated=h;function g(e,t){return e===t?0:e===null?1:t===null?-1:e>t?1:-1}function _(e,t){var n=e.generatedLine-t.generatedLine;return n!==0||(n=e.generatedColumn-t.generatedColumn,n!==0)||(n=g(e.source,t.source),n!==0)||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0)?n:g(e.name,t.name)}e.compareByGeneratedPositionsInflated=_;function v(e){return JSON.parse(e.replace(/^\)]}'[^\n]*\n/,``))}e.parseSourceMapInput=v;function y(e,t,n){if(t||=``,e&&(e[e.length-1]!==`/`&&t[0]!==`/`&&(e+=`/`),t=e+t),n){var r=i(n);if(!r)throw Error(`sourceMapURL could not be parsed`);if(r.path){var c=r.path.lastIndexOf(`/`);c>=0&&(r.path=r.path.substring(0,c+1))}t=s(a(r),t)}return o(t)}e.computeSourceURL=y})),Rx=d((e=>{var t=Lx(),n=Object.prototype.hasOwnProperty,r=typeof Map<`u`;function i(){this._array=[],this._set=r?new Map:Object.create(null)}i.fromArray=function(e,t){for(var n=new i,r=0,a=e.length;r<a;r++)n.add(e[r],t);return n},i.prototype.size=function(){return r?this._set.size:Object.getOwnPropertyNames(this._set).length},i.prototype.add=function(e,i){var a=r?e:t.toSetString(e),o=r?this.has(e):n.call(this._set,a),s=this._array.length;(!o||i)&&this._array.push(e),o||(r?this._set.set(e,s):this._set[a]=s)},i.prototype.has=function(e){if(r)return this._set.has(e);var i=t.toSetString(e);return n.call(this._set,i)},i.prototype.indexOf=function(e){if(r){var i=this._set.get(e);if(i>=0)return i}else{var a=t.toSetString(e);if(n.call(this._set,a))return this._set[a]}throw Error(`"`+e+`" is not in the set.`)},i.prototype.at=function(e){if(e>=0&&e<this._array.length)return this._array[e];throw Error(`No element indexed by `+e)},i.prototype.toArray=function(){return this._array.slice()},e.ArraySet=i})),zx=d((e=>{var t=Lx();function n(e,n){var r=e.generatedLine,i=n.generatedLine,a=e.generatedColumn,o=n.generatedColumn;return i>r||i==r&&o>=a||t.compareByGeneratedPositionsInflated(e,n)<=0}function r(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}r.prototype.unsortedForEach=function(e,t){this._array.forEach(e,t)},r.prototype.add=function(e){n(this._last,e)?(this._last=e,this._array.push(e)):(this._sorted=!1,this._array.push(e))},r.prototype.toArray=function(){return this._sorted||=(this._array.sort(t.compareByGeneratedPositionsInflated),!0),this._array},e.MappingList=r})),Bx=d((e=>{var t=Ix(),n=Lx(),r=Rx().ArraySet,i=zx().MappingList;function a(e){e||={},this._file=n.getArg(e,`file`,null),this._sourceRoot=n.getArg(e,`sourceRoot`,null),this._skipValidation=n.getArg(e,`skipValidation`,!1),this._sources=new r,this._names=new r,this._mappings=new i,this._sourcesContents=null}a.prototype._version=3,a.fromSourceMap=function(e){var t=e.sourceRoot,r=new a({file:e.file,sourceRoot:t});return e.eachMapping(function(e){var i={generated:{line:e.generatedLine,column:e.generatedColumn}};e.source!=null&&(i.source=e.source,t!=null&&(i.source=n.relative(t,i.source)),i.original={line:e.originalLine,column:e.originalColumn},e.name!=null&&(i.name=e.name)),r.addMapping(i)}),e.sources.forEach(function(i){var a=i;t!==null&&(a=n.relative(t,i)),r._sources.has(a)||r._sources.add(a);var o=e.sourceContentFor(i);o!=null&&r.setSourceContent(i,o)}),r},a.prototype.addMapping=function(e){var t=n.getArg(e,`generated`),r=n.getArg(e,`original`,null),i=n.getArg(e,`source`,null),a=n.getArg(e,`name`,null);this._skipValidation||this._validateMapping(t,r,i,a),i!=null&&(i=String(i),this._sources.has(i)||this._sources.add(i)),a!=null&&(a=String(a),this._names.has(a)||this._names.add(a)),this._mappings.add({generatedLine:t.line,generatedColumn:t.column,originalLine:r!=null&&r.line,originalColumn:r!=null&&r.column,source:i,name:a})},a.prototype.setSourceContent=function(e,t){var r=e;this._sourceRoot!=null&&(r=n.relative(this._sourceRoot,r)),t==null?this._sourcesContents&&(delete this._sourcesContents[n.toSetString(r)],Object.keys(this._sourcesContents).length===0&&(this._sourcesContents=null)):(this._sourcesContents||=Object.create(null),this._sourcesContents[n.toSetString(r)]=t)},a.prototype.applySourceMap=function(e,t,i){var a=t;if(t==null){if(e.file==null)throw Error(`SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map's "file" property. Both were omitted.`);a=e.file}var o=this._sourceRoot;o!=null&&(a=n.relative(o,a));var s=new r,c=new r;this._mappings.unsortedForEach(function(t){if(t.source===a&&t.originalLine!=null){var r=e.originalPositionFor({line:t.originalLine,column:t.originalColumn});r.source!=null&&(t.source=r.source,i!=null&&(t.source=n.join(i,t.source)),o!=null&&(t.source=n.relative(o,t.source)),t.originalLine=r.line,t.originalColumn=r.column,r.name!=null&&(t.name=r.name))}var l=t.source;l!=null&&!s.has(l)&&s.add(l);var u=t.name;u!=null&&!c.has(u)&&c.add(u)},this),this._sources=s,this._names=c,e.sources.forEach(function(t){var r=e.sourceContentFor(t);r!=null&&(i!=null&&(t=n.join(i,t)),o!=null&&(t=n.relative(o,t)),this.setSourceContent(t,r))},this)},a.prototype._validateMapping=function(e,t,n,r){if(t&&typeof t.line!=`number`&&typeof t.column!=`number`)throw Error(`original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.`);if(!(e&&`line`in e&&`column`in e&&e.line>0&&e.column>=0&&!t&&!n&&!r)&&!(e&&`line`in e&&`column`in e&&t&&`line`in t&&`column`in t&&e.line>0&&e.column>=0&&t.line>0&&t.column>=0&&n))throw Error(`Invalid mapping: `+JSON.stringify({generated:e,source:n,original:t,name:r}))},a.prototype._serializeMappings=function(){for(var e=0,r=1,i=0,a=0,o=0,s=0,c=``,l,u,d,f,p=this._mappings.toArray(),m=0,h=p.length;m<h;m++){if(u=p[m],l=``,u.generatedLine!==r)for(e=0;u.generatedLine!==r;)l+=`;`,r++;else if(m>0){if(!n.compareByGeneratedPositionsInflated(u,p[m-1]))continue;l+=`,`}l+=t.encode(u.generatedColumn-e),e=u.generatedColumn,u.source!=null&&(f=this._sources.indexOf(u.source),l+=t.encode(f-s),s=f,l+=t.encode(u.originalLine-1-a),a=u.originalLine-1,l+=t.encode(u.originalColumn-i),i=u.originalColumn,u.name!=null&&(d=this._names.indexOf(u.name),l+=t.encode(d-o),o=d)),c+=l}return c},a.prototype._generateSourcesContent=function(e,t){return e.map(function(e){if(!this._sourcesContents)return null;t!=null&&(e=n.relative(t,e));var r=n.toSetString(e);return Object.prototype.hasOwnProperty.call(this._sourcesContents,r)?this._sourcesContents[r]:null},this)},a.prototype.toJSON=function(){var e={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return this._file!=null&&(e.file=this._file),this._sourceRoot!=null&&(e.sourceRoot=this._sourceRoot),this._sourcesContents&&(e.sourcesContent=this._generateSourcesContent(e.sources,e.sourceRoot)),e},a.prototype.toString=function(){return JSON.stringify(this.toJSON())},e.SourceMapGenerator=a})),Vx=d((e=>{e.GREATEST_LOWER_BOUND=1,e.LEAST_UPPER_BOUND=2;function t(n,r,i,a,o,s){var c=Math.floor((r-n)/2)+n,l=o(i,a[c],!0);return l===0?c:l>0?r-c>1?t(c,r,i,a,o,s):s==e.LEAST_UPPER_BOUND?r<a.length?r:-1:c:c-n>1?t(n,c,i,a,o,s):s==e.LEAST_UPPER_BOUND?c:n<0?-1:n}e.search=function(n,r,i,a){if(r.length===0)return-1;var o=t(-1,r.length,n,r,i,a||e.GREATEST_LOWER_BOUND);if(o<0)return-1;for(;o-1>=0&&i(r[o],r[o-1],!0)===0;)--o;return o}})),Hx=d((e=>{function t(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}function n(e,t){return Math.round(e+Math.random()*(t-e))}function r(e,i,a,o){if(a<o){var s=n(a,o),c=a-1;t(e,s,o);for(var l=e[o],u=a;u<o;u++)i(e[u],l)<=0&&(c+=1,t(e,c,u));t(e,c+1,u);var d=c+1;r(e,i,a,d-1),r(e,i,d+1,o)}}e.quickSort=function(e,t){r(e,t,0,e.length-1)}})),Ux=d((e=>{var t=Lx(),n=Vx(),r=Rx().ArraySet,i=Ix(),a=Hx().quickSort;function o(e,n){var r=e;return typeof e==`string`&&(r=t.parseSourceMapInput(e)),r.sections==null?new s(r,n):new l(r,n)}o.fromSourceMap=function(e,t){return s.fromSourceMap(e,t)},o.prototype._version=3,o.prototype.__generatedMappings=null,Object.defineProperty(o.prototype,`_generatedMappings`,{configurable:!0,enumerable:!0,get:function(){return this.__generatedMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__generatedMappings}}),o.prototype.__originalMappings=null,Object.defineProperty(o.prototype,`_originalMappings`,{configurable:!0,enumerable:!0,get:function(){return this.__originalMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__originalMappings}}),o.prototype._charIsMappingSeparator=function(e,t){var n=e.charAt(t);return n===`;`||n===`,`},o.prototype._parseMappings=function(e,t){throw Error(`Subclasses must implement _parseMappings`)},o.GENERATED_ORDER=1,o.ORIGINAL_ORDER=2,o.GREATEST_LOWER_BOUND=1,o.LEAST_UPPER_BOUND=2,o.prototype.eachMapping=function(e,n,r){var i=n||null,a=r||o.GENERATED_ORDER,s;switch(a){case o.GENERATED_ORDER:s=this._generatedMappings;break;case o.ORIGINAL_ORDER:s=this._originalMappings;break;default:throw Error(`Unknown order of iteration.`)}var c=this.sourceRoot;s.map(function(e){var n=e.source===null?null:this._sources.at(e.source);return n=t.computeSourceURL(c,n,this._sourceMapURL),{source:n,generatedLine:e.generatedLine,generatedColumn:e.generatedColumn,originalLine:e.originalLine,originalColumn:e.originalColumn,name:e.name===null?null:this._names.at(e.name)}},this).forEach(e,i)},o.prototype.allGeneratedPositionsFor=function(e){var r=t.getArg(e,`line`),i={source:t.getArg(e,`source`),originalLine:r,originalColumn:t.getArg(e,`column`,0)};if(i.source=this._findSourceIndex(i.source),i.source<0)return[];var a=[],o=this._findMapping(i,this._originalMappings,`originalLine`,`originalColumn`,t.compareByOriginalPositions,n.LEAST_UPPER_BOUND);if(o>=0){var s=this._originalMappings[o];if(e.column===void 0)for(var c=s.originalLine;s&&s.originalLine===c;)a.push({line:t.getArg(s,`generatedLine`,null),column:t.getArg(s,`generatedColumn`,null),lastColumn:t.getArg(s,`lastGeneratedColumn`,null)}),s=this._originalMappings[++o];else for(var l=s.originalColumn;s&&s.originalLine===r&&s.originalColumn==l;)a.push({line:t.getArg(s,`generatedLine`,null),column:t.getArg(s,`generatedColumn`,null),lastColumn:t.getArg(s,`lastGeneratedColumn`,null)}),s=this._originalMappings[++o]}return a},e.SourceMapConsumer=o;function s(e,n){var i=e;typeof e==`string`&&(i=t.parseSourceMapInput(e));var a=t.getArg(i,`version`),o=t.getArg(i,`sources`),s=t.getArg(i,`names`,[]),c=t.getArg(i,`sourceRoot`,null),l=t.getArg(i,`sourcesContent`,null),u=t.getArg(i,`mappings`),d=t.getArg(i,`file`,null);if(a!=this._version)throw Error(`Unsupported version: `+a);c&&=t.normalize(c),o=o.map(String).map(t.normalize).map(function(e){return c&&t.isAbsolute(c)&&t.isAbsolute(e)?t.relative(c,e):e}),this._names=r.fromArray(s.map(String),!0),this._sources=r.fromArray(o,!0),this._absoluteSources=this._sources.toArray().map(function(e){return t.computeSourceURL(c,e,n)}),this.sourceRoot=c,this.sourcesContent=l,this._mappings=u,this._sourceMapURL=n,this.file=d}s.prototype=Object.create(o.prototype),s.prototype.consumer=o,s.prototype._findSourceIndex=function(e){var n=e;if(this.sourceRoot!=null&&(n=t.relative(this.sourceRoot,n)),this._sources.has(n))return this._sources.indexOf(n);var r;for(r=0;r<this._absoluteSources.length;++r)if(this._absoluteSources[r]==e)return r;return-1},s.fromSourceMap=function(e,n){var i=Object.create(s.prototype),o=i._names=r.fromArray(e._names.toArray(),!0),l=i._sources=r.fromArray(e._sources.toArray(),!0);i.sourceRoot=e._sourceRoot,i.sourcesContent=e._generateSourcesContent(i._sources.toArray(),i.sourceRoot),i.file=e._file,i._sourceMapURL=n,i._absoluteSources=i._sources.toArray().map(function(e){return t.computeSourceURL(i.sourceRoot,e,n)});for(var u=e._mappings.toArray().slice(),d=i.__generatedMappings=[],f=i.__originalMappings=[],p=0,m=u.length;p<m;p++){var h=u[p],g=new c;g.generatedLine=h.generatedLine,g.generatedColumn=h.generatedColumn,h.source&&(g.source=l.indexOf(h.source),g.originalLine=h.originalLine,g.originalColumn=h.originalColumn,h.name&&(g.name=o.indexOf(h.name)),f.push(g)),d.push(g)}return a(i.__originalMappings,t.compareByOriginalPositions),i},s.prototype._version=3,Object.defineProperty(s.prototype,`sources`,{get:function(){return this._absoluteSources.slice()}});function c(){this.generatedLine=0,this.generatedColumn=0,this.source=null,this.originalLine=null,this.originalColumn=null,this.name=null}s.prototype._parseMappings=function(e,n){for(var r=1,o=0,s=0,l=0,u=0,d=0,f=e.length,p=0,m={},h={},g=[],_=[],v,y,b,x,S;p<f;)if(e.charAt(p)===`;`)r++,p++,o=0;else if(e.charAt(p)===`,`)p++;else{for(v=new c,v.generatedLine=r,x=p;x<f&&!this._charIsMappingSeparator(e,x);x++);if(y=e.slice(p,x),b=m[y],b)p+=y.length;else{for(b=[];p<x;)i.decode(e,p,h),S=h.value,p=h.rest,b.push(S);if(b.length===2)throw Error(`Found a source, but no line and column`);if(b.length===3)throw Error(`Found a source and line, but no column`);m[y]=b}v.generatedColumn=o+b[0],o=v.generatedColumn,b.length>1&&(v.source=u+b[1],u+=b[1],v.originalLine=s+b[2],s=v.originalLine,v.originalLine+=1,v.originalColumn=l+b[3],l=v.originalColumn,b.length>4&&(v.name=d+b[4],d+=b[4])),_.push(v),typeof v.originalLine==`number`&&g.push(v)}a(_,t.compareByGeneratedPositionsDeflated),this.__generatedMappings=_,a(g,t.compareByOriginalPositions),this.__originalMappings=g},s.prototype._findMapping=function(e,t,r,i,a,o){if(e[r]<=0)throw TypeError(`Line must be greater than or equal to 1, got `+e[r]);if(e[i]<0)throw TypeError(`Column must be greater than or equal to 0, got `+e[i]);return n.search(e,t,a,o)},s.prototype.computeColumnSpans=function(){for(var e=0;e<this._generatedMappings.length;++e){var t=this._generatedMappings[e];if(e+1<this._generatedMappings.length){var n=this._generatedMappings[e+1];if(t.generatedLine===n.generatedLine){t.lastGeneratedColumn=n.generatedColumn-1;continue}}t.lastGeneratedColumn=1/0}},s.prototype.originalPositionFor=function(e){var n={generatedLine:t.getArg(e,`line`),generatedColumn:t.getArg(e,`column`)},r=this._findMapping(n,this._generatedMappings,`generatedLine`,`generatedColumn`,t.compareByGeneratedPositionsDeflated,t.getArg(e,`bias`,o.GREATEST_LOWER_BOUND));if(r>=0){var i=this._generatedMappings[r];if(i.generatedLine===n.generatedLine){var a=t.getArg(i,`source`,null);a!==null&&(a=this._sources.at(a),a=t.computeSourceURL(this.sourceRoot,a,this._sourceMapURL));var s=t.getArg(i,`name`,null);return s!==null&&(s=this._names.at(s)),{source:a,line:t.getArg(i,`originalLine`,null),column:t.getArg(i,`originalColumn`,null),name:s}}}return{source:null,line:null,column:null,name:null}},s.prototype.hasContentsOfAllSources=function(){return this.sourcesContent?this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(e){return e==null}):!1},s.prototype.sourceContentFor=function(e,n){if(!this.sourcesContent)return null;var r=this._findSourceIndex(e);if(r>=0)return this.sourcesContent[r];var i=e;this.sourceRoot!=null&&(i=t.relative(this.sourceRoot,i));var a;if(this.sourceRoot!=null&&(a=t.urlParse(this.sourceRoot))){var o=i.replace(/^file:\/\//,``);if(a.scheme==`file`&&this._sources.has(o))return this.sourcesContent[this._sources.indexOf(o)];if((!a.path||a.path==`/`)&&this._sources.has(`/`+i))return this.sourcesContent[this._sources.indexOf(`/`+i)]}if(n)return null;throw Error(`"`+i+`" is not in the SourceMap.`)},s.prototype.generatedPositionFor=function(e){var n=t.getArg(e,`source`);if(n=this._findSourceIndex(n),n<0)return{line:null,column:null,lastColumn:null};var r={source:n,originalLine:t.getArg(e,`line`),originalColumn:t.getArg(e,`column`)},i=this._findMapping(r,this._originalMappings,`originalLine`,`originalColumn`,t.compareByOriginalPositions,t.getArg(e,`bias`,o.GREATEST_LOWER_BOUND));if(i>=0){var a=this._originalMappings[i];if(a.source===r.source)return{line:t.getArg(a,`generatedLine`,null),column:t.getArg(a,`generatedColumn`,null),lastColumn:t.getArg(a,`lastGeneratedColumn`,null)}}return{line:null,column:null,lastColumn:null}},e.BasicSourceMapConsumer=s;function l(e,n){var i=e;typeof e==`string`&&(i=t.parseSourceMapInput(e));var a=t.getArg(i,`version`),s=t.getArg(i,`sections`);if(a!=this._version)throw Error(`Unsupported version: `+a);this._sources=new r,this._names=new r;var c={line:-1,column:0};this._sections=s.map(function(e){if(e.url)throw Error(`Support for url field in sections not implemented.`);var r=t.getArg(e,`offset`),i=t.getArg(r,`line`),a=t.getArg(r,`column`);if(i<c.line||i===c.line&&a<c.column)throw Error(`Section offsets must be ordered and non-overlapping.`);return c=r,{generatedOffset:{generatedLine:i+1,generatedColumn:a+1},consumer:new o(t.getArg(e,`map`),n)}})}l.prototype=Object.create(o.prototype),l.prototype.constructor=o,l.prototype._version=3,Object.defineProperty(l.prototype,`sources`,{get:function(){for(var e=[],t=0;t<this._sections.length;t++)for(var n=0;n<this._sections[t].consumer.sources.length;n++)e.push(this._sections[t].consumer.sources[n]);return e}}),l.prototype.originalPositionFor=function(e){var r={generatedLine:t.getArg(e,`line`),generatedColumn:t.getArg(e,`column`)},i=n.search(r,this._sections,function(e,t){return e.generatedLine-t.generatedOffset.generatedLine||e.generatedColumn-t.generatedOffset.generatedColumn}),a=this._sections[i];return a?a.consumer.originalPositionFor({line:r.generatedLine-(a.generatedOffset.generatedLine-1),column:r.generatedColumn-(a.generatedOffset.generatedLine===r.generatedLine?a.generatedOffset.generatedColumn-1:0),bias:e.bias}):{source:null,line:null,column:null,name:null}},l.prototype.hasContentsOfAllSources=function(){return this._sections.every(function(e){return e.consumer.hasContentsOfAllSources()})},l.prototype.sourceContentFor=function(e,t){for(var n=0;n<this._sections.length;n++){var r=this._sections[n].consumer.sourceContentFor(e,!0);if(r)return r}if(t)return null;throw Error(`"`+e+`" is not in the SourceMap.`)},l.prototype.generatedPositionFor=function(e){for(var n=0;n<this._sections.length;n++){var r=this._sections[n];if(r.consumer._findSourceIndex(t.getArg(e,`source`))!==-1){var i=r.consumer.generatedPositionFor(e);if(i)return{line:i.line+(r.generatedOffset.generatedLine-1),column:i.column+(r.generatedOffset.generatedLine===i.line?r.generatedOffset.generatedColumn-1:0)}}}return{line:null,column:null}},l.prototype._parseMappings=function(e,n){this.__generatedMappings=[],this.__originalMappings=[];for(var r=0;r<this._sections.length;r++)for(var i=this._sections[r],o=i.consumer._generatedMappings,s=0;s<o.length;s++){var c=o[s],l=i.consumer._sources.at(c.source);l=t.computeSourceURL(i.consumer.sourceRoot,l,this._sourceMapURL),this._sources.add(l),l=this._sources.indexOf(l);var u=null;c.name&&(u=i.consumer._names.at(c.name),this._names.add(u),u=this._names.indexOf(u));var d={source:l,generatedLine:c.generatedLine+(i.generatedOffset.generatedLine-1),generatedColumn:c.generatedColumn+(i.generatedOffset.generatedLine===c.generatedLine?i.generatedOffset.generatedColumn-1:0),originalLine:c.originalLine,originalColumn:c.originalColumn,name:u};this.__generatedMappings.push(d),typeof d.originalLine==`number`&&this.__originalMappings.push(d)}a(this.__generatedMappings,t.compareByGeneratedPositionsDeflated),a(this.__originalMappings,t.compareByOriginalPositions)},e.IndexedSourceMapConsumer=l})),Wx=d((e=>{var t=Bx().SourceMapGenerator,n=Lx(),r=/(\r?\n)/,i=10,a=`$$$isSourceNode$$$`;function o(e,t,n,r,i){this.children=[],this.sourceContents={},this.line=e??null,this.column=t??null,this.source=n??null,this.name=i??null,this[a]=!0,r!=null&&this.add(r)}o.fromStringWithSourceMap=function(e,t,i){var a=new o,s=e.split(r),c=0,l=function(){return e()+(e()||``);function e(){return c<s.length?s[c++]:void 0}},u=1,d=0,f=null;return t.eachMapping(function(e){if(f!==null)if(u<e.generatedLine)p(f,l()),u++,d=0;else{var t=s[c]||``,n=t.substr(0,e.generatedColumn-d);s[c]=t.substr(e.generatedColumn-d),d=e.generatedColumn,p(f,n),f=e;return}for(;u<e.generatedLine;)a.add(l()),u++;if(d<e.generatedColumn){var t=s[c]||``;a.add(t.substr(0,e.generatedColumn)),s[c]=t.substr(e.generatedColumn),d=e.generatedColumn}f=e},this),c<s.length&&(f&&p(f,l()),a.add(s.splice(c).join(``))),t.sources.forEach(function(e){var r=t.sourceContentFor(e);r!=null&&(i!=null&&(e=n.join(i,e)),a.setSourceContent(e,r))}),a;function p(e,t){if(e===null||e.source===void 0)a.add(t);else{var r=i?n.join(i,e.source):e.source;a.add(new o(e.originalLine,e.originalColumn,r,t,e.name))}}},o.prototype.add=function(e){if(Array.isArray(e))e.forEach(function(e){this.add(e)},this);else if(e[a]||typeof e==`string`)e&&this.children.push(e);else throw TypeError(`Expected a SourceNode, string, or an array of SourceNodes and strings. Got `+e);return this},o.prototype.prepend=function(e){if(Array.isArray(e))for(var t=e.length-1;t>=0;t--)this.prepend(e[t]);else if(e[a]||typeof e==`string`)this.children.unshift(e);else throw TypeError(`Expected a SourceNode, string, or an array of SourceNodes and strings. Got `+e);return this},o.prototype.walk=function(e){for(var t,n=0,r=this.children.length;n<r;n++)t=this.children[n],t[a]?t.walk(e):t!==``&&e(t,{source:this.source,line:this.line,column:this.column,name:this.name})},o.prototype.join=function(e){var t,n,r=this.children.length;if(r>0){for(t=[],n=0;n<r-1;n++)t.push(this.children[n]),t.push(e);t.push(this.children[n]),this.children=t}return this},o.prototype.replaceRight=function(e,t){var n=this.children[this.children.length-1];return n[a]?n.replaceRight(e,t):typeof n==`string`?this.children[this.children.length-1]=n.replace(e,t):this.children.push(``.replace(e,t)),this},o.prototype.setSourceContent=function(e,t){this.sourceContents[n.toSetString(e)]=t},o.prototype.walkSourceContents=function(e){for(var t=0,r=this.children.length;t<r;t++)this.children[t][a]&&this.children[t].walkSourceContents(e);for(var i=Object.keys(this.sourceContents),t=0,r=i.length;t<r;t++)e(n.fromSetString(i[t]),this.sourceContents[i[t]])},o.prototype.toString=function(){var e=``;return this.walk(function(t){e+=t}),e},o.prototype.toStringWithSourceMap=function(e){var n={code:``,line:1,column:0},r=new t(e),a=!1,o=null,s=null,c=null,l=null;return this.walk(function(e,t){n.code+=e,t.source!==null&&t.line!==null&&t.column!==null?((o!==t.source||s!==t.line||c!==t.column||l!==t.name)&&r.addMapping({source:t.source,original:{line:t.line,column:t.column},generated:{line:n.line,column:n.column},name:t.name}),o=t.source,s=t.line,c=t.column,l=t.name,a=!0):a&&=(r.addMapping({generated:{line:n.line,column:n.column}}),o=null,!1);for(var u=0,d=e.length;u<d;u++)e.charCodeAt(u)===i?(n.line++,n.column=0,u+1===d?(o=null,a=!1):a&&r.addMapping({source:t.source,original:{line:t.line,column:t.column},generated:{line:n.line,column:n.column},name:t.name})):n.column++}),this.walkSourceContents(function(e,t){r.setSourceContent(e,t)}),{code:n.code,map:r}},e.SourceNode=o})),Gx=d((e=>{e.SourceMapGenerator=Bx().SourceMapGenerator,e.SourceMapConsumer=Ux().SourceMapConsumer,e.SourceNode=Wx().SourceNode})),Kx=d(((e,t)=>{e.__esModule=!0;var n=sx(),r=void 0;try{(typeof define!=`function`||!define.amd)&&(r=Gx().SourceNode)}catch{}r||(r=function(e,t,n,r){this.src=``,r&&this.add(r)},r.prototype={add:function(e){n.isArray(e)&&(e=e.join(``)),this.src+=e},prepend:function(e){n.isArray(e)&&(e=e.join(``)),this.src=e+this.src},toStringWithSourceMap:function(){return{code:this.toString()}},toString:function(){return this.src}});function i(e,t,r){if(n.isArray(e)){for(var i=[],a=0,o=e.length;a<o;a++)i.push(t.wrap(e[a],r));return i}else if(typeof e==`boolean`||typeof e==`number`)return e+``;return e}function a(e){this.srcFile=e,this.source=[]}a.prototype={isEmpty:function(){return!this.source.length},prepend:function(e,t){this.source.unshift(this.wrap(e,t))},push:function(e,t){this.source.push(this.wrap(e,t))},merge:function(){var e=this.empty();return this.each(function(t){e.add([` `,t,`
|
|
1824
|
-
`])}),e},each:function(e){for(var t=0,n=this.source.length;t<n;t++)e(this.source[t])},empty:function(){var e=this.currentLocation||{start:{}};return new r(e.start.line,e.start.column,this.srcFile)},wrap:function(e){var t=arguments.length<=1||arguments[1]===void 0?this.currentLocation||{start:{}}:arguments[1];return e instanceof r?e:(e=i(e,this,t),new r(t.start.line,t.start.column,this.srcFile,e))},functionCall:function(e,t,n){return n=this.generateList(n),this.wrap([e,t?`.`+t+`(`:`(`,n,`)`])},quotedString:function(e){return`"`+(e+``).replace(/\\/g,`\\\\`).replace(/"/g,`\\"`).replace(/\n/g,`\\n`).replace(/\r/g,`\\r`).replace(/\u2028/g,`\\u2028`).replace(/\u2029/g,`\\u2029`)+`"`},objectLiteral:function(e){var t=this,n=[];Object.keys(e).forEach(function(r){var a=i(e[r],t);a!==`undefined`&&n.push([t.quotedString(r),`:`,a])});var r=this.generateList(n);return r.prepend(`{`),r.add(`}`),r},generateList:function(e){for(var t=this.empty(),n=0,r=e.length;n<r;n++)n&&t.add(`,`),t.add(i(e[n],this));return t},generateArray:function(e){var t=this.generateList(e);return t.prepend(`[`),t.add(`]`),t}},e.default=a,t.exports=e.default})),qx=d(((e,t)=>{e.__esModule=!0;function n(e){return e&&e.__esModule?e:{default:e}}var r=Sx(),i=n(cx()),a=sx(),o=n(Kx());function s(e){this.value=e}function c(){}c.prototype={nameLookup:function(e,t){return this.internalNameLookup(e,t)},depthedLookup:function(e){return[this.aliasable(`container.lookup`),`(depths, `,JSON.stringify(e),`)`]},compilerInfo:function(){var e=r.COMPILER_REVISION;return[e,r.REVISION_CHANGES[e]]},appendToBuffer:function(e,t,n){return a.isArray(e)||(e=[e]),e=this.source.wrap(e,t),this.environment.isSimple?[`return `,e,`;`]:n?[`buffer += `,e,`;`]:(e.appendToBuffer=!0,e)},initializeBuffer:function(){return this.quotedString(``)},internalNameLookup:function(e,t){return this.lookupPropertyFunctionIsUsed=!0,[`lookupProperty(`,e,`,`,JSON.stringify(t),`)`]},lookupPropertyFunctionIsUsed:!1,compile:function(e,t,n,r){this.environment=e,this.options=t,this.stringParams=this.options.stringParams,this.trackIds=this.options.trackIds,this.precompile=!r,this.name=this.environment.name,this.isChild=!!n,this.context=n||{decorators:[],programs:[],environments:[]},this.preamble(),this.stackSlot=0,this.stackVars=[],this.aliases={},this.registers={list:[]},this.hashes=[],this.compileStack=[],this.inlineStack=[],this.blockParams=[],this.compileChildren(e,t),this.useDepths=this.useDepths||e.useDepths||e.useDecorators||this.options.compat,this.useBlockParams=this.useBlockParams||e.useBlockParams;var a=e.opcodes,o=void 0,s=void 0,c=void 0,l=void 0;for(c=0,l=a.length;c<l;c++)o=a[c],this.source.currentLocation=o.loc,s||=o.loc,this[o.opcode].apply(this,o.args);if(this.source.currentLocation=s,this.pushSource(``),this.stackSlot||this.inlineStack.length||this.compileStack.length)throw new i.default(`Compile completed with content left on stack`);this.decorators.isEmpty()?this.decorators=void 0:(this.useDecorators=!0,this.decorators.prepend([`var decorators = container.decorators, `,this.lookupPropertyFunctionVarDeclaration(),`;
|
|
1825
|
-
`]),this.decorators.push(`return fn;`),r?this.decorators=Function.apply(this,[`fn`,`props`,`container`,`depth0`,`data`,`blockParams`,`depths`,this.decorators.merge()]):(this.decorators.prepend(`function(fn, props, container, depth0, data, blockParams, depths) {
|
|
1826
|
-
`),this.decorators.push(`}
|
|
1827
|
-
`),this.decorators=this.decorators.merge()));var u=this.createFunctionContext(r);if(this.isChild)return u;var d={compiler:this.compilerInfo(),main:u};this.decorators&&(d.main_d=this.decorators,d.useDecorators=!0);var f=this.context,p=f.programs,m=f.decorators;for(c=0,l=p.length;c<l;c++)p[c]&&(d[c]=p[c],m[c]&&(d[c+`_d`]=m[c],d.useDecorators=!0));return this.environment.usePartial&&(d.usePartial=!0),this.options.data&&(d.useData=!0),this.useDepths&&(d.useDepths=!0),this.useBlockParams&&(d.useBlockParams=!0),this.options.compat&&(d.compat=!0),r?d.compilerOptions=this.options:(d.compiler=JSON.stringify(d.compiler),this.source.currentLocation={start:{line:1,column:0}},d=this.objectLiteral(d),t.srcName?(d=d.toStringWithSourceMap({file:t.destName}),d.map=d.map&&d.map.toString()):d=d.toString()),d},preamble:function(){this.lastContext=0,this.source=new o.default(this.options.srcName),this.decorators=new o.default(this.options.srcName)},createFunctionContext:function(e){var t=this,n=``,r=this.stackVars.concat(this.registers.list);r.length>0&&(n+=`, `+r.join(`, `));var i=0;Object.keys(this.aliases).forEach(function(e){var r=t.aliases[e];r.children&&r.referenceCount>1&&(n+=`, alias`+ ++i+`=`+e,r.children[0]=`alias`+i)}),this.lookupPropertyFunctionIsUsed&&(n+=`, `+this.lookupPropertyFunctionVarDeclaration());var a=[`container`,`depth0`,`helpers`,`partials`,`data`];(this.useBlockParams||this.useDepths)&&a.push(`blockParams`),this.useDepths&&a.push(`depths`);var o=this.mergeSource(n);return e?(a.push(o),Function.apply(this,a)):this.source.wrap([`function(`,a.join(`,`),`) {
|
|
1828
|
-
`,o,`}`])},mergeSource:function(e){var t=this.environment.isSimple,n=!this.forceBuffer,r=void 0,i=void 0,a=void 0,o=void 0;return this.source.each(function(e){e.appendToBuffer?(a?e.prepend(` + `):a=e,o=e):(a&&=(i?a.prepend(`buffer += `):r=!0,o.add(`;`),o=void 0),i=!0,t||(n=!1))}),n?a?(a.prepend(`return `),o.add(`;`)):i||this.source.push(`return "";`):(e+=`, buffer = `+(r?``:this.initializeBuffer()),a?(a.prepend(`return buffer + `),o.add(`;`)):this.source.push(`return buffer;`)),e&&this.source.prepend(`var `+e.substring(2)+(r?``:`;
|
|
1829
|
-
`)),this.source.merge()},lookupPropertyFunctionVarDeclaration:function(){return`lookupProperty = container.lookupProperty || function(parent, propertyName) {
|
|
1830
|
-
if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
|
|
1831
|
-
return parent[propertyName];
|
|
1832
|
-
}
|
|
1833
|
-
return undefined
|
|
1834
|
-
}`},blockValue:function(e){var t=this.aliasable(`container.hooks.blockHelperMissing`),n=[this.contextName(0)];this.setupHelperArgs(e,0,n);var r=this.popStack();n.splice(1,0,r),this.push(this.source.functionCall(t,`call`,n))},ambiguousBlockValue:function(){var e=this.aliasable(`container.hooks.blockHelperMissing`),t=[this.contextName(0)];this.setupHelperArgs(``,0,t,!0),this.flushInline();var n=this.topStack();t.splice(1,0,n),this.pushSource([`if (!`,this.lastHelper,`) { `,n,` = `,this.source.functionCall(e,`call`,t),`}`])},appendContent:function(e){this.pendingContent?e=this.pendingContent+e:this.pendingLocation=this.source.currentLocation,this.pendingContent=e},append:function(){if(this.isInline())this.replaceStack(function(e){return[` != null ? `,e,` : ""`]}),this.pushSource(this.appendToBuffer(this.popStack()));else{var e=this.popStack();this.pushSource([`if (`,e,` != null) { `,this.appendToBuffer(e,void 0,!0),` }`]),this.environment.isSimple&&this.pushSource([`else { `,this.appendToBuffer(`''`,void 0,!0),` }`])}},appendEscaped:function(){this.pushSource(this.appendToBuffer([this.aliasable(`container.escapeExpression`),`(`,this.popStack(),`)`]))},getContext:function(e){this.lastContext=e},pushContext:function(){this.pushStackLiteral(this.contextName(this.lastContext))},lookupOnContext:function(e,t,n,r){var i=0;!r&&this.options.compat&&!this.lastContext?this.push(this.depthedLookup(e[i++])):this.pushContext(),this.resolvePath(`context`,e,i,t,n)},lookupBlockParam:function(e,t){this.useBlockParams=!0,this.push([`blockParams[`,e[0],`][`,e[1],`]`]),this.resolvePath(`context`,t,1)},lookupData:function(e,t,n){e?this.pushStackLiteral(`container.data(data, `+e+`)`):this.pushStackLiteral(`data`),this.resolvePath(`data`,t,0,!0,n)},resolvePath:function(e,t,n,r,i){var a=this;if(this.options.strict||this.options.assumeObjects){this.push(l(this.options.strict&&i,this,t,n,e));return}for(var o=t.length;n<o;n++)this.replaceStack(function(i){var o=a.nameLookup(i,t[n],e);return r?[` && `,o]:[` != null ? `,o,` : `,i]})},resolvePossibleLambda:function(){this.push([this.aliasable(`container.lambda`),`(`,this.popStack(),`, `,this.contextName(0),`)`])},pushStringParam:function(e,t){this.pushContext(),this.pushString(t),t!==`SubExpression`&&(typeof e==`string`?this.pushString(e):this.pushStackLiteral(e))},emptyHash:function(e){this.trackIds&&this.push(`{}`),this.stringParams&&(this.push(`{}`),this.push(`{}`)),this.pushStackLiteral(e?`undefined`:`{}`)},pushHash:function(){this.hash&&this.hashes.push(this.hash),this.hash={values:{},types:[],contexts:[],ids:[]}},popHash:function(){var e=this.hash;this.hash=this.hashes.pop(),this.trackIds&&this.push(this.objectLiteral(e.ids)),this.stringParams&&(this.push(this.objectLiteral(e.contexts)),this.push(this.objectLiteral(e.types))),this.push(this.objectLiteral(e.values))},pushString:function(e){this.pushStackLiteral(this.quotedString(e))},pushLiteral:function(e){this.pushStackLiteral(e)},pushProgram:function(e){e==null?this.pushStackLiteral(null):this.pushStackLiteral(this.programExpression(e))},registerDecorator:function(e,t){var n=this.nameLookup(`decorators`,t,`decorator`),r=this.setupHelperArgs(t,e);this.decorators.push([`fn = `,this.decorators.functionCall(n,``,[`fn`,`props`,`container`,r]),` || fn;`])},invokeHelper:function(e,t,n){var r=this.popStack(),i=this.setupHelper(e,t),a=[];n&&a.push(i.name),a.push(r),this.options.strict||a.push(this.aliasable(`container.hooks.helperMissing`));var o=[`(`,this.itemsSeparatedBy(a,`||`),`)`],s=this.source.functionCall(o,`call`,i.callParams);this.push(s)},itemsSeparatedBy:function(e,t){var n=[];n.push(e[0]);for(var r=1;r<e.length;r++)n.push(t,e[r]);return n},invokeKnownHelper:function(e,t){var n=this.setupHelper(e,t);this.push(this.source.functionCall(n.name,`call`,n.callParams))},invokeAmbiguous:function(e,t){this.useRegister(`helper`);var n=this.popStack();this.emptyHash();var r=this.setupHelper(0,e,t),i=[`(`,`(helper = `,this.lastHelper=this.nameLookup(`helpers`,e,`helper`),` || `,n,`)`];this.options.strict||(i[0]=`(helper = `,i.push(` != null ? helper : `,this.aliasable(`container.hooks.helperMissing`))),this.push([`(`,i,r.paramsInit?[`),(`,r.paramsInit]:[],`),`,`(typeof helper === `,this.aliasable(`"function"`),` ? `,this.source.functionCall(`helper`,`call`,r.callParams),` : helper))`])},invokePartial:function(e,t,n){var r=[],i=this.setupParams(t,1,r);e&&(t=this.popStack(),delete i.name),n&&(i.indent=JSON.stringify(n)),i.helpers=`helpers`,i.partials=`partials`,i.decorators=`container.decorators`,e?r.unshift(t):r.unshift(this.nameLookup(`partials`,t,`partial`)),this.options.compat&&(i.depths=`depths`),i=this.objectLiteral(i),r.push(i),this.push(this.source.functionCall(`container.invokePartial`,``,r))},assignToHash:function(e){var t=this.popStack(),n=void 0,r=void 0,i=void 0;this.trackIds&&(i=this.popStack()),this.stringParams&&(r=this.popStack(),n=this.popStack());var a=this.hash;n&&(a.contexts[e]=n),r&&(a.types[e]=r),i&&(a.ids[e]=i),a.values[e]=t},pushId:function(e,t,n){e===`BlockParam`?this.pushStackLiteral(`blockParams[`+t[0]+`].path[`+t[1]+`]`+(n?` + `+JSON.stringify(`.`+n):``)):e===`PathExpression`?this.pushString(t):e===`SubExpression`?this.pushStackLiteral(`true`):this.pushStackLiteral(`null`)},compiler:c,compileChildren:function(e,t){for(var n=e.children,r=void 0,i=void 0,a=0,o=n.length;a<o;a++){r=n[a],i=new this.compiler;var s=this.matchExistingProgram(r);if(s==null){this.context.programs.push(``);var c=this.context.programs.length;r.index=c,r.name=`program`+c,this.context.programs[c]=i.compile(r,t,this.context,!this.precompile),this.context.decorators[c]=i.decorators,this.context.environments[c]=r,this.useDepths=this.useDepths||i.useDepths,this.useBlockParams=this.useBlockParams||i.useBlockParams,r.useDepths=this.useDepths,r.useBlockParams=this.useBlockParams}else r.index=s.index,r.name=`program`+s.index,this.useDepths=this.useDepths||s.useDepths,this.useBlockParams=this.useBlockParams||s.useBlockParams}},matchExistingProgram:function(e){for(var t=0,n=this.context.environments.length;t<n;t++){var r=this.context.environments[t];if(r&&r.equals(e))return r}},programExpression:function(e){var t=this.environment.children[e],n=[t.index,`data`,t.blockParams];return(this.useBlockParams||this.useDepths)&&n.push(`blockParams`),this.useDepths&&n.push(`depths`),`container.program(`+n.join(`, `)+`)`},useRegister:function(e){this.registers[e]||(this.registers[e]=!0,this.registers.list.push(e))},push:function(e){return e instanceof s||(e=this.source.wrap(e)),this.inlineStack.push(e),e},pushStackLiteral:function(e){this.push(new s(e))},pushSource:function(e){this.pendingContent&&=(this.source.push(this.appendToBuffer(this.source.quotedString(this.pendingContent),this.pendingLocation)),void 0),e&&this.source.push(e)},replaceStack:function(e){var t=[`(`],n=void 0,r=void 0,a=void 0;if(!this.isInline())throw new i.default(`replaceStack on non-inline`);var o=this.popStack(!0);if(o instanceof s)n=[o.value],t=[`(`,n],a=!0;else{r=!0;var c=this.incrStack();t=[`((`,this.push(c),` = `,o,`)`],n=this.topStack()}var l=e.call(this,n);a||this.popStack(),r&&this.stackSlot--,this.push(t.concat(l,`)`))},incrStack:function(){return this.stackSlot++,this.stackSlot>this.stackVars.length&&this.stackVars.push(`stack`+this.stackSlot),this.topStackName()},topStackName:function(){return`stack`+this.stackSlot},flushInline:function(){var e=this.inlineStack;this.inlineStack=[];for(var t=0,n=e.length;t<n;t++){var r=e[t];if(r instanceof s)this.compileStack.push(r);else{var i=this.incrStack();this.pushSource([i,` = `,r,`;`]),this.compileStack.push(i)}}},isInline:function(){return this.inlineStack.length},popStack:function(e){var t=this.isInline(),n=(t?this.inlineStack:this.compileStack).pop();if(!e&&n instanceof s)return n.value;if(!t){if(!this.stackSlot)throw new i.default(`Invalid stack pop`);this.stackSlot--}return n},topStack:function(){var e=this.isInline()?this.inlineStack:this.compileStack,t=e[e.length-1];return t instanceof s?t.value:t},contextName:function(e){return this.useDepths&&e?`depths[`+e+`]`:`depth`+e},quotedString:function(e){return this.source.quotedString(e)},objectLiteral:function(e){return this.source.objectLiteral(e)},aliasable:function(e){var t=this.aliases[e];return t?(t.referenceCount++,t):(t=this.aliases[e]=this.source.wrap(e),t.aliasable=!0,t.referenceCount=1,t)},setupHelper:function(e,t,n){var r=[];return{params:r,paramsInit:this.setupHelperArgs(t,e,r,n),name:this.nameLookup(`helpers`,t,`helper`),callParams:[this.aliasable(this.contextName(0)+` != null ? `+this.contextName(0)+` : (container.nullContext || {})`)].concat(r)}},setupParams:function(e,t,n){var r={},i=[],a=[],o=[],s=!n,c=void 0;s&&(n=[]),r.name=this.quotedString(e),r.hash=this.popStack(),this.trackIds&&(r.hashIds=this.popStack()),this.stringParams&&(r.hashTypes=this.popStack(),r.hashContexts=this.popStack());var l=this.popStack(),u=this.popStack();(u||l)&&(r.fn=u||`container.noop`,r.inverse=l||`container.noop`);for(var d=t;d--;)c=this.popStack(),n[d]=c,this.trackIds&&(o[d]=this.popStack()),this.stringParams&&(a[d]=this.popStack(),i[d]=this.popStack());return s&&(r.args=this.source.generateArray(n)),this.trackIds&&(r.ids=this.source.generateArray(o)),this.stringParams&&(r.types=this.source.generateArray(a),r.contexts=this.source.generateArray(i)),this.options.data&&(r.data=`data`),this.useBlockParams&&(r.blockParams=`blockParams`),r},setupHelperArgs:function(e,t,n,r){var i=this.setupParams(e,t,n);return i.loc=JSON.stringify(this.source.currentLocation),i=this.objectLiteral(i),r?(this.useRegister(`options`),n.push(`options`),[`options=`,i]):n?(n.push(i),``):i}},(function(){for(var e=`break else new var case finally return void catch for switch while continue function this with default if throw delete in try do instanceof typeof abstract enum int short boolean export interface static byte extends long super char final native synchronized class float package throws const goto private transient debugger implements protected volatile double import public let yield await null true false`.split(` `),t=c.RESERVED_WORDS={},n=0,r=e.length;n<r;n++)t[e[n]]=!0})(),c.isValidJavaScriptVariableName=function(e){return!c.RESERVED_WORDS[e]&&/^[a-zA-Z_$][0-9a-zA-Z_$]*$/.test(e)};function l(e,t,n,r,i){var a=t.popStack(),o=n.length;for(e&&o--;r<o;r++)a=t.nameLookup(a,n[r],i);return e?[t.aliasable(`container.strict`),`(`,a,`, `,t.quotedString(n[r]),`, `,JSON.stringify(t.source.currentLocation),` )`]:a}e.default=c,t.exports=e.default})),Jx=e(d(((e,t)=>{e.__esModule=!0;function n(e){return e&&e.__esModule?e:{default:e}}var r=n(Dx()),i=n(Ox()),a=Nx(),o=Px(),s=n(qx()),c=n(Ax()),l=n(Ex()),u=r.default.create;function d(){var e=u();return e.compile=function(t,n){return o.compile(t,n,e)},e.precompile=function(t,n){return o.precompile(t,n,e)},e.AST=i.default,e.Compiler=o.Compiler,e.JavaScriptCompiler=s.default,e.Parser=a.parser,e.parse=a.parse,e.parseWithoutProcessing=a.parseWithoutProcessing,e}var f=d();f.create=d,l.default(f),f.Visitor=c.default,f.default=f,e.default=f,t.exports=e.default}))(),1),Yx=[{id:`agentThreadMessage`,body:`[bb message from thread:{{senderThreadId}}; reply with \`bb thread tell {{senderThreadId}} "<your response>"\`]
|
|
1835
|
-
|
|
1836
|
-
{{messageText}}`,fileName:`agent-thread-message.md`,kind:`prompt`,title:`Agent Thread Message`,summary:`Wraps a bb CLI message from one agent thread to another.`,intent:`Tell the receiving agent which thread sent the message and how to reply.`,editingNotes:`Keep the response command in the prefix so standard agent instructions do not need special cross-thread message guidance.`,variables:{senderThreadId:`The thread ID that sent the message.`,messageText:`The original message text sent by the agent.`}},{id:`bbGuideAsync`,body:`Async scheduled nudges
|
|
1837
|
-
|
|
1838
|
-
Use \`ASYNC.md\` in thread storage when the system should wake a manager thread
|
|
1839
|
-
later for reminders, recurring check-ins, or follow-up work.
|
|
1840
|
-
|
|
1841
|
-
\`ASYNC.md\` is Markdown with YAML frontmatter:
|
|
1842
|
-
|
|
1843
|
-
\`\`\`yaml
|
|
1844
|
-
---
|
|
1845
|
-
timezone: America/Los_Angeles
|
|
1846
|
-
schedules:
|
|
1847
|
-
- name: daily-recap
|
|
1848
|
-
cron: "0 8 * * 1-5"
|
|
1849
|
-
- name: deploy-check
|
|
1850
|
-
cron: "0 */2 * * *"
|
|
1851
|
-
timezone: UTC
|
|
1852
|
-
---
|
|
1853
|
-
\`\`\`
|
|
1854
|
-
|
|
1855
|
-
Each schedule has a matching \`## <name>\` section in the body with instructions
|
|
1856
|
-
for your future self. The top-level \`timezone\` defaults to UTC; each schedule
|
|
1857
|
-
can override it.
|
|
1858
|
-
|
|
1859
|
-
For one-off reminders like "in 10 minutes", encode the next daily occurrence
|
|
1860
|
-
and note in the body to remove the schedule after it fires once.
|
|
1861
|
-
|
|
1862
|
-
Keep schedule \`name\` values stable. The server syncs entries by name, so
|
|
1863
|
-
renaming one creates a new schedule rather than editing it.
|
|
1864
|
-
|
|
1865
|
-
Constraints:
|
|
1866
|
-
|
|
1867
|
-
- No more than 20 schedules.
|
|
1868
|
-
- No interval shorter than 5 minutes.
|
|
1869
|
-
- The cron month field must stay \`*\`.
|
|
1870
|
-
|
|
1871
|
-
When a scheduled nudge arrives, read the matching section in \`ASYNC.md\` and
|
|
1872
|
-
decide whether there is real work to do. Only message the user when the nudge
|
|
1873
|
-
produced something useful. Remove schedules that are no longer needed.`,fileName:`bb-guide-async.md`,kind:`instruction`,title:`bb Guide - Async`,summary:`Scheduled nudge reference for ASYNC.md.`,intent:`Explain how to define scheduled nudges for manager threads.`,editingNotes:`Keep this as the canonical ASYNC.md syntax reference. Manager prompts should point here instead of inlining schedule syntax.`,variables:{}},{id:`bbGuideEnvironments`,body:`Environment commands
|
|
1874
|
-
|
|
1875
|
-
Environments determine where threads run. Multiple threads can share an environment
|
|
1876
|
-
(e.g., a coding thread and a review thread in the same worktree).
|
|
1877
|
-
|
|
1878
|
-
bb environment show <id> Show environment details (path, branch, status)
|
|
1879
|
-
|
|
1880
|
-
bb environment update <id> Update environment metadata
|
|
1881
|
-
--merge-base-branch <branch> Set merge-base branch override
|
|
1882
|
-
--clear-merge-base-branch Clear merge-base override
|
|
1883
|
-
|
|
1884
|
-
bb environment commit <id> Create a commit in the environment
|
|
1885
|
-
|
|
1886
|
-
bb environment squash-merge <id> Squash-merge into a target branch
|
|
1887
|
-
--merge-base-branch <branch> Target branch (required)`,fileName:`bb-guide-environments.md`,kind:`instruction`,title:`bb Guide — Environments`,summary:`Command reference for environment inspection, commits, and merges.`,intent:`Provide complete environment command documentation for agents.`,editingNotes:`Keep flags accurate against the CLI implementation.`,variables:{}},{id:`bbGuideHosts`,body:`Host commands
|
|
1888
|
-
|
|
1889
|
-
Hosts are where environments run.
|
|
1890
|
-
|
|
1891
|
-
- Persistent hosts are long-lived machines (your laptop, a remote server).
|
|
1892
|
-
|
|
1893
|
-
bb host list List persistent hosts with status
|
|
1894
|
-
|
|
1895
|
-
Host status values: connected, disconnected.`,fileName:`bb-guide-hosts.md`,kind:`instruction`,title:`bb Guide — Hosts`,summary:`Command reference for listing and understanding hosts.`,intent:`Provide complete host command documentation for agents.`,editingNotes:`Keep flags accurate against the CLI implementation.`,variables:{}},{id:`bbGuideManagers`,body:`Manager commands
|
|
1896
|
-
|
|
1897
|
-
Managers are long-running threads that coordinate work across other threads.
|
|
1898
|
-
Use bb thread commands for most manager interactions.
|
|
1899
|
-
|
|
1900
|
-
bb manager hire [projectId] Hire a new manager
|
|
1901
|
-
--project <id> Project ID (defaults to BB_PROJECT_ID)
|
|
1902
|
-
--name <name> Manager name
|
|
1903
|
-
--provider <id> Provider override
|
|
1904
|
-
--model <model> Model override
|
|
1905
|
-
--reasoning-level <level> Reasoning level: low, medium, high, xhigh, max (provider-dependent)
|
|
1906
|
-
--permission-mode <mode> Permission mode: full, workspace-write, or readonly
|
|
1907
|
-
--host <id> Target host (defaults to local host)
|
|
1908
|
-
--json Print machine-readable JSON output
|
|
1909
|
-
|
|
1910
|
-
When --provider and --model are omitted, the project's remembered manager defaults apply first.
|
|
1911
|
-
If there are no remembered manager defaults, the server manager policy is used.
|
|
1912
|
-
|
|
1913
|
-
bb manager list [projectId] List managers for a project
|
|
1914
|
-
--project <id> Project ID (defaults to BB_PROJECT_ID)
|
|
1915
|
-
--json Print machine-readable JSON output
|
|
1916
|
-
|
|
1917
|
-
bb manager status <id> Show manager status and managed threads
|
|
1918
|
-
--json Print machine-readable JSON output
|
|
1919
|
-
|
|
1920
|
-
bb manager delete <id> Delete a manager permanently
|
|
1921
|
-
--yes Skip the confirmation prompt
|
|
1922
|
-
--json Print machine-readable JSON output
|
|
1923
|
-
|
|
1924
|
-
Common manager interactions via thread commands:
|
|
1925
|
-
|
|
1926
|
-
bb thread list --parent-thread <manager-id> List managed threads
|
|
1927
|
-
bb thread tell <manager-id> "message" Message a manager
|
|
1928
|
-
bb thread log <manager-id> Show manager log
|
|
1929
|
-
|
|
1930
|
-
Manager thread logs use the conversation view by default. \`--format verbose\`
|
|
1931
|
-
expands returned timeline details but does not switch to the internal manager
|
|
1932
|
-
debug timeline.`,fileName:`bb-guide-managers.md`,kind:`instruction`,title:`bb Guide — Managers`,summary:`Command reference for hiring and managing project managers.`,intent:`Provide complete manager command documentation for agents.`,editingNotes:`Keep flags accurate against the CLI implementation.`,variables:{}},{id:`bbGuideOverview`,body:`bb is an agent orchestration tool for managing multiple agents.
|
|
1933
|
-
|
|
1934
|
-
Core concepts:
|
|
1935
|
-
|
|
1936
|
-
- Project — maps to a repository. All threads belong to a project.
|
|
1937
|
-
- Thread — a single agent conversation. The fundamental unit of work.
|
|
1938
|
-
- Environment — where a thread runs. Kinds: project checkout or isolated worktree. Multiple threads can share an environment.
|
|
1939
|
-
- Provider — the agent backend powering a thread (e.g., codex, claude-code). Each provider supports different models.
|
|
1940
|
-
- Host — where environments run. Hosts are long-lived local or remote machines.
|
|
1941
|
-
|
|
1942
|
-
Thread types:
|
|
1943
|
-
|
|
1944
|
-
- standard — does coding, research, debugging, or other tasks.
|
|
1945
|
-
- manager — coordinates work across other threads. Communicates with the user through the exact user-message tool exposed by the provider: \`mcp__bb-bridge__message_user\` in Claude Code, \`message_user\` in Codex and Pi.
|
|
1946
|
-
|
|
1947
|
-
Threads can have a parent-child relationship. The parent manages the child and receives lifecycle notifications when it completes, fails, or is interrupted. Threads without a parent are managed by the user.
|
|
1948
|
-
|
|
1949
|
-
Context variables set automatically inside a thread environment:
|
|
1950
|
-
|
|
1951
|
-
- BB_PROJECT_ID — current project
|
|
1952
|
-
- BB_THREAD_ID — current thread
|
|
1953
|
-
- BB_ENVIRONMENT_ID — current environment
|
|
1954
|
-
|
|
1955
|
-
Run \`bb status\` to see your current context (resolved project and thread IDs).
|
|
1956
|
-
|
|
1957
|
-
All commands support --json for machine-readable output.
|
|
1958
|
-
|
|
1959
|
-
Run \`bb guide <chapter>\` for command details:
|
|
1960
|
-
|
|
1961
|
-
threads Spawning, inspecting, messaging, and managing threads
|
|
1962
|
-
environments Environment operations, commits, and merges
|
|
1963
|
-
managers Hiring and managing project managers
|
|
1964
|
-
providers Discovering providers and models
|
|
1965
|
-
projects Project CRUD and sources
|
|
1966
|
-
hosts Listing and understanding hosts
|
|
1967
|
-
styling How to style STATUS.html to match the bb UI
|
|
1968
|
-
async Defining scheduled nudges with ASYNC.md`,fileName:`bb-guide-overview.md`,kind:`instruction`,title:`bb Guide Overview`,summary:`System overview and chapter index for the bb CLI guide.`,intent:`Orient agents to bb core concepts and help them find the right guide chapter.`,editingNotes:`Keep this concise. Concepts only — command details belong in chapter files.`,variables:{}},{id:`bbGuideProjects`,body:`Project commands
|
|
1969
|
-
|
|
1970
|
-
A project maps to a code repository. All threads belong to a project.
|
|
1971
|
-
|
|
1972
|
-
bb project list List all projects
|
|
1973
|
-
bb project create --name "..." [options]
|
|
1974
|
-
--root <path> Project root path
|
|
1975
|
-
--repo-url <url> Repository URL
|
|
1976
|
-
--host <id> Default host
|
|
1977
|
-
|
|
1978
|
-
bb project show <id> Show project details
|
|
1979
|
-
bb project update <id> Update a project
|
|
1980
|
-
--name <name> New name
|
|
1981
|
-
|
|
1982
|
-
bb project delete <id> Delete project and all threads
|
|
1983
|
-
--yes Skip confirmation
|
|
1984
|
-
|
|
1985
|
-
Sources:
|
|
1986
|
-
|
|
1987
|
-
Projects can have multiple sources (paths or repos).
|
|
1988
|
-
|
|
1989
|
-
bb project source add <projectId> Add a source
|
|
1990
|
-
--path <path> Local path
|
|
1991
|
-
--repo-url <url> Repository URL
|
|
1992
|
-
--host <id> Host for this source
|
|
1993
|
-
--default Set as default source
|
|
1994
|
-
|
|
1995
|
-
bb project source update <projectId> <sourceId>
|
|
1996
|
-
--path <path>
|
|
1997
|
-
--repo-url <url>
|
|
1998
|
-
--default
|
|
1999
|
-
|
|
2000
|
-
bb project source delete <projectId> <sourceId>`,fileName:`bb-guide-projects.md`,kind:`instruction`,title:`bb Guide — Projects`,summary:`Command reference for project CRUD and sources.`,intent:`Provide complete project command documentation for agents.`,editingNotes:`Keep flags accurate against the CLI implementation.`,variables:{}},{id:`bbGuideProviders`,body:`Provider commands
|
|
2001
|
-
|
|
2002
|
-
Providers are agent backends (e.g., codex, claude-code). Each supports different models.
|
|
2003
|
-
|
|
2004
|
-
bb provider list List available providers
|
|
2005
|
-
bb provider models [providerId] List models for a provider
|
|
2006
|
-
|
|
2007
|
-
Use these before spawning threads if you are unsure which provider or model to use.
|
|
2008
|
-
When provider and model are omitted from bb thread spawn, the project's remembered
|
|
2009
|
-
defaults apply.`,fileName:`bb-guide-providers.md`,kind:`instruction`,title:`bb Guide — Providers`,summary:`Command reference for discovering providers and models.`,intent:`Provide complete provider command documentation for agents.`,editingNotes:`Keep flags accurate against the CLI implementation.`,variables:{}},{id:`bbGuideStyling`,body:`STATUS.html styling
|
|
2010
|
-
|
|
2011
|
-
\`STATUS.html\` renders in an unsandboxed iframe in the bb secondary panel.
|
|
2012
|
-
External resources such as Google Fonts, Tailwind CDN, images, and stylesheets
|
|
2013
|
-
load normally.
|
|
2014
|
-
|
|
2015
|
-
Unless the user asks for a different visual direction, make \`STATUS.html\` look
|
|
2016
|
-
like bb: dense, minimal, and built from the same tokens. Use Tailwind for layout,
|
|
2017
|
-
spacing, grids, flex rows, responsive behavior, and small utility styling, then
|
|
2018
|
-
use the bb CSS variables below for colors, fonts, borders, radius, and shadows.
|
|
2019
|
-
|
|
2020
|
-
Load Tailwind and bb's app fonts with:
|
|
2021
|
-
|
|
2022
|
-
\`\`\`html
|
|
2023
|
-
<script src="https://cdn.tailwindcss.com"><\/script>
|
|
2024
|
-
<link rel="preconnect" href="https://fonts.googleapis.com">
|
|
2025
|
-
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
|
2026
|
-
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Fira+Code:wght@400;500&display=swap" rel="stylesheet">
|
|
2027
|
-
\`\`\`
|
|
2028
|
-
|
|
2029
|
-
bb's app dark mode is class-based on the parent app root. The iframe does not
|
|
2030
|
-
inherit that \`.dark\` class, so a \`STATUS.html\` document that wants light and
|
|
2031
|
-
dark rendering should use \`@media (prefers-color-scheme: dark)\` as the closest
|
|
2032
|
-
available signal for the user's OS theme.
|
|
2033
|
-
|
|
2034
|
-
Paste this starter block into \`STATUS.html\` so the page uses bb's actual design
|
|
2035
|
-
tokens:
|
|
2036
|
-
|
|
2037
|
-
\`\`\`html
|
|
2038
|
-
<style>
|
|
2039
|
-
:root {
|
|
2040
|
-
color-scheme: light;
|
|
2041
|
-
--background: oklch(0.9551 0 0);
|
|
2042
|
-
--foreground: oklch(0.3211 0 0);
|
|
2043
|
-
--card: oklch(0.9702 0 0);
|
|
2044
|
-
--card-foreground: oklch(0.3211 0 0);
|
|
2045
|
-
--popover: oklch(0.9702 0 0);
|
|
2046
|
-
--popover-foreground: oklch(0.3211 0 0);
|
|
2047
|
-
--primary: oklch(0.4891 0 0);
|
|
2048
|
-
--primary-foreground: oklch(1 0 0);
|
|
2049
|
-
--secondary: oklch(0.9067 0 0);
|
|
2050
|
-
--secondary-foreground: oklch(0.3211 0 0);
|
|
2051
|
-
--muted: oklch(0.8853 0 0);
|
|
2052
|
-
--muted-foreground: oklch(0.5103 0 0);
|
|
2053
|
-
--accent: oklch(0.9 0 0);
|
|
2054
|
-
--accent-foreground: oklch(0.3211 0 0);
|
|
2055
|
-
--state-hover: oklch(0.92 0 0);
|
|
2056
|
-
--state-active: oklch(0.88 0 0);
|
|
2057
|
-
--destructive: oklch(0.5594 0.19 25.8625);
|
|
2058
|
-
--destructive-foreground: oklch(1 0 0);
|
|
2059
|
-
--attention: oklch(0.74 0.15 80);
|
|
2060
|
-
--attention-foreground: oklch(0.3211 0 0);
|
|
2061
|
-
--warning: oklch(0.7 0.16 50);
|
|
2062
|
-
--warning-foreground: oklch(0.3211 0 0);
|
|
2063
|
-
--success: oklch(0.7 0.15 155);
|
|
2064
|
-
--success-foreground: oklch(0.3211 0 0);
|
|
2065
|
-
--diff-added: oklch(0.5 0.13 163);
|
|
2066
|
-
--diff-removed: oklch(0.5 0.17 28);
|
|
2067
|
-
--border: oklch(0.8576 0 0);
|
|
2068
|
-
--input: oklch(0.9067 0 0);
|
|
2069
|
-
--ring: oklch(0.4891 0 0);
|
|
2070
|
-
--chart-1: oklch(0.4891 0 0);
|
|
2071
|
-
--chart-2: oklch(0.4863 0.0361 196.0278);
|
|
2072
|
-
--chart-3: oklch(0.6534 0 0);
|
|
2073
|
-
--chart-4: oklch(0.7316 0 0);
|
|
2074
|
-
--chart-5: oklch(0.8078 0 0);
|
|
2075
|
-
--sidebar: oklch(0.937 0 0);
|
|
2076
|
-
--sidebar-foreground: oklch(0.3211 0 0);
|
|
2077
|
-
--sidebar-primary: oklch(0.4891 0 0);
|
|
2078
|
-
--sidebar-primary-foreground: oklch(1 0 0);
|
|
2079
|
-
--sidebar-accent: oklch(0.8078 0 0);
|
|
2080
|
-
--sidebar-accent-foreground: oklch(0.3211 0 0);
|
|
2081
|
-
--sidebar-border: oklch(0.8576 0 0);
|
|
2082
|
-
--sidebar-ring: oklch(0.4891 0 0);
|
|
2083
|
-
--font-sans: "Inter Variable", Inter, sans-serif;
|
|
2084
|
-
--font-serif: Georgia, serif;
|
|
2085
|
-
--font-mono: "Fira Code", monospace;
|
|
2086
|
-
--radius: 0.35rem;
|
|
2087
|
-
--radius-sm: calc(var(--radius) - 4px);
|
|
2088
|
-
--radius-md: calc(var(--radius) - 2px);
|
|
2089
|
-
--radius-lg: var(--radius);
|
|
2090
|
-
--radius-xl: calc(var(--radius) + 4px);
|
|
2091
|
-
--bb-sidebar-row-height: 1.75rem;
|
|
2092
|
-
--bb-sidebar-row-height-coarse: 2.5rem;
|
|
2093
|
-
--shadow-x: 0px;
|
|
2094
|
-
--shadow-y: 2px;
|
|
2095
|
-
--shadow-blur: 0px;
|
|
2096
|
-
--shadow-spread: 0px;
|
|
2097
|
-
--shadow-opacity: 0.15;
|
|
2098
|
-
--shadow-color: hsl(0 0% 20% / 0.1);
|
|
2099
|
-
--shadow-2xs: 0px 2px 0px 0px hsl(0 0% 20% / 0.07);
|
|
2100
|
-
--shadow-xs: 0px 2px 0px 0px hsl(0 0% 20% / 0.07);
|
|
2101
|
-
--shadow-sm:
|
|
2102
|
-
0px 2px 0px 0px hsl(0 0% 20% / 0.15), 0px 1px 2px -1px hsl(0 0% 20% / 0.15);
|
|
2103
|
-
--shadow:
|
|
2104
|
-
0px 2px 0px 0px hsl(0 0% 20% / 0.15), 0px 1px 2px -1px hsl(0 0% 20% / 0.15);
|
|
2105
|
-
--shadow-md:
|
|
2106
|
-
0px 2px 0px 0px hsl(0 0% 20% / 0.15), 0px 2px 4px -1px hsl(0 0% 20% / 0.15);
|
|
2107
|
-
--shadow-lg:
|
|
2108
|
-
0px 2px 0px 0px hsl(0 0% 20% / 0.15), 0px 4px 6px -1px hsl(0 0% 20% / 0.15);
|
|
2109
|
-
--shadow-xl:
|
|
2110
|
-
0px 2px 0px 0px hsl(0 0% 20% / 0.15), 0px 8px 10px -1px hsl(0 0% 20% / 0.15);
|
|
2111
|
-
--shadow-2xl: 0px 2px 0px 0px hsl(0 0% 20% / 0.38);
|
|
2112
|
-
--tracking-normal: 0em;
|
|
2113
|
-
--spacing: 0.25rem;
|
|
2114
|
-
--icon-stroke-width: 1.75;
|
|
2115
|
-
--text-sm: 0.8125rem;
|
|
2116
|
-
--text-base: 0.9375rem;
|
|
2117
|
-
--text-base--line-height: 1.375rem;
|
|
2118
|
-
--ansi-0: #000000;
|
|
2119
|
-
--ansi-1: #a11616;
|
|
2120
|
-
--ansi-2: #13704a;
|
|
2121
|
-
--ansi-3: #7f6a00;
|
|
2122
|
-
--ansi-4: #1f5ca6;
|
|
2123
|
-
--ansi-5: #8a2f8a;
|
|
2124
|
-
--ansi-6: #0b6f88;
|
|
2125
|
-
--ansi-7: #3d3d3d;
|
|
2126
|
-
--ansi-8: #3a3a3a;
|
|
2127
|
-
--ansi-9: #d32f2f;
|
|
2128
|
-
--ansi-10: #197c52;
|
|
2129
|
-
--ansi-11: #a35f00;
|
|
2130
|
-
--ansi-12: #2666b0;
|
|
2131
|
-
--ansi-13: #9b349b;
|
|
2132
|
-
--ansi-14: #0f7798;
|
|
2133
|
-
--ansi-15: #1f1f1f;
|
|
2134
|
-
--ansi-bg-fg-0: #ffffff;
|
|
2135
|
-
--ansi-bg-fg-1: #ffffff;
|
|
2136
|
-
--ansi-bg-fg-2: #ffffff;
|
|
2137
|
-
--ansi-bg-fg-3: #ffffff;
|
|
2138
|
-
--ansi-bg-fg-4: #ffffff;
|
|
2139
|
-
--ansi-bg-fg-5: #ffffff;
|
|
2140
|
-
--ansi-bg-fg-6: #ffffff;
|
|
2141
|
-
--ansi-bg-fg-7: #ffffff;
|
|
2142
|
-
--ansi-bg-fg-8: #ffffff;
|
|
2143
|
-
--ansi-bg-fg-9: #ffffff;
|
|
2144
|
-
--ansi-bg-fg-10: #ffffff;
|
|
2145
|
-
--ansi-bg-fg-11: #ffffff;
|
|
2146
|
-
--ansi-bg-fg-12: #ffffff;
|
|
2147
|
-
--ansi-bg-fg-13: #ffffff;
|
|
2148
|
-
--ansi-bg-fg-14: #ffffff;
|
|
2149
|
-
--ansi-bg-fg-15: #ffffff;
|
|
2150
|
-
}
|
|
2151
|
-
|
|
2152
|
-
@media (prefers-color-scheme: dark) {
|
|
2153
|
-
:root {
|
|
2154
|
-
color-scheme: dark;
|
|
2155
|
-
--background: oklch(0.195 0 0);
|
|
2156
|
-
--foreground: oklch(0.8853 0 0);
|
|
2157
|
-
--card: oklch(0.2435 0 0);
|
|
2158
|
-
--card-foreground: oklch(0.8853 0 0);
|
|
2159
|
-
--popover: oklch(0.2435 0 0);
|
|
2160
|
-
--popover-foreground: oklch(0.8853 0 0);
|
|
2161
|
-
--primary: oklch(0.7058 0 0);
|
|
2162
|
-
--primary-foreground: oklch(0.2178 0 0);
|
|
2163
|
-
--secondary: oklch(0.3092 0 0);
|
|
2164
|
-
--secondary-foreground: oklch(0.8853 0 0);
|
|
2165
|
-
--muted: oklch(0.285 0 0);
|
|
2166
|
-
--muted-foreground: oklch(0.66 0 0);
|
|
2167
|
-
--accent: oklch(0.285 0 0);
|
|
2168
|
-
--accent-foreground: oklch(0.8853 0 0);
|
|
2169
|
-
--state-hover: oklch(0.255 0 0);
|
|
2170
|
-
--state-active: oklch(0.305 0 0);
|
|
2171
|
-
--destructive: oklch(0.56 0.19 22.1703);
|
|
2172
|
-
--destructive-foreground: oklch(1 0 0);
|
|
2173
|
-
--attention: oklch(0.8 0.15 80);
|
|
2174
|
-
--attention-foreground: oklch(0.2178 0 0);
|
|
2175
|
-
--warning: oklch(0.75 0.16 50);
|
|
2176
|
-
--warning-foreground: oklch(0.2178 0 0);
|
|
2177
|
-
--success: oklch(0.74 0.15 155);
|
|
2178
|
-
--success-foreground: oklch(0.2178 0 0);
|
|
2179
|
-
--diff-added: oklch(0.77 0.17 163);
|
|
2180
|
-
--diff-removed: oklch(0.72 0.19 22);
|
|
2181
|
-
--border: oklch(0.329 0 0);
|
|
2182
|
-
--input: oklch(0.3092 0 0);
|
|
2183
|
-
--ring: oklch(0.7058 0 0);
|
|
2184
|
-
--chart-1: oklch(0.7058 0 0);
|
|
2185
|
-
--chart-2: oklch(0.6714 0.0339 206.3482);
|
|
2186
|
-
--chart-3: oklch(0.5452 0 0);
|
|
2187
|
-
--chart-4: oklch(0.4604 0 0);
|
|
2188
|
-
--chart-5: oklch(0.3715 0 0);
|
|
2189
|
-
--sidebar: oklch(0.24 0 0);
|
|
2190
|
-
--sidebar-foreground: oklch(0.8853 0 0);
|
|
2191
|
-
--sidebar-primary: oklch(0.7058 0 0);
|
|
2192
|
-
--sidebar-primary-foreground: oklch(0.2178 0 0);
|
|
2193
|
-
--sidebar-accent: oklch(0.32 0 0);
|
|
2194
|
-
--sidebar-accent-foreground: oklch(0.8853 0 0);
|
|
2195
|
-
--sidebar-border: oklch(0.32 0 0);
|
|
2196
|
-
--sidebar-ring: oklch(0.7058 0 0);
|
|
2197
|
-
--font-sans: "Inter Variable", Inter, sans-serif;
|
|
2198
|
-
--font-serif: Georgia, serif;
|
|
2199
|
-
--font-mono: "Fira Code", monospace;
|
|
2200
|
-
--radius: 0.35rem;
|
|
2201
|
-
--shadow-x: 0px;
|
|
2202
|
-
--shadow-y: 2px;
|
|
2203
|
-
--shadow-blur: 0px;
|
|
2204
|
-
--shadow-spread: 0px;
|
|
2205
|
-
--shadow-opacity: 0.15;
|
|
2206
|
-
--shadow-color: hsl(0 0% 20% / 0.1);
|
|
2207
|
-
--shadow-2xs: 0px 2px 0px 0px hsl(0 0% 20% / 0.07);
|
|
2208
|
-
--shadow-xs: 0px 2px 0px 0px hsl(0 0% 20% / 0.07);
|
|
2209
|
-
--shadow-sm:
|
|
2210
|
-
0px 2px 0px 0px hsl(0 0% 20% / 0.15), 0px 1px 2px -1px hsl(0 0% 20% / 0.15);
|
|
2211
|
-
--shadow:
|
|
2212
|
-
0px 2px 0px 0px hsl(0 0% 20% / 0.15), 0px 1px 2px -1px hsl(0 0% 20% / 0.15);
|
|
2213
|
-
--shadow-md:
|
|
2214
|
-
0px 2px 0px 0px hsl(0 0% 20% / 0.15), 0px 2px 4px -1px hsl(0 0% 20% / 0.15);
|
|
2215
|
-
--shadow-lg:
|
|
2216
|
-
0px 2px 0px 0px hsl(0 0% 20% / 0.15), 0px 4px 6px -1px hsl(0 0% 20% / 0.15);
|
|
2217
|
-
--shadow-xl:
|
|
2218
|
-
0px 2px 0px 0px hsl(0 0% 20% / 0.15), 0px 8px 10px -1px hsl(0 0% 20% / 0.15);
|
|
2219
|
-
--shadow-2xl: 0px 2px 0px 0px hsl(0 0% 20% / 0.38);
|
|
2220
|
-
--ansi-0: #858585;
|
|
2221
|
-
--ansi-1: #d85e5e;
|
|
2222
|
-
--ansi-2: #0dbc79;
|
|
2223
|
-
--ansi-3: #e5e510;
|
|
2224
|
-
--ansi-4: #3c88dc;
|
|
2225
|
-
--ansi-5: #c85ac8;
|
|
2226
|
-
--ansi-6: #11a8cd;
|
|
2227
|
-
--ansi-7: #e5e5e5;
|
|
2228
|
-
--ansi-8: #9a9a9a;
|
|
2229
|
-
--ansi-9: #ff6f6f;
|
|
2230
|
-
--ansi-10: #23d18b;
|
|
2231
|
-
--ansi-11: #f5f543;
|
|
2232
|
-
--ansi-12: #5aaaf2;
|
|
2233
|
-
--ansi-13: #d670d6;
|
|
2234
|
-
--ansi-14: #29b8db;
|
|
2235
|
-
--ansi-15: #ffffff;
|
|
2236
|
-
--ansi-bg-fg-0: #000000;
|
|
2237
|
-
--ansi-bg-fg-1: #000000;
|
|
2238
|
-
--ansi-bg-fg-2: #000000;
|
|
2239
|
-
--ansi-bg-fg-3: #000000;
|
|
2240
|
-
--ansi-bg-fg-4: #000000;
|
|
2241
|
-
--ansi-bg-fg-5: #000000;
|
|
2242
|
-
--ansi-bg-fg-6: #000000;
|
|
2243
|
-
--ansi-bg-fg-7: #000000;
|
|
2244
|
-
--ansi-bg-fg-8: #000000;
|
|
2245
|
-
--ansi-bg-fg-9: #000000;
|
|
2246
|
-
--ansi-bg-fg-10: #000000;
|
|
2247
|
-
--ansi-bg-fg-11: #000000;
|
|
2248
|
-
--ansi-bg-fg-12: #000000;
|
|
2249
|
-
--ansi-bg-fg-13: #000000;
|
|
2250
|
-
--ansi-bg-fg-14: #000000;
|
|
2251
|
-
--ansi-bg-fg-15: #000000;
|
|
2252
|
-
}
|
|
2253
|
-
}
|
|
2254
|
-
|
|
2255
|
-
html,
|
|
2256
|
-
body {
|
|
2257
|
-
margin: 0;
|
|
2258
|
-
min-height: 100%;
|
|
2259
|
-
background: var(--background);
|
|
2260
|
-
color: var(--foreground);
|
|
2261
|
-
font-family: var(--font-sans);
|
|
2262
|
-
font-size: var(--text-base);
|
|
2263
|
-
line-height: var(--text-base--line-height);
|
|
2264
|
-
}
|
|
2265
|
-
|
|
2266
|
-
body {
|
|
2267
|
-
padding: 1rem;
|
|
2268
|
-
}
|
|
2269
|
-
|
|
2270
|
-
.card {
|
|
2271
|
-
background: var(--card);
|
|
2272
|
-
color: var(--card-foreground);
|
|
2273
|
-
border: 1px solid var(--border);
|
|
2274
|
-
border-radius: var(--radius);
|
|
2275
|
-
box-shadow: var(--shadow-sm);
|
|
2276
|
-
}
|
|
2277
|
-
</style>
|
|
2278
|
-
\`\`\`
|
|
2279
|
-
|
|
2280
|
-
Keep the design dense and minimal so it feels native to bb: small text,
|
|
2281
|
-
hairline borders, subtle shadows, and semantic color only for status pills such
|
|
2282
|
-
as success, attention, or destructive. Use the same shapes as the app: cards on
|
|
2283
|
-
\`--card\`, \`1px\` borders using \`--border\`, and \`--radius\` with \`--shadow-sm\`.`,fileName:`bb-guide-styling.md`,kind:`instruction`,title:`bb Guide - Styling`,summary:`Styling reference for STATUS.html surfaces rendered inside bb.`,intent:`Give agents the tokens and starter CSS needed to make STATUS.html match the bb UI.`,editingNotes:`Keep this as the canonical styling reference for STATUS.html. Manager prompts should point here instead of inlining tokens.`,variables:{}},{id:`bbGuideThreads`,body:`Thread commands
|
|
2284
|
-
|
|
2285
|
-
Every command supports --json for machine-readable output.
|
|
2286
|
-
|
|
2287
|
-
Spawning:
|
|
2288
|
-
|
|
2289
|
-
bb thread spawn --prompt "..." [options]
|
|
2290
|
-
|
|
2291
|
-
--prompt <prompt> Initial prompt (required)
|
|
2292
|
-
--title <title> Thread title
|
|
2293
|
-
--project <id> Project (defaults to BB_PROJECT_ID)
|
|
2294
|
-
--parent-thread <id> Parent thread (defaults to BB_THREAD_ID)
|
|
2295
|
-
--provider <id> Provider override
|
|
2296
|
-
--model <model> Model override
|
|
2297
|
-
--reasoning-level <level> Reasoning level: low, medium, high, xhigh, max (provider-dependent)
|
|
2298
|
-
--environment <id-or-path> Attach to an existing environment (UUID or workspace path)
|
|
2299
|
-
--new-environment <kind> Create a new environment (worktree)
|
|
2300
|
-
--service-tier <tier> Service tier: fast, default
|
|
2301
|
-
--permission-mode <mode> Permission mode: full, workspace-write, or readonly
|
|
2302
|
-
--host <id> Host ID (defaults to local host)
|
|
2303
|
-
--no-context-parent-thread Do not default parent thread to BB_THREAD_ID
|
|
2304
|
-
|
|
2305
|
-
When --provider and --model are omitted, the project's remembered defaults apply.
|
|
2306
|
-
When --parent-thread is omitted inside a thread, BB_THREAD_ID is used automatically.
|
|
2307
|
-
|
|
2308
|
-
Listing:
|
|
2309
|
-
|
|
2310
|
-
bb thread list List threads
|
|
2311
|
-
--project <id> Filter by project (defaults to BB_PROJECT_ID)
|
|
2312
|
-
--parent-thread <id> Filter by parent/manager
|
|
2313
|
-
--archived Show only archived threads
|
|
2314
|
-
|
|
2315
|
-
Inspecting:
|
|
2316
|
-
|
|
2317
|
-
bb thread show [id] Show thread details (defaults to BB_THREAD_ID)
|
|
2318
|
-
--self Target current thread
|
|
2319
|
-
--work-status Include git working-tree status
|
|
2320
|
-
--git-diff Include git diff
|
|
2321
|
-
--diff-target <type> Diff scope: uncommitted, branch_committed, all, commit
|
|
2322
|
-
--diff-sha <sha> Commit SHA (for --diff-target commit)
|
|
2323
|
-
--diff-merge-base <branch> Override merge-base branch for diff
|
|
2324
|
-
--merge-base-branches List available merge-base branches
|
|
2325
|
-
|
|
2326
|
-
bb thread log [id] Show thread event log
|
|
2327
|
-
--self Target current thread
|
|
2328
|
-
--format <format> Output format: json, minimal, verbose
|
|
2329
|
-
--limit <count> Limit entries
|
|
2330
|
-
--after-seq <seq> Paginate after sequence number
|
|
2331
|
-
|
|
2332
|
-
bb thread output <id> Get the final output of a thread
|
|
2333
|
-
|
|
2334
|
-
bb thread wait [id] Wait for a thread status or event
|
|
2335
|
-
--status <status> Wait for this status
|
|
2336
|
-
--event <type> Wait for this event type
|
|
2337
|
-
--timeout <seconds> Timeout
|
|
2338
|
-
--poll-interval <ms> Polling interval in milliseconds
|
|
2339
|
-
|
|
2340
|
-
Messaging:
|
|
2341
|
-
|
|
2342
|
-
bb thread tell <id> <message> Send a follow-up message
|
|
2343
|
-
--mode <mode> Message mode (e.g., steer)
|
|
2344
|
-
--model <model> Model override for this turn
|
|
2345
|
-
--reasoning-level <level> Reasoning level override
|
|
2346
|
-
|
|
2347
|
-
bb thread stop [id] Stop an active thread
|
|
2348
|
-
--self Stop current thread
|
|
2349
|
-
|
|
2350
|
-
Ownership:
|
|
2351
|
-
|
|
2352
|
-
bb thread update [id] Update thread metadata
|
|
2353
|
-
--self Target current thread
|
|
2354
|
-
--title <title> Set title
|
|
2355
|
-
--parent-thread <id> Assign to a parent/manager
|
|
2356
|
-
--clear-parent-thread Remove parent assignment
|
|
2357
|
-
|
|
2358
|
-
Lifecycle:
|
|
2359
|
-
|
|
2360
|
-
bb thread archive [id] Archive a thread
|
|
2361
|
-
--self Archive current thread
|
|
2362
|
-
|
|
2363
|
-
bb thread unarchive [id] Unarchive a thread
|
|
2364
|
-
--self Unarchive current thread
|
|
2365
|
-
|
|
2366
|
-
bb thread delete <id> Delete permanently
|
|
2367
|
-
--yes Skip confirmation
|
|
2368
|
-
|
|
2369
|
-
Read-only commands infer the thread from BB_THREAD_ID.
|
|
2370
|
-
Mutating commands require an explicit ID or --self.`,fileName:`bb-guide-threads.md`,kind:`instruction`,title:`bb Guide — Threads`,summary:`Command reference for thread spawning, inspecting, messaging, and lifecycle.`,intent:`Provide complete thread command documentation for agents.`,editingNotes:`Keep flags accurate against the CLI implementation. Run the json-flag-enforcement and command-output tests after changes.`,variables:{}},{id:`generateCommitMessage`,body:`Write a concise git commit message for {{diffDescription}}.
|
|
2371
|
-
Call the \`result\` tool with your answer.
|
|
2372
|
-
Rules:
|
|
2373
|
-
- Use conventional commit style (feat|fix|refactor|test|docs|chore|perf|build|ci|style).
|
|
2374
|
-
- Prefer specific types like feat/fix/refactor/test/docs/perf over chore.
|
|
2375
|
-
- Use chore only for housekeeping (deps, tooling, CI, formatting, repo maintenance).
|
|
2376
|
-
- Use imperative mood, max 72 characters.
|
|
2377
|
-
- Single line only, no body.
|
|
2378
|
-
|
|
2379
|
-
Shortstat:
|
|
2380
|
-
{{shortstat}}
|
|
2381
|
-
|
|
2382
|
-
Files (name-status):
|
|
2383
|
-
{{files}}
|
|
2384
|
-
|
|
2385
|
-
Patch excerpt:
|
|
2386
|
-
{{patch}}`,fileName:`generate-commit-message.md`,kind:`prompt`,title:`Commit Message Generator`,summary:`Prompt for generating one conventional commit line from a git diff snapshot.`,intent:`Produce a single concise conventional commit subject and nothing else.`,editingNotes:"Callers use tool-call structured output; the model calls a `result` tool with the schema.",variables:{diffDescription:`Human-readable description of the diff snapshot being summarized.`,shortstat:`Git shortstat summary for the diff.`,files:`Git name-status output for changed files.`,patch:`Trimmed patch excerpt for extra context.`}},{id:`generateThreadMetadata`,body:`You create concise titles for coding tasks.
|
|
2387
|
-
Call the \`result\` tool with:
|
|
2388
|
-
- title: short, clear, 4-5 words maximum, Title Case
|
|
2389
|
-
|
|
2390
|
-
Task:
|
|
2391
|
-
{{cleanedPrompt}}`,fileName:`generate-thread-metadata.md`,kind:`prompt`,title:`Thread Metadata Generator`,summary:`Prompt for deriving short thread metadata from the user's task prompt.`,intent:`Generate stable, operator-friendly metadata for threads without adding explanatory prose.`,editingNotes:"Callers use tool-call structured output; the model calls a `result` tool with the schema.",variables:{cleanedPrompt:`User prompt text with noisy tokens removed and length-clamped.`}},{id:`managerAgentInstructions`,body:'You are a manager in a project inside bb, a futuristic IDE where agents collaborate to complete tasks and you (the manager) have full control over the environment. You should be helpful, friendly, and proactive.\n\nYour job is to coordinate work across child threads, keep the user informed, and keep the system moving. Delegate substantive work by default. Use the manager thread for lightweight coordination, quick scoping, routing decisions, and final review.\n\nThe user will most likely be doing coding work. You should keep them updated on the changes, but not overload them with too much information. You are a middle manager reporting updates to your supervisor (the user) and delegating work to your team (child threads).\n\n## The BB System\n\nbb is the IDE that you live in. It is a UI and runtime for agents and you will primarily interact with it through the `bb` CLI.\n\n`bb` has four core primitives:\n\n- A **host** is a machine. Hosts run environments. Use `bb host list` to see available hosts.\n- An **environment** is a workspace on a host: the project checkout or an isolated git worktree.\n- A **thread** is a single agent conversation attached to an environment. Threads are the fundamental unit of work.\n- A **project** maps to a repository. All threads and environments belong to a project.\n\nThese connect in a chain: a project has hosts, hosts have environments, and environments have threads. Multiple threads can share one environment (useful for multi-thread collaboration like code-then-review). Each thread is either **standard** (does the work) or **manager** (coordinates the work). You are a manager.\n\nThe default operating model is to spawn worker threads on the same host as you, each in its own isolated worktree. This gives file-level isolation between workers and lets you directly access their worktree paths for inspection. When the user has a preference for a different host, follow that.\n\nThreads can have a parent-child relationship. A parent thread manages the child. When a child thread completes, bb notifies the parent. Threads without a parent are managed directly by the user.\n\nAs a manager, you use the `bb` CLI to spawn worker threads, inspect their progress, and manage them directly. Run `bb guide` for the system overview and `bb guide <chapter>` for detailed command reference.\n\n## Storage\n\nYou have access to durable storage. Think of this like a shared drive where you can keep notes, files, and artifacts. Use it to collaborate with your user or to write down information you want to remember for later. Use this as the place to keep plans, todos, and other work artifacts you want to share with the user.\n\nA few **special** well known files in your storage:\n\n- **`PREFERENCES.md`** — durable user preferences and collaboration norms. Create it as you learn about the user, and keep it current.\n- **`STATUS.md`/`STATUS.html`** — a concise, current view of your work. As a manager you juggle many tasks; keep this doc up to date so the user can catch up on your status at a glance. If you want a richer status surface, write to `STATUS.html` instead — the UI renders it in an unsandboxed iframe, so you can include external resources (Tailwind CDN, fonts, images, stylesheets). One or the other, not both.\n- **`ASYNC.md`** — scheduled nudges. Use this for reminders, recurring check-ins, and other work that should wake you up later. Run `bb guide async` for syntax, constraints, and examples.\n\nUnless otherwise specified, make `STATUS.html` styled like bb and use Tailwind. For `STATUS.html` styling — the bb design tokens, fonts, light/dark variables, Tailwind setup, and a starter `<style>` snippet so your HTML matches the rest of the app — run `bb guide styling`.\n\nThe storage directory is yours to organize. Write down anything your future self or the user might find useful. Use `notes/`, `plans/`, `research/`, and `scratch/` as default folders when they fit. When an artifact does not belong in the repository, put it in thread storage.\n\n## How to communicate\n\n**IMPORTANT**: A user will not see a message you do not send through the user-message tool.\n\nAll user-facing output goes through the user-message tool. Call the exact tool id exposed in your tool list: `mcp__bb-bridge__message_user` when present, otherwise `message_user`. Plain assistant text is not visible to users — they only see their own messages and what you publish through that tool. Worker messages, orchestration notes, and internal lifecycle messages are not directly visible to the user.\n\nA typical update cadence is: a short kickoff when work starts, a completion update when it finishes, and extra updates only for blockers or meaningful scope changes. Keep updates concise, factual, and ownership-clear.\n\nWhen you need user input, approval, or help clearing a blocker, ask clearly through the same exact user-message tool.\n\n## System messages\n\nMessages prefixed with `[bb system]` are internal lifecycle signals, not user requests. The important ones:\n\n- **Thread complete / failed / interrupted** — review the thread\'s result or error and decide whether to update the user, retry, or delegate a follow-up.\n- **Ownership assigned** — a thread is now yours to manage. Inspect it and decide how to proceed.\n- **Ownership removed** — stop treating that thread as active managed work.\n\n### File links and deliverables\n\nWhen sharing a file or deliverable, use a Markdown link whose target is the full absolute path. Example: `[Investigation report](/Users/sawyerhood/.bb/thread-storage/thr_abc123/reports/investigation.md)`.\n\nUse absolute paths that start with `/`, not relative paths. Prefer linking the specific Markdown file you created or updated so the user can open it directly.\n\n## How to work\n\n### Delegation is the default\n\nAny substantive task — coding, file edits, debugging, investigations, multi-step analysis — goes to a managed child thread. The manager thread handles only lightweight coordination: quick reads to scope work, status checks, and deciding what to delegate next.\n\nDelegation means creating a BB child thread with `bb thread spawn`. If a spawn fails, tell the user and retry — do not fall back to doing the work in the manager thread. Do not make substantive repo edits, run repo-mutating commands, or use the manager thread as a worker for coding tasks.\n\nWhen you delegate, give the thread a clear prompt: objective, constraints, expected deliverable, and how to validate the result. Prefer one clear owner per task. Ask workers to report outcome, changed files or created artifacts, validation performed, and any blockers.\n\nAfter delegating, let the worker execute. Send additional worker instructions only when requirements changed, the worker asked a question, or a blocker/error must be handled. Then wait for the system to notify you when the thread completes — do not loop on `bb thread show`, `bb thread log`, or `bb thread list` to detect completion.\n\nDo not use shell sleeps, `tail` loops, repeated log reads, repeated status reads, or transcript scraping to watch worker progress. Inspect a child thread when you need to make a routing decision, review completed work, or investigate a failure.\n\nContext variables `BB_PROJECT_ID` and `BB_THREAD_ID` are set automatically in your environment, so `--project` and `--parent-thread` default to the right values when you run `bb thread spawn` from the manager thread. Fresh managed child threads also default to a managed worktree and `workspace-write` permission mode when the selected provider supports it, so you usually do not need to pass those flags explicitly.\n\nEach worker thread\'s changes usually live in its own worktree. Keep same-environment reuse explicit with `--environment <environment-id>` when you want an implementation thread and a review thread to share files. Review worker changes in the worker environment — do not reapply edits into the manager checkout unless the user explicitly asked for that.\n\n### Direct manager work\n\nDirect manager execution is for trivial, low-latency work where delegation overhead is clearly higher than doing the work directly, or when immediate user unblock requires a small inspection. Keep direct execution minimal and return to delegation-first behavior afterward unless the user explicitly asks you to stay in direct execution mode.\n\n### Common patterns\n\n**Simple delegation**: Scope the work with a quick inspection. If you are unsure which provider or model to use, run `bb provider list` and `bb provider models <provider-id>`. Spawn a thread with `bb thread spawn --title "..." --prompt "..."`. Send the user a kickoff update. When the completion notification arrives, review with `bb thread show <id> --git-diff` and `bb thread output <id>`, then update the user.\n\n**Pipeline**: When a follow-on thread (like a reviewer) needs to see the same files, get the environment ID from `bb thread show <original-id> --json` and spawn into it with `--environment <environment-id>`. That same-environment reuse is an explicit override; fresh managed children otherwise start in a separate managed worktree. After the review thread completes, triage its findings and send specific fix instructions back to the original thread via `bb thread tell`.\n\n**Parallel work**: When the user gives you several independent tasks, spawn a thread for each. Report on each as it completes rather than waiting for all to finish.\n\n**Taking over a thread**: `bb thread update <id> --parent-thread <your-id>`. Inspect its state with `bb thread show` and `bb thread log`, understand its goal, and manage it from there.\n\n**Handing off a thread**: If a user asks to takeover a thread: `bb thread update <id> --clear-parent-thread`.\n\n**Worker errors**: Inspect with `bb thread show <id> --json` and `bb thread log <id>`. Handle transient issues autonomously — retry or clarify via `bb thread tell`. Escalate when the error needs information only the user has or is significant enough they should know about.\n\n**Interrupted or stopped workers**: Inspect the thread state before acting. If CLI output, logs, or lifecycle events indicate the user stopped it manually, treat that as intentional. Summarize the stopped state if useful, but do not resume, restart, retry, replace, or continue the work unless the user explicitly asks.\n\n**Stopping a thread**: If a worker is stuck or no longer needed, stop it with `bb thread stop <id>`.\n\n**Plan decomposition**: Identify independent work units, spawn a thread per unit. Workers run in separate worktrees so they do not conflict during execution, but merging multiple worktrees back can still produce conflicts — coordinate if needed.\n\n### Thread lifecycle\n\nKeep threads around when follow-up work is likely. Archive threads once they are no longer needed with `bb thread archive <id>`. Do not archive threads that still hold active work or environments with uncommitted changes the user may need.\n\n### Scheduled nudges\n\nUse `ASYNC.md` in your thread storage for scheduled reminders, recurring check-ins, and wakeups. Run `bb guide async` for the file syntax, constraints, and examples.\n\nWhen a scheduled nudge arrives, read the matching section in `ASYNC.md` and decide whether there is real work to do. Only message the user when the nudge produced something useful. Remove schedules that are no longer needed.\n\n### Cross-manager coordination\n\nIf you need context from another manager, use `bb thread tell <manager-id> "..."`. Use `bb thread list --parent-thread <manager-id>` to see what another manager is working on. This is rare.\n\n---\n\nRuntime context:\n\n- Manager thread ID: `{{managerThreadId}}`\n- Host: `{{hostId}}`\n- Project: `{{projectName}}` (`{{projectId}}`)\n- Project root: `{{projectRootPath}}`\n- Thread storage: `{{threadStoragePath}}`\n- Local timezone: `{{localTimezone}}`\n\n`PREFERENCES.md` contents:\n\n```md\n{{managerPreferencesContent}}\n```',fileName:`manager-agent-instructions.md`,kind:`instruction`,title:`Manager Agent Instructions`,summary:`Delegation-first operating instructions for a project manager agent.`,intent:`Ensure the manager stays user-facing, delegates substantive work, and uses managed threads as the default execution path.`,editingNotes:`Organized into system, communication, storage, and work guidance. First-turn startup behavior belongs in system-message-manager-welcome.md.`,variables:{localTimezone:`IANA timezone to use for local reminder-style scheduling when the user does not specify a timezone.`,threadStoragePath:`Absolute path to the manager thread's durable storage directory.`,managerPreferencesContent:`Current contents of PREFERENCES.md, or a marker when it does not exist.`,managerThreadId:`The manager's own thread ID.`,projectName:`The project name.`,projectId:`The project ID.`,projectRootPath:`The project root path on disk.`,hostId:`The host ID where this manager's environment runs.`}},{id:`standardAgentInstructions`,body:"You are a coding agent working on a project thread inside bb, an agent orchestration tool. If you need to message another agent or orchestrate work across other agents (rare), use the `bb` cli.",fileName:`standard-agent-instructions.md`,kind:`instruction`,title:`Standard Agent Base Instructions`,summary:`Baseline system prompt for provider-backed coding threads.`,intent:`Keep the agent focused on following the task carefully and producing working code.`,editingNotes:`Preserve the concise coding-agent framing.`,variables:{}},{id:`systemMessageManagedThreadComplete`,body:`[bb system]
|
|
2392
|
-
|
|
2393
|
-
Managed thread complete: {{threadId}}{{titleSuffix}}
|
|
2394
|
-
Review that thread's result and decide whether to update the user or delegate a follow-up.
|
|
2395
|
-
Fresh managed child work usually lives in that thread's own worktree unless the manager explicitly reused an environment; do not reapply its edits into the manager checkout unless the user explicitly asked for that.`,fileName:`system-message-managed-thread-complete.md`,kind:`prompt`,title:`Managed Thread Complete`,summary:`Notifies a manager that one of its worker threads has finished.`,intent:`Prompt the manager to review the result and decide on next steps.`,editingNotes:`The second and third lines are behavioral guidance for the manager. Keep worktree caveat to avoid accidental edit duplication.`,variables:{threadId:`The completed worker thread's ID.`,titleSuffix:`Formatted title suffix like ' (Fix login bug)', or empty string if untitled.`}},{id:`systemMessageManagedThreadFailed`,body:`[bb system]
|
|
2396
|
-
|
|
2397
|
-
Managed thread failed: {{threadId}}{{titleSuffix}}
|
|
2398
|
-
Review that thread's error and decide whether to retry, clarify the task, or update the user.
|
|
2399
|
-
Inspect the managed thread directly before taking action; do not reapply its edits into the manager checkout unless the user explicitly asked for that.`,fileName:`system-message-managed-thread-failed.md`,kind:`prompt`,title:`Managed Thread Failed`,summary:`Notifies a manager that one of its worker threads failed.`,intent:`Prompt the manager to inspect the failure and decide on the next step.`,editingNotes:`Keep the guidance focused on investigation and recovery, not blind retrying.`,variables:{threadId:`The failed worker thread's ID.`,titleSuffix:`Formatted title suffix like ' (Fix login bug)', or empty string if untitled.`}},{id:`systemMessageManagedThreadInterrupted`,body:`[bb system]
|
|
2400
|
-
|
|
2401
|
-
Managed thread interrupted: {{threadId}}{{titleSuffix}}
|
|
2402
|
-
Inspect the managed thread directly before taking action. If it was stopped manually by the user, treat that as intentional; update the user if useful, but do not resume, restart, retry, replace, or continue the work unless the user explicitly asks.
|
|
2403
|
-
Otherwise decide whether to resume it, redirect it, or update the user.
|
|
2404
|
-
Do not reapply its edits into the manager checkout unless the user explicitly asked for that.`,fileName:`system-message-managed-thread-interrupted.md`,kind:`prompt`,title:`Managed Thread Interrupted`,summary:`Notifies a manager that one of its worker threads was interrupted.`,intent:`Prompt the manager to inspect the thread and decide whether to resume or redirect the work.`,editingNotes:`Preserve the "inspect first" guidance so managers do not guess why the thread stopped.`,variables:{threadId:`The interrupted worker thread's ID.`,titleSuffix:`Formatted title suffix like ' (Fix login bug)', or empty string if untitled.`}},{id:`systemMessageManagerWelcome`,body:`[bb system]
|
|
2405
|
-
|
|
2406
|
-
Welcome. You just came online inside bb. You are a manager helping your user get things done.
|
|
2407
|
-
|
|
2408
|
-
First, inspect \`PREFERENCES.md\` in your thread storage.
|
|
2409
|
-
|
|
2410
|
-
If it contains real saved preferences, treat them as the user's starting
|
|
2411
|
-
preferences. Briefly confirm you have them, ask only for useful refinements, and skip the full meet-and-greet.
|
|
2412
|
-
|
|
2413
|
-
If \`PREFERENCES.md\` does not exist or still contains starter/no-preferences
|
|
2414
|
-
content, do the first-boot conversation. Do not interrogate. Do not sound like a
|
|
2415
|
-
form. Just talk.
|
|
2416
|
-
|
|
2417
|
-
Use the exact user-message tool available to you:
|
|
2418
|
-
\`mcp__bb-bridge__message_user\` when present, otherwise \`message_user\`. You need
|
|
2419
|
-
to call this tool to send messages to the user.
|
|
2420
|
-
|
|
2421
|
-
Your first user-facing message must anchor two things up front: **scope** (what
|
|
2422
|
-
you should be working on) and **landing mode** (how worker output reaches the
|
|
2423
|
-
codebase). Ask both — either in the same message, or in a tight follow-up you
|
|
2424
|
-
explicitly promise.
|
|
2425
|
-
|
|
2426
|
-
For scope, surface these three common shapes (verbatim or paraphrased) and make
|
|
2427
|
-
clear the user can name something else entirely:
|
|
2428
|
-
|
|
2429
|
-
- Manage an individual feature or workstream.
|
|
2430
|
-
- Manage all coding agents across this repo.
|
|
2431
|
-
- Manage a specific process (code review, async triage, releases, ...).
|
|
2432
|
-
|
|
2433
|
-
For landing mode, ask whether the user wants a PR opened per worker or worker
|
|
2434
|
-
branches merged directly into a local branch. Note that the choice is editable
|
|
2435
|
-
later. Record the answer in \`PREFERENCES.md\` under the existing
|
|
2436
|
-
**Landing changes** bullet — it already documents the two modes
|
|
2437
|
-
(\`Open PRs\` and \`No PRs — local merge, push on request\`).
|
|
2438
|
-
|
|
2439
|
-
Start with something in this spirit:
|
|
2440
|
-
|
|
2441
|
-
> Hey. I just came online as your bb manager. Two questions to start.
|
|
2442
|
-
>
|
|
2443
|
-
> What's the scope? Common shapes:
|
|
2444
|
-
> - a feature or workstream you want me to drive
|
|
2445
|
-
> - all the coding-agent work across this repo
|
|
2446
|
-
> - a specific process (review, triage, releases)
|
|
2447
|
-
>
|
|
2448
|
-
> Or something else — tell me what fits.
|
|
2449
|
-
>
|
|
2450
|
-
> And when workers finish: open a PR per worker, or merge into a local branch? Easy to change later.
|
|
2451
|
-
|
|
2452
|
-
After scope and landing mode are settled, figure out together:
|
|
2453
|
-
|
|
2454
|
-
1. What the user wants to be called.
|
|
2455
|
-
2. How they want you to refer to yourself, if they care.
|
|
2456
|
-
3. The working vibe: terse, warm, formal, weird, direct, playful, or something else.
|
|
2457
|
-
4. Update cadence, boundaries, and anything they do not want you to do.
|
|
2458
|
-
5. Any stable workflow preferences worth remembering.
|
|
2459
|
-
|
|
2460
|
-
Create, replace, or update \`PREFERENCES.md\` with what you learn. If the user gives you a
|
|
2461
|
-
name, vibe, or other identity details for yourself, record those too.
|
|
2462
|
-
|
|
2463
|
-
\`STATUS.md\`, \`STATUS.html\`, and \`ASYNC.md\` may also already exist from user
|
|
2464
|
-
templates. Preserve any seeded structure and keep the files current as you work.
|
|
2465
|
-
|
|
2466
|
-
Depending on user preferences you might want to update the STATUS.html file to match their landing mode.
|
|
2467
|
-
|
|
2468
|
-
If there is no \`PREFERENCES.md\` fill out this template with what you learn and save it:
|
|
2469
|
-
|
|
2470
|
-
\`\`\`
|
|
2471
|
-
# User Preferences
|
|
2472
|
-
|
|
2473
|
-
This file is the manager's durable memory of how the user wants to be worked with. Edit it as you learn — keep it current.
|
|
2474
|
-
|
|
2475
|
-
## Identity
|
|
2476
|
-
|
|
2477
|
-
- Preferred name: _(fill this out)_
|
|
2478
|
-
|
|
2479
|
-
## Workflow
|
|
2480
|
-
|
|
2481
|
-
- Base branch: main (default) or something else? _(fill this out)_
|
|
2482
|
-
- **Delegator workflow**: never do substantive work in the manager thread. Always spawn a child thread for coding, edits, investigations, or multi-step analysis.
|
|
2483
|
-
- **Fresh base branch before every spawn**: before every \`bb thread spawn\`, ensure the local base branch (default \`main\`) is current with origin so workers start from the latest base.
|
|
2484
|
-
|
|
2485
|
-
## Delivery
|
|
2486
|
-
- Ask the user to choose how they want worker output to be delivered:
|
|
2487
|
-
- Open PRs (default)
|
|
2488
|
-
**or**
|
|
2489
|
-
- No PRs — Ask the user for confirmation before pushing/merging worker branches into a local branch.
|
|
2490
|
-
**or**
|
|
2491
|
-
- Merge into a local branch (like a staging area) automatically without PRs, and push to origin on user go-ahead.
|
|
2492
|
-
|
|
2493
|
-
## Keeping the user updated
|
|
2494
|
-
Adjust \`STATUS.html\` to match the chosen mode (see next bullet).
|
|
2495
|
-
- **STATUS.html mode**: if the user opens PRs, \`STATUS.html\` tracks open PRs in its primary section. If the user does NOT use PRs, replace the \`Open PRs\` section with two sections instead: **In progress** (branches actively being worked on by workers) and **Ready for review** (branches that are validated and waiting for the user's go-ahead to push or merge). Snippet patterns for both modes live in the HTML comment block at the bottom of \`STATUS.html\` — copy/paste as needed.
|
|
2496
|
-
- **STATUS.html refresh**: keep \`STATUS.html\` current with the state of the world
|
|
2497
|
-
- after any state-affecting action (worker spawn, branch ready, PR opened, merge, close, push).
|
|
2498
|
-
- **after every child thread completion notification** (on any \`[bb system] Thread complete/failed/interrupted\`), even if the thread didn't obviously touch the tracked state — reconcile the relevant section.
|
|
2499
|
-
- **STATUS.html styling**: run \`bb guide styling\` for the bb design tokens, fonts, and a starter \`<style>\` snippet so the iframe-rendered HTML matches the rest of the app.
|
|
2500
|
-
- Also keep running tasks and any user action items in STATUS.html
|
|
2501
|
-
|
|
2502
|
-
## Open questions to resolve when natural
|
|
2503
|
-
|
|
2504
|
-
- Preferred name / how to address the user
|
|
2505
|
-
- Worker defaults (provider / reasoning level / permission mode / preferred model) — ask the user when it comes up; do not assume a default.
|
|
2506
|
-
- Anything else the user wants surfaced in \`STATUS.html\` (extra sections, custom info, integrations) — ask once when natural and update the template accordingly.
|
|
2507
|
-
- Update verbosity preference (terse vs detailed)
|
|
2508
|
-
- Any specific area of the codebase that's currently the focus
|
|
2509
|
-
\`\`\`
|
|
2510
|
-
|
|
2511
|
-
When finished you can ask the user if it wants to save these preferences as defaults for future managers. If they say yes save to <dataDir>/manager-templates/default/PREFERENCES.md.`,fileName:`system-message-manager-welcome.md`,kind:`prompt`,title:`Manager Welcome`,summary:`Bootstrap message sent to a newly spawned manager thread.`,intent:`Kick off the manager's first turn with hatch-specific startup instructions.`,editingNotes:`Keep durable manager behavior in manager-agent-instructions.md. Keep first-turn startup behavior here.`,variables:{}},{id:`systemMessageScheduledNudge`,body:`[bb system]
|
|
2512
|
-
|
|
2513
|
-
Scheduled nudge: {{name}}. Check ASYNC.md.`,fileName:`system-message-scheduled-nudge.md`,kind:`prompt`,title:`Scheduled Nudge`,summary:`Wakes up a manager on its declared cron schedule.`,intent:`Prompt the manager to read the matching ASYNC.md section and decide if there's real work to do.`,editingNotes:`Keep the schedule name on the same line so the manager can pattern-match it against ASYNC.md.`,variables:{name:`The schedule name as declared in the manager's ASYNC.md frontmatter.`}},{id:`systemMessageThreadOwnershipAssigned`,body:`[bb system]
|
|
2514
|
-
|
|
2515
|
-
The following thread is now assigned to you for management:
|
|
2516
|
-
{{threadLabel}}
|
|
2517
|
-
Inspect it and decide whether to monitor it, message the user, or send a follow-up.`,fileName:`system-message-thread-ownership-assigned.md`,kind:`prompt`,title:`Thread Ownership Assigned`,summary:`Notifies a manager that a worker thread is now assigned to it.`,intent:`Let the new manager know it owns a thread so it can begin managing it.`,editingNotes:`Keep the thread label on its own line for readability in the agent's context.`,variables:{threadLabel:`Thread identifier and title, e.g. 'thr_abc123: Fix login bug'.`}},{id:`systemMessageThreadOwnershipRemoved`,body:`[bb system]
|
|
2518
|
-
|
|
2519
|
-
The following thread is no longer assigned to you:
|
|
2520
|
-
{{threadLabel}}
|
|
2521
|
-
Stop treating it as one of your active managed threads unless it is assigned back later.`,fileName:`system-message-thread-ownership-removed.md`,kind:`prompt`,title:`Thread Ownership Removed`,summary:`Notifies a manager that a worker thread is no longer assigned to it.`,intent:`Let the previous manager know a thread moved away so it can update its internal tracking.`,editingNotes:`Keep the thread label on its own line for readability in the agent's context.`,variables:{threadLabel:`Thread identifier and title, e.g. 'thr_abc123: Fix login bug'.`}},{id:`threadOperationCommitFailureFollowUp`,body:`Commit in this thread workspace failed. Inspect the workspace, fix the issue blocking the commit, and retry the commit.
|
|
2522
|
-
{{#if errorMessage}}
|
|
2523
|
-
Git reported: {{errorMessage}}.
|
|
2524
|
-
{{/if}}`,fileName:`thread-operation-commit-failure-follow-up.md`,kind:`prompt`,title:`Commit Failure Follow-Up`,summary:`Follow-up prompt for retrying a commit after git rejects the first attempt.`,intent:`Keep the retry focused on diagnosing the blocker and trying again.`,editingNotes:`Do not add generic response-format instructions here; this prompt is meant to be a concise follow-up inside an active thread.`,variables:{errorMessage:`Optional git error surfaced to the agent.`}},{id:`threadOperationSquashMergeCommitFailureFollowUp`,body:`{{#if prepCommitMergeBaseBranch}}
|
|
2525
|
-
Squash merge to {{prepCommitMergeBaseBranch}} could not create the prep commit. Inspect the workspace, fix the issue blocking the commit, create the needed prep commit, and retry the squash merge so the changes land on {{prepCommitMergeBaseBranch}}.
|
|
2526
|
-
{{/if}}
|
|
2527
|
-
{{#if squashCommitMergeBaseBranch}}
|
|
2528
|
-
Squash merge to {{squashCommitMergeBaseBranch}} applied changes but failed while creating the squash commit. Inspect the merge result, fix the issue blocking the commit, and retry the squash merge so the changes land on {{squashCommitMergeBaseBranch}}.
|
|
2529
|
-
{{/if}}
|
|
2530
|
-
{{#if errorMessage}}
|
|
2531
|
-
Git reported: {{errorMessage}}.
|
|
2532
|
-
{{/if}}`,fileName:`thread-operation-squash-merge-commit-failure-follow-up.md`,kind:`prompt`,title:`Squash Merge Commit Failure Follow-Up`,summary:`Follow-up prompt for squash-merge flows that fail while creating a prep commit or the final squash commit.`,intent:`Direct the agent to fix the blocker in-place and retry the squash merge without broadening the task.`,editingNotes:`The failure instruction is computed by the caller so this template can stay small and reusable across failure stages.`,variables:{prepCommitMergeBaseBranch:`Merge base branch name when the prep commit could not be created.`,squashCommitMergeBaseBranch:`Merge base branch name when the final squash commit could not be created.`,errorMessage:`Optional git error surfaced to the agent.`}},{id:`threadOperationSquashMergeConflictFollowUp`,body:`Squash merge into {{mergeBaseBranch}} stopped on conflicts. Rebase this branch onto {{mergeBaseBranch}}, resolve the conflicts, and retry the squash merge so the changes land on {{mergeBaseBranch}}.
|
|
2533
|
-
{{#if conflictFiles}}
|
|
2534
|
-
Conflicted files: {{conflictFiles}}.
|
|
2535
|
-
{{/if}}`,fileName:`thread-operation-squash-merge-conflict-follow-up.md`,kind:`prompt`,title:`Squash Merge Conflict Follow-Up`,summary:`Follow-up prompt for squash merges that stop on conflicts.`,intent:`Tell the agent to rebase onto the merge base, resolve the conflicts, and retry the squash merge.`,editingNotes:`Keep this concise and procedural. Conflict file details are optional context and should stay additive.`,variables:{mergeBaseBranch:`Merge base branch name shown to the agent.`,conflictFiles:`Optional comma-separated file list.`}}];function Xx(e){return Yx.some(t=>t.id===e)}function Zx(){let e=Yx.map(e=>{if(!Xx(e.id))throw Error(`Unknown generated template id: ${e.id}`);return[e.id,{...e,id:e.id,kind:e.kind}]});return Object.fromEntries(e)}var Qx=Zx(),$x=!1;function eS(){if(!$x){for(let e of Object.values(Qx))Jx.default.registerPartial(e.id,e.body);$x=!0}}var tS=new Map;function nS(e){let t=tS.get(e);if(t)return t;let n=Jx.default.compile(Qx[e].body,{noEscape:!0});return tS.set(e,n),n}function rS(e,t){return eS(),nS(e)(t).trim()}function iS(e,t){let n=t?.conflictFiles?.filter(e=>e.trim().length>0)??[];return rS(`threadOperationSquashMergeConflictFollowUp`,{mergeBaseBranch:e.options.mergeBaseBranch.trim(),conflictFiles:n.length>0?n.join(`, `):void 0})}function aS(e,t){let n=e.options.mergeBaseBranch.trim(),r=t.errorMessage?.trim()||void 0;switch(t.stage){case`prep_commit`:return rS(`threadOperationSquashMergeCommitFailureFollowUp`,{prepCommitMergeBaseBranch:n,errorMessage:r});case`squash_commit`:return rS(`threadOperationSquashMergeCommitFailureFollowUp`,{squashCommitMergeBaseBranch:n,errorMessage:r});default:return y(t.stage)}}function oS(e){return rS(`threadOperationCommitFailureFollowUp`,{errorMessage:e?.errorMessage?.trim()||void 0})}var sS=7;function cS(e){if(!(e instanceof n)||typeof e.body!=`object`||e.body===null||!(`details`in e.body))return;let t=I.safeParse(e.body.details);return t.success?t.data:void 0}function lS(e){switch(e.kind){case`commit_failed`:return e.errorMessage;case`squash_merge_conflict`:return e.conflictFiles.length>0?`Conflicts: ${e.conflictFiles.join(`, `)}`:void 0;case`squash_merge_commit_failed`:return e.errorMessage;default:return}}function uS({error:e,mergeBaseBranch:t}){let n=cS(e);if(n)switch(n.kind){case`commit_failed`:return[{type:`text`,text:oS({errorMessage:n.errorMessage})}];case`squash_merge_conflict`:return t?[{type:`text`,text:iS({action:`squash_merge`,options:{mergeBaseBranch:t}},{conflictFiles:n.conflictFiles})}]:void 0;case`squash_merge_commit_failed`:return t?[{type:`text`,text:aS({action:`squash_merge`,options:{mergeBaseBranch:t}},{stage:n.stage,errorMessage:n.errorMessage})}]:void 0;default:return}}function dS({error:e,mergeBaseBranch:t}){let n=cS(e);return{message:(n?lS(n):void 0)??fn({error:e,fallbackMessage:`Failed to start git action.`}),askAgentInput:uS({error:e,mergeBaseBranch:t})}}function fS(e){switch(e){case`commit`:return`Commit created`;case`squash_merge`:return`Squash merge completed`;default:return e}}function pS(e){switch(e){case`commit`:return`Commit failed`;case`squash_merge`:return`Squash merge failed`;default:return e}}function mS({commitSha:e,commitSubject:t}){return`${e.slice(0,sS)} · ${t}`}function hS({response:e,toastId:t}){Qt.success(fS(e.action),{id:t,description:mS({commitSha:e.commitSha,commitSubject:e.commitSubject})})}function gS({action:e,error:t,mergeBaseBranch:n,onAskAgentToFix:r,threadId:i,toastId:a}){let o=dS({error:t,mergeBaseBranch:n}),s=o.askAgentInput,c=pS(e),l=o.message===c?void 0:o.message;Qt.error(c,{id:a,...l?{description:l}:{},...s?{action:{label:`Ask agent to fix`,onClick:()=>r({input:s,threadId:i})}}:{}})}function _S({environment:e,requestEnvironmentAction:t,sendMessage:n,thread:r,workspaceStatus:i}){let a=ot(),o=i?.workingTree,s=i?.mergeBase,c=r?.type!==`manager`,l=r?.archivedAt!=null,u=e?.managed===!1,d=(0,K.useMemo)(()=>{if(!r||!c||!i||l)return[];let t=[],n=o?.hasUncommittedChanges===!0,a=s?.hasCommittedUnmergedChanges===!0;return u?(n&&t.push({target:{kind:`commit`},label:`Commit`}),t):(e?.managed&&(n&&t.push({target:{kind:`commit`},label:`Commit`}),(n||a)&&t.push({target:{kind:n?`commit_and_squash_merge`:`squash_merge`},label:`Squash merge`})),t)},[c,e?.managed,l,u,r,s?.hasCommittedUnmergedChanges,i,o?.hasUncommittedChanges]),f=(0,K.useCallback)(async({input:e,threadId:t})=>{if(n.isPending)return;let r=Qt.loading(`Sending message...`);try{await n.mutateAsync({id:t,input:e,mode:`auto`}),Qt.success(`Message sent to agent`,{id:r})}catch(e){Qt.error(`Failed to message agent`,{id:r,description:fn({error:e,fallbackMessage:`Message was not sent.`})})}},[n]);return{handleAskAgentToFixGitAction:f,handleCommitThread:(0,K.useCallback)(async()=>{let e=r?.environmentId;if(!r||!e)return;let n=r.id,i=Qt.loading(`Creating commit...`);try{let n=await t.mutateAsync({id:e,action:`commit`});if(n.action!==`commit`)throw Error(`Expected commit action response.`);hS({response:n,toastId:i})}catch(e){gS({action:`commit`,error:e,onAskAgentToFix:e=>void f(e),threadId:n,toastId:i})}},[f,t,r]),handleSquashMergeThread:(0,K.useCallback)(async({mergeBaseBranch:e})=>{let n=r?.environmentId;if(!r||!n)return;let i=r.id,a=Qt.loading(`Squash merging...`);try{let r=await t.mutateAsync({id:n,action:`squash_merge`,options:{mergeBaseBranch:e}});if(r.action!==`squash_merge`)throw Error(`Expected squash merge action response.`);hS({response:r,toastId:a})}catch(t){gS({action:`squash_merge`,error:t,onAskAgentToFix:e=>void f(e),mergeBaseBranch:e,threadId:i,toastId:a})}},[f,t,r]),isThreadGitActionPending:t.isPending,threadGitActionDialog:a,threadHeaderGitActions:d}}function vS({markThreadRead:e,thread:t}){let n=(0,K.useRef)(new Set);(0,K.useEffect)(()=>{if(!t||bt(t))return;let r=`${t.id}:${t.latestAttentionAt}`;n.current.has(r)||(n.current.add(r),e.mutate(t.id,{onError:()=>{n.current.delete(r)}}))},[e,t])}function yS({routeThreadId:e,threadId:t,threadType:n,useStandardManagerTimeline:r}){return t===void 0||n===void 0||e!==t?!1:!(n===`manager`&&r)}function bS({lastReadAt:e,latestAttentionAt:t}){return e===void 0||t===void 0?!1:e===null||e<t}function xS(e){return e.lastReadAt===null?{kind:`before-first`}:e.lastReadAt<e.latestAttentionAt?{kind:`after-cutoff`,cutoffAt:e.lastReadAt}:null}function SS({routeThreadId:e,thread:t,useStandardManagerTimeline:n}){let[r,i]=(0,K.useState)(null),a=t?.id,o=t?.lastReadAt,s=t?.latestAttentionAt,c=t?.type;return(0,K.useEffect)(()=>{if(a===void 0||o===void 0||s===void 0||c===void 0||!yS({routeThreadId:e,threadId:a,threadType:c,useStandardManagerTimeline:n})){i(null);return}let t={id:a,lastReadAt:o,latestAttentionAt:s,type:c};i(e=>e?.threadId===a&&e.attentionAt===s?o===null?{attentionAt:s,placement:{kind:`before-first`},threadId:a}:e:{attentionAt:s,placement:xS(t),threadId:a})},[e,a,o,s,c,n]),!yS({routeThreadId:e,threadId:a,threadType:c,useStandardManagerTimeline:n})||r===null||r.threadId!==a||r.attentionAt!==s&&!bS({lastReadAt:o,latestAttentionAt:s})?null:r.placement}function CS({managerTimelineView:e,threadId:t}){return`${t}:${e??`default`}`}function wS({latestRows:e,olderCursor:t,surfaceKey:n}){return{olderCursor:t,rows:[...e],surfaceKey:n}}function TS({left:e,right:t}){return e===null||t===null?e===t:e.anchorSeq===t.anchorSeq&&e.anchorId===t.anchorId}function ES(e,t){let n=new Set(e.map(e=>e.id));for(let r of t)n.has(r.id)||(n.add(r.id),e.push(r))}function DS({loadedRows:e,olderRows:t}){let n=[];return ES(n,t),ES(n,e),n}function OS({latestRows:e,loadedRows:t}){if(t.length===0)return{hasLatestOverlap:!1,rows:[...e]};let n=new Set(e.map(e=>e.id)),r=t.findIndex(e=>n.has(e.id));if(r===-1){let n=[...t];return ES(n,e),{hasLatestOverlap:!1,rows:n}}return{hasLatestOverlap:!0,rows:[...t.slice(0,r),...e]}}function kS({current:e,latestTimeline:t,surfaceKey:n}){if(e.surfaceKey!==n||e.rows.length===0&&e.olderCursor===null)return wS({latestRows:t.rows,olderCursor:t.timelinePage.olderCursor,surfaceKey:n});let r=OS({latestRows:t.rows,loadedRows:e.rows});return{...e,olderCursor:e.olderCursor,rows:r.rows}}function AS({current:e,latestTimeline:t,surfaceKey:n}){if(e.surfaceKey!==n)return wS({latestRows:t.rows,olderCursor:t.timelinePage.olderCursor,surfaceKey:n});let r=OS({latestRows:t.rows,loadedRows:e.rows});return{olderCursor:t.timelinePage.olderCursor,rows:r.rows,surfaceKey:n}}function jS(e){return e instanceof n&&e.status===400&&e.code===`invalid_request`}function MS({managerTimelineView:e,threadId:t}){let n=je(t,{refetchOnMount:`always`,managerTimelineView:e}),r=CS({managerTimelineView:e,threadId:t}),[i,a]=(0,K.useState)(()=>wS({latestRows:[],olderCursor:null,surfaceKey:r})),[o,s]=(0,K.useState)(!1),c=n.data;(0,K.useEffect)(()=>{if(!c){a(e=>e.surfaceKey===r?e:wS({latestRows:[],olderCursor:null,surfaceKey:r}));return}a(e=>kS({current:e,latestTimeline:c,surfaceKey:r}))},[c,r]);let l=n.refetch,u=i.surfaceKey===r?i.olderCursor:null,d=u!==null,f=(0,K.useCallback)(async()=>{if(!(!u||!t||o)){s(!0);try{let n=await re({beforeCursor:u,id:t,managerTimelineView:e});a(e=>e.surfaceKey===r?{olderCursor:TS({left:e.olderCursor,right:u})?n.timelinePage.olderCursor:e.olderCursor,rows:DS({loadedRows:e.rows,olderRows:n.rows}),surfaceKey:r}:e)}catch(e){if(!(e instanceof Error)||!jS(e))throw e;let t=(await l()).data??c;a(e=>e.surfaceKey===r?t?AS({current:e,latestTimeline:t,surfaceKey:r}):{...e,olderCursor:null}:e)}finally{s(!1)}}},[o,c,e,u,l,r,t]);return{activeThinking:c?.activeThinking??null,contextWindowUsage:c?.contextWindowUsage,hasOlderTimelineRows:d,isLoadingOlderTimelineRows:o,loadOlderTimelineRows:f,pendingTodos:c?.pendingTodos??null,timelineError:n.error,timelineLoading:n.isLoading,timelineRows:i.surfaceKey===r&&i.rows.length>0?i.rows:c?.rows??[]}}function NS(e){if(!e.rootPath||!e.canOpenPreferredTarget)return;let t=e.rootPath;return n=>{e.openInPreferredTarget({lineNumber:null,path:ln({path:n,rootPath:t})})}}function PS(e){return e.file.status===`A`||e.file.status===`??`?{kind:`preview`,source:{kind:`working-tree`},statusLabel:null}:e.file.status===`D`?e.section.kind===`committed`?e.section.mergeBaseRef?{kind:`preview`,source:{kind:`merge-base`,ref:e.section.mergeBaseRef},statusLabel:`deleted`}:{kind:`diff`}:{kind:`preview`,source:{kind:`head`},statusLabel:`deleted`}:{kind:`diff`}}function FS(e){return e.threadEnvironmentIsLocal?e.environment?.path??null:null}function IS(e){return!e.canOpenWorkspace||!e.hasWorkspaceOpenTargets?null:FS({environment:e.environment,threadEnvironmentIsLocal:e.threadEnvironmentIsLocal})}var LS=`Thread file links are only available when the thread has an environment.`,RS=`Thread file links must use absolute file paths.`;function zS(e){return ar.some(t=>Ge(t,e)!==null)}function BS(e){if(!e.startsWith(`/`))return null;let t=[];for(let n of e.split(`/`))if(!(n.length===0||n===`.`)){if(n===`..`){t.length>0&&t.pop();continue}t.push(n)}return t.length===0?`/`:`/${t.join(`/`)}`}function VS(e){let t=BS(e.workspaceRootPath);if(!t)return null;let n=BS(e.linkPath);return!n||!HS({candidatePath:n,workspaceRootPath:t})||n===t?null:{path:n,relativePath:t===`/`?n.slice(1):n.slice(t.length+1),workspaceRootPath:t}}function HS(e){return e.workspaceRootPath===`/`?e.candidatePath.startsWith(`/`):e.candidatePath===e.workspaceRootPath||e.candidatePath.startsWith(`${e.workspaceRootPath}/`)}function US(e){if(zS(e.link.path))return{kind:`app-route`};let t=BS(e.link.path);if(!t)return{description:RS,kind:`error`};let n=e.workspaceRootPath===null?null:VS({linkPath:t,workspaceRootPath:e.workspaceRootPath});return n?{kind:`open-workspace-path`,request:{lineNumber:e.link.lineNumber,path:n.path,relativePath:n.relativePath,workspaceRootPath:n.workspaceRootPath}}:e.hostFileLinksAvailable?{kind:`open-host-path`,request:{lineNumber:e.link.lineNumber,path:t}}:{description:LS,kind:`error`}}var WS=200,GS=3;function KS({title:e}){let t=e.trim();if(!t)return null;let n=qS({title:t});return n===null?t.slice(0,WS):YS({path:n.path}).slice(0,WS)}function qS({title:e}){let t=/^[^@\s:]+@[^:\s]+:(.+)$/u.exec(e)?.[1];return!t||!JS({path:t})?null:{path:t}}function JS({path:e}){return e===`~`||e===`.`||e.startsWith(`~/`)||e.startsWith(`/`)||e.startsWith(`./`)}function YS({path:e}){if(e===`/`||e===`~`||e===`.`)return e;let t=e.split(`/`).filter(e=>e.length>0);return t.length<=GS?e:`.../${t.slice(-GS).join(`/`)}`}var XS=100,ZS=30,QS=[],$S=250;function eC(e){return e.status!==`exited`}function tC(e,t){return t&&e.some(e=>e.id===t)?t:e[0]?.id??null}function nC(e){switch(e.status){case`starting`:return`starting`;case`running`:return`running`;case`disconnected`:return`disconnected`;case`exited`:return`exited`}}function rC({canCreateTerminal:e,threadId:t}){let n=ri(t),r=ii(t),i=ai(t),a=Db(t),o=Ob(t),s=kb(t),c=(0,K.useRef)(new Set),l=(0,K.useRef)(new Set),u=(0,K.useRef)(n.isOpen),d=(0,K.useRef)(null),f=(0,K.useRef)(null),[p,m]=(0,K.useState)(!1),h=qi(t,{enabled:n.isOpen}),g=Ji(),_=Xi(),v=Yi(),y=h.data?.sessions??QS,b=(0,K.useMemo)(()=>y.filter(eC),[y]),x=(0,K.useMemo)(()=>tC(b,a),[a,b]),S=b.find(e=>e.id===x)??null;(0,K.useEffect)(()=>{a!==x&&o(x)},[a,x,o]),(0,K.useEffect)(()=>{let e=u.current;if(u.current=n.isOpen,!n.isOpen){m(!1);return}e||m(!0)},[n.isOpen]),(0,K.useEffect)(()=>()=>{f.current!==null&&window.clearTimeout(f.current)},[]);let C=(0,K.useCallback)(()=>{!e||g.isPending||g.mutate({threadId:t,cols:XS,rows:ZS},{onSuccess:e=>{o(e.id)}})},[e,g,o,t]);(0,K.useEffect)(()=>{if(p){if(!n.isOpen||!e||h.error){m(!1);return}if(!(g.isPending||h.isLoading)){if(b.length>0){m(!1);return}m(!1),C()}}},[e,g.isPending,n.isOpen,p,C,h.error,h.isLoading,b.length]),(0,K.useEffect)(()=>{if(!n.isOpen)for(let e of b)e.lastUserInputAt!==null||c.current.has(e.id)||l.current.has(e.id)||(l.current.add(e.id),_.mutate({mode:`if-clean`,threadId:t,terminalId:e.id},{onSuccess:e=>{e.status===`exited`&&(c.current.delete(e.id),s(e.id))},onSettled:()=>{l.current.delete(e.id)}}))},[_,n.isOpen,s,t,b]);let w=(0,K.useCallback)(()=>{C()},[C]),T=(0,K.useCallback)(e=>{o(e),r(e=>({...e,isOpen:!0}))},[o,r]),E=(0,K.useCallback)(e=>{_.mutate({mode:`force`,threadId:t,terminalId:e},{onSuccess:()=>{c.current.delete(e),l.current.delete(e),s(e)}})},[_,s,t]),D=(0,K.useCallback)(()=>{x&&c.current.add(x)},[x]),O=(0,K.useCallback)(e=>{if(!S||S.status!==`running`)return;let n=KS({title:e});if(!n||n===S.title)return;let r={terminalId:S.id,title:n},i=d.current;i!==null&&i.terminalId===r.terminalId&&i.title===r.title||(d.current=r,f.current!==null&&window.clearTimeout(f.current),f.current=window.setTimeout(()=>{f.current=null,v.mutate({threadId:t,terminalId:r.terminalId,title:r.title},{onSettled:()=>{let e=d.current;e!==null&&e.terminalId===r.terminalId&&e.title===r.title&&(d.current=null)}})},$S))},[S,v,t]),k=(0,K.useCallback)(()=>{i(!1)},[i]),A=g.isPending||e&&n.isOpen&&p,j=A?`Starting terminal...`:`No terminals`,M=A?e?`Starting terminal...`:`Terminals unavailable.`:`No terminals`,N=h.isLoading||b.length===0&&A;return{activeSession:S,activeTerminalId:x,canCreateTerminal:e,closingTerminalId:_.isPending&&_.variables?_.variables.terminalId:null,emptyTerminalMessage:j,handleActiveTerminalTitleChange:O,handleActiveTerminalUserInput:D,handleClosePanel:k,handleCloseTerminal:E,handleCreateTerminal:w,handleSelectTerminal:T,hasTerminalQueryError:h.error!==null,isCreateTerminalPending:g.isPending,isPanelOpen:n.isOpen,isTerminalQueryLoading:h.isLoading,showTerminalPlaceholders:N,terminalBodyMessage:M,threadId:t,visibleSessions:b}}function iC({terminalId:e,threadId:t}){return`/ws/threads/${encodeURIComponent(t)}/terminals/${encodeURIComponent(e)}`}function aC(e){let t=iC(e);if(typeof __BB_DEV_WS_URL__==`string`){let e=new URL(__BB_DEV_WS_URL__);return e.pathname=t,e.search=``,e.hash=``,e.toString()}return`${window.location.protocol===`https:`?`wss:`:`ws:`}//${window.location.host}${t}`}var oC=`ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, monospace`;function sC(e,t){let n=getComputedStyle(document.documentElement).getPropertyValue(t).trim();if(n)return e.style.color=n,getComputedStyle(e).color}function cC(){if(typeof document>`u`)return{};let e=document.createElement(`span`);e.style.position=`absolute`,e.style.visibility=`hidden`,e.style.pointerEvents=`none`,document.body.appendChild(e);let t=t=>sC(e,t),n={background:t(`--background`),foreground:t(`--foreground`),cursor:t(`--foreground`),cursorAccent:t(`--background`),selectionBackground:t(`--muted`),black:t(`--ansi-0`),red:t(`--ansi-1`),green:t(`--ansi-2`),yellow:t(`--ansi-3`),blue:t(`--ansi-4`),magenta:t(`--ansi-5`),cyan:t(`--ansi-6`),white:t(`--ansi-7`),brightBlack:t(`--ansi-8`),brightRed:t(`--ansi-9`),brightGreen:t(`--ansi-10`),brightYellow:t(`--ansi-11`),brightBlue:t(`--ansi-12`),brightMagenta:t(`--ansi-13`),brightCyan:t(`--ansi-14`),brightWhite:t(`--ansi-15`)};return e.remove(),n}function lC(e){let t=new TextEncoder().encode(e),n=``;for(let e of t)n+=String.fromCharCode(e);return btoa(n)}function uC(e){let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e+=1)n[e]=t.charCodeAt(e);return new TextDecoder().decode(n)}function dC({socket:e,terminal:t}){e.readyState===WebSocket.OPEN&&e.send(JSON.stringify({type:`resize`,cols:t.cols,rows:t.rows}))}function fC({terminal:e,text:t}){e.write(`\r\n\x1b[2m${t}\x1b[0m\r\n`)}function pC({isReplay:e,replayWriteState:t,terminal:n,text:r}){if(!e){n.write(r);return}t.suppressedWriteCount+=1,n.write(r,()=>{--t.suppressedWriteCount})}function mC({message:e,replayNextSeq:t,replayWriteState:n,setReplayNextSeq:r,terminal:i}){switch(e.type){case`attached`:r(e.nextSeq);return;case`pong`:case`session-updated`:return;case`output`:pC({isReplay:t!==null&&e.chunk.seq<t,replayWriteState:n,terminal:i,text:uC(e.chunk.dataBase64)});return;case`error`:fC({terminal:i,text:`Terminal error: ${e.message}`});return;case`exited`:fC({terminal:i,text:e.session.exitCode===null?`Terminal exited`:`Terminal exited with code ${e.session.exitCode}`});return}}function hC({isPanelOpen:e,onTitleChange:t,onUserInput:n,session:r,threadId:i}){let a=(0,K.useRef)(null),o=(0,K.useRef)(null),s=(0,K.useRef)(t),c=(0,K.useRef)(n),l=(0,K.useRef)(e),u=wt();return l.current=e,s.current=t,c.current=n,(0,K.useEffect)(()=>{let e=a.current;if(!e)return;let t=!1,n=null,u=null,d=null,f=null,p={suppressedWriteCount:0},m=null;async function h(e){let[{Terminal:a},{FitAddon:h},{WebLinksAddon:g}]=await Promise.all([Ue(()=>import(`./xterm-DGJHbKBQ.js`),[]),Ue(()=>import(`./addon-fit-Cm0rqjtv.js`),[]),Ue(()=>import(`./addon-web-links-B8_D6zvC.js`),[])]);if(t)return;u=new a({allowProposedApi:!1,convertEol:!0,cursorBlink:!0,fontFamily:oC,fontSize:12,scrollback:1e4,theme:cC()}),o.current=u,d=new h,u.loadAddon(d),u.loadAddon(new g),u.open(e),d.fit(),l.current&&u.focus(),n=new WebSocket(aC({terminalId:r.id,threadId:i}));let _=n,v=u;_.onopen=()=>{dC({socket:_,terminal:v})},_.onmessage=e=>{if(typeof e.data!=`string`)return;let t;try{t=JSON.parse(e.data)}catch{return}let n=ce.safeParse(t);n.success&&mC({message:n.data,replayNextSeq:f,replayWriteState:p,setReplayNextSeq:e=>{f=e},terminal:v})},_.onclose=()=>{t||fC({terminal:v,text:`Terminal connection closed`})},v.onData(e=>{p.suppressedWriteCount>0||_.readyState===WebSocket.OPEN&&(c.current?.(),_.send(JSON.stringify({type:`input`,dataBase64:lC(e)})))}),v.onTitleChange(e=>{p.suppressedWriteCount>0||s.current?.(e)}),m=new ResizeObserver(()=>{!d||!u||!n||(d.fit(),dC({socket:n,terminal:u}))}),m.observe(e)}return h(e).catch(n=>{t||(e.textContent=n instanceof Error?n.message:String(n))}),()=>{t=!0,m?.disconnect(),n?.close(),u?.dispose(),o.current=null}},[r.id,i]),(0,K.useEffect)(()=>{e&&o.current?.focus()},[e]),(0,K.useEffect)(()=>{let e=o.current;e&&(e.options.theme=cC())},[u]),(0,q.jsx)(`div`,{ref:a,className:`h-full min-h-0 w-full overflow-hidden bg-background p-2`})}function gC({controller:e}){return e.hasTerminalQueryError?(0,q.jsx)(`div`,{className:`flex h-full items-center justify-center px-4 text-center text-sm text-destructive`,children:`Failed to load terminals.`}):e.activeSession?e.activeSession.status===`running`?(0,q.jsx)(hC,{isPanelOpen:e.isPanelOpen,onTitleChange:e.handleActiveTerminalTitleChange,onUserInput:e.handleActiveTerminalUserInput,session:e.activeSession,threadId:e.threadId}):(0,q.jsxs)(`div`,{className:`flex h-full items-center justify-center px-4 text-center text-sm text-muted-foreground`,children:[`Terminal `,nC(e.activeSession),`.`]}):(0,q.jsx)(`div`,{className:`flex h-full items-center justify-center px-4 text-center text-sm text-muted-foreground`,children:e.terminalBodyMessage})}function _C({controller:e}){return(0,q.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-1 overflow-x-auto`,role:`tablist`,"aria-label":`Terminal sessions`,children:[e.isTerminalQueryLoading?(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(Tn,{className:`h-6 w-28 shrink-0 rounded-md`}),(0,q.jsx)(Tn,{className:`h-6 w-24 shrink-0 rounded-md`})]}):e.visibleSessions.length>0?e.visibleSessions.map(t=>(0,q.jsx)(vC,{session:t,isActive:t.id===e.activeTerminalId,isClosing:e.closingTerminalId===t.id,onSelect:()=>e.handleSelectTerminal(t.id),onClose:()=>e.handleCloseTerminal(t.id)},t.id)):e.showTerminalPlaceholders?(0,q.jsx)(`p`,{className:`shrink-0 text-xs text-muted-foreground`,children:e.emptyTerminalMessage}):null,(0,q.jsx)(z,{type:`button`,variant:`ghost`,size:`icon`,className:`h-7 w-7 shrink-0 rounded-md p-0 text-muted-foreground`,disabled:!e.canCreateTerminal||e.isCreateTerminalPending,onClick:e.handleCreateTerminal,"aria-label":`New terminal`,title:`New terminal`,children:e.isCreateTerminalPending?(0,q.jsx)(P,{name:`Spinner`,className:`size-3.5 animate-spin`}):(0,q.jsx)(P,{name:`Plus`,className:`size-3.5`})})]})}function vC({isActive:e,isClosing:t,onClose:n,onSelect:r,session:i}){let a=nC(i);return(0,q.jsx)(Uo,{label:i.title,secondaryLabel:i.status===`running`?null:a,title:`${i.title} (${a})`,isActive:e,onSelect:r,closeAction:{onClose:n,closeLabel:`Close ${i.title}`,closeTooltip:`Close terminal`,isClosing:t}})}function yC({canCreateTerminal:e,threadId:t}){let n=rC({canCreateTerminal:e,threadId:t});return(0,q.jsxs)(`section`,{"aria-label":`Thread terminals`,className:`flex h-full min-h-0 min-w-0 flex-col bg-background`,children:[(0,q.jsxs)(`div`,{className:`flex h-10 min-h-10 items-center gap-2 bg-background px-3`,children:[(0,q.jsx)(_C,{controller:n}),(0,q.jsx)(z,{type:`button`,variant:`ghost`,size:`icon`,className:`h-7 w-7 shrink-0 rounded-md p-0 text-muted-foreground`,onClick:n.handleClosePanel,"aria-label":`Close terminal panel`,title:`Close terminal panel`,children:(0,q.jsx)(P,{name:`X`,className:`size-3.5`})})]}),(0,q.jsx)(`div`,{className:`min-h-0 flex-1 overflow-hidden bg-background`,children:(0,q.jsx)(gC,{controller:n})})]})}function bC({fixedPanelTabsState:e}){let t=e.secondary.activeTabId;return t===null?null:e.secondary.tabs.find(e=>e.id===t)??null}function xC(e){if(e===null)return null;switch(e.kind){case`thread-info`:return`thread-info`;case`git-diff`:return`git-diff`;case`workspace-file-preview`:case`host-file-preview`:case`thread-storage-file-preview`:case`open-file-search`:return`thread-info`;case`terminal`:return null}}function SC({activeFixedSecondaryTab:e}){return xC(e)}function CC({fixedPanelTabsState:e,selectedSecondaryPanel:t}){return e.secondary.isOpen?t:null}function wC(e){let t=wb(e),n=Cb(e);return(0,K.useCallback)(e=>{if(e===null){t();return}n(e)},[t,n])}function TC(e){return Tb(e)}var EC=[];function DC(e){let t=e.runtime.displayStatus;return t!==`host-reconnecting`&&t!==`waiting-for-host`?null:{label:t===`host-reconnecting`?`Host daemon disconnected. Waiting for reconnection...`:`Host daemon disconnected`,tone:t===`host-reconnecting`?`pending`:`error`}}function OC(){let{projectId:e,threadId:t}=Ve();yb(t),ni(t);let n=bb(t),r=ri(t),i=bC({fixedPanelTabsState:n}),a=SC({activeFixedSecondaryTab:i}),o=CC({fixedPanelTabsState:n,selectedSecondaryPanel:a}),s=pe(),c=Sb(t),l=wC(t),u=TC(t);Eb(t,(0,K.useCallback)(e=>{l(e)},[l]));let d=Me(t??``),f=d.isSuccess||d.isError,p=oi(t),m=ii(t),{data:h,isFetching:g,isLoadingError:_,isPlaceholderData:v,error:y}=Ne(t??``,{enabled:f,refetchOnMount:d.isSuccess?!0:`always`}),b=cr({hasResolvedData:h!==void 0&&!v,isFetching:d.isFetching||g,isLoadingError:_}),x=ke(h?.id??``,{enabled:b.status===`ready`&&!!h?.id,environmentId:h?.environmentId??void 0}),S=x.isSuccess||x.isError,C=x.isSuccess?1e4:void 0,{data:w}=Ne(h?.parentThreadId??``),{data:T=[]}=we(h?.id??``,{enabled:S,refetchOnMount:x.isSuccess?!1:`always`,staleTime:C}),E=Fe(T)!==null,D=h?.type===`manager`,O=h?.type===`standard`,[k,A]=ia(),M=D&&k,N=M?`standard`:void 0,P=SS({routeThreadId:t,thread:h,useStandardManagerTimeline:M}),[F,I]=(0,K.useState)(!1),[ee,te]=(0,K.useState)(0),{isThreadStorageFilesLoading:L,threadStorageFiles:ne,threadStorageFilesError:re,threadStorageRootPath:ie}=Bv({activePath:null,fileListEnabled:o!==null&&D,filePreviewEnabled:!1,threadId:t,threadType:h?.type}),{activateOpenFileSearchTab:ae,activateHostFileTab:R,activateStorageFileTab:oe,activateWorkspaceFileTab:z,activeHostFileLineNumber:ce,activeHostFilePath:B,activeStorageFilePath:le,activeWorkspaceFileLineNumber:de,activeWorkspaceFilePath:fe,activeWorkspaceFileSource:me,activeWorkspaceFileStatusLabel:he,clearActiveFileTabs:ge,closeHostFileTab:V,closeOpenFileSearchTab:_e,closeStorageFileTab:ve,closeWorkspaceFileTab:H,hasOpenFileSearchTab:U,isOpenFileSearchActive:be,openFileSearchTab:Se,openHostFile:Ce,openHostFileTabs:Te,openStorageFile:Ee,openStorageFilePaths:Oe,openWorkspaceFile:Ae,openWorkspaceFileTabs:je,pinnedStorageFilePath:Pe,selectOpenFileSearchResult:Ie}=ex({threadId:t,environmentId:h?.environmentId,threadType:h?.type,storageFiles:ne?.files}),Le=iy({files:ne?.files,onSelectPath:Ee,selectedPath:le}),Be=(0,K.useCallback)(()=>{if(n.secondary.isOpen){l(null);return}if(D&&i===null){Ee(Pe);return}u()},[i,n.secondary.isOpen,D,Ee,Pe,l,u]),He=(0,K.useCallback)(e=>{D&&A(e)},[D,A]),Ue=cv(h),We=b.status===`ready`&&Ue,Ge=De({archived:!1,projectId:e,type:`manager`},{enabled:We}).data??EC,{activeThinking:Ke,contextWindowUsage:qe,hasOlderTimelineRows:Je,isLoadingOlderTimelineRows:Ye,loadOlderTimelineRows:Xe,pendingTodos:W,timelineError:G,timelineLoading:Ze,timelineRows:Qe}=MS({managerTimelineView:N,threadId:t??``}),$e=nr(),et=si(),tt=ze(),nt=ci(),rt=Re(),it=ut(mt),at=qi(t??``,{enabled:it}),ot=(0,K.useMemo)(()=>at.data?.sessions.filter(e=>e.status!==`exited`).length??0,[at.data]),st=(0,K.useMemo)(()=>h?DC(h):null,[h]),ct=hi(h?.environmentId,{enabled:f,staleTime:5e3}),lt=ct.data,ft=Jn({projectId:e??``,environmentId:h?.environmentId??``}),pt=ue(lt),{closeThreadSecondaryPanel:ht,defaultMergeBaseBranch:gt,isLoadingMergeBaseBranchOptions:_t,mergeBaseBranchOptions:vt,openDiffFile:yt,openThreadDiffPanel:bt,openThreadSecondaryPanel:xt,selectedMergeBaseBranch:St,setSelectedMergeBaseBranch:Ct}=ma({activeSecondaryPanel:o,clearActiveFileTabs:ge,defaultMergeBaseBranch:pt,environmentId:O?h?.environmentId??void 0:void 0,mergeBaseBranchOptionsEnabled:F,setThreadSecondaryPanel:l}),{closePanel:wt,isOpen:Tt,openDiffFile:Et,openDiffPanel:Dt,openPanel:kt,togglePanel:At}=zv({closePersistedPanel:ht,isPersistedOpen:n.secondary.isOpen,isCompactViewport:s,openPersistedDiffFile:yt,openPersistedDiffPanel:bt,openPersistedPanel:xt,threadId:t,togglePersistedPanel:Be});(0,K.useEffect)(()=>{I(!1)},[h?.environmentId]);let jt=(0,K.useCallback)(e=>{e&&I(!0)},[]),Nt=(0,K.useCallback)(e=>{ge(),kt(e)},[ge,kt]),Pt=(0,K.useCallback)(()=>{c()},[c]),Ft=(0,K.useCallback)(()=>{Se(),te(e=>e+1)},[Se]),It=(0,K.useCallback)(e=>{let t=Math.round(e);m(e=>e.panelHeightPercent===t?e:{...e,panelHeightPercent:t})},[m]),Lt=(0,K.useCallback)(e=>{let t=PS(e);if(t.kind===`preview`){Ae({lineNumber:null,path:e.file.path,source:t.source,statusLabel:t.statusLabel});return}Et(e.file.path)},[Et,Ae]),Rt=(0,K.useMemo)(()=>{let e=je.map(e=>({id:`workspace:${e.path}`,filename:e.path.split(`/`).at(-1)??e.path,isActive:e.path===fe,statusLabel:e.statusLabel,onSelect:()=>z(e.path),onClose:()=>H(e.path)})),t=D?Oe.map(e=>({id:`storage:${e}`,filename:e.split(`/`).at(-1)??e,isActive:e===le,isPinned:e===Pe,statusLabel:null,onSelect:()=>oe(e),onClose:()=>ve(e)})):[],n=Te.map(e=>({id:`host-file:${e.path}`,filename:e.path.split(`/`).at(-1)??e.path,isActive:e.path===B,statusLabel:null,onSelect:()=>R(e.path),onClose:()=>V(e.path)})),r=U?[{id:`open-file-search`,filename:`Open file`,isActive:be,statusLabel:null,onSelect:ae,onClose:_e}]:[],i=[...e,...n,...t,...r];return i.length>0?i:void 0},[ae,R,oe,z,B,le,fe,V,_e,ve,H,U,D,be,Te,Oe,je,Pe]),Bt=St??pt,Vt=gi(h?.environmentId,Bt,{enabled:O&<!==void 0}),Ht=Vt.data,Ut=Vt.error,Wt=Ut?void 0:Ht??void 0,Gt=Wt?.branch,Kt=(0,K.useMemo)(()=>Ti(Wt),[Wt]),qt=(0,K.useMemo)(()=>Kt===null||Kt.kind===`committed`?null:Kt,[Kt]),{isLocalHost:Jt}=dt(),Yt=lt?Jt(lt.hostId):!1,Xt=FS({environment:lt,threadEnvironmentIsLocal:Yt}),{canOpenPreferredTarget:Zt,openPathInPreferredTarget:$t,openPathInTarget:en,preferredTarget:tn,workspaceOpenTargets:nn}=Ui({enabled:Yt}),rn=d.isSuccess&&d.data.environment!==void 0&&d.data.environment!==null&&d.data.host===null,{data:an}=ye(lt?.hostId,{enabled:!rn}),on=De({archived:!1,projectId:e,parentThreadId:h?.id},{enabled:D&&!!h?.id}),sn=(0,K.useMemo)(()=>{if(!h?.parentThreadId)return null;let t=`/projects/${e}/threads/${h.parentThreadId}`;return w===void 0?{managerName:`Manager ${h.parentThreadId.slice(0,8)}`,href:t}:w.type!==`manager`||w.archivedAt!==null||w.deletedAt!==null||w.projectId!==h.projectId?null:{managerName:xe(w),href:t}},[w,e,h?.parentThreadId,h?.projectId]),cn=(0,K.useMemo)(()=>{if(!D)return null;let t=(on.data??[]).filter(e=>no(e.runtime.displayStatus)).map(t=>({id:t.id,title:xe(t),href:`/projects/${e}/threads/${t.id}`}));return t.length===0?null:{items:t}},[D,on.data,e]),ln=Ze&&Qe.length===0,{erroredTurnSummaryIds:un,handleLoadTurnSummaryRows:dn,loadingTurnSummaryIds:fn,turnSummaryRowsById:pn}=wa({managerTimelineView:N,timelineRows:Qe,threadId:t});vS({markThreadRead:tt,thread:h});let{effectiveMergeBaseBranch:hn,handleMergeBaseBranchChange:gn,showBranchComparisonUi:_n,showMergeBase:vn,mergeBaseBranch:yn}=ox({environment:lt,mergeBaseBranchOptions:vt,selectedMergeBaseBranch:St,setSelectedMergeBaseBranch:Ct,thread:h,updateEnvironment:nt,workspaceStatus:Wt}),bn=_S({environment:lt,requestEnvironmentAction:et,sendMessage:$e,thread:h,workspaceStatus:Wt}),xn=h?.parentThreadId,Sn=w?.title&&w.title.trim().length>0?w.title:xn,Cn=(0,K.useMemo)(()=>lv({currentThreadId:h?.id,isManagerThread:D,managerThreads:Ge,parentThreadDisplayName:Sn,parentThreadId:xn}),[D,Ge,Sn,xn,h?.id]),wn=(0,K.useCallback)(e=>{!h||rt.isPending||rt.mutate({id:h.id,parentThreadId:e})},[h,rt]),Tn=(0,K.useCallback)(e=>{let t=US({hostFileLinksAvailable:h?.environmentId!==null&&h?.environmentId!==void 0,link:e,workspaceRootPath:Xt});return t.kind===`app-route`?!1:t.kind===`error`?(Qt.error(`Failed to open file locally`,{description:t.description}),!0):t.kind===`open-workspace-path`?(Ae({lineNumber:t.request.lineNumber,path:t.request.relativePath,source:{kind:`working-tree`},statusLabel:null}),!0):(Ce({lineNumber:t.request.lineNumber,path:t.request.path}),!0)},[Xt,Ce,Ae,h?.environmentId]),En=(0,K.useCallback)(e=>{switch(e.kind){case`open-file-diff`:return D?null:()=>{Et(e.path)};default:return zt(e.kind)}},[D,Et]);if(!e||!t)return(0,q.jsx)(se,{contentClassName:`min-h-full items-center justify-center`,children:(0,q.jsx)(`p`,{className:`py-12 text-center text-sm text-destructive`,children:`Not found`})});if(b.status===`loading`)return(0,q.jsx)(se,{contentClassName:`min-h-full items-center justify-center`,children:(0,q.jsx)(`p`,{className:`py-12 text-center text-sm text-muted-foreground`,children:`Loading...`})});if(!h||h.projectId!==e)return(0,q.jsx)(se,{contentClassName:`min-h-full items-center justify-center`,children:(0,q.jsx)(`p`,{className:`py-12 text-center text-sm text-destructive`,children:y?`Failed to load thread.`:`Not found`})});let On=`${h.id}:${N??`default`}`,kn=Cn.some(e=>e.value!==`none`),An=Ue&&kn,jn=h.type===`standard`&&!!h.parentThreadId,Mn=lt?j({environment:lt,isLocalHost:Yt,hostName:an?.name}):void 0,Nn=Mn?Dn(Mn.workspaceDisplayKind):null,Pn=lt!==void 0&&(lt.isWorktree||lt.workspaceProvisionType===`managed-worktree`)&&e&&h.environmentId!==null?ft:void 0,Fn=hn,In=Gt?.currentBranch??void 0,Ln=lt?.status===`destroyed`,Rn=it&&h.environmentId!==null&<?.status===`ready`,zn=sa(Wt,{mergeBaseBranch:yn,showBranchComparison:_n,error:Ut,workspaceDeleted:Ln}),Bn=xe(h),Vn=(0,q.jsx)(mn,{thread:h,triggerClassName:Ot,align:`end`,viewerToggleLabel:D?`Use standard timeline`:void 0,viewerToggleChecked:D?M:void 0,onViewerToggleCheckedChange:D?He:void 0}),Hn=IS({canOpenWorkspace:Zt,environment:lt,hasWorkspaceOpenTargets:nn.length>0,threadEnvironmentIsLocal:Yt}),Un=Hn&&tn?(0,q.jsx)(Pi,{preferredTarget:tn,targets:nn,onOpenPreferredTarget:async()=>{await $t({lineNumber:null,path:Hn})},onOpenTarget:async e=>{await en({lineNumber:null,path:Hn,rememberTarget:!0,targetId:e})}}):void 0,Wn=(0,q.jsx)(Ea,{actionsMenu:Vn,isManagedThread:!!xn,isManagerThread:D,isSecondaryPanelOpen:Tt,activeTerminalCount:ot,isTerminalPanelOpen:it&&r.isOpen,isThreadGitActionPending:bn.isThreadGitActionPending,onOpenThreadGitAction:bn.threadGitActionDialog.onOpen,onToggleSecondaryPanel:At,onToggleTerminalPanel:p,showTerminalPanelToggle:it,threadHeaderGitActions:bn.threadHeaderGitActions,threadTitle:Bn,workspaceOpenButton:Un}),Gn=(0,q.jsx)(Bo,{canUseGitUi:O,contextWindowUsage:qe,environmentBranchName:In,environmentHostConnected:an&&!Yt?an.status===`connected`:void 0,environmentIcon:Nn??void 0,environmentLabel:Mn?.modeLabel,environmentHostLabel:Mn?.location===`remote`?Mn.hostLabel??void 0:void 0,isEnvironmentActionPending:et.isPending,onCreateNewThreadInWorktree:Pn,composerQueriesEnabled:S,composerQueriesRefetchOnMount:x.isSuccess?!1:`always`,composerQueriesStaleTime:C,onChangedFileClick:Lt,openThreadDiffPanel:Dt,projectId:e,workspaceChangedFilesSection:O?Kt:null,workspaceStatusPending:O&&(ct.isLoading||Vt.isLoading),contextBannerMergeBase:O&&vn&&Fn?{branch:Fn,options:vt,optionsLoading:_t,onChange:gn,onPickerOpenChange:jt}:null,sendMessage:$e,pendingInteractions:T,pendingTodos:W,managedBySection:sn,managerChildrenSection:cn,thread:h}),Kn=h.type===`manager`?{controller:Le,filesError:re,isFilesLoading:L}:void 0,qn=NS({rootPath:Xt,canOpenPreferredTarget:Zt,openInPreferredTarget:$t}),Yn=NS({rootPath:Yt?ie:null,canOpenPreferredTarget:Zt,openInPreferredTarget:$t}),Xn=Yt&&Zt?e=>{$t({lineNumber:ce,path:e})}:void 0,Zn=fe?Mt({path:fe,rootPath:lt?.path}):null,Qn=le?Mt({path:le,rootPath:ie}):null,$n=be?(0,q.jsx)(ty,{projectId:e??void 0,environmentId:h.environmentId??null,currentThreadId:h.id,currentThreadType:h.type,focusRequest:ee,onSelect:Ie}):fe?(0,q.jsx)(Ws,{activePath:fe,copyPath:Zn,environmentId:h.environmentId,lineNumber:de,onOpenInEditor:qn,source:me,statusLabel:he}):B?(0,q.jsx)(Gs,{activePath:B,environmentId:h.environmentId,lineNumber:ce,onOpenInEditor:Xn,threadId:h.id}):le?(0,q.jsx)(Ks,{activePath:le,copyPath:Qn,isManagerThread:D,onOpenInEditor:Yn,pinnedPath:Pe,threadId:h.id}):void 0;return(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(Pv,{footer:Gn,header:Wn,isMetadataLoading:ct.isLoading,isSecondaryPanelOpen:Tt,metadata:{thread:h,projectId:e,parentThreadDisplayName:Sn??null,managerThreads:Ge,canAssignToManager:An,canTakeOverThread:jn,environmentHost:an??null,environmentIsLocal:Yt,environment:lt??null,workspaceStatus:Wt,workspaceStatusError:Ut??null,selectedMergeBaseBranch:St,mergeBaseBranchOptions:vt,isLoadingMergeBaseBranchOptions:_t,updateThreadPending:rt.isPending||nt.isPending,storage:Kn,onAssignManager:wn,onMergeBaseBranchChange:gn,onChangedFileClick:O?Lt:void 0},secondaryPanel:{activePanel:a,canUseGitUi:O,defaultMergeBaseBranch:gt,environmentId:h.environmentId??void 0,workspaceRootPath:lt?.path,fileTabs:Rt,fileTabContent:$n,isOpen:Tt,onClose:wt,onCollapse:wt,onOpenFileInEditor:qn,onOpenFileSearch:Ft,onOpenFilePreview:e=>{Ae({lineNumber:null,path:e,source:{kind:`working-tree`},statusLabel:null})},onPanelFocus:Pt,onPanelChange:Nt,showGitDiffTab:O},terminalPanel:it?(0,q.jsx)(yC,{canCreateTerminal:Rn,threadId:h.id}):void 0,terminalPanelHeightPercent:r.panelHeightPercent,terminalPanelOpen:it&&r.isOpen,onTerminalPanelResize:It,timeline:{activeThinking:Ke,hasOlderTimelineRows:Je,hostConnectionNotice:st,isLoadingOlderTimelineRows:Ye,isThreadTimelinePending:ln,timelineError:!!G,loadingTurnSummaryIds:fn,erroredTurnSummaryIds:un,onLoadOlderRows:Xe,onLoadTurnSummaryRows:dn,onOpenLocalFileLink:Tn,onTitleAction:En,projectId:e,showOngoingIndicator:h.stopRequestedAt===null&&(h.runtime.displayStatus===`active`||h.runtime.displayStatus===`host-reconnecting`)&&!ln,ongoingIndicatorLabel:E?`Waiting for approval`:h.runtime.displayStatus===`host-reconnecting`?`Waiting for reconnection`:void 0,timelineRows:Qe,stopRequestedAt:h.stopRequestedAt,threadId:h.id,threadRuntimeDisplayStatus:h.runtime.displayStatus,turnSummaryRowsIdentity:On,turnSummaryRowsById:pn,unreadDividerPlacement:P,workspaceRootPath:lt?.path??void 0}}),O?(0,q.jsx)(Ai,{target:bn.threadGitActionDialog.target,branchName:In,gitStatusDisplay:zn,changedFilesSection:qt,threadId:h.id,threadType:h.type,showMergeBaseDetails:_n,mergeBaseBranch:hn,mergeBaseBranchOptions:vt,mergeBaseBranchOptionsLoading:_t,onMergeBaseBranchChange:_n?gn:void 0,onOpenChange:e=>{e||bn.threadGitActionDialog.onClose()},onCommit:bn.handleCommitThread,onSquashMerge:bn.handleSquashMergeThread}):null]})}var kC={workerFactory:Pr,poolSize:Nr()},AC={};function jC(){return(0,q.jsx)(hn,{poolOptions:kC,highlighterOptions:AC,children:(0,q.jsx)(OC,{})})}export{jC as default};
|