@netlify/agent-runner-cli 1.176.0-PAW-469.7 → 1.176.0-PAW-469.8

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-local.js CHANGED
@@ -141,7 +141,7 @@ For example, you can use the \`pathToFileURL()\` method of the \`url\` core modu
141
141
  `,LF:`
142
142
  `,concatBytes:lj},U6e=(t,e)=>{let r=new Uint8Array(t.length+e.length);return r.set(t,0),r.set(e,t.length),r},F6e={windowsNewline:new Uint8Array([13,10]),unixNewline:new Uint8Array([10]),LF:10,concatBytes:U6e};import{Buffer as z6e}from"buffer";var Mue=(t,e)=>t?void 0:j6e.bind(void 0,e),j6e=function*(t,e){if(typeof e!="string"&&!vr(e)&&!z6e.isBuffer(e))throw new TypeError(`The \`${t}\` option's transform must use "objectMode: true" to receive as input: ${typeof e}.`);yield e},$ue=(t,e)=>t?B6e.bind(void 0,e):q6e.bind(void 0,e),B6e=function*(t,e){Due(t,e),yield e},q6e=function*(t,e){if(Due(t,e),typeof e!="string"&&!vr(e))throw new TypeError(`The \`${t}\` option's function must yield a string or an Uint8Array, not ${typeof e}.`);yield e},Due=(t,e)=>{if(e==null)throw new TypeError(`The \`${t}\` option's function must not call \`yield ${e}\`.
143
143
  Instead, \`yield\` should either be called with a value, or not be called at all. For example:
144
- if (condition) { yield value; }`)};import{Buffer as V6e}from"buffer";import{StringDecoder as G6e}from"string_decoder";var IC=(t,e,r)=>{if(r)return;if(t)return{transform:H6e.bind(void 0,new TextEncoder)};let n=new G6e(e);return{transform:W6e.bind(void 0,n),final:Y6e.bind(void 0,n)}},H6e=function*(t,e){V6e.isBuffer(e)?yield Fa(e):typeof e=="string"?yield t.encode(e):yield e},W6e=function*(t,e){yield vr(e)?t.write(e):e},Y6e=function*(t){let e=t.end();e!==""&&(yield e)};import{callbackify as Lue}from"util";var dj=Lue(async(t,e,r,n)=>{e.currentIterable=t(...r);try{for await(let i of e.currentIterable)n.push(i)}finally{delete e.currentIterable}}),PC=async function*(t,e,r){if(r===e.length){yield t;return}let{transform:n=Z6e}=e[r];for await(let i of n(t))yield*PC(i,e,r+1)},Uue=async function*(t){for(let[e,{final:r}]of Object.entries(t))yield*K6e(r,Number(e),t)},K6e=async function*(t,e,r){if(t!==void 0)for await(let n of t())yield*PC(n,r,e+1)},Fue=Lue(async({currentIterable:t},e)=>{if(t!==void 0){await(e?t.throw(e):t.return());return}if(e)throw e}),Z6e=function*(t){yield t};var fj=(t,e,r,n)=>{try{for(let i of t(...e))r.push(i);n()}catch(i){n(i)}},zue=(t,e)=>[...e.flatMap(r=>[...Ad(r,t,0)]),...bE(t)],Ad=function*(t,e,r){if(r===e.length){yield t;return}let{transform:n=X6e}=e[r];for(let i of n(t))yield*Ad(i,e,r+1)},bE=function*(t){for(let[e,{final:r}]of Object.entries(t))yield*J6e(r,Number(e),t)},J6e=function*(t,e,r){if(t!==void 0)for(let n of t())yield*Ad(n,r,e+1)},X6e=function*(t){yield t};var pj=({value:t,value:{transform:e,final:r,writableObjectMode:n,readableObjectMode:i},optionName:o},{encoding:s})=>{let a={},c=Bue(t,s,o),l=wd(e),u=wd(r),d=l?dj.bind(void 0,PC,a):fj.bind(void 0,Ad),f=l||u?dj.bind(void 0,Uue,a):fj.bind(void 0,bE),p=l||u?Fue.bind(void 0,a):void 0;return{stream:new Q6e({writableObjectMode:n,writableHighWaterMark:jue(n),readableObjectMode:i,readableHighWaterMark:jue(i),transform(m,g,_){d([m,c,0],this,_)},flush(m){f([c],this,m)},destroy:p})}},OC=(t,e,r,n)=>{let i=e.filter(({type:s})=>s==="generator"),o=n?i.reverse():i;for(let{value:s,optionName:a}of o){let c=Bue(s,r,a);t=zue(c,t)}return t},Bue=({transform:t,final:e,binary:r,writableObjectMode:n,readableObjectMode:i,preserveNewlines:o},s,a)=>{let c={};return[{transform:Mue(n,a)},IC(r,s,n),CC(r,o,n,c),{transform:t,final:e},{transform:$ue(i,a)},kue({binary:r,preserveNewlines:o,readableObjectMode:i,state:c})].filter(Boolean)};var que=(t,e)=>{for(let r of e3e(t))t3e(t,r,e)},e3e=t=>new Set(Object.entries(t).filter(([,{direction:e}])=>e==="input").map(([e])=>Number(e))),t3e=(t,e,r)=>{let{stdioItems:n}=t[e],i=n.filter(({contents:a})=>a!==void 0);if(i.length===0)return;if(e!==0){let[{type:a,optionName:c}]=i;throw new TypeError(`Only the \`stdin\` option, not \`${c}\`, can be ${fl[a]} with synchronous methods.`)}let s=i.map(({contents:a})=>a).map(a=>r3e(a,n));r.input=fE(s)},r3e=(t,e)=>{let r=OC(t,e,"utf8",!0);return n3e(r),fE(r)},n3e=t=>{let e=t.find(r=>typeof r!="string"&&!vr(r));if(e!==void 0)throw new TypeError(`The \`stdin\` option is invalid: when passing objects as input, a transform must be used to serialize them to strings or Uint8Arrays: ${e}.`)};import{writeFileSync as a3e,appendFileSync as c3e}from"fs";var NC=({stdioItems:t,encoding:e,verboseInfo:r,fdNumber:n})=>n!=="all"&&Ch(r,n)&&!wi.has(e)&&i3e(n)&&(t.some(({type:i,value:o})=>i==="native"&&o3e.has(o))||t.every(({type:i})=>Qi.has(i))),i3e=t=>t===1||t===2,o3e=new Set(["pipe","overlapped"]),Vue=async(t,e,r,n)=>{for await(let i of t)s3e(e)||Hue(i,r,n)},Gue=(t,e,r)=>{for(let n of t)Hue(n,e,r)},s3e=t=>t._readableState.pipes.length>0,Hue=(t,e,r)=>{let n=H0(t);Os({type:"output",verboseMessage:n,fdNumber:e,verboseInfo:r})};var Wue=({fileDescriptors:t,syncResult:{output:e},options:r,isMaxBuffer:n,verboseInfo:i})=>{if(e===null)return{output:Array.from({length:3})};let o={},s=new Set([]);return{output:e.map((c,l)=>l3e({result:c,fileDescriptors:t,fdNumber:l,state:o,outputFiles:s,isMaxBuffer:n,verboseInfo:i},r)),...o}},l3e=({result:t,fileDescriptors:e,fdNumber:r,state:n,outputFiles:i,isMaxBuffer:o,verboseInfo:s},{buffer:a,encoding:c,lines:l,stripFinalNewline:u,maxBuffer:d})=>{if(t===null)return;let f=Yle(t,o,d),p=Fa(f),{stdioItems:h,objectMode:m}=e[r],g=u3e([p],h,c,n),{serializedResult:_,finalResult:b=_}=d3e({chunks:g,objectMode:m,encoding:c,lines:l,stripFinalNewline:u,fdNumber:r});f3e({serializedResult:_,fdNumber:r,state:n,verboseInfo:s,encoding:c,stdioItems:h,objectMode:m});let w=a[r]?b:void 0;try{return n.error===void 0&&p3e(_,h,i),w}catch(E){return n.error=E,w}},u3e=(t,e,r,n)=>{try{return OC(t,e,r,!1)}catch(i){return n.error=i,t}},d3e=({chunks:t,objectMode:e,encoding:r,lines:n,stripFinalNewline:i,fdNumber:o})=>{if(e)return{serializedResult:t};if(r==="buffer")return{serializedResult:fE(t)};let s=cae(t,r);return n[o]?{serializedResult:s,finalResult:uj(s,!i[o],e)}:{serializedResult:s}},f3e=({serializedResult:t,fdNumber:e,state:r,verboseInfo:n,encoding:i,stdioItems:o,objectMode:s})=>{if(!NC({stdioItems:o,encoding:i,verboseInfo:n,fdNumber:e}))return;let a=uj(t,!1,s);try{Gue(a,e,n)}catch(c){r.error??=c}},p3e=(t,e,r)=>{for(let{path:n,append:i}of e.filter(({type:o})=>xC.has(o))){let o=typeof n=="string"?n:n.toString();i||r.has(o)?c3e(n,t):(r.add(o),a3e(n,t))}};var Yue=([,t,e],r)=>{if(r.all)return t===void 0?e:e===void 0?t:Array.isArray(t)?Array.isArray(e)?[...t,...e]:[...t,Ba(e,r,"all")]:Array.isArray(e)?[Ba(t,r,"all"),...e]:vr(t)&&vr(e)?Sz([t,e]):`${t}${e}`};import{once as hj}from"events";var Kue=async(t,e)=>{let[r,n]=await h3e(t);return e.isForcefullyTerminated??=!1,[r,n]},h3e=async t=>{let[e,r]=await Promise.allSettled([hj(t,"spawn"),hj(t,"exit")]);return e.status==="rejected"?[]:r.status==="rejected"?Zue(t):r.value},Zue=async t=>{try{return await hj(t,"exit")}catch{return Zue(t)}},Jue=async t=>{let[e,r]=await t;if(!m3e(e,r)&&mj(e,r))throw new Uo;return[e,r]},m3e=(t,e)=>t===void 0&&e===void 0,mj=(t,e)=>t!==0||e!==null;var Xue=({error:t,status:e,signal:r,output:n},{maxBuffer:i})=>{let o=g3e(t,e,r),s=o?.code==="ETIMEDOUT",a=Wle(o,n,i);return{resultError:o,exitCode:e,signal:r,timedOut:s,isMaxBuffer:a}},g3e=(t,e,r)=>t!==void 0?t:mj(e,r)?new Uo:void 0;var Que=(t,e,r)=>{let{file:n,commandArguments:i,command:o,escapedCommand:s,startTime:a,verboseInfo:c,options:l,fileDescriptors:u}=y3e(t,e,r),d=v3e({file:n,commandArguments:i,options:l,command:o,escapedCommand:s,verboseInfo:c,fileDescriptors:u,startTime:a});return Uh(d,c,l)},y3e=(t,e,r)=>{let{command:n,escapedCommand:i,startTime:o,verboseInfo:s}=Y0(t,e,r),a=S3e(r),{file:c,commandArguments:l,options:u}=hC(t,e,a);E3e(u);let d=Iue(u,s);return{file:c,commandArguments:l,command:n,escapedCommand:i,startTime:o,verboseInfo:s,options:u,fileDescriptors:d}},S3e=t=>t.node&&!t.ipc?{...t,ipc:!1}:t,E3e=({ipc:t,ipcInput:e,detached:r,cancelSignal:n})=>{e&&kC("ipcInput"),t&&kC("ipc: true"),r&&kC("detached: true"),n&&kC("cancelSignal")},kC=t=>{throw new TypeError(`The "${t}" option cannot be used with synchronous methods.`)},v3e=({file:t,commandArguments:e,options:r,command:n,escapedCommand:i,verboseInfo:o,fileDescriptors:s,startTime:a})=>{let c=b3e({file:t,commandArguments:e,options:r,command:n,escapedCommand:i,fileDescriptors:s,startTime:a});if(c.failed)return c;let{resultError:l,exitCode:u,signal:d,timedOut:f,isMaxBuffer:p}=Xue(c,r),{output:h,error:m=l}=Wue({fileDescriptors:s,syncResult:c,options:r,isMaxBuffer:p,verboseInfo:o}),g=h.map((b,w)=>Ba(b,r,w)),_=Ba(Yue(h,r),r,"all");return w3e({error:m,exitCode:u,signal:d,timedOut:f,isMaxBuffer:p,stdio:g,all:_,options:r,command:n,escapedCommand:i,startTime:a})},b3e=({file:t,commandArguments:e,options:r,command:n,escapedCommand:i,fileDescriptors:o,startTime:s})=>{try{que(o,r);let a=T3e(r);return _3e(...mC(t,e,a))}catch(a){return Lh({error:a,command:n,escapedCommand:i,fileDescriptors:o,options:r,startTime:s,isSync:!0})}},T3e=({encoding:t,maxBuffer:e,...r})=>({...r,encoding:"buffer",maxBuffer:bC(e)}),w3e=({error:t,exitCode:e,signal:r,timedOut:n,isMaxBuffer:i,stdio:o,all:s,options:a,command:c,escapedCommand:l,startTime:u})=>t===void 0?TC({command:c,escapedCommand:l,stdio:o,all:s,ipcOutput:[],options:a,startTime:u}):vE({error:t,command:c,escapedCommand:l,timedOut:n,isCanceled:!1,isGracefullyCanceled:!1,isMaxBuffer:i,isForcefullyTerminated:!1,exitCode:e,signal:r,stdio:o,all:s,ipcOutput:[],options:a,startTime:u,isSync:!0});import{setMaxListeners as dYe}from"events";import{spawn as fYe}from"child_process";import ide from"process";import{once as gj,on as A3e}from"events";var ede=({anyProcess:t,channel:e,isSubprocess:r,ipc:n},{reference:i=!0,filter:o}={})=>(Oh({methodName:"getOneMessage",isSubprocess:r,ipc:n,isConnected:cC(t)}),x3e({anyProcess:t,channel:e,isSubprocess:r,filter:o,reference:i})),x3e=async({anyProcess:t,channel:e,isSubprocess:r,filter:n,reference:i})=>{iC(e,i);let o=dl(t,e,r),s=new AbortController;try{return await Promise.race([R3e(o,n,s),C3e(o,r,s),I3e(o,r,s)])}catch(a){throw Nh(t),a}finally{s.abort(),oC(e,i)}},R3e=async(t,e,{signal:r})=>{if(e===void 0){let[n]=await gj(t,"message",{signal:r});return n}for await(let[n]of A3e(t,"message",{signal:r}))if(e(n))return n},C3e=async(t,e,{signal:r})=>{await gj(t,"disconnect",{signal:r}),zce(e)},I3e=async(t,e,{signal:r})=>{let[n]=await gj(t,"strict:error",{signal:r});throw tC(n,e)};import{once as rde,on as P3e}from"events";var nde=({anyProcess:t,channel:e,isSubprocess:r,ipc:n},{reference:i=!0}={})=>_j({anyProcess:t,channel:e,isSubprocess:r,ipc:n,shouldAwait:!r,reference:i}),_j=({anyProcess:t,channel:e,isSubprocess:r,ipc:n,shouldAwait:i,reference:o})=>{Oh({methodName:"getEachMessage",isSubprocess:r,ipc:n,isConnected:cC(t)}),iC(e,o);let s=dl(t,e,r),a=new AbortController,c={};return O3e(t,s,a),N3e({ipcEmitter:s,isSubprocess:r,controller:a,state:c}),k3e({anyProcess:t,channel:e,ipcEmitter:s,isSubprocess:r,shouldAwait:i,controller:a,state:c,reference:o})},O3e=async(t,e,r)=>{try{await rde(e,"disconnect",{signal:r.signal}),r.abort()}catch{}},N3e=async({ipcEmitter:t,isSubprocess:e,controller:r,state:n})=>{try{let[i]=await rde(t,"strict:error",{signal:r.signal});n.error=tC(i,e),r.abort()}catch{}},k3e=async function*({anyProcess:t,channel:e,ipcEmitter:r,isSubprocess:n,shouldAwait:i,controller:o,state:s,reference:a}){try{for await(let[c]of P3e(r,"message",{signal:o.signal}))tde(s),yield c}catch{tde(s)}finally{o.abort(),oC(e,a),n||Nh(t),i&&await t}},tde=({error:t})=>{if(t)throw t};var ode=(t,{ipc:e})=>{Object.assign(t,ade(t,!1,e))},sde=()=>{let t=ide,e=!0,r=ide.channel!==void 0;return{...ade(t,e,r),getCancelSignal:ple.bind(void 0,{anyProcess:t,channel:t.channel,isSubprocess:e,ipc:r})}},ade=(t,e,r)=>({sendMessage:fC.bind(void 0,{anyProcess:t,channel:t.channel,isSubprocess:e,ipc:r}),getOneMessage:ede.bind(void 0,{anyProcess:t,channel:t.channel,isSubprocess:e,ipc:r}),getEachMessage:nde.bind(void 0,{anyProcess:t,channel:t.channel,isSubprocess:e,ipc:r})});import{ChildProcess as M3e}from"child_process";import{PassThrough as $3e,Readable as D3e,Writable as L3e,Duplex as U3e}from"stream";var cde=({error:t,command:e,escapedCommand:r,fileDescriptors:n,options:i,startTime:o,verboseInfo:s})=>{aj(n);let a=new M3e;F3e(a,n),Object.assign(a,{readable:z3e,writable:j3e,duplex:B3e});let c=Lh({error:t,command:e,escapedCommand:r,fileDescriptors:n,options:i,startTime:o,isSync:!1}),l=q3e(c,s,i);return{subprocess:a,promise:l}},F3e=(t,e)=>{let r=TE(),n=TE(),i=TE(),o=Array.from({length:e.length-3},TE),s=TE(),a=[r,n,i,...o];Object.assign(t,{stdin:r,stdout:n,stderr:i,all:s,stdio:a})},TE=()=>{let t=new $3e;return t.end(),t},z3e=()=>new D3e({read(){}}),j3e=()=>new L3e({write(){}}),B3e=()=>new U3e({read(){},write(){}}),q3e=async(t,e,r)=>Uh(t,e,r);import{createReadStream as lde,createWriteStream as ude}from"fs";import{Buffer as V3e}from"buffer";import{Readable as wE,Writable as G3e,Duplex as H3e}from"stream";var fde=(t,e)=>RC(W3e,t,e,!1),AE=({type:t,optionName:e})=>{throw new TypeError(`The \`${e}\` option cannot be ${fl[t]}.`)},dde={fileNumber:AE,generator:pj,asyncGenerator:pj,nodeStream:({value:t})=>({stream:t}),webTransform({value:{transform:t,writableObjectMode:e,readableObjectMode:r}}){let n=e||r;return{stream:H3e.fromWeb(t,{objectMode:n})}},duplex:({value:{transform:t}})=>({stream:t}),native(){}},W3e={input:{...dde,fileUrl:({value:t})=>({stream:lde(t)}),filePath:({value:{file:t}})=>({stream:lde(t)}),webStream:({value:t})=>({stream:wE.fromWeb(t)}),iterable:({value:t})=>({stream:wE.from(t)}),asyncIterable:({value:t})=>({stream:wE.from(t)}),string:({value:t})=>({stream:wE.from(t)}),uint8Array:({value:t})=>({stream:wE.from(V3e.from(t))})},output:{...dde,fileUrl:({value:t})=>({stream:ude(t)}),filePath:({value:{file:t,append:e}})=>({stream:ude(t,e?{flags:"a"}:{})}),webStream:({value:t})=>({stream:G3e.fromWeb(t)}),iterable:AE,asyncIterable:AE,string:AE,uint8Array:AE}};import{on as Y3e,once as pde}from"events";import{PassThrough as K3e,getDefaultHighWaterMark as Z3e}from"stream";import{finished as gde}from"stream/promises";function xd(t){if(!Array.isArray(t))throw new TypeError(`Expected an array, got \`${typeof t}\`.`);for(let i of t)Sj(i);let e=t.some(({readableObjectMode:i})=>i),r=J3e(t,e),n=new yj({objectMode:e,writableHighWaterMark:r,readableHighWaterMark:r});for(let i of t)n.add(i);return n}var J3e=(t,e)=>{if(t.length===0)return Z3e(e);let r=t.filter(({readableObjectMode:n})=>n===e).map(({readableHighWaterMark:n})=>n);return Math.max(...r)},yj=class extends K3e{#e=new Set([]);#r=new Set([]);#t=new Set([]);#n;#o=Symbol("unpipe");#i=new WeakMap;add(e){if(Sj(e),this.#e.has(e))return;this.#e.add(e),this.#n??=X3e(this,this.#e,this.#o);let r=tWe({passThroughStream:this,stream:e,streams:this.#e,ended:this.#r,aborted:this.#t,onFinished:this.#n,unpipeEvent:this.#o});this.#i.set(e,r),e.pipe(this,{end:!1})}async remove(e){if(Sj(e),!this.#e.has(e))return!1;let r=this.#i.get(e);return r===void 0?!1:(this.#i.delete(e),e.unpipe(this),await r,!0)}},X3e=async(t,e,r)=>{MC(t,hde);let n=new AbortController;try{await Promise.race([Q3e(t,n),eWe(t,e,r,n)])}finally{n.abort(),MC(t,-hde)}},Q3e=async(t,{signal:e})=>{try{await gde(t,{signal:e,cleanup:!0})}catch(r){throw _de(t,r),r}},eWe=async(t,e,r,{signal:n})=>{for await(let[i]of Y3e(t,"unpipe",{signal:n}))e.has(i)&&i.emit(r)},Sj=t=>{if(typeof t?.pipe!="function")throw new TypeError(`Expected a readable stream, got: \`${typeof t}\`.`)},tWe=async({passThroughStream:t,stream:e,streams:r,ended:n,aborted:i,onFinished:o,unpipeEvent:s})=>{MC(t,mde);let a=new AbortController;try{await Promise.race([rWe(o,e,a),nWe({passThroughStream:t,stream:e,streams:r,ended:n,aborted:i,controller:a}),iWe({stream:e,streams:r,ended:n,aborted:i,unpipeEvent:s,controller:a})])}finally{a.abort(),MC(t,-mde)}r.size>0&&r.size===n.size+i.size&&(n.size===0&&i.size>0?Ej(t):oWe(t))},rWe=async(t,e,{signal:r})=>{try{await t,r.aborted||Ej(e)}catch(n){r.aborted||_de(e,n)}},nWe=async({passThroughStream:t,stream:e,streams:r,ended:n,aborted:i,controller:{signal:o}})=>{try{await gde(e,{signal:o,cleanup:!0,readable:!0,writable:!1}),r.has(e)&&n.add(e)}catch(s){if(o.aborted||!r.has(e))return;yde(s)?i.add(e):Sde(t,s)}},iWe=async({stream:t,streams:e,ended:r,aborted:n,unpipeEvent:i,controller:{signal:o}})=>{if(await pde(t,i,{signal:o}),!t.readable)return pde(o,"abort",{signal:o});e.delete(t),r.delete(t),n.delete(t)},oWe=t=>{t.writable&&t.end()},_de=(t,e)=>{yde(e)?Ej(t):Sde(t,e)},yde=t=>t?.code==="ERR_STREAM_PREMATURE_CLOSE",Ej=t=>{(t.readable||t.writable)&&t.destroy()},Sde=(t,e)=>{t.destroyed||(t.once("error",sWe),t.destroy(e))},sWe=()=>{},MC=(t,e)=>{let r=t.getMaxListeners();r!==0&&r!==Number.POSITIVE_INFINITY&&t.setMaxListeners(r+e)},hde=2,mde=1;import{finished as Ede}from"stream/promises";var zh=(t,e)=>{t.pipe(e),aWe(t,e),cWe(t,e)},aWe=async(t,e)=>{if(!(Lo(t)||Lo(e))){try{await Ede(t,{cleanup:!0,readable:!0,writable:!1})}catch{}vj(e)}},vj=t=>{t.writable&&t.end()},cWe=async(t,e)=>{if(!(Lo(t)||Lo(e))){try{await Ede(e,{cleanup:!0,readable:!1,writable:!0})}catch{}bj(t)}},bj=t=>{t.readable&&t.destroy()};var vde=(t,e,r)=>{let n=new Map;for(let[i,{stdioItems:o,direction:s}]of Object.entries(e)){for(let{stream:a}of o.filter(({type:c})=>Qi.has(c)))lWe(t,a,s,i);for(let{stream:a}of o.filter(({type:c})=>!Qi.has(c)))dWe({subprocess:t,stream:a,direction:s,fdNumber:i,pipeGroups:n,controller:r})}for(let[i,o]of n.entries()){let s=o.length===1?o[0]:xd(o);zh(s,i)}},lWe=(t,e,r,n)=>{r==="output"?zh(t.stdio[n],e):zh(e,t.stdio[n]);let i=uWe[n];i!==void 0&&(t[i]=e),t.stdio[n]=e},uWe=["stdin","stdout","stderr"],dWe=({subprocess:t,stream:e,direction:r,fdNumber:n,pipeGroups:i,controller:o})=>{if(e===void 0)return;fWe(e,o);let[s,a]=r==="output"?[e,t.stdio[n]]:[t.stdio[n],e],c=i.get(s)??[];i.set(s,[...c,a])},fWe=(t,{signal:e})=>{Lo(t)&&bd(t,pWe,e)},pWe=2;import{addAbortListener as gWe}from"events";var Rd=[];Rd.push("SIGHUP","SIGINT","SIGTERM");process.platform!=="win32"&&Rd.push("SIGALRM","SIGABRT","SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");process.platform==="linux"&&Rd.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT");var $C=t=>!!t&&typeof t=="object"&&typeof t.removeListener=="function"&&typeof t.emit=="function"&&typeof t.reallyExit=="function"&&typeof t.listeners=="function"&&typeof t.kill=="function"&&typeof t.pid=="number"&&typeof t.on=="function",Tj=Symbol.for("signal-exit emitter"),wj=globalThis,hWe=Object.defineProperty.bind(Object),Aj=class{emitted={afterExit:!1,exit:!1};listeners={afterExit:[],exit:[]};count=0;id=Math.random();constructor(){if(wj[Tj])return wj[Tj];hWe(wj,Tj,{value:this,writable:!1,enumerable:!1,configurable:!1})}on(e,r){this.listeners[e].push(r)}removeListener(e,r){let n=this.listeners[e],i=n.indexOf(r);i!==-1&&(i===0&&n.length===1?n.length=0:n.splice(i,1))}emit(e,r,n){if(this.emitted[e])return!1;this.emitted[e]=!0;let i=!1;for(let o of this.listeners[e])i=o(r,n)===!0||i;return e==="exit"&&(i=this.emit("afterExit",r,n)||i),i}},DC=class{},mWe=t=>({onExit(e,r){return t.onExit(e,r)},load(){return t.load()},unload(){return t.unload()}}),xj=class extends DC{onExit(){return()=>{}}load(){}unload(){}},Rj=class extends DC{#e=Cj.platform==="win32"?"SIGINT":"SIGHUP";#r=new Aj;#t;#n;#o;#i={};#s=!1;constructor(e){super(),this.#t=e,this.#i={};for(let r of Rd)this.#i[r]=()=>{let n=this.#t.listeners(r),{count:i}=this.#r,o=e;if(typeof o.__signal_exit_emitter__=="object"&&typeof o.__signal_exit_emitter__.count=="number"&&(i+=o.__signal_exit_emitter__.count),n.length===i){this.unload();let s=this.#r.emit("exit",null,r),a=r==="SIGHUP"?this.#e:r;s||e.kill(e.pid,a)}};this.#o=e.reallyExit,this.#n=e.emit}onExit(e,r){if(!$C(this.#t))return()=>{};this.#s===!1&&this.load();let n=r?.alwaysLast?"afterExit":"exit";return this.#r.on(n,e),()=>{this.#r.removeListener(n,e),this.#r.listeners.exit.length===0&&this.#r.listeners.afterExit.length===0&&this.unload()}}load(){if(!this.#s){this.#s=!0,this.#r.count+=1;for(let e of Rd)try{let r=this.#i[e];r&&this.#t.on(e,r)}catch{}this.#t.emit=(e,...r)=>this.#c(e,...r),this.#t.reallyExit=e=>this.#a(e)}}unload(){this.#s&&(this.#s=!1,Rd.forEach(e=>{let r=this.#i[e];if(!r)throw new Error("Listener not defined for signal: "+e);try{this.#t.removeListener(e,r)}catch{}}),this.#t.emit=this.#n,this.#t.reallyExit=this.#o,this.#r.count-=1)}#a(e){return $C(this.#t)?(this.#t.exitCode=e||0,this.#r.emit("exit",this.#t.exitCode,null),this.#o.call(this.#t,this.#t.exitCode)):0}#c(e,...r){let n=this.#n;if(e==="exit"&&$C(this.#t)){typeof r[0]=="number"&&(this.#t.exitCode=r[0]);let i=n.call(this.#t,e,...r);return this.#r.emit("exit",this.#t.exitCode,null),i}else return n.call(this.#t,e,...r)}},Cj=globalThis.process,{onExit:bde,load:Ljt,unload:Ujt}=mWe($C(Cj)?new Rj(Cj):new xj);var Tde=(t,{cleanup:e,detached:r},{signal:n})=>{if(!e||r)return;let i=bde(()=>{t.kill()});gWe(n,()=>{i()})};var Ade=({source:t,sourcePromise:e,boundOptions:r,createNested:n},...i)=>{let o=W0(),{destination:s,destinationStream:a,destinationError:c,from:l,unpipeSignal:u}=_We(r,n,i),{sourceStream:d,sourceError:f}=SWe(t,l),{options:p,fileDescriptors:h}=ks.get(t);return{sourcePromise:e,sourceStream:d,sourceOptions:p,sourceError:f,destination:s,destinationStream:a,destinationError:c,unpipeSignal:u,fileDescriptors:h,startTime:o}},_We=(t,e,r)=>{try{let{destination:n,pipeOptions:{from:i,to:o,unpipeSignal:s}={}}=yWe(t,e,...r),a=nC(n,o);return{destination:n,destinationStream:a,from:i,unpipeSignal:s}}catch(n){return{destinationError:n}}},yWe=(t,e,r,...n)=>{if(Array.isArray(r))return{destination:e(wde,t)(r,...n),pipeOptions:t};if(typeof r=="string"||r instanceof URL||_z(r)){if(Object.keys(t).length>0)throw new TypeError('Please use .pipe("file", ..., options) or .pipe(execa("file", ..., options)) instead of .pipe(options)("file", ...).');let[i,o,s]=L0(r,...n);return{destination:e(wde)(i,o,s),pipeOptions:s}}if(ks.has(r)){if(Object.keys(t).length>0)throw new TypeError("Please use .pipe(options)`command` or .pipe($(options)`command`) instead of .pipe(options)($`command`).");return{destination:r,pipeOptions:n[0]}}throw new TypeError(`The first argument must be a template string, an options object, or an Execa subprocess: ${r}`)},wde=({options:t})=>({options:{...t,stdin:"pipe",piped:!0}}),SWe=(t,e)=>{try{return{sourceStream:kh(t,e)}}catch(r){return{sourceError:r}}};var Rde=({sourceStream:t,sourceError:e,destinationStream:r,destinationError:n,fileDescriptors:i,sourceOptions:o,startTime:s})=>{let a=EWe({sourceStream:t,sourceError:e,destinationStream:r,destinationError:n});if(a!==void 0)throw Ij({error:a,fileDescriptors:i,sourceOptions:o,startTime:s})},EWe=({sourceStream:t,sourceError:e,destinationStream:r,destinationError:n})=>{if(e!==void 0&&n!==void 0)return n;if(n!==void 0)return bj(t),n;if(e!==void 0)return vj(r),e},Ij=({error:t,fileDescriptors:e,sourceOptions:r,startTime:n})=>Lh({error:t,command:xde,escapedCommand:xde,fileDescriptors:e,options:r,startTime:n,isSync:!1}),xde="source.pipe(destination)";var Cde=async t=>{let[{status:e,reason:r,value:n=r},{status:i,reason:o,value:s=o}]=await t;if(s.pipedFrom.includes(n)||s.pipedFrom.push(n),i==="rejected")throw s;if(e==="rejected")throw n;return s};import{finished as vWe}from"stream/promises";var Ide=(t,e,r)=>{let n=LC.has(e)?TWe(t,e):bWe(t,e);return bd(t,AWe,r.signal),bd(e,xWe,r.signal),wWe(e),n},bWe=(t,e)=>{let r=xd([t]);return zh(r,e),LC.set(e,r),r},TWe=(t,e)=>{let r=LC.get(e);return r.add(t),r},wWe=async t=>{try{await vWe(t,{cleanup:!0,readable:!1,writable:!0})}catch{}LC.delete(t)},LC=new WeakMap,AWe=2,xWe=1;import{aborted as RWe}from"util";var Pde=(t,e)=>t===void 0?[]:[CWe(t,e)],CWe=async(t,{sourceStream:e,mergedStream:r,fileDescriptors:n,sourceOptions:i,startTime:o})=>{await RWe(t,e),await r.remove(e);let s=new Error("Pipe canceled by `unpipeSignal` option.");throw Ij({error:s,fileDescriptors:n,sourceOptions:i,startTime:o})};var UC=(t,...e)=>{if(cr(e[0]))return UC.bind(void 0,{...t,boundOptions:{...t.boundOptions,...e[0]}});let{destination:r,...n}=Ade(t,...e),i=IWe({...n,destination:r});return i.pipe=UC.bind(void 0,{...t,source:r,sourcePromise:i,boundOptions:{}}),i},IWe=async({sourcePromise:t,sourceStream:e,sourceOptions:r,sourceError:n,destination:i,destinationStream:o,destinationError:s,unpipeSignal:a,fileDescriptors:c,startTime:l})=>{let u=PWe(t,i);Rde({sourceStream:e,sourceError:n,destinationStream:o,destinationError:s,fileDescriptors:c,sourceOptions:r,startTime:l});let d=new AbortController;try{let f=Ide(e,o,d);return await Promise.race([Cde(u),...Pde(a,{sourceStream:e,mergedStream:f,sourceOptions:r,fileDescriptors:c,startTime:l})])}finally{d.abort()}},PWe=(t,e)=>Promise.allSettled([t,e]);import{setImmediate as LWe}from"timers/promises";import{on as OWe}from"events";import{getDefaultHighWaterMark as NWe}from"stream";var FC=({subprocessStdout:t,subprocess:e,binary:r,shouldEncode:n,encoding:i,preserveNewlines:o})=>{let s=new AbortController;return kWe(e,s),Nde({stream:t,controller:s,binary:r,shouldEncode:!t.readableObjectMode&&n,encoding:i,shouldSplit:!t.readableObjectMode,preserveNewlines:o})},kWe=async(t,e)=>{try{await t}catch{}finally{e.abort()}},Pj=({stream:t,onStreamEnd:e,lines:r,encoding:n,stripFinalNewline:i,allMixed:o})=>{let s=new AbortController;MWe(e,s,t);let a=t.readableObjectMode&&!o;return Nde({stream:t,controller:s,binary:n==="buffer",shouldEncode:!a,encoding:n,shouldSplit:!a&&r,preserveNewlines:!i})},MWe=async(t,e,r)=>{try{await t}catch{r.destroy()}finally{e.abort()}},Nde=({stream:t,controller:e,binary:r,shouldEncode:n,encoding:i,shouldSplit:o,preserveNewlines:s})=>{let a=OWe(t,"data",{signal:e.signal,highWaterMark:Ode,highWatermark:Ode});return $We({onStdoutChunk:a,controller:e,binary:r,shouldEncode:n,encoding:i,shouldSplit:o,preserveNewlines:s})},Oj=NWe(!0),Ode=Oj,$We=async function*({onStdoutChunk:t,controller:e,binary:r,shouldEncode:n,encoding:i,shouldSplit:o,preserveNewlines:s}){let a=DWe({binary:r,shouldEncode:n,encoding:i,shouldSplit:o,preserveNewlines:s});try{for await(let[c]of t)yield*Ad(c,a,0)}catch(c){if(!e.signal.aborted)throw c}finally{yield*bE(a)}},DWe=({binary:t,shouldEncode:e,encoding:r,shouldSplit:n,preserveNewlines:i})=>[IC(t,r,!e),CC(t,i,!n,{})].filter(Boolean);var kde=async({stream:t,onStreamEnd:e,fdNumber:r,encoding:n,buffer:i,maxBuffer:o,lines:s,allMixed:a,stripFinalNewline:c,verboseInfo:l,streamInfo:u})=>{let d=UWe({stream:t,onStreamEnd:e,fdNumber:r,encoding:n,allMixed:a,verboseInfo:l,streamInfo:u});if(!i){await Promise.all([FWe(t),d]);return}let f=cj(c,r),p=Pj({stream:t,onStreamEnd:e,lines:s,encoding:n,stripFinalNewline:f,allMixed:a}),[h]=await Promise.all([zWe({stream:t,iterable:p,fdNumber:r,encoding:n,maxBuffer:o,lines:s}),d]);return h},UWe=async({stream:t,onStreamEnd:e,fdNumber:r,encoding:n,allMixed:i,verboseInfo:o,streamInfo:{fileDescriptors:s}})=>{if(!NC({stdioItems:s[r]?.stdioItems,encoding:n,verboseInfo:o,fdNumber:r}))return;let a=Pj({stream:t,onStreamEnd:e,lines:!0,encoding:n,stripFinalNewline:!0,allMixed:i});await Vue(a,t,r,o)},FWe=async t=>{await LWe(),t.readableFlowing===null&&t.resume()},zWe=async({stream:t,stream:{readableObjectMode:e},iterable:r,fdNumber:n,encoding:i,maxBuffer:o,lines:s})=>{try{return e||s?await SC(r,{maxBuffer:o}):i==="buffer"?new Uint8Array(await EC(r,{maxBuffer:o})):await Dh(r,{maxBuffer:o})}catch(a){return Mde(Vle({error:a,stream:t,readableObjectMode:e,lines:s,encoding:i,fdNumber:n}))}},Nj=async t=>{try{return await t}catch(e){return Mde(e)}},Mde=({bufferedData:t})=>sae(t)?new Uint8Array(t):t;import{finished as jWe}from"stream/promises";var xE=async(t,e,r,{isSameDirection:n,stopOnExit:i=!1}={})=>{let o=BWe(t,r),s=new AbortController;try{await Promise.race([...i?[r.exitPromise]:[],jWe(t,{cleanup:!0,signal:s.signal})])}catch(a){o.stdinCleanedUp||GWe(a,e,r,n)}finally{s.abort()}},BWe=(t,{originalStreams:[e],subprocess:r})=>{let n={stdinCleanedUp:!1};return t===e&&qWe(t,r,n),n},qWe=(t,e,r)=>{let{_destroy:n}=t;t._destroy=(...i)=>{VWe(e,r),n.call(t,...i)}},VWe=({exitCode:t,signalCode:e},r)=>{(t!==null||e!==null)&&(r.stdinCleanedUp=!0)},GWe=(t,e,r,n)=>{if(!HWe(t,e,r,n))throw t},HWe=(t,e,r,n=!0)=>r.propagating?$de(t)||zC(t):(r.propagating=!0,kj(r,e)===n?$de(t):zC(t)),kj=({fileDescriptors:t},e)=>e!=="all"&&t[e].direction==="input",zC=t=>t?.code==="ERR_STREAM_PREMATURE_CLOSE",$de=t=>t?.code==="EPIPE";var Dde=({subprocess:t,encoding:e,buffer:r,maxBuffer:n,lines:i,stripFinalNewline:o,verboseInfo:s,streamInfo:a})=>t.stdio.map((c,l)=>Mj({stream:c,fdNumber:l,encoding:e,buffer:r[l],maxBuffer:n[l],lines:i[l],allMixed:!1,stripFinalNewline:o,verboseInfo:s,streamInfo:a})),Mj=async({stream:t,fdNumber:e,encoding:r,buffer:n,maxBuffer:i,lines:o,allMixed:s,stripFinalNewline:a,verboseInfo:c,streamInfo:l})=>{if(!t)return;let u=xE(t,e,l);if(kj(l,e)){await u;return}let[d]=await Promise.all([kde({stream:t,onStreamEnd:u,fdNumber:e,encoding:r,buffer:n,maxBuffer:i,lines:o,allMixed:s,stripFinalNewline:a,verboseInfo:c,streamInfo:l}),u]);return d};var Lde=({stdout:t,stderr:e},{all:r})=>r&&(t||e)?xd([t,e].filter(Boolean)):void 0,Ude=({subprocess:t,encoding:e,buffer:r,maxBuffer:n,lines:i,stripFinalNewline:o,verboseInfo:s,streamInfo:a})=>Mj({...WWe(t,r),fdNumber:"all",encoding:e,maxBuffer:n[1]+n[2],lines:i[1]||i[2],allMixed:YWe(t),stripFinalNewline:o,verboseInfo:s,streamInfo:a}),WWe=({stdout:t,stderr:e,all:r},[,n,i])=>{let o=n||i;return o?n?i?{stream:r,buffer:o}:{stream:t,buffer:o}:{stream:e,buffer:o}:{stream:r,buffer:o}},YWe=({all:t,stdout:e,stderr:r})=>t&&e&&r&&e.readableObjectMode!==r.readableObjectMode;import{once as KWe}from"events";var Fde=t=>Ch(t,"ipc"),zde=(t,e)=>{let r=H0(t);Os({type:"ipc",verboseMessage:r,fdNumber:"ipc",verboseInfo:e})};var jde=async({subprocess:t,buffer:e,maxBuffer:r,ipc:n,ipcOutput:i,verboseInfo:o})=>{if(!n)return i;let s=Fde(o),a=za(e,"ipc"),c=za(r,"ipc");for await(let l of _j({anyProcess:t,channel:t.channel,isSubprocess:!1,ipc:n,shouldAwait:!1,reference:!0}))a&&(Gle(t,i,c),i.push(l)),s&&zde(l,o);return i},Bde=async(t,e)=>(await Promise.allSettled([t]),e);var qde=async({subprocess:t,options:{encoding:e,buffer:r,maxBuffer:n,lines:i,timeoutDuration:o,cancelSignal:s,gracefulCancel:a,forceKillAfterDelay:c,stripFinalNewline:l,ipc:u,ipcInput:d},context:f,verboseInfo:p,fileDescriptors:h,originalStreams:m,onInternalError:g,controller:_})=>{let b=Kue(t,f),w={originalStreams:m,fileDescriptors:h,subprocess:t,exitPromise:b,propagating:!1},E=Dde({subprocess:t,encoding:e,buffer:r,maxBuffer:n,lines:i,stripFinalNewline:l,verboseInfo:p,streamInfo:w}),T=Ude({subprocess:t,encoding:e,buffer:r,maxBuffer:n,lines:i,stripFinalNewline:l,verboseInfo:p,streamInfo:w}),A=[],R=jde({subprocess:t,buffer:r,maxBuffer:n,ipc:u,ipcOutput:A,verboseInfo:p}),P=ZWe(m,t,w),k=JWe(h,w);try{return await Promise.race([Promise.all([{},Jue(b),Promise.all(E),T,R,Tle(t,d),...P,...k]),g,XWe(t,_),...yle(t,o,f,_),...Fce({subprocess:t,cancelSignal:s,gracefulCancel:a,context:f,controller:_}),...gle({subprocess:t,cancelSignal:s,gracefulCancel:a,forceKillAfterDelay:c,context:f,controller:_})])}catch(L){return f.terminationReason??="other",Promise.all([{error:L},b,Promise.all(E.map(y=>Nj(y))),Nj(T),Bde(R,A),Promise.allSettled(P),Promise.allSettled(k)])}},ZWe=(t,e,r)=>t.map((n,i)=>n===e.stdio[i]?void 0:xE(n,i,r)),JWe=(t,e)=>t.flatMap(({stdioItems:r},n)=>r.filter(({value:i,stream:o=i})=>zo(o,{checkOpen:!1})&&!Lo(o)).map(({type:i,value:o,stream:s=o})=>xE(s,n,e,{isSameDirection:Qi.has(i),stopOnExit:i==="native"}))),XWe=async(t,{signal:e})=>{let[r]=await KWe(t,"error",{signal:e});throw r};var Vde=()=>({readableDestroy:new WeakMap,writableFinal:new WeakMap,writableDestroy:new WeakMap}),RE=(t,e,r)=>{let n=t[r];n.has(e)||n.set(e,[]);let i=n.get(e),o=Ns();return i.push(o),{resolve:o.resolve.bind(o),promises:i}},jh=async({resolve:t,promises:e},r)=>{t();let[n]=await Promise.race([Promise.allSettled([!0,r]),Promise.all([!1,...e])]);return!n};import{Readable as QWe}from"stream";import{callbackify as eYe}from"util";import{finished as Gde}from"stream/promises";var $j=async t=>{if(t!==void 0)try{await Dj(t)}catch{}},Hde=async t=>{if(t!==void 0)try{await Lj(t)}catch{}},Dj=async t=>{await Gde(t,{cleanup:!0,readable:!1,writable:!0})},Lj=async t=>{await Gde(t,{cleanup:!0,readable:!0,writable:!1})},jC=async(t,e)=>{if(await t,e)throw e},BC=(t,e,r)=>{r&&!zC(r)?t.destroy(r):e&&t.destroy()};var Wde=({subprocess:t,concurrentStreams:e,encoding:r},{from:n,binary:i=!0,preserveNewlines:o=!0}={})=>{let s=i||wi.has(r),{subprocessStdout:a,waitReadableDestroy:c}=Uj(t,n,e),{readableEncoding:l,readableObjectMode:u,readableHighWaterMark:d}=Fj(a,s),{read:f,onStdoutDataDone:p}=zj({subprocessStdout:a,subprocess:t,binary:s,encoding:r,preserveNewlines:o}),h=new QWe({read:f,destroy:eYe(Bj.bind(void 0,{subprocessStdout:a,subprocess:t,waitReadableDestroy:c})),highWaterMark:d,objectMode:u,encoding:l});return jj({subprocessStdout:a,onStdoutDataDone:p,readable:h,subprocess:t}),h},Uj=(t,e,r)=>{let n=kh(t,e),i=RE(r,n,"readableDestroy");return{subprocessStdout:n,waitReadableDestroy:i}},Fj=({readableEncoding:t,readableObjectMode:e,readableHighWaterMark:r},n)=>n?{readableEncoding:t,readableObjectMode:e,readableHighWaterMark:r}:{readableEncoding:t,readableObjectMode:!0,readableHighWaterMark:Oj},zj=({subprocessStdout:t,subprocess:e,binary:r,encoding:n,preserveNewlines:i})=>{let o=Ns(),s=FC({subprocessStdout:t,subprocess:e,binary:r,shouldEncode:!r,encoding:n,preserveNewlines:i});return{read(){tYe(this,s,o)},onStdoutDataDone:o}},tYe=async(t,e,r)=>{try{let{value:n,done:i}=await e.next();i?r.resolve():t.push(n)}catch{}},jj=async({subprocessStdout:t,onStdoutDataDone:e,readable:r,subprocess:n,subprocessStdin:i})=>{try{await Lj(t),await n,await $j(i),await e,r.readable&&r.push(null)}catch(o){await $j(i),Yde(r,o)}},Bj=async({subprocessStdout:t,subprocess:e,waitReadableDestroy:r},n)=>{await jh(r,e)&&(Yde(t,n),await jC(e,n))},Yde=(t,e)=>{BC(t,t.readable,e)};import{Writable as rYe}from"stream";import{callbackify as Kde}from"util";var Zde=({subprocess:t,concurrentStreams:e},{to:r}={})=>{let{subprocessStdin:n,waitWritableFinal:i,waitWritableDestroy:o}=qj(t,r,e),s=new rYe({...Vj(n,t,i),destroy:Kde(Hj.bind(void 0,{subprocessStdin:n,subprocess:t,waitWritableFinal:i,waitWritableDestroy:o})),highWaterMark:n.writableHighWaterMark,objectMode:n.writableObjectMode});return Gj(n,s),s},qj=(t,e,r)=>{let n=nC(t,e),i=RE(r,n,"writableFinal"),o=RE(r,n,"writableDestroy");return{subprocessStdin:n,waitWritableFinal:i,waitWritableDestroy:o}},Vj=(t,e,r)=>({write:nYe.bind(void 0,t),final:Kde(iYe.bind(void 0,t,e,r))}),nYe=(t,e,r,n)=>{t.write(e,r)?n():t.once("drain",n)},iYe=async(t,e,r)=>{await jh(r,e)&&(t.writable&&t.end(),await e)},Gj=async(t,e,r)=>{try{await Dj(t),e.writable&&e.end()}catch(n){await Hde(r),Jde(e,n)}},Hj=async({subprocessStdin:t,subprocess:e,waitWritableFinal:r,waitWritableDestroy:n},i)=>{await jh(r,e),await jh(n,e)&&(Jde(t,i),await jC(e,i))},Jde=(t,e)=>{BC(t,t.writable,e)};import{Duplex as oYe}from"stream";import{callbackify as sYe}from"util";var Xde=({subprocess:t,concurrentStreams:e,encoding:r},{from:n,to:i,binary:o=!0,preserveNewlines:s=!0}={})=>{let a=o||wi.has(r),{subprocessStdout:c,waitReadableDestroy:l}=Uj(t,n,e),{subprocessStdin:u,waitWritableFinal:d,waitWritableDestroy:f}=qj(t,i,e),{readableEncoding:p,readableObjectMode:h,readableHighWaterMark:m}=Fj(c,a),{read:g,onStdoutDataDone:_}=zj({subprocessStdout:c,subprocess:t,binary:a,encoding:r,preserveNewlines:s}),b=new oYe({read:g,...Vj(u,t,d),destroy:sYe(aYe.bind(void 0,{subprocessStdout:c,subprocessStdin:u,subprocess:t,waitReadableDestroy:l,waitWritableFinal:d,waitWritableDestroy:f})),readableHighWaterMark:m,writableHighWaterMark:u.writableHighWaterMark,readableObjectMode:h,writableObjectMode:u.writableObjectMode,encoding:p});return jj({subprocessStdout:c,onStdoutDataDone:_,readable:b,subprocess:t,subprocessStdin:u}),Gj(u,b,c),b},aYe=async({subprocessStdout:t,subprocessStdin:e,subprocess:r,waitReadableDestroy:n,waitWritableFinal:i,waitWritableDestroy:o},s)=>{await Promise.all([Bj({subprocessStdout:t,subprocess:r,waitReadableDestroy:n},s),Hj({subprocessStdin:e,subprocess:r,waitWritableFinal:i,waitWritableDestroy:o},s)])};var Wj=(t,e,{from:r,binary:n=!1,preserveNewlines:i=!1}={})=>{let o=n||wi.has(e),s=kh(t,r),a=FC({subprocessStdout:s,subprocess:t,binary:o,shouldEncode:!0,encoding:e,preserveNewlines:i});return cYe(a,s,t)},cYe=async function*(t,e,r){try{yield*t}finally{e.readable&&e.destroy(),await r}};var Qde=(t,{encoding:e})=>{let r=Vde();t.readable=Wde.bind(void 0,{subprocess:t,concurrentStreams:r,encoding:e}),t.writable=Zde.bind(void 0,{subprocess:t,concurrentStreams:r}),t.duplex=Xde.bind(void 0,{subprocess:t,concurrentStreams:r,encoding:e}),t.iterable=Wj.bind(void 0,t,e),t[Symbol.asyncIterator]=Wj.bind(void 0,t,e,{})};var efe=(t,e)=>{for(let[r,n]of uYe){let i=n.value.bind(e);Reflect.defineProperty(t,r,{...n,value:i})}},lYe=(async()=>{})().constructor.prototype,uYe=["then","catch","finally"].map(t=>[t,Reflect.getOwnPropertyDescriptor(lYe,t)]);var tfe=(t,e,r,n)=>{let{file:i,commandArguments:o,command:s,escapedCommand:a,startTime:c,verboseInfo:l,options:u,fileDescriptors:d}=pYe(t,e,r),{subprocess:f,promise:p}=mYe({file:i,commandArguments:o,options:u,startTime:c,verboseInfo:l,command:s,escapedCommand:a,fileDescriptors:d});return f.pipe=UC.bind(void 0,{source:f,sourcePromise:p,boundOptions:{},createNested:n}),efe(f,p),ks.set(f,{options:u,fileDescriptors:d}),f},pYe=(t,e,r)=>{let{command:n,escapedCommand:i,startTime:o,verboseInfo:s}=Y0(t,e,r),{file:a,commandArguments:c,options:l}=hC(t,e,r),u=hYe(l),d=fde(u,s);return{file:a,commandArguments:c,command:n,escapedCommand:i,startTime:o,verboseInfo:s,options:u,fileDescriptors:d}},hYe=({timeout:t,signal:e,...r})=>{if(e!==void 0)throw new TypeError('The "signal" option has been renamed to "cancelSignal" instead.');return{...r,timeoutDuration:t}},mYe=({file:t,commandArguments:e,options:r,startTime:n,verboseInfo:i,command:o,escapedCommand:s,fileDescriptors:a})=>{let c;try{c=fYe(...mC(t,e,r))}catch(h){return cde({error:h,command:o,escapedCommand:s,fileDescriptors:a,options:r,startTime:n,verboseInfo:i})}let l=new AbortController;dYe(Number.POSITIVE_INFINITY,l.signal);let u=[...c.stdio];vde(c,a,l),Tde(c,r,l);let d={},f=Ns();c.kill=Lce.bind(void 0,{kill:c.kill.bind(c),options:r,onInternalError:f,context:d,controller:l}),c.all=Lde(c,r),Qde(c,r),ode(c,r);let p=gYe({subprocess:c,options:r,startTime:n,verboseInfo:i,fileDescriptors:a,originalStreams:u,command:o,escapedCommand:s,context:d,onInternalError:f,controller:l});return{subprocess:c,promise:p}},gYe=async({subprocess:t,options:e,startTime:r,verboseInfo:n,fileDescriptors:i,originalStreams:o,command:s,escapedCommand:a,context:c,onInternalError:l,controller:u})=>{let[d,[f,p],h,m,g]=await qde({subprocess:t,options:e,context:c,verboseInfo:n,fileDescriptors:i,originalStreams:o,onInternalError:l,controller:u});u.abort(),l.resolve();let _=h.map((E,T)=>Ba(E,e,T)),b=Ba(m,e,"all"),w=_Ye({errorInfo:d,exitCode:f,signal:p,stdio:_,all:b,ipcOutput:g,context:c,options:e,command:s,escapedCommand:a,startTime:r});return Uh(w,n,e)},_Ye=({errorInfo:t,exitCode:e,signal:r,stdio:n,all:i,ipcOutput:o,context:s,options:a,command:c,escapedCommand:l,startTime:u})=>"error"in t?vE({error:t.error,command:c,escapedCommand:l,timedOut:s.terminationReason==="timeout",isCanceled:s.terminationReason==="cancel"||s.terminationReason==="gracefulCancel",isGracefullyCanceled:s.terminationReason==="gracefulCancel",isMaxBuffer:t.error instanceof Ms,isForcefullyTerminated:s.isForcefullyTerminated,exitCode:e,signal:r,stdio:n,all:i,ipcOutput:o,options:a,startTime:u,isSync:!1}):TC({command:c,escapedCommand:l,stdio:n,all:i,ipcOutput:o,options:a,startTime:u});var qC=(t,e)=>{let r=Object.fromEntries(Object.entries(e).map(([n,i])=>[n,yYe(n,t[n],i)]));return{...t,...r}},yYe=(t,e,r)=>SYe.has(t)&&cr(e)&&cr(r)?{...e,...r}:r,SYe=new Set(["env",...Tz]);var pl=(t,e,r,n)=>{let i=(s,a,c)=>pl(s,a,r,c),o=(...s)=>EYe({mapArguments:t,deepOptions:r,boundOptions:e,setBoundExeca:n,createNested:i},...s);return n!==void 0&&n(o,i,e),o},EYe=({mapArguments:t,deepOptions:e={},boundOptions:r={},setBoundExeca:n,createNested:i},o,...s)=>{if(cr(o))return i(t,qC(r,o),n);let{file:a,commandArguments:c,options:l,isSync:u}=vYe({mapArguments:t,firstArgument:o,nextArguments:s,deepOptions:e,boundOptions:r});return u?Que(a,c,l):tfe(a,c,l,i)},vYe=({mapArguments:t,firstArgument:e,nextArguments:r,deepOptions:n,boundOptions:i})=>{let o=fae(e)?pae(e,r):[e,...r],[s,a,c]=L0(...o),l=qC(qC(n,i),c),{file:u=s,commandArguments:d=a,options:f=l,isSync:p=!1}=t({file:s,commandArguments:a,options:l});return{file:u,commandArguments:d,options:f,isSync:p}};var rfe=({file:t,commandArguments:e})=>ife(t,e),nfe=({file:t,commandArguments:e})=>({...ife(t,e),isSync:!0}),ife=(t,e)=>{if(e.length>0)throw new TypeError(`The command and its arguments must be passed as a single string: ${t} ${e}.`);let[r,...n]=bYe(t);return{file:r,commandArguments:n}},bYe=t=>{if(typeof t!="string")throw new TypeError(`The command must be a string: ${String(t)}.`);let e=t.trim();if(e==="")return[];let r=[];for(let n of e.split(TYe)){let i=r.at(-1);i&&i.endsWith("\\")?r[r.length-1]=`${i.slice(0,-1)} ${n}`:r.push(n)}return r},TYe=/ +/g;var ofe=(t,e,r)=>{t.sync=e(wYe,r),t.s=t.sync},sfe=({options:t})=>afe(t),wYe=({options:t})=>({...afe(t),isSync:!0}),afe=t=>({options:{...AYe(t),...t}}),AYe=({input:t,inputFile:e,stdio:r})=>t===void 0&&e===void 0&&r===void 0?{stdin:"inherit"}:{},cfe={preferLocal:!0};var lfe=pl(()=>({})),Rqt=pl(()=>({isSync:!0})),ufe=pl(rfe),Cqt=pl(nfe),Iqt=pl(Ele),Pqt=pl(sfe,{},cfe,ofe),{sendMessage:Oqt,getOneMessage:Nqt,getEachMessage:kqt,getCancelSignal:Mqt}=sde();var dfe=!1,ffe,pfe=t=>{dfe=!0,ffe??=t},qa=()=>dfe,hfe=()=>ffe;var CE=null,mfe=t=>(CE&&CE.destroy(),CE=new Ds({totalAllowedTime:t}),CE),gfe=()=>CE;var Ds=class{constructor({totalAllowedTime:e}){this.withStageTimer=async(e,r,n,{interruptible:i=!0}={})=>{if(this.isTimeExpired())throw new Error(`${e} stage did not complete in the allowed time. Time has already expired.`);if(i&&qa())throw new Error(`Aborting ${e} stage \u2014 shutting down`);let o=this.onTimesUp(()=>{throw new Error(`${e} stage did not complete in the allowed time.`)}),s=null,a=null;n!==void 0&&(a=new Promise((u,d)=>{s=setTimeout(()=>{d(new Error(`${e} stage exceeded its maximum duration of ${n}ms`))},n)}));let c=Date.now(),l="success";try{return await A0({stage:e},async()=>a?await Promise.race([r(),a]):await r())}catch(u){throw l="failure",u}finally{Y.timing("stage.duration",Date.now()-c,{stage:e,outcome:l}),o(),s&&clearTimeout(s)}};this.startTime=Date.now(),this.totalAllowedTime=e,this.globalTimeoutId=null,this.subscribers=[],this.hasTimedOut=!1,this.setupGlobalTimeout()}getElapsedTime(){return Date.now()-this.startTime}getRemainingTime(){let e=this.getElapsedTime(),r=this.totalAllowedTime-e;return Math.max(0,r)}isTimeExpired(){return this.getRemainingTime()===0||this.hasTimedOut}setupGlobalTimeout(){this.globalTimeoutId&&clearTimeout(this.globalTimeoutId),this.globalTimeoutId=setTimeout(()=>{this.notifyTimeUp()},this.totalAllowedTime)}notifyTimeUp(){this.hasTimedOut=!0;for(let e=this.subscribers.length-1;e>=0;e--)try{this.subscribers[e]()}catch(r){console.error("TimeKeeper: Error in time up callback:",r)}}onTimesUp(e){if(this.subscribers.push(e),this.hasTimedOut)try{e()}catch(r){console.error("TimeKeeper: Error in time up callback:",r)}return()=>{let r=this.subscribers.indexOf(e);r>-1&&this.subscribers.splice(r,1)}}off(e){let r=this.subscribers.indexOf(e);r>-1&&this.subscribers.splice(r,1)}clearSubscribers(){this.subscribers.length=0}getSubscriberCount(){return this.subscribers.length}destroy(){this.globalTimeoutId&&(clearTimeout(this.globalTimeoutId),this.globalTimeoutId=null),this.clearSubscribers()}static{this.timeUnits={seconds:e=>e*1e3,minutes:e=>e*60*1e3,hours:e=>e*60*60*1e3}}};var _fe={name:"@netlify/agent-runner-cli",type:"module",version:"1.176.0-PAW-469.7",description:"CLI tool for running Netlify agents",main:"./dist/index.js",types:"./dist/index.d.ts",exports:"./dist/index.js",bin:{"agent-runner-cli":"./dist/bin.js","agent-runner-cli-local":"./dist/bin-local.js"},files:["dist/**/*.js","dist/**/*.d.ts","dist/skills/**","patches","scripts"],scripts:{prebuild:"rm -rf dist",build:"tsup",dev:"tsup --watch",prepare:"husky install node_modules/@netlify/eslint-config-node/.husky/",prepublishOnly:"npm ci && npm test",prepack:"npm run build",test:"run-s build format test:dev",format:"run-s build format:check-fix:*","format:ci":"run-s build format:check:*","format:check-fix:lint":"run-e format:check:lint format:fix:lint","format:check:lint":'eslint --cache --format=codeframe --max-warnings=0 "{src,scripts,test,.github}/**/*.{js,ts,md,html}"',"format:fix:lint":'eslint --fix --cache --format=codeframe --max-warnings=0 "{src,scripts,test,.github}/**/*.{js,ts,md,html}"',"format:check-fix:prettier":"run-e format:check:prettier format:fix:prettier","format:check:prettier":'prettier --check --ignore-path .gitignore --loglevel=warn "{src,scripts,test,.github}/**/*.{js,ts,md,yml,json,html}" "*.{js,ts,yml,json,html}" ".*.{js,ts,yml,json,html}" "!**/package-lock.json" "!package-lock.json" "!src/skills/**/*.md"',"format:fix:prettier":'prettier --write --ignore-path .gitignore --loglevel=warn "{src,scripts,test,.github}/**/*.{js,ts,md,yml,json,html}" "*.{js,ts,yml,json,html}" ".*.{js,ts,yml,json,html}" "!**/package-lock.json" "!package-lock.json" "!src/skills/**/*.md"',"test:dev":"run-s build test:dev:*","test:ci":"run-s build test:ci:*","test:dev:vitest":"LOG=0 vitest --exclude '**/integration/**'","test:ci:vitest":"LOG=0 vitest run --coverage --exclude '**/integration/**'","test:smoke":"node scripts/smoke-dist.js","test:integration":"vitest run test/integration/","test:integration:codex":"vitest run test/integration/codex.test.ts","test:integration:claude":"vitest run test/integration/claude.test.ts","test:integration:gemini":"vitest run test/integration/gemini.test.ts","test:integration:opencode":"vitest run test/integration/opencode.test.ts","test:integration:skill-invocation":"vitest run test/integration/skill-invocation.test.ts","check:types":"tsc --noEmit",postinstall:"node scripts/postinstall.js"},keywords:[],license:"MIT",repository:"netlify/agent-runner-cli",bugs:{url:"https://github.com/netlify/agent-runner-cli/issues"},author:"Netlify Inc.",directories:{test:"test"},devDependencies:{"@commitlint/cli":"^20.0.0","@commitlint/config-conventional":"^20.0.0","@eslint/compat":"^2.0.0","@eslint/js":"^10.0.1","@netlify/axis":"^1.17.6","@netlify/eslint-config-node":"^7.0.1","@types/node":"^24.5.0","@typescript-eslint/eslint-plugin":"^8.0.0","@typescript-eslint/parser":"^8.0.0","@vitest/coverage-v8":"^4.1.5","@vitest/eslint-plugin":"^1.6.6",eslint:"^10.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-n":"^17.0.0",husky:"^9.0.0",jiti:"^2.7.0","patch-package":"^8.0.0",tsup:"^8.5.0",typescript:"^5.0.0","typescript-eslint":"^8.44.0",vitest:"^4.0.16"},dependencies:{"@anthropic-ai/claude-code":"^2.1.219","@anthropic-ai/sdk":"0.91.1","@google/gemini-cli":"0.42.0","@modelcontextprotocol/sdk":"^1.29.0","@netlify/cache-utils":"^6.0.5","@netlify/database-proxy":"^0.2.1","@netlify/otel":"^6.0.6","@netlify/ts-cli":"^1.2.0","@openai/codex":"0.153.4","@opentelemetry/api":"^1.9.0","@opentelemetry/exporter-trace-otlp-grpc":"0.218.0",execa:"^9.6.1",fastify:"5.12.1",minimist:"^1.2.8",openai:"6.34.0",zod:"^4.4.3"}};var IYe=RYe(import.meta.url),PYe=Va.dirname(IYe),OYe=CYe(import.meta.url),Bh=ie("shell"),Yj=new Set,yfe={preferLocal:!0},Ft=(t,e,r)=>{let[n,i]=NYe(e,r),o={...yfe,...i},s=lfe(t,n,o);Efe(s,o),Tfe(s);let a=r?.idleTimeout;return a&&a>0&&bfe(s,a),s},Sfe=(t,e)=>{let r={...yfe,...e},n=ufe(t,r);return Efe(n,r),Tfe(n),e?.idleTimeout&&e.idleTimeout>0&&bfe(n,e.idleTimeout),n},NYe=function(t,e){return Array.isArray(t)?[t,e]:typeof t=="object"&&t!==null?[[],t]:[[],void 0]},Efe=(t,e)=>{if(e.stdio!==void 0||e.stdout!==void 0||e.stderr!==void 0||Ls.env.NETLIFY_LOCAL_QUIET==="true")return;if(Ls.env.NETLIFY_MASK_LOGS!=="false"){t.stdout?.pipe(new nE).pipe(Ls.stdout),t.stderr?.pipe(new nE).pipe(Ls.stderr);return}t.stdout?.pipe(Ls.stdout),t.stderr?.pipe(Ls.stderr)},Kj=(t,e="SIGTERM")=>{try{return t.pid&&!t.killed?(Ls.kill(-t.pid,e),Bh.log(`Killed process ${t.pid} with signal ${e}`),!0):!1}catch(r){return Bh.error("Error killing process:",r),!1}},vfe=t=>Kj(t,"SIGKILL"),bfe=(t,e)=>{let r=null,n=()=>{Bh.log(`Process ${t.pid} killed due to idle timeout (no output for ${e}ms)`),Kj(t,"SIGTERM"),setTimeout(()=>{t.pid&&!t.killed&&(Bh.log(`Force killing idle process ${t.pid}`),vfe(t))},5e3)},i=()=>{r&&clearTimeout(r),r=setTimeout(n,e)};i(),t.stdout?.on("data",i),t.stderr?.on("data",i);let o=()=>{r&&(clearTimeout(r),r=null)};t.on("exit",o),t.on("error",o)},Tfe=t=>{Yj.add(t);let e=gfe();if(e){let r=e.onTimesUp(()=>{Bh.log(`Global timer expired, killing process ${t.pid}`),Kj(t,"SIGTERM"),setTimeout(()=>{t.pid&&!t.killed&&(Bh.log(`Force killing process ${t.pid} after timeout`),vfe(t))},5e3)});t.on("exit",()=>{Yj.delete(t),r()}),t.on("error",()=>{Yj.delete(t),r()})}};function GC(t,e){return!!jo(t,e)}function jo(t,e){if(!Ls.env.NETLIFY_LOCAL_MODE)try{let i=OYe.resolve(_fe.name),o=Va.dirname(i);for(;o!==Va.dirname(o);){let s=Va.dirname(o);if(Va.basename(s)==="node_modules"){let a=Va.join(s,".bin",e);if(VC.existsSync(a))return a;break}o=s}}catch(i){console.error("Could not resolve package.json",i)}if(Ls.env.NODE_PATH){let i=Va.join(Ls.env.NODE_PATH,".bin",e);if(VC.existsSync(i))return i}let r=Va.join(t,"node_modules",".bin",e);if(VC.existsSync(r))return r;let n=Va.join(PYe,"..","node_modules",".bin",e);if(VC.existsSync(n))return n}var wfe=ie("repo"),Cfe="runner-diffs-",YC=t=>`${Cfe}${t}-`,Ife=async t=>{let e=Rfe.tmpdir(),r;try{r=await HC.readdir(e)}catch{return}await Promise.all(r.filter(n=>n.startsWith(Cfe)&&!n.startsWith(YC(t))).map(n=>HC.rm(WC.join(e,n),{recursive:!0,force:!0}).catch(()=>{})))},lr=(t,e={})=>Ft("git",t,{...e,env:{...e.env,NETLIFY_INTERNAL_GIT:"1"}}),KC=async({config:t,isRetry:e,cwd:r=process.cwd()})=>{wfe.info("Getting runner diffs");let n=await Qj(r),{hasChanges:i}=n,{status:o}=n;if(!i)return{hasChanges:!1};if(!e){let l=eB(o);await zYe(l,r)}wfe.info("Changes after processing"),await Xj(r);let s=await PE(o,r);if(await Jj(s,r),i=await LYe(r),!i)return{hasChanges:!1,ignored:s};await lr(["commit","-m","Agent runner [skip ci]"],{cwd:r});let a=await HC.mkdtemp(WC.join(Rfe.tmpdir(),YC(t.sessionId))),c=await Zj({config:t,diffDir:a,cwd:r,target:{commit:"HEAD"},ignored:s});return await $Ye(r),c.hasChanges&&Y.distribution("diff.size",(c.diffBinary??c.diff).size,{phase:"final"}),c},Zj=async({config:t,diffDir:e,cwd:r,target:n,ignored:i})=>{let o="commit"in n?n.commit:"--cached",s="indexPath"in n?{GIT_INDEX_FILE:n.indexPath}:void 0,a=async({from:p,fileName:h,binary:m})=>{let g=WC.join(e,h);await lr([...m?["diff",p,o,"--binary"]:["diff",p,o],`--output=${g}`],{stdio:["ignore","ignore","pipe"],cwd:r,env:s});let{size:b}=await HC.stat(g);return{path:g,size:b}},c=await a({from:t.runSha,fileName:"session.patch"});if(c.size===0)return{hasChanges:!1,ignored:i};let l=await a({from:t.runSha,fileName:"session-binary.patch",binary:!0}),u,d;if(t.sha){u=await a({from:t.sha,fileName:"cumulative.patch"});let p=await a({from:t.sha,fileName:"cumulative-binary.patch",binary:!0});await xfe(u,p)||(d=p)}let f={hasChanges:!0,diff:c,resultDiff:u,ignored:i};return await xfe(c,l)||(f.diffBinary=l),d&&(f.resultDiffBinary=d),f},Afe=async t=>{let e=kYe("sha256");for await(let r of MYe(t))e.update(r);return e.digest("hex")},xfe=async(t,e)=>t.size===e.size&&await Afe(t.path)===await Afe(e.path),$Ye=async(t=process.cwd())=>{process.env.NETLIFY_LOCAL_MODE&&await lr(["reset","--soft","HEAD~1"],{cwd:t})},Jj=async(t=[],e=process.cwd())=>{await lr(["add",".",...t],{cwd:e})},Xj=async(t=process.cwd())=>{let e=await lr(["status","-s"],{cwd:t});return String(e.stdout??"")},Pfe=/.. (.+)?\.log$/,DYe=[Pfe],Qj=async(t=process.cwd())=>{let e=await Xj(t);return{hasChanges:(e.trim().length===0?[]:e.split(`
144
+ if (condition) { yield value; }`)};import{Buffer as V6e}from"buffer";import{StringDecoder as G6e}from"string_decoder";var IC=(t,e,r)=>{if(r)return;if(t)return{transform:H6e.bind(void 0,new TextEncoder)};let n=new G6e(e);return{transform:W6e.bind(void 0,n),final:Y6e.bind(void 0,n)}},H6e=function*(t,e){V6e.isBuffer(e)?yield Fa(e):typeof e=="string"?yield t.encode(e):yield e},W6e=function*(t,e){yield vr(e)?t.write(e):e},Y6e=function*(t){let e=t.end();e!==""&&(yield e)};import{callbackify as Lue}from"util";var dj=Lue(async(t,e,r,n)=>{e.currentIterable=t(...r);try{for await(let i of e.currentIterable)n.push(i)}finally{delete e.currentIterable}}),PC=async function*(t,e,r){if(r===e.length){yield t;return}let{transform:n=Z6e}=e[r];for await(let i of n(t))yield*PC(i,e,r+1)},Uue=async function*(t){for(let[e,{final:r}]of Object.entries(t))yield*K6e(r,Number(e),t)},K6e=async function*(t,e,r){if(t!==void 0)for await(let n of t())yield*PC(n,r,e+1)},Fue=Lue(async({currentIterable:t},e)=>{if(t!==void 0){await(e?t.throw(e):t.return());return}if(e)throw e}),Z6e=function*(t){yield t};var fj=(t,e,r,n)=>{try{for(let i of t(...e))r.push(i);n()}catch(i){n(i)}},zue=(t,e)=>[...e.flatMap(r=>[...Ad(r,t,0)]),...bE(t)],Ad=function*(t,e,r){if(r===e.length){yield t;return}let{transform:n=X6e}=e[r];for(let i of n(t))yield*Ad(i,e,r+1)},bE=function*(t){for(let[e,{final:r}]of Object.entries(t))yield*J6e(r,Number(e),t)},J6e=function*(t,e,r){if(t!==void 0)for(let n of t())yield*Ad(n,r,e+1)},X6e=function*(t){yield t};var pj=({value:t,value:{transform:e,final:r,writableObjectMode:n,readableObjectMode:i},optionName:o},{encoding:s})=>{let a={},c=Bue(t,s,o),l=wd(e),u=wd(r),d=l?dj.bind(void 0,PC,a):fj.bind(void 0,Ad),f=l||u?dj.bind(void 0,Uue,a):fj.bind(void 0,bE),p=l||u?Fue.bind(void 0,a):void 0;return{stream:new Q6e({writableObjectMode:n,writableHighWaterMark:jue(n),readableObjectMode:i,readableHighWaterMark:jue(i),transform(m,g,_){d([m,c,0],this,_)},flush(m){f([c],this,m)},destroy:p})}},OC=(t,e,r,n)=>{let i=e.filter(({type:s})=>s==="generator"),o=n?i.reverse():i;for(let{value:s,optionName:a}of o){let c=Bue(s,r,a);t=zue(c,t)}return t},Bue=({transform:t,final:e,binary:r,writableObjectMode:n,readableObjectMode:i,preserveNewlines:o},s,a)=>{let c={};return[{transform:Mue(n,a)},IC(r,s,n),CC(r,o,n,c),{transform:t,final:e},{transform:$ue(i,a)},kue({binary:r,preserveNewlines:o,readableObjectMode:i,state:c})].filter(Boolean)};var que=(t,e)=>{for(let r of e3e(t))t3e(t,r,e)},e3e=t=>new Set(Object.entries(t).filter(([,{direction:e}])=>e==="input").map(([e])=>Number(e))),t3e=(t,e,r)=>{let{stdioItems:n}=t[e],i=n.filter(({contents:a})=>a!==void 0);if(i.length===0)return;if(e!==0){let[{type:a,optionName:c}]=i;throw new TypeError(`Only the \`stdin\` option, not \`${c}\`, can be ${fl[a]} with synchronous methods.`)}let s=i.map(({contents:a})=>a).map(a=>r3e(a,n));r.input=fE(s)},r3e=(t,e)=>{let r=OC(t,e,"utf8",!0);return n3e(r),fE(r)},n3e=t=>{let e=t.find(r=>typeof r!="string"&&!vr(r));if(e!==void 0)throw new TypeError(`The \`stdin\` option is invalid: when passing objects as input, a transform must be used to serialize them to strings or Uint8Arrays: ${e}.`)};import{writeFileSync as a3e,appendFileSync as c3e}from"fs";var NC=({stdioItems:t,encoding:e,verboseInfo:r,fdNumber:n})=>n!=="all"&&Ch(r,n)&&!wi.has(e)&&i3e(n)&&(t.some(({type:i,value:o})=>i==="native"&&o3e.has(o))||t.every(({type:i})=>Qi.has(i))),i3e=t=>t===1||t===2,o3e=new Set(["pipe","overlapped"]),Vue=async(t,e,r,n)=>{for await(let i of t)s3e(e)||Hue(i,r,n)},Gue=(t,e,r)=>{for(let n of t)Hue(n,e,r)},s3e=t=>t._readableState.pipes.length>0,Hue=(t,e,r)=>{let n=H0(t);Os({type:"output",verboseMessage:n,fdNumber:e,verboseInfo:r})};var Wue=({fileDescriptors:t,syncResult:{output:e},options:r,isMaxBuffer:n,verboseInfo:i})=>{if(e===null)return{output:Array.from({length:3})};let o={},s=new Set([]);return{output:e.map((c,l)=>l3e({result:c,fileDescriptors:t,fdNumber:l,state:o,outputFiles:s,isMaxBuffer:n,verboseInfo:i},r)),...o}},l3e=({result:t,fileDescriptors:e,fdNumber:r,state:n,outputFiles:i,isMaxBuffer:o,verboseInfo:s},{buffer:a,encoding:c,lines:l,stripFinalNewline:u,maxBuffer:d})=>{if(t===null)return;let f=Yle(t,o,d),p=Fa(f),{stdioItems:h,objectMode:m}=e[r],g=u3e([p],h,c,n),{serializedResult:_,finalResult:b=_}=d3e({chunks:g,objectMode:m,encoding:c,lines:l,stripFinalNewline:u,fdNumber:r});f3e({serializedResult:_,fdNumber:r,state:n,verboseInfo:s,encoding:c,stdioItems:h,objectMode:m});let w=a[r]?b:void 0;try{return n.error===void 0&&p3e(_,h,i),w}catch(E){return n.error=E,w}},u3e=(t,e,r,n)=>{try{return OC(t,e,r,!1)}catch(i){return n.error=i,t}},d3e=({chunks:t,objectMode:e,encoding:r,lines:n,stripFinalNewline:i,fdNumber:o})=>{if(e)return{serializedResult:t};if(r==="buffer")return{serializedResult:fE(t)};let s=cae(t,r);return n[o]?{serializedResult:s,finalResult:uj(s,!i[o],e)}:{serializedResult:s}},f3e=({serializedResult:t,fdNumber:e,state:r,verboseInfo:n,encoding:i,stdioItems:o,objectMode:s})=>{if(!NC({stdioItems:o,encoding:i,verboseInfo:n,fdNumber:e}))return;let a=uj(t,!1,s);try{Gue(a,e,n)}catch(c){r.error??=c}},p3e=(t,e,r)=>{for(let{path:n,append:i}of e.filter(({type:o})=>xC.has(o))){let o=typeof n=="string"?n:n.toString();i||r.has(o)?c3e(n,t):(r.add(o),a3e(n,t))}};var Yue=([,t,e],r)=>{if(r.all)return t===void 0?e:e===void 0?t:Array.isArray(t)?Array.isArray(e)?[...t,...e]:[...t,Ba(e,r,"all")]:Array.isArray(e)?[Ba(t,r,"all"),...e]:vr(t)&&vr(e)?Sz([t,e]):`${t}${e}`};import{once as hj}from"events";var Kue=async(t,e)=>{let[r,n]=await h3e(t);return e.isForcefullyTerminated??=!1,[r,n]},h3e=async t=>{let[e,r]=await Promise.allSettled([hj(t,"spawn"),hj(t,"exit")]);return e.status==="rejected"?[]:r.status==="rejected"?Zue(t):r.value},Zue=async t=>{try{return await hj(t,"exit")}catch{return Zue(t)}},Jue=async t=>{let[e,r]=await t;if(!m3e(e,r)&&mj(e,r))throw new Uo;return[e,r]},m3e=(t,e)=>t===void 0&&e===void 0,mj=(t,e)=>t!==0||e!==null;var Xue=({error:t,status:e,signal:r,output:n},{maxBuffer:i})=>{let o=g3e(t,e,r),s=o?.code==="ETIMEDOUT",a=Wle(o,n,i);return{resultError:o,exitCode:e,signal:r,timedOut:s,isMaxBuffer:a}},g3e=(t,e,r)=>t!==void 0?t:mj(e,r)?new Uo:void 0;var Que=(t,e,r)=>{let{file:n,commandArguments:i,command:o,escapedCommand:s,startTime:a,verboseInfo:c,options:l,fileDescriptors:u}=y3e(t,e,r),d=v3e({file:n,commandArguments:i,options:l,command:o,escapedCommand:s,verboseInfo:c,fileDescriptors:u,startTime:a});return Uh(d,c,l)},y3e=(t,e,r)=>{let{command:n,escapedCommand:i,startTime:o,verboseInfo:s}=Y0(t,e,r),a=S3e(r),{file:c,commandArguments:l,options:u}=hC(t,e,a);E3e(u);let d=Iue(u,s);return{file:c,commandArguments:l,command:n,escapedCommand:i,startTime:o,verboseInfo:s,options:u,fileDescriptors:d}},S3e=t=>t.node&&!t.ipc?{...t,ipc:!1}:t,E3e=({ipc:t,ipcInput:e,detached:r,cancelSignal:n})=>{e&&kC("ipcInput"),t&&kC("ipc: true"),r&&kC("detached: true"),n&&kC("cancelSignal")},kC=t=>{throw new TypeError(`The "${t}" option cannot be used with synchronous methods.`)},v3e=({file:t,commandArguments:e,options:r,command:n,escapedCommand:i,verboseInfo:o,fileDescriptors:s,startTime:a})=>{let c=b3e({file:t,commandArguments:e,options:r,command:n,escapedCommand:i,fileDescriptors:s,startTime:a});if(c.failed)return c;let{resultError:l,exitCode:u,signal:d,timedOut:f,isMaxBuffer:p}=Xue(c,r),{output:h,error:m=l}=Wue({fileDescriptors:s,syncResult:c,options:r,isMaxBuffer:p,verboseInfo:o}),g=h.map((b,w)=>Ba(b,r,w)),_=Ba(Yue(h,r),r,"all");return w3e({error:m,exitCode:u,signal:d,timedOut:f,isMaxBuffer:p,stdio:g,all:_,options:r,command:n,escapedCommand:i,startTime:a})},b3e=({file:t,commandArguments:e,options:r,command:n,escapedCommand:i,fileDescriptors:o,startTime:s})=>{try{que(o,r);let a=T3e(r);return _3e(...mC(t,e,a))}catch(a){return Lh({error:a,command:n,escapedCommand:i,fileDescriptors:o,options:r,startTime:s,isSync:!0})}},T3e=({encoding:t,maxBuffer:e,...r})=>({...r,encoding:"buffer",maxBuffer:bC(e)}),w3e=({error:t,exitCode:e,signal:r,timedOut:n,isMaxBuffer:i,stdio:o,all:s,options:a,command:c,escapedCommand:l,startTime:u})=>t===void 0?TC({command:c,escapedCommand:l,stdio:o,all:s,ipcOutput:[],options:a,startTime:u}):vE({error:t,command:c,escapedCommand:l,timedOut:n,isCanceled:!1,isGracefullyCanceled:!1,isMaxBuffer:i,isForcefullyTerminated:!1,exitCode:e,signal:r,stdio:o,all:s,ipcOutput:[],options:a,startTime:u,isSync:!0});import{setMaxListeners as dYe}from"events";import{spawn as fYe}from"child_process";import ide from"process";import{once as gj,on as A3e}from"events";var ede=({anyProcess:t,channel:e,isSubprocess:r,ipc:n},{reference:i=!0,filter:o}={})=>(Oh({methodName:"getOneMessage",isSubprocess:r,ipc:n,isConnected:cC(t)}),x3e({anyProcess:t,channel:e,isSubprocess:r,filter:o,reference:i})),x3e=async({anyProcess:t,channel:e,isSubprocess:r,filter:n,reference:i})=>{iC(e,i);let o=dl(t,e,r),s=new AbortController;try{return await Promise.race([R3e(o,n,s),C3e(o,r,s),I3e(o,r,s)])}catch(a){throw Nh(t),a}finally{s.abort(),oC(e,i)}},R3e=async(t,e,{signal:r})=>{if(e===void 0){let[n]=await gj(t,"message",{signal:r});return n}for await(let[n]of A3e(t,"message",{signal:r}))if(e(n))return n},C3e=async(t,e,{signal:r})=>{await gj(t,"disconnect",{signal:r}),zce(e)},I3e=async(t,e,{signal:r})=>{let[n]=await gj(t,"strict:error",{signal:r});throw tC(n,e)};import{once as rde,on as P3e}from"events";var nde=({anyProcess:t,channel:e,isSubprocess:r,ipc:n},{reference:i=!0}={})=>_j({anyProcess:t,channel:e,isSubprocess:r,ipc:n,shouldAwait:!r,reference:i}),_j=({anyProcess:t,channel:e,isSubprocess:r,ipc:n,shouldAwait:i,reference:o})=>{Oh({methodName:"getEachMessage",isSubprocess:r,ipc:n,isConnected:cC(t)}),iC(e,o);let s=dl(t,e,r),a=new AbortController,c={};return O3e(t,s,a),N3e({ipcEmitter:s,isSubprocess:r,controller:a,state:c}),k3e({anyProcess:t,channel:e,ipcEmitter:s,isSubprocess:r,shouldAwait:i,controller:a,state:c,reference:o})},O3e=async(t,e,r)=>{try{await rde(e,"disconnect",{signal:r.signal}),r.abort()}catch{}},N3e=async({ipcEmitter:t,isSubprocess:e,controller:r,state:n})=>{try{let[i]=await rde(t,"strict:error",{signal:r.signal});n.error=tC(i,e),r.abort()}catch{}},k3e=async function*({anyProcess:t,channel:e,ipcEmitter:r,isSubprocess:n,shouldAwait:i,controller:o,state:s,reference:a}){try{for await(let[c]of P3e(r,"message",{signal:o.signal}))tde(s),yield c}catch{tde(s)}finally{o.abort(),oC(e,a),n||Nh(t),i&&await t}},tde=({error:t})=>{if(t)throw t};var ode=(t,{ipc:e})=>{Object.assign(t,ade(t,!1,e))},sde=()=>{let t=ide,e=!0,r=ide.channel!==void 0;return{...ade(t,e,r),getCancelSignal:ple.bind(void 0,{anyProcess:t,channel:t.channel,isSubprocess:e,ipc:r})}},ade=(t,e,r)=>({sendMessage:fC.bind(void 0,{anyProcess:t,channel:t.channel,isSubprocess:e,ipc:r}),getOneMessage:ede.bind(void 0,{anyProcess:t,channel:t.channel,isSubprocess:e,ipc:r}),getEachMessage:nde.bind(void 0,{anyProcess:t,channel:t.channel,isSubprocess:e,ipc:r})});import{ChildProcess as M3e}from"child_process";import{PassThrough as $3e,Readable as D3e,Writable as L3e,Duplex as U3e}from"stream";var cde=({error:t,command:e,escapedCommand:r,fileDescriptors:n,options:i,startTime:o,verboseInfo:s})=>{aj(n);let a=new M3e;F3e(a,n),Object.assign(a,{readable:z3e,writable:j3e,duplex:B3e});let c=Lh({error:t,command:e,escapedCommand:r,fileDescriptors:n,options:i,startTime:o,isSync:!1}),l=q3e(c,s,i);return{subprocess:a,promise:l}},F3e=(t,e)=>{let r=TE(),n=TE(),i=TE(),o=Array.from({length:e.length-3},TE),s=TE(),a=[r,n,i,...o];Object.assign(t,{stdin:r,stdout:n,stderr:i,all:s,stdio:a})},TE=()=>{let t=new $3e;return t.end(),t},z3e=()=>new D3e({read(){}}),j3e=()=>new L3e({write(){}}),B3e=()=>new U3e({read(){},write(){}}),q3e=async(t,e,r)=>Uh(t,e,r);import{createReadStream as lde,createWriteStream as ude}from"fs";import{Buffer as V3e}from"buffer";import{Readable as wE,Writable as G3e,Duplex as H3e}from"stream";var fde=(t,e)=>RC(W3e,t,e,!1),AE=({type:t,optionName:e})=>{throw new TypeError(`The \`${e}\` option cannot be ${fl[t]}.`)},dde={fileNumber:AE,generator:pj,asyncGenerator:pj,nodeStream:({value:t})=>({stream:t}),webTransform({value:{transform:t,writableObjectMode:e,readableObjectMode:r}}){let n=e||r;return{stream:H3e.fromWeb(t,{objectMode:n})}},duplex:({value:{transform:t}})=>({stream:t}),native(){}},W3e={input:{...dde,fileUrl:({value:t})=>({stream:lde(t)}),filePath:({value:{file:t}})=>({stream:lde(t)}),webStream:({value:t})=>({stream:wE.fromWeb(t)}),iterable:({value:t})=>({stream:wE.from(t)}),asyncIterable:({value:t})=>({stream:wE.from(t)}),string:({value:t})=>({stream:wE.from(t)}),uint8Array:({value:t})=>({stream:wE.from(V3e.from(t))})},output:{...dde,fileUrl:({value:t})=>({stream:ude(t)}),filePath:({value:{file:t,append:e}})=>({stream:ude(t,e?{flags:"a"}:{})}),webStream:({value:t})=>({stream:G3e.fromWeb(t)}),iterable:AE,asyncIterable:AE,string:AE,uint8Array:AE}};import{on as Y3e,once as pde}from"events";import{PassThrough as K3e,getDefaultHighWaterMark as Z3e}from"stream";import{finished as gde}from"stream/promises";function xd(t){if(!Array.isArray(t))throw new TypeError(`Expected an array, got \`${typeof t}\`.`);for(let i of t)Sj(i);let e=t.some(({readableObjectMode:i})=>i),r=J3e(t,e),n=new yj({objectMode:e,writableHighWaterMark:r,readableHighWaterMark:r});for(let i of t)n.add(i);return n}var J3e=(t,e)=>{if(t.length===0)return Z3e(e);let r=t.filter(({readableObjectMode:n})=>n===e).map(({readableHighWaterMark:n})=>n);return Math.max(...r)},yj=class extends K3e{#e=new Set([]);#r=new Set([]);#t=new Set([]);#n;#o=Symbol("unpipe");#i=new WeakMap;add(e){if(Sj(e),this.#e.has(e))return;this.#e.add(e),this.#n??=X3e(this,this.#e,this.#o);let r=tWe({passThroughStream:this,stream:e,streams:this.#e,ended:this.#r,aborted:this.#t,onFinished:this.#n,unpipeEvent:this.#o});this.#i.set(e,r),e.pipe(this,{end:!1})}async remove(e){if(Sj(e),!this.#e.has(e))return!1;let r=this.#i.get(e);return r===void 0?!1:(this.#i.delete(e),e.unpipe(this),await r,!0)}},X3e=async(t,e,r)=>{MC(t,hde);let n=new AbortController;try{await Promise.race([Q3e(t,n),eWe(t,e,r,n)])}finally{n.abort(),MC(t,-hde)}},Q3e=async(t,{signal:e})=>{try{await gde(t,{signal:e,cleanup:!0})}catch(r){throw _de(t,r),r}},eWe=async(t,e,r,{signal:n})=>{for await(let[i]of Y3e(t,"unpipe",{signal:n}))e.has(i)&&i.emit(r)},Sj=t=>{if(typeof t?.pipe!="function")throw new TypeError(`Expected a readable stream, got: \`${typeof t}\`.`)},tWe=async({passThroughStream:t,stream:e,streams:r,ended:n,aborted:i,onFinished:o,unpipeEvent:s})=>{MC(t,mde);let a=new AbortController;try{await Promise.race([rWe(o,e,a),nWe({passThroughStream:t,stream:e,streams:r,ended:n,aborted:i,controller:a}),iWe({stream:e,streams:r,ended:n,aborted:i,unpipeEvent:s,controller:a})])}finally{a.abort(),MC(t,-mde)}r.size>0&&r.size===n.size+i.size&&(n.size===0&&i.size>0?Ej(t):oWe(t))},rWe=async(t,e,{signal:r})=>{try{await t,r.aborted||Ej(e)}catch(n){r.aborted||_de(e,n)}},nWe=async({passThroughStream:t,stream:e,streams:r,ended:n,aborted:i,controller:{signal:o}})=>{try{await gde(e,{signal:o,cleanup:!0,readable:!0,writable:!1}),r.has(e)&&n.add(e)}catch(s){if(o.aborted||!r.has(e))return;yde(s)?i.add(e):Sde(t,s)}},iWe=async({stream:t,streams:e,ended:r,aborted:n,unpipeEvent:i,controller:{signal:o}})=>{if(await pde(t,i,{signal:o}),!t.readable)return pde(o,"abort",{signal:o});e.delete(t),r.delete(t),n.delete(t)},oWe=t=>{t.writable&&t.end()},_de=(t,e)=>{yde(e)?Ej(t):Sde(t,e)},yde=t=>t?.code==="ERR_STREAM_PREMATURE_CLOSE",Ej=t=>{(t.readable||t.writable)&&t.destroy()},Sde=(t,e)=>{t.destroyed||(t.once("error",sWe),t.destroy(e))},sWe=()=>{},MC=(t,e)=>{let r=t.getMaxListeners();r!==0&&r!==Number.POSITIVE_INFINITY&&t.setMaxListeners(r+e)},hde=2,mde=1;import{finished as Ede}from"stream/promises";var zh=(t,e)=>{t.pipe(e),aWe(t,e),cWe(t,e)},aWe=async(t,e)=>{if(!(Lo(t)||Lo(e))){try{await Ede(t,{cleanup:!0,readable:!0,writable:!1})}catch{}vj(e)}},vj=t=>{t.writable&&t.end()},cWe=async(t,e)=>{if(!(Lo(t)||Lo(e))){try{await Ede(e,{cleanup:!0,readable:!1,writable:!0})}catch{}bj(t)}},bj=t=>{t.readable&&t.destroy()};var vde=(t,e,r)=>{let n=new Map;for(let[i,{stdioItems:o,direction:s}]of Object.entries(e)){for(let{stream:a}of o.filter(({type:c})=>Qi.has(c)))lWe(t,a,s,i);for(let{stream:a}of o.filter(({type:c})=>!Qi.has(c)))dWe({subprocess:t,stream:a,direction:s,fdNumber:i,pipeGroups:n,controller:r})}for(let[i,o]of n.entries()){let s=o.length===1?o[0]:xd(o);zh(s,i)}},lWe=(t,e,r,n)=>{r==="output"?zh(t.stdio[n],e):zh(e,t.stdio[n]);let i=uWe[n];i!==void 0&&(t[i]=e),t.stdio[n]=e},uWe=["stdin","stdout","stderr"],dWe=({subprocess:t,stream:e,direction:r,fdNumber:n,pipeGroups:i,controller:o})=>{if(e===void 0)return;fWe(e,o);let[s,a]=r==="output"?[e,t.stdio[n]]:[t.stdio[n],e],c=i.get(s)??[];i.set(s,[...c,a])},fWe=(t,{signal:e})=>{Lo(t)&&bd(t,pWe,e)},pWe=2;import{addAbortListener as gWe}from"events";var Rd=[];Rd.push("SIGHUP","SIGINT","SIGTERM");process.platform!=="win32"&&Rd.push("SIGALRM","SIGABRT","SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");process.platform==="linux"&&Rd.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT");var $C=t=>!!t&&typeof t=="object"&&typeof t.removeListener=="function"&&typeof t.emit=="function"&&typeof t.reallyExit=="function"&&typeof t.listeners=="function"&&typeof t.kill=="function"&&typeof t.pid=="number"&&typeof t.on=="function",Tj=Symbol.for("signal-exit emitter"),wj=globalThis,hWe=Object.defineProperty.bind(Object),Aj=class{emitted={afterExit:!1,exit:!1};listeners={afterExit:[],exit:[]};count=0;id=Math.random();constructor(){if(wj[Tj])return wj[Tj];hWe(wj,Tj,{value:this,writable:!1,enumerable:!1,configurable:!1})}on(e,r){this.listeners[e].push(r)}removeListener(e,r){let n=this.listeners[e],i=n.indexOf(r);i!==-1&&(i===0&&n.length===1?n.length=0:n.splice(i,1))}emit(e,r,n){if(this.emitted[e])return!1;this.emitted[e]=!0;let i=!1;for(let o of this.listeners[e])i=o(r,n)===!0||i;return e==="exit"&&(i=this.emit("afterExit",r,n)||i),i}},DC=class{},mWe=t=>({onExit(e,r){return t.onExit(e,r)},load(){return t.load()},unload(){return t.unload()}}),xj=class extends DC{onExit(){return()=>{}}load(){}unload(){}},Rj=class extends DC{#e=Cj.platform==="win32"?"SIGINT":"SIGHUP";#r=new Aj;#t;#n;#o;#i={};#s=!1;constructor(e){super(),this.#t=e,this.#i={};for(let r of Rd)this.#i[r]=()=>{let n=this.#t.listeners(r),{count:i}=this.#r,o=e;if(typeof o.__signal_exit_emitter__=="object"&&typeof o.__signal_exit_emitter__.count=="number"&&(i+=o.__signal_exit_emitter__.count),n.length===i){this.unload();let s=this.#r.emit("exit",null,r),a=r==="SIGHUP"?this.#e:r;s||e.kill(e.pid,a)}};this.#o=e.reallyExit,this.#n=e.emit}onExit(e,r){if(!$C(this.#t))return()=>{};this.#s===!1&&this.load();let n=r?.alwaysLast?"afterExit":"exit";return this.#r.on(n,e),()=>{this.#r.removeListener(n,e),this.#r.listeners.exit.length===0&&this.#r.listeners.afterExit.length===0&&this.unload()}}load(){if(!this.#s){this.#s=!0,this.#r.count+=1;for(let e of Rd)try{let r=this.#i[e];r&&this.#t.on(e,r)}catch{}this.#t.emit=(e,...r)=>this.#c(e,...r),this.#t.reallyExit=e=>this.#a(e)}}unload(){this.#s&&(this.#s=!1,Rd.forEach(e=>{let r=this.#i[e];if(!r)throw new Error("Listener not defined for signal: "+e);try{this.#t.removeListener(e,r)}catch{}}),this.#t.emit=this.#n,this.#t.reallyExit=this.#o,this.#r.count-=1)}#a(e){return $C(this.#t)?(this.#t.exitCode=e||0,this.#r.emit("exit",this.#t.exitCode,null),this.#o.call(this.#t,this.#t.exitCode)):0}#c(e,...r){let n=this.#n;if(e==="exit"&&$C(this.#t)){typeof r[0]=="number"&&(this.#t.exitCode=r[0]);let i=n.call(this.#t,e,...r);return this.#r.emit("exit",this.#t.exitCode,null),i}else return n.call(this.#t,e,...r)}},Cj=globalThis.process,{onExit:bde,load:Ljt,unload:Ujt}=mWe($C(Cj)?new Rj(Cj):new xj);var Tde=(t,{cleanup:e,detached:r},{signal:n})=>{if(!e||r)return;let i=bde(()=>{t.kill()});gWe(n,()=>{i()})};var Ade=({source:t,sourcePromise:e,boundOptions:r,createNested:n},...i)=>{let o=W0(),{destination:s,destinationStream:a,destinationError:c,from:l,unpipeSignal:u}=_We(r,n,i),{sourceStream:d,sourceError:f}=SWe(t,l),{options:p,fileDescriptors:h}=ks.get(t);return{sourcePromise:e,sourceStream:d,sourceOptions:p,sourceError:f,destination:s,destinationStream:a,destinationError:c,unpipeSignal:u,fileDescriptors:h,startTime:o}},_We=(t,e,r)=>{try{let{destination:n,pipeOptions:{from:i,to:o,unpipeSignal:s}={}}=yWe(t,e,...r),a=nC(n,o);return{destination:n,destinationStream:a,from:i,unpipeSignal:s}}catch(n){return{destinationError:n}}},yWe=(t,e,r,...n)=>{if(Array.isArray(r))return{destination:e(wde,t)(r,...n),pipeOptions:t};if(typeof r=="string"||r instanceof URL||_z(r)){if(Object.keys(t).length>0)throw new TypeError('Please use .pipe("file", ..., options) or .pipe(execa("file", ..., options)) instead of .pipe(options)("file", ...).');let[i,o,s]=L0(r,...n);return{destination:e(wde)(i,o,s),pipeOptions:s}}if(ks.has(r)){if(Object.keys(t).length>0)throw new TypeError("Please use .pipe(options)`command` or .pipe($(options)`command`) instead of .pipe(options)($`command`).");return{destination:r,pipeOptions:n[0]}}throw new TypeError(`The first argument must be a template string, an options object, or an Execa subprocess: ${r}`)},wde=({options:t})=>({options:{...t,stdin:"pipe",piped:!0}}),SWe=(t,e)=>{try{return{sourceStream:kh(t,e)}}catch(r){return{sourceError:r}}};var Rde=({sourceStream:t,sourceError:e,destinationStream:r,destinationError:n,fileDescriptors:i,sourceOptions:o,startTime:s})=>{let a=EWe({sourceStream:t,sourceError:e,destinationStream:r,destinationError:n});if(a!==void 0)throw Ij({error:a,fileDescriptors:i,sourceOptions:o,startTime:s})},EWe=({sourceStream:t,sourceError:e,destinationStream:r,destinationError:n})=>{if(e!==void 0&&n!==void 0)return n;if(n!==void 0)return bj(t),n;if(e!==void 0)return vj(r),e},Ij=({error:t,fileDescriptors:e,sourceOptions:r,startTime:n})=>Lh({error:t,command:xde,escapedCommand:xde,fileDescriptors:e,options:r,startTime:n,isSync:!1}),xde="source.pipe(destination)";var Cde=async t=>{let[{status:e,reason:r,value:n=r},{status:i,reason:o,value:s=o}]=await t;if(s.pipedFrom.includes(n)||s.pipedFrom.push(n),i==="rejected")throw s;if(e==="rejected")throw n;return s};import{finished as vWe}from"stream/promises";var Ide=(t,e,r)=>{let n=LC.has(e)?TWe(t,e):bWe(t,e);return bd(t,AWe,r.signal),bd(e,xWe,r.signal),wWe(e),n},bWe=(t,e)=>{let r=xd([t]);return zh(r,e),LC.set(e,r),r},TWe=(t,e)=>{let r=LC.get(e);return r.add(t),r},wWe=async t=>{try{await vWe(t,{cleanup:!0,readable:!1,writable:!0})}catch{}LC.delete(t)},LC=new WeakMap,AWe=2,xWe=1;import{aborted as RWe}from"util";var Pde=(t,e)=>t===void 0?[]:[CWe(t,e)],CWe=async(t,{sourceStream:e,mergedStream:r,fileDescriptors:n,sourceOptions:i,startTime:o})=>{await RWe(t,e),await r.remove(e);let s=new Error("Pipe canceled by `unpipeSignal` option.");throw Ij({error:s,fileDescriptors:n,sourceOptions:i,startTime:o})};var UC=(t,...e)=>{if(cr(e[0]))return UC.bind(void 0,{...t,boundOptions:{...t.boundOptions,...e[0]}});let{destination:r,...n}=Ade(t,...e),i=IWe({...n,destination:r});return i.pipe=UC.bind(void 0,{...t,source:r,sourcePromise:i,boundOptions:{}}),i},IWe=async({sourcePromise:t,sourceStream:e,sourceOptions:r,sourceError:n,destination:i,destinationStream:o,destinationError:s,unpipeSignal:a,fileDescriptors:c,startTime:l})=>{let u=PWe(t,i);Rde({sourceStream:e,sourceError:n,destinationStream:o,destinationError:s,fileDescriptors:c,sourceOptions:r,startTime:l});let d=new AbortController;try{let f=Ide(e,o,d);return await Promise.race([Cde(u),...Pde(a,{sourceStream:e,mergedStream:f,sourceOptions:r,fileDescriptors:c,startTime:l})])}finally{d.abort()}},PWe=(t,e)=>Promise.allSettled([t,e]);import{setImmediate as LWe}from"timers/promises";import{on as OWe}from"events";import{getDefaultHighWaterMark as NWe}from"stream";var FC=({subprocessStdout:t,subprocess:e,binary:r,shouldEncode:n,encoding:i,preserveNewlines:o})=>{let s=new AbortController;return kWe(e,s),Nde({stream:t,controller:s,binary:r,shouldEncode:!t.readableObjectMode&&n,encoding:i,shouldSplit:!t.readableObjectMode,preserveNewlines:o})},kWe=async(t,e)=>{try{await t}catch{}finally{e.abort()}},Pj=({stream:t,onStreamEnd:e,lines:r,encoding:n,stripFinalNewline:i,allMixed:o})=>{let s=new AbortController;MWe(e,s,t);let a=t.readableObjectMode&&!o;return Nde({stream:t,controller:s,binary:n==="buffer",shouldEncode:!a,encoding:n,shouldSplit:!a&&r,preserveNewlines:!i})},MWe=async(t,e,r)=>{try{await t}catch{r.destroy()}finally{e.abort()}},Nde=({stream:t,controller:e,binary:r,shouldEncode:n,encoding:i,shouldSplit:o,preserveNewlines:s})=>{let a=OWe(t,"data",{signal:e.signal,highWaterMark:Ode,highWatermark:Ode});return $We({onStdoutChunk:a,controller:e,binary:r,shouldEncode:n,encoding:i,shouldSplit:o,preserveNewlines:s})},Oj=NWe(!0),Ode=Oj,$We=async function*({onStdoutChunk:t,controller:e,binary:r,shouldEncode:n,encoding:i,shouldSplit:o,preserveNewlines:s}){let a=DWe({binary:r,shouldEncode:n,encoding:i,shouldSplit:o,preserveNewlines:s});try{for await(let[c]of t)yield*Ad(c,a,0)}catch(c){if(!e.signal.aborted)throw c}finally{yield*bE(a)}},DWe=({binary:t,shouldEncode:e,encoding:r,shouldSplit:n,preserveNewlines:i})=>[IC(t,r,!e),CC(t,i,!n,{})].filter(Boolean);var kde=async({stream:t,onStreamEnd:e,fdNumber:r,encoding:n,buffer:i,maxBuffer:o,lines:s,allMixed:a,stripFinalNewline:c,verboseInfo:l,streamInfo:u})=>{let d=UWe({stream:t,onStreamEnd:e,fdNumber:r,encoding:n,allMixed:a,verboseInfo:l,streamInfo:u});if(!i){await Promise.all([FWe(t),d]);return}let f=cj(c,r),p=Pj({stream:t,onStreamEnd:e,lines:s,encoding:n,stripFinalNewline:f,allMixed:a}),[h]=await Promise.all([zWe({stream:t,iterable:p,fdNumber:r,encoding:n,maxBuffer:o,lines:s}),d]);return h},UWe=async({stream:t,onStreamEnd:e,fdNumber:r,encoding:n,allMixed:i,verboseInfo:o,streamInfo:{fileDescriptors:s}})=>{if(!NC({stdioItems:s[r]?.stdioItems,encoding:n,verboseInfo:o,fdNumber:r}))return;let a=Pj({stream:t,onStreamEnd:e,lines:!0,encoding:n,stripFinalNewline:!0,allMixed:i});await Vue(a,t,r,o)},FWe=async t=>{await LWe(),t.readableFlowing===null&&t.resume()},zWe=async({stream:t,stream:{readableObjectMode:e},iterable:r,fdNumber:n,encoding:i,maxBuffer:o,lines:s})=>{try{return e||s?await SC(r,{maxBuffer:o}):i==="buffer"?new Uint8Array(await EC(r,{maxBuffer:o})):await Dh(r,{maxBuffer:o})}catch(a){return Mde(Vle({error:a,stream:t,readableObjectMode:e,lines:s,encoding:i,fdNumber:n}))}},Nj=async t=>{try{return await t}catch(e){return Mde(e)}},Mde=({bufferedData:t})=>sae(t)?new Uint8Array(t):t;import{finished as jWe}from"stream/promises";var xE=async(t,e,r,{isSameDirection:n,stopOnExit:i=!1}={})=>{let o=BWe(t,r),s=new AbortController;try{await Promise.race([...i?[r.exitPromise]:[],jWe(t,{cleanup:!0,signal:s.signal})])}catch(a){o.stdinCleanedUp||GWe(a,e,r,n)}finally{s.abort()}},BWe=(t,{originalStreams:[e],subprocess:r})=>{let n={stdinCleanedUp:!1};return t===e&&qWe(t,r,n),n},qWe=(t,e,r)=>{let{_destroy:n}=t;t._destroy=(...i)=>{VWe(e,r),n.call(t,...i)}},VWe=({exitCode:t,signalCode:e},r)=>{(t!==null||e!==null)&&(r.stdinCleanedUp=!0)},GWe=(t,e,r,n)=>{if(!HWe(t,e,r,n))throw t},HWe=(t,e,r,n=!0)=>r.propagating?$de(t)||zC(t):(r.propagating=!0,kj(r,e)===n?$de(t):zC(t)),kj=({fileDescriptors:t},e)=>e!=="all"&&t[e].direction==="input",zC=t=>t?.code==="ERR_STREAM_PREMATURE_CLOSE",$de=t=>t?.code==="EPIPE";var Dde=({subprocess:t,encoding:e,buffer:r,maxBuffer:n,lines:i,stripFinalNewline:o,verboseInfo:s,streamInfo:a})=>t.stdio.map((c,l)=>Mj({stream:c,fdNumber:l,encoding:e,buffer:r[l],maxBuffer:n[l],lines:i[l],allMixed:!1,stripFinalNewline:o,verboseInfo:s,streamInfo:a})),Mj=async({stream:t,fdNumber:e,encoding:r,buffer:n,maxBuffer:i,lines:o,allMixed:s,stripFinalNewline:a,verboseInfo:c,streamInfo:l})=>{if(!t)return;let u=xE(t,e,l);if(kj(l,e)){await u;return}let[d]=await Promise.all([kde({stream:t,onStreamEnd:u,fdNumber:e,encoding:r,buffer:n,maxBuffer:i,lines:o,allMixed:s,stripFinalNewline:a,verboseInfo:c,streamInfo:l}),u]);return d};var Lde=({stdout:t,stderr:e},{all:r})=>r&&(t||e)?xd([t,e].filter(Boolean)):void 0,Ude=({subprocess:t,encoding:e,buffer:r,maxBuffer:n,lines:i,stripFinalNewline:o,verboseInfo:s,streamInfo:a})=>Mj({...WWe(t,r),fdNumber:"all",encoding:e,maxBuffer:n[1]+n[2],lines:i[1]||i[2],allMixed:YWe(t),stripFinalNewline:o,verboseInfo:s,streamInfo:a}),WWe=({stdout:t,stderr:e,all:r},[,n,i])=>{let o=n||i;return o?n?i?{stream:r,buffer:o}:{stream:t,buffer:o}:{stream:e,buffer:o}:{stream:r,buffer:o}},YWe=({all:t,stdout:e,stderr:r})=>t&&e&&r&&e.readableObjectMode!==r.readableObjectMode;import{once as KWe}from"events";var Fde=t=>Ch(t,"ipc"),zde=(t,e)=>{let r=H0(t);Os({type:"ipc",verboseMessage:r,fdNumber:"ipc",verboseInfo:e})};var jde=async({subprocess:t,buffer:e,maxBuffer:r,ipc:n,ipcOutput:i,verboseInfo:o})=>{if(!n)return i;let s=Fde(o),a=za(e,"ipc"),c=za(r,"ipc");for await(let l of _j({anyProcess:t,channel:t.channel,isSubprocess:!1,ipc:n,shouldAwait:!1,reference:!0}))a&&(Gle(t,i,c),i.push(l)),s&&zde(l,o);return i},Bde=async(t,e)=>(await Promise.allSettled([t]),e);var qde=async({subprocess:t,options:{encoding:e,buffer:r,maxBuffer:n,lines:i,timeoutDuration:o,cancelSignal:s,gracefulCancel:a,forceKillAfterDelay:c,stripFinalNewline:l,ipc:u,ipcInput:d},context:f,verboseInfo:p,fileDescriptors:h,originalStreams:m,onInternalError:g,controller:_})=>{let b=Kue(t,f),w={originalStreams:m,fileDescriptors:h,subprocess:t,exitPromise:b,propagating:!1},E=Dde({subprocess:t,encoding:e,buffer:r,maxBuffer:n,lines:i,stripFinalNewline:l,verboseInfo:p,streamInfo:w}),T=Ude({subprocess:t,encoding:e,buffer:r,maxBuffer:n,lines:i,stripFinalNewline:l,verboseInfo:p,streamInfo:w}),A=[],R=jde({subprocess:t,buffer:r,maxBuffer:n,ipc:u,ipcOutput:A,verboseInfo:p}),P=ZWe(m,t,w),k=JWe(h,w);try{return await Promise.race([Promise.all([{},Jue(b),Promise.all(E),T,R,Tle(t,d),...P,...k]),g,XWe(t,_),...yle(t,o,f,_),...Fce({subprocess:t,cancelSignal:s,gracefulCancel:a,context:f,controller:_}),...gle({subprocess:t,cancelSignal:s,gracefulCancel:a,forceKillAfterDelay:c,context:f,controller:_})])}catch(L){return f.terminationReason??="other",Promise.all([{error:L},b,Promise.all(E.map(y=>Nj(y))),Nj(T),Bde(R,A),Promise.allSettled(P),Promise.allSettled(k)])}},ZWe=(t,e,r)=>t.map((n,i)=>n===e.stdio[i]?void 0:xE(n,i,r)),JWe=(t,e)=>t.flatMap(({stdioItems:r},n)=>r.filter(({value:i,stream:o=i})=>zo(o,{checkOpen:!1})&&!Lo(o)).map(({type:i,value:o,stream:s=o})=>xE(s,n,e,{isSameDirection:Qi.has(i),stopOnExit:i==="native"}))),XWe=async(t,{signal:e})=>{let[r]=await KWe(t,"error",{signal:e});throw r};var Vde=()=>({readableDestroy:new WeakMap,writableFinal:new WeakMap,writableDestroy:new WeakMap}),RE=(t,e,r)=>{let n=t[r];n.has(e)||n.set(e,[]);let i=n.get(e),o=Ns();return i.push(o),{resolve:o.resolve.bind(o),promises:i}},jh=async({resolve:t,promises:e},r)=>{t();let[n]=await Promise.race([Promise.allSettled([!0,r]),Promise.all([!1,...e])]);return!n};import{Readable as QWe}from"stream";import{callbackify as eYe}from"util";import{finished as Gde}from"stream/promises";var $j=async t=>{if(t!==void 0)try{await Dj(t)}catch{}},Hde=async t=>{if(t!==void 0)try{await Lj(t)}catch{}},Dj=async t=>{await Gde(t,{cleanup:!0,readable:!1,writable:!0})},Lj=async t=>{await Gde(t,{cleanup:!0,readable:!0,writable:!1})},jC=async(t,e)=>{if(await t,e)throw e},BC=(t,e,r)=>{r&&!zC(r)?t.destroy(r):e&&t.destroy()};var Wde=({subprocess:t,concurrentStreams:e,encoding:r},{from:n,binary:i=!0,preserveNewlines:o=!0}={})=>{let s=i||wi.has(r),{subprocessStdout:a,waitReadableDestroy:c}=Uj(t,n,e),{readableEncoding:l,readableObjectMode:u,readableHighWaterMark:d}=Fj(a,s),{read:f,onStdoutDataDone:p}=zj({subprocessStdout:a,subprocess:t,binary:s,encoding:r,preserveNewlines:o}),h=new QWe({read:f,destroy:eYe(Bj.bind(void 0,{subprocessStdout:a,subprocess:t,waitReadableDestroy:c})),highWaterMark:d,objectMode:u,encoding:l});return jj({subprocessStdout:a,onStdoutDataDone:p,readable:h,subprocess:t}),h},Uj=(t,e,r)=>{let n=kh(t,e),i=RE(r,n,"readableDestroy");return{subprocessStdout:n,waitReadableDestroy:i}},Fj=({readableEncoding:t,readableObjectMode:e,readableHighWaterMark:r},n)=>n?{readableEncoding:t,readableObjectMode:e,readableHighWaterMark:r}:{readableEncoding:t,readableObjectMode:!0,readableHighWaterMark:Oj},zj=({subprocessStdout:t,subprocess:e,binary:r,encoding:n,preserveNewlines:i})=>{let o=Ns(),s=FC({subprocessStdout:t,subprocess:e,binary:r,shouldEncode:!r,encoding:n,preserveNewlines:i});return{read(){tYe(this,s,o)},onStdoutDataDone:o}},tYe=async(t,e,r)=>{try{let{value:n,done:i}=await e.next();i?r.resolve():t.push(n)}catch{}},jj=async({subprocessStdout:t,onStdoutDataDone:e,readable:r,subprocess:n,subprocessStdin:i})=>{try{await Lj(t),await n,await $j(i),await e,r.readable&&r.push(null)}catch(o){await $j(i),Yde(r,o)}},Bj=async({subprocessStdout:t,subprocess:e,waitReadableDestroy:r},n)=>{await jh(r,e)&&(Yde(t,n),await jC(e,n))},Yde=(t,e)=>{BC(t,t.readable,e)};import{Writable as rYe}from"stream";import{callbackify as Kde}from"util";var Zde=({subprocess:t,concurrentStreams:e},{to:r}={})=>{let{subprocessStdin:n,waitWritableFinal:i,waitWritableDestroy:o}=qj(t,r,e),s=new rYe({...Vj(n,t,i),destroy:Kde(Hj.bind(void 0,{subprocessStdin:n,subprocess:t,waitWritableFinal:i,waitWritableDestroy:o})),highWaterMark:n.writableHighWaterMark,objectMode:n.writableObjectMode});return Gj(n,s),s},qj=(t,e,r)=>{let n=nC(t,e),i=RE(r,n,"writableFinal"),o=RE(r,n,"writableDestroy");return{subprocessStdin:n,waitWritableFinal:i,waitWritableDestroy:o}},Vj=(t,e,r)=>({write:nYe.bind(void 0,t),final:Kde(iYe.bind(void 0,t,e,r))}),nYe=(t,e,r,n)=>{t.write(e,r)?n():t.once("drain",n)},iYe=async(t,e,r)=>{await jh(r,e)&&(t.writable&&t.end(),await e)},Gj=async(t,e,r)=>{try{await Dj(t),e.writable&&e.end()}catch(n){await Hde(r),Jde(e,n)}},Hj=async({subprocessStdin:t,subprocess:e,waitWritableFinal:r,waitWritableDestroy:n},i)=>{await jh(r,e),await jh(n,e)&&(Jde(t,i),await jC(e,i))},Jde=(t,e)=>{BC(t,t.writable,e)};import{Duplex as oYe}from"stream";import{callbackify as sYe}from"util";var Xde=({subprocess:t,concurrentStreams:e,encoding:r},{from:n,to:i,binary:o=!0,preserveNewlines:s=!0}={})=>{let a=o||wi.has(r),{subprocessStdout:c,waitReadableDestroy:l}=Uj(t,n,e),{subprocessStdin:u,waitWritableFinal:d,waitWritableDestroy:f}=qj(t,i,e),{readableEncoding:p,readableObjectMode:h,readableHighWaterMark:m}=Fj(c,a),{read:g,onStdoutDataDone:_}=zj({subprocessStdout:c,subprocess:t,binary:a,encoding:r,preserveNewlines:s}),b=new oYe({read:g,...Vj(u,t,d),destroy:sYe(aYe.bind(void 0,{subprocessStdout:c,subprocessStdin:u,subprocess:t,waitReadableDestroy:l,waitWritableFinal:d,waitWritableDestroy:f})),readableHighWaterMark:m,writableHighWaterMark:u.writableHighWaterMark,readableObjectMode:h,writableObjectMode:u.writableObjectMode,encoding:p});return jj({subprocessStdout:c,onStdoutDataDone:_,readable:b,subprocess:t,subprocessStdin:u}),Gj(u,b,c),b},aYe=async({subprocessStdout:t,subprocessStdin:e,subprocess:r,waitReadableDestroy:n,waitWritableFinal:i,waitWritableDestroy:o},s)=>{await Promise.all([Bj({subprocessStdout:t,subprocess:r,waitReadableDestroy:n},s),Hj({subprocessStdin:e,subprocess:r,waitWritableFinal:i,waitWritableDestroy:o},s)])};var Wj=(t,e,{from:r,binary:n=!1,preserveNewlines:i=!1}={})=>{let o=n||wi.has(e),s=kh(t,r),a=FC({subprocessStdout:s,subprocess:t,binary:o,shouldEncode:!0,encoding:e,preserveNewlines:i});return cYe(a,s,t)},cYe=async function*(t,e,r){try{yield*t}finally{e.readable&&e.destroy(),await r}};var Qde=(t,{encoding:e})=>{let r=Vde();t.readable=Wde.bind(void 0,{subprocess:t,concurrentStreams:r,encoding:e}),t.writable=Zde.bind(void 0,{subprocess:t,concurrentStreams:r}),t.duplex=Xde.bind(void 0,{subprocess:t,concurrentStreams:r,encoding:e}),t.iterable=Wj.bind(void 0,t,e),t[Symbol.asyncIterator]=Wj.bind(void 0,t,e,{})};var efe=(t,e)=>{for(let[r,n]of uYe){let i=n.value.bind(e);Reflect.defineProperty(t,r,{...n,value:i})}},lYe=(async()=>{})().constructor.prototype,uYe=["then","catch","finally"].map(t=>[t,Reflect.getOwnPropertyDescriptor(lYe,t)]);var tfe=(t,e,r,n)=>{let{file:i,commandArguments:o,command:s,escapedCommand:a,startTime:c,verboseInfo:l,options:u,fileDescriptors:d}=pYe(t,e,r),{subprocess:f,promise:p}=mYe({file:i,commandArguments:o,options:u,startTime:c,verboseInfo:l,command:s,escapedCommand:a,fileDescriptors:d});return f.pipe=UC.bind(void 0,{source:f,sourcePromise:p,boundOptions:{},createNested:n}),efe(f,p),ks.set(f,{options:u,fileDescriptors:d}),f},pYe=(t,e,r)=>{let{command:n,escapedCommand:i,startTime:o,verboseInfo:s}=Y0(t,e,r),{file:a,commandArguments:c,options:l}=hC(t,e,r),u=hYe(l),d=fde(u,s);return{file:a,commandArguments:c,command:n,escapedCommand:i,startTime:o,verboseInfo:s,options:u,fileDescriptors:d}},hYe=({timeout:t,signal:e,...r})=>{if(e!==void 0)throw new TypeError('The "signal" option has been renamed to "cancelSignal" instead.');return{...r,timeoutDuration:t}},mYe=({file:t,commandArguments:e,options:r,startTime:n,verboseInfo:i,command:o,escapedCommand:s,fileDescriptors:a})=>{let c;try{c=fYe(...mC(t,e,r))}catch(h){return cde({error:h,command:o,escapedCommand:s,fileDescriptors:a,options:r,startTime:n,verboseInfo:i})}let l=new AbortController;dYe(Number.POSITIVE_INFINITY,l.signal);let u=[...c.stdio];vde(c,a,l),Tde(c,r,l);let d={},f=Ns();c.kill=Lce.bind(void 0,{kill:c.kill.bind(c),options:r,onInternalError:f,context:d,controller:l}),c.all=Lde(c,r),Qde(c,r),ode(c,r);let p=gYe({subprocess:c,options:r,startTime:n,verboseInfo:i,fileDescriptors:a,originalStreams:u,command:o,escapedCommand:s,context:d,onInternalError:f,controller:l});return{subprocess:c,promise:p}},gYe=async({subprocess:t,options:e,startTime:r,verboseInfo:n,fileDescriptors:i,originalStreams:o,command:s,escapedCommand:a,context:c,onInternalError:l,controller:u})=>{let[d,[f,p],h,m,g]=await qde({subprocess:t,options:e,context:c,verboseInfo:n,fileDescriptors:i,originalStreams:o,onInternalError:l,controller:u});u.abort(),l.resolve();let _=h.map((E,T)=>Ba(E,e,T)),b=Ba(m,e,"all"),w=_Ye({errorInfo:d,exitCode:f,signal:p,stdio:_,all:b,ipcOutput:g,context:c,options:e,command:s,escapedCommand:a,startTime:r});return Uh(w,n,e)},_Ye=({errorInfo:t,exitCode:e,signal:r,stdio:n,all:i,ipcOutput:o,context:s,options:a,command:c,escapedCommand:l,startTime:u})=>"error"in t?vE({error:t.error,command:c,escapedCommand:l,timedOut:s.terminationReason==="timeout",isCanceled:s.terminationReason==="cancel"||s.terminationReason==="gracefulCancel",isGracefullyCanceled:s.terminationReason==="gracefulCancel",isMaxBuffer:t.error instanceof Ms,isForcefullyTerminated:s.isForcefullyTerminated,exitCode:e,signal:r,stdio:n,all:i,ipcOutput:o,options:a,startTime:u,isSync:!1}):TC({command:c,escapedCommand:l,stdio:n,all:i,ipcOutput:o,options:a,startTime:u});var qC=(t,e)=>{let r=Object.fromEntries(Object.entries(e).map(([n,i])=>[n,yYe(n,t[n],i)]));return{...t,...r}},yYe=(t,e,r)=>SYe.has(t)&&cr(e)&&cr(r)?{...e,...r}:r,SYe=new Set(["env",...Tz]);var pl=(t,e,r,n)=>{let i=(s,a,c)=>pl(s,a,r,c),o=(...s)=>EYe({mapArguments:t,deepOptions:r,boundOptions:e,setBoundExeca:n,createNested:i},...s);return n!==void 0&&n(o,i,e),o},EYe=({mapArguments:t,deepOptions:e={},boundOptions:r={},setBoundExeca:n,createNested:i},o,...s)=>{if(cr(o))return i(t,qC(r,o),n);let{file:a,commandArguments:c,options:l,isSync:u}=vYe({mapArguments:t,firstArgument:o,nextArguments:s,deepOptions:e,boundOptions:r});return u?Que(a,c,l):tfe(a,c,l,i)},vYe=({mapArguments:t,firstArgument:e,nextArguments:r,deepOptions:n,boundOptions:i})=>{let o=fae(e)?pae(e,r):[e,...r],[s,a,c]=L0(...o),l=qC(qC(n,i),c),{file:u=s,commandArguments:d=a,options:f=l,isSync:p=!1}=t({file:s,commandArguments:a,options:l});return{file:u,commandArguments:d,options:f,isSync:p}};var rfe=({file:t,commandArguments:e})=>ife(t,e),nfe=({file:t,commandArguments:e})=>({...ife(t,e),isSync:!0}),ife=(t,e)=>{if(e.length>0)throw new TypeError(`The command and its arguments must be passed as a single string: ${t} ${e}.`);let[r,...n]=bYe(t);return{file:r,commandArguments:n}},bYe=t=>{if(typeof t!="string")throw new TypeError(`The command must be a string: ${String(t)}.`);let e=t.trim();if(e==="")return[];let r=[];for(let n of e.split(TYe)){let i=r.at(-1);i&&i.endsWith("\\")?r[r.length-1]=`${i.slice(0,-1)} ${n}`:r.push(n)}return r},TYe=/ +/g;var ofe=(t,e,r)=>{t.sync=e(wYe,r),t.s=t.sync},sfe=({options:t})=>afe(t),wYe=({options:t})=>({...afe(t),isSync:!0}),afe=t=>({options:{...AYe(t),...t}}),AYe=({input:t,inputFile:e,stdio:r})=>t===void 0&&e===void 0&&r===void 0?{stdin:"inherit"}:{},cfe={preferLocal:!0};var lfe=pl(()=>({})),Rqt=pl(()=>({isSync:!0})),ufe=pl(rfe),Cqt=pl(nfe),Iqt=pl(Ele),Pqt=pl(sfe,{},cfe,ofe),{sendMessage:Oqt,getOneMessage:Nqt,getEachMessage:kqt,getCancelSignal:Mqt}=sde();var dfe=!1,ffe,pfe=t=>{dfe=!0,ffe??=t},qa=()=>dfe,hfe=()=>ffe;var CE=null,mfe=t=>(CE&&CE.destroy(),CE=new Ds({totalAllowedTime:t}),CE),gfe=()=>CE;var Ds=class{constructor({totalAllowedTime:e}){this.withStageTimer=async(e,r,n,{interruptible:i=!0}={})=>{if(this.isTimeExpired())throw new Error(`${e} stage did not complete in the allowed time. Time has already expired.`);if(i&&qa())throw new Error(`Aborting ${e} stage \u2014 shutting down`);let o=this.onTimesUp(()=>{throw new Error(`${e} stage did not complete in the allowed time.`)}),s=null,a=null;n!==void 0&&(a=new Promise((u,d)=>{s=setTimeout(()=>{d(new Error(`${e} stage exceeded its maximum duration of ${n}ms`))},n)}));let c=Date.now(),l="success";try{return await A0({stage:e},async()=>a?await Promise.race([r(),a]):await r())}catch(u){throw l="failure",u}finally{Y.timing("stage.duration",Date.now()-c,{stage:e,outcome:l}),o(),s&&clearTimeout(s)}};this.startTime=Date.now(),this.totalAllowedTime=e,this.globalTimeoutId=null,this.subscribers=[],this.hasTimedOut=!1,this.setupGlobalTimeout()}getElapsedTime(){return Date.now()-this.startTime}getRemainingTime(){let e=this.getElapsedTime(),r=this.totalAllowedTime-e;return Math.max(0,r)}isTimeExpired(){return this.getRemainingTime()===0||this.hasTimedOut}setupGlobalTimeout(){this.globalTimeoutId&&clearTimeout(this.globalTimeoutId),this.globalTimeoutId=setTimeout(()=>{this.notifyTimeUp()},this.totalAllowedTime)}notifyTimeUp(){this.hasTimedOut=!0;for(let e=this.subscribers.length-1;e>=0;e--)try{this.subscribers[e]()}catch(r){console.error("TimeKeeper: Error in time up callback:",r)}}onTimesUp(e){if(this.subscribers.push(e),this.hasTimedOut)try{e()}catch(r){console.error("TimeKeeper: Error in time up callback:",r)}return()=>{let r=this.subscribers.indexOf(e);r>-1&&this.subscribers.splice(r,1)}}off(e){let r=this.subscribers.indexOf(e);r>-1&&this.subscribers.splice(r,1)}clearSubscribers(){this.subscribers.length=0}getSubscriberCount(){return this.subscribers.length}destroy(){this.globalTimeoutId&&(clearTimeout(this.globalTimeoutId),this.globalTimeoutId=null),this.clearSubscribers()}static{this.timeUnits={seconds:e=>e*1e3,minutes:e=>e*60*1e3,hours:e=>e*60*60*1e3}}};var _fe={name:"@netlify/agent-runner-cli",type:"module",version:"1.176.0-PAW-469.8",description:"CLI tool for running Netlify agents",main:"./dist/index.js",types:"./dist/index.d.ts",exports:"./dist/index.js",bin:{"agent-runner-cli":"./dist/bin.js","agent-runner-cli-local":"./dist/bin-local.js"},files:["dist/**/*.js","dist/**/*.d.ts","dist/skills/**","patches","scripts"],scripts:{prebuild:"rm -rf dist",build:"tsup",dev:"tsup --watch",prepare:"husky install node_modules/@netlify/eslint-config-node/.husky/",prepublishOnly:"npm ci && npm test",prepack:"npm run build",test:"run-s build format test:dev",format:"run-s build format:check-fix:*","format:ci":"run-s build format:check:*","format:check-fix:lint":"run-e format:check:lint format:fix:lint","format:check:lint":'eslint --cache --format=codeframe --max-warnings=0 "{src,scripts,test,.github}/**/*.{js,ts,md,html}"',"format:fix:lint":'eslint --fix --cache --format=codeframe --max-warnings=0 "{src,scripts,test,.github}/**/*.{js,ts,md,html}"',"format:check-fix:prettier":"run-e format:check:prettier format:fix:prettier","format:check:prettier":'prettier --check --ignore-path .gitignore --loglevel=warn "{src,scripts,test,.github}/**/*.{js,ts,md,yml,json,html}" "*.{js,ts,yml,json,html}" ".*.{js,ts,yml,json,html}" "!**/package-lock.json" "!package-lock.json" "!src/skills/**/*.md"',"format:fix:prettier":'prettier --write --ignore-path .gitignore --loglevel=warn "{src,scripts,test,.github}/**/*.{js,ts,md,yml,json,html}" "*.{js,ts,yml,json,html}" ".*.{js,ts,yml,json,html}" "!**/package-lock.json" "!package-lock.json" "!src/skills/**/*.md"',"test:dev":"run-s build test:dev:*","test:ci":"run-s build test:ci:*","test:dev:vitest":"LOG=0 vitest --exclude '**/integration/**'","test:ci:vitest":"LOG=0 vitest run --coverage --exclude '**/integration/**'","test:smoke":"node scripts/smoke-dist.js","test:integration":"vitest run test/integration/","test:integration:codex":"vitest run test/integration/codex.test.ts","test:integration:claude":"vitest run test/integration/claude.test.ts","test:integration:gemini":"vitest run test/integration/gemini.test.ts","test:integration:opencode":"vitest run test/integration/opencode.test.ts","test:integration:skill-invocation":"vitest run test/integration/skill-invocation.test.ts","check:types":"tsc --noEmit",postinstall:"node scripts/postinstall.js"},keywords:[],license:"MIT",repository:"netlify/agent-runner-cli",bugs:{url:"https://github.com/netlify/agent-runner-cli/issues"},author:"Netlify Inc.",directories:{test:"test"},devDependencies:{"@commitlint/cli":"^20.0.0","@commitlint/config-conventional":"^20.0.0","@eslint/compat":"^2.0.0","@eslint/js":"^10.0.1","@netlify/axis":"^1.17.6","@netlify/eslint-config-node":"^7.0.1","@types/node":"^24.5.0","@typescript-eslint/eslint-plugin":"^8.0.0","@typescript-eslint/parser":"^8.0.0","@vitest/coverage-v8":"^4.1.5","@vitest/eslint-plugin":"^1.6.6",eslint:"^10.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-n":"^17.0.0",husky:"^9.0.0",jiti:"^2.7.0","patch-package":"^8.0.0",tsup:"^8.5.0",typescript:"^5.0.0","typescript-eslint":"^8.44.0",vitest:"^4.0.16"},dependencies:{"@anthropic-ai/claude-code":"^2.1.219","@anthropic-ai/sdk":"0.91.1","@google/gemini-cli":"0.42.0","@modelcontextprotocol/sdk":"^1.29.0","@netlify/cache-utils":"^6.0.5","@netlify/database-proxy":"^0.2.1","@netlify/otel":"^6.0.6","@netlify/ts-cli":"^1.2.0","@openai/codex":"0.153.4","@opentelemetry/api":"^1.9.0","@opentelemetry/exporter-trace-otlp-grpc":"0.218.0",execa:"^9.6.1",fastify:"5.12.1",minimist:"^1.2.8",openai:"6.34.0",zod:"^4.4.3"}};var IYe=RYe(import.meta.url),PYe=Va.dirname(IYe),OYe=CYe(import.meta.url),Bh=ie("shell"),Yj=new Set,yfe={preferLocal:!0},Ft=(t,e,r)=>{let[n,i]=NYe(e,r),o={...yfe,...i},s=lfe(t,n,o);Efe(s,o),Tfe(s);let a=r?.idleTimeout;return a&&a>0&&bfe(s,a),s},Sfe=(t,e)=>{let r={...yfe,...e},n=ufe(t,r);return Efe(n,r),Tfe(n),e?.idleTimeout&&e.idleTimeout>0&&bfe(n,e.idleTimeout),n},NYe=function(t,e){return Array.isArray(t)?[t,e]:typeof t=="object"&&t!==null?[[],t]:[[],void 0]},Efe=(t,e)=>{if(e.stdio!==void 0||e.stdout!==void 0||e.stderr!==void 0||Ls.env.NETLIFY_LOCAL_QUIET==="true")return;if(Ls.env.NETLIFY_MASK_LOGS!=="false"){t.stdout?.pipe(new nE).pipe(Ls.stdout),t.stderr?.pipe(new nE).pipe(Ls.stderr);return}t.stdout?.pipe(Ls.stdout),t.stderr?.pipe(Ls.stderr)},Kj=(t,e="SIGTERM")=>{try{return t.pid&&!t.killed?(Ls.kill(-t.pid,e),Bh.log(`Killed process ${t.pid} with signal ${e}`),!0):!1}catch(r){return Bh.error("Error killing process:",r),!1}},vfe=t=>Kj(t,"SIGKILL"),bfe=(t,e)=>{let r=null,n=()=>{Bh.log(`Process ${t.pid} killed due to idle timeout (no output for ${e}ms)`),Kj(t,"SIGTERM"),setTimeout(()=>{t.pid&&!t.killed&&(Bh.log(`Force killing idle process ${t.pid}`),vfe(t))},5e3)},i=()=>{r&&clearTimeout(r),r=setTimeout(n,e)};i(),t.stdout?.on("data",i),t.stderr?.on("data",i);let o=()=>{r&&(clearTimeout(r),r=null)};t.on("exit",o),t.on("error",o)},Tfe=t=>{Yj.add(t);let e=gfe();if(e){let r=e.onTimesUp(()=>{Bh.log(`Global timer expired, killing process ${t.pid}`),Kj(t,"SIGTERM"),setTimeout(()=>{t.pid&&!t.killed&&(Bh.log(`Force killing process ${t.pid} after timeout`),vfe(t))},5e3)});t.on("exit",()=>{Yj.delete(t),r()}),t.on("error",()=>{Yj.delete(t),r()})}};function GC(t,e){return!!jo(t,e)}function jo(t,e){if(!Ls.env.NETLIFY_LOCAL_MODE)try{let i=OYe.resolve(_fe.name),o=Va.dirname(i);for(;o!==Va.dirname(o);){let s=Va.dirname(o);if(Va.basename(s)==="node_modules"){let a=Va.join(s,".bin",e);if(VC.existsSync(a))return a;break}o=s}}catch(i){console.error("Could not resolve package.json",i)}if(Ls.env.NODE_PATH){let i=Va.join(Ls.env.NODE_PATH,".bin",e);if(VC.existsSync(i))return i}let r=Va.join(t,"node_modules",".bin",e);if(VC.existsSync(r))return r;let n=Va.join(PYe,"..","node_modules",".bin",e);if(VC.existsSync(n))return n}var wfe=ie("repo"),Cfe="runner-diffs-",YC=t=>`${Cfe}${t}-`,Ife=async t=>{let e=Rfe.tmpdir(),r;try{r=await HC.readdir(e)}catch{return}await Promise.all(r.filter(n=>n.startsWith(Cfe)&&!n.startsWith(YC(t))).map(n=>HC.rm(WC.join(e,n),{recursive:!0,force:!0}).catch(()=>{})))},lr=(t,e={})=>Ft("git",t,{...e,env:{...e.env,NETLIFY_INTERNAL_GIT:"1"}}),KC=async({config:t,isRetry:e,cwd:r=process.cwd()})=>{wfe.info("Getting runner diffs");let n=await Qj(r),{hasChanges:i}=n,{status:o}=n;if(!i)return{hasChanges:!1};if(!e){let l=eB(o);await zYe(l,r)}wfe.info("Changes after processing"),await Xj(r);let s=await PE(o,r);if(await Jj(s,r),i=await LYe(r),!i)return{hasChanges:!1,ignored:s};await lr(["commit","-m","Agent runner [skip ci]"],{cwd:r});let a=await HC.mkdtemp(WC.join(Rfe.tmpdir(),YC(t.sessionId))),c=await Zj({config:t,diffDir:a,cwd:r,target:{commit:"HEAD"},ignored:s});return await $Ye(r),c.hasChanges&&Y.distribution("diff.size",(c.diffBinary??c.diff).size,{phase:"final"}),c},Zj=async({config:t,diffDir:e,cwd:r,target:n,ignored:i})=>{let o="commit"in n?n.commit:"--cached",s="indexPath"in n?{GIT_INDEX_FILE:n.indexPath}:void 0,a=async({from:p,fileName:h,binary:m})=>{let g=WC.join(e,h);await lr([...m?["diff",p,o,"--binary"]:["diff",p,o],`--output=${g}`],{stdio:["ignore","ignore","pipe"],cwd:r,env:s});let{size:b}=await HC.stat(g);return{path:g,size:b}},c=await a({from:t.runSha,fileName:"session.patch"});if(c.size===0)return{hasChanges:!1,ignored:i};let l=await a({from:t.runSha,fileName:"session-binary.patch",binary:!0}),u,d;if(t.sha){u=await a({from:t.sha,fileName:"cumulative.patch"});let p=await a({from:t.sha,fileName:"cumulative-binary.patch",binary:!0});await xfe(u,p)||(d=p)}let f={hasChanges:!0,diff:c,resultDiff:u,ignored:i};return await xfe(c,l)||(f.diffBinary=l),d&&(f.resultDiffBinary=d),f},Afe=async t=>{let e=kYe("sha256");for await(let r of MYe(t))e.update(r);return e.digest("hex")},xfe=async(t,e)=>t.size===e.size&&await Afe(t.path)===await Afe(e.path),$Ye=async(t=process.cwd())=>{process.env.NETLIFY_LOCAL_MODE&&await lr(["reset","--soft","HEAD~1"],{cwd:t})},Jj=async(t=[],e=process.cwd())=>{await lr(["add",".",...t],{cwd:e})},Xj=async(t=process.cwd())=>{let e=await lr(["status","-s"],{cwd:t});return String(e.stdout??"")},Pfe=/.. (.+)?\.log$/,DYe=[Pfe],Qj=async(t=process.cwd())=>{let e=await Xj(t);return{hasChanges:(e.trim().length===0?[]:e.split(`
145
145
  `).filter(i=>DYe.some(s=>s instanceof RegExp?s.test(i):i===s)?!1:i[1]?.trim()!=="")).length!==0,status:e}},LYe=async(t=process.cwd())=>{try{return await lr(["diff","--staged","--quiet"],{cwd:t}),!1}catch{return!0}},IE=async(t=process.cwd())=>{let{stdout:e}=await lr(["rev-parse","HEAD"],{cwd:t});return String(e??"").trim()},UYe=1,FYe=async t=>{try{return await lr(["rev-parse","--verify","--quiet","HEAD"],{cwd:t}),!0}catch(e){if(e.exitCode===UYe)return!1;throw e}},Ofe=async(t=process.cwd())=>{if(!await FYe(t))return!0;let{stdout:e}=await lr(["ls-tree","--name-only","HEAD"],{cwd:t});return String(e??"").trim().length===0},Nfe=async(t=process.cwd())=>{let{stdout:e}=await lr(["rev-list","--max-parents=0","HEAD"],{cwd:t});return String(e??"").trim()},PE=async(t,e=process.cwd())=>{t||=await Xj(e);let r=[".netlify","node_modules","dist",".next","out",".nuxt",".output",".cache",".turbo",".parcel-cache","coverage",".nyc_output","storybook-static","public/build","CLAUDE.local.md"],n=[];return t.split(`
146
146
  `).forEach(i=>{r.forEach(s=>{let a=i===`?? ${s}`,c=i.startsWith(`?? ${s}/`)||i.startsWith(`?? ${s}${WC.sep}`);(a||c)&&n.push(`:!${s}`)});let o=i.match(Pfe)?.[1];o&&n.push(`:!${o}.log`)}),n},kfe=async(t=process.cwd())=>{await lr(["reset","--hard","HEAD"],{cwd:t})},Mfe=async(t=process.cwd())=>{let e=await lr(["clean","-fd","-e",".netlify"],{stdio:["ignore","pipe","pipe"],cwd:t});return String(e.stdout??"").split(`
147
147
  `).filter(r=>r.startsWith("Removing ")).map(r=>r.slice(9))},eB=t=>{let e=t.split(`
package/dist/bin.js CHANGED
@@ -631,7 +631,7 @@ For example, you can use the \`pathToFileURL()\` method of the \`url\` core modu
631
631
  `,LF:`
632
632
  `,concatBytes:qK},nxt=(t,e)=>{let r=new Uint8Array(t.length+e.length);return r.set(t,0),r.set(e,t.length),r},ixt={windowsNewline:new Uint8Array([13,10]),unixNewline:new Uint8Array([10]),LF:10,concatBytes:nxt};import{Buffer as sxt}from"buffer";var Txe=(t,e)=>t?void 0:oxt.bind(void 0,e),oxt=function*(t,e){if(typeof e!="string"&&!sn(e)&&!sxt.isBuffer(e))throw new TypeError(`The \`${t}\` option's transform must use "objectMode: true" to receive as input: ${typeof e}.`);yield e},wxe=(t,e)=>t?axt.bind(void 0,e):cxt.bind(void 0,e),axt=function*(t,e){Rxe(t,e),yield e},cxt=function*(t,e){if(Rxe(t,e),typeof e!="string"&&!sn(e))throw new TypeError(`The \`${t}\` option's function must yield a string or an Uint8Array, not ${typeof e}.`);yield e},Rxe=(t,e)=>{if(e==null)throw new TypeError(`The \`${t}\` option's function must not call \`yield ${e}\`.
633
633
  Instead, \`yield\` should either be called with a value, or not be called at all. For example:
634
- if (condition) { yield value; }`)};import{Buffer as lxt}from"buffer";import{StringDecoder as uxt}from"string_decoder";var Xk=(t,e,r)=>{if(r)return;if(t)return{transform:dxt.bind(void 0,new TextEncoder)};let n=new uxt(e);return{transform:fxt.bind(void 0,n),final:pxt.bind(void 0,n)}},dxt=function*(t,e){lxt.isBuffer(e)?yield cl(e):typeof e=="string"?yield t.encode(e):yield e},fxt=function*(t,e){yield sn(e)?t.write(e):e},pxt=function*(t){let e=t.end();e!==""&&(yield e)};import{callbackify as Axe}from"util";var VK=Axe(async(t,e,r,n)=>{e.currentIterable=t(...r);try{for await(let i of e.currentIterable)n.push(i)}finally{delete e.currentIterable}}),Qk=async function*(t,e,r){if(r===e.length){yield t;return}let{transform:n=mxt}=e[r];for await(let i of n(t))yield*Qk(i,e,r+1)},xxe=async function*(t){for(let[e,{final:r}]of Object.entries(t))yield*hxt(r,Number(e),t)},hxt=async function*(t,e,r){if(t!==void 0)for await(let n of t())yield*Qk(n,r,e+1)},Cxe=Axe(async({currentIterable:t},e)=>{if(t!==void 0){await(e?t.throw(e):t.return());return}if(e)throw e}),mxt=function*(t){yield t};var HK=(t,e,r,n)=>{try{for(let i of t(...e))r.push(i);n()}catch(i){n(i)}},Pxe=(t,e)=>[...e.flatMap(r=>[...qp(r,t,0)]),...zw(t)],qp=function*(t,e,r){if(r===e.length){yield t;return}let{transform:n=_xt}=e[r];for(let i of n(t))yield*qp(i,e,r+1)},zw=function*(t){for(let[e,{final:r}]of Object.entries(t))yield*gxt(r,Number(e),t)},gxt=function*(t,e,r){if(t!==void 0)for(let n of t())yield*qp(n,r,e+1)},_xt=function*(t){yield t};var GK=({value:t,value:{transform:e,final:r,writableObjectMode:n,readableObjectMode:i},optionName:s},{encoding:o})=>{let a={},c=Oxe(t,o,s),l=zp(e),u=zp(r),d=l?VK.bind(void 0,Qk,a):HK.bind(void 0,qp),f=l||u?VK.bind(void 0,xxe,a):HK.bind(void 0,zw),p=l||u?Cxe.bind(void 0,a):void 0;return{stream:new yxt({writableObjectMode:n,writableHighWaterMark:Ixe(n),readableObjectMode:i,readableHighWaterMark:Ixe(i),transform(m,_,y){d([m,c,0],this,y)},flush(m){f([c],this,m)},destroy:p})}},e$=(t,e,r,n)=>{let i=e.filter(({type:o})=>o==="generator"),s=n?i.reverse():i;for(let{value:o,optionName:a}of s){let c=Oxe(o,r,a);t=Pxe(c,t)}return t},Oxe=({transform:t,final:e,binary:r,writableObjectMode:n,readableObjectMode:i,preserveNewlines:s},o,a)=>{let c={};return[{transform:Txe(n,a)},Xk(r,o,n),Zk(r,s,n,c),{transform:t,final:e},{transform:wxe(i,a)},bxe({binary:r,preserveNewlines:s,readableObjectMode:i,state:c})].filter(Boolean)};var Nxe=(t,e)=>{for(let r of Sxt(t))Ext(t,r,e)},Sxt=t=>new Set(Object.entries(t).filter(([,{direction:e}])=>e==="input").map(([e])=>Number(e))),Ext=(t,e,r)=>{let{stdioItems:n}=t[e],i=n.filter(({contents:a})=>a!==void 0);if(i.length===0)return;if(e!==0){let[{type:a,optionName:c}]=i;throw new TypeError(`Only the \`stdin\` option, not \`${c}\`, can be ${pd[a]} with synchronous methods.`)}let o=i.map(({contents:a})=>a).map(a=>vxt(a,n));r.input=Ow(o)},vxt=(t,e)=>{let r=e$(t,e,"utf8",!0);return bxt(r),Ow(r)},bxt=t=>{let e=t.find(r=>typeof r!="string"&&!sn(r));if(e!==void 0)throw new TypeError(`The \`stdin\` option is invalid: when passing objects as input, a transform must be used to serialize them to strings or Uint8Arrays: ${e}.`)};import{writeFileSync as Axt,appendFileSync as xxt}from"fs";var t$=({stdioItems:t,encoding:e,verboseInfo:r,fdNumber:n})=>n!=="all"&&Z_(r,n)&&!ys.has(e)&&Txt(n)&&(t.some(({type:i,value:s})=>i==="native"&&wxt.has(s))||t.every(({type:i})=>to.has(i))),Txt=t=>t===1||t===2,wxt=new Set(["pipe","overlapped"]),kxe=async(t,e,r,n)=>{for await(let i of t)Rxt(e)||Lxe(i,r,n)},$xe=(t,e,r)=>{for(let n of t)Lxe(n,e,r)},Rxt=t=>t._readableState.pipes.length>0,Lxe=(t,e,r)=>{let n=mk(t);La({type:"output",verboseMessage:n,fdNumber:e,verboseInfo:r})};var Dxe=({fileDescriptors:t,syncResult:{output:e},options:r,isMaxBuffer:n,verboseInfo:i})=>{if(e===null)return{output:Array.from({length:3})};let s={},o=new Set([]);return{output:e.map((c,l)=>Cxt({result:c,fileDescriptors:t,fdNumber:l,state:s,outputFiles:o,isMaxBuffer:n,verboseInfo:i},r)),...s}},Cxt=({result:t,fileDescriptors:e,fdNumber:r,state:n,outputFiles:i,isMaxBuffer:s,verboseInfo:o},{buffer:a,encoding:c,lines:l,stripFinalNewline:u,maxBuffer:d})=>{if(t===null)return;let f=MAe(t,s,d),p=cl(f),{stdioItems:h,objectMode:m}=e[r],_=Pxt([p],h,c,n),{serializedResult:y,finalResult:E=y}=Ixt({chunks:_,objectMode:m,encoding:c,lines:l,stripFinalNewline:u,fdNumber:r});Oxt({serializedResult:y,fdNumber:r,state:n,verboseInfo:o,encoding:c,stdioItems:h,objectMode:m});let S=a[r]?E:void 0;try{return n.error===void 0&&Nxt(y,h,i),S}catch(g){return n.error=g,S}},Pxt=(t,e,r,n)=>{try{return e$(t,e,r,!1)}catch(i){return n.error=i,t}},Ixt=({chunks:t,objectMode:e,encoding:r,lines:n,stripFinalNewline:i,fdNumber:s})=>{if(e)return{serializedResult:t};if(r==="buffer")return{serializedResult:Ow(t)};let o=Zwe(t,r);return n[s]?{serializedResult:o,finalResult:BK(o,!i[s],e)}:{serializedResult:o}},Oxt=({serializedResult:t,fdNumber:e,state:r,verboseInfo:n,encoding:i,stdioItems:s,objectMode:o})=>{if(!t$({stdioItems:s,encoding:i,verboseInfo:n,fdNumber:e}))return;let a=BK(t,!1,o);try{$xe(a,e,n)}catch(c){r.error??=c}},Nxt=(t,e,r)=>{for(let{path:n,append:i}of e.filter(({type:s})=>Kk.has(s))){let s=typeof n=="string"?n:n.toString();i||r.has(s)?xxt(n,t):(r.add(s),Axt(n,t))}};var Mxe=([,t,e],r)=>{if(r.all)return t===void 0?e:e===void 0?t:Array.isArray(t)?Array.isArray(e)?[...t,...e]:[...t,dl(e,r,"all")]:Array.isArray(e)?[dl(t,r,"all"),...e]:sn(t)&&sn(e)?XY([t,e]):`${t}${e}`};import{once as WK}from"events";var Uxe=async(t,e)=>{let[r,n]=await kxt(t);return e.isForcefullyTerminated??=!1,[r,n]},kxt=async t=>{let[e,r]=await Promise.allSettled([WK(t,"spawn"),WK(t,"exit")]);return e.status==="rejected"?[]:r.status==="rejected"?Fxe(t):r.value},Fxe=async t=>{try{return await WK(t,"exit")}catch{return Fxe(t)}},jxe=async t=>{let[e,r]=await t;if(!$xt(e,r)&&YK(e,r))throw new $o;return[e,r]},$xt=(t,e)=>t===void 0&&e===void 0,YK=(t,e)=>t!==0||e!==null;var zxe=({error:t,status:e,signal:r,output:n},{maxBuffer:i})=>{let s=Lxt(t,e,r),o=s?.code==="ETIMEDOUT",a=DAe(s,n,i);return{resultError:s,exitCode:e,signal:r,timedOut:o,isMaxBuffer:a}},Lxt=(t,e,r)=>t!==void 0?t:YK(e,r)?new $o:void 0;var qxe=(t,e,r)=>{let{file:n,commandArguments:i,command:s,escapedCommand:o,startTime:a,verboseInfo:c,options:l,fileDescriptors:u}=Mxt(t,e,r),d=jxt({file:n,commandArguments:i,options:l,command:s,escapedCommand:o,verboseInfo:c,fileDescriptors:u,startTime:a});return ay(d,c,l)},Mxt=(t,e,r)=>{let{command:n,escapedCommand:i,startTime:s,verboseInfo:o}=_k(t,e,r),a=Uxt(r),{file:c,commandArguments:l,options:u}=Mk(t,e,a);Fxt(u);let d=yxe(u,o);return{file:c,commandArguments:l,command:n,escapedCommand:i,startTime:s,verboseInfo:o,options:u,fileDescriptors:d}},Uxt=t=>t.node&&!t.ipc?{...t,ipc:!1}:t,Fxt=({ipc:t,ipcInput:e,detached:r,cancelSignal:n})=>{e&&r$("ipcInput"),t&&r$("ipc: true"),r&&r$("detached: true"),n&&r$("cancelSignal")},r$=t=>{throw new TypeError(`The "${t}" option cannot be used with synchronous methods.`)},jxt=({file:t,commandArguments:e,options:r,command:n,escapedCommand:i,verboseInfo:s,fileDescriptors:o,startTime:a})=>{let c=zxt({file:t,commandArguments:e,options:r,command:n,escapedCommand:i,fileDescriptors:o,startTime:a});if(c.failed)return c;let{resultError:l,exitCode:u,signal:d,timedOut:f,isMaxBuffer:p}=zxe(c,r),{output:h,error:m=l}=Dxe({fileDescriptors:o,syncResult:c,options:r,isMaxBuffer:p,verboseInfo:s}),_=h.map((E,S)=>dl(E,r,S)),y=dl(Mxe(h,r),r,"all");return Bxt({error:m,exitCode:u,signal:d,timedOut:f,isMaxBuffer:p,stdio:_,all:y,options:r,command:n,escapedCommand:i,startTime:a})},zxt=({file:t,commandArguments:e,options:r,command:n,escapedCommand:i,fileDescriptors:s,startTime:o})=>{try{Nxe(s,r);let a=qxt(r);return Dxt(...Uk(t,e,a))}catch(a){return oy({error:a,command:n,escapedCommand:i,fileDescriptors:s,options:r,startTime:o,isSync:!0})}},qxt=({encoding:t,maxBuffer:e,...r})=>({...r,encoding:"buffer",maxBuffer:Hk(e)}),Bxt=({error:t,exitCode:e,signal:r,timedOut:n,isMaxBuffer:i,stdio:s,all:o,options:a,command:c,escapedCommand:l,startTime:u})=>t===void 0?Gk({command:c,escapedCommand:l,stdio:s,all:o,ipcOutput:[],options:a,startTime:u}):jw({error:t,command:c,escapedCommand:l,timedOut:n,isCanceled:!1,isGracefullyCanceled:!1,isMaxBuffer:i,isForcefullyTerminated:!1,exitCode:e,signal:r,stdio:s,all:o,ipcOutput:[],options:a,startTime:u,isSync:!0});import{setMaxListeners as IPt}from"events";import{spawn as OPt}from"child_process";import Wxe from"process";import{once as KK,on as Vxt}from"events";var Bxe=({anyProcess:t,channel:e,isSubprocess:r,ipc:n},{reference:i=!0,filter:s}={})=>(ey({methodName:"getOneMessage",isSubprocess:r,ipc:n,isConnected:Ok(t)}),Hxt({anyProcess:t,channel:e,isSubprocess:r,filter:s,reference:i})),Hxt=async({anyProcess:t,channel:e,isSubprocess:r,filter:n,reference:i})=>{xk(e,i);let s=fd(t,e,r),o=new AbortController;try{return await Promise.race([Gxt(s,n,o),Wxt(s,r,o),Yxt(s,r,o)])}catch(a){throw ty(t),a}finally{o.abort(),Ck(e,i)}},Gxt=async(t,e,{signal:r})=>{if(e===void 0){let[n]=await KK(t,"message",{signal:r});return n}for await(let[n]of Vxt(t,"message",{signal:r}))if(e(n))return n},Wxt=async(t,e,{signal:r})=>{await KK(t,"disconnect",{signal:r}),P0e(e)},Yxt=async(t,e,{signal:r})=>{let[n]=await KK(t,"strict:error",{signal:r});throw wk(n,e)};import{once as Hxe,on as Kxt}from"events";var Gxe=({anyProcess:t,channel:e,isSubprocess:r,ipc:n},{reference:i=!0}={})=>JK({anyProcess:t,channel:e,isSubprocess:r,ipc:n,shouldAwait:!r,reference:i}),JK=({anyProcess:t,channel:e,isSubprocess:r,ipc:n,shouldAwait:i,reference:s})=>{ey({methodName:"getEachMessage",isSubprocess:r,ipc:n,isConnected:Ok(t)}),xk(e,s);let o=fd(t,e,r),a=new AbortController,c={};return Jxt(t,o,a),Zxt({ipcEmitter:o,isSubprocess:r,controller:a,state:c}),Xxt({anyProcess:t,channel:e,ipcEmitter:o,isSubprocess:r,shouldAwait:i,controller:a,state:c,reference:s})},Jxt=async(t,e,r)=>{try{await Hxe(e,"disconnect",{signal:r.signal}),r.abort()}catch{}},Zxt=async({ipcEmitter:t,isSubprocess:e,controller:r,state:n})=>{try{let[i]=await Hxe(t,"strict:error",{signal:r.signal});n.error=wk(i,e),r.abort()}catch{}},Xxt=async function*({anyProcess:t,channel:e,ipcEmitter:r,isSubprocess:n,shouldAwait:i,controller:s,state:o,reference:a}){try{for await(let[c]of Kxt(r,"message",{signal:s.signal}))Vxe(o),yield c}catch{Vxe(o)}finally{s.abort(),Ck(e,a),n||ty(t),i&&await t}},Vxe=({error:t})=>{if(t)throw t};var Yxe=(t,{ipc:e})=>{Object.assign(t,Jxe(t,!1,e))},Kxe=()=>{let t=Wxe,e=!0,r=Wxe.channel!==void 0;return{...Jxe(t,e,r),getCancelSignal:rAe.bind(void 0,{anyProcess:t,channel:t.channel,isSubprocess:e,ipc:r})}},Jxe=(t,e,r)=>({sendMessage:Lk.bind(void 0,{anyProcess:t,channel:t.channel,isSubprocess:e,ipc:r}),getOneMessage:Bxe.bind(void 0,{anyProcess:t,channel:t.channel,isSubprocess:e,ipc:r}),getEachMessage:Gxe.bind(void 0,{anyProcess:t,channel:t.channel,isSubprocess:e,ipc:r})});import{ChildProcess as Qxt}from"child_process";import{PassThrough as eCt,Readable as tCt,Writable as rCt,Duplex as nCt}from"stream";var Zxe=({error:t,command:e,escapedCommand:r,fileDescriptors:n,options:i,startTime:s,verboseInfo:o})=>{jK(n);let a=new Qxt;iCt(a,n),Object.assign(a,{readable:sCt,writable:oCt,duplex:aCt});let c=oy({error:t,command:e,escapedCommand:r,fileDescriptors:n,options:i,startTime:s,isSync:!1}),l=cCt(c,o,i);return{subprocess:a,promise:l}},iCt=(t,e)=>{let r=qw(),n=qw(),i=qw(),s=Array.from({length:e.length-3},qw),o=qw(),a=[r,n,i,...s];Object.assign(t,{stdin:r,stdout:n,stderr:i,all:o,stdio:a})},qw=()=>{let t=new eCt;return t.end(),t},sCt=()=>new tCt({read(){}}),oCt=()=>new rCt({write(){}}),aCt=()=>new nCt({read(){},write(){}}),cCt=async(t,e,r)=>ay(t,e,r);import{createReadStream as Xxe,createWriteStream as Qxe}from"fs";import{Buffer as lCt}from"buffer";import{Readable as Bw,Writable as uCt,Duplex as dCt}from"stream";var tCe=(t,e)=>Jk(fCt,t,e,!1),Vw=({type:t,optionName:e})=>{throw new TypeError(`The \`${e}\` option cannot be ${pd[t]}.`)},eCe={fileNumber:Vw,generator:GK,asyncGenerator:GK,nodeStream:({value:t})=>({stream:t}),webTransform({value:{transform:t,writableObjectMode:e,readableObjectMode:r}}){let n=e||r;return{stream:dCt.fromWeb(t,{objectMode:n})}},duplex:({value:{transform:t}})=>({stream:t}),native(){}},fCt={input:{...eCe,fileUrl:({value:t})=>({stream:Xxe(t)}),filePath:({value:{file:t}})=>({stream:Xxe(t)}),webStream:({value:t})=>({stream:Bw.fromWeb(t)}),iterable:({value:t})=>({stream:Bw.from(t)}),asyncIterable:({value:t})=>({stream:Bw.from(t)}),string:({value:t})=>({stream:Bw.from(t)}),uint8Array:({value:t})=>({stream:Bw.from(lCt.from(t))})},output:{...eCe,fileUrl:({value:t})=>({stream:Qxe(t)}),filePath:({value:{file:t,append:e}})=>({stream:Qxe(t,e?{flags:"a"}:{})}),webStream:({value:t})=>({stream:uCt.fromWeb(t)}),iterable:Vw,asyncIterable:Vw,string:Vw,uint8Array:Vw}};import{on as pCt,once as rCe}from"events";import{PassThrough as hCt,getDefaultHighWaterMark as mCt}from"stream";import{finished as sCe}from"stream/promises";function Bp(t){if(!Array.isArray(t))throw new TypeError(`Expected an array, got \`${typeof t}\`.`);for(let i of t)XK(i);let e=t.some(({readableObjectMode:i})=>i),r=gCt(t,e),n=new ZK({objectMode:e,writableHighWaterMark:r,readableHighWaterMark:r});for(let i of t)n.add(i);return n}var gCt=(t,e)=>{if(t.length===0)return mCt(e);let r=t.filter(({readableObjectMode:n})=>n===e).map(({readableHighWaterMark:n})=>n);return Math.max(...r)},ZK=class extends hCt{#e=new Set([]);#r=new Set([]);#t=new Set([]);#n;#s=Symbol("unpipe");#i=new WeakMap;add(e){if(XK(e),this.#e.has(e))return;this.#e.add(e),this.#n??=_Ct(this,this.#e,this.#s);let r=ECt({passThroughStream:this,stream:e,streams:this.#e,ended:this.#r,aborted:this.#t,onFinished:this.#n,unpipeEvent:this.#s});this.#i.set(e,r),e.pipe(this,{end:!1})}async remove(e){if(XK(e),!this.#e.has(e))return!1;let r=this.#i.get(e);return r===void 0?!1:(this.#i.delete(e),e.unpipe(this),await r,!0)}},_Ct=async(t,e,r)=>{n$(t,nCe);let n=new AbortController;try{await Promise.race([yCt(t,n),SCt(t,e,r,n)])}finally{n.abort(),n$(t,-nCe)}},yCt=async(t,{signal:e})=>{try{await sCe(t,{signal:e,cleanup:!0})}catch(r){throw oCe(t,r),r}},SCt=async(t,e,r,{signal:n})=>{for await(let[i]of pCt(t,"unpipe",{signal:n}))e.has(i)&&i.emit(r)},XK=t=>{if(typeof t?.pipe!="function")throw new TypeError(`Expected a readable stream, got: \`${typeof t}\`.`)},ECt=async({passThroughStream:t,stream:e,streams:r,ended:n,aborted:i,onFinished:s,unpipeEvent:o})=>{n$(t,iCe);let a=new AbortController;try{await Promise.race([vCt(s,e,a),bCt({passThroughStream:t,stream:e,streams:r,ended:n,aborted:i,controller:a}),TCt({stream:e,streams:r,ended:n,aborted:i,unpipeEvent:o,controller:a})])}finally{a.abort(),n$(t,-iCe)}r.size>0&&r.size===n.size+i.size&&(n.size===0&&i.size>0?QK(t):wCt(t))},vCt=async(t,e,{signal:r})=>{try{await t,r.aborted||QK(e)}catch(n){r.aborted||oCe(e,n)}},bCt=async({passThroughStream:t,stream:e,streams:r,ended:n,aborted:i,controller:{signal:s}})=>{try{await sCe(e,{signal:s,cleanup:!0,readable:!0,writable:!1}),r.has(e)&&n.add(e)}catch(o){if(s.aborted||!r.has(e))return;aCe(o)?i.add(e):cCe(t,o)}},TCt=async({stream:t,streams:e,ended:r,aborted:n,unpipeEvent:i,controller:{signal:s}})=>{if(await rCe(t,i,{signal:s}),!t.readable)return rCe(s,"abort",{signal:s});e.delete(t),r.delete(t),n.delete(t)},wCt=t=>{t.writable&&t.end()},oCe=(t,e)=>{aCe(e)?QK(t):cCe(t,e)},aCe=t=>t?.code==="ERR_STREAM_PREMATURE_CLOSE",QK=t=>{(t.readable||t.writable)&&t.destroy()},cCe=(t,e)=>{t.destroyed||(t.once("error",RCt),t.destroy(e))},RCt=()=>{},n$=(t,e)=>{let r=t.getMaxListeners();r!==0&&r!==Number.POSITIVE_INFINITY&&t.setMaxListeners(r+e)},nCe=2,iCe=1;import{finished as lCe}from"stream/promises";var ly=(t,e)=>{t.pipe(e),ACt(t,e),xCt(t,e)},ACt=async(t,e)=>{if(!(ko(t)||ko(e))){try{await lCe(t,{cleanup:!0,readable:!0,writable:!1})}catch{}e5(e)}},e5=t=>{t.writable&&t.end()},xCt=async(t,e)=>{if(!(ko(t)||ko(e))){try{await lCe(e,{cleanup:!0,readable:!1,writable:!0})}catch{}t5(t)}},t5=t=>{t.readable&&t.destroy()};var uCe=(t,e,r)=>{let n=new Map;for(let[i,{stdioItems:s,direction:o}]of Object.entries(e)){for(let{stream:a}of s.filter(({type:c})=>to.has(c)))CCt(t,a,o,i);for(let{stream:a}of s.filter(({type:c})=>!to.has(c)))ICt({subprocess:t,stream:a,direction:o,fdNumber:i,pipeGroups:n,controller:r})}for(let[i,s]of n.entries()){let o=s.length===1?s[0]:Bp(s);ly(o,i)}},CCt=(t,e,r,n)=>{r==="output"?ly(t.stdio[n],e):ly(e,t.stdio[n]);let i=PCt[n];i!==void 0&&(t[i]=e),t.stdio[n]=e},PCt=["stdin","stdout","stderr"],ICt=({subprocess:t,stream:e,direction:r,fdNumber:n,pipeGroups:i,controller:s})=>{if(e===void 0)return;OCt(e,s);let[o,a]=r==="output"?[e,t.stdio[n]]:[t.stdio[n],e],c=i.get(o)??[];i.set(o,[...c,a])},OCt=(t,{signal:e})=>{ko(t)&&Fp(t,NCt,e)},NCt=2;import{addAbortListener as LCt}from"events";var Vp=[];Vp.push("SIGHUP","SIGINT","SIGTERM");process.platform!=="win32"&&Vp.push("SIGALRM","SIGABRT","SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");process.platform==="linux"&&Vp.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT");var i$=t=>!!t&&typeof t=="object"&&typeof t.removeListener=="function"&&typeof t.emit=="function"&&typeof t.reallyExit=="function"&&typeof t.listeners=="function"&&typeof t.kill=="function"&&typeof t.pid=="number"&&typeof t.on=="function",r5=Symbol.for("signal-exit emitter"),n5=globalThis,kCt=Object.defineProperty.bind(Object),i5=class{emitted={afterExit:!1,exit:!1};listeners={afterExit:[],exit:[]};count=0;id=Math.random();constructor(){if(n5[r5])return n5[r5];kCt(n5,r5,{value:this,writable:!1,enumerable:!1,configurable:!1})}on(e,r){this.listeners[e].push(r)}removeListener(e,r){let n=this.listeners[e],i=n.indexOf(r);i!==-1&&(i===0&&n.length===1?n.length=0:n.splice(i,1))}emit(e,r,n){if(this.emitted[e])return!1;this.emitted[e]=!0;let i=!1;for(let s of this.listeners[e])i=s(r,n)===!0||i;return e==="exit"&&(i=this.emit("afterExit",r,n)||i),i}},s$=class{},$Ct=t=>({onExit(e,r){return t.onExit(e,r)},load(){return t.load()},unload(){return t.unload()}}),s5=class extends s${onExit(){return()=>{}}load(){}unload(){}},o5=class extends s${#e=a5.platform==="win32"?"SIGINT":"SIGHUP";#r=new i5;#t;#n;#s;#i={};#o=!1;constructor(e){super(),this.#t=e,this.#i={};for(let r of Vp)this.#i[r]=()=>{let n=this.#t.listeners(r),{count:i}=this.#r,s=e;if(typeof s.__signal_exit_emitter__=="object"&&typeof s.__signal_exit_emitter__.count=="number"&&(i+=s.__signal_exit_emitter__.count),n.length===i){this.unload();let o=this.#r.emit("exit",null,r),a=r==="SIGHUP"?this.#e:r;o||e.kill(e.pid,a)}};this.#s=e.reallyExit,this.#n=e.emit}onExit(e,r){if(!i$(this.#t))return()=>{};this.#o===!1&&this.load();let n=r?.alwaysLast?"afterExit":"exit";return this.#r.on(n,e),()=>{this.#r.removeListener(n,e),this.#r.listeners.exit.length===0&&this.#r.listeners.afterExit.length===0&&this.unload()}}load(){if(!this.#o){this.#o=!0,this.#r.count+=1;for(let e of Vp)try{let r=this.#i[e];r&&this.#t.on(e,r)}catch{}this.#t.emit=(e,...r)=>this.#c(e,...r),this.#t.reallyExit=e=>this.#a(e)}}unload(){this.#o&&(this.#o=!1,Vp.forEach(e=>{let r=this.#i[e];if(!r)throw new Error("Listener not defined for signal: "+e);try{this.#t.removeListener(e,r)}catch{}}),this.#t.emit=this.#n,this.#t.reallyExit=this.#s,this.#r.count-=1)}#a(e){return i$(this.#t)?(this.#t.exitCode=e||0,this.#r.emit("exit",this.#t.exitCode,null),this.#s.call(this.#t,this.#t.exitCode)):0}#c(e,...r){let n=this.#n;if(e==="exit"&&i$(this.#t)){typeof r[0]=="number"&&(this.#t.exitCode=r[0]);let i=n.call(this.#t,e,...r);return this.#r.emit("exit",this.#t.exitCode,null),i}else return n.call(this.#t,e,...r)}},a5=globalThis.process,{onExit:dCe,load:Cwr,unload:Pwr}=$Ct(i$(a5)?new o5(a5):new s5);var fCe=(t,{cleanup:e,detached:r},{signal:n})=>{if(!e||r)return;let i=dCe(()=>{t.kill()});LCt(n,()=>{i()})};var hCe=({source:t,sourcePromise:e,boundOptions:r,createNested:n},...i)=>{let s=gk(),{destination:o,destinationStream:a,destinationError:c,from:l,unpipeSignal:u}=DCt(r,n,i),{sourceStream:d,sourceError:f}=UCt(t,l),{options:p,fileDescriptors:h}=Ma.get(t);return{sourcePromise:e,sourceStream:d,sourceOptions:p,sourceError:f,destination:o,destinationStream:a,destinationError:c,unpipeSignal:u,fileDescriptors:h,startTime:s}},DCt=(t,e,r)=>{try{let{destination:n,pipeOptions:{from:i,to:s,unpipeSignal:o}={}}=MCt(t,e,...r),a=Ak(n,s);return{destination:n,destinationStream:a,from:i,unpipeSignal:o}}catch(n){return{destinationError:n}}},MCt=(t,e,r,...n)=>{if(Array.isArray(r))return{destination:e(pCe,t)(r,...n),pipeOptions:t};if(typeof r=="string"||r instanceof URL||JY(r)){if(Object.keys(t).length>0)throw new TypeError('Please use .pipe("file", ..., options) or .pipe(execa("file", ..., options)) instead of .pipe(options)("file", ...).');let[i,s,o]=ok(r,...n);return{destination:e(pCe)(i,s,o),pipeOptions:o}}if(Ma.has(r)){if(Object.keys(t).length>0)throw new TypeError("Please use .pipe(options)`command` or .pipe($(options)`command`) instead of .pipe(options)($`command`).");return{destination:r,pipeOptions:n[0]}}throw new TypeError(`The first argument must be a template string, an options object, or an Execa subprocess: ${r}`)},pCe=({options:t})=>({options:{...t,stdin:"pipe",piped:!0}}),UCt=(t,e)=>{try{return{sourceStream:ry(t,e)}}catch(r){return{sourceError:r}}};var gCe=({sourceStream:t,sourceError:e,destinationStream:r,destinationError:n,fileDescriptors:i,sourceOptions:s,startTime:o})=>{let a=FCt({sourceStream:t,sourceError:e,destinationStream:r,destinationError:n});if(a!==void 0)throw c5({error:a,fileDescriptors:i,sourceOptions:s,startTime:o})},FCt=({sourceStream:t,sourceError:e,destinationStream:r,destinationError:n})=>{if(e!==void 0&&n!==void 0)return n;if(n!==void 0)return t5(t),n;if(e!==void 0)return e5(r),e},c5=({error:t,fileDescriptors:e,sourceOptions:r,startTime:n})=>oy({error:t,command:mCe,escapedCommand:mCe,fileDescriptors:e,options:r,startTime:n,isSync:!1}),mCe="source.pipe(destination)";var _Ce=async t=>{let[{status:e,reason:r,value:n=r},{status:i,reason:s,value:o=s}]=await t;if(o.pipedFrom.includes(n)||o.pipedFrom.push(n),i==="rejected")throw o;if(e==="rejected")throw n;return o};import{finished as jCt}from"stream/promises";var yCe=(t,e,r)=>{let n=o$.has(e)?qCt(t,e):zCt(t,e);return Fp(t,VCt,r.signal),Fp(e,HCt,r.signal),BCt(e),n},zCt=(t,e)=>{let r=Bp([t]);return ly(r,e),o$.set(e,r),r},qCt=(t,e)=>{let r=o$.get(e);return r.add(t),r},BCt=async t=>{try{await jCt(t,{cleanup:!0,readable:!1,writable:!0})}catch{}o$.delete(t)},o$=new WeakMap,VCt=2,HCt=1;import{aborted as GCt}from"util";var SCe=(t,e)=>t===void 0?[]:[WCt(t,e)],WCt=async(t,{sourceStream:e,mergedStream:r,fileDescriptors:n,sourceOptions:i,startTime:s})=>{await GCt(t,e),await r.remove(e);let o=new Error("Pipe canceled by `unpipeSignal` option.");throw c5({error:o,fileDescriptors:n,sourceOptions:i,startTime:s})};var a$=(t,...e)=>{if(Fr(e[0]))return a$.bind(void 0,{...t,boundOptions:{...t.boundOptions,...e[0]}});let{destination:r,...n}=hCe(t,...e),i=YCt({...n,destination:r});return i.pipe=a$.bind(void 0,{...t,source:r,sourcePromise:i,boundOptions:{}}),i},YCt=async({sourcePromise:t,sourceStream:e,sourceOptions:r,sourceError:n,destination:i,destinationStream:s,destinationError:o,unpipeSignal:a,fileDescriptors:c,startTime:l})=>{let u=KCt(t,i);gCe({sourceStream:e,sourceError:n,destinationStream:s,destinationError:o,fileDescriptors:c,sourceOptions:r,startTime:l});let d=new AbortController;try{let f=yCe(e,s,d);return await Promise.race([_Ce(u),...SCe(a,{sourceStream:e,mergedStream:f,sourceOptions:r,fileDescriptors:c,startTime:l})])}finally{d.abort()}},KCt=(t,e)=>Promise.allSettled([t,e]);import{setImmediate as rPt}from"timers/promises";import{on as JCt}from"events";import{getDefaultHighWaterMark as ZCt}from"stream";var c$=({subprocessStdout:t,subprocess:e,binary:r,shouldEncode:n,encoding:i,preserveNewlines:s})=>{let o=new AbortController;return XCt(e,o),vCe({stream:t,controller:o,binary:r,shouldEncode:!t.readableObjectMode&&n,encoding:i,shouldSplit:!t.readableObjectMode,preserveNewlines:s})},XCt=async(t,e)=>{try{await t}catch{}finally{e.abort()}},l5=({stream:t,onStreamEnd:e,lines:r,encoding:n,stripFinalNewline:i,allMixed:s})=>{let o=new AbortController;QCt(e,o,t);let a=t.readableObjectMode&&!s;return vCe({stream:t,controller:o,binary:n==="buffer",shouldEncode:!a,encoding:n,shouldSplit:!a&&r,preserveNewlines:!i})},QCt=async(t,e,r)=>{try{await t}catch{r.destroy()}finally{e.abort()}},vCe=({stream:t,controller:e,binary:r,shouldEncode:n,encoding:i,shouldSplit:s,preserveNewlines:o})=>{let a=JCt(t,"data",{signal:e.signal,highWaterMark:ECe,highWatermark:ECe});return ePt({onStdoutChunk:a,controller:e,binary:r,shouldEncode:n,encoding:i,shouldSplit:s,preserveNewlines:o})},u5=ZCt(!0),ECe=u5,ePt=async function*({onStdoutChunk:t,controller:e,binary:r,shouldEncode:n,encoding:i,shouldSplit:s,preserveNewlines:o}){let a=tPt({binary:r,shouldEncode:n,encoding:i,shouldSplit:s,preserveNewlines:o});try{for await(let[c]of t)yield*qp(c,a,0)}catch(c){if(!e.signal.aborted)throw c}finally{yield*zw(a)}},tPt=({binary:t,shouldEncode:e,encoding:r,shouldSplit:n,preserveNewlines:i})=>[Xk(t,r,!e),Zk(t,i,!n,{})].filter(Boolean);var bCe=async({stream:t,onStreamEnd:e,fdNumber:r,encoding:n,buffer:i,maxBuffer:s,lines:o,allMixed:a,stripFinalNewline:c,verboseInfo:l,streamInfo:u})=>{let d=nPt({stream:t,onStreamEnd:e,fdNumber:r,encoding:n,allMixed:a,verboseInfo:l,streamInfo:u});if(!i){await Promise.all([iPt(t),d]);return}let f=zK(c,r),p=l5({stream:t,onStreamEnd:e,lines:o,encoding:n,stripFinalNewline:f,allMixed:a}),[h]=await Promise.all([sPt({stream:t,iterable:p,fdNumber:r,encoding:n,maxBuffer:s,lines:o}),d]);return h},nPt=async({stream:t,onStreamEnd:e,fdNumber:r,encoding:n,allMixed:i,verboseInfo:s,streamInfo:{fileDescriptors:o}})=>{if(!t$({stdioItems:o[r]?.stdioItems,encoding:n,verboseInfo:s,fdNumber:r}))return;let a=l5({stream:t,onStreamEnd:e,lines:!0,encoding:n,stripFinalNewline:!0,allMixed:i});await kxe(a,t,r,s)},iPt=async t=>{await rPt(),t.readableFlowing===null&&t.resume()},sPt=async({stream:t,stream:{readableObjectMode:e},iterable:r,fdNumber:n,encoding:i,maxBuffer:s,lines:o})=>{try{return e||o?await qk(r,{maxBuffer:s}):i==="buffer"?new Uint8Array(await Bk(r,{maxBuffer:s})):await sy(r,{maxBuffer:s})}catch(a){return TCe(kAe({error:a,stream:t,readableObjectMode:e,lines:o,encoding:i,fdNumber:n}))}},d5=async t=>{try{return await t}catch(e){return TCe(e)}},TCe=({bufferedData:t})=>Kwe(t)?new Uint8Array(t):t;import{finished as oPt}from"stream/promises";var Hw=async(t,e,r,{isSameDirection:n,stopOnExit:i=!1}={})=>{let s=aPt(t,r),o=new AbortController;try{await Promise.race([...i?[r.exitPromise]:[],oPt(t,{cleanup:!0,signal:o.signal})])}catch(a){s.stdinCleanedUp||uPt(a,e,r,n)}finally{o.abort()}},aPt=(t,{originalStreams:[e],subprocess:r})=>{let n={stdinCleanedUp:!1};return t===e&&cPt(t,r,n),n},cPt=(t,e,r)=>{let{_destroy:n}=t;t._destroy=(...i)=>{lPt(e,r),n.call(t,...i)}},lPt=({exitCode:t,signalCode:e},r)=>{(t!==null||e!==null)&&(r.stdinCleanedUp=!0)},uPt=(t,e,r,n)=>{if(!dPt(t,e,r,n))throw t},dPt=(t,e,r,n=!0)=>r.propagating?wCe(t)||l$(t):(r.propagating=!0,f5(r,e)===n?wCe(t):l$(t)),f5=({fileDescriptors:t},e)=>e!=="all"&&t[e].direction==="input",l$=t=>t?.code==="ERR_STREAM_PREMATURE_CLOSE",wCe=t=>t?.code==="EPIPE";var RCe=({subprocess:t,encoding:e,buffer:r,maxBuffer:n,lines:i,stripFinalNewline:s,verboseInfo:o,streamInfo:a})=>t.stdio.map((c,l)=>p5({stream:c,fdNumber:l,encoding:e,buffer:r[l],maxBuffer:n[l],lines:i[l],allMixed:!1,stripFinalNewline:s,verboseInfo:o,streamInfo:a})),p5=async({stream:t,fdNumber:e,encoding:r,buffer:n,maxBuffer:i,lines:s,allMixed:o,stripFinalNewline:a,verboseInfo:c,streamInfo:l})=>{if(!t)return;let u=Hw(t,e,l);if(f5(l,e)){await u;return}let[d]=await Promise.all([bCe({stream:t,onStreamEnd:u,fdNumber:e,encoding:r,buffer:n,maxBuffer:i,lines:s,allMixed:o,stripFinalNewline:a,verboseInfo:c,streamInfo:l}),u]);return d};var ACe=({stdout:t,stderr:e},{all:r})=>r&&(t||e)?Bp([t,e].filter(Boolean)):void 0,xCe=({subprocess:t,encoding:e,buffer:r,maxBuffer:n,lines:i,stripFinalNewline:s,verboseInfo:o,streamInfo:a})=>p5({...fPt(t,r),fdNumber:"all",encoding:e,maxBuffer:n[1]+n[2],lines:i[1]||i[2],allMixed:pPt(t),stripFinalNewline:s,verboseInfo:o,streamInfo:a}),fPt=({stdout:t,stderr:e,all:r},[,n,i])=>{let s=n||i;return s?n?i?{stream:r,buffer:s}:{stream:t,buffer:s}:{stream:e,buffer:s}:{stream:r,buffer:s}},pPt=({all:t,stdout:e,stderr:r})=>t&&e&&r&&e.readableObjectMode!==r.readableObjectMode;import{once as hPt}from"events";var CCe=t=>Z_(t,"ipc"),PCe=(t,e)=>{let r=mk(t);La({type:"ipc",verboseMessage:r,fdNumber:"ipc",verboseInfo:e})};var ICe=async({subprocess:t,buffer:e,maxBuffer:r,ipc:n,ipcOutput:i,verboseInfo:s})=>{if(!n)return i;let o=CCe(s),a=ll(e,"ipc"),c=ll(r,"ipc");for await(let l of JK({anyProcess:t,channel:t.channel,isSubprocess:!1,ipc:n,shouldAwait:!1,reference:!0}))a&&($Ae(t,i,c),i.push(l)),o&&PCe(l,s);return i},OCe=async(t,e)=>(await Promise.allSettled([t]),e);var NCe=async({subprocess:t,options:{encoding:e,buffer:r,maxBuffer:n,lines:i,timeoutDuration:s,cancelSignal:o,gracefulCancel:a,forceKillAfterDelay:c,stripFinalNewline:l,ipc:u,ipcInput:d},context:f,verboseInfo:p,fileDescriptors:h,originalStreams:m,onInternalError:_,controller:y})=>{let E=Uxe(t,f),S={originalStreams:m,fileDescriptors:h,subprocess:t,exitPromise:E,propagating:!1},g=RCe({subprocess:t,encoding:e,buffer:r,maxBuffer:n,lines:i,stripFinalNewline:l,verboseInfo:p,streamInfo:S}),b=xCe({subprocess:t,encoding:e,buffer:r,maxBuffer:n,lines:i,stripFinalNewline:l,verboseInfo:p,streamInfo:S}),w=[],R=ICe({subprocess:t,buffer:r,maxBuffer:n,ipc:u,ipcOutput:w,verboseInfo:p}),T=mPt(m,t,S),C=gPt(h,S);try{return await Promise.race([Promise.all([{},jxe(E),Promise.all(g),b,R,fAe(t,d),...T,...C]),_,_Pt(t,y),...aAe(t,s,f,y),...C0e({subprocess:t,cancelSignal:o,gracefulCancel:a,context:f,controller:y}),...sAe({subprocess:t,cancelSignal:o,gracefulCancel:a,forceKillAfterDelay:c,context:f,controller:y})])}catch(N){return f.terminationReason??="other",Promise.all([{error:N},E,Promise.all(g.map(A=>d5(A))),d5(b),OCe(R,w),Promise.allSettled(T),Promise.allSettled(C)])}},mPt=(t,e,r)=>t.map((n,i)=>n===e.stdio[i]?void 0:Hw(n,i,r)),gPt=(t,e)=>t.flatMap(({stdioItems:r},n)=>r.filter(({value:i,stream:s=i})=>Do(s,{checkOpen:!1})&&!ko(s)).map(({type:i,value:s,stream:o=s})=>Hw(o,n,e,{isSameDirection:to.has(i),stopOnExit:i==="native"}))),_Pt=async(t,{signal:e})=>{let[r]=await hPt(t,"error",{signal:e});throw r};var kCe=()=>({readableDestroy:new WeakMap,writableFinal:new WeakMap,writableDestroy:new WeakMap}),Gw=(t,e,r)=>{let n=t[r];n.has(e)||n.set(e,[]);let i=n.get(e),s=Da();return i.push(s),{resolve:s.resolve.bind(s),promises:i}},uy=async({resolve:t,promises:e},r)=>{t();let[n]=await Promise.race([Promise.allSettled([!0,r]),Promise.all([!1,...e])]);return!n};import{Readable as yPt}from"stream";import{callbackify as SPt}from"util";import{finished as $Ce}from"stream/promises";var h5=async t=>{if(t!==void 0)try{await m5(t)}catch{}},LCe=async t=>{if(t!==void 0)try{await g5(t)}catch{}},m5=async t=>{await $Ce(t,{cleanup:!0,readable:!1,writable:!0})},g5=async t=>{await $Ce(t,{cleanup:!0,readable:!0,writable:!1})},u$=async(t,e)=>{if(await t,e)throw e},d$=(t,e,r)=>{r&&!l$(r)?t.destroy(r):e&&t.destroy()};var DCe=({subprocess:t,concurrentStreams:e,encoding:r},{from:n,binary:i=!0,preserveNewlines:s=!0}={})=>{let o=i||ys.has(r),{subprocessStdout:a,waitReadableDestroy:c}=_5(t,n,e),{readableEncoding:l,readableObjectMode:u,readableHighWaterMark:d}=y5(a,o),{read:f,onStdoutDataDone:p}=S5({subprocessStdout:a,subprocess:t,binary:o,encoding:r,preserveNewlines:s}),h=new yPt({read:f,destroy:SPt(v5.bind(void 0,{subprocessStdout:a,subprocess:t,waitReadableDestroy:c})),highWaterMark:d,objectMode:u,encoding:l});return E5({subprocessStdout:a,onStdoutDataDone:p,readable:h,subprocess:t}),h},_5=(t,e,r)=>{let n=ry(t,e),i=Gw(r,n,"readableDestroy");return{subprocessStdout:n,waitReadableDestroy:i}},y5=({readableEncoding:t,readableObjectMode:e,readableHighWaterMark:r},n)=>n?{readableEncoding:t,readableObjectMode:e,readableHighWaterMark:r}:{readableEncoding:t,readableObjectMode:!0,readableHighWaterMark:u5},S5=({subprocessStdout:t,subprocess:e,binary:r,encoding:n,preserveNewlines:i})=>{let s=Da(),o=c$({subprocessStdout:t,subprocess:e,binary:r,shouldEncode:!r,encoding:n,preserveNewlines:i});return{read(){EPt(this,o,s)},onStdoutDataDone:s}},EPt=async(t,e,r)=>{try{let{value:n,done:i}=await e.next();i?r.resolve():t.push(n)}catch{}},E5=async({subprocessStdout:t,onStdoutDataDone:e,readable:r,subprocess:n,subprocessStdin:i})=>{try{await g5(t),await n,await h5(i),await e,r.readable&&r.push(null)}catch(s){await h5(i),MCe(r,s)}},v5=async({subprocessStdout:t,subprocess:e,waitReadableDestroy:r},n)=>{await uy(r,e)&&(MCe(t,n),await u$(e,n))},MCe=(t,e)=>{d$(t,t.readable,e)};import{Writable as vPt}from"stream";import{callbackify as UCe}from"util";var FCe=({subprocess:t,concurrentStreams:e},{to:r}={})=>{let{subprocessStdin:n,waitWritableFinal:i,waitWritableDestroy:s}=b5(t,r,e),o=new vPt({...T5(n,t,i),destroy:UCe(R5.bind(void 0,{subprocessStdin:n,subprocess:t,waitWritableFinal:i,waitWritableDestroy:s})),highWaterMark:n.writableHighWaterMark,objectMode:n.writableObjectMode});return w5(n,o),o},b5=(t,e,r)=>{let n=Ak(t,e),i=Gw(r,n,"writableFinal"),s=Gw(r,n,"writableDestroy");return{subprocessStdin:n,waitWritableFinal:i,waitWritableDestroy:s}},T5=(t,e,r)=>({write:bPt.bind(void 0,t),final:UCe(TPt.bind(void 0,t,e,r))}),bPt=(t,e,r,n)=>{t.write(e,r)?n():t.once("drain",n)},TPt=async(t,e,r)=>{await uy(r,e)&&(t.writable&&t.end(),await e)},w5=async(t,e,r)=>{try{await m5(t),e.writable&&e.end()}catch(n){await LCe(r),jCe(e,n)}},R5=async({subprocessStdin:t,subprocess:e,waitWritableFinal:r,waitWritableDestroy:n},i)=>{await uy(r,e),await uy(n,e)&&(jCe(t,i),await u$(e,i))},jCe=(t,e)=>{d$(t,t.writable,e)};import{Duplex as wPt}from"stream";import{callbackify as RPt}from"util";var zCe=({subprocess:t,concurrentStreams:e,encoding:r},{from:n,to:i,binary:s=!0,preserveNewlines:o=!0}={})=>{let a=s||ys.has(r),{subprocessStdout:c,waitReadableDestroy:l}=_5(t,n,e),{subprocessStdin:u,waitWritableFinal:d,waitWritableDestroy:f}=b5(t,i,e),{readableEncoding:p,readableObjectMode:h,readableHighWaterMark:m}=y5(c,a),{read:_,onStdoutDataDone:y}=S5({subprocessStdout:c,subprocess:t,binary:a,encoding:r,preserveNewlines:o}),E=new wPt({read:_,...T5(u,t,d),destroy:RPt(APt.bind(void 0,{subprocessStdout:c,subprocessStdin:u,subprocess:t,waitReadableDestroy:l,waitWritableFinal:d,waitWritableDestroy:f})),readableHighWaterMark:m,writableHighWaterMark:u.writableHighWaterMark,readableObjectMode:h,writableObjectMode:u.writableObjectMode,encoding:p});return E5({subprocessStdout:c,onStdoutDataDone:y,readable:E,subprocess:t,subprocessStdin:u}),w5(u,E,c),E},APt=async({subprocessStdout:t,subprocessStdin:e,subprocess:r,waitReadableDestroy:n,waitWritableFinal:i,waitWritableDestroy:s},o)=>{await Promise.all([v5({subprocessStdout:t,subprocess:r,waitReadableDestroy:n},o),R5({subprocessStdin:e,subprocess:r,waitWritableFinal:i,waitWritableDestroy:s},o)])};var A5=(t,e,{from:r,binary:n=!1,preserveNewlines:i=!1}={})=>{let s=n||ys.has(e),o=ry(t,r),a=c$({subprocessStdout:o,subprocess:t,binary:s,shouldEncode:!0,encoding:e,preserveNewlines:i});return xPt(a,o,t)},xPt=async function*(t,e,r){try{yield*t}finally{e.readable&&e.destroy(),await r}};var qCe=(t,{encoding:e})=>{let r=kCe();t.readable=DCe.bind(void 0,{subprocess:t,concurrentStreams:r,encoding:e}),t.writable=FCe.bind(void 0,{subprocess:t,concurrentStreams:r}),t.duplex=zCe.bind(void 0,{subprocess:t,concurrentStreams:r,encoding:e}),t.iterable=A5.bind(void 0,t,e),t[Symbol.asyncIterator]=A5.bind(void 0,t,e,{})};var BCe=(t,e)=>{for(let[r,n]of PPt){let i=n.value.bind(e);Reflect.defineProperty(t,r,{...n,value:i})}},CPt=(async()=>{})().constructor.prototype,PPt=["then","catch","finally"].map(t=>[t,Reflect.getOwnPropertyDescriptor(CPt,t)]);var VCe=(t,e,r,n)=>{let{file:i,commandArguments:s,command:o,escapedCommand:a,startTime:c,verboseInfo:l,options:u,fileDescriptors:d}=NPt(t,e,r),{subprocess:f,promise:p}=$Pt({file:i,commandArguments:s,options:u,startTime:c,verboseInfo:l,command:o,escapedCommand:a,fileDescriptors:d});return f.pipe=a$.bind(void 0,{source:f,sourcePromise:p,boundOptions:{},createNested:n}),BCe(f,p),Ma.set(f,{options:u,fileDescriptors:d}),f},NPt=(t,e,r)=>{let{command:n,escapedCommand:i,startTime:s,verboseInfo:o}=_k(t,e,r),{file:a,commandArguments:c,options:l}=Mk(t,e,r),u=kPt(l),d=tCe(u,o);return{file:a,commandArguments:c,command:n,escapedCommand:i,startTime:s,verboseInfo:o,options:u,fileDescriptors:d}},kPt=({timeout:t,signal:e,...r})=>{if(e!==void 0)throw new TypeError('The "signal" option has been renamed to "cancelSignal" instead.');return{...r,timeoutDuration:t}},$Pt=({file:t,commandArguments:e,options:r,startTime:n,verboseInfo:i,command:s,escapedCommand:o,fileDescriptors:a})=>{let c;try{c=OPt(...Uk(t,e,r))}catch(h){return Zxe({error:h,command:s,escapedCommand:o,fileDescriptors:a,options:r,startTime:n,verboseInfo:i})}let l=new AbortController;IPt(Number.POSITIVE_INFINITY,l.signal);let u=[...c.stdio];uCe(c,a,l),fCe(c,r,l);let d={},f=Da();c.kill=A0e.bind(void 0,{kill:c.kill.bind(c),options:r,onInternalError:f,context:d,controller:l}),c.all=ACe(c,r),qCe(c,r),Yxe(c,r);let p=LPt({subprocess:c,options:r,startTime:n,verboseInfo:i,fileDescriptors:a,originalStreams:u,command:s,escapedCommand:o,context:d,onInternalError:f,controller:l});return{subprocess:c,promise:p}},LPt=async({subprocess:t,options:e,startTime:r,verboseInfo:n,fileDescriptors:i,originalStreams:s,command:o,escapedCommand:a,context:c,onInternalError:l,controller:u})=>{let[d,[f,p],h,m,_]=await NCe({subprocess:t,options:e,context:c,verboseInfo:n,fileDescriptors:i,originalStreams:s,onInternalError:l,controller:u});u.abort(),l.resolve();let y=h.map((g,b)=>dl(g,e,b)),E=dl(m,e,"all"),S=DPt({errorInfo:d,exitCode:f,signal:p,stdio:y,all:E,ipcOutput:_,context:c,options:e,command:o,escapedCommand:a,startTime:r});return ay(S,n,e)},DPt=({errorInfo:t,exitCode:e,signal:r,stdio:n,all:i,ipcOutput:s,context:o,options:a,command:c,escapedCommand:l,startTime:u})=>"error"in t?jw({error:t.error,command:c,escapedCommand:l,timedOut:o.terminationReason==="timeout",isCanceled:o.terminationReason==="cancel"||o.terminationReason==="gracefulCancel",isGracefullyCanceled:o.terminationReason==="gracefulCancel",isMaxBuffer:t.error instanceof Ua,isForcefullyTerminated:o.isForcefullyTerminated,exitCode:e,signal:r,stdio:n,all:i,ipcOutput:s,options:a,startTime:u,isSync:!1}):Gk({command:c,escapedCommand:l,stdio:n,all:i,ipcOutput:s,options:a,startTime:u});var f$=(t,e)=>{let r=Object.fromEntries(Object.entries(e).map(([n,i])=>[n,MPt(n,t[n],i)]));return{...t,...r}},MPt=(t,e,r)=>UPt.has(t)&&Fr(e)&&Fr(r)?{...e,...r}:r,UPt=new Set(["env",...rK]);var hd=(t,e,r,n)=>{let i=(o,a,c)=>hd(o,a,r,c),s=(...o)=>FPt({mapArguments:t,deepOptions:r,boundOptions:e,setBoundExeca:n,createNested:i},...o);return n!==void 0&&n(s,i,e),s},FPt=({mapArguments:t,deepOptions:e={},boundOptions:r={},setBoundExeca:n,createNested:i},s,...o)=>{if(Fr(s))return i(t,f$(r,s),n);let{file:a,commandArguments:c,options:l,isSync:u}=jPt({mapArguments:t,firstArgument:s,nextArguments:o,deepOptions:e,boundOptions:r});return u?qxe(a,c,l):VCe(a,c,l,i)},jPt=({mapArguments:t,firstArgument:e,nextArguments:r,deepOptions:n,boundOptions:i})=>{let s=tRe(e)?rRe(e,r):[e,...r],[o,a,c]=ok(...s),l=f$(f$(n,i),c),{file:u=o,commandArguments:d=a,options:f=l,isSync:p=!1}=t({file:o,commandArguments:a,options:l});return{file:u,commandArguments:d,options:f,isSync:p}};var HCe=({file:t,commandArguments:e})=>WCe(t,e),GCe=({file:t,commandArguments:e})=>({...WCe(t,e),isSync:!0}),WCe=(t,e)=>{if(e.length>0)throw new TypeError(`The command and its arguments must be passed as a single string: ${t} ${e}.`);let[r,...n]=zPt(t);return{file:r,commandArguments:n}},zPt=t=>{if(typeof t!="string")throw new TypeError(`The command must be a string: ${String(t)}.`);let e=t.trim();if(e==="")return[];let r=[];for(let n of e.split(qPt)){let i=r.at(-1);i&&i.endsWith("\\")?r[r.length-1]=`${i.slice(0,-1)} ${n}`:r.push(n)}return r},qPt=/ +/g;var YCe=(t,e,r)=>{t.sync=e(BPt,r),t.s=t.sync},KCe=({options:t})=>JCe(t),BPt=({options:t})=>({...JCe(t),isSync:!0}),JCe=t=>({options:{...VPt(t),...t}}),VPt=({input:t,inputFile:e,stdio:r})=>t===void 0&&e===void 0&&r===void 0?{stdin:"inherit"}:{},ZCe={preferLocal:!0};var XCe=hd(()=>({})),yAr=hd(()=>({isSync:!0})),QCe=hd(HCe),SAr=hd(GCe),EAr=hd(lAe),vAr=hd(KCe,{},ZCe,YCe),{sendMessage:bAr,getOneMessage:TAr,getEachMessage:wAr,getCancelSignal:RAr}=Kxe();import{Transform as HPt}from"stream";var GPt=["NETLIFY_AI_GATEWAY_KEY"];function WPt(){let t=(process.env.NETLIFY_SENSITIVE_ENV_KEYS||"").split(",").map(e=>e.trim()).filter(Boolean);return[...new Set([...t,...GPt])]}function YPt(t){let e=t.toLowerCase();return e==="true"||e==="false"?!0:t.trim().length<4}function KPt(){let e=WPt().map(r=>process.env[r]).filter(r=>!(!r||YPt(r)));return[...new Set(e)].sort((r,n)=>n.length-r.length)}function Xi(t){if(typeof t!="string")return t;let e=KPt();if(e.length===0)return t;let r=t;return e.forEach(n=>{let i=new RegExp(JPt(n),"g");r=r.replace(i,"******")}),r}function JPt(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}var Ww=class extends HPt{constructor(e={}){super({...e,objectMode:!1})}_transform(e,r,n){let i=e.toString(),s=Xi(i);n(null,s)}},p$=Symbol("maskedWrite");function ePe(){if(process.env.NETLIFY_MASK_LOGS!=="false"){if(!process.stdout.write[p$]){let e=process.stdout.write.bind(process.stdout),r=function(n,i,s){let o=typeof n=="string"?Xi(n):n;return typeof i=="function"?e(o,i):e(o,i,s)};r[p$]=!0,process.stdout.write=r}if(!process.stderr.write[p$]){let e=process.stderr.write.bind(process.stderr),r=function(n,i,s){let o=typeof n=="string"?Xi(n):n;return typeof i=="function"?e(o,i):e(o,i,s)};r[p$]=!0,process.stderr.write=r}}}var tPe=!1,rPe,nPe=t=>{tPe=!0,rPe??=t},Ss=()=>tPe,iPe=()=>rPe;var Yw=null,sPe=t=>(Yw&&Yw.destroy(),Yw=new ja({totalAllowedTime:t}),Yw),oPe=()=>Yw;var ja=class{constructor({totalAllowedTime:e}){this.withStageTimer=async(e,r,n,{interruptible:i=!0}={})=>{if(this.isTimeExpired())throw new Error(`${e} stage did not complete in the allowed time. Time has already expired.`);if(i&&Ss())throw new Error(`Aborting ${e} stage \u2014 shutting down`);let s=this.onTimesUp(()=>{throw new Error(`${e} stage did not complete in the allowed time.`)}),o=null,a=null;n!==void 0&&(a=new Promise((u,d)=>{o=setTimeout(()=>{d(new Error(`${e} stage exceeded its maximum duration of ${n}ms`))},n)}));let c=Date.now(),l="success";try{return await tk({stage:e},async()=>a?await Promise.race([r(),a]):await r())}catch(u){throw l="failure",u}finally{ie.timing("stage.duration",Date.now()-c,{stage:e,outcome:l}),s(),o&&clearTimeout(o)}};this.startTime=Date.now(),this.totalAllowedTime=e,this.globalTimeoutId=null,this.subscribers=[],this.hasTimedOut=!1,this.setupGlobalTimeout()}getElapsedTime(){return Date.now()-this.startTime}getRemainingTime(){let e=this.getElapsedTime(),r=this.totalAllowedTime-e;return Math.max(0,r)}isTimeExpired(){return this.getRemainingTime()===0||this.hasTimedOut}setupGlobalTimeout(){this.globalTimeoutId&&clearTimeout(this.globalTimeoutId),this.globalTimeoutId=setTimeout(()=>{this.notifyTimeUp()},this.totalAllowedTime)}notifyTimeUp(){this.hasTimedOut=!0;for(let e=this.subscribers.length-1;e>=0;e--)try{this.subscribers[e]()}catch(r){console.error("TimeKeeper: Error in time up callback:",r)}}onTimesUp(e){if(this.subscribers.push(e),this.hasTimedOut)try{e()}catch(r){console.error("TimeKeeper: Error in time up callback:",r)}return()=>{let r=this.subscribers.indexOf(e);r>-1&&this.subscribers.splice(r,1)}}off(e){let r=this.subscribers.indexOf(e);r>-1&&this.subscribers.splice(r,1)}clearSubscribers(){this.subscribers.length=0}getSubscriberCount(){return this.subscribers.length}destroy(){this.globalTimeoutId&&(clearTimeout(this.globalTimeoutId),this.globalTimeoutId=null),this.clearSubscribers()}static{this.timeUnits={seconds:e=>e*1e3,minutes:e=>e*60*1e3,hours:e=>e*60*60*1e3}}};var aPe={name:"@netlify/agent-runner-cli",type:"module",version:"1.176.0-PAW-469.7",description:"CLI tool for running Netlify agents",main:"./dist/index.js",types:"./dist/index.d.ts",exports:"./dist/index.js",bin:{"agent-runner-cli":"./dist/bin.js","agent-runner-cli-local":"./dist/bin-local.js"},files:["dist/**/*.js","dist/**/*.d.ts","dist/skills/**","patches","scripts"],scripts:{prebuild:"rm -rf dist",build:"tsup",dev:"tsup --watch",prepare:"husky install node_modules/@netlify/eslint-config-node/.husky/",prepublishOnly:"npm ci && npm test",prepack:"npm run build",test:"run-s build format test:dev",format:"run-s build format:check-fix:*","format:ci":"run-s build format:check:*","format:check-fix:lint":"run-e format:check:lint format:fix:lint","format:check:lint":'eslint --cache --format=codeframe --max-warnings=0 "{src,scripts,test,.github}/**/*.{js,ts,md,html}"',"format:fix:lint":'eslint --fix --cache --format=codeframe --max-warnings=0 "{src,scripts,test,.github}/**/*.{js,ts,md,html}"',"format:check-fix:prettier":"run-e format:check:prettier format:fix:prettier","format:check:prettier":'prettier --check --ignore-path .gitignore --loglevel=warn "{src,scripts,test,.github}/**/*.{js,ts,md,yml,json,html}" "*.{js,ts,yml,json,html}" ".*.{js,ts,yml,json,html}" "!**/package-lock.json" "!package-lock.json" "!src/skills/**/*.md"',"format:fix:prettier":'prettier --write --ignore-path .gitignore --loglevel=warn "{src,scripts,test,.github}/**/*.{js,ts,md,yml,json,html}" "*.{js,ts,yml,json,html}" ".*.{js,ts,yml,json,html}" "!**/package-lock.json" "!package-lock.json" "!src/skills/**/*.md"',"test:dev":"run-s build test:dev:*","test:ci":"run-s build test:ci:*","test:dev:vitest":"LOG=0 vitest --exclude '**/integration/**'","test:ci:vitest":"LOG=0 vitest run --coverage --exclude '**/integration/**'","test:smoke":"node scripts/smoke-dist.js","test:integration":"vitest run test/integration/","test:integration:codex":"vitest run test/integration/codex.test.ts","test:integration:claude":"vitest run test/integration/claude.test.ts","test:integration:gemini":"vitest run test/integration/gemini.test.ts","test:integration:opencode":"vitest run test/integration/opencode.test.ts","test:integration:skill-invocation":"vitest run test/integration/skill-invocation.test.ts","check:types":"tsc --noEmit",postinstall:"node scripts/postinstall.js"},keywords:[],license:"MIT",repository:"netlify/agent-runner-cli",bugs:{url:"https://github.com/netlify/agent-runner-cli/issues"},author:"Netlify Inc.",directories:{test:"test"},devDependencies:{"@commitlint/cli":"^20.0.0","@commitlint/config-conventional":"^20.0.0","@eslint/compat":"^2.0.0","@eslint/js":"^10.0.1","@netlify/axis":"^1.17.6","@netlify/eslint-config-node":"^7.0.1","@types/node":"^24.5.0","@typescript-eslint/eslint-plugin":"^8.0.0","@typescript-eslint/parser":"^8.0.0","@vitest/coverage-v8":"^4.1.5","@vitest/eslint-plugin":"^1.6.6",eslint:"^10.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-n":"^17.0.0",husky:"^9.0.0",jiti:"^2.7.0","patch-package":"^8.0.0",tsup:"^8.5.0",typescript:"^5.0.0","typescript-eslint":"^8.44.0",vitest:"^4.0.16"},dependencies:{"@anthropic-ai/claude-code":"^2.1.219","@anthropic-ai/sdk":"0.91.1","@google/gemini-cli":"0.42.0","@modelcontextprotocol/sdk":"^1.29.0","@netlify/cache-utils":"^6.0.5","@netlify/database-proxy":"^0.2.1","@netlify/otel":"^6.0.6","@netlify/ts-cli":"^1.2.0","@openai/codex":"0.153.4","@opentelemetry/api":"^1.9.0","@opentelemetry/exporter-trace-otlp-grpc":"0.218.0",execa:"^9.6.1",fastify:"5.12.1",minimist:"^1.2.8",openai:"6.34.0",zod:"^4.4.3"}};var eIt=XPt(import.meta.url),tIt=fl.dirname(eIt),rIt=QPt(import.meta.url),dy=fe("shell"),x5=new Set,cPe={preferLocal:!0},hr=(t,e,r)=>{let[n,i]=nIt(e,r),s={...cPe,...i},o=XCe(t,n,s);uPe(o,s),pPe(o);let a=r?.idleTimeout;return a&&a>0&&fPe(o,a),o},lPe=(t,e)=>{let r={...cPe,...e},n=QCe(t,r);return uPe(n,r),pPe(n),e?.idleTimeout&&e.idleTimeout>0&&fPe(n,e.idleTimeout),n},nIt=function(t,e){return Array.isArray(t)?[t,e]:typeof t=="object"&&t!==null?[[],t]:[[],void 0]},uPe=(t,e)=>{if(e.stdio!==void 0||e.stdout!==void 0||e.stderr!==void 0||za.env.NETLIFY_LOCAL_QUIET==="true")return;if(za.env.NETLIFY_MASK_LOGS!=="false"){t.stdout?.pipe(new Ww).pipe(za.stdout),t.stderr?.pipe(new Ww).pipe(za.stderr);return}t.stdout?.pipe(za.stdout),t.stderr?.pipe(za.stderr)},C5=(t,e="SIGTERM")=>{try{return t.pid&&!t.killed?(za.kill(-t.pid,e),dy.log(`Killed process ${t.pid} with signal ${e}`),!0):!1}catch(r){return dy.error("Error killing process:",r),!1}},dPe=t=>C5(t,"SIGKILL"),fPe=(t,e)=>{let r=null,n=()=>{dy.log(`Process ${t.pid} killed due to idle timeout (no output for ${e}ms)`),C5(t,"SIGTERM"),setTimeout(()=>{t.pid&&!t.killed&&(dy.log(`Force killing idle process ${t.pid}`),dPe(t))},5e3)},i=()=>{r&&clearTimeout(r),r=setTimeout(n,e)};i(),t.stdout?.on("data",i),t.stderr?.on("data",i);let s=()=>{r&&(clearTimeout(r),r=null)};t.on("exit",s),t.on("error",s)},pPe=t=>{x5.add(t);let e=oPe();if(e){let r=e.onTimesUp(()=>{dy.log(`Global timer expired, killing process ${t.pid}`),C5(t,"SIGTERM"),setTimeout(()=>{t.pid&&!t.killed&&(dy.log(`Force killing process ${t.pid} after timeout`),dPe(t))},5e3)});t.on("exit",()=>{x5.delete(t),r()}),t.on("error",()=>{x5.delete(t),r()})}};function qa(t,e){if(!za.env.NETLIFY_LOCAL_MODE)try{let i=rIt.resolve(aPe.name),s=fl.dirname(i);for(;s!==fl.dirname(s);){let o=fl.dirname(s);if(fl.basename(o)==="node_modules"){let a=fl.join(o,".bin",e);if(h$.existsSync(a))return a;break}s=o}}catch(i){console.error("Could not resolve package.json",i)}if(za.env.NODE_PATH){let i=fl.join(za.env.NODE_PATH,".bin",e);if(h$.existsSync(i))return i}let r=fl.join(t,"node_modules",".bin",e);if(h$.existsSync(r))return r;let n=fl.join(tIt,"..","node_modules",".bin",e);if(h$.existsSync(n))return n}import M1 from"process";import{fileURLToPath as N2t}from"url";import{createRequire as k2t}from"module";import G0 from"path";import{readFileSync as $2t}from"fs";var iIt="__netlify__getTracer",sIt="__netlify__shutdownTracers",Pt=(t,e)=>globalThis[iIt]?.(t,e),hPe=async()=>globalThis[sIt]?.();function Kw(t,e,r,n,i){let s=typeof n=="function"?n:typeof r=="function"?r:i;if(!s)throw new Error("function to execute with active span is missing");return t?t.withActiveSpan(e,r,n,s):s()}import{setTimeout as R2t}from"timers/promises";Le();import oNt from"process";Le();var PIt=(t,e)=>{e.recordException(t),e.setStatus({code:li.ERROR})};var ml=class{constructor(e){this._tracer=e,this.startSpan=e.startSpan.bind(this._tracer),this.startActiveSpan=e.startActiveSpan.bind(this._tracer)}withActiveSpan(e,r,n,i){let{opts:s,ctx:o,fn:a}=aIe(r,n,i);return this._tracer.startActiveSpan(e,s,o,c=>cIe(c,s,a))}withSpan(e,r,n,i){let{opts:s,ctx:o,fn:a}=aIe(r,n,i),c=this._tracer.startSpan(e,s,o);return cIe(c,s,a)}};function aIe(t,e,r){let n,i,s;return!e&&!r?s=t:r?(n=t,i=e,s=r):(n=t,s=e),n=n??{},i=i??tr.active(),{opts:n,ctx:i,fn:s}}function cIe(t,e,r){var n;let i=(n=e.onException)!==null&&n!==void 0?n:PIt,s=o=>{throw i(o,t),t.end(),o};try{let o=r(t);return typeof o?.then=="function"?o.then(a=>(t.end(),a),s):(t.end(),o)}catch(o){throw s(o)}}Le();var yy=t=>t!==null&&typeof t=="object"&&typeof t.then=="function";var c9=class t{_rawAttributes;_asyncAttributesPending=!1;_schemaUrl;_memoizedAttributes;static FromAttributeList(e,r){let n=new t({},r);return n._rawAttributes=yIe(e),n._asyncAttributesPending=e.filter(([i,s])=>yy(s)).length>0,n}constructor(e,r){let n=e.attributes??{};this._rawAttributes=Object.entries(n).map(([i,s])=>(yy(s)&&(this._asyncAttributesPending=!0),[i,s])),this._rawAttributes=yIe(this._rawAttributes),this._schemaUrl=IIt(r?.schemaUrl)}get asyncAttributesPending(){return this._asyncAttributesPending}async waitForAsyncAttributes(){if(this.asyncAttributesPending){for(let e=0;e<this._rawAttributes.length;e++){let[r,n]=this._rawAttributes[e];this._rawAttributes[e]=[r,yy(n)?await n:n]}this._asyncAttributesPending=!1}}get attributes(){if(this.asyncAttributesPending&&ce.error("Accessing resource attributes before async attributes settled"),this._memoizedAttributes)return this._memoizedAttributes;let e={};for(let[r,n]of this._rawAttributes){if(yy(n)){ce.debug(`Unsettled resource attribute ${r} skipped`);continue}n!=null&&(e[r]??=n)}return this._asyncAttributesPending||(this._memoizedAttributes=e),e}getRawAttributes(){return this._rawAttributes}get schemaUrl(){return this._schemaUrl}merge(e){if(e==null)return this;let r=OIt(this,e),n=r?{schemaUrl:r}:void 0;return t.FromAttributeList([...e.getRawAttributes(),...this.getRawAttributes()],n)}};function l9(t,e){return c9.FromAttributeList(Object.entries(t),e)}function yIe(t){return t.map(([e,r])=>yy(r)?[e,r.catch(n=>{ce.debug("promise rejection for resource attribute: %s - %s",e,n)})]:[e,r])}function IIt(t){if(typeof t=="string"||t===void 0)return t;ce.warn("Schema URL must be string or undefined, got %s. Schema URL will be ignored.",t)}function OIt(t,e){let r=t?.schemaUrl,n=e?.schemaUrl,i=r===void 0||r==="",s=n===void 0||n==="";if(i)return n;if(s||r===n)return r;ce.warn('Schema URL merge conflict: old resource has "%s", updating resource has "%s". Resulting resource will have undefined Schema URL.',r,n)}Le();var aR=class{emit(e){}enabled(){return!1}},SIe=new aR;var cR=Symbol.for("io.opentelemetry.js.api.logs"),Sy=globalThis;function EIe(t,e,r){return n=>n===t?e:r}var u9=1;var d9=class{getLogger(e,r,n){return new aR}},M$=new d9;var U$=class{constructor(e,r,n,i){this._provider=e,this.name=r,this.version=n,this.options=i}emit(e){this._getLogger().emit(e)}enabled(e){return this._getLogger().enabled(e)}_getLogger(){if(this._delegate)return this._delegate;let e=this._provider._getDelegateLogger(this.name,this.version,this.options);return e?(this._delegate=e,this._delegate):SIe}};var lR=class{getLogger(e,r,n){var i;return(i=this._getDelegateLogger(e,r,n))!==null&&i!==void 0?i:new U$(this,e,r,n)}_getDelegate(){var e;return(e=this._delegate)!==null&&e!==void 0?e:M$}_setDelegate(e){this._delegate=e}_getDelegateLogger(e,r,n){var i;return(i=this._delegate)===null||i===void 0?void 0:i.getLogger(e,r,n)}};var F$=class t{constructor(){this._proxyLoggerProvider=new lR}static getInstance(){return this._instance||(this._instance=new t),this._instance}setGlobalLoggerProvider(e){return Sy[cR]?this.getLoggerProvider():(Sy[cR]=EIe(u9,e,M$),this._proxyLoggerProvider._setDelegate(e),e)}getLoggerProvider(){var e,r;return(r=(e=Sy[cR])===null||e===void 0?void 0:e.call(Sy,u9))!==null&&r!==void 0?r:this._proxyLoggerProvider}getLogger(e,r,n){return this.getLoggerProvider().getLogger(e,r,n)}disable(){delete Sy[cR],this._proxyLoggerProvider=new lR}};var vIe=F$.getInstance();function bIe(t,e,r,n){for(let i=0,s=t.length;i<s;i++){let o=t[i];e&&o.setTracerProvider(e),r&&o.setMeterProvider(r),n&&o.setLoggerProvider&&o.setLoggerProvider(n),o.getConfig().enabled||o.enable()}}function TIe(t){t.forEach(e=>e.disable())}function f9(t){let e=t.tracerProvider||jt.getTracerProvider(),r=t.meterProvider||oR.getMeterProvider(),n=t.loggerProvider||vIe.getLoggerProvider(),i=t.instrumentations?.flat()??[];return bIe(i,e,r,n),()=>{TIe(i)}}Le();var NIt=yn("OpenTelemetry SDK Context Key SUPPRESS_TRACING");function wIe(t){return t.getValue(NIt)===!0}var Ey;(function(t){t[t.SUCCESS=0]="SUCCESS",t[t.FAILED=1]="FAILED"})(Ey||(Ey={}));Le();var p9="[_0-9a-z-*/]",kIt=`[a-z]${p9}{0,255}`,$It=`[a-z0-9]${p9}{0,240}@[a-z]${p9}{0,13}`,LIt=new RegExp(`^(?:${kIt}|${$It})$`),DIt=/^[ -~]{0,255}[!-~]$/,MIt=/,|=/;function h9(t){return LIt.test(t)}function m9(t){return DIt.test(t)&&!MIt.test(t)}var UIt=32,RIe=512,AIe=",",xIe="=",j$=class t{_length;_rawTraceState;_internalState;constructor(e){this._rawTraceState=typeof e=="string"?e:"",this._length=this._rawTraceState.length}set(e,r){if(!h9(e)||!m9(r))return this;let n=this._getState(),i=n.get(e),s=this._length;if(typeof i=="string"?s+=r.length-i.length:s+=e.length+r.length+(n.size>0?2:1),s>RIe)return this;let o=new Map(n);return o.delete(e),o.set(e,r),this._fromState(o,s)}unset(e){let r=this._getState(),n=r.get(e);if(typeof n!="string")return this;let i=this._length-(e.length+n.length+1);r.size>1&&(i=i-1);let s=new Map(r);return s.delete(e),this._fromState(s,i)}get(e){return this._getState().get(e)}serialize(){let e="",r=0;for(let n of this._getState())r>0&&(e=AIe+e),e=`${n[0]}${xIe}${n[1]}`+e,r++;return e}_getState(){if(this._internalState)return this._internalState;let e=this._rawTraceState.split(AIe),r=new Map,n=0;for(let i of e){let s=i.trim(),o=s.indexOf(xIe);if(o===-1)continue;let a=s.slice(0,o),c=s.slice(o+1);if(!h9(a)||!m9(c))continue;let l=n+s.length+(r.size>0?1:0);if(!(l>RIe)&&(r.set(a,c),n=l,r.size>=UIt))break}return this._length=n,this._internalState=new Map(Array.from(r.entries()).reverse()),this._internalState}_fromState(e,r){let n=Object.create(t.prototype);return n._internalState=e,n._length=r,n}};var z$="traceparent",q$="tracestate",FIt="00",jIt="(?!ff)[\\da-f]{2}",zIt="(?![0]{32})[\\da-f]{32}",qIt="(?![0]{16})[\\da-f]{16}",BIt="[\\da-f]{2}",VIt=new RegExp(`^\\s?(${jIt})-(${zIt})-(${qIt})-(${BIt})(-.*)?\\s?$`);function CIe(t){let e=VIt.exec(t);return!e||e[1]==="00"&&e[5]?null:{traceId:e[2],spanId:e[3],traceFlags:parseInt(e[4],16)}}var _d=class{inject(e,r,n){let i=jt.getSpanContext(e);if(!i||wIe(e)||!Qi(i))return;let s=`${FIt}-${i.traceId}-${i.spanId}-0${Number(i.traceFlags||Pr.NONE).toString(16)}`;n.set(r,z$,s),i.traceState&&n.set(r,q$,i.traceState.serialize())}extract(e,r,n){let i=n.get(r,z$);if(!i)return e;let s=Array.isArray(i)?i[0]:i;if(typeof s!="string")return e;let o=CIe(s);if(!o)return e;o.isRemote=!0;let a=n.get(r,q$);if(a){let c=Array.isArray(a)?a.join(","):a;o.traceState=new j$(typeof c=="string"?c:void 0)}return jt.setSpanContext(e,o)}fields(){return[z$,q$]}};var B$=class{_promise;_resolve;_reject;constructor(){this._promise=new Promise((e,r)=>{this._resolve=e,this._reject=r})}get promise(){return this._promise}resolve(e){this._resolve(e)}reject(e){this._reject(e)}};var uR=class{_isCalled=!1;_deferred=new B$;_callback;_that;constructor(e,r){this._callback=e,this._that=r}get isCalled(){return this._isCalled}get promise(){return this._deferred.promise}call(...e){if(!this._isCalled){this._isCalled=!0;try{Promise.resolve(this._callback.call(this._that,...e)).then(r=>this._deferred.resolve(r),r=>this._deferred.reject(r))}catch(r){this._deferred.reject(r)}}return this._deferred.promise}};var $L=In(e8(),1);Le();var uke=t=>{throw TypeError(t)},i8=(t,e,r)=>e.has(t)||uke("Cannot "+r),kL=(t,e,r)=>(i8(t,e,"read from private field"),r?r.call(t):e.get(t)),t8=(t,e,r)=>e.has(t)?uke("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,r),ake=(t,e,r,n)=>(i8(t,e,"write to private field"),n?n.call(t,r):e.set(t,r),r),sNt=(t,e,r)=>(i8(t,e,"access private method"),r),cke="__netlify__getTracer",aNt="__netlify__shutdownTracers",cNt="__nfOTLPTrace",RR,AR,n8,dke,lNt=class{constructor(){t8(this,n8),t8(this,RR),t8(this,AR),ake(this,RR,new uR(sNt(this,n8,dke),this)),ake(this,AR,ce.createComponentLogger({namespace:"netlify-span-exporter"}))}export(t,e){if(kL(this,AR).debug(`export ${t.length.toString()} spans`),kL(this,RR).isCalled){e({code:Ey.FAILED,error:new Error("Exporter has been shutdown")});return}console.log(cNt,JSON.stringify(uNt(t))),e({code:Ey.SUCCESS})}shutdown(){return kL(this,RR).call()}};RR=new WeakMap;AR=new WeakMap;n8=new WeakSet;dke=function(){return kL(this,AR).debug("Shutting down"),Promise.resolve()};function uNt(t){return{resourceSpans:t.map(e=>{let r=e.spanContext();return{resource:{attributes:NL(e.resource.attributes),droppedAttributesCount:e.droppedAttributesCount},scopeSpans:[{scope:{name:e.instrumentationScope.name,version:e.instrumentationScope.version},spans:[{traceId:r.traceId,spanId:r.spanId,parentSpanId:e.parentSpanContext?.spanId,name:e.name,kind:e.kind||Mo.SERVER,startTimeUnixNano:r8(e.startTime),endTimeUnixNano:r8(e.endTime),attributes:NL(e.attributes),droppedAttributesCount:e.droppedAttributesCount,events:e.events.map(n=>({name:n.name,timeUnixNano:r8(n.time),attributes:NL(n.attributes??{}),droppedAttributesCount:n.droppedAttributesCount??0})),droppedEventsCount:e.droppedEventsCount,status:{code:e.status.code,message:e.status.message},links:e.links.map(n=>({spanId:n.context.spanId,traceId:n.context.traceId,attributes:NL(n.attributes??{}),droppedAttributesCount:n.droppedAttributesCount??0})),droppedLinksCount:e.droppedLinksCount}]}]}})}}function NL(t){return Object.keys(t).map(e=>fke(e,t[e]))}function fke(t,e){return{key:t,value:pke(e)}}function pke(t){let e=typeof t;return e==="string"?{stringValue:t}:e==="number"?Number.isInteger(t)?{intValue:t}:{doubleValue:t}:e==="boolean"?{boolValue:t}:t instanceof Uint8Array?{bytesValue:t}:Array.isArray(t)?{arrayValue:{values:t.map(pke)}}:e==="object"&&t!=null?{kvlistValue:{values:Object.entries(t).map(([r,n])=>fke(r,n))}}:{}}function r8(t){let e=BigInt(1e9);return(BigInt(Math.trunc(t[0]))*e+BigInt(Math.trunc(t[1]))).toString()}var lke={name:"@netlify/otel",version:"6.0.6",type:"module",engines:{node:"^18.14.0 || >=20.6.1"},main:"./dist/main.cjs",module:"./dist/main.js",types:"./dist/main.d.ts",exports:{".":{require:{types:"./dist/main.d.cts",default:"./dist/main.cjs"},import:{types:"./dist/main.d.ts",default:"./dist/main.js"},default:{types:"./dist/main.d.ts",default:"./dist/main.js"}},"./package.json":"./package.json","./bootstrap":{require:{types:"./dist/bootstrap/main.d.cts",default:"./dist/bootstrap/main.cjs"},import:{types:"./dist/bootstrap/main.d.ts",default:"./dist/bootstrap/main.js"},default:{types:"./dist/bootstrap/main.d.ts",default:"./dist/bootstrap/main.js"}},"./exporter-netlify":{require:{types:"./dist/exporters/netlify.d.cts",default:"./dist/exporters/netlify.cjs"},import:{types:"./dist/exporters/netlify.d.ts",default:"./dist/exporters/netlify.js"},default:{types:"./dist/exporters/netlify.d.ts",default:"./dist/exporters/netlify.js"}},"./instrumentation-fetch":{require:{types:"./dist/instrumentations/fetch.d.cts",default:"./dist/instrumentations/fetch.cjs"},import:{types:"./dist/instrumentations/fetch.d.ts",default:"./dist/instrumentations/fetch.js"},default:{types:"./dist/instrumentations/fetch.d.ts",default:"./dist/instrumentations/fetch.js"}},"./instrumentation-http":{require:{types:"./dist/instrumentations/http.d.cts",default:"./dist/instrumentations/http.cjs"},import:{types:"./dist/instrumentations/http.d.ts",default:"./dist/instrumentations/http.js"},default:{types:"./dist/instrumentations/http.d.ts",default:"./dist/instrumentations/http.js"}},"./opentelemetry":{require:{types:"./dist/opentelemetry.d.cts",default:"./dist/opentelemetry.cjs"},import:{types:"./dist/opentelemetry.d.ts",default:"./dist/opentelemetry.js"},default:{types:"./dist/opentelemetry.d.ts",default:"./dist/opentelemetry.js"}}},files:["dist/**/*"],scripts:{build:"tsup-node",dev:"tsup-node --watch",prepack:"npm run build",test:"run-s build test:ci","test:dev":"run-s build test:dev:*","test:ci":"run-s build test:ci:*","test:dev:vitest":"vitest","test:dev:vitest:watch":"vitest watch","test:ci:vitest":"vitest run",publint:"npx -y publint --strict"},keywords:["netlify","cdn"],license:"MIT",repository:{type:"git",url:"https://github.com/netlify/primitives.git",directory:"packages/otel"},bugs:{url:"https://github.com/netlify/primitives/issues"},author:"Netlify Inc.",devDependencies:{"@netlify/dev-utils":"^5.0.0",msw:"^2.10.5","npm-run-all2":"^7.0.2",tsup:"^8.0.0",vitest:"^3.0.0"},dependencies:{"@opentelemetry/api":"1.9.1","@opentelemetry/core":"2.8.0","@opentelemetry/instrumentation":"^0.220.0","@opentelemetry/resources":"2.9.0","@opentelemetry/sdk-trace-node":"2.9.0"}},hke=t=>{if(Object.prototype.hasOwnProperty.call(globalThis,cke))return;let e=oNt.version.slice(1),r=l9({"service.name":t.serviceName,"service.version":t.serviceVersion,"process.runtime.name":"nodejs","process.runtime.version":e,"deployment.environment":t.deploymentEnvironment,"http.url":t.siteUrl,"netlify.site.id":t.siteId,"netlify.site.name":t.siteName}),n=t.spanProcessors??[dNt()],i=new $L.NodeTracerProvider({resource:r,spanProcessors:n});i.register({propagator:new _d});let s=t.instrumentations??[];f9({instrumentations:s,tracerProvider:i}),Object.defineProperty(globalThis,cke,{enumerable:!1,configurable:!0,writable:!1,value:function(a,c){return a?new ml(jt.getTracer(a,c)):new ml(jt.getTracer(lke.name,lke.version))}}),Object.defineProperty(globalThis,aNt,{enumerable:!1,configurable:!0,writable:!1,value:async()=>await i.shutdown()})},dNt=()=>new $L.SimpleSpanProcessor(new lNt);Le();var xR=In(e8(),1);Le();import*as LL from"diagnostics_channel";var mke=class{constructor(t={}){this.instrumentationName="@netlify/otel/instrumentation-fetch",this.instrumentationVersion="1.0.0",this._recordFromReq=new WeakMap,this.config=t,this._channelSubs=[]}getConfig(){return this.config}setConfig(){}setMeterProvider(){}setTracerProvider(t){this.provider=t}getTracerProvider(){return this.provider}annotateFromRequest(t,e){let r=this.config.getRequestAttributes?.(e)??{},n=new URL(e.path,e.origin);t.setAttributes({...r,"http.request.method":e.method,"url.full":n.href,"url.host":n.host,"url.scheme":n.protocol.slice(0,-1),"server.address":n.hostname,"server.port":n.port,...this.prepareHeaders("request",e.headers)})}annotateFromResponse(t,e){let r=this.config.getResponseAttributes?.(e)??{};t.setAttributes({...r,"http.response.status_code":e.statusCode,...this.prepareHeaders("response",e.headers)}),t.setStatus({code:e.statusCode>=400?li.ERROR:li.UNSET})}prepareHeaders(t,e){if(!Array.isArray(e))return{};if(this.config.skipHeaders===!0)return{};let r=["*","/.*/"],n=this.config.skipHeaders??[],i=this.config.redactHeaders??[],s=n.some(a=>r.includes(a.toString())),o={};if(s)return o;for(let a=0;a+1<e.length;a=a+2){let c=e[a],l=e[a+1];if(typeof c!="string"&&!Buffer.isBuffer(c)||typeof l!="string"&&!Buffer.isBuffer(l))continue;let u=c.toString().toLowerCase();if(n.some(f=>typeof f=="string"?f==u:f.test(u)))continue;let d=`http.${t}.header.${u}`;i===!0||i.some(f=>typeof f=="string"?f==u:f.test(u))?o[d]="REDACTED":o[d]=l.toString()}return o}getRequestMethod(t){return["HEAD","GET","POST","PUT","PATCH","DELETE"].includes(t.toUpperCase())?t.toUpperCase():"_OTHER"}getTracer(){if(!this.provider)return;let t=this.provider.getTracer(this.instrumentationName,this.instrumentationVersion);return t instanceof ml?t:new ml(t)}enable(){this._channelSubs.length>0||(this.subscribe("undici:request:create",this.onRequestCreate.bind(this)),this.subscribe("undici:request:headers",this.onRequestHeaders.bind(this)),this.subscribe("undici:request:trailers",this.onRequestEnd.bind(this)),this.subscribe("undici:request:error",this.onRequestError.bind(this)))}subscribe(t,e){LL.subscribe(t,e);let r=()=>LL.unsubscribe(t,e);this._channelSubs.push({name:t,unsubscribe:r})}disable(){this._channelSubs.forEach(t=>{t.unsubscribe()}),this._channelSubs.length=0}onRequestCreate({request:t}){try{let e=this.getTracer(),r=new URL(t.path,t.origin);if(!e||t.method==="CONNECT"||this.config.skipURLs?.some(i=>typeof i=="string"?r.href.startsWith(i):i.test(r.href)))return;let n=e.startSpan(this.getRequestMethod(t.method),{kind:Mo.CLIENT},tr.active());this.annotateFromRequest(n,t),this._recordFromReq.set(t,n)}catch{}}onRequestHeaders({request:t,response:e}){try{let r=this._recordFromReq.get(t);if(!r)return;this.annotateFromResponse(r,e)}catch{}}onRequestError({request:t,error:e}){try{let r=this._recordFromReq.get(t);if(!r)return;r.recordException(e),r.setStatus({code:li.ERROR,message:e.message}),r.end(),this._recordFromReq.delete(t)}catch{}}onRequestEnd({request:t}){try{let e=this._recordFromReq.get(t);if(!e)return;e.end(),this._recordFromReq.delete(t)}catch{}}};var Fje=In(Mje(),1);var L1=fe("tracing"),Uje=8e3,A2t=5e3,H0=async(t=A2t)=>{try{await Promise.race([hPe(),R2t(t)])}catch(e){L1.warn("Failed to flush tracers on shutdown",e)}},jje=async(t,e,r)=>{if(!Pt()){let n=[new xR.SimpleSpanProcessor(new sQ),new xR.SimpleSpanProcessor(new Fje.OTLPTraceExporter({url:r.exporterUrl}))];await hke({serviceName:"@netlify/agent-runner-cli",serviceVersion:t,deploymentEnvironment:"production",siteUrl:"",siteId:process.env.SITE_ID??"",siteName:e,spanProcessors:n,instrumentations:[new mke({skipHeaders:!0})]})}return r.traceparent?(Pi.setGlobalPropagator(new _d),Pi.extract(tr.active(),{traceparent:r.traceparent,isRemote:!0})):tr.active()};function ir(t,e,r){return L1.log(`\u23F3 TRACE: ${e} starting...`),Kw(t,e,r)}var sQ=class{export(e,r){for(let n of e)this.logSpan(n);r({code:1})}async shutdown(){}forceFlush(){return Promise.resolve()}logSpan(e){let r=(e.endTime[0]-e.startTime[0])*1e3+(e.endTime[1]-e.startTime[1])/1e6,n=e.attributes,i=[];for(let[a,c]of Object.entries(n))a.includes("duration")&&typeof c=="number"?i.push(`${a}=${c.toFixed(2)}ms`):i.push(`${a}=${c}`);let s=e.status?.code===2?"\u274C":"\u2705",o=i.length>0?` [${i.join(", ")}]`:"";L1.log(`${s} TRACE: ${e.name} completed in ${r.toFixed(2)}ms${o}`),e.status?.code===2&&e.status.message&&L1.log(` \u274C Error: ${e.status.message}`)}};function oQ(){return Ze().captureLlmContentEnabled}function zje(t){return t.includes("claude")?"anthropic":t.includes("codex")?"openai":t.includes("gemini")?"google":t.includes("opencode")?"opencode":t}function D1(t,e,r){let n={role:t,parts:[{type:"text",content:Xi(e)}]};return r&&(n.finish_reason=r),JSON.stringify([n])}var x2t=new Set([Q.Task,Q.RunCommand,Q.Explore,Q.FileRead,Q.FileWrite,Q.Notebook,Q.Web,Q.Todo,Q.Skill,Q.Tool,Q.Memorize,Q.Deployment,Q.SiteGeneration]);function qje(t,e,r,n){if(!t.length)return;let i=Pt();if(!i)return;let s=oQ(),o=Math.max(1,(n-r)/t.length);t.forEach((a,c)=>{let l=Math.min(n,r+c*o),u=Math.min(n,l+o),d=a.type==="tool_use"||a.type==="tool_result"||a.category!=null&&x2t.has(a.category),f=d?"execute_tool":"chat",p=a.title||a.type||`step-${a.id??c}`,h=a.category||"unknown",m=d?`${f} ${h}`:f,_=a.message?a.message.length>Uje?`${a.message.slice(0,Uje)}\u2026`:a.message:void 0;i.startSpan(m,{startTime:l,attributes:{"gen_ai.capability.name":e,"gen_ai.step.name":p,"gen_ai.operation.name":f,...d?{"gen_ai.tool.name":h}:{},"spark.step.id":a.id??-1,...a.type?{"spark.step.type":a.type}:{},...a.category?{"spark.step.category":a.category}:{},...a.groupId?{"spark.step.group_id":a.groupId}:{},...a.parentGroupId?{"spark.step.parent_group_id":a.parentGroupId}:{},...s&&_?d?{"gen_ai.tool.call.result":Xi(_)}:{"gen_ai.output.messages":D1("assistant",_)}:{}}}).end(u)})}import{readdir as C2t,rm as P2t}from"fs/promises";import{join as I2t}from"path";async function Bje(t,e=[]){let n=(await C2t(t)).filter(i=>!e.includes(i));await Promise.all(n.map(i=>P2t(I2t(t,i),{recursive:!0,force:!0})))}var O2t=300,Ih=t=>Ze().budgetCreditThresholds[t.mode]?.[t.runner]??O2t,Oh=({mode:t,sessionCreditLimit:e},r)=>t==="create"&&e!=null&&e<=r;var aQ=t=>{let e=Ih(t);if(!Oh(t,e))return"default";let r=Ze();return r.createAskFirstEnabled&&r.questionsEnabled?"ask_first":r.creditWrapUpEnabled?"budget_constrained":"default"},Vje=t=>{let e=aQ(t),r=Ih(t);return{budget_eligible:Oh(t,r),budget_constrained:e==="budget_constrained",ask_first:e==="ask_first"}};var L2t=G0.dirname(N2t(import.meta.url)),Hje=k2t(import.meta.url),D2t=G0.resolve(L2t,"scripts/scaffold.js"),M2t="scripts/scaffold.js",U2t=/"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\S+/g,cQ=t=>{if(t.length>=2){let e=t[0],r=t[t.length-1];if(e==='"'&&r==='"'||e==="'"&&r==="'")return t.slice(1,-1)}return t},F2t=t=>/^[A-Za-z_][A-Za-z0-9_]*=.*/.test(t),j2t=t=>{let e=cQ(t);return e==="node"||e.endsWith("/node")},Fl=t=>{if(typeof t!="string")return!1;let e=t.match(U2t)||[];if(e.length<2)return!1;let r=0;for(;r<e.length&&F2t(cQ(e[r]));)r+=1;if(r>=e.length||!j2t(e[r]))return!1;let n=e[r+1];return n?cQ(n).includes(M2t):!1},Nh=fe("create_stage"),lQ="Do not run local validation or dev-server commands to check your work \u2014 specifically `tsc`, `npx tsc`, `vite build`, `vite dev`, or any equivalent build/start/test command. The build pipeline installs and validates the project automatically after your edits. Verify your changes by reading the files you edited.",z2t=`${lQ}
634
+ if (condition) { yield value; }`)};import{Buffer as lxt}from"buffer";import{StringDecoder as uxt}from"string_decoder";var Xk=(t,e,r)=>{if(r)return;if(t)return{transform:dxt.bind(void 0,new TextEncoder)};let n=new uxt(e);return{transform:fxt.bind(void 0,n),final:pxt.bind(void 0,n)}},dxt=function*(t,e){lxt.isBuffer(e)?yield cl(e):typeof e=="string"?yield t.encode(e):yield e},fxt=function*(t,e){yield sn(e)?t.write(e):e},pxt=function*(t){let e=t.end();e!==""&&(yield e)};import{callbackify as Axe}from"util";var VK=Axe(async(t,e,r,n)=>{e.currentIterable=t(...r);try{for await(let i of e.currentIterable)n.push(i)}finally{delete e.currentIterable}}),Qk=async function*(t,e,r){if(r===e.length){yield t;return}let{transform:n=mxt}=e[r];for await(let i of n(t))yield*Qk(i,e,r+1)},xxe=async function*(t){for(let[e,{final:r}]of Object.entries(t))yield*hxt(r,Number(e),t)},hxt=async function*(t,e,r){if(t!==void 0)for await(let n of t())yield*Qk(n,r,e+1)},Cxe=Axe(async({currentIterable:t},e)=>{if(t!==void 0){await(e?t.throw(e):t.return());return}if(e)throw e}),mxt=function*(t){yield t};var HK=(t,e,r,n)=>{try{for(let i of t(...e))r.push(i);n()}catch(i){n(i)}},Pxe=(t,e)=>[...e.flatMap(r=>[...qp(r,t,0)]),...zw(t)],qp=function*(t,e,r){if(r===e.length){yield t;return}let{transform:n=_xt}=e[r];for(let i of n(t))yield*qp(i,e,r+1)},zw=function*(t){for(let[e,{final:r}]of Object.entries(t))yield*gxt(r,Number(e),t)},gxt=function*(t,e,r){if(t!==void 0)for(let n of t())yield*qp(n,r,e+1)},_xt=function*(t){yield t};var GK=({value:t,value:{transform:e,final:r,writableObjectMode:n,readableObjectMode:i},optionName:s},{encoding:o})=>{let a={},c=Oxe(t,o,s),l=zp(e),u=zp(r),d=l?VK.bind(void 0,Qk,a):HK.bind(void 0,qp),f=l||u?VK.bind(void 0,xxe,a):HK.bind(void 0,zw),p=l||u?Cxe.bind(void 0,a):void 0;return{stream:new yxt({writableObjectMode:n,writableHighWaterMark:Ixe(n),readableObjectMode:i,readableHighWaterMark:Ixe(i),transform(m,_,y){d([m,c,0],this,y)},flush(m){f([c],this,m)},destroy:p})}},e$=(t,e,r,n)=>{let i=e.filter(({type:o})=>o==="generator"),s=n?i.reverse():i;for(let{value:o,optionName:a}of s){let c=Oxe(o,r,a);t=Pxe(c,t)}return t},Oxe=({transform:t,final:e,binary:r,writableObjectMode:n,readableObjectMode:i,preserveNewlines:s},o,a)=>{let c={};return[{transform:Txe(n,a)},Xk(r,o,n),Zk(r,s,n,c),{transform:t,final:e},{transform:wxe(i,a)},bxe({binary:r,preserveNewlines:s,readableObjectMode:i,state:c})].filter(Boolean)};var Nxe=(t,e)=>{for(let r of Sxt(t))Ext(t,r,e)},Sxt=t=>new Set(Object.entries(t).filter(([,{direction:e}])=>e==="input").map(([e])=>Number(e))),Ext=(t,e,r)=>{let{stdioItems:n}=t[e],i=n.filter(({contents:a})=>a!==void 0);if(i.length===0)return;if(e!==0){let[{type:a,optionName:c}]=i;throw new TypeError(`Only the \`stdin\` option, not \`${c}\`, can be ${pd[a]} with synchronous methods.`)}let o=i.map(({contents:a})=>a).map(a=>vxt(a,n));r.input=Ow(o)},vxt=(t,e)=>{let r=e$(t,e,"utf8",!0);return bxt(r),Ow(r)},bxt=t=>{let e=t.find(r=>typeof r!="string"&&!sn(r));if(e!==void 0)throw new TypeError(`The \`stdin\` option is invalid: when passing objects as input, a transform must be used to serialize them to strings or Uint8Arrays: ${e}.`)};import{writeFileSync as Axt,appendFileSync as xxt}from"fs";var t$=({stdioItems:t,encoding:e,verboseInfo:r,fdNumber:n})=>n!=="all"&&Z_(r,n)&&!ys.has(e)&&Txt(n)&&(t.some(({type:i,value:s})=>i==="native"&&wxt.has(s))||t.every(({type:i})=>to.has(i))),Txt=t=>t===1||t===2,wxt=new Set(["pipe","overlapped"]),kxe=async(t,e,r,n)=>{for await(let i of t)Rxt(e)||Lxe(i,r,n)},$xe=(t,e,r)=>{for(let n of t)Lxe(n,e,r)},Rxt=t=>t._readableState.pipes.length>0,Lxe=(t,e,r)=>{let n=mk(t);La({type:"output",verboseMessage:n,fdNumber:e,verboseInfo:r})};var Dxe=({fileDescriptors:t,syncResult:{output:e},options:r,isMaxBuffer:n,verboseInfo:i})=>{if(e===null)return{output:Array.from({length:3})};let s={},o=new Set([]);return{output:e.map((c,l)=>Cxt({result:c,fileDescriptors:t,fdNumber:l,state:s,outputFiles:o,isMaxBuffer:n,verboseInfo:i},r)),...s}},Cxt=({result:t,fileDescriptors:e,fdNumber:r,state:n,outputFiles:i,isMaxBuffer:s,verboseInfo:o},{buffer:a,encoding:c,lines:l,stripFinalNewline:u,maxBuffer:d})=>{if(t===null)return;let f=MAe(t,s,d),p=cl(f),{stdioItems:h,objectMode:m}=e[r],_=Pxt([p],h,c,n),{serializedResult:y,finalResult:E=y}=Ixt({chunks:_,objectMode:m,encoding:c,lines:l,stripFinalNewline:u,fdNumber:r});Oxt({serializedResult:y,fdNumber:r,state:n,verboseInfo:o,encoding:c,stdioItems:h,objectMode:m});let S=a[r]?E:void 0;try{return n.error===void 0&&Nxt(y,h,i),S}catch(g){return n.error=g,S}},Pxt=(t,e,r,n)=>{try{return e$(t,e,r,!1)}catch(i){return n.error=i,t}},Ixt=({chunks:t,objectMode:e,encoding:r,lines:n,stripFinalNewline:i,fdNumber:s})=>{if(e)return{serializedResult:t};if(r==="buffer")return{serializedResult:Ow(t)};let o=Zwe(t,r);return n[s]?{serializedResult:o,finalResult:BK(o,!i[s],e)}:{serializedResult:o}},Oxt=({serializedResult:t,fdNumber:e,state:r,verboseInfo:n,encoding:i,stdioItems:s,objectMode:o})=>{if(!t$({stdioItems:s,encoding:i,verboseInfo:n,fdNumber:e}))return;let a=BK(t,!1,o);try{$xe(a,e,n)}catch(c){r.error??=c}},Nxt=(t,e,r)=>{for(let{path:n,append:i}of e.filter(({type:s})=>Kk.has(s))){let s=typeof n=="string"?n:n.toString();i||r.has(s)?xxt(n,t):(r.add(s),Axt(n,t))}};var Mxe=([,t,e],r)=>{if(r.all)return t===void 0?e:e===void 0?t:Array.isArray(t)?Array.isArray(e)?[...t,...e]:[...t,dl(e,r,"all")]:Array.isArray(e)?[dl(t,r,"all"),...e]:sn(t)&&sn(e)?XY([t,e]):`${t}${e}`};import{once as WK}from"events";var Uxe=async(t,e)=>{let[r,n]=await kxt(t);return e.isForcefullyTerminated??=!1,[r,n]},kxt=async t=>{let[e,r]=await Promise.allSettled([WK(t,"spawn"),WK(t,"exit")]);return e.status==="rejected"?[]:r.status==="rejected"?Fxe(t):r.value},Fxe=async t=>{try{return await WK(t,"exit")}catch{return Fxe(t)}},jxe=async t=>{let[e,r]=await t;if(!$xt(e,r)&&YK(e,r))throw new $o;return[e,r]},$xt=(t,e)=>t===void 0&&e===void 0,YK=(t,e)=>t!==0||e!==null;var zxe=({error:t,status:e,signal:r,output:n},{maxBuffer:i})=>{let s=Lxt(t,e,r),o=s?.code==="ETIMEDOUT",a=DAe(s,n,i);return{resultError:s,exitCode:e,signal:r,timedOut:o,isMaxBuffer:a}},Lxt=(t,e,r)=>t!==void 0?t:YK(e,r)?new $o:void 0;var qxe=(t,e,r)=>{let{file:n,commandArguments:i,command:s,escapedCommand:o,startTime:a,verboseInfo:c,options:l,fileDescriptors:u}=Mxt(t,e,r),d=jxt({file:n,commandArguments:i,options:l,command:s,escapedCommand:o,verboseInfo:c,fileDescriptors:u,startTime:a});return ay(d,c,l)},Mxt=(t,e,r)=>{let{command:n,escapedCommand:i,startTime:s,verboseInfo:o}=_k(t,e,r),a=Uxt(r),{file:c,commandArguments:l,options:u}=Mk(t,e,a);Fxt(u);let d=yxe(u,o);return{file:c,commandArguments:l,command:n,escapedCommand:i,startTime:s,verboseInfo:o,options:u,fileDescriptors:d}},Uxt=t=>t.node&&!t.ipc?{...t,ipc:!1}:t,Fxt=({ipc:t,ipcInput:e,detached:r,cancelSignal:n})=>{e&&r$("ipcInput"),t&&r$("ipc: true"),r&&r$("detached: true"),n&&r$("cancelSignal")},r$=t=>{throw new TypeError(`The "${t}" option cannot be used with synchronous methods.`)},jxt=({file:t,commandArguments:e,options:r,command:n,escapedCommand:i,verboseInfo:s,fileDescriptors:o,startTime:a})=>{let c=zxt({file:t,commandArguments:e,options:r,command:n,escapedCommand:i,fileDescriptors:o,startTime:a});if(c.failed)return c;let{resultError:l,exitCode:u,signal:d,timedOut:f,isMaxBuffer:p}=zxe(c,r),{output:h,error:m=l}=Dxe({fileDescriptors:o,syncResult:c,options:r,isMaxBuffer:p,verboseInfo:s}),_=h.map((E,S)=>dl(E,r,S)),y=dl(Mxe(h,r),r,"all");return Bxt({error:m,exitCode:u,signal:d,timedOut:f,isMaxBuffer:p,stdio:_,all:y,options:r,command:n,escapedCommand:i,startTime:a})},zxt=({file:t,commandArguments:e,options:r,command:n,escapedCommand:i,fileDescriptors:s,startTime:o})=>{try{Nxe(s,r);let a=qxt(r);return Dxt(...Uk(t,e,a))}catch(a){return oy({error:a,command:n,escapedCommand:i,fileDescriptors:s,options:r,startTime:o,isSync:!0})}},qxt=({encoding:t,maxBuffer:e,...r})=>({...r,encoding:"buffer",maxBuffer:Hk(e)}),Bxt=({error:t,exitCode:e,signal:r,timedOut:n,isMaxBuffer:i,stdio:s,all:o,options:a,command:c,escapedCommand:l,startTime:u})=>t===void 0?Gk({command:c,escapedCommand:l,stdio:s,all:o,ipcOutput:[],options:a,startTime:u}):jw({error:t,command:c,escapedCommand:l,timedOut:n,isCanceled:!1,isGracefullyCanceled:!1,isMaxBuffer:i,isForcefullyTerminated:!1,exitCode:e,signal:r,stdio:s,all:o,ipcOutput:[],options:a,startTime:u,isSync:!0});import{setMaxListeners as IPt}from"events";import{spawn as OPt}from"child_process";import Wxe from"process";import{once as KK,on as Vxt}from"events";var Bxe=({anyProcess:t,channel:e,isSubprocess:r,ipc:n},{reference:i=!0,filter:s}={})=>(ey({methodName:"getOneMessage",isSubprocess:r,ipc:n,isConnected:Ok(t)}),Hxt({anyProcess:t,channel:e,isSubprocess:r,filter:s,reference:i})),Hxt=async({anyProcess:t,channel:e,isSubprocess:r,filter:n,reference:i})=>{xk(e,i);let s=fd(t,e,r),o=new AbortController;try{return await Promise.race([Gxt(s,n,o),Wxt(s,r,o),Yxt(s,r,o)])}catch(a){throw ty(t),a}finally{o.abort(),Ck(e,i)}},Gxt=async(t,e,{signal:r})=>{if(e===void 0){let[n]=await KK(t,"message",{signal:r});return n}for await(let[n]of Vxt(t,"message",{signal:r}))if(e(n))return n},Wxt=async(t,e,{signal:r})=>{await KK(t,"disconnect",{signal:r}),P0e(e)},Yxt=async(t,e,{signal:r})=>{let[n]=await KK(t,"strict:error",{signal:r});throw wk(n,e)};import{once as Hxe,on as Kxt}from"events";var Gxe=({anyProcess:t,channel:e,isSubprocess:r,ipc:n},{reference:i=!0}={})=>JK({anyProcess:t,channel:e,isSubprocess:r,ipc:n,shouldAwait:!r,reference:i}),JK=({anyProcess:t,channel:e,isSubprocess:r,ipc:n,shouldAwait:i,reference:s})=>{ey({methodName:"getEachMessage",isSubprocess:r,ipc:n,isConnected:Ok(t)}),xk(e,s);let o=fd(t,e,r),a=new AbortController,c={};return Jxt(t,o,a),Zxt({ipcEmitter:o,isSubprocess:r,controller:a,state:c}),Xxt({anyProcess:t,channel:e,ipcEmitter:o,isSubprocess:r,shouldAwait:i,controller:a,state:c,reference:s})},Jxt=async(t,e,r)=>{try{await Hxe(e,"disconnect",{signal:r.signal}),r.abort()}catch{}},Zxt=async({ipcEmitter:t,isSubprocess:e,controller:r,state:n})=>{try{let[i]=await Hxe(t,"strict:error",{signal:r.signal});n.error=wk(i,e),r.abort()}catch{}},Xxt=async function*({anyProcess:t,channel:e,ipcEmitter:r,isSubprocess:n,shouldAwait:i,controller:s,state:o,reference:a}){try{for await(let[c]of Kxt(r,"message",{signal:s.signal}))Vxe(o),yield c}catch{Vxe(o)}finally{s.abort(),Ck(e,a),n||ty(t),i&&await t}},Vxe=({error:t})=>{if(t)throw t};var Yxe=(t,{ipc:e})=>{Object.assign(t,Jxe(t,!1,e))},Kxe=()=>{let t=Wxe,e=!0,r=Wxe.channel!==void 0;return{...Jxe(t,e,r),getCancelSignal:rAe.bind(void 0,{anyProcess:t,channel:t.channel,isSubprocess:e,ipc:r})}},Jxe=(t,e,r)=>({sendMessage:Lk.bind(void 0,{anyProcess:t,channel:t.channel,isSubprocess:e,ipc:r}),getOneMessage:Bxe.bind(void 0,{anyProcess:t,channel:t.channel,isSubprocess:e,ipc:r}),getEachMessage:Gxe.bind(void 0,{anyProcess:t,channel:t.channel,isSubprocess:e,ipc:r})});import{ChildProcess as Qxt}from"child_process";import{PassThrough as eCt,Readable as tCt,Writable as rCt,Duplex as nCt}from"stream";var Zxe=({error:t,command:e,escapedCommand:r,fileDescriptors:n,options:i,startTime:s,verboseInfo:o})=>{jK(n);let a=new Qxt;iCt(a,n),Object.assign(a,{readable:sCt,writable:oCt,duplex:aCt});let c=oy({error:t,command:e,escapedCommand:r,fileDescriptors:n,options:i,startTime:s,isSync:!1}),l=cCt(c,o,i);return{subprocess:a,promise:l}},iCt=(t,e)=>{let r=qw(),n=qw(),i=qw(),s=Array.from({length:e.length-3},qw),o=qw(),a=[r,n,i,...s];Object.assign(t,{stdin:r,stdout:n,stderr:i,all:o,stdio:a})},qw=()=>{let t=new eCt;return t.end(),t},sCt=()=>new tCt({read(){}}),oCt=()=>new rCt({write(){}}),aCt=()=>new nCt({read(){},write(){}}),cCt=async(t,e,r)=>ay(t,e,r);import{createReadStream as Xxe,createWriteStream as Qxe}from"fs";import{Buffer as lCt}from"buffer";import{Readable as Bw,Writable as uCt,Duplex as dCt}from"stream";var tCe=(t,e)=>Jk(fCt,t,e,!1),Vw=({type:t,optionName:e})=>{throw new TypeError(`The \`${e}\` option cannot be ${pd[t]}.`)},eCe={fileNumber:Vw,generator:GK,asyncGenerator:GK,nodeStream:({value:t})=>({stream:t}),webTransform({value:{transform:t,writableObjectMode:e,readableObjectMode:r}}){let n=e||r;return{stream:dCt.fromWeb(t,{objectMode:n})}},duplex:({value:{transform:t}})=>({stream:t}),native(){}},fCt={input:{...eCe,fileUrl:({value:t})=>({stream:Xxe(t)}),filePath:({value:{file:t}})=>({stream:Xxe(t)}),webStream:({value:t})=>({stream:Bw.fromWeb(t)}),iterable:({value:t})=>({stream:Bw.from(t)}),asyncIterable:({value:t})=>({stream:Bw.from(t)}),string:({value:t})=>({stream:Bw.from(t)}),uint8Array:({value:t})=>({stream:Bw.from(lCt.from(t))})},output:{...eCe,fileUrl:({value:t})=>({stream:Qxe(t)}),filePath:({value:{file:t,append:e}})=>({stream:Qxe(t,e?{flags:"a"}:{})}),webStream:({value:t})=>({stream:uCt.fromWeb(t)}),iterable:Vw,asyncIterable:Vw,string:Vw,uint8Array:Vw}};import{on as pCt,once as rCe}from"events";import{PassThrough as hCt,getDefaultHighWaterMark as mCt}from"stream";import{finished as sCe}from"stream/promises";function Bp(t){if(!Array.isArray(t))throw new TypeError(`Expected an array, got \`${typeof t}\`.`);for(let i of t)XK(i);let e=t.some(({readableObjectMode:i})=>i),r=gCt(t,e),n=new ZK({objectMode:e,writableHighWaterMark:r,readableHighWaterMark:r});for(let i of t)n.add(i);return n}var gCt=(t,e)=>{if(t.length===0)return mCt(e);let r=t.filter(({readableObjectMode:n})=>n===e).map(({readableHighWaterMark:n})=>n);return Math.max(...r)},ZK=class extends hCt{#e=new Set([]);#r=new Set([]);#t=new Set([]);#n;#s=Symbol("unpipe");#i=new WeakMap;add(e){if(XK(e),this.#e.has(e))return;this.#e.add(e),this.#n??=_Ct(this,this.#e,this.#s);let r=ECt({passThroughStream:this,stream:e,streams:this.#e,ended:this.#r,aborted:this.#t,onFinished:this.#n,unpipeEvent:this.#s});this.#i.set(e,r),e.pipe(this,{end:!1})}async remove(e){if(XK(e),!this.#e.has(e))return!1;let r=this.#i.get(e);return r===void 0?!1:(this.#i.delete(e),e.unpipe(this),await r,!0)}},_Ct=async(t,e,r)=>{n$(t,nCe);let n=new AbortController;try{await Promise.race([yCt(t,n),SCt(t,e,r,n)])}finally{n.abort(),n$(t,-nCe)}},yCt=async(t,{signal:e})=>{try{await sCe(t,{signal:e,cleanup:!0})}catch(r){throw oCe(t,r),r}},SCt=async(t,e,r,{signal:n})=>{for await(let[i]of pCt(t,"unpipe",{signal:n}))e.has(i)&&i.emit(r)},XK=t=>{if(typeof t?.pipe!="function")throw new TypeError(`Expected a readable stream, got: \`${typeof t}\`.`)},ECt=async({passThroughStream:t,stream:e,streams:r,ended:n,aborted:i,onFinished:s,unpipeEvent:o})=>{n$(t,iCe);let a=new AbortController;try{await Promise.race([vCt(s,e,a),bCt({passThroughStream:t,stream:e,streams:r,ended:n,aborted:i,controller:a}),TCt({stream:e,streams:r,ended:n,aborted:i,unpipeEvent:o,controller:a})])}finally{a.abort(),n$(t,-iCe)}r.size>0&&r.size===n.size+i.size&&(n.size===0&&i.size>0?QK(t):wCt(t))},vCt=async(t,e,{signal:r})=>{try{await t,r.aborted||QK(e)}catch(n){r.aborted||oCe(e,n)}},bCt=async({passThroughStream:t,stream:e,streams:r,ended:n,aborted:i,controller:{signal:s}})=>{try{await sCe(e,{signal:s,cleanup:!0,readable:!0,writable:!1}),r.has(e)&&n.add(e)}catch(o){if(s.aborted||!r.has(e))return;aCe(o)?i.add(e):cCe(t,o)}},TCt=async({stream:t,streams:e,ended:r,aborted:n,unpipeEvent:i,controller:{signal:s}})=>{if(await rCe(t,i,{signal:s}),!t.readable)return rCe(s,"abort",{signal:s});e.delete(t),r.delete(t),n.delete(t)},wCt=t=>{t.writable&&t.end()},oCe=(t,e)=>{aCe(e)?QK(t):cCe(t,e)},aCe=t=>t?.code==="ERR_STREAM_PREMATURE_CLOSE",QK=t=>{(t.readable||t.writable)&&t.destroy()},cCe=(t,e)=>{t.destroyed||(t.once("error",RCt),t.destroy(e))},RCt=()=>{},n$=(t,e)=>{let r=t.getMaxListeners();r!==0&&r!==Number.POSITIVE_INFINITY&&t.setMaxListeners(r+e)},nCe=2,iCe=1;import{finished as lCe}from"stream/promises";var ly=(t,e)=>{t.pipe(e),ACt(t,e),xCt(t,e)},ACt=async(t,e)=>{if(!(ko(t)||ko(e))){try{await lCe(t,{cleanup:!0,readable:!0,writable:!1})}catch{}e5(e)}},e5=t=>{t.writable&&t.end()},xCt=async(t,e)=>{if(!(ko(t)||ko(e))){try{await lCe(e,{cleanup:!0,readable:!1,writable:!0})}catch{}t5(t)}},t5=t=>{t.readable&&t.destroy()};var uCe=(t,e,r)=>{let n=new Map;for(let[i,{stdioItems:s,direction:o}]of Object.entries(e)){for(let{stream:a}of s.filter(({type:c})=>to.has(c)))CCt(t,a,o,i);for(let{stream:a}of s.filter(({type:c})=>!to.has(c)))ICt({subprocess:t,stream:a,direction:o,fdNumber:i,pipeGroups:n,controller:r})}for(let[i,s]of n.entries()){let o=s.length===1?s[0]:Bp(s);ly(o,i)}},CCt=(t,e,r,n)=>{r==="output"?ly(t.stdio[n],e):ly(e,t.stdio[n]);let i=PCt[n];i!==void 0&&(t[i]=e),t.stdio[n]=e},PCt=["stdin","stdout","stderr"],ICt=({subprocess:t,stream:e,direction:r,fdNumber:n,pipeGroups:i,controller:s})=>{if(e===void 0)return;OCt(e,s);let[o,a]=r==="output"?[e,t.stdio[n]]:[t.stdio[n],e],c=i.get(o)??[];i.set(o,[...c,a])},OCt=(t,{signal:e})=>{ko(t)&&Fp(t,NCt,e)},NCt=2;import{addAbortListener as LCt}from"events";var Vp=[];Vp.push("SIGHUP","SIGINT","SIGTERM");process.platform!=="win32"&&Vp.push("SIGALRM","SIGABRT","SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");process.platform==="linux"&&Vp.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT");var i$=t=>!!t&&typeof t=="object"&&typeof t.removeListener=="function"&&typeof t.emit=="function"&&typeof t.reallyExit=="function"&&typeof t.listeners=="function"&&typeof t.kill=="function"&&typeof t.pid=="number"&&typeof t.on=="function",r5=Symbol.for("signal-exit emitter"),n5=globalThis,kCt=Object.defineProperty.bind(Object),i5=class{emitted={afterExit:!1,exit:!1};listeners={afterExit:[],exit:[]};count=0;id=Math.random();constructor(){if(n5[r5])return n5[r5];kCt(n5,r5,{value:this,writable:!1,enumerable:!1,configurable:!1})}on(e,r){this.listeners[e].push(r)}removeListener(e,r){let n=this.listeners[e],i=n.indexOf(r);i!==-1&&(i===0&&n.length===1?n.length=0:n.splice(i,1))}emit(e,r,n){if(this.emitted[e])return!1;this.emitted[e]=!0;let i=!1;for(let s of this.listeners[e])i=s(r,n)===!0||i;return e==="exit"&&(i=this.emit("afterExit",r,n)||i),i}},s$=class{},$Ct=t=>({onExit(e,r){return t.onExit(e,r)},load(){return t.load()},unload(){return t.unload()}}),s5=class extends s${onExit(){return()=>{}}load(){}unload(){}},o5=class extends s${#e=a5.platform==="win32"?"SIGINT":"SIGHUP";#r=new i5;#t;#n;#s;#i={};#o=!1;constructor(e){super(),this.#t=e,this.#i={};for(let r of Vp)this.#i[r]=()=>{let n=this.#t.listeners(r),{count:i}=this.#r,s=e;if(typeof s.__signal_exit_emitter__=="object"&&typeof s.__signal_exit_emitter__.count=="number"&&(i+=s.__signal_exit_emitter__.count),n.length===i){this.unload();let o=this.#r.emit("exit",null,r),a=r==="SIGHUP"?this.#e:r;o||e.kill(e.pid,a)}};this.#s=e.reallyExit,this.#n=e.emit}onExit(e,r){if(!i$(this.#t))return()=>{};this.#o===!1&&this.load();let n=r?.alwaysLast?"afterExit":"exit";return this.#r.on(n,e),()=>{this.#r.removeListener(n,e),this.#r.listeners.exit.length===0&&this.#r.listeners.afterExit.length===0&&this.unload()}}load(){if(!this.#o){this.#o=!0,this.#r.count+=1;for(let e of Vp)try{let r=this.#i[e];r&&this.#t.on(e,r)}catch{}this.#t.emit=(e,...r)=>this.#c(e,...r),this.#t.reallyExit=e=>this.#a(e)}}unload(){this.#o&&(this.#o=!1,Vp.forEach(e=>{let r=this.#i[e];if(!r)throw new Error("Listener not defined for signal: "+e);try{this.#t.removeListener(e,r)}catch{}}),this.#t.emit=this.#n,this.#t.reallyExit=this.#s,this.#r.count-=1)}#a(e){return i$(this.#t)?(this.#t.exitCode=e||0,this.#r.emit("exit",this.#t.exitCode,null),this.#s.call(this.#t,this.#t.exitCode)):0}#c(e,...r){let n=this.#n;if(e==="exit"&&i$(this.#t)){typeof r[0]=="number"&&(this.#t.exitCode=r[0]);let i=n.call(this.#t,e,...r);return this.#r.emit("exit",this.#t.exitCode,null),i}else return n.call(this.#t,e,...r)}},a5=globalThis.process,{onExit:dCe,load:Cwr,unload:Pwr}=$Ct(i$(a5)?new o5(a5):new s5);var fCe=(t,{cleanup:e,detached:r},{signal:n})=>{if(!e||r)return;let i=dCe(()=>{t.kill()});LCt(n,()=>{i()})};var hCe=({source:t,sourcePromise:e,boundOptions:r,createNested:n},...i)=>{let s=gk(),{destination:o,destinationStream:a,destinationError:c,from:l,unpipeSignal:u}=DCt(r,n,i),{sourceStream:d,sourceError:f}=UCt(t,l),{options:p,fileDescriptors:h}=Ma.get(t);return{sourcePromise:e,sourceStream:d,sourceOptions:p,sourceError:f,destination:o,destinationStream:a,destinationError:c,unpipeSignal:u,fileDescriptors:h,startTime:s}},DCt=(t,e,r)=>{try{let{destination:n,pipeOptions:{from:i,to:s,unpipeSignal:o}={}}=MCt(t,e,...r),a=Ak(n,s);return{destination:n,destinationStream:a,from:i,unpipeSignal:o}}catch(n){return{destinationError:n}}},MCt=(t,e,r,...n)=>{if(Array.isArray(r))return{destination:e(pCe,t)(r,...n),pipeOptions:t};if(typeof r=="string"||r instanceof URL||JY(r)){if(Object.keys(t).length>0)throw new TypeError('Please use .pipe("file", ..., options) or .pipe(execa("file", ..., options)) instead of .pipe(options)("file", ...).');let[i,s,o]=ok(r,...n);return{destination:e(pCe)(i,s,o),pipeOptions:o}}if(Ma.has(r)){if(Object.keys(t).length>0)throw new TypeError("Please use .pipe(options)`command` or .pipe($(options)`command`) instead of .pipe(options)($`command`).");return{destination:r,pipeOptions:n[0]}}throw new TypeError(`The first argument must be a template string, an options object, or an Execa subprocess: ${r}`)},pCe=({options:t})=>({options:{...t,stdin:"pipe",piped:!0}}),UCt=(t,e)=>{try{return{sourceStream:ry(t,e)}}catch(r){return{sourceError:r}}};var gCe=({sourceStream:t,sourceError:e,destinationStream:r,destinationError:n,fileDescriptors:i,sourceOptions:s,startTime:o})=>{let a=FCt({sourceStream:t,sourceError:e,destinationStream:r,destinationError:n});if(a!==void 0)throw c5({error:a,fileDescriptors:i,sourceOptions:s,startTime:o})},FCt=({sourceStream:t,sourceError:e,destinationStream:r,destinationError:n})=>{if(e!==void 0&&n!==void 0)return n;if(n!==void 0)return t5(t),n;if(e!==void 0)return e5(r),e},c5=({error:t,fileDescriptors:e,sourceOptions:r,startTime:n})=>oy({error:t,command:mCe,escapedCommand:mCe,fileDescriptors:e,options:r,startTime:n,isSync:!1}),mCe="source.pipe(destination)";var _Ce=async t=>{let[{status:e,reason:r,value:n=r},{status:i,reason:s,value:o=s}]=await t;if(o.pipedFrom.includes(n)||o.pipedFrom.push(n),i==="rejected")throw o;if(e==="rejected")throw n;return o};import{finished as jCt}from"stream/promises";var yCe=(t,e,r)=>{let n=o$.has(e)?qCt(t,e):zCt(t,e);return Fp(t,VCt,r.signal),Fp(e,HCt,r.signal),BCt(e),n},zCt=(t,e)=>{let r=Bp([t]);return ly(r,e),o$.set(e,r),r},qCt=(t,e)=>{let r=o$.get(e);return r.add(t),r},BCt=async t=>{try{await jCt(t,{cleanup:!0,readable:!1,writable:!0})}catch{}o$.delete(t)},o$=new WeakMap,VCt=2,HCt=1;import{aborted as GCt}from"util";var SCe=(t,e)=>t===void 0?[]:[WCt(t,e)],WCt=async(t,{sourceStream:e,mergedStream:r,fileDescriptors:n,sourceOptions:i,startTime:s})=>{await GCt(t,e),await r.remove(e);let o=new Error("Pipe canceled by `unpipeSignal` option.");throw c5({error:o,fileDescriptors:n,sourceOptions:i,startTime:s})};var a$=(t,...e)=>{if(Fr(e[0]))return a$.bind(void 0,{...t,boundOptions:{...t.boundOptions,...e[0]}});let{destination:r,...n}=hCe(t,...e),i=YCt({...n,destination:r});return i.pipe=a$.bind(void 0,{...t,source:r,sourcePromise:i,boundOptions:{}}),i},YCt=async({sourcePromise:t,sourceStream:e,sourceOptions:r,sourceError:n,destination:i,destinationStream:s,destinationError:o,unpipeSignal:a,fileDescriptors:c,startTime:l})=>{let u=KCt(t,i);gCe({sourceStream:e,sourceError:n,destinationStream:s,destinationError:o,fileDescriptors:c,sourceOptions:r,startTime:l});let d=new AbortController;try{let f=yCe(e,s,d);return await Promise.race([_Ce(u),...SCe(a,{sourceStream:e,mergedStream:f,sourceOptions:r,fileDescriptors:c,startTime:l})])}finally{d.abort()}},KCt=(t,e)=>Promise.allSettled([t,e]);import{setImmediate as rPt}from"timers/promises";import{on as JCt}from"events";import{getDefaultHighWaterMark as ZCt}from"stream";var c$=({subprocessStdout:t,subprocess:e,binary:r,shouldEncode:n,encoding:i,preserveNewlines:s})=>{let o=new AbortController;return XCt(e,o),vCe({stream:t,controller:o,binary:r,shouldEncode:!t.readableObjectMode&&n,encoding:i,shouldSplit:!t.readableObjectMode,preserveNewlines:s})},XCt=async(t,e)=>{try{await t}catch{}finally{e.abort()}},l5=({stream:t,onStreamEnd:e,lines:r,encoding:n,stripFinalNewline:i,allMixed:s})=>{let o=new AbortController;QCt(e,o,t);let a=t.readableObjectMode&&!s;return vCe({stream:t,controller:o,binary:n==="buffer",shouldEncode:!a,encoding:n,shouldSplit:!a&&r,preserveNewlines:!i})},QCt=async(t,e,r)=>{try{await t}catch{r.destroy()}finally{e.abort()}},vCe=({stream:t,controller:e,binary:r,shouldEncode:n,encoding:i,shouldSplit:s,preserveNewlines:o})=>{let a=JCt(t,"data",{signal:e.signal,highWaterMark:ECe,highWatermark:ECe});return ePt({onStdoutChunk:a,controller:e,binary:r,shouldEncode:n,encoding:i,shouldSplit:s,preserveNewlines:o})},u5=ZCt(!0),ECe=u5,ePt=async function*({onStdoutChunk:t,controller:e,binary:r,shouldEncode:n,encoding:i,shouldSplit:s,preserveNewlines:o}){let a=tPt({binary:r,shouldEncode:n,encoding:i,shouldSplit:s,preserveNewlines:o});try{for await(let[c]of t)yield*qp(c,a,0)}catch(c){if(!e.signal.aborted)throw c}finally{yield*zw(a)}},tPt=({binary:t,shouldEncode:e,encoding:r,shouldSplit:n,preserveNewlines:i})=>[Xk(t,r,!e),Zk(t,i,!n,{})].filter(Boolean);var bCe=async({stream:t,onStreamEnd:e,fdNumber:r,encoding:n,buffer:i,maxBuffer:s,lines:o,allMixed:a,stripFinalNewline:c,verboseInfo:l,streamInfo:u})=>{let d=nPt({stream:t,onStreamEnd:e,fdNumber:r,encoding:n,allMixed:a,verboseInfo:l,streamInfo:u});if(!i){await Promise.all([iPt(t),d]);return}let f=zK(c,r),p=l5({stream:t,onStreamEnd:e,lines:o,encoding:n,stripFinalNewline:f,allMixed:a}),[h]=await Promise.all([sPt({stream:t,iterable:p,fdNumber:r,encoding:n,maxBuffer:s,lines:o}),d]);return h},nPt=async({stream:t,onStreamEnd:e,fdNumber:r,encoding:n,allMixed:i,verboseInfo:s,streamInfo:{fileDescriptors:o}})=>{if(!t$({stdioItems:o[r]?.stdioItems,encoding:n,verboseInfo:s,fdNumber:r}))return;let a=l5({stream:t,onStreamEnd:e,lines:!0,encoding:n,stripFinalNewline:!0,allMixed:i});await kxe(a,t,r,s)},iPt=async t=>{await rPt(),t.readableFlowing===null&&t.resume()},sPt=async({stream:t,stream:{readableObjectMode:e},iterable:r,fdNumber:n,encoding:i,maxBuffer:s,lines:o})=>{try{return e||o?await qk(r,{maxBuffer:s}):i==="buffer"?new Uint8Array(await Bk(r,{maxBuffer:s})):await sy(r,{maxBuffer:s})}catch(a){return TCe(kAe({error:a,stream:t,readableObjectMode:e,lines:o,encoding:i,fdNumber:n}))}},d5=async t=>{try{return await t}catch(e){return TCe(e)}},TCe=({bufferedData:t})=>Kwe(t)?new Uint8Array(t):t;import{finished as oPt}from"stream/promises";var Hw=async(t,e,r,{isSameDirection:n,stopOnExit:i=!1}={})=>{let s=aPt(t,r),o=new AbortController;try{await Promise.race([...i?[r.exitPromise]:[],oPt(t,{cleanup:!0,signal:o.signal})])}catch(a){s.stdinCleanedUp||uPt(a,e,r,n)}finally{o.abort()}},aPt=(t,{originalStreams:[e],subprocess:r})=>{let n={stdinCleanedUp:!1};return t===e&&cPt(t,r,n),n},cPt=(t,e,r)=>{let{_destroy:n}=t;t._destroy=(...i)=>{lPt(e,r),n.call(t,...i)}},lPt=({exitCode:t,signalCode:e},r)=>{(t!==null||e!==null)&&(r.stdinCleanedUp=!0)},uPt=(t,e,r,n)=>{if(!dPt(t,e,r,n))throw t},dPt=(t,e,r,n=!0)=>r.propagating?wCe(t)||l$(t):(r.propagating=!0,f5(r,e)===n?wCe(t):l$(t)),f5=({fileDescriptors:t},e)=>e!=="all"&&t[e].direction==="input",l$=t=>t?.code==="ERR_STREAM_PREMATURE_CLOSE",wCe=t=>t?.code==="EPIPE";var RCe=({subprocess:t,encoding:e,buffer:r,maxBuffer:n,lines:i,stripFinalNewline:s,verboseInfo:o,streamInfo:a})=>t.stdio.map((c,l)=>p5({stream:c,fdNumber:l,encoding:e,buffer:r[l],maxBuffer:n[l],lines:i[l],allMixed:!1,stripFinalNewline:s,verboseInfo:o,streamInfo:a})),p5=async({stream:t,fdNumber:e,encoding:r,buffer:n,maxBuffer:i,lines:s,allMixed:o,stripFinalNewline:a,verboseInfo:c,streamInfo:l})=>{if(!t)return;let u=Hw(t,e,l);if(f5(l,e)){await u;return}let[d]=await Promise.all([bCe({stream:t,onStreamEnd:u,fdNumber:e,encoding:r,buffer:n,maxBuffer:i,lines:s,allMixed:o,stripFinalNewline:a,verboseInfo:c,streamInfo:l}),u]);return d};var ACe=({stdout:t,stderr:e},{all:r})=>r&&(t||e)?Bp([t,e].filter(Boolean)):void 0,xCe=({subprocess:t,encoding:e,buffer:r,maxBuffer:n,lines:i,stripFinalNewline:s,verboseInfo:o,streamInfo:a})=>p5({...fPt(t,r),fdNumber:"all",encoding:e,maxBuffer:n[1]+n[2],lines:i[1]||i[2],allMixed:pPt(t),stripFinalNewline:s,verboseInfo:o,streamInfo:a}),fPt=({stdout:t,stderr:e,all:r},[,n,i])=>{let s=n||i;return s?n?i?{stream:r,buffer:s}:{stream:t,buffer:s}:{stream:e,buffer:s}:{stream:r,buffer:s}},pPt=({all:t,stdout:e,stderr:r})=>t&&e&&r&&e.readableObjectMode!==r.readableObjectMode;import{once as hPt}from"events";var CCe=t=>Z_(t,"ipc"),PCe=(t,e)=>{let r=mk(t);La({type:"ipc",verboseMessage:r,fdNumber:"ipc",verboseInfo:e})};var ICe=async({subprocess:t,buffer:e,maxBuffer:r,ipc:n,ipcOutput:i,verboseInfo:s})=>{if(!n)return i;let o=CCe(s),a=ll(e,"ipc"),c=ll(r,"ipc");for await(let l of JK({anyProcess:t,channel:t.channel,isSubprocess:!1,ipc:n,shouldAwait:!1,reference:!0}))a&&($Ae(t,i,c),i.push(l)),o&&PCe(l,s);return i},OCe=async(t,e)=>(await Promise.allSettled([t]),e);var NCe=async({subprocess:t,options:{encoding:e,buffer:r,maxBuffer:n,lines:i,timeoutDuration:s,cancelSignal:o,gracefulCancel:a,forceKillAfterDelay:c,stripFinalNewline:l,ipc:u,ipcInput:d},context:f,verboseInfo:p,fileDescriptors:h,originalStreams:m,onInternalError:_,controller:y})=>{let E=Uxe(t,f),S={originalStreams:m,fileDescriptors:h,subprocess:t,exitPromise:E,propagating:!1},g=RCe({subprocess:t,encoding:e,buffer:r,maxBuffer:n,lines:i,stripFinalNewline:l,verboseInfo:p,streamInfo:S}),b=xCe({subprocess:t,encoding:e,buffer:r,maxBuffer:n,lines:i,stripFinalNewline:l,verboseInfo:p,streamInfo:S}),w=[],R=ICe({subprocess:t,buffer:r,maxBuffer:n,ipc:u,ipcOutput:w,verboseInfo:p}),T=mPt(m,t,S),C=gPt(h,S);try{return await Promise.race([Promise.all([{},jxe(E),Promise.all(g),b,R,fAe(t,d),...T,...C]),_,_Pt(t,y),...aAe(t,s,f,y),...C0e({subprocess:t,cancelSignal:o,gracefulCancel:a,context:f,controller:y}),...sAe({subprocess:t,cancelSignal:o,gracefulCancel:a,forceKillAfterDelay:c,context:f,controller:y})])}catch(N){return f.terminationReason??="other",Promise.all([{error:N},E,Promise.all(g.map(A=>d5(A))),d5(b),OCe(R,w),Promise.allSettled(T),Promise.allSettled(C)])}},mPt=(t,e,r)=>t.map((n,i)=>n===e.stdio[i]?void 0:Hw(n,i,r)),gPt=(t,e)=>t.flatMap(({stdioItems:r},n)=>r.filter(({value:i,stream:s=i})=>Do(s,{checkOpen:!1})&&!ko(s)).map(({type:i,value:s,stream:o=s})=>Hw(o,n,e,{isSameDirection:to.has(i),stopOnExit:i==="native"}))),_Pt=async(t,{signal:e})=>{let[r]=await hPt(t,"error",{signal:e});throw r};var kCe=()=>({readableDestroy:new WeakMap,writableFinal:new WeakMap,writableDestroy:new WeakMap}),Gw=(t,e,r)=>{let n=t[r];n.has(e)||n.set(e,[]);let i=n.get(e),s=Da();return i.push(s),{resolve:s.resolve.bind(s),promises:i}},uy=async({resolve:t,promises:e},r)=>{t();let[n]=await Promise.race([Promise.allSettled([!0,r]),Promise.all([!1,...e])]);return!n};import{Readable as yPt}from"stream";import{callbackify as SPt}from"util";import{finished as $Ce}from"stream/promises";var h5=async t=>{if(t!==void 0)try{await m5(t)}catch{}},LCe=async t=>{if(t!==void 0)try{await g5(t)}catch{}},m5=async t=>{await $Ce(t,{cleanup:!0,readable:!1,writable:!0})},g5=async t=>{await $Ce(t,{cleanup:!0,readable:!0,writable:!1})},u$=async(t,e)=>{if(await t,e)throw e},d$=(t,e,r)=>{r&&!l$(r)?t.destroy(r):e&&t.destroy()};var DCe=({subprocess:t,concurrentStreams:e,encoding:r},{from:n,binary:i=!0,preserveNewlines:s=!0}={})=>{let o=i||ys.has(r),{subprocessStdout:a,waitReadableDestroy:c}=_5(t,n,e),{readableEncoding:l,readableObjectMode:u,readableHighWaterMark:d}=y5(a,o),{read:f,onStdoutDataDone:p}=S5({subprocessStdout:a,subprocess:t,binary:o,encoding:r,preserveNewlines:s}),h=new yPt({read:f,destroy:SPt(v5.bind(void 0,{subprocessStdout:a,subprocess:t,waitReadableDestroy:c})),highWaterMark:d,objectMode:u,encoding:l});return E5({subprocessStdout:a,onStdoutDataDone:p,readable:h,subprocess:t}),h},_5=(t,e,r)=>{let n=ry(t,e),i=Gw(r,n,"readableDestroy");return{subprocessStdout:n,waitReadableDestroy:i}},y5=({readableEncoding:t,readableObjectMode:e,readableHighWaterMark:r},n)=>n?{readableEncoding:t,readableObjectMode:e,readableHighWaterMark:r}:{readableEncoding:t,readableObjectMode:!0,readableHighWaterMark:u5},S5=({subprocessStdout:t,subprocess:e,binary:r,encoding:n,preserveNewlines:i})=>{let s=Da(),o=c$({subprocessStdout:t,subprocess:e,binary:r,shouldEncode:!r,encoding:n,preserveNewlines:i});return{read(){EPt(this,o,s)},onStdoutDataDone:s}},EPt=async(t,e,r)=>{try{let{value:n,done:i}=await e.next();i?r.resolve():t.push(n)}catch{}},E5=async({subprocessStdout:t,onStdoutDataDone:e,readable:r,subprocess:n,subprocessStdin:i})=>{try{await g5(t),await n,await h5(i),await e,r.readable&&r.push(null)}catch(s){await h5(i),MCe(r,s)}},v5=async({subprocessStdout:t,subprocess:e,waitReadableDestroy:r},n)=>{await uy(r,e)&&(MCe(t,n),await u$(e,n))},MCe=(t,e)=>{d$(t,t.readable,e)};import{Writable as vPt}from"stream";import{callbackify as UCe}from"util";var FCe=({subprocess:t,concurrentStreams:e},{to:r}={})=>{let{subprocessStdin:n,waitWritableFinal:i,waitWritableDestroy:s}=b5(t,r,e),o=new vPt({...T5(n,t,i),destroy:UCe(R5.bind(void 0,{subprocessStdin:n,subprocess:t,waitWritableFinal:i,waitWritableDestroy:s})),highWaterMark:n.writableHighWaterMark,objectMode:n.writableObjectMode});return w5(n,o),o},b5=(t,e,r)=>{let n=Ak(t,e),i=Gw(r,n,"writableFinal"),s=Gw(r,n,"writableDestroy");return{subprocessStdin:n,waitWritableFinal:i,waitWritableDestroy:s}},T5=(t,e,r)=>({write:bPt.bind(void 0,t),final:UCe(TPt.bind(void 0,t,e,r))}),bPt=(t,e,r,n)=>{t.write(e,r)?n():t.once("drain",n)},TPt=async(t,e,r)=>{await uy(r,e)&&(t.writable&&t.end(),await e)},w5=async(t,e,r)=>{try{await m5(t),e.writable&&e.end()}catch(n){await LCe(r),jCe(e,n)}},R5=async({subprocessStdin:t,subprocess:e,waitWritableFinal:r,waitWritableDestroy:n},i)=>{await uy(r,e),await uy(n,e)&&(jCe(t,i),await u$(e,i))},jCe=(t,e)=>{d$(t,t.writable,e)};import{Duplex as wPt}from"stream";import{callbackify as RPt}from"util";var zCe=({subprocess:t,concurrentStreams:e,encoding:r},{from:n,to:i,binary:s=!0,preserveNewlines:o=!0}={})=>{let a=s||ys.has(r),{subprocessStdout:c,waitReadableDestroy:l}=_5(t,n,e),{subprocessStdin:u,waitWritableFinal:d,waitWritableDestroy:f}=b5(t,i,e),{readableEncoding:p,readableObjectMode:h,readableHighWaterMark:m}=y5(c,a),{read:_,onStdoutDataDone:y}=S5({subprocessStdout:c,subprocess:t,binary:a,encoding:r,preserveNewlines:o}),E=new wPt({read:_,...T5(u,t,d),destroy:RPt(APt.bind(void 0,{subprocessStdout:c,subprocessStdin:u,subprocess:t,waitReadableDestroy:l,waitWritableFinal:d,waitWritableDestroy:f})),readableHighWaterMark:m,writableHighWaterMark:u.writableHighWaterMark,readableObjectMode:h,writableObjectMode:u.writableObjectMode,encoding:p});return E5({subprocessStdout:c,onStdoutDataDone:y,readable:E,subprocess:t,subprocessStdin:u}),w5(u,E,c),E},APt=async({subprocessStdout:t,subprocessStdin:e,subprocess:r,waitReadableDestroy:n,waitWritableFinal:i,waitWritableDestroy:s},o)=>{await Promise.all([v5({subprocessStdout:t,subprocess:r,waitReadableDestroy:n},o),R5({subprocessStdin:e,subprocess:r,waitWritableFinal:i,waitWritableDestroy:s},o)])};var A5=(t,e,{from:r,binary:n=!1,preserveNewlines:i=!1}={})=>{let s=n||ys.has(e),o=ry(t,r),a=c$({subprocessStdout:o,subprocess:t,binary:s,shouldEncode:!0,encoding:e,preserveNewlines:i});return xPt(a,o,t)},xPt=async function*(t,e,r){try{yield*t}finally{e.readable&&e.destroy(),await r}};var qCe=(t,{encoding:e})=>{let r=kCe();t.readable=DCe.bind(void 0,{subprocess:t,concurrentStreams:r,encoding:e}),t.writable=FCe.bind(void 0,{subprocess:t,concurrentStreams:r}),t.duplex=zCe.bind(void 0,{subprocess:t,concurrentStreams:r,encoding:e}),t.iterable=A5.bind(void 0,t,e),t[Symbol.asyncIterator]=A5.bind(void 0,t,e,{})};var BCe=(t,e)=>{for(let[r,n]of PPt){let i=n.value.bind(e);Reflect.defineProperty(t,r,{...n,value:i})}},CPt=(async()=>{})().constructor.prototype,PPt=["then","catch","finally"].map(t=>[t,Reflect.getOwnPropertyDescriptor(CPt,t)]);var VCe=(t,e,r,n)=>{let{file:i,commandArguments:s,command:o,escapedCommand:a,startTime:c,verboseInfo:l,options:u,fileDescriptors:d}=NPt(t,e,r),{subprocess:f,promise:p}=$Pt({file:i,commandArguments:s,options:u,startTime:c,verboseInfo:l,command:o,escapedCommand:a,fileDescriptors:d});return f.pipe=a$.bind(void 0,{source:f,sourcePromise:p,boundOptions:{},createNested:n}),BCe(f,p),Ma.set(f,{options:u,fileDescriptors:d}),f},NPt=(t,e,r)=>{let{command:n,escapedCommand:i,startTime:s,verboseInfo:o}=_k(t,e,r),{file:a,commandArguments:c,options:l}=Mk(t,e,r),u=kPt(l),d=tCe(u,o);return{file:a,commandArguments:c,command:n,escapedCommand:i,startTime:s,verboseInfo:o,options:u,fileDescriptors:d}},kPt=({timeout:t,signal:e,...r})=>{if(e!==void 0)throw new TypeError('The "signal" option has been renamed to "cancelSignal" instead.');return{...r,timeoutDuration:t}},$Pt=({file:t,commandArguments:e,options:r,startTime:n,verboseInfo:i,command:s,escapedCommand:o,fileDescriptors:a})=>{let c;try{c=OPt(...Uk(t,e,r))}catch(h){return Zxe({error:h,command:s,escapedCommand:o,fileDescriptors:a,options:r,startTime:n,verboseInfo:i})}let l=new AbortController;IPt(Number.POSITIVE_INFINITY,l.signal);let u=[...c.stdio];uCe(c,a,l),fCe(c,r,l);let d={},f=Da();c.kill=A0e.bind(void 0,{kill:c.kill.bind(c),options:r,onInternalError:f,context:d,controller:l}),c.all=ACe(c,r),qCe(c,r),Yxe(c,r);let p=LPt({subprocess:c,options:r,startTime:n,verboseInfo:i,fileDescriptors:a,originalStreams:u,command:s,escapedCommand:o,context:d,onInternalError:f,controller:l});return{subprocess:c,promise:p}},LPt=async({subprocess:t,options:e,startTime:r,verboseInfo:n,fileDescriptors:i,originalStreams:s,command:o,escapedCommand:a,context:c,onInternalError:l,controller:u})=>{let[d,[f,p],h,m,_]=await NCe({subprocess:t,options:e,context:c,verboseInfo:n,fileDescriptors:i,originalStreams:s,onInternalError:l,controller:u});u.abort(),l.resolve();let y=h.map((g,b)=>dl(g,e,b)),E=dl(m,e,"all"),S=DPt({errorInfo:d,exitCode:f,signal:p,stdio:y,all:E,ipcOutput:_,context:c,options:e,command:o,escapedCommand:a,startTime:r});return ay(S,n,e)},DPt=({errorInfo:t,exitCode:e,signal:r,stdio:n,all:i,ipcOutput:s,context:o,options:a,command:c,escapedCommand:l,startTime:u})=>"error"in t?jw({error:t.error,command:c,escapedCommand:l,timedOut:o.terminationReason==="timeout",isCanceled:o.terminationReason==="cancel"||o.terminationReason==="gracefulCancel",isGracefullyCanceled:o.terminationReason==="gracefulCancel",isMaxBuffer:t.error instanceof Ua,isForcefullyTerminated:o.isForcefullyTerminated,exitCode:e,signal:r,stdio:n,all:i,ipcOutput:s,options:a,startTime:u,isSync:!1}):Gk({command:c,escapedCommand:l,stdio:n,all:i,ipcOutput:s,options:a,startTime:u});var f$=(t,e)=>{let r=Object.fromEntries(Object.entries(e).map(([n,i])=>[n,MPt(n,t[n],i)]));return{...t,...r}},MPt=(t,e,r)=>UPt.has(t)&&Fr(e)&&Fr(r)?{...e,...r}:r,UPt=new Set(["env",...rK]);var hd=(t,e,r,n)=>{let i=(o,a,c)=>hd(o,a,r,c),s=(...o)=>FPt({mapArguments:t,deepOptions:r,boundOptions:e,setBoundExeca:n,createNested:i},...o);return n!==void 0&&n(s,i,e),s},FPt=({mapArguments:t,deepOptions:e={},boundOptions:r={},setBoundExeca:n,createNested:i},s,...o)=>{if(Fr(s))return i(t,f$(r,s),n);let{file:a,commandArguments:c,options:l,isSync:u}=jPt({mapArguments:t,firstArgument:s,nextArguments:o,deepOptions:e,boundOptions:r});return u?qxe(a,c,l):VCe(a,c,l,i)},jPt=({mapArguments:t,firstArgument:e,nextArguments:r,deepOptions:n,boundOptions:i})=>{let s=tRe(e)?rRe(e,r):[e,...r],[o,a,c]=ok(...s),l=f$(f$(n,i),c),{file:u=o,commandArguments:d=a,options:f=l,isSync:p=!1}=t({file:o,commandArguments:a,options:l});return{file:u,commandArguments:d,options:f,isSync:p}};var HCe=({file:t,commandArguments:e})=>WCe(t,e),GCe=({file:t,commandArguments:e})=>({...WCe(t,e),isSync:!0}),WCe=(t,e)=>{if(e.length>0)throw new TypeError(`The command and its arguments must be passed as a single string: ${t} ${e}.`);let[r,...n]=zPt(t);return{file:r,commandArguments:n}},zPt=t=>{if(typeof t!="string")throw new TypeError(`The command must be a string: ${String(t)}.`);let e=t.trim();if(e==="")return[];let r=[];for(let n of e.split(qPt)){let i=r.at(-1);i&&i.endsWith("\\")?r[r.length-1]=`${i.slice(0,-1)} ${n}`:r.push(n)}return r},qPt=/ +/g;var YCe=(t,e,r)=>{t.sync=e(BPt,r),t.s=t.sync},KCe=({options:t})=>JCe(t),BPt=({options:t})=>({...JCe(t),isSync:!0}),JCe=t=>({options:{...VPt(t),...t}}),VPt=({input:t,inputFile:e,stdio:r})=>t===void 0&&e===void 0&&r===void 0?{stdin:"inherit"}:{},ZCe={preferLocal:!0};var XCe=hd(()=>({})),yAr=hd(()=>({isSync:!0})),QCe=hd(HCe),SAr=hd(GCe),EAr=hd(lAe),vAr=hd(KCe,{},ZCe,YCe),{sendMessage:bAr,getOneMessage:TAr,getEachMessage:wAr,getCancelSignal:RAr}=Kxe();import{Transform as HPt}from"stream";var GPt=["NETLIFY_AI_GATEWAY_KEY"];function WPt(){let t=(process.env.NETLIFY_SENSITIVE_ENV_KEYS||"").split(",").map(e=>e.trim()).filter(Boolean);return[...new Set([...t,...GPt])]}function YPt(t){let e=t.toLowerCase();return e==="true"||e==="false"?!0:t.trim().length<4}function KPt(){let e=WPt().map(r=>process.env[r]).filter(r=>!(!r||YPt(r)));return[...new Set(e)].sort((r,n)=>n.length-r.length)}function Xi(t){if(typeof t!="string")return t;let e=KPt();if(e.length===0)return t;let r=t;return e.forEach(n=>{let i=new RegExp(JPt(n),"g");r=r.replace(i,"******")}),r}function JPt(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}var Ww=class extends HPt{constructor(e={}){super({...e,objectMode:!1})}_transform(e,r,n){let i=e.toString(),s=Xi(i);n(null,s)}},p$=Symbol("maskedWrite");function ePe(){if(process.env.NETLIFY_MASK_LOGS!=="false"){if(!process.stdout.write[p$]){let e=process.stdout.write.bind(process.stdout),r=function(n,i,s){let o=typeof n=="string"?Xi(n):n;return typeof i=="function"?e(o,i):e(o,i,s)};r[p$]=!0,process.stdout.write=r}if(!process.stderr.write[p$]){let e=process.stderr.write.bind(process.stderr),r=function(n,i,s){let o=typeof n=="string"?Xi(n):n;return typeof i=="function"?e(o,i):e(o,i,s)};r[p$]=!0,process.stderr.write=r}}}var tPe=!1,rPe,nPe=t=>{tPe=!0,rPe??=t},Ss=()=>tPe,iPe=()=>rPe;var Yw=null,sPe=t=>(Yw&&Yw.destroy(),Yw=new ja({totalAllowedTime:t}),Yw),oPe=()=>Yw;var ja=class{constructor({totalAllowedTime:e}){this.withStageTimer=async(e,r,n,{interruptible:i=!0}={})=>{if(this.isTimeExpired())throw new Error(`${e} stage did not complete in the allowed time. Time has already expired.`);if(i&&Ss())throw new Error(`Aborting ${e} stage \u2014 shutting down`);let s=this.onTimesUp(()=>{throw new Error(`${e} stage did not complete in the allowed time.`)}),o=null,a=null;n!==void 0&&(a=new Promise((u,d)=>{o=setTimeout(()=>{d(new Error(`${e} stage exceeded its maximum duration of ${n}ms`))},n)}));let c=Date.now(),l="success";try{return await tk({stage:e},async()=>a?await Promise.race([r(),a]):await r())}catch(u){throw l="failure",u}finally{ie.timing("stage.duration",Date.now()-c,{stage:e,outcome:l}),s(),o&&clearTimeout(o)}};this.startTime=Date.now(),this.totalAllowedTime=e,this.globalTimeoutId=null,this.subscribers=[],this.hasTimedOut=!1,this.setupGlobalTimeout()}getElapsedTime(){return Date.now()-this.startTime}getRemainingTime(){let e=this.getElapsedTime(),r=this.totalAllowedTime-e;return Math.max(0,r)}isTimeExpired(){return this.getRemainingTime()===0||this.hasTimedOut}setupGlobalTimeout(){this.globalTimeoutId&&clearTimeout(this.globalTimeoutId),this.globalTimeoutId=setTimeout(()=>{this.notifyTimeUp()},this.totalAllowedTime)}notifyTimeUp(){this.hasTimedOut=!0;for(let e=this.subscribers.length-1;e>=0;e--)try{this.subscribers[e]()}catch(r){console.error("TimeKeeper: Error in time up callback:",r)}}onTimesUp(e){if(this.subscribers.push(e),this.hasTimedOut)try{e()}catch(r){console.error("TimeKeeper: Error in time up callback:",r)}return()=>{let r=this.subscribers.indexOf(e);r>-1&&this.subscribers.splice(r,1)}}off(e){let r=this.subscribers.indexOf(e);r>-1&&this.subscribers.splice(r,1)}clearSubscribers(){this.subscribers.length=0}getSubscriberCount(){return this.subscribers.length}destroy(){this.globalTimeoutId&&(clearTimeout(this.globalTimeoutId),this.globalTimeoutId=null),this.clearSubscribers()}static{this.timeUnits={seconds:e=>e*1e3,minutes:e=>e*60*1e3,hours:e=>e*60*60*1e3}}};var aPe={name:"@netlify/agent-runner-cli",type:"module",version:"1.176.0-PAW-469.8",description:"CLI tool for running Netlify agents",main:"./dist/index.js",types:"./dist/index.d.ts",exports:"./dist/index.js",bin:{"agent-runner-cli":"./dist/bin.js","agent-runner-cli-local":"./dist/bin-local.js"},files:["dist/**/*.js","dist/**/*.d.ts","dist/skills/**","patches","scripts"],scripts:{prebuild:"rm -rf dist",build:"tsup",dev:"tsup --watch",prepare:"husky install node_modules/@netlify/eslint-config-node/.husky/",prepublishOnly:"npm ci && npm test",prepack:"npm run build",test:"run-s build format test:dev",format:"run-s build format:check-fix:*","format:ci":"run-s build format:check:*","format:check-fix:lint":"run-e format:check:lint format:fix:lint","format:check:lint":'eslint --cache --format=codeframe --max-warnings=0 "{src,scripts,test,.github}/**/*.{js,ts,md,html}"',"format:fix:lint":'eslint --fix --cache --format=codeframe --max-warnings=0 "{src,scripts,test,.github}/**/*.{js,ts,md,html}"',"format:check-fix:prettier":"run-e format:check:prettier format:fix:prettier","format:check:prettier":'prettier --check --ignore-path .gitignore --loglevel=warn "{src,scripts,test,.github}/**/*.{js,ts,md,yml,json,html}" "*.{js,ts,yml,json,html}" ".*.{js,ts,yml,json,html}" "!**/package-lock.json" "!package-lock.json" "!src/skills/**/*.md"',"format:fix:prettier":'prettier --write --ignore-path .gitignore --loglevel=warn "{src,scripts,test,.github}/**/*.{js,ts,md,yml,json,html}" "*.{js,ts,yml,json,html}" ".*.{js,ts,yml,json,html}" "!**/package-lock.json" "!package-lock.json" "!src/skills/**/*.md"',"test:dev":"run-s build test:dev:*","test:ci":"run-s build test:ci:*","test:dev:vitest":"LOG=0 vitest --exclude '**/integration/**'","test:ci:vitest":"LOG=0 vitest run --coverage --exclude '**/integration/**'","test:smoke":"node scripts/smoke-dist.js","test:integration":"vitest run test/integration/","test:integration:codex":"vitest run test/integration/codex.test.ts","test:integration:claude":"vitest run test/integration/claude.test.ts","test:integration:gemini":"vitest run test/integration/gemini.test.ts","test:integration:opencode":"vitest run test/integration/opencode.test.ts","test:integration:skill-invocation":"vitest run test/integration/skill-invocation.test.ts","check:types":"tsc --noEmit",postinstall:"node scripts/postinstall.js"},keywords:[],license:"MIT",repository:"netlify/agent-runner-cli",bugs:{url:"https://github.com/netlify/agent-runner-cli/issues"},author:"Netlify Inc.",directories:{test:"test"},devDependencies:{"@commitlint/cli":"^20.0.0","@commitlint/config-conventional":"^20.0.0","@eslint/compat":"^2.0.0","@eslint/js":"^10.0.1","@netlify/axis":"^1.17.6","@netlify/eslint-config-node":"^7.0.1","@types/node":"^24.5.0","@typescript-eslint/eslint-plugin":"^8.0.0","@typescript-eslint/parser":"^8.0.0","@vitest/coverage-v8":"^4.1.5","@vitest/eslint-plugin":"^1.6.6",eslint:"^10.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-n":"^17.0.0",husky:"^9.0.0",jiti:"^2.7.0","patch-package":"^8.0.0",tsup:"^8.5.0",typescript:"^5.0.0","typescript-eslint":"^8.44.0",vitest:"^4.0.16"},dependencies:{"@anthropic-ai/claude-code":"^2.1.219","@anthropic-ai/sdk":"0.91.1","@google/gemini-cli":"0.42.0","@modelcontextprotocol/sdk":"^1.29.0","@netlify/cache-utils":"^6.0.5","@netlify/database-proxy":"^0.2.1","@netlify/otel":"^6.0.6","@netlify/ts-cli":"^1.2.0","@openai/codex":"0.153.4","@opentelemetry/api":"^1.9.0","@opentelemetry/exporter-trace-otlp-grpc":"0.218.0",execa:"^9.6.1",fastify:"5.12.1",minimist:"^1.2.8",openai:"6.34.0",zod:"^4.4.3"}};var eIt=XPt(import.meta.url),tIt=fl.dirname(eIt),rIt=QPt(import.meta.url),dy=fe("shell"),x5=new Set,cPe={preferLocal:!0},hr=(t,e,r)=>{let[n,i]=nIt(e,r),s={...cPe,...i},o=XCe(t,n,s);uPe(o,s),pPe(o);let a=r?.idleTimeout;return a&&a>0&&fPe(o,a),o},lPe=(t,e)=>{let r={...cPe,...e},n=QCe(t,r);return uPe(n,r),pPe(n),e?.idleTimeout&&e.idleTimeout>0&&fPe(n,e.idleTimeout),n},nIt=function(t,e){return Array.isArray(t)?[t,e]:typeof t=="object"&&t!==null?[[],t]:[[],void 0]},uPe=(t,e)=>{if(e.stdio!==void 0||e.stdout!==void 0||e.stderr!==void 0||za.env.NETLIFY_LOCAL_QUIET==="true")return;if(za.env.NETLIFY_MASK_LOGS!=="false"){t.stdout?.pipe(new Ww).pipe(za.stdout),t.stderr?.pipe(new Ww).pipe(za.stderr);return}t.stdout?.pipe(za.stdout),t.stderr?.pipe(za.stderr)},C5=(t,e="SIGTERM")=>{try{return t.pid&&!t.killed?(za.kill(-t.pid,e),dy.log(`Killed process ${t.pid} with signal ${e}`),!0):!1}catch(r){return dy.error("Error killing process:",r),!1}},dPe=t=>C5(t,"SIGKILL"),fPe=(t,e)=>{let r=null,n=()=>{dy.log(`Process ${t.pid} killed due to idle timeout (no output for ${e}ms)`),C5(t,"SIGTERM"),setTimeout(()=>{t.pid&&!t.killed&&(dy.log(`Force killing idle process ${t.pid}`),dPe(t))},5e3)},i=()=>{r&&clearTimeout(r),r=setTimeout(n,e)};i(),t.stdout?.on("data",i),t.stderr?.on("data",i);let s=()=>{r&&(clearTimeout(r),r=null)};t.on("exit",s),t.on("error",s)},pPe=t=>{x5.add(t);let e=oPe();if(e){let r=e.onTimesUp(()=>{dy.log(`Global timer expired, killing process ${t.pid}`),C5(t,"SIGTERM"),setTimeout(()=>{t.pid&&!t.killed&&(dy.log(`Force killing process ${t.pid} after timeout`),dPe(t))},5e3)});t.on("exit",()=>{x5.delete(t),r()}),t.on("error",()=>{x5.delete(t),r()})}};function qa(t,e){if(!za.env.NETLIFY_LOCAL_MODE)try{let i=rIt.resolve(aPe.name),s=fl.dirname(i);for(;s!==fl.dirname(s);){let o=fl.dirname(s);if(fl.basename(o)==="node_modules"){let a=fl.join(o,".bin",e);if(h$.existsSync(a))return a;break}s=o}}catch(i){console.error("Could not resolve package.json",i)}if(za.env.NODE_PATH){let i=fl.join(za.env.NODE_PATH,".bin",e);if(h$.existsSync(i))return i}let r=fl.join(t,"node_modules",".bin",e);if(h$.existsSync(r))return r;let n=fl.join(tIt,"..","node_modules",".bin",e);if(h$.existsSync(n))return n}import M1 from"process";import{fileURLToPath as N2t}from"url";import{createRequire as k2t}from"module";import G0 from"path";import{readFileSync as $2t}from"fs";var iIt="__netlify__getTracer",sIt="__netlify__shutdownTracers",Pt=(t,e)=>globalThis[iIt]?.(t,e),hPe=async()=>globalThis[sIt]?.();function Kw(t,e,r,n,i){let s=typeof n=="function"?n:typeof r=="function"?r:i;if(!s)throw new Error("function to execute with active span is missing");return t?t.withActiveSpan(e,r,n,s):s()}import{setTimeout as R2t}from"timers/promises";Le();import oNt from"process";Le();var PIt=(t,e)=>{e.recordException(t),e.setStatus({code:li.ERROR})};var ml=class{constructor(e){this._tracer=e,this.startSpan=e.startSpan.bind(this._tracer),this.startActiveSpan=e.startActiveSpan.bind(this._tracer)}withActiveSpan(e,r,n,i){let{opts:s,ctx:o,fn:a}=aIe(r,n,i);return this._tracer.startActiveSpan(e,s,o,c=>cIe(c,s,a))}withSpan(e,r,n,i){let{opts:s,ctx:o,fn:a}=aIe(r,n,i),c=this._tracer.startSpan(e,s,o);return cIe(c,s,a)}};function aIe(t,e,r){let n,i,s;return!e&&!r?s=t:r?(n=t,i=e,s=r):(n=t,s=e),n=n??{},i=i??tr.active(),{opts:n,ctx:i,fn:s}}function cIe(t,e,r){var n;let i=(n=e.onException)!==null&&n!==void 0?n:PIt,s=o=>{throw i(o,t),t.end(),o};try{let o=r(t);return typeof o?.then=="function"?o.then(a=>(t.end(),a),s):(t.end(),o)}catch(o){throw s(o)}}Le();var yy=t=>t!==null&&typeof t=="object"&&typeof t.then=="function";var c9=class t{_rawAttributes;_asyncAttributesPending=!1;_schemaUrl;_memoizedAttributes;static FromAttributeList(e,r){let n=new t({},r);return n._rawAttributes=yIe(e),n._asyncAttributesPending=e.filter(([i,s])=>yy(s)).length>0,n}constructor(e,r){let n=e.attributes??{};this._rawAttributes=Object.entries(n).map(([i,s])=>(yy(s)&&(this._asyncAttributesPending=!0),[i,s])),this._rawAttributes=yIe(this._rawAttributes),this._schemaUrl=IIt(r?.schemaUrl)}get asyncAttributesPending(){return this._asyncAttributesPending}async waitForAsyncAttributes(){if(this.asyncAttributesPending){for(let e=0;e<this._rawAttributes.length;e++){let[r,n]=this._rawAttributes[e];this._rawAttributes[e]=[r,yy(n)?await n:n]}this._asyncAttributesPending=!1}}get attributes(){if(this.asyncAttributesPending&&ce.error("Accessing resource attributes before async attributes settled"),this._memoizedAttributes)return this._memoizedAttributes;let e={};for(let[r,n]of this._rawAttributes){if(yy(n)){ce.debug(`Unsettled resource attribute ${r} skipped`);continue}n!=null&&(e[r]??=n)}return this._asyncAttributesPending||(this._memoizedAttributes=e),e}getRawAttributes(){return this._rawAttributes}get schemaUrl(){return this._schemaUrl}merge(e){if(e==null)return this;let r=OIt(this,e),n=r?{schemaUrl:r}:void 0;return t.FromAttributeList([...e.getRawAttributes(),...this.getRawAttributes()],n)}};function l9(t,e){return c9.FromAttributeList(Object.entries(t),e)}function yIe(t){return t.map(([e,r])=>yy(r)?[e,r.catch(n=>{ce.debug("promise rejection for resource attribute: %s - %s",e,n)})]:[e,r])}function IIt(t){if(typeof t=="string"||t===void 0)return t;ce.warn("Schema URL must be string or undefined, got %s. Schema URL will be ignored.",t)}function OIt(t,e){let r=t?.schemaUrl,n=e?.schemaUrl,i=r===void 0||r==="",s=n===void 0||n==="";if(i)return n;if(s||r===n)return r;ce.warn('Schema URL merge conflict: old resource has "%s", updating resource has "%s". Resulting resource will have undefined Schema URL.',r,n)}Le();var aR=class{emit(e){}enabled(){return!1}},SIe=new aR;var cR=Symbol.for("io.opentelemetry.js.api.logs"),Sy=globalThis;function EIe(t,e,r){return n=>n===t?e:r}var u9=1;var d9=class{getLogger(e,r,n){return new aR}},M$=new d9;var U$=class{constructor(e,r,n,i){this._provider=e,this.name=r,this.version=n,this.options=i}emit(e){this._getLogger().emit(e)}enabled(e){return this._getLogger().enabled(e)}_getLogger(){if(this._delegate)return this._delegate;let e=this._provider._getDelegateLogger(this.name,this.version,this.options);return e?(this._delegate=e,this._delegate):SIe}};var lR=class{getLogger(e,r,n){var i;return(i=this._getDelegateLogger(e,r,n))!==null&&i!==void 0?i:new U$(this,e,r,n)}_getDelegate(){var e;return(e=this._delegate)!==null&&e!==void 0?e:M$}_setDelegate(e){this._delegate=e}_getDelegateLogger(e,r,n){var i;return(i=this._delegate)===null||i===void 0?void 0:i.getLogger(e,r,n)}};var F$=class t{constructor(){this._proxyLoggerProvider=new lR}static getInstance(){return this._instance||(this._instance=new t),this._instance}setGlobalLoggerProvider(e){return Sy[cR]?this.getLoggerProvider():(Sy[cR]=EIe(u9,e,M$),this._proxyLoggerProvider._setDelegate(e),e)}getLoggerProvider(){var e,r;return(r=(e=Sy[cR])===null||e===void 0?void 0:e.call(Sy,u9))!==null&&r!==void 0?r:this._proxyLoggerProvider}getLogger(e,r,n){return this.getLoggerProvider().getLogger(e,r,n)}disable(){delete Sy[cR],this._proxyLoggerProvider=new lR}};var vIe=F$.getInstance();function bIe(t,e,r,n){for(let i=0,s=t.length;i<s;i++){let o=t[i];e&&o.setTracerProvider(e),r&&o.setMeterProvider(r),n&&o.setLoggerProvider&&o.setLoggerProvider(n),o.getConfig().enabled||o.enable()}}function TIe(t){t.forEach(e=>e.disable())}function f9(t){let e=t.tracerProvider||jt.getTracerProvider(),r=t.meterProvider||oR.getMeterProvider(),n=t.loggerProvider||vIe.getLoggerProvider(),i=t.instrumentations?.flat()??[];return bIe(i,e,r,n),()=>{TIe(i)}}Le();var NIt=yn("OpenTelemetry SDK Context Key SUPPRESS_TRACING");function wIe(t){return t.getValue(NIt)===!0}var Ey;(function(t){t[t.SUCCESS=0]="SUCCESS",t[t.FAILED=1]="FAILED"})(Ey||(Ey={}));Le();var p9="[_0-9a-z-*/]",kIt=`[a-z]${p9}{0,255}`,$It=`[a-z0-9]${p9}{0,240}@[a-z]${p9}{0,13}`,LIt=new RegExp(`^(?:${kIt}|${$It})$`),DIt=/^[ -~]{0,255}[!-~]$/,MIt=/,|=/;function h9(t){return LIt.test(t)}function m9(t){return DIt.test(t)&&!MIt.test(t)}var UIt=32,RIe=512,AIe=",",xIe="=",j$=class t{_length;_rawTraceState;_internalState;constructor(e){this._rawTraceState=typeof e=="string"?e:"",this._length=this._rawTraceState.length}set(e,r){if(!h9(e)||!m9(r))return this;let n=this._getState(),i=n.get(e),s=this._length;if(typeof i=="string"?s+=r.length-i.length:s+=e.length+r.length+(n.size>0?2:1),s>RIe)return this;let o=new Map(n);return o.delete(e),o.set(e,r),this._fromState(o,s)}unset(e){let r=this._getState(),n=r.get(e);if(typeof n!="string")return this;let i=this._length-(e.length+n.length+1);r.size>1&&(i=i-1);let s=new Map(r);return s.delete(e),this._fromState(s,i)}get(e){return this._getState().get(e)}serialize(){let e="",r=0;for(let n of this._getState())r>0&&(e=AIe+e),e=`${n[0]}${xIe}${n[1]}`+e,r++;return e}_getState(){if(this._internalState)return this._internalState;let e=this._rawTraceState.split(AIe),r=new Map,n=0;for(let i of e){let s=i.trim(),o=s.indexOf(xIe);if(o===-1)continue;let a=s.slice(0,o),c=s.slice(o+1);if(!h9(a)||!m9(c))continue;let l=n+s.length+(r.size>0?1:0);if(!(l>RIe)&&(r.set(a,c),n=l,r.size>=UIt))break}return this._length=n,this._internalState=new Map(Array.from(r.entries()).reverse()),this._internalState}_fromState(e,r){let n=Object.create(t.prototype);return n._internalState=e,n._length=r,n}};var z$="traceparent",q$="tracestate",FIt="00",jIt="(?!ff)[\\da-f]{2}",zIt="(?![0]{32})[\\da-f]{32}",qIt="(?![0]{16})[\\da-f]{16}",BIt="[\\da-f]{2}",VIt=new RegExp(`^\\s?(${jIt})-(${zIt})-(${qIt})-(${BIt})(-.*)?\\s?$`);function CIe(t){let e=VIt.exec(t);return!e||e[1]==="00"&&e[5]?null:{traceId:e[2],spanId:e[3],traceFlags:parseInt(e[4],16)}}var _d=class{inject(e,r,n){let i=jt.getSpanContext(e);if(!i||wIe(e)||!Qi(i))return;let s=`${FIt}-${i.traceId}-${i.spanId}-0${Number(i.traceFlags||Pr.NONE).toString(16)}`;n.set(r,z$,s),i.traceState&&n.set(r,q$,i.traceState.serialize())}extract(e,r,n){let i=n.get(r,z$);if(!i)return e;let s=Array.isArray(i)?i[0]:i;if(typeof s!="string")return e;let o=CIe(s);if(!o)return e;o.isRemote=!0;let a=n.get(r,q$);if(a){let c=Array.isArray(a)?a.join(","):a;o.traceState=new j$(typeof c=="string"?c:void 0)}return jt.setSpanContext(e,o)}fields(){return[z$,q$]}};var B$=class{_promise;_resolve;_reject;constructor(){this._promise=new Promise((e,r)=>{this._resolve=e,this._reject=r})}get promise(){return this._promise}resolve(e){this._resolve(e)}reject(e){this._reject(e)}};var uR=class{_isCalled=!1;_deferred=new B$;_callback;_that;constructor(e,r){this._callback=e,this._that=r}get isCalled(){return this._isCalled}get promise(){return this._deferred.promise}call(...e){if(!this._isCalled){this._isCalled=!0;try{Promise.resolve(this._callback.call(this._that,...e)).then(r=>this._deferred.resolve(r),r=>this._deferred.reject(r))}catch(r){this._deferred.reject(r)}}return this._deferred.promise}};var $L=In(e8(),1);Le();var uke=t=>{throw TypeError(t)},i8=(t,e,r)=>e.has(t)||uke("Cannot "+r),kL=(t,e,r)=>(i8(t,e,"read from private field"),r?r.call(t):e.get(t)),t8=(t,e,r)=>e.has(t)?uke("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,r),ake=(t,e,r,n)=>(i8(t,e,"write to private field"),n?n.call(t,r):e.set(t,r),r),sNt=(t,e,r)=>(i8(t,e,"access private method"),r),cke="__netlify__getTracer",aNt="__netlify__shutdownTracers",cNt="__nfOTLPTrace",RR,AR,n8,dke,lNt=class{constructor(){t8(this,n8),t8(this,RR),t8(this,AR),ake(this,RR,new uR(sNt(this,n8,dke),this)),ake(this,AR,ce.createComponentLogger({namespace:"netlify-span-exporter"}))}export(t,e){if(kL(this,AR).debug(`export ${t.length.toString()} spans`),kL(this,RR).isCalled){e({code:Ey.FAILED,error:new Error("Exporter has been shutdown")});return}console.log(cNt,JSON.stringify(uNt(t))),e({code:Ey.SUCCESS})}shutdown(){return kL(this,RR).call()}};RR=new WeakMap;AR=new WeakMap;n8=new WeakSet;dke=function(){return kL(this,AR).debug("Shutting down"),Promise.resolve()};function uNt(t){return{resourceSpans:t.map(e=>{let r=e.spanContext();return{resource:{attributes:NL(e.resource.attributes),droppedAttributesCount:e.droppedAttributesCount},scopeSpans:[{scope:{name:e.instrumentationScope.name,version:e.instrumentationScope.version},spans:[{traceId:r.traceId,spanId:r.spanId,parentSpanId:e.parentSpanContext?.spanId,name:e.name,kind:e.kind||Mo.SERVER,startTimeUnixNano:r8(e.startTime),endTimeUnixNano:r8(e.endTime),attributes:NL(e.attributes),droppedAttributesCount:e.droppedAttributesCount,events:e.events.map(n=>({name:n.name,timeUnixNano:r8(n.time),attributes:NL(n.attributes??{}),droppedAttributesCount:n.droppedAttributesCount??0})),droppedEventsCount:e.droppedEventsCount,status:{code:e.status.code,message:e.status.message},links:e.links.map(n=>({spanId:n.context.spanId,traceId:n.context.traceId,attributes:NL(n.attributes??{}),droppedAttributesCount:n.droppedAttributesCount??0})),droppedLinksCount:e.droppedLinksCount}]}]}})}}function NL(t){return Object.keys(t).map(e=>fke(e,t[e]))}function fke(t,e){return{key:t,value:pke(e)}}function pke(t){let e=typeof t;return e==="string"?{stringValue:t}:e==="number"?Number.isInteger(t)?{intValue:t}:{doubleValue:t}:e==="boolean"?{boolValue:t}:t instanceof Uint8Array?{bytesValue:t}:Array.isArray(t)?{arrayValue:{values:t.map(pke)}}:e==="object"&&t!=null?{kvlistValue:{values:Object.entries(t).map(([r,n])=>fke(r,n))}}:{}}function r8(t){let e=BigInt(1e9);return(BigInt(Math.trunc(t[0]))*e+BigInt(Math.trunc(t[1]))).toString()}var lke={name:"@netlify/otel",version:"6.0.6",type:"module",engines:{node:"^18.14.0 || >=20.6.1"},main:"./dist/main.cjs",module:"./dist/main.js",types:"./dist/main.d.ts",exports:{".":{require:{types:"./dist/main.d.cts",default:"./dist/main.cjs"},import:{types:"./dist/main.d.ts",default:"./dist/main.js"},default:{types:"./dist/main.d.ts",default:"./dist/main.js"}},"./package.json":"./package.json","./bootstrap":{require:{types:"./dist/bootstrap/main.d.cts",default:"./dist/bootstrap/main.cjs"},import:{types:"./dist/bootstrap/main.d.ts",default:"./dist/bootstrap/main.js"},default:{types:"./dist/bootstrap/main.d.ts",default:"./dist/bootstrap/main.js"}},"./exporter-netlify":{require:{types:"./dist/exporters/netlify.d.cts",default:"./dist/exporters/netlify.cjs"},import:{types:"./dist/exporters/netlify.d.ts",default:"./dist/exporters/netlify.js"},default:{types:"./dist/exporters/netlify.d.ts",default:"./dist/exporters/netlify.js"}},"./instrumentation-fetch":{require:{types:"./dist/instrumentations/fetch.d.cts",default:"./dist/instrumentations/fetch.cjs"},import:{types:"./dist/instrumentations/fetch.d.ts",default:"./dist/instrumentations/fetch.js"},default:{types:"./dist/instrumentations/fetch.d.ts",default:"./dist/instrumentations/fetch.js"}},"./instrumentation-http":{require:{types:"./dist/instrumentations/http.d.cts",default:"./dist/instrumentations/http.cjs"},import:{types:"./dist/instrumentations/http.d.ts",default:"./dist/instrumentations/http.js"},default:{types:"./dist/instrumentations/http.d.ts",default:"./dist/instrumentations/http.js"}},"./opentelemetry":{require:{types:"./dist/opentelemetry.d.cts",default:"./dist/opentelemetry.cjs"},import:{types:"./dist/opentelemetry.d.ts",default:"./dist/opentelemetry.js"},default:{types:"./dist/opentelemetry.d.ts",default:"./dist/opentelemetry.js"}}},files:["dist/**/*"],scripts:{build:"tsup-node",dev:"tsup-node --watch",prepack:"npm run build",test:"run-s build test:ci","test:dev":"run-s build test:dev:*","test:ci":"run-s build test:ci:*","test:dev:vitest":"vitest","test:dev:vitest:watch":"vitest watch","test:ci:vitest":"vitest run",publint:"npx -y publint --strict"},keywords:["netlify","cdn"],license:"MIT",repository:{type:"git",url:"https://github.com/netlify/primitives.git",directory:"packages/otel"},bugs:{url:"https://github.com/netlify/primitives/issues"},author:"Netlify Inc.",devDependencies:{"@netlify/dev-utils":"^5.0.0",msw:"^2.10.5","npm-run-all2":"^7.0.2",tsup:"^8.0.0",vitest:"^3.0.0"},dependencies:{"@opentelemetry/api":"1.9.1","@opentelemetry/core":"2.8.0","@opentelemetry/instrumentation":"^0.220.0","@opentelemetry/resources":"2.9.0","@opentelemetry/sdk-trace-node":"2.9.0"}},hke=t=>{if(Object.prototype.hasOwnProperty.call(globalThis,cke))return;let e=oNt.version.slice(1),r=l9({"service.name":t.serviceName,"service.version":t.serviceVersion,"process.runtime.name":"nodejs","process.runtime.version":e,"deployment.environment":t.deploymentEnvironment,"http.url":t.siteUrl,"netlify.site.id":t.siteId,"netlify.site.name":t.siteName}),n=t.spanProcessors??[dNt()],i=new $L.NodeTracerProvider({resource:r,spanProcessors:n});i.register({propagator:new _d});let s=t.instrumentations??[];f9({instrumentations:s,tracerProvider:i}),Object.defineProperty(globalThis,cke,{enumerable:!1,configurable:!0,writable:!1,value:function(a,c){return a?new ml(jt.getTracer(a,c)):new ml(jt.getTracer(lke.name,lke.version))}}),Object.defineProperty(globalThis,aNt,{enumerable:!1,configurable:!0,writable:!1,value:async()=>await i.shutdown()})},dNt=()=>new $L.SimpleSpanProcessor(new lNt);Le();var xR=In(e8(),1);Le();import*as LL from"diagnostics_channel";var mke=class{constructor(t={}){this.instrumentationName="@netlify/otel/instrumentation-fetch",this.instrumentationVersion="1.0.0",this._recordFromReq=new WeakMap,this.config=t,this._channelSubs=[]}getConfig(){return this.config}setConfig(){}setMeterProvider(){}setTracerProvider(t){this.provider=t}getTracerProvider(){return this.provider}annotateFromRequest(t,e){let r=this.config.getRequestAttributes?.(e)??{},n=new URL(e.path,e.origin);t.setAttributes({...r,"http.request.method":e.method,"url.full":n.href,"url.host":n.host,"url.scheme":n.protocol.slice(0,-1),"server.address":n.hostname,"server.port":n.port,...this.prepareHeaders("request",e.headers)})}annotateFromResponse(t,e){let r=this.config.getResponseAttributes?.(e)??{};t.setAttributes({...r,"http.response.status_code":e.statusCode,...this.prepareHeaders("response",e.headers)}),t.setStatus({code:e.statusCode>=400?li.ERROR:li.UNSET})}prepareHeaders(t,e){if(!Array.isArray(e))return{};if(this.config.skipHeaders===!0)return{};let r=["*","/.*/"],n=this.config.skipHeaders??[],i=this.config.redactHeaders??[],s=n.some(a=>r.includes(a.toString())),o={};if(s)return o;for(let a=0;a+1<e.length;a=a+2){let c=e[a],l=e[a+1];if(typeof c!="string"&&!Buffer.isBuffer(c)||typeof l!="string"&&!Buffer.isBuffer(l))continue;let u=c.toString().toLowerCase();if(n.some(f=>typeof f=="string"?f==u:f.test(u)))continue;let d=`http.${t}.header.${u}`;i===!0||i.some(f=>typeof f=="string"?f==u:f.test(u))?o[d]="REDACTED":o[d]=l.toString()}return o}getRequestMethod(t){return["HEAD","GET","POST","PUT","PATCH","DELETE"].includes(t.toUpperCase())?t.toUpperCase():"_OTHER"}getTracer(){if(!this.provider)return;let t=this.provider.getTracer(this.instrumentationName,this.instrumentationVersion);return t instanceof ml?t:new ml(t)}enable(){this._channelSubs.length>0||(this.subscribe("undici:request:create",this.onRequestCreate.bind(this)),this.subscribe("undici:request:headers",this.onRequestHeaders.bind(this)),this.subscribe("undici:request:trailers",this.onRequestEnd.bind(this)),this.subscribe("undici:request:error",this.onRequestError.bind(this)))}subscribe(t,e){LL.subscribe(t,e);let r=()=>LL.unsubscribe(t,e);this._channelSubs.push({name:t,unsubscribe:r})}disable(){this._channelSubs.forEach(t=>{t.unsubscribe()}),this._channelSubs.length=0}onRequestCreate({request:t}){try{let e=this.getTracer(),r=new URL(t.path,t.origin);if(!e||t.method==="CONNECT"||this.config.skipURLs?.some(i=>typeof i=="string"?r.href.startsWith(i):i.test(r.href)))return;let n=e.startSpan(this.getRequestMethod(t.method),{kind:Mo.CLIENT},tr.active());this.annotateFromRequest(n,t),this._recordFromReq.set(t,n)}catch{}}onRequestHeaders({request:t,response:e}){try{let r=this._recordFromReq.get(t);if(!r)return;this.annotateFromResponse(r,e)}catch{}}onRequestError({request:t,error:e}){try{let r=this._recordFromReq.get(t);if(!r)return;r.recordException(e),r.setStatus({code:li.ERROR,message:e.message}),r.end(),this._recordFromReq.delete(t)}catch{}}onRequestEnd({request:t}){try{let e=this._recordFromReq.get(t);if(!e)return;e.end(),this._recordFromReq.delete(t)}catch{}}};var Fje=In(Mje(),1);var L1=fe("tracing"),Uje=8e3,A2t=5e3,H0=async(t=A2t)=>{try{await Promise.race([hPe(),R2t(t)])}catch(e){L1.warn("Failed to flush tracers on shutdown",e)}},jje=async(t,e,r)=>{if(!Pt()){let n=[new xR.SimpleSpanProcessor(new sQ),new xR.SimpleSpanProcessor(new Fje.OTLPTraceExporter({url:r.exporterUrl}))];await hke({serviceName:"@netlify/agent-runner-cli",serviceVersion:t,deploymentEnvironment:"production",siteUrl:"",siteId:process.env.SITE_ID??"",siteName:e,spanProcessors:n,instrumentations:[new mke({skipHeaders:!0})]})}return r.traceparent?(Pi.setGlobalPropagator(new _d),Pi.extract(tr.active(),{traceparent:r.traceparent,isRemote:!0})):tr.active()};function ir(t,e,r){return L1.log(`\u23F3 TRACE: ${e} starting...`),Kw(t,e,r)}var sQ=class{export(e,r){for(let n of e)this.logSpan(n);r({code:1})}async shutdown(){}forceFlush(){return Promise.resolve()}logSpan(e){let r=(e.endTime[0]-e.startTime[0])*1e3+(e.endTime[1]-e.startTime[1])/1e6,n=e.attributes,i=[];for(let[a,c]of Object.entries(n))a.includes("duration")&&typeof c=="number"?i.push(`${a}=${c.toFixed(2)}ms`):i.push(`${a}=${c}`);let s=e.status?.code===2?"\u274C":"\u2705",o=i.length>0?` [${i.join(", ")}]`:"";L1.log(`${s} TRACE: ${e.name} completed in ${r.toFixed(2)}ms${o}`),e.status?.code===2&&e.status.message&&L1.log(` \u274C Error: ${e.status.message}`)}};function oQ(){return Ze().captureLlmContentEnabled}function zje(t){return t.includes("claude")?"anthropic":t.includes("codex")?"openai":t.includes("gemini")?"google":t.includes("opencode")?"opencode":t}function D1(t,e,r){let n={role:t,parts:[{type:"text",content:Xi(e)}]};return r&&(n.finish_reason=r),JSON.stringify([n])}var x2t=new Set([Q.Task,Q.RunCommand,Q.Explore,Q.FileRead,Q.FileWrite,Q.Notebook,Q.Web,Q.Todo,Q.Skill,Q.Tool,Q.Memorize,Q.Deployment,Q.SiteGeneration]);function qje(t,e,r,n){if(!t.length)return;let i=Pt();if(!i)return;let s=oQ(),o=Math.max(1,(n-r)/t.length);t.forEach((a,c)=>{let l=Math.min(n,r+c*o),u=Math.min(n,l+o),d=a.type==="tool_use"||a.type==="tool_result"||a.category!=null&&x2t.has(a.category),f=d?"execute_tool":"chat",p=a.title||a.type||`step-${a.id??c}`,h=a.category||"unknown",m=d?`${f} ${h}`:f,_=a.message?a.message.length>Uje?`${a.message.slice(0,Uje)}\u2026`:a.message:void 0;i.startSpan(m,{startTime:l,attributes:{"gen_ai.capability.name":e,"gen_ai.step.name":p,"gen_ai.operation.name":f,...d?{"gen_ai.tool.name":h}:{},"spark.step.id":a.id??-1,...a.type?{"spark.step.type":a.type}:{},...a.category?{"spark.step.category":a.category}:{},...a.groupId?{"spark.step.group_id":a.groupId}:{},...a.parentGroupId?{"spark.step.parent_group_id":a.parentGroupId}:{},...s&&_?d?{"gen_ai.tool.call.result":Xi(_)}:{"gen_ai.output.messages":D1("assistant",_)}:{}}}).end(u)})}import{readdir as C2t,rm as P2t}from"fs/promises";import{join as I2t}from"path";async function Bje(t,e=[]){let n=(await C2t(t)).filter(i=>!e.includes(i));await Promise.all(n.map(i=>P2t(I2t(t,i),{recursive:!0,force:!0})))}var O2t=300,Ih=t=>Ze().budgetCreditThresholds[t.mode]?.[t.runner]??O2t,Oh=({mode:t,sessionCreditLimit:e},r)=>t==="create"&&e!=null&&e<=r;var aQ=t=>{let e=Ih(t);if(!Oh(t,e))return"default";let r=Ze();return r.createAskFirstEnabled&&r.questionsEnabled?"ask_first":r.creditWrapUpEnabled?"budget_constrained":"default"},Vje=t=>{let e=aQ(t),r=Ih(t);return{budget_eligible:Oh(t,r),budget_constrained:e==="budget_constrained",ask_first:e==="ask_first"}};var L2t=G0.dirname(N2t(import.meta.url)),Hje=k2t(import.meta.url),D2t=G0.resolve(L2t,"scripts/scaffold.js"),M2t="scripts/scaffold.js",U2t=/"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\S+/g,cQ=t=>{if(t.length>=2){let e=t[0],r=t[t.length-1];if(e==='"'&&r==='"'||e==="'"&&r==="'")return t.slice(1,-1)}return t},F2t=t=>/^[A-Za-z_][A-Za-z0-9_]*=.*/.test(t),j2t=t=>{let e=cQ(t);return e==="node"||e.endsWith("/node")},Fl=t=>{if(typeof t!="string")return!1;let e=t.match(U2t)||[];if(e.length<2)return!1;let r=0;for(;r<e.length&&F2t(cQ(e[r]));)r+=1;if(r>=e.length||!j2t(e[r]))return!1;let n=e[r+1];return n?cQ(n).includes(M2t):!1},Nh=fe("create_stage"),lQ="Do not run local validation or dev-server commands to check your work \u2014 specifically `tsc`, `npx tsc`, `vite build`, `vite dev`, or any equivalent build/start/test command. The build pipeline installs and validates the project automatically after your edits. Verify your changes by reading the files you edited.",z2t=`${lQ}
635
635
 
636
636
  Commands that generate or modify project files are fine to run when the task requires them \u2014 for example \`drizzle-kit generate\` to write a database migration after a schema change, or other code-generation utilities documented in the skills.`,q2t=`${lQ}
637
637
 
package/dist/index.js CHANGED
@@ -140,7 +140,7 @@ For example, you can use the \`pathToFileURL()\` method of the \`url\` core modu
140
140
  `,LF:`
141
141
  `,concatBytes:Zz},d6e=(t,e)=>{let r=new Uint8Array(t.length+e.length);return r.set(t,0),r.set(e,t.length),r},f6e={windowsNewline:new Uint8Array([13,10]),unixNewline:new Uint8Array([10]),LF:10,concatBytes:d6e};import{Buffer as p6e}from"buffer";var mue=(t,e)=>t?void 0:h6e.bind(void 0,e),h6e=function*(t,e){if(typeof e!="string"&&!vr(e)&&!p6e.isBuffer(e))throw new TypeError(`The \`${t}\` option's transform must use "objectMode: true" to receive as input: ${typeof e}.`);yield e},gue=(t,e)=>t?m6e.bind(void 0,e):g6e.bind(void 0,e),m6e=function*(t,e){_ue(t,e),yield e},g6e=function*(t,e){if(_ue(t,e),typeof e!="string"&&!vr(e))throw new TypeError(`The \`${t}\` option's function must yield a string or an Uint8Array, not ${typeof e}.`);yield e},_ue=(t,e)=>{if(e==null)throw new TypeError(`The \`${t}\` option's function must not call \`yield ${e}\`.
142
142
  Instead, \`yield\` should either be called with a value, or not be called at all. For example:
143
- if (condition) { yield value; }`)};import{Buffer as _6e}from"buffer";import{StringDecoder as y6e}from"string_decoder";var EC=(t,e,r)=>{if(r)return;if(t)return{transform:S6e.bind(void 0,new TextEncoder)};let n=new y6e(e);return{transform:E6e.bind(void 0,n),final:v6e.bind(void 0,n)}},S6e=function*(t,e){_6e.isBuffer(e)?yield Ma(e):typeof e=="string"?yield t.encode(e):yield e},E6e=function*(t,e){yield vr(e)?t.write(e):e},v6e=function*(t){let e=t.end();e!==""&&(yield e)};import{callbackify as yue}from"util";var Xz=yue(async(t,e,r,n)=>{e.currentIterable=t(...r);try{for await(let i of e.currentIterable)n.push(i)}finally{delete e.currentIterable}}),vC=async function*(t,e,r){if(r===e.length){yield t;return}let{transform:n=T6e}=e[r];for await(let i of n(t))yield*vC(i,e,r+1)},Sue=async function*(t){for(let[e,{final:r}]of Object.entries(t))yield*b6e(r,Number(e),t)},b6e=async function*(t,e,r){if(t!==void 0)for await(let n of t())yield*vC(n,r,e+1)},Eue=yue(async({currentIterable:t},e)=>{if(t!==void 0){await(e?t.throw(e):t.return());return}if(e)throw e}),T6e=function*(t){yield t};var Qz=(t,e,r,n)=>{try{for(let i of t(...e))r.push(i);n()}catch(i){n(i)}},vue=(t,e)=>[...e.flatMap(r=>[...Ed(r,t,0)]),...gE(t)],Ed=function*(t,e,r){if(r===e.length){yield t;return}let{transform:n=A6e}=e[r];for(let i of n(t))yield*Ed(i,e,r+1)},gE=function*(t){for(let[e,{final:r}]of Object.entries(t))yield*w6e(r,Number(e),t)},w6e=function*(t,e,r){if(t!==void 0)for(let n of t())yield*Ed(n,r,e+1)},A6e=function*(t){yield t};var ej=({value:t,value:{transform:e,final:r,writableObjectMode:n,readableObjectMode:i},optionName:o},{encoding:s})=>{let a={},c=Tue(t,s,o),l=Sd(e),u=Sd(r),d=l?Xz.bind(void 0,vC,a):Qz.bind(void 0,Ed),f=l||u?Xz.bind(void 0,Sue,a):Qz.bind(void 0,gE),p=l||u?Eue.bind(void 0,a):void 0;return{stream:new x6e({writableObjectMode:n,writableHighWaterMark:bue(n),readableObjectMode:i,readableHighWaterMark:bue(i),transform(m,g,_){d([m,c,0],this,_)},flush(m){f([c],this,m)},destroy:p})}},bC=(t,e,r,n)=>{let i=e.filter(({type:s})=>s==="generator"),o=n?i.reverse():i;for(let{value:s,optionName:a}of o){let c=Tue(s,r,a);t=vue(c,t)}return t},Tue=({transform:t,final:e,binary:r,writableObjectMode:n,readableObjectMode:i,preserveNewlines:o},s,a)=>{let c={};return[{transform:mue(n,a)},EC(r,s,n),SC(r,o,n,c),{transform:t,final:e},{transform:gue(i,a)},hue({binary:r,preserveNewlines:o,readableObjectMode:i,state:c})].filter(Boolean)};var wue=(t,e)=>{for(let r of R6e(t))C6e(t,r,e)},R6e=t=>new Set(Object.entries(t).filter(([,{direction:e}])=>e==="input").map(([e])=>Number(e))),C6e=(t,e,r)=>{let{stdioItems:n}=t[e],i=n.filter(({contents:a})=>a!==void 0);if(i.length===0)return;if(e!==0){let[{type:a,optionName:c}]=i;throw new TypeError(`Only the \`stdin\` option, not \`${c}\`, can be ${al[a]} with synchronous methods.`)}let s=i.map(({contents:a})=>a).map(a=>I6e(a,n));r.input=sE(s)},I6e=(t,e)=>{let r=bC(t,e,"utf8",!0);return P6e(r),sE(r)},P6e=t=>{let e=t.find(r=>typeof r!="string"&&!vr(r));if(e!==void 0)throw new TypeError(`The \`stdin\` option is invalid: when passing objects as input, a transform must be used to serialize them to strings or Uint8Arrays: ${e}.`)};import{writeFileSync as M6e,appendFileSync as $6e}from"fs";var TC=({stdioItems:t,encoding:e,verboseInfo:r,fdNumber:n})=>n!=="all"&&bh(r,n)&&!vi.has(e)&&O6e(n)&&(t.some(({type:i,value:o})=>i==="native"&&N6e.has(o))||t.every(({type:i})=>Zi.has(i))),O6e=t=>t===1||t===2,N6e=new Set(["pipe","overlapped"]),Aue=async(t,e,r,n)=>{for await(let i of t)k6e(e)||Rue(i,r,n)},xue=(t,e,r)=>{for(let n of t)Rue(n,e,r)},k6e=t=>t._readableState.pipes.length>0,Rue=(t,e,r)=>{let n=L0(t);xs({type:"output",verboseMessage:n,fdNumber:e,verboseInfo:r})};var Cue=({fileDescriptors:t,syncResult:{output:e},options:r,isMaxBuffer:n,verboseInfo:i})=>{if(e===null)return{output:Array.from({length:3})};let o={},s=new Set([]);return{output:e.map((c,l)=>D6e({result:c,fileDescriptors:t,fdNumber:l,state:o,outputFiles:s,isMaxBuffer:n,verboseInfo:i},r)),...o}},D6e=({result:t,fileDescriptors:e,fdNumber:r,state:n,outputFiles:i,isMaxBuffer:o,verboseInfo:s},{buffer:a,encoding:c,lines:l,stripFinalNewline:u,maxBuffer:d})=>{if(t===null)return;let f=Ile(t,o,d),p=Ma(f),{stdioItems:h,objectMode:m}=e[r],g=L6e([p],h,c,n),{serializedResult:_,finalResult:v=_}=U6e({chunks:g,objectMode:m,encoding:c,lines:l,stripFinalNewline:u,fdNumber:r});F6e({serializedResult:_,fdNumber:r,state:n,verboseInfo:s,encoding:c,stdioItems:h,objectMode:m});let w=a[r]?v:void 0;try{return n.error===void 0&&z6e(_,h,i),w}catch(b){return n.error=b,w}},L6e=(t,e,r,n)=>{try{return bC(t,e,r,!1)}catch(i){return n.error=i,t}},U6e=({chunks:t,objectMode:e,encoding:r,lines:n,stripFinalNewline:i,fdNumber:o})=>{if(e)return{serializedResult:t};if(r==="buffer")return{serializedResult:sE(t)};let s=qse(t,r);return n[o]?{serializedResult:s,finalResult:Jz(s,!i[o],e)}:{serializedResult:s}},F6e=({serializedResult:t,fdNumber:e,state:r,verboseInfo:n,encoding:i,stdioItems:o,objectMode:s})=>{if(!TC({stdioItems:o,encoding:i,verboseInfo:n,fdNumber:e}))return;let a=Jz(t,!1,s);try{xue(a,e,n)}catch(c){r.error??=c}},z6e=(t,e,r)=>{for(let{path:n,append:i}of e.filter(({type:o})=>_C.has(o))){let o=typeof n=="string"?n:n.toString();i||r.has(o)?$6e(n,t):(r.add(o),M6e(n,t))}};var Iue=([,t,e],r)=>{if(r.all)return t===void 0?e:e===void 0?t:Array.isArray(t)?Array.isArray(e)?[...t,...e]:[...t,La(e,r,"all")]:Array.isArray(e)?[La(t,r,"all"),...e]:vr(t)&&vr(e)?sz([t,e]):`${t}${e}`};import{once as tj}from"events";var Pue=async(t,e)=>{let[r,n]=await j6e(t);return e.isForcefullyTerminated??=!1,[r,n]},j6e=async t=>{let[e,r]=await Promise.allSettled([tj(t,"spawn"),tj(t,"exit")]);return e.status==="rejected"?[]:r.status==="rejected"?Oue(t):r.value},Oue=async t=>{try{return await tj(t,"exit")}catch{return Oue(t)}},Nue=async t=>{let[e,r]=await t;if(!B6e(e,r)&&rj(e,r))throw new Mo;return[e,r]},B6e=(t,e)=>t===void 0&&e===void 0,rj=(t,e)=>t!==0||e!==null;var kue=({error:t,status:e,signal:r,output:n},{maxBuffer:i})=>{let o=q6e(t,e,r),s=o?.code==="ETIMEDOUT",a=Cle(o,n,i);return{resultError:o,exitCode:e,signal:r,timedOut:s,isMaxBuffer:a}},q6e=(t,e,r)=>t!==void 0?t:rj(e,r)?new Mo:void 0;var Mue=(t,e,r)=>{let{file:n,commandArguments:i,command:o,escapedCommand:s,startTime:a,verboseInfo:c,options:l,fileDescriptors:u}=G6e(t,e,r),d=Y6e({file:n,commandArguments:i,options:l,command:o,escapedCommand:s,verboseInfo:c,fileDescriptors:u,startTime:a});return Nh(d,c,l)},G6e=(t,e,r)=>{let{command:n,escapedCommand:i,startTime:o,verboseInfo:s}=F0(t,e,r),a=H6e(r),{file:c,commandArguments:l,options:u}=oC(t,e,a);W6e(u);let d=uue(u,s);return{file:c,commandArguments:l,command:n,escapedCommand:i,startTime:o,verboseInfo:s,options:u,fileDescriptors:d}},H6e=t=>t.node&&!t.ipc?{...t,ipc:!1}:t,W6e=({ipc:t,ipcInput:e,detached:r,cancelSignal:n})=>{e&&wC("ipcInput"),t&&wC("ipc: true"),r&&wC("detached: true"),n&&wC("cancelSignal")},wC=t=>{throw new TypeError(`The "${t}" option cannot be used with synchronous methods.`)},Y6e=({file:t,commandArguments:e,options:r,command:n,escapedCommand:i,verboseInfo:o,fileDescriptors:s,startTime:a})=>{let c=K6e({file:t,commandArguments:e,options:r,command:n,escapedCommand:i,fileDescriptors:s,startTime:a});if(c.failed)return c;let{resultError:l,exitCode:u,signal:d,timedOut:f,isMaxBuffer:p}=kue(c,r),{output:h,error:m=l}=Cue({fileDescriptors:s,syncResult:c,options:r,isMaxBuffer:p,verboseInfo:o}),g=h.map((v,w)=>La(v,r,w)),_=La(Iue(h,r),r,"all");return J6e({error:m,exitCode:u,signal:d,timedOut:f,isMaxBuffer:p,stdio:g,all:_,options:r,command:n,escapedCommand:i,startTime:a})},K6e=({file:t,commandArguments:e,options:r,command:n,escapedCommand:i,fileDescriptors:o,startTime:s})=>{try{wue(o,r);let a=Z6e(r);return V6e(...sC(t,e,a))}catch(a){return Oh({error:a,command:n,escapedCommand:i,fileDescriptors:o,options:r,startTime:s,isSync:!0})}},Z6e=({encoding:t,maxBuffer:e,...r})=>({...r,encoding:"buffer",maxBuffer:pC(e)}),J6e=({error:t,exitCode:e,signal:r,timedOut:n,isMaxBuffer:i,stdio:o,all:s,options:a,command:c,escapedCommand:l,startTime:u})=>t===void 0?hC({command:c,escapedCommand:l,stdio:o,all:s,ipcOutput:[],options:a,startTime:u}):mE({error:t,command:c,escapedCommand:l,timedOut:n,isCanceled:!1,isGracefullyCanceled:!1,isMaxBuffer:i,isForcefullyTerminated:!1,exitCode:e,signal:r,stdio:o,all:s,ipcOutput:[],options:a,startTime:u,isSync:!0});import{setMaxListeners as UWe}from"events";import{spawn as FWe}from"child_process";import Fue from"process";import{once as nj,on as X6e}from"events";var $ue=({anyProcess:t,channel:e,isSubprocess:r,ipc:n},{reference:i=!0,filter:o}={})=>(Ah({methodName:"getOneMessage",isSubprocess:r,ipc:n,isConnected:Q0(t)}),Q6e({anyProcess:t,channel:e,isSubprocess:r,filter:o,reference:i})),Q6e=async({anyProcess:t,channel:e,isSubprocess:r,filter:n,reference:i})=>{K0(e,i);let o=sl(t,e,r),s=new AbortController;try{return await Promise.race([e3e(o,n,s),t3e(o,r,s),r3e(o,r,s)])}catch(a){throw xh(t),a}finally{s.abort(),Z0(e,i)}},e3e=async(t,e,{signal:r})=>{if(e===void 0){let[n]=await nj(t,"message",{signal:r});return n}for await(let[n]of X6e(t,"message",{signal:r}))if(e(n))return n},t3e=async(t,e,{signal:r})=>{await nj(t,"disconnect",{signal:r}),vce(e)},r3e=async(t,e,{signal:r})=>{let[n]=await nj(t,"strict:error",{signal:r});throw H0(n,e)};import{once as Lue,on as n3e}from"events";var Uue=({anyProcess:t,channel:e,isSubprocess:r,ipc:n},{reference:i=!0}={})=>ij({anyProcess:t,channel:e,isSubprocess:r,ipc:n,shouldAwait:!r,reference:i}),ij=({anyProcess:t,channel:e,isSubprocess:r,ipc:n,shouldAwait:i,reference:o})=>{Ah({methodName:"getEachMessage",isSubprocess:r,ipc:n,isConnected:Q0(t)}),K0(e,o);let s=sl(t,e,r),a=new AbortController,c={};return i3e(t,s,a),o3e({ipcEmitter:s,isSubprocess:r,controller:a,state:c}),s3e({anyProcess:t,channel:e,ipcEmitter:s,isSubprocess:r,shouldAwait:i,controller:a,state:c,reference:o})},i3e=async(t,e,r)=>{try{await Lue(e,"disconnect",{signal:r.signal}),r.abort()}catch{}},o3e=async({ipcEmitter:t,isSubprocess:e,controller:r,state:n})=>{try{let[i]=await Lue(t,"strict:error",{signal:r.signal});n.error=H0(i,e),r.abort()}catch{}},s3e=async function*({anyProcess:t,channel:e,ipcEmitter:r,isSubprocess:n,shouldAwait:i,controller:o,state:s,reference:a}){try{for await(let[c]of n3e(r,"message",{signal:o.signal}))Due(s),yield c}catch{Due(s)}finally{o.abort(),Z0(e,a),n||xh(t),i&&await t}},Due=({error:t})=>{if(t)throw t};var zue=(t,{ipc:e})=>{Object.assign(t,Bue(t,!1,e))},jue=()=>{let t=Fue,e=!0,r=Fue.channel!==void 0;return{...Bue(t,e,r),getCancelSignal:Yce.bind(void 0,{anyProcess:t,channel:t.channel,isSubprocess:e,ipc:r})}},Bue=(t,e,r)=>({sendMessage:nC.bind(void 0,{anyProcess:t,channel:t.channel,isSubprocess:e,ipc:r}),getOneMessage:$ue.bind(void 0,{anyProcess:t,channel:t.channel,isSubprocess:e,ipc:r}),getEachMessage:Uue.bind(void 0,{anyProcess:t,channel:t.channel,isSubprocess:e,ipc:r})});import{ChildProcess as a3e}from"child_process";import{PassThrough as c3e,Readable as l3e,Writable as u3e,Duplex as d3e}from"stream";var que=({error:t,command:e,escapedCommand:r,fileDescriptors:n,options:i,startTime:o,verboseInfo:s})=>{Yz(n);let a=new a3e;f3e(a,n),Object.assign(a,{readable:p3e,writable:h3e,duplex:m3e});let c=Oh({error:t,command:e,escapedCommand:r,fileDescriptors:n,options:i,startTime:o,isSync:!1}),l=g3e(c,s,i);return{subprocess:a,promise:l}},f3e=(t,e)=>{let r=_E(),n=_E(),i=_E(),o=Array.from({length:e.length-3},_E),s=_E(),a=[r,n,i,...o];Object.assign(t,{stdin:r,stdout:n,stderr:i,all:s,stdio:a})},_E=()=>{let t=new c3e;return t.end(),t},p3e=()=>new l3e({read(){}}),h3e=()=>new u3e({write(){}}),m3e=()=>new d3e({read(){},write(){}}),g3e=async(t,e,r)=>Nh(t,e,r);import{createReadStream as Vue,createWriteStream as Gue}from"fs";import{Buffer as _3e}from"buffer";import{Readable as yE,Writable as y3e,Duplex as S3e}from"stream";var Wue=(t,e)=>yC(E3e,t,e,!1),SE=({type:t,optionName:e})=>{throw new TypeError(`The \`${e}\` option cannot be ${al[t]}.`)},Hue={fileNumber:SE,generator:ej,asyncGenerator:ej,nodeStream:({value:t})=>({stream:t}),webTransform({value:{transform:t,writableObjectMode:e,readableObjectMode:r}}){let n=e||r;return{stream:S3e.fromWeb(t,{objectMode:n})}},duplex:({value:{transform:t}})=>({stream:t}),native(){}},E3e={input:{...Hue,fileUrl:({value:t})=>({stream:Vue(t)}),filePath:({value:{file:t}})=>({stream:Vue(t)}),webStream:({value:t})=>({stream:yE.fromWeb(t)}),iterable:({value:t})=>({stream:yE.from(t)}),asyncIterable:({value:t})=>({stream:yE.from(t)}),string:({value:t})=>({stream:yE.from(t)}),uint8Array:({value:t})=>({stream:yE.from(_3e.from(t))})},output:{...Hue,fileUrl:({value:t})=>({stream:Gue(t)}),filePath:({value:{file:t,append:e}})=>({stream:Gue(t,e?{flags:"a"}:{})}),webStream:({value:t})=>({stream:y3e.fromWeb(t)}),iterable:SE,asyncIterable:SE,string:SE,uint8Array:SE}};import{on as v3e,once as Yue}from"events";import{PassThrough as b3e,getDefaultHighWaterMark as T3e}from"stream";import{finished as Jue}from"stream/promises";function vd(t){if(!Array.isArray(t))throw new TypeError(`Expected an array, got \`${typeof t}\`.`);for(let i of t)sj(i);let e=t.some(({readableObjectMode:i})=>i),r=w3e(t,e),n=new oj({objectMode:e,writableHighWaterMark:r,readableHighWaterMark:r});for(let i of t)n.add(i);return n}var w3e=(t,e)=>{if(t.length===0)return T3e(e);let r=t.filter(({readableObjectMode:n})=>n===e).map(({readableHighWaterMark:n})=>n);return Math.max(...r)},oj=class extends b3e{#e=new Set([]);#r=new Set([]);#t=new Set([]);#n;#o=Symbol("unpipe");#i=new WeakMap;add(e){if(sj(e),this.#e.has(e))return;this.#e.add(e),this.#n??=A3e(this,this.#e,this.#o);let r=C3e({passThroughStream:this,stream:e,streams:this.#e,ended:this.#r,aborted:this.#t,onFinished:this.#n,unpipeEvent:this.#o});this.#i.set(e,r),e.pipe(this,{end:!1})}async remove(e){if(sj(e),!this.#e.has(e))return!1;let r=this.#i.get(e);return r===void 0?!1:(this.#i.delete(e),e.unpipe(this),await r,!0)}},A3e=async(t,e,r)=>{AC(t,Kue);let n=new AbortController;try{await Promise.race([x3e(t,n),R3e(t,e,r,n)])}finally{n.abort(),AC(t,-Kue)}},x3e=async(t,{signal:e})=>{try{await Jue(t,{signal:e,cleanup:!0})}catch(r){throw Xue(t,r),r}},R3e=async(t,e,r,{signal:n})=>{for await(let[i]of v3e(t,"unpipe",{signal:n}))e.has(i)&&i.emit(r)},sj=t=>{if(typeof t?.pipe!="function")throw new TypeError(`Expected a readable stream, got: \`${typeof t}\`.`)},C3e=async({passThroughStream:t,stream:e,streams:r,ended:n,aborted:i,onFinished:o,unpipeEvent:s})=>{AC(t,Zue);let a=new AbortController;try{await Promise.race([I3e(o,e,a),P3e({passThroughStream:t,stream:e,streams:r,ended:n,aborted:i,controller:a}),O3e({stream:e,streams:r,ended:n,aborted:i,unpipeEvent:s,controller:a})])}finally{a.abort(),AC(t,-Zue)}r.size>0&&r.size===n.size+i.size&&(n.size===0&&i.size>0?aj(t):N3e(t))},I3e=async(t,e,{signal:r})=>{try{await t,r.aborted||aj(e)}catch(n){r.aborted||Xue(e,n)}},P3e=async({passThroughStream:t,stream:e,streams:r,ended:n,aborted:i,controller:{signal:o}})=>{try{await Jue(e,{signal:o,cleanup:!0,readable:!0,writable:!1}),r.has(e)&&n.add(e)}catch(s){if(o.aborted||!r.has(e))return;Que(s)?i.add(e):ede(t,s)}},O3e=async({stream:t,streams:e,ended:r,aborted:n,unpipeEvent:i,controller:{signal:o}})=>{if(await Yue(t,i,{signal:o}),!t.readable)return Yue(o,"abort",{signal:o});e.delete(t),r.delete(t),n.delete(t)},N3e=t=>{t.writable&&t.end()},Xue=(t,e)=>{Que(e)?aj(t):ede(t,e)},Que=t=>t?.code==="ERR_STREAM_PREMATURE_CLOSE",aj=t=>{(t.readable||t.writable)&&t.destroy()},ede=(t,e)=>{t.destroyed||(t.once("error",k3e),t.destroy(e))},k3e=()=>{},AC=(t,e)=>{let r=t.getMaxListeners();r!==0&&r!==Number.POSITIVE_INFINITY&&t.setMaxListeners(r+e)},Kue=2,Zue=1;import{finished as tde}from"stream/promises";var Mh=(t,e)=>{t.pipe(e),M3e(t,e),$3e(t,e)},M3e=async(t,e)=>{if(!(ko(t)||ko(e))){try{await tde(t,{cleanup:!0,readable:!0,writable:!1})}catch{}cj(e)}},cj=t=>{t.writable&&t.end()},$3e=async(t,e)=>{if(!(ko(t)||ko(e))){try{await tde(e,{cleanup:!0,readable:!1,writable:!0})}catch{}lj(t)}},lj=t=>{t.readable&&t.destroy()};var rde=(t,e,r)=>{let n=new Map;for(let[i,{stdioItems:o,direction:s}]of Object.entries(e)){for(let{stream:a}of o.filter(({type:c})=>Zi.has(c)))D3e(t,a,s,i);for(let{stream:a}of o.filter(({type:c})=>!Zi.has(c)))U3e({subprocess:t,stream:a,direction:s,fdNumber:i,pipeGroups:n,controller:r})}for(let[i,o]of n.entries()){let s=o.length===1?o[0]:vd(o);Mh(s,i)}},D3e=(t,e,r,n)=>{r==="output"?Mh(t.stdio[n],e):Mh(e,t.stdio[n]);let i=L3e[n];i!==void 0&&(t[i]=e),t.stdio[n]=e},L3e=["stdin","stdout","stderr"],U3e=({subprocess:t,stream:e,direction:r,fdNumber:n,pipeGroups:i,controller:o})=>{if(e===void 0)return;F3e(e,o);let[s,a]=r==="output"?[e,t.stdio[n]]:[t.stdio[n],e],c=i.get(s)??[];i.set(s,[...c,a])},F3e=(t,{signal:e})=>{ko(t)&&_d(t,z3e,e)},z3e=2;import{addAbortListener as q3e}from"events";var bd=[];bd.push("SIGHUP","SIGINT","SIGTERM");process.platform!=="win32"&&bd.push("SIGALRM","SIGABRT","SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");process.platform==="linux"&&bd.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT");var xC=t=>!!t&&typeof t=="object"&&typeof t.removeListener=="function"&&typeof t.emit=="function"&&typeof t.reallyExit=="function"&&typeof t.listeners=="function"&&typeof t.kill=="function"&&typeof t.pid=="number"&&typeof t.on=="function",uj=Symbol.for("signal-exit emitter"),dj=globalThis,j3e=Object.defineProperty.bind(Object),fj=class{emitted={afterExit:!1,exit:!1};listeners={afterExit:[],exit:[]};count=0;id=Math.random();constructor(){if(dj[uj])return dj[uj];j3e(dj,uj,{value:this,writable:!1,enumerable:!1,configurable:!1})}on(e,r){this.listeners[e].push(r)}removeListener(e,r){let n=this.listeners[e],i=n.indexOf(r);i!==-1&&(i===0&&n.length===1?n.length=0:n.splice(i,1))}emit(e,r,n){if(this.emitted[e])return!1;this.emitted[e]=!0;let i=!1;for(let o of this.listeners[e])i=o(r,n)===!0||i;return e==="exit"&&(i=this.emit("afterExit",r,n)||i),i}},RC=class{},B3e=t=>({onExit(e,r){return t.onExit(e,r)},load(){return t.load()},unload(){return t.unload()}}),pj=class extends RC{onExit(){return()=>{}}load(){}unload(){}},hj=class extends RC{#e=mj.platform==="win32"?"SIGINT":"SIGHUP";#r=new fj;#t;#n;#o;#i={};#s=!1;constructor(e){super(),this.#t=e,this.#i={};for(let r of bd)this.#i[r]=()=>{let n=this.#t.listeners(r),{count:i}=this.#r,o=e;if(typeof o.__signal_exit_emitter__=="object"&&typeof o.__signal_exit_emitter__.count=="number"&&(i+=o.__signal_exit_emitter__.count),n.length===i){this.unload();let s=this.#r.emit("exit",null,r),a=r==="SIGHUP"?this.#e:r;s||e.kill(e.pid,a)}};this.#o=e.reallyExit,this.#n=e.emit}onExit(e,r){if(!xC(this.#t))return()=>{};this.#s===!1&&this.load();let n=r?.alwaysLast?"afterExit":"exit";return this.#r.on(n,e),()=>{this.#r.removeListener(n,e),this.#r.listeners.exit.length===0&&this.#r.listeners.afterExit.length===0&&this.unload()}}load(){if(!this.#s){this.#s=!0,this.#r.count+=1;for(let e of bd)try{let r=this.#i[e];r&&this.#t.on(e,r)}catch{}this.#t.emit=(e,...r)=>this.#c(e,...r),this.#t.reallyExit=e=>this.#a(e)}}unload(){this.#s&&(this.#s=!1,bd.forEach(e=>{let r=this.#i[e];if(!r)throw new Error("Listener not defined for signal: "+e);try{this.#t.removeListener(e,r)}catch{}}),this.#t.emit=this.#n,this.#t.reallyExit=this.#o,this.#r.count-=1)}#a(e){return xC(this.#t)?(this.#t.exitCode=e||0,this.#r.emit("exit",this.#t.exitCode,null),this.#o.call(this.#t,this.#t.exitCode)):0}#c(e,...r){let n=this.#n;if(e==="exit"&&xC(this.#t)){typeof r[0]=="number"&&(this.#t.exitCode=r[0]);let i=n.call(this.#t,e,...r);return this.#r.emit("exit",this.#t.exitCode,null),i}else return n.call(this.#t,e,...r)}},mj=globalThis.process,{onExit:nde,load:hjt,unload:mjt}=B3e(xC(mj)?new hj(mj):new pj);var ide=(t,{cleanup:e,detached:r},{signal:n})=>{if(!e||r)return;let i=nde(()=>{t.kill()});q3e(n,()=>{i()})};var sde=({source:t,sourcePromise:e,boundOptions:r,createNested:n},...i)=>{let o=U0(),{destination:s,destinationStream:a,destinationError:c,from:l,unpipeSignal:u}=V3e(r,n,i),{sourceStream:d,sourceError:f}=H3e(t,l),{options:p,fileDescriptors:h}=Cs.get(t);return{sourcePromise:e,sourceStream:d,sourceOptions:p,sourceError:f,destination:s,destinationStream:a,destinationError:c,unpipeSignal:u,fileDescriptors:h,startTime:o}},V3e=(t,e,r)=>{try{let{destination:n,pipeOptions:{from:i,to:o,unpipeSignal:s}={}}=G3e(t,e,...r),a=Y0(n,o);return{destination:n,destinationStream:a,from:i,unpipeSignal:s}}catch(n){return{destinationError:n}}},G3e=(t,e,r,...n)=>{if(Array.isArray(r))return{destination:e(ode,t)(r,...n),pipeOptions:t};if(typeof r=="string"||r instanceof URL||iz(r)){if(Object.keys(t).length>0)throw new TypeError('Please use .pipe("file", ..., options) or .pipe(execa("file", ..., options)) instead of .pipe(options)("file", ...).');let[i,o,s]=C0(r,...n);return{destination:e(ode)(i,o,s),pipeOptions:s}}if(Cs.has(r)){if(Object.keys(t).length>0)throw new TypeError("Please use .pipe(options)`command` or .pipe($(options)`command`) instead of .pipe(options)($`command`).");return{destination:r,pipeOptions:n[0]}}throw new TypeError(`The first argument must be a template string, an options object, or an Execa subprocess: ${r}`)},ode=({options:t})=>({options:{...t,stdin:"pipe",piped:!0}}),H3e=(t,e)=>{try{return{sourceStream:Rh(t,e)}}catch(r){return{sourceError:r}}};var cde=({sourceStream:t,sourceError:e,destinationStream:r,destinationError:n,fileDescriptors:i,sourceOptions:o,startTime:s})=>{let a=W3e({sourceStream:t,sourceError:e,destinationStream:r,destinationError:n});if(a!==void 0)throw gj({error:a,fileDescriptors:i,sourceOptions:o,startTime:s})},W3e=({sourceStream:t,sourceError:e,destinationStream:r,destinationError:n})=>{if(e!==void 0&&n!==void 0)return n;if(n!==void 0)return lj(t),n;if(e!==void 0)return cj(r),e},gj=({error:t,fileDescriptors:e,sourceOptions:r,startTime:n})=>Oh({error:t,command:ade,escapedCommand:ade,fileDescriptors:e,options:r,startTime:n,isSync:!1}),ade="source.pipe(destination)";var lde=async t=>{let[{status:e,reason:r,value:n=r},{status:i,reason:o,value:s=o}]=await t;if(s.pipedFrom.includes(n)||s.pipedFrom.push(n),i==="rejected")throw s;if(e==="rejected")throw n;return s};import{finished as Y3e}from"stream/promises";var ude=(t,e,r)=>{let n=CC.has(e)?Z3e(t,e):K3e(t,e);return _d(t,X3e,r.signal),_d(e,Q3e,r.signal),J3e(e),n},K3e=(t,e)=>{let r=vd([t]);return Mh(r,e),CC.set(e,r),r},Z3e=(t,e)=>{let r=CC.get(e);return r.add(t),r},J3e=async t=>{try{await Y3e(t,{cleanup:!0,readable:!1,writable:!0})}catch{}CC.delete(t)},CC=new WeakMap,X3e=2,Q3e=1;import{aborted as eWe}from"util";var dde=(t,e)=>t===void 0?[]:[tWe(t,e)],tWe=async(t,{sourceStream:e,mergedStream:r,fileDescriptors:n,sourceOptions:i,startTime:o})=>{await eWe(t,e),await r.remove(e);let s=new Error("Pipe canceled by `unpipeSignal` option.");throw gj({error:s,fileDescriptors:n,sourceOptions:i,startTime:o})};var IC=(t,...e)=>{if(cr(e[0]))return IC.bind(void 0,{...t,boundOptions:{...t.boundOptions,...e[0]}});let{destination:r,...n}=sde(t,...e),i=rWe({...n,destination:r});return i.pipe=IC.bind(void 0,{...t,source:r,sourcePromise:i,boundOptions:{}}),i},rWe=async({sourcePromise:t,sourceStream:e,sourceOptions:r,sourceError:n,destination:i,destinationStream:o,destinationError:s,unpipeSignal:a,fileDescriptors:c,startTime:l})=>{let u=nWe(t,i);cde({sourceStream:e,sourceError:n,destinationStream:o,destinationError:s,fileDescriptors:c,sourceOptions:r,startTime:l});let d=new AbortController;try{let f=ude(e,o,d);return await Promise.race([lde(u),...dde(a,{sourceStream:e,mergedStream:f,sourceOptions:r,fileDescriptors:c,startTime:l})])}finally{d.abort()}},nWe=(t,e)=>Promise.allSettled([t,e]);import{setImmediate as uWe}from"timers/promises";import{on as iWe}from"events";import{getDefaultHighWaterMark as oWe}from"stream";var PC=({subprocessStdout:t,subprocess:e,binary:r,shouldEncode:n,encoding:i,preserveNewlines:o})=>{let s=new AbortController;return sWe(e,s),pde({stream:t,controller:s,binary:r,shouldEncode:!t.readableObjectMode&&n,encoding:i,shouldSplit:!t.readableObjectMode,preserveNewlines:o})},sWe=async(t,e)=>{try{await t}catch{}finally{e.abort()}},_j=({stream:t,onStreamEnd:e,lines:r,encoding:n,stripFinalNewline:i,allMixed:o})=>{let s=new AbortController;aWe(e,s,t);let a=t.readableObjectMode&&!o;return pde({stream:t,controller:s,binary:n==="buffer",shouldEncode:!a,encoding:n,shouldSplit:!a&&r,preserveNewlines:!i})},aWe=async(t,e,r)=>{try{await t}catch{r.destroy()}finally{e.abort()}},pde=({stream:t,controller:e,binary:r,shouldEncode:n,encoding:i,shouldSplit:o,preserveNewlines:s})=>{let a=iWe(t,"data",{signal:e.signal,highWaterMark:fde,highWatermark:fde});return cWe({onStdoutChunk:a,controller:e,binary:r,shouldEncode:n,encoding:i,shouldSplit:o,preserveNewlines:s})},yj=oWe(!0),fde=yj,cWe=async function*({onStdoutChunk:t,controller:e,binary:r,shouldEncode:n,encoding:i,shouldSplit:o,preserveNewlines:s}){let a=lWe({binary:r,shouldEncode:n,encoding:i,shouldSplit:o,preserveNewlines:s});try{for await(let[c]of t)yield*Ed(c,a,0)}catch(c){if(!e.signal.aborted)throw c}finally{yield*gE(a)}},lWe=({binary:t,shouldEncode:e,encoding:r,shouldSplit:n,preserveNewlines:i})=>[EC(t,r,!e),SC(t,i,!n,{})].filter(Boolean);var hde=async({stream:t,onStreamEnd:e,fdNumber:r,encoding:n,buffer:i,maxBuffer:o,lines:s,allMixed:a,stripFinalNewline:c,verboseInfo:l,streamInfo:u})=>{let d=dWe({stream:t,onStreamEnd:e,fdNumber:r,encoding:n,allMixed:a,verboseInfo:l,streamInfo:u});if(!i){await Promise.all([fWe(t),d]);return}let f=Kz(c,r),p=_j({stream:t,onStreamEnd:e,lines:s,encoding:n,stripFinalNewline:f,allMixed:a}),[h]=await Promise.all([pWe({stream:t,iterable:p,fdNumber:r,encoding:n,maxBuffer:o,lines:s}),d]);return h},dWe=async({stream:t,onStreamEnd:e,fdNumber:r,encoding:n,allMixed:i,verboseInfo:o,streamInfo:{fileDescriptors:s}})=>{if(!TC({stdioItems:s[r]?.stdioItems,encoding:n,verboseInfo:o,fdNumber:r}))return;let a=_j({stream:t,onStreamEnd:e,lines:!0,encoding:n,stripFinalNewline:!0,allMixed:i});await Aue(a,t,r,o)},fWe=async t=>{await uWe(),t.readableFlowing===null&&t.resume()},pWe=async({stream:t,stream:{readableObjectMode:e},iterable:r,fdNumber:n,encoding:i,maxBuffer:o,lines:s})=>{try{return e||s?await uC(r,{maxBuffer:o}):i==="buffer"?new Uint8Array(await dC(r,{maxBuffer:o})):await Ph(r,{maxBuffer:o})}catch(a){return mde(Ale({error:a,stream:t,readableObjectMode:e,lines:s,encoding:i,fdNumber:n}))}},Sj=async t=>{try{return await t}catch(e){return mde(e)}},mde=({bufferedData:t})=>jse(t)?new Uint8Array(t):t;import{finished as hWe}from"stream/promises";var EE=async(t,e,r,{isSameDirection:n,stopOnExit:i=!1}={})=>{let o=mWe(t,r),s=new AbortController;try{await Promise.race([...i?[r.exitPromise]:[],hWe(t,{cleanup:!0,signal:s.signal})])}catch(a){o.stdinCleanedUp||yWe(a,e,r,n)}finally{s.abort()}},mWe=(t,{originalStreams:[e],subprocess:r})=>{let n={stdinCleanedUp:!1};return t===e&&gWe(t,r,n),n},gWe=(t,e,r)=>{let{_destroy:n}=t;t._destroy=(...i)=>{_We(e,r),n.call(t,...i)}},_We=({exitCode:t,signalCode:e},r)=>{(t!==null||e!==null)&&(r.stdinCleanedUp=!0)},yWe=(t,e,r,n)=>{if(!SWe(t,e,r,n))throw t},SWe=(t,e,r,n=!0)=>r.propagating?gde(t)||OC(t):(r.propagating=!0,Ej(r,e)===n?gde(t):OC(t)),Ej=({fileDescriptors:t},e)=>e!=="all"&&t[e].direction==="input",OC=t=>t?.code==="ERR_STREAM_PREMATURE_CLOSE",gde=t=>t?.code==="EPIPE";var _de=({subprocess:t,encoding:e,buffer:r,maxBuffer:n,lines:i,stripFinalNewline:o,verboseInfo:s,streamInfo:a})=>t.stdio.map((c,l)=>vj({stream:c,fdNumber:l,encoding:e,buffer:r[l],maxBuffer:n[l],lines:i[l],allMixed:!1,stripFinalNewline:o,verboseInfo:s,streamInfo:a})),vj=async({stream:t,fdNumber:e,encoding:r,buffer:n,maxBuffer:i,lines:o,allMixed:s,stripFinalNewline:a,verboseInfo:c,streamInfo:l})=>{if(!t)return;let u=EE(t,e,l);if(Ej(l,e)){await u;return}let[d]=await Promise.all([hde({stream:t,onStreamEnd:u,fdNumber:e,encoding:r,buffer:n,maxBuffer:i,lines:o,allMixed:s,stripFinalNewline:a,verboseInfo:c,streamInfo:l}),u]);return d};var yde=({stdout:t,stderr:e},{all:r})=>r&&(t||e)?vd([t,e].filter(Boolean)):void 0,Sde=({subprocess:t,encoding:e,buffer:r,maxBuffer:n,lines:i,stripFinalNewline:o,verboseInfo:s,streamInfo:a})=>vj({...EWe(t,r),fdNumber:"all",encoding:e,maxBuffer:n[1]+n[2],lines:i[1]||i[2],allMixed:vWe(t),stripFinalNewline:o,verboseInfo:s,streamInfo:a}),EWe=({stdout:t,stderr:e,all:r},[,n,i])=>{let o=n||i;return o?n?i?{stream:r,buffer:o}:{stream:t,buffer:o}:{stream:e,buffer:o}:{stream:r,buffer:o}},vWe=({all:t,stdout:e,stderr:r})=>t&&e&&r&&e.readableObjectMode!==r.readableObjectMode;import{once as bWe}from"events";var Ede=t=>bh(t,"ipc"),vde=(t,e)=>{let r=L0(t);xs({type:"ipc",verboseMessage:r,fdNumber:"ipc",verboseInfo:e})};var bde=async({subprocess:t,buffer:e,maxBuffer:r,ipc:n,ipcOutput:i,verboseInfo:o})=>{if(!n)return i;let s=Ede(o),a=$a(e,"ipc"),c=$a(r,"ipc");for await(let l of ij({anyProcess:t,channel:t.channel,isSubprocess:!1,ipc:n,shouldAwait:!1,reference:!0}))a&&(xle(t,i,c),i.push(l)),s&&vde(l,o);return i},Tde=async(t,e)=>(await Promise.allSettled([t]),e);var wde=async({subprocess:t,options:{encoding:e,buffer:r,maxBuffer:n,lines:i,timeoutDuration:o,cancelSignal:s,gracefulCancel:a,forceKillAfterDelay:c,stripFinalNewline:l,ipc:u,ipcInput:d},context:f,verboseInfo:p,fileDescriptors:h,originalStreams:m,onInternalError:g,controller:_})=>{let v=Pue(t,f),w={originalStreams:m,fileDescriptors:h,subprocess:t,exitPromise:v,propagating:!1},b=_de({subprocess:t,encoding:e,buffer:r,maxBuffer:n,lines:i,stripFinalNewline:l,verboseInfo:p,streamInfo:w}),T=Sde({subprocess:t,encoding:e,buffer:r,maxBuffer:n,lines:i,stripFinalNewline:l,verboseInfo:p,streamInfo:w}),A=[],I=bde({subprocess:t,buffer:r,maxBuffer:n,ipc:u,ipcOutput:A,verboseInfo:p}),O=TWe(m,t,w),M=wWe(h,w);try{return await Promise.race([Promise.all([{},Nue(v),Promise.all(b),T,I,ile(t,d),...O,...M]),g,AWe(t,_),...Qce(t,o,f,_),...Ece({subprocess:t,cancelSignal:s,gracefulCancel:a,context:f,controller:_}),...Jce({subprocess:t,cancelSignal:s,gracefulCancel:a,forceKillAfterDelay:c,context:f,controller:_})])}catch(j){return f.terminationReason??="other",Promise.all([{error:j},v,Promise.all(b.map(y=>Sj(y))),Sj(T),Tde(I,A),Promise.allSettled(O),Promise.allSettled(M)])}},TWe=(t,e,r)=>t.map((n,i)=>n===e.stdio[i]?void 0:EE(n,i,r)),wWe=(t,e)=>t.flatMap(({stdioItems:r},n)=>r.filter(({value:i,stream:o=i})=>Do(o,{checkOpen:!1})&&!ko(o)).map(({type:i,value:o,stream:s=o})=>EE(s,n,e,{isSameDirection:Zi.has(i),stopOnExit:i==="native"}))),AWe=async(t,{signal:e})=>{let[r]=await bWe(t,"error",{signal:e});throw r};var Ade=()=>({readableDestroy:new WeakMap,writableFinal:new WeakMap,writableDestroy:new WeakMap}),vE=(t,e,r)=>{let n=t[r];n.has(e)||n.set(e,[]);let i=n.get(e),o=Rs();return i.push(o),{resolve:o.resolve.bind(o),promises:i}},$h=async({resolve:t,promises:e},r)=>{t();let[n]=await Promise.race([Promise.allSettled([!0,r]),Promise.all([!1,...e])]);return!n};import{Readable as xWe}from"stream";import{callbackify as RWe}from"util";import{finished as xde}from"stream/promises";var bj=async t=>{if(t!==void 0)try{await Tj(t)}catch{}},Rde=async t=>{if(t!==void 0)try{await wj(t)}catch{}},Tj=async t=>{await xde(t,{cleanup:!0,readable:!1,writable:!0})},wj=async t=>{await xde(t,{cleanup:!0,readable:!0,writable:!1})},NC=async(t,e)=>{if(await t,e)throw e},kC=(t,e,r)=>{r&&!OC(r)?t.destroy(r):e&&t.destroy()};var Cde=({subprocess:t,concurrentStreams:e,encoding:r},{from:n,binary:i=!0,preserveNewlines:o=!0}={})=>{let s=i||vi.has(r),{subprocessStdout:a,waitReadableDestroy:c}=Aj(t,n,e),{readableEncoding:l,readableObjectMode:u,readableHighWaterMark:d}=xj(a,s),{read:f,onStdoutDataDone:p}=Rj({subprocessStdout:a,subprocess:t,binary:s,encoding:r,preserveNewlines:o}),h=new xWe({read:f,destroy:RWe(Ij.bind(void 0,{subprocessStdout:a,subprocess:t,waitReadableDestroy:c})),highWaterMark:d,objectMode:u,encoding:l});return Cj({subprocessStdout:a,onStdoutDataDone:p,readable:h,subprocess:t}),h},Aj=(t,e,r)=>{let n=Rh(t,e),i=vE(r,n,"readableDestroy");return{subprocessStdout:n,waitReadableDestroy:i}},xj=({readableEncoding:t,readableObjectMode:e,readableHighWaterMark:r},n)=>n?{readableEncoding:t,readableObjectMode:e,readableHighWaterMark:r}:{readableEncoding:t,readableObjectMode:!0,readableHighWaterMark:yj},Rj=({subprocessStdout:t,subprocess:e,binary:r,encoding:n,preserveNewlines:i})=>{let o=Rs(),s=PC({subprocessStdout:t,subprocess:e,binary:r,shouldEncode:!r,encoding:n,preserveNewlines:i});return{read(){CWe(this,s,o)},onStdoutDataDone:o}},CWe=async(t,e,r)=>{try{let{value:n,done:i}=await e.next();i?r.resolve():t.push(n)}catch{}},Cj=async({subprocessStdout:t,onStdoutDataDone:e,readable:r,subprocess:n,subprocessStdin:i})=>{try{await wj(t),await n,await bj(i),await e,r.readable&&r.push(null)}catch(o){await bj(i),Ide(r,o)}},Ij=async({subprocessStdout:t,subprocess:e,waitReadableDestroy:r},n)=>{await $h(r,e)&&(Ide(t,n),await NC(e,n))},Ide=(t,e)=>{kC(t,t.readable,e)};import{Writable as IWe}from"stream";import{callbackify as Pde}from"util";var Ode=({subprocess:t,concurrentStreams:e},{to:r}={})=>{let{subprocessStdin:n,waitWritableFinal:i,waitWritableDestroy:o}=Pj(t,r,e),s=new IWe({...Oj(n,t,i),destroy:Pde(kj.bind(void 0,{subprocessStdin:n,subprocess:t,waitWritableFinal:i,waitWritableDestroy:o})),highWaterMark:n.writableHighWaterMark,objectMode:n.writableObjectMode});return Nj(n,s),s},Pj=(t,e,r)=>{let n=Y0(t,e),i=vE(r,n,"writableFinal"),o=vE(r,n,"writableDestroy");return{subprocessStdin:n,waitWritableFinal:i,waitWritableDestroy:o}},Oj=(t,e,r)=>({write:PWe.bind(void 0,t),final:Pde(OWe.bind(void 0,t,e,r))}),PWe=(t,e,r,n)=>{t.write(e,r)?n():t.once("drain",n)},OWe=async(t,e,r)=>{await $h(r,e)&&(t.writable&&t.end(),await e)},Nj=async(t,e,r)=>{try{await Tj(t),e.writable&&e.end()}catch(n){await Rde(r),Nde(e,n)}},kj=async({subprocessStdin:t,subprocess:e,waitWritableFinal:r,waitWritableDestroy:n},i)=>{await $h(r,e),await $h(n,e)&&(Nde(t,i),await NC(e,i))},Nde=(t,e)=>{kC(t,t.writable,e)};import{Duplex as NWe}from"stream";import{callbackify as kWe}from"util";var kde=({subprocess:t,concurrentStreams:e,encoding:r},{from:n,to:i,binary:o=!0,preserveNewlines:s=!0}={})=>{let a=o||vi.has(r),{subprocessStdout:c,waitReadableDestroy:l}=Aj(t,n,e),{subprocessStdin:u,waitWritableFinal:d,waitWritableDestroy:f}=Pj(t,i,e),{readableEncoding:p,readableObjectMode:h,readableHighWaterMark:m}=xj(c,a),{read:g,onStdoutDataDone:_}=Rj({subprocessStdout:c,subprocess:t,binary:a,encoding:r,preserveNewlines:s}),v=new NWe({read:g,...Oj(u,t,d),destroy:kWe(MWe.bind(void 0,{subprocessStdout:c,subprocessStdin:u,subprocess:t,waitReadableDestroy:l,waitWritableFinal:d,waitWritableDestroy:f})),readableHighWaterMark:m,writableHighWaterMark:u.writableHighWaterMark,readableObjectMode:h,writableObjectMode:u.writableObjectMode,encoding:p});return Cj({subprocessStdout:c,onStdoutDataDone:_,readable:v,subprocess:t,subprocessStdin:u}),Nj(u,v,c),v},MWe=async({subprocessStdout:t,subprocessStdin:e,subprocess:r,waitReadableDestroy:n,waitWritableFinal:i,waitWritableDestroy:o},s)=>{await Promise.all([Ij({subprocessStdout:t,subprocess:r,waitReadableDestroy:n},s),kj({subprocessStdin:e,subprocess:r,waitWritableFinal:i,waitWritableDestroy:o},s)])};var Mj=(t,e,{from:r,binary:n=!1,preserveNewlines:i=!1}={})=>{let o=n||vi.has(e),s=Rh(t,r),a=PC({subprocessStdout:s,subprocess:t,binary:o,shouldEncode:!0,encoding:e,preserveNewlines:i});return $We(a,s,t)},$We=async function*(t,e,r){try{yield*t}finally{e.readable&&e.destroy(),await r}};var Mde=(t,{encoding:e})=>{let r=Ade();t.readable=Cde.bind(void 0,{subprocess:t,concurrentStreams:r,encoding:e}),t.writable=Ode.bind(void 0,{subprocess:t,concurrentStreams:r}),t.duplex=kde.bind(void 0,{subprocess:t,concurrentStreams:r,encoding:e}),t.iterable=Mj.bind(void 0,t,e),t[Symbol.asyncIterator]=Mj.bind(void 0,t,e,{})};var $de=(t,e)=>{for(let[r,n]of LWe){let i=n.value.bind(e);Reflect.defineProperty(t,r,{...n,value:i})}},DWe=(async()=>{})().constructor.prototype,LWe=["then","catch","finally"].map(t=>[t,Reflect.getOwnPropertyDescriptor(DWe,t)]);var Dde=(t,e,r,n)=>{let{file:i,commandArguments:o,command:s,escapedCommand:a,startTime:c,verboseInfo:l,options:u,fileDescriptors:d}=zWe(t,e,r),{subprocess:f,promise:p}=BWe({file:i,commandArguments:o,options:u,startTime:c,verboseInfo:l,command:s,escapedCommand:a,fileDescriptors:d});return f.pipe=IC.bind(void 0,{source:f,sourcePromise:p,boundOptions:{},createNested:n}),$de(f,p),Cs.set(f,{options:u,fileDescriptors:d}),f},zWe=(t,e,r)=>{let{command:n,escapedCommand:i,startTime:o,verboseInfo:s}=F0(t,e,r),{file:a,commandArguments:c,options:l}=oC(t,e,r),u=jWe(l),d=Wue(u,s);return{file:a,commandArguments:c,command:n,escapedCommand:i,startTime:o,verboseInfo:s,options:u,fileDescriptors:d}},jWe=({timeout:t,signal:e,...r})=>{if(e!==void 0)throw new TypeError('The "signal" option has been renamed to "cancelSignal" instead.');return{...r,timeoutDuration:t}},BWe=({file:t,commandArguments:e,options:r,startTime:n,verboseInfo:i,command:o,escapedCommand:s,fileDescriptors:a})=>{let c;try{c=FWe(...sC(t,e,r))}catch(h){return que({error:h,command:o,escapedCommand:s,fileDescriptors:a,options:r,startTime:n,verboseInfo:i})}let l=new AbortController;UWe(Number.POSITIVE_INFINITY,l.signal);let u=[...c.stdio];rde(c,a,l),ide(c,r,l);let d={},f=Rs();c.kill=yce.bind(void 0,{kill:c.kill.bind(c),options:r,onInternalError:f,context:d,controller:l}),c.all=yde(c,r),Mde(c,r),zue(c,r);let p=qWe({subprocess:c,options:r,startTime:n,verboseInfo:i,fileDescriptors:a,originalStreams:u,command:o,escapedCommand:s,context:d,onInternalError:f,controller:l});return{subprocess:c,promise:p}},qWe=async({subprocess:t,options:e,startTime:r,verboseInfo:n,fileDescriptors:i,originalStreams:o,command:s,escapedCommand:a,context:c,onInternalError:l,controller:u})=>{let[d,[f,p],h,m,g]=await wde({subprocess:t,options:e,context:c,verboseInfo:n,fileDescriptors:i,originalStreams:o,onInternalError:l,controller:u});u.abort(),l.resolve();let _=h.map((b,T)=>La(b,e,T)),v=La(m,e,"all"),w=VWe({errorInfo:d,exitCode:f,signal:p,stdio:_,all:v,ipcOutput:g,context:c,options:e,command:s,escapedCommand:a,startTime:r});return Nh(w,n,e)},VWe=({errorInfo:t,exitCode:e,signal:r,stdio:n,all:i,ipcOutput:o,context:s,options:a,command:c,escapedCommand:l,startTime:u})=>"error"in t?mE({error:t.error,command:c,escapedCommand:l,timedOut:s.terminationReason==="timeout",isCanceled:s.terminationReason==="cancel"||s.terminationReason==="gracefulCancel",isGracefullyCanceled:s.terminationReason==="gracefulCancel",isMaxBuffer:t.error instanceof Is,isForcefullyTerminated:s.isForcefullyTerminated,exitCode:e,signal:r,stdio:n,all:i,ipcOutput:o,options:a,startTime:u,isSync:!1}):hC({command:c,escapedCommand:l,stdio:n,all:i,ipcOutput:o,options:a,startTime:u});var MC=(t,e)=>{let r=Object.fromEntries(Object.entries(e).map(([n,i])=>[n,GWe(n,t[n],i)]));return{...t,...r}},GWe=(t,e,r)=>HWe.has(t)&&cr(e)&&cr(r)?{...e,...r}:r,HWe=new Set(["env",...uz]);var cl=(t,e,r,n)=>{let i=(s,a,c)=>cl(s,a,r,c),o=(...s)=>WWe({mapArguments:t,deepOptions:r,boundOptions:e,setBoundExeca:n,createNested:i},...s);return n!==void 0&&n(o,i,e),o},WWe=({mapArguments:t,deepOptions:e={},boundOptions:r={},setBoundExeca:n,createNested:i},o,...s)=>{if(cr(o))return i(t,MC(r,o),n);let{file:a,commandArguments:c,options:l,isSync:u}=YWe({mapArguments:t,firstArgument:o,nextArguments:s,deepOptions:e,boundOptions:r});return u?Mue(a,c,l):Dde(a,c,l,i)},YWe=({mapArguments:t,firstArgument:e,nextArguments:r,deepOptions:n,boundOptions:i})=>{let o=Wse(e)?Yse(e,r):[e,...r],[s,a,c]=C0(...o),l=MC(MC(n,i),c),{file:u=s,commandArguments:d=a,options:f=l,isSync:p=!1}=t({file:s,commandArguments:a,options:l});return{file:u,commandArguments:d,options:f,isSync:p}};var Lde=({file:t,commandArguments:e})=>Fde(t,e),Ude=({file:t,commandArguments:e})=>({...Fde(t,e),isSync:!0}),Fde=(t,e)=>{if(e.length>0)throw new TypeError(`The command and its arguments must be passed as a single string: ${t} ${e}.`);let[r,...n]=KWe(t);return{file:r,commandArguments:n}},KWe=t=>{if(typeof t!="string")throw new TypeError(`The command must be a string: ${String(t)}.`);let e=t.trim();if(e==="")return[];let r=[];for(let n of e.split(ZWe)){let i=r.at(-1);i&&i.endsWith("\\")?r[r.length-1]=`${i.slice(0,-1)} ${n}`:r.push(n)}return r},ZWe=/ +/g;var zde=(t,e,r)=>{t.sync=e(JWe,r),t.s=t.sync},jde=({options:t})=>Bde(t),JWe=({options:t})=>({...Bde(t),isSync:!0}),Bde=t=>({options:{...XWe(t),...t}}),XWe=({input:t,inputFile:e,stdio:r})=>t===void 0&&e===void 0&&r===void 0?{stdin:"inherit"}:{},qde={preferLocal:!0};var Vde=cl(()=>({})),iqt=cl(()=>({isSync:!0})),Gde=cl(Lde),oqt=cl(Ude),sqt=cl(tle),aqt=cl(jde,{},qde,zde),{sendMessage:cqt,getOneMessage:lqt,getEachMessage:uqt,getCancelSignal:dqt}=jue();var Hde=!1,Wde,Yde=t=>{Hde=!0,Wde??=t},Ua=()=>Hde,Kde=()=>Wde;var bE=null,Zde=t=>(bE&&bE.destroy(),bE=new Os({totalAllowedTime:t}),bE),Jde=()=>bE;var Os=class{constructor({totalAllowedTime:e}){this.withStageTimer=async(e,r,n,{interruptible:i=!0}={})=>{if(this.isTimeExpired())throw new Error(`${e} stage did not complete in the allowed time. Time has already expired.`);if(i&&Ua())throw new Error(`Aborting ${e} stage \u2014 shutting down`);let o=this.onTimesUp(()=>{throw new Error(`${e} stage did not complete in the allowed time.`)}),s=null,a=null;n!==void 0&&(a=new Promise((u,d)=>{s=setTimeout(()=>{d(new Error(`${e} stage exceeded its maximum duration of ${n}ms`))},n)}));let c=Date.now(),l="success";try{return await _0({stage:e},async()=>a?await Promise.race([r(),a]):await r())}catch(u){throw l="failure",u}finally{Y.timing("stage.duration",Date.now()-c,{stage:e,outcome:l}),o(),s&&clearTimeout(s)}};this.startTime=Date.now(),this.totalAllowedTime=e,this.globalTimeoutId=null,this.subscribers=[],this.hasTimedOut=!1,this.setupGlobalTimeout()}getElapsedTime(){return Date.now()-this.startTime}getRemainingTime(){let e=this.getElapsedTime(),r=this.totalAllowedTime-e;return Math.max(0,r)}isTimeExpired(){return this.getRemainingTime()===0||this.hasTimedOut}setupGlobalTimeout(){this.globalTimeoutId&&clearTimeout(this.globalTimeoutId),this.globalTimeoutId=setTimeout(()=>{this.notifyTimeUp()},this.totalAllowedTime)}notifyTimeUp(){this.hasTimedOut=!0;for(let e=this.subscribers.length-1;e>=0;e--)try{this.subscribers[e]()}catch(r){console.error("TimeKeeper: Error in time up callback:",r)}}onTimesUp(e){if(this.subscribers.push(e),this.hasTimedOut)try{e()}catch(r){console.error("TimeKeeper: Error in time up callback:",r)}return()=>{let r=this.subscribers.indexOf(e);r>-1&&this.subscribers.splice(r,1)}}off(e){let r=this.subscribers.indexOf(e);r>-1&&this.subscribers.splice(r,1)}clearSubscribers(){this.subscribers.length=0}getSubscriberCount(){return this.subscribers.length}destroy(){this.globalTimeoutId&&(clearTimeout(this.globalTimeoutId),this.globalTimeoutId=null),this.clearSubscribers()}static{this.timeUnits={seconds:e=>e*1e3,minutes:e=>e*60*1e3,hours:e=>e*60*60*1e3}}};var Xde={name:"@netlify/agent-runner-cli",type:"module",version:"1.176.0-PAW-469.7",description:"CLI tool for running Netlify agents",main:"./dist/index.js",types:"./dist/index.d.ts",exports:"./dist/index.js",bin:{"agent-runner-cli":"./dist/bin.js","agent-runner-cli-local":"./dist/bin-local.js"},files:["dist/**/*.js","dist/**/*.d.ts","dist/skills/**","patches","scripts"],scripts:{prebuild:"rm -rf dist",build:"tsup",dev:"tsup --watch",prepare:"husky install node_modules/@netlify/eslint-config-node/.husky/",prepublishOnly:"npm ci && npm test",prepack:"npm run build",test:"run-s build format test:dev",format:"run-s build format:check-fix:*","format:ci":"run-s build format:check:*","format:check-fix:lint":"run-e format:check:lint format:fix:lint","format:check:lint":'eslint --cache --format=codeframe --max-warnings=0 "{src,scripts,test,.github}/**/*.{js,ts,md,html}"',"format:fix:lint":'eslint --fix --cache --format=codeframe --max-warnings=0 "{src,scripts,test,.github}/**/*.{js,ts,md,html}"',"format:check-fix:prettier":"run-e format:check:prettier format:fix:prettier","format:check:prettier":'prettier --check --ignore-path .gitignore --loglevel=warn "{src,scripts,test,.github}/**/*.{js,ts,md,yml,json,html}" "*.{js,ts,yml,json,html}" ".*.{js,ts,yml,json,html}" "!**/package-lock.json" "!package-lock.json" "!src/skills/**/*.md"',"format:fix:prettier":'prettier --write --ignore-path .gitignore --loglevel=warn "{src,scripts,test,.github}/**/*.{js,ts,md,yml,json,html}" "*.{js,ts,yml,json,html}" ".*.{js,ts,yml,json,html}" "!**/package-lock.json" "!package-lock.json" "!src/skills/**/*.md"',"test:dev":"run-s build test:dev:*","test:ci":"run-s build test:ci:*","test:dev:vitest":"LOG=0 vitest --exclude '**/integration/**'","test:ci:vitest":"LOG=0 vitest run --coverage --exclude '**/integration/**'","test:smoke":"node scripts/smoke-dist.js","test:integration":"vitest run test/integration/","test:integration:codex":"vitest run test/integration/codex.test.ts","test:integration:claude":"vitest run test/integration/claude.test.ts","test:integration:gemini":"vitest run test/integration/gemini.test.ts","test:integration:opencode":"vitest run test/integration/opencode.test.ts","test:integration:skill-invocation":"vitest run test/integration/skill-invocation.test.ts","check:types":"tsc --noEmit",postinstall:"node scripts/postinstall.js"},keywords:[],license:"MIT",repository:"netlify/agent-runner-cli",bugs:{url:"https://github.com/netlify/agent-runner-cli/issues"},author:"Netlify Inc.",directories:{test:"test"},devDependencies:{"@commitlint/cli":"^20.0.0","@commitlint/config-conventional":"^20.0.0","@eslint/compat":"^2.0.0","@eslint/js":"^10.0.1","@netlify/axis":"^1.17.6","@netlify/eslint-config-node":"^7.0.1","@types/node":"^24.5.0","@typescript-eslint/eslint-plugin":"^8.0.0","@typescript-eslint/parser":"^8.0.0","@vitest/coverage-v8":"^4.1.5","@vitest/eslint-plugin":"^1.6.6",eslint:"^10.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-n":"^17.0.0",husky:"^9.0.0",jiti:"^2.7.0","patch-package":"^8.0.0",tsup:"^8.5.0",typescript:"^5.0.0","typescript-eslint":"^8.44.0",vitest:"^4.0.16"},dependencies:{"@anthropic-ai/claude-code":"^2.1.219","@anthropic-ai/sdk":"0.91.1","@google/gemini-cli":"0.42.0","@modelcontextprotocol/sdk":"^1.29.0","@netlify/cache-utils":"^6.0.5","@netlify/database-proxy":"^0.2.1","@netlify/otel":"^6.0.6","@netlify/ts-cli":"^1.2.0","@openai/codex":"0.153.4","@opentelemetry/api":"^1.9.0","@opentelemetry/exporter-trace-otlp-grpc":"0.218.0",execa:"^9.6.1",fastify:"5.12.1",minimist:"^1.2.8",openai:"6.34.0",zod:"^4.4.3"}};var rYe=eYe(import.meta.url),nYe=Fa.dirname(rYe),iYe=tYe(import.meta.url),Dh=oe("shell"),$j=new Set,Qde={preferLocal:!0},Vt=(t,e,r)=>{let[n,i]=oYe(e,r),o={...Qde,...i},s=Vde(t,n,o);tfe(s,o),ife(s);let a=r?.idleTimeout;return a&&a>0&&nfe(s,a),s},efe=(t,e)=>{let r={...Qde,...e},n=Gde(t,r);return tfe(n,r),ife(n),e?.idleTimeout&&e.idleTimeout>0&&nfe(n,e.idleTimeout),n},oYe=function(t,e){return Array.isArray(t)?[t,e]:typeof t=="object"&&t!==null?[[],t]:[[],void 0]},tfe=(t,e)=>{if(e.stdio!==void 0||e.stdout!==void 0||e.stderr!==void 0||Ns.env.NETLIFY_LOCAL_QUIET==="true")return;if(Ns.env.NETLIFY_MASK_LOGS!=="false"){t.stdout?.pipe(new JS).pipe(Ns.stdout),t.stderr?.pipe(new JS).pipe(Ns.stderr);return}t.stdout?.pipe(Ns.stdout),t.stderr?.pipe(Ns.stderr)},Dj=(t,e="SIGTERM")=>{try{return t.pid&&!t.killed?(Ns.kill(-t.pid,e),Dh.log(`Killed process ${t.pid} with signal ${e}`),!0):!1}catch(r){return Dh.error("Error killing process:",r),!1}},rfe=t=>Dj(t,"SIGKILL"),nfe=(t,e)=>{let r=null,n=()=>{Dh.log(`Process ${t.pid} killed due to idle timeout (no output for ${e}ms)`),Dj(t,"SIGTERM"),setTimeout(()=>{t.pid&&!t.killed&&(Dh.log(`Force killing idle process ${t.pid}`),rfe(t))},5e3)},i=()=>{r&&clearTimeout(r),r=setTimeout(n,e)};i(),t.stdout?.on("data",i),t.stderr?.on("data",i);let o=()=>{r&&(clearTimeout(r),r=null)};t.on("exit",o),t.on("error",o)},ife=t=>{$j.add(t);let e=Jde();if(e){let r=e.onTimesUp(()=>{Dh.log(`Global timer expired, killing process ${t.pid}`),Dj(t,"SIGTERM"),setTimeout(()=>{t.pid&&!t.killed&&(Dh.log(`Force killing process ${t.pid} after timeout`),rfe(t))},5e3)});t.on("exit",()=>{$j.delete(t),r()}),t.on("error",()=>{$j.delete(t),r()})}};function ks(t,e){if(!Ns.env.NETLIFY_LOCAL_MODE)try{let i=iYe.resolve(Xde.name),o=Fa.dirname(i);for(;o!==Fa.dirname(o);){let s=Fa.dirname(o);if(Fa.basename(s)==="node_modules"){let a=Fa.join(s,".bin",e);if($C.existsSync(a))return a;break}o=s}}catch(i){console.error("Could not resolve package.json",i)}if(Ns.env.NODE_PATH){let i=Fa.join(Ns.env.NODE_PATH,".bin",e);if($C.existsSync(i))return i}let r=Fa.join(t,"node_modules",".bin",e);if($C.existsSync(r))return r;let n=Fa.join(nYe,"..","node_modules",".bin",e);if($C.existsSync(n))return n}var ofe=oe("repo"),lfe="runner-diffs-",UC=t=>`${lfe}${t}-`,ufe=async t=>{let e=cfe.tmpdir(),r;try{r=await DC.readdir(e)}catch{return}await Promise.all(r.filter(n=>n.startsWith(lfe)&&!n.startsWith(UC(t))).map(n=>DC.rm(LC.join(e,n),{recursive:!0,force:!0}).catch(()=>{})))},lr=(t,e={})=>Vt("git",t,{...e,env:{...e.env,NETLIFY_INTERNAL_GIT:"1"}}),FC=async({config:t,isRetry:e,cwd:r=process.cwd()})=>{ofe.info("Getting runner diffs");let n=await zj(r),{hasChanges:i}=n,{status:o}=n;if(!i)return{hasChanges:!1};if(!e){let l=Bj(o);await pYe(l,r)}ofe.info("Changes after processing"),await Fj(r);let s=await TE(o,r);if(await Uj(s,r),i=await uYe(r),!i)return{hasChanges:!1,ignored:s};await lr(["commit","-m","Agent runner [skip ci]"],{cwd:r});let a=await DC.mkdtemp(LC.join(cfe.tmpdir(),UC(t.sessionId))),c=await Lj({config:t,diffDir:a,cwd:r,target:{commit:"HEAD"},ignored:s});return await cYe(r),c.hasChanges&&Y.distribution("diff.size",(c.diffBinary??c.diff).size,{phase:"final"}),c},Lj=async({config:t,diffDir:e,cwd:r,target:n,ignored:i})=>{let o="commit"in n?n.commit:"--cached",s="indexPath"in n?{GIT_INDEX_FILE:n.indexPath}:void 0,a=async({from:p,fileName:h,binary:m})=>{let g=LC.join(e,h);await lr([...m?["diff",p,o,"--binary"]:["diff",p,o],`--output=${g}`],{stdio:["ignore","ignore","pipe"],cwd:r,env:s});let{size:v}=await DC.stat(g);return{path:g,size:v}},c=await a({from:t.runSha,fileName:"session.patch"});if(c.size===0)return{hasChanges:!1,ignored:i};let l=await a({from:t.runSha,fileName:"session-binary.patch",binary:!0}),u,d;if(t.sha){u=await a({from:t.sha,fileName:"cumulative.patch"});let p=await a({from:t.sha,fileName:"cumulative-binary.patch",binary:!0});await afe(u,p)||(d=p)}let f={hasChanges:!0,diff:c,resultDiff:u,ignored:i};return await afe(c,l)||(f.diffBinary=l),d&&(f.resultDiffBinary=d),f},sfe=async t=>{let e=sYe("sha256");for await(let r of aYe(t))e.update(r);return e.digest("hex")},afe=async(t,e)=>t.size===e.size&&await sfe(t.path)===await sfe(e.path),cYe=async(t=process.cwd())=>{process.env.NETLIFY_LOCAL_MODE&&await lr(["reset","--soft","HEAD~1"],{cwd:t})},Uj=async(t=[],e=process.cwd())=>{await lr(["add",".",...t],{cwd:e})},Fj=async(t=process.cwd())=>{let e=await lr(["status","-s"],{cwd:t});return String(e.stdout??"")},dfe=/.. (.+)?\.log$/,lYe=[dfe],zj=async(t=process.cwd())=>{let e=await Fj(t);return{hasChanges:(e.trim().length===0?[]:e.split(`
143
+ if (condition) { yield value; }`)};import{Buffer as _6e}from"buffer";import{StringDecoder as y6e}from"string_decoder";var EC=(t,e,r)=>{if(r)return;if(t)return{transform:S6e.bind(void 0,new TextEncoder)};let n=new y6e(e);return{transform:E6e.bind(void 0,n),final:v6e.bind(void 0,n)}},S6e=function*(t,e){_6e.isBuffer(e)?yield Ma(e):typeof e=="string"?yield t.encode(e):yield e},E6e=function*(t,e){yield vr(e)?t.write(e):e},v6e=function*(t){let e=t.end();e!==""&&(yield e)};import{callbackify as yue}from"util";var Xz=yue(async(t,e,r,n)=>{e.currentIterable=t(...r);try{for await(let i of e.currentIterable)n.push(i)}finally{delete e.currentIterable}}),vC=async function*(t,e,r){if(r===e.length){yield t;return}let{transform:n=T6e}=e[r];for await(let i of n(t))yield*vC(i,e,r+1)},Sue=async function*(t){for(let[e,{final:r}]of Object.entries(t))yield*b6e(r,Number(e),t)},b6e=async function*(t,e,r){if(t!==void 0)for await(let n of t())yield*vC(n,r,e+1)},Eue=yue(async({currentIterable:t},e)=>{if(t!==void 0){await(e?t.throw(e):t.return());return}if(e)throw e}),T6e=function*(t){yield t};var Qz=(t,e,r,n)=>{try{for(let i of t(...e))r.push(i);n()}catch(i){n(i)}},vue=(t,e)=>[...e.flatMap(r=>[...Ed(r,t,0)]),...gE(t)],Ed=function*(t,e,r){if(r===e.length){yield t;return}let{transform:n=A6e}=e[r];for(let i of n(t))yield*Ed(i,e,r+1)},gE=function*(t){for(let[e,{final:r}]of Object.entries(t))yield*w6e(r,Number(e),t)},w6e=function*(t,e,r){if(t!==void 0)for(let n of t())yield*Ed(n,r,e+1)},A6e=function*(t){yield t};var ej=({value:t,value:{transform:e,final:r,writableObjectMode:n,readableObjectMode:i},optionName:o},{encoding:s})=>{let a={},c=Tue(t,s,o),l=Sd(e),u=Sd(r),d=l?Xz.bind(void 0,vC,a):Qz.bind(void 0,Ed),f=l||u?Xz.bind(void 0,Sue,a):Qz.bind(void 0,gE),p=l||u?Eue.bind(void 0,a):void 0;return{stream:new x6e({writableObjectMode:n,writableHighWaterMark:bue(n),readableObjectMode:i,readableHighWaterMark:bue(i),transform(m,g,_){d([m,c,0],this,_)},flush(m){f([c],this,m)},destroy:p})}},bC=(t,e,r,n)=>{let i=e.filter(({type:s})=>s==="generator"),o=n?i.reverse():i;for(let{value:s,optionName:a}of o){let c=Tue(s,r,a);t=vue(c,t)}return t},Tue=({transform:t,final:e,binary:r,writableObjectMode:n,readableObjectMode:i,preserveNewlines:o},s,a)=>{let c={};return[{transform:mue(n,a)},EC(r,s,n),SC(r,o,n,c),{transform:t,final:e},{transform:gue(i,a)},hue({binary:r,preserveNewlines:o,readableObjectMode:i,state:c})].filter(Boolean)};var wue=(t,e)=>{for(let r of R6e(t))C6e(t,r,e)},R6e=t=>new Set(Object.entries(t).filter(([,{direction:e}])=>e==="input").map(([e])=>Number(e))),C6e=(t,e,r)=>{let{stdioItems:n}=t[e],i=n.filter(({contents:a})=>a!==void 0);if(i.length===0)return;if(e!==0){let[{type:a,optionName:c}]=i;throw new TypeError(`Only the \`stdin\` option, not \`${c}\`, can be ${al[a]} with synchronous methods.`)}let s=i.map(({contents:a})=>a).map(a=>I6e(a,n));r.input=sE(s)},I6e=(t,e)=>{let r=bC(t,e,"utf8",!0);return P6e(r),sE(r)},P6e=t=>{let e=t.find(r=>typeof r!="string"&&!vr(r));if(e!==void 0)throw new TypeError(`The \`stdin\` option is invalid: when passing objects as input, a transform must be used to serialize them to strings or Uint8Arrays: ${e}.`)};import{writeFileSync as M6e,appendFileSync as $6e}from"fs";var TC=({stdioItems:t,encoding:e,verboseInfo:r,fdNumber:n})=>n!=="all"&&bh(r,n)&&!vi.has(e)&&O6e(n)&&(t.some(({type:i,value:o})=>i==="native"&&N6e.has(o))||t.every(({type:i})=>Zi.has(i))),O6e=t=>t===1||t===2,N6e=new Set(["pipe","overlapped"]),Aue=async(t,e,r,n)=>{for await(let i of t)k6e(e)||Rue(i,r,n)},xue=(t,e,r)=>{for(let n of t)Rue(n,e,r)},k6e=t=>t._readableState.pipes.length>0,Rue=(t,e,r)=>{let n=L0(t);xs({type:"output",verboseMessage:n,fdNumber:e,verboseInfo:r})};var Cue=({fileDescriptors:t,syncResult:{output:e},options:r,isMaxBuffer:n,verboseInfo:i})=>{if(e===null)return{output:Array.from({length:3})};let o={},s=new Set([]);return{output:e.map((c,l)=>D6e({result:c,fileDescriptors:t,fdNumber:l,state:o,outputFiles:s,isMaxBuffer:n,verboseInfo:i},r)),...o}},D6e=({result:t,fileDescriptors:e,fdNumber:r,state:n,outputFiles:i,isMaxBuffer:o,verboseInfo:s},{buffer:a,encoding:c,lines:l,stripFinalNewline:u,maxBuffer:d})=>{if(t===null)return;let f=Ile(t,o,d),p=Ma(f),{stdioItems:h,objectMode:m}=e[r],g=L6e([p],h,c,n),{serializedResult:_,finalResult:v=_}=U6e({chunks:g,objectMode:m,encoding:c,lines:l,stripFinalNewline:u,fdNumber:r});F6e({serializedResult:_,fdNumber:r,state:n,verboseInfo:s,encoding:c,stdioItems:h,objectMode:m});let w=a[r]?v:void 0;try{return n.error===void 0&&z6e(_,h,i),w}catch(b){return n.error=b,w}},L6e=(t,e,r,n)=>{try{return bC(t,e,r,!1)}catch(i){return n.error=i,t}},U6e=({chunks:t,objectMode:e,encoding:r,lines:n,stripFinalNewline:i,fdNumber:o})=>{if(e)return{serializedResult:t};if(r==="buffer")return{serializedResult:sE(t)};let s=qse(t,r);return n[o]?{serializedResult:s,finalResult:Jz(s,!i[o],e)}:{serializedResult:s}},F6e=({serializedResult:t,fdNumber:e,state:r,verboseInfo:n,encoding:i,stdioItems:o,objectMode:s})=>{if(!TC({stdioItems:o,encoding:i,verboseInfo:n,fdNumber:e}))return;let a=Jz(t,!1,s);try{xue(a,e,n)}catch(c){r.error??=c}},z6e=(t,e,r)=>{for(let{path:n,append:i}of e.filter(({type:o})=>_C.has(o))){let o=typeof n=="string"?n:n.toString();i||r.has(o)?$6e(n,t):(r.add(o),M6e(n,t))}};var Iue=([,t,e],r)=>{if(r.all)return t===void 0?e:e===void 0?t:Array.isArray(t)?Array.isArray(e)?[...t,...e]:[...t,La(e,r,"all")]:Array.isArray(e)?[La(t,r,"all"),...e]:vr(t)&&vr(e)?sz([t,e]):`${t}${e}`};import{once as tj}from"events";var Pue=async(t,e)=>{let[r,n]=await j6e(t);return e.isForcefullyTerminated??=!1,[r,n]},j6e=async t=>{let[e,r]=await Promise.allSettled([tj(t,"spawn"),tj(t,"exit")]);return e.status==="rejected"?[]:r.status==="rejected"?Oue(t):r.value},Oue=async t=>{try{return await tj(t,"exit")}catch{return Oue(t)}},Nue=async t=>{let[e,r]=await t;if(!B6e(e,r)&&rj(e,r))throw new Mo;return[e,r]},B6e=(t,e)=>t===void 0&&e===void 0,rj=(t,e)=>t!==0||e!==null;var kue=({error:t,status:e,signal:r,output:n},{maxBuffer:i})=>{let o=q6e(t,e,r),s=o?.code==="ETIMEDOUT",a=Cle(o,n,i);return{resultError:o,exitCode:e,signal:r,timedOut:s,isMaxBuffer:a}},q6e=(t,e,r)=>t!==void 0?t:rj(e,r)?new Mo:void 0;var Mue=(t,e,r)=>{let{file:n,commandArguments:i,command:o,escapedCommand:s,startTime:a,verboseInfo:c,options:l,fileDescriptors:u}=G6e(t,e,r),d=Y6e({file:n,commandArguments:i,options:l,command:o,escapedCommand:s,verboseInfo:c,fileDescriptors:u,startTime:a});return Nh(d,c,l)},G6e=(t,e,r)=>{let{command:n,escapedCommand:i,startTime:o,verboseInfo:s}=F0(t,e,r),a=H6e(r),{file:c,commandArguments:l,options:u}=oC(t,e,a);W6e(u);let d=uue(u,s);return{file:c,commandArguments:l,command:n,escapedCommand:i,startTime:o,verboseInfo:s,options:u,fileDescriptors:d}},H6e=t=>t.node&&!t.ipc?{...t,ipc:!1}:t,W6e=({ipc:t,ipcInput:e,detached:r,cancelSignal:n})=>{e&&wC("ipcInput"),t&&wC("ipc: true"),r&&wC("detached: true"),n&&wC("cancelSignal")},wC=t=>{throw new TypeError(`The "${t}" option cannot be used with synchronous methods.`)},Y6e=({file:t,commandArguments:e,options:r,command:n,escapedCommand:i,verboseInfo:o,fileDescriptors:s,startTime:a})=>{let c=K6e({file:t,commandArguments:e,options:r,command:n,escapedCommand:i,fileDescriptors:s,startTime:a});if(c.failed)return c;let{resultError:l,exitCode:u,signal:d,timedOut:f,isMaxBuffer:p}=kue(c,r),{output:h,error:m=l}=Cue({fileDescriptors:s,syncResult:c,options:r,isMaxBuffer:p,verboseInfo:o}),g=h.map((v,w)=>La(v,r,w)),_=La(Iue(h,r),r,"all");return J6e({error:m,exitCode:u,signal:d,timedOut:f,isMaxBuffer:p,stdio:g,all:_,options:r,command:n,escapedCommand:i,startTime:a})},K6e=({file:t,commandArguments:e,options:r,command:n,escapedCommand:i,fileDescriptors:o,startTime:s})=>{try{wue(o,r);let a=Z6e(r);return V6e(...sC(t,e,a))}catch(a){return Oh({error:a,command:n,escapedCommand:i,fileDescriptors:o,options:r,startTime:s,isSync:!0})}},Z6e=({encoding:t,maxBuffer:e,...r})=>({...r,encoding:"buffer",maxBuffer:pC(e)}),J6e=({error:t,exitCode:e,signal:r,timedOut:n,isMaxBuffer:i,stdio:o,all:s,options:a,command:c,escapedCommand:l,startTime:u})=>t===void 0?hC({command:c,escapedCommand:l,stdio:o,all:s,ipcOutput:[],options:a,startTime:u}):mE({error:t,command:c,escapedCommand:l,timedOut:n,isCanceled:!1,isGracefullyCanceled:!1,isMaxBuffer:i,isForcefullyTerminated:!1,exitCode:e,signal:r,stdio:o,all:s,ipcOutput:[],options:a,startTime:u,isSync:!0});import{setMaxListeners as UWe}from"events";import{spawn as FWe}from"child_process";import Fue from"process";import{once as nj,on as X6e}from"events";var $ue=({anyProcess:t,channel:e,isSubprocess:r,ipc:n},{reference:i=!0,filter:o}={})=>(Ah({methodName:"getOneMessage",isSubprocess:r,ipc:n,isConnected:Q0(t)}),Q6e({anyProcess:t,channel:e,isSubprocess:r,filter:o,reference:i})),Q6e=async({anyProcess:t,channel:e,isSubprocess:r,filter:n,reference:i})=>{K0(e,i);let o=sl(t,e,r),s=new AbortController;try{return await Promise.race([e3e(o,n,s),t3e(o,r,s),r3e(o,r,s)])}catch(a){throw xh(t),a}finally{s.abort(),Z0(e,i)}},e3e=async(t,e,{signal:r})=>{if(e===void 0){let[n]=await nj(t,"message",{signal:r});return n}for await(let[n]of X6e(t,"message",{signal:r}))if(e(n))return n},t3e=async(t,e,{signal:r})=>{await nj(t,"disconnect",{signal:r}),vce(e)},r3e=async(t,e,{signal:r})=>{let[n]=await nj(t,"strict:error",{signal:r});throw H0(n,e)};import{once as Lue,on as n3e}from"events";var Uue=({anyProcess:t,channel:e,isSubprocess:r,ipc:n},{reference:i=!0}={})=>ij({anyProcess:t,channel:e,isSubprocess:r,ipc:n,shouldAwait:!r,reference:i}),ij=({anyProcess:t,channel:e,isSubprocess:r,ipc:n,shouldAwait:i,reference:o})=>{Ah({methodName:"getEachMessage",isSubprocess:r,ipc:n,isConnected:Q0(t)}),K0(e,o);let s=sl(t,e,r),a=new AbortController,c={};return i3e(t,s,a),o3e({ipcEmitter:s,isSubprocess:r,controller:a,state:c}),s3e({anyProcess:t,channel:e,ipcEmitter:s,isSubprocess:r,shouldAwait:i,controller:a,state:c,reference:o})},i3e=async(t,e,r)=>{try{await Lue(e,"disconnect",{signal:r.signal}),r.abort()}catch{}},o3e=async({ipcEmitter:t,isSubprocess:e,controller:r,state:n})=>{try{let[i]=await Lue(t,"strict:error",{signal:r.signal});n.error=H0(i,e),r.abort()}catch{}},s3e=async function*({anyProcess:t,channel:e,ipcEmitter:r,isSubprocess:n,shouldAwait:i,controller:o,state:s,reference:a}){try{for await(let[c]of n3e(r,"message",{signal:o.signal}))Due(s),yield c}catch{Due(s)}finally{o.abort(),Z0(e,a),n||xh(t),i&&await t}},Due=({error:t})=>{if(t)throw t};var zue=(t,{ipc:e})=>{Object.assign(t,Bue(t,!1,e))},jue=()=>{let t=Fue,e=!0,r=Fue.channel!==void 0;return{...Bue(t,e,r),getCancelSignal:Yce.bind(void 0,{anyProcess:t,channel:t.channel,isSubprocess:e,ipc:r})}},Bue=(t,e,r)=>({sendMessage:nC.bind(void 0,{anyProcess:t,channel:t.channel,isSubprocess:e,ipc:r}),getOneMessage:$ue.bind(void 0,{anyProcess:t,channel:t.channel,isSubprocess:e,ipc:r}),getEachMessage:Uue.bind(void 0,{anyProcess:t,channel:t.channel,isSubprocess:e,ipc:r})});import{ChildProcess as a3e}from"child_process";import{PassThrough as c3e,Readable as l3e,Writable as u3e,Duplex as d3e}from"stream";var que=({error:t,command:e,escapedCommand:r,fileDescriptors:n,options:i,startTime:o,verboseInfo:s})=>{Yz(n);let a=new a3e;f3e(a,n),Object.assign(a,{readable:p3e,writable:h3e,duplex:m3e});let c=Oh({error:t,command:e,escapedCommand:r,fileDescriptors:n,options:i,startTime:o,isSync:!1}),l=g3e(c,s,i);return{subprocess:a,promise:l}},f3e=(t,e)=>{let r=_E(),n=_E(),i=_E(),o=Array.from({length:e.length-3},_E),s=_E(),a=[r,n,i,...o];Object.assign(t,{stdin:r,stdout:n,stderr:i,all:s,stdio:a})},_E=()=>{let t=new c3e;return t.end(),t},p3e=()=>new l3e({read(){}}),h3e=()=>new u3e({write(){}}),m3e=()=>new d3e({read(){},write(){}}),g3e=async(t,e,r)=>Nh(t,e,r);import{createReadStream as Vue,createWriteStream as Gue}from"fs";import{Buffer as _3e}from"buffer";import{Readable as yE,Writable as y3e,Duplex as S3e}from"stream";var Wue=(t,e)=>yC(E3e,t,e,!1),SE=({type:t,optionName:e})=>{throw new TypeError(`The \`${e}\` option cannot be ${al[t]}.`)},Hue={fileNumber:SE,generator:ej,asyncGenerator:ej,nodeStream:({value:t})=>({stream:t}),webTransform({value:{transform:t,writableObjectMode:e,readableObjectMode:r}}){let n=e||r;return{stream:S3e.fromWeb(t,{objectMode:n})}},duplex:({value:{transform:t}})=>({stream:t}),native(){}},E3e={input:{...Hue,fileUrl:({value:t})=>({stream:Vue(t)}),filePath:({value:{file:t}})=>({stream:Vue(t)}),webStream:({value:t})=>({stream:yE.fromWeb(t)}),iterable:({value:t})=>({stream:yE.from(t)}),asyncIterable:({value:t})=>({stream:yE.from(t)}),string:({value:t})=>({stream:yE.from(t)}),uint8Array:({value:t})=>({stream:yE.from(_3e.from(t))})},output:{...Hue,fileUrl:({value:t})=>({stream:Gue(t)}),filePath:({value:{file:t,append:e}})=>({stream:Gue(t,e?{flags:"a"}:{})}),webStream:({value:t})=>({stream:y3e.fromWeb(t)}),iterable:SE,asyncIterable:SE,string:SE,uint8Array:SE}};import{on as v3e,once as Yue}from"events";import{PassThrough as b3e,getDefaultHighWaterMark as T3e}from"stream";import{finished as Jue}from"stream/promises";function vd(t){if(!Array.isArray(t))throw new TypeError(`Expected an array, got \`${typeof t}\`.`);for(let i of t)sj(i);let e=t.some(({readableObjectMode:i})=>i),r=w3e(t,e),n=new oj({objectMode:e,writableHighWaterMark:r,readableHighWaterMark:r});for(let i of t)n.add(i);return n}var w3e=(t,e)=>{if(t.length===0)return T3e(e);let r=t.filter(({readableObjectMode:n})=>n===e).map(({readableHighWaterMark:n})=>n);return Math.max(...r)},oj=class extends b3e{#e=new Set([]);#r=new Set([]);#t=new Set([]);#n;#o=Symbol("unpipe");#i=new WeakMap;add(e){if(sj(e),this.#e.has(e))return;this.#e.add(e),this.#n??=A3e(this,this.#e,this.#o);let r=C3e({passThroughStream:this,stream:e,streams:this.#e,ended:this.#r,aborted:this.#t,onFinished:this.#n,unpipeEvent:this.#o});this.#i.set(e,r),e.pipe(this,{end:!1})}async remove(e){if(sj(e),!this.#e.has(e))return!1;let r=this.#i.get(e);return r===void 0?!1:(this.#i.delete(e),e.unpipe(this),await r,!0)}},A3e=async(t,e,r)=>{AC(t,Kue);let n=new AbortController;try{await Promise.race([x3e(t,n),R3e(t,e,r,n)])}finally{n.abort(),AC(t,-Kue)}},x3e=async(t,{signal:e})=>{try{await Jue(t,{signal:e,cleanup:!0})}catch(r){throw Xue(t,r),r}},R3e=async(t,e,r,{signal:n})=>{for await(let[i]of v3e(t,"unpipe",{signal:n}))e.has(i)&&i.emit(r)},sj=t=>{if(typeof t?.pipe!="function")throw new TypeError(`Expected a readable stream, got: \`${typeof t}\`.`)},C3e=async({passThroughStream:t,stream:e,streams:r,ended:n,aborted:i,onFinished:o,unpipeEvent:s})=>{AC(t,Zue);let a=new AbortController;try{await Promise.race([I3e(o,e,a),P3e({passThroughStream:t,stream:e,streams:r,ended:n,aborted:i,controller:a}),O3e({stream:e,streams:r,ended:n,aborted:i,unpipeEvent:s,controller:a})])}finally{a.abort(),AC(t,-Zue)}r.size>0&&r.size===n.size+i.size&&(n.size===0&&i.size>0?aj(t):N3e(t))},I3e=async(t,e,{signal:r})=>{try{await t,r.aborted||aj(e)}catch(n){r.aborted||Xue(e,n)}},P3e=async({passThroughStream:t,stream:e,streams:r,ended:n,aborted:i,controller:{signal:o}})=>{try{await Jue(e,{signal:o,cleanup:!0,readable:!0,writable:!1}),r.has(e)&&n.add(e)}catch(s){if(o.aborted||!r.has(e))return;Que(s)?i.add(e):ede(t,s)}},O3e=async({stream:t,streams:e,ended:r,aborted:n,unpipeEvent:i,controller:{signal:o}})=>{if(await Yue(t,i,{signal:o}),!t.readable)return Yue(o,"abort",{signal:o});e.delete(t),r.delete(t),n.delete(t)},N3e=t=>{t.writable&&t.end()},Xue=(t,e)=>{Que(e)?aj(t):ede(t,e)},Que=t=>t?.code==="ERR_STREAM_PREMATURE_CLOSE",aj=t=>{(t.readable||t.writable)&&t.destroy()},ede=(t,e)=>{t.destroyed||(t.once("error",k3e),t.destroy(e))},k3e=()=>{},AC=(t,e)=>{let r=t.getMaxListeners();r!==0&&r!==Number.POSITIVE_INFINITY&&t.setMaxListeners(r+e)},Kue=2,Zue=1;import{finished as tde}from"stream/promises";var Mh=(t,e)=>{t.pipe(e),M3e(t,e),$3e(t,e)},M3e=async(t,e)=>{if(!(ko(t)||ko(e))){try{await tde(t,{cleanup:!0,readable:!0,writable:!1})}catch{}cj(e)}},cj=t=>{t.writable&&t.end()},$3e=async(t,e)=>{if(!(ko(t)||ko(e))){try{await tde(e,{cleanup:!0,readable:!1,writable:!0})}catch{}lj(t)}},lj=t=>{t.readable&&t.destroy()};var rde=(t,e,r)=>{let n=new Map;for(let[i,{stdioItems:o,direction:s}]of Object.entries(e)){for(let{stream:a}of o.filter(({type:c})=>Zi.has(c)))D3e(t,a,s,i);for(let{stream:a}of o.filter(({type:c})=>!Zi.has(c)))U3e({subprocess:t,stream:a,direction:s,fdNumber:i,pipeGroups:n,controller:r})}for(let[i,o]of n.entries()){let s=o.length===1?o[0]:vd(o);Mh(s,i)}},D3e=(t,e,r,n)=>{r==="output"?Mh(t.stdio[n],e):Mh(e,t.stdio[n]);let i=L3e[n];i!==void 0&&(t[i]=e),t.stdio[n]=e},L3e=["stdin","stdout","stderr"],U3e=({subprocess:t,stream:e,direction:r,fdNumber:n,pipeGroups:i,controller:o})=>{if(e===void 0)return;F3e(e,o);let[s,a]=r==="output"?[e,t.stdio[n]]:[t.stdio[n],e],c=i.get(s)??[];i.set(s,[...c,a])},F3e=(t,{signal:e})=>{ko(t)&&_d(t,z3e,e)},z3e=2;import{addAbortListener as q3e}from"events";var bd=[];bd.push("SIGHUP","SIGINT","SIGTERM");process.platform!=="win32"&&bd.push("SIGALRM","SIGABRT","SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");process.platform==="linux"&&bd.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT");var xC=t=>!!t&&typeof t=="object"&&typeof t.removeListener=="function"&&typeof t.emit=="function"&&typeof t.reallyExit=="function"&&typeof t.listeners=="function"&&typeof t.kill=="function"&&typeof t.pid=="number"&&typeof t.on=="function",uj=Symbol.for("signal-exit emitter"),dj=globalThis,j3e=Object.defineProperty.bind(Object),fj=class{emitted={afterExit:!1,exit:!1};listeners={afterExit:[],exit:[]};count=0;id=Math.random();constructor(){if(dj[uj])return dj[uj];j3e(dj,uj,{value:this,writable:!1,enumerable:!1,configurable:!1})}on(e,r){this.listeners[e].push(r)}removeListener(e,r){let n=this.listeners[e],i=n.indexOf(r);i!==-1&&(i===0&&n.length===1?n.length=0:n.splice(i,1))}emit(e,r,n){if(this.emitted[e])return!1;this.emitted[e]=!0;let i=!1;for(let o of this.listeners[e])i=o(r,n)===!0||i;return e==="exit"&&(i=this.emit("afterExit",r,n)||i),i}},RC=class{},B3e=t=>({onExit(e,r){return t.onExit(e,r)},load(){return t.load()},unload(){return t.unload()}}),pj=class extends RC{onExit(){return()=>{}}load(){}unload(){}},hj=class extends RC{#e=mj.platform==="win32"?"SIGINT":"SIGHUP";#r=new fj;#t;#n;#o;#i={};#s=!1;constructor(e){super(),this.#t=e,this.#i={};for(let r of bd)this.#i[r]=()=>{let n=this.#t.listeners(r),{count:i}=this.#r,o=e;if(typeof o.__signal_exit_emitter__=="object"&&typeof o.__signal_exit_emitter__.count=="number"&&(i+=o.__signal_exit_emitter__.count),n.length===i){this.unload();let s=this.#r.emit("exit",null,r),a=r==="SIGHUP"?this.#e:r;s||e.kill(e.pid,a)}};this.#o=e.reallyExit,this.#n=e.emit}onExit(e,r){if(!xC(this.#t))return()=>{};this.#s===!1&&this.load();let n=r?.alwaysLast?"afterExit":"exit";return this.#r.on(n,e),()=>{this.#r.removeListener(n,e),this.#r.listeners.exit.length===0&&this.#r.listeners.afterExit.length===0&&this.unload()}}load(){if(!this.#s){this.#s=!0,this.#r.count+=1;for(let e of bd)try{let r=this.#i[e];r&&this.#t.on(e,r)}catch{}this.#t.emit=(e,...r)=>this.#c(e,...r),this.#t.reallyExit=e=>this.#a(e)}}unload(){this.#s&&(this.#s=!1,bd.forEach(e=>{let r=this.#i[e];if(!r)throw new Error("Listener not defined for signal: "+e);try{this.#t.removeListener(e,r)}catch{}}),this.#t.emit=this.#n,this.#t.reallyExit=this.#o,this.#r.count-=1)}#a(e){return xC(this.#t)?(this.#t.exitCode=e||0,this.#r.emit("exit",this.#t.exitCode,null),this.#o.call(this.#t,this.#t.exitCode)):0}#c(e,...r){let n=this.#n;if(e==="exit"&&xC(this.#t)){typeof r[0]=="number"&&(this.#t.exitCode=r[0]);let i=n.call(this.#t,e,...r);return this.#r.emit("exit",this.#t.exitCode,null),i}else return n.call(this.#t,e,...r)}},mj=globalThis.process,{onExit:nde,load:hjt,unload:mjt}=B3e(xC(mj)?new hj(mj):new pj);var ide=(t,{cleanup:e,detached:r},{signal:n})=>{if(!e||r)return;let i=nde(()=>{t.kill()});q3e(n,()=>{i()})};var sde=({source:t,sourcePromise:e,boundOptions:r,createNested:n},...i)=>{let o=U0(),{destination:s,destinationStream:a,destinationError:c,from:l,unpipeSignal:u}=V3e(r,n,i),{sourceStream:d,sourceError:f}=H3e(t,l),{options:p,fileDescriptors:h}=Cs.get(t);return{sourcePromise:e,sourceStream:d,sourceOptions:p,sourceError:f,destination:s,destinationStream:a,destinationError:c,unpipeSignal:u,fileDescriptors:h,startTime:o}},V3e=(t,e,r)=>{try{let{destination:n,pipeOptions:{from:i,to:o,unpipeSignal:s}={}}=G3e(t,e,...r),a=Y0(n,o);return{destination:n,destinationStream:a,from:i,unpipeSignal:s}}catch(n){return{destinationError:n}}},G3e=(t,e,r,...n)=>{if(Array.isArray(r))return{destination:e(ode,t)(r,...n),pipeOptions:t};if(typeof r=="string"||r instanceof URL||iz(r)){if(Object.keys(t).length>0)throw new TypeError('Please use .pipe("file", ..., options) or .pipe(execa("file", ..., options)) instead of .pipe(options)("file", ...).');let[i,o,s]=C0(r,...n);return{destination:e(ode)(i,o,s),pipeOptions:s}}if(Cs.has(r)){if(Object.keys(t).length>0)throw new TypeError("Please use .pipe(options)`command` or .pipe($(options)`command`) instead of .pipe(options)($`command`).");return{destination:r,pipeOptions:n[0]}}throw new TypeError(`The first argument must be a template string, an options object, or an Execa subprocess: ${r}`)},ode=({options:t})=>({options:{...t,stdin:"pipe",piped:!0}}),H3e=(t,e)=>{try{return{sourceStream:Rh(t,e)}}catch(r){return{sourceError:r}}};var cde=({sourceStream:t,sourceError:e,destinationStream:r,destinationError:n,fileDescriptors:i,sourceOptions:o,startTime:s})=>{let a=W3e({sourceStream:t,sourceError:e,destinationStream:r,destinationError:n});if(a!==void 0)throw gj({error:a,fileDescriptors:i,sourceOptions:o,startTime:s})},W3e=({sourceStream:t,sourceError:e,destinationStream:r,destinationError:n})=>{if(e!==void 0&&n!==void 0)return n;if(n!==void 0)return lj(t),n;if(e!==void 0)return cj(r),e},gj=({error:t,fileDescriptors:e,sourceOptions:r,startTime:n})=>Oh({error:t,command:ade,escapedCommand:ade,fileDescriptors:e,options:r,startTime:n,isSync:!1}),ade="source.pipe(destination)";var lde=async t=>{let[{status:e,reason:r,value:n=r},{status:i,reason:o,value:s=o}]=await t;if(s.pipedFrom.includes(n)||s.pipedFrom.push(n),i==="rejected")throw s;if(e==="rejected")throw n;return s};import{finished as Y3e}from"stream/promises";var ude=(t,e,r)=>{let n=CC.has(e)?Z3e(t,e):K3e(t,e);return _d(t,X3e,r.signal),_d(e,Q3e,r.signal),J3e(e),n},K3e=(t,e)=>{let r=vd([t]);return Mh(r,e),CC.set(e,r),r},Z3e=(t,e)=>{let r=CC.get(e);return r.add(t),r},J3e=async t=>{try{await Y3e(t,{cleanup:!0,readable:!1,writable:!0})}catch{}CC.delete(t)},CC=new WeakMap,X3e=2,Q3e=1;import{aborted as eWe}from"util";var dde=(t,e)=>t===void 0?[]:[tWe(t,e)],tWe=async(t,{sourceStream:e,mergedStream:r,fileDescriptors:n,sourceOptions:i,startTime:o})=>{await eWe(t,e),await r.remove(e);let s=new Error("Pipe canceled by `unpipeSignal` option.");throw gj({error:s,fileDescriptors:n,sourceOptions:i,startTime:o})};var IC=(t,...e)=>{if(cr(e[0]))return IC.bind(void 0,{...t,boundOptions:{...t.boundOptions,...e[0]}});let{destination:r,...n}=sde(t,...e),i=rWe({...n,destination:r});return i.pipe=IC.bind(void 0,{...t,source:r,sourcePromise:i,boundOptions:{}}),i},rWe=async({sourcePromise:t,sourceStream:e,sourceOptions:r,sourceError:n,destination:i,destinationStream:o,destinationError:s,unpipeSignal:a,fileDescriptors:c,startTime:l})=>{let u=nWe(t,i);cde({sourceStream:e,sourceError:n,destinationStream:o,destinationError:s,fileDescriptors:c,sourceOptions:r,startTime:l});let d=new AbortController;try{let f=ude(e,o,d);return await Promise.race([lde(u),...dde(a,{sourceStream:e,mergedStream:f,sourceOptions:r,fileDescriptors:c,startTime:l})])}finally{d.abort()}},nWe=(t,e)=>Promise.allSettled([t,e]);import{setImmediate as uWe}from"timers/promises";import{on as iWe}from"events";import{getDefaultHighWaterMark as oWe}from"stream";var PC=({subprocessStdout:t,subprocess:e,binary:r,shouldEncode:n,encoding:i,preserveNewlines:o})=>{let s=new AbortController;return sWe(e,s),pde({stream:t,controller:s,binary:r,shouldEncode:!t.readableObjectMode&&n,encoding:i,shouldSplit:!t.readableObjectMode,preserveNewlines:o})},sWe=async(t,e)=>{try{await t}catch{}finally{e.abort()}},_j=({stream:t,onStreamEnd:e,lines:r,encoding:n,stripFinalNewline:i,allMixed:o})=>{let s=new AbortController;aWe(e,s,t);let a=t.readableObjectMode&&!o;return pde({stream:t,controller:s,binary:n==="buffer",shouldEncode:!a,encoding:n,shouldSplit:!a&&r,preserveNewlines:!i})},aWe=async(t,e,r)=>{try{await t}catch{r.destroy()}finally{e.abort()}},pde=({stream:t,controller:e,binary:r,shouldEncode:n,encoding:i,shouldSplit:o,preserveNewlines:s})=>{let a=iWe(t,"data",{signal:e.signal,highWaterMark:fde,highWatermark:fde});return cWe({onStdoutChunk:a,controller:e,binary:r,shouldEncode:n,encoding:i,shouldSplit:o,preserveNewlines:s})},yj=oWe(!0),fde=yj,cWe=async function*({onStdoutChunk:t,controller:e,binary:r,shouldEncode:n,encoding:i,shouldSplit:o,preserveNewlines:s}){let a=lWe({binary:r,shouldEncode:n,encoding:i,shouldSplit:o,preserveNewlines:s});try{for await(let[c]of t)yield*Ed(c,a,0)}catch(c){if(!e.signal.aborted)throw c}finally{yield*gE(a)}},lWe=({binary:t,shouldEncode:e,encoding:r,shouldSplit:n,preserveNewlines:i})=>[EC(t,r,!e),SC(t,i,!n,{})].filter(Boolean);var hde=async({stream:t,onStreamEnd:e,fdNumber:r,encoding:n,buffer:i,maxBuffer:o,lines:s,allMixed:a,stripFinalNewline:c,verboseInfo:l,streamInfo:u})=>{let d=dWe({stream:t,onStreamEnd:e,fdNumber:r,encoding:n,allMixed:a,verboseInfo:l,streamInfo:u});if(!i){await Promise.all([fWe(t),d]);return}let f=Kz(c,r),p=_j({stream:t,onStreamEnd:e,lines:s,encoding:n,stripFinalNewline:f,allMixed:a}),[h]=await Promise.all([pWe({stream:t,iterable:p,fdNumber:r,encoding:n,maxBuffer:o,lines:s}),d]);return h},dWe=async({stream:t,onStreamEnd:e,fdNumber:r,encoding:n,allMixed:i,verboseInfo:o,streamInfo:{fileDescriptors:s}})=>{if(!TC({stdioItems:s[r]?.stdioItems,encoding:n,verboseInfo:o,fdNumber:r}))return;let a=_j({stream:t,onStreamEnd:e,lines:!0,encoding:n,stripFinalNewline:!0,allMixed:i});await Aue(a,t,r,o)},fWe=async t=>{await uWe(),t.readableFlowing===null&&t.resume()},pWe=async({stream:t,stream:{readableObjectMode:e},iterable:r,fdNumber:n,encoding:i,maxBuffer:o,lines:s})=>{try{return e||s?await uC(r,{maxBuffer:o}):i==="buffer"?new Uint8Array(await dC(r,{maxBuffer:o})):await Ph(r,{maxBuffer:o})}catch(a){return mde(Ale({error:a,stream:t,readableObjectMode:e,lines:s,encoding:i,fdNumber:n}))}},Sj=async t=>{try{return await t}catch(e){return mde(e)}},mde=({bufferedData:t})=>jse(t)?new Uint8Array(t):t;import{finished as hWe}from"stream/promises";var EE=async(t,e,r,{isSameDirection:n,stopOnExit:i=!1}={})=>{let o=mWe(t,r),s=new AbortController;try{await Promise.race([...i?[r.exitPromise]:[],hWe(t,{cleanup:!0,signal:s.signal})])}catch(a){o.stdinCleanedUp||yWe(a,e,r,n)}finally{s.abort()}},mWe=(t,{originalStreams:[e],subprocess:r})=>{let n={stdinCleanedUp:!1};return t===e&&gWe(t,r,n),n},gWe=(t,e,r)=>{let{_destroy:n}=t;t._destroy=(...i)=>{_We(e,r),n.call(t,...i)}},_We=({exitCode:t,signalCode:e},r)=>{(t!==null||e!==null)&&(r.stdinCleanedUp=!0)},yWe=(t,e,r,n)=>{if(!SWe(t,e,r,n))throw t},SWe=(t,e,r,n=!0)=>r.propagating?gde(t)||OC(t):(r.propagating=!0,Ej(r,e)===n?gde(t):OC(t)),Ej=({fileDescriptors:t},e)=>e!=="all"&&t[e].direction==="input",OC=t=>t?.code==="ERR_STREAM_PREMATURE_CLOSE",gde=t=>t?.code==="EPIPE";var _de=({subprocess:t,encoding:e,buffer:r,maxBuffer:n,lines:i,stripFinalNewline:o,verboseInfo:s,streamInfo:a})=>t.stdio.map((c,l)=>vj({stream:c,fdNumber:l,encoding:e,buffer:r[l],maxBuffer:n[l],lines:i[l],allMixed:!1,stripFinalNewline:o,verboseInfo:s,streamInfo:a})),vj=async({stream:t,fdNumber:e,encoding:r,buffer:n,maxBuffer:i,lines:o,allMixed:s,stripFinalNewline:a,verboseInfo:c,streamInfo:l})=>{if(!t)return;let u=EE(t,e,l);if(Ej(l,e)){await u;return}let[d]=await Promise.all([hde({stream:t,onStreamEnd:u,fdNumber:e,encoding:r,buffer:n,maxBuffer:i,lines:o,allMixed:s,stripFinalNewline:a,verboseInfo:c,streamInfo:l}),u]);return d};var yde=({stdout:t,stderr:e},{all:r})=>r&&(t||e)?vd([t,e].filter(Boolean)):void 0,Sde=({subprocess:t,encoding:e,buffer:r,maxBuffer:n,lines:i,stripFinalNewline:o,verboseInfo:s,streamInfo:a})=>vj({...EWe(t,r),fdNumber:"all",encoding:e,maxBuffer:n[1]+n[2],lines:i[1]||i[2],allMixed:vWe(t),stripFinalNewline:o,verboseInfo:s,streamInfo:a}),EWe=({stdout:t,stderr:e,all:r},[,n,i])=>{let o=n||i;return o?n?i?{stream:r,buffer:o}:{stream:t,buffer:o}:{stream:e,buffer:o}:{stream:r,buffer:o}},vWe=({all:t,stdout:e,stderr:r})=>t&&e&&r&&e.readableObjectMode!==r.readableObjectMode;import{once as bWe}from"events";var Ede=t=>bh(t,"ipc"),vde=(t,e)=>{let r=L0(t);xs({type:"ipc",verboseMessage:r,fdNumber:"ipc",verboseInfo:e})};var bde=async({subprocess:t,buffer:e,maxBuffer:r,ipc:n,ipcOutput:i,verboseInfo:o})=>{if(!n)return i;let s=Ede(o),a=$a(e,"ipc"),c=$a(r,"ipc");for await(let l of ij({anyProcess:t,channel:t.channel,isSubprocess:!1,ipc:n,shouldAwait:!1,reference:!0}))a&&(xle(t,i,c),i.push(l)),s&&vde(l,o);return i},Tde=async(t,e)=>(await Promise.allSettled([t]),e);var wde=async({subprocess:t,options:{encoding:e,buffer:r,maxBuffer:n,lines:i,timeoutDuration:o,cancelSignal:s,gracefulCancel:a,forceKillAfterDelay:c,stripFinalNewline:l,ipc:u,ipcInput:d},context:f,verboseInfo:p,fileDescriptors:h,originalStreams:m,onInternalError:g,controller:_})=>{let v=Pue(t,f),w={originalStreams:m,fileDescriptors:h,subprocess:t,exitPromise:v,propagating:!1},b=_de({subprocess:t,encoding:e,buffer:r,maxBuffer:n,lines:i,stripFinalNewline:l,verboseInfo:p,streamInfo:w}),T=Sde({subprocess:t,encoding:e,buffer:r,maxBuffer:n,lines:i,stripFinalNewline:l,verboseInfo:p,streamInfo:w}),A=[],I=bde({subprocess:t,buffer:r,maxBuffer:n,ipc:u,ipcOutput:A,verboseInfo:p}),O=TWe(m,t,w),M=wWe(h,w);try{return await Promise.race([Promise.all([{},Nue(v),Promise.all(b),T,I,ile(t,d),...O,...M]),g,AWe(t,_),...Qce(t,o,f,_),...Ece({subprocess:t,cancelSignal:s,gracefulCancel:a,context:f,controller:_}),...Jce({subprocess:t,cancelSignal:s,gracefulCancel:a,forceKillAfterDelay:c,context:f,controller:_})])}catch(j){return f.terminationReason??="other",Promise.all([{error:j},v,Promise.all(b.map(y=>Sj(y))),Sj(T),Tde(I,A),Promise.allSettled(O),Promise.allSettled(M)])}},TWe=(t,e,r)=>t.map((n,i)=>n===e.stdio[i]?void 0:EE(n,i,r)),wWe=(t,e)=>t.flatMap(({stdioItems:r},n)=>r.filter(({value:i,stream:o=i})=>Do(o,{checkOpen:!1})&&!ko(o)).map(({type:i,value:o,stream:s=o})=>EE(s,n,e,{isSameDirection:Zi.has(i),stopOnExit:i==="native"}))),AWe=async(t,{signal:e})=>{let[r]=await bWe(t,"error",{signal:e});throw r};var Ade=()=>({readableDestroy:new WeakMap,writableFinal:new WeakMap,writableDestroy:new WeakMap}),vE=(t,e,r)=>{let n=t[r];n.has(e)||n.set(e,[]);let i=n.get(e),o=Rs();return i.push(o),{resolve:o.resolve.bind(o),promises:i}},$h=async({resolve:t,promises:e},r)=>{t();let[n]=await Promise.race([Promise.allSettled([!0,r]),Promise.all([!1,...e])]);return!n};import{Readable as xWe}from"stream";import{callbackify as RWe}from"util";import{finished as xde}from"stream/promises";var bj=async t=>{if(t!==void 0)try{await Tj(t)}catch{}},Rde=async t=>{if(t!==void 0)try{await wj(t)}catch{}},Tj=async t=>{await xde(t,{cleanup:!0,readable:!1,writable:!0})},wj=async t=>{await xde(t,{cleanup:!0,readable:!0,writable:!1})},NC=async(t,e)=>{if(await t,e)throw e},kC=(t,e,r)=>{r&&!OC(r)?t.destroy(r):e&&t.destroy()};var Cde=({subprocess:t,concurrentStreams:e,encoding:r},{from:n,binary:i=!0,preserveNewlines:o=!0}={})=>{let s=i||vi.has(r),{subprocessStdout:a,waitReadableDestroy:c}=Aj(t,n,e),{readableEncoding:l,readableObjectMode:u,readableHighWaterMark:d}=xj(a,s),{read:f,onStdoutDataDone:p}=Rj({subprocessStdout:a,subprocess:t,binary:s,encoding:r,preserveNewlines:o}),h=new xWe({read:f,destroy:RWe(Ij.bind(void 0,{subprocessStdout:a,subprocess:t,waitReadableDestroy:c})),highWaterMark:d,objectMode:u,encoding:l});return Cj({subprocessStdout:a,onStdoutDataDone:p,readable:h,subprocess:t}),h},Aj=(t,e,r)=>{let n=Rh(t,e),i=vE(r,n,"readableDestroy");return{subprocessStdout:n,waitReadableDestroy:i}},xj=({readableEncoding:t,readableObjectMode:e,readableHighWaterMark:r},n)=>n?{readableEncoding:t,readableObjectMode:e,readableHighWaterMark:r}:{readableEncoding:t,readableObjectMode:!0,readableHighWaterMark:yj},Rj=({subprocessStdout:t,subprocess:e,binary:r,encoding:n,preserveNewlines:i})=>{let o=Rs(),s=PC({subprocessStdout:t,subprocess:e,binary:r,shouldEncode:!r,encoding:n,preserveNewlines:i});return{read(){CWe(this,s,o)},onStdoutDataDone:o}},CWe=async(t,e,r)=>{try{let{value:n,done:i}=await e.next();i?r.resolve():t.push(n)}catch{}},Cj=async({subprocessStdout:t,onStdoutDataDone:e,readable:r,subprocess:n,subprocessStdin:i})=>{try{await wj(t),await n,await bj(i),await e,r.readable&&r.push(null)}catch(o){await bj(i),Ide(r,o)}},Ij=async({subprocessStdout:t,subprocess:e,waitReadableDestroy:r},n)=>{await $h(r,e)&&(Ide(t,n),await NC(e,n))},Ide=(t,e)=>{kC(t,t.readable,e)};import{Writable as IWe}from"stream";import{callbackify as Pde}from"util";var Ode=({subprocess:t,concurrentStreams:e},{to:r}={})=>{let{subprocessStdin:n,waitWritableFinal:i,waitWritableDestroy:o}=Pj(t,r,e),s=new IWe({...Oj(n,t,i),destroy:Pde(kj.bind(void 0,{subprocessStdin:n,subprocess:t,waitWritableFinal:i,waitWritableDestroy:o})),highWaterMark:n.writableHighWaterMark,objectMode:n.writableObjectMode});return Nj(n,s),s},Pj=(t,e,r)=>{let n=Y0(t,e),i=vE(r,n,"writableFinal"),o=vE(r,n,"writableDestroy");return{subprocessStdin:n,waitWritableFinal:i,waitWritableDestroy:o}},Oj=(t,e,r)=>({write:PWe.bind(void 0,t),final:Pde(OWe.bind(void 0,t,e,r))}),PWe=(t,e,r,n)=>{t.write(e,r)?n():t.once("drain",n)},OWe=async(t,e,r)=>{await $h(r,e)&&(t.writable&&t.end(),await e)},Nj=async(t,e,r)=>{try{await Tj(t),e.writable&&e.end()}catch(n){await Rde(r),Nde(e,n)}},kj=async({subprocessStdin:t,subprocess:e,waitWritableFinal:r,waitWritableDestroy:n},i)=>{await $h(r,e),await $h(n,e)&&(Nde(t,i),await NC(e,i))},Nde=(t,e)=>{kC(t,t.writable,e)};import{Duplex as NWe}from"stream";import{callbackify as kWe}from"util";var kde=({subprocess:t,concurrentStreams:e,encoding:r},{from:n,to:i,binary:o=!0,preserveNewlines:s=!0}={})=>{let a=o||vi.has(r),{subprocessStdout:c,waitReadableDestroy:l}=Aj(t,n,e),{subprocessStdin:u,waitWritableFinal:d,waitWritableDestroy:f}=Pj(t,i,e),{readableEncoding:p,readableObjectMode:h,readableHighWaterMark:m}=xj(c,a),{read:g,onStdoutDataDone:_}=Rj({subprocessStdout:c,subprocess:t,binary:a,encoding:r,preserveNewlines:s}),v=new NWe({read:g,...Oj(u,t,d),destroy:kWe(MWe.bind(void 0,{subprocessStdout:c,subprocessStdin:u,subprocess:t,waitReadableDestroy:l,waitWritableFinal:d,waitWritableDestroy:f})),readableHighWaterMark:m,writableHighWaterMark:u.writableHighWaterMark,readableObjectMode:h,writableObjectMode:u.writableObjectMode,encoding:p});return Cj({subprocessStdout:c,onStdoutDataDone:_,readable:v,subprocess:t,subprocessStdin:u}),Nj(u,v,c),v},MWe=async({subprocessStdout:t,subprocessStdin:e,subprocess:r,waitReadableDestroy:n,waitWritableFinal:i,waitWritableDestroy:o},s)=>{await Promise.all([Ij({subprocessStdout:t,subprocess:r,waitReadableDestroy:n},s),kj({subprocessStdin:e,subprocess:r,waitWritableFinal:i,waitWritableDestroy:o},s)])};var Mj=(t,e,{from:r,binary:n=!1,preserveNewlines:i=!1}={})=>{let o=n||vi.has(e),s=Rh(t,r),a=PC({subprocessStdout:s,subprocess:t,binary:o,shouldEncode:!0,encoding:e,preserveNewlines:i});return $We(a,s,t)},$We=async function*(t,e,r){try{yield*t}finally{e.readable&&e.destroy(),await r}};var Mde=(t,{encoding:e})=>{let r=Ade();t.readable=Cde.bind(void 0,{subprocess:t,concurrentStreams:r,encoding:e}),t.writable=Ode.bind(void 0,{subprocess:t,concurrentStreams:r}),t.duplex=kde.bind(void 0,{subprocess:t,concurrentStreams:r,encoding:e}),t.iterable=Mj.bind(void 0,t,e),t[Symbol.asyncIterator]=Mj.bind(void 0,t,e,{})};var $de=(t,e)=>{for(let[r,n]of LWe){let i=n.value.bind(e);Reflect.defineProperty(t,r,{...n,value:i})}},DWe=(async()=>{})().constructor.prototype,LWe=["then","catch","finally"].map(t=>[t,Reflect.getOwnPropertyDescriptor(DWe,t)]);var Dde=(t,e,r,n)=>{let{file:i,commandArguments:o,command:s,escapedCommand:a,startTime:c,verboseInfo:l,options:u,fileDescriptors:d}=zWe(t,e,r),{subprocess:f,promise:p}=BWe({file:i,commandArguments:o,options:u,startTime:c,verboseInfo:l,command:s,escapedCommand:a,fileDescriptors:d});return f.pipe=IC.bind(void 0,{source:f,sourcePromise:p,boundOptions:{},createNested:n}),$de(f,p),Cs.set(f,{options:u,fileDescriptors:d}),f},zWe=(t,e,r)=>{let{command:n,escapedCommand:i,startTime:o,verboseInfo:s}=F0(t,e,r),{file:a,commandArguments:c,options:l}=oC(t,e,r),u=jWe(l),d=Wue(u,s);return{file:a,commandArguments:c,command:n,escapedCommand:i,startTime:o,verboseInfo:s,options:u,fileDescriptors:d}},jWe=({timeout:t,signal:e,...r})=>{if(e!==void 0)throw new TypeError('The "signal" option has been renamed to "cancelSignal" instead.');return{...r,timeoutDuration:t}},BWe=({file:t,commandArguments:e,options:r,startTime:n,verboseInfo:i,command:o,escapedCommand:s,fileDescriptors:a})=>{let c;try{c=FWe(...sC(t,e,r))}catch(h){return que({error:h,command:o,escapedCommand:s,fileDescriptors:a,options:r,startTime:n,verboseInfo:i})}let l=new AbortController;UWe(Number.POSITIVE_INFINITY,l.signal);let u=[...c.stdio];rde(c,a,l),ide(c,r,l);let d={},f=Rs();c.kill=yce.bind(void 0,{kill:c.kill.bind(c),options:r,onInternalError:f,context:d,controller:l}),c.all=yde(c,r),Mde(c,r),zue(c,r);let p=qWe({subprocess:c,options:r,startTime:n,verboseInfo:i,fileDescriptors:a,originalStreams:u,command:o,escapedCommand:s,context:d,onInternalError:f,controller:l});return{subprocess:c,promise:p}},qWe=async({subprocess:t,options:e,startTime:r,verboseInfo:n,fileDescriptors:i,originalStreams:o,command:s,escapedCommand:a,context:c,onInternalError:l,controller:u})=>{let[d,[f,p],h,m,g]=await wde({subprocess:t,options:e,context:c,verboseInfo:n,fileDescriptors:i,originalStreams:o,onInternalError:l,controller:u});u.abort(),l.resolve();let _=h.map((b,T)=>La(b,e,T)),v=La(m,e,"all"),w=VWe({errorInfo:d,exitCode:f,signal:p,stdio:_,all:v,ipcOutput:g,context:c,options:e,command:s,escapedCommand:a,startTime:r});return Nh(w,n,e)},VWe=({errorInfo:t,exitCode:e,signal:r,stdio:n,all:i,ipcOutput:o,context:s,options:a,command:c,escapedCommand:l,startTime:u})=>"error"in t?mE({error:t.error,command:c,escapedCommand:l,timedOut:s.terminationReason==="timeout",isCanceled:s.terminationReason==="cancel"||s.terminationReason==="gracefulCancel",isGracefullyCanceled:s.terminationReason==="gracefulCancel",isMaxBuffer:t.error instanceof Is,isForcefullyTerminated:s.isForcefullyTerminated,exitCode:e,signal:r,stdio:n,all:i,ipcOutput:o,options:a,startTime:u,isSync:!1}):hC({command:c,escapedCommand:l,stdio:n,all:i,ipcOutput:o,options:a,startTime:u});var MC=(t,e)=>{let r=Object.fromEntries(Object.entries(e).map(([n,i])=>[n,GWe(n,t[n],i)]));return{...t,...r}},GWe=(t,e,r)=>HWe.has(t)&&cr(e)&&cr(r)?{...e,...r}:r,HWe=new Set(["env",...uz]);var cl=(t,e,r,n)=>{let i=(s,a,c)=>cl(s,a,r,c),o=(...s)=>WWe({mapArguments:t,deepOptions:r,boundOptions:e,setBoundExeca:n,createNested:i},...s);return n!==void 0&&n(o,i,e),o},WWe=({mapArguments:t,deepOptions:e={},boundOptions:r={},setBoundExeca:n,createNested:i},o,...s)=>{if(cr(o))return i(t,MC(r,o),n);let{file:a,commandArguments:c,options:l,isSync:u}=YWe({mapArguments:t,firstArgument:o,nextArguments:s,deepOptions:e,boundOptions:r});return u?Mue(a,c,l):Dde(a,c,l,i)},YWe=({mapArguments:t,firstArgument:e,nextArguments:r,deepOptions:n,boundOptions:i})=>{let o=Wse(e)?Yse(e,r):[e,...r],[s,a,c]=C0(...o),l=MC(MC(n,i),c),{file:u=s,commandArguments:d=a,options:f=l,isSync:p=!1}=t({file:s,commandArguments:a,options:l});return{file:u,commandArguments:d,options:f,isSync:p}};var Lde=({file:t,commandArguments:e})=>Fde(t,e),Ude=({file:t,commandArguments:e})=>({...Fde(t,e),isSync:!0}),Fde=(t,e)=>{if(e.length>0)throw new TypeError(`The command and its arguments must be passed as a single string: ${t} ${e}.`);let[r,...n]=KWe(t);return{file:r,commandArguments:n}},KWe=t=>{if(typeof t!="string")throw new TypeError(`The command must be a string: ${String(t)}.`);let e=t.trim();if(e==="")return[];let r=[];for(let n of e.split(ZWe)){let i=r.at(-1);i&&i.endsWith("\\")?r[r.length-1]=`${i.slice(0,-1)} ${n}`:r.push(n)}return r},ZWe=/ +/g;var zde=(t,e,r)=>{t.sync=e(JWe,r),t.s=t.sync},jde=({options:t})=>Bde(t),JWe=({options:t})=>({...Bde(t),isSync:!0}),Bde=t=>({options:{...XWe(t),...t}}),XWe=({input:t,inputFile:e,stdio:r})=>t===void 0&&e===void 0&&r===void 0?{stdin:"inherit"}:{},qde={preferLocal:!0};var Vde=cl(()=>({})),iqt=cl(()=>({isSync:!0})),Gde=cl(Lde),oqt=cl(Ude),sqt=cl(tle),aqt=cl(jde,{},qde,zde),{sendMessage:cqt,getOneMessage:lqt,getEachMessage:uqt,getCancelSignal:dqt}=jue();var Hde=!1,Wde,Yde=t=>{Hde=!0,Wde??=t},Ua=()=>Hde,Kde=()=>Wde;var bE=null,Zde=t=>(bE&&bE.destroy(),bE=new Os({totalAllowedTime:t}),bE),Jde=()=>bE;var Os=class{constructor({totalAllowedTime:e}){this.withStageTimer=async(e,r,n,{interruptible:i=!0}={})=>{if(this.isTimeExpired())throw new Error(`${e} stage did not complete in the allowed time. Time has already expired.`);if(i&&Ua())throw new Error(`Aborting ${e} stage \u2014 shutting down`);let o=this.onTimesUp(()=>{throw new Error(`${e} stage did not complete in the allowed time.`)}),s=null,a=null;n!==void 0&&(a=new Promise((u,d)=>{s=setTimeout(()=>{d(new Error(`${e} stage exceeded its maximum duration of ${n}ms`))},n)}));let c=Date.now(),l="success";try{return await _0({stage:e},async()=>a?await Promise.race([r(),a]):await r())}catch(u){throw l="failure",u}finally{Y.timing("stage.duration",Date.now()-c,{stage:e,outcome:l}),o(),s&&clearTimeout(s)}};this.startTime=Date.now(),this.totalAllowedTime=e,this.globalTimeoutId=null,this.subscribers=[],this.hasTimedOut=!1,this.setupGlobalTimeout()}getElapsedTime(){return Date.now()-this.startTime}getRemainingTime(){let e=this.getElapsedTime(),r=this.totalAllowedTime-e;return Math.max(0,r)}isTimeExpired(){return this.getRemainingTime()===0||this.hasTimedOut}setupGlobalTimeout(){this.globalTimeoutId&&clearTimeout(this.globalTimeoutId),this.globalTimeoutId=setTimeout(()=>{this.notifyTimeUp()},this.totalAllowedTime)}notifyTimeUp(){this.hasTimedOut=!0;for(let e=this.subscribers.length-1;e>=0;e--)try{this.subscribers[e]()}catch(r){console.error("TimeKeeper: Error in time up callback:",r)}}onTimesUp(e){if(this.subscribers.push(e),this.hasTimedOut)try{e()}catch(r){console.error("TimeKeeper: Error in time up callback:",r)}return()=>{let r=this.subscribers.indexOf(e);r>-1&&this.subscribers.splice(r,1)}}off(e){let r=this.subscribers.indexOf(e);r>-1&&this.subscribers.splice(r,1)}clearSubscribers(){this.subscribers.length=0}getSubscriberCount(){return this.subscribers.length}destroy(){this.globalTimeoutId&&(clearTimeout(this.globalTimeoutId),this.globalTimeoutId=null),this.clearSubscribers()}static{this.timeUnits={seconds:e=>e*1e3,minutes:e=>e*60*1e3,hours:e=>e*60*60*1e3}}};var Xde={name:"@netlify/agent-runner-cli",type:"module",version:"1.176.0-PAW-469.8",description:"CLI tool for running Netlify agents",main:"./dist/index.js",types:"./dist/index.d.ts",exports:"./dist/index.js",bin:{"agent-runner-cli":"./dist/bin.js","agent-runner-cli-local":"./dist/bin-local.js"},files:["dist/**/*.js","dist/**/*.d.ts","dist/skills/**","patches","scripts"],scripts:{prebuild:"rm -rf dist",build:"tsup",dev:"tsup --watch",prepare:"husky install node_modules/@netlify/eslint-config-node/.husky/",prepublishOnly:"npm ci && npm test",prepack:"npm run build",test:"run-s build format test:dev",format:"run-s build format:check-fix:*","format:ci":"run-s build format:check:*","format:check-fix:lint":"run-e format:check:lint format:fix:lint","format:check:lint":'eslint --cache --format=codeframe --max-warnings=0 "{src,scripts,test,.github}/**/*.{js,ts,md,html}"',"format:fix:lint":'eslint --fix --cache --format=codeframe --max-warnings=0 "{src,scripts,test,.github}/**/*.{js,ts,md,html}"',"format:check-fix:prettier":"run-e format:check:prettier format:fix:prettier","format:check:prettier":'prettier --check --ignore-path .gitignore --loglevel=warn "{src,scripts,test,.github}/**/*.{js,ts,md,yml,json,html}" "*.{js,ts,yml,json,html}" ".*.{js,ts,yml,json,html}" "!**/package-lock.json" "!package-lock.json" "!src/skills/**/*.md"',"format:fix:prettier":'prettier --write --ignore-path .gitignore --loglevel=warn "{src,scripts,test,.github}/**/*.{js,ts,md,yml,json,html}" "*.{js,ts,yml,json,html}" ".*.{js,ts,yml,json,html}" "!**/package-lock.json" "!package-lock.json" "!src/skills/**/*.md"',"test:dev":"run-s build test:dev:*","test:ci":"run-s build test:ci:*","test:dev:vitest":"LOG=0 vitest --exclude '**/integration/**'","test:ci:vitest":"LOG=0 vitest run --coverage --exclude '**/integration/**'","test:smoke":"node scripts/smoke-dist.js","test:integration":"vitest run test/integration/","test:integration:codex":"vitest run test/integration/codex.test.ts","test:integration:claude":"vitest run test/integration/claude.test.ts","test:integration:gemini":"vitest run test/integration/gemini.test.ts","test:integration:opencode":"vitest run test/integration/opencode.test.ts","test:integration:skill-invocation":"vitest run test/integration/skill-invocation.test.ts","check:types":"tsc --noEmit",postinstall:"node scripts/postinstall.js"},keywords:[],license:"MIT",repository:"netlify/agent-runner-cli",bugs:{url:"https://github.com/netlify/agent-runner-cli/issues"},author:"Netlify Inc.",directories:{test:"test"},devDependencies:{"@commitlint/cli":"^20.0.0","@commitlint/config-conventional":"^20.0.0","@eslint/compat":"^2.0.0","@eslint/js":"^10.0.1","@netlify/axis":"^1.17.6","@netlify/eslint-config-node":"^7.0.1","@types/node":"^24.5.0","@typescript-eslint/eslint-plugin":"^8.0.0","@typescript-eslint/parser":"^8.0.0","@vitest/coverage-v8":"^4.1.5","@vitest/eslint-plugin":"^1.6.6",eslint:"^10.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-n":"^17.0.0",husky:"^9.0.0",jiti:"^2.7.0","patch-package":"^8.0.0",tsup:"^8.5.0",typescript:"^5.0.0","typescript-eslint":"^8.44.0",vitest:"^4.0.16"},dependencies:{"@anthropic-ai/claude-code":"^2.1.219","@anthropic-ai/sdk":"0.91.1","@google/gemini-cli":"0.42.0","@modelcontextprotocol/sdk":"^1.29.0","@netlify/cache-utils":"^6.0.5","@netlify/database-proxy":"^0.2.1","@netlify/otel":"^6.0.6","@netlify/ts-cli":"^1.2.0","@openai/codex":"0.153.4","@opentelemetry/api":"^1.9.0","@opentelemetry/exporter-trace-otlp-grpc":"0.218.0",execa:"^9.6.1",fastify:"5.12.1",minimist:"^1.2.8",openai:"6.34.0",zod:"^4.4.3"}};var rYe=eYe(import.meta.url),nYe=Fa.dirname(rYe),iYe=tYe(import.meta.url),Dh=oe("shell"),$j=new Set,Qde={preferLocal:!0},Vt=(t,e,r)=>{let[n,i]=oYe(e,r),o={...Qde,...i},s=Vde(t,n,o);tfe(s,o),ife(s);let a=r?.idleTimeout;return a&&a>0&&nfe(s,a),s},efe=(t,e)=>{let r={...Qde,...e},n=Gde(t,r);return tfe(n,r),ife(n),e?.idleTimeout&&e.idleTimeout>0&&nfe(n,e.idleTimeout),n},oYe=function(t,e){return Array.isArray(t)?[t,e]:typeof t=="object"&&t!==null?[[],t]:[[],void 0]},tfe=(t,e)=>{if(e.stdio!==void 0||e.stdout!==void 0||e.stderr!==void 0||Ns.env.NETLIFY_LOCAL_QUIET==="true")return;if(Ns.env.NETLIFY_MASK_LOGS!=="false"){t.stdout?.pipe(new JS).pipe(Ns.stdout),t.stderr?.pipe(new JS).pipe(Ns.stderr);return}t.stdout?.pipe(Ns.stdout),t.stderr?.pipe(Ns.stderr)},Dj=(t,e="SIGTERM")=>{try{return t.pid&&!t.killed?(Ns.kill(-t.pid,e),Dh.log(`Killed process ${t.pid} with signal ${e}`),!0):!1}catch(r){return Dh.error("Error killing process:",r),!1}},rfe=t=>Dj(t,"SIGKILL"),nfe=(t,e)=>{let r=null,n=()=>{Dh.log(`Process ${t.pid} killed due to idle timeout (no output for ${e}ms)`),Dj(t,"SIGTERM"),setTimeout(()=>{t.pid&&!t.killed&&(Dh.log(`Force killing idle process ${t.pid}`),rfe(t))},5e3)},i=()=>{r&&clearTimeout(r),r=setTimeout(n,e)};i(),t.stdout?.on("data",i),t.stderr?.on("data",i);let o=()=>{r&&(clearTimeout(r),r=null)};t.on("exit",o),t.on("error",o)},ife=t=>{$j.add(t);let e=Jde();if(e){let r=e.onTimesUp(()=>{Dh.log(`Global timer expired, killing process ${t.pid}`),Dj(t,"SIGTERM"),setTimeout(()=>{t.pid&&!t.killed&&(Dh.log(`Force killing process ${t.pid} after timeout`),rfe(t))},5e3)});t.on("exit",()=>{$j.delete(t),r()}),t.on("error",()=>{$j.delete(t),r()})}};function ks(t,e){if(!Ns.env.NETLIFY_LOCAL_MODE)try{let i=iYe.resolve(Xde.name),o=Fa.dirname(i);for(;o!==Fa.dirname(o);){let s=Fa.dirname(o);if(Fa.basename(s)==="node_modules"){let a=Fa.join(s,".bin",e);if($C.existsSync(a))return a;break}o=s}}catch(i){console.error("Could not resolve package.json",i)}if(Ns.env.NODE_PATH){let i=Fa.join(Ns.env.NODE_PATH,".bin",e);if($C.existsSync(i))return i}let r=Fa.join(t,"node_modules",".bin",e);if($C.existsSync(r))return r;let n=Fa.join(nYe,"..","node_modules",".bin",e);if($C.existsSync(n))return n}var ofe=oe("repo"),lfe="runner-diffs-",UC=t=>`${lfe}${t}-`,ufe=async t=>{let e=cfe.tmpdir(),r;try{r=await DC.readdir(e)}catch{return}await Promise.all(r.filter(n=>n.startsWith(lfe)&&!n.startsWith(UC(t))).map(n=>DC.rm(LC.join(e,n),{recursive:!0,force:!0}).catch(()=>{})))},lr=(t,e={})=>Vt("git",t,{...e,env:{...e.env,NETLIFY_INTERNAL_GIT:"1"}}),FC=async({config:t,isRetry:e,cwd:r=process.cwd()})=>{ofe.info("Getting runner diffs");let n=await zj(r),{hasChanges:i}=n,{status:o}=n;if(!i)return{hasChanges:!1};if(!e){let l=Bj(o);await pYe(l,r)}ofe.info("Changes after processing"),await Fj(r);let s=await TE(o,r);if(await Uj(s,r),i=await uYe(r),!i)return{hasChanges:!1,ignored:s};await lr(["commit","-m","Agent runner [skip ci]"],{cwd:r});let a=await DC.mkdtemp(LC.join(cfe.tmpdir(),UC(t.sessionId))),c=await Lj({config:t,diffDir:a,cwd:r,target:{commit:"HEAD"},ignored:s});return await cYe(r),c.hasChanges&&Y.distribution("diff.size",(c.diffBinary??c.diff).size,{phase:"final"}),c},Lj=async({config:t,diffDir:e,cwd:r,target:n,ignored:i})=>{let o="commit"in n?n.commit:"--cached",s="indexPath"in n?{GIT_INDEX_FILE:n.indexPath}:void 0,a=async({from:p,fileName:h,binary:m})=>{let g=LC.join(e,h);await lr([...m?["diff",p,o,"--binary"]:["diff",p,o],`--output=${g}`],{stdio:["ignore","ignore","pipe"],cwd:r,env:s});let{size:v}=await DC.stat(g);return{path:g,size:v}},c=await a({from:t.runSha,fileName:"session.patch"});if(c.size===0)return{hasChanges:!1,ignored:i};let l=await a({from:t.runSha,fileName:"session-binary.patch",binary:!0}),u,d;if(t.sha){u=await a({from:t.sha,fileName:"cumulative.patch"});let p=await a({from:t.sha,fileName:"cumulative-binary.patch",binary:!0});await afe(u,p)||(d=p)}let f={hasChanges:!0,diff:c,resultDiff:u,ignored:i};return await afe(c,l)||(f.diffBinary=l),d&&(f.resultDiffBinary=d),f},sfe=async t=>{let e=sYe("sha256");for await(let r of aYe(t))e.update(r);return e.digest("hex")},afe=async(t,e)=>t.size===e.size&&await sfe(t.path)===await sfe(e.path),cYe=async(t=process.cwd())=>{process.env.NETLIFY_LOCAL_MODE&&await lr(["reset","--soft","HEAD~1"],{cwd:t})},Uj=async(t=[],e=process.cwd())=>{await lr(["add",".",...t],{cwd:e})},Fj=async(t=process.cwd())=>{let e=await lr(["status","-s"],{cwd:t});return String(e.stdout??"")},dfe=/.. (.+)?\.log$/,lYe=[dfe],zj=async(t=process.cwd())=>{let e=await Fj(t);return{hasChanges:(e.trim().length===0?[]:e.split(`
144
144
  `).filter(i=>lYe.some(s=>s instanceof RegExp?s.test(i):i===s)?!1:i[1]?.trim()!=="")).length!==0,status:e}},uYe=async(t=process.cwd())=>{try{return await lr(["diff","--staged","--quiet"],{cwd:t}),!1}catch{return!0}},jj=async(t=process.cwd())=>{let{stdout:e}=await lr(["rev-parse","HEAD"],{cwd:t});return String(e??"").trim()},dYe=1,fYe=async t=>{try{return await lr(["rev-parse","--verify","--quiet","HEAD"],{cwd:t}),!0}catch(e){if(e.exitCode===dYe)return!1;throw e}},ffe=async(t=process.cwd())=>{if(!await fYe(t))return!0;let{stdout:e}=await lr(["ls-tree","--name-only","HEAD"],{cwd:t});return String(e??"").trim().length===0},pfe=async(t=process.cwd())=>{let{stdout:e}=await lr(["rev-list","--max-parents=0","HEAD"],{cwd:t});return String(e??"").trim()},TE=async(t,e=process.cwd())=>{t||=await Fj(e);let r=[".netlify","node_modules","dist",".next","out",".nuxt",".output",".cache",".turbo",".parcel-cache","coverage",".nyc_output","storybook-static","public/build","CLAUDE.local.md"],n=[];return t.split(`
145
145
  `).forEach(i=>{r.forEach(s=>{let a=i===`?? ${s}`,c=i.startsWith(`?? ${s}/`)||i.startsWith(`?? ${s}${LC.sep}`);(a||c)&&n.push(`:!${s}`)});let o=i.match(dfe)?.[1];o&&n.push(`:!${o}.log`)}),n},hfe=async(t=process.cwd())=>{await lr(["reset","--hard","HEAD"],{cwd:t})},mfe=async(t=process.cwd())=>{let e=await lr(["clean","-fd","-e",".netlify"],{stdio:["ignore","pipe","pipe"],cwd:t});return String(e.stdout??"").split(`
146
146
  `).filter(r=>r.startsWith("Removing ")).map(r=>r.slice(9))},Bj=t=>{let e=t.split(`
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@netlify/agent-runner-cli",
3
3
  "type": "module",
4
- "version": "1.176.0-PAW-469.7",
4
+ "version": "1.176.0-PAW-469.8",
5
5
  "description": "CLI tool for running Netlify agents",
6
6
  "main": "./dist/index.js",
7
7
  "types": "./dist/index.d.ts",