@storybook/core
Version:
Storybook framework-agnostic API
1,627 lines (1,574 loc) • 87 kB
JavaScript
"use strict";
var zo = Object.create;
var G = Object.defineProperty;
var Yo = Object.getOwnPropertyDescriptor;
var Ko = Object.getOwnPropertyNames;
var Xo = Object.getPrototypeOf, Qo = Object.prototype.hasOwnProperty;
var o = (e, t) => G(e, "name", { value: t, configurable: !0 });
var w = (e, t) => () => (t || e((t = { exports: {} }).exports, t), t.exports), Zo = (e, t) => {
for (var r in t)
G(e, r, { get: t[r], enumerable: !0 });
}, Bt = (e, t, r, n) => {
if (t && typeof t == "object" || typeof t == "function")
for (let i of Ko(t))
!Qo.call(e, i) && i !== r && G(e, i, { get: () => t[i], enumerable: !(n = Yo(t, i)) || n.enumerable });
return e;
};
var d = (e, t, r) => (r = e != null ? zo(Xo(e)) : {}, Bt(
// If the importer is in node compatibility mode or this is not an ESM
// file that has been converted to a CommonJS file using a Babel-
// compatible transform (i.e. "__esModule" has not been set), then set
// "default" to the CommonJS "module.exports" for node compatibility.
t || !e || !e.__esModule ? G(r, "default", { value: e, enumerable: !0 }) : r,
e
)), ei = (e) => Bt(G({}, "__esModule", { value: !0 }), e);
// ../node_modules/picocolors/picocolors.js
var $t = w((Sa, Re) => {
var Gt = process.argv || [], re = process.env, ti = !("NO_COLOR" in re || Gt.includes("--no-color")) && ("FORCE_COLOR" in re || Gt.includes(
"--color") || process.platform === "win32" || require != null && require("tty").isatty(1) && re.TERM !== "dumb" || "CI" in re), ri = /* @__PURE__ */ o(
(e, t, r = e) => (n) => {
let i = "" + n, s = i.indexOf(t, e.length);
return ~s ? e + ni(i, t, r, s) + t : e + i + t;
}, "formatter"), ni = /* @__PURE__ */ o((e, t, r, n) => {
let i = "", s = 0;
do
i += e.substring(s, n) + r, s = n + t.length, n = e.indexOf(t, s);
while (~n);
return i + e.substring(s);
}, "replaceClose"), Ut = /* @__PURE__ */ o((e = ti) => {
let t = e ? ri : () => String;
return {
isColorSupported: e,
reset: t("\x1B[0m", "\x1B[0m"),
bold: t("\x1B[1m", "\x1B[22m", "\x1B[22m\x1B[1m"),
dim: t("\x1B[2m", "\x1B[22m", "\x1B[22m\x1B[2m"),
italic: t("\x1B[3m", "\x1B[23m"),
underline: t("\x1B[4m", "\x1B[24m"),
inverse: t("\x1B[7m", "\x1B[27m"),
hidden: t("\x1B[8m", "\x1B[28m"),
strikethrough: t("\x1B[9m", "\x1B[29m"),
black: t("\x1B[30m", "\x1B[39m"),
red: t("\x1B[31m", "\x1B[39m"),
green: t("\x1B[32m", "\x1B[39m"),
yellow: t("\x1B[33m", "\x1B[39m"),
blue: t("\x1B[34m", "\x1B[39m"),
magenta: t("\x1B[35m", "\x1B[39m"),
cyan: t("\x1B[36m", "\x1B[39m"),
white: t("\x1B[37m", "\x1B[39m"),
gray: t("\x1B[90m", "\x1B[39m"),
bgBlack: t("\x1B[40m", "\x1B[49m"),
bgRed: t("\x1B[41m", "\x1B[49m"),
bgGreen: t("\x1B[42m", "\x1B[49m"),
bgYellow: t("\x1B[43m", "\x1B[49m"),
bgBlue: t("\x1B[44m", "\x1B[49m"),
bgMagenta: t("\x1B[45m", "\x1B[49m"),
bgCyan: t("\x1B[46m", "\x1B[49m"),
bgWhite: t("\x1B[47m", "\x1B[49m"),
blackBright: t("\x1B[90m", "\x1B[39m"),
redBright: t("\x1B[91m", "\x1B[39m"),
greenBright: t("\x1B[92m", "\x1B[39m"),
yellowBright: t("\x1B[93m", "\x1B[39m"),
blueBright: t("\x1B[94m", "\x1B[39m"),
magentaBright: t("\x1B[95m", "\x1B[39m"),
cyanBright: t("\x1B[96m", "\x1B[39m"),
whiteBright: t("\x1B[97m", "\x1B[39m"),
bgBlackBright: t("\x1B[100m", "\x1B[49m"),
bgRedBright: t("\x1B[101m", "\x1B[49m"),
bgGreenBright: t("\x1B[102m", "\x1B[49m"),
bgYellowBright: t("\x1B[103m", "\x1B[49m"),
bgBlueBright: t("\x1B[104m", "\x1B[49m"),
bgMagentaBright: t("\x1B[105m", "\x1B[49m"),
bgCyanBright: t("\x1B[106m", "\x1B[49m"),
bgWhiteBright: t("\x1B[107m", "\x1B[49m")
};
}, "createColors");
Re.exports = Ut();
Re.exports.createColors = Ut;
});
// ../node_modules/walk-up-path/dist/cjs/index.js
var Vt = w((oe) => {
"use strict";
Object.defineProperty(oe, "__esModule", { value: !0 });
oe.walkUp = void 0;
var qt = require("path"), oi = /* @__PURE__ */ o(function* (e) {
for (e = (0, qt.resolve)(e); e; ) {
yield e;
let t = (0, qt.dirname)(e);
if (t === e)
break;
e = t;
}
}, "walkUp");
oe.walkUp = oi;
});
// ../node_modules/isexe/windows.js
var ir = w((Ua, or) => {
or.exports = nr;
nr.sync = li;
var tr = require("fs");
function fi(e, t) {
var r = t.pathExt !== void 0 ? t.pathExt : process.env.PATHEXT;
if (!r || (r = r.split(";"), r.indexOf("") !== -1))
return !0;
for (var n = 0; n < r.length; n++) {
var i = r[n].toLowerCase();
if (i && e.substr(-i.length).toLowerCase() === i)
return !0;
}
return !1;
}
o(fi, "checkPathExt");
function rr(e, t, r) {
return !e.isSymbolicLink() && !e.isFile() ? !1 : fi(t, r);
}
o(rr, "checkStat");
function nr(e, t, r) {
tr.stat(e, function(n, i) {
r(n, n ? !1 : rr(i, e, t));
});
}
o(nr, "isexe");
function li(e, t) {
return rr(tr.statSync(e), e, t);
}
o(li, "sync");
});
// ../node_modules/isexe/mode.js
var fr = w((Wa, ur) => {
ur.exports = ar;
ar.sync = pi;
var sr = require("fs");
function ar(e, t, r) {
sr.stat(e, function(n, i) {
r(n, n ? !1 : cr(i, t));
});
}
o(ar, "isexe");
function pi(e, t) {
return cr(sr.statSync(e), t);
}
o(pi, "sync");
function cr(e, t) {
return e.isFile() && mi(e, t);
}
o(cr, "checkStat");
function mi(e, t) {
var r = e.mode, n = e.uid, i = e.gid, s = t.uid !== void 0 ? t.uid : process.getuid && process.getuid(), a = t.gid !== void 0 ? t.gid : process.
getgid && process.getgid(), c = parseInt("100", 8), u = parseInt("010", 8), f = parseInt("001", 8), l = c | u, y = r & f || r & u && i ===
a || r & c && n === s || r & l && s === 0;
return y;
}
o(mi, "checkMode");
});
// ../node_modules/isexe/index.js
var pr = w((qa, lr) => {
var Ja = require("fs"), se;
process.platform === "win32" || global.TESTING_WINDOWS ? se = ir() : se = fr();
lr.exports = $e;
$e.sync = di;
function $e(e, t, r) {
if (typeof t == "function" && (r = t, t = {}), !r) {
if (typeof Promise != "function")
throw new TypeError("callback not provided");
return new Promise(function(n, i) {
$e(e, t || {}, function(s, a) {
s ? i(s) : n(a);
});
});
}
se(e, t || {}, function(n, i) {
n && (n.code === "EACCES" || t && t.ignoreErrors) && (n = null, i = !1), r(n, i);
});
}
o($e, "isexe");
function di(e, t) {
try {
return se.sync(e, t || {});
} catch (r) {
if (t && t.ignoreErrors || r.code === "EACCES")
return !1;
throw r;
}
}
o(di, "sync");
});
// ../node_modules/cross-spawn/node_modules/which/which.js
var xr = w((za, br) => {
var D = process.platform === "win32" || process.env.OSTYPE === "cygwin" || process.env.OSTYPE === "msys", mr = require("path"), yi = D ? "\
;" : ":", dr = pr(), yr = /* @__PURE__ */ o((e) => Object.assign(new Error(`not found: ${e}`), { code: "ENOENT" }), "getNotFoundError"), hr = /* @__PURE__ */ o(
(e, t) => {
let r = t.colon || yi, n = e.match(/\//) || D && e.match(/\\/) ? [""] : [
// windows always checks the cwd first
...D ? [process.cwd()] : [],
...(t.path || process.env.PATH || /* istanbul ignore next: very unusual */
"").split(r)
], i = D ? t.pathExt || process.env.PATHEXT || ".EXE;.CMD;.BAT;.COM" : "", s = D ? i.split(r) : [""];
return D && e.indexOf(".") !== -1 && s[0] !== "" && s.unshift(""), {
pathEnv: n,
pathExt: s,
pathExtExe: i
};
}, "getPathInfo"), gr = /* @__PURE__ */ o((e, t, r) => {
typeof t == "function" && (r = t, t = {}), t || (t = {});
let { pathEnv: n, pathExt: i, pathExtExe: s } = hr(e, t), a = [], c = /* @__PURE__ */ o((f) => new Promise((l, y) => {
if (f === n.length)
return t.all && a.length ? l(a) : y(yr(e));
let g = n[f], h = /^".*"$/.test(g) ? g.slice(1, -1) : g, b = mr.join(h, e), m = !h && /^\.[\\\/]/.test(e) ? e.slice(0, 2) + b : b;
l(u(m, f, 0));
}), "step"), u = /* @__PURE__ */ o((f, l, y) => new Promise((g, h) => {
if (y === i.length)
return g(c(l + 1));
let b = i[y];
dr(f + b, { pathExt: s }, (m, x) => {
if (!m && x)
if (t.all)
a.push(f + b);
else
return g(f + b);
return g(u(f, l, y + 1));
});
}), "subStep");
return r ? c(0).then((f) => r(null, f), r) : c(0);
}, "which"), hi = /* @__PURE__ */ o((e, t) => {
t = t || {};
let { pathEnv: r, pathExt: n, pathExtExe: i } = hr(e, t), s = [];
for (let a = 0; a < r.length; a++) {
let c = r[a], u = /^".*"$/.test(c) ? c.slice(1, -1) : c, f = mr.join(u, e), l = !u && /^\.[\\\/]/.test(e) ? e.slice(0, 2) + f : f;
for (let y = 0; y < n.length; y++) {
let g = l + n[y];
try {
if (dr.sync(g, { pathExt: i }))
if (t.all)
s.push(g);
else
return g;
} catch {
}
}
}
if (t.all && s.length)
return s;
if (t.nothrow)
return null;
throw yr(e);
}, "whichSync");
br.exports = gr;
gr.sync = hi;
});
// ../node_modules/path-key/index.js
var Sr = w((Ka, We) => {
"use strict";
var wr = /* @__PURE__ */ o((e = {}) => {
let t = e.env || process.env;
return (e.platform || process.platform) !== "win32" ? "PATH" : Object.keys(t).reverse().find((n) => n.toUpperCase() === "PATH") || "Path";
}, "pathKey");
We.exports = wr;
We.exports.default = wr;
});
// ../node_modules/cross-spawn/lib/util/resolveCommand.js
var vr = w((Qa, Pr) => {
"use strict";
var kr = require("path"), gi = xr(), bi = Sr();
function Er(e, t) {
let r = e.options.env || process.env, n = process.cwd(), i = e.options.cwd != null, s = i && process.chdir !== void 0 && !process.chdir.
disabled;
if (s)
try {
process.chdir(e.options.cwd);
} catch {
}
let a;
try {
a = gi.sync(e.command, {
path: r[bi({ env: r })],
pathExt: t ? kr.delimiter : void 0
});
} catch {
} finally {
s && process.chdir(n);
}
return a && (a = kr.resolve(i ? e.options.cwd : "", a)), a;
}
o(Er, "resolveCommandAttempt");
function xi(e) {
return Er(e) || Er(e, !0);
}
o(xi, "resolveCommand");
Pr.exports = xi;
});
// ../node_modules/cross-spawn/lib/util/escape.js
var Tr = w((ec, Je) => {
"use strict";
var He = /([()\][%!^"`<>&|;, *?])/g;
function wi(e) {
return e = e.replace(He, "^$1"), e;
}
o(wi, "escapeCommand");
function Si(e, t) {
return e = `${e}`, e = e.replace(/(\\*)"/g, '$1$1\\"'), e = e.replace(/(\\*)$/, "$1$1"), e = `"${e}"`, e = e.replace(He, "^$1"), t && (e =
e.replace(He, "^$1")), e;
}
o(Si, "escapeArgument");
Je.exports.command = wi;
Je.exports.argument = Si;
});
// ../node_modules/shebang-regex/index.js
var Ir = w((rc, Cr) => {
"use strict";
Cr.exports = /^#!(.*)/;
});
// ../node_modules/shebang-command/index.js
var Or = w((nc, Ar) => {
"use strict";
var ki = Ir();
Ar.exports = (e = "") => {
let t = e.match(ki);
if (!t)
return null;
let [r, n] = t[0].replace(/#! ?/, "").split(" "), i = r.split("/").pop();
return i === "env" ? n : n ? `${i} ${n}` : i;
};
});
// ../node_modules/cross-spawn/lib/util/readShebang.js
var Rr = w((oc, jr) => {
"use strict";
var qe = require("fs"), Ei = Or();
function Pi(e) {
let r = Buffer.alloc(150), n;
try {
n = qe.openSync(e, "r"), qe.readSync(n, r, 0, 150, 0), qe.closeSync(n);
} catch {
}
return Ei(r.toString());
}
o(Pi, "readShebang");
jr.exports = Pi;
});
// ../node_modules/cross-spawn/lib/parse.js
var Mr = w((sc, _r) => {
"use strict";
var vi = require("path"), Nr = vr(), Dr = Tr(), Ti = Rr(), Ci = process.platform === "win32", Ii = /\.(?:com|exe)$/i, Ai = /node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;
function Oi(e) {
e.file = Nr(e);
let t = e.file && Ti(e.file);
return t ? (e.args.unshift(e.file), e.command = t, Nr(e)) : e.file;
}
o(Oi, "detectShebang");
function ji(e) {
if (!Ci)
return e;
let t = Oi(e), r = !Ii.test(t);
if (e.options.forceShell || r) {
let n = Ai.test(t);
e.command = vi.normalize(e.command), e.command = Dr.command(e.command), e.args = e.args.map((s) => Dr.argument(s, n));
let i = [e.command].concat(e.args).join(" ");
e.args = ["/d", "/s", "/c", `"${i}"`], e.command = process.env.comspec || "cmd.exe", e.options.windowsVerbatimArguments = !0;
}
return e;
}
o(ji, "parseNonShell");
function Ri(e, t, r) {
t && !Array.isArray(t) && (r = t, t = null), t = t ? t.slice(0) : [], r = Object.assign({}, r);
let n = {
command: e,
args: t,
options: r,
file: void 0,
original: {
command: e,
args: t
}
};
return r.shell ? n : ji(n);
}
o(Ri, "parse");
_r.exports = Ri;
});
// ../node_modules/cross-spawn/lib/enoent.js
var Br = w((cc, Fr) => {
"use strict";
var Ve = process.platform === "win32";
function ze(e, t) {
return Object.assign(new Error(`${t} ${e.command} ENOENT`), {
code: "ENOENT",
errno: "ENOENT",
syscall: `${t} ${e.command}`,
path: e.command,
spawnargs: e.args
});
}
o(ze, "notFoundError");
function Ni(e, t) {
if (!Ve)
return;
let r = e.emit;
e.emit = function(n, i) {
if (n === "exit") {
let s = Lr(i, t, "spawn");
if (s)
return r.call(e, "error", s);
}
return r.apply(e, arguments);
};
}
o(Ni, "hookChildProcess");
function Lr(e, t) {
return Ve && e === 1 && !t.file ? ze(t.original, "spawn") : null;
}
o(Lr, "verifyENOENT");
function Di(e, t) {
return Ve && e === 1 && !t.file ? ze(t.original, "spawnSync") : null;
}
o(Di, "verifyENOENTSync");
Fr.exports = {
hookChildProcess: Ni,
verifyENOENT: Lr,
verifyENOENTSync: Di,
notFoundError: ze
};
});
// ../node_modules/cross-spawn/index.js
var $r = w((fc, _) => {
"use strict";
var Gr = require("child_process"), Ye = Mr(), Ke = Br();
function Ur(e, t, r) {
let n = Ye(e, t, r), i = Gr.spawn(n.command, n.args, n.options);
return Ke.hookChildProcess(i, n), i;
}
o(Ur, "spawn");
function _i(e, t, r) {
let n = Ye(e, t, r), i = Gr.spawnSync(n.command, n.args, n.options);
return i.error = i.error || Ke.verifyENOENTSync(i.status, n), i;
}
o(_i, "spawnSync");
_.exports = Ur;
_.exports.spawn = Ur;
_.exports.sync = _i;
_.exports._parse = Ye;
_.exports._enoent = Ke;
});
// ../node_modules/merge-stream/index.js
var kn = w((Cu, Sn) => {
"use strict";
var { PassThrough: vs } = require("stream");
Sn.exports = function() {
var e = [], t = new vs({ objectMode: !0 });
return t.setMaxListeners(0), t.add = r, t.isEmpty = n, t.on("unpipe", i), Array.prototype.slice.call(arguments).forEach(r), t;
function r(s) {
return Array.isArray(s) ? (s.forEach(r), this) : (e.push(s), s.once("end", i.bind(null, s)), s.once("error", t.emit.bind(t, "error")),
s.pipe(t, { end: !1 }), this);
}
o(r, "add");
function n() {
return e.length == 0;
}
o(n, "isEmpty");
function i(s) {
e = e.filter(function(a) {
return a !== s;
}), !e.length && t.readable && t.end();
}
o(i, "remove");
};
});
// ../node_modules/common-path-prefix/index.js
var Qn = w((cf, Xn) => {
"use strict";
var { sep: Bs } = require("path"), Gs = /* @__PURE__ */ o((e) => {
for (let t of e) {
let r = /(\/|\\)/.exec(t);
if (r !== null) return r[0];
}
return Bs;
}, "determineSeparator");
Xn.exports = /* @__PURE__ */ o(function(t, r = Gs(t)) {
let [n = "", ...i] = t;
if (n === "" || i.length === 0) return "";
let s = n.split(r), a = s.length;
for (let u of i) {
let f = u.split(r);
for (let l = 0; l < a; l++)
f[l] !== s[l] && (a = l);
if (a === 0) return "";
}
let c = s.slice(0, a).join(r);
return c.endsWith(r) ? c : c + r;
}, "commonPathPrefix");
});
// ../node_modules/fetch-retry/index.js
var No = w((up, Ro) => {
"use strict";
Ro.exports = function(e, t) {
if (t = t || {}, typeof e != "function")
throw new C("fetch must be a function");
if (typeof t != "object")
throw new C("defaults must be an object");
if (t.retries !== void 0 && !Ce(t.retries))
throw new C("retries must be a positive integer");
if (t.retryDelay !== void 0 && !Ce(t.retryDelay) && typeof t.retryDelay != "function")
throw new C("retryDelay must be a positive integer or a function returning a positive integer");
if (t.retryOn !== void 0 && !Array.isArray(t.retryOn) && typeof t.retryOn != "function")
throw new C("retryOn property expects an array or function");
var r = {
retries: 3,
retryDelay: 1e3,
retryOn: []
};
return t = Object.assign(r, t), /* @__PURE__ */ o(function(i, s) {
var a = t.retries, c = t.retryDelay, u = t.retryOn;
if (s && s.retries !== void 0)
if (Ce(s.retries))
a = s.retries;
else
throw new C("retries must be a positive integer");
if (s && s.retryDelay !== void 0)
if (Ce(s.retryDelay) || typeof s.retryDelay == "function")
c = s.retryDelay;
else
throw new C("retryDelay must be a positive integer or a function returning a positive integer");
if (s && s.retryOn)
if (Array.isArray(s.retryOn) || typeof s.retryOn == "function")
u = s.retryOn;
else
throw new C("retryOn property expects an array or function");
return new Promise(function(f, l) {
var y = /* @__PURE__ */ o(function(h) {
var b = typeof Request < "u" && i instanceof Request ? i.clone() : i;
e(b, s).then(function(m) {
if (Array.isArray(u) && u.indexOf(m.status) === -1)
f(m);
else if (typeof u == "function")
try {
return Promise.resolve(u(h, null, m)).then(function(x) {
x ? g(h, null, m) : f(m);
}).catch(l);
} catch (x) {
l(x);
}
else
h < a ? g(h, null, m) : f(m);
}).catch(function(m) {
if (typeof u == "function")
try {
Promise.resolve(u(h, m, null)).then(function(x) {
x ? g(h, m, null) : l(m);
}).catch(function(x) {
l(x);
});
} catch (x) {
l(x);
}
else h < a ? g(h, m, null) : l(m);
});
}, "wrappedFetch");
function g(h, b, m) {
var x = typeof c == "function" ? c(h, b, m) : c;
setTimeout(function() {
y(++h);
}, x);
}
o(g, "retry"), y(0);
});
}, "fetchRetry");
};
function Ce(e) {
return Number.isInteger(e) && e >= 0;
}
o(Ce, "isPositiveInteger");
function C(e) {
this.name = "ArgumentError", this.message = e;
}
o(C, "ArgumentError");
});
// src/telemetry/index.ts
var xa = {};
Zo(xa, {
addToGlobalContext: () => qo,
cleanPaths: () => N,
computeStorybookMetadata: () => jo,
getPrecedingUpgrade: () => $o,
getStorybookMetadata: () => Rt,
isExampleStoryId: () => ga,
metaFrameworks: () => Ot,
oneWayHash: () => Ie,
removeAnsiEscapeCodes: () => De,
sanitizeAddonName: () => jt,
sanitizeError: () => U,
telemetry: () => ba
});
module.exports = ei(xa);
var Ft = require("@storybook/core/node-logger");
// src/telemetry/notify.ts
var Ne = require("@storybook/core/common"), ne = d($t(), 1);
var Wt = "telemetry-notification-date", R = console, Ht = /* @__PURE__ */ o(async () => {
await Ne.cache.get(Wt, null) || (Ne.cache.set(Wt, Date.now()), R.log(), R.log(
`${ne.default.magenta(
ne.default.bold("attention")
)} => Storybook now collects completely anonymous telemetry regarding usage.`
), R.log("This information is used to shape Storybook's roadmap and prioritize features."), R.log(
"You can learn more, including how to opt-out if you'd not like to participate in this anonymous program, by visiting the following URL:"
), R.log(ne.default.cyan("https://storybook.js.org/telemetry")), R.log());
}, "notify");
// src/telemetry/sanitize.ts
var _e = d(require("node:path"), 1);
function Jt(e) {
return e.replace(/[-[/{}()*+?.\\^$|]/g, "\\$&");
}
o(Jt, "regexpEscape");
function De(e = "") {
return e.replace(/\u001B\[[0-9;]*m/g, "");
}
o(De, "removeAnsiEscapeCodes");
function N(e, t = _e.default.sep) {
if (!e)
return e;
let r = process.cwd().split(t);
for (; r.length > 1; ) {
let n = r.join(t), i = new RegExp(Jt(n), "gi");
e = e.replace(i, "$SNIP");
let s = r.join(t + t), a = new RegExp(Jt(s), "gi");
e = e.replace(a, "$SNIP"), r.pop();
}
return e;
}
o(N, "cleanPaths");
function U(e, t = _e.default.sep) {
try {
e = {
...JSON.parse(JSON.stringify(e)),
message: De(e.message),
stack: De(e.stack),
cause: e.cause,
name: e.name
};
let r = N(JSON.stringify(e), t);
return JSON.parse(r);
} catch (r) {
return `Sanitization error: ${r?.message}`;
}
}
o(U, "sanitizeError");
// src/telemetry/storybook-metadata.ts
var Ao = require("node:path"), P = require("@storybook/core/common"), Oo = require("@storybook/core/csf-tools");
// ../node_modules/fd-package-json/dist/esm/main.js
var zt = d(Vt(), 1), Yt = require("node:path"), ie = require("node:fs/promises"), Kt = require("node:fs");
async function ii(e) {
try {
return (await (0, ie.stat)(e)).isFile();
} catch {
return !1;
}
}
o(ii, "fileExists");
async function Me(e) {
for (let t of (0, zt.walkUp)(e)) {
let r = (0, Yt.resolve)(t, "package.json");
if (await ii(r))
return r;
}
return null;
}
o(Me, "findPackagePath");
async function Xt(e) {
let t = await Me(e);
if (!t)
return null;
try {
let r = await (0, ie.readFile)(t, { encoding: "utf8" });
return JSON.parse(r);
} catch {
return null;
}
}
o(Xt, "findPackage");
// ../node_modules/package-manager-detector/dist/constants.mjs
var Qt = [
"npm",
"yarn",
"yarn@berry",
"pnpm",
"pnpm@6",
"bun",
"deno"
], Le = {
"bun.lock": "bun",
"bun.lockb": "bun",
"deno.lock": "deno",
"pnpm-lock.yaml": "pnpm",
"yarn.lock": "yarn",
"package-lock.json": "npm",
"npm-shrinkwrap.json": "npm"
}, Fe = {
"node_modules/.deno/": "deno",
"node_modules/.pnpm/": "pnpm",
"node_modules/.yarn-state.yml": "yarn",
// yarn v2+ (node-modules)
"node_modules/.yarn_integrity": "yarn",
// yarn v1
"node_modules/.package-lock.json": "npm",
".pnp.cjs": "yarn",
// yarn v3+ (pnp)
".pnp.js": "yarn",
// yarn v2 (pnp)
"bun.lock": "bun",
"bun.lockb": "bun"
};
// ../node_modules/package-manager-detector/dist/detect.mjs
var Ge = d(require("node:fs/promises"), 1), T = d(require("node:path"), 1), er = d(require("node:process"), 1);
async function Be(e, t) {
try {
let r = await Ge.default.stat(e);
return t === "file" ? r.isFile() : r.isDirectory();
} catch {
return !1;
}
}
o(Be, "pathExists");
function* si(e = er.default.cwd()) {
let t = T.default.resolve(e), { root: r } = T.default.parse(t);
for (; t && t !== r; )
yield t, t = T.default.dirname(t);
}
o(si, "lookup");
async function Zt(e, t) {
return !e || !Be(e, "file") ? null : await ci(e, t);
}
o(Zt, "parsePackageJson");
async function Ue(e = {}) {
let { cwd: t, strategies: r = ["lockfile", "packageManager-field", "devEngines-field"], onUnknown: n } = e;
for (let i of si(t))
for (let s of r)
switch (s) {
case "lockfile": {
for (let a of Object.keys(Le))
if (await Be(T.default.join(i, a), "file")) {
let c = Le[a], u = await Zt(T.default.join(i, "package.json"), n);
return u || { name: c, agent: c };
}
break;
}
case "packageManager-field":
case "devEngines-field": {
let a = await Zt(T.default.join(i, "package.json"), n);
if (a)
return a;
break;
}
case "install-metadata": {
for (let a of Object.keys(Fe)) {
let c = a.endsWith("/") ? "dir" : "file";
if (await Be(T.default.join(i, a), c)) {
let u = Fe[a], f = u === "yarn" ? ui(a) ? "yarn" : "yarn@berry" : u;
return { name: u, agent: f };
}
}
break;
}
}
return null;
}
o(Ue, "detect");
function ai(e) {
let t = /* @__PURE__ */ o((r) => r?.match(/\d+(\.\d+){0,2}/)?.[0] ?? r, "handelVer");
if (typeof e.packageManager == "string") {
let [r, n] = e.packageManager.replace(/^\^/, "").split("@");
return { name: r, ver: t(n) };
}
if (typeof e.devEngines?.packageManager?.name == "string")
return {
name: e.devEngines.packageManager.name,
ver: t(e.devEngines.packageManager.version)
};
}
o(ai, "getNameAndVer");
async function ci(e, t) {
try {
let r = JSON.parse(await Ge.default.readFile(e, "utf8")), n, i = ai(r);
if (i) {
let s = i.name, a = i.ver, c = a;
return s === "yarn" && a && Number.parseInt(a) > 1 ? (n = "yarn@berry", c = "berry", { name: s, agent: n, version: c }) : s === "pnpm" &&
a && Number.parseInt(a) < 7 ? (n = "pnpm@6", { name: s, agent: n, version: c }) : Qt.includes(s) ? (n = s, { name: s, agent: n, version: c }) :
t?.(r.packageManager) ?? null;
}
} catch {
}
return null;
}
o(ci, "handlePackageManager");
function ui(e) {
return e.endsWith(".yarn_integrity");
}
o(ui, "isMetadataYarnClassic");
// ../node_modules/package-manager-detector/dist/index.mjs
var Ma = require("node:fs/promises"), La = require("node:path"), Fa = require("node:process");
// src/telemetry/get-application-file-count.ts
var yo = require("node:path");
// src/telemetry/exec-command-count-lines.ts
var Yn = require("node:readline");
// ../node_modules/execa/index.js
var $n = require("node:buffer"), Wn = d(require("node:path"), 1), we = d(require("node:child_process"), 1), J = d(require("node:process"), 1),
Hn = d($r(), 1);
// ../node_modules/strip-final-newline/index.js
function Xe(e) {
let t = typeof e == "string" ? `
` : 10, r = typeof e == "string" ? "\r" : 13;
return e[e.length - 1] === t && (e = e.slice(0, -1)), e[e.length - 1] === r && (e = e.slice(0, -1)), e;
}
o(Xe, "stripFinalNewline");
// ../node_modules/execa/node_modules/npm-run-path/index.js
var $ = d(require("node:process"), 1), M = d(require("node:path"), 1), Wr = d(require("node:url"), 1);
// ../node_modules/execa/node_modules/path-key/index.js
function ae(e = {}) {
let {
env: t = process.env,
platform: r = process.platform
} = e;
return r !== "win32" ? "PATH" : Object.keys(t).reverse().find((n) => n.toUpperCase() === "PATH") || "Path";
}
o(ae, "pathKey");
// ../node_modules/execa/node_modules/npm-run-path/index.js
function Mi(e = {}) {
let {
cwd: t = $.default.cwd(),
path: r = $.default.env[ae()],
execPath: n = $.default.execPath
} = e, i, s = t instanceof URL ? Wr.default.fileURLToPath(t) : t, a = M.default.resolve(s), c = [];
for (; i !== a; )
c.push(M.default.join(a, "node_modules/.bin")), i = a, a = M.default.resolve(a, "..");
return c.push(M.default.resolve(s, n, "..")), [...c, r].join(M.default.delimiter);
}
o(Mi, "npmRunPath");
function Hr({ env: e = $.default.env, ...t } = {}) {
e = { ...e };
let r = ae({ env: e });
return t.path = e[r], e[r] = Mi(t), e;
}
o(Hr, "npmRunPathEnv");
// ../node_modules/execa/node_modules/mimic-fn/index.js
var Li = /* @__PURE__ */ o((e, t, r, n) => {
if (r === "length" || r === "prototype" || r === "arguments" || r === "caller")
return;
let i = Object.getOwnPropertyDescriptor(e, r), s = Object.getOwnPropertyDescriptor(t, r);
!Fi(i, s) && n || Object.defineProperty(e, r, s);
}, "copyProperty"), Fi = /* @__PURE__ */ o(function(e, t) {
return e === void 0 || e.configurable || e.writable === t.writable && e.enumerable === t.enumerable && e.configurable === t.configurable &&
(e.writable || e.value === t.value);
}, "canCopyProperty"), Bi = /* @__PURE__ */ o((e, t) => {
let r = Object.getPrototypeOf(t);
r !== Object.getPrototypeOf(e) && Object.setPrototypeOf(e, r);
}, "changePrototype"), Gi = /* @__PURE__ */ o((e, t) => `/* Wrapped ${e}*/
${t}`, "wrappedToString"), Ui = Object.getOwnPropertyDescriptor(Function.prototype, "toString"), $i = Object.getOwnPropertyDescriptor(Function.
prototype.toString, "name"), Wi = /* @__PURE__ */ o((e, t, r) => {
let n = r === "" ? "" : `with ${r.trim()}() `, i = Gi.bind(null, n, t.toString());
Object.defineProperty(i, "name", $i), Object.defineProperty(e, "toString", { ...Ui, value: i });
}, "changeToString");
function Qe(e, t, { ignoreNonConfigurable: r = !1 } = {}) {
let { name: n } = e;
for (let i of Reflect.ownKeys(t))
Li(e, t, i, r);
return Bi(e, t), Wi(e, t, n), e;
}
o(Qe, "mimicFunction");
// ../node_modules/execa/node_modules/onetime/index.js
var ce = /* @__PURE__ */ new WeakMap(), Jr = /* @__PURE__ */ o((e, t = {}) => {
if (typeof e != "function")
throw new TypeError("Expected a function");
let r, n = 0, i = e.displayName || e.name || "<anonymous>", s = /* @__PURE__ */ o(function(...a) {
if (ce.set(s, ++n), n === 1)
r = e.apply(this, a), e = null;
else if (t.throw === !0)
throw new Error(`Function \`${i}\` can only be called once`);
return r;
}, "onetime");
return Qe(s, e), ce.set(s, n), s;
}, "onetime");
Jr.callCount = (e) => {
if (!ce.has(e))
throw new Error(`The given function \`${e.name}\` is not wrapped by the \`onetime\` package`);
return ce.get(e);
};
var qr = Jr;
// ../node_modules/execa/lib/error.js
var Zr = d(require("node:process"), 1);
// ../node_modules/execa/node_modules/human-signals/build/src/main.js
var Xr = require("node:os");
// ../node_modules/execa/node_modules/human-signals/build/src/realtime.js
var Vr = /* @__PURE__ */ o(() => {
let e = Ze - zr + 1;
return Array.from({ length: e }, Hi);
}, "getRealtimeSignals"), Hi = /* @__PURE__ */ o((e, t) => ({
name: `SIGRT${t + 1}`,
number: zr + t,
action: "terminate",
description: "Application-specific signal (realtime)",
standard: "posix"
}), "getRealtimeSignal"), zr = 34, Ze = 64;
// ../node_modules/execa/node_modules/human-signals/build/src/signals.js
var Kr = require("node:os");
// ../node_modules/execa/node_modules/human-signals/build/src/core.js
var Yr = [
{
name: "SIGHUP",
number: 1,
action: "terminate",
description: "Terminal closed",
standard: "posix"
},
{
name: "SIGINT",
number: 2,
action: "terminate",
description: "User interruption with CTRL-C",
standard: "ansi"
},
{
name: "SIGQUIT",
number: 3,
action: "core",
description: "User interruption with CTRL-\\",
standard: "posix"
},
{
name: "SIGILL",
number: 4,
action: "core",
description: "Invalid machine instruction",
standard: "ansi"
},
{
name: "SIGTRAP",
number: 5,
action: "core",
description: "Debugger breakpoint",
standard: "posix"
},
{
name: "SIGABRT",
number: 6,
action: "core",
description: "Aborted",
standard: "ansi"
},
{
name: "SIGIOT",
number: 6,
action: "core",
description: "Aborted",
standard: "bsd"
},
{
name: "SIGBUS",
number: 7,
action: "core",
description: "Bus error due to misaligned, non-existing address or paging error",
standard: "bsd"
},
{
name: "SIGEMT",
number: 7,
action: "terminate",
description: "Command should be emulated but is not implemented",
standard: "other"
},
{
name: "SIGFPE",
number: 8,
action: "core",
description: "Floating point arithmetic error",
standard: "ansi"
},
{
name: "SIGKILL",
number: 9,
action: "terminate",
description: "Forced termination",
standard: "posix",
forced: !0
},
{
name: "SIGUSR1",
number: 10,
action: "terminate",
description: "Application-specific signal",
standard: "posix"
},
{
name: "SIGSEGV",
number: 11,
action: "core",
description: "Segmentation fault",
standard: "ansi"
},
{
name: "SIGUSR2",
number: 12,
action: "terminate",
description: "Application-specific signal",
standard: "posix"
},
{
name: "SIGPIPE",
number: 13,
action: "terminate",
description: "Broken pipe or socket",
standard: "posix"
},
{
name: "SIGALRM",
number: 14,
action: "terminate",
description: "Timeout or timer",
standard: "posix"
},
{
name: "SIGTERM",
number: 15,
action: "terminate",
description: "Termination",
standard: "ansi"
},
{
name: "SIGSTKFLT",
number: 16,
action: "terminate",
description: "Stack is empty or overflowed",
standard: "other"
},
{
name: "SIGCHLD",
number: 17,
action: "ignore",
description: "Child process terminated, paused or unpaused",
standard: "posix"
},
{
name: "SIGCLD",
number: 17,
action: "ignore",
description: "Child process terminated, paused or unpaused",
standard: "other"
},
{
name: "SIGCONT",
number: 18,
action: "unpause",
description: "Unpaused",
standard: "posix",
forced: !0
},
{
name: "SIGSTOP",
number: 19,
action: "pause",
description: "Paused",
standard: "posix",
forced: !0
},
{
name: "SIGTSTP",
number: 20,
action: "pause",
description: 'Paused using CTRL-Z or "suspend"',
standard: "posix"
},
{
name: "SIGTTIN",
number: 21,
action: "pause",
description: "Background process cannot read terminal input",
standard: "posix"
},
{
name: "SIGBREAK",
number: 21,
action: "terminate",
description: "User interruption with CTRL-BREAK",
standard: "other"
},
{
name: "SIGTTOU",
number: 22,
action: "pause",
description: "Background process cannot write to terminal output",
standard: "posix"
},
{
name: "SIGURG",
number: 23,
action: "ignore",
description: "Socket received out-of-band data",
standard: "bsd"
},
{
name: "SIGXCPU",
number: 24,
action: "core",
description: "Process timed out",
standard: "bsd"
},
{
name: "SIGXFSZ",
number: 25,
action: "core",
description: "File too big",
standard: "bsd"
},
{
name: "SIGVTALRM",
number: 26,
action: "terminate",
description: "Timeout or timer",
standard: "bsd"
},
{
name: "SIGPROF",
number: 27,
action: "terminate",
description: "Timeout or timer",
standard: "bsd"
},
{
name: "SIGWINCH",
number: 28,
action: "ignore",
description: "Terminal window size changed",
standard: "bsd"
},
{
name: "SIGIO",
number: 29,
action: "terminate",
description: "I/O is available",
standard: "other"
},
{
name: "SIGPOLL",
number: 29,
action: "terminate",
description: "Watched event",
standard: "other"
},
{
name: "SIGINFO",
number: 29,
action: "ignore",
description: "Request for process information",
standard: "other"
},
{
name: "SIGPWR",
number: 30,
action: "terminate",
description: "Device running out of power",
standard: "systemv"
},
{
name: "SIGSYS",
number: 31,
action: "core",
description: "Invalid system call",
standard: "other"
},
{
name: "SIGUNUSED",
number: 31,
action: "terminate",
description: "Invalid system call",
standard: "other"
}
];
// ../node_modules/execa/node_modules/human-signals/build/src/signals.js
var et = /* @__PURE__ */ o(() => {
let e = Vr();
return [...Yr, ...e].map(Ji);
}, "getSignals"), Ji = /* @__PURE__ */ o(({
name: e,
number: t,
description: r,
action: n,
forced: i = !1,
standard: s
}) => {
let {
signals: { [e]: a }
} = Kr.constants, c = a !== void 0;
return { name: e, number: c ? a : t, description: r, supported: c, action: n, forced: i, standard: s };
}, "normalizeSignal");
// ../node_modules/execa/node_modules/human-signals/build/src/main.js
var qi = /* @__PURE__ */ o(() => {
let e = et();
return Object.fromEntries(e.map(Vi));
}, "getSignalsByName"), Vi = /* @__PURE__ */ o(({
name: e,
number: t,
description: r,
supported: n,
action: i,
forced: s,
standard: a
}) => [e, { name: e, number: t, description: r, supported: n, action: i, forced: s, standard: a }], "getSignalByName"), Qr = qi(), zi = /* @__PURE__ */ o(
() => {
let e = et(), t = Ze + 1, r = Array.from(
{ length: t },
(n, i) => Yi(i, e)
);
return Object.assign({}, ...r);
}, "getSignalsByNumber"), Yi = /* @__PURE__ */ o((e, t) => {
let r = Ki(e, t);
if (r === void 0)
return {};
let { name: n, description: i, supported: s, action: a, forced: c, standard: u } = r;
return {
[e]: {
name: n,
number: e,
description: i,
supported: s,
action: a,
forced: c,
standard: u
}
};
}, "getSignalByNumber"), Ki = /* @__PURE__ */ o((e, t) => {
let r = t.find(({ name: n }) => Xr.constants.signals[n] === e);
return r !== void 0 ? r : t.find((n) => n.number === e);
}, "findSignalByNumber"), Nc = zi();
// ../node_modules/execa/lib/error.js
var Xi = /* @__PURE__ */ o(({ timedOut: e, timeout: t, errorCode: r, signal: n, signalDescription: i, exitCode: s, isCanceled: a }) => e ? `\
timed out after ${t} milliseconds` : a ? "was canceled" : r !== void 0 ? `failed with ${r}` : n !== void 0 ? `was killed with ${n} (${i})` :
s !== void 0 ? `failed with exit code ${s}` : "failed", "getErrorPrefix"), W = /* @__PURE__ */ o(({
stdout: e,
stderr: t,
all: r,
error: n,
signal: i,
exitCode: s,
command: a,
escapedCommand: c,
timedOut: u,
isCanceled: f,
killed: l,
parsed: { options: { timeout: y, cwd: g = Zr.default.cwd() } }
}) => {
s = s === null ? void 0 : s, i = i === null ? void 0 : i;
let h = i === void 0 ? void 0 : Qr[i].description, b = n && n.code, x = `Command ${Xi({ timedOut: u, timeout: y, errorCode: b, signal: i, signalDescription: h,
exitCode: s, isCanceled: f })}: ${a}`, O = Object.prototype.toString.call(n) === "[object Error]", v = O ? `${x}
${n.message}` : x, j = [v, t, e].filter(Boolean).join(`
`);
return O ? (n.originalMessage = n.message, n.message = j) : n = new Error(j), n.shortMessage = v, n.command = a, n.escapedCommand = c, n.exitCode =
s, n.signal = i, n.signalDescription = h, n.stdout = e, n.stderr = t, n.cwd = g, r !== void 0 && (n.all = r), "bufferedData" in n && delete n.
bufferedData, n.failed = !0, n.timedOut = !!u, n.isCanceled = f, n.killed = l && !u, n;
}, "makeError");
// ../node_modules/execa/lib/stdio.js
var ue = ["stdin", "stdout", "stderr"], Qi = /* @__PURE__ */ o((e) => ue.some((t) => e[t] !== void 0), "hasAlias"), en = /* @__PURE__ */ o((e) => {
if (!e)
return;
let { stdio: t } = e;
if (t === void 0)
return ue.map((n) => e[n]);
if (Qi(e))
throw new Error(`It's not possible to provide \`stdio\` in combination with one of ${ue.map((n) => `\`${n}\``).join(", ")}`);
if (typeof t == "string")
return t;
if (!Array.isArray(t))
throw new TypeError(`Expected \`stdio\` to be of type \`string\` or \`Array\`, got \`${typeof t}\``);
let r = Math.max(t.length, ue.length);
return Array.from({ length: r }, (n, i) => t[i]);
}, "normalizeStdio");
// ../node_modules/execa/lib/kill.js
var rn = d(require("node:os"), 1);
// ../node_modules/execa/node_modules/signal-exit/dist/mjs/signals.js
var I = [];
I.push("SIGHUP", "SIGINT", "SIGTERM");
process.platform !== "win32" && I.push(
"SIGALRM",
"SIGABRT",
"SIGVTALRM",
"SIGXCPU",
"SIGXFSZ",
"SIGUSR2",
"SIGTRAP",
"SIGSYS",
"SIGQUIT",
"SIGIOT"
// should detect profiler and enable/disable accordingly.
// see #21
// 'SIGPROF'
);
process.platform === "linux" && I.push("SIGIO", "SIGPOLL", "SIGPWR", "SIGSTKFLT");
// ../node_modules/execa/node_modules/signal-exit/dist/mjs/index.js
var fe = /* @__PURE__ */ o((e) => !!e && typeof e == "object" && typeof e.removeListener == "function" && typeof e.emit == "function" && typeof e.
reallyExit == "function" && typeof e.listeners == "function" && typeof e.kill == "function" && typeof e.pid == "number" && typeof e.on == "f\
unction", "processOk"), tt = Symbol.for("signal-exit emitter"), rt = globalThis, Zi = Object.defineProperty.bind(Object), nt = class {
static {
o(this, "Emitter");
}
emitted = {
afterExit: !1,
exit: !1
};
listeners = {
afterExit: [],
exit: []
};
count = 0;
id = Math.random();
constructor() {
if (rt[tt])
return rt[tt];
Zi(rt, tt, {
value: this,
writable: !1,
enumerable: !1,
configurable: !1
});
}
on(t, r) {
this.listeners[t].push(r);
}
removeListener(t, r) {
let n = this.listeners[t], i = n.indexOf(r);
i !== -1 && (i === 0 && n.length === 1 ? n.length = 0 : n.splice(i, 1));
}
emit(t, r, n) {
if (this.emitted[t])
return !1;
this.emitted[t] = !0;
let i = !1;
for (let s of this.listeners[t])
i = s(r, n) === !0 || i;
return t === "exit" && (i = this.emit("afterExit", r, n) || i), i;
}
}, le = class {
static {
o(this, "SignalExitBase");
}
}, es = /* @__PURE__ */ o((e) => ({
onExit(t, r) {
return e.onExit(t, r);
},
load() {
return e.load();
},
unload() {
return e.unload();
}
}), "signalExitWrap"), ot = class extends le {
static {
o(this, "SignalExitFallback");
}
onExit() {
return () => {
};
}
load() {
}
unload() {
}
}, it = class extends le {
static {
o(this, "SignalExit");
}
// "SIGHUP" throws an `ENOSYS` error on Windows,
// so use a supported signal instead
/* c8 ignore start */
#s = st.platform === "win32" ? "SIGINT" : "SIGHUP";
/* c8 ignore stop */
#t = new nt();
#e;
#o;
#i;
#n = {};
#r = !1;
constructor(t) {
super(), this.#e = t, this.#n = {};
for (let r of I)
this.#n[r] = () => {
let n = this.#e.listeners(r), { count: i } = this.#t, s = t;
if (typeof s.__signal_exit_emitter__ == "object" && typeof s.__signal_exit_emitter__.count == "number" && (i += s.__signal_exit_emitter__.
count), n.length === i) {
this.unload();
let a = this.#t.emit("exit", null, r), c = r === "SIGHUP" ? this.#s : r;
a || t.kill(t.pid, c);
}
};
this.#i = t.reallyExit, this.#o = t.emit;
}
onExit(t, r) {
if (!fe(this.#e))
return () => {
};
this.#r === !1 && this.load();
let n = r?.alwaysLast ? "afterExit" : "exit";
return this.#t.on(n, t), () => {
this.#t.removeListener(n, t), this.#t.listeners.exit.length === 0 && this.#t.listeners.afterExit.length === 0 && this.unload();
};
}
load() {
if (!this.#r) {
this.#r = !0, this.#t.count += 1;
for (let t of I)
try {
let r = this.#n[t];
r && this.#e.on(t, r);
} catch {
}
this.#e.emit = (t, ...r) => this.#c(t, ...r), this.#e.reallyExit = (t) => this.#a(t);
}
}
unload() {
this.#r && (this.#r = !1, I.forEach((t) => {
let r = this.#n[t];
if (!r)
throw new Error("Listener not defined for signal: " + t);
try {
this.#e.removeListener(t, r);
} catch {
}
}), this.#e.emit = this.#o, this.#e.reallyExit = this.#i, this.#t.count -= 1);
}
#a(t) {
return fe(this.#e) ? (this.#e.exitCode = t || 0, this.#t.emit("exit", this.#e.exitCode, null), this.#i.call(this.#e, this.#e.exitCode)) :
0;
}
#c(t, ...r) {
let n = this.#o;
if (t === "exit" && fe(this.#e)) {
typeof r[0] == "number" && (this.#e.exitCode = r[0]);
let i = n.call(this.#e, t, ...r);
return this.#t.emit("exit", this.#e.exitCode, null), i;
} else
return n.call(this.#e, t, ...r);
}
}, st = globalThis.process, {
/**
* Called when the process is exiting, whether via signal, explicit
* exit, or running out of stuff to do.
*
* If the global process object is not suitable for instrumentation,
* then this will be a no-op.
*
* Returns a function that may be used to unload signal-exit.
*/
onExit: tn,
/**
* Load the listeners. Likely you never need to call this, unless
* doing a rather deep integration with signal-exit functionality.
* Mostly exposed for the benefit of testing.
*
* @internal
*/
load: Wc,
/**
* Unload the listeners. Likely you never need to call this, unless
* doing a rather deep integration with signal-exit functionality.
* Mostly exposed for the benefit of testing.
*
* @internal
*/
unload: Hc
} = es(fe(st) ? new it(st) : new ot());
// ../node_modules/execa/lib/kill.js
var ts = 1e3 * 5, nn = /* @__PURE__ */ o((e, t = "SIGTERM", r = {}) => {
let n = e(t);
return rs(e, t, r, n), n;
}, "spawnedKill"), rs = /* @__PURE__ */ o((e, t, r, n) => {
if (!ns(t, r, n))
return;
let i = is(r), s = setTimeout(() => {
e("SIGKILL");
}, i);
s.unref && s.unref();
}, "setKillTimeout"), ns = /* @__PURE__ */ o((e, { forceKillAfterTimeout: t }, r) => os(e) && t !== !1 && r, "shouldForceKill"), os = /* @__PURE__ */ o(
(e) => e === rn.default.constants.signals.SIGTERM || typeof e == "string" && e.toUpperCase() === "SIGTERM", "isSigterm"), is = /* @__PURE__ */ o(
({ forceKillAfterTimeout: e = !0 }) => {
if (e === !0)
return ts;
if (!Number.isFinite(e) || e < 0)
throw new TypeError(`Expected the \`forceKillAfterTimeout\` option to be a non-negative integer, got \`${e}\` (${typeof e})`);
return e;
}, "getForceKillAfterTimeout"), on = /* @__PURE__ */ o((e, t) => {
e.kill() && (t.isCanceled = !0);
}, "spawnedCancel"), ss = /* @__PURE__ */ o((e, t, r) => {
e.kill(t), r(Object.assign(new Error("Timed out"), { timedOut: !0, signal: t }));
}, "timeoutKill"), sn = /* @__PURE__ */ o((e, { timeout: t, killSignal: r = "SIGTERM" }, n) => {
if (t === 0 || t === void 0)
return n;
let i, s = new Promise((c, u) => {
i = setTimeout(() => {
ss(e, r, u);
}, t);
}), a = n.finally(() => {
clearTimeout(i);
});
return Promise.race([s, a]);
}, "setupTimeout"), an = /* @__PURE__ */ o(({ timeout: e }) => {
if (e !== void 0 && (!Number.isFinite(e) || e < 0))
throw new TypeError(`Expected the \`timeout\` option to be a non-negative integer, got \`${e}\` (${typeof e})`);
}, "validateTimeout"), cn = /* @__PURE__ */ o(async (e, { cleanup: t, detached: r }, n) => {
if (!t || r)
return n;
let i = tn(() => {
e.kill();
});
return n.finally(() => {
i();
});
}, "setExitHandler");
// ../node_modules/execa/lib/pipe.js
var un = require("node:fs"), fn = require("node:child_process");
// ../node_modules/execa/node_modules/is-stream/index.js
function pe(e) {
return e !== null && typeof e == "object" && typeof e.pipe == "function";
}
o(pe, "isStream");
function at(e) {
return pe(e) && e.writable !== !1 && typeof e._write == "function" && typeof e._writableState == "object";
}
o(at, "isWritableStream");
// ../node_modules/execa/lib/pipe.js
var as = /* @__PURE__ */ o((e) => e instanceof fn.ChildProcess && typeof e.then == "function", "isExecaChildProcess"), ct = /* @__PURE__ */ o(
(e, t, r) => {
if (typeof r == "string")
return e[t].pipe((0, un.createWriteStream)(r)), e;
if (at(r))
return e[t].pipe(r), e;
if (!as(r))
throw new TypeError("The second argument must be a string, a stream or an Execa child process.");
if (!at(r.stdin))
throw new TypeError("The target child process's stdin must be available.");
return e[t].pipe(r.stdin), r;
}, "pipeToTarget"), ln = /* @__PURE__ */ o((e) => {
e.stdout !== null && (e.pipeStdout = ct.bind(void 0, e, "stdout")), e.stderr !== null && (e.pipeStderr = ct.bind(void 0, e, "stderr")), e.
all !== void 0 && (e.pipeAll = ct.bind(void 0, e, "all"));
}, "addPipeMethods");
// ../node_modules/execa/lib/stream.js
var be = require("node:fs"), En = require("node:timers/promises");
// ../node_modules/execa/node_modules/get-stream/source/contents.js
var H = /* @__PURE__ */ o(async (e, { init: t, convertChunk: r, getSize: n, truncateChunk: i, addChunk: s, getFinalChunk: a, finalize: c }, {
maxBuffer: u = Number.POSITIVE_INFINITY } = {}) => {
if (!us(e))
throw new Error("The first argument must be a Readable, a ReadableStream, or an async iterable.");
let f = t();
f.length = 0;
try {
for await (let l of e) {
let y = fs(l), g = r[y](l, f);
dn({ convertedChunk: g, state: f, getSize: n, truncateChunk: i, addChunk: s, maxBuffer: u });
}
return cs({ state: f, convertChunk: r, getSize: n, truncateChunk: i, addChunk: s, getFinalChunk: a, maxBuffer: u }), c(f);
} catch (l) {
throw l.bufferedData = c(f), l;
}
}, "getStreamContents"), cs = /* @__PURE__ */ o(({ state: e, getSize: t, truncateChunk: r, addChunk: n, getFinalChunk: i, maxBuffer: s }) => {
let a = i(e);
a !== void 0 && dn({ convertedChunk: a, state: e, getSize: t, truncateChunk: r, addChunk: n, maxBuffer: s });
}, "appendFinalChunk"), dn = /* @__PURE__ */ o(({ convertedChunk: e, state: t, getSize: r, truncateChunk: n, addChunk: i, maxBuffer: s }) => {
let a = r(e), c = t.length + a;
if (c <= s) {
pn(e, t, i, c);
return;
}
let u = n(e, s - t.length);
throw u !== void 0 && pn(u, t, i, s), new me();
}, "appendChunk"), pn = /*