turbo-ignore 2.11.3 → 2.11.4
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/cli.js +1 -1
- package/package.json +2 -2
package/dist/cli.js
CHANGED
|
@@ -104,7 +104,7 @@ ${e.format(t)}
|
|
|
104
104
|
`).reverse(),r=t.stack.slice(t.stack.indexOf(t.message)+t.message.length).split(`
|
|
105
105
|
`).reverse();for(;r.length!==0&&r[0]===n[0];)n.shift();this.stack=`${this.stack.slice(0,e)}${n.reverse().join(`
|
|
106
106
|
`)}${r.reverse().join(`
|
|
107
|
-
`)}`}}};exports.RequestError=G;var ce=class extends G{constructor(e){super(`Redirected ${e.options.maxRedirects} times. Aborting.`,{},e),this.name=`MaxRedirectsError`,this.code=`ERR_TOO_MANY_REDIRECTS`}};exports.MaxRedirectsError=ce;var le=class extends G{constructor(e){super(`Response code ${e.statusCode} (${e.statusMessage})`,{},e.request),this.name=`HTTPError`,this.code=`ERR_NON_2XX_3XX_RESPONSE`}};exports.HTTPError=le;var ue=class extends G{constructor(e,t){super(e.message,e,t),this.name=`CacheError`,this.code=this.code===`ERR_GOT_REQUEST_ERROR`?`ERR_CACHE_ACCESS`:this.code}};exports.CacheError=ue;var de=class extends G{constructor(e,t){super(e.message,e,t),this.name=`UploadError`,this.code=this.code===`ERR_GOT_REQUEST_ERROR`?`ERR_UPLOAD`:this.code}};exports.UploadError=de;var fe=class extends G{constructor(e,t,n){super(e.message,e,n),this.name=`TimeoutError`,this.event=e.event,this.timings=t}};exports.TimeoutError=fe;var K=class extends G{constructor(e,t){super(e.message,e,t),this.name=`ReadError`,this.code=this.code===`ERR_GOT_REQUEST_ERROR`?`ERR_READING_RESPONSE_STREAM`:this.code}};exports.ReadError=K;var pe=class extends G{constructor(e){super(`Unsupported protocol "${e.url.protocol}"`,{},e),this.name=`UnsupportedProtocolError`,this.code=`ERR_UNSUPPORTED_PROTOCOL`}};exports.UnsupportedProtocolError=pe;let me=[`socket`,`connect`,`continue`,`information`,`upgrade`,`timeout`];var he=class extends n.Duplex{constructor(t,n={},i){super({autoDestroy:!1,highWaterMark:0}),this[M]=0,this[P]=0,this.requestInitialized=!1,this[ee]=new Set,this.redirects=[],this[L]=!1,this[R]=!1,this[B]=[],this.retryCount=0,this._progressCallbacks=[];let a=()=>this._unlockWrite(),s=()=>this._lockWrite();this.on(`pipe`,e=>{e.prependListener(`data`,a),e.on(`data`,s),e.prependListener(`end`,a),e.on(`end`,s)}),this.on(`unpipe`,e=>{e.off(`data`,a),e.off(`data`,s),e.off(`end`,a),e.off(`end`,s)}),this.on(`pipe`,e=>{e instanceof o.IncomingMessage&&(this.options.headers={...e.headers,...this.options.headers})});let{json:c,body:l,form:u}=n;if((c||l||u)&&this._lockWrite(),exports.kIsNormalizedAlready in n)this.options=n;else try{this.options=this.constructor.normalizeArguments(t,n,i)}catch(e){m.default.nodeStream(n.body)&&n.body.destroy(),this.destroy(e);return}(async()=>{var e;try{this.options.body instanceof r.ReadStream&&await W(this.options.body);let{url:t}=this.options;if(!t)throw TypeError("Missing `url` property");if(this.requestUrl=t.toString(),decodeURI(this.requestUrl),await this._finalizeBody(),await this._makeRequest(),this.destroyed){(e=this[k])==null||e.destroy();return}for(let e of this[B])e();this[B].length=0,this.requestInitialized=!0}catch(e){if(e instanceof G){this._beforeError(e);return}this.destroyed||this.destroy(e)}})()}static normalizeArguments(n,r,a){var o,s,c,d,f;let h=r;if(m.default.object(n)&&!m.default.urlInstance(n))r={...a,...n,...r};else{if(n&&r&&r.url!==void 0)throw TypeError("The `url` option is mutually exclusive with the `input` argument");r={...a,...r},n!==void 0&&(r.url=n),m.default.urlInstance(r.url)&&(r.url=new i.URL(r.url.toString()))}if(r.cache===!1&&(r.cache=void 0),r.dnsCache===!1&&(r.dnsCache=void 0),m.assert.any([m.default.string,m.default.undefined],r.method),m.assert.any([m.default.object,m.default.undefined],r.headers),m.assert.any([m.default.string,m.default.urlInstance,m.default.undefined],r.prefixUrl),m.assert.any([m.default.object,m.default.undefined],r.cookieJar),m.assert.any([m.default.object,m.default.string,m.default.undefined],r.searchParams),m.assert.any([m.default.object,m.default.string,m.default.undefined],r.cache),m.assert.any([m.default.object,m.default.number,m.default.undefined],r.timeout),m.assert.any([m.default.object,m.default.undefined],r.context),m.assert.any([m.default.object,m.default.undefined],r.hooks),m.assert.any([m.default.boolean,m.default.undefined],r.decompress),m.assert.any([m.default.boolean,m.default.undefined],r.ignoreInvalidCookies),m.assert.any([m.default.boolean,m.default.undefined],r.followRedirect),m.assert.any([m.default.number,m.default.undefined],r.maxRedirects),m.assert.any([m.default.boolean,m.default.undefined],r.throwHttpErrors),m.assert.any([m.default.boolean,m.default.undefined],r.http2),m.assert.any([m.default.boolean,m.default.undefined],r.allowGetBody),m.assert.any([m.default.string,m.default.undefined],r.localAddress),m.assert.any([C.isDnsLookupIpVersion,m.default.undefined],r.dnsLookupIpVersion),m.assert.any([m.default.object,m.default.undefined],r.https),m.assert.any([m.default.boolean,m.default.undefined],r.rejectUnauthorized),r.https&&(m.assert.any([m.default.boolean,m.default.undefined],r.https.rejectUnauthorized),m.assert.any([m.default.function_,m.default.undefined],r.https.checkServerIdentity),m.assert.any([m.default.string,m.default.object,m.default.array,m.default.undefined],r.https.certificateAuthority),m.assert.any([m.default.string,m.default.object,m.default.array,m.default.undefined],r.https.key),m.assert.any([m.default.string,m.default.object,m.default.array,m.default.undefined],r.https.certificate),m.assert.any([m.default.string,m.default.undefined],r.https.passphrase),m.assert.any([m.default.string,m.default.buffer,m.default.array,m.default.undefined],r.https.pfx)),m.assert.any([m.default.object,m.default.undefined],r.cacheOptions),m.default.string(r.method)?r.method=r.method.toUpperCase():r.method=`GET`,r.headers===a?.headers?r.headers={...r.headers}:r.headers=p({...a?.headers,...r.headers}),`slashes`in r)throw TypeError("The legacy `url.Url` has been deprecated. Use `URL` instead.");if(`auth`in r)throw TypeError("Parameter `auth` is deprecated. Use `username` / `password` instead.");if(`searchParams`in r&&r.searchParams&&r.searchParams!==a?.searchParams){let e;if(m.default.string(r.searchParams)||r.searchParams instanceof i.URLSearchParams)e=new i.URLSearchParams(r.searchParams);else for(let t in U(r.searchParams),e=new i.URLSearchParams,r.searchParams){let n=r.searchParams[t];n===null?e.append(t,``):n!==void 0&&e.append(t,n)}(o=a?.searchParams)==null||o.forEach((t,n)=>{e.has(n)||e.append(n,t)}),r.searchParams=e}if(r.username=(s=r.username)??``,r.password=(c=r.password)??``,m.default.undefined(r.prefixUrl)?r.prefixUrl=(d=a?.prefixUrl)??``:(r.prefixUrl=r.prefixUrl.toString(),r.prefixUrl!==``&&!r.prefixUrl.endsWith(`/`)&&(r.prefixUrl+=`/`)),m.default.string(r.url)){if(r.url.startsWith(`/`))throw Error("`input` must not start with a slash when using `prefixUrl`");r.url=b.default(r.prefixUrl+r.url,r)}else (m.default.undefined(r.url)&&r.prefixUrl!==``||r.protocol)&&(r.url=b.default(r.prefixUrl,r));if(r.url){`port`in r&&delete r.port;let{prefixUrl:e}=r;Object.defineProperty(r,`prefixUrl`,{set:t=>{let n=r.url;if(!n.href.startsWith(t))throw Error(`Cannot change \`prefixUrl\` from ${e} to ${t}: ${n.href}`);r.url=new i.URL(t+n.href.slice(e.length)),e=t},get:()=>e});let{protocol:t}=r.url;if(t===`unix:`&&(t=`http:`,r.url=new i.URL(`http://unix${r.url.pathname}${r.url.search}`)),r.searchParams&&(r.url.search=r.searchParams.toString()),t!==`http:`&&t!==`https:`)throw new pe(r);r.username===``?r.username=r.url.username:r.url.username=r.username,r.password===``?r.password=r.url.password:r.url.password=r.password}let{cookieJar:g}=r;if(g){let{setCookie:e,getCookieString:n}=g;m.assert.function_(e),m.assert.function_(n),e.length===4&&n.length===0&&(e=t.promisify(e.bind(r.cookieJar)),n=t.promisify(n.bind(r.cookieJar)),r.cookieJar={setCookie:e,getCookieString:n})}let{cache:_}=r;if(_&&(ae.has(_)||ae.set(_,new u((e,t)=>{let n=e[k](e,t);return m.default.promise(n)&&(n.once=(e,t)=>{if(e===`error`)n.catch(t);else if(e===`abort`)(async()=>{try{let e=await n;e.once(`abort`,t)}catch{}})();else throw Error(`Unknown HTTP2 promise event: ${e}`);return n}),n},_))),r.cacheOptions={...r.cacheOptions},r.dnsCache===!0)O||=new l.default,r.dnsCache=O;else if(!m.default.undefined(r.dnsCache)&&!r.dnsCache.lookup)throw TypeError(`Parameter \`dnsCache\` must be a CacheableLookup instance or a boolean, got ${m.default(r.dnsCache)}`);m.default.number(r.timeout)?r.timeout={request:r.timeout}:a&&r.timeout!==a.timeout?r.timeout={...a.timeout,...r.timeout}:r.timeout={...r.timeout},r.context||={};let v=r.hooks===a?.hooks;r.hooks={...r.hooks};for(let t of exports.knownHookEvents)if(t in r.hooks)if(m.default.array(r.hooks[t]))r.hooks[t]=[...r.hooks[t]];else throw TypeError(`Parameter \`${t}\` must be an Array, got ${m.default(r.hooks[t])}`);else r.hooks[t]=[];if(a&&!v)for(let t of exports.knownHookEvents){let e=a.hooks[t];e.length>0&&(r.hooks[t]=[...a.hooks[t],...r.hooks[t]])}if(`family`in r&&T.default(`"options.family" was never documented, please use "options.dnsLookupIpVersion"`),a?.https&&(r.https={...a.https,...r.https}),`rejectUnauthorized`in r&&T.default(`"options.rejectUnauthorized" is now deprecated, please use "options.https.rejectUnauthorized"`),`checkServerIdentity`in r&&T.default(`"options.checkServerIdentity" was never documented, please use "options.https.checkServerIdentity"`),`ca`in r&&T.default(`"options.ca" was never documented, please use "options.https.certificateAuthority"`),`key`in r&&T.default(`"options.key" was never documented, please use "options.https.key"`),`cert`in r&&T.default(`"options.cert" was never documented, please use "options.https.certificate"`),`passphrase`in r&&T.default(`"options.passphrase" was never documented, please use "options.https.passphrase"`),`pfx`in r&&T.default(`"options.pfx" was never documented, please use "options.https.pfx"`),`followRedirects`in r)throw TypeError("The `followRedirects` option does not exist. Use `followRedirect` instead.");if(r.agent){for(let e in r.agent)if(e!==`http`&&e!==`https`&&e!==`http2`)throw TypeError(`Expected the \`options.agent\` properties to be \`http\`, \`https\` or \`http2\`, got \`${e}\``)}return r.maxRedirects=(f=r.maxRedirects)??0,exports.setNonEnumerableProperties([a,h],r),E.default(r,a)}_lockWrite(){let e=()=>{throw TypeError(`The payload has been already provided`)};this.write=e,this.end=e}_unlockWrite(){this.write=super.write,this.end=super.end}async _finalizeBody(){let{options:t}=this,{headers:r}=t,a=!m.default.undefined(t.form),o=!m.default.undefined(t.json),s=!m.default.undefined(t.body),c=a||o||s,l=exports.withoutBody.has(t.method)&&!(t.method===`GET`&&t.allowGetBody);if(this._cannotHaveBody=l,c){if(l)throw TypeError(`The \`${t.method}\` method cannot be used with a body`);if([s,a,o].filter(e=>e).length>1)throw TypeError("The `body`, `json` and `form` options are mutually exclusive");if(s&&!(t.body instanceof n.Readable)&&!m.default.string(t.body)&&!m.default.buffer(t.body)&&!g.default(t.body))throw TypeError("The `body` option must be a stream.Readable, string or Buffer");if(a&&!m.default.object(t.form))throw TypeError("The `form` option must be an Object");{let e=!m.default.string(r[`content-type`]);s?(g.default(t.body)&&e&&(r[`content-type`]=`multipart/form-data; boundary=${t.body.getBoundary()}`),this[z]=t.body):a?(e&&(r[`content-type`]=`application/x-www-form-urlencoded`),this[z]=new i.URLSearchParams(t.form).toString()):(e&&(r[`content-type`]=`application/json`),this[z]=t.stringifyJson(t.json));let n=await h.default(this[z],t.headers);m.default.undefined(r[`content-length`])&&m.default.undefined(r[`transfer-encoding`])&&!l&&!m.default.undefined(n)&&(r[`content-length`]=String(n))}}else l?this._lockWrite():this._unlockWrite();this[N]=Number(r[`content-length`])||void 0}async _onResponseBase(e){let{options:t}=this,{url:n}=t;this[re]=e,t.decompress&&(e=d(e));let r=e.statusCode,o=e;o.statusMessage=o.statusMessage?o.statusMessage:a.STATUS_CODES[r],o.url=t.url.toString(),o.requestUrl=this.requestUrl,o.redirectUrls=this.redirects,o.request=this,o.isFromCache=e.fromCache||!1,o.ip=this.ip,o.retryCount=this.retryCount,this[ne]=o.isFromCache,this[j]=Number(e.headers[`content-length`])||void 0,this[A]=e,e.once(`end`,()=>{this[j]=this[M],this.emit(`downloadProgress`,this.downloadProgress)}),e.once(`error`,t=>{e.destroy(),this._beforeError(new K(t,this))}),e.once(`aborted`,()=>{this._beforeError(new K({name:`Error`,message:`The server aborted pending request`,code:`ECONNRESET`},this))}),this.emit(`downloadProgress`,this.downloadProgress);let s=e.headers[`set-cookie`];if(m.default.object(t.cookieJar)&&s){let e=s.map(async e=>t.cookieJar.setCookie(e,n.toString()));t.ignoreInvalidCookies&&(e=e.map(async e=>e.catch(()=>{})));try{await Promise.all(e)}catch(e){this._beforeError(e);return}}if(t.followRedirect&&e.headers.location&&oe.has(r)){e.resume(),this[k]&&(this[F](),delete this[k],this[te]());let a=r===303&&t.method!==`GET`&&t.method!==`HEAD`;if((a||!t.methodRewriting)&&(t.method=`GET`,`body`in t&&delete t.body,`json`in t&&delete t.json,`form`in t&&delete t.form,this[z]=void 0,delete t.headers[`content-length`]),this.redirects.length>=t.maxRedirects){this._beforeError(new ce(this));return}try{let r=Buffer.from(e.headers.location,`binary`).toString(),a=new i.URL(r,n),s=a.toString();decodeURI(s);function c(e){return e.protocol===`unix:`||e.hostname===`unix`}if(!c(n)&&c(a)){this._beforeError(new G(`Cannot redirect to UNIX socket`,{},this));return}a.hostname!==n.hostname||a.port!==n.port?(`host`in t.headers&&delete t.headers.host,`cookie`in t.headers&&delete t.headers.cookie,`authorization`in t.headers&&delete t.headers.authorization,(t.username||t.password)&&(t.username=``,t.password=``)):(a.username=t.username,a.password=t.password),this.redirects.push(s),t.url=a;for(let e of t.hooks.beforeRedirect)await e(t,o);this.emit(`redirect`,o,t),await this._makeRequest()}catch(e){this._beforeError(e);return}return}if(t.isStream&&t.throwHttpErrors&&!w.isResponseOk(o)){this._beforeError(new le(o));return}e.on(`readable`,()=>{this[R]&&this._read()}),this.on(`resume`,()=>{e.resume()}),this.on(`pause`,()=>{e.pause()}),e.once(`end`,()=>{this.push(null)}),this.emit(`response`,e);for(let n of this[ee]){if(n.headersSent)continue;for(let r in e.headers){let i=t.decompress?r!==`content-encoding`:!0,a=e.headers[r];i&&n.setHeader(r,a)}n.statusCode=r}}async _onResponse(e){try{await this._onResponseBase(e)}catch(e){this._beforeError(e)}}_onRequest(e){let{options:t}=this,{timeout:n,url:r}=t;c.default(e),this[F]=v.default(e,n,r);let i=t.cache?`cacheableResponse`:`response`;e.once(i,e=>{this._onResponse(e)}),e.once(`error`,t=>{var n;e.destroy(),(n=e.res)==null||n.removeAllListeners(`end`),t=t instanceof v.TimeoutError?new fe(t,this.timings,this):new G(t.message,t,this),this._beforeError(t)}),this[te]=_.default(e,this,me),this[k]=e,this.emit(`uploadProgress`,this.uploadProgress);let a=this[z],o=this.redirects.length===0?this:e;m.default.nodeStream(a)?(a.pipe(o),a.once(`error`,e=>{this._beforeError(new de(e,this))})):(this._unlockWrite(),m.default.undefined(a)?(this._cannotHaveBody||this._noPipe)&&(o.end(),this._lockWrite()):(this._writeRequest(a,void 0,()=>{}),o.end(),this._lockWrite())),this.emit(`request`,e)}async _createCacheableRequest(e,t){return new Promise((n,r)=>{Object.assign(t,y.default(e)),delete t.url;let i,a=ae.get(t.cache)(t,async e=>{e._readableState.autoDestroy=!1,i&&(await i).emit(`cacheableResponse`,e),n(e)});t.url=e,a.once(`error`,r),a.once(`request`,async e=>{i=e,n(i)})})}async _makeRequest(){var e,t,n,r,i;let{options:o}=this,{headers:c}=o;for(let e in c)if(m.default.undefined(c[e]))delete c[e];else if(m.default.null_(c[e]))throw TypeError(`Use \`undefined\` instead of \`null\` to delete the \`${e}\` header`);if(o.decompress&&m.default.undefined(c[`accept-encoding`])&&(c[`accept-encoding`]=H?`gzip, deflate, br`:`gzip, deflate`),o.cookieJar){let e=await o.cookieJar.getCookieString(o.url.toString());m.default.nonEmptyString(e)&&(o.headers.cookie=e)}for(let e of o.hooks.beforeRequest){let t=await e(o);if(!m.default.undefined(t)){o.request=()=>t;break}}o.body&&this[z]!==o.body&&(this[z]=o.body);let{agent:l,request:d,timeout:p,url:h}=o;if(o.dnsCache&&!(`lookup`in o)&&(o.lookup=o.dnsCache.lookup),h.hostname===`unix`){let e=/(?<socketPath>.+?):(?<path>.+)/.exec(`${h.pathname}${h.search}`);if(e?.groups){let{socketPath:t,path:n}=e.groups;Object.assign(o,{socketPath:t,path:n,host:``})}}let g=h.protocol===`https:`,_;_=o.http2?f.auto:g?s.request:a.request;let v=(e=o.request)??_,y=o.cache?this._createCacheableRequest:v;l&&!o.http2&&(o.agent=l[g?`https`:`http`]),o[k]=v,delete o.request,delete o.timeout;let b=o;if(b.shared=(t=o.cacheOptions)?.shared,b.cacheHeuristic=(n=o.cacheOptions)?.cacheHeuristic,b.immutableMinTimeToLive=(r=o.cacheOptions)?.immutableMinTimeToLive,b.ignoreCargoCult=(i=o.cacheOptions)?.ignoreCargoCult,o.dnsLookupIpVersion!==void 0)try{b.family=C.dnsLookupIpVersionToFamily(o.dnsLookupIpVersion)}catch{throw Error("Invalid `dnsLookupIpVersion` option value")}o.https&&(`rejectUnauthorized`in o.https&&(b.rejectUnauthorized=o.https.rejectUnauthorized),o.https.checkServerIdentity&&(b.checkServerIdentity=o.https.checkServerIdentity),o.https.certificateAuthority&&(b.ca=o.https.certificateAuthority),o.https.certificate&&(b.cert=o.https.certificate),o.https.key&&(b.key=o.https.key),o.https.passphrase&&(b.passphrase=o.https.passphrase),o.https.pfx&&(b.pfx=o.https.pfx));try{let e=await y(h,b);m.default.undefined(e)&&(e=_(h,b)),o.request=d,o.timeout=p,o.agent=l,o.https&&(`rejectUnauthorized`in o.https&&delete b.rejectUnauthorized,o.https.checkServerIdentity&&delete b.checkServerIdentity,o.https.certificateAuthority&&delete b.ca,o.https.certificate&&delete b.cert,o.https.key&&delete b.key,o.https.passphrase&&delete b.passphrase,o.https.pfx&&delete b.pfx),ie(e)?this._onRequest(e):this.writable?(this.once(`finish`,()=>{this._onResponse(e)}),this._unlockWrite(),this.end(),this._lockWrite()):this._onResponse(e)}catch(e){throw e instanceof u.CacheError?new ue(e,this):new G(e.message,e,this)}}async _error(e){try{for(let t of this.options.hooks.beforeError)e=await t(e)}catch(t){e=new G(t.message,t,this)}this.destroy(e)}_beforeError(e){if(this[L])return;let{options:t}=this,n=this.retryCount+1;this[L]=!0,e instanceof G||(e=new G(e.message,e,this));let r=e,{response:i}=r;(async()=>{if(i&&!i.body){i.setEncoding(this._readableState.encoding);try{i.rawBody=await S.default(i),i.body=i.rawBody.toString()}catch{}}if(this.listenerCount(`retry`)!==0){let a;try{let e;i&&`retry-after`in i.headers&&(e=Number(i.headers[`retry-after`]),Number.isNaN(e)?(e=Date.parse(i.headers[`retry-after`])-Date.now(),e<=0&&(e=1)):e*=1e3),a=await t.retry.calculateDelay({attemptCount:n,retryOptions:t.retry,error:r,retryAfter:e,computedValue:D.default({attemptCount:n,retryOptions:t.retry,error:r,retryAfter:e,computedValue:0})})}catch(e){this._error(new G(e.message,e,this));return}if(a){let t=async()=>{try{for(let e of this.options.hooks.beforeRetry)await e(this.options,r,n)}catch(t){this._error(new G(t.message,e,this));return}this.destroyed||(this.destroy(),this.emit(`retry`,n,e))};this[V]=setTimeout(t,a);return}}this._error(r)})()}_read(){this[R]=!0;let e=this[A];if(e&&!this[L]){e.readableLength&&(this[R]=!1);let t;for(;(t=e.read())!==null;){this[M]+=t.length,this[I]=!0;let e=this.downloadProgress;e.percent<1&&this.emit(`downloadProgress`,e),this.push(t)}}}_write(e,t,n){let r=()=>{this._writeRequest(e,t,n)};this.requestInitialized?r():this[B].push(r)}_writeRequest(e,t,n){this[k].destroyed||(this._progressCallbacks.push(()=>{this[P]+=Buffer.byteLength(e,t);let n=this.uploadProgress;n.percent<1&&this.emit(`uploadProgress`,n)}),this[k].write(e,t,e=>{!e&&this._progressCallbacks.length>0&&this._progressCallbacks.shift()(),n(e)}))}_final(e){let t=()=>{for(;this._progressCallbacks.length!==0;)this._progressCallbacks.shift()();if(!(k in this)){e();return}if(this[k].destroyed){e();return}this[k].end(t=>{t||(this[N]=this[P],this.emit(`uploadProgress`,this.uploadProgress),this[k].emit(`upload-complete`)),e(t)})};this.requestInitialized?t():this[B].push(t)}_destroy(e,t){var n;this[L]=!0,clearTimeout(this[V]),k in this&&(this[F](),(n=this[A])?.complete||this[k].destroy()),e!==null&&!m.default.undefined(e)&&!(e instanceof G)&&(e=new G(e.message,e,this)),t(e)}get _isAboutToError(){return this[L]}get ip(){var e;return(e=this.socket)?.remoteAddress}get aborted(){var e,t,n;return((t=(e=this[k])?.destroyed)??this.destroyed)&&!(n=this[re])?.complete}get socket(){var e,t;return(t=(e=this[k])?.socket)??void 0}get downloadProgress(){let e;return e=this[j]?this[M]/this[j]:this[j]===this[M]?1:0,{percent:e,transferred:this[M],total:this[j]}}get uploadProgress(){let e;return e=this[N]?this[P]/this[N]:this[N]===this[P]?1:0,{percent:e,transferred:this[P],total:this[N]}}get timings(){var e;return(e=this[k])?.timings}get isFromCache(){return this[ne]}pipe(e,t){if(this[I])throw Error(`Failed to pipe. The response has been emitted already.`);return e instanceof o.ServerResponse&&this[ee].add(e),super.pipe(e,t)}unpipe(e){return e instanceof o.ServerResponse&&this[ee].delete(e),super.unpipe(e),this}};exports.default=he}),sv=o(exports=>{var t=Object.create?function(e,t,n,r){r===void 0&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]},n=function(e,n){for(var r in e)r!==`default`&&!Object.prototype.hasOwnProperty.call(n,r)&&t(n,e,r)};Object.defineProperty(exports,`__esModule`,{value:!0}),exports.CancelError=exports.ParseError=void 0;let r=ov();var i=class extends r.RequestError{constructor(e,t){let{options:n}=t.request;super(`${e.message} in "${n.url.toString()}"`,e,t.request),this.name=`ParseError`,this.code=this.code===`ERR_GOT_REQUEST_ERROR`?`ERR_BODY_PARSE_FAILURE`:this.code}};exports.ParseError=i;var a=class extends r.RequestError{constructor(e){super(`Promise was canceled`,{},e),this.name=`CancelError`,this.code=`ERR_CANCELED`}get isCanceled(){return!0}};exports.CancelError=a,n(ov(),exports)}),cv=o(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0});let t=sv(),n=(e,n,r,i)=>{let{rawBody:a}=e;try{if(n===`text`)return a.toString(i);if(n===`json`)return a.length===0?``:r(a.toString());if(n===`buffer`)return a;throw new t.ParseError({message:`Unknown body type '${n}'`,name:`Error`},e)}catch(n){throw new t.ParseError(n,e)}};exports.default=n}),lv=o(exports=>{var t=Object.create?function(e,t,n,r){r===void 0&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]},n=function(e,n){for(var r in e)r!==`default`&&!Object.prototype.hasOwnProperty.call(n,r)&&t(n,e,r)};Object.defineProperty(exports,`__esModule`,{value:!0});let r=require(`events`),i=f_(),a=p_(),o=sv(),s=cv(),c=ov(),l=J_(),u=ev(),d=nv(),f=[`request`,`response`,`redirect`,`uploadProgress`,`downloadProgress`];function p(e){let t,n,m=new r.EventEmitter,h=new a((r,a,g)=>{let _=v=>{let y=new c.default(void 0,e);y.retryCount=v,y._noPipe=!0,g(()=>y.destroy()),g.shouldReject=!1,g(()=>a(new o.CancelError(y))),t=y,y.once(`response`,async e=>{var t;if(e.retryCount=v,e.request.aborted)return;let i;try{i=await u.default(y),e.rawBody=i}catch{return}if(y._isAboutToError)return;let a=((t=e.headers[`content-encoding`])??``).toLowerCase(),l=[`gzip`,`deflate`,`br`].includes(a),{options:f}=y;if(l&&!f.decompress)e.body=i;else try{e.body=s.default(e,f.responseType,f.parseJson,f.encoding)}catch(t){if(e.body=i.toString(),d.isResponseOk(e)){y._beforeError(t);return}}try{for(let[t,n]of f.hooks.afterResponse.entries())e=await n(e,async e=>{let n=c.default.normalizeArguments(void 0,{...e,retry:{calculateDelay:()=>0},throwHttpErrors:!1,resolveBodyOnly:!1},f);n.hooks.afterResponse=n.hooks.afterResponse.slice(0,t);for(let e of n.hooks.beforeRetry)await e(n);let r=p(n);return g(()=>{r.catch(()=>{}),r.cancel()}),r})}catch(e){y._beforeError(new o.RequestError(e.message,e,y));return}if(n=e,!d.isResponseOk(e)){y._beforeError(new o.HTTPError(e));return}y.destroy(),r(y.options.resolveBodyOnly?e.body:e)});let b=e=>{if(h.isCanceled)return;let{options:t}=y;if(e instanceof o.HTTPError&&!t.throwHttpErrors){let{response:t}=e;r(y.options.resolveBodyOnly?t.body:t);return}a(e)};y.once(`error`,b);let x=y.options.body;y.once(`retry`,(e,t)=>{var n,r;if(x===(n=t.request)?.options.body&&i.default.nodeStream((r=t.request)?.options.body)){b(t);return}_(e)}),l.default(y,m,f)};_(0)});h.on=(e,t)=>(m.on(e,t),h);let g=e=>{let t=(async()=>{await h;let{options:t}=n.request;return s.default(n,e,t.parseJson,t.encoding)})();return Object.defineProperties(t,Object.getOwnPropertyDescriptors(h)),t};return h.json=()=>{let{headers:e}=t.options;return!t.writableFinished&&e.accept===void 0&&(e.accept=`application/json`),g(`json`)},h.buffer=()=>g(`buffer`),h.text=()=>g(`text`),h}exports.default=p,n(sv(),exports)}),uv=o(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0});let t=sv();function n(e,...n){let r=(async()=>{if(e instanceof t.RequestError)try{for(let t of n)if(t)for(let n of t)e=await n(e)}catch(t){e=t}throw e})(),i=()=>r;return r.json=i,r.text=i,r.buffer=i,r.on=i,r}exports.default=n}),dv=o(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0});let t=f_();function n(e){for(let r of Object.values(e))(t.default.plainObject(r)||t.default.array(r))&&n(r);return Object.freeze(e)}exports.default=n}),fv=o(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0})}),pv=o(exports=>{var t=Object.create?function(e,t,n,r){r===void 0&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]},n=function(e,n){for(var r in e)r!==`default`&&!Object.prototype.hasOwnProperty.call(n,r)&&t(n,e,r)};Object.defineProperty(exports,`__esModule`,{value:!0}),exports.defaultHandler=void 0;let r=f_(),i=lv(),a=uv(),o=ov(),s=dv(),c={RequestError:i.RequestError,CacheError:i.CacheError,ReadError:i.ReadError,HTTPError:i.HTTPError,MaxRedirectsError:i.MaxRedirectsError,TimeoutError:i.TimeoutError,ParseError:i.ParseError,CancelError:i.CancelError,UnsupportedProtocolError:i.UnsupportedProtocolError,UploadError:i.UploadError},l=async e=>new Promise(t=>{setTimeout(t,e)}),{normalizeArguments:u}=o.default,d=(...e)=>{let t;for(let n of e)t=u(void 0,n,t);return t},f=e=>e.isStream?new o.default(void 0,e):i.default(e),p=e=>`defaults`in e&&`options`in e.defaults,m=[`get`,`post`,`put`,`patch`,`head`,`delete`];exports.defaultHandler=(e,t)=>t(e);let h=(e,t)=>{if(e)for(let n of e)n(t)},g=t=>{t._rawHandlers=t.handlers,t.handlers=t.handlers.map(e=>(t,n)=>{let r,i=e(t,e=>(r=n(e),r));if(i!==r&&!t.isStream&&r){let e=i,{then:t,catch:n,finally:a}=e;Object.setPrototypeOf(e,Object.getPrototypeOf(r)),Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)),e.then=t,e.catch=n,e.finally=a}return i});let n=(e,n={},s)=>{var c,l;let d=0,p=e=>t.handlers[d++](e,d===t.handlers.length?f:p);if(r.default.plainObject(e)){let t={...e,...n};o.setNonEnumerableProperties([e,n],t),n=t,e=void 0}try{let r;try{h(t.options.hooks.init,n),h((c=n.hooks)?.init,n)}catch(e){r=e}let a=u(e,n,s??t.options);if(a[o.kIsNormalizedAlready]=!0,r)throw new i.RequestError(r.message,r,a);return p(a)}catch(e){if(n.isStream)throw e;return a.default(e,t.options.hooks.beforeError,(l=n.hooks)?.beforeError)}};n.extend=(...n)=>{let r=[t.options],i=[...t._rawHandlers],a;for(let e of n)p(e)?(r.push(e.defaults.options),i.push(...e.defaults._rawHandlers),a=e.defaults.mutableDefaults):(r.push(e),`handlers`in e&&i.push(...e.handlers),a=e.mutableDefaults);return i=i.filter(t=>t!==exports.defaultHandler),i.length===0&&i.push(exports.defaultHandler),g({options:d(...r),handlers:i,mutableDefaults:!!a})};let _=async function*(e,i){let a=u(e,i,t.options);a.resolveBodyOnly=!1;let o=a.pagination;if(!r.default.object(o))throw TypeError("`options.pagination` must be implemented");let s=[],{countLimit:c}=o,d=0;for(;d<o.requestLimit;){d!==0&&await l(o.backoff);let e=await n(void 0,void 0,a),t=await o.transform(e),r=[];for(let e of t)if(o.filter(e,s,r)&&(!o.shouldContinue(e,s,r)||(yield e,o.stackAllItems&&s.push(e),r.push(e),--c<=0)))return;let i=o.paginate(e,s,r);if(i===!1)return;i===e.request.options?a=e.request.options:i!==void 0&&(a=u(void 0,i,a)),d++}};n.paginate=_,n.paginate.all=async(e,t)=>{let n=[];for await(let r of _(e,t))n.push(r);return n},n.paginate.each=_,n.stream=(e,t)=>n(e,{...t,isStream:!0});for(let e of m)n[e]=(t,r)=>n(t,{...r,method:e}),n.stream[e]=(t,r)=>n(t,{...r,method:e,isStream:!0});return Object.assign(n,c),Object.defineProperty(n,`defaults`,{value:t.mutableDefaults?t:s.default(t),writable:t.mutableDefaults,configurable:t.mutableDefaults,enumerable:!0}),n.mergeOptions=d,n};exports.default=g,n(fv(),exports)}),mv=o((exports,t)=>{var n=Object.create?function(e,t,n,r){r===void 0&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]},r=function(e,t){for(var r in e)r!==`default`&&!Object.prototype.hasOwnProperty.call(t,r)&&n(t,e,r)};Object.defineProperty(exports,`__esModule`,{value:!0});let i=require(`url`),a=pv(),o={options:{method:`GET`,retry:{limit:2,methods:[`GET`,`PUT`,`HEAD`,`DELETE`,`OPTIONS`,`TRACE`],statusCodes:[408,413,429,500,502,503,504,521,522,524],errorCodes:[`ETIMEDOUT`,`ECONNRESET`,`EADDRINUSE`,`ECONNREFUSED`,`EPIPE`,`ENOTFOUND`,`ENETUNREACH`,`EAI_AGAIN`],maxRetryAfter:void 0,calculateDelay:({computedValue:e})=>e},timeout:{},headers:{"user-agent":`got (https://github.com/sindresorhus/got)`},hooks:{init:[],beforeRequest:[],beforeRedirect:[],beforeRetry:[],beforeError:[],afterResponse:[]},cache:void 0,dnsCache:void 0,decompress:!0,throwHttpErrors:!0,followRedirect:!0,isStream:!1,responseType:`text`,resolveBodyOnly:!1,maxRedirects:10,prefixUrl:``,methodRewriting:!0,ignoreInvalidCookies:!1,context:{},http2:!1,allowGetBody:!1,https:void 0,pagination:{transform:e=>e.request.options.responseType===`json`?e.body:JSON.parse(e.body),paginate:e=>{if(!Reflect.has(e.headers,`link`))return!1;let t=e.headers.link.split(`,`),n;for(let e of t){let t=e.split(`;`);if(t[1].includes(`next`)){n=t[0].trimStart().trim(),n=n.slice(1,-1);break}}if(n){let e={url:new i.URL(n)};return e}return!1},filter:()=>!0,shouldContinue:()=>!0,countLimit:1/0,backoff:0,requestLimit:1e4,stackAllItems:!0},parseJson:e=>JSON.parse(e),stringifyJson:e=>JSON.stringify(e),cacheOptions:{}},handlers:[a.defaultHandler],mutableDefaults:!1},s=a.default(o);exports.default=s,t.exports=s,t.exports.default=s,t.exports.__esModule=!0,r(pv(),exports),r(lv(),exports)}),hv=c(mv());const gv=20,_v=`/api/turborepo/v1/events`;var vv=class{api;packageInfo;batchSize=gv;timeout=250;sessionId=(0,p.randomUUID)();eventBatches=[];events=[];config;constructor({api:e,packageInfo:t,config:n,opts:r}){let i=new URL(_v,e);this.api=i.toString(),this.packageInfo=t,this.config=n,r?.timeout&&(this.timeout=r.timeout),r?.batchSize&&(this.batchSize=r.batchSize)}hasPendingEvents(){return this.events.length!==0}async waitForFlush(){await Promise.all(this.eventBatches)}flushEvents(){let e=this.events.splice(0,this.batchSize);this.config.isEnabled()&&this.eventBatches.push(hv.default.post(this.api,{timeout:this.timeout,json:e,headers:{"x-turbo-telemetry-id":this.config.id,"x-turbo-session-id":this.sessionId,"User-Agent":i_.buildUserAgent(this.packageInfo)}}))}track({key:e,value:t,parentId:n,isSensitive:r}){let i={id:(0,p.randomUUID)(),key:e,value:r?this.config.oneWayHash(t):t,package_name:this.packageInfo.name,package_version:this.packageInfo.version,parent_id:n};return d_.isDebug()&&(Aa(),Ea(`[telemetry event]`),Oa(JSON.stringify(i,null,2)),Aa()),this.config.isEnabled()&&(this.events.push({package:i}),this.events.length>=this.batchSize&&this.flushEvents()),i}async close(){for(;this.hasPendingEvents();)this.flushEvents();try{await this.waitForFlush()}catch{}}trackCliOption({option:e,value:t}){return this.track({key:`option:${e}`,value:t})}trackCliArgument({argument:e,value:t}){return this.track({key:`argument:${e}`,value:t})}trackCliCommand({command:e,value:t}){return this.track({key:`command:${e}`,value:t})}trackCommandStatus({command:e,status:t}){return this.trackCliCommand({command:e,value:t})}trackCommandWarning(e){return this.track({key:`warning`,value:e})}trackCommandError(e){return this.track({key:`error`,value:e})}};function yv(e){if(e===`default`)return`default`;try{let t=new URL(e);return t.hostname===`github.com`?`github_url`:`other_url`}catch{return`official`}}var bv=class extends vv{trackOptionExample(e){if(e)return this.trackCliOption({option:`example`,value:yv(e)})}trackOptionPackageManager(e){if(e)return this.trackCliOption({option:`package_manager`,value:e})}trackOptionSkipInstall(e){if(e)return this.trackCliOption({option:`skip_install`,value:e.toString()})}trackOptionSkipTransforms(e){if(e)return this.trackCliOption({option:`skip_transforms`,value:e.toString()})}trackOptionTurboVersion(e){if(e)return this.trackCliOption({option:`turbo_version`,value:e})}trackOptionExamplePath(e){if(e)return this.trackCliOption({option:`example_path`,value:`provided`})}trackArgumentDirectory(e){if(e)return this.trackCliArgument({argument:`project_directory`,value:`provided`})}trackArgumentPackageManager(e){if(e)return this.trackCliArgument({argument:`package_manager`,value:e})}},xv=o((exports,t)=>{t.exports=[{name:`Agola CI`,constant:`AGOLA`,env:`AGOLA_GIT_REF`,pr:`AGOLA_PULL_REQUEST_ID`},{name:`Appcircle`,constant:`APPCIRCLE`,env:`AC_APPCIRCLE`},{name:`AppVeyor`,constant:`APPVEYOR`,env:`APPVEYOR`,pr:`APPVEYOR_PULL_REQUEST_NUMBER`},{name:`AWS CodeBuild`,constant:`CODEBUILD`,env:`CODEBUILD_BUILD_ARN`},{name:`Azure Pipelines`,constant:`AZURE_PIPELINES`,env:`TF_BUILD`,pr:{BUILD_REASON:`PullRequest`}},{name:`Bamboo`,constant:`BAMBOO`,env:`bamboo_planKey`},{name:`Bitbucket Pipelines`,constant:`BITBUCKET`,env:`BITBUCKET_COMMIT`,pr:`BITBUCKET_PR_ID`},{name:`Bitrise`,constant:`BITRISE`,env:`BITRISE_IO`,pr:`BITRISE_PULL_REQUEST`},{name:`Buddy`,constant:`BUDDY`,env:`BUDDY_WORKSPACE_ID`,pr:`BUDDY_EXECUTION_PULL_REQUEST_ID`},{name:`Buildkite`,constant:`BUILDKITE`,env:`BUILDKITE`,pr:{env:`BUILDKITE_PULL_REQUEST`,ne:`false`}},{name:`CircleCI`,constant:`CIRCLE`,env:`CIRCLECI`,pr:`CIRCLE_PULL_REQUEST`},{name:`Cirrus CI`,constant:`CIRRUS`,env:`CIRRUS_CI`,pr:`CIRRUS_PR`},{name:`Codefresh`,constant:`CODEFRESH`,env:`CF_BUILD_ID`,pr:{any:[`CF_PULL_REQUEST_NUMBER`,`CF_PULL_REQUEST_ID`]}},{name:`Codemagic`,constant:`CODEMAGIC`,env:`CM_BUILD_ID`,pr:`CM_PULL_REQUEST`},{name:`Codeship`,constant:`CODESHIP`,env:{CI_NAME:`codeship`}},{name:`Drone`,constant:`DRONE`,env:`DRONE`,pr:{DRONE_BUILD_EVENT:`pull_request`}},{name:`dsari`,constant:`DSARI`,env:`DSARI`},{name:`Earthly`,constant:`EARTHLY`,env:`EARTHLY_CI`},{name:`Expo Application Services`,constant:`EAS`,env:`EAS_BUILD`},{name:`Gerrit`,constant:`GERRIT`,env:`GERRIT_PROJECT`},{name:`Gitea Actions`,constant:`GITEA_ACTIONS`,env:`GITEA_ACTIONS`},{name:`GitHub Actions`,constant:`GITHUB_ACTIONS`,env:`GITHUB_ACTIONS`,pr:{GITHUB_EVENT_NAME:`pull_request`}},{name:`GitLab CI`,constant:`GITLAB`,env:`GITLAB_CI`,pr:`CI_MERGE_REQUEST_ID`},{name:`GoCD`,constant:`GOCD`,env:`GO_PIPELINE_LABEL`},{name:`Google Cloud Build`,constant:`GOOGLE_CLOUD_BUILD`,env:`BUILDER_OUTPUT`},{name:`Harness CI`,constant:`HARNESS`,env:`HARNESS_BUILD_ID`},{name:`Heroku`,constant:`HEROKU`,env:{env:`NODE`,includes:`/app/.heroku/node/bin/node`}},{name:`Hudson`,constant:`HUDSON`,env:`HUDSON_URL`},{name:`Jenkins`,constant:`JENKINS`,env:[`JENKINS_URL`,`BUILD_ID`],pr:{any:[`ghprbPullId`,`CHANGE_ID`]}},{name:`LayerCI`,constant:`LAYERCI`,env:`LAYERCI`,pr:`LAYERCI_PULL_REQUEST`},{name:`Magnum CI`,constant:`MAGNUM`,env:`MAGNUM`},{name:`Netlify CI`,constant:`NETLIFY`,env:`NETLIFY`,pr:{env:`PULL_REQUEST`,ne:`false`}},{name:`Nevercode`,constant:`NEVERCODE`,env:`NEVERCODE`,pr:{env:`NEVERCODE_PULL_REQUEST`,ne:`false`}},{name:`Prow`,constant:`PROW`,env:`PROW_JOB_ID`},{name:`ReleaseHub`,constant:`RELEASEHUB`,env:`RELEASE_BUILD_ID`},{name:`Render`,constant:`RENDER`,env:`RENDER`,pr:{IS_PULL_REQUEST:`true`}},{name:`Sail CI`,constant:`SAIL`,env:`SAILCI`,pr:`SAIL_PULL_REQUEST_NUMBER`},{name:`Screwdriver`,constant:`SCREWDRIVER`,env:`SCREWDRIVER`,pr:{env:`SD_PULL_REQUEST`,ne:`false`}},{name:`Semaphore`,constant:`SEMAPHORE`,env:`SEMAPHORE`,pr:`PULL_REQUEST_NUMBER`},{name:`Sourcehut`,constant:`SOURCEHUT`,env:{CI_NAME:`sourcehut`}},{name:`Strider CD`,constant:`STRIDER`,env:`STRIDER`},{name:`TaskCluster`,constant:`TASKCLUSTER`,env:[`TASK_ID`,`RUN_ID`]},{name:`TeamCity`,constant:`TEAMCITY`,env:`TEAMCITY_VERSION`},{name:`Travis CI`,constant:`TRAVIS`,env:`TRAVIS`,pr:{env:`TRAVIS_PULL_REQUEST`,ne:`false`}},{name:`Vela`,constant:`VELA`,env:`VELA`,pr:{VELA_PULL_REQUEST:`1`}},{name:`Vercel`,constant:`VERCEL`,env:{any:[`NOW_BUILDER`,`VERCEL`]},pr:`VERCEL_GIT_PULL_REQUEST_ID`},{name:`Visual Studio App Center`,constant:`APPCENTER`,env:`APPCENTER_BUILD_ID`},{name:`Woodpecker`,constant:`WOODPECKER`,env:{CI:`woodpecker`},pr:{CI_BUILD_EVENT:`pull_request`}},{name:`Xcode Cloud`,constant:`XCODE_CLOUD`,env:`CI_XCODE_PROJECT`,pr:`CI_PULL_REQUEST_NUMBER`},{name:`Xcode Server`,constant:`XCODE_SERVER`,env:`XCS`}]}),Sv=o(exports=>{let t=xv(),n=process.env;Object.defineProperty(exports,`_vendors`,{value:t.map(function(e){return e.constant})}),exports.name=null,exports.isPR=null,t.forEach(function(t){let i=Array.isArray(t.env)?t.env:[t.env],a=i.every(function(e){return r(e)});if(exports[t.constant]=a,a)switch(exports.name=t.name,typeof t.pr){case`string`:exports.isPR=!!n[t.pr];break;case`object`:`env`in t.pr?exports.isPR=t.pr.env in n&&n[t.pr.env]!==t.pr.ne:`any`in t.pr?exports.isPR=t.pr.any.some(function(e){return!!n[e]}):exports.isPR=r(t.pr);break;default:exports.isPR=null}}),exports.isCI=!!(n.CI!==`false`&&(n.BUILD_ID||n.BUILD_NUMBER||n.CI||n.CI_APP_ID||n.CI_BUILD_ID||n.CI_BUILD_NUMBER||n.CI_NAME||n.CONTINUOUS_INTEGRATION||n.RUN_ID||exports.name));function r(e){return typeof e==`string`?!!n[e]:`env`in e?n[e.env]&&n[e.env].includes(e.includes):`any`in e?e.any.some(function(e){return!!n[e]}):Object.keys(e).every(function(t){return n[t]===e[t]})}}),Cv=c(Sv());const wv=[`build`,`test`,`lint`,`typecheck`,`checktypes`,`check-types`,`type-check`,`check`];var Tv=class extends vv{trackCI(){return this.track({key:`ci`,value:Cv.name??`unknown`})}trackArgumentWorkspace(e){if(e)return this.trackCliArgument({argument:`workspace`,value:`provided`})}trackOptionTask(e){if(e)return this.trackCliOption({option:`task`,value:wv.includes(e)?e:`other`})}trackOptionFallback(e){if(e)return this.trackCliOption({option:`fallback`,value:e})}trackOptionDirectory(e){if(e)return this.trackCliOption({option:`directory`,value:`custom`})}trackOptionMaxBuffer(e){if(e!==void 0)return this.trackCliOption({option:`max_buffer`,value:e.toString()})}};const Ev={"create-turbo":bv,"turbo-ignore":Tv},Dv=`https://telemetry.vercel.com`;async function Ov({packageInfo:e,opts:t}){let n=Ev[e.name],r=await d_.fromDefaultConfig();if(r){r.showAlert();let i=new n({api:Dv,packageInfo:e,config:r,opts:t});return{telemetry:i}}return{telemetry:void 0}}var kv=c(wi());const Av=`status`,jv=[`enable`,`disable`,Av];function Mv(e){let t=e.telemetry?.config.isEnabled();Aa(`Status: ${t?kv.default.bold(kv.default.green(`Enabled`)):kv.default.bold(kv.default.red(`Disabled`))}`),Aa(),Aa(t?`Turborepo telemetry is completely anonymous. Thank you for participating!`:`You have opted-out of Turborepo anonymous telemetry. No data will be collected from your machine.`),Aa(`Learn more: https://turborepo.dev/docs/telemetry`)}function Nv(e,t){if(!t.telemetry){ja(`Telemetry could not be initialized`);return}e===`enable`?(t.telemetry.config.enable(),Ea(`Success!`)):e===`disable`&&(t.telemetry.config.disable(),Ea(`Success!`)),Aa(),Mv(t)}function Pv(e){e.command(`telemetry`).description(`Manage telemetry settings`).addArgument(new z(`[action]`,`Action to perform`).choices(jv).default(Av)).action(Nv)}var Fv=`turbo-ignore`,Iv=`2.11.3`,Lv=``,Rv=[],zv=`https://turborepo.dev`,Bv={url:`https://github.com/vercel/turborepo/issues`},Vv=`MIT`,Hv=`Jared Palmer`,Uv={type:`git`,url:`https://github.com/vercel/turborepo`,directory:`packages/turbo-ignore`},Wv=`dist/cli.js`,Gv=[`dist`],Kv={json5:`2.2.3`},qv={"@jest/globals":`30.3.0`,"@turbo/telemetry":`workspace:*`,"@turbo/test-utils":`workspace:*`,"@turbo/tsconfig":`workspace:*`,"@turbo/types":`workspace:*`,"@turbo/utils":`workspace:*`,"@types/node":`18.17.4`,commander:`11.0.0`,jest:`30.3.0`,tsdown:`0.12.0`,typescript:`npm:@typescript/typescript6@^6.0.2`,"typescript-7":`npm:typescript@7.0.2`},Jv={name:Fv,version:Iv,description:Lv,keywords:Rv,homepage:zv,bugs:Bv,license:Vv,author:Hv,repository:Uv,bin:Wv,files:Gv,dependencies:Kv,devDependencies:qv};const Yv=`≫ `;function Xv(...e){console.log(Yv,...e)}function Zv(...e){console.error(Yv,...e)}function Qv(...e){console.warn(Yv,...e)}function $v(...e){console.log(...e)}function ey(e){try{return(0,x.execFileSync)(`git`,[`cat-file`,`-t`,e],{stdio:`ignore`}),!0}catch{return!1}}function ty(e){return e.fallback?(Xv(`Falling back to ref ${e.fallback}`),{ref:e.fallback,type:`customFallback`}):null}function ny(e){let{workspace:t}=e;return process.env.VERCEL===`1`?process.env.VERCEL_GIT_PREVIOUS_SHA?ey(process.env.VERCEL_GIT_PREVIOUS_SHA)?(Xv(`Found previous deployment ("${process.env.VERCEL_GIT_PREVIOUS_SHA}") for "${t}"${process.env.VERCEL_GIT_COMMIT_REF?` on branch "${process.env.VERCEL_GIT_COMMIT_REF}"`:``}`),{ref:process.env.VERCEL_GIT_PREVIOUS_SHA,type:`previousDeploy`}):(Xv(`Previous deployment ("${process.env.VERCEL_GIT_PREVIOUS_SHA}") for "${t}"${process.env.VERCEL_GIT_COMMIT_REF?` on branch "${process.env.VERCEL_GIT_COMMIT_REF}"`:``} is unreachable.`),ty(e)):(Xv(`No previous deployments found for "${t}"${process.env.VERCEL_GIT_COMMIT_REF?` on branch "${process.env.VERCEL_GIT_COMMIT_REF}"`:``}`),ty(e)):e.fallback?ty(e):{ref:`HEAD^`,type:`headRelative`}}function ry(e){return e.task?(Xv(`Using "${e.task}" as the task from the arguments`),e.task):(Xv(`Using "build" as the task as it was unspecified`),`build`)}function iy(e){let{directory:t=process.cwd(),workspace:n}=e;if(n)return Xv(`Using "${n}" as workspace from arguments`),n;let r=m.default.join(t,`package.json`);try{let e=f.default.readFileSync(r,`utf8`),t=JSON.parse(e);return t.name?(Xv(`Inferred "${t.name}" as workspace from "package.json"`),t.name):(Zv(`"${r}" is missing the "name" field (required).`),null)}catch{return Zv(`"${r}" could not be found. turbo-ignore inferencing failed`),null}}function ay(e,t){let{turboVersion:n}=e;if(n)return Xv(`Using turbo version "${n}" from arguments`),n;let r=m.default.join(t,`package.json`);try{let e=f.default.readFileSync(r,`utf8`),t=JSON.parse(e),i=t.dependencies?.turbo,a=t.devDependencies?.turbo;if(n=i||a,n!==void 0){if(!n.startsWith(`catalog:`))return Xv(`Inferred turbo version "${n}" from "package.json"`),n;Qv("Cannot infer turbo version due to use of `catalog` protocol. Remove `turbo` from your PNPM catalog to ensure correct turbo version is used")}}catch{return Zv(`"${r}" could not be read. turbo-ignore turbo version inference failed`),null}let i=m.default.join(t,`turbo.json`);try{let e=f.default.readFileSync(i,`utf8`),t=(0,g.parse)(e);return`tasks`in t?(Xv(`Inferred turbo version ^2 based on "tasks" in "turbo.json"`),`^2`):`pipeline`in t?(Xv(`Inferred turbo version ^1 based on "pipeline" in "turbo.json"`),`^1`):null}catch{return Zv(`"${i}" could not be read. turbo-ignore turbo version inference failed`),null}}const oy={MISSING_LOCKFILE:{regex:[/reading (?:yarn.lock|package-lock.json|pnpm-lock.yaml):.*?no such file or directory/i],message:`turbo-ignore could not complete - no lockfile found, please commit one to your repository`},NO_PACKAGE_MANAGER:{regex:[/run failed: We did not detect an in-use package manager for your project/i,/run failed: We did not find a package manager specified in your root package.json/i],message:`turbo-ignore could not complete - no package manager detected, please commit a lockfile, or set "devEngines.packageManager" in your root "package.json"`},UNREACHABLE_PARENT:{regex:[/failed to resolve packages to run: commit HEAD\^ does not exist/i],message:`turbo-ignore could not complete - parent commit does not exist or is unreachable`},INVALID_COMPARISON:{regex:[/commit \S+ does not exist/i,/unknown revision/i,/invalid symmetric difference expression/i],message:`turbo-ignore could not complete - a ref or SHA is invalid. It could have been removed from the branch history via a force push, or this could be a shallow clone with insufficient history`}};function sy({err:e}){let t=Object.keys(oy).find(t=>{let{regex:n}=oy[t];return n.some(t=>t.test(e))});return t?{level:`warn`,message:oy[t].message,code:t}:{level:`error`,message:e,code:`UNKNOWN_ERROR`}}const cy=[`[skip ci]`,`[ci skip]`,`[no ci]`,`[skip vercel]`,`[vercel skip]`],ly=[`[vercel deploy]`,`[vercel build]`];function uy({workspace:e}){return[`[vercel skip ${e}]`]}function dy({workspace:e}){return[`[vercel deploy ${e}]`,`[vercel build ${e}]`]}const fy=/\[vercel only .+\]/;function py({workspace:e}){return[`[vercel only ${e}]`]}function my(){return process.env.VERCEL===`1`&&process.env.VERCEL_GIT_COMMIT_MESSAGE?process.env.VERCEL_GIT_COMMIT_MESSAGE:(0,x.execSync)(`git show -s --format=%B`).toString()}function hy({workspace:e}){let t=my(),n=e=>t.includes(e),r=fy.exec(t)?.[0];if(r)return py({workspace:e}).some(e=>e===r)?{result:`deploy`,scope:`workspace`,reason:`Found commit message: ${r}`}:{result:`skip`,scope:`workspace`,reason:`Found commit message: ${r}`};let i=dy({workspace:e}).find(n),a=uy({workspace:e}).find(n);if(i&&a)return{result:`conflict`,scope:`workspace`,reason:`Conflicting commit messages found: ${i} and ${a}`};if(i)return{result:`deploy`,scope:`workspace`,reason:`Found commit message: ${i}`};if(a)return{result:`skip`,scope:`workspace`,reason:`Found commit message: ${a}`};let o=ly.find(n),s=cy.find(n);return o&&s?{result:`conflict`,scope:`global`,reason:`Conflicting commit messages found: ${o} and ${s}`}:o?{result:`deploy`,scope:`global`,reason:`Found commit message: ${o}`}:s?{result:`skip`,scope:`global`,reason:`Found commit message: ${s}`}:{result:`continue`,scope:`global`,reason:`No deploy or skip string found in commit message.`}}function gy(e){e.telemetry?.trackOptionTask(e.task),e.telemetry?.trackOptionFallback(e.fallback),e.telemetry?.trackOptionDirectory(e.directory),e.telemetry?.trackOptionMaxBuffer(e.maxBuffer)}function _y(){return $v(`⏭ Ignoring the change`),process.exit(0)}function vy(){return $v(`✓ Proceeding with deployment`),process.exit(1)}function yy(e,t){t.telemetry?.trackCommandStatus({command:`ignore`,status:`start`}),t.telemetry?.trackArgumentWorkspace(e!==void 0),gy(t);let n={workspace:e,...t};if(process.env.VERCEL===`1`?(Qv(`\x1B[33m"turbo-ignore" is deprecated. Use Vercel's built-in project skipping instead.\x1B[39m`),Qv(`\x1B[33mLearn more: https://vercel.com/docs/monorepos#skipping-unaffected-projects\x1B[39m
|
|
107
|
+
`)}`}}};exports.RequestError=G;var ce=class extends G{constructor(e){super(`Redirected ${e.options.maxRedirects} times. Aborting.`,{},e),this.name=`MaxRedirectsError`,this.code=`ERR_TOO_MANY_REDIRECTS`}};exports.MaxRedirectsError=ce;var le=class extends G{constructor(e){super(`Response code ${e.statusCode} (${e.statusMessage})`,{},e.request),this.name=`HTTPError`,this.code=`ERR_NON_2XX_3XX_RESPONSE`}};exports.HTTPError=le;var ue=class extends G{constructor(e,t){super(e.message,e,t),this.name=`CacheError`,this.code=this.code===`ERR_GOT_REQUEST_ERROR`?`ERR_CACHE_ACCESS`:this.code}};exports.CacheError=ue;var de=class extends G{constructor(e,t){super(e.message,e,t),this.name=`UploadError`,this.code=this.code===`ERR_GOT_REQUEST_ERROR`?`ERR_UPLOAD`:this.code}};exports.UploadError=de;var fe=class extends G{constructor(e,t,n){super(e.message,e,n),this.name=`TimeoutError`,this.event=e.event,this.timings=t}};exports.TimeoutError=fe;var K=class extends G{constructor(e,t){super(e.message,e,t),this.name=`ReadError`,this.code=this.code===`ERR_GOT_REQUEST_ERROR`?`ERR_READING_RESPONSE_STREAM`:this.code}};exports.ReadError=K;var pe=class extends G{constructor(e){super(`Unsupported protocol "${e.url.protocol}"`,{},e),this.name=`UnsupportedProtocolError`,this.code=`ERR_UNSUPPORTED_PROTOCOL`}};exports.UnsupportedProtocolError=pe;let me=[`socket`,`connect`,`continue`,`information`,`upgrade`,`timeout`];var he=class extends n.Duplex{constructor(t,n={},i){super({autoDestroy:!1,highWaterMark:0}),this[M]=0,this[P]=0,this.requestInitialized=!1,this[ee]=new Set,this.redirects=[],this[L]=!1,this[R]=!1,this[B]=[],this.retryCount=0,this._progressCallbacks=[];let a=()=>this._unlockWrite(),s=()=>this._lockWrite();this.on(`pipe`,e=>{e.prependListener(`data`,a),e.on(`data`,s),e.prependListener(`end`,a),e.on(`end`,s)}),this.on(`unpipe`,e=>{e.off(`data`,a),e.off(`data`,s),e.off(`end`,a),e.off(`end`,s)}),this.on(`pipe`,e=>{e instanceof o.IncomingMessage&&(this.options.headers={...e.headers,...this.options.headers})});let{json:c,body:l,form:u}=n;if((c||l||u)&&this._lockWrite(),exports.kIsNormalizedAlready in n)this.options=n;else try{this.options=this.constructor.normalizeArguments(t,n,i)}catch(e){m.default.nodeStream(n.body)&&n.body.destroy(),this.destroy(e);return}(async()=>{var e;try{this.options.body instanceof r.ReadStream&&await W(this.options.body);let{url:t}=this.options;if(!t)throw TypeError("Missing `url` property");if(this.requestUrl=t.toString(),decodeURI(this.requestUrl),await this._finalizeBody(),await this._makeRequest(),this.destroyed){(e=this[k])==null||e.destroy();return}for(let e of this[B])e();this[B].length=0,this.requestInitialized=!0}catch(e){if(e instanceof G){this._beforeError(e);return}this.destroyed||this.destroy(e)}})()}static normalizeArguments(n,r,a){var o,s,c,d,f;let h=r;if(m.default.object(n)&&!m.default.urlInstance(n))r={...a,...n,...r};else{if(n&&r&&r.url!==void 0)throw TypeError("The `url` option is mutually exclusive with the `input` argument");r={...a,...r},n!==void 0&&(r.url=n),m.default.urlInstance(r.url)&&(r.url=new i.URL(r.url.toString()))}if(r.cache===!1&&(r.cache=void 0),r.dnsCache===!1&&(r.dnsCache=void 0),m.assert.any([m.default.string,m.default.undefined],r.method),m.assert.any([m.default.object,m.default.undefined],r.headers),m.assert.any([m.default.string,m.default.urlInstance,m.default.undefined],r.prefixUrl),m.assert.any([m.default.object,m.default.undefined],r.cookieJar),m.assert.any([m.default.object,m.default.string,m.default.undefined],r.searchParams),m.assert.any([m.default.object,m.default.string,m.default.undefined],r.cache),m.assert.any([m.default.object,m.default.number,m.default.undefined],r.timeout),m.assert.any([m.default.object,m.default.undefined],r.context),m.assert.any([m.default.object,m.default.undefined],r.hooks),m.assert.any([m.default.boolean,m.default.undefined],r.decompress),m.assert.any([m.default.boolean,m.default.undefined],r.ignoreInvalidCookies),m.assert.any([m.default.boolean,m.default.undefined],r.followRedirect),m.assert.any([m.default.number,m.default.undefined],r.maxRedirects),m.assert.any([m.default.boolean,m.default.undefined],r.throwHttpErrors),m.assert.any([m.default.boolean,m.default.undefined],r.http2),m.assert.any([m.default.boolean,m.default.undefined],r.allowGetBody),m.assert.any([m.default.string,m.default.undefined],r.localAddress),m.assert.any([C.isDnsLookupIpVersion,m.default.undefined],r.dnsLookupIpVersion),m.assert.any([m.default.object,m.default.undefined],r.https),m.assert.any([m.default.boolean,m.default.undefined],r.rejectUnauthorized),r.https&&(m.assert.any([m.default.boolean,m.default.undefined],r.https.rejectUnauthorized),m.assert.any([m.default.function_,m.default.undefined],r.https.checkServerIdentity),m.assert.any([m.default.string,m.default.object,m.default.array,m.default.undefined],r.https.certificateAuthority),m.assert.any([m.default.string,m.default.object,m.default.array,m.default.undefined],r.https.key),m.assert.any([m.default.string,m.default.object,m.default.array,m.default.undefined],r.https.certificate),m.assert.any([m.default.string,m.default.undefined],r.https.passphrase),m.assert.any([m.default.string,m.default.buffer,m.default.array,m.default.undefined],r.https.pfx)),m.assert.any([m.default.object,m.default.undefined],r.cacheOptions),m.default.string(r.method)?r.method=r.method.toUpperCase():r.method=`GET`,r.headers===a?.headers?r.headers={...r.headers}:r.headers=p({...a?.headers,...r.headers}),`slashes`in r)throw TypeError("The legacy `url.Url` has been deprecated. Use `URL` instead.");if(`auth`in r)throw TypeError("Parameter `auth` is deprecated. Use `username` / `password` instead.");if(`searchParams`in r&&r.searchParams&&r.searchParams!==a?.searchParams){let e;if(m.default.string(r.searchParams)||r.searchParams instanceof i.URLSearchParams)e=new i.URLSearchParams(r.searchParams);else for(let t in U(r.searchParams),e=new i.URLSearchParams,r.searchParams){let n=r.searchParams[t];n===null?e.append(t,``):n!==void 0&&e.append(t,n)}(o=a?.searchParams)==null||o.forEach((t,n)=>{e.has(n)||e.append(n,t)}),r.searchParams=e}if(r.username=(s=r.username)??``,r.password=(c=r.password)??``,m.default.undefined(r.prefixUrl)?r.prefixUrl=(d=a?.prefixUrl)??``:(r.prefixUrl=r.prefixUrl.toString(),r.prefixUrl!==``&&!r.prefixUrl.endsWith(`/`)&&(r.prefixUrl+=`/`)),m.default.string(r.url)){if(r.url.startsWith(`/`))throw Error("`input` must not start with a slash when using `prefixUrl`");r.url=b.default(r.prefixUrl+r.url,r)}else (m.default.undefined(r.url)&&r.prefixUrl!==``||r.protocol)&&(r.url=b.default(r.prefixUrl,r));if(r.url){`port`in r&&delete r.port;let{prefixUrl:e}=r;Object.defineProperty(r,`prefixUrl`,{set:t=>{let n=r.url;if(!n.href.startsWith(t))throw Error(`Cannot change \`prefixUrl\` from ${e} to ${t}: ${n.href}`);r.url=new i.URL(t+n.href.slice(e.length)),e=t},get:()=>e});let{protocol:t}=r.url;if(t===`unix:`&&(t=`http:`,r.url=new i.URL(`http://unix${r.url.pathname}${r.url.search}`)),r.searchParams&&(r.url.search=r.searchParams.toString()),t!==`http:`&&t!==`https:`)throw new pe(r);r.username===``?r.username=r.url.username:r.url.username=r.username,r.password===``?r.password=r.url.password:r.url.password=r.password}let{cookieJar:g}=r;if(g){let{setCookie:e,getCookieString:n}=g;m.assert.function_(e),m.assert.function_(n),e.length===4&&n.length===0&&(e=t.promisify(e.bind(r.cookieJar)),n=t.promisify(n.bind(r.cookieJar)),r.cookieJar={setCookie:e,getCookieString:n})}let{cache:_}=r;if(_&&(ae.has(_)||ae.set(_,new u((e,t)=>{let n=e[k](e,t);return m.default.promise(n)&&(n.once=(e,t)=>{if(e===`error`)n.catch(t);else if(e===`abort`)(async()=>{try{let e=await n;e.once(`abort`,t)}catch{}})();else throw Error(`Unknown HTTP2 promise event: ${e}`);return n}),n},_))),r.cacheOptions={...r.cacheOptions},r.dnsCache===!0)O||=new l.default,r.dnsCache=O;else if(!m.default.undefined(r.dnsCache)&&!r.dnsCache.lookup)throw TypeError(`Parameter \`dnsCache\` must be a CacheableLookup instance or a boolean, got ${m.default(r.dnsCache)}`);m.default.number(r.timeout)?r.timeout={request:r.timeout}:a&&r.timeout!==a.timeout?r.timeout={...a.timeout,...r.timeout}:r.timeout={...r.timeout},r.context||={};let v=r.hooks===a?.hooks;r.hooks={...r.hooks};for(let t of exports.knownHookEvents)if(t in r.hooks)if(m.default.array(r.hooks[t]))r.hooks[t]=[...r.hooks[t]];else throw TypeError(`Parameter \`${t}\` must be an Array, got ${m.default(r.hooks[t])}`);else r.hooks[t]=[];if(a&&!v)for(let t of exports.knownHookEvents){let e=a.hooks[t];e.length>0&&(r.hooks[t]=[...a.hooks[t],...r.hooks[t]])}if(`family`in r&&T.default(`"options.family" was never documented, please use "options.dnsLookupIpVersion"`),a?.https&&(r.https={...a.https,...r.https}),`rejectUnauthorized`in r&&T.default(`"options.rejectUnauthorized" is now deprecated, please use "options.https.rejectUnauthorized"`),`checkServerIdentity`in r&&T.default(`"options.checkServerIdentity" was never documented, please use "options.https.checkServerIdentity"`),`ca`in r&&T.default(`"options.ca" was never documented, please use "options.https.certificateAuthority"`),`key`in r&&T.default(`"options.key" was never documented, please use "options.https.key"`),`cert`in r&&T.default(`"options.cert" was never documented, please use "options.https.certificate"`),`passphrase`in r&&T.default(`"options.passphrase" was never documented, please use "options.https.passphrase"`),`pfx`in r&&T.default(`"options.pfx" was never documented, please use "options.https.pfx"`),`followRedirects`in r)throw TypeError("The `followRedirects` option does not exist. Use `followRedirect` instead.");if(r.agent){for(let e in r.agent)if(e!==`http`&&e!==`https`&&e!==`http2`)throw TypeError(`Expected the \`options.agent\` properties to be \`http\`, \`https\` or \`http2\`, got \`${e}\``)}return r.maxRedirects=(f=r.maxRedirects)??0,exports.setNonEnumerableProperties([a,h],r),E.default(r,a)}_lockWrite(){let e=()=>{throw TypeError(`The payload has been already provided`)};this.write=e,this.end=e}_unlockWrite(){this.write=super.write,this.end=super.end}async _finalizeBody(){let{options:t}=this,{headers:r}=t,a=!m.default.undefined(t.form),o=!m.default.undefined(t.json),s=!m.default.undefined(t.body),c=a||o||s,l=exports.withoutBody.has(t.method)&&!(t.method===`GET`&&t.allowGetBody);if(this._cannotHaveBody=l,c){if(l)throw TypeError(`The \`${t.method}\` method cannot be used with a body`);if([s,a,o].filter(e=>e).length>1)throw TypeError("The `body`, `json` and `form` options are mutually exclusive");if(s&&!(t.body instanceof n.Readable)&&!m.default.string(t.body)&&!m.default.buffer(t.body)&&!g.default(t.body))throw TypeError("The `body` option must be a stream.Readable, string or Buffer");if(a&&!m.default.object(t.form))throw TypeError("The `form` option must be an Object");{let e=!m.default.string(r[`content-type`]);s?(g.default(t.body)&&e&&(r[`content-type`]=`multipart/form-data; boundary=${t.body.getBoundary()}`),this[z]=t.body):a?(e&&(r[`content-type`]=`application/x-www-form-urlencoded`),this[z]=new i.URLSearchParams(t.form).toString()):(e&&(r[`content-type`]=`application/json`),this[z]=t.stringifyJson(t.json));let n=await h.default(this[z],t.headers);m.default.undefined(r[`content-length`])&&m.default.undefined(r[`transfer-encoding`])&&!l&&!m.default.undefined(n)&&(r[`content-length`]=String(n))}}else l?this._lockWrite():this._unlockWrite();this[N]=Number(r[`content-length`])||void 0}async _onResponseBase(e){let{options:t}=this,{url:n}=t;this[re]=e,t.decompress&&(e=d(e));let r=e.statusCode,o=e;o.statusMessage=o.statusMessage?o.statusMessage:a.STATUS_CODES[r],o.url=t.url.toString(),o.requestUrl=this.requestUrl,o.redirectUrls=this.redirects,o.request=this,o.isFromCache=e.fromCache||!1,o.ip=this.ip,o.retryCount=this.retryCount,this[ne]=o.isFromCache,this[j]=Number(e.headers[`content-length`])||void 0,this[A]=e,e.once(`end`,()=>{this[j]=this[M],this.emit(`downloadProgress`,this.downloadProgress)}),e.once(`error`,t=>{e.destroy(),this._beforeError(new K(t,this))}),e.once(`aborted`,()=>{this._beforeError(new K({name:`Error`,message:`The server aborted pending request`,code:`ECONNRESET`},this))}),this.emit(`downloadProgress`,this.downloadProgress);let s=e.headers[`set-cookie`];if(m.default.object(t.cookieJar)&&s){let e=s.map(async e=>t.cookieJar.setCookie(e,n.toString()));t.ignoreInvalidCookies&&(e=e.map(async e=>e.catch(()=>{})));try{await Promise.all(e)}catch(e){this._beforeError(e);return}}if(t.followRedirect&&e.headers.location&&oe.has(r)){e.resume(),this[k]&&(this[F](),delete this[k],this[te]());let a=r===303&&t.method!==`GET`&&t.method!==`HEAD`;if((a||!t.methodRewriting)&&(t.method=`GET`,`body`in t&&delete t.body,`json`in t&&delete t.json,`form`in t&&delete t.form,this[z]=void 0,delete t.headers[`content-length`]),this.redirects.length>=t.maxRedirects){this._beforeError(new ce(this));return}try{let r=Buffer.from(e.headers.location,`binary`).toString(),a=new i.URL(r,n),s=a.toString();decodeURI(s);function c(e){return e.protocol===`unix:`||e.hostname===`unix`}if(!c(n)&&c(a)){this._beforeError(new G(`Cannot redirect to UNIX socket`,{},this));return}a.hostname!==n.hostname||a.port!==n.port?(`host`in t.headers&&delete t.headers.host,`cookie`in t.headers&&delete t.headers.cookie,`authorization`in t.headers&&delete t.headers.authorization,(t.username||t.password)&&(t.username=``,t.password=``)):(a.username=t.username,a.password=t.password),this.redirects.push(s),t.url=a;for(let e of t.hooks.beforeRedirect)await e(t,o);this.emit(`redirect`,o,t),await this._makeRequest()}catch(e){this._beforeError(e);return}return}if(t.isStream&&t.throwHttpErrors&&!w.isResponseOk(o)){this._beforeError(new le(o));return}e.on(`readable`,()=>{this[R]&&this._read()}),this.on(`resume`,()=>{e.resume()}),this.on(`pause`,()=>{e.pause()}),e.once(`end`,()=>{this.push(null)}),this.emit(`response`,e);for(let n of this[ee]){if(n.headersSent)continue;for(let r in e.headers){let i=t.decompress?r!==`content-encoding`:!0,a=e.headers[r];i&&n.setHeader(r,a)}n.statusCode=r}}async _onResponse(e){try{await this._onResponseBase(e)}catch(e){this._beforeError(e)}}_onRequest(e){let{options:t}=this,{timeout:n,url:r}=t;c.default(e),this[F]=v.default(e,n,r);let i=t.cache?`cacheableResponse`:`response`;e.once(i,e=>{this._onResponse(e)}),e.once(`error`,t=>{var n;e.destroy(),(n=e.res)==null||n.removeAllListeners(`end`),t=t instanceof v.TimeoutError?new fe(t,this.timings,this):new G(t.message,t,this),this._beforeError(t)}),this[te]=_.default(e,this,me),this[k]=e,this.emit(`uploadProgress`,this.uploadProgress);let a=this[z],o=this.redirects.length===0?this:e;m.default.nodeStream(a)?(a.pipe(o),a.once(`error`,e=>{this._beforeError(new de(e,this))})):(this._unlockWrite(),m.default.undefined(a)?(this._cannotHaveBody||this._noPipe)&&(o.end(),this._lockWrite()):(this._writeRequest(a,void 0,()=>{}),o.end(),this._lockWrite())),this.emit(`request`,e)}async _createCacheableRequest(e,t){return new Promise((n,r)=>{Object.assign(t,y.default(e)),delete t.url;let i,a=ae.get(t.cache)(t,async e=>{e._readableState.autoDestroy=!1,i&&(await i).emit(`cacheableResponse`,e),n(e)});t.url=e,a.once(`error`,r),a.once(`request`,async e=>{i=e,n(i)})})}async _makeRequest(){var e,t,n,r,i;let{options:o}=this,{headers:c}=o;for(let e in c)if(m.default.undefined(c[e]))delete c[e];else if(m.default.null_(c[e]))throw TypeError(`Use \`undefined\` instead of \`null\` to delete the \`${e}\` header`);if(o.decompress&&m.default.undefined(c[`accept-encoding`])&&(c[`accept-encoding`]=H?`gzip, deflate, br`:`gzip, deflate`),o.cookieJar){let e=await o.cookieJar.getCookieString(o.url.toString());m.default.nonEmptyString(e)&&(o.headers.cookie=e)}for(let e of o.hooks.beforeRequest){let t=await e(o);if(!m.default.undefined(t)){o.request=()=>t;break}}o.body&&this[z]!==o.body&&(this[z]=o.body);let{agent:l,request:d,timeout:p,url:h}=o;if(o.dnsCache&&!(`lookup`in o)&&(o.lookup=o.dnsCache.lookup),h.hostname===`unix`){let e=/(?<socketPath>.+?):(?<path>.+)/.exec(`${h.pathname}${h.search}`);if(e?.groups){let{socketPath:t,path:n}=e.groups;Object.assign(o,{socketPath:t,path:n,host:``})}}let g=h.protocol===`https:`,_;_=o.http2?f.auto:g?s.request:a.request;let v=(e=o.request)??_,y=o.cache?this._createCacheableRequest:v;l&&!o.http2&&(o.agent=l[g?`https`:`http`]),o[k]=v,delete o.request,delete o.timeout;let b=o;if(b.shared=(t=o.cacheOptions)?.shared,b.cacheHeuristic=(n=o.cacheOptions)?.cacheHeuristic,b.immutableMinTimeToLive=(r=o.cacheOptions)?.immutableMinTimeToLive,b.ignoreCargoCult=(i=o.cacheOptions)?.ignoreCargoCult,o.dnsLookupIpVersion!==void 0)try{b.family=C.dnsLookupIpVersionToFamily(o.dnsLookupIpVersion)}catch{throw Error("Invalid `dnsLookupIpVersion` option value")}o.https&&(`rejectUnauthorized`in o.https&&(b.rejectUnauthorized=o.https.rejectUnauthorized),o.https.checkServerIdentity&&(b.checkServerIdentity=o.https.checkServerIdentity),o.https.certificateAuthority&&(b.ca=o.https.certificateAuthority),o.https.certificate&&(b.cert=o.https.certificate),o.https.key&&(b.key=o.https.key),o.https.passphrase&&(b.passphrase=o.https.passphrase),o.https.pfx&&(b.pfx=o.https.pfx));try{let e=await y(h,b);m.default.undefined(e)&&(e=_(h,b)),o.request=d,o.timeout=p,o.agent=l,o.https&&(`rejectUnauthorized`in o.https&&delete b.rejectUnauthorized,o.https.checkServerIdentity&&delete b.checkServerIdentity,o.https.certificateAuthority&&delete b.ca,o.https.certificate&&delete b.cert,o.https.key&&delete b.key,o.https.passphrase&&delete b.passphrase,o.https.pfx&&delete b.pfx),ie(e)?this._onRequest(e):this.writable?(this.once(`finish`,()=>{this._onResponse(e)}),this._unlockWrite(),this.end(),this._lockWrite()):this._onResponse(e)}catch(e){throw e instanceof u.CacheError?new ue(e,this):new G(e.message,e,this)}}async _error(e){try{for(let t of this.options.hooks.beforeError)e=await t(e)}catch(t){e=new G(t.message,t,this)}this.destroy(e)}_beforeError(e){if(this[L])return;let{options:t}=this,n=this.retryCount+1;this[L]=!0,e instanceof G||(e=new G(e.message,e,this));let r=e,{response:i}=r;(async()=>{if(i&&!i.body){i.setEncoding(this._readableState.encoding);try{i.rawBody=await S.default(i),i.body=i.rawBody.toString()}catch{}}if(this.listenerCount(`retry`)!==0){let a;try{let e;i&&`retry-after`in i.headers&&(e=Number(i.headers[`retry-after`]),Number.isNaN(e)?(e=Date.parse(i.headers[`retry-after`])-Date.now(),e<=0&&(e=1)):e*=1e3),a=await t.retry.calculateDelay({attemptCount:n,retryOptions:t.retry,error:r,retryAfter:e,computedValue:D.default({attemptCount:n,retryOptions:t.retry,error:r,retryAfter:e,computedValue:0})})}catch(e){this._error(new G(e.message,e,this));return}if(a){let t=async()=>{try{for(let e of this.options.hooks.beforeRetry)await e(this.options,r,n)}catch(t){this._error(new G(t.message,e,this));return}this.destroyed||(this.destroy(),this.emit(`retry`,n,e))};this[V]=setTimeout(t,a);return}}this._error(r)})()}_read(){this[R]=!0;let e=this[A];if(e&&!this[L]){e.readableLength&&(this[R]=!1);let t;for(;(t=e.read())!==null;){this[M]+=t.length,this[I]=!0;let e=this.downloadProgress;e.percent<1&&this.emit(`downloadProgress`,e),this.push(t)}}}_write(e,t,n){let r=()=>{this._writeRequest(e,t,n)};this.requestInitialized?r():this[B].push(r)}_writeRequest(e,t,n){this[k].destroyed||(this._progressCallbacks.push(()=>{this[P]+=Buffer.byteLength(e,t);let n=this.uploadProgress;n.percent<1&&this.emit(`uploadProgress`,n)}),this[k].write(e,t,e=>{!e&&this._progressCallbacks.length>0&&this._progressCallbacks.shift()(),n(e)}))}_final(e){let t=()=>{for(;this._progressCallbacks.length!==0;)this._progressCallbacks.shift()();if(!(k in this)){e();return}if(this[k].destroyed){e();return}this[k].end(t=>{t||(this[N]=this[P],this.emit(`uploadProgress`,this.uploadProgress),this[k].emit(`upload-complete`)),e(t)})};this.requestInitialized?t():this[B].push(t)}_destroy(e,t){var n;this[L]=!0,clearTimeout(this[V]),k in this&&(this[F](),(n=this[A])?.complete||this[k].destroy()),e!==null&&!m.default.undefined(e)&&!(e instanceof G)&&(e=new G(e.message,e,this)),t(e)}get _isAboutToError(){return this[L]}get ip(){var e;return(e=this.socket)?.remoteAddress}get aborted(){var e,t,n;return((t=(e=this[k])?.destroyed)??this.destroyed)&&!(n=this[re])?.complete}get socket(){var e,t;return(t=(e=this[k])?.socket)??void 0}get downloadProgress(){let e;return e=this[j]?this[M]/this[j]:this[j]===this[M]?1:0,{percent:e,transferred:this[M],total:this[j]}}get uploadProgress(){let e;return e=this[N]?this[P]/this[N]:this[N]===this[P]?1:0,{percent:e,transferred:this[P],total:this[N]}}get timings(){var e;return(e=this[k])?.timings}get isFromCache(){return this[ne]}pipe(e,t){if(this[I])throw Error(`Failed to pipe. The response has been emitted already.`);return e instanceof o.ServerResponse&&this[ee].add(e),super.pipe(e,t)}unpipe(e){return e instanceof o.ServerResponse&&this[ee].delete(e),super.unpipe(e),this}};exports.default=he}),sv=o(exports=>{var t=Object.create?function(e,t,n,r){r===void 0&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]},n=function(e,n){for(var r in e)r!==`default`&&!Object.prototype.hasOwnProperty.call(n,r)&&t(n,e,r)};Object.defineProperty(exports,`__esModule`,{value:!0}),exports.CancelError=exports.ParseError=void 0;let r=ov();var i=class extends r.RequestError{constructor(e,t){let{options:n}=t.request;super(`${e.message} in "${n.url.toString()}"`,e,t.request),this.name=`ParseError`,this.code=this.code===`ERR_GOT_REQUEST_ERROR`?`ERR_BODY_PARSE_FAILURE`:this.code}};exports.ParseError=i;var a=class extends r.RequestError{constructor(e){super(`Promise was canceled`,{},e),this.name=`CancelError`,this.code=`ERR_CANCELED`}get isCanceled(){return!0}};exports.CancelError=a,n(ov(),exports)}),cv=o(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0});let t=sv(),n=(e,n,r,i)=>{let{rawBody:a}=e;try{if(n===`text`)return a.toString(i);if(n===`json`)return a.length===0?``:r(a.toString());if(n===`buffer`)return a;throw new t.ParseError({message:`Unknown body type '${n}'`,name:`Error`},e)}catch(n){throw new t.ParseError(n,e)}};exports.default=n}),lv=o(exports=>{var t=Object.create?function(e,t,n,r){r===void 0&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]},n=function(e,n){for(var r in e)r!==`default`&&!Object.prototype.hasOwnProperty.call(n,r)&&t(n,e,r)};Object.defineProperty(exports,`__esModule`,{value:!0});let r=require(`events`),i=f_(),a=p_(),o=sv(),s=cv(),c=ov(),l=J_(),u=ev(),d=nv(),f=[`request`,`response`,`redirect`,`uploadProgress`,`downloadProgress`];function p(e){let t,n,m=new r.EventEmitter,h=new a((r,a,g)=>{let _=v=>{let y=new c.default(void 0,e);y.retryCount=v,y._noPipe=!0,g(()=>y.destroy()),g.shouldReject=!1,g(()=>a(new o.CancelError(y))),t=y,y.once(`response`,async e=>{var t;if(e.retryCount=v,e.request.aborted)return;let i;try{i=await u.default(y),e.rawBody=i}catch{return}if(y._isAboutToError)return;let a=((t=e.headers[`content-encoding`])??``).toLowerCase(),l=[`gzip`,`deflate`,`br`].includes(a),{options:f}=y;if(l&&!f.decompress)e.body=i;else try{e.body=s.default(e,f.responseType,f.parseJson,f.encoding)}catch(t){if(e.body=i.toString(),d.isResponseOk(e)){y._beforeError(t);return}}try{for(let[t,n]of f.hooks.afterResponse.entries())e=await n(e,async e=>{let n=c.default.normalizeArguments(void 0,{...e,retry:{calculateDelay:()=>0},throwHttpErrors:!1,resolveBodyOnly:!1},f);n.hooks.afterResponse=n.hooks.afterResponse.slice(0,t);for(let e of n.hooks.beforeRetry)await e(n);let r=p(n);return g(()=>{r.catch(()=>{}),r.cancel()}),r})}catch(e){y._beforeError(new o.RequestError(e.message,e,y));return}if(n=e,!d.isResponseOk(e)){y._beforeError(new o.HTTPError(e));return}y.destroy(),r(y.options.resolveBodyOnly?e.body:e)});let b=e=>{if(h.isCanceled)return;let{options:t}=y;if(e instanceof o.HTTPError&&!t.throwHttpErrors){let{response:t}=e;r(y.options.resolveBodyOnly?t.body:t);return}a(e)};y.once(`error`,b);let x=y.options.body;y.once(`retry`,(e,t)=>{var n,r;if(x===(n=t.request)?.options.body&&i.default.nodeStream((r=t.request)?.options.body)){b(t);return}_(e)}),l.default(y,m,f)};_(0)});h.on=(e,t)=>(m.on(e,t),h);let g=e=>{let t=(async()=>{await h;let{options:t}=n.request;return s.default(n,e,t.parseJson,t.encoding)})();return Object.defineProperties(t,Object.getOwnPropertyDescriptors(h)),t};return h.json=()=>{let{headers:e}=t.options;return!t.writableFinished&&e.accept===void 0&&(e.accept=`application/json`),g(`json`)},h.buffer=()=>g(`buffer`),h.text=()=>g(`text`),h}exports.default=p,n(sv(),exports)}),uv=o(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0});let t=sv();function n(e,...n){let r=(async()=>{if(e instanceof t.RequestError)try{for(let t of n)if(t)for(let n of t)e=await n(e)}catch(t){e=t}throw e})(),i=()=>r;return r.json=i,r.text=i,r.buffer=i,r.on=i,r}exports.default=n}),dv=o(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0});let t=f_();function n(e){for(let r of Object.values(e))(t.default.plainObject(r)||t.default.array(r))&&n(r);return Object.freeze(e)}exports.default=n}),fv=o(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0})}),pv=o(exports=>{var t=Object.create?function(e,t,n,r){r===void 0&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]},n=function(e,n){for(var r in e)r!==`default`&&!Object.prototype.hasOwnProperty.call(n,r)&&t(n,e,r)};Object.defineProperty(exports,`__esModule`,{value:!0}),exports.defaultHandler=void 0;let r=f_(),i=lv(),a=uv(),o=ov(),s=dv(),c={RequestError:i.RequestError,CacheError:i.CacheError,ReadError:i.ReadError,HTTPError:i.HTTPError,MaxRedirectsError:i.MaxRedirectsError,TimeoutError:i.TimeoutError,ParseError:i.ParseError,CancelError:i.CancelError,UnsupportedProtocolError:i.UnsupportedProtocolError,UploadError:i.UploadError},l=async e=>new Promise(t=>{setTimeout(t,e)}),{normalizeArguments:u}=o.default,d=(...e)=>{let t;for(let n of e)t=u(void 0,n,t);return t},f=e=>e.isStream?new o.default(void 0,e):i.default(e),p=e=>`defaults`in e&&`options`in e.defaults,m=[`get`,`post`,`put`,`patch`,`head`,`delete`];exports.defaultHandler=(e,t)=>t(e);let h=(e,t)=>{if(e)for(let n of e)n(t)},g=t=>{t._rawHandlers=t.handlers,t.handlers=t.handlers.map(e=>(t,n)=>{let r,i=e(t,e=>(r=n(e),r));if(i!==r&&!t.isStream&&r){let e=i,{then:t,catch:n,finally:a}=e;Object.setPrototypeOf(e,Object.getPrototypeOf(r)),Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)),e.then=t,e.catch=n,e.finally=a}return i});let n=(e,n={},s)=>{var c,l;let d=0,p=e=>t.handlers[d++](e,d===t.handlers.length?f:p);if(r.default.plainObject(e)){let t={...e,...n};o.setNonEnumerableProperties([e,n],t),n=t,e=void 0}try{let r;try{h(t.options.hooks.init,n),h((c=n.hooks)?.init,n)}catch(e){r=e}let a=u(e,n,s??t.options);if(a[o.kIsNormalizedAlready]=!0,r)throw new i.RequestError(r.message,r,a);return p(a)}catch(e){if(n.isStream)throw e;return a.default(e,t.options.hooks.beforeError,(l=n.hooks)?.beforeError)}};n.extend=(...n)=>{let r=[t.options],i=[...t._rawHandlers],a;for(let e of n)p(e)?(r.push(e.defaults.options),i.push(...e.defaults._rawHandlers),a=e.defaults.mutableDefaults):(r.push(e),`handlers`in e&&i.push(...e.handlers),a=e.mutableDefaults);return i=i.filter(t=>t!==exports.defaultHandler),i.length===0&&i.push(exports.defaultHandler),g({options:d(...r),handlers:i,mutableDefaults:!!a})};let _=async function*(e,i){let a=u(e,i,t.options);a.resolveBodyOnly=!1;let o=a.pagination;if(!r.default.object(o))throw TypeError("`options.pagination` must be implemented");let s=[],{countLimit:c}=o,d=0;for(;d<o.requestLimit;){d!==0&&await l(o.backoff);let e=await n(void 0,void 0,a),t=await o.transform(e),r=[];for(let e of t)if(o.filter(e,s,r)&&(!o.shouldContinue(e,s,r)||(yield e,o.stackAllItems&&s.push(e),r.push(e),--c<=0)))return;let i=o.paginate(e,s,r);if(i===!1)return;i===e.request.options?a=e.request.options:i!==void 0&&(a=u(void 0,i,a)),d++}};n.paginate=_,n.paginate.all=async(e,t)=>{let n=[];for await(let r of _(e,t))n.push(r);return n},n.paginate.each=_,n.stream=(e,t)=>n(e,{...t,isStream:!0});for(let e of m)n[e]=(t,r)=>n(t,{...r,method:e}),n.stream[e]=(t,r)=>n(t,{...r,method:e,isStream:!0});return Object.assign(n,c),Object.defineProperty(n,`defaults`,{value:t.mutableDefaults?t:s.default(t),writable:t.mutableDefaults,configurable:t.mutableDefaults,enumerable:!0}),n.mergeOptions=d,n};exports.default=g,n(fv(),exports)}),mv=o((exports,t)=>{var n=Object.create?function(e,t,n,r){r===void 0&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]},r=function(e,t){for(var r in e)r!==`default`&&!Object.prototype.hasOwnProperty.call(t,r)&&n(t,e,r)};Object.defineProperty(exports,`__esModule`,{value:!0});let i=require(`url`),a=pv(),o={options:{method:`GET`,retry:{limit:2,methods:[`GET`,`PUT`,`HEAD`,`DELETE`,`OPTIONS`,`TRACE`],statusCodes:[408,413,429,500,502,503,504,521,522,524],errorCodes:[`ETIMEDOUT`,`ECONNRESET`,`EADDRINUSE`,`ECONNREFUSED`,`EPIPE`,`ENOTFOUND`,`ENETUNREACH`,`EAI_AGAIN`],maxRetryAfter:void 0,calculateDelay:({computedValue:e})=>e},timeout:{},headers:{"user-agent":`got (https://github.com/sindresorhus/got)`},hooks:{init:[],beforeRequest:[],beforeRedirect:[],beforeRetry:[],beforeError:[],afterResponse:[]},cache:void 0,dnsCache:void 0,decompress:!0,throwHttpErrors:!0,followRedirect:!0,isStream:!1,responseType:`text`,resolveBodyOnly:!1,maxRedirects:10,prefixUrl:``,methodRewriting:!0,ignoreInvalidCookies:!1,context:{},http2:!1,allowGetBody:!1,https:void 0,pagination:{transform:e=>e.request.options.responseType===`json`?e.body:JSON.parse(e.body),paginate:e=>{if(!Reflect.has(e.headers,`link`))return!1;let t=e.headers.link.split(`,`),n;for(let e of t){let t=e.split(`;`);if(t[1].includes(`next`)){n=t[0].trimStart().trim(),n=n.slice(1,-1);break}}if(n){let e={url:new i.URL(n)};return e}return!1},filter:()=>!0,shouldContinue:()=>!0,countLimit:1/0,backoff:0,requestLimit:1e4,stackAllItems:!0},parseJson:e=>JSON.parse(e),stringifyJson:e=>JSON.stringify(e),cacheOptions:{}},handlers:[a.defaultHandler],mutableDefaults:!1},s=a.default(o);exports.default=s,t.exports=s,t.exports.default=s,t.exports.__esModule=!0,r(pv(),exports),r(lv(),exports)}),hv=c(mv());const gv=20,_v=`/api/turborepo/v1/events`;var vv=class{api;packageInfo;batchSize=gv;timeout=250;sessionId=(0,p.randomUUID)();eventBatches=[];events=[];config;constructor({api:e,packageInfo:t,config:n,opts:r}){let i=new URL(_v,e);this.api=i.toString(),this.packageInfo=t,this.config=n,r?.timeout&&(this.timeout=r.timeout),r?.batchSize&&(this.batchSize=r.batchSize)}hasPendingEvents(){return this.events.length!==0}async waitForFlush(){await Promise.all(this.eventBatches)}flushEvents(){let e=this.events.splice(0,this.batchSize);this.config.isEnabled()&&this.eventBatches.push(hv.default.post(this.api,{timeout:this.timeout,json:e,headers:{"x-turbo-telemetry-id":this.config.id,"x-turbo-session-id":this.sessionId,"User-Agent":i_.buildUserAgent(this.packageInfo)}}))}track({key:e,value:t,parentId:n,isSensitive:r}){let i={id:(0,p.randomUUID)(),key:e,value:r?this.config.oneWayHash(t):t,package_name:this.packageInfo.name,package_version:this.packageInfo.version,parent_id:n};return d_.isDebug()&&(Aa(),Ea(`[telemetry event]`),Oa(JSON.stringify(i,null,2)),Aa()),this.config.isEnabled()&&(this.events.push({package:i}),this.events.length>=this.batchSize&&this.flushEvents()),i}async close(){for(;this.hasPendingEvents();)this.flushEvents();try{await this.waitForFlush()}catch{}}trackCliOption({option:e,value:t}){return this.track({key:`option:${e}`,value:t})}trackCliArgument({argument:e,value:t}){return this.track({key:`argument:${e}`,value:t})}trackCliCommand({command:e,value:t}){return this.track({key:`command:${e}`,value:t})}trackCommandStatus({command:e,status:t}){return this.trackCliCommand({command:e,value:t})}trackCommandWarning(e){return this.track({key:`warning`,value:e})}trackCommandError(e){return this.track({key:`error`,value:e})}};function yv(e){if(e===`default`)return`default`;try{let t=new URL(e);return t.hostname===`github.com`?`github_url`:`other_url`}catch{return`official`}}var bv=class extends vv{trackOptionExample(e){if(e)return this.trackCliOption({option:`example`,value:yv(e)})}trackOptionPackageManager(e){if(e)return this.trackCliOption({option:`package_manager`,value:e})}trackOptionSkipInstall(e){if(e)return this.trackCliOption({option:`skip_install`,value:e.toString()})}trackOptionSkipTransforms(e){if(e)return this.trackCliOption({option:`skip_transforms`,value:e.toString()})}trackOptionTurboVersion(e){if(e)return this.trackCliOption({option:`turbo_version`,value:e})}trackOptionExamplePath(e){if(e)return this.trackCliOption({option:`example_path`,value:`provided`})}trackArgumentDirectory(e){if(e)return this.trackCliArgument({argument:`project_directory`,value:`provided`})}trackArgumentPackageManager(e){if(e)return this.trackCliArgument({argument:`package_manager`,value:e})}},xv=o((exports,t)=>{t.exports=[{name:`Agola CI`,constant:`AGOLA`,env:`AGOLA_GIT_REF`,pr:`AGOLA_PULL_REQUEST_ID`},{name:`Appcircle`,constant:`APPCIRCLE`,env:`AC_APPCIRCLE`},{name:`AppVeyor`,constant:`APPVEYOR`,env:`APPVEYOR`,pr:`APPVEYOR_PULL_REQUEST_NUMBER`},{name:`AWS CodeBuild`,constant:`CODEBUILD`,env:`CODEBUILD_BUILD_ARN`},{name:`Azure Pipelines`,constant:`AZURE_PIPELINES`,env:`TF_BUILD`,pr:{BUILD_REASON:`PullRequest`}},{name:`Bamboo`,constant:`BAMBOO`,env:`bamboo_planKey`},{name:`Bitbucket Pipelines`,constant:`BITBUCKET`,env:`BITBUCKET_COMMIT`,pr:`BITBUCKET_PR_ID`},{name:`Bitrise`,constant:`BITRISE`,env:`BITRISE_IO`,pr:`BITRISE_PULL_REQUEST`},{name:`Buddy`,constant:`BUDDY`,env:`BUDDY_WORKSPACE_ID`,pr:`BUDDY_EXECUTION_PULL_REQUEST_ID`},{name:`Buildkite`,constant:`BUILDKITE`,env:`BUILDKITE`,pr:{env:`BUILDKITE_PULL_REQUEST`,ne:`false`}},{name:`CircleCI`,constant:`CIRCLE`,env:`CIRCLECI`,pr:`CIRCLE_PULL_REQUEST`},{name:`Cirrus CI`,constant:`CIRRUS`,env:`CIRRUS_CI`,pr:`CIRRUS_PR`},{name:`Codefresh`,constant:`CODEFRESH`,env:`CF_BUILD_ID`,pr:{any:[`CF_PULL_REQUEST_NUMBER`,`CF_PULL_REQUEST_ID`]}},{name:`Codemagic`,constant:`CODEMAGIC`,env:`CM_BUILD_ID`,pr:`CM_PULL_REQUEST`},{name:`Codeship`,constant:`CODESHIP`,env:{CI_NAME:`codeship`}},{name:`Drone`,constant:`DRONE`,env:`DRONE`,pr:{DRONE_BUILD_EVENT:`pull_request`}},{name:`dsari`,constant:`DSARI`,env:`DSARI`},{name:`Earthly`,constant:`EARTHLY`,env:`EARTHLY_CI`},{name:`Expo Application Services`,constant:`EAS`,env:`EAS_BUILD`},{name:`Gerrit`,constant:`GERRIT`,env:`GERRIT_PROJECT`},{name:`Gitea Actions`,constant:`GITEA_ACTIONS`,env:`GITEA_ACTIONS`},{name:`GitHub Actions`,constant:`GITHUB_ACTIONS`,env:`GITHUB_ACTIONS`,pr:{GITHUB_EVENT_NAME:`pull_request`}},{name:`GitLab CI`,constant:`GITLAB`,env:`GITLAB_CI`,pr:`CI_MERGE_REQUEST_ID`},{name:`GoCD`,constant:`GOCD`,env:`GO_PIPELINE_LABEL`},{name:`Google Cloud Build`,constant:`GOOGLE_CLOUD_BUILD`,env:`BUILDER_OUTPUT`},{name:`Harness CI`,constant:`HARNESS`,env:`HARNESS_BUILD_ID`},{name:`Heroku`,constant:`HEROKU`,env:{env:`NODE`,includes:`/app/.heroku/node/bin/node`}},{name:`Hudson`,constant:`HUDSON`,env:`HUDSON_URL`},{name:`Jenkins`,constant:`JENKINS`,env:[`JENKINS_URL`,`BUILD_ID`],pr:{any:[`ghprbPullId`,`CHANGE_ID`]}},{name:`LayerCI`,constant:`LAYERCI`,env:`LAYERCI`,pr:`LAYERCI_PULL_REQUEST`},{name:`Magnum CI`,constant:`MAGNUM`,env:`MAGNUM`},{name:`Netlify CI`,constant:`NETLIFY`,env:`NETLIFY`,pr:{env:`PULL_REQUEST`,ne:`false`}},{name:`Nevercode`,constant:`NEVERCODE`,env:`NEVERCODE`,pr:{env:`NEVERCODE_PULL_REQUEST`,ne:`false`}},{name:`Prow`,constant:`PROW`,env:`PROW_JOB_ID`},{name:`ReleaseHub`,constant:`RELEASEHUB`,env:`RELEASE_BUILD_ID`},{name:`Render`,constant:`RENDER`,env:`RENDER`,pr:{IS_PULL_REQUEST:`true`}},{name:`Sail CI`,constant:`SAIL`,env:`SAILCI`,pr:`SAIL_PULL_REQUEST_NUMBER`},{name:`Screwdriver`,constant:`SCREWDRIVER`,env:`SCREWDRIVER`,pr:{env:`SD_PULL_REQUEST`,ne:`false`}},{name:`Semaphore`,constant:`SEMAPHORE`,env:`SEMAPHORE`,pr:`PULL_REQUEST_NUMBER`},{name:`Sourcehut`,constant:`SOURCEHUT`,env:{CI_NAME:`sourcehut`}},{name:`Strider CD`,constant:`STRIDER`,env:`STRIDER`},{name:`TaskCluster`,constant:`TASKCLUSTER`,env:[`TASK_ID`,`RUN_ID`]},{name:`TeamCity`,constant:`TEAMCITY`,env:`TEAMCITY_VERSION`},{name:`Travis CI`,constant:`TRAVIS`,env:`TRAVIS`,pr:{env:`TRAVIS_PULL_REQUEST`,ne:`false`}},{name:`Vela`,constant:`VELA`,env:`VELA`,pr:{VELA_PULL_REQUEST:`1`}},{name:`Vercel`,constant:`VERCEL`,env:{any:[`NOW_BUILDER`,`VERCEL`]},pr:`VERCEL_GIT_PULL_REQUEST_ID`},{name:`Visual Studio App Center`,constant:`APPCENTER`,env:`APPCENTER_BUILD_ID`},{name:`Woodpecker`,constant:`WOODPECKER`,env:{CI:`woodpecker`},pr:{CI_BUILD_EVENT:`pull_request`}},{name:`Xcode Cloud`,constant:`XCODE_CLOUD`,env:`CI_XCODE_PROJECT`,pr:`CI_PULL_REQUEST_NUMBER`},{name:`Xcode Server`,constant:`XCODE_SERVER`,env:`XCS`}]}),Sv=o(exports=>{let t=xv(),n=process.env;Object.defineProperty(exports,`_vendors`,{value:t.map(function(e){return e.constant})}),exports.name=null,exports.isPR=null,t.forEach(function(t){let i=Array.isArray(t.env)?t.env:[t.env],a=i.every(function(e){return r(e)});if(exports[t.constant]=a,a)switch(exports.name=t.name,typeof t.pr){case`string`:exports.isPR=!!n[t.pr];break;case`object`:`env`in t.pr?exports.isPR=t.pr.env in n&&n[t.pr.env]!==t.pr.ne:`any`in t.pr?exports.isPR=t.pr.any.some(function(e){return!!n[e]}):exports.isPR=r(t.pr);break;default:exports.isPR=null}}),exports.isCI=!!(n.CI!==`false`&&(n.BUILD_ID||n.BUILD_NUMBER||n.CI||n.CI_APP_ID||n.CI_BUILD_ID||n.CI_BUILD_NUMBER||n.CI_NAME||n.CONTINUOUS_INTEGRATION||n.RUN_ID||exports.name));function r(e){return typeof e==`string`?!!n[e]:`env`in e?n[e.env]&&n[e.env].includes(e.includes):`any`in e?e.any.some(function(e){return!!n[e]}):Object.keys(e).every(function(t){return n[t]===e[t]})}}),Cv=c(Sv());const wv=[`build`,`test`,`lint`,`typecheck`,`checktypes`,`check-types`,`type-check`,`check`];var Tv=class extends vv{trackCI(){return this.track({key:`ci`,value:Cv.name??`unknown`})}trackArgumentWorkspace(e){if(e)return this.trackCliArgument({argument:`workspace`,value:`provided`})}trackOptionTask(e){if(e)return this.trackCliOption({option:`task`,value:wv.includes(e)?e:`other`})}trackOptionFallback(e){if(e)return this.trackCliOption({option:`fallback`,value:e})}trackOptionDirectory(e){if(e)return this.trackCliOption({option:`directory`,value:`custom`})}trackOptionMaxBuffer(e){if(e!==void 0)return this.trackCliOption({option:`max_buffer`,value:e.toString()})}};const Ev={"create-turbo":bv,"turbo-ignore":Tv},Dv=`https://telemetry.vercel.com`;async function Ov({packageInfo:e,opts:t}){let n=Ev[e.name],r=await d_.fromDefaultConfig();if(r){r.showAlert();let i=new n({api:Dv,packageInfo:e,config:r,opts:t});return{telemetry:i}}return{telemetry:void 0}}var kv=c(wi());const Av=`status`,jv=[`enable`,`disable`,Av];function Mv(e){let t=e.telemetry?.config.isEnabled();Aa(`Status: ${t?kv.default.bold(kv.default.green(`Enabled`)):kv.default.bold(kv.default.red(`Disabled`))}`),Aa(),Aa(t?`Turborepo telemetry is completely anonymous. Thank you for participating!`:`You have opted-out of Turborepo anonymous telemetry. No data will be collected from your machine.`),Aa(`Learn more: https://turborepo.dev/docs/telemetry`)}function Nv(e,t){if(!t.telemetry){ja(`Telemetry could not be initialized`);return}e===`enable`?(t.telemetry.config.enable(),Ea(`Success!`)):e===`disable`&&(t.telemetry.config.disable(),Ea(`Success!`)),Aa(),Mv(t)}function Pv(e){e.command(`telemetry`).description(`Manage telemetry settings`).addArgument(new z(`[action]`,`Action to perform`).choices(jv).default(Av)).action(Nv)}var Fv=`turbo-ignore`,Iv=`2.11.4`,Lv=``,Rv=[],zv=`https://turborepo.dev`,Bv={url:`https://github.com/vercel/turborepo/issues`},Vv=`MIT`,Hv=`Jared Palmer`,Uv={type:`git`,url:`https://github.com/vercel/turborepo`,directory:`packages/turbo-ignore`},Wv=`dist/cli.js`,Gv=[`dist`],Kv={json5:`2.2.3`},qv={"@jest/globals":`30.3.0`,"@turbo/telemetry":`workspace:*`,"@turbo/test-utils":`workspace:*`,"@turbo/tsconfig":`workspace:*`,"@turbo/types":`workspace:*`,"@turbo/utils":`workspace:*`,"@types/node":`18.17.4`,commander:`11.0.0`,jest:`30.3.0`,tsdown:`0.12.0`,typescript:`npm:@typescript/typescript6@^6.0.2`,"typescript-7":`npm:typescript@7.0.2`},Jv={name:Fv,version:Iv,description:Lv,keywords:Rv,homepage:zv,bugs:Bv,license:Vv,author:Hv,repository:Uv,bin:Wv,files:Gv,dependencies:Kv,devDependencies:qv};const Yv=`≫ `;function Xv(...e){console.log(Yv,...e)}function Zv(...e){console.error(Yv,...e)}function Qv(...e){console.warn(Yv,...e)}function $v(...e){console.log(...e)}function ey(e){try{return(0,x.execFileSync)(`git`,[`cat-file`,`-t`,e],{stdio:`ignore`}),!0}catch{return!1}}function ty(e){return e.fallback?(Xv(`Falling back to ref ${e.fallback}`),{ref:e.fallback,type:`customFallback`}):null}function ny(e){let{workspace:t}=e;return process.env.VERCEL===`1`?process.env.VERCEL_GIT_PREVIOUS_SHA?ey(process.env.VERCEL_GIT_PREVIOUS_SHA)?(Xv(`Found previous deployment ("${process.env.VERCEL_GIT_PREVIOUS_SHA}") for "${t}"${process.env.VERCEL_GIT_COMMIT_REF?` on branch "${process.env.VERCEL_GIT_COMMIT_REF}"`:``}`),{ref:process.env.VERCEL_GIT_PREVIOUS_SHA,type:`previousDeploy`}):(Xv(`Previous deployment ("${process.env.VERCEL_GIT_PREVIOUS_SHA}") for "${t}"${process.env.VERCEL_GIT_COMMIT_REF?` on branch "${process.env.VERCEL_GIT_COMMIT_REF}"`:``} is unreachable.`),ty(e)):(Xv(`No previous deployments found for "${t}"${process.env.VERCEL_GIT_COMMIT_REF?` on branch "${process.env.VERCEL_GIT_COMMIT_REF}"`:``}`),ty(e)):e.fallback?ty(e):{ref:`HEAD^`,type:`headRelative`}}function ry(e){return e.task?(Xv(`Using "${e.task}" as the task from the arguments`),e.task):(Xv(`Using "build" as the task as it was unspecified`),`build`)}function iy(e){let{directory:t=process.cwd(),workspace:n}=e;if(n)return Xv(`Using "${n}" as workspace from arguments`),n;let r=m.default.join(t,`package.json`);try{let e=f.default.readFileSync(r,`utf8`),t=JSON.parse(e);return t.name?(Xv(`Inferred "${t.name}" as workspace from "package.json"`),t.name):(Zv(`"${r}" is missing the "name" field (required).`),null)}catch{return Zv(`"${r}" could not be found. turbo-ignore inferencing failed`),null}}function ay(e,t){let{turboVersion:n}=e;if(n)return Xv(`Using turbo version "${n}" from arguments`),n;let r=m.default.join(t,`package.json`);try{let e=f.default.readFileSync(r,`utf8`),t=JSON.parse(e),i=t.dependencies?.turbo,a=t.devDependencies?.turbo;if(n=i||a,n!==void 0){if(!n.startsWith(`catalog:`))return Xv(`Inferred turbo version "${n}" from "package.json"`),n;Qv("Cannot infer turbo version due to use of `catalog` protocol. Remove `turbo` from your PNPM catalog to ensure correct turbo version is used")}}catch{return Zv(`"${r}" could not be read. turbo-ignore turbo version inference failed`),null}let i=m.default.join(t,`turbo.json`);try{let e=f.default.readFileSync(i,`utf8`),t=(0,g.parse)(e);return`tasks`in t?(Xv(`Inferred turbo version ^2 based on "tasks" in "turbo.json"`),`^2`):`pipeline`in t?(Xv(`Inferred turbo version ^1 based on "pipeline" in "turbo.json"`),`^1`):null}catch{return Zv(`"${i}" could not be read. turbo-ignore turbo version inference failed`),null}}const oy={MISSING_LOCKFILE:{regex:[/reading (?:yarn.lock|package-lock.json|pnpm-lock.yaml):.*?no such file or directory/i],message:`turbo-ignore could not complete - no lockfile found, please commit one to your repository`},NO_PACKAGE_MANAGER:{regex:[/run failed: We did not detect an in-use package manager for your project/i,/run failed: We did not find a package manager specified in your root package.json/i],message:`turbo-ignore could not complete - no package manager detected, please commit a lockfile, or set "devEngines.packageManager" in your root "package.json"`},UNREACHABLE_PARENT:{regex:[/failed to resolve packages to run: commit HEAD\^ does not exist/i],message:`turbo-ignore could not complete - parent commit does not exist or is unreachable`},INVALID_COMPARISON:{regex:[/commit \S+ does not exist/i,/unknown revision/i,/invalid symmetric difference expression/i],message:`turbo-ignore could not complete - a ref or SHA is invalid. It could have been removed from the branch history via a force push, or this could be a shallow clone with insufficient history`}};function sy({err:e}){let t=Object.keys(oy).find(t=>{let{regex:n}=oy[t];return n.some(t=>t.test(e))});return t?{level:`warn`,message:oy[t].message,code:t}:{level:`error`,message:e,code:`UNKNOWN_ERROR`}}const cy=[`[skip ci]`,`[ci skip]`,`[no ci]`,`[skip vercel]`,`[vercel skip]`],ly=[`[vercel deploy]`,`[vercel build]`];function uy({workspace:e}){return[`[vercel skip ${e}]`]}function dy({workspace:e}){return[`[vercel deploy ${e}]`,`[vercel build ${e}]`]}const fy=/\[vercel only .+\]/;function py({workspace:e}){return[`[vercel only ${e}]`]}function my(){return process.env.VERCEL===`1`&&process.env.VERCEL_GIT_COMMIT_MESSAGE?process.env.VERCEL_GIT_COMMIT_MESSAGE:(0,x.execSync)(`git show -s --format=%B`).toString()}function hy({workspace:e}){let t=my(),n=e=>t.includes(e),r=fy.exec(t)?.[0];if(r)return py({workspace:e}).some(e=>e===r)?{result:`deploy`,scope:`workspace`,reason:`Found commit message: ${r}`}:{result:`skip`,scope:`workspace`,reason:`Found commit message: ${r}`};let i=dy({workspace:e}).find(n),a=uy({workspace:e}).find(n);if(i&&a)return{result:`conflict`,scope:`workspace`,reason:`Conflicting commit messages found: ${i} and ${a}`};if(i)return{result:`deploy`,scope:`workspace`,reason:`Found commit message: ${i}`};if(a)return{result:`skip`,scope:`workspace`,reason:`Found commit message: ${a}`};let o=ly.find(n),s=cy.find(n);return o&&s?{result:`conflict`,scope:`global`,reason:`Conflicting commit messages found: ${o} and ${s}`}:o?{result:`deploy`,scope:`global`,reason:`Found commit message: ${o}`}:s?{result:`skip`,scope:`global`,reason:`Found commit message: ${s}`}:{result:`continue`,scope:`global`,reason:`No deploy or skip string found in commit message.`}}function gy(e){e.telemetry?.trackOptionTask(e.task),e.telemetry?.trackOptionFallback(e.fallback),e.telemetry?.trackOptionDirectory(e.directory),e.telemetry?.trackOptionMaxBuffer(e.maxBuffer)}function _y(){return $v(`⏭ Ignoring the change`),process.exit(0)}function vy(){return $v(`✓ Proceeding with deployment`),process.exit(1)}function yy(e,t){t.telemetry?.trackCommandStatus({command:`ignore`,status:`start`}),t.telemetry?.trackArgumentWorkspace(e!==void 0),gy(t);let n={workspace:e,...t};if(process.env.VERCEL===`1`?(Qv(`\x1B[33m"turbo-ignore" is deprecated. Use Vercel's built-in project skipping instead.\x1B[39m`),Qv(`\x1B[33mLearn more: https://vercel.com/docs/monorepos#skipping-unaffected-projects\x1B[39m
|
|
108
108
|
`)):(Qv(`\x1B[33m"turbo-ignore" is deprecated. Use "turbo query affected" instead.\x1B[39m`),Qv(`\x1B[33mLearn more: https://turborepo.dev/docs/reference/query#migrating-from-turbo-ignore\x1B[39m
|
|
109
109
|
`)),Xv(`Using Turborepo to determine if this project is affected by the commit...
|
|
110
110
|
`),t.directory){let e=m.default.resolve(t.directory);(0,f.existsSync)(e)?n.directory=e:(Qv(`Directory "${t.directory}" does not exist, using current directory`),n.directory=process.cwd())}else n.directory=process.cwd();if(process.env.TURBO_FORCE===`true`)return Xv("`TURBO_FORCE` detected"),vy();let r=vt(n.directory);if(!r)return Zv(`Monorepo root not found. turbo-ignore inferencing failed`),vy();let i=iy(n);if(!i)return vy();let a=ay(n,r),o=ry(n),s=hy({workspace:i});if(s.result===`skip`)return Xv(s.reason),_y();if(s.result===`deploy`)return Xv(s.reason),vy();s.result===`conflict`&&Xv(s.reason);let c=ny({workspace:i,fallback:n.fallback});if(!c)return vy();let l=a?`turbo@${a}`:`turbo`,u=`${i}...[${c.ref}]`,d=[`-y`,l,`run`,o,`--filter=${u}`,`--dry=json`],p=o.includes(`#`)?`"${o}"`:o,h=`npx -y ${l} run ${p} --filter="${u}" --dry=json`;Xv(`Analyzing results of \`${h}\``);let g={cwd:r};t.maxBuffer&&(g.maxBuffer=t.maxBuffer),(0,x.execFile)(`npx`,d,g,(e,n)=>{if(e){let{level:n,code:r,message:i}=sy({err:e.message});return n===`warn`?(t.telemetry?.trackCommandWarning(i),Qv(i)):Zv(`${r}: ${e.message}`),vy()}try{let e=JSON.parse(n);if(e===null)return Zv(`Failed to parse JSON output from \`${h}\`.`),vy();let{packages:t}=e;return t?t.length>0?(t.length===1?Xv(`This commit affects "${i}"`):Xv(`This commit affects "${i}" and ${t.length-1} ${t.length-1==1?`dependency`:`dependencies`} (${t.slice(1).join(`, `)})`),vy()):(Xv(`This project and its dependencies are not affected`),_y()):(Xv(`Detected single package repo`),vy())}catch(e){return Zv(`Failed to parse JSON output from \`${h}\`.`),Zv(e),vy()}finally{t.telemetry?.trackCommandStatus({command:`ignore`,status:`end`})}})}let by;const xy=new R;xy.name(Jv.name).description(`Only proceed with deployment if the workspace or any of its dependencies have changed`).hook(`preAction`,async(e,t)=>{let{telemetry:n}=await Ov({packageInfo:{name:`turbo-ignore`,version:Jv.version}});t.addOption(new B(`--telemetry`).default(n).hideHelp()),by=n}).hook(`postAction`,async()=>{await by?.close()}).argument(`[workspace]`,`The workspace being deployed. If [workspace] is not provided, it will be inferred from the "name" field of the "package.json" located at the current working directory.`).addOption(new B(`-t, --task <name>`,`The task to execute`).default(`build`)).addOption(new B(`-f, --fallback <ref>`,`On Vercel, if no previously deployed SHA is available to compare against, fallback to comparing against the provided ref`)).addOption(new B(`-d, --directory <path>`,`The directory to run in (default: cwd)`)).addOption(new B(`--turbo-version <version>`,`Explicitly set which version of turbo to invoke`)).addOption(new B(`-b, --max-buffer <number>`,`maxBuffer for the child process in KB (default: 1024 KB)`).argParser(e=>Number.parseInt(e,10)*1024)).version(Jv.version,`-v, --version`,`Output the current version`).helpOption(`-h, --help`,`Display help for command`).showHelpAfterError(!1).action(yy),Pv(xy),xy.parse();
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "turbo-ignore",
|
|
3
|
-
"version": "2.11.
|
|
3
|
+
"version": "2.11.4",
|
|
4
4
|
"description": "",
|
|
5
5
|
"keywords": [],
|
|
6
6
|
"homepage": "https://turborepo.dev",
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
"@turbo/telemetry": "0.0.0",
|
|
29
29
|
"@turbo/test-utils": "0.0.0",
|
|
30
30
|
"@turbo/tsconfig": "0.0.0",
|
|
31
|
-
"@turbo/types": "2.11.
|
|
31
|
+
"@turbo/types": "2.11.4",
|
|
32
32
|
"@turbo/utils": "0.0.0",
|
|
33
33
|
"@types/node": "18.17.4",
|
|
34
34
|
"commander": "11.0.0",
|