@p4code/cli 0.6.12 → 0.6.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/bin.mjs CHANGED
@@ -266,7 +266,7 @@ const make$124 = () => {
266
266
  const layer$124 = Layer.sync(NetService, make$124);
267
267
  //#endregion
268
268
  //#region package.json
269
- var version$1 = "0.6.12";
269
+ var version$1 = "0.6.13";
270
270
  //#endregion
271
271
  //#region src/config.ts
272
272
  /**
@@ -133683,7 +133683,7 @@ const ProviderAdapterRegistryLive = Layer.effect(ProviderAdapterRegistry, makePr
133683
133683
  //#endregion
133684
133684
  //#region src/provider/ComputerUsePrompts.ts
133685
133685
  /** Routing guidance is injected only when the session has P4's Computer Use endpoint. */
133686
- const COMPUTER_USE_ROUTING_PROMPT = "P4 Computer Use is available for this session through the cua_repl MCP server. When you use it for a native desktop app, do not substitute AppleScript or shell automation unless the user explicitly requests that path. For a named app, start directly with const app = await cua.getApp(exactNameOrBundleId); read the automatically returned state/image and stop if it answers the request. Reuse the handle and batch safe actions; do not repeat selection or unchanged state. For Device Hub, simulator, emulator, or connected-device requests, use cua.listDevices() once, then cua.getDevice({hostId,deviceId,platform}) with exact discovered IDs. Selection already emits initial device state. Reuse its handle; do not print the handle or repeat that state before acting. Never substitute macOS getApp('Simulator'). Device hosts are scoped to this provider environment and can differ from the desktop host. If device discovery, opening, inspection, or interaction reports missing permission or unavailable control, stop and report the exact limitation. Do not retry through screenshots, shell simctl, Xcode tools, or another MCP server. Do not call getState/getApp, control the P4 desktop app, or open device settings to work around a device API failure. Missing consent, unavailable devices, or unsupported operations are limitations to report, not permission to switch hosts or bypass the tool.";
133686
+ const COMPUTER_USE_ROUTING_PROMPT = "P4 Computer Use is available for this session through the cua_repl MCP server. When you use it for a native desktop app, do not substitute AppleScript or shell automation unless the user explicitly requests that path. For a named app, start directly with const app = await cua.getApp(exactNameOrBundleId); read the automatically returned state/image and stop if it answers the request. Reuse the handle and batch safe actions; do not repeat selection or unchanged state. For Device Hub, simulator, emulator, or connected-device requests, use cua.listDevices() once, then cua.getDevice({hostId,deviceId,platform}) with exact discovered IDs, unless the user explicitly requested a different route such as simctl. Selection already emits initial device state. Reuse its handle; do not print the handle or repeat that state before acting. Never substitute macOS getApp('Simulator'). Device hosts are scoped to this provider environment and can differ from the desktop host. If device discovery, opening, inspection, or interaction reports missing permission or unavailable control, stop P4 device interaction and report the exact limitation. Do not silently retry through screenshots, shell simctl, Xcode tools, or another MCP server; an explicit user request for one of those routes is separate authorization to use it. Do not call getState/getApp, control the P4 desktop app, or open device settings to work around a device API failure. Missing consent, unavailable devices, or unsupported operations are P4 limitations to report, never permission to switch P4 hosts or bypass the tool.";
133687
133687
  /** The routing note, naming the server the way this session's provider sees it. */
133688
133688
  function withComputerUseRouting(input, enabled, serverName = "cua_repl") {
133689
133689
  const prompt = serverName === "cua_repl" ? COMPUTER_USE_ROUTING_PROMPT : COMPUTER_USE_ROUTING_PROMPT.replace("the cua_repl MCP server", `the ${serverName} MCP server`);
@@ -1,4 +1,4 @@
1
- import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{n as t,r as n,t as r}from"./compiler-runtime-CLAvuQ-D.js";import{Cn as i,Dt as a,Fa as o,Ha as s,Ja as c,Kr as l,Qa as u,Qr as ee,Ra as te,Sl as d,Ua as f,Vr as ne,Wl as p,Xa as re,Ya as ie,Za as m,Zu as h,_t as g,b as _,bl as v,ct as y,gt as b,h as x,pu as S,su as C,vn as w,vu as ae,wu as oe,xl as T,yl as E,yt as D}from"./previewAssetResource-DEZquWCb.js";import{a as O,c as se,i as k,n as A,o as j,r as M,s as ce,t as le}from"./toggle-group-CX-BX4R0.js";import{A as ue,Fr as de,J as fe,Lr as pe,M as N,Mr as me,Nr as he,Rr as ge,Y as _e,_ as ve,ar as ye,cr as be,ct as xe,dr as Se,dt as Ce,ft as we,h as Te,ir as Ee,j as De,jr as Oe,k as ke,lr as Ae,lt as je,nr as Me,oi as Ne,or as Pe,ot as Fe,pr as Ie,rr as Le,si as Re,sr as ze,st as Be,ut as Ve,yr as He}from"./index-zIgT1Y-z.js";import{a as Ue,n as We}from"./fileCommentAnnotations-CKXyKV65.js";var Ge=d(`pilcrow`,[[`path`,{d:`M13 4v16`,key:`8vvj80`}],[`path`,{d:`M17 4v16`,key:`7dpous`}],[`path`,{d:`M19 4H9.5a4.5 4.5 0 0 0 0 9H13`,key:`sh4n9v`}]]),P=e(n(),1);function Ke({threadRef:e,filePath:t,activeCwd:n,openInEditor:r,openFileSurface:i}){if(e){if(i){i(t);return}y.getState().openFile(e,t);return}r(n?x(t,n):t)}var F=r();function qe(e,t){let n=(0,F.c)(4),r=Se(e,t),i;return n[0]!==r.data||n[1]!==r.error||n[2]!==r.isPending?(i={data:r.data,error:r.error,isPending:r.isPending},n[0]=r.data,n[1]=r.error,n[2]=r.isPending,n[3]=i):i=n[3],i}var I=t(),Je=[];function Ye(e){return(e.endSide??e.side)===`deletions`?`deletions`:`additions`}function L(e,t,n){let r=Ye(t),i=e.findIndex(e=>e.side===r&&e.lineNumber===t.end);return i<0?[...e,{side:r,lineNumber:t.end,metadata:{entries:[n]}}]:e.map((e,t)=>t===i?{...e,metadata:{entries:[...e.metadata.entries,n]}}:e)}function Xe(e){let t=(0,F.c)(50),{files:n,sectionId:r,sectionTitle:i,composerDraftTarget:a,options:o,viewerRef:s,className:c,renderHeaderPrefix:u}=e,te=ne($e),d=ne(z),f;t[0]===a?f=t[1]:(f=e=>e.getComposerDraft(a)?.reviewComments??Je,t[0]=a,t[1]=f);let p=ne(f),[re,ie]=(0,P.useState)(null),[m,h]=(0,P.useState)(null),g;t[2]===n?g=t[3]:(g=new Map(n.map(Qe)),t[2]=n,t[3]=g);let _=g,v;if(t[4]!==m||t[5]!==n||t[6]!==p||t[7]!==r){let e;t[9]!==m||t[10]!==p||t[11]!==r?(e=e=>{let{fileDiff:t,filePath:n,fileKey:i,collapsed:a}=e,o=p.filter(e=>e.sectionId===r&&e.filePath===n&&(e.fenceLanguage??`diff`)===`diff`).reduce((e,n)=>{let r=ee(t,n);return r?L(e,r,{id:n.id,kind:`comment`,range:r,rangeLabel:n.rangeLabel,text:n.text}):e},[]),s=m?.fileKey===i?[...o,m.annotation]:o;return{id:i,type:`diff`,fileDiff:t,annotations:s,collapsed:a,version:Be(`${a?`1`:`0`}:${s.flatMap(R).join(`:`)}`)}},t[9]=m,t[10]=p,t[11]=r,t[12]=e):e=t[12],v=n.map(e),t[4]=m,t[5]=n,t[6]=p,t[7]=r,t[8]=v}else v=t[8];let y=v,b;t[13]!==a||t[14]!==m?.annotation||t[15]!==d?(b=e=>{ie(null),m?.annotation.metadata.entries.some(t=>t.id===e)?h(null):d(a,e)},t[13]=a,t[14]=m?.annotation,t[15]=d,t[16]=b):b=t[16];let x=b,S;t[17]!==te||t[18]!==a||t[19]!==m||t[20]!==_||t[21]!==r||t[22]!==i?(S=(e,t)=>{let n=m?.annotation.metadata.entries.find(t=>t.id===e),o=m?_.get(m.fileKey):void 0;if(!n||!o)return;let s=l({id:n.id,sectionId:r,sectionTitle:i,filePath:o.filePath,fileDiff:o.fileDiff,range:n.range,text:t});s&&te(a,s),ie(null),h(null)},t[17]=te,t[18]=a,t[19]=m,t[20]=_,t[21]=r,t[22]=i,t[23]=S):S=t[23];let C=S,w;t[24]!==_||t[25]!==r||t[26]!==i?(w=(e,t)=>{if(!e)return;let n=t.item;if(n.type!==`diff`)return;let a=_.get(n.id);if(!a)return;let o=We(),s=l({id:o,sectionId:r,sectionTitle:i,filePath:a.filePath,fileDiff:a.fileDiff,range:e,text:``});s&&h({fileKey:n.id,annotation:{side:Ye(e),lineNumber:e.end,metadata:{entries:[{id:o,kind:`draft`,range:e,rangeLabel:s.rangeLabel,text:``}]}}})},t[24]=_,t[25]=r,t[26]=i,t[27]=w):w=t[27];let ae=w,oe=m!==null,T;t[28]===s?T=t[29]:(T=s?{ref:s}:{},t[28]=s,t[29]=T);let E;t[30]===c?E=t[31]:(E=c?{className:c}:{},t[30]=c,t[31]=E);let D=!oe,se=!oe,k;t[32]!==ae||t[33]!==o||t[34]!==se||t[35]!==D?(k={...o,enableGutterUtility:D,enableLineSelection:se,onLineSelectionEnd:ae},t[32]=ae,t[33]=o,t[34]=se,t[35]=D,t[36]=k):k=t[36];let A;t[37]===u?A=t[38]:(A=e=>e.type===`diff`?u(e.fileDiff,e.id,e.collapsed===!0):null,t[37]=u,t[38]=A);let j;t[39]!==x||t[40]!==C?(j=e=>(0,I.jsx)(`div`,{className:`py-1`,children:e.metadata.entries.map(e=>(0,I.jsx)(Ue,{kind:e.kind,rangeLabel:e.rangeLabel,text:e.text,onCancel:()=>x(e.id),onComment:t=>C(e.id,t),onDelete:()=>x(e.id)},e.id))}),t[39]=x,t[40]=C,t[41]=j):j=t[41];let M;return t[42]!==y||t[43]!==re||t[44]!==k||t[45]!==A||t[46]!==j||t[47]!==T||t[48]!==E?(M=(0,I.jsx)(O,{...T,...E,items:y,selectedLines:re,onSelectedLinesChange:ie,options:k,renderHeaderPrefix:A,renderAnnotation:j}),t[42]=y,t[43]=re,t[44]=k,t[45]=A,t[46]=j,t[47]=T,t[48]=E,t[49]=M):M=t[49],M}function R(e){return e.metadata.entries.map(Ze)}function Ze(e){return`${e.id}:${e.rangeLabel}:${e.text}`}function Qe(e){return[e.fileKey,e]}function z(e){return e.removeReviewComment}function $e(e){return e.addReviewComment}function et(e){return{diffPreview:C(e,{label:`environment-data:review:diff-preview`,tag:h.reviewGetDiffPreview,staleTimeMs:5e3})}}var tt=et(i);function B(e){return e.remoteName&&e.name.startsWith(`${e.remoteName}/`)?e.name.slice(e.remoteName.length+1):e.name}function nt(e,t){let n=new Set(t),r=e.map(e=>{let r=t.filter(t=>n.has(t)&&B(t)===e.name),i=r.find(e=>e.remoteName===`origin`)??r[0]??null;return i&&n.delete(i),{id:`local:${e.name}`,label:e.name,local:e,remote:i}}),i=t.filter(e=>n.has(e)).map(e=>({id:`remote:${e.name}`,label:e.name,local:null,remote:e}));return[...r,...i]}function rt(e,t){let n=t.trim().toLocaleLowerCase();return n.length===0?e:e.filter(e=>e.label.toLocaleLowerCase().includes(n)||e.local?.name.toLocaleLowerCase().includes(n)===!0||e.remote?.name.toLocaleLowerCase().includes(n)===!0)}var V=`__automatic_base_ref__`,it=new Set,at=`
1
+ import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{n as t,r as n,t as r}from"./compiler-runtime-CLAvuQ-D.js";import{Cn as i,Dt as a,Fa as o,Ha as s,Ja as c,Kr as l,Qa as u,Qr as ee,Ra as te,Sl as d,Ua as f,Vr as ne,Wl as p,Xa as re,Ya as ie,Za as m,Zu as h,_t as g,b as _,bl as v,ct as y,gt as b,h as x,pu as S,su as C,vn as w,vu as ae,wu as oe,xl as T,yl as E,yt as D}from"./previewAssetResource-DEZquWCb.js";import{a as O,c as se,i as k,n as A,o as j,r as M,s as ce,t as le}from"./toggle-group-DAfIzx1j.js";import{A as ue,Fr as de,J as fe,Lr as pe,M as N,Mr as me,Nr as he,Rr as ge,Y as _e,_ as ve,ar as ye,cr as be,ct as xe,dr as Se,dt as Ce,ft as we,h as Te,ir as Ee,j as De,jr as Oe,k as ke,lr as Ae,lt as je,nr as Me,oi as Ne,or as Pe,ot as Fe,pr as Ie,rr as Le,si as Re,sr as ze,st as Be,ut as Ve,yr as He}from"./index-Be6_pUuK.js";import{a as Ue,n as We}from"./fileCommentAnnotations-DyExLixc.js";var Ge=d(`pilcrow`,[[`path`,{d:`M13 4v16`,key:`8vvj80`}],[`path`,{d:`M17 4v16`,key:`7dpous`}],[`path`,{d:`M19 4H9.5a4.5 4.5 0 0 0 0 9H13`,key:`sh4n9v`}]]),P=e(n(),1);function Ke({threadRef:e,filePath:t,activeCwd:n,openInEditor:r,openFileSurface:i}){if(e){if(i){i(t);return}y.getState().openFile(e,t);return}r(n?x(t,n):t)}var F=r();function qe(e,t){let n=(0,F.c)(4),r=Se(e,t),i;return n[0]!==r.data||n[1]!==r.error||n[2]!==r.isPending?(i={data:r.data,error:r.error,isPending:r.isPending},n[0]=r.data,n[1]=r.error,n[2]=r.isPending,n[3]=i):i=n[3],i}var I=t(),Je=[];function Ye(e){return(e.endSide??e.side)===`deletions`?`deletions`:`additions`}function L(e,t,n){let r=Ye(t),i=e.findIndex(e=>e.side===r&&e.lineNumber===t.end);return i<0?[...e,{side:r,lineNumber:t.end,metadata:{entries:[n]}}]:e.map((e,t)=>t===i?{...e,metadata:{entries:[...e.metadata.entries,n]}}:e)}function Xe(e){let t=(0,F.c)(50),{files:n,sectionId:r,sectionTitle:i,composerDraftTarget:a,options:o,viewerRef:s,className:c,renderHeaderPrefix:u}=e,te=ne($e),d=ne(z),f;t[0]===a?f=t[1]:(f=e=>e.getComposerDraft(a)?.reviewComments??Je,t[0]=a,t[1]=f);let p=ne(f),[re,ie]=(0,P.useState)(null),[m,h]=(0,P.useState)(null),g;t[2]===n?g=t[3]:(g=new Map(n.map(Qe)),t[2]=n,t[3]=g);let _=g,v;if(t[4]!==m||t[5]!==n||t[6]!==p||t[7]!==r){let e;t[9]!==m||t[10]!==p||t[11]!==r?(e=e=>{let{fileDiff:t,filePath:n,fileKey:i,collapsed:a}=e,o=p.filter(e=>e.sectionId===r&&e.filePath===n&&(e.fenceLanguage??`diff`)===`diff`).reduce((e,n)=>{let r=ee(t,n);return r?L(e,r,{id:n.id,kind:`comment`,range:r,rangeLabel:n.rangeLabel,text:n.text}):e},[]),s=m?.fileKey===i?[...o,m.annotation]:o;return{id:i,type:`diff`,fileDiff:t,annotations:s,collapsed:a,version:Be(`${a?`1`:`0`}:${s.flatMap(R).join(`:`)}`)}},t[9]=m,t[10]=p,t[11]=r,t[12]=e):e=t[12],v=n.map(e),t[4]=m,t[5]=n,t[6]=p,t[7]=r,t[8]=v}else v=t[8];let y=v,b;t[13]!==a||t[14]!==m?.annotation||t[15]!==d?(b=e=>{ie(null),m?.annotation.metadata.entries.some(t=>t.id===e)?h(null):d(a,e)},t[13]=a,t[14]=m?.annotation,t[15]=d,t[16]=b):b=t[16];let x=b,S;t[17]!==te||t[18]!==a||t[19]!==m||t[20]!==_||t[21]!==r||t[22]!==i?(S=(e,t)=>{let n=m?.annotation.metadata.entries.find(t=>t.id===e),o=m?_.get(m.fileKey):void 0;if(!n||!o)return;let s=l({id:n.id,sectionId:r,sectionTitle:i,filePath:o.filePath,fileDiff:o.fileDiff,range:n.range,text:t});s&&te(a,s),ie(null),h(null)},t[17]=te,t[18]=a,t[19]=m,t[20]=_,t[21]=r,t[22]=i,t[23]=S):S=t[23];let C=S,w;t[24]!==_||t[25]!==r||t[26]!==i?(w=(e,t)=>{if(!e)return;let n=t.item;if(n.type!==`diff`)return;let a=_.get(n.id);if(!a)return;let o=We(),s=l({id:o,sectionId:r,sectionTitle:i,filePath:a.filePath,fileDiff:a.fileDiff,range:e,text:``});s&&h({fileKey:n.id,annotation:{side:Ye(e),lineNumber:e.end,metadata:{entries:[{id:o,kind:`draft`,range:e,rangeLabel:s.rangeLabel,text:``}]}}})},t[24]=_,t[25]=r,t[26]=i,t[27]=w):w=t[27];let ae=w,oe=m!==null,T;t[28]===s?T=t[29]:(T=s?{ref:s}:{},t[28]=s,t[29]=T);let E;t[30]===c?E=t[31]:(E=c?{className:c}:{},t[30]=c,t[31]=E);let D=!oe,se=!oe,k;t[32]!==ae||t[33]!==o||t[34]!==se||t[35]!==D?(k={...o,enableGutterUtility:D,enableLineSelection:se,onLineSelectionEnd:ae},t[32]=ae,t[33]=o,t[34]=se,t[35]=D,t[36]=k):k=t[36];let A;t[37]===u?A=t[38]:(A=e=>e.type===`diff`?u(e.fileDiff,e.id,e.collapsed===!0):null,t[37]=u,t[38]=A);let j;t[39]!==x||t[40]!==C?(j=e=>(0,I.jsx)(`div`,{className:`py-1`,children:e.metadata.entries.map(e=>(0,I.jsx)(Ue,{kind:e.kind,rangeLabel:e.rangeLabel,text:e.text,onCancel:()=>x(e.id),onComment:t=>C(e.id,t),onDelete:()=>x(e.id)},e.id))}),t[39]=x,t[40]=C,t[41]=j):j=t[41];let M;return t[42]!==y||t[43]!==re||t[44]!==k||t[45]!==A||t[46]!==j||t[47]!==T||t[48]!==E?(M=(0,I.jsx)(O,{...T,...E,items:y,selectedLines:re,onSelectedLinesChange:ie,options:k,renderHeaderPrefix:A,renderAnnotation:j}),t[42]=y,t[43]=re,t[44]=k,t[45]=A,t[46]=j,t[47]=T,t[48]=E,t[49]=M):M=t[49],M}function R(e){return e.metadata.entries.map(Ze)}function Ze(e){return`${e.id}:${e.rangeLabel}:${e.text}`}function Qe(e){return[e.fileKey,e]}function z(e){return e.removeReviewComment}function $e(e){return e.addReviewComment}function et(e){return{diffPreview:C(e,{label:`environment-data:review:diff-preview`,tag:h.reviewGetDiffPreview,staleTimeMs:5e3})}}var tt=et(i);function B(e){return e.remoteName&&e.name.startsWith(`${e.remoteName}/`)?e.name.slice(e.remoteName.length+1):e.name}function nt(e,t){let n=new Set(t),r=e.map(e=>{let r=t.filter(t=>n.has(t)&&B(t)===e.name),i=r.find(e=>e.remoteName===`origin`)??r[0]??null;return i&&n.delete(i),{id:`local:${e.name}`,label:e.name,local:e,remote:i}}),i=t.filter(e=>n.has(e)).map(e=>({id:`remote:${e.name}`,label:e.name,local:null,remote:e}));return[...r,...i]}function rt(e,t){let n=t.trim().toLocaleLowerCase();return n.length===0?e:e.filter(e=>e.label.toLocaleLowerCase().includes(n)||e.local?.name.toLocaleLowerCase().includes(n)===!0||e.remote?.name.toLocaleLowerCase().includes(n)===!0)}var V=`__automatic_base_ref__`,it=new Set,at=`
2
2
  [data-diffs-header],
3
3
  [data-diff],
4
4
  [data-file],
@@ -95,4 +95,4 @@ import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{n as t,r as n,t as r}f
95
95
  text-decoration-color: currentColor;
96
96
  }
97
97
  `;function H({mode:e=`inline`,composerDraftTarget:t,initialGitScope:n,threadRef:r}){let{resolvedTheme:i}=_(),l=de(),[ee]=(0,P.useState)(n),[d,ne]=(0,P.useState)(`stacked`),[h,y]=(0,P.useState)(l.wordWrap),[x,C]=(0,P.useState)(l.diffIgnoreWhitespace),[O,ve]=(0,P.useState)(``),[Se,Be]=(0,P.useState)(()=>({scopeKey:null,fileKeys:it})),Ue=(0,P.useRef)(null),We=r.threadId,F=he(r),Je=F?.projectId??null,Ye=me(F&&Je?{environmentId:F.environmentId,projectId:Je}:null),L=F?.worktreePath??Ye?.workspaceRoot,R=p(w.configValueAtom(F?.environmentId??null)),Ze=Ie(F?.environmentId??null,R?.availableEditors??[]),Qe=a(F!=null&&L!=null?Oe.status({environmentId:F.environmentId,input:{cwd:L}}):null),z=N(e=>De(e.byThreadKey,r,ee===`unstaged`)),$e=Qe.data?.isRepo??!0,{turnDiffSummaries:et,inferredCheckpointTurnCountByTurnId:B}=ue(F),H=(0,P.useMemo)(()=>[...et].toSorted((e,t)=>{let n=e.checkpointTurnCount??B[e.turnId]??0,r=t.checkpointTurnCount??B[t.turnId]??0;return n===r?t.completedAt.localeCompare(e.completedAt):r-n}),[B,et]);(0,P.useEffect)(()=>{z.kind===`turn`&&N.getState().reconcileTurnSelection(r,H.map(e=>e.turnId))},[z,H,r]);let U=z.kind===`turn`?z.turnId:null,W=z.kind===`unstaged`?`unstaged`:`branch`,G=z.kind===`branch`?z.baseRef:null,ot=z.kind===`turn`?z.filePath:null,st=z.kind===`turn`?z.revealRequestId:0,K=U===null?void 0:H.find(e=>e.turnId===U)??H[0],q=K&&(K.checkpointTurnCount??B[K.turnId]),J=H[0],ct=U===null?W===`unstaged`?`Working tree`:`Branch changes`:K?.turnId===J?.turnId?`Latest turn`:`Turn ${q??`?`}`,lt=K?`turn:${K.turnId}`:W,Y=`${r.environmentId}:${r.threadId}:${lt}`,ut=Se.scopeKey===Y?Se.fileKeys:it,dt=K?`Turn ${q??`?`}`:W===`unstaged`?`Working tree`:`Branch changes`,ft=(0,P.useMemo)(()=>typeof q==`number`?{fromTurnCount:Math.max(0,q-1),toTurnCount:q}:null,[q]),pt=qe({environmentId:F?.environmentId??null,threadId:We,fromTurnCount:ft?.fromTurnCount??null,toTurnCount:ft?.toTurnCount??null,ignoreWhitespace:x,cacheScope:K?`turn:${K.turnId}`:null},{enabled:$e&&K!==void 0}),mt=a(U===null&&F&&L?tt.diffPreview({environmentId:F.environmentId,input:{cwd:L,...G?{baseRef:G}:{},ignoreWhitespace:x}}):null),ht=U===null&&mt.error?.includes(`configured workspace root`)===!0&&R?.cwd!==void 0&&R.cwd!==L,gt=a(ht&&F&&R?tt.diffPreview({environmentId:F.environmentId,input:{cwd:R.cwd,...G?{baseRef:G}:{},ignoreWhitespace:x}}):null),X=ht?gt:mt,Z=X.data?.sources.find(e=>e.kind===(W===`unstaged`?`working-tree`:`branch-range`)),_t=a(U===null&&W===`branch`&&F&&X.data?.cwd?Oe.listRefs({environmentId:F.environmentId,input:{cwd:X.data.cwd,includeMatchingRemoteRefs:!0,refKind:`local`,...O.trim().length>0?{query:O.trim()}:{},limit:100}}):null),vt=a(U===null&&W===`branch`&&F&&X.data?.cwd?Oe.listRefs({environmentId:F.environmentId,input:{cwd:X.data.cwd,includeMatchingRemoteRefs:!0,refKind:`remote`,...O.trim().length>0?{query:O.trim()}:{},limit:100}}):null),yt=nt(_t.data?.refs.filter(e=>e.name!==Z?.headRef)??[],vt.data?.refs??[]),bt=rt(yt,O),xt=e=>G&&G===e.remote?.name?G:e.local?.name??e.remote?.name??e.id,St=[V,...yt.map(xt)],Ct=[...O.trim().length===0?[V]:[],...bt.map(xt)],wt=Z?.diff,Tt=K?pt.data?.diff:wt,Et=!K&&Z?.truncated===!0,Dt=K?pt.isPending:X.isPending,Ot=K?pt.error:X.error,kt=typeof Tt==`string`&&Tt.trim().length===0,Q=(0,P.useMemo)(()=>Ve(Tt,`diff-panel:${i}`,{compactPartialHunkOffsets:U===null}),[i,Tt,U]),At=(0,P.useMemo)(()=>!Q||Q.kind!==`files`?[]:Q.files.toSorted((e,t)=>we(e).localeCompare(we(t),void 0,{numeric:!0,sensitivity:`base`})),[Q]),$=(0,P.useMemo)(()=>At.map(e=>{let t=Fe(e);return{fileDiff:e,filePath:we(e),fileKey:t,collapsed:ut.has(t)}}),[ut,At]),jt=(0,P.useMemo)(()=>$.map(e=>e.fileKey),[$]),Mt=M(jt,ut),Nt=(0,P.useMemo)(()=>je(At),[At]);(0,P.useEffect)(()=>{if(!ot)return;let e=$.find(e=>e.filePath===ot);e&&Ue.current?.scrollTo({type:`item`,id:e.fileKey,align:`start`})},[$,ot,st]);let Pt=ke({threadRef:r,workspaceRoot:L??null}),Ft=(0,P.useCallback)(e=>{Ke({threadRef:r,filePath:e,activeCwd:L,openFileSurface:Pt,openInEditor:e=>{(async()=>{let t=await Ze(e);t._tag===`Failure`&&!S(t)&&console.warn(`Failed to open diff file in editor.`,{operation:`open-diff-file`,environmentId:r.environmentId,threadId:r.threadId,...oe(ae(t))})})()}})},[L,Pt,Ze,r]),It=(0,P.useCallback)(e=>{Be(t=>{let n=new Set(t.scopeKey===Y?t.fileKeys:[]);return n.has(e)?n.delete(e):n.add(e),{scopeKey:Y,fileKeys:n}})},[Y]),Lt=(0,P.useCallback)(()=>{Be(e=>{let t=e.scopeKey===Y?e.fileKeys:it;return{scopeKey:Y,fileKeys:k(jt,t)}})},[Y,jt]),Rt=e=>{N.getState().selectTurn(r,e)},zt=e=>{N.getState().selectGitScope(r,e)},Bt=e=>{N.getState().selectBranchBaseRef(r,e)};return(0,I.jsx)(_e,{mode:e,header:(0,I.jsxs)(I.Fragment,{children:[(0,I.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-3 [-webkit-app-region:no-drag]`,children:[(0,I.jsxs)(te,{children:[(0,I.jsxs)(m,{className:`inline-flex h-6 max-w-full items-center gap-1 rounded-md bg-muted/70 px-2 text-xs font-medium text-foreground outline-none transition-colors hover:bg-muted focus-visible:ring-2 focus-visible:ring-ring`,"aria-label":`Diff scope: ${ct}`,children:[(0,I.jsx)(`span`,{className:`truncate`,children:ct}),(0,I.jsx)(v,{className:`size-3.5 shrink-0 text-muted-foreground`})]}),(0,I.jsxs)(f,{align:`start`,className:`w-60`,children:[(0,I.jsx)(s,{className:U===null&&W===`unstaged`?`bg-foreground/[0.08]`:void 0,onClick:()=>zt(`unstaged`),children:(0,I.jsx)(`span`,{children:`Working tree`})}),(0,I.jsx)(s,{className:U===null&&W===`branch`?`bg-foreground/[0.08]`:void 0,onClick:()=>zt(`branch`),children:(0,I.jsx)(`span`,{children:`Branch changes`})}),(0,I.jsx)(s,{className:U!==null&&K?.turnId===J?.turnId?`bg-foreground/[0.08]`:void 0,onClick:()=>{J&&Rt(J.turnId)},children:(0,I.jsx)(`span`,{children:`Latest turn`})}),(0,I.jsxs)(c,{children:[(0,I.jsx)(re,{children:`Turn`}),(0,I.jsx)(ie,{className:`w-64`,children:H.map(e=>{let t=e.checkpointTurnCount??B[e.turnId]??`?`;return(0,I.jsxs)(s,{className:e.turnId===K?.turnId?`bg-foreground/[0.08]`:void 0,onClick:()=>Rt(e.turnId),children:[(0,I.jsxs)(`span`,{children:[`Turn `,t]}),(0,I.jsx)(`span`,{className:`ml-auto text-xs tabular-nums text-muted-foreground`,children:He(e.completedAt,l.timestampFormat)})]},e.turnId)})})]})]})]}),U===null&&W===`branch`&&Z?.baseRef&&(0,I.jsxs)(`div`,{className:`flex min-w-0 max-w-full items-center gap-2 overflow-hidden text-xs text-muted-foreground`,title:`${Z.headRef??`HEAD`} → ${Z.baseRef}`,"aria-label":`Comparing ${Z.headRef??`HEAD`} against ${Z.baseRef}`,children:[(0,I.jsx)(`span`,{className:`min-w-0 max-w-48 truncate`,children:Z.headRef??`HEAD`}),(0,I.jsx)(Re,{className:`size-3.5 shrink-0 opacity-70`}),(0,I.jsxs)(Me,{items:St,filteredItems:Ct,value:G??V,onOpenChange:e=>{e||ve(``)},onValueChange:e=>{e&&Bt(e===V?null:e)},children:[(0,I.jsxs)(be,{className:`inline-flex min-w-0 max-w-48 items-center gap-1 overflow-hidden rounded-md px-1.5 py-1 outline-none transition-colors hover:bg-muted hover:text-foreground focus-visible:ring-2 focus-visible:ring-ring`,"aria-label":`Change comparison target. Currently ${Z.baseRef}`,children:[(0,I.jsx)(`span`,{className:`min-w-0 truncate`,children:Z.baseRef}),(0,I.jsx)(v,{className:`size-3.5 shrink-0 opacity-70`})]}),(0,I.jsxs)(ze,{align:`start`,className:`w-72 min-w-0 max-w-[calc(100vw-1rem)] overflow-hidden [&>[data-slot=combobox-popup]]:min-w-0 [&>[data-slot=combobox-popup]]:overflow-hidden`,children:[(0,I.jsx)(`div`,{className:`min-w-0 shrink-0 px-3 pt-2.5`,children:(0,I.jsxs)(`div`,{className:`relative -translate-y-px border-b border-border/70 pb-1.5 transition-colors focus-within:border-ring`,children:[(0,I.jsx)(ge,{"aria-hidden":`true`,className:`pointer-events-none absolute top-1.5 left-0 size-4 shrink-0 text-muted-foreground/55`}),(0,I.jsx)(Ee,{className:`[&_input]:h-6.5 [&_input]:ps-5 [&_input]:font-sans [&_input]:leading-6.5`,inputClassName:`rounded-none bg-transparent text-sm`,placeholder:`Search refs...`,showTrigger:!1,size:`sm`,unstyled:!0,value:O,onChange:e=>ve(e.target.value)})]})}),(0,I.jsxs)(`div`,{className:`grid shrink-0 grid-cols-[1rem_minmax(0,1fr)] items-center gap-2 border-b border-border/70 ps-3 pe-6.5 pt-2 pb-1.5 font-medium text-[10px] text-muted-foreground uppercase tracking-wide`,children:[(0,I.jsx)(`span`,{"aria-hidden":`true`}),(0,I.jsxs)(`div`,{className:`grid min-w-0 grid-cols-[minmax(0,1fr)_2rem] items-center`,children:[(0,I.jsx)(`span`,{children:`Branch`}),(0,I.jsx)(`span`,{className:`text-right`,children:`Remote`})]})]}),(0,I.jsx)(Le,{children:`No matching refs.`}),(0,I.jsxs)(Pe,{className:`max-h-64 min-w-0 overflow-x-hidden`,children:[(0,I.jsx)(ye,{className:`h-8 w-full min-w-0 grid-cols-[1rem_minmax(0,1fr)] py-0`,contentClassName:`w-full min-w-0 overflow-hidden`,value:V,children:(0,I.jsx)(`span`,{className:`block min-w-0 truncate`,children:`Automatic`})}),yt.map(e=>{let t=xt(e),n=e.local!==null&&e.remote!==null,r=e.remote?.name===t;return(0,I.jsx)(ye,{className:`h-8 w-full min-w-0 grid-cols-[1rem_minmax(0,1fr)] py-0`,contentClassName:`w-full min-w-0 overflow-hidden`,value:t,children:(0,I.jsxs)(`div`,{className:`grid w-full min-w-0 grid-cols-[minmax(0,1fr)_2rem] items-center overflow-hidden`,children:[(0,I.jsx)(`span`,{className:`block min-w-0 truncate pe-2`,children:e.label}),n?(0,I.jsx)(`div`,{className:`flex justify-end`,onClick:e=>e.stopPropagation(),onPointerDown:e=>e.stopPropagation(),children:(0,I.jsx)(Ae,{"aria-label":`Use remote version of ${e.label}`,checked:r,className:`[--thumb-size:--spacing(3)]`,onCheckedChange:t=>{let n=t?e.remote?.name:e.local?.name;n&&Bt(n)}})}):e.remote?(0,I.jsx)(`span`,{className:`flex justify-end text-muted-foreground`,title:`Remote only`,children:(0,I.jsx)(T,{"aria-hidden":`true`,className:`size-3`})}):null]})},e.id)})]})]})]})]})]}),(0,I.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1 [-webkit-app-region:no-drag]`,children:[$.length>0&&(0,I.jsx)(Te,{additions:Nt.additions,deletions:Nt.deletions,className:`mr-1 text-[11px]`,layout:`inline`}),$.length>0&&(0,I.jsxs)(b,{children:[(0,I.jsx)(D,{render:(0,I.jsx)(o,{type:`button`,size:`icon-xs`,variant:`outline`,"aria-label":Mt?`Expand all files`:`Collapse all files`,onClick:Lt}),children:Mt?(0,I.jsx)(Ne,{className:`size-3`}):(0,I.jsx)(se,{className:`size-3`})}),(0,I.jsx)(g,{side:`top`,children:Mt?`Expand all files`:`Collapse all files`})]}),(0,I.jsxs)(A,{className:`shrink-0`,variant:`outline`,size:`xs`,value:[d],onValueChange:e=>{let t=e[0];(t===`stacked`||t===`split`)&&ne(t)},children:[(0,I.jsx)(le,{"aria-label":`Stacked diff view`,value:`stacked`,children:(0,I.jsx)(j,{className:`size-3`})}),(0,I.jsx)(le,{"aria-label":`Split diff view`,value:`split`,children:(0,I.jsx)(ce,{className:`size-3`})})]}),(0,I.jsxs)(b,{children:[(0,I.jsx)(D,{render:(0,I.jsx)(le,{"aria-label":h?`Disable diff line wrapping`:`Enable diff line wrapping`,variant:`outline`,size:`xs`,pressed:h,onPressedChange:e=>{y(!!e)}}),children:(0,I.jsx)(pe,{className:`size-3`})}),(0,I.jsx)(g,{side:`top`,children:h?`Disable line wrapping`:`Enable line wrapping`})]}),(0,I.jsxs)(b,{children:[(0,I.jsx)(D,{render:(0,I.jsx)(le,{"aria-label":x?`Show whitespace changes`:`Hide whitespace changes`,variant:`outline`,size:`xs`,pressed:x,onPressedChange:e=>{C(!!e)}}),children:(0,I.jsx)(Ge,{className:`size-3`})}),(0,I.jsx)(g,{side:`top`,children:x?`Show whitespace changes`:`Hide whitespace changes`})]})]})]}),children:F?$e?U!==null&&H.length===0?(0,I.jsx)(`div`,{className:`flex flex-1 items-center justify-center px-5 text-center text-xs text-muted-foreground/70`,children:`No completed turns yet.`}):(0,I.jsx)(I.Fragment,{children:(0,I.jsxs)(`div`,{className:`diff-panel-viewport flex min-h-0 min-w-0 flex-1 flex-col overflow-hidden`,children:[Et&&(0,I.jsx)(`p`,{className:`shrink-0 border-b border-border/70 bg-muted/40 px-3 py-1.5 text-[11px] text-muted-foreground`,children:`This diff was truncated because it exceeded the preview limit. The changes shown are incomplete.`}),Ot&&!Q&&(0,I.jsx)(`div`,{className:`px-3`,children:(0,I.jsx)(`p`,{className:`mb-2 text-[11px] text-red-500/80`,children:Ot})}),Q?Q.kind===`files`?(0,I.jsx)(`div`,{className:`min-h-0 flex-1`,onClickCapture:e=>{let t=(e.nativeEvent.composedPath?.()??[]).find(e=>e instanceof HTMLElement&&e.hasAttribute(`data-title`))?.textContent?.trim();t&&Ft(t)},children:(0,I.jsx)(Xe,{viewerRef:Ue,className:`diff-render-surface h-full min-h-0 overflow-auto`,files:$,sectionId:lt,sectionTitle:dt,composerDraftTarget:t,renderHeaderPrefix:(e,t,n)=>{let r=we(e);return(0,I.jsxs)(b,{children:[(0,I.jsx)(D,{render:(0,I.jsx)(`button`,{type:`button`,className:u(`inline-flex size-5 shrink-0 cursor-pointer items-center justify-center rounded-sm border-0 bg-transparent p-0 transition-colors hover:bg-foreground/10 focus-visible:outline-hidden`,xe(e)),"aria-label":n?`Expand ${r}`:`Collapse ${r}`,"aria-expanded":!n,onClick:e=>{e.stopPropagation(),It(t)}}),children:n?(0,I.jsx)(E,{className:`size-4`}):(0,I.jsx)(v,{className:`size-4`})}),(0,I.jsx)(g,{side:`top`,children:n?`Expand diff`:`Collapse diff`})]})},options:{diffStyle:d===`split`?`split`:`unified`,lineDiffType:`none`,overflow:h?`wrap`:`scroll`,theme:Ce(i),themeType:i,unsafeCSS:at,stickyHeaders:!0,itemMetrics:{diffHeaderHeight:33},layout:{paddingTop:0,paddingBottom:8,gap:8}}},Y??lt)}):(0,I.jsx)(`div`,{className:`min-h-0 flex-1 overflow-auto p-2`,children:(0,I.jsxs)(`div`,{className:`space-y-2`,children:[(0,I.jsx)(`p`,{className:`text-[11px] text-muted-foreground/75`,children:Q.reason}),(0,I.jsx)(`pre`,{className:u(`max-h-[72vh] rounded-md border border-border/70 bg-background/70 p-3 font-mono text-[11px] leading-relaxed text-muted-foreground/90`,h?`overflow-auto whitespace-pre-wrap wrap-break-word`:`overflow-auto`),children:Q.text})]})}):Dt?(0,I.jsx)(fe,{label:K?`Loading checkpoint diff...`:W===`unstaged`?`Loading working tree diff...`:`Loading branch diff...`}):(0,I.jsx)(`div`,{className:`flex h-full items-center justify-center px-3 py-2 text-xs text-muted-foreground/70`,children:(0,I.jsx)(`p`,{children:kt?`No net changes in this selection.`:`No patch available for this selection.`})})]})}):(0,I.jsx)(`div`,{className:`flex flex-1 items-center justify-center px-5 text-center text-xs text-muted-foreground/70`,children:`Turn diffs are unavailable because this project is not a git repository.`}):(0,I.jsx)(`div`,{className:`flex flex-1 items-center justify-center px-5 text-center text-xs text-muted-foreground/70`,children:`Select a thread to inspect turn diffs.`})})}export{ve as DiffWorkerPoolProvider,H as default};
98
- //# sourceMappingURL=DiffPanel-LdVJVEA7.js.map
98
+ //# sourceMappingURL=DiffPanel-BmpVDbgX.js.map
@@ -1,4 +1,4 @@
1
- import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{n as t,r as n,t as r}from"./compiler-runtime-CLAvuQ-D.js";import{Fa as i,Ol as a,Q as o,Qa as s,Sl as c,St as l,Tt as u,U as d,Vr as f,_t as p,b as m,bt as h,ft as g,gt as _,h as v,ht as y,jt as b,kl as x,kt as S,n as C,o as w,pl as T,pt as E,pu as D,qp as O,qr as ee,vu as k,yl as te,yt as A}from"./previewAssetResource-DEZquWCb.js";import{n as j,r as M,t as N}from"./renderFileChildren-BJJohpja.js";import{$n as P,Ar as ne,Cn as re,D as ie,Dn as ae,Dr as oe,E as se,En as ce,Er as le,Fn as ue,Fr as de,Gn as fe,Gt as pe,Jr as me,Jt as he,Kt as F,Or as ge,Pr as _e,Qn as ve,Rn as ye,Rr as be,T as xe,Tr as Se,Un as Ce,Vr as we,Wn as Te,Yt as I,Zn as Ee,Zr as De,Zt as Oe,b as ke,bt as Ae,cn as L,d as je,dt as Me,ei as Ne,er as Pe,et as Fe,f as Ie,fr as Le,hn as Re,ii as ze,it as Be,kr as Ve,l as He,ln as Ue,m as We,nt as Ge,p as Ke,ri as qe,rt as Je,ti as Ye,tr as Xe,u as Ze,ur as Qe,v as $e,w as et,x as tt,y as nt,yt as rt}from"./index-zIgT1Y-z.js";import{a as it,i as at,n as ot,r as R,t as z}from"./fileCommentAnnotations-CKXyKV65.js";var st=c(`file-question-mark`,[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}],[`path`,{d:`M9.1 9a3 3 0 0 1 5.82 1c0 2-3 3-3 3`,key:`mhlwft`}]]),ct=c(`folder-tree`,[[`path`,{d:`M20 10a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1h-2.5a1 1 0 0 1-.8-.4l-.9-1.2A1 1 0 0 0 15 3h-2a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1Z`,key:`hod4my`}],[`path`,{d:`M20 21a1 1 0 0 0 1-1v-3a1 1 0 0 0-1-1h-2.9a1 1 0 0 1-.88-.55l-.42-.85a1 1 0 0 0-.92-.6H13a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1Z`,key:`w4yl2u`}],[`path`,{d:`M3 5a2 2 0 0 0 2 2h3`,key:`f2jnh7`}],[`path`,{d:`M3 3v13a2 2 0 0 0 2 2h3`,key:`k8epm1`}]]),lt=`file-tree-container`,ut=`data-file-tree-style`,dt=`data-file-tree-unsafe-css`,ft=`data-file-tree-scrollbar-measure`,pt=`data-file-tree-scrollbar-gutter-measured`,mt=`--trees-scrollbar-gutter-measured`,ht=`header`,gt=`context-menu`,_t=`context-menu-trigger`,vt=5,yt=1<<vt,bt=yt*4;function xt(){return{childIdByNameId:new Map,childIds:[],childPositionById:new Map,childVisibleChunkSums:null,totalChildSubtreeNodeCount:0,totalChildVisibleSubtreeCount:0}}function St(){return{childIdByNameId:null,childIds:[],childPositionById:null,childVisibleChunkSums:null,totalChildSubtreeNodeCount:0,totalChildVisibleSubtreeCount:0}}function Ct(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 wt(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 Tt(e,t){e.childPositionById!=null&&e.childPositionById.set(t,e.childIds.length),e.childIds.push(t)}function Et(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 Dt(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,jt(e,t)}function Ot(e,t,n,r){if(e.totalChildSubtreeNodeCount+=n,e.totalChildVisibleSubtreeCount+=r,e.childVisibleChunkSums==null||r===0)return;let i=wt(e).get(t);if(i===void 0)return;let a=i>>vt;e.childVisibleChunkSums[a]+=r}function kt(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=Mt(e,t,a,i);return{...r,childVisibleIndex:n-r.localVisibleIndex}}i-=o,a+=yt}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 At(e,t,n){let r=0,i=t.childVisibleChunkSums,a=0;if(i!=null){let e=n>>vt;for(let t=0;t<e;t+=1)r+=i[t]??0;a=e<<vt}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 jt(e,t){if(t.childIds.length<bt){t.childVisibleChunkSums=null;return}let n=Math.ceil(t.childIds.length/yt),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>>vt]+=a.visibleSubtreeCount)}t.childVisibleChunkSums=r}function Mt(e,t,n,r){let i=Math.min(t.childIds.length,n+yt),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 Nt=7,Pt=3,Ft=1<<Pt,It=4;function Lt(e,t,n=0){return e<<It|n<<Pt|t}function Rt(e){return e.depthAndFlags>>>It}function zt(e){return(e.depthAndFlags&Ft)>>Pt}function B(e){return(e.depthAndFlags&Ft)!==0}function Bt(e){return e.depthAndFlags&Nt}function Vt(e,t){return(Bt(e)&t)!==0}function Ht(e,t){e.depthAndFlags|=t}function Ut(e,t){e.depthAndFlags=Lt(t,Bt(e),zt(e))}var Wt=Symbol(`benchmarkInstrumentation`);function Gt(e,t){return t==null||Object.defineProperty(e,Wt,{configurable:!0,enumerable:!1,value:t,writable:!1}),e}function Kt(e){return e==null?null:e[Wt]??null}function V(e,t,n){return e==null?n():e.measurePhase(t,n)}function qt(e,t,n){!Number.isFinite(n)||e==null||e.setCounter(t,n)}function Jt(e){return e>=48&&e<=57}function Yt(e){let t=[],n=0,r=0;for(;r<e.length;){for(;r<e.length&&!Jt(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&&Jt(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 Xt(e){let t=e.toLowerCase();return{lowerValue:t,tokens:Yt(t)}}function Zt(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 Qt(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=Zt(e.tokens,t.tokens);return n===0?e.lowerValue===t.lowerValue?0:e.lowerValue<t.lowerValue?-1:1:n}function $t(e,t,n){let r=Qt(n(e),n(t));return r===0?e===t?0:e<t?-1:1:r}function en(e,t){return $t(e,t,Xt)}function tn(e,t){return t===e.segments.length-1?+!!e.isDirectory:1}function nn(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=tn(e,r);return a===tn(t,r)?en(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 rn(e,t){return nn(e,t)}function an(e,t,n){let r=e=>{let t=n.get(e);if(t!=null)return t;let r=Xt(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=tn(e,n);return o===tn(t,n)?$t(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 on(e,t){let n=e.sortKeyById[t];if(n!==void 0)return n;let r=e.valueById[t],i=Xt(r);return e.sortKeyById[t]=i,i}function sn(e={}){return{flattenEmptyDirectories:e.flattenEmptyDirectories!==!1,sort:e.sort??`default`}}function cn(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 ln(e){let{hasTrailingSlash:t,segments:n}=cn(e);return{basename:n[n.length-1]??``,isDirectory:t,path:e,segments:n}}function un(e){if(e.length===0)return{requiresDirectory:!1,segments:[]};let{hasTrailingSlash:t,segments:n}=cn(e);return{requiresDirectory:t,segments:n}}var dn=``;function fn(){let e=new Map;return e.set(dn,0),{idByValue:e,valueById:[dn],sortKeyById:[Xt(dn)]}}function pn(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 mn(e,t){let n=e.valueById[t];if(n===void 0)throw Error(`Unknown segment ID: ${String(t)}`);return n}var hn=Symbol(`pathStorePreparedInputKind`);function gn(e,t){return e[hn]=t,e}function _n(e){return{basename:e.basename,depth:e.segments.length,isDirectory:e.isDirectory,path:e.path,segments:e.segments}}function vn(e,t,n){return n==="default"?rn(e,t):n(_n(e),_n(t))}function yn(){return{depthAndFlags:Lt(0,3,1),nameId:0,parentId:0,subtreeNodeCount:1,visibleSubtreeCount:1}}function bn(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 xn(e){return e.isDirectory?e.segments.length:e.segments.length-1}function Sn(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 Cn(e){return Array.isArray(e)&&e.every(e=>typeof e==`string`)}function wn(e,t={}){return An(e,t).map(e=>e.path)}function Tn(e,t={}){let n=An(e,t);return gn({paths:n.map(e=>e.path),preparedPaths:n},`prepared`)}function En(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 gn({paths:e,presortedPaths:e,presortedPathsContainDirectories:n},`presorted`)}function Dn(e){let t=e,n=t.preparedPaths;if(t[hn]===`prepared`&&n!=null)return n;if(!Sn(n))throw Error(`preparedInput must come from PathStore.prepareInput()`);return n}function On(e){let t=e;return t[hn]===`presorted`&&t.presortedPaths!=null||Cn(t.presortedPaths)?t.presortedPaths:null}function kn(e){let t=e;return typeof t.presortedPathsContainDirectories==`boolean`?t.presortedPathsContainDirectories:null}function An(e,t={}){let n=sn(t),r=Kt(t);qt(r,`workload.inputFiles`,e.length);let i=V(r,`store.preparePathEntries.parse`,()=>e.map(e=>ln(e)));return V(r,`store.preparePathEntries.sort`,()=>i.sort((e,t)=>vn(e,t,n.sort))),i}var jn=class{directories=new Map;directoryStack=[0];presortedDirectoryNodeIds=[];initialExpandedPathSet;createdDirectoriesAllExpanded=!1;createdDirectoryCount=0;lastPreparedPath=null;nodes=[yn()];options;instrumentation;segmentSortKeyCache=new Map;segmentTable=fn();hasDeferredDirectoryIndexes=!1;constructor(e={}){this.instrumentation=Kt(e),this.options=sn(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,xt())}appendPaths(e){return V(this.instrumentation,`store.builder.appendPaths.parse`,()=>this.appendPreparedPaths(e.map(e=>ln(e))))}appendPreparedPaths(e,t=!0){return this.createdDirectoriesAllExpanded=!1,V(this.instrumentation,`store.builder.appendPreparedPaths`,()=>{for(let n of e)this.appendPreparedPath(n,t)}),this}appendPresortedPaths(e,t=null){return V(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:Lt(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:Lt(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:Lt(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=ln(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:Lt(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:Lt(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=ln(t)),this.hasDeferredDirectoryIndexes=!0}finish(e={}){let t=e.skipSubtreeCountPass===!0;return this.hasDeferredDirectoryIndexes?(V(this.instrumentation,`store.builder.buildDirectoryIndexes`,()=>this.buildPresortedFinish(t)),this.hasDeferredDirectoryIndexes=!1):t||V(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"?an(this.lastPreparedPath,e,this.segmentSortKeyCache):vn(this.lastPreparedPath,e,this.options.sort))>0)throw Error(`Builder input must be sorted before appendPaths(): "${e.path}"`)}let n=this.lastPreparedPath,r=xn(e),i=n==null?0:xn(n),a=n==null?0:bn(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=pn(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:Lt(Rt(o)+1,0),nameId:r,parentId:e,subtreeNodeCount:1,visibleSubtreeCount:1}),a?.set(r,s),Tt(i,s),s}createFileChildUnchecked(e,t){let n=pn(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:Lt(Rt(i)+1,0),nameId:n,parentId:e,subtreeNodeCount:1,visibleSubtreeCount:1}),r.childIdByNameId!=null&&r.childIdByNameId.set(n,a),Tt(r,a),a}getOrCreateDirectoryChild(e,t){let n=pn(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&&!B(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:Lt(Rt(i)+1,0,1),nameId:n,parentId:e,subtreeNodeCount:1,visibleSubtreeCount:1}),r.childIdByNameId!=null&&r.childIdByNameId.set(n,a),Tt(r,a),this.directories.set(a,xt()),a}createDirectoryChild(e,t){let n=pn(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:Lt(Rt(i)+1,0,1),nameId:n,parentId:e,subtreeNodeCount:1,visibleSubtreeCount:1}),r.childIdByNameId!=null&&r.childIdByNameId.set(n,a),Tt(r,a),this.directories.set(a,xt()),a}promoteDirectoryToExplicit(e,t){let n=this.nodes[e];if(n===void 0)throw Error(`Unknown directory node ID: ${String(e)}`);if(!B(n))throw Error(`Path is not a directory: "${t}"`);if(Vt(n,1))throw Error(`Duplicate path: "${t}"`);Ht(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,St());let r=-1,i=null;for(let e=1;e<t.length;e++){let a=t[e];if(a==null)continue;if(B(a)){let t=St();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;B(n)&&this.directories.set(t,xt());let r=this.directories.get(n.parentId);r!=null&&(r.childIdByNameId!=null&&r.childIdByNameId.set(n.nameId,t),Tt(r,t))}}computeSubtreeCounts(e){let t=this.nodes[e];if(t===void 0)throw Error(`Unknown node ID: ${String(e)}`);if(!B(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 Dt(this.nodes,n),t.subtreeNodeCount=r,t.visibleSubtreeCount=r,r}};function Mn(e,t=`closed`,n=null){let r=Pn(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 Nn(){return{affectedAncestorIds:new Set,affectedNodeIds:new Set,events:[]}}function Pn(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 Fn(e,t){return Vt(t,2)||e.defaultExpansion===`open`?!0:e.defaultExpansion===`closed`?!1:Rt(t)<=e.defaultExpansion}function In(e,t,n=e.snapshot.nodes[t]){return n==null||!B(n)?!1:e.directoriesOpenByDefault&&!e.hasCollapsedDirectoryOverrides?!0:e.collapsedDirectoryIds.has(t)?!1:e.expandedDirectoryIds.has(t)?!0:Fn(e,n)}function Ln(e,t,n,r=e.snapshot.nodes[t]){if(r==null||!B(r))return;let i=Fn(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 Rn(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 zn(e,t){return e.directoryLoadInfoById.get(t)?.state??`loaded`}function Bn(e,t){let n=Rn(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 Vn(e,t){let n=Rn(e,t);n.activeAttemptId=null,n.errorMessage=null,n.state=`unloaded`}function Hn(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 Un(e,t,n){return e.directoryLoadInfoById.get(t)?.activeAttemptId===n}function Wn(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 Gn(e,t){e.directoryLoadInfoById.delete(t)}function Kn(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 qn(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],canonicalChanged:!0,operation:`add`,path:e.path,projectionChanged:e.projectionChanged,visibleCountDelta:null}}function Jn(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],canonicalChanged:!0,operation:`remove`,path:e.path,projectionChanged:e.projectionChanged,recursive:e.recursive,visibleCountDelta:null}}function Yn(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],canonicalChanged:!0,from:e.from,operation:`move`,projectionChanged:e.projectionChanged,to:e.to,visibleCountDelta:null}}function Xn(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],canonicalChanged:!1,operation:`expand`,path:e.path,projectionChanged:!0,visibleCountDelta:null}}function Zn(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],canonicalChanged:!1,operation:`collapse`,path:e.path,projectionChanged:!0,visibleCountDelta:null}}function Qn(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],canonicalChanged:!1,operation:`mark-directory-unloaded`,path:e.path,projectionChanged:e.projectionChanged,visibleCountDelta:null}}function $n(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 er(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 tr(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 nr(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 rr(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 ir(e,t,n){return{...n,visibleCountDelta:hr(e)-t}}function ar(e,t){let n=hr(e),r=Nn();e.transactionStack.push(r);try{t()}catch(t){throw cr(e,r,!1),t}cr(e,r,!0,hr(e)-n)}function or(e,t){let n=e.instrumentation;if(n==null){sr(e,t);return}V(n,`store.events.record`,()=>sr(e,t))}function sr(e,t){let n=e.transactionStack[e.transactionStack.length-1]??null;if(n==null){pr(e,t);return}n.events.push(t),fr(n,t)}function cr(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?dr(i,t):V(n,`store.events.batch.merge`,()=>dr(i,t));return}let a=lr(t,r),o=e.instrumentation;if(o==null){pr(e,a);return}V(o,`store.events.batch.commit`,()=>pr(e,a))}function lr(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 ur(e,t){for(let n of t.affectedAncestorIds)e.affectedAncestorIds.add(n);for(let n of t.affectedNodeIds)e.affectedNodeIds.add(n)}function dr(e,t){for(let n of t.events)e.events.push(n);ur(e,t)}function fr(e,t){for(let n of t.affectedNodeIds)e.affectedNodeIds.add(n);for(let n of t.affectedAncestorIds)e.affectedAncestorIds.add(n)}function pr(e,t){let n=e.instrumentation;if(n==null){mr(e,t);return}V(n,`store.events.emit`,()=>mr(e,t))}function mr(e,t){e.listeners.get(t.operation)?.forEach(e=>e(t)),e.listeners.get(`*`)?.forEach(e=>e(t))}function hr(e){return e.snapshot.nodes[e.snapshot.rootId]?.visibleSubtreeCount??0}function gr(e,t){if(e.snapshot.options.flattenEmptyDirectories!==!0)return null;let n=e.snapshot.nodes[t];if(n==null||!B(n)||Vt(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||!B(a)?null:i}function _r(e,t){let n=t;for(;;){let t=gr(e,n);if(t==null)return n;n=t}}function vr(e,t){let n=[t],r=t;for(;;){let t=gr(e,r);if(t==null)return n;n.push(t),r=t}}function yr(e,t){let n=t==null?e.snapshot.rootId:Or(e,t);return n==null?[]:Ar(e,n)}function br(e,t){let n=ln(t),r=n.isDirectory?n.segments:n.segments.slice(0,-1),i=Gr(e,Wr(e,r)),{createdNodeIds:a,directoryId:o}=jr(e,r),s=new Set(a),c=o;if(n.isDirectory){let n=W(e,o);if(Vt(n,1))throw Error(`Path already exists: "${t}"`);Ht(n,1),e.pathCacheByNodeId.set(o,{path:t,version:e.pathCacheVersion}),s.add(o)}else c=Nr(e,o,n.basename),s.add(c);Tr(e,o);let l=Gr(e,o);return qn({affectedAncestorIds:Dr(e,c),affectedNodeIds:[...s],path:t,projectionChanged:Kr(i,l)})}function xr(e,t,n){let r=Or(e,t);if(r==null)throw Error(`Path does not exist: "${t}"`);let i=W(e,r);if(Vt(i,2))throw Error(`The root node cannot be removed`);if(B(i)&&U(e,r).childIds.length>0&&n.recursive!==!0)throw Error(`Cannot remove a non-empty directory without recursive: "${t}"`);let a=i.parentId,o=Gr(e,a),s=Hr(e,r);Ir(e,a,r,i.nameId),Ur(e,a),Tr(e,a);let c=Gr(e,a);return Jn({affectedAncestorIds:Dr(e,a),affectedNodeIds:s,path:t,projectionChanged:Kr(o,c),recursive:n.recursive===!0})}function Sr(e,t,n,r){let i=Or(e,t);if(i==null)throw Error(`Source path does not exist: "${t}"`);let a=W(e,i);if(Vt(a,2))throw Error(`The root node cannot be moved`);let o=r.collision??`error`,s=Br(e,i,n),c=Gr(e,a.parentId),l=Gr(e,s.parentId),u=mn(e.snapshot.segmentTable,a.nameId),d=pn(e.snapshot.segmentTable,s.basename);if(s.parentId===a.parentId&&u===s.basename)return null;if(B(a)&&Xr(e,i,s.parentId))throw Error(`Cannot move a directory into one of its descendants`);let f=Ct(e.snapshot.nodes,U(e,s.parentId)).get(d),p=s.existingNodeId??f??null;if(p!=null&&p!==i&&Vr(e,p,o,zt(a))===`skip`)return null;let m=a.parentId;Ir(e,m,i,a.nameId),a.parentId=s.parentId,a.nameId=d,e.pathCacheByNodeId.delete(i),Yr(e,i),Fr(e,s.parentId,i),Ur(e,m),e.pathCacheVersion++,Tr(e,m),s.parentId!==m&&Tr(e,s.parentId);let h=Gr(e,m),g=Gr(e,s.parentId);return Yn({affectedAncestorIds:[...new Set([...Dr(e,m),...Dr(e,s.parentId)])],affectedNodeIds:[i],from:t,projectionChanged:qr([c,l],[h,g]),to:H(e,i)})}function Cr(e,t){let n=e.pathCacheByNodeId.get(t);return n!=null&&n.version===e.pathCacheVersion?n.path:null}function wr(e,t,n){return e.pathCacheByNodeId.set(t,{path:n,version:e.pathCacheVersion}),n}function H(e,t){let n=W(e,t),r=Cr(e,t);if(r!=null)return r;if(Vt(n,2))return wr(e,t,``);let i=H(e,n.parentId),a=mn(e.snapshot.segmentTable,n.nameId),o=i.length===0?a:`${i}${a}`;return wr(e,t,B(n)?`${o}/`:o)}function Tr(e,t){let n=e.instrumentation;if(n==null){Qr(e,t);return}V(n,`store.recomputeCountsUpwardFrom`,()=>Qr(e,t))}function Er(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||!B(o)){Zr(e,a,o,!0),n.pop();continue}let s=i.get(a);if(s==null||t[1]>=s.childIds.length){Zr(e,a,o,!0),n.pop();continue}let c=s.childIds[t[1]++];n.push([c,0])}}function Dr(e,t){let n=[],r=t;for(;r!=null;){let t=W(e,r);if(n.push(r),r===e.snapshot.rootId)break;r=t.parentId}return n}function Or(e,t){if(t.length===0)return e.snapshot.rootId;let n=un(t);return kr(e,n.segments,n.requiresDirectory)}function kr(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=U(e,r),a=Ct(e.snapshot.nodes,i).get(t);if(a===void 0)return null;r=a}let i=W(e,r);return n&&!B(i)?null:r}function U(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 W(e,t){let n=e.snapshot.nodes[t];if(n===void 0||Vt(n,4))throw Error(`Unknown node ID: ${String(t)}`);return n}function Ar(e,t){let n=e.snapshot.nodes[t];if(n===void 0||Vt(n,4))return[];if(!B(n))return[H(e,t)];if(U(e,t).childIds.length===0)return Vt(n,1)&&!Vt(n,2)?[H(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||Vt(n,4)){i.pop();continue}if(!B(n)){r.push(H(e,t.nodeId)),i.pop();continue}let a=U(e,t.nodeId);if(a.childIds.length===0){Vt(n,1)&&!Vt(n,2)&&r.push(H(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 jr(e,t){let n=[],r=e.snapshot.rootId;for(let i of t){let t=pn(e.snapshot.segmentTable,i),a=U(e,r),o=Ct(e.snapshot.nodes,a).get(t);if(o!==void 0){if(!B(W(e,o)))throw Error(`Cannot create a directory that collides with an existing file: "${i}"`);r=o;continue}r=Mr(e,r,t),n.push(r)}return{createdNodeIds:n,directoryId:r}}function Mr(e,t,n){let r=W(e,t),i=e.snapshot.nodes.length;return e.snapshot.nodes.push({depthAndFlags:Lt(Rt(r)+1,0,1),nameId:n,parentId:t,subtreeNodeCount:1,visibleSubtreeCount:1}),e.snapshot.directories.set(i,xt()),Fr(e,t,i),e.collapseNewDirectoriesByDefault&&(e.collapsedDirectoryIds.add(i),e.hasCollapsedDirectoryOverrides=!0),e.activeNodeCount++,i}function Nr(e,t,n){let r=pn(e.snapshot.segmentTable,n),i=U(e,t);if(Ct(e.snapshot.nodes,i).has(r))throw Error(`Path already exists: "${ei(e,t,n)}"`);let a=W(e,t),o=e.snapshot.nodes.length;return e.snapshot.nodes.push({depthAndFlags:Lt(Rt(a)+1,0),nameId:r,parentId:t,subtreeNodeCount:1,visibleSubtreeCount:1}),Fr(e,t,o),e.activeNodeCount++,o}function Pr(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}Lr(e,n,o)<0?i=a:r=a+1}return r}function Fr(e,t,n){let r=U(e,t),i=W(e,n);Ct(e.snapshot.nodes,r).set(i.nameId,n),Ot(r,n,i.subtreeNodeCount,i.visibleSubtreeCount);let a=Pr(e,r,n);r.childIds.splice(a,0,n),Et(r,a),jt(e.snapshot.nodes,r)}function Ir(e,t,n,r){let i=U(e,t),a=wt(i),o=a.get(n)??-1;Ct(e.snapshot.nodes,i).delete(r),a.delete(n);let s=e.snapshot.nodes[n];s!=null&&Ot(i,n,-s.subtreeNodeCount,-s.visibleSubtreeCount),o>=0&&(i.childIds.splice(o,1),Et(i,o),jt(e.snapshot.nodes,i))}function Lr(e,t,n){let r=e.snapshot.options.sort;return r==="default"?Rr(e,t,n):r(zr(e,t),zr(e,n))}function Rr(e,t,n){let r=W(e,t),i=W(e,n),a=B(r);if(a!==B(i))return a?-1:1;let o=Qt(on(e.snapshot.segmentTable,r.nameId),on(e.snapshot.segmentTable,i.nameId));if(o!==0)return o;let s=mn(e.snapshot.segmentTable,r.nameId),c=mn(e.snapshot.segmentTable,i.nameId);return s===c?t<n?-1:1:s<c?-1:1}function zr(e,t){let n=W(e,t),r=H(e,t),i=B(n),a=i?r.slice(0,-1):r;return{basename:mn(e.snapshot.segmentTable,n.nameId),depth:Rt(n),isDirectory:i,path:r,segments:a.length===0?[]:a.split(`/`)}}function Br(e,t,n){let r=W(e,t),i=Or(e,n);if(i!=null){let t=W(e,i);if(B(t))return{basename:mn(e.snapshot.segmentTable,r.nameId),existingNodeId:null,parentId:i};let a=un(n).segments;return{basename:a[a.length-1]??``,existingNodeId:i,parentId:t.parentId}}let a=un(n),o=a.segments[a.segments.length-1]??``,s=a.segments.slice(0,-1),c=s.length===0?e.snapshot.rootId:kr(e,s,!0);if(c==null)throw Error(`Destination parent does not exist: "${n}"`);return{basename:o,existingNodeId:null,parentId:c}}function Vr(e,t,n,r){if(n===`skip`)return`skip`;if(n===`error`)throw Error(`Destination already exists: "${H(e,t)}"`);let i=W(e,t);if(zt(i)!==r)throw Error(`replace collision requires the same source and destination kinds`);if(B(i)&&U(e,t).childIds.length>0)throw Error(`replace collision does not support non-empty directories`);let a=i.parentId,o=i.nameId;return Hr(e,t),Ir(e,a,t,o),Ur(e,a),Tr(e,a),`handled`}function Hr(e,t){let n=[],r=[{nodeId:t,visitedChildren:!1}];for(;r.length>0;){let t=r.pop();if(t==null)break;let i=W(e,t.nodeId);if(t.visitedChildren||!B(i)){B(i)&&e.snapshot.directories.delete(t.nodeId),Ht(i,4),e.pathCacheByNodeId.delete(t.nodeId),e.collapsedDirectoryIds.delete(t.nodeId)&&(e.hasCollapsedDirectoryOverrides=e.collapsedDirectoryIds.size>0),e.expandedDirectoryIds.delete(t.nodeId),Gn(e,t.nodeId),e.activeNodeCount--,n.push(t.nodeId);continue}r.push({nodeId:t.nodeId,visitedChildren:!0});let a=U(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 Ur(e,t){let n=t;for(;n!=null;){let t=W(e,n);if(!B(t)||Vt(t,2)||U(e,n).childIds.length>0)return;Ht(t,1),n=t.parentId===n?null:t.parentId}}function Wr(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=Ct(e.snapshot.nodes,U(e,n)).get(t);if(i==null||!B(W(e,i)))break;n=i}return n}function Gr(e,t){let n=Jr(e,t);if(n==null)return null;let r=_r(e,n),i=W(e,r),a=n===r?null:vr(e,n).map(t=>H(e,t));return JSON.stringify({flattenedSegmentPaths:a,hasChildren:U(e,r).childIds.length>0,path:H(e,r),terminalKind:zt(i)})}function Kr(e,t){return qr([e],[t])}function qr(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 Jr(e,t){let n=t;for(;n!=null;){let t=W(e,n);if(!B(t)||Vt(t,2))return null;if(!In(e,n,t))return n;n=t.parentId}return null}function Yr(e,t){let n=W(e,t);if(Ut(n,(t===e.snapshot.rootId?-1:Rt(W(e,n.parentId)))+1),!B(n))return;let r=U(e,t);for(let t of r.childIds)Yr(e,t)}function Xr(e,t,n){let r=n;for(;r!=null;){if(r===t)return!0;let n=W(e,r);if(r===e.snapshot.rootId)return!1;r=n.parentId}return!1}function Zr(e,t,n=W(e,t),r=!1){let i=e.instrumentation;if(i==null){$r(e,t,n,r);return}V(i,`store.recomputeNodeCounts`,()=>$r(e,t,n,r))}function Qr(e,t){let n=t;for(;n!=null;){let t=W(e,n),r=t.subtreeNodeCount,i=t.visibleSubtreeCount;if(Zr(e,n,t),n===e.snapshot.rootId)return;let a=t.subtreeNodeCount-r,o=t.visibleSubtreeCount-i,s=t.parentId;(a!==0||o!==0)&&Ot(U(e,s),n,a,o),n=s}}function $r(e,t,n,r){if(!B(n)){n.subtreeNodeCount=1,n.visibleSubtreeCount=1;return}let i=U(e,t);if(r){let t=e.instrumentation;t==null?Dt(e.snapshot.nodes,i):V(t,`store.recomputeNodeCounts.rebuildChildAggregates`,()=>Dt(e.snapshot.nodes,i))}let a=1+i.totalChildSubtreeNodeCount,o=i.totalChildVisibleSubtreeCount;if(n.subtreeNodeCount=a,Vt(n,2)){n.visibleSubtreeCount=o;return}n.visibleSubtreeCount=gr(e,t)==null?In(e,t,n)?1+o:1:o}function ei(e,t,n){let r=H(e,t);return r.length===0?n:`${r}${n}`}function ti(e){return e!=null&&!Vt(e,4)}function ni(e,t){let n=e.snapshot.nodes[t];return!ti(n)||!B(n)||Vt(n,2)?null:n}function ri(e){let t=0;for(let[n,r]of e.pathCacheByNodeId)r.version===e.pathCacheVersion&&ti(e.snapshot.nodes[n])&&(t+=1);return t}function ii(e){return Math.max(0,e.valueById.length-1)}function ai(e){return{activeNodeCount:e.activeNodeCount,cachedPathEntryCount:ri(e),loadInfoEntryCount:e.directoryLoadInfoById.size,segmentCount:ii(e.snapshot.segmentTable),totalNodeSlotCount:Math.max(0,e.snapshot.nodes.length-1)}}function oi(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 si(e){let t=[],n=[];for(let n of e.collapsedDirectoryIds)ni(e,n)!=null&&t.push(H(e,n));for(let t of e.expandedDirectoryIds)ni(e,t)!=null&&n.push(H(e,t));return{collapsedPaths:t,expandedPaths:n}}function ci(e){let t=[];for(let[n,r]of e.directoryLoadInfoById)ni(e,n)==null||zn(e,n)===`loaded`||t.push({info:{activeAttemptId:null,errorMessage:r.errorMessage,nextAttemptId:r.nextAttemptId,state:r.state},path:H(e,n)});return t}function li(e,t){e.collapsedDirectoryIds.clear(),e.hasCollapsedDirectoryOverrides=!1,e.expandedDirectoryIds.clear();for(let n of t.expandedPaths){let t=Or(e,n);t!=null&&Ln(e,t,!0,W(e,t))}for(let n of t.collapsedPaths){let t=Or(e,n);t!=null&&Ln(e,t,!1,W(e,t))}}function ui(e,t){e.directoryLoadInfoById.clear();for(let n of t){let t=Or(e,n.path);t!=null&&ni(e,t)!=null&&e.directoryLoadInfoById.set(t,{activeAttemptId:null,errorMessage:n.info.errorMessage,nextAttemptId:n.info.nextAttemptId,state:n.info.state})}}function di(e){e.pathCacheVersion+=1,e.pathCacheByNodeId.clear(),e.pathCacheByNodeId.set(e.snapshot.rootId,{path:``,version:e.pathCacheVersion})}function fi(e){let t=e.snapshot.segmentTable,n=fn();for(let r of e.snapshot.nodes)if(ti(r)){if(Vt(r,2)){r.nameId=0;continue}r.nameId=pn(n,mn(t,r.nameId))}e.snapshot.segmentTable=n}function pi(e){for(let[t,n]of e.snapshot.directories){let r=e.snapshot.nodes[t];if(!ti(r)||!B(r)){e.snapshot.directories.delete(t);continue}let i=n.childIds.filter(n=>{let r=e.snapshot.nodes[n];return ti(r)&&r.parentId===t});n.childIds=i,n.childIdByNameId=new Map(i.map(t=>[W(e,t).nameId,t])),n.childPositionById=new Map(i.map((e,t)=>[e,t])),Dt(e.snapshot.nodes,n)}}function mi(e){let t=e.snapshot.nodes.length-1;for(;t>e.snapshot.rootId;){let n=e.snapshot.nodes[t];if(ti(n))break;--t}e.snapshot.nodes.length=t+1}function hi(e){let t=si(e),n=ci(e);V(e.instrumentation,`store.cleanup.stable.clearPathCaches`,()=>di(e)),V(e.instrumentation,`store.cleanup.stable.rebuildSegmentTable`,()=>fi(e)),V(e.instrumentation,`store.cleanup.stable.rebuildDirectoryIndexes`,()=>pi(e)),V(e.instrumentation,`store.cleanup.stable.trimTrailingRemovedNodeSlots`,()=>mi(e)),V(e.instrumentation,`store.cleanup.stable.restoreExpansionOverrides`,()=>li(e,t)),V(e.instrumentation,`store.cleanup.stable.restoreDirectoryLoadInfos`,()=>ui(e,n)),V(e.instrumentation,`store.cleanup.stable.recomputeCounts`,()=>Er(e,e.snapshot.rootId))}function gi(e){let t=si(e),n=ci(e),r=V(e.instrumentation,`store.cleanup.aggressive.listPaths`,()=>yr(e)),i=Gt({...e.snapshot.options},e.instrumentation),a=V(e.instrumentation,`store.cleanup.aggressive.rebuildSnapshot`,()=>{let e=new jn(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,V(e.instrumentation,`store.cleanup.aggressive.restoreExpansionOverrides`,()=>li(e,t)),V(e.instrumentation,`store.cleanup.aggressive.restoreDirectoryLoadInfos`,()=>ui(e,n)),V(e.instrumentation,`store.cleanup.aggressive.recomputeCounts`,()=>Er(e,e.snapshot.rootId))}function _i(e){for(let t of e.directoryLoadInfoById.values())if(t.state===`loading`&&t.activeAttemptId!=null)return!0;return!1}function vi(e,t){let n=ai(e);t===`stable`?V(e.instrumentation,`store.cleanup.stable`,()=>hi(e)):V(e.instrumentation,`store.cleanup.aggressive`,()=>gi(e));let r=ai(e);return oi(t,t===`stable`,n,r)}var yi=64;function bi(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 xi(e){return W(e,e.snapshot.rootId).visibleSubtreeCount}function Si(e,t,n,r){let i=W(e,t.terminalNodeId),a=Math.max(1,i.visibleSubtreeCount);return Math.min(r-1,n+a-1)}function Ci(e,t,n,r){return{ancestorPaths:r,index:t.index,posInSet:t.posInSet,row:Hi(e,t.cursor),setSize:t.setSize,subtreeEndIndex:Si(e,t.cursor,t.index,n)}}function wi(e,t,n,r,i,a){let o=U(e,t),{childIndex:s,childVisibleIndex:c,localVisibleIndex:l}=kt(e.snapshot.nodes,o,n),u=o.childIds[s];if(u==null)throw Error(`Visible index ${String(n)} is out of range`);return Ti(e,u,l,r+c,i+1,s,o.childIds.length,a)}function Ti(e,t,n,r,i,a,o,s){if(!B(W(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=Ii(e,t,i);if(n===0)return{ancestors:s,cursor:c,index:r,posInSet:a,setSize:o};let l=W(e,c.terminalNodeId);if(!B(l)||!In(e,c.terminalNodeId,l))throw Error(`Visible index ${String(n)} is out of range for collapsed directory`);return wi(e,c.terminalNodeId,n-1,r+1,c.visibleDepth,[...s,{cursor:c,index:r,posInSet:a,setSize:o}])}function Ei(e,t){let n=xi(e);if(t<0||t>=n)return null;let r=wi(e,e.snapshot.rootId,t,0,-1,[]),i=r.ancestors.map(t=>H(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=Ci(e,a,n,[...i]);t.push(r),i.push(r.row.path)}return a=t,a},index:r.index,posInSet:r.posInSet,row:Hi(e,r.cursor),setSize:r.setSize,subtreeEndIndex:Si(e,r.cursor,r.index,n)}}function Di(e,t,n){let r=e.instrumentation,i=xi(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 Vi(e,o+1);let t=[],n=Ni(e,a);for(let r=a;r<=o&&n!=null;r++){let r=Hi(e,n);t.push(r),n=Ri(e,n)}return t}let s=[],c=0,l=0,u=V(r,`store.getVisibleSlice.selectFirstRow`,()=>Ni(e,a));for(let t=a;t<=o&&u!=null;t++){let t=V(r,`store.getVisibleSlice.materializeRow`,()=>Hi(e,u));s.push(t),t.isFlattened&&(c++,l+=t.flattenedSegments?.length??0),u=V(r,`store.getVisibleSlice.advanceCursor`,()=>Ri(e,u))}return qt(r,`workload.visibleRowsRead`,s.length),qt(r,`workload.flattenedRowsRead`,c),qt(r,`workload.flattenedSegmentsRead`,l),s}function Oi(e,t=xi(e)){let n=e.instrumentation;return n==null?Bi(e,t):V(n,`store.getVisibleTreeProjection`,()=>Bi(e,t))}function ki(e){return zi(Oi(e))}function Ai(e,t){let n=Or(e,t);if(n==null||n===e.snapshot.rootId||B(W(e,n))&&_r(e,n)!==n)return null;let r=0,i=n,{nodes:a,rootId:o}=e.snapshot;for(;i!==o;){let t=W(e,i).parentId,n=U(e,t),s=wt(n).get(i);if(s==null)throw Error(`Child ${String(i)} was not found in its parent index`);if(r+=At(a,n,s),t!==o){let n=W(e,t),a=gr(e,t);if(!In(e,t,n)&&a!==i)return null;_r(e,t)===t&&(r+=1)}i=t}return r}function ji(e,t){let n=Or(e,t);if(n==null)throw Error(`Path does not exist: "${t}"`);let r=W(e,n);if(!B(r))throw Error(`Path is not a directory: "${t}"`);return In(e,n,r)?null:(Ln(e,n,!0,r),Tr(e,n),Xn({affectedAncestorIds:Dr(e,n),affectedNodeIds:[n],path:t,projectionChanged:!0}))}function Mi(e,t){let n=Or(e,t);if(n==null)throw Error(`Path does not exist: "${t}"`);let r=W(e,n);if(!B(r))throw Error(`Path is not a directory: "${t}"`);return In(e,n,r)?(Ln(e,n,!1,r),Tr(e,n),Zn({affectedAncestorIds:Dr(e,n),affectedNodeIds:[n],path:t,projectionChanged:!0})):null}function Ni(e,t){return t<0||t>=xi(e)?null:Pi(e,e.snapshot.rootId,t,-1)}function Pi(e,t,n,r){let i=U(e,t),a=e.instrumentation,{childIndex:o,localVisibleIndex:s}=a==null?kt(e.snapshot.nodes,i,n):V(a,`store.getVisibleSlice.selectChildIndex`,()=>kt(e.snapshot.nodes,i,n)),c=i.childIds[o];if(c!=null)return Fi(e,c,s,r+1);throw Error(`Visible index ${String(n)} is out of range`)}function Fi(e,t,n,r){if(!B(W(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=Ii(e,t,r);if(n===0)return i;let a=W(e,i.terminalNodeId);if(!B(a)||!In(e,i.terminalNodeId,a))throw Error(`Visible index ${String(n)} is out of range for collapsed directory`);return Pi(e,i.terminalNodeId,n-1,i.visibleDepth)}function Ii(e,t,n){return B(W(e,t))?e.instrumentation==null?{headNodeId:t,terminalNodeId:_r(e,t),visibleDepth:n}:{headNodeId:t,terminalNodeId:V(e.instrumentation,`store.getVisibleSlice.flatten.resolveTerminalDirectory`,()=>_r(e,t)),visibleDepth:n}:{headNodeId:t,terminalNodeId:t,visibleDepth:n}}function Li(e,t){let n=W(e,t);if(!B(n))return!0;let r=n.parentId;return r===e.snapshot.rootId?!0:gr(e,r)!==t}function Ri(e,t){let n=W(e,t.terminalNodeId);if(B(n)){let r=U(e,t.terminalNodeId);if(In(e,t.terminalNodeId,n)&&r.childIds.length>0){let n=r.childIds[0];return n==null?null:Fi(e,n,0,t.visibleDepth+1)}}let r=t.terminalNodeId,i=t.visibleDepth;for(;;){let t=W(e,r);if(r===e.snapshot.rootId)return null;let n=t.parentId,a=U(e,n),o=wt(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 Fi(e,s,0,i);Li(e,r)&&i--,r=n}}function zi(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 Bi(e,t){let n=Array(t),r=new Int32Array(t),i=new Int32Array(t),a=new Int32Array(t),o=new Int32Array(yi);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=bi(o,y);let x,S=_;if(B(v))S=f?_r(e,_):_,x=S===_?`${b}${h[v.nameId]}/`:H(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&&B(C)&&In(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 Vi(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(!B(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:H(e,f)};continue}let h=l?_r(e,f):f,g={headNodeId:f,terminalNodeId:h,visibleDepth:m};n[r++]=Hi(e,g);let _=i[h];_!=null&&B(_)&&In(e,h,_)&&s.push([a.get(h),0,m])}return r<t&&(n.length=r),n}function Hi(e,t){let n=W(e,t.terminalNodeId),r=B(n)?Ui(e,t):null,i=H(e,t.terminalNodeId),a=mn(e.snapshot.segmentTable,n.nameId),o=B(n)&&U(e,t.terminalNodeId).childIds.length>0,s=t.headNodeId!==t.terminalNodeId,c=e.instrumentation,l=s?c==null?vr(e,t.headNodeId).map(n=>{let r=W(e,n);return{isTerminal:n===t.terminalNodeId,name:mn(e.snapshot.segmentTable,r.nameId),nodeId:n,path:H(e,n)}}):V(c,`store.getVisibleSlice.flatten.collectSegments`,()=>vr(e,t.headNodeId).map(n=>{let r=W(e,n);return{isTerminal:n===t.terminalNodeId,name:mn(e.snapshot.segmentTable,r.nameId),nodeId:n,path:H(e,n)}})):void 0;return{depth:t.visibleDepth,flattenedSegments:l,hasChildren:o,id:t.terminalNodeId,isExpanded:B(n)&&In(e,t.terminalNodeId,n),isFlattened:s,isLoading:r===`loading`,kind:B(n)?`directory`:`file`,loadState:r==null||r===`loaded`?void 0:r,name:a,path:i}}function Ui(e,t){if(t.headNodeId===t.terminalNodeId)return zn(e,t.terminalNodeId);let n=vr(e,t.headNodeId),r=!1,i=!1;for(let t of n){let n=zn(e,t);if(n===`loading`)return`loading`;if(n===`error`){i=!0;continue}n===`unloaded`&&(r=!0)}return i?`error`:r?`unloaded`:`loaded`}function Wi(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||!B(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&&jt(n,i),r.subtreeNodeCount=1+c;let u;if(o&&s===1){let e=n[a[0]];u=e!=null&&B(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,jt(n,l),c.subtreeNodeCount=1+d,c.visibleSubtreeCount=f}function Gi(e){return e.initialExpansion===`open`&&(e.initialExpandedPaths==null||e.initialExpandedPaths.length===0)}var Ki=class e{#e;constructor(e={}){let t=Kt(e),n=V(t,`store.builder.create`,()=>new jn(e));if(e.preparedInput!=null){let t=On(e.preparedInput);t==null?n.appendPreparedPaths(Dn(e.preparedInput),!1):n.appendPresortedPaths(t,kn(e.preparedInput))}else{let r=e.paths??[];e.presorted===!0?n.appendPaths(r):n.appendPreparedPaths(V(t,`store.preparePathEntries`,()=>An(r,e)))}let r=V(t,`store.builder.finish`,()=>n.finish({skipSubtreeCountPass:!0})),i=V(t,`store.state.detectAllDirectoriesExpanded`,()=>(e.initialExpansion??`closed`)===`closed`&&n.didMatchAllInitialExpandedPaths());this.#e=V(t,`store.state.create`,()=>Mn(r,i?`open`:e.initialExpansion??`closed`,t)),i&&(this.#e.collapseNewDirectoriesByDefault=!0);let a=i?this.#e.snapshot.directories.size-1:V(t,`store.state.initializeExpandedPaths`,()=>this.initializeExpandedPaths(e.initialExpandedPaths));i||Gi(e)||(e.initialExpansion??`closed`)===`closed`&&a===this.#e.snapshot.directories.size-1||(e.initialExpandedPaths?.length??0)>0&&V(t,`store.state.checkAllDirectoriesExpanded`,()=>this.hasAllDirectoriesExpanded())?V(t,`store.state.initializeOpenVisibleCounts`,()=>Wi(this.#e)):V(t,`store.state.recomputeCounts`,()=>Er(this.#e,this.#e.snapshot.rootId))}static preparePaths(e,t={}){return wn(e,t)}static prepareInput(e,t={}){return Tn(e,t)}static preparePresortedInput(e){return En(e)}list(e){return V(this.#e.instrumentation,`store.list`,()=>yr(this.#e,e))}add(e){V(this.#e.instrumentation,`store.add`,()=>{let t=xi(this.#e);or(this.#e,ir(this.#e,t,br(this.#e,e)))})}remove(e,t={}){V(this.#e.instrumentation,`store.remove`,()=>{let n=xi(this.#e);or(this.#e,ir(this.#e,n,xr(this.#e,e,t)))})}move(e,t,n={}){V(this.#e.instrumentation,`store.move`,()=>{let r=xi(this.#e),i=Sr(this.#e,e,t,n);i!=null&&or(this.#e,ir(this.#e,r,i))})}batch(e){ar(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 V(this.#e.instrumentation,`store.getVisibleCount`,()=>xi(this.#e))}getVisibleSlice(e,t){return V(this.#e.instrumentation,`store.getVisibleSlice`,()=>Di(this.#e,e,t))}getVisibleRowContext(e){return V(this.#e.instrumentation,`store.getVisibleRowContext`,()=>Ei(this.#e,e))}getVisibleTreeProjection(){return ki(this.#e)}getVisibleTreeProjectionData(e){return Oi(this.#e,e)}getVisibleIndex(e){return V(this.#e.instrumentation,`store.getVisibleIndex`,()=>Ai(this.#e,e))}getPathInfo(e){return V(this.#e.instrumentation,`store.getPathInfo`,()=>{let t=Or(this.#e,e);if(t==null)return null;let n=W(this.#e,t);return{depth:Rt(n),kind:B(n)?`directory`:`file`,path:H(this.#e,t)}})}isExpanded(e){return V(this.#e.instrumentation,`store.isExpanded`,()=>{let t=this.requireDirectoryNodeId(e),n=W(this.#e,t);return In(this.#e,t,n)})}expand(e){V(this.#e.instrumentation,`store.expand`,()=>{let t=xi(this.#e),n=ji(this.#e,e);n!=null&&or(this.#e,ir(this.#e,t,n))})}collapse(e){V(this.#e.instrumentation,`store.collapse`,()=>{let t=xi(this.#e),n=Mi(this.#e,e);n!=null&&or(this.#e,ir(this.#e,t,n))})}on(e,t){return Kn(this.#e,e,t)}getDirectoryLoadState(e){let t=this.requireDirectoryNodeId(e);return zn(this.#e,t)}markDirectoryUnloaded(e){V(this.#e.instrumentation,`store.markDirectoryUnloaded`,()=>{let t=this.requireDirectoryNodeId(e);if(U(this.#e,t).childIds.length>0)throw Error(`Cannot mark a directory with known children as unloaded: "${e}"`);let n=xi(this.#e);Vn(this.#e,t),or(this.#e,ir(this.#e,n,Qn({affectedAncestorIds:Dr(this.#e,t),affectedNodeIds:[t],path:e,projectionChanged:this.isDirectoryProjectionVisible(t)})))})}beginChildLoad(e){return V(this.#e.instrumentation,`store.beginChildLoad`,()=>{let t=this.requireDirectoryNodeId(e),n=xi(this.#e),r=Bn(this.#e,t);return or(this.#e,ir(this.#e,n,$n({affectedAncestorIds:Dr(this.#e,t),affectedNodeIds:[t],attemptId:r.attemptId,path:e,projectionChanged:this.isDirectoryProjectionVisible(t),reused:r.reused}))),r})}applyChildPatch(e,t){return V(this.#e.instrumentation,`store.applyChildPatch`,()=>{let n=this.resolveActiveDirectoryNodeId(e.nodeId);if(n==null||zn(this.#e,n)!==`loading`||!Un(this.#e,n,e.attemptId))return!1;let r=H(this.#e,n);this.validateChildPatch(r,t);let i=xi(this.#e),a=[];for(let e of t.operations){qi(r,e);let t=xi(this.#e);switch(e.type){case`add`:a.push(ir(this.#e,t,br(this.#e,e.path)));break;case`remove`:a.push(ir(this.#e,t,xr(this.#e,e.path,{recursive:e.recursive})));break;case`move`:{let n=Sr(this.#e,e.from,e.to,{collision:e.collision});n!=null&&a.push(ir(this.#e,t,n));break}}}let o=a.some(e=>e.projectionChanged)||this.isDirectoryProjectionVisible(n);return or(this.#e,ir(this.#e,i,er({affectedAncestorIds:Dr(this.#e,n),affectedNodeIds:[n],attemptId:e.attemptId,childEvents:a,path:H(this.#e,n),projectionChanged:o}))),!0})}completeChildLoad(e){return V(this.#e.instrumentation,`store.completeChildLoad`,()=>{let t=this.resolveActiveDirectoryNodeId(e.nodeId);if(t==null)return!1;let n=xi(this.#e),r=Hn(this.#e,t,e.attemptId);return or(this.#e,ir(this.#e,n,tr({affectedAncestorIds:Dr(this.#e,t),affectedNodeIds:[t],attemptId:e.attemptId,path:H(this.#e,t),projectionChanged:this.isDirectoryProjectionVisible(t),stale:!r}))),r})}failChildLoad(e,t){return V(this.#e.instrumentation,`store.failChildLoad`,()=>{let n=this.resolveActiveDirectoryNodeId(e.nodeId);if(n==null)return!1;let r=xi(this.#e),i=Wn(this.#e,n,e.attemptId,t);return or(this.#e,ir(this.#e,r,nr({affectedAncestorIds:Dr(this.#e,n),affectedNodeIds:[n],attemptId:e.attemptId,errorMessage:t,path:H(this.#e,n),projectionChanged:this.isDirectoryProjectionVisible(n),stale:!i}))),i})}cleanup(e={}){return V(this.#e.instrumentation,`store.cleanup`,()=>{if(this.#e.transactionStack.length>0)throw Error(`Cleanup cannot run during an open batch or transaction.`);if(_i(this.#e))throw Error(`Cleanup cannot run while directory loads are active.`);let t=xi(this.#e),n=vi(this.#e,e.mode??`stable`);return or(this.#e,ir(this.#e,t,rr({...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=U(this.#e,p).childIds,_=m===d?n[m]??0:0,v=_,y,b=l.get(a)??Xt(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=Qt(on(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(!B(W(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=W(this.#e,n);In(this.#e,n,i)||(Ln(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=W(this.#e,e);if(!In(this.#e,e,t))return!1}return!0}requireDirectoryNodeId(e){let t=Or(this.#e,e);if(t==null)throw Error(`Path does not exist: "${e}"`);if(!B(W(this.#e,t)))throw Error(`Path is not a directory: "${e}"`);return t}resolveActiveDirectoryNodeId(e){try{if(!B(W(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=W(this.#e,t).parentId;if(e!==this.#e.snapshot.rootId){let n=W(this.#e,e),r=gr(this.#e,e);if(!In(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 qi(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 Ji={compact:{itemHeight:24,factor:.8},default:{itemHeight:30,factor:1},relaxed:{itemHeight:36,factor:1.2}};function Yi(e,t){if(typeof e==`number`)return{itemHeight:t??Ji.default.itemHeight,factor:e};let n=Ji[e??`default`];return{itemHeight:t??n.itemHeight,factor:n.factor}}var Xi=Ji.default.itemHeight,Zi=`@layer base, theme, unsafe;
1
+ import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{n as t,r as n,t as r}from"./compiler-runtime-CLAvuQ-D.js";import{Fa as i,Ol as a,Q as o,Qa as s,Sl as c,St as l,Tt as u,U as d,Vr as f,_t as p,b as m,bt as h,ft as g,gt as _,h as v,ht as y,jt as b,kl as x,kt as S,n as C,o as w,pl as T,pt as E,pu as D,qp as O,qr as ee,vu as k,yl as te,yt as A}from"./previewAssetResource-DEZquWCb.js";import{n as j,r as M,t as N}from"./renderFileChildren-DfZ1aiKz.js";import{$n as P,Ar as ne,Cn as re,D as ie,Dn as ae,Dr as oe,E as se,En as ce,Er as le,Fn as ue,Fr as de,Gn as fe,Gt as pe,Jr as me,Jt as he,Kt as F,Or as ge,Pr as _e,Qn as ve,Rn as ye,Rr as be,T as xe,Tr as Se,Un as Ce,Vr as we,Wn as Te,Yt as I,Zn as Ee,Zr as De,Zt as Oe,b as ke,bt as Ae,cn as L,d as je,dt as Me,ei as Ne,er as Pe,et as Fe,f as Ie,fr as Le,hn as Re,ii as ze,it as Be,kr as Ve,l as He,ln as Ue,m as We,nt as Ge,p as Ke,ri as qe,rt as Je,ti as Ye,tr as Xe,u as Ze,ur as Qe,v as $e,w as et,x as tt,y as nt,yt as rt}from"./index-Be6_pUuK.js";import{a as it,i as at,n as ot,r as R,t as z}from"./fileCommentAnnotations-DyExLixc.js";var st=c(`file-question-mark`,[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}],[`path`,{d:`M9.1 9a3 3 0 0 1 5.82 1c0 2-3 3-3 3`,key:`mhlwft`}]]),ct=c(`folder-tree`,[[`path`,{d:`M20 10a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1h-2.5a1 1 0 0 1-.8-.4l-.9-1.2A1 1 0 0 0 15 3h-2a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1Z`,key:`hod4my`}],[`path`,{d:`M20 21a1 1 0 0 0 1-1v-3a1 1 0 0 0-1-1h-2.9a1 1 0 0 1-.88-.55l-.42-.85a1 1 0 0 0-.92-.6H13a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1Z`,key:`w4yl2u`}],[`path`,{d:`M3 5a2 2 0 0 0 2 2h3`,key:`f2jnh7`}],[`path`,{d:`M3 3v13a2 2 0 0 0 2 2h3`,key:`k8epm1`}]]),lt=`file-tree-container`,ut=`data-file-tree-style`,dt=`data-file-tree-unsafe-css`,ft=`data-file-tree-scrollbar-measure`,pt=`data-file-tree-scrollbar-gutter-measured`,mt=`--trees-scrollbar-gutter-measured`,ht=`header`,gt=`context-menu`,_t=`context-menu-trigger`,vt=5,yt=1<<vt,bt=yt*4;function xt(){return{childIdByNameId:new Map,childIds:[],childPositionById:new Map,childVisibleChunkSums:null,totalChildSubtreeNodeCount:0,totalChildVisibleSubtreeCount:0}}function St(){return{childIdByNameId:null,childIds:[],childPositionById:null,childVisibleChunkSums:null,totalChildSubtreeNodeCount:0,totalChildVisibleSubtreeCount:0}}function Ct(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 wt(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 Tt(e,t){e.childPositionById!=null&&e.childPositionById.set(t,e.childIds.length),e.childIds.push(t)}function Et(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 Dt(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,jt(e,t)}function Ot(e,t,n,r){if(e.totalChildSubtreeNodeCount+=n,e.totalChildVisibleSubtreeCount+=r,e.childVisibleChunkSums==null||r===0)return;let i=wt(e).get(t);if(i===void 0)return;let a=i>>vt;e.childVisibleChunkSums[a]+=r}function kt(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=Mt(e,t,a,i);return{...r,childVisibleIndex:n-r.localVisibleIndex}}i-=o,a+=yt}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 At(e,t,n){let r=0,i=t.childVisibleChunkSums,a=0;if(i!=null){let e=n>>vt;for(let t=0;t<e;t+=1)r+=i[t]??0;a=e<<vt}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 jt(e,t){if(t.childIds.length<bt){t.childVisibleChunkSums=null;return}let n=Math.ceil(t.childIds.length/yt),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>>vt]+=a.visibleSubtreeCount)}t.childVisibleChunkSums=r}function Mt(e,t,n,r){let i=Math.min(t.childIds.length,n+yt),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 Nt=7,Pt=3,Ft=1<<Pt,It=4;function Lt(e,t,n=0){return e<<It|n<<Pt|t}function Rt(e){return e.depthAndFlags>>>It}function zt(e){return(e.depthAndFlags&Ft)>>Pt}function B(e){return(e.depthAndFlags&Ft)!==0}function Bt(e){return e.depthAndFlags&Nt}function Vt(e,t){return(Bt(e)&t)!==0}function Ht(e,t){e.depthAndFlags|=t}function Ut(e,t){e.depthAndFlags=Lt(t,Bt(e),zt(e))}var Wt=Symbol(`benchmarkInstrumentation`);function Gt(e,t){return t==null||Object.defineProperty(e,Wt,{configurable:!0,enumerable:!1,value:t,writable:!1}),e}function Kt(e){return e==null?null:e[Wt]??null}function V(e,t,n){return e==null?n():e.measurePhase(t,n)}function qt(e,t,n){!Number.isFinite(n)||e==null||e.setCounter(t,n)}function Jt(e){return e>=48&&e<=57}function Yt(e){let t=[],n=0,r=0;for(;r<e.length;){for(;r<e.length&&!Jt(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&&Jt(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 Xt(e){let t=e.toLowerCase();return{lowerValue:t,tokens:Yt(t)}}function Zt(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 Qt(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=Zt(e.tokens,t.tokens);return n===0?e.lowerValue===t.lowerValue?0:e.lowerValue<t.lowerValue?-1:1:n}function $t(e,t,n){let r=Qt(n(e),n(t));return r===0?e===t?0:e<t?-1:1:r}function en(e,t){return $t(e,t,Xt)}function tn(e,t){return t===e.segments.length-1?+!!e.isDirectory:1}function nn(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=tn(e,r);return a===tn(t,r)?en(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 rn(e,t){return nn(e,t)}function an(e,t,n){let r=e=>{let t=n.get(e);if(t!=null)return t;let r=Xt(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=tn(e,n);return o===tn(t,n)?$t(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 on(e,t){let n=e.sortKeyById[t];if(n!==void 0)return n;let r=e.valueById[t],i=Xt(r);return e.sortKeyById[t]=i,i}function sn(e={}){return{flattenEmptyDirectories:e.flattenEmptyDirectories!==!1,sort:e.sort??`default`}}function cn(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 ln(e){let{hasTrailingSlash:t,segments:n}=cn(e);return{basename:n[n.length-1]??``,isDirectory:t,path:e,segments:n}}function un(e){if(e.length===0)return{requiresDirectory:!1,segments:[]};let{hasTrailingSlash:t,segments:n}=cn(e);return{requiresDirectory:t,segments:n}}var dn=``;function fn(){let e=new Map;return e.set(dn,0),{idByValue:e,valueById:[dn],sortKeyById:[Xt(dn)]}}function pn(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 mn(e,t){let n=e.valueById[t];if(n===void 0)throw Error(`Unknown segment ID: ${String(t)}`);return n}var hn=Symbol(`pathStorePreparedInputKind`);function gn(e,t){return e[hn]=t,e}function _n(e){return{basename:e.basename,depth:e.segments.length,isDirectory:e.isDirectory,path:e.path,segments:e.segments}}function vn(e,t,n){return n==="default"?rn(e,t):n(_n(e),_n(t))}function yn(){return{depthAndFlags:Lt(0,3,1),nameId:0,parentId:0,subtreeNodeCount:1,visibleSubtreeCount:1}}function bn(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 xn(e){return e.isDirectory?e.segments.length:e.segments.length-1}function Sn(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 Cn(e){return Array.isArray(e)&&e.every(e=>typeof e==`string`)}function wn(e,t={}){return An(e,t).map(e=>e.path)}function Tn(e,t={}){let n=An(e,t);return gn({paths:n.map(e=>e.path),preparedPaths:n},`prepared`)}function En(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 gn({paths:e,presortedPaths:e,presortedPathsContainDirectories:n},`presorted`)}function Dn(e){let t=e,n=t.preparedPaths;if(t[hn]===`prepared`&&n!=null)return n;if(!Sn(n))throw Error(`preparedInput must come from PathStore.prepareInput()`);return n}function On(e){let t=e;return t[hn]===`presorted`&&t.presortedPaths!=null||Cn(t.presortedPaths)?t.presortedPaths:null}function kn(e){let t=e;return typeof t.presortedPathsContainDirectories==`boolean`?t.presortedPathsContainDirectories:null}function An(e,t={}){let n=sn(t),r=Kt(t);qt(r,`workload.inputFiles`,e.length);let i=V(r,`store.preparePathEntries.parse`,()=>e.map(e=>ln(e)));return V(r,`store.preparePathEntries.sort`,()=>i.sort((e,t)=>vn(e,t,n.sort))),i}var jn=class{directories=new Map;directoryStack=[0];presortedDirectoryNodeIds=[];initialExpandedPathSet;createdDirectoriesAllExpanded=!1;createdDirectoryCount=0;lastPreparedPath=null;nodes=[yn()];options;instrumentation;segmentSortKeyCache=new Map;segmentTable=fn();hasDeferredDirectoryIndexes=!1;constructor(e={}){this.instrumentation=Kt(e),this.options=sn(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,xt())}appendPaths(e){return V(this.instrumentation,`store.builder.appendPaths.parse`,()=>this.appendPreparedPaths(e.map(e=>ln(e))))}appendPreparedPaths(e,t=!0){return this.createdDirectoriesAllExpanded=!1,V(this.instrumentation,`store.builder.appendPreparedPaths`,()=>{for(let n of e)this.appendPreparedPath(n,t)}),this}appendPresortedPaths(e,t=null){return V(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:Lt(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:Lt(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:Lt(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=ln(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:Lt(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:Lt(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=ln(t)),this.hasDeferredDirectoryIndexes=!0}finish(e={}){let t=e.skipSubtreeCountPass===!0;return this.hasDeferredDirectoryIndexes?(V(this.instrumentation,`store.builder.buildDirectoryIndexes`,()=>this.buildPresortedFinish(t)),this.hasDeferredDirectoryIndexes=!1):t||V(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"?an(this.lastPreparedPath,e,this.segmentSortKeyCache):vn(this.lastPreparedPath,e,this.options.sort))>0)throw Error(`Builder input must be sorted before appendPaths(): "${e.path}"`)}let n=this.lastPreparedPath,r=xn(e),i=n==null?0:xn(n),a=n==null?0:bn(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=pn(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:Lt(Rt(o)+1,0),nameId:r,parentId:e,subtreeNodeCount:1,visibleSubtreeCount:1}),a?.set(r,s),Tt(i,s),s}createFileChildUnchecked(e,t){let n=pn(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:Lt(Rt(i)+1,0),nameId:n,parentId:e,subtreeNodeCount:1,visibleSubtreeCount:1}),r.childIdByNameId!=null&&r.childIdByNameId.set(n,a),Tt(r,a),a}getOrCreateDirectoryChild(e,t){let n=pn(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&&!B(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:Lt(Rt(i)+1,0,1),nameId:n,parentId:e,subtreeNodeCount:1,visibleSubtreeCount:1}),r.childIdByNameId!=null&&r.childIdByNameId.set(n,a),Tt(r,a),this.directories.set(a,xt()),a}createDirectoryChild(e,t){let n=pn(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:Lt(Rt(i)+1,0,1),nameId:n,parentId:e,subtreeNodeCount:1,visibleSubtreeCount:1}),r.childIdByNameId!=null&&r.childIdByNameId.set(n,a),Tt(r,a),this.directories.set(a,xt()),a}promoteDirectoryToExplicit(e,t){let n=this.nodes[e];if(n===void 0)throw Error(`Unknown directory node ID: ${String(e)}`);if(!B(n))throw Error(`Path is not a directory: "${t}"`);if(Vt(n,1))throw Error(`Duplicate path: "${t}"`);Ht(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,St());let r=-1,i=null;for(let e=1;e<t.length;e++){let a=t[e];if(a==null)continue;if(B(a)){let t=St();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;B(n)&&this.directories.set(t,xt());let r=this.directories.get(n.parentId);r!=null&&(r.childIdByNameId!=null&&r.childIdByNameId.set(n.nameId,t),Tt(r,t))}}computeSubtreeCounts(e){let t=this.nodes[e];if(t===void 0)throw Error(`Unknown node ID: ${String(e)}`);if(!B(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 Dt(this.nodes,n),t.subtreeNodeCount=r,t.visibleSubtreeCount=r,r}};function Mn(e,t=`closed`,n=null){let r=Pn(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 Nn(){return{affectedAncestorIds:new Set,affectedNodeIds:new Set,events:[]}}function Pn(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 Fn(e,t){return Vt(t,2)||e.defaultExpansion===`open`?!0:e.defaultExpansion===`closed`?!1:Rt(t)<=e.defaultExpansion}function In(e,t,n=e.snapshot.nodes[t]){return n==null||!B(n)?!1:e.directoriesOpenByDefault&&!e.hasCollapsedDirectoryOverrides?!0:e.collapsedDirectoryIds.has(t)?!1:e.expandedDirectoryIds.has(t)?!0:Fn(e,n)}function Ln(e,t,n,r=e.snapshot.nodes[t]){if(r==null||!B(r))return;let i=Fn(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 Rn(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 zn(e,t){return e.directoryLoadInfoById.get(t)?.state??`loaded`}function Bn(e,t){let n=Rn(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 Vn(e,t){let n=Rn(e,t);n.activeAttemptId=null,n.errorMessage=null,n.state=`unloaded`}function Hn(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 Un(e,t,n){return e.directoryLoadInfoById.get(t)?.activeAttemptId===n}function Wn(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 Gn(e,t){e.directoryLoadInfoById.delete(t)}function Kn(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 qn(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],canonicalChanged:!0,operation:`add`,path:e.path,projectionChanged:e.projectionChanged,visibleCountDelta:null}}function Jn(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],canonicalChanged:!0,operation:`remove`,path:e.path,projectionChanged:e.projectionChanged,recursive:e.recursive,visibleCountDelta:null}}function Yn(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],canonicalChanged:!0,from:e.from,operation:`move`,projectionChanged:e.projectionChanged,to:e.to,visibleCountDelta:null}}function Xn(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],canonicalChanged:!1,operation:`expand`,path:e.path,projectionChanged:!0,visibleCountDelta:null}}function Zn(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],canonicalChanged:!1,operation:`collapse`,path:e.path,projectionChanged:!0,visibleCountDelta:null}}function Qn(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],canonicalChanged:!1,operation:`mark-directory-unloaded`,path:e.path,projectionChanged:e.projectionChanged,visibleCountDelta:null}}function $n(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 er(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 tr(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 nr(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 rr(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 ir(e,t,n){return{...n,visibleCountDelta:hr(e)-t}}function ar(e,t){let n=hr(e),r=Nn();e.transactionStack.push(r);try{t()}catch(t){throw cr(e,r,!1),t}cr(e,r,!0,hr(e)-n)}function or(e,t){let n=e.instrumentation;if(n==null){sr(e,t);return}V(n,`store.events.record`,()=>sr(e,t))}function sr(e,t){let n=e.transactionStack[e.transactionStack.length-1]??null;if(n==null){pr(e,t);return}n.events.push(t),fr(n,t)}function cr(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?dr(i,t):V(n,`store.events.batch.merge`,()=>dr(i,t));return}let a=lr(t,r),o=e.instrumentation;if(o==null){pr(e,a);return}V(o,`store.events.batch.commit`,()=>pr(e,a))}function lr(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 ur(e,t){for(let n of t.affectedAncestorIds)e.affectedAncestorIds.add(n);for(let n of t.affectedNodeIds)e.affectedNodeIds.add(n)}function dr(e,t){for(let n of t.events)e.events.push(n);ur(e,t)}function fr(e,t){for(let n of t.affectedNodeIds)e.affectedNodeIds.add(n);for(let n of t.affectedAncestorIds)e.affectedAncestorIds.add(n)}function pr(e,t){let n=e.instrumentation;if(n==null){mr(e,t);return}V(n,`store.events.emit`,()=>mr(e,t))}function mr(e,t){e.listeners.get(t.operation)?.forEach(e=>e(t)),e.listeners.get(`*`)?.forEach(e=>e(t))}function hr(e){return e.snapshot.nodes[e.snapshot.rootId]?.visibleSubtreeCount??0}function gr(e,t){if(e.snapshot.options.flattenEmptyDirectories!==!0)return null;let n=e.snapshot.nodes[t];if(n==null||!B(n)||Vt(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||!B(a)?null:i}function _r(e,t){let n=t;for(;;){let t=gr(e,n);if(t==null)return n;n=t}}function vr(e,t){let n=[t],r=t;for(;;){let t=gr(e,r);if(t==null)return n;n.push(t),r=t}}function yr(e,t){let n=t==null?e.snapshot.rootId:Or(e,t);return n==null?[]:Ar(e,n)}function br(e,t){let n=ln(t),r=n.isDirectory?n.segments:n.segments.slice(0,-1),i=Gr(e,Wr(e,r)),{createdNodeIds:a,directoryId:o}=jr(e,r),s=new Set(a),c=o;if(n.isDirectory){let n=W(e,o);if(Vt(n,1))throw Error(`Path already exists: "${t}"`);Ht(n,1),e.pathCacheByNodeId.set(o,{path:t,version:e.pathCacheVersion}),s.add(o)}else c=Nr(e,o,n.basename),s.add(c);Tr(e,o);let l=Gr(e,o);return qn({affectedAncestorIds:Dr(e,c),affectedNodeIds:[...s],path:t,projectionChanged:Kr(i,l)})}function xr(e,t,n){let r=Or(e,t);if(r==null)throw Error(`Path does not exist: "${t}"`);let i=W(e,r);if(Vt(i,2))throw Error(`The root node cannot be removed`);if(B(i)&&U(e,r).childIds.length>0&&n.recursive!==!0)throw Error(`Cannot remove a non-empty directory without recursive: "${t}"`);let a=i.parentId,o=Gr(e,a),s=Hr(e,r);Ir(e,a,r,i.nameId),Ur(e,a),Tr(e,a);let c=Gr(e,a);return Jn({affectedAncestorIds:Dr(e,a),affectedNodeIds:s,path:t,projectionChanged:Kr(o,c),recursive:n.recursive===!0})}function Sr(e,t,n,r){let i=Or(e,t);if(i==null)throw Error(`Source path does not exist: "${t}"`);let a=W(e,i);if(Vt(a,2))throw Error(`The root node cannot be moved`);let o=r.collision??`error`,s=Br(e,i,n),c=Gr(e,a.parentId),l=Gr(e,s.parentId),u=mn(e.snapshot.segmentTable,a.nameId),d=pn(e.snapshot.segmentTable,s.basename);if(s.parentId===a.parentId&&u===s.basename)return null;if(B(a)&&Xr(e,i,s.parentId))throw Error(`Cannot move a directory into one of its descendants`);let f=Ct(e.snapshot.nodes,U(e,s.parentId)).get(d),p=s.existingNodeId??f??null;if(p!=null&&p!==i&&Vr(e,p,o,zt(a))===`skip`)return null;let m=a.parentId;Ir(e,m,i,a.nameId),a.parentId=s.parentId,a.nameId=d,e.pathCacheByNodeId.delete(i),Yr(e,i),Fr(e,s.parentId,i),Ur(e,m),e.pathCacheVersion++,Tr(e,m),s.parentId!==m&&Tr(e,s.parentId);let h=Gr(e,m),g=Gr(e,s.parentId);return Yn({affectedAncestorIds:[...new Set([...Dr(e,m),...Dr(e,s.parentId)])],affectedNodeIds:[i],from:t,projectionChanged:qr([c,l],[h,g]),to:H(e,i)})}function Cr(e,t){let n=e.pathCacheByNodeId.get(t);return n!=null&&n.version===e.pathCacheVersion?n.path:null}function wr(e,t,n){return e.pathCacheByNodeId.set(t,{path:n,version:e.pathCacheVersion}),n}function H(e,t){let n=W(e,t),r=Cr(e,t);if(r!=null)return r;if(Vt(n,2))return wr(e,t,``);let i=H(e,n.parentId),a=mn(e.snapshot.segmentTable,n.nameId),o=i.length===0?a:`${i}${a}`;return wr(e,t,B(n)?`${o}/`:o)}function Tr(e,t){let n=e.instrumentation;if(n==null){Qr(e,t);return}V(n,`store.recomputeCountsUpwardFrom`,()=>Qr(e,t))}function Er(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||!B(o)){Zr(e,a,o,!0),n.pop();continue}let s=i.get(a);if(s==null||t[1]>=s.childIds.length){Zr(e,a,o,!0),n.pop();continue}let c=s.childIds[t[1]++];n.push([c,0])}}function Dr(e,t){let n=[],r=t;for(;r!=null;){let t=W(e,r);if(n.push(r),r===e.snapshot.rootId)break;r=t.parentId}return n}function Or(e,t){if(t.length===0)return e.snapshot.rootId;let n=un(t);return kr(e,n.segments,n.requiresDirectory)}function kr(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=U(e,r),a=Ct(e.snapshot.nodes,i).get(t);if(a===void 0)return null;r=a}let i=W(e,r);return n&&!B(i)?null:r}function U(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 W(e,t){let n=e.snapshot.nodes[t];if(n===void 0||Vt(n,4))throw Error(`Unknown node ID: ${String(t)}`);return n}function Ar(e,t){let n=e.snapshot.nodes[t];if(n===void 0||Vt(n,4))return[];if(!B(n))return[H(e,t)];if(U(e,t).childIds.length===0)return Vt(n,1)&&!Vt(n,2)?[H(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||Vt(n,4)){i.pop();continue}if(!B(n)){r.push(H(e,t.nodeId)),i.pop();continue}let a=U(e,t.nodeId);if(a.childIds.length===0){Vt(n,1)&&!Vt(n,2)&&r.push(H(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 jr(e,t){let n=[],r=e.snapshot.rootId;for(let i of t){let t=pn(e.snapshot.segmentTable,i),a=U(e,r),o=Ct(e.snapshot.nodes,a).get(t);if(o!==void 0){if(!B(W(e,o)))throw Error(`Cannot create a directory that collides with an existing file: "${i}"`);r=o;continue}r=Mr(e,r,t),n.push(r)}return{createdNodeIds:n,directoryId:r}}function Mr(e,t,n){let r=W(e,t),i=e.snapshot.nodes.length;return e.snapshot.nodes.push({depthAndFlags:Lt(Rt(r)+1,0,1),nameId:n,parentId:t,subtreeNodeCount:1,visibleSubtreeCount:1}),e.snapshot.directories.set(i,xt()),Fr(e,t,i),e.collapseNewDirectoriesByDefault&&(e.collapsedDirectoryIds.add(i),e.hasCollapsedDirectoryOverrides=!0),e.activeNodeCount++,i}function Nr(e,t,n){let r=pn(e.snapshot.segmentTable,n),i=U(e,t);if(Ct(e.snapshot.nodes,i).has(r))throw Error(`Path already exists: "${ei(e,t,n)}"`);let a=W(e,t),o=e.snapshot.nodes.length;return e.snapshot.nodes.push({depthAndFlags:Lt(Rt(a)+1,0),nameId:r,parentId:t,subtreeNodeCount:1,visibleSubtreeCount:1}),Fr(e,t,o),e.activeNodeCount++,o}function Pr(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}Lr(e,n,o)<0?i=a:r=a+1}return r}function Fr(e,t,n){let r=U(e,t),i=W(e,n);Ct(e.snapshot.nodes,r).set(i.nameId,n),Ot(r,n,i.subtreeNodeCount,i.visibleSubtreeCount);let a=Pr(e,r,n);r.childIds.splice(a,0,n),Et(r,a),jt(e.snapshot.nodes,r)}function Ir(e,t,n,r){let i=U(e,t),a=wt(i),o=a.get(n)??-1;Ct(e.snapshot.nodes,i).delete(r),a.delete(n);let s=e.snapshot.nodes[n];s!=null&&Ot(i,n,-s.subtreeNodeCount,-s.visibleSubtreeCount),o>=0&&(i.childIds.splice(o,1),Et(i,o),jt(e.snapshot.nodes,i))}function Lr(e,t,n){let r=e.snapshot.options.sort;return r==="default"?Rr(e,t,n):r(zr(e,t),zr(e,n))}function Rr(e,t,n){let r=W(e,t),i=W(e,n),a=B(r);if(a!==B(i))return a?-1:1;let o=Qt(on(e.snapshot.segmentTable,r.nameId),on(e.snapshot.segmentTable,i.nameId));if(o!==0)return o;let s=mn(e.snapshot.segmentTable,r.nameId),c=mn(e.snapshot.segmentTable,i.nameId);return s===c?t<n?-1:1:s<c?-1:1}function zr(e,t){let n=W(e,t),r=H(e,t),i=B(n),a=i?r.slice(0,-1):r;return{basename:mn(e.snapshot.segmentTable,n.nameId),depth:Rt(n),isDirectory:i,path:r,segments:a.length===0?[]:a.split(`/`)}}function Br(e,t,n){let r=W(e,t),i=Or(e,n);if(i!=null){let t=W(e,i);if(B(t))return{basename:mn(e.snapshot.segmentTable,r.nameId),existingNodeId:null,parentId:i};let a=un(n).segments;return{basename:a[a.length-1]??``,existingNodeId:i,parentId:t.parentId}}let a=un(n),o=a.segments[a.segments.length-1]??``,s=a.segments.slice(0,-1),c=s.length===0?e.snapshot.rootId:kr(e,s,!0);if(c==null)throw Error(`Destination parent does not exist: "${n}"`);return{basename:o,existingNodeId:null,parentId:c}}function Vr(e,t,n,r){if(n===`skip`)return`skip`;if(n===`error`)throw Error(`Destination already exists: "${H(e,t)}"`);let i=W(e,t);if(zt(i)!==r)throw Error(`replace collision requires the same source and destination kinds`);if(B(i)&&U(e,t).childIds.length>0)throw Error(`replace collision does not support non-empty directories`);let a=i.parentId,o=i.nameId;return Hr(e,t),Ir(e,a,t,o),Ur(e,a),Tr(e,a),`handled`}function Hr(e,t){let n=[],r=[{nodeId:t,visitedChildren:!1}];for(;r.length>0;){let t=r.pop();if(t==null)break;let i=W(e,t.nodeId);if(t.visitedChildren||!B(i)){B(i)&&e.snapshot.directories.delete(t.nodeId),Ht(i,4),e.pathCacheByNodeId.delete(t.nodeId),e.collapsedDirectoryIds.delete(t.nodeId)&&(e.hasCollapsedDirectoryOverrides=e.collapsedDirectoryIds.size>0),e.expandedDirectoryIds.delete(t.nodeId),Gn(e,t.nodeId),e.activeNodeCount--,n.push(t.nodeId);continue}r.push({nodeId:t.nodeId,visitedChildren:!0});let a=U(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 Ur(e,t){let n=t;for(;n!=null;){let t=W(e,n);if(!B(t)||Vt(t,2)||U(e,n).childIds.length>0)return;Ht(t,1),n=t.parentId===n?null:t.parentId}}function Wr(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=Ct(e.snapshot.nodes,U(e,n)).get(t);if(i==null||!B(W(e,i)))break;n=i}return n}function Gr(e,t){let n=Jr(e,t);if(n==null)return null;let r=_r(e,n),i=W(e,r),a=n===r?null:vr(e,n).map(t=>H(e,t));return JSON.stringify({flattenedSegmentPaths:a,hasChildren:U(e,r).childIds.length>0,path:H(e,r),terminalKind:zt(i)})}function Kr(e,t){return qr([e],[t])}function qr(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 Jr(e,t){let n=t;for(;n!=null;){let t=W(e,n);if(!B(t)||Vt(t,2))return null;if(!In(e,n,t))return n;n=t.parentId}return null}function Yr(e,t){let n=W(e,t);if(Ut(n,(t===e.snapshot.rootId?-1:Rt(W(e,n.parentId)))+1),!B(n))return;let r=U(e,t);for(let t of r.childIds)Yr(e,t)}function Xr(e,t,n){let r=n;for(;r!=null;){if(r===t)return!0;let n=W(e,r);if(r===e.snapshot.rootId)return!1;r=n.parentId}return!1}function Zr(e,t,n=W(e,t),r=!1){let i=e.instrumentation;if(i==null){$r(e,t,n,r);return}V(i,`store.recomputeNodeCounts`,()=>$r(e,t,n,r))}function Qr(e,t){let n=t;for(;n!=null;){let t=W(e,n),r=t.subtreeNodeCount,i=t.visibleSubtreeCount;if(Zr(e,n,t),n===e.snapshot.rootId)return;let a=t.subtreeNodeCount-r,o=t.visibleSubtreeCount-i,s=t.parentId;(a!==0||o!==0)&&Ot(U(e,s),n,a,o),n=s}}function $r(e,t,n,r){if(!B(n)){n.subtreeNodeCount=1,n.visibleSubtreeCount=1;return}let i=U(e,t);if(r){let t=e.instrumentation;t==null?Dt(e.snapshot.nodes,i):V(t,`store.recomputeNodeCounts.rebuildChildAggregates`,()=>Dt(e.snapshot.nodes,i))}let a=1+i.totalChildSubtreeNodeCount,o=i.totalChildVisibleSubtreeCount;if(n.subtreeNodeCount=a,Vt(n,2)){n.visibleSubtreeCount=o;return}n.visibleSubtreeCount=gr(e,t)==null?In(e,t,n)?1+o:1:o}function ei(e,t,n){let r=H(e,t);return r.length===0?n:`${r}${n}`}function ti(e){return e!=null&&!Vt(e,4)}function ni(e,t){let n=e.snapshot.nodes[t];return!ti(n)||!B(n)||Vt(n,2)?null:n}function ri(e){let t=0;for(let[n,r]of e.pathCacheByNodeId)r.version===e.pathCacheVersion&&ti(e.snapshot.nodes[n])&&(t+=1);return t}function ii(e){return Math.max(0,e.valueById.length-1)}function ai(e){return{activeNodeCount:e.activeNodeCount,cachedPathEntryCount:ri(e),loadInfoEntryCount:e.directoryLoadInfoById.size,segmentCount:ii(e.snapshot.segmentTable),totalNodeSlotCount:Math.max(0,e.snapshot.nodes.length-1)}}function oi(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 si(e){let t=[],n=[];for(let n of e.collapsedDirectoryIds)ni(e,n)!=null&&t.push(H(e,n));for(let t of e.expandedDirectoryIds)ni(e,t)!=null&&n.push(H(e,t));return{collapsedPaths:t,expandedPaths:n}}function ci(e){let t=[];for(let[n,r]of e.directoryLoadInfoById)ni(e,n)==null||zn(e,n)===`loaded`||t.push({info:{activeAttemptId:null,errorMessage:r.errorMessage,nextAttemptId:r.nextAttemptId,state:r.state},path:H(e,n)});return t}function li(e,t){e.collapsedDirectoryIds.clear(),e.hasCollapsedDirectoryOverrides=!1,e.expandedDirectoryIds.clear();for(let n of t.expandedPaths){let t=Or(e,n);t!=null&&Ln(e,t,!0,W(e,t))}for(let n of t.collapsedPaths){let t=Or(e,n);t!=null&&Ln(e,t,!1,W(e,t))}}function ui(e,t){e.directoryLoadInfoById.clear();for(let n of t){let t=Or(e,n.path);t!=null&&ni(e,t)!=null&&e.directoryLoadInfoById.set(t,{activeAttemptId:null,errorMessage:n.info.errorMessage,nextAttemptId:n.info.nextAttemptId,state:n.info.state})}}function di(e){e.pathCacheVersion+=1,e.pathCacheByNodeId.clear(),e.pathCacheByNodeId.set(e.snapshot.rootId,{path:``,version:e.pathCacheVersion})}function fi(e){let t=e.snapshot.segmentTable,n=fn();for(let r of e.snapshot.nodes)if(ti(r)){if(Vt(r,2)){r.nameId=0;continue}r.nameId=pn(n,mn(t,r.nameId))}e.snapshot.segmentTable=n}function pi(e){for(let[t,n]of e.snapshot.directories){let r=e.snapshot.nodes[t];if(!ti(r)||!B(r)){e.snapshot.directories.delete(t);continue}let i=n.childIds.filter(n=>{let r=e.snapshot.nodes[n];return ti(r)&&r.parentId===t});n.childIds=i,n.childIdByNameId=new Map(i.map(t=>[W(e,t).nameId,t])),n.childPositionById=new Map(i.map((e,t)=>[e,t])),Dt(e.snapshot.nodes,n)}}function mi(e){let t=e.snapshot.nodes.length-1;for(;t>e.snapshot.rootId;){let n=e.snapshot.nodes[t];if(ti(n))break;--t}e.snapshot.nodes.length=t+1}function hi(e){let t=si(e),n=ci(e);V(e.instrumentation,`store.cleanup.stable.clearPathCaches`,()=>di(e)),V(e.instrumentation,`store.cleanup.stable.rebuildSegmentTable`,()=>fi(e)),V(e.instrumentation,`store.cleanup.stable.rebuildDirectoryIndexes`,()=>pi(e)),V(e.instrumentation,`store.cleanup.stable.trimTrailingRemovedNodeSlots`,()=>mi(e)),V(e.instrumentation,`store.cleanup.stable.restoreExpansionOverrides`,()=>li(e,t)),V(e.instrumentation,`store.cleanup.stable.restoreDirectoryLoadInfos`,()=>ui(e,n)),V(e.instrumentation,`store.cleanup.stable.recomputeCounts`,()=>Er(e,e.snapshot.rootId))}function gi(e){let t=si(e),n=ci(e),r=V(e.instrumentation,`store.cleanup.aggressive.listPaths`,()=>yr(e)),i=Gt({...e.snapshot.options},e.instrumentation),a=V(e.instrumentation,`store.cleanup.aggressive.rebuildSnapshot`,()=>{let e=new jn(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,V(e.instrumentation,`store.cleanup.aggressive.restoreExpansionOverrides`,()=>li(e,t)),V(e.instrumentation,`store.cleanup.aggressive.restoreDirectoryLoadInfos`,()=>ui(e,n)),V(e.instrumentation,`store.cleanup.aggressive.recomputeCounts`,()=>Er(e,e.snapshot.rootId))}function _i(e){for(let t of e.directoryLoadInfoById.values())if(t.state===`loading`&&t.activeAttemptId!=null)return!0;return!1}function vi(e,t){let n=ai(e);t===`stable`?V(e.instrumentation,`store.cleanup.stable`,()=>hi(e)):V(e.instrumentation,`store.cleanup.aggressive`,()=>gi(e));let r=ai(e);return oi(t,t===`stable`,n,r)}var yi=64;function bi(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 xi(e){return W(e,e.snapshot.rootId).visibleSubtreeCount}function Si(e,t,n,r){let i=W(e,t.terminalNodeId),a=Math.max(1,i.visibleSubtreeCount);return Math.min(r-1,n+a-1)}function Ci(e,t,n,r){return{ancestorPaths:r,index:t.index,posInSet:t.posInSet,row:Hi(e,t.cursor),setSize:t.setSize,subtreeEndIndex:Si(e,t.cursor,t.index,n)}}function wi(e,t,n,r,i,a){let o=U(e,t),{childIndex:s,childVisibleIndex:c,localVisibleIndex:l}=kt(e.snapshot.nodes,o,n),u=o.childIds[s];if(u==null)throw Error(`Visible index ${String(n)} is out of range`);return Ti(e,u,l,r+c,i+1,s,o.childIds.length,a)}function Ti(e,t,n,r,i,a,o,s){if(!B(W(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=Ii(e,t,i);if(n===0)return{ancestors:s,cursor:c,index:r,posInSet:a,setSize:o};let l=W(e,c.terminalNodeId);if(!B(l)||!In(e,c.terminalNodeId,l))throw Error(`Visible index ${String(n)} is out of range for collapsed directory`);return wi(e,c.terminalNodeId,n-1,r+1,c.visibleDepth,[...s,{cursor:c,index:r,posInSet:a,setSize:o}])}function Ei(e,t){let n=xi(e);if(t<0||t>=n)return null;let r=wi(e,e.snapshot.rootId,t,0,-1,[]),i=r.ancestors.map(t=>H(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=Ci(e,a,n,[...i]);t.push(r),i.push(r.row.path)}return a=t,a},index:r.index,posInSet:r.posInSet,row:Hi(e,r.cursor),setSize:r.setSize,subtreeEndIndex:Si(e,r.cursor,r.index,n)}}function Di(e,t,n){let r=e.instrumentation,i=xi(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 Vi(e,o+1);let t=[],n=Ni(e,a);for(let r=a;r<=o&&n!=null;r++){let r=Hi(e,n);t.push(r),n=Ri(e,n)}return t}let s=[],c=0,l=0,u=V(r,`store.getVisibleSlice.selectFirstRow`,()=>Ni(e,a));for(let t=a;t<=o&&u!=null;t++){let t=V(r,`store.getVisibleSlice.materializeRow`,()=>Hi(e,u));s.push(t),t.isFlattened&&(c++,l+=t.flattenedSegments?.length??0),u=V(r,`store.getVisibleSlice.advanceCursor`,()=>Ri(e,u))}return qt(r,`workload.visibleRowsRead`,s.length),qt(r,`workload.flattenedRowsRead`,c),qt(r,`workload.flattenedSegmentsRead`,l),s}function Oi(e,t=xi(e)){let n=e.instrumentation;return n==null?Bi(e,t):V(n,`store.getVisibleTreeProjection`,()=>Bi(e,t))}function ki(e){return zi(Oi(e))}function Ai(e,t){let n=Or(e,t);if(n==null||n===e.snapshot.rootId||B(W(e,n))&&_r(e,n)!==n)return null;let r=0,i=n,{nodes:a,rootId:o}=e.snapshot;for(;i!==o;){let t=W(e,i).parentId,n=U(e,t),s=wt(n).get(i);if(s==null)throw Error(`Child ${String(i)} was not found in its parent index`);if(r+=At(a,n,s),t!==o){let n=W(e,t),a=gr(e,t);if(!In(e,t,n)&&a!==i)return null;_r(e,t)===t&&(r+=1)}i=t}return r}function ji(e,t){let n=Or(e,t);if(n==null)throw Error(`Path does not exist: "${t}"`);let r=W(e,n);if(!B(r))throw Error(`Path is not a directory: "${t}"`);return In(e,n,r)?null:(Ln(e,n,!0,r),Tr(e,n),Xn({affectedAncestorIds:Dr(e,n),affectedNodeIds:[n],path:t,projectionChanged:!0}))}function Mi(e,t){let n=Or(e,t);if(n==null)throw Error(`Path does not exist: "${t}"`);let r=W(e,n);if(!B(r))throw Error(`Path is not a directory: "${t}"`);return In(e,n,r)?(Ln(e,n,!1,r),Tr(e,n),Zn({affectedAncestorIds:Dr(e,n),affectedNodeIds:[n],path:t,projectionChanged:!0})):null}function Ni(e,t){return t<0||t>=xi(e)?null:Pi(e,e.snapshot.rootId,t,-1)}function Pi(e,t,n,r){let i=U(e,t),a=e.instrumentation,{childIndex:o,localVisibleIndex:s}=a==null?kt(e.snapshot.nodes,i,n):V(a,`store.getVisibleSlice.selectChildIndex`,()=>kt(e.snapshot.nodes,i,n)),c=i.childIds[o];if(c!=null)return Fi(e,c,s,r+1);throw Error(`Visible index ${String(n)} is out of range`)}function Fi(e,t,n,r){if(!B(W(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=Ii(e,t,r);if(n===0)return i;let a=W(e,i.terminalNodeId);if(!B(a)||!In(e,i.terminalNodeId,a))throw Error(`Visible index ${String(n)} is out of range for collapsed directory`);return Pi(e,i.terminalNodeId,n-1,i.visibleDepth)}function Ii(e,t,n){return B(W(e,t))?e.instrumentation==null?{headNodeId:t,terminalNodeId:_r(e,t),visibleDepth:n}:{headNodeId:t,terminalNodeId:V(e.instrumentation,`store.getVisibleSlice.flatten.resolveTerminalDirectory`,()=>_r(e,t)),visibleDepth:n}:{headNodeId:t,terminalNodeId:t,visibleDepth:n}}function Li(e,t){let n=W(e,t);if(!B(n))return!0;let r=n.parentId;return r===e.snapshot.rootId?!0:gr(e,r)!==t}function Ri(e,t){let n=W(e,t.terminalNodeId);if(B(n)){let r=U(e,t.terminalNodeId);if(In(e,t.terminalNodeId,n)&&r.childIds.length>0){let n=r.childIds[0];return n==null?null:Fi(e,n,0,t.visibleDepth+1)}}let r=t.terminalNodeId,i=t.visibleDepth;for(;;){let t=W(e,r);if(r===e.snapshot.rootId)return null;let n=t.parentId,a=U(e,n),o=wt(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 Fi(e,s,0,i);Li(e,r)&&i--,r=n}}function zi(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 Bi(e,t){let n=Array(t),r=new Int32Array(t),i=new Int32Array(t),a=new Int32Array(t),o=new Int32Array(yi);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=bi(o,y);let x,S=_;if(B(v))S=f?_r(e,_):_,x=S===_?`${b}${h[v.nameId]}/`:H(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&&B(C)&&In(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 Vi(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(!B(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:H(e,f)};continue}let h=l?_r(e,f):f,g={headNodeId:f,terminalNodeId:h,visibleDepth:m};n[r++]=Hi(e,g);let _=i[h];_!=null&&B(_)&&In(e,h,_)&&s.push([a.get(h),0,m])}return r<t&&(n.length=r),n}function Hi(e,t){let n=W(e,t.terminalNodeId),r=B(n)?Ui(e,t):null,i=H(e,t.terminalNodeId),a=mn(e.snapshot.segmentTable,n.nameId),o=B(n)&&U(e,t.terminalNodeId).childIds.length>0,s=t.headNodeId!==t.terminalNodeId,c=e.instrumentation,l=s?c==null?vr(e,t.headNodeId).map(n=>{let r=W(e,n);return{isTerminal:n===t.terminalNodeId,name:mn(e.snapshot.segmentTable,r.nameId),nodeId:n,path:H(e,n)}}):V(c,`store.getVisibleSlice.flatten.collectSegments`,()=>vr(e,t.headNodeId).map(n=>{let r=W(e,n);return{isTerminal:n===t.terminalNodeId,name:mn(e.snapshot.segmentTable,r.nameId),nodeId:n,path:H(e,n)}})):void 0;return{depth:t.visibleDepth,flattenedSegments:l,hasChildren:o,id:t.terminalNodeId,isExpanded:B(n)&&In(e,t.terminalNodeId,n),isFlattened:s,isLoading:r===`loading`,kind:B(n)?`directory`:`file`,loadState:r==null||r===`loaded`?void 0:r,name:a,path:i}}function Ui(e,t){if(t.headNodeId===t.terminalNodeId)return zn(e,t.terminalNodeId);let n=vr(e,t.headNodeId),r=!1,i=!1;for(let t of n){let n=zn(e,t);if(n===`loading`)return`loading`;if(n===`error`){i=!0;continue}n===`unloaded`&&(r=!0)}return i?`error`:r?`unloaded`:`loaded`}function Wi(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||!B(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&&jt(n,i),r.subtreeNodeCount=1+c;let u;if(o&&s===1){let e=n[a[0]];u=e!=null&&B(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,jt(n,l),c.subtreeNodeCount=1+d,c.visibleSubtreeCount=f}function Gi(e){return e.initialExpansion===`open`&&(e.initialExpandedPaths==null||e.initialExpandedPaths.length===0)}var Ki=class e{#e;constructor(e={}){let t=Kt(e),n=V(t,`store.builder.create`,()=>new jn(e));if(e.preparedInput!=null){let t=On(e.preparedInput);t==null?n.appendPreparedPaths(Dn(e.preparedInput),!1):n.appendPresortedPaths(t,kn(e.preparedInput))}else{let r=e.paths??[];e.presorted===!0?n.appendPaths(r):n.appendPreparedPaths(V(t,`store.preparePathEntries`,()=>An(r,e)))}let r=V(t,`store.builder.finish`,()=>n.finish({skipSubtreeCountPass:!0})),i=V(t,`store.state.detectAllDirectoriesExpanded`,()=>(e.initialExpansion??`closed`)===`closed`&&n.didMatchAllInitialExpandedPaths());this.#e=V(t,`store.state.create`,()=>Mn(r,i?`open`:e.initialExpansion??`closed`,t)),i&&(this.#e.collapseNewDirectoriesByDefault=!0);let a=i?this.#e.snapshot.directories.size-1:V(t,`store.state.initializeExpandedPaths`,()=>this.initializeExpandedPaths(e.initialExpandedPaths));i||Gi(e)||(e.initialExpansion??`closed`)===`closed`&&a===this.#e.snapshot.directories.size-1||(e.initialExpandedPaths?.length??0)>0&&V(t,`store.state.checkAllDirectoriesExpanded`,()=>this.hasAllDirectoriesExpanded())?V(t,`store.state.initializeOpenVisibleCounts`,()=>Wi(this.#e)):V(t,`store.state.recomputeCounts`,()=>Er(this.#e,this.#e.snapshot.rootId))}static preparePaths(e,t={}){return wn(e,t)}static prepareInput(e,t={}){return Tn(e,t)}static preparePresortedInput(e){return En(e)}list(e){return V(this.#e.instrumentation,`store.list`,()=>yr(this.#e,e))}add(e){V(this.#e.instrumentation,`store.add`,()=>{let t=xi(this.#e);or(this.#e,ir(this.#e,t,br(this.#e,e)))})}remove(e,t={}){V(this.#e.instrumentation,`store.remove`,()=>{let n=xi(this.#e);or(this.#e,ir(this.#e,n,xr(this.#e,e,t)))})}move(e,t,n={}){V(this.#e.instrumentation,`store.move`,()=>{let r=xi(this.#e),i=Sr(this.#e,e,t,n);i!=null&&or(this.#e,ir(this.#e,r,i))})}batch(e){ar(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 V(this.#e.instrumentation,`store.getVisibleCount`,()=>xi(this.#e))}getVisibleSlice(e,t){return V(this.#e.instrumentation,`store.getVisibleSlice`,()=>Di(this.#e,e,t))}getVisibleRowContext(e){return V(this.#e.instrumentation,`store.getVisibleRowContext`,()=>Ei(this.#e,e))}getVisibleTreeProjection(){return ki(this.#e)}getVisibleTreeProjectionData(e){return Oi(this.#e,e)}getVisibleIndex(e){return V(this.#e.instrumentation,`store.getVisibleIndex`,()=>Ai(this.#e,e))}getPathInfo(e){return V(this.#e.instrumentation,`store.getPathInfo`,()=>{let t=Or(this.#e,e);if(t==null)return null;let n=W(this.#e,t);return{depth:Rt(n),kind:B(n)?`directory`:`file`,path:H(this.#e,t)}})}isExpanded(e){return V(this.#e.instrumentation,`store.isExpanded`,()=>{let t=this.requireDirectoryNodeId(e),n=W(this.#e,t);return In(this.#e,t,n)})}expand(e){V(this.#e.instrumentation,`store.expand`,()=>{let t=xi(this.#e),n=ji(this.#e,e);n!=null&&or(this.#e,ir(this.#e,t,n))})}collapse(e){V(this.#e.instrumentation,`store.collapse`,()=>{let t=xi(this.#e),n=Mi(this.#e,e);n!=null&&or(this.#e,ir(this.#e,t,n))})}on(e,t){return Kn(this.#e,e,t)}getDirectoryLoadState(e){let t=this.requireDirectoryNodeId(e);return zn(this.#e,t)}markDirectoryUnloaded(e){V(this.#e.instrumentation,`store.markDirectoryUnloaded`,()=>{let t=this.requireDirectoryNodeId(e);if(U(this.#e,t).childIds.length>0)throw Error(`Cannot mark a directory with known children as unloaded: "${e}"`);let n=xi(this.#e);Vn(this.#e,t),or(this.#e,ir(this.#e,n,Qn({affectedAncestorIds:Dr(this.#e,t),affectedNodeIds:[t],path:e,projectionChanged:this.isDirectoryProjectionVisible(t)})))})}beginChildLoad(e){return V(this.#e.instrumentation,`store.beginChildLoad`,()=>{let t=this.requireDirectoryNodeId(e),n=xi(this.#e),r=Bn(this.#e,t);return or(this.#e,ir(this.#e,n,$n({affectedAncestorIds:Dr(this.#e,t),affectedNodeIds:[t],attemptId:r.attemptId,path:e,projectionChanged:this.isDirectoryProjectionVisible(t),reused:r.reused}))),r})}applyChildPatch(e,t){return V(this.#e.instrumentation,`store.applyChildPatch`,()=>{let n=this.resolveActiveDirectoryNodeId(e.nodeId);if(n==null||zn(this.#e,n)!==`loading`||!Un(this.#e,n,e.attemptId))return!1;let r=H(this.#e,n);this.validateChildPatch(r,t);let i=xi(this.#e),a=[];for(let e of t.operations){qi(r,e);let t=xi(this.#e);switch(e.type){case`add`:a.push(ir(this.#e,t,br(this.#e,e.path)));break;case`remove`:a.push(ir(this.#e,t,xr(this.#e,e.path,{recursive:e.recursive})));break;case`move`:{let n=Sr(this.#e,e.from,e.to,{collision:e.collision});n!=null&&a.push(ir(this.#e,t,n));break}}}let o=a.some(e=>e.projectionChanged)||this.isDirectoryProjectionVisible(n);return or(this.#e,ir(this.#e,i,er({affectedAncestorIds:Dr(this.#e,n),affectedNodeIds:[n],attemptId:e.attemptId,childEvents:a,path:H(this.#e,n),projectionChanged:o}))),!0})}completeChildLoad(e){return V(this.#e.instrumentation,`store.completeChildLoad`,()=>{let t=this.resolveActiveDirectoryNodeId(e.nodeId);if(t==null)return!1;let n=xi(this.#e),r=Hn(this.#e,t,e.attemptId);return or(this.#e,ir(this.#e,n,tr({affectedAncestorIds:Dr(this.#e,t),affectedNodeIds:[t],attemptId:e.attemptId,path:H(this.#e,t),projectionChanged:this.isDirectoryProjectionVisible(t),stale:!r}))),r})}failChildLoad(e,t){return V(this.#e.instrumentation,`store.failChildLoad`,()=>{let n=this.resolveActiveDirectoryNodeId(e.nodeId);if(n==null)return!1;let r=xi(this.#e),i=Wn(this.#e,n,e.attemptId,t);return or(this.#e,ir(this.#e,r,nr({affectedAncestorIds:Dr(this.#e,n),affectedNodeIds:[n],attemptId:e.attemptId,errorMessage:t,path:H(this.#e,n),projectionChanged:this.isDirectoryProjectionVisible(n),stale:!i}))),i})}cleanup(e={}){return V(this.#e.instrumentation,`store.cleanup`,()=>{if(this.#e.transactionStack.length>0)throw Error(`Cleanup cannot run during an open batch or transaction.`);if(_i(this.#e))throw Error(`Cleanup cannot run while directory loads are active.`);let t=xi(this.#e),n=vi(this.#e,e.mode??`stable`);return or(this.#e,ir(this.#e,t,rr({...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=U(this.#e,p).childIds,_=m===d?n[m]??0:0,v=_,y,b=l.get(a)??Xt(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=Qt(on(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(!B(W(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=W(this.#e,n);In(this.#e,n,i)||(Ln(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=W(this.#e,e);if(!In(this.#e,e,t))return!1}return!0}requireDirectoryNodeId(e){let t=Or(this.#e,e);if(t==null)throw Error(`Path does not exist: "${e}"`);if(!B(W(this.#e,t)))throw Error(`Path is not a directory: "${e}"`);return t}resolveActiveDirectoryNodeId(e){try{if(!B(W(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=W(this.#e,t).parentId;if(e!==this.#e.snapshot.rootId){let n=W(this.#e,e),r=gr(this.#e,e);if(!In(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 qi(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 Ji={compact:{itemHeight:24,factor:.8},default:{itemHeight:30,factor:1},relaxed:{itemHeight:36,factor:1.2}};function Yi(e,t){if(typeof e==`number`)return{itemHeight:t??Ji.default.itemHeight,factor:e};let n=Ji[e??`default`];return{itemHeight:t??n.itemHeight,factor:n.factor}}var Xi=Ji.default.itemHeight,Zi=`@layer base, theme, unsafe;
2
2
 
3
3
  @layer base {
4
4
  :host {
@@ -2227,4 +2227,4 @@ import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{n as t,r as n,t as r}f
2227
2227
  color: var(--diffs-selection-number-fg) !important;
2228
2228
  }
2229
2229
  `;function Sm(e){let t=(0,Yp.c)(5),n=Ve(e.environmentId,e.resource),[r,i]=(0,J.useState)(null);if(n._tag===`Failure`||n._tag===`Success`&&r===n.url){let e;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(`div`,{className:`flex min-h-0 flex-1 items-center justify-center px-6 text-center text-xs leading-relaxed text-destructive`,children:`Unable to load image.`}),t[0]=e):e=t[0],e}let a;return t[1]!==n._tag||t[2]!==n.url||t[3]!==e.alt?(a=n._tag===`Success`?(0,Y.jsx)(`div`,{className:`flex min-h-0 flex-1 items-center justify-center overflow-auto p-4`,children:(0,Y.jsx)(`img`,{className:`max-h-full max-w-full object-contain`,src:n.url,alt:e.alt,onError:()=>i(n.url)})}):(0,Y.jsx)(`div`,{className:`flex min-h-0 flex-1 items-center justify-center text-muted-foreground`,children:(0,Y.jsx)(T,{className:`size-5 animate-spin`})}),t[1]=n._tag,t[2]=n.url,t[3]=e.alt,t[4]=a):a=t[4],a}function Cm(e,t){let n=1;for(let t=0;t<e.length;t+=1){let r=e.charCodeAt(t);r===10?n+=1:r===13&&(n+=1,e.charCodeAt(t+1)===10&&(t+=1))}return Math.min(Math.max(1,t),n)}function wm(e,t){let n=e.shadowRoot??e;for(let e of n.querySelectorAll(`[${bm}]`))e.removeAttribute(bm);t!==null&&(n.querySelector(`[data-line="${t}"]`)?.setAttribute(bm,``),n.querySelector(`[data-column-number="${t}"]`)?.setAttribute(bm,``))}function Tm(e,t,n){let r=(0,Yp.c)(7),[i]=(0,J.useState)(Om),[a]=(0,J.useState)(Dm),[o]=(0,J.useState)(Em),s;return r[0]!==i||r[1]!==a||r[2]!==o||r[3]!==e||r[4]!==t||r[5]!==n?(s=(r,s,c)=>{if(e===null)return;let l=()=>{let t=o.get(e);t!==void 0&&(cancelAnimationFrame(t),o.delete(e))};if(c===`unmount`){l();return}let u=t===null?null:Cm(s.file?.contents??``,t);if(wm(r,u),!(s instanceof j))return;if(a.get(e)!==n&&(l(),a.set(e,n)),u===null){r.style.minHeight=``;return}let d=r.closest(`.file-preview-virtualizer`);!d||(r.style.minHeight=`${Math.ceil(Math.max(s.height,d.clientHeight))}px`,i.get(e)===n||o.has(e))||o.set(e,requestAnimationFrame(()=>{if(o.delete(e),a.get(e)!==n||!r.isConnected)return;let t=s.getLinePosition(u);if(!t)return;let c=d.scrollTop+r.getBoundingClientRect().top-d.getBoundingClientRect().top,l=Math.max(0,c+t.top-Math.max(0,(d.clientHeight-t.height)/2)),f=Math.max(0,d.scrollHeight-d.clientHeight);d.scrollTop=Math.min(l,f),i.set(e,n)}))},r[0]=i,r[1]=a,r[2]=o,r[3]=e,r[4]=t,r[5]=n,r[6]=s):s=r[6],s}function Em(){return new Map}function Dm(){return new Map}function Om(){return new Map}function km(e){let t=(0,Yp.c)(19),{environmentId:n,cwd:r,relativePath:i,onPendingChange:a}=e,o=h(_e.writeFile),s;t[0]!==a||t[1]!==i?(s=e=>a(i,e),t[0]=a,t[1]=i,t[2]=s):s=t[2];let c;t[3]!==r||t[4]!==n||t[5]!==i||t[6]!==o?(c=e=>o({environmentId:n,input:{cwd:r,relativePath:i,contents:e}}),t[3]=r,t[4]=n,t[5]=i,t[6]=o,t[7]=c):c=t[7];let l;t[8]!==r||t[9]!==n||t[10]!==i?(l=e=>{He(n,r,i,e)},t[8]=r,t[9]=n,t[10]=i,t[11]=l):l=t[11];let u;t[12]!==s||t[13]!==c||t[14]!==l?(u=new _m({debounceMs:ym,onPendingChange:s,persist:c,onConfirmed:l}),t[12]=s,t[13]=c,t[14]=l,t[15]=u):u=t[15];let d=u,f,p;return t[16]===d?(f=t[17],p=t[18]):(f=()=>()=>d.dispose(),p=[d],t[16]=d,t[17]=f,t[18]=p),(0,J.useEffect)(f,p),d}function Am(e){let t=(0,Yp.c)(73),{environmentId:n,cwd:r,relativePath:i,composerDraftTarget:a,contents:o,resolvedTheme:s,revealRequestId:c,wordWrap:l,onPostRender:u,onPendingChange:d}=e,p=f(Lm),m=f(Im),h;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(h=[],t[0]=h):h=t[0];let[g,_]=(0,J.useState)(h),[v,y]=(0,J.useState)(null),b=v?.revealRequestId===c?v.range:null,x;t[1]===c?x=t[2]:(x=e=>{y({revealRequestId:c,range:e})},t[1]=c,t[2]=x);let S=x,C=(0,J.useRef)(null),w=(0,J.useRef)(null),T;t[3]!==r||t[4]!==n||t[5]!==d||t[6]!==i?(T={environmentId:n,cwd:r,relativePath:i,onPendingChange:d},t[3]=r,t[4]=n,t[5]=d,t[6]=i,t[7]=T):T=t[7];let E=km(T),D=(0,J.useRef)(null),O;t[8]!==p||t[9]!==a||t[10]!==r||t[11]!==n||t[12]!==i||t[13]!==E?(O=(e,t)=>{if(je(n,r,i,e.contents),E.change(e.contents),t){let n=at(t);_(n);for(let t of n)for(let n of t.metadata.entries)n.kind===`comment`&&p(a,ee({id:n.id,filePath:i,startLine:n.startLine,endLine:n.endLine,text:n.text,contents:e.contents}))}},t[8]=p,t[9]=a,t[10]=r,t[11]=n,t[12]=i,t[13]=E,t[14]=O):O=t[14];let k=O,te;t[15]===Symbol.for(`react.memo_cache_sentinel`)?(te=e=>{let t=new Vp(e);return D.current=t,t},t[15]=te):te=t[15];let A=te,j,M;t[16]===Symbol.for(`react.memo_cache_sentinel`)?(j=()=>()=>{D.current?.cleanUp(),D.current=null},M=[],t[16]=j,t[17]=M):(j=t[16],M=t[17]),(0,J.useEffect)(j,M);let N;t[18]!==a||t[19]!==m||t[20]!==S?(N=e=>{S(null),m(a,e),_(t=>t.flatMap(t=>{let n=t.metadata.entries.filter(t=>t.id!==e);return n.length>0?[{...t,metadata:{entries:n}}]:[]}))},t[18]=a,t[19]=m,t[20]=S,t[21]=N):N=t[21];let P=N,ne;t[22]!==p||t[23]!==a||t[24]!==o||t[25]!==g||t[26]!==i||t[27]!==S?(ne=(e,t)=>{S(null);let n=g.flatMap(Fm).find(t=>t.id===e);n&&p(a,ee({id:n.id,filePath:i,startLine:n.startLine,endLine:n.endLine,text:t,contents:o})),_(n=>n.map(n=>({...n,metadata:{entries:n.metadata.entries.map(n=>n.id===e?{...n,kind:`comment`,text:t}:n)}})))},t[22]=p,t[23]=a,t[24]=o,t[25]=g,t[26]=i,t[27]=S,t[28]=ne):ne=t[28];let re=ne,ie;t[29]===Symbol.for(`react.memo_cache_sentinel`)?(ie=e=>{let{startLine:t,endLine:n}=R(e),r={id:ot(),kind:`draft`,startLine:t,endLine:n,text:``};_(e=>{let t=e.flatMap(Nm),i=t.findIndex(e=>e.lineNumber===n);return i<0?[...t,{lineNumber:n,metadata:{entries:[r]}}]:t.map((e,t)=>t===i?{...e,metadata:{entries:[...e.metadata.entries,r]}}:e)})},t[29]=ie):ie=t[29];let ae=ie,oe;t[30]===g?oe=t[31]:(oe=g.some(jm),t[30]=g,t[31]=oe);let se=oe,ce,le;t[32]!==se||t[33]!==S?(ce=()=>{let e=C.current;if(e)return dm({root:e,resolveEditor:()=>D.current,isBlocked:()=>se,onDismiss:()=>S(null)})},le=[se,S],t[32]=se,t[33]=S,t[34]=ce,t[35]=le):(ce=t[34],le=t[35]),(0,J.useEffect)(ce,le);let ue;t[36]===S?ue=t[37]:(ue=e=>{S(e),e&&ae(e)},t[36]=S,t[37]=ue);let de=ue,fe;t[38]!==u||t[39]!==b?(fe=(e,t,n)=>{u(e,t,n),w.current!==null&&(cancelAnimationFrame(w.current),w.current=null),n!==`unmount`&&(w.current=requestAnimationFrame(()=>{w.current=null,e.isConnected&&t.setSelectedLines(b,{notify:!1})}))},t[38]=u,t[39]=b,t[40]=fe):fe=t[40];let pe=fe,me;t[41]===Symbol.for(`react.memo_cache_sentinel`)?(me={overscrollSize:600,intersectionObserverMargin:1200},t[41]=me):me=t[41];let he;t[42]!==o||t[43]!==r||t[44]!==i?(he=pm(r,i,o),t[42]=o,t[43]=r,t[44]=i,t[45]=he):he=t[45];let F;t[46]!==o||t[47]!==i||t[48]!==he?(F={name:i,contents:o,cacheKey:he},t[46]=o,t[47]=i,t[48]=he,t[49]=F):F=t[49];let ge=!se,_e=!se,ve=l?`wrap`:`scroll`,ye;t[50]===s?ye=t[51]:(ye=Me(s),t[50]=s,t[51]=ye);let be;t[52]!==de||t[53]!==pe||t[54]!==s||t[55]!==S||t[56]!==ge||t[57]!==_e||t[58]!==ve||t[59]!==ye?(be={disableFileHeader:!0,enableGutterUtility:ge,enableLineSelection:_e,onGutterUtilityClick:S,onLineSelectionChange:S,onLineSelectionEnd:de,overflow:ve,theme:ye,themeType:s,unsafeCSS:xm,onPostRender:pe},t[52]=de,t[53]=pe,t[54]=s,t[55]=S,t[56]=ge,t[57]=_e,t[58]=ve,t[59]=ye,t[60]=be):be=t[60];let Se;t[61]!==P||t[62]!==re?(Se=e=>(0,Y.jsx)(`div`,{className:`py-1`,children:e.metadata.entries.map(e=>(0,Y.jsx)(it,{kind:e.kind,rangeLabel:z(e.startLine,e.endLine),text:e.text,onCancel:()=>P(e.id),onComment:t=>re(e.id,t),onDelete:()=>P(e.id)},e.id))}),t[61]=P,t[62]=re,t[63]=Se):Se=t[63];let Ce;t[64]===k?Ce=t[65]:(Ce={onChange:k},t[64]=k,t[65]=Ce);let we;return t[66]!==g||t[67]!==b||t[68]!==F||t[69]!==be||t[70]!==Se||t[71]!==Ce?(we=(0,Y.jsx)(xe,{createEditor:A,children:(0,Y.jsx)(`div`,{ref:C,className:`flex min-h-0 flex-1`,children:(0,Y.jsx)($e,{className:`file-preview-virtualizer min-h-0 flex-1 overflow-auto`,config:me,children:(0,Y.jsx)(Jl,{file:F,options:be,selectedLines:b,lineAnnotations:g,renderAnnotation:Se,className:`min-h-full`,edit:!0,editorOptions:Ce})})})}),t[66]=g,t[67]=b,t[68]=F,t[69]=be,t[70]=Se,t[71]=Ce,t[72]=we):we=t[72],we}function jm(e){return e.metadata.entries.some(Mm)}function Mm(e){return e.kind===`draft`}function Nm(e){let t=e.metadata.entries.filter(Pm);return t.length>0?[{...e,metadata:{entries:t}}]:[]}function Pm(e){return e.kind!==`draft`}function Fm(e){return e.metadata.entries}function Im(e){return e.removeReviewComment}function Lm(e){return e.addReviewComment}function Rm(e){let t=(0,Yp.c)(17),{environmentId:n,cwd:r,relativePath:i,contents:a,threadRef:o,readOnly:s,onPendingChange:c}=e,l;t[0]!==r||t[1]!==n||t[2]!==c||t[3]!==i?(l={environmentId:n,cwd:r,relativePath:i,onPendingChange:c},t[0]=r,t[1]=n,t[2]=c,t[3]=i,t[4]=l):l=t[4];let u=km(l),d;t[5]!==a||t[6]!==r||t[7]!==n||t[8]!==s||t[9]!==i||t[10]!==u?(d=s?{}:{onTaskListChange:e=>{let{markerOffset:t,checked:o}=e,s=Ze(n,r,i)?.contents??a,c=gm(s,t,o);c!==s&&(je(n,r,i,c),u.change(c))}},t[5]=a,t[6]=r,t[7]=n,t[8]=s,t[9]=i,t[10]=u,t[11]=d):d=t[11];let f;return t[12]!==a||t[13]!==r||t[14]!==d||t[15]!==o?(f=(0,Y.jsx)(ge,{className:`min-h-0 flex-1`,children:(0,Y.jsx)(Ge,{text:a,cwd:r,threadRef:o,className:`mx-auto max-w-4xl px-6 py-5`,...d})}),t[12]=a,t[13]=r,t[14]=d,t[15]=o,t[16]=f):f=t[16],f}function zm(){try{return a(vm,O)??!0}catch(e){return console.error(e),!0}}function Bm(e){let t=(0,Yp.c)(103),{environmentId:n,cwd:r,projectName:i,workspaceRoot:a,relativePath:c,absolutePath:f,isOutsideWorkspace:y,threadRef:b,composerDraftTarget:x,keybindings:O,availableEditors:ee,revealLine:j,revealRequestId:M,onOpenFile:N,onPendingChange:P}=e,{resolvedTheme:re}=m(),ie=de(Hm),ae=u(),oe=l(n),se;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(se={reportFailure:!1},t[0]=se):se=t[0];let ce=Le(ne.createUrl,se),le;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(le={reportFailure:!1},t[1]=le):le=t[1];let ue=h(o.open,le),fe=n===ae,pe;t[2]===c?pe=t[3]:(pe=c!==null&&w(c),t[2]=c,t[3]=pe);let he=pe,F=Ke(n,r,c,!he,f),[_e,ve]=(0,J.useState)(zm),[ye,be]=(0,J.useState)(!1),xe;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(xe={path:null,revealRequestId:null},t[4]=xe):xe=t[4];let[Se,Ce]=(0,J.useState)(xe),we=(0,J.useRef)(null),Te;t[5]===c?Te=t[6]:(Te=c?hm(c):!1,t[5]=c,t[6]=Te);let I=Te,Ee=I&&Se.path===c&&(j===null||Se.revealRequestId===M),Oe;t[7]===c?Oe=t[8]:(Oe=c!==null&&d()&&Je(c),t[7]=c,t[8]=Oe);let ke=Oe,Ae;t[9]!==r||t[10]!==f||t[11]!==c?(Ae=f??(c?v(c,r):null),t[9]=r,t[10]=f,t[11]=c,t[12]=Ae):Ae=t[12];let L=Ae,je;t[13]!==L||t[14]!==fe||t[15]!==b.threadId||t[16]!==a?(je=L===null?null:C({filePath:L,threadId:b.threadId,workspaceRoot:a,allowLocalFiles:fe}),t[13]=L,t[14]=fe,t[15]=b.threadId,t[16]=a,t[17]=je):je=t[17];let Ne=je,Pe;t[18]!==r||t[19]!==y||t[20]!==i||t[21]!==c?(Pe=c?mm(y?r:i,c):[],t[18]=r,t[19]=y,t[20]=i,t[21]=c,t[22]=Pe):Pe=t[22];let Ie=Pe,Re=Tm(c,j,M),Ve;t[23]===Symbol.for(`react.memo_cache_sentinel`)?(Ve=()=>{(we.current?.querySelector(`[data-current-file-crumb='true']`))?.scrollIntoView({block:`nearest`,inline:`end`})},t[23]=Ve):Ve=t[23];let He;t[24]===c?He=t[25]:(He=[c],t[24]=c,t[25]=He),(0,J.useEffect)(Ve,He);let Ue;t[26]===Symbol.for(`react.memo_cache_sentinel`)?(Ue=()=>{ve(Vm)},t[26]=Ue):Ue=t[26];let Ge=Ue,Xe;t[27]!==L||t[28]!==fe||t[29]!==ce||t[30]!==oe||t[31]!==ue||t[32]!==re||t[33]!==b||t[34]!==a?(Xe=()=>{!L||!oe||(async()=>{let e=await Be({threadRef:b,filePath:L,httpBaseUrl:oe,workspaceRoot:a,allowLocalFiles:fe,theme:re,createAssetUrl:ce,openPreview:ue});if(e._tag===`Success`||D(e))return;let t=k(e);g.add(E({type:`error`,title:`Unable to open file in browser`,description:t instanceof Error?t.message:`An error occurred.`}))})()},t[27]=L,t[28]=fe,t[29]=ce,t[30]=oe,t[31]=ue,t[32]=re,t[33]=b,t[34]=a,t[35]=Xe):Xe=t[35];let Ze=Xe,Qe;t[36]!==L||t[37]!==fe||t[38]!==ee||t[39]!==x||t[40]!==r||t[41]!==n||t[42]!==F||t[43]!==Ne||t[44]!==he||t[45]!==I||t[46]!==y||t[47]!==O||t[48]!==Re||t[49]!==P||t[50]!==c||t[51]!==Ee||t[52]!==re||t[53]!==M||t[54]!==b||t[55]!==ie?(Qe=c&&he&&Ne?(0,Y.jsx)(Sm,{environmentId:n,resource:Ne,alt:c},L??c):c&&F.error&&F.data===null?(0,Y.jsx)(`div`,{className:`flex min-h-0 flex-1 items-center justify-center px-6 text-center text-xs leading-relaxed text-destructive`,children:F.error}):c&&F.data===null?(0,Y.jsx)(`div`,{className:`flex min-h-0 flex-1 items-center justify-center text-muted-foreground`,children:(0,Y.jsx)(T,{className:`size-5 animate-spin`})}):c&&F.data?F.data.binary&&L?(0,Y.jsx)(om,{environmentId:n,keybindings:O,availableEditors:ee,absolutePath:L,name:c.slice(c.lastIndexOf(`/`)+1),byteLength:F.data.byteLength,canRevealInFileManager:fe&&S()}):I&&Ee?(0,Y.jsx)(Rm,{environmentId:n,cwd:r,relativePath:c,threadRef:b,contents:F.data.contents,readOnly:y,onPendingChange:P}):F.data.truncated||y?(0,Y.jsx)($e,{className:`file-preview-virtualizer min-h-0 flex-1 overflow-auto`,config:{overscrollSize:600,intersectionObserverMargin:1200},children:(0,Y.jsx)(Jl,{file:{name:c,contents:F.data.contents,cacheKey:pm(r,c,F.data.contents)},options:{disableFileHeader:!0,overflow:ie?`wrap`:`scroll`,theme:Me(re),themeType:re,unsafeCSS:xm,onPostRender:Re},className:`min-h-full`})},`${c}:${re}:${F.data.byteLength}`):(0,Y.jsx)(Am,{environmentId:n,cwd:r,relativePath:c,composerDraftTarget:x,contents:F.data.contents,resolvedTheme:re,revealRequestId:M,wordWrap:ie,onPostRender:Re,onPendingChange:P},`${c}:${re}`):null,t[36]=L,t[37]=fe,t[38]=ee,t[39]=x,t[40]=r,t[41]=n,t[42]=F,t[43]=Ne,t[44]=he,t[45]=I,t[46]=y,t[47]=O,t[48]=Re,t[49]=P,t[50]=c,t[51]=Ee,t[52]=re,t[53]=M,t[54]=b,t[55]=ie,t[56]=Qe):Qe=t[56];let et=Qe,tt;t[57]!==L||t[58]!==ee||t[59]!==Ie||t[60]!==ke||t[61]!==n||t[62]!==ye||t[63]!==_e||t[64]!==Ze||t[65]!==I||t[66]!==O||t[67]!==ae||t[68]!==i||t[69]!==c||t[70]!==Ee||t[71]!==M?(tt=c?(0,Y.jsxs)(`div`,{className:`surface-subheader gap-2 px-3`,"data-surface-subheader":!0,children:[(0,Y.jsx)(ge,{ref:we,hideScrollbars:!0,scrollFade:!0,className:`min-w-0 flex-1 rounded-none`,"data-file-breadcrumbs":!0,children:(0,Y.jsx)(`div`,{className:`flex h-full w-max min-w-full items-center text-xs`,children:Ie.map((e,t)=>(0,Y.jsxs)(`div`,{className:`flex min-w-0 shrink-0 items-center`,"data-current-file-crumb":e.kind===`file`,children:[t>0?(0,Y.jsx)(te,{className:`mx-1 size-3.5 shrink-0 text-muted-foreground/60`}):null,(0,Y.jsx)(`span`,{className:s(`max-w-40 truncate`,e.kind===`file`?`font-medium text-foreground`:`text-muted-foreground`),title:e.path||i,children:e.label})]},e.path||`project`))})}),L&&n===ae?(0,Y.jsx)(We,{environmentId:n,keybindings:O,availableEditors:ee,openInCwd:L,compact:!0,enableShortcut:!1}):null,I?(0,Y.jsxs)(_,{children:[(0,Y.jsx)(A,{render:(0,Y.jsx)(Fe,{className:`shrink-0`,pressed:Ee,onPressedChange:e=>{Ce({path:e?c:null,revealRequestId:e?M:null})},"aria-label":Ee?`Show markdown source`:`Show rendered markdown`,variant:`ghost`,size:`sm`,children:Ee?(0,Y.jsx)(ze,{className:`size-3.5`}):(0,Y.jsx)(Ye,{className:`size-3.5`})})}),(0,Y.jsx)(p,{children:Ee?`Show markdown source`:`Show rendered markdown`})]}):null,ke?(0,Y.jsxs)(_,{children:[(0,Y.jsx)(A,{render:(0,Y.jsx)(Fe,{className:`shrink-0`,pressed:!1,onPressedChange:Ze,"aria-label":`Open file in preview browser`,variant:`ghost`,size:`sm`,children:(0,Y.jsx)(qe,{className:`size-3.5`})})}),(0,Y.jsx)(p,{children:`Open file in preview browser`})]}):null,(0,Y.jsxs)(_,{children:[(0,Y.jsx)(A,{render:(0,Y.jsx)(Fe,{className:`shrink-0`,pressed:ye,onPressedChange:be,"aria-label":ye?`Collapse file preview`:`Expand file preview`,variant:`ghost`,size:`sm`,children:ye?(0,Y.jsx)(me,{className:`size-3.5`}):(0,Y.jsx)(De,{className:`size-3.5`})})}),(0,Y.jsx)(p,{children:ye?`Collapse file preview`:`Expand file preview`})]}),(0,Y.jsxs)(_,{children:[(0,Y.jsx)(A,{render:(0,Y.jsx)(Fe,{className:`shrink-0`,pressed:_e,onPressedChange:Ge,"aria-label":_e?`Hide file explorer`:`Show file explorer`,variant:`ghost`,size:`sm`,children:(0,Y.jsx)(ct,{className:`size-3.5`})})}),(0,Y.jsx)(p,{children:_e?`Hide file explorer`:`Show file explorer`})]})]}):null,t[57]=L,t[58]=ee,t[59]=Ie,t[60]=ke,t[61]=n,t[62]=ye,t[63]=_e,t[64]=Ze,t[65]=I,t[66]=O,t[67]=ae,t[68]=i,t[69]=c,t[70]=Ee,t[71]=M,t[72]=tt):tt=t[72];let nt;t[73]!==F||t[74]!==c?(nt=c&&F.data?.truncated?(0,Y.jsxs)(`div`,{className:`shrink-0 border-b border-amber-500/20 bg-amber-500/8 px-3 py-1.5 text-[11px] text-amber-700 dark:text-amber-300`,children:[`Preview limited to the first 1 MB of a `,F.data.byteLength.toLocaleString(),` byte file.`]}):null,t[73]=F,t[74]=c,t[75]=nt):nt=t[75];let rt=c?`flex`:`hidden`,it;t[76]===rt?it=t[77]:(it=s(`min-w-0 flex-1 flex-col overflow-hidden`,rt),t[76]=rt,t[77]=it);let at;t[78]!==ye||t[79]!==et?(at=ye?(0,Y.jsx)(`div`,{className:`flex min-h-0 flex-1 items-center justify-center px-6 text-center text-xs text-muted-foreground`,children:`Shown in the expanded view.`}):et,t[78]=ye,t[79]=et,t[80]=at):at=t[80];let ot;t[81]!==it||t[82]!==at?(ot=(0,Y.jsx)(`div`,{className:it,children:at}),t[81]=it,t[82]=at,t[83]=ot):ot=t[83];let R;t[84]!==r||t[85]!==n||t[86]!==_e||t[87]!==N||t[88]!==i||t[89]!==c?(R=_e||c===null?(0,Y.jsx)(`aside`,{className:s(`flex min-h-0 shrink-0 bg-background`,c?`w-[min(22rem,46%)] min-w-64 border-l border-border/60`:`min-w-0 flex-1`),children:(0,Y.jsx)(em,{environmentId:n,cwd:r,projectName:i,onOpenFile:N},`${n}:${r}`)}):null,t[84]=r,t[85]=n,t[86]=_e,t[87]=N,t[88]=i,t[89]=c,t[90]=R):R=t[90];let z;t[91]!==ot||t[92]!==R?(z=(0,Y.jsxs)(`div`,{className:`flex min-h-0 flex-1 overflow-hidden`,children:[ot,R]}),t[91]=ot,t[92]=R,t[93]=z):z=t[93];let st=ye&&c!==null,lt=c??``,ut;t[94]!==et||t[95]!==st||t[96]!==lt?(ut=(0,Y.jsx)(tm,{open:st,title:lt,onOpenChange:be,children:et}),t[94]=et,t[95]=st,t[96]=lt,t[97]=ut):ut=t[97];let dt;return t[98]!==tt||t[99]!==nt||t[100]!==z||t[101]!==ut?(dt=(0,Y.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col overflow-hidden bg-background`,children:[tt,nt,z,ut]}),t[98]=tt,t[99]=nt,t[100]=z,t[101]=ut,t[102]=dt):dt=t[102],dt}function Vm(e){let t=!e;try{x(vm,t,O)}catch(e){console.error(e)}return t}function Hm(e){return e.wordWrap}export{Bm as default};
2230
- //# sourceMappingURL=FilePreviewPanel-OONhxVl2.js.map
2230
+ //# sourceMappingURL=FilePreviewPanel-DM1DhmQP.js.map