imdone-cli 0.67.0 → 0.67.1
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/CHANGELOG.md +4 -0
- package/dist/CHANGELOG.md +4 -0
- package/dist/index.cjs +8 -1
- package/dist/index.cjs.map +2 -2
- package/dist/index.min.cjs +2 -2
- package/dist/index.min.cjs.map +2 -2
- package/dist/preinstall.cjs +1 -1
- package/dist/preinstall.cjs.map +1 -1
- package/dist/preinstall.min.cjs +1 -1
- package/dist/preinstall.min.cjs.map +1 -1
- package/package.json +1 -1
package/dist/preinstall.min.cjs
CHANGED
|
@@ -157,7 +157,7 @@ For example, you can use the \`pathToFileURL()\` method of the \`url\` core modu
|
|
|
157
157
|
`,LF:`
|
|
158
158
|
`,concatBytes:Gc},MM=(e,r)=>{let t=new Uint8Array(e.length+r.length);return t.set(e,0),t.set(r,e.length),t},PM={windowsNewline:new Uint8Array([13,10]),unixNewline:new Uint8Array([10]),LF:10,concatBytes:MM};var Tx=require("node:buffer");var Cx=(e,r)=>e?void 0:$M.bind(void 0,r),$M=function*(e,r){if(typeof r!="string"&&!J(r)&&!Tx.Buffer.isBuffer(r))throw new TypeError(`The \`${e}\` option's transform must use "objectMode: true" to receive as input: ${typeof r}.`);yield r},_x=(e,r)=>e?jM.bind(void 0,r):BM.bind(void 0,r),jM=function*(e,r){Ox(e,r),yield r},BM=function*(e,r){if(Ox(e,r),typeof r!="string"&&!J(r))throw new TypeError(`The \`${e}\` option's function must yield a string or an Uint8Array, not ${typeof r}.`);yield r},Ox=(e,r)=>{if(r==null)throw new TypeError(`The \`${e}\` option's function must not call \`yield ${r}\`.
|
|
159
159
|
Instead, \`yield\` should either be called with a value, or not be called at all. For example:
|
|
160
|
-
if (condition) { yield value; }`)};var Ix=require("node:buffer"),Rx=require("node:string_decoder");var Co=(e,r,t)=>{if(t)return;if(e)return{transform:UM.bind(void 0,new TextEncoder)};let n=new Rx.StringDecoder(r);return{transform:GM.bind(void 0,n),final:qM.bind(void 0,n)}},UM=function*(e,r){Ix.Buffer.isBuffer(r)?yield nr(r):typeof r=="string"?yield e.encode(r):yield r},GM=function*(e,r){yield J(r)?e.write(r):r},qM=function*(e){let r=e.end();r!==""&&(yield r)};var Yc=require("node:util"),Hc=(0,Yc.callbackify)(async(e,r,t,n)=>{r.currentIterable=e(...t);try{for await(let i of r.currentIterable)n.push(i)}finally{delete r.currentIterable}}),_o=async function*(e,r,t){if(t===r.length){yield e;return}let{transform:n=HM}=r[t];for await(let i of n(e))yield*_o(i,r,t+1)},kx=async function*(e){for(let[r,{final:t}]of Object.entries(e))yield*YM(t,Number(r),e)},YM=async function*(e,r,t){if(e!==void 0)for await(let n of e())yield*_o(n,t,r+1)},Lx=(0,Yc.callbackify)(async({currentIterable:e},r)=>{if(e!==void 0){await(r?e.throw(r):e.return());return}if(r)throw r}),HM=function*(e){yield e};var Vc=(e,r,t,n)=>{try{for(let i of e(...r))t.push(i);n()}catch(i){n(i)}},Fx=(e,r)=>[...r.flatMap(t=>[...Ur(t,e,0)]),...Sn(e)],Ur=function*(e,r,t){if(t===r.length){yield e;return}let{transform:n=WM}=r[t];for(let i of n(e))yield*Ur(i,r,t+1)},Sn=function*(e){for(let[r,{final:t}]of Object.entries(e))yield*VM(t,Number(r),e)},VM=function*(e,r,t){if(e!==void 0)for(let n of e())yield*Ur(n,t,r+1)},WM=function*(e){yield e};var Wc=({value:e,value:{transform:r,final:t,writableObjectMode:n,readableObjectMode:i},optionName:o},{encoding:s})=>{let a={},c=Dx(e,s,o),l=Br(r),u=Br(t),f=l?Hc.bind(void 0,_o,a):Vc.bind(void 0,Ur),d=l||u?Hc.bind(void 0,kx,a):Vc.bind(void 0,Sn),p=l||u?Lx.bind(void 0,a):void 0;return{stream:new vn.Transform({writableObjectMode:n,writableHighWaterMark:(0,vn.getDefaultHighWaterMark)(n),readableObjectMode:i,readableHighWaterMark:(0,vn.getDefaultHighWaterMark)(i),transform(g,y,_){f([g,c,0],this,_)},flush(g){d([c],this,g)},destroy:p})}},Oo=(e,r,t,n)=>{let i=r.filter(({type:s})=>s==="generator"),o=n?i.reverse():i;for(let{value:s,optionName:a}of o){let c=Dx(s,t,a);e=Fx(c,e)}return e},Dx=({transform:e,final:r,binary:t,writableObjectMode:n,readableObjectMode:i,preserveNewlines:o},s,a)=>{let c={};return[{transform:Cx(n,a)},Co(t,s,n),To(t,o,n,c),{transform:e,final:r},{transform:_x(i,a)},Ax({binary:t,preserveNewlines:o,readableObjectMode:i,state:c})].filter(Boolean)};var Nx=(e,r)=>{for(let t of zM(e))KM(e,t,r)},zM=e=>new Set(Object.entries(e).filter(([,{direction:r}])=>r==="input").map(([r])=>Number(r))),KM=(e,r,t)=>{let{stdioItems:n}=e[r],i=n.filter(({contents:a})=>a!==void 0);if(i.length===0)return;if(r!==0){let[{type:a,optionName:c}]=i;throw new TypeError(`Only the \`stdin\` option, not \`${c}\`, can be ${xr[a]} with synchronous methods.`)}let s=i.map(({contents:a})=>a).map(a=>XM(a,n));t.input=pn(s)},XM=(e,r)=>{let t=Oo(e,r,"utf8",!0);return JM(t),pn(t)},JM=e=>{let r=e.find(t=>typeof t!="string"&&!J(t));if(r!==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: ${r}.`)};var Ro=require("node:fs");var Io=({stdioItems:e,encoding:r,verboseInfo:t,fdNumber:n})=>n!=="all"&&xt(t,n)&&!Se.has(r)&&QM(n)&&(e.some(({type:i,value:o})=>i==="native"&&ZM.has(o))||e.every(({type:i})=>ke.has(i))),QM=e=>e===1||e===2,ZM=new Set(["pipe","overlapped"]),Mx=async(e,r,t,n)=>{for await(let i of e)eP(r)||$x(i,t,n)},Px=(e,r,t)=>{for(let n of e)$x(n,r,t)},eP=e=>e._readableState.pipes.length>0,$x=(e,r,t)=>{let n=ji(e);Ve({type:"output",verboseMessage:n,fdNumber:r,verboseInfo:t})};var jx=({fileDescriptors:e,syncResult:{output:r},options:t,isMaxBuffer:n,verboseInfo:i})=>{if(r===null)return{output:Array.from({length:3})};let o={},s=new Set([]);return{output:r.map((c,l)=>rP({result:c,fileDescriptors:e,fdNumber:l,state:o,outputFiles:s,isMaxBuffer:n,verboseInfo:i},t)),...o}},rP=({result:e,fileDescriptors:r,fdNumber:t,state:n,outputFiles:i,isMaxBuffer:o,verboseInfo:s},{buffer:a,encoding:c,lines:l,stripFinalNewline:u,maxBuffer:f})=>{if(e===null)return;let d=Pw(e,o,f),p=nr(d),{stdioItems:m,objectMode:g}=r[t],y=tP([p],m,c,n),{serializedResult:_,finalResult:S=_}=nP({chunks:y,objectMode:g,encoding:c,lines:l,stripFinalNewline:u,fdNumber:t});iP({serializedResult:_,fdNumber:t,state:n,verboseInfo:s,encoding:c,stdioItems:m,objectMode:g});let V=a[t]?S:void 0;try{return n.error===void 0&&oP(_,m,i),V}catch(W){return n.error=W,V}},tP=(e,r,t,n)=>{try{return Oo(e,r,t,!1)}catch(i){return n.error=i,e}},nP=({chunks:e,objectMode:r,encoding:t,lines:n,stripFinalNewline:i,fdNumber:o})=>{if(r)return{serializedResult:e};if(t==="buffer")return{serializedResult:pn(e)};let s=Ig(e,t);return n[o]?{serializedResult:s,finalResult:qc(s,!i[o],r)}:{serializedResult:s}},iP=({serializedResult:e,fdNumber:r,state:t,verboseInfo:n,encoding:i,stdioItems:o,objectMode:s})=>{if(!Io({stdioItems:o,encoding:i,verboseInfo:n,fdNumber:r}))return;let a=qc(e,!1,s);try{Px(a,r,n)}catch(c){t.error??=c}},oP=(e,r,t)=>{for(let{path:n,append:i}of r.filter(({type:o})=>So.has(o))){let o=typeof n=="string"?n:n.toString();i||t.has(o)?(0,Ro.appendFileSync)(n,e):(t.add(o),(0,Ro.writeFileSync)(n,e))}};var Bx=([,e,r],t)=>{if(t.all)return e===void 0?r:r===void 0?e:Array.isArray(e)?Array.isArray(r)?[...e,...r]:[...e,sr(r,t,"all")]:Array.isArray(r)?[sr(e,t,"all"),...r]:J(e)&&J(r)?Wa([e,r]):`${e}${r}`};var ko=require("node:events");var Ux=async(e,r)=>{let[t,n]=await sP(e);return r.isForcefullyTerminated??=!1,[t,n]},sP=async e=>{let[r,t]=await Promise.allSettled([(0,ko.once)(e,"spawn"),(0,ko.once)(e,"exit")]);return r.status==="rejected"?[]:t.status==="rejected"?Gx(e):t.value},Gx=async e=>{try{return await(0,ko.once)(e,"exit")}catch{return Gx(e)}},qx=async e=>{let[r,t]=await e;if(!aP(r,t)&&zc(r,t))throw new $e;return[r,t]},aP=(e,r)=>e===void 0&&r===void 0,zc=(e,r)=>e!==0||r!==null;var Yx=({error:e,status:r,signal:t,output:n},{maxBuffer:i})=>{let o=cP(e,r,t),s=o?.code==="ETIMEDOUT",a=Mw(o,n,i);return{resultError:o,exitCode:r,signal:t,timedOut:s,isMaxBuffer:a}},cP=(e,r,t)=>e!==void 0?e:zc(r,t)?new $e:void 0;var Vx=(e,r,t)=>{let{file:n,commandArguments:i,command:o,escapedCommand:s,startTime:a,verboseInfo:c,options:l,fileDescriptors:u}=lP(e,r,t),f=pP({file:n,commandArguments:i,options:l,command:o,escapedCommand:s,verboseInfo:c,fileDescriptors:u,startTime:a});return It(f,c,l)},lP=(e,r,t)=>{let{command:n,escapedCommand:i,startTime:o,verboseInfo:s}=Ui(e,r,t),a=uP(t),{file:c,commandArguments:l,options:u}=co(e,r,a);fP(u);let f=bx(u,s);return{file:c,commandArguments:l,command:n,escapedCommand:i,startTime:o,verboseInfo:s,options:u,fileDescriptors:f}},uP=e=>e.node&&!e.ipc?{...e,ipc:!1}:e,fP=({ipc:e,ipcInput:r,detached:t,cancelSignal:n})=>{r&&Lo("ipcInput"),e&&Lo("ipc: true"),t&&Lo("detached: true"),n&&Lo("cancelSignal")},Lo=e=>{throw new TypeError(`The "${e}" option cannot be used with synchronous methods.`)},pP=({file:e,commandArguments:r,options:t,command:n,escapedCommand:i,verboseInfo:o,fileDescriptors:s,startTime:a})=>{let c=dP({file:e,commandArguments:r,options:t,command:n,escapedCommand:i,fileDescriptors:s,startTime:a});if(c.failed)return c;let{resultError:l,exitCode:u,signal:f,timedOut:d,isMaxBuffer:p}=Yx(c,t),{output:m,error:g=l}=jx({fileDescriptors:s,syncResult:c,options:t,isMaxBuffer:p,verboseInfo:o}),y=m.map((S,V)=>sr(S,t,V)),_=sr(Bx(m,t),t,"all");return hP({error:g,exitCode:u,signal:f,timedOut:d,isMaxBuffer:p,stdio:y,all:_,options:t,command:n,escapedCommand:i,startTime:a})},dP=({file:e,commandArguments:r,options:t,command:n,escapedCommand:i,fileDescriptors:o,startTime:s})=>{try{Nx(o,t);let a=mP(t);return(0,Hx.spawnSync)(...lo(e,r,a))}catch(a){return Ot({error:a,command:n,escapedCommand:i,fileDescriptors:o,options:t,startTime:s,isSync:!0})}},mP=({encoding:e,maxBuffer:r,...t})=>({...t,encoding:"buffer",maxBuffer:wo(r)}),hP=({error:e,exitCode:r,signal:t,timedOut:n,isMaxBuffer:i,stdio:o,all:s,options:a,command:c,escapedCommand:l,startTime:u})=>e===void 0?xo({command:c,escapedCommand:l,stdio:o,all:s,ipcOutput:[],options:a,startTime:u}):En({error:e,command:c,escapedCommand:l,timedOut:n,isCanceled:!1,isGracefullyCanceled:!1,isMaxBuffer:i,isForcefullyTerminated:!1,exitCode:r,signal:t,stdio:o,all:s,ipcOutput:[],options:a,startTime:u,isSync:!0});var eE=require("node:events"),rE=require("node:child_process");var Xc=L(require("node:process"),1);var kt=require("node:events");var Wx=({anyProcess:e,channel:r,isSubprocess:t,ipc:n},{reference:i=!0,filter:o}={})=>(vt({methodName:"getOneMessage",isSubprocess:t,ipc:n,isConnected:ro(e)}),gP({anyProcess:e,channel:r,isSubprocess:t,filter:o,reference:i})),gP=async({anyProcess:e,channel:r,isSubprocess:t,filter:n,reference:i})=>{Ji(r,i);let o=wr(e,r,t),s=new AbortController;try{return await Promise.race([yP(o,n,s),wP(o,t,s),xP(o,t,s)])}catch(a){throw At(e),a}finally{s.abort(),Qi(r,i)}},yP=async(e,r,{signal:t})=>{if(r===void 0){let[n]=await(0,kt.once)(e,"message",{signal:t});return n}for await(let[n]of(0,kt.on)(e,"message",{signal:t}))if(r(n))return n},wP=async(e,r,{signal:t})=>{await(0,kt.once)(e,"disconnect",{signal:t}),gy(r)},xP=async(e,r,{signal:t})=>{let[n]=await(0,kt.once)(e,"strict:error",{signal:t});throw zi(n,r)};var An=require("node:events");var Kx=({anyProcess:e,channel:r,isSubprocess:t,ipc:n},{reference:i=!0}={})=>Kc({anyProcess:e,channel:r,isSubprocess:t,ipc:n,shouldAwait:!t,reference:i}),Kc=({anyProcess:e,channel:r,isSubprocess:t,ipc:n,shouldAwait:i,reference:o})=>{vt({methodName:"getEachMessage",isSubprocess:t,ipc:n,isConnected:ro(e)}),Ji(r,o);let s=wr(e,r,t),a=new AbortController,c={};return bP(e,s,a),EP({ipcEmitter:s,isSubprocess:t,controller:a,state:c}),SP({anyProcess:e,channel:r,ipcEmitter:s,isSubprocess:t,shouldAwait:i,controller:a,state:c,reference:o})},bP=async(e,r,t)=>{try{await(0,An.once)(r,"disconnect",{signal:t.signal}),t.abort()}catch{}},EP=async({ipcEmitter:e,isSubprocess:r,controller:t,state:n})=>{try{let[i]=await(0,An.once)(e,"strict:error",{signal:t.signal});n.error=zi(i,r),t.abort()}catch{}},SP=async function*({anyProcess:e,channel:r,ipcEmitter:t,isSubprocess:n,shouldAwait:i,controller:o,state:s,reference:a}){try{for await(let[c]of(0,An.on)(t,"message",{signal:o.signal}))zx(s),yield c}catch{zx(s)}finally{o.abort(),Qi(r,a),n||At(e),i&&await e}},zx=({error:e})=>{if(e)throw e};var Xx=(e,{ipc:r})=>{Object.assign(e,Qx(e,!1,r))},Jx=()=>{let e=Xc.default,r=!0,t=Xc.default.channel!==void 0;return{...Qx(e,r,t),getCancelSignal:Xy.bind(void 0,{anyProcess:e,channel:e.channel,isSubprocess:r,ipc:t})}},Qx=(e,r,t)=>({sendMessage:oo.bind(void 0,{anyProcess:e,channel:e.channel,isSubprocess:r,ipc:t}),getOneMessage:Wx.bind(void 0,{anyProcess:e,channel:e.channel,isSubprocess:r,ipc:t}),getEachMessage:Kx.bind(void 0,{anyProcess:e,channel:e.channel,isSubprocess:r,ipc:t})});var Zx=require("node:child_process"),br=require("node:stream");var eb=({error:e,command:r,escapedCommand:t,fileDescriptors:n,options:i,startTime:o,verboseInfo:s})=>{jc(n);let a=new Zx.ChildProcess;vP(a,n),Object.assign(a,{readable:AP,writable:TP,duplex:CP});let c=Ot({error:e,command:r,escapedCommand:t,fileDescriptors:n,options:i,startTime:o,isSync:!1}),l=_P(c,s,i);return{subprocess:a,promise:l}},vP=(e,r)=>{let t=Tn(),n=Tn(),i=Tn(),o=Array.from({length:r.length-3},Tn),s=Tn(),a=[t,n,i,...o];Object.assign(e,{stdin:t,stdout:n,stderr:i,all:s,stdio:a})},Tn=()=>{let e=new br.PassThrough;return e.end(),e},AP=()=>new br.Readable({read(){}}),TP=()=>new br.Writable({write(){}}),CP=()=>new br.Duplex({read(){},write(){}}),_P=async(e,r,t)=>It(e,r,t);var Lt=require("node:fs"),tb=require("node:buffer"),Je=require("node:stream");var nb=(e,r)=>Ao(OP,e,r,!1),Cn=({type:e,optionName:r})=>{throw new TypeError(`The \`${r}\` option cannot be ${xr[e]}.`)},rb={fileNumber:Cn,generator:Wc,asyncGenerator:Wc,nodeStream:({value:e})=>({stream:e}),webTransform({value:{transform:e,writableObjectMode:r,readableObjectMode:t}}){let n=r||t;return{stream:Je.Duplex.fromWeb(e,{objectMode:n})}},duplex:({value:{transform:e}})=>({stream:e}),native(){}},OP={input:{...rb,fileUrl:({value:e})=>({stream:(0,Lt.createReadStream)(e)}),filePath:({value:{file:e}})=>({stream:(0,Lt.createReadStream)(e)}),webStream:({value:e})=>({stream:Je.Readable.fromWeb(e)}),iterable:({value:e})=>({stream:Je.Readable.from(e)}),asyncIterable:({value:e})=>({stream:Je.Readable.from(e)}),string:({value:e})=>({stream:Je.Readable.from(e)}),uint8Array:({value:e})=>({stream:Je.Readable.from(tb.Buffer.from(e))})},output:{...rb,fileUrl:({value:e})=>({stream:(0,Lt.createWriteStream)(e)}),filePath:({value:{file:e,append:r}})=>({stream:(0,Lt.createWriteStream)(e,r?{flags:"a"}:{})}),webStream:({value:e})=>({stream:Je.Writable.fromWeb(e)}),iterable:Cn,asyncIterable:Cn,string:Cn,uint8Array:Cn}};var _n=require("node:events"),Do=require("node:stream"),Zc=require("node:stream/promises");function Gr(e){if(!Array.isArray(e))throw new TypeError(`Expected an array, got \`${typeof e}\`.`);for(let i of e)Qc(i);let r=e.some(({readableObjectMode:i})=>i),t=IP(e,r),n=new Jc({objectMode:r,writableHighWaterMark:t,readableHighWaterMark:t});for(let i of e)n.add(i);return n}var IP=(e,r)=>{if(e.length===0)return(0,Do.getDefaultHighWaterMark)(r);let t=e.filter(({readableObjectMode:n})=>n===r).map(({readableHighWaterMark:n})=>n);return Math.max(...t)},Jc=class extends Do.PassThrough{#r=new Set([]);#t=new Set([]);#e=new Set([]);#n;#o=Symbol("unpipe");#i=new WeakMap;add(r){if(Qc(r),this.#r.has(r))return;this.#r.add(r),this.#n??=RP(this,this.#r,this.#o);let t=FP({passThroughStream:this,stream:r,streams:this.#r,ended:this.#t,aborted:this.#e,onFinished:this.#n,unpipeEvent:this.#o});this.#i.set(r,t),r.pipe(this,{end:!1})}async remove(r){if(Qc(r),!this.#r.has(r))return!1;let t=this.#i.get(r);return t===void 0?!1:(this.#i.delete(r),r.unpipe(this),await t,!0)}},RP=async(e,r,t)=>{Fo(e,ib);let n=new AbortController;try{await Promise.race([kP(e,n),LP(e,r,t,n)])}finally{n.abort(),Fo(e,-ib)}},kP=async(e,{signal:r})=>{try{await(0,Zc.finished)(e,{signal:r,cleanup:!0})}catch(t){throw sb(e,t),t}},LP=async(e,r,t,{signal:n})=>{for await(let[i]of(0,_n.on)(e,"unpipe",{signal:n}))r.has(i)&&i.emit(t)},Qc=e=>{if(typeof e?.pipe!="function")throw new TypeError(`Expected a readable stream, got: \`${typeof e}\`.`)},FP=async({passThroughStream:e,stream:r,streams:t,ended:n,aborted:i,onFinished:o,unpipeEvent:s})=>{Fo(e,ob);let a=new AbortController;try{await Promise.race([DP(o,r,a),NP({passThroughStream:e,stream:r,streams:t,ended:n,aborted:i,controller:a}),MP({stream:r,streams:t,ended:n,aborted:i,unpipeEvent:s,controller:a})])}finally{a.abort(),Fo(e,-ob)}t.size>0&&t.size===n.size+i.size&&(n.size===0&&i.size>0?el(e):PP(e))},DP=async(e,r,{signal:t})=>{try{await e,t.aborted||el(r)}catch(n){t.aborted||sb(r,n)}},NP=async({passThroughStream:e,stream:r,streams:t,ended:n,aborted:i,controller:{signal:o}})=>{try{await(0,Zc.finished)(r,{signal:o,cleanup:!0,readable:!0,writable:!1}),t.has(r)&&n.add(r)}catch(s){if(o.aborted||!t.has(r))return;ab(s)?i.add(r):cb(e,s)}},MP=async({stream:e,streams:r,ended:t,aborted:n,unpipeEvent:i,controller:{signal:o}})=>{if(await(0,_n.once)(e,i,{signal:o}),!e.readable)return(0,_n.once)(o,"abort",{signal:o});r.delete(e),t.delete(e),n.delete(e)},PP=e=>{e.writable&&e.end()},sb=(e,r)=>{ab(r)?el(e):cb(e,r)},ab=e=>e?.code==="ERR_STREAM_PREMATURE_CLOSE",el=e=>{(e.readable||e.writable)&&e.destroy()},cb=(e,r)=>{e.destroyed||(e.once("error",$P),e.destroy(r))},$P=()=>{},Fo=(e,r)=>{let t=e.getMaxListeners();t!==0&&t!==Number.POSITIVE_INFINITY&&e.setMaxListeners(t+r)},ib=2,ob=1;var rl=require("node:stream/promises");var Ft=(e,r)=>{e.pipe(r),jP(e,r),BP(e,r)},jP=async(e,r)=>{if(!(Pe(e)||Pe(r))){try{await(0,rl.finished)(e,{cleanup:!0,readable:!0,writable:!1})}catch{}tl(r)}},tl=e=>{e.writable&&e.end()},BP=async(e,r)=>{if(!(Pe(e)||Pe(r))){try{await(0,rl.finished)(r,{cleanup:!0,readable:!1,writable:!0})}catch{}nl(e)}},nl=e=>{e.readable&&e.destroy()};var lb=(e,r,t)=>{let n=new Map;for(let[i,{stdioItems:o,direction:s}]of Object.entries(r)){for(let{stream:a}of o.filter(({type:c})=>ke.has(c)))UP(e,a,s,i);for(let{stream:a}of o.filter(({type:c})=>!ke.has(c)))qP({subprocess:e,stream:a,direction:s,fdNumber:i,pipeGroups:n,controller:t})}for(let[i,o]of n.entries()){let s=o.length===1?o[0]:Gr(o);Ft(s,i)}},UP=(e,r,t,n)=>{t==="output"?Ft(e.stdio[n],r):Ft(r,e.stdio[n]);let i=GP[n];i!==void 0&&(e[i]=r),e.stdio[n]=r},GP=["stdin","stdout","stderr"],qP=({subprocess:e,stream:r,direction:t,fdNumber:n,pipeGroups:i,controller:o})=>{if(r===void 0)return;YP(r,o);let[s,a]=t==="output"?[r,e.stdio[n]]:[e.stdio[n],r],c=i.get(s)??[];i.set(s,[...c,a])},YP=(e,{signal:r})=>{Pe(e)&&$r(e,HP,r)},HP=2;var fb=require("node:events");var qr=[];qr.push("SIGHUP","SIGINT","SIGTERM");process.platform!=="win32"&&qr.push("SIGALRM","SIGABRT","SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");process.platform==="linux"&&qr.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT");var No=e=>!!e&&typeof e=="object"&&typeof e.removeListener=="function"&&typeof e.emit=="function"&&typeof e.reallyExit=="function"&&typeof e.listeners=="function"&&typeof e.kill=="function"&&typeof e.pid=="number"&&typeof e.on=="function",il=Symbol.for("signal-exit emitter"),ol=globalThis,VP=Object.defineProperty.bind(Object),sl=class{emitted={afterExit:!1,exit:!1};listeners={afterExit:[],exit:[]};count=0;id=Math.random();constructor(){if(ol[il])return ol[il];VP(ol,il,{value:this,writable:!1,enumerable:!1,configurable:!1})}on(r,t){this.listeners[r].push(t)}removeListener(r,t){let n=this.listeners[r],i=n.indexOf(t);i!==-1&&(i===0&&n.length===1?n.length=0:n.splice(i,1))}emit(r,t,n){if(this.emitted[r])return!1;this.emitted[r]=!0;let i=!1;for(let o of this.listeners[r])i=o(t,n)===!0||i;return r==="exit"&&(i=this.emit("afterExit",t,n)||i),i}},Mo=class{},WP=e=>({onExit(r,t){return e.onExit(r,t)},load(){return e.load()},unload(){return e.unload()}}),al=class extends Mo{onExit(){return()=>{}}load(){}unload(){}},cl=class extends Mo{#r=ll.platform==="win32"?"SIGINT":"SIGHUP";#t=new sl;#e;#n;#o;#i={};#s=!1;constructor(r){super(),this.#e=r,this.#i={};for(let t of qr)this.#i[t]=()=>{let n=this.#e.listeners(t),{count:i}=this.#t,o=r;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.#t.emit("exit",null,t),a=t==="SIGHUP"?this.#r:t;s||r.kill(r.pid,a)}};this.#o=r.reallyExit,this.#n=r.emit}onExit(r,t){if(!No(this.#e))return()=>{};this.#s===!1&&this.load();let n=t?.alwaysLast?"afterExit":"exit";return this.#t.on(n,r),()=>{this.#t.removeListener(n,r),this.#t.listeners.exit.length===0&&this.#t.listeners.afterExit.length===0&&this.unload()}}load(){if(!this.#s){this.#s=!0,this.#t.count+=1;for(let r of qr)try{let t=this.#i[r];t&&this.#e.on(r,t)}catch{}this.#e.emit=(r,...t)=>this.#c(r,...t),this.#e.reallyExit=r=>this.#a(r)}}unload(){this.#s&&(this.#s=!1,qr.forEach(r=>{let t=this.#i[r];if(!t)throw new Error("Listener not defined for signal: "+r);try{this.#e.removeListener(r,t)}catch{}}),this.#e.emit=this.#n,this.#e.reallyExit=this.#o,this.#t.count-=1)}#a(r){return No(this.#e)?(this.#e.exitCode=r||0,this.#t.emit("exit",this.#e.exitCode,null),this.#o.call(this.#e,this.#e.exitCode)):0}#c(r,...t){let n=this.#n;if(r==="exit"&&No(this.#e)){typeof t[0]=="number"&&(this.#e.exitCode=t[0]);let i=n.call(this.#e,r,...t);return this.#t.emit("exit",this.#e.exitCode,null),i}else return n.call(this.#e,r,...t)}},ll=globalThis.process,{onExit:ub,load:W6,unload:z6}=WP(No(ll)?new cl(ll):new al);var pb=(e,{cleanup:r,detached:t},{signal:n})=>{if(!r||t)return;let i=ub(()=>{e.kill()});(0,fb.addAbortListener)(n,()=>{i()})};var mb=({source:e,sourcePromise:r,boundOptions:t,createNested:n},...i)=>{let o=Bi(),{destination:s,destinationStream:a,destinationError:c,from:l,unpipeSignal:u}=zP(t,n,i),{sourceStream:f,sourceError:d}=XP(e,l),{options:p,fileDescriptors:m}=ze.get(e);return{sourcePromise:r,sourceStream:f,sourceOptions:p,sourceError:d,destination:s,destinationStream:a,destinationError:c,unpipeSignal:u,fileDescriptors:m,startTime:o}},zP=(e,r,t)=>{try{let{destination:n,pipeOptions:{from:i,to:o,unpipeSignal:s}={}}=KP(e,r,...t),a=Xi(n,o);return{destination:n,destinationStream:a,from:i,unpipeSignal:s}}catch(n){return{destinationError:n}}},KP=(e,r,t,...n)=>{if(Array.isArray(t))return{destination:r(db,e)(t,...n),pipeOptions:e};if(typeof t=="string"||t instanceof URL||Ha(t)){if(Object.keys(e).length>0)throw new TypeError('Please use .pipe("file", ..., options) or .pipe(execa("file", ..., options)) instead of .pipe(options)("file", ...).');let[i,o,s]=Ii(t,...n);return{destination:r(db)(i,o,s),pipeOptions:s}}if(ze.has(t)){if(Object.keys(e).length>0)throw new TypeError("Please use .pipe(options)`command` or .pipe($(options)`command`) instead of .pipe(options)($`command`).");return{destination:t,pipeOptions:n[0]}}throw new TypeError(`The first argument must be a template string, an options object, or an Execa subprocess: ${t}`)},db=({options:e})=>({options:{...e,stdin:"pipe",piped:!0}}),XP=(e,r)=>{try{return{sourceStream:Tt(e,r)}}catch(t){return{sourceError:t}}};var gb=({sourceStream:e,sourceError:r,destinationStream:t,destinationError:n,fileDescriptors:i,sourceOptions:o,startTime:s})=>{let a=JP({sourceStream:e,sourceError:r,destinationStream:t,destinationError:n});if(a!==void 0)throw ul({error:a,fileDescriptors:i,sourceOptions:o,startTime:s})},JP=({sourceStream:e,sourceError:r,destinationStream:t,destinationError:n})=>{if(r!==void 0&&n!==void 0)return n;if(n!==void 0)return nl(e),n;if(r!==void 0)return tl(t),r},ul=({error:e,fileDescriptors:r,sourceOptions:t,startTime:n})=>Ot({error:e,command:hb,escapedCommand:hb,fileDescriptors:r,options:t,startTime:n,isSync:!1}),hb="source.pipe(destination)";var yb=async e=>{let[{status:r,reason:t,value:n=t},{status:i,reason:o,value:s=o}]=await e;if(s.pipedFrom.includes(n)||s.pipedFrom.push(n),i==="rejected")throw s;if(r==="rejected")throw n;return s};var wb=require("node:stream/promises");var xb=(e,r,t)=>{let n=Po.has(r)?ZP(e,r):QP(e,r);return $r(e,r$,t.signal),$r(r,t$,t.signal),e$(r),n},QP=(e,r)=>{let t=Gr([e]);return Ft(t,r),Po.set(r,t),t},ZP=(e,r)=>{let t=Po.get(r);return t.add(e),t},e$=async e=>{try{await(0,wb.finished)(e,{cleanup:!0,readable:!1,writable:!0})}catch{}Po.delete(e)},Po=new WeakMap,r$=2,t$=1;var bb=require("node:util");var Eb=(e,r)=>e===void 0?[]:[n$(e,r)],n$=async(e,{sourceStream:r,mergedStream:t,fileDescriptors:n,sourceOptions:i,startTime:o})=>{await(0,bb.aborted)(e,r),await t.remove(r);let s=new Error("Pipe canceled by `unpipeSignal` option.");throw ul({error:s,fileDescriptors:n,sourceOptions:i,startTime:o})};var $o=(e,...r)=>{if(G(r[0]))return $o.bind(void 0,{...e,boundOptions:{...e.boundOptions,...r[0]}});let{destination:t,...n}=mb(e,...r),i=i$({...n,destination:t});return i.pipe=$o.bind(void 0,{...e,source:t,sourcePromise:i,boundOptions:{}}),i},i$=async({sourcePromise:e,sourceStream:r,sourceOptions:t,sourceError:n,destination:i,destinationStream:o,destinationError:s,unpipeSignal:a,fileDescriptors:c,startTime:l})=>{let u=o$(e,i);gb({sourceStream:r,sourceError:n,destinationStream:o,destinationError:s,fileDescriptors:c,sourceOptions:t,startTime:l});let f=new AbortController;try{let d=xb(r,o,f);return await Promise.race([yb(u),...Eb(a,{sourceStream:r,mergedStream:d,sourceOptions:t,fileDescriptors:c,startTime:l})])}finally{f.abort()}},o$=(e,r)=>Promise.allSettled([e,r]);var Cb=require("node:timers/promises");var vb=require("node:events"),Ab=require("node:stream");var jo=({subprocessStdout:e,subprocess:r,binary:t,shouldEncode:n,encoding:i,preserveNewlines:o})=>{let s=new AbortController;return s$(r,s),Tb({stream:e,controller:s,binary:t,shouldEncode:!e.readableObjectMode&&n,encoding:i,shouldSplit:!e.readableObjectMode,preserveNewlines:o})},s$=async(e,r)=>{try{await e}catch{}finally{r.abort()}},fl=({stream:e,onStreamEnd:r,lines:t,encoding:n,stripFinalNewline:i,allMixed:o})=>{let s=new AbortController;a$(r,s,e);let a=e.readableObjectMode&&!o;return Tb({stream:e,controller:s,binary:n==="buffer",shouldEncode:!a,encoding:n,shouldSplit:!a&&t,preserveNewlines:!i})},a$=async(e,r,t)=>{try{await e}catch{t.destroy()}finally{r.abort()}},Tb=({stream:e,controller:r,binary:t,shouldEncode:n,encoding:i,shouldSplit:o,preserveNewlines:s})=>{let a=(0,vb.on)(e,"data",{signal:r.signal,highWaterMark:Sb,highWatermark:Sb});return c$({onStdoutChunk:a,controller:r,binary:t,shouldEncode:n,encoding:i,shouldSplit:o,preserveNewlines:s})},pl=(0,Ab.getDefaultHighWaterMark)(!0),Sb=pl,c$=async function*({onStdoutChunk:e,controller:r,binary:t,shouldEncode:n,encoding:i,shouldSplit:o,preserveNewlines:s}){let a=l$({binary:t,shouldEncode:n,encoding:i,shouldSplit:o,preserveNewlines:s});try{for await(let[c]of e)yield*Ur(c,a,0)}catch(c){if(!r.signal.aborted)throw c}finally{yield*Sn(a)}},l$=({binary:e,shouldEncode:r,encoding:t,shouldSplit:n,preserveNewlines:i})=>[Co(e,t,!r),To(e,i,!n,{})].filter(Boolean);var _b=async({stream:e,onStreamEnd:r,fdNumber:t,encoding:n,buffer:i,maxBuffer:o,lines:s,allMixed:a,stripFinalNewline:c,verboseInfo:l,streamInfo:u})=>{let f=u$({stream:e,onStreamEnd:r,fdNumber:t,encoding:n,allMixed:a,verboseInfo:l,streamInfo:u});if(!i){await Promise.all([f$(e),f]);return}let d=Uc(c,t),p=fl({stream:e,onStreamEnd:r,lines:s,encoding:n,stripFinalNewline:d,allMixed:a}),[m]=await Promise.all([p$({stream:e,iterable:p,fdNumber:t,encoding:n,maxBuffer:o,lines:s}),f]);return m},u$=async({stream:e,onStreamEnd:r,fdNumber:t,encoding:n,allMixed:i,verboseInfo:o,streamInfo:{fileDescriptors:s}})=>{if(!Io({stdioItems:s[t]?.stdioItems,encoding:n,verboseInfo:o,fdNumber:t}))return;let a=fl({stream:e,onStreamEnd:r,lines:!0,encoding:n,stripFinalNewline:!0,allMixed:i});await Mx(a,e,t,o)},f$=async e=>{await(0,Cb.setImmediate)(),e.readableFlowing===null&&e.resume()},p$=async({stream:e,stream:{readableObjectMode:r},iterable:t,fdNumber:n,encoding:i,maxBuffer:o,lines:s})=>{try{return r||s?await mo(t,{maxBuffer:o}):i==="buffer"?new Uint8Array(await ho(t,{maxBuffer:o})):await yo(t,{maxBuffer:o})}catch(a){return Ob(Fw({error:a,stream:e,readableObjectMode:r,lines:s,encoding:i,fdNumber:n}))}},dl=async e=>{try{return await e}catch(r){return Ob(r)}},Ob=({bufferedData:e})=>_g(e)?new Uint8Array(e):e;var Rb=require("node:stream/promises"),On=async(e,r,t,{isSameDirection:n,stopOnExit:i=!1}={})=>{let o=d$(e,t),s=new AbortController;try{await Promise.race([...i?[t.exitPromise]:[],(0,Rb.finished)(e,{cleanup:!0,signal:s.signal})])}catch(a){o.stdinCleanedUp||g$(a,r,t,n)}finally{s.abort()}},d$=(e,{originalStreams:[r],subprocess:t})=>{let n={stdinCleanedUp:!1};return e===r&&m$(e,t,n),n},m$=(e,r,t)=>{let{_destroy:n}=e;e._destroy=(...i)=>{h$(r,t),n.call(e,...i)}},h$=({exitCode:e,signalCode:r},t)=>{(e!==null||r!==null)&&(t.stdinCleanedUp=!0)},g$=(e,r,t,n)=>{if(!y$(e,r,t,n))throw e},y$=(e,r,t,n=!0)=>t.propagating?Ib(e)||Bo(e):(t.propagating=!0,ml(t,r)===n?Ib(e):Bo(e)),ml=({fileDescriptors:e},r)=>r!=="all"&&e[r].direction==="input",Bo=e=>e?.code==="ERR_STREAM_PREMATURE_CLOSE",Ib=e=>e?.code==="EPIPE";var kb=({subprocess:e,encoding:r,buffer:t,maxBuffer:n,lines:i,stripFinalNewline:o,verboseInfo:s,streamInfo:a})=>e.stdio.map((c,l)=>hl({stream:c,fdNumber:l,encoding:r,buffer:t[l],maxBuffer:n[l],lines:i[l],allMixed:!1,stripFinalNewline:o,verboseInfo:s,streamInfo:a})),hl=async({stream:e,fdNumber:r,encoding:t,buffer:n,maxBuffer:i,lines:o,allMixed:s,stripFinalNewline:a,verboseInfo:c,streamInfo:l})=>{if(!e)return;let u=On(e,r,l);if(ml(l,r)){await u;return}let[f]=await Promise.all([_b({stream:e,onStreamEnd:u,fdNumber:r,encoding:t,buffer:n,maxBuffer:i,lines:o,allMixed:s,stripFinalNewline:a,verboseInfo:c,streamInfo:l}),u]);return f};var Lb=({stdout:e,stderr:r},{all:t})=>t&&(e||r)?Gr([e,r].filter(Boolean)):void 0,Fb=({subprocess:e,encoding:r,buffer:t,maxBuffer:n,lines:i,stripFinalNewline:o,verboseInfo:s,streamInfo:a})=>hl({...w$(e,t),fdNumber:"all",encoding:r,maxBuffer:n[1]+n[2],lines:i[1]||i[2],allMixed:x$(e),stripFinalNewline:o,verboseInfo:s,streamInfo:a}),w$=({stdout:e,stderr:r,all:t},[,n,i])=>{let o=n||i;return o?n?i?{stream:t,buffer:o}:{stream:e,buffer:o}:{stream:r,buffer:o}:{stream:t,buffer:o}},x$=({all:e,stdout:r,stderr:t})=>e&&r&&t&&r.readableObjectMode!==t.readableObjectMode;var $b=require("node:events");var Db=e=>xt(e,"ipc"),Nb=(e,r)=>{let t=ji(e);Ve({type:"ipc",verboseMessage:t,fdNumber:"ipc",verboseInfo:r})};var Mb=async({subprocess:e,buffer:r,maxBuffer:t,ipc:n,ipcOutput:i,verboseInfo:o})=>{if(!n)return i;let s=Db(o),a=ir(r,"ipc"),c=ir(t,"ipc");for await(let l of Kc({anyProcess:e,channel:e.channel,isSubprocess:!1,ipc:n,shouldAwait:!1,reference:!0}))a&&(Dw(e,i,c),i.push(l)),s&&Nb(l,o);return i},Pb=async(e,r)=>(await Promise.allSettled([e]),r);var jb=async({subprocess:e,options:{encoding:r,buffer:t,maxBuffer:n,lines:i,timeoutDuration:o,cancelSignal:s,gracefulCancel:a,forceKillAfterDelay:c,stripFinalNewline:l,ipc:u,ipcInput:f},context:d,verboseInfo:p,fileDescriptors:m,originalStreams:g,onInternalError:y,controller:_})=>{let S=Ux(e,d),V={originalStreams:g,fileDescriptors:m,subprocess:e,exitPromise:S,propagating:!1},W=kb({subprocess:e,encoding:r,buffer:t,maxBuffer:n,lines:i,stripFinalNewline:l,verboseInfo:p,streamInfo:V}),ve=Fb({subprocess:e,encoding:r,buffer:t,maxBuffer:n,lines:i,stripFinalNewline:l,verboseInfo:p,streamInfo:V}),ue=[],De=Mb({subprocess:e,buffer:t,maxBuffer:n,ipc:u,ipcOutput:ue,verboseInfo:p}),Ne=b$(g,e,V),Ae=E$(m,V);try{return await Promise.race([Promise.all([{},qx(S),Promise.all(W),ve,De,aw(e,f),...Ne,...Ae]),y,S$(e,_),...tw(e,o,d,_),...hy({subprocess:e,cancelSignal:s,gracefulCancel:a,context:d,controller:_}),...Zy({subprocess:e,cancelSignal:s,gracefulCancel:a,forceKillAfterDelay:c,context:d,controller:_})])}catch($t){return d.terminationReason??="other",Promise.all([{error:$t},S,Promise.all(W.map(Sr=>dl(Sr))),dl(ve),Pb(De,ue),Promise.allSettled(Ne),Promise.allSettled(Ae)])}},b$=(e,r,t)=>e.map((n,i)=>n===r.stdio[i]?void 0:On(n,i,t)),E$=(e,r)=>e.flatMap(({stdioItems:t},n)=>t.filter(({value:i,stream:o=i})=>Be(o,{checkOpen:!1})&&!Pe(o)).map(({type:i,value:o,stream:s=o})=>On(s,n,r,{isSameDirection:ke.has(i),stopOnExit:i==="native"}))),S$=async(e,{signal:r})=>{let[t]=await(0,$b.once)(e,"error",{signal:r});throw t};var Bb=()=>({readableDestroy:new WeakMap,writableFinal:new WeakMap,writableDestroy:new WeakMap}),In=(e,r,t)=>{let n=e[t];n.has(r)||n.set(r,[]);let i=n.get(r),o=We();return i.push(o),{resolve:o.resolve.bind(o),promises:i}},Dt=async({resolve:e,promises:r},t)=>{e();let[n]=await Promise.race([Promise.allSettled([!0,t]),Promise.all([!1,...r])]);return!n};var Gb=require("node:stream"),qb=require("node:util");var gl=require("node:stream/promises");var yl=async e=>{if(e!==void 0)try{await wl(e)}catch{}},Ub=async e=>{if(e!==void 0)try{await xl(e)}catch{}},wl=async e=>{await(0,gl.finished)(e,{cleanup:!0,readable:!1,writable:!0})},xl=async e=>{await(0,gl.finished)(e,{cleanup:!0,readable:!0,writable:!1})},Uo=async(e,r)=>{if(await e,r)throw r},Go=(e,r,t)=>{t&&!Bo(t)?e.destroy(t):r&&e.destroy()};var Yb=({subprocess:e,concurrentStreams:r,encoding:t},{from:n,binary:i=!0,preserveNewlines:o=!0}={})=>{let s=i||Se.has(t),{subprocessStdout:a,waitReadableDestroy:c}=bl(e,n,r),{readableEncoding:l,readableObjectMode:u,readableHighWaterMark:f}=El(a,s),{read:d,onStdoutDataDone:p}=Sl({subprocessStdout:a,subprocess:e,binary:s,encoding:t,preserveNewlines:o}),m=new Gb.Readable({read:d,destroy:(0,qb.callbackify)(Al.bind(void 0,{subprocessStdout:a,subprocess:e,waitReadableDestroy:c})),highWaterMark:f,objectMode:u,encoding:l});return vl({subprocessStdout:a,onStdoutDataDone:p,readable:m,subprocess:e}),m},bl=(e,r,t)=>{let n=Tt(e,r),i=In(t,n,"readableDestroy");return{subprocessStdout:n,waitReadableDestroy:i}},El=({readableEncoding:e,readableObjectMode:r,readableHighWaterMark:t},n)=>n?{readableEncoding:e,readableObjectMode:r,readableHighWaterMark:t}:{readableEncoding:e,readableObjectMode:!0,readableHighWaterMark:pl},Sl=({subprocessStdout:e,subprocess:r,binary:t,encoding:n,preserveNewlines:i})=>{let o=We(),s=jo({subprocessStdout:e,subprocess:r,binary:t,shouldEncode:!t,encoding:n,preserveNewlines:i});return{read(){v$(this,s,o)},onStdoutDataDone:o}},v$=async(e,r,t)=>{try{let{value:n,done:i}=await r.next();i?t.resolve():e.push(n)}catch{}},vl=async({subprocessStdout:e,onStdoutDataDone:r,readable:t,subprocess:n,subprocessStdin:i})=>{try{await xl(e),await n,await yl(i),await r,t.readable&&t.push(null)}catch(o){await yl(i),Hb(t,o)}},Al=async({subprocessStdout:e,subprocess:r,waitReadableDestroy:t},n)=>{await Dt(t,r)&&(Hb(e,n),await Uo(r,n))},Hb=(e,r)=>{Go(e,e.readable,r)};var Vb=require("node:stream"),Tl=require("node:util");var Wb=({subprocess:e,concurrentStreams:r},{to:t}={})=>{let{subprocessStdin:n,waitWritableFinal:i,waitWritableDestroy:o}=Cl(e,t,r),s=new Vb.Writable({..._l(n,e,i),destroy:(0,Tl.callbackify)(Il.bind(void 0,{subprocessStdin:n,subprocess:e,waitWritableFinal:i,waitWritableDestroy:o})),highWaterMark:n.writableHighWaterMark,objectMode:n.writableObjectMode});return Ol(n,s),s},Cl=(e,r,t)=>{let n=Xi(e,r),i=In(t,n,"writableFinal"),o=In(t,n,"writableDestroy");return{subprocessStdin:n,waitWritableFinal:i,waitWritableDestroy:o}},_l=(e,r,t)=>({write:A$.bind(void 0,e),final:(0,Tl.callbackify)(T$.bind(void 0,e,r,t))}),A$=(e,r,t,n)=>{e.write(r,t)?n():e.once("drain",n)},T$=async(e,r,t)=>{await Dt(t,r)&&(e.writable&&e.end(),await r)},Ol=async(e,r,t)=>{try{await wl(e),r.writable&&r.end()}catch(n){await Ub(t),zb(r,n)}},Il=async({subprocessStdin:e,subprocess:r,waitWritableFinal:t,waitWritableDestroy:n},i)=>{await Dt(t,r),await Dt(n,r)&&(zb(e,i),await Uo(r,i))},zb=(e,r)=>{Go(e,e.writable,r)};var Kb=require("node:stream"),Xb=require("node:util");var Jb=({subprocess:e,concurrentStreams:r,encoding:t},{from:n,to:i,binary:o=!0,preserveNewlines:s=!0}={})=>{let a=o||Se.has(t),{subprocessStdout:c,waitReadableDestroy:l}=bl(e,n,r),{subprocessStdin:u,waitWritableFinal:f,waitWritableDestroy:d}=Cl(e,i,r),{readableEncoding:p,readableObjectMode:m,readableHighWaterMark:g}=El(c,a),{read:y,onStdoutDataDone:_}=Sl({subprocessStdout:c,subprocess:e,binary:a,encoding:t,preserveNewlines:s}),S=new Kb.Duplex({read:y,..._l(u,e,f),destroy:(0,Xb.callbackify)(C$.bind(void 0,{subprocessStdout:c,subprocessStdin:u,subprocess:e,waitReadableDestroy:l,waitWritableFinal:f,waitWritableDestroy:d})),readableHighWaterMark:g,writableHighWaterMark:u.writableHighWaterMark,readableObjectMode:m,writableObjectMode:u.writableObjectMode,encoding:p});return vl({subprocessStdout:c,onStdoutDataDone:_,readable:S,subprocess:e,subprocessStdin:u}),Ol(u,S,c),S},C$=async({subprocessStdout:e,subprocessStdin:r,subprocess:t,waitReadableDestroy:n,waitWritableFinal:i,waitWritableDestroy:o},s)=>{await Promise.all([Al({subprocessStdout:e,subprocess:t,waitReadableDestroy:n},s),Il({subprocessStdin:r,subprocess:t,waitWritableFinal:i,waitWritableDestroy:o},s)])};var Rl=(e,r,{from:t,binary:n=!1,preserveNewlines:i=!1}={})=>{let o=n||Se.has(r),s=Tt(e,t),a=jo({subprocessStdout:s,subprocess:e,binary:o,shouldEncode:!0,encoding:r,preserveNewlines:i});return _$(a,s,e)},_$=async function*(e,r,t){try{yield*e}finally{r.readable&&r.destroy(),await t}};var Qb=(e,{encoding:r})=>{let t=Bb();e.readable=Yb.bind(void 0,{subprocess:e,concurrentStreams:t,encoding:r}),e.writable=Wb.bind(void 0,{subprocess:e,concurrentStreams:t}),e.duplex=Jb.bind(void 0,{subprocess:e,concurrentStreams:t,encoding:r}),e.iterable=Rl.bind(void 0,e,r),e[Symbol.asyncIterator]=Rl.bind(void 0,e,r,{})};var Zb=(e,r)=>{for(let[t,n]of I$){let i=n.value.bind(r);Reflect.defineProperty(e,t,{...n,value:i})}},O$=(async()=>{})().constructor.prototype,I$=["then","catch","finally"].map(e=>[e,Reflect.getOwnPropertyDescriptor(O$,e)]);var tE=(e,r,t,n)=>{let{file:i,commandArguments:o,command:s,escapedCommand:a,startTime:c,verboseInfo:l,options:u,fileDescriptors:f}=R$(e,r,t),{subprocess:d,promise:p}=L$({file:i,commandArguments:o,options:u,startTime:c,verboseInfo:l,command:s,escapedCommand:a,fileDescriptors:f});return d.pipe=$o.bind(void 0,{source:d,sourcePromise:p,boundOptions:{},createNested:n}),Zb(d,p),ze.set(d,{options:u,fileDescriptors:f}),d},R$=(e,r,t)=>{let{command:n,escapedCommand:i,startTime:o,verboseInfo:s}=Ui(e,r,t),{file:a,commandArguments:c,options:l}=co(e,r,t),u=k$(l),f=nb(u,s);return{file:a,commandArguments:c,command:n,escapedCommand:i,startTime:o,verboseInfo:s,options:u,fileDescriptors:f}},k$=({timeout:e,signal:r,...t})=>{if(r!==void 0)throw new TypeError('The "signal" option has been renamed to "cancelSignal" instead.');return{...t,timeoutDuration:e}},L$=({file:e,commandArguments:r,options:t,startTime:n,verboseInfo:i,command:o,escapedCommand:s,fileDescriptors:a})=>{let c;try{c=(0,rE.spawn)(...lo(e,r,t))}catch(m){return eb({error:m,command:o,escapedCommand:s,fileDescriptors:a,options:t,startTime:n,verboseInfo:i})}let l=new AbortController;(0,eE.setMaxListeners)(Number.POSITIVE_INFINITY,l.signal);let u=[...c.stdio];lb(c,a,l),pb(c,t,l);let f={},d=We();c.kill=py.bind(void 0,{kill:c.kill.bind(c),options:t,onInternalError:d,context:f,controller:l}),c.all=Lb(c,t),Qb(c,t),Xx(c,t);let p=F$({subprocess:c,options:t,startTime:n,verboseInfo:i,fileDescriptors:a,originalStreams:u,command:o,escapedCommand:s,context:f,onInternalError:d,controller:l});return{subprocess:c,promise:p}},F$=async({subprocess:e,options:r,startTime:t,verboseInfo:n,fileDescriptors:i,originalStreams:o,command:s,escapedCommand:a,context:c,onInternalError:l,controller:u})=>{let[f,[d,p],m,g,y]=await jb({subprocess:e,options:r,context:c,verboseInfo:n,fileDescriptors:i,originalStreams:o,onInternalError:l,controller:u});u.abort(),l.resolve();let _=m.map((W,ve)=>sr(W,r,ve)),S=sr(g,r,"all"),V=D$({errorInfo:f,exitCode:d,signal:p,stdio:_,all:S,ipcOutput:y,context:c,options:r,command:s,escapedCommand:a,startTime:t});return It(V,n,r)},D$=({errorInfo:e,exitCode:r,signal:t,stdio:n,all:i,ipcOutput:o,context:s,options:a,command:c,escapedCommand:l,startTime:u})=>"error"in e?En({error:e.error,command:c,escapedCommand:l,timedOut:s.terminationReason==="timeout",isCanceled:s.terminationReason==="cancel"||s.terminationReason==="gracefulCancel",isGracefullyCanceled:s.terminationReason==="gracefulCancel",isMaxBuffer:e.error instanceof Ke,isForcefullyTerminated:s.isForcefullyTerminated,exitCode:r,signal:t,stdio:n,all:i,ipcOutput:o,options:a,startTime:u,isSync:!1}):xo({command:c,escapedCommand:l,stdio:n,all:i,ipcOutput:o,options:a,startTime:u});var qo=(e,r)=>{let t=Object.fromEntries(Object.entries(r).map(([n,i])=>[n,N$(n,e[n],i)]));return{...e,...t}},N$=(e,r,t)=>M$.has(e)&&G(r)&&G(t)?{...r,...t}:t,M$=new Set(["env",...Xa]);var Er=(e,r,t,n)=>{let i=(s,a,c)=>Er(s,a,t,c),o=(...s)=>P$({mapArguments:e,deepOptions:t,boundOptions:r,setBoundExeca:n,createNested:i},...s);return n!==void 0&&n(o,i,r),o},P$=({mapArguments:e,deepOptions:r={},boundOptions:t={},setBoundExeca:n,createNested:i},o,...s)=>{if(G(o))return i(e,qo(t,o),n);let{file:a,commandArguments:c,options:l,isSync:u}=$$({mapArguments:e,firstArgument:o,nextArguments:s,deepOptions:r,boundOptions:t});return u?Vx(a,c,l):tE(a,c,l,i)},$$=({mapArguments:e,firstArgument:r,nextArguments:t,deepOptions:n,boundOptions:i})=>{let o=Dg(r)?Ng(r,t):[r,...t],[s,a,c]=Ii(...o),l=qo(qo(n,i),c),{file:u=s,commandArguments:f=a,options:d=l,isSync:p=!1}=e({file:s,commandArguments:a,options:l});return{file:u,commandArguments:f,options:d,isSync:p}};var nE=({file:e,commandArguments:r})=>oE(e,r),iE=({file:e,commandArguments:r})=>({...oE(e,r),isSync:!0}),oE=(e,r)=>{if(r.length>0)throw new TypeError(`The command and its arguments must be passed as a single string: ${e} ${r}.`);let[t,...n]=j$(e);return{file:t,commandArguments:n}},j$=e=>{if(typeof e!="string")throw new TypeError(`The command must be a string: ${String(e)}.`);let r=e.trim();if(r==="")return[];let t=[];for(let n of r.split(B$)){let i=t.at(-1);i&&i.endsWith("\\")?t[t.length-1]=`${i.slice(0,-1)} ${n}`:t.push(n)}return t},B$=/ +/g;var sE=(e,r,t)=>{e.sync=r(U$,t),e.s=e.sync},aE=({options:e})=>cE(e),U$=({options:e})=>({...cE(e),isSync:!0}),cE=e=>({options:{...G$(e),...e}}),G$=({input:e,inputFile:r,stdio:t})=>e===void 0&&r===void 0&&t===void 0?{stdin:"inherit"}:{},lE={preferLocal:!0};var uE=Er(()=>({})),bz=Er(()=>({isSync:!0})),Ez=Er(nE),Sz=Er(iE),vz=Er(nw),Az=Er(aE,{},lE,sE),{sendMessage:Tz,getOneMessage:Cz,getEachMessage:_z,getCancelSignal:Oz}=Jx();function Nt(e,r){j.warn(`no feedback impl - ${e} - ${r}`)}var kl=class{constructor(r,t){this.message=r,t&&this.start(r)}set text(r){return this.message=r,this}start(r){return Nt("start",r),this}succeed(r){return Nt("succeed",r),this}stop(r){return Nt("stop",r),this}info(r){return Nt("info",r),this}fail(r){return Nt("fail",r),this}warn(r){return Nt("warn",r),this}},q$=new kl("No feedback implementation");var fE={name:"imdone-cli",version:"0.67.0",author:"Jesse Piascik",description:"Turn Jira or GitHub issues into a shared context repo for AI and humans, synced locally as Markdown.",license:"Proprietary",homepage:"https://imdone.io",preferGlobal:!0,engines:{node:">=22.0.0"},main:"dist/index.min.cjs",type:"module",bin:{imdone:"dist/index.min.cjs","imdone-debug":"dist/index.cjs"},files:["dist","LICENSE","README.md","CHANGELOG.md",".npmignore"],scripts:{prepublishOnly:"npm --prefix ../ install && npm i && npm run build",link:"npm link ../../imdone-core ../../imdone-api",clean:"rm -rf dist/","build-bundle":"npm run clean && node esbuild.config.js && cp -R public/ dist/ && cp README.md dist/ && cp CHANGELOG.md dist/ && cp src/adapters/jwt-public.pem dist/",build:"./build.sh","build:no-test":"SKIP_TESTS=1 ./build.sh","install:global":"npm run build:no-test && npm install -g .","pack:share":"npm run build:no-test && npm pack && node scripts/show-install-command.mjs",coverage:"vitest --run --coverage",test:"vitest --run","test-ci":"vitest --run","version:patch":'npm version patch --no-git-tag-version && git -C .. add cli-package/package.json cli-package/package-lock.json && git -C .. commit -m "Update version"',"version:minor":'npm version minor --no-git-tag-version && git -C .. add cli-package/package.json cli-package/package-lock.json && git -C .. commit -m "Update version"',"version:major":'npm version major --no-git-tag-version && git -C .. add cli-package/package.json cli-package/package-lock.json && git -C .. commit -m "Update version"'},overrides:{"chrono-node":"2.7.8"},dependencies:{"@inquirer/prompts":"^7.10.1",chalk:"^5.4.1",commander:"^13.1.0",dotenv:"16.4.5",execa:"^9.5.3","find-up-simple":"^1.0.1","imdone-core":"^2.1.11","js-yaml":"^4.1.0",jsonwebtoken:"^9.0.2",markdownlint:"^0.38.0",open:"^9.1.0",ora:"^8.2.0",semver:"^7.7.2","simple-git":"^3.27.0",yaml:"^2.8.1"},devDependencies:{"@vitest/coverage-v8":"^4.1.2",esbuild:"^0.25.2","esbuild-plugin-copy":"^2.1.1",glob:"^12.0.0",vitest:"^4.1.2"}};var rv=require("node:module"),BU=L(ev(),1),{name:A4,version:UU,engines:T4,description:C4}=fE,_4=(0,rv.createRequire)(__filename);var{CONFIG_FILE_YML:j4}=Vr;async function tv(e,r=["."]){let t=await GU(e,r),n=t?.files?.filter(i=>i.path!==".imdonepause")||[];return j.debug("hasLocalChanges: ",{projectPath:e,fileSpec:r,relevantFiles:n,totalFiles:t?.files?.length}),n.length>0}async function GU(e,r=["."]){return await qU(e).status(r)}function qU(e){return Sg({baseDir:e,timeout:{block:3e4,stash:6e4,commit:45e3}})}async function nv(e){try{return await uE("git",["-C",e,"rev-parse"]),!0}catch{return!1}}async function ov(e){try{return e.fullBacklogDir?await Ge(e.fullBacklogDir)?{hasChanges:await tv(e.projectPath,[e.backlogDir]),backlogDir:e.backlogDir}:{hasChanges:!1}:{hasChanges:!1}}catch(r){return process.stderr.write(`Warning: Could not check git status: ${r.message}
|
|
160
|
+
if (condition) { yield value; }`)};var Ix=require("node:buffer"),Rx=require("node:string_decoder");var Co=(e,r,t)=>{if(t)return;if(e)return{transform:UM.bind(void 0,new TextEncoder)};let n=new Rx.StringDecoder(r);return{transform:GM.bind(void 0,n),final:qM.bind(void 0,n)}},UM=function*(e,r){Ix.Buffer.isBuffer(r)?yield nr(r):typeof r=="string"?yield e.encode(r):yield r},GM=function*(e,r){yield J(r)?e.write(r):r},qM=function*(e){let r=e.end();r!==""&&(yield r)};var Yc=require("node:util"),Hc=(0,Yc.callbackify)(async(e,r,t,n)=>{r.currentIterable=e(...t);try{for await(let i of r.currentIterable)n.push(i)}finally{delete r.currentIterable}}),_o=async function*(e,r,t){if(t===r.length){yield e;return}let{transform:n=HM}=r[t];for await(let i of n(e))yield*_o(i,r,t+1)},kx=async function*(e){for(let[r,{final:t}]of Object.entries(e))yield*YM(t,Number(r),e)},YM=async function*(e,r,t){if(e!==void 0)for await(let n of e())yield*_o(n,t,r+1)},Lx=(0,Yc.callbackify)(async({currentIterable:e},r)=>{if(e!==void 0){await(r?e.throw(r):e.return());return}if(r)throw r}),HM=function*(e){yield e};var Vc=(e,r,t,n)=>{try{for(let i of e(...r))t.push(i);n()}catch(i){n(i)}},Fx=(e,r)=>[...r.flatMap(t=>[...Ur(t,e,0)]),...Sn(e)],Ur=function*(e,r,t){if(t===r.length){yield e;return}let{transform:n=WM}=r[t];for(let i of n(e))yield*Ur(i,r,t+1)},Sn=function*(e){for(let[r,{final:t}]of Object.entries(e))yield*VM(t,Number(r),e)},VM=function*(e,r,t){if(e!==void 0)for(let n of e())yield*Ur(n,t,r+1)},WM=function*(e){yield e};var Wc=({value:e,value:{transform:r,final:t,writableObjectMode:n,readableObjectMode:i},optionName:o},{encoding:s})=>{let a={},c=Dx(e,s,o),l=Br(r),u=Br(t),f=l?Hc.bind(void 0,_o,a):Vc.bind(void 0,Ur),d=l||u?Hc.bind(void 0,kx,a):Vc.bind(void 0,Sn),p=l||u?Lx.bind(void 0,a):void 0;return{stream:new vn.Transform({writableObjectMode:n,writableHighWaterMark:(0,vn.getDefaultHighWaterMark)(n),readableObjectMode:i,readableHighWaterMark:(0,vn.getDefaultHighWaterMark)(i),transform(g,y,_){f([g,c,0],this,_)},flush(g){d([c],this,g)},destroy:p})}},Oo=(e,r,t,n)=>{let i=r.filter(({type:s})=>s==="generator"),o=n?i.reverse():i;for(let{value:s,optionName:a}of o){let c=Dx(s,t,a);e=Fx(c,e)}return e},Dx=({transform:e,final:r,binary:t,writableObjectMode:n,readableObjectMode:i,preserveNewlines:o},s,a)=>{let c={};return[{transform:Cx(n,a)},Co(t,s,n),To(t,o,n,c),{transform:e,final:r},{transform:_x(i,a)},Ax({binary:t,preserveNewlines:o,readableObjectMode:i,state:c})].filter(Boolean)};var Nx=(e,r)=>{for(let t of zM(e))KM(e,t,r)},zM=e=>new Set(Object.entries(e).filter(([,{direction:r}])=>r==="input").map(([r])=>Number(r))),KM=(e,r,t)=>{let{stdioItems:n}=e[r],i=n.filter(({contents:a})=>a!==void 0);if(i.length===0)return;if(r!==0){let[{type:a,optionName:c}]=i;throw new TypeError(`Only the \`stdin\` option, not \`${c}\`, can be ${xr[a]} with synchronous methods.`)}let s=i.map(({contents:a})=>a).map(a=>XM(a,n));t.input=pn(s)},XM=(e,r)=>{let t=Oo(e,r,"utf8",!0);return JM(t),pn(t)},JM=e=>{let r=e.find(t=>typeof t!="string"&&!J(t));if(r!==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: ${r}.`)};var Ro=require("node:fs");var Io=({stdioItems:e,encoding:r,verboseInfo:t,fdNumber:n})=>n!=="all"&&xt(t,n)&&!Se.has(r)&&QM(n)&&(e.some(({type:i,value:o})=>i==="native"&&ZM.has(o))||e.every(({type:i})=>ke.has(i))),QM=e=>e===1||e===2,ZM=new Set(["pipe","overlapped"]),Mx=async(e,r,t,n)=>{for await(let i of e)eP(r)||$x(i,t,n)},Px=(e,r,t)=>{for(let n of e)$x(n,r,t)},eP=e=>e._readableState.pipes.length>0,$x=(e,r,t)=>{let n=ji(e);Ve({type:"output",verboseMessage:n,fdNumber:r,verboseInfo:t})};var jx=({fileDescriptors:e,syncResult:{output:r},options:t,isMaxBuffer:n,verboseInfo:i})=>{if(r===null)return{output:Array.from({length:3})};let o={},s=new Set([]);return{output:r.map((c,l)=>rP({result:c,fileDescriptors:e,fdNumber:l,state:o,outputFiles:s,isMaxBuffer:n,verboseInfo:i},t)),...o}},rP=({result:e,fileDescriptors:r,fdNumber:t,state:n,outputFiles:i,isMaxBuffer:o,verboseInfo:s},{buffer:a,encoding:c,lines:l,stripFinalNewline:u,maxBuffer:f})=>{if(e===null)return;let d=Pw(e,o,f),p=nr(d),{stdioItems:m,objectMode:g}=r[t],y=tP([p],m,c,n),{serializedResult:_,finalResult:S=_}=nP({chunks:y,objectMode:g,encoding:c,lines:l,stripFinalNewline:u,fdNumber:t});iP({serializedResult:_,fdNumber:t,state:n,verboseInfo:s,encoding:c,stdioItems:m,objectMode:g});let V=a[t]?S:void 0;try{return n.error===void 0&&oP(_,m,i),V}catch(W){return n.error=W,V}},tP=(e,r,t,n)=>{try{return Oo(e,r,t,!1)}catch(i){return n.error=i,e}},nP=({chunks:e,objectMode:r,encoding:t,lines:n,stripFinalNewline:i,fdNumber:o})=>{if(r)return{serializedResult:e};if(t==="buffer")return{serializedResult:pn(e)};let s=Ig(e,t);return n[o]?{serializedResult:s,finalResult:qc(s,!i[o],r)}:{serializedResult:s}},iP=({serializedResult:e,fdNumber:r,state:t,verboseInfo:n,encoding:i,stdioItems:o,objectMode:s})=>{if(!Io({stdioItems:o,encoding:i,verboseInfo:n,fdNumber:r}))return;let a=qc(e,!1,s);try{Px(a,r,n)}catch(c){t.error??=c}},oP=(e,r,t)=>{for(let{path:n,append:i}of r.filter(({type:o})=>So.has(o))){let o=typeof n=="string"?n:n.toString();i||t.has(o)?(0,Ro.appendFileSync)(n,e):(t.add(o),(0,Ro.writeFileSync)(n,e))}};var Bx=([,e,r],t)=>{if(t.all)return e===void 0?r:r===void 0?e:Array.isArray(e)?Array.isArray(r)?[...e,...r]:[...e,sr(r,t,"all")]:Array.isArray(r)?[sr(e,t,"all"),...r]:J(e)&&J(r)?Wa([e,r]):`${e}${r}`};var ko=require("node:events");var Ux=async(e,r)=>{let[t,n]=await sP(e);return r.isForcefullyTerminated??=!1,[t,n]},sP=async e=>{let[r,t]=await Promise.allSettled([(0,ko.once)(e,"spawn"),(0,ko.once)(e,"exit")]);return r.status==="rejected"?[]:t.status==="rejected"?Gx(e):t.value},Gx=async e=>{try{return await(0,ko.once)(e,"exit")}catch{return Gx(e)}},qx=async e=>{let[r,t]=await e;if(!aP(r,t)&&zc(r,t))throw new $e;return[r,t]},aP=(e,r)=>e===void 0&&r===void 0,zc=(e,r)=>e!==0||r!==null;var Yx=({error:e,status:r,signal:t,output:n},{maxBuffer:i})=>{let o=cP(e,r,t),s=o?.code==="ETIMEDOUT",a=Mw(o,n,i);return{resultError:o,exitCode:r,signal:t,timedOut:s,isMaxBuffer:a}},cP=(e,r,t)=>e!==void 0?e:zc(r,t)?new $e:void 0;var Vx=(e,r,t)=>{let{file:n,commandArguments:i,command:o,escapedCommand:s,startTime:a,verboseInfo:c,options:l,fileDescriptors:u}=lP(e,r,t),f=pP({file:n,commandArguments:i,options:l,command:o,escapedCommand:s,verboseInfo:c,fileDescriptors:u,startTime:a});return It(f,c,l)},lP=(e,r,t)=>{let{command:n,escapedCommand:i,startTime:o,verboseInfo:s}=Ui(e,r,t),a=uP(t),{file:c,commandArguments:l,options:u}=co(e,r,a);fP(u);let f=bx(u,s);return{file:c,commandArguments:l,command:n,escapedCommand:i,startTime:o,verboseInfo:s,options:u,fileDescriptors:f}},uP=e=>e.node&&!e.ipc?{...e,ipc:!1}:e,fP=({ipc:e,ipcInput:r,detached:t,cancelSignal:n})=>{r&&Lo("ipcInput"),e&&Lo("ipc: true"),t&&Lo("detached: true"),n&&Lo("cancelSignal")},Lo=e=>{throw new TypeError(`The "${e}" option cannot be used with synchronous methods.`)},pP=({file:e,commandArguments:r,options:t,command:n,escapedCommand:i,verboseInfo:o,fileDescriptors:s,startTime:a})=>{let c=dP({file:e,commandArguments:r,options:t,command:n,escapedCommand:i,fileDescriptors:s,startTime:a});if(c.failed)return c;let{resultError:l,exitCode:u,signal:f,timedOut:d,isMaxBuffer:p}=Yx(c,t),{output:m,error:g=l}=jx({fileDescriptors:s,syncResult:c,options:t,isMaxBuffer:p,verboseInfo:o}),y=m.map((S,V)=>sr(S,t,V)),_=sr(Bx(m,t),t,"all");return hP({error:g,exitCode:u,signal:f,timedOut:d,isMaxBuffer:p,stdio:y,all:_,options:t,command:n,escapedCommand:i,startTime:a})},dP=({file:e,commandArguments:r,options:t,command:n,escapedCommand:i,fileDescriptors:o,startTime:s})=>{try{Nx(o,t);let a=mP(t);return(0,Hx.spawnSync)(...lo(e,r,a))}catch(a){return Ot({error:a,command:n,escapedCommand:i,fileDescriptors:o,options:t,startTime:s,isSync:!0})}},mP=({encoding:e,maxBuffer:r,...t})=>({...t,encoding:"buffer",maxBuffer:wo(r)}),hP=({error:e,exitCode:r,signal:t,timedOut:n,isMaxBuffer:i,stdio:o,all:s,options:a,command:c,escapedCommand:l,startTime:u})=>e===void 0?xo({command:c,escapedCommand:l,stdio:o,all:s,ipcOutput:[],options:a,startTime:u}):En({error:e,command:c,escapedCommand:l,timedOut:n,isCanceled:!1,isGracefullyCanceled:!1,isMaxBuffer:i,isForcefullyTerminated:!1,exitCode:r,signal:t,stdio:o,all:s,ipcOutput:[],options:a,startTime:u,isSync:!0});var eE=require("node:events"),rE=require("node:child_process");var Xc=L(require("node:process"),1);var kt=require("node:events");var Wx=({anyProcess:e,channel:r,isSubprocess:t,ipc:n},{reference:i=!0,filter:o}={})=>(vt({methodName:"getOneMessage",isSubprocess:t,ipc:n,isConnected:ro(e)}),gP({anyProcess:e,channel:r,isSubprocess:t,filter:o,reference:i})),gP=async({anyProcess:e,channel:r,isSubprocess:t,filter:n,reference:i})=>{Ji(r,i);let o=wr(e,r,t),s=new AbortController;try{return await Promise.race([yP(o,n,s),wP(o,t,s),xP(o,t,s)])}catch(a){throw At(e),a}finally{s.abort(),Qi(r,i)}},yP=async(e,r,{signal:t})=>{if(r===void 0){let[n]=await(0,kt.once)(e,"message",{signal:t});return n}for await(let[n]of(0,kt.on)(e,"message",{signal:t}))if(r(n))return n},wP=async(e,r,{signal:t})=>{await(0,kt.once)(e,"disconnect",{signal:t}),gy(r)},xP=async(e,r,{signal:t})=>{let[n]=await(0,kt.once)(e,"strict:error",{signal:t});throw zi(n,r)};var An=require("node:events");var Kx=({anyProcess:e,channel:r,isSubprocess:t,ipc:n},{reference:i=!0}={})=>Kc({anyProcess:e,channel:r,isSubprocess:t,ipc:n,shouldAwait:!t,reference:i}),Kc=({anyProcess:e,channel:r,isSubprocess:t,ipc:n,shouldAwait:i,reference:o})=>{vt({methodName:"getEachMessage",isSubprocess:t,ipc:n,isConnected:ro(e)}),Ji(r,o);let s=wr(e,r,t),a=new AbortController,c={};return bP(e,s,a),EP({ipcEmitter:s,isSubprocess:t,controller:a,state:c}),SP({anyProcess:e,channel:r,ipcEmitter:s,isSubprocess:t,shouldAwait:i,controller:a,state:c,reference:o})},bP=async(e,r,t)=>{try{await(0,An.once)(r,"disconnect",{signal:t.signal}),t.abort()}catch{}},EP=async({ipcEmitter:e,isSubprocess:r,controller:t,state:n})=>{try{let[i]=await(0,An.once)(e,"strict:error",{signal:t.signal});n.error=zi(i,r),t.abort()}catch{}},SP=async function*({anyProcess:e,channel:r,ipcEmitter:t,isSubprocess:n,shouldAwait:i,controller:o,state:s,reference:a}){try{for await(let[c]of(0,An.on)(t,"message",{signal:o.signal}))zx(s),yield c}catch{zx(s)}finally{o.abort(),Qi(r,a),n||At(e),i&&await e}},zx=({error:e})=>{if(e)throw e};var Xx=(e,{ipc:r})=>{Object.assign(e,Qx(e,!1,r))},Jx=()=>{let e=Xc.default,r=!0,t=Xc.default.channel!==void 0;return{...Qx(e,r,t),getCancelSignal:Xy.bind(void 0,{anyProcess:e,channel:e.channel,isSubprocess:r,ipc:t})}},Qx=(e,r,t)=>({sendMessage:oo.bind(void 0,{anyProcess:e,channel:e.channel,isSubprocess:r,ipc:t}),getOneMessage:Wx.bind(void 0,{anyProcess:e,channel:e.channel,isSubprocess:r,ipc:t}),getEachMessage:Kx.bind(void 0,{anyProcess:e,channel:e.channel,isSubprocess:r,ipc:t})});var Zx=require("node:child_process"),br=require("node:stream");var eb=({error:e,command:r,escapedCommand:t,fileDescriptors:n,options:i,startTime:o,verboseInfo:s})=>{jc(n);let a=new Zx.ChildProcess;vP(a,n),Object.assign(a,{readable:AP,writable:TP,duplex:CP});let c=Ot({error:e,command:r,escapedCommand:t,fileDescriptors:n,options:i,startTime:o,isSync:!1}),l=_P(c,s,i);return{subprocess:a,promise:l}},vP=(e,r)=>{let t=Tn(),n=Tn(),i=Tn(),o=Array.from({length:r.length-3},Tn),s=Tn(),a=[t,n,i,...o];Object.assign(e,{stdin:t,stdout:n,stderr:i,all:s,stdio:a})},Tn=()=>{let e=new br.PassThrough;return e.end(),e},AP=()=>new br.Readable({read(){}}),TP=()=>new br.Writable({write(){}}),CP=()=>new br.Duplex({read(){},write(){}}),_P=async(e,r,t)=>It(e,r,t);var Lt=require("node:fs"),tb=require("node:buffer"),Je=require("node:stream");var nb=(e,r)=>Ao(OP,e,r,!1),Cn=({type:e,optionName:r})=>{throw new TypeError(`The \`${r}\` option cannot be ${xr[e]}.`)},rb={fileNumber:Cn,generator:Wc,asyncGenerator:Wc,nodeStream:({value:e})=>({stream:e}),webTransform({value:{transform:e,writableObjectMode:r,readableObjectMode:t}}){let n=r||t;return{stream:Je.Duplex.fromWeb(e,{objectMode:n})}},duplex:({value:{transform:e}})=>({stream:e}),native(){}},OP={input:{...rb,fileUrl:({value:e})=>({stream:(0,Lt.createReadStream)(e)}),filePath:({value:{file:e}})=>({stream:(0,Lt.createReadStream)(e)}),webStream:({value:e})=>({stream:Je.Readable.fromWeb(e)}),iterable:({value:e})=>({stream:Je.Readable.from(e)}),asyncIterable:({value:e})=>({stream:Je.Readable.from(e)}),string:({value:e})=>({stream:Je.Readable.from(e)}),uint8Array:({value:e})=>({stream:Je.Readable.from(tb.Buffer.from(e))})},output:{...rb,fileUrl:({value:e})=>({stream:(0,Lt.createWriteStream)(e)}),filePath:({value:{file:e,append:r}})=>({stream:(0,Lt.createWriteStream)(e,r?{flags:"a"}:{})}),webStream:({value:e})=>({stream:Je.Writable.fromWeb(e)}),iterable:Cn,asyncIterable:Cn,string:Cn,uint8Array:Cn}};var _n=require("node:events"),Do=require("node:stream"),Zc=require("node:stream/promises");function Gr(e){if(!Array.isArray(e))throw new TypeError(`Expected an array, got \`${typeof e}\`.`);for(let i of e)Qc(i);let r=e.some(({readableObjectMode:i})=>i),t=IP(e,r),n=new Jc({objectMode:r,writableHighWaterMark:t,readableHighWaterMark:t});for(let i of e)n.add(i);return n}var IP=(e,r)=>{if(e.length===0)return(0,Do.getDefaultHighWaterMark)(r);let t=e.filter(({readableObjectMode:n})=>n===r).map(({readableHighWaterMark:n})=>n);return Math.max(...t)},Jc=class extends Do.PassThrough{#r=new Set([]);#t=new Set([]);#e=new Set([]);#n;#o=Symbol("unpipe");#i=new WeakMap;add(r){if(Qc(r),this.#r.has(r))return;this.#r.add(r),this.#n??=RP(this,this.#r,this.#o);let t=FP({passThroughStream:this,stream:r,streams:this.#r,ended:this.#t,aborted:this.#e,onFinished:this.#n,unpipeEvent:this.#o});this.#i.set(r,t),r.pipe(this,{end:!1})}async remove(r){if(Qc(r),!this.#r.has(r))return!1;let t=this.#i.get(r);return t===void 0?!1:(this.#i.delete(r),r.unpipe(this),await t,!0)}},RP=async(e,r,t)=>{Fo(e,ib);let n=new AbortController;try{await Promise.race([kP(e,n),LP(e,r,t,n)])}finally{n.abort(),Fo(e,-ib)}},kP=async(e,{signal:r})=>{try{await(0,Zc.finished)(e,{signal:r,cleanup:!0})}catch(t){throw sb(e,t),t}},LP=async(e,r,t,{signal:n})=>{for await(let[i]of(0,_n.on)(e,"unpipe",{signal:n}))r.has(i)&&i.emit(t)},Qc=e=>{if(typeof e?.pipe!="function")throw new TypeError(`Expected a readable stream, got: \`${typeof e}\`.`)},FP=async({passThroughStream:e,stream:r,streams:t,ended:n,aborted:i,onFinished:o,unpipeEvent:s})=>{Fo(e,ob);let a=new AbortController;try{await Promise.race([DP(o,r,a),NP({passThroughStream:e,stream:r,streams:t,ended:n,aborted:i,controller:a}),MP({stream:r,streams:t,ended:n,aborted:i,unpipeEvent:s,controller:a})])}finally{a.abort(),Fo(e,-ob)}t.size>0&&t.size===n.size+i.size&&(n.size===0&&i.size>0?el(e):PP(e))},DP=async(e,r,{signal:t})=>{try{await e,t.aborted||el(r)}catch(n){t.aborted||sb(r,n)}},NP=async({passThroughStream:e,stream:r,streams:t,ended:n,aborted:i,controller:{signal:o}})=>{try{await(0,Zc.finished)(r,{signal:o,cleanup:!0,readable:!0,writable:!1}),t.has(r)&&n.add(r)}catch(s){if(o.aborted||!t.has(r))return;ab(s)?i.add(r):cb(e,s)}},MP=async({stream:e,streams:r,ended:t,aborted:n,unpipeEvent:i,controller:{signal:o}})=>{if(await(0,_n.once)(e,i,{signal:o}),!e.readable)return(0,_n.once)(o,"abort",{signal:o});r.delete(e),t.delete(e),n.delete(e)},PP=e=>{e.writable&&e.end()},sb=(e,r)=>{ab(r)?el(e):cb(e,r)},ab=e=>e?.code==="ERR_STREAM_PREMATURE_CLOSE",el=e=>{(e.readable||e.writable)&&e.destroy()},cb=(e,r)=>{e.destroyed||(e.once("error",$P),e.destroy(r))},$P=()=>{},Fo=(e,r)=>{let t=e.getMaxListeners();t!==0&&t!==Number.POSITIVE_INFINITY&&e.setMaxListeners(t+r)},ib=2,ob=1;var rl=require("node:stream/promises");var Ft=(e,r)=>{e.pipe(r),jP(e,r),BP(e,r)},jP=async(e,r)=>{if(!(Pe(e)||Pe(r))){try{await(0,rl.finished)(e,{cleanup:!0,readable:!0,writable:!1})}catch{}tl(r)}},tl=e=>{e.writable&&e.end()},BP=async(e,r)=>{if(!(Pe(e)||Pe(r))){try{await(0,rl.finished)(r,{cleanup:!0,readable:!1,writable:!0})}catch{}nl(e)}},nl=e=>{e.readable&&e.destroy()};var lb=(e,r,t)=>{let n=new Map;for(let[i,{stdioItems:o,direction:s}]of Object.entries(r)){for(let{stream:a}of o.filter(({type:c})=>ke.has(c)))UP(e,a,s,i);for(let{stream:a}of o.filter(({type:c})=>!ke.has(c)))qP({subprocess:e,stream:a,direction:s,fdNumber:i,pipeGroups:n,controller:t})}for(let[i,o]of n.entries()){let s=o.length===1?o[0]:Gr(o);Ft(s,i)}},UP=(e,r,t,n)=>{t==="output"?Ft(e.stdio[n],r):Ft(r,e.stdio[n]);let i=GP[n];i!==void 0&&(e[i]=r),e.stdio[n]=r},GP=["stdin","stdout","stderr"],qP=({subprocess:e,stream:r,direction:t,fdNumber:n,pipeGroups:i,controller:o})=>{if(r===void 0)return;YP(r,o);let[s,a]=t==="output"?[r,e.stdio[n]]:[e.stdio[n],r],c=i.get(s)??[];i.set(s,[...c,a])},YP=(e,{signal:r})=>{Pe(e)&&$r(e,HP,r)},HP=2;var fb=require("node:events");var qr=[];qr.push("SIGHUP","SIGINT","SIGTERM");process.platform!=="win32"&&qr.push("SIGALRM","SIGABRT","SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");process.platform==="linux"&&qr.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT");var No=e=>!!e&&typeof e=="object"&&typeof e.removeListener=="function"&&typeof e.emit=="function"&&typeof e.reallyExit=="function"&&typeof e.listeners=="function"&&typeof e.kill=="function"&&typeof e.pid=="number"&&typeof e.on=="function",il=Symbol.for("signal-exit emitter"),ol=globalThis,VP=Object.defineProperty.bind(Object),sl=class{emitted={afterExit:!1,exit:!1};listeners={afterExit:[],exit:[]};count=0;id=Math.random();constructor(){if(ol[il])return ol[il];VP(ol,il,{value:this,writable:!1,enumerable:!1,configurable:!1})}on(r,t){this.listeners[r].push(t)}removeListener(r,t){let n=this.listeners[r],i=n.indexOf(t);i!==-1&&(i===0&&n.length===1?n.length=0:n.splice(i,1))}emit(r,t,n){if(this.emitted[r])return!1;this.emitted[r]=!0;let i=!1;for(let o of this.listeners[r])i=o(t,n)===!0||i;return r==="exit"&&(i=this.emit("afterExit",t,n)||i),i}},Mo=class{},WP=e=>({onExit(r,t){return e.onExit(r,t)},load(){return e.load()},unload(){return e.unload()}}),al=class extends Mo{onExit(){return()=>{}}load(){}unload(){}},cl=class extends Mo{#r=ll.platform==="win32"?"SIGINT":"SIGHUP";#t=new sl;#e;#n;#o;#i={};#s=!1;constructor(r){super(),this.#e=r,this.#i={};for(let t of qr)this.#i[t]=()=>{let n=this.#e.listeners(t),{count:i}=this.#t,o=r;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.#t.emit("exit",null,t),a=t==="SIGHUP"?this.#r:t;s||r.kill(r.pid,a)}};this.#o=r.reallyExit,this.#n=r.emit}onExit(r,t){if(!No(this.#e))return()=>{};this.#s===!1&&this.load();let n=t?.alwaysLast?"afterExit":"exit";return this.#t.on(n,r),()=>{this.#t.removeListener(n,r),this.#t.listeners.exit.length===0&&this.#t.listeners.afterExit.length===0&&this.unload()}}load(){if(!this.#s){this.#s=!0,this.#t.count+=1;for(let r of qr)try{let t=this.#i[r];t&&this.#e.on(r,t)}catch{}this.#e.emit=(r,...t)=>this.#c(r,...t),this.#e.reallyExit=r=>this.#a(r)}}unload(){this.#s&&(this.#s=!1,qr.forEach(r=>{let t=this.#i[r];if(!t)throw new Error("Listener not defined for signal: "+r);try{this.#e.removeListener(r,t)}catch{}}),this.#e.emit=this.#n,this.#e.reallyExit=this.#o,this.#t.count-=1)}#a(r){return No(this.#e)?(this.#e.exitCode=r||0,this.#t.emit("exit",this.#e.exitCode,null),this.#o.call(this.#e,this.#e.exitCode)):0}#c(r,...t){let n=this.#n;if(r==="exit"&&No(this.#e)){typeof t[0]=="number"&&(this.#e.exitCode=t[0]);let i=n.call(this.#e,r,...t);return this.#t.emit("exit",this.#e.exitCode,null),i}else return n.call(this.#e,r,...t)}},ll=globalThis.process,{onExit:ub,load:W6,unload:z6}=WP(No(ll)?new cl(ll):new al);var pb=(e,{cleanup:r,detached:t},{signal:n})=>{if(!r||t)return;let i=ub(()=>{e.kill()});(0,fb.addAbortListener)(n,()=>{i()})};var mb=({source:e,sourcePromise:r,boundOptions:t,createNested:n},...i)=>{let o=Bi(),{destination:s,destinationStream:a,destinationError:c,from:l,unpipeSignal:u}=zP(t,n,i),{sourceStream:f,sourceError:d}=XP(e,l),{options:p,fileDescriptors:m}=ze.get(e);return{sourcePromise:r,sourceStream:f,sourceOptions:p,sourceError:d,destination:s,destinationStream:a,destinationError:c,unpipeSignal:u,fileDescriptors:m,startTime:o}},zP=(e,r,t)=>{try{let{destination:n,pipeOptions:{from:i,to:o,unpipeSignal:s}={}}=KP(e,r,...t),a=Xi(n,o);return{destination:n,destinationStream:a,from:i,unpipeSignal:s}}catch(n){return{destinationError:n}}},KP=(e,r,t,...n)=>{if(Array.isArray(t))return{destination:r(db,e)(t,...n),pipeOptions:e};if(typeof t=="string"||t instanceof URL||Ha(t)){if(Object.keys(e).length>0)throw new TypeError('Please use .pipe("file", ..., options) or .pipe(execa("file", ..., options)) instead of .pipe(options)("file", ...).');let[i,o,s]=Ii(t,...n);return{destination:r(db)(i,o,s),pipeOptions:s}}if(ze.has(t)){if(Object.keys(e).length>0)throw new TypeError("Please use .pipe(options)`command` or .pipe($(options)`command`) instead of .pipe(options)($`command`).");return{destination:t,pipeOptions:n[0]}}throw new TypeError(`The first argument must be a template string, an options object, or an Execa subprocess: ${t}`)},db=({options:e})=>({options:{...e,stdin:"pipe",piped:!0}}),XP=(e,r)=>{try{return{sourceStream:Tt(e,r)}}catch(t){return{sourceError:t}}};var gb=({sourceStream:e,sourceError:r,destinationStream:t,destinationError:n,fileDescriptors:i,sourceOptions:o,startTime:s})=>{let a=JP({sourceStream:e,sourceError:r,destinationStream:t,destinationError:n});if(a!==void 0)throw ul({error:a,fileDescriptors:i,sourceOptions:o,startTime:s})},JP=({sourceStream:e,sourceError:r,destinationStream:t,destinationError:n})=>{if(r!==void 0&&n!==void 0)return n;if(n!==void 0)return nl(e),n;if(r!==void 0)return tl(t),r},ul=({error:e,fileDescriptors:r,sourceOptions:t,startTime:n})=>Ot({error:e,command:hb,escapedCommand:hb,fileDescriptors:r,options:t,startTime:n,isSync:!1}),hb="source.pipe(destination)";var yb=async e=>{let[{status:r,reason:t,value:n=t},{status:i,reason:o,value:s=o}]=await e;if(s.pipedFrom.includes(n)||s.pipedFrom.push(n),i==="rejected")throw s;if(r==="rejected")throw n;return s};var wb=require("node:stream/promises");var xb=(e,r,t)=>{let n=Po.has(r)?ZP(e,r):QP(e,r);return $r(e,r$,t.signal),$r(r,t$,t.signal),e$(r),n},QP=(e,r)=>{let t=Gr([e]);return Ft(t,r),Po.set(r,t),t},ZP=(e,r)=>{let t=Po.get(r);return t.add(e),t},e$=async e=>{try{await(0,wb.finished)(e,{cleanup:!0,readable:!1,writable:!0})}catch{}Po.delete(e)},Po=new WeakMap,r$=2,t$=1;var bb=require("node:util");var Eb=(e,r)=>e===void 0?[]:[n$(e,r)],n$=async(e,{sourceStream:r,mergedStream:t,fileDescriptors:n,sourceOptions:i,startTime:o})=>{await(0,bb.aborted)(e,r),await t.remove(r);let s=new Error("Pipe canceled by `unpipeSignal` option.");throw ul({error:s,fileDescriptors:n,sourceOptions:i,startTime:o})};var $o=(e,...r)=>{if(G(r[0]))return $o.bind(void 0,{...e,boundOptions:{...e.boundOptions,...r[0]}});let{destination:t,...n}=mb(e,...r),i=i$({...n,destination:t});return i.pipe=$o.bind(void 0,{...e,source:t,sourcePromise:i,boundOptions:{}}),i},i$=async({sourcePromise:e,sourceStream:r,sourceOptions:t,sourceError:n,destination:i,destinationStream:o,destinationError:s,unpipeSignal:a,fileDescriptors:c,startTime:l})=>{let u=o$(e,i);gb({sourceStream:r,sourceError:n,destinationStream:o,destinationError:s,fileDescriptors:c,sourceOptions:t,startTime:l});let f=new AbortController;try{let d=xb(r,o,f);return await Promise.race([yb(u),...Eb(a,{sourceStream:r,mergedStream:d,sourceOptions:t,fileDescriptors:c,startTime:l})])}finally{f.abort()}},o$=(e,r)=>Promise.allSettled([e,r]);var Cb=require("node:timers/promises");var vb=require("node:events"),Ab=require("node:stream");var jo=({subprocessStdout:e,subprocess:r,binary:t,shouldEncode:n,encoding:i,preserveNewlines:o})=>{let s=new AbortController;return s$(r,s),Tb({stream:e,controller:s,binary:t,shouldEncode:!e.readableObjectMode&&n,encoding:i,shouldSplit:!e.readableObjectMode,preserveNewlines:o})},s$=async(e,r)=>{try{await e}catch{}finally{r.abort()}},fl=({stream:e,onStreamEnd:r,lines:t,encoding:n,stripFinalNewline:i,allMixed:o})=>{let s=new AbortController;a$(r,s,e);let a=e.readableObjectMode&&!o;return Tb({stream:e,controller:s,binary:n==="buffer",shouldEncode:!a,encoding:n,shouldSplit:!a&&t,preserveNewlines:!i})},a$=async(e,r,t)=>{try{await e}catch{t.destroy()}finally{r.abort()}},Tb=({stream:e,controller:r,binary:t,shouldEncode:n,encoding:i,shouldSplit:o,preserveNewlines:s})=>{let a=(0,vb.on)(e,"data",{signal:r.signal,highWaterMark:Sb,highWatermark:Sb});return c$({onStdoutChunk:a,controller:r,binary:t,shouldEncode:n,encoding:i,shouldSplit:o,preserveNewlines:s})},pl=(0,Ab.getDefaultHighWaterMark)(!0),Sb=pl,c$=async function*({onStdoutChunk:e,controller:r,binary:t,shouldEncode:n,encoding:i,shouldSplit:o,preserveNewlines:s}){let a=l$({binary:t,shouldEncode:n,encoding:i,shouldSplit:o,preserveNewlines:s});try{for await(let[c]of e)yield*Ur(c,a,0)}catch(c){if(!r.signal.aborted)throw c}finally{yield*Sn(a)}},l$=({binary:e,shouldEncode:r,encoding:t,shouldSplit:n,preserveNewlines:i})=>[Co(e,t,!r),To(e,i,!n,{})].filter(Boolean);var _b=async({stream:e,onStreamEnd:r,fdNumber:t,encoding:n,buffer:i,maxBuffer:o,lines:s,allMixed:a,stripFinalNewline:c,verboseInfo:l,streamInfo:u})=>{let f=u$({stream:e,onStreamEnd:r,fdNumber:t,encoding:n,allMixed:a,verboseInfo:l,streamInfo:u});if(!i){await Promise.all([f$(e),f]);return}let d=Uc(c,t),p=fl({stream:e,onStreamEnd:r,lines:s,encoding:n,stripFinalNewline:d,allMixed:a}),[m]=await Promise.all([p$({stream:e,iterable:p,fdNumber:t,encoding:n,maxBuffer:o,lines:s}),f]);return m},u$=async({stream:e,onStreamEnd:r,fdNumber:t,encoding:n,allMixed:i,verboseInfo:o,streamInfo:{fileDescriptors:s}})=>{if(!Io({stdioItems:s[t]?.stdioItems,encoding:n,verboseInfo:o,fdNumber:t}))return;let a=fl({stream:e,onStreamEnd:r,lines:!0,encoding:n,stripFinalNewline:!0,allMixed:i});await Mx(a,e,t,o)},f$=async e=>{await(0,Cb.setImmediate)(),e.readableFlowing===null&&e.resume()},p$=async({stream:e,stream:{readableObjectMode:r},iterable:t,fdNumber:n,encoding:i,maxBuffer:o,lines:s})=>{try{return r||s?await mo(t,{maxBuffer:o}):i==="buffer"?new Uint8Array(await ho(t,{maxBuffer:o})):await yo(t,{maxBuffer:o})}catch(a){return Ob(Fw({error:a,stream:e,readableObjectMode:r,lines:s,encoding:i,fdNumber:n}))}},dl=async e=>{try{return await e}catch(r){return Ob(r)}},Ob=({bufferedData:e})=>_g(e)?new Uint8Array(e):e;var Rb=require("node:stream/promises"),On=async(e,r,t,{isSameDirection:n,stopOnExit:i=!1}={})=>{let o=d$(e,t),s=new AbortController;try{await Promise.race([...i?[t.exitPromise]:[],(0,Rb.finished)(e,{cleanup:!0,signal:s.signal})])}catch(a){o.stdinCleanedUp||g$(a,r,t,n)}finally{s.abort()}},d$=(e,{originalStreams:[r],subprocess:t})=>{let n={stdinCleanedUp:!1};return e===r&&m$(e,t,n),n},m$=(e,r,t)=>{let{_destroy:n}=e;e._destroy=(...i)=>{h$(r,t),n.call(e,...i)}},h$=({exitCode:e,signalCode:r},t)=>{(e!==null||r!==null)&&(t.stdinCleanedUp=!0)},g$=(e,r,t,n)=>{if(!y$(e,r,t,n))throw e},y$=(e,r,t,n=!0)=>t.propagating?Ib(e)||Bo(e):(t.propagating=!0,ml(t,r)===n?Ib(e):Bo(e)),ml=({fileDescriptors:e},r)=>r!=="all"&&e[r].direction==="input",Bo=e=>e?.code==="ERR_STREAM_PREMATURE_CLOSE",Ib=e=>e?.code==="EPIPE";var kb=({subprocess:e,encoding:r,buffer:t,maxBuffer:n,lines:i,stripFinalNewline:o,verboseInfo:s,streamInfo:a})=>e.stdio.map((c,l)=>hl({stream:c,fdNumber:l,encoding:r,buffer:t[l],maxBuffer:n[l],lines:i[l],allMixed:!1,stripFinalNewline:o,verboseInfo:s,streamInfo:a})),hl=async({stream:e,fdNumber:r,encoding:t,buffer:n,maxBuffer:i,lines:o,allMixed:s,stripFinalNewline:a,verboseInfo:c,streamInfo:l})=>{if(!e)return;let u=On(e,r,l);if(ml(l,r)){await u;return}let[f]=await Promise.all([_b({stream:e,onStreamEnd:u,fdNumber:r,encoding:t,buffer:n,maxBuffer:i,lines:o,allMixed:s,stripFinalNewline:a,verboseInfo:c,streamInfo:l}),u]);return f};var Lb=({stdout:e,stderr:r},{all:t})=>t&&(e||r)?Gr([e,r].filter(Boolean)):void 0,Fb=({subprocess:e,encoding:r,buffer:t,maxBuffer:n,lines:i,stripFinalNewline:o,verboseInfo:s,streamInfo:a})=>hl({...w$(e,t),fdNumber:"all",encoding:r,maxBuffer:n[1]+n[2],lines:i[1]||i[2],allMixed:x$(e),stripFinalNewline:o,verboseInfo:s,streamInfo:a}),w$=({stdout:e,stderr:r,all:t},[,n,i])=>{let o=n||i;return o?n?i?{stream:t,buffer:o}:{stream:e,buffer:o}:{stream:r,buffer:o}:{stream:t,buffer:o}},x$=({all:e,stdout:r,stderr:t})=>e&&r&&t&&r.readableObjectMode!==t.readableObjectMode;var $b=require("node:events");var Db=e=>xt(e,"ipc"),Nb=(e,r)=>{let t=ji(e);Ve({type:"ipc",verboseMessage:t,fdNumber:"ipc",verboseInfo:r})};var Mb=async({subprocess:e,buffer:r,maxBuffer:t,ipc:n,ipcOutput:i,verboseInfo:o})=>{if(!n)return i;let s=Db(o),a=ir(r,"ipc"),c=ir(t,"ipc");for await(let l of Kc({anyProcess:e,channel:e.channel,isSubprocess:!1,ipc:n,shouldAwait:!1,reference:!0}))a&&(Dw(e,i,c),i.push(l)),s&&Nb(l,o);return i},Pb=async(e,r)=>(await Promise.allSettled([e]),r);var jb=async({subprocess:e,options:{encoding:r,buffer:t,maxBuffer:n,lines:i,timeoutDuration:o,cancelSignal:s,gracefulCancel:a,forceKillAfterDelay:c,stripFinalNewline:l,ipc:u,ipcInput:f},context:d,verboseInfo:p,fileDescriptors:m,originalStreams:g,onInternalError:y,controller:_})=>{let S=Ux(e,d),V={originalStreams:g,fileDescriptors:m,subprocess:e,exitPromise:S,propagating:!1},W=kb({subprocess:e,encoding:r,buffer:t,maxBuffer:n,lines:i,stripFinalNewline:l,verboseInfo:p,streamInfo:V}),ve=Fb({subprocess:e,encoding:r,buffer:t,maxBuffer:n,lines:i,stripFinalNewline:l,verboseInfo:p,streamInfo:V}),ue=[],De=Mb({subprocess:e,buffer:t,maxBuffer:n,ipc:u,ipcOutput:ue,verboseInfo:p}),Ne=b$(g,e,V),Ae=E$(m,V);try{return await Promise.race([Promise.all([{},qx(S),Promise.all(W),ve,De,aw(e,f),...Ne,...Ae]),y,S$(e,_),...tw(e,o,d,_),...hy({subprocess:e,cancelSignal:s,gracefulCancel:a,context:d,controller:_}),...Zy({subprocess:e,cancelSignal:s,gracefulCancel:a,forceKillAfterDelay:c,context:d,controller:_})])}catch($t){return d.terminationReason??="other",Promise.all([{error:$t},S,Promise.all(W.map(Sr=>dl(Sr))),dl(ve),Pb(De,ue),Promise.allSettled(Ne),Promise.allSettled(Ae)])}},b$=(e,r,t)=>e.map((n,i)=>n===r.stdio[i]?void 0:On(n,i,t)),E$=(e,r)=>e.flatMap(({stdioItems:t},n)=>t.filter(({value:i,stream:o=i})=>Be(o,{checkOpen:!1})&&!Pe(o)).map(({type:i,value:o,stream:s=o})=>On(s,n,r,{isSameDirection:ke.has(i),stopOnExit:i==="native"}))),S$=async(e,{signal:r})=>{let[t]=await(0,$b.once)(e,"error",{signal:r});throw t};var Bb=()=>({readableDestroy:new WeakMap,writableFinal:new WeakMap,writableDestroy:new WeakMap}),In=(e,r,t)=>{let n=e[t];n.has(r)||n.set(r,[]);let i=n.get(r),o=We();return i.push(o),{resolve:o.resolve.bind(o),promises:i}},Dt=async({resolve:e,promises:r},t)=>{e();let[n]=await Promise.race([Promise.allSettled([!0,t]),Promise.all([!1,...r])]);return!n};var Gb=require("node:stream"),qb=require("node:util");var gl=require("node:stream/promises");var yl=async e=>{if(e!==void 0)try{await wl(e)}catch{}},Ub=async e=>{if(e!==void 0)try{await xl(e)}catch{}},wl=async e=>{await(0,gl.finished)(e,{cleanup:!0,readable:!1,writable:!0})},xl=async e=>{await(0,gl.finished)(e,{cleanup:!0,readable:!0,writable:!1})},Uo=async(e,r)=>{if(await e,r)throw r},Go=(e,r,t)=>{t&&!Bo(t)?e.destroy(t):r&&e.destroy()};var Yb=({subprocess:e,concurrentStreams:r,encoding:t},{from:n,binary:i=!0,preserveNewlines:o=!0}={})=>{let s=i||Se.has(t),{subprocessStdout:a,waitReadableDestroy:c}=bl(e,n,r),{readableEncoding:l,readableObjectMode:u,readableHighWaterMark:f}=El(a,s),{read:d,onStdoutDataDone:p}=Sl({subprocessStdout:a,subprocess:e,binary:s,encoding:t,preserveNewlines:o}),m=new Gb.Readable({read:d,destroy:(0,qb.callbackify)(Al.bind(void 0,{subprocessStdout:a,subprocess:e,waitReadableDestroy:c})),highWaterMark:f,objectMode:u,encoding:l});return vl({subprocessStdout:a,onStdoutDataDone:p,readable:m,subprocess:e}),m},bl=(e,r,t)=>{let n=Tt(e,r),i=In(t,n,"readableDestroy");return{subprocessStdout:n,waitReadableDestroy:i}},El=({readableEncoding:e,readableObjectMode:r,readableHighWaterMark:t},n)=>n?{readableEncoding:e,readableObjectMode:r,readableHighWaterMark:t}:{readableEncoding:e,readableObjectMode:!0,readableHighWaterMark:pl},Sl=({subprocessStdout:e,subprocess:r,binary:t,encoding:n,preserveNewlines:i})=>{let o=We(),s=jo({subprocessStdout:e,subprocess:r,binary:t,shouldEncode:!t,encoding:n,preserveNewlines:i});return{read(){v$(this,s,o)},onStdoutDataDone:o}},v$=async(e,r,t)=>{try{let{value:n,done:i}=await r.next();i?t.resolve():e.push(n)}catch{}},vl=async({subprocessStdout:e,onStdoutDataDone:r,readable:t,subprocess:n,subprocessStdin:i})=>{try{await xl(e),await n,await yl(i),await r,t.readable&&t.push(null)}catch(o){await yl(i),Hb(t,o)}},Al=async({subprocessStdout:e,subprocess:r,waitReadableDestroy:t},n)=>{await Dt(t,r)&&(Hb(e,n),await Uo(r,n))},Hb=(e,r)=>{Go(e,e.readable,r)};var Vb=require("node:stream"),Tl=require("node:util");var Wb=({subprocess:e,concurrentStreams:r},{to:t}={})=>{let{subprocessStdin:n,waitWritableFinal:i,waitWritableDestroy:o}=Cl(e,t,r),s=new Vb.Writable({..._l(n,e,i),destroy:(0,Tl.callbackify)(Il.bind(void 0,{subprocessStdin:n,subprocess:e,waitWritableFinal:i,waitWritableDestroy:o})),highWaterMark:n.writableHighWaterMark,objectMode:n.writableObjectMode});return Ol(n,s),s},Cl=(e,r,t)=>{let n=Xi(e,r),i=In(t,n,"writableFinal"),o=In(t,n,"writableDestroy");return{subprocessStdin:n,waitWritableFinal:i,waitWritableDestroy:o}},_l=(e,r,t)=>({write:A$.bind(void 0,e),final:(0,Tl.callbackify)(T$.bind(void 0,e,r,t))}),A$=(e,r,t,n)=>{e.write(r,t)?n():e.once("drain",n)},T$=async(e,r,t)=>{await Dt(t,r)&&(e.writable&&e.end(),await r)},Ol=async(e,r,t)=>{try{await wl(e),r.writable&&r.end()}catch(n){await Ub(t),zb(r,n)}},Il=async({subprocessStdin:e,subprocess:r,waitWritableFinal:t,waitWritableDestroy:n},i)=>{await Dt(t,r),await Dt(n,r)&&(zb(e,i),await Uo(r,i))},zb=(e,r)=>{Go(e,e.writable,r)};var Kb=require("node:stream"),Xb=require("node:util");var Jb=({subprocess:e,concurrentStreams:r,encoding:t},{from:n,to:i,binary:o=!0,preserveNewlines:s=!0}={})=>{let a=o||Se.has(t),{subprocessStdout:c,waitReadableDestroy:l}=bl(e,n,r),{subprocessStdin:u,waitWritableFinal:f,waitWritableDestroy:d}=Cl(e,i,r),{readableEncoding:p,readableObjectMode:m,readableHighWaterMark:g}=El(c,a),{read:y,onStdoutDataDone:_}=Sl({subprocessStdout:c,subprocess:e,binary:a,encoding:t,preserveNewlines:s}),S=new Kb.Duplex({read:y,..._l(u,e,f),destroy:(0,Xb.callbackify)(C$.bind(void 0,{subprocessStdout:c,subprocessStdin:u,subprocess:e,waitReadableDestroy:l,waitWritableFinal:f,waitWritableDestroy:d})),readableHighWaterMark:g,writableHighWaterMark:u.writableHighWaterMark,readableObjectMode:m,writableObjectMode:u.writableObjectMode,encoding:p});return vl({subprocessStdout:c,onStdoutDataDone:_,readable:S,subprocess:e,subprocessStdin:u}),Ol(u,S,c),S},C$=async({subprocessStdout:e,subprocessStdin:r,subprocess:t,waitReadableDestroy:n,waitWritableFinal:i,waitWritableDestroy:o},s)=>{await Promise.all([Al({subprocessStdout:e,subprocess:t,waitReadableDestroy:n},s),Il({subprocessStdin:r,subprocess:t,waitWritableFinal:i,waitWritableDestroy:o},s)])};var Rl=(e,r,{from:t,binary:n=!1,preserveNewlines:i=!1}={})=>{let o=n||Se.has(r),s=Tt(e,t),a=jo({subprocessStdout:s,subprocess:e,binary:o,shouldEncode:!0,encoding:r,preserveNewlines:i});return _$(a,s,e)},_$=async function*(e,r,t){try{yield*e}finally{r.readable&&r.destroy(),await t}};var Qb=(e,{encoding:r})=>{let t=Bb();e.readable=Yb.bind(void 0,{subprocess:e,concurrentStreams:t,encoding:r}),e.writable=Wb.bind(void 0,{subprocess:e,concurrentStreams:t}),e.duplex=Jb.bind(void 0,{subprocess:e,concurrentStreams:t,encoding:r}),e.iterable=Rl.bind(void 0,e,r),e[Symbol.asyncIterator]=Rl.bind(void 0,e,r,{})};var Zb=(e,r)=>{for(let[t,n]of I$){let i=n.value.bind(r);Reflect.defineProperty(e,t,{...n,value:i})}},O$=(async()=>{})().constructor.prototype,I$=["then","catch","finally"].map(e=>[e,Reflect.getOwnPropertyDescriptor(O$,e)]);var tE=(e,r,t,n)=>{let{file:i,commandArguments:o,command:s,escapedCommand:a,startTime:c,verboseInfo:l,options:u,fileDescriptors:f}=R$(e,r,t),{subprocess:d,promise:p}=L$({file:i,commandArguments:o,options:u,startTime:c,verboseInfo:l,command:s,escapedCommand:a,fileDescriptors:f});return d.pipe=$o.bind(void 0,{source:d,sourcePromise:p,boundOptions:{},createNested:n}),Zb(d,p),ze.set(d,{options:u,fileDescriptors:f}),d},R$=(e,r,t)=>{let{command:n,escapedCommand:i,startTime:o,verboseInfo:s}=Ui(e,r,t),{file:a,commandArguments:c,options:l}=co(e,r,t),u=k$(l),f=nb(u,s);return{file:a,commandArguments:c,command:n,escapedCommand:i,startTime:o,verboseInfo:s,options:u,fileDescriptors:f}},k$=({timeout:e,signal:r,...t})=>{if(r!==void 0)throw new TypeError('The "signal" option has been renamed to "cancelSignal" instead.');return{...t,timeoutDuration:e}},L$=({file:e,commandArguments:r,options:t,startTime:n,verboseInfo:i,command:o,escapedCommand:s,fileDescriptors:a})=>{let c;try{c=(0,rE.spawn)(...lo(e,r,t))}catch(m){return eb({error:m,command:o,escapedCommand:s,fileDescriptors:a,options:t,startTime:n,verboseInfo:i})}let l=new AbortController;(0,eE.setMaxListeners)(Number.POSITIVE_INFINITY,l.signal);let u=[...c.stdio];lb(c,a,l),pb(c,t,l);let f={},d=We();c.kill=py.bind(void 0,{kill:c.kill.bind(c),options:t,onInternalError:d,context:f,controller:l}),c.all=Lb(c,t),Qb(c,t),Xx(c,t);let p=F$({subprocess:c,options:t,startTime:n,verboseInfo:i,fileDescriptors:a,originalStreams:u,command:o,escapedCommand:s,context:f,onInternalError:d,controller:l});return{subprocess:c,promise:p}},F$=async({subprocess:e,options:r,startTime:t,verboseInfo:n,fileDescriptors:i,originalStreams:o,command:s,escapedCommand:a,context:c,onInternalError:l,controller:u})=>{let[f,[d,p],m,g,y]=await jb({subprocess:e,options:r,context:c,verboseInfo:n,fileDescriptors:i,originalStreams:o,onInternalError:l,controller:u});u.abort(),l.resolve();let _=m.map((W,ve)=>sr(W,r,ve)),S=sr(g,r,"all"),V=D$({errorInfo:f,exitCode:d,signal:p,stdio:_,all:S,ipcOutput:y,context:c,options:r,command:s,escapedCommand:a,startTime:t});return It(V,n,r)},D$=({errorInfo:e,exitCode:r,signal:t,stdio:n,all:i,ipcOutput:o,context:s,options:a,command:c,escapedCommand:l,startTime:u})=>"error"in e?En({error:e.error,command:c,escapedCommand:l,timedOut:s.terminationReason==="timeout",isCanceled:s.terminationReason==="cancel"||s.terminationReason==="gracefulCancel",isGracefullyCanceled:s.terminationReason==="gracefulCancel",isMaxBuffer:e.error instanceof Ke,isForcefullyTerminated:s.isForcefullyTerminated,exitCode:r,signal:t,stdio:n,all:i,ipcOutput:o,options:a,startTime:u,isSync:!1}):xo({command:c,escapedCommand:l,stdio:n,all:i,ipcOutput:o,options:a,startTime:u});var qo=(e,r)=>{let t=Object.fromEntries(Object.entries(r).map(([n,i])=>[n,N$(n,e[n],i)]));return{...e,...t}},N$=(e,r,t)=>M$.has(e)&&G(r)&&G(t)?{...r,...t}:t,M$=new Set(["env",...Xa]);var Er=(e,r,t,n)=>{let i=(s,a,c)=>Er(s,a,t,c),o=(...s)=>P$({mapArguments:e,deepOptions:t,boundOptions:r,setBoundExeca:n,createNested:i},...s);return n!==void 0&&n(o,i,r),o},P$=({mapArguments:e,deepOptions:r={},boundOptions:t={},setBoundExeca:n,createNested:i},o,...s)=>{if(G(o))return i(e,qo(t,o),n);let{file:a,commandArguments:c,options:l,isSync:u}=$$({mapArguments:e,firstArgument:o,nextArguments:s,deepOptions:r,boundOptions:t});return u?Vx(a,c,l):tE(a,c,l,i)},$$=({mapArguments:e,firstArgument:r,nextArguments:t,deepOptions:n,boundOptions:i})=>{let o=Dg(r)?Ng(r,t):[r,...t],[s,a,c]=Ii(...o),l=qo(qo(n,i),c),{file:u=s,commandArguments:f=a,options:d=l,isSync:p=!1}=e({file:s,commandArguments:a,options:l});return{file:u,commandArguments:f,options:d,isSync:p}};var nE=({file:e,commandArguments:r})=>oE(e,r),iE=({file:e,commandArguments:r})=>({...oE(e,r),isSync:!0}),oE=(e,r)=>{if(r.length>0)throw new TypeError(`The command and its arguments must be passed as a single string: ${e} ${r}.`);let[t,...n]=j$(e);return{file:t,commandArguments:n}},j$=e=>{if(typeof e!="string")throw new TypeError(`The command must be a string: ${String(e)}.`);let r=e.trim();if(r==="")return[];let t=[];for(let n of r.split(B$)){let i=t.at(-1);i&&i.endsWith("\\")?t[t.length-1]=`${i.slice(0,-1)} ${n}`:t.push(n)}return t},B$=/ +/g;var sE=(e,r,t)=>{e.sync=r(U$,t),e.s=e.sync},aE=({options:e})=>cE(e),U$=({options:e})=>({...cE(e),isSync:!0}),cE=e=>({options:{...G$(e),...e}}),G$=({input:e,inputFile:r,stdio:t})=>e===void 0&&r===void 0&&t===void 0?{stdin:"inherit"}:{},lE={preferLocal:!0};var uE=Er(()=>({})),bz=Er(()=>({isSync:!0})),Ez=Er(nE),Sz=Er(iE),vz=Er(nw),Az=Er(aE,{},lE,sE),{sendMessage:Tz,getOneMessage:Cz,getEachMessage:_z,getCancelSignal:Oz}=Jx();function Nt(e,r){j.warn(`no feedback impl - ${e} - ${r}`)}var kl=class{constructor(r,t){this.message=r,t&&this.start(r)}set text(r){return this.message=r,this}start(r){return Nt("start",r),this}succeed(r){return Nt("succeed",r),this}stop(r){return Nt("stop",r),this}info(r){return Nt("info",r),this}fail(r){return Nt("fail",r),this}warn(r){return Nt("warn",r),this}},q$=new kl("No feedback implementation");var fE={name:"imdone-cli",version:"0.67.1",author:"Jesse Piascik",description:"Turn Jira or GitHub issues into a shared context repo for AI and humans, synced locally as Markdown.",license:"Proprietary",homepage:"https://imdone.io",preferGlobal:!0,engines:{node:">=22.0.0"},main:"dist/index.min.cjs",type:"module",bin:{imdone:"dist/index.min.cjs","imdone-debug":"dist/index.cjs"},files:["dist","LICENSE","README.md","CHANGELOG.md",".npmignore"],scripts:{prepublishOnly:"npm --prefix ../ install && npm i && npm run build",link:"npm link ../../imdone-core ../../imdone-api",clean:"rm -rf dist/","build-bundle":"npm run clean && node esbuild.config.js && cp -R public/ dist/ && cp README.md dist/ && cp CHANGELOG.md dist/ && cp src/adapters/jwt-public.pem dist/",build:"./build.sh","build:no-test":"SKIP_TESTS=1 ./build.sh","install:global":"npm run build:no-test && npm install -g .","pack:share":"npm run build:no-test && npm pack && node scripts/show-install-command.mjs",coverage:"vitest --run --coverage",test:"vitest --run","test-ci":"vitest --run","version:patch":'npm version patch --no-git-tag-version && git -C .. add cli-package/package.json cli-package/package-lock.json && git -C .. commit -m "Update version"',"version:minor":'npm version minor --no-git-tag-version && git -C .. add cli-package/package.json cli-package/package-lock.json && git -C .. commit -m "Update version"',"version:major":'npm version major --no-git-tag-version && git -C .. add cli-package/package.json cli-package/package-lock.json && git -C .. commit -m "Update version"'},overrides:{"chrono-node":"2.7.8"},dependencies:{"@inquirer/prompts":"^7.10.1",chalk:"^5.4.1",commander:"^13.1.0",dotenv:"16.4.5",execa:"^9.5.3","find-up-simple":"^1.0.1","imdone-core":"^2.1.11","js-yaml":"^4.1.0",jsonwebtoken:"^9.0.2",markdownlint:"^0.38.0",open:"^9.1.0",ora:"^8.2.0",semver:"^7.7.2","simple-git":"^3.27.0",yaml:"^2.8.1"},devDependencies:{"@vitest/coverage-v8":"^4.1.2",esbuild:"^0.25.2","esbuild-plugin-copy":"^2.1.1",glob:"^12.0.0",vitest:"^4.1.2"}};var rv=require("node:module"),BU=L(ev(),1),{name:A4,version:UU,engines:T4,description:C4}=fE,_4=(0,rv.createRequire)(__filename);var{CONFIG_FILE_YML:j4}=Vr;async function tv(e,r=["."]){let t=await GU(e,r),n=t?.files?.filter(i=>i.path!==".imdonepause")||[];return j.debug("hasLocalChanges: ",{projectPath:e,fileSpec:r,relevantFiles:n,totalFiles:t?.files?.length}),n.length>0}async function GU(e,r=["."]){return await qU(e).status(r)}function qU(e){return Sg({baseDir:e,timeout:{block:3e4,stash:6e4,commit:45e3}})}async function nv(e){try{return await uE("git",["-C",e,"rev-parse"]),!0}catch{return!1}}async function ov(e){try{return e.fullBacklogDir?await Ge(e.fullBacklogDir)?{hasChanges:await tv(e.projectPath,[e.backlogDir]),backlogDir:e.backlogDir}:{hasChanges:!1}:{hasChanges:!1}}catch(r){return process.stderr.write(`Warning: Could not check git status: ${r.message}
|
|
161
161
|
`),{hasChanges:!1}}}function YU(){return process.env.npm_config_global==="true"?process.env.INIT_CWD||process.env.HOME||process.cwd():process.env.PWD||process.env.INIT_CWD||process.cwd()}async function sv(){process.stdout.write(`
|
|
162
162
|
\u{1F50D} Checking for backlog changes...
|
|
163
163
|
`);try{let e=YU(),r=new ii;if(await r.load(e),!await nv(r.projectPath)){process.stdout.write(`\u2139\uFE0F Not in a git repository, skipping backlog check
|